mcpField
C
conductor-implement

conductor-implement

github.com/sickn33エージェントワークフロー48.7k337 回インストール今日更新
リポジトリ

conductor-implement について

conductor-implementは、リポジトリのワークフローに従ってConductorのトラックタスクを進めるスキルです。トラック選択、実装、検証チェックポイント、進捗更新を扱い、リポジトリの境界を守ります。

主な機能

  1. 01Conductorの初期化とワークフロー確認
  2. 02トラック選択とコンテキスト読み込み
  3. 03必要に応じたTDDタスク実行
  4. 04フェーズ間の検証チェックポイント
  5. 05進捗とメタデータの更新
  6. 06リポジトリ変更の安全ルール

活用シーン

  1. 01未完了のConductorトラックの実装
  2. 02中断した実装タスクの再開
  3. 03次の段階へ進む前の検証
  4. 04トラック計画と状態の維持

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill conductor-implement

インストール後、Claude Code で/conductor-implementを入力して読み込まれたか確認します。

詳細

実装トラック

conductor/workflow.md で定義されたワークフロールールに従って、トラックの実装計画に記載されたタスクを実行します。

このスキルを使用する場合

  • 実装トラックのタスクやワークフローに取り組む場合
  • 実装トラックに関するガイダンス、ベストプラクティス、チェックリストが必要な場合

このスキルを使用しない場合

  • タスクが実装トラックに関係しない場合
  • この範囲外の別の分野やツールが必要な場合

手順

  • 目標、制約、必要な入力を明確にします。
  • 関連するベストプラクティスを適用し、結果を検証します。
  • 実行可能な手順と確認方法を提示します。

リポジトリの境界

編集禁止の計画やコミット/チェックポイントに関する制限など、明示されたユーザーまたはリポジトリのワークフロー制約は、この一般的なプロセスより優先されます。トラック ID が既存のディレクトリ名 1 つだけであることを検証し、パストラバーサルやシェルメタ文字を拒否します。変更前にステータスと差分を確認し、タスクが所有するパスだけをステージし、無関係な作業は保持します。スラッシュコマンドを使用するには、Conductor の連携機能がインストールされている必要があります。このファイルはその機能をインストールしません。

事前確認

  1. Conductor が初期化されていることを確認します。

    • conductor/product.md が存在することを確認します
    • conductor/workflow.md が存在することを確認します
    • conductor/tracks.md が存在することを確認します
    • 存在しない場合:エラーを表示し、最初に /conductor:setup を実行するよう提案します
  2. ワークフロー設定を読み込みます。

    • conductor/workflow.md を読み込みます
    • TDD の厳格度レベルを解析します
    • コミット戦略を解析します
    • 検証チェックポイントのルールを解析します

トラックの選択

引数が指定されている場合:
  • トラックが存在することを確認します:conductor/tracks/{argument}/plan.md
  • 見つからない場合:部分一致を検索し、修正候補を提示します
引数が指定されていない場合:
  1. conductor/tracks.md を読み込みます

  2. 未完了のトラック(ステータスが [ ] または [~])を解析します

  3. 選択メニューを表示します。

    Select a track to implement:
    
    In Progress:
    1. [~] auth_20250115 - User Authentication (Phase 2, Task 3)
    
    Pending:
    2. [ ] nav-fix_20250114 - Navigation Bug Fix
    3. [ ] dashboard_20250113 - Dashboard Feature
    
    Enter number or track ID:
    

コンテキストの読み込み

実装に関連するすべてのコンテキストを読み込みます。

  1. トラックのドキュメント:

    • conductor/tracks/{trackId}/spec.md - 要件
    • conductor/tracks/{trackId}/plan.md - タスクリスト
    • conductor/tracks/{trackId}/metadata.json - 進捗状態
  2. プロジェクトのコンテキスト:

    • conductor/product.md - プロダクトの理解
    • conductor/tech-stack.md - 技術的な制約
    • conductor/workflow.md - プロセスルール
  3. コードスタイル(存在する場合):

    • conductor/code_styleguides/{language}.md

トラックのステータス更新

トラックを進行中に更新します。

  1. conductor/tracks.md で:

    • このトラックの [ ] を [~] に変更します
  2. conductor/tracks/{trackId}/metadata.json で:

    • status: "in_progress" を設定します
    • updated のタイムスタンプを更新します

タスク実行ループ

plan.md で未完了のタスク([ ] と記載されたもの)ごとに、次の手順を実行します。

1. タスクの特定

plan.md を解析して、次の未完了タスクを見つけます。

  • - [ ] Task X.Y: {description} に一致する行を検索します
  • 構成から現在のフェーズを特定します
2. タスクの開始

タスクを進行中としてマークします。

  • plan.md を更新します:現在のタスクの [ ] を [~] に変更します
  • 「Task X.Y: {description} を開始します」と通知します
3. TDD ワークフロー(workflow.md で TDD が有効な場合)

レッドフェーズ - 失敗するテストを作成:

Following TDD workflow for Task X.Y...

Step 1: Writing failing test
  • 必要に応じてテストファイルを作成します
  • タスクの機能を検証するテストを作成します
  • テストを実行して失敗することを確認します
  • 予期せずテストが成功した場合:停止して調査します

グリーンフェーズ - 実装:

Step 2: Implementing minimal code to pass test
  • テストを通すために必要最小限のコードを記述します
  • テストを実行して成功することを確認します
  • テストが失敗した場合:デバッグして修正します

リファクタリングフェーズ:

Step 3: Refactoring while keeping tests green
  • コードを整理します
  • テストを実行し、引き続き成功することを確認します
4. 非 TDD ワークフロー(TDD が厳格に適用されない場合)
  • タスクを直接実装します
  • 既存のテストを実行します
  • 必要に応じて手動で検証します
5. タスクの完了

変更をコミットします(workflow.md のコミット戦略に従います)。

git add -- <explicit-task-owned-paths>
git commit -m "{commit_prefix}: {task description} ({trackId})"

plan.md を更新します:

  • 完了したタスクの [~] を [x] に変更します
  • 計画の更新をコミットします。
git add conductor/tracks/{trackId}/plan.md
git commit -m "chore: mark task X.Y complete ({trackId})"

metadata.json を更新します:

  • tasks.completed をインクリメントします
  • updated のタイムスタンプを更新します
6. フェーズ完了の確認

各タスクの後に、フェーズが完了しているか確認します。

  • phase の構成を確認するため、plan.md を解析します
  • 現在のフェーズのすべてのタスクが [x] の場合:

フェーズの検証を実行します:

Phase {N} complete. Running verification...
  • フェーズに記載されている検証タスクを実行します
  • テストスイート全体を実行します:npm test / pytest / など

結果を報告し、承認を待ちます:

Phase {N} Verification Results:
- All phase tasks: Complete
- Tests: {passing/failing}
- Verification: {pass/fail}

Approve to continue to Phase {N+1}?
1. Yes, continue
2. No, there are issues to fix
3. Pause implementation

重要:次のフェーズに進む前に、ユーザーから明示的な承認を得るまで待ってください。

実装中のエラー処理

ツールの失敗時
ERROR: {tool} failed with: {error message}

Options:
1. Retry the operation
2. Skip this task and continue
3. Pause implementation
4. Revert current task changes
  • 作業を停止し、選択肢を提示します
  • 自動的に続行してはいけません
テストの失敗時
TESTS FAILING after Task X.Y

Failed tests:
- {test name}: {failure reason}

Options:
1. Attempt to fix
2. Rollback task changes
3. Pause for manual intervention
Git の失敗時
GIT ERROR: {error message}

This may indicate:
- Uncommitted changes from outside Conductor
- Merge conflicts
- Permission issues

Options:
1. Show git status
2. Attempt to resolve
3. Pause for manual intervention

完了状況の追跡

すべてのフェーズとタスクが完了したら:

1. 最終検証
All tasks complete. Running final verification...
  • テストスイート全体を実行します
  • spec.md のすべての受け入れ基準を確認します
  • 検証レポートを生成します
2. トラックのステータスを更新

conductor/tracks.md で:

  • このトラックの [~] を [x] に変更します
  • 「Updated」列を更新します

conductor/tracks/{trackId}/metadata.json で:

  • status: "complete" に設定します
  • phases.completed をフェーズの合計数に設定します
  • tasks.completed をタスクの合計数に設定します
  • updated タイムスタンプを更新します

conductor/tracks/{trackId}/plan.md で:

  • ヘッダーのステータスを [x] Complete に更新します
3. ドキュメント同期の提案
Track complete! Would you like to sync documentation?

This will update:
- conductor/product.md (if new features added)
- conductor/tech-stack.md (if new dependencies added)
- README.md (if applicable)

1. Yes, sync documentation
2. No, skip
4. クリーンアップの提案
Track {trackId} is complete.

Cleanup options:
1. Archive - Move to conductor/tracks/_archive/
2. Delete - Remove track directory
3. Keep - Leave as-is
5. 完了の概要
Track Complete: {track title}

Summary:
- Track ID: {trackId}
- Phases completed: {N}/{N}
- Tasks completed: {M}/{M}
- Commits created: {count}
- Tests: All passing

Next steps:
- Run /conductor:status to see project progress
- Run /conductor:new-track for next feature

進捗の追跡

作業中は metadata.json の進捗状況を維持します:

{
  "id": "auth_20250115",
  "title": "User Authentication",
  "type": "feature",
  "status": "in_progress",
  "created": "2025-01-15T10:00:00Z",
  "updated": "2025-01-15T14:30:00Z",
  "current_phase": 2,
  "current_task": "2.3",
  "phases": {
    "total": 3,
    "completed": 1
  },
  "tasks": {
    "total": 12,
    "completed": 7
  },
  "commits": [
    "abc1234: feat: add login form (auth_20250115)",
    "def5678: feat: add password validation (auth_20250115)"
  ]
}

再開

実装を一時停止して再開する場合:

  1. 現在の状態を確認するため、metadata.json を読み込みます

  2. current_task フィールドから現在のタスクを特定します

  3. plan.md でタスクが [~] になっているか確認します

  4. ユーザーに尋ねます:

    Resuming track: {title}
    
    Last task in progress: Task {X.Y}: {description}
    
    Options:
    1. Continue from where we left off
    2. Restart current task
    3. Show progress summary first
    

重要なルール

  1. 検証チェックポイントを絶対に省略しないでください - フェーズ間では常にユーザーの承認を待ちます
  2. 失敗が発生したら停止してください - エラーが起きても作業を続けようとしてはいけません
  3. workflow.md に厳密に従ってください - TDD、コミット戦略、検証ルールは必須です
  4. plan.md を最新の状態に保ってください - タスクのステータスは実際の進捗を反映する必要があります
  5. こまめにコミットしてください - 各タスクの完了時にコミットする必要があります
  6. すべてのコミットを追跡してください - 元に戻す必要が生じた場合に備え、コミットハッシュを metadata.json に記録します

制限事項

  • タスクが上記の説明にある範囲に明確に一致する場合にのみ、このスキルを使用してください。
  • 出力を、環境固有の検証、テスト、または専門家によるレビューの代わりとして扱わないでください。
  • 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を停止して確認を求めてください。

コメント