From claude-code-harness
Generates a self-contained HTML progress dashboard from Plans.md, showing task counts (cc:TODO/WIP/完了), completion percentage, elapsed/estimated time, cost tracking, and drift alerts. Use for session status snapshots.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-code-harness:harness-progress [--out <path>] [--no-open][--out <path>] [--no-open]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Phase 65.4 (Progress Tracker) — 3rd surface of the cognitive-load HTML triplet.
Phase 65.4 (Progress Tracker) — 3rd surface of the cognitive-load HTML triplet. Plan Brief / Acceptance Demo に続く 3 つ目の HTML surface で、進行中セッションの全体像を 1 枚の紙で把握 できるようにする。
| 入力 | 動作 |
|---|---|
/harness-progress | 現プロジェクトの進捗 snapshot HTML を生成し開く |
/harness-progress --no-open | 生成のみ (browser 開かない、PostToolUse hook 用) |
/harness-progress --out <path> | 出力先指定 (default: out/progress-snapshot.html) |
"今のセッションは何件のタスクをどこまで終わらせて、いつ終わる見込みで、いくら使ったか" を、 エンジニアじゃない vibecoder が 3 秒でブラウザで把握 できる HTML 1 枚を生成する。
やる:
やらない (本 cycle):
詳細仕様: schemas/progress-snapshot.v1.schema.json
schema: progress-snapshot.v1
project: <basename of git repo>
current_task: <cc:WIP の最初の項目 1 行サマリ、なければ空文字>
progress_pct: <0-100 の整数、cc:完了 ÷ 総タスク × 100 の四捨五入>
todo_tasks: [{number, title}] ← cc:TODO のみ
wip_tasks: [{number, title}] ← cc:WIP のみ
done_tasks: [{number, title, commit}] ← cc:完了 [hash] のみ、hash は 7 chars
elapsed_minutes: <int, state file から>
estimated_total_minutes: <int, state file から>
cost_so_far_usd: <float, state file から>
cost_estimate_usd: <float, state file から>
alerts: [] ← Phase 65.4.3 以降で populate
generated_at: <ISO8601 UTC>
PROJECT_NAME="$(basename "$(git rev-parse --show-toplevel)" 2>/dev/null || echo "current")"
SNAPSHOT_JSON="$(mktemp /tmp/progress-snapshot-XXXX.json)"
bash scripts/progress-snapshot.sh \
--plans Plans.md \
--project "$PROJECT_NAME" \
> "$SNAPSHOT_JSON"
scripts/progress-snapshot.sh (Phase 65.4.1 で実装) は Plans.md を parse し
progress-snapshot.v1 schema 準拠の JSON を出力する。
OUT_PATH="${OUT_PATH:-out/progress-snapshot.html}"
mkdir -p "$(dirname "$OUT_PATH")"
bash scripts/render-html.sh \
--template progress \
--data "$SNAPSHOT_JSON" \
--out "$OUT_PATH"
--no-open flag がない場合のみ実行 (PostToolUse hook からの背景再生成では skip):
bash scripts/plan-brief-open.sh --path "$OUT_PATH"
Phase 65.4.4 で --cross-project-group <name> flag が追加される。本 cycle (65.4.1) では default OFF、現プロジェクトのみ集計する。
| 状態 | 動作 |
|---|---|
| Plans.md が無い | progress-snapshot.sh が exit 1 (clear error message) |
| Plans.md にタスクが 1 件もない | progress_pct: 0, 空配列 で snapshot 生成 (HTML は「タスクなし」表示) |
| state file (経過分数等) が無い | elapsed_minutes: 0, cost_so_far_usd: 0 で fallback (warning なし) |
git 不在 / git repo 外 | project: "current" で fallback |
harness-plan-brief (Phase 65.1.x) — 1st surface (実装前の説明会)harness-accept (Phase 65.2.x) — 2nd surface (検収判断)harness-progress (本 skill, Phase 65.4.x) — 3rd surface (進捗ダッシュボード)npx claudepluginhub chachamaru127/claude-code-harness --plugin claude-code-harnessGenerates a single-file HTML progress tracker from Plans.md showing task counts, completion percentage, time and cost estimates with drift alerts. Helps non-engineer vibecoders get a session status overview.
Reconciles Plans.md with git state and implementation progress. Detects drift between markers and actual work, updates statuses, and optionally saves snapshots. Useful for syncing status or checking progress.
Renders fixed-width ASCII progress dashboards showing project phases, epics, tasks, completion bars, velocity metrics, and ETA from tasks.json. For terminal or markdown progress views.