| name | harness-sync |
| description | HAR: Sync Plans.md with implementation. Drift detect, marker update, retrospective. Trigger: sync-status, where am I, check progress. --snapshot for snapshots. Do NOT load for: planning, implementation, review, release. |
| description-en | HAR: Sync Plans.md with implementation. Drift detect, marker update, retrospective. Trigger: sync-status, where am I, check progress. --snapshot for snapshots. Do NOT load for: planning, implementation, review, release. |
| description-ja | HAR:Plans.md と実装の進捗同期。差分検出・マーカー更新・レトロスペクティブ。sync-status、進捗確認、今どこ、どこまで終わったで起動。--snapshot でスナップショット保存。プランニング・実装・レビュー・リリースには使わない。 |
| kind | workflow |
| purpose | Reconcile Plans.md, git, and implementation state |
| trigger | sync-status, where am I, check progress |
| shape | workflow |
| role | synchronizer |
| pair | harness-plan |
| owner | harness-core |
| since | 2026-05-05 |
| allowed-tools | ["Read","Edit","Bash","Grep","Glob"] |
| argument-hint | [--snapshot|--no-retro] |
| user-invocable | true |
| effort | medium |
Harness Sync
Plans.md と実装状況を照合し、差分を検出・更新する。
旧 sync-status および harness-plan sync サブコマンドの独立版。
Quick Reference
| ユーザー入力 | 動作 |
|---|
harness-sync | 進捗同期 + レトロスペクティブ(デフォルト ON) |
harness-sync --no-retro | 進捗同期のみ(レトロスキップ) |
harness-sync --snapshot | スナップショット保存(進捗の時点記録) |
harness-sync --plan roadmap | named Plans の roadmap を同期 |
| "今どこ?" / "進捗確認" | 同上 |
オプション
| オプション | 説明 | デフォルト |
|---|
--snapshot | 現在の進捗をスナップショットとして保存 | false |
--no-retro | レトロスペクティブをスキップ | false(デフォルトで実行) |
--plan NAME | plans/manifest.json の named plan を使う | active/default |
Step 0: Plans.md 検証
Plans.md の存在とフォーマットを確認する。問題がある場合は即座に案内して停止する。
複数 Plans.md がある repo では、対象 plan を scripts/plan-registry.sh list または --plan NAME で確認してから読む。
| 状態 | 案内 |
|---|
| Plans.md が存在しない | Plans.md が見つかりません。harness-plan create で作成してください。 → 停止 |
| ヘッダーに DoD / Depends カラムがない(v1 形式) | Plans.md が旧フォーマット(3カラム)です。harness-plan create で v2(5カラム)に再生成してください。既存タスクは自動的に引き継がれます。 → 停止 |
| v2 形式(5カラム) | そのまま Step 1 に進む |
Step 1: 現状収集(並列)
cat Plans.md
git status
git diff --stat HEAD~3
git log --oneline -10
-20 .claude/state/agent-trace.jsonl 2>/dev/null | jq -r | -u