新しいエージェントシェルの作成
ユーザーが要求したときに新しいエージェントシェルを起動します。新しいエージェントはEmacs内で agent-shell を介して動作し、独立したGitワークツリーで作業します。
手順
1. パラメータを決定する
- プロンプト: 新しいエージェントが取り組むタスクは何ですか?不明な場合はユーザーに確認してください。
- 名前: タスクに基づいた短いケバブケースのワークツリー名(例:
refactor-auth、fix-login-bug、add-dark-mode)。 - エージェント: 使用するエージェント(例:
claude、codex、opencode)。ユーザーが別途指定しない限り、現在このスキルを実行しているエージェントと同じものを使用します。
2. ワークツリーを作成する
現在のリポジトリ内の .agent-shell/worktrees/ に、agent/<name> という名前の新しいブランチでGitワークツリーを作成します:
git worktree add -b "agent/<name>" ".agent-shell/worktrees/<name>"
3. リポジトリのセットアップを実行する
ワークツリー内のセットアップ手順を確認し、実行します。以下のファイルを探してください:
CLAUDE.md、AGENTS.md、README.md— セットアップ/ビルド/インストールコマンドMakefile—make setupまたはmake installpackage.json—npm install/npm ci/pnpm install/yarn installpyproject.toml/requirements.txt—uv sync/pip install -e .Gemfile—bundle installCargo.toml—cargo fetch.env.example—.envにコピー
ワークツリーのディレクトリ内でセットアップコマンドを実行します:
cd ".agent-shell/worktrees/<name>" && <setup-command>
4. Emacsでエージェントを起動する
emacsclient を呼び出して新しいエージェントシェルを起動します:
emacsclient -e '(my/agent-shell-make
:prompt "<タスクの説明>"
:name "<ワークツリー名>"
:agent "<エージェント>"
:directory "<ワークツリーの絶対パス>")'
例:
emacsclient -e '(my/agent-shell-make
:prompt "認証をasync/awaitにリファクタリングする。@...参照"
:name "refactor-auth"
:agent "claude"
:directory "/Users/me/projects/my-app/.agent-shell/worktrees/refactor-auth")'
:directory には絶対パスを使用してください。
5. ユーザーに報告する
ユーザーに次の内容を伝えます:
- ワークツリーのパスとブランチ名
- 実行したセットアップ(またはセットアップが不要だったこと)
- 新しいエージェントがEmacsで起動されたこと
ルール
- 常に現在のリポジトリ内の
.agent-shell/worktrees/にワークツリーを作成すること。 - 常にワークツリー用に
agent/<name>という名前の新しいブランチを作成すること。 :directoryには常に絶対パスを使用すること。- ユーザーが別途指定しない限り、現在このスキルを実行しているエージェントと同じ
:agentを使用すること。 - すべてのコマンドはBashツールを介して実行すること。
- Emacsが起動していない、または
emacsclientが失敗した場合は、エラーメッセージとともに手動で実行するコマンドをユーザーに報告すること。