agent は何をしますか?
コードを自動パイロットでデプロイ。あなたのマシン上で24時間365日稼働し、アプリを起動し続けるオープンソースエージェント。🦀
概要
stakpak/agent は、開発者のマシン上で常駐する軽量エージェントです。コードの変更を監視し、自動的にビルド、テスト、デプロイを実行することで、アプリケーションを常に最新の状態に保ちます。手動でのデプロイ作業やサーバーメンテナンスから解放され、コードの品質と可用性を自動的に維持します。
特徴
- 24時間365日稼働: マシン上で常時実行され、ファイルシステムの変更をリアルタイムで監視します。
- 自動デプロイ: バージョン管理システム(例:Git)のプッシュやタグに応じて、定義済みのデプロイスクリプトを実行します。
- 軽量・高速: Rustで実装されており、低リソース消費で動作します。
- クロスプラットフォーム: Linux、macOS、Windowsで利用可能。
- 拡張可能: 独自のトリガーやアクションを追加可能。
対応プラットフォーム
- OS: Linux, macOS, Windows
- CI/CDとの統合: GitHub Actions, GitLab CI, Jenkins など
- クラウドプロバイダ: AWS, GCP, Azure, またはオンプレミスサーバー
インストール
クイックスタート(推奨)
curl -fsSL https://raw.githubusercontent.com/stakpak/agent/main/install.sh | bash
Homebrew(macOS / Linux)
brew install stakpak/tap/agent
手動インストール
リリースページからバイナリをダウンロードし、PATH の通ったディレクトリに配置してください。
設定
エージェントは、~/.config/stakpak/agent.toml に設定ファイルを配置することで動作をカスタマイズできます。
[general]
# 監視するディレクトリのパス
watch_path = "/path/to/your/project"
[deploy]
# デプロイ時に実行するコマンド
trigger_command = "git push origin main"
# デプロイスクリプトへのパス
script_path = "./deploy.sh"
[notifications]
# デプロイ成功時のメッセージ
success_message = "デプロイが完了しました"
# デプロイ失敗時のメッセージ(オプション)
failure_message = "デプロイ中にエラーが発生しました"
使用方法
- 設定ファイルを作成します。
- エージェントを起動します:
agent start
- エージェントが自動的に監視を開始します。コードに変更を加えてプッシュするたびに、定義されたデプロイスクリプトが実行されます。
ログとモニタリング
エージェントは標準出力およびファイルにログを出力します。ログレベルは info、warn、error をサポートしています。
tail -f ~/.local/share/stakpak/agent.log
トラブルシューティング
- エージェントが起動しない: 設定ファイルの構文を確認し、
agent checkコマンドで検証してください。 - デプロイが実行されない:
watch_pathとscript_pathが正しく設定されているか確認してください。 - 権限エラー: エージェントを実行するユーザーにデプロイスクリプトの実行権限があることを確認してください。
ライセンス
MIT ライセンス。詳細は LICENSE ファイルを参照してください。
コミュニティ
質問や提案は GitHub Issues までお寄せください。