remote-work について
remote-workは、Azure仮想マシンでamplihackのタスクを実行するためのスキルです。タスクの複雑さと希望リージョンからVMサイズを選び、コマンド実行と結果確認を案内します。
主な機能
- 01タスクとリージョンの検出
- 02VMサイズの推奨
- 03リモート実行コマンドの作成
- 04実行と結果確認の案内
- 05エラー対応の助言
活用シーン
- 01長時間タスクのオフロード
- 02指定したAzureリージョンでの実行
- 03複数マシンへの作業分散
- 04実験的な作業の隔離
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ rysweet/ amplihack --skill remote-workインストール後、Claude Code で/remote-workを入力して読み込まれたか確認します。
詳細
リモート作業スキル
/amplihack:remote コマンドを使用して、リモートの Azure VM 上で amplihack タスクを実行します。
使用するタイミング
次のような場合に、このスキルを使用します。
- リモート VM 上で長時間実行されるタスクを実行する
- より高性能な Azure のコンピューティングリソースを活用する
- 複数のマシンに作業を分散する
- 実験的な作業やリスクのある作業を隔離する
- 特定の Azure リージョンで作業する
仕組み
次のような依頼があった場合:
- 「これをリモートで実行して」
- 「eastus の VM で実行して」
- 「これを Azure にオフロードして」
- 「これにはリモートマシンを使って」
以下を行います。
- タスクの説明を抽出します
- リージョンの希望がある場合は検出します
- タスクの複雑さに応じて適切な VM サイズを推奨します
- 適切なオプションを指定して
/amplihack:remoteを実行します - 結果へのアクセス方法をご案内します
リージョンの検出
依頼から Azure リージョンを自動的に検出します。
- 「eastus」、「east us」→ --region eastus
- 「westus」、「west us」→ --region westus
- 「centralus」→ --region centralus
- (その他の Azure リージョンも同様です)
VM サイズの推奨
タスクの複雑さを示すキーワードに基づいて推奨します。
小(サイズ s):簡単な分析、単純な修正
- キーワード:「quick」、「simple」、「small」、「analyze」
- サイズ:s(RAM 8GB)
中(サイズ m):標準的な開発作業
- キーワード:「implement」、「feature」、「refactor」
- サイズ:m(RAM 64GB) - デフォルト
大(サイズ l):複雑なリファクタリング、大規模なコードベース
- キーワード:「large」、「comprehensive」、「complex」、「entire codebase」
- サイズ:l(RAM 128GB)
特大(サイズ xl):計算負荷の高いタスク
- キーワード:「intensive」、「heavy」、「massive」
- サイズ:xl(RAM 256GB)
手順
有効になったら:
-
ユーザーの依頼を解析して、以下を抽出します。
- タスクの説明
- リージョンの希望(指定されている場合)
- VM サイズを決めるための複雑さに関するヒント
-
キーワードに基づいて VM サイズを決定します。
- キーワードが別のサイズを示していない限り、「m」を使用します
- 単純なタスクや短時間で終わるタスクには「s」を使用します
- 大規模または複雑なタスクには「l」を使用します
- 計算負荷の高いタスクや大規模なタスクには「xl」を使用します
-
コマンドを組み立てます。
/amplihack:remote --region {region} --vm-size {size} auto "{task}"リージョンが指定されていない場合は、--region を省略します(azlin のデフォルトが使用されます)。
-
SlashCommand ツールを使用してコマンドを実行します
-
次の手順をユーザーに案内します。
- 結果は
~/.amplihack/.claude/runtime/logs/remote/に保存されます - Git ブランチは
remote-exec/名前空間にあります - ログの表示方法と変更の統合方法
- 結果は
例
例 1:リージョンを指定した単純なタスク
ユーザー:「この分析を eastus の VM でリモート実行して」
応答:
I'll execute this analysis on a remote Azure VM in eastus.
Detected:
- Task: analysis work
- Region: eastus
- Size: s (small - suitable for analysis)
Executing: /amplihack:remote --region eastus --vm-size s auto "analysis work"
続いて、SlashCommand ツールを使用して実行します。
例 2:大規模なリファクタリング
ユーザー:「この包括的なリファクタリングを Azure にオフロードしたいです。westus2 を使ってください」
応答:
I'll execute this comprehensive refactoring on a remote Azure VM in westus2.
Detected:
- Task: comprehensive refactoring
- Region: westus2
- Size: l (large - for comprehensive work)
Executing: /amplihack:remote --region westus2 --vm-size l auto "comprehensive refactoring"
例 3:リージョンの指定なし
ユーザー:「これをリモートで実行して」
応答:
I'll execute this task on a remote Azure VM using your default region.
Detected:
- Task: [extract from context]
- Region: default (from azlin config)
- Size: m (medium - standard)
Executing: /amplihack:remote --vm-size m auto "[task]"
結果の統合
実行が完了したら、次のようにユーザーを案内します。
Remote execution complete!
Results:
- Logs: .claude/runtime/logs/remote/
- Branches: Check `git branch -r | grep remote-exec`
- Integration: Review changes and merge if ready
To view logs:
cat .claude/runtime/logs/remote/remote-exec-*.log
To merge remote changes:
git fetch
git merge remote-exec/main
エラー処理
コマンドが失敗した場合は、よくある問題について説明します。
シークレットの検出: 「リポジトリでシークレットが見つかったため、リモート実行がブロックされました。ハードコードされたシークレットを削除し、代わりに .env ファイルを使用してください。」
Azlin の未設定:
「Azlin が設定されていません。次を実行してください:azlin configure」
タイムアウト:
「タスクがタイムアウトしました。調査できるよう VM は保持されています。azlin connect <vm-name> を使用して調査してください。」
ベストプラクティス
ユーザーに次の点を伝えます。
- リモート実行の前に Git の状態をクリーンにしておく
- シークレットには
.envを使用する(ハードコードは絶対にしない) azlin listで Azure のコストを確認する- デバッグ後は
azlin kill <vm-name>で VM を削除する
トークン予算
- 基本手順:約1,200トークン
- 例とガイダンス:約400トークン
- 合計:約1,600トークン(2,000トークンの上限を十分に下回ります)
関連項目
/amplihack:remote- 直接コマンドを実行するインターフェース- Azlin のドキュメント:https://github.com/rysweet/azlin
- リモート実行モジュール:
~/.amplihack/.claude/tools/amplihack/remote/README.md