Change history for claude-code-harness.
📝 Writing Guidelines: Focus on user-facing changes. Keep internal fixes brief.
Claude Code と Codex の品質ガードレールを統一し、Marketplace インストール時のメモリフック欠損を修正。
今まで: Claude Code 側のガードレール(--no-verify 検出、保護ブランチの reset --hard 警告等)が Codex 側には存在せず、ランタイムによって品質基準にばらつきがありました。
今後: docs/hardening-parity.md でポリシーマトリクスを定義し、Claude Code hooks と Codex CLI quality gate の両方で同じルールを適用。validate-plugin.sh / validate-plugin-v3.sh でクロスランタイムの検証を自動化。
- Guardrails:
--no-verify/--no-gpg-sign、保護ブランチgit reset --hard、main/masterへの直接 push 警告、保護ファイル編集警告 - Codex parity:
codex execフローにランタイム契約を注入し、bypass フラグ・保護ファイル編集・シークレット混入をマージ前に検証
今まで: Codex 側の AGENTS.md に .claude/rules/ の詳細が記載されておらず、CC アプデポリシーや v3 アーキテクチャへの参照が欠けていました。
今後: cc-update-policy.md、v3-architecture.md、versioning.md の内容を Codex AGENTS.md に統合。Codex ユーザーもルール詳細を直接参照可能に。
- Marketplace インストール時に
scripts/hook-handlers/memory-*.shが欠損し、SessionStart / UserPromptSubmit / PostToolUse / Stop フックがエラーになる問題を修正 - メモリライフサイクルフックを単一
memory-bridge.shエントリポイントに統合し、個別ラッパーパスへの依存を解消 sync-plugin-cache.shのソース検出でCLAUDE_PLUGIN_ROOTがプラグインルート自体を指す場合のパス解決を修正- メモリフック配線と Marketplace キャッシュ同期の回帰テストを追加
Codex CLI からも Harness のチーム実行(breezing)が使えるようになり、AI 残骸の自動検出でレビュー品質を向上。セッション間の記憶が harness-mem に永続化され、再開時に前回の文脈を自動復元。
今まで: Codex CLI で /harness-work や /breezing を使うと、Claude Code 固有の API(Agent(), SendMessage())が擬似コードに含まれており、Codex の LLM が正しく解釈できませんでした。「Codex では読み替えてね」という注釈があるだけで、実行時にエラーになるリスクがありました。
今後: skills-v3-codex/ に Codex ネイティブ版を新設。spawn_agent / wait_agent / send_input / close_agent の正しい API シグネチャで書き直し、git worktree add による Worker 分離、codex exec -C/-o による作業ディレクトリ指定と verdict 取得を実装。Codex 自身によるレビュー5ラウンドで APPROVE を取得済み。
ユーザースコープ(~/.codex/skills/)に展開することで、どのプロジェクトからでも利用可能です。
~/.codex/skills/
├── harness-work → skills-v3-codex/ [CODEX NATIVE]
├── breezing → skills-v3-codex/ [CODEX NATIVE]
├── harness-plan → skills-v3/ [shared]
└── ...他5件 → skills-v3/ [shared]
Claude Code 版との主な差分:
| 項目 | Claude Code | Codex ネイティブ |
|---|---|---|
| Worker spawn | Agent(subagent_type="worker") |
spawn_agent({message, fork_context}) |
| 修正指示 | SendMessage(to: agentId) |
send_input({id, message}) |
| Worktree 分離 | isolation="worktree" 自動 |
git worktree add 手動 |
| レビュー | Codex exec → Reviewer agent fallback | codex exec -o <file> のみ |
| モード昇格 | タスク4件以上で自動 | --breezing 明示のみ |
今まで: AI が生成した mockData, dummy, localhost, TODO などの残骸がレビューをすり抜け、「動くが出荷できない」状態のコードがマージされることがありました。
今後: harness-review に 5つ目の観点「AI Residuals」を追加。scripts/review-ai-residuals.sh が差分を静的走査し、残骸を severity(minor/major)で分類します。テスト fixture も追加済み。
# 検出対象の例
mockData, dummyUser, localhost:3000, TODO:, FIXME,
test.skip, describe.skip, hardcoded API keys今まで: Claude のセッションを閉じると、そのセッションで学んだ文脈や決定事項が失われ、次のセッションでは一からやり直しでした。
今後: Claude の SessionStart / UserPromptSubmit / Stop フックを harness-mem runtime に接続。セッション開始時に前回の記憶から「Continuity Briefing」を自動表示し、停止時に記憶を永続化します。
scripts/lib/harness-mem-bridge.shで harness-mem API 呼び出しを抽象化session-init.sh/session-resume.shに continuity briefing 統合- memory lifecycle 回帰テスト(wiring, bridge, integration)を追加
スキル発動からコミット・報告まで、人手を介さず一気通貫で完走する自動化フローを実現。Codex exec によるレビューループと閾値基準付き判定で、品質と収束性を両立。
今まで: Plans.md が存在しない場合、harness-work はエラーで停止していました。 また、会話で伝えた要件が Plans.md に載っていなくても検出されず、手動で追記する必要がありました。
今後: Plans.md がなければ harness-plan create --ci を自動呼び出しして生成。
会話からアクション動詞(「追加して」「修正して」等)を検出し、未記載タスクを v2 フォーマットで自動追記します。
今まで: Solo/Parallel モードにはレビューステージがなく、Worker のセルフレビューのみでした。 Breezing モードでは Reviewer agent が独立レビューしましたが、修正ループは手動承認が必要でした。
今後: 全モード共通で実装完了後に自動レビューを実行します。 Codex exec(優先)→ 内部 Reviewer agent(フォールバック)の 2 段構成。 REQUEST_CHANGES 時は自動修正→再レビュー(最大 3 回)。
今まで: 自由レビューのため、minor な改善提案でも REQUEST_CHANGES が返り、レビューループが収束しませんでした。
今後: レビュープロンプトに 4 段階の閾値基準(critical/major/minor/recommendation)を明示的に渡します。 critical/major のみ REQUEST_CHANGES、minor/recommendation は APPROVE。 スコープ外の指摘(外部ツールの制約等)も verdict に影響しない設計です。
今まで: タスク完了後の報告は簡素なテキスト(Progress: Task N/M 完了)のみでした。
今後: コミット後に視覚的サマリを自動出力します。 「何をしたか」「何が変わるか(Before/After)」「変更ファイル」「残りの課題(Plans.md 連動)」をボックス形式で表示。 Breezing モードでは全タスク完了後にまとめ報告。
今まで: 全スキル・スクリプトが旧フラグ -a never(codex-cli 0.115.0 で廃止)を使用しており、codex exec が即エラー終了していました。
今後: 全箇所を --full-auto に統一。$TIMEOUT 展開も ${TIMEOUT:+$TIMEOUT N} の安全パターンに修正。
レビュー用 codex exec は --sandbox read-only で write 権限なし。
今まで: primary の skills/ と platform copy(codex/.codex/skills/, opencode/skills/, skills-v3/)が手動同期のため乖離していました。
今後: 今回の変更で全 platform copy を primary と完全同期。
harness-review の BASE_REF 対応、breezing の Review Policy も全 copy に反映済み。
今まで: Breezing モードでは Worker が main に直接コミットしてから Reviewer がレビューしていました。 REQUEST_CHANGES が出ても既にコミット済みで、修正ループが構造的に成立しませんでした。
今後: Worker は worktree 内でコミットし、Lead がレビュー後に main へ cherry-pick する方式に変更。
- Worker:
mode: breezingで worktree 内 commit → Lead に{commit, worktreePath}を返す - Lead: Codex exec / Reviewer agent でレビュー → APPROVE なら
git cherry-pick - REQUEST_CHANGES: Lead が SendMessage で Worker に修正指示 → Worker が amend → 再レビュー(最大 3 回)
- Phase C: Lead が
git log+ Plans.md から Breezing まとめ報告を生成
Worker の出力 JSON に worktreePath / summary フィールドを追加。
Plans.md 更新は Lead が一元管理(Worker は breezing 時に Plans.md を編集しない)。
CC 最新版を統合し、セルフレビューで判明した「書いただけ問題」を構造的に解決。StopFailure ログ記録・通知の仕組みを追加し、Effort 動的注入・Sandbox 自動設定の設計方針を SKILL.md・エージェント定義に追加。
21 件の新機能・修正を Feature Table に追加し、Harness での活用方法を文書化。
CC のアプデ: v2.1.78 で API エラー(レート制限 429、認証失敗 401 等)によるセッション停止失敗を捕捉する StopFailure イベントが追加された。
Harness での活用: stop-failure.sh ハンドラーを新設し、エラー情報をログに記録(${CLAUDE_PLUGIN_DATA} 設定時はプロジェクト別スコープ、未設定時は .claude/state/stop-failures.jsonl)。Breezing Worker のレート制限による停止失敗の事後分析に活用可能。
CC のアプデ: v2.1.77 で PreToolUse フックが allow を返しても settings.json の deny ルールが優先されるセキュリティ修正が入った。
Harness での活用: hooks-editing.md にバージョン注記を追加し、guardrail 設計時の優先順位を明文化。deny: ["mcp__*"] パターンが推奨に。
CC のアプデ: Output token 64k/128k 拡大、allowRead sandbox、Agent resume 廃止 → SendMessage、/branch リネーム、${CLAUDE_PLUGIN_DATA} 変数、Agent effort frontmatter 等。
Harness での活用: CLAUDE.md Feature Table と docs/CLAUDE-feature-table.md の両方に全項目を追加。各機能の Harness での活用方法・影響を詳細記載。
- session-control スキルの description を
/fork→/branchに更新(v2.1.77 リネーム対応) - hooks-editing.md のイベント型一覧に
StopFailure,ConfigChangeを追加 - hooks-editing.md に v2.1.77+ PreToolUse 優先順位と v2.1.78+ StopFailure の注記を追加
- core/src/types.ts の
SignalTypeにstop_failureを追加 .claude-plugin/settings.jsonにmcp__codex__*の deny ルールを追加(v2.1.78 推奨パターン)codex-cli-only.mdに settings.json deny パターンの推奨セクションを追加stop-failure.sh,notification-handler.shのステート保存パスを${CLAUDE_PLUGIN_DATA}対応(フォールバック付き)- Worker/Reviewer エージェント定義に
effort: mediumフィールドを追加(v2.1.78 公式対応) harness-setup/SKILL.mdに環境変数リファレンス(CLAUDE_PLUGIN_DATA,ANTHROPIC_CUSTOM_MODEL_OPTION等)を追加
今まで: CC のアプデがあると Feature Table に転記するだけで「Harness の付加価値」にならないことがあった。3エージェント並列レビューで21項目中14項目が「書いただけ」と判明。
今後: skills/cc-update-review/(非配布・内部専用スキル)が CC アプデ統合時に全 Feature Table 項目を A/B/C に自動分類。カテゴリ B(書いただけ)が検出されると、実装案の提示を強制する。.claude/rules/cc-update-policy.md でルール化。
今まで: Breezing で Worker がレート制限(429)で死ぬと、ログに記録されるだけ。Lead も人間も気づかず、Worker が静かに消えていた。
今後: breezing/SKILL.md に StopFailure 自動復旧フローの設計を追加。429 → 指数バックオフ(30s/60s/120s)+ SendMessage で Worker 自動再開。401 → ユーザー通知。500 → Plans.md にブロッカー記録。stop-failure.sh が 429 検出時に systemMessage で Lead に通知する仕組みを実装済み。
今まで: Worker/Reviewer の effort: medium は固定値。harness-work のスコアリング(≥3 で ultrathink)と Agent frontmatter の effort フィールドが接続されていなかった。
今後: harness-work/SKILL.md にスコアリング → effort 注入のフロー設計を追記。agents-v3/worker.md に動的 effort 受け取りと事後記録の手順を追加。Worker はタスク完了時に effort_applied, effort_sufficient, turns_used を agent memory に記録し、次回のスコアリング精度向上に活用する方針。
今まで: stop-failures.jsonl にログが溜まるが見る手段がない。Reviewer の sandbox 設定がなく、.env.example すら読めない環境もあった。
今後: scripts/show-failures.sh でエラーコード別・時間帯別のサマリーを表示可能に(実装済み)。.claude-plugin/settings.json に sandbox.allowRead テンプレートを追加済み(.env.example, docs/** 等)。harness-setup init でプロジェクト種別に応じた sandbox 自動生成の手順を SKILL.md に追記。
scripts/hook-handlers/stop-failure.sh— StopFailure フックハンドラー(429 時の systemMessage 通知付き)skills/cc-update-review/SKILL.md— CC アプデ統合の品質ガードレールスキル(非配布).claude/rules/cc-update-policy.md— Feature Table 追加時の品質ポリシー- hooks.json (両ファイル) に
StopFailureイベント定義 tests/validate-plugin.shにclaude plugin validateステップ(v2.1.77+ 利用可能時のみ実行).claude-plugin/settings.jsonにsandbox.allowReadテンプレート
claude plugin install 後に発生する致命的エラーと UX 問題を修正。Issue #64, #65 対応。
今まで: core/dist/ が .gitignore で除外されていたため、claude plugin install した環境にコンパイル済み JavaScript が存在せず、全フック(PreToolUse / PostToolUse / PermissionRequest)が MODULE_NOT_FOUND で即座に失敗していた。ガードレールエンジン(R01-R09)が完全に無効化される致命的な問題。
今後: .gitignore から /core/dist/ の除外を解除し、ビルド済み JS をリポジトリに含めるように変更。プラグインインストール後すぐにフックが動作する。
今まで: hooks.json に localhost:9090 宛のメトリクス HTTP hook がデフォルトで有効になっていた。メトリクスサーバーを立てていないユーザーは Write/Edit/Bash/Task のたびに connection refused エラーが発生し、最大5秒の遅延も生じていた。CHANGELOG では「テンプレート」と説明されていたが、実際にはアクティブだった。
今後: HTTP hook エントリを hooks.json から削除し、docs/examples/hooks-metrics-http.json にテンプレートとして移動。デフォルト状態ではエラーが出ない。メトリクス連携を使いたいユーザーはテンプレートを参照して自分の hooks.json に追加する運用に変更。
今まで: skills-v3/extensions/codex-review が ../../skills/codex-review を指していたが、リンク先の skills/codex-review/ ディレクトリが存在せず、broken symlink になっていた。
今後: 壊れたシンボリックリンクを削除。codex-review 機能が実装された段階で改めて追加する。
今まで: plugin.json では "license": "MIT" だが、marketplace.json では "license": "Proprietary" と矛盾していた。
今後: marketplace.json のライセンスを "MIT" に統一。
今まで: Worker / Reviewer / Scaffolder の disallowedTools に旧名称 [Task] を使用していた。CC v2.1.63 で Task ツールは Agent にリネーム済みで、Task はエイリアスとして動作するものの、公式ドキュメントは一貫して Agent を使用している。
今後: 全エージェント定義の disallowedTools を [Agent] に更新。公式ドキュメントとの一貫性を確保し、将来のエイリアス廃止に備える。
今まで: CC v2.1.76 で追加された MCP Elicitation の通知タイプ elicitation_dialog が Notification ハンドラーで個別検出されていなかった。Elicitation フックで自動スキップは実装済みだが、Notification 側のログ検出が不足していた。
今後: notification-handler.sh に elicitation_dialog の検出を追加。Breezing のバックグラウンド Worker で MCP Elicitation が発生した場合、permission_prompt と同様にログ記録される。事後分析での Elicitation 発生状況の追跡が可能になった。
今まで: Feature Table で harness-ops 出力スタイルに言及していたが、実際のスタイルファイルが存在しなかった。また plugin.json に outputStyles フィールドが未設定で、プラグイン経由での配布ができなかった。
今後: output-styles/harness-ops.md を作成し、Plan/Work/Review フェーズに応じた構造化出力スタイルを定義。plugin.json に outputStyles: "./output-styles/" を追加し、プラグインインストール時に自動配布される。ユーザーは /config → Output style から Harness Ops を選択可能。
set-locale.sh が skills-v3/ ディレクトリを処理対象外としていた不具合を修正。
今まで: scripts/i18n/set-locale.sh ja を実行しても、skills-v3/ ディレクトリ内の SKILL.md は description フィールドが英語のまま残っていた。skills/、codex/.codex/skills/、opencode/skills/ は処理されるが、v3 アーキテクチャで導入された skills-v3/ が処理対象リストから漏れていた。
今後: process_skill_dir の呼び出しに skills-v3/ を追加。4 ディレクトリすべてが一括で切り替わるようになった。
.gitignore:.superset/、skills/x-announce/を追跡対象外に追加
エージェントの暴走を防止する maxTurns 安全弁を全サブエージェントに導入し、ドキュメントのみだった Notification フックの実装を完了。
今まで: Worker / Reviewer / Scaffolder の 3 エージェントにターン上限が設定されていなかった。エージェントが無限ループや過剰な探索に陥った場合、コンテキスト窓を使い切るまで停止せず、トークンコストが制御不能になる恐れがあった。
今後: CC 公式ドキュメントで推奨されている maxTurns フィールドを全エージェントの frontmatter に追加。Worker: 100(複雑な実装タスク向け)、Reviewer: 50(Read-only 分析に特化)、Scaffolder: 75(中間的な複雑度)。上限到達時は Lead が途中結果を回収して判断できる。bypassPermissions と組み合わせることで、暴走時の安全弁として機能する。
今まで: hooks-editing.md と Feature Table に Notification イベントが記載されていたが、hooks.json にハンドラが登録されていなかった。26 フックイベント中、唯一の「ドキュメントあり・実装なし」の乖離状態だった。
今後: notification-handler.sh を新規作成し、hooks.json の両ファイル(source + distribution)に登録。permission_prompt / idle_prompt / auth_success 等の通知イベントを .claude/state/notification-events.jsonl にログ記録。特に Breezing のバックグラウンド Worker で発生した permission_prompt の事後分析が可能に。
今まで: CC v2.1.74 で追加された /context コマンド(コンテキスト消費の可視化と最適化提案)が Feature Table に未記載だった。
今後: CLAUDE.md の概要テーブルと docs/CLAUDE-feature-table.md の詳細セクションに追加。長時間 Breezing セッションでのコンパクション頻発の原因特定に有用。
3.10.3 - 2026-03-14
- release metadata updates are now release-only: normal PRs should leave
VERSIONand.claude-plugin/plugin.jsonuntouched and record changes under[Unreleased] - pre-commit and CI now validate release metadata consistency without auto-bumping patch versions on ordinary code changes
- README and README_ja now use the GitHub latest release badge instead of hardcoded per-version badge URLs
.claude/rules/hooks-editing.mdnow documentsSessionEndtimeout guidance andCLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MSso the PR61 docs fix can be merged without carrying release metadata drift- Codex workflow docs now standardize on
$harness-plan,$harness-sync,$harness-work,$breezing, and$harness-review, and setup scripts archive removed legacy Harness skills from~/.codex/skills
今まで: Claude Code 公式ドキュメント(60+ ページ)に記載されている --remote / Cloud Sessions、/teleport、CLAUDE_CODE_REMOTE、CLAUDE_ENV_FILE、Slack Integration、Server-managed settings、Microsoft Foundry、PreCompact hook、Notification hook event が Feature Table に未登録だった。
今後: docs/CLAUDE-feature-table.md に 9 エントリを追加(概要テーブル + 機能詳細セクション)。CLAUDE.md にも高インパクトな 4 項目を反映。各機能の Harness での活用方法、コード例、前提条件を詳細に記述。
今まで: session-env-setup.sh はローカル環境前提で、クラウドセッション(--remote 実行時)かどうかを判定する手段がなかった。
今後: CLAUDE_CODE_REMOTE 環境変数を HARNESS_IS_REMOTE として CLAUDE_ENV_FILE に永続化。他のフックハンドラがクラウド vs ローカルの条件分岐を行えるようになった。
今まで: hooks-editing.md の Event Types 一覧に PreCompact と Notification が記載されておらず、開発者が新しいフックを追加する際に参照できなかった。
今後: Event Types JSON ブロックに PreCompact(コンテキスト圧縮前の状態保存)と Notification(通知発火時のカスタムハンドラ)を追加。Harness では PreCompact はすでに実装済み(command + agent の 2 層構成)。
今まで: Codex 側では $work / $plan-with-agent / $verify など旧 command surface が文書上に残り、~/.codex/skills にも update 後の legacy Harness skill が残留して一覧を汚すことがあった。
今後:
- Codex docs: 主導線を
$harness-plan,$harness-sync,$harness-work,$breezing,$harness-reviewに統一 - setup scripts:
scripts/setup-codex.sh/scripts/codex-setup-local.shが、現在 ship されていない legacy Harness skill を backup へ退避 - test coverage:
tests/test-codex-package.shとvalidate-plugin-v3.shでharness-syncsurface、native multi-agent 文言、legacy skill cleanup の回帰を追加
Claude Code 2.1.76 の新機能を Harness に統合。Feature Table のバージョン表記を 2.1.74+ → 2.1.76+ に更新。
CC のアプデ: MCP サーバー(GitHub, Slack 等の外部ツール接続)が、タスク実行中にユーザーへ「質問」できるようになった(Elicitation)。例えば「どのリポジトリに push しますか?」のようなフォーム入力を求められる。あわせて Elicitation(質問前)と ElicitationResult(回答後)の 2 つのフックイベントが追加された。
Harness での活用: Breezing の Worker はバックグラウンド実行のため、MCP からの質問フォームに応答できない。放置すると Worker がフリーズする。そこで elicitation-handler.sh を新規作成し、Breezing セッション中は elicitation を自動スキップ、通常セッションではそのまま通過してユーザーが回答する仕組みを実装。elicitation-result.sh で結果をログ記録。
CC のアプデ: コンテキスト圧縮(コンパクション)の完了後に発火する PostCompact フックが追加された。既存の PreCompact(圧縮前)と対になる。
Harness での活用: 長時間セッションで圧縮が起きると「今どのタスクをやっているか」が薄まる問題があった。post-compact.sh を新規作成し、圧縮後に Plans.md の WIP/TODO タスク状態を自動で再注入。PreCompact(状態保存)→ PostCompact(状態復元)の対称構造で、作業文脈の継続性を確保。
CC のアプデ: 3 つの改善が入った。(1) worktree.sparsePaths 設定で巨大リポジトリの worktree 作成時に必要ディレクトリだけをチェックアウト、(2) git refs 直接読取による --worktree 起動高速化、(3) 中断された並列実行で残った stale worktree の自動クリーンアップ。
Harness での活用: Breezing で複数 Worker を同時起動する際の起動時間が短縮。stale worktree の手動削除も不要に。breezing/SKILL.md と harness-work/SKILL.md にそれぞれ活用ガイドを追記。
CC のアプデ: -n/--name フラグでセッションに表示名を設定可能に。/effort コマンドでセッション中に思考の深さ(low/medium/high)を切替可能に。
Harness での活用: Breezing セッションに breezing-{timestamp} 形式の名前を設定してセッション識別を容易に。harness-work の多要素スコアリング(タスク複雑度に応じた自動 effort 調整)と /effort 手動切替の併用が可能に。
CC のアプデ: バックグラウンドエージェントが kill(タイムアウトや手動停止)された場合にも、途中の作業結果がコンテキストに残るようになった。以前は全損だった。
Harness での活用: Breezing の Worker が途中停止しても、Lead が途中成果を引き継いで別 Worker に再割り当て可能に。「やり直し」コストが削減。
CC のアプデ: 自動コンパクションが 3 回連続失敗すると停止するサーキットブレーカーが導入。無限リトライによるトークン浪費を防止。
Harness での活用: Harness の「3 回ルール」(CI 失敗時の 3 回制限)と同じ設計思想。長時間 Breezing での予期せぬコスト増加を防止。
CC のアプデ: --plugin-dir が 1 パスのみ受付に変更。複数ディレクトリは --plugin-dir path1 --plugin-dir path2 と繰り返し指定する方式に。
Harness への影響: Harness プラグイン単体使用では影響なし。複数プラグイン同時使用時のみ構文変更が必要。
3.10.2 - 2026-03-12
全タスク完了時点で harness-mem finalize を前倒しする安全化を実装し、Claude Code 2.1.74 に合わせた feature docs / README / 互換性スナップショットを release metadata まで同期。version bump 欠落で落ちていた validate-plugin も、正しい patch release として回収しました。
今まで: セッションの締め処理は Stop 時点に寄っており、「最後のタスクは終わったが Stop 前に落ちた」ケースで harness-mem 側の完了記録が取りこぼされる余地があった。
今後: task-completed.sh が「完了数 >= 総タスク数」を検出した瞬間に work_completed で /v1/sessions/finalize を一度だけ実行。session.json からの session_id / project_name fallback、成功 marker による idempotency、HARNESS_MEM_BASE_URL によるテスト可能性、API 不達時の silent skip を追加。
今まで: fix proposal 系テストはあっても、「最後のタスクだけ finalize」「重複 finalize しない」「session_id 未解決時は skip」を直接検証する fixture がなかった。
今後: tests/test-task-completed-finalize.sh を追加し、TaskCompleted フックからの finalize 発火条件と安全条件を独立して検証。既存の tests/test-fix-proposal-flow.sh と合わせて、進捗制御と完了確定の両方を回帰確認できる。
今まで: docs/CLAUDE-feature-table.md は 2.1.74 機能を取り込み始めていた一方、README の機能サマリーは 2.1.71+、互換性ドキュメントの latest verified snapshot は 2.1.69 / plugin 3.6.0 のままだった。
今後: feature table を 2.1.74+ に統一し、README 英日と docs/CLAUDE_CODE_COMPATIBILITY.md を現行実測に合わせて更新。modelOverrides、autoMemoryDirectory、CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS、full model ID 対応など、2.1.73〜2.1.74 の主要項目をサマリーに反映。
今まで: 4239d542 はコード変更を含むのに VERSION / plugin.json / README badge / CHANGELOG が 3.10.1 のままで、GitHub Actions validate-plugin が version bump missing で失敗していた。
今後: VERSION、.claude-plugin/plugin.json、README 英日の version badge、CHANGELOG compare links を 3.10.2 に揃え、patch release として publish 可能な状態に修正。
3.10.1 - 2026-03-12
公式ドキュメント 60 ページの精査により発見した未追跡機能 12 項目を Feature Table に追加。Auto Mode は shipped default と rollout target を分けて整理し、SubagentStart/SubagentStop hooks には agent type 別 matcher を追加して Worker/Reviewer/Scaffolder/Video Generator の起動・停止を個別にトラッキング可能に。
今まで: SubagentStart/SubagentStop hooks は全エージェント一律で subagent-tracker を起動。team-composition.md では「SubagentStart: 未実装」と誤記載。
今後: agent type 別の matcher(worker, reviewer, scaffolder, video-scene-generator)を追加。各エージェントの起動・停止を個別にトラッキングし、ロール別のメトリクス収集を可能に。team-composition.md の Quality Gate Hooks テーブルも実態に合わせて更新。
今まで: Chrome Integration, LSP サーバー統合, Task Dependencies, /btw, Plugin CLI コマンド群等の公式ドキュメント記載機能が Feature Table に未登録。
今後: 以下を Feature Table(概要テーブル + 機能詳細セクション)に追加:
- Chrome Integration (
--chrome, beta) - LSP サーバー統合 (
.lsp.json) - SubagentStart/SubagentStop matcher
- Agent Teams: Task Dependencies
--teammate-modeCLI フラグCLAUDE_CODE_DISABLE_BACKGROUND_TASKSCLAUDE_AUTOCOMPACT_PCT_OVERRIDEcleanupPeriodDays設定/btwサイドクエスチョン- Plugin CLI コマンド群
- Remote Control 強化
skillsフィールド in agent frontmatter
今まで: CLAUDE.md の要約テーブルに Chrome Integration, LSP, matcher, Task Dependencies 等が含まれていなかった。
今後: 最もインパクトの大きい 6 機能を CLAUDE.md の要約テーブルに追加。
今まで: Auto Mode の説明が実装より先行し、Breezing で既定化済みのように読める状態だった。
今後: shipped default は bypassPermissions のまま維持し、--auto-mode は互換な親セッションでのみ試す opt-in rollout として文書化する。project template / frontmatter には公式 docs に載っている bypassPermissions を残す。
3.10.0 - 2026-03-11
Claude Code の公式ドキュメントに記載された新機能(Sandboxing, Model Configuration, Checkpointing, Code Review, Status Line 等)を Feature Table に統合し、Harness 専用ステータスラインスクリプトを新規追加。
今まで: Worker の Bash コマンドは bypassPermissions + hooks で制御していた。OS レベルのファイルシステム/ネットワーク隔離は Harness の運用ガイドに含まれていなかった。
今後: Claude Code のネイティブ Sandboxing(macOS Seatbelt / Linux bubblewrap)を bypassPermissions の補完レイヤーとして位置づけ。段階導入計画(Phase 0→1→2)を team-composition.md に追加。Worker の Bash に OS レベルの安全境界を段階的に導入する方針。
今まで: Worker/Reviewer のモデルはエージェント定義の model: sonnet で固定。Lead も単一モデルで Plan と Execute を実行していた。
今後:
opusplanエイリアス: Lead セッションで Plan 時に Opus、Execute 時に Sonnet を自動切替CLAUDE_CODE_SUBAGENT_MODEL: 全サブエージェントのモデルを環境変数で一括指定(CI でのコスト削減に有用)availableModels: エンタープライズ環境でのモデルガバナンス
今まで: セッション中にファイル編集が期待通りでなかった場合、手動で git revert するか、最初からやり直す必要があった。
今後: Esc+Esc または /rewind でセッション内の任意のポイントに巻き戻し可能。「ここから要約」で冗長なデバッグセッションのコンテキスト窓を選択的に回収。harness-work のセルフレビューフェーズでの安全な探索に活用。
今まで: Harness の harness-review はローカルエージェントによるコードレビューのみ。
今後: Anthropic インフラ上のマルチエージェント PR レビュー(Teams/Enterprise 向け Research Preview)を Feature Table に追加。REVIEW.md によるレビュー固有ガイダンスの仕組みを文書化。ローカルレビュー(harness-review)と managed レビューは補完的な二重検査として位置づけ。
今まで: Claude Code の /statusline 機能は存在していたが、Harness 固有のステータス表示がなかった。
今後: scripts/statusline-harness.sh を新規追加。以下を 2 行で常時表示:
- Line 1: モデル名 + git ブランチ + staged/modified ファイル数 + エージェント名/ワークツリー名
- Line 2: コンテキスト使用率バー(70% 黄、90% 赤)+ セッションコスト + 経過時間 + 出力スタイル名
# 設定方法
/statusline use scripts/statusline-harness.shdocs/CLAUDE-feature-table.md と CLAUDE.md サマリーに以下を追加:
- Sandboxing (
/sandbox) opusplanモデルエイリアスCLAUDE_CODE_SUBAGENT_MODEL環境変数availableModels設定- Checkpointing (
/rewind) - Code Review (managed service)
- Status Line (
/statusline) - 1M Context Window (
sonnet[1m]) - Per-model Prompt Caching Control
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING
3.9.0 - 2026-03-11
Claude Code 公式ドキュメントの Output Styles / Agent Teams / エージェント frontmatter の最新仕様を Harness に反映し、運用体験を向上。
Release note: 下書きとして積み上がっていた
v3.7.3/v3.8.0相当の変更は、このv3.9.0正式リリースに統合した。
今まで: Plan/Work/Review の進捗報告や Quality Gate 結果のフォーマットが統一されておらず、各スキル・エージェントが独自の出力形式で報告していた。
今後: .claude/output-styles/harness-ops.md を新設。/output-style harness-ops で有効化すると、以下が構造化されて出力される:
- 進捗報告(実施/現在地/次アクション形式)
- Quality Gate 結果(Build/Test/Lint の表形式)
- Review 判定(APPROVE/REQUEST_CHANGES の構造化フォーマット)
- エスカレーション(3回ルール違反時の標準出力形式)
- 判断ポイント(最大3選択肢、推奨先頭)
/output-style harness-ops今まで: Worker/Reviewer/Scaffolder の権限モードは spawn 時に mode: "bypassPermissions" として指定。エージェント定義自体には権限情報がなく、Lead の spawn コードに依存していた。
今後: Claude Code 公式ドキュメントで permissionMode がエージェント frontmatter の正式フィールドとして文書化されたことを受け、3エージェント全ての frontmatter に permissionMode: bypassPermissions を追加。定義レベルでの宣言的権限管理を実現。
# agents-v3/worker.md
permissionMode: bypassPermissions # 新規追加今まで: Harness のチーム運用は独自のパターンに基づいていた。Claude Code の Agent Teams は「実験的」というステータスのみで、公式ガイダンスが限定的だった。
今後: agent-teams.md が独立した公式ドキュメントに昇格。agents-v3/team-composition.md に以下を反映:
- タスク粒度ガイドライン: 5-6 tasks/teammate の公式推奨値
teammateMode設定:"auto"/"in-process"/"tmux"の3モード- Plan Approval パターン: Worker に plan mode を要求する公式フロー
- Quality Gate Hooks:
TeammateIdle/TaskCompletedの exit 2 フィードバックパターン - チームサイズ: 3-5 teammates の公式推奨(Harness の Worker 1-3 + Reviewer 1 と整合確認)
docs/CLAUDE-feature-table.md に以下を追加:
- Output Styles 統合
permissionModein agent frontmatter- Agent Teams 公式ベストプラクティス整合
今まで: README のバージョンバッジ、compare link、Auto Mode の段階表記、validate-plugin の core dependency step、opencode mirror が一部不整合で、required checks を安定して通せない状態だった。
今後: 版表記と compare link を同期し、Auto Mode は「staged rollout / RP 開始後に検証」へ表現を是正。validate-plugin は core/package.json をキャッシュキーにして npm install を使う構成へ修正し、opencode mirror も再生成前提で整える。
Claude Code v2.1.72 の全新機能・修正を Harness に反映。Effort レベル簡素化、ExitWorktree ツール、Agent tool model パラメータ復活、並列ツール呼び出し修正など、12 項目の機能を Feature Table とエージェント定義に追記。
今まで: worktree セッションからの離脱はセッション終了時のプロンプトに依存。Worker エージェントが実装完了後にプログラム的に worktree を閉じる手段がなかった。
今後: CC v2.1.72 の ExitWorktree ツールにより、Worker が実装完了後に明示的に worktree を離脱可能。agents-v3/worker.md に「Worktree 操作」セクションを追加し、ExitWorktree の活用方法を文書化。
今まで: effort レベルに max が存在していたが、Harness のドキュメントでは ultrathink → high effort の対応のみ使用。
今後: CC v2.1.72 で max が廃止、3段階 low(○)/medium(◐)/high(●) に統一。Harness のドキュメントをシンボル付きで更新。影響ファイル:
skills-v3/harness-work/SKILL.md+ 3 ミラーagents-v3/worker.mdagents-v3/reviewer.mdagents-v3/team-composition.md
今まで: per-invocation model override が利用不可だった期間があり、エージェント定義の model フィールドのみで運用。
今後: CC v2.1.72 で Agent tool の model パラメータが復活。タスク特性に応じた動的モデル選択が再び可能に。agents-v3/team-composition.md に Phase 2 検討項目として記載。
CLAUDE.md と docs/CLAUDE-feature-table.md に以下を追加:
ExitWorktreeツール- Effort levels 簡素化
- Agent tool
modelパラメータ復活 /plandescription 引数- 並列ツール呼び出し修正
- Worktree isolation 修正
/clearバックグラウンドエージェント保持- Hooks 修正群(4 件)
- HTML コメント非表示
- Bash auto-approval 追加
- プロンプトキャッシュ修正
各機能の詳細セクションも docs/CLAUDE-feature-table.md に追記。
CLAUDE.md と docs/CLAUDE-feature-table.md のヘッダーを 2.1.71+ → 2.1.72+ に更新。
Claude Code v2.1.71+ の公式ドキュメントに追加された新機能・フィールドを Harness のドキュメントに反映し、Auto Mode Phase 1 移行マーカーを更新。
今まで: v2.1.71 リリース時点の機能のみ記載。公式ドキュメントで追加されたサブエージェントの新フィールドや Agent Teams の実験フラグが未反映。
今後: 以下の機能を Feature Table に追加:
- Subagent
backgroundフィールド - Subagent
localメモリスコープ - Agent Teams 実験フラグ (
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS) /agentsコマンド(対話的管理 UI)- Desktop Scheduled Tasks
CronCreate/CronList/CronDeleteツールCLAUDE_CODE_DISABLE_CRON環境変数--agentsCLI フラグ
各機能の詳細セクションも docs/CLAUDE-feature-table.md に追記。
今まで: 「Phase 0 (現在)」「Phase 1 (RP 開始)」と記載。RP 開始日 2026-03-12 以前の表記。
今後: 「Phase 0 (pre-RP)」「Phase 1 (RP 開始後)」に更新。影響ファイル:
docs/CLAUDE-feature-table.mdCLAUDE.mdFeature Tableagents-v3/team-composition.md
今まで: Harness の breezing が Agent Teams を使用しているが、公式の有効化手順が未記載。
今後: CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS 環境変数の設定方法と teammateMode 設定を agents-v3/team-composition.md に追記。
3.7.2 - 2026-03-10
- Hook stdout purity:
session-initand usage tracking hooks now discard telemetry output so hook consumers receive the JSON payload only. - Quiet session summary output:
session-init/session-resumeno longer leak standalone0lines when Plans counts are zero matches.
- Regression coverage: Added direct-execution tests for snapshot summary output and quiet usage tracking hooks to keep hook output stable.
3.7.1 - 2026-03-09
Breezing(Agent Teams)の実行基盤を3つの観点から強化: エージェント型名の統一、Auto Mode への段階的移行準備、Worker の Worktree 隔離。
今まで: Worker や Reviewer のエージェント型名がファイルごとにバラバラでした。breezing/SKILL.md では general-purpose、team-composition.md では claude-code-harness:worker と書かれており、per-agent hooks(エージェント種別ごとのガードレール)が正しく発火しない問題がありました。
今後: 全ファイルで claude-code-harness:worker / claude-code-harness:reviewer に統一。Worker 専用の PreToolUse ガード(Write/Edit 時のチェック)と Reviewer 専用の Stop ログ(完了時の記録)が確実に適用されます。
今まで: Breezing では Worker がバックグラウンド実行のため許可プロンプトを表示できず、bypassPermissions(全権限スキップ)を使っていました。動くけれど「全権限をスキップ」するため、意図しないファイル書き換えや危険なコマンドも素通りするリスクがありました。
今後: Claude Code 2.1.71+ の Auto Mode に対応する --auto-mode フラグを追加。Auto Mode は許可リスト方式で「定義済みの安全な操作だけを自動承認」し、危険な操作(rm -rf、git push --force 等)はブロックします。3段階で移行します:
- Phase 0(現在):
--auto-modeはオプトイン - Phase 1(検証後):
--auto-modeをデフォルトに - Phase 2(安定後):
bypassPermissionsを廃止
/breezing --auto-mode # Auto Mode で実行
/harness-work --breezing --auto-mode今まで: 複数の Worker を並列実行したとき、同じファイルを2つの Worker が同時に編集すると競合が発生していました。Lead が「同じファイルを触るタスクは同じ Worker に割り当てる」ルールで回避していましたが、完璧ではありませんでした。
今後: Worker エージェント定義に isolation: worktree を追加。各 Worker は自動的に git worktree(独立した作業ディレクトリ)で動作するため、同じファイルを編集しても物理的に別ディレクトリなので衝突しません。完了後に Lead がマージします。
3.7.0 - 2026-03-08
まさお理論(マクロハーネス・ミクロハーネス・Project OS)を適用し、「会話が切れても作業が途切れない」仕組みを5つの機能で構築しました。
今まで: タスク実装後にテスト/CI が失敗すると、最大3回リトライして止まるだけでした。止まった後は「何が原因だったか」を自分で調べ、Plans.md に手動で修正タスクを追加し、再度 /work を実行する必要がありました。
今後: 3回失敗で止まるとき、Harness が失敗原因を分類(assertion_error、import_error 等)し、修正タスク案を state に保存します。approve fix <task_id> で承認すると Plans.md に .fix タスクとして追加されます。
失敗原因分析:
カテゴリ: assertion_error
修正タスク案: 26.1.1.fix — getByStatus の戻り値を修正
DoD: npm test が全パスすること
承認: approve fix 26.1.1
却下: reject fix 26.1.1
将来的には、提案採用率80%以上で全自動化に昇格する計画です(D30)。
今まで: セッションが切れた後の再開時、Plans.md を読み、git log を見て、自分で状況を把握する必要がありました。この「状況把握」に毎回時間がかかり、WIP タスクの進捗は Plans.md からは読み取れませんでした。
今後: /harness-sync --snapshot で、その瞬間の進捗を JSON に保存できます。次の SessionStart または /resume で最新スナップショット要約と前回比が自動表示されます。
スナップショット差分:
| 指標 | 前回 (03/08 22:00) | 今回 | 変化 |
|-----------|-------------------|-----------|---------|
| 完了タスク | 8/16 | 13/16 | +5 |
| WIP タスク | 2 | 0 | -2 |
| TODO タスク | 6 | 3 | -3 |
作業の「セーブポイント」のようなものです。
今まで: Plans.md のタスクが cc:完了 になっても、どのコミットで完了したか追跡できませんでした。「このタスクで何を変えたか」を知るには git log を手作業でたどる必要がありました。
今後: タスク完了時に、直近のコミットハッシュ(7文字短縮形)が Status に自動付与されます。
| Task | 内容 | Status |
|------|-------------------|---------------------|
| 26.1 | snapshot 機能追加 | cc:完了 [a1b2c3d] | ← 自動付与git show a1b2c3d で、そのタスクの変更内容をいつでも確認できます。hash なしの cc:完了 も引き続き有効(後方互換)。
今まで: /breezing で全タスクを並列実行するとき、完了するまでターミナルに進捗が表示されませんでした。10個以上のタスクがある場合、「今何個目が終わったか」がまったく見えず不安でした。
今後: Worker がタスクを完了するたびに、Lead が1行のプログレスサマリーを出力します。
📊 Progress: Task 1/16 完了 — "harness-work に失敗再チケット化を追加"
📊 Progress: Task 2/16 完了 — "harness-sync に --snapshot を追加"
📊 Progress: Task 3/16 完了 — "breezing にプログレスフィードを追加"
TaskCompleted hook の systemMessage も連動して進捗情報を出力します。
今まで: Phase ヘッダーには名前とタグだけ。「このフェーズの目的は何か」は本文を読まないと分かりませんでした。
今後: Phase ヘッダーの直後に、任意で Purpose: 行を1行追加できます。書かなくてもOK(強制ではありません)。ユーザーがフェーズの目的を述べた場合にのみ自動記載されます。
### Phase 26.0: 失敗→再チケット化フロー [P0]
Purpose: 自己修正ループ失敗時に「止まるだけ」から「次の一手を提案」へ転換Solo mode PM framework: structured self-questioning built into every skill. Impact×Risk planning, DoD/Depends columns, Value-axis reviews, and retrospectives — no new commands, just smarter existing ones.
| Before | After |
|---|---|
| Plans.md had 3 columns (Task, Content, Status) | Plans.md has 5 columns (+DoD, +Depends); v1 format dropped |
| Priority was 1-axis (Required/Recommended/Optional) | 2-axis Impact×Risk matrix with automatic [needs-spike] for high-risk items |
| Plan Review checked 4 axes (Clarity/Feasibility/Dependencies/Acceptance) | 5 axes (+Value: user problem fit, alternative analysis, Elephant detection) |
| No retrospective capability | sync auto-runs retro when completed tasks exist (--no-retro to skip) |
| Breezing Phase 0 was undefined | Structured 3-question pre-flight check (scope, dependencies, risk flags) |
| Solo mode jumped straight to implementation | Step 1.5 background confirmation (purpose + impact scope inference) |
| Task dependencies were implicit in Japanese text | Explicit Depends column enables dependency-graph-based task assignment |
- Plans.md v2 format: 5-column table with DoD (Definition of Done) and Depends columns
- DoD auto-inference:
harness-plan creategenerates testable completion criteria from task keywords - Depends auto-inference: Automatic dependency detection (DB→API→UI→Test ordering)
[needs-spike]marker: High Impact × High Risk tasks get auto-generated spike (tech validation) tasks- Plan Review Value axis: 5th review axis checking user problem fit, alternatives, and Elephant detection
- DoD/Depends quality checks: Empty DoD warnings, untestable DoD suggestions, circular dependency detection
- Retrospective (default ON):
syncauto-runs retro whencc:完了tasks ≥ 1;--no-retroto skip - Breezing Phase 0 structured check: 3-question pre-flight (scope confirmation, dependency validation, risk flags)
- Solo Step 1.5: 30-second background confirmation inferring task purpose and impact scope
- Dependency-graph task assignment: Breezing assigns Depends=
-tasks first, chains dependents on completion
- harness-plan create Step 5: Upgraded from 1-axis to Impact×Risk 2-axis priority matrix
- harness-plan SKILL.md: Plans.md format specification updated to v2 with DoD/Depends guide
- harness-plan sync: v1 (3-column) format support removed; Plans.md is always 5-column
- harness-review Plan Review: Expanded from 4-axis to 5-axis evaluation
- harness-work Solo flow: Added Step 1.5 between task identification and WIP marking
- breezing Flow Summary: Phase 0 now has concrete check items instead of undefined discussion
3.5.0 - 2026-03-07
Claude Code v2.1.70–v2.1.71 features fully integrated: /loop scheduling for active monitoring, PostToolUseFailure auto-escalation, safe background agents, and Marketplace @ref installs.
| Before | After |
|---|---|
| Feature Table covered up to v2.1.69 | Feature Table now covers v2.1.70–v2.1.71 (12 new items) |
| No automatic escalation on repeated tool failures | PostToolUseFailure hook escalates after 3 consecutive failures within 60s |
| Breezing relied solely on passive TeammateIdle monitoring | /loop 5m /sync-status enables active polling alongside passive hooks |
| Background agents risked losing output after compaction | v2.1.71 fix documented; run_in_background usage guide added |
Plugin install used plain owner/repo |
owner/repo@vX.X.X ref pinning recommended (v2.1.71 parser fix) |
PostToolUseFailurehook handler: 60秒ウィンドウの連続失敗カウンターと 3 回失敗時の自動エスカレーションを追加- Feature Table v2.1.70–v2.1.71:
docs/CLAUDE-feature-table.mdに 12 項目を追加 - Breezing
/loopguide:TeammateIdleと/loopの役割分担を説明する active monitoring ガイドを追加 - Breezing Background Agent guide: v2.1.71 の出力パス修正を踏まえた
run_in_background運用ガイドを追加 - Marketplace
@refinstall guidance:owner/repo@vX.X.Xを推奨するセットアップ手順を追加
- CLAUDE.md Feature Table:
/loop、PostToolUseFailure、Background Agent 出力修正、Compaction 画像保持を反映 - Feature adoption notes: Plugin hooks 修正、
--printhang 修正、並列 plugin install 修正、--resumeスキル再注入廃止を Feature Table に整理 - README version badges:
3.5.0に同期 - Compatibility doc: plugin version を
3.5.0に更新
- Windows checkout with
core.symlinks=falseno longer hidesharness-*command skills before SessionStart runs
- Symlink-safe failure counter writes:
post-tool-failure.shは.claude親ディレクトリ、.claude/state、tool-failure-counter.txtの symlink を検出した場合に state 書き込みをスキップ
3.4.2 - 2026-03-06
README now explains Claude Harness as a steadier operating model, not just a feature list, and /harness-work all now ships with rerunnable success and failure evidence that matches the real exit status.
| Before | After |
|---|---|
| README mixed feature descriptions, comparison copy, and duplicate visual explanations | README now leads with clearer "what changes after install" messaging and SVG-driven comparisons |
/harness-work all evidence existed, but the full runner could misread a failing test exit code |
success / failure evidence runners now record the real command status, so the artifact contract matches what actually happened |
- README refresh (EN/JA): Reworked the hero and comparison sections around the default operating path after install, added new SVG cards, and removed duplicated explanation blocks.
- Competitive positioning docs: Added a dated harness comparison matrix, compatibility notes, distribution scope, claims audit, positioning notes, and release checklist docs so public claims stay grounded.
- Codex package surface: Clarified
harness-*workflow surfaces in Codex docs and aligned setup scripts with path-based skill loading.
/harness-work allevidence pack: Added success / failure fixtures, smoke/full runners, replay-aware success artifacts, and public docs for rerunnable verification.- README visual assets: Added
why-harness-pillarsand default-flow comparison SVGs in both English and Japanese.
- Evidence runner exit status capture: Full success / failure runners now preserve the real
claudeandnpm testexit codes instead of the inverted!status. - Claim drift checks: Expanded
check-consistency.shto catch README badge drift, missing docs, stale positioning claims, and distribution-scope mismatches before release.
3.4.1 - 2026-03-06
Fixed stale skill labels in the Claude Code 2.1.69+ feature tables (EN/JA), so the docs now match the actual harness skill set.
| Before | After |
|---|---|
task-worker, code-reviewer, work, all skills labels remained in README feature tables |
Unified to current names: harness-work, harness-review, all harness-* skills |
- README (EN/JA) feature table cleanup: Updated the "Skills" column under "Claude Code 2.1.69+ Features" to current harness naming.
- Documentation drift: Removed legacy skill aliases that could mislead users during
/breezingand/harness-workonboarding.
3.4.0 - 2026-03-06
Claude Code v2.1.69 対応を完了。teammate event 制御、skill reference 解決、開発フロー文書を一気に更新し、チーム実行の停止判定と互換性を強化しました。
| Before | After |
|---|---|
| Teammate hooks were session_id-centric and always approve-only | agent_id/agent_type を活用し、{"continue": false, "stopReason": "..."} で停止を返せる |
InstructionsLoaded event was not handled |
Dedicated handler added and wired in both hooks.json files |
SKILL references used relative references/ paths |
${CLAUDE_SKILL_DIR}/references/... に統一し、実行環境依存を削減 |
| Docs were centered on 2.1.68+ | Feature docs/README/command docs updated to 2.1.69+ |
- InstructionsLoaded handler:
scripts/hook-handlers/instructions-loaded.shを新規追加 - Teammate stop response support:
teammate-idle.sh/task-completed.shにcontinue:false応答ロジックを追加 - 2.1.69 feature docs:
${CLAUDE_SKILL_DIR},agent_id/agent_type,/reload-plugins,includeGitInstructions: false,git-subdir運用方針を明文化
- PreToolUse breezing role guard: role lookup を
agent_id優先・session_idfallback に拡張 - SKILL reference path policy: skills/codex/opencode の SKILL.md で references 参照を
${CLAUDE_SKILL_DIR}ベースへ更新 - check-consistency: project template の
defaultModebaseline を検証し、未文書化の値を配布しない方針を明記 - Feature docs: CLAUDE.md / README / README_ja / docs/CLAUDE-feature-table.md / docs/CLAUDE-commands.md 更新
- Plans drift: Phase 17/19 の未同期タスクマーカーを現実状態へ同期
- continue:false parsing: boolean
falseが落ちるケースを修正し、stopReason を確実に反映
3.3.1 - 2026-03-05
All README visuals unified to brand-orange palette, logo regenerated with Nano Banana Pro, and duplicate content sections removed for a cleaner reading experience.
| Before | After |
|---|---|
| Mixed indigo/blue/teal/purple SVGs | Unified orange palette (#F7931A hierarchy) |
| Hero comparison shown twice (SVG + table) | Single SVG visualization |
| /work all flow shown twice (mermaid + SVG) | Single SVG visualization |
| Review section had no visual | 4-perspective review card SVG added |
| 47KB logo (old design) | 53KB Nano Banana Pro logo with "Plan → Work → Review" tagline |
- 8 SVGs recolored (EN/JA): Unified orange brand palette across all README visuals
- Logo regenerated: Nano Banana Pro interlocking-loops icon + "Plan → Work → Review" tagline
- README cleanup: Removed duplicate mermaid/SVG and SVG/table sections in both EN/JA
- Review perspectives SVG (EN/JA): 4-angle code review visualization (Security, Performance, Quality, Accessibility)
- 3 JA generated SVGs: hero-comparison, core-loop, safety-guardrails (Japanese localized versions)
- Alternative logo:
docs/images/claude-harness-logo-alt.png(carabiner icon + color-split text)
3.3.0 - 2026-03-05
Claude Code v2.1.68 introduced effort levels, agent hooks, and more. Harness v3.3.0 puts all of them to work — so you get smarter task execution, LLM-powered code guards, and fully automated worktree lifecycle out of the box.
Claude Code got new superpowers. Harness makes sure you actually use them.
| What Claude Code added | How Harness uses it |
|---|---|
| Opus 4.6 medium effort default — Claude now thinks less deeply by default | Harness auto-detects complex tasks (security, architecture, multi-file changes) and injects ultrathink to restore full thinking depth exactly when it matters |
Agent hooks (type: "agent") — hooks can now use LLM intelligence |
3 smart guards deployed: catches hardcoded secrets before commit, blocks session exit with unfinished tasks, runs lightweight code review after every write |
| WorktreeCreate/Remove hooks — lifecycle events for git worktrees | Breezing parallel workers now auto-initialize their workspace and clean up temp files when done. No more orphaned /tmp clutter |
CLAUDE_ENV_FILE — session environment persistence |
Harness version, effort defaults, and Breezing session IDs persist across hooks. Workers know who they are |
| Prompt hooks expanded to all events — no longer Stop-only | Every hook event can now use LLM judgment (was incorrectly documented as Stop-only) |
- Effort level auto-tuning: Multi-element scoring system (file count + directory criticality + task keywords + past failure history). Score ≥ 3 triggers
ultrathink— meaning complex tasks get deep thinking, simple tasks stay fast - Agent hooks (3 deployments):
- PreToolUse quality guard: LLM reviews every Write/Edit for secrets, TODO stubs, and security issues before they land
- Stop WIP guard: Reads Plans.md and warns you if you're about to close a session with unfinished
cc:WIPtasks - PostToolUse code review: Lightweight haiku-powered review runs after every file write
- Worktree lifecycle automation:
worktree-create.shsets up.claude/state/worktree-info.jsonwith worker identity;worktree-remove.shcleans Codex temp files and logs - Session environment persistence:
session-env-setup.shwritesHARNESS_VERSION,HARNESS_EFFORT_DEFAULT=medium, andHARNESS_BREEZING_SESSION_IDtoCLAUDE_ENV_FILE - PreCompact agent hook: Catches WIP tasks before context compaction — so important context isn't lost mid-task
- HTTP hook template: Ready-to-use PostToolUse metrics hook for external dashboards (localhost:9090)
- 4-type hook system: Harness now supports all 4 hook types —
command,prompt(all events),http, andagent - Feature Table: Updated from v2.1.63+ to v2.1.68+ with 30 tracked features
- Worker/Reviewer/Team agents: Now understand effort levels and when to request deeper thinking
- PM templates: All handoff templates include
ultrathinkwith clear intent comments
- Prompt hook documentation: Removed incorrect "Stop/SubagentStop only" restriction (prompt hooks work on all events since v2.1.63)
- Dead reference cleanup: Removed link to deleted
guardrails-inheritance.mdin Feature Table
TDD is now enabled by default for all tasks, and Windows users get automatic symlink repair on session start.
| Before | After |
|---|---|
TDD only active with [feature:tdd] marker (opt-in) |
TDD active by default; skip with [skip:tdd] (opt-out) |
| Windows users: v3 skills not recognized (broken symlinks) | Auto-detected and repaired on session start |
| Worker had no TDD phase in execution flow | TDD phase (Red→Green) integrated into Worker and Solo mode |
- TDD-by-default: TDD is now opt-out (
[skip:tdd]) instead of opt-in ([feature:tdd]). All WIP tasks get TDD reminders unless explicitly skipped --no-tddoption: Skip TDD phase in/harness-workexecution- Windows symlink auto-repair:
fix-symlinks.shdetects broken symlinks from Windows git clone and replaces them with directory copies - Session-init Step 1.5: Symlink health check runs automatically before skill discovery
- tdd-order-check.sh:
has_tdd_wip_task()split intohas_active_wip_task()+is_tdd_skipped()for clearer logic - harness-plan create.md: Step 5.5 inverted from "TDD adoption criteria" to "TDD skip criteria"
- worker.md: Execution flow expanded from 10 to 12 steps with TDD judgment and Red phase
- harness-work SKILL.md: Solo mode expanded from 6 to 7 steps with TDD phase
Codex CLI 0.107.0 full compatibility, 15 deprecated skill stubs removed (−40,000 lines), and /harness-work now auto-selects the best execution mode based on task count.
| Before | After |
|---|---|
| 15 deprecated redirect stubs cluttering skill listings | Clean 5-verb structure only |
/harness-work always defaulted to Solo mode |
Auto-detection: 1→Solo, 2-3→Parallel, 4+→Breezing |
--codex could be confusing for users without Codex CLI |
--codex is explicit-only, never auto-selected |
| MCP server references in Codex config | All MCP remnants removed, pure CLI integration |
--approval-policy (non-official flag) in docs |
Correct -a never -s workspace-write flags |
- Auto Mode Detection:
/harness-workauto-selects Solo/Parallel/Breezing based on task count (1/2-3/4+) - Breezing backward-compatible alias:
/breezingdelegates to/harness-work --breezing - Codex 環境フォールバック: harness-review に Task ツール非対応時の Plans.md 直接操作パターン追加
- Codex 環境注記: team-composition.md, worker.md に Codex CLI 固有の制約と代替手段を記載
- config.toml 拡充: [notify] セクション(after_agent メモリブリッジ)、reviewer Read-only sandbox
- .codexignore: CLAUDE.md ノイズ化防止パターン追加
- README visual improvement: hero-comparison, core-loop, safety-guardrails images
- MCP 残骸除去: config.toml, setup-codex.sh, codex-setup-local.sh から MCP サーバー参照を完全削除
- codex exec フラグ正規化: --approval-policy → -a (--ask-for-approval)、--sandbox → -s に統一
- プロンプト渡し方式改善: "$(cat file)" → stdin パイプ (
cat file | codex exec -) に変更(ARG_MAX 対策) - codex-worker-engine.sh: mcp-params.json → codex-exec-params.json にリネーム
- /tmp/codex-prompt.md 固定パス: mktemp 一意パスに変更(並列実行時の競合防止)
- 2>/dev/null エラー握りつぶし: ログファイルリダイレクトに変更(デバッグ可能に)
- Skill description quality: gogcli-ops YAML fix, session-memory invalid tool removal, session-state non-standard fields cleanup
- 15 DEPRECATED redirect stubs: breezing(old), codex-review, handoff, harness-init, harness-update, impl, maintenance, parallel-workflows, planning, plans-management, release-har, setup, sync-status, troubleshoot, verify, work — all consolidated into 5-verb skills
- Old -harness suffix stubs: plan-harness, release-harness, review-harness, setup-harness, work-harness from skills-v3/
- x-release-harness: consolidated into harness-release
Harness v3: Full architectural rewrite — 42 skills unified to 5 verbs, 11 agents consolidated to 3, TypeScript engine replaces Bash guardrails, SQLite replaces scattered JSON state files.
| Before | After |
|---|---|
| 42 skills spread across multiple dirs | 5 verb skills: plan / execute / review / release / setup |
| 11 agents with overlapping responsibilities | 3 agents: worker / reviewer / scaffolder |
| Bash scripts for guardrails (pretooluse-guard.sh etc.) | TypeScript engine in core/ (strict, ESM, NodeNext) |
| JSON/JSONL state files scattered across dirs | SQLite single-file state via better-sqlite3 |
| rsync-based mirror sync for codex/opencode | Symlink-based mirror (zero sync overhead) |
| No session lifecycle management | core/engine/lifecycle.ts unifies session-init/control/state/memory |
core/TypeScript engine: Strict ESM module (exactOptionalPropertyTypes,noUncheckedIndexedAccess,NodeNext). Includes guardrails, state, and engine subsystemscore/src/guardrails/: Rules engine (R01-R09), pre-tool/post-tool/permission/tampering detection — all ported from Bash to TypeScriptcore/src/state/: SQLite state management viabetter-sqlite3with schema, store, and JSON→SQLite migrationcore/src/engine/lifecycle.ts: Session lifecycle —initSession,transitionSession,finalizeSession,forkSession,resumeSessionskills-v3/: 5 verb skills with unified SKILL.md + references/agents-v3/: 3 consolidated agent definitions + team-composition.mdtests/validate-plugin-v3.sh: v3 structural validator (6 checks, 34 assertions)- Symlink mirrors:
codex/.codex/skills/andopencode/skills/5-verb dirs now symlinks toskills-v3/ skills-v3/routing-rules.md: Trigger/exclusion keywords per skill verb
- Skills: 42 → 5 (plan/execute/review/release/setup). Legacy
skills/retained for backwards compatibility - Agents: 11 → 3 (worker/reviewer/scaffolder). Legacy
agents/retained for backwards compatibility - Hooks shims:
hooks/pre-tool.sh,hooks/post-tool.sh,hooks/permission.shnow delegate tocore/src/index.ts - PermissionRequest: Switched from v2
run-script.js permission-requestto v3 TypeScript core (hooks/permission.sh) check-consistency.sh: Mirror check updated from rsync diff to symlink validation- CLAUDE.md: Compact v3 version; architecture details moved to
.claude/rules/v3-architecture.md - README.md / README_ja.md: Updated for v3 (5 verb skills, 3 agents, TypeScript core, architecture diagram)
core/src/state/store.ts: Fixedbetter-sqlite3type import —typeof import("better-sqlite3").default→import type DatabaseConstructor from "better-sqlite3"(ESM/CJS compatibility)- Duplicate
posttooluse-tampering-detector: Removed v2 script from PostToolUseWrite|Edit|Taskblock (v3post-tool.tsalready handles tampering detection)
- rsync-based mirror sync (replaced by symlinks)
- Standalone Bash guardrail scripts (replaced by
core/src/guardrails/) - Scattered JSON/JSONL state files (replaced by SQLite)
- Duplicate
posttooluse-tampering-detectorhook (consolidated into v3 post-tool engine)
2.26.1 - 2026-03-02
- 12 section-specific SVG illustrations: 6 EN + 6 JA hand-crafted visuals embedded in both READMEs (before-after, /work all flow, parallel workers, safety shield, skills ecosystem, breezing agents)
- review-loop.md APPROVE flow inconsistency: Phase 3.5 Auto-Refinement step was missing from the APPROVE judgment table, causing inconsistency with SKILL.md and execution-flow.md
2.26.0 - 2026-03-02
Claude Code v2.1.63 integration: /work now auto-simplifies code after review, /breezing can delegate horizontal tasks to /batch, and HTTP hooks enable external service notifications.
| Before | After |
|---|---|
/work flow: implement → review → commit |
/work flow: implement → review → auto-simplify → commit |
| Horizontal migration tasks handled manually | /breezing auto-detects and delegates to /batch |
| Feature table covers up to v2.1.51 | Feature table covers up to v2.1.63 (27 features) |
Hooks only support command and prompt types |
Hooks now support http type (POST to external services) |
- Phase 3.5 Auto-Refinement in
/work: After review APPROVE,/simplifyruns automatically to clean up code.--deep-simplifyaddscode-simplifierplugin.--no-simplifyskips /batchdelegation in/breezing: Horizontal pattern detection (migrate/replace-all/add-to-all) auto-proposes/batchdelegation for bulk changes- HTTP hooks documentation (
.claude/rules/hooks-editing.md):type: "http"spec with field reference, response behavior, command-vs-http comparison table, and 3 sample templates (Slack, metrics, dashboard) - 7 new feature-table entries (
docs/CLAUDE-feature-table.md):/simplify,/batch,code-simplifierplugin, HTTP hooks, auto-memory worktree sharing,/clearskill cache reset,ENABLE_CLAUDEAI_MCP_SERVERS
- Version references:
2.1.49+→2.1.63+across CLAUDE.md and feature table - Feature count: 20 → 27 in CLAUDE.md and feature table
/breezingguardrails: Added auto-memory worktree sharing (v2.1.63) to inheritance tabletroubleshootskill: Added/clearcache reset to CC v2.1.63+ diagnosticswork-active.jsonschema: Addedsimplify_mode: "default" | "deep" | "skip"field
2.25.0 - 2026-02-24
CLAUDE_CODE_SIMPLE モード(CC v2.1.50+)の影響を自動検出し、無効化される機能をユーザーに明示。サイレント障害を防止。
| Before | After |
|---|---|
| SIMPLE モードで 37 スキル・11 エージェントがサイレントに無効化 | SessionStart/Setup フックが自動検出し、ターミナル + additionalContext で警告表示 |
| SIMPLE モードの影響範囲が不明(互換性マトリクスに 1 行のみ) | 専用ドキュメント docs/SIMPLE_MODE_COMPATIBILITY.md で全影響を網羅(スキル・エージェント・メモリ・ワークフロー) |
| 防御コード・検出ロジックがゼロ | scripts/check-simple-mode.sh ユーティリティで一貫した検出・多言語警告メッセージ |
/work, /breezing 等が理由不明で動作しない |
「スキル無効」「エージェント無効」「フックのみ動作」の 3 分類で即座に状況把握可能 |
- SIMPLE モード検出ユーティリティ (
scripts/check-simple-mode.sh):is_simple_mode()関数とsimple_mode_warning()多言語メッセージ生成。全フック・スクリプトから source して使用可能 - SessionStart SIMPLE モード警告:
scripts/session-init.shがセッション開始時にCLAUDE_CODE_SIMPLE環境変数を検出し、stderr バナー + additionalContext で詳細警告を出力 - Setup hook SIMPLE モード警告:
scripts/setup-hook.shが init/maintenance 時に SIMPLE モードを検出し、出力メッセージに警告を追加 docs/SIMPLE_MODE_COMPATIBILITY.md: SIMPLE モード完全ガイド — 影響サマリ表、動作/非動作の全リスト、37 スキル・11 エージェントの影響度分類、検出方法、ワークアラウンド、開発者向け拡張ガイド
- 互換性マトリクス強化 (
docs/CLAUDE_CODE_COMPATIBILITY.md):- v2.1.50 SIMPLE モード行のステータスを「要注意」→「対応済み」に更新
- 非互換セクションに SIMPLE モードの詳細影響(37 スキル・11 エージェント・メモリ無効化)と検出方法を追記
SIMPLE_MODE_COMPATIBILITY.mdへのクロスリファレンスリンク追加
2.24.0 - 2026-02-24
Claude Code v2.1.50〜v2.1.51 の新機能に対応。互換性マトリクス更新、メモリ安定性改善の恩恵、新 CLI コマンド活用。
| Before | After |
|---|---|
| 互換性マトリクスが v2.1.49 で止まっていた | v2.1.50〜v2.1.51 の全機能を文書化、推奨バージョンを v2.1.51+ に引き上げ |
| WorktreeCreate/Remove hook が未知 | Breezing guardrails に将来対応として文書化 |
| エージェント spawn 失敗時の診断手段が限定的 | claude agents list (CC 2.1.50+) を troubleshoot スキルに追加 |
| バックグラウンドエージェント停止方法が未記載 | Ctrl+F(CC 2.1.49+)を breezing guardrails に追記、ESC 非推奨を明記 |
- CC v2.1.50/v2.1.51 互換性マトリクス:
docs/CLAUDE_CODE_COMPATIBILITY.mdに 17 項目追加(メモリリーク修正、完了タスク GC、WorktreeCreate/Remove hook、claude agentsCLI、宣言的 worktree isolation、SIMPLE モード注意、remote-control 等) claude agentsCLI 診断:skills/troubleshoot/SKILL.mdにエージェント診断セクション追加(CC 2.1.50+)- WorktreeCreate/WorktreeRemove hook:
skills/breezing/references/guardrails-inheritance.mdに将来対応として追記 - Ctrl+F キーバインド: breezing guardrails にバックグラウンドエージェント停止方法を追記(CC 2.1.49+、ESC 非推奨)
- Feature Table 拡張:
docs/CLAUDE-feature-table.mdに v2.1.50/v2.1.51 の 4 機能追加(メモリリーク修正、claude agents CLI、WorktreeCreate/Remove、remote-control)
- 推奨 CC バージョン: v2.1.49+ → v2.1.51+ に引き上げ
- Feature Table タイトル: 2.1.49+ → 2.1.51+ に更新
2.23.6 - 2026-02-24
- Auto-release workflow (
release.yml): Safety-net GitHub Release creation onv*tag push — prevents orphan tags ifrelease-haris interrupted - CHANGELOG format validation in CI: ISO 8601 date format,
[Unreleased]section presence, non-standard heading warnings - Codex mirror sync check in CI:
codex/.codex/skills/↔skills/consistency validated in bothcheck-consistency.shandopencode-compat.yml - Branch Policy in release-har: Explicitly documents that main direct push is allowed for solo projects (force push remains prohibited)
- CHANGELOG link definitions repaired: All version compare links supplemented
- CHANGELOG_ja.md translation gaps filled: 5 versions added (2.20.1, 2.17.6, 2.17.1, 2.17.0, 2.16.21)
- README version and count updated: Badge version, skill count (41), agent count (11) updated to reflect reality
- CHANGELOG non-standard headings normalized:
### Internal→### Changed(Keep a Changelog compliant) - Mirror compat workflow renamed:
OpenCode Compatibility Check→Mirror Compatibility Check(now covers both opencode and codex mirrors) - AGENTS.md template updated: Removed
maindirect push prohibition for solo projects; force push remains prohibited - Tamper detection expanded (
codex-worker-quality-gate.sh): Python skip patterns, catch-all assertions, config relaxation detection
2.23.5 - 2026-02-23
Phase 13: Breezing quality automation and Codex rule injection — tamper detection, auto-test runner, CI signal handling, AGENTS.md rule sync, and APPROVE fast-path.
| Before | After |
|---|---|
| Test tampering detection covered skip patterns and assertion deletion only | 12+ patterns: weakening (toBe → toBeTruthy), timeout inflation, catch-all assertions, Python skip decorators |
| Auto-test runner only recommended tests without running them | HARNESS_AUTO_TEST=run actually runs tests and feeds results back via additionalContext |
| CI failures required manual detection | PostToolUse hook detects CI failures after git push and injects ci-cd-fixer recommendation signals |
.claude/rules/ existed only for Claude Code; Codex had no rule awareness |
sync-rules-to-agents.sh auto-syncs rules to codex/AGENTS.md; Codex reads full project rules on startup |
codex exec called bare without pre/post processing |
codex-exec-wrapper.sh handles rule sync, [HARNESS-LEARNING] extraction, and secret filtering |
| Breezing Phase C required manual APPROVE confirmation | review-result.json + commit hash check enables instant fast-path to integration tests |
Implementer count fixed at min(独立タスク数, 3) |
Auto-calculated as max(1, min(独立タスク数, --parallel, planner_max_parallel, 5)) |
- Tamper detection (12+ patterns): assertion weakening, timeout inflation, catch-all assertions, Python skip decorators —
scripts/posttooluse-tampering-detector.sh HARNESS_AUTO_TEST=runmode:scripts/auto-test-runner.shactually runs tests and returns pass/fail viaadditionalContextJSON- CI signal injection:
scripts/hook-handlers/ci-status-checker.shdetects CI failures post-push and writes tobreezing-signals.jsonl;scripts/hook-handlers/breezing-signal-injector.shinjects unconsumed signals via UserPromptSubmit hook sync-rules-to-agents.sh: Auto-converts.claude/rules/*.mdtocodex/AGENTS.mdRules section with hash-based drift detectioncodex-exec-wrapper.sh: Pre/post wrapper forcodex exec— rule sync,[HARNESS-LEARNING]marker extraction, secret filtering, atomic write-back tocodex-learnings.md- APPROVE fast-path (Phase C): Checks
.claude/state/review-result.json+ HEAD commit hash; skips manual confirmation when APPROVE is already recorded review-result.jsonauto-record: Reviewer reportsreview_result_jsonin SendMessage; Lead writes.claude/state/review-result.jsonfor fast-path reference- Docs reorganization:
docs/CLAUDE-feature-table.md,docs/CLAUDE-skill-catalog.md,docs/CLAUDE-commands.md— detailed references extracted from CLAUDE.md harness.rules— execpolicy guard rules:npm test/yarn test/pnpm testauto-allowed;git push --force,git reset --hard,rm -rf,git clean -f, SQL destructive statements (DROP TABLE,DELETE FROM) require user confirmation viacodex execpolicy; 20 patterns verified withcodex execpolicy check
- CLAUDE.md compressed to 120 lines: Feature Table (5 items), skill category table (5 categories); full details moved to
docs/ - Implementer count auto-determination:
max(1, min(独立タスク数, --parallel N, planner_max_parallel, 5))— starvation prevention + hard cap at 5 review-retake-loop.md: Addedreview-result.jsonwrite spec with JSON format, Reviewer→Lead delegation flow, and file lifecycleexecution-flow.mdPhase C: APPROVE fast-path check added as step 2; phase processing renumberedteam-composition.md: Extended configuration (5 Implementers) cost estimate table addedrelease-harskill redesigned (Phase 14): Full redesign with Pre-flight checks, structured git log, Conventional Commits classification, Claude diff summarization (Highlights + Before/After), SemVer auto-detection, dry-run preview, 4-section Release Notes, Compare link auto-generation,--announceoption, and--dry-rundefault gate;references/release-notes-template.mdandreferences/changelog-format.mdadded
2.23.3 - 2026-02-22
Codex integration is now explicitly CLI-first (codex exec) outside breezing, and Codex package parity includes the new generate-slide skill.
| Before | After |
|---|---|
work/harness-review/codex-review docs mixed Codex MCP wording with CLI execution examples |
Non-breezing Codex flows are documented as CLI-only (codex exec) with consistent setup and troubleshooting |
codex-worker-setup.sh checked MCP registration state |
Setup now checks codex exec readiness directly (codex_exec_ready) |
| Codex package parity test did not block non-breezing MCP vocabulary regressions | New CLI-only regression checks added to tests/test-codex-package.sh |
generate-slide existed in source/opencode but not in Codex package |
codex/.codex/skills/generate-slide/ is now included and parity tests pass |
- Codex package skill parity: Added
generate-slideskill files tocodex/.codex/skills/ - CLI-only regression guard: Added non-breezing Codex vocabulary checks to
tests/test-codex-package.sh - README updates (EN/JA): Added
/generate-slidecommand docs and slide-generation feature section
- Codex docs (non-breezing): Updated
work,harness-review,codex-review, routing/setup references to CLI-first terminology and behavior (codex exec) - Codex setup reference: Reworked
codex-mcp-setup.mdcontent into Codex CLI setup flow (legacy filename retained for compatibility) - README Codex review section (EN/JA): Clarified Codex second-opinion execution path as Codex CLI-based
- Setup behavior mismatch: Replaced MCP registration check in
scripts/codex-worker-setup.shwith actual CLI execution readiness check - Codex mirror consistency: Synced updated non-breezing Codex skill docs between
skills/andcodex/.codex/skills/
2.23.2 - 2026-02-22
Codex skills now use fully native multi-agent vocabulary — CI checks pass, and --claude review routing is explicitly documented.
| Before | After |
|---|---|
Codex breezing/work skills contained Claude Code-specific terms (delegate mode, TaskCreate, subagent_type, etc.) |
All 82+ occurrences replaced with Codex native API equivalents (Phase B, spawn_agent, role, etc.) |
No review_engine matrix in Codex breezing/work SKILL.md |
review_engine comparison table added with codex / claude columns |
--claude + --codex-review conflict undocumented |
Explicit conflict rule: mutually exclusive, fails before execution |
State files referenced .claude/state/ paths |
State files use ${CODEX_HOME:-~/.codex}/state/harness/ paths |
opencode/ contained stale breezing files |
Rebuilt opencode/ — breezing removed (dev-only skill) |
- Codex vocabulary migration: replaced 82+ legacy Claude Code terms across 13 files in
codex/.codex/skills/breezing/andcodex/.codex/skills/work/—delegate mode→Phase B,TaskCreate→spawn_agent,subagent_type→role:/spawn_agent(),CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS→config.toml [features] multi_agent,.claude/state/→${CODEX_HOME}/state/harness/ --claudereview routing: addedreview_enginematrix table and--claude + --codex-reviewconflict rule to bothbreezing/SKILL.mdandwork/SKILL.md- OpenCode sync: rebuilt
opencode/to remove stale breezing files and routing-rules.md
2.23.1 - 2026-02-22
Codex CLI setup now merges files instead of overwriting, and README setup instructions are clearer with a collapsible quick-start.
| Before | After |
|---|---|
setup-codex.sh overwrote all destination files on every sync |
Merge strategy: new files added, existing files updated, user-created files preserved |
| Codex CLI Setup was a top-level README section | Moved to collapsible <details> block with step-by-step quick-start |
config.toml had 4 agent definitions |
9 agents: added task_worker, code_reviewer, codex_implementer, plan_analyst, plan_critic |
- README (EN/JA): Codex CLI Setup section moved from top-level to collapsible
<details>block with prerequisites, 3-step quick-start, and flag reference table setup-codex.sh:sync_named_children()rewritten with 3-way merge strategy — new files are copied, existing files are backed up and updated, destination-only files are preserved; log output now shows(N new, N updated, N preserved, N skipped)codex-setup-local.sh: same merge strategy applied to project-local setup script
merge_dir_recursive()helper in both setup scripts for recursive directory merging with backup- 5 new Codex agent definitions in
setup-codex.shconfig.tomlgeneration:task_worker,code_reviewer,codex_implementer,plan_analyst,plan_critic(Breezing roles) - Idempotent agent injection: existing
config.tomlfiles receive missing agent entries without duplicating existing ones
2.23.0 - 2026-02-21
Codex breezing now has its own Phase 0 (Planning Discussion) using Codex's native multi-agent API — Planner and Critic agents analyze your plan before implementation begins.
| Before | After |
|---|---|
| Codex breezing Phase 0 was dead code (referenced Claude-only APIs) | Phase 0 uses spawn_agent/send_input/wait/close_agent natively |
config.toml had 4 agent definitions |
9 agents defined including plan_analyst, plan_critic, task_worker, code_reviewer, codex_implementer |
| All breezing reference files were identical between Claude and Codex | 3 files now intentionally diverge with platform-native implementations |
- Codex Phase 0 (Planning Discussion): ported from Claude Agent Teams to Codex native multi-agent API (
spawn_agent/send_input/wait/close_agent) - 5 new Codex agent definitions in
config.toml:plan_analyst,plan_critic,task_worker,code_reviewer,codex_implementer - Mirror sync divergence management (D24, P20): 3 breezing files (
planning-discussion.md,execution-flow.md,team-composition.md) now excluded from rsync to preserve Codex-native implementations
- Codex
planning-discussion.md: fully rewritten with Codex native API — Planner ↔ Critic dialogue via Lead relay pattern usingsend_input+waitloops - Codex
execution-flow.md: Phase 0 + Phase A spawn logic updated tospawn_agent()format; environment check now referencesconfig.toml [features] multi_agent = true - Codex
team-composition.md: all role definitions updated —subagent_typeremoved,spawn_agent()format,SendMessage→send_input(),shutdown_request→close_agent()
2.22.0 - 2026-02-21
Security guardrails now apply automatically from the moment you install Harness — no /harness-init required. Permission policy hardened with least-privilege defaults and privacy-safe session logging.
| Before | After |
|---|---|
Security settings (deny/ask rules) required running /harness-init |
Plugin settings applied automatically on install (CC 2.1.49+) |
Plugin settings had a broad allow rule; no DB CLI protection |
Least-privilege: removed blanket allow; added deny for psql/mysql/mongo |
stop-session-evaluator.sh always returned {"ok":true} without reading input |
Hook reads last_assistant_message, stores length+hash only (privacy-safe) with atomic writes |
| No hook for configuration file changes | New ConfigChange hook records config changes to breezing timeline when active |
npm install / bun install ran without confirmation |
Package manager installs now require user confirmation (ask rule) |
- Plugin settings.json (
.claude-plugin/settings.json): default security permissions distributed with the plugin — active from install (CC 2.1.49+)- Deny:
.env, secrets, SSH keys (id_rsa,id_ed25519),.aws/,.ssh/,.npmrc,sudo,rm -rf/-fr, DB CLIs (psql,mysql,mongo) - Ask: destructive git (
push --force,reset --hard,clean -f,rebase,merge), package installs (npm/bun/pnpm install),npx/npm exec
- Deny:
ConfigChangehook (scripts/hook-handlers/config-change.sh): records configuration file changes tobreezing-timeline.jsonlwhen breezing is active; always non-blocking- Normalizes
file_pathto repo-relative paths in timeline logs - Portable timeout detection (
timeout/gtimeout/ddfallback)
- Normalizes
last_assistant_messagesupport instop-session-evaluator.sh: reads CC 2.1.47+ Stop payload- Stores message length + SHA-256 hash only (no plaintext — privacy by design)
- Atomic writes via
mktemp(TOCTOU fix) - Portable hash detection (
shasum/sha256sum)
- CC 2.1.49 compatibility matrix (
docs/CLAUDE_CODE_COMPATIBILITY.md): added v2.1.43-v2.1.49 entries covering Plugin settings.json, Worktree isolation, Background agents, ConfigChange hook, Sonnet 4.6, WASM memory fix
- Breezing: Worktree isolation support (CC 2.1.49+): documented
isolation: "worktree"inguardrails-inheritance.md— parallel Implementers can now work on the same files without conflicts via git worktree isolation - Breezing: Agent model field fix (CC 2.1.47+): documented model field behavior change in guardrails for correct agent spawning
- Breezing: Background agents (
background: true):video-scene-generatoragent now supports non-blocking background execution - Breezing: opencode mirror full sync: all 10 breezing reference files (execution-flow, team-composition, review-retake-loop, session-resilience, planning-discussion, plans-to-tasklist, codex-engine, codex-review-integration, guardrails-inheritance, SKILL.md) synced to
opencode/skills/breezing/for the first time - Breezing: Codex mirror updates: all breezing reference files in
codex/.codex/skills/breezing/updated to latest - Work skill: major Codex mirror updates for auto-commit, auto-iteration, codex-engine, error-handling, execution-flow, parallel-execution, review-loop, scope-dialog, session-management
quick-install.sh: added note that default security permissions apply automatically — no manual configuration neededclaude-settings.mdskill: added note that CC 2.1.49+ auto-applies plugin settings; manualsettings.jsongeneration only needed for project-specific additionssettings.security.json.template: updated_harness_versionand added_harness_noteclarifying role separation from plugin settings; unifiedrm -rf/-frdeny variants- Version references: updated from CC 2.1.38 to 2.1.49 across 16+ skill and agent files
- Least-privilege enforcement: removed overly broad
allowfrom plugin settings.json; all permissions now explicit deny or ask - DB CLI deny rules:
psql,mysql,mongod,mongoblocked by default to prevent accidental data operations - Secret path expansion: added
id_ed25519, recursive.ssh/,.aws/,.npmrcto deny patterns - Privacy-safe session logging:
last_assistant_messagestored as length+hash, not plaintext - Atomic file writes:
session.jsonupdates usemktemp+mvto prevent TOCTOU race conditions - All 3 Codex experts (Security/Quality/Architect) scored A on hardening review
2.21.0 - 2026-02-20
Breezing now reviews your plan before coding starts. Phase 0 (Planning Discussion) runs by default—skip with --no-discuss.
| Before | After |
|---|---|
/breezing jumps straight into coding |
Plan reviewed by Planner + Critic before implementation |
| No task validation before execution | V1–V5 checks (scope, ambiguity, overlap, deps, TDD) |
| All tasks registered at once | 8+ tasks auto-split into progressive batches |
| Implementers communicate only via Lead | Implementers can message each other directly |
- Breezing Planning Discussion (Phase 0): pre-execution plan review with Planner + Critic teammates (default-on, skip with
--no-discuss) - Task granularity validation (V1–V5): validates task scope, ambiguity, owns overlap, dependency consistency, and TDD markers before TaskCreate
- Progressive Batch strategy: automatic batch splitting for 8+ tasks with 60% completion triggers
- Implementer peer communication (Pattern D): direct Implementer-to-Implementer knowledge sharing via SendMessage
- Hook-driven signals:
task-completed.shnow generatespartial_review_recommendedandnext_batch_recommendedsignals - Spec Driven Development integration:
[feature:tdd]markers in Plans.md trigger test-first task generation - New agents:
plan-analyst(task analysis) andplan-critic(Red Teaming review) for Phase 0
- Signal threshold comparison: Changed
-eqto-geintask-completed.shto handle simultaneous task completions that skip exact threshold - Signal deduplication: Added existing signal check before emitting to prevent duplicate signals
- Signal generation fallback: Added
python3fallback for signal JSON generation whenjqis unavailable - Completion counting: Fixed
grep -covercounting in batch scope (now counts each task_id once regardless of retakes) - Document consistency: Resolved contradictions between execution-flow.md, team-composition.md, and planning-discussion.md regarding round counts and V1-V4 skip policy
- Signal session scoping: Signals now include
session_idand dedup is session-scoped, preventing prior sessions from suppressing signals - grep pattern safety: Changed
grep -qtogrep -Fq(fixed-string match) for task_id lookups, preventing regex meta-character injection - stdin piping safety: Changed
echotoprintf '%s'for JSON piping to jq/python3, preventing edge-case mangling - DRY signal construction: Extracted
_build_signal_jsonhelper to eliminate jq/python3 fallback duplication in signal paths - Phase 0 handoff persistence: Added
handoffpayload to breezing-active.json for Compaction resilience between Phase 0 and Phase A - Resume stale-ID reconciliation: Added rules for mapping old task IDs to new IDs during session resume, with completion evaluation against active ID set
2.20.13 - 2026-02-19
Codex execution is now documented and validated as native multi-agent first, with --claude forcing both implementation and review delegation to Claude.
| Before | After |
|---|---|
| Codex skill docs still mixed legacy task-team vocabulary and old state paths | Codex skill docs are aligned to native multi-agent tool flow (spawn_agent, wait, send_input, resume_agent, close_agent) and CODEX_HOME state paths |
--claude behavior could read as implementation-only delegation in some references |
--claude is now consistently specified as implementation + review delegation to Claude |
Setup could leave multi_agent / role defaults implicit |
Setup scripts now ensure features.multi_agent=true and harness agent role defaults in target config.toml |
- Rewrote Codex distribution docs for
work/breezingto use native multi-agent flow terminology and removed legacy task-team wording. - Standardized runtime state references to
${CODEX_HOME:-~/.codex}/state/harness/across Codex skill docs. - Added explicit flag conflict rule:
--claude + --codex-reviewfails before execution. - Updated Codex setup references and README to reflect native multi-agent defaults and role declarations.
- Strengthened
tests/test-codex-package.shand CI to guard against legacy vocabulary regressions and enforce required multi-agent keywords/config defaults.
- Fixed inconsistent review routing by making
--claudemode explicitly require Claude reviewer routing in bothworkandbreezing.
2.20.11 - 2026-02-19
- Harness UI moved out of distribution scope: tracked UI assets/skills/templates/hooks are excluded from release payload
- SessionStart hooks simplified: removed
harness-ui-registerexecution from startup/resume
- Issue #50: removed distribution-path dependency on memory wrapper scripts with hardcoded absolute paths
- distribution no longer tracks the 8 wrapper files (
scripts/harness-mem*,scripts/hook-handlers/memory-*.sh) - hooks/config no longer reference those wrapper scripts
- distribution no longer tracks the 8 wrapper files (
2.20.10 - 2026-02-18
Codex Harness now defaults to user-based installation, and Codex command execution is Codex-first with explicit --claude delegation.
| Before | After |
|---|---|
Codex setup copied .codex per project by default |
Setup defaults to user scope (${CODEX_HOME:-~/.codex}), with --project as opt-in |
/work --codex and /breezing --codex were primary for Codex execution |
Codex is default engine; --claude explicitly delegates implementation |
| Codex setup guidance was mixed between project/user scopes | README + setup references are aligned to user-based rollout (JP/EN) |
- Updated Codex setup scripts (
scripts/setup-codex.sh,scripts/codex-setup-local.sh) to install skills/rules to${CODEX_HOME:-~/.codex}by default. - Added explicit fallback mode
--projectfor project-local deployment when needed. - Updated Codex distribution docs and setup references to user-based defaults in both English and Japanese.
- Reworked Codex skill routing/docs so implementation intents resolve to Codex-first
/work, with--claudefor intentional delegation. - Aligned
/breezingrecovery/state docs (impl_mode) with Codex-first runtime semantics. - Synced release-related references and command docs to avoid setup drift between README, setup skill references, and Codex distribution docs.
2.20.9 - 2026-02-15
In Codex mode, harness-review guidance is now consistently documented as delegating to Claude CLI (claude -p).
| Before | After |
|---|---|
| Codex-side review docs mixed Codex/MCP wording and delegation targets | Codex-side docs consistently describe Claude CLI (claude -p) delegation flow |
- Updated Codex-side review docs to align review mode wording, integration flow, and detection guidance around
claude -pdelegation. - Documentation consistency cleanup for Codex review-mode references.
2.20.8 - 2026-02-14
- Claude Code 2.1.41/2.1.42 adaptation: Updated compatibility matrix and recommended version to v2.1.41+
- Added v2.1.39〜v2.1.42 entries to
docs/CLAUDE_CODE_COMPATIBILITY.md(4 new version sections, 30+ feature rows) - Recommended version raised from v2.1.38+ to v2.1.41+ (Agent Teams Bedrock/Vertex/Foundry model ID fix, Hook stderr visibility fix)
- Added v2.1.39〜v2.1.42 entries to
- Breezing Bedrock/Vertex/Foundry note: Added CC 2.1.41+ requirement note to
guardrails-inheritance.mdfor non-Anthropic API users - Session
/renameauto-naming: Added CC 2.1.41+ auto-generate session name documentation to session skill - Troubleshoot
claude authcommands: Added CC 2.1.41+claude auth login/status/logoutto diagnostic table
2.20.7 - 2026-02-14
- Stop hook "JSON validation failed" on every turn (#42): Replaced unreliable
type: "prompt"hook with deterministictype: "command"hook (stop-session-evaluator.sh)- Root cause: prompt-type hook instructed the LLM to respond in JSON, but the model frequently returned natural language, causing repeated JSON parse errors
- New command-based evaluator always outputs valid JSON, eliminating validation failures entirely
- Both
hooks/hooks.jsonand.claude-plugin/hooks.jsonupdated in sync
2.20.6 - 2026-02-14
- session-auto-broadcast.sh の hookEventName バリデーションエラー (#41):
hookEventNameを"AutoBroadcast"→"PostToolUse"に修正(4箇所)session-broadcast.shのhookEventNameを"Broadcast"→"PostToolUse"に修正- subprocess の stdout 汚染を防止(
>/dev/nullリダイレクト追加) test-hook-event-names.shテスト追加(hookEventName 一貫性の回帰テスト)
2.20.5 - 2026-02-12
- Breezing
--codexsubagent_type enforcement: Fixed--codexflag being ignored during Implementer spawn- Root cause:
execution-flow.mdStep 3 hardcodedtask-workerwith no--codexbranch - Added mandatory
impl_modebranching to SKILL.md, execution-flow.md, and team-composition.md - Added three "absolute prohibition" rules: codex mode must use
codex-implementer, standard mode must usetask-worker, codex mode Lead must not Write/Edit source - Added explicit parallel spawn instruction: N Implementers spawned simultaneously (
N = min(independent_tasks, --parallel N, 3)) - Compaction Recovery now restores correct subagent_type based on
impl_mode
- Root cause:
2.20.4 - 2026-02-11
- Codex MCP → CLI migration (Phase 7 completion):
- Replace all
mcp__codex__codextext references withcodex exec (CLI)inpretooluse-guard.sh(4 messages) andcodex-worker-engine.sh(1 log message) - Remove MCP legacy note from
codex-review/SKILL.md - Add
codex-cli-only.mdrule to.claude/rules/for prevention - Add PreToolUse hook failsafe: deny
mcp__codex__*tool calls with localized message viaemit_deny+msg()pattern - Add
.gitignorepatterns for opencode/codex mirror dev-only skills (test-*,x-promo,x-release-harness)
- Replace all
- Codex MCP dual-defense: Three-layer protection against deprecated MCP usage (text correction + hook block + rule file). Codex review: Security A, Architect B
2.20.3 - 2026-02-10
- Hook handler security hardening (Codex review Round 1-3):
- Replace manual JSON string escaping with
jq -nc --argandpython3 json.dumpsfor safe JSON construction - Fix Python code injection vulnerability: pass data via
sys.argv/stdininstead of triple-quote interpolation - Fix
grepfailure underset -euo pipefailwith|| true - Use
grep -Ffor fixed-string matching (avoid regex metacharacter issues) - Add
chmod 700on.claude/statedirectory - Add
tostringguard for description truncation type safety - Add 5-second dedup for TeammateIdle events
- Add JSONL rotation (500 → 400 lines) to prevent unbounded growth
- Replace manual JSON string escaping with
2.20.2 - 2026-02-10
- TeammateIdle/TaskCompleted hook handlers: New
scripts/hook-handlers/teammate-idle.shandtask-completed.shlog agent team events to.claude/state/breezing-timeline.jsonl - 3-layer memory architecture (D22): Documented coexistence design for Claude Code auto memory, Harness SSOT, and Agent Memory in
decisions.md - Task(agent_type) pattern (P18): Documented sub-agent type restriction syntax in
patterns.md
- Claude Code 2.1.38+ adaptation: Updated Feature Table in CLAUDE.md with 6 new rows (TeammateIdle/TaskCompleted Hook, Agent Memory, Fast mode, Auto Memory, Skill Budget Scaling, Task(agent_type))
- Version references: Updated all "CC 2.1.30+" references to "CC 2.1.38+" across 16+ skill and agent files
- Skill budget scaling: Relaxed 500-line hard rule to recommendation in
skill-editing.md, noting CC 2.1.32+ 2% context window scaling - Session memory: Added "Auto Memory Relationship (D22)" section to
session-memory/SKILL.mdandmemory/SKILL.md - Breezing execution flow: Updated hook implementation status to "implemented" in
execution-flow.md - Guardrails inheritance: Added Task(agent_type) to safety mechanism table
2.20.1 - 2026-02-10
- PostToolUse hook syntax error: Fix bash parser error in
posttooluse-tampering-detector.shcaused by|| trueafter heredoc inside command substitution - python3 fallback in all hooks: Replace heredoc python3 fallback with
python3 -cin all 10 hook scripts to fix stdin conflict - POSIX compliance: Replace
echowithprintf '%s'for safe input piping,echo -ewithprintf '%b' - Pattern matching: Replace
echo | grep -qEwith[[ =~ ]]for 6 pattern checks (with word boundaries) - Error handling: Change
set -euo pipefailtoset +eto match all other PostToolUse scripts - Bilingual warnings: Add English + Japanese warning messages to hook scripts
2.20.0 - 2026-02-08
28 skills consolidated to 19. Breezing now runs with Phase A/B/C separation, teammate permissions fixed, and repo cleaned up.
| Before | After |
|---|---|
memory, sync-ssot-from-memory, cursor-mem as 3 skills |
Unified memory (SSOT promotion + memory search in references) |
setup, setup-tools, harness-mem, codex-setup, 2agent, localize-rules as 6 skills |
Unified setup (routing table dispatches to references) |
ci, agent-browser, x-release-harness visible as slash commands |
Hidden with user-invocable: false (auto-load still works) |
| Delegate mode ON at breezing start → bypass permissions lost | Phase A (prep) maintains bypass → delegate only in Phase B |
| Delegate mode stays on during completion → commit restricted | Phase C exits delegate → Lead can commit directly |
| Teammates auto-denied Bash due to "prompts unavailable" | mode: "bypassPermissions" + PreToolUse hooks for safety |
| Build artifacts, dev docs, lock files tracked in git | 33 files untracked, .gitignore updated |
- Skill consolidation (28 → 19):
/memory: Absorbedsync-ssot-from-memoryandcursor-mem/setup: Absorbedsetup-tools,harness-mem,codex-setup,2agent,localize-rules/troubleshoot: Added CI failure triggers to description
- Breezing Phase separation: Restructured execution flow into Phase A (Pre-delegate) / Phase B (Delegate) / Phase C (Post-delegate)
- Phase A: Maintain user's permission mode while initializing Team and spawning teammates
- Phase B: Delegate mode — Lead uses only TaskCreate/TaskUpdate/SendMessage
- Phase C: Exit delegate, then run integration verification, commit, and cleanup
- Teammate permission model: All teammate spawns use
mode: "bypassPermissions"with PreToolUse hooks as safety layer- PreToolUse hooks fire independently of permission system (official spec)
- Safety layers: disallowedTools + spawn prompt constraints + .claude/rules/ + Lead monitoring
- English-only releases: GitHub release notes now written in English. Updated release rules and skills.
- All related docs updated: execution-flow.md, team-composition.md, codex-engine.md, guardrails-inheritance.md, session-resilience.md
skills/memory/references/cursor-mem-search.md- Cursor memory search referenceskills/setup/references/harness-mem.md- Harness-Mem setup referenceskills/setup/references/localize-rules.md- Rule localization reference- Codex first-use check hook: Auto-runs
check-codex.shon first/codex-reviewuse (once: true) - timeout/gtimeout detection: Guides macOS users to
brew install coreutils
- Codex review fixes (22 issues): pretooluse-guard JSON parse consolidation (5→1 jq call), symlink security guard, session-monitor
evalremoval - macOS compatibility: All docs
timeout N codex exec→$TIMEOUT N codex exec(GNU coreutils independent) - Teammate Bash auto-deny: Resolved "prompts unavailable" error for background teammates
- Untracked 33 files:
mcp-server/dist/(24 build artifacts),docs/design/(2),docs/slides/(1),docs/claude-mem-japanese-setup.md, dev-only docs (3), lock files (2) - Archived skills:
sync-ssot-from-memory,cursor-mem,setup-tools,harness-mem,codex-setup,2agent,localize-rules→skills/_archived/
2.19.0 - 2026-02-08
5つの実装コマンドを /work と /breezing の2つに統一。両方 --codex 対応。
| Before | After |
|---|---|
/work, /ultrawork, /breezing, /breezing-codex, /codex-worker の5コマンド |
/work と /breezing の2コマンドに統一 |
| コマンドの使い分けが複雑 | /work = Claude 実装、/breezing = チーム完走 |
Codex は別コマンド (/codex-worker, /breezing-codex) |
--codex フラグで統一切り替え |
| スコープ指定方法がコマンドごとに異なる | 両コマンド共通の対話式スコープ確認 |
/work全面改修: 対話式スコープ確認 + タスク数に応じた自動戦略選択- 1タスク → 直接実装、2-3 → 並列、4+ → 自動反復(旧 ultrawork 統合)
--codexフラグで Codex MCP 実装委託モード- 新リファレンス: scope-dialog.md, auto-iteration.md, codex-engine.md
/breezing更新:--codexフラグ統合(旧 breezing-codex 吸収)- 対話式スコープ確認の追加
- Codex Implementer 連携を codex-engine.md に集約
- pretooluse-guard.sh:
ultrawork-active.json→work-active.jsonに統一- 後方互換: 旧ファイル名もフォールバックで検出
- ultrawork スキル →
/work allで同等機能(skills/_archived/に移動) - breezing-codex スキル →
/breezing --codexで同等機能(skills/_archived/に移動) - codex-worker スキル →
/work --codexで同等機能(skills/_archived/に移動)
2.18.11 - 2026-02-06
In --codex mode, Claude now acts as PM and Edit/Write are automatically blocked
| Before | After |
|---|---|
Claude could edit directly in --codex mode |
Edit/Write blocked except for Plans.md |
| Ambiguous role separation | Clear PM (Claude) vs Worker (Codex) separation |
- breezing skill (v2): Full auto task completion using Agent Teams
- Lead in delegate mode (coordination only), Implementer for coding, independent Reviewer
--codex-reviewfor multi-AI review integration- session_id-based Hook enforcement: Reviewer Read-only, Implementer file ownership (pretooluse-guard.sh)
- Flexible flow: Lead-autonomous stages replace rigid Phase 0-4
- State simplification: Agent Teams TaskList as SSOT, breezing-active.json metadata-only
- Peer-to-peer: Reviewer↔Implementer direct dialogue for lightweight questions
- Agent Trace: per-Teammate metrics in completion reports
- Codex mode guard: Added Codex mode detection to
pretooluse-guard.sh- Claude functions as PM, delegating implementation to Codex Worker
- Enabled via
codex_mode: trueinultrawork-active.json - Only Plans.md state marker updates allowed
- Codex review improvements: Enhanced parallel review quality
- SSOT-aware reviews (considers decisions.md/patterns.md)
- Output limit relaxed 1500 → 2500 chars for thorough analysis
- Clear termination conditions (APPROVE when Critical/High = 0)
- Fixed "nitpicking" issue (Low/Medium only → APPROVE)
- Minor expert template fixes
2.18.10 - 2026-02-06
- Agent persistent memory: Added
memory: project/userto all 7 agents- Subagents can now build institutional knowledge across conversations
- Security: Read-only agents (code-reviewer, project-analyzer) keep Bash/Write/Edit disabled
- Privacy guards: Each agent documents forbidden data (secrets, PII, source code snippets)
2.18.7 - 2026-02-05
- Claude guardrails: Stop prompting on normal
git push; prompt only ongit push -f/--force/--force-with-lease.
2.18.6 - 2026-02-05
- Codex guardrails:
harness.rulesnow parses reliably and avoids prompting on safe commands (e.g.git clean -n,sudo -n true). - Claude guardrails:
templates/claude/settings.security.json.templatenow uses valid permission syntax (:*) and prompts only on destructive variants.
- Codex package test: Added rule example validation to prevent startup parse errors.
2.18.5 - 2026-02-05
- gogcli-ops skill: Google Workspace CLI operations (Drive/Sheets/Docs/Slides)
- Auth workflow and account selection
- URL-to-ID resolution via
gog_parse_url.py - Read-only by default, write requires confirmation
2.18.4 - 2026-02-04
- Codex setup command: Added
/codex-setupskill andscripts/codex-setup-local.sh - Setup tools:
/setup-tools codexsubcommand for in-session Codex setup - Harness init/update: Optional Codex CLI sync during
/harness-initand/harness-update
2.18.2 - 2026-02-04
- Codex CLI distribution: Added
codex/.codexwith full skills and temporary Rules guardrails - Codex setup: Added
scripts/setup-codex.shandcodex/README.md - Codex AGENTS: Added
codex/AGENTS.mdtuned for$skillusage - Codex package test: Added
tests/test-codex-package.sh
- Docs: README now includes Codex CLI setup instructions
2.18.1 - 2026-02-04
- Aivis/VOICEVOX TTS support: Added Japanese TTS providers to generate-video skill
aivis: Aivis Cloud API (speaker_id, intonation_scale, etc.)voicevox: VOICEVOX (character voices like Zundamon)- Sample character configurations included
- MCP server optional: Removed
.mcp.json, excluded mcp-server from distribution- Users who need it can set up separately
2.18.0 - 2026-02-04
- Claude Code 2.1.30 compatibility: Full integration with new features
- AgentTrace v0.3.0: Task tool metrics (tokenCount, toolUses, duration) in
docs/AGENT_TRACE_SCHEMA.md /debugcommand integration: troubleshoot skill now routes to/debugfor complex session issues- PDF page range reading: notebookLM and harness-review support
pagesparameter for large documents - Git log extended flags: harness-review, CI, harness-release use
--format,--raw,--cherry-pick - OAuth
--client-id/--client-secret: codex-mcp-setup.md documents DCR-incompatible MCP setup - 68% memory optimization: session-memory and session skills document
--resumebenefits - Subagent MCP access: task-worker and codex-worker document MCP tool sharing (bugfix in CC 2.1.30)
- Accessibility settings: harness-ui documents
reducedMotionsetting
- AgentTrace v0.3.0: Task tool metrics (tokenCount, toolUses, duration) in
2.17.10 - 2026-02-04
- PreCompact/SessionEnd hooks: Support automatic session state save and cleanup
- AgentTrace v0.2.0: Added Attribution field for plugin attribution tracking
- Sandbox settings template: Added
templates/settings/harness-sandbox.json
- context: fork added: deploy/generate-video/memory/verify skills now use isolated context
- release → harness-release: Renamed to avoid conflict with Claude Code built-in command
2.17.9 - 2026-02-04
- Codex mode as default: New project config template now defaults to
review.mode: codex - Worktree necessity check:
/ultrawork --codexnow auto-determines if Worktree is actually needed- Single task, all sequential dependencies, or file overlap → fallback to direct execution mode
- Avoids unnecessary Worktree creation overhead
2.17.8 - 2026-02-04
- release skill: Fix
/releasenot launching via Skill tool- Removed
disable-model-invocation: true
- Removed
2.17.6 - 2026-02-04
generate-video スキルが JSON Schema 駆動のハイブリッドアーキテクチャに進化、README も刷新されました
| Before | After |
|---|---|
| 動画生成の設定がコードに散在 | JSON Schema でシナリオを一元管理 |
| README の構成が長大 | TL;DR: Ultrawork セクションで即座に始められる |
| スキル説明が英語のみ | 28個のスキル description が日本語化 + ユーモア表現 |
-
generate-video JSON Schema Architecture (#37)
scenario-schema.jsonでシナリオ構造を厳密定義validate-scenario.jsでセマンティック検証template-registry.jsでテンプレート管理- パストラバーサル攻撃対策を実装
-
TL;DR: Ultrawork セクション: README に「説明が長い?これだけ」セクション追加
- 日本語版にも「🪄 説明が長い?ならこれ: Ultrawork」として追加
- スキル description 日本語化: 28個のスキルに日本語の説明とユーモア表現を追加
- README 構成整理: Install → TL;DR → Core Loop の流れに最適化
- スキル数更新: 42 → 45 スキル
validate-scenario.js: セマンティックエラーフィルタリングのバグ修正TransitionWrapper.tsx:slideIn→slide_inでスキーマ命名規則に統一
2.17.3 - 2026-02-03
Ultrawork がレビュー後に自動で自己修正ループに入るようになりました
| Before | After |
|---|---|
| レビュー後に手動でプロンプト入力が必要 | APPROVE まで自動修正ループ |
| Codex 有無を手動で指定 | Codex MCP 自動検出 + フォールバック |
| 改善方法が不明確 | 「🎯 How to Achieve A」で改善指針を明示 |
-
自己修正ループ:
/harness-review実行後、APPROVE になるまで自動で修正を繰り返す- リトライ状態管理(
ultrawork-retry.json)で進捗追跡 - REJECT/STOP は即停止して手動介入を促す
- 最大3回のリトライ後に STOP
- リトライ状態管理(
-
検証全実行規則: 存在する検証スクリプトを優先順で全て実行し、失敗で即停止
-
改善指針テンプレート: 「🎯 How to Achieve A」セクションで A 評価達成方法を明示
- Decision 別統一フォーマット(APPROVE/REQUEST CHANGES/REJECT/STOP)
-
Codex 自動検出: Codex MCP が利用可能な場合は自動で Codex モードに切り替え
- 利用不可の場合はサブエージェント並列にフォールバック
timeout_ms(ミリ秒単位)でタイムアウト設定可能
-
差分計算改善:
merge-base基準で変更ファイル数を算出- staged/unstaged 差分も含む
- 初回コミット/マージにも対応
-
review_aspects 検出: パスベースの正規表現で決定的に判定
2.17.2 - 2026-02-03
Codex Worker 完了時に Plans.md が自動更新されるようになりました
| Before | After |
|---|---|
| 作業完了後に手動で Plans.md を更新 | スキルが自動で cc:done に更新 |
- Plans.md 自動更新: Codex Worker スキル完了時に必ずタスク完了処理を実行
- 該当タスクを自動特定
[ ]→[x],cc:WIP→cc:doneに更新- タスクが見つからない場合はユーザーに確認
- Codex Worker スクリプト品質改善(共通ライブラリ化、セキュリティ強化)
2.17.1 - 2026-02-03
- Agent Trace: Track AI-generated code edits for session context visibility
emit-agent-trace.js: PostToolUse hook records Edit/Write operations to.claude/state/agent-trace.jsonlagent-trace-schema.json: JSON Schema (v0.1.0) for trace records- Stop hook now shows project name, current task, and recent edits at session end
sync-statusskill now includes Agent Trace data for progress verificationsession-memoryskill now reads Agent Trace for cross-session context
- Stop hook (
session-summary.sh) enhanced with Agent Trace information display - VCS info retrieval optimized: single
git status --porcelain=2 -b -unocall with 5s TTL cache - Repo root detection no longer spawns git process (walks up directory tree)
- Security hardening for trace file operations (symlink checks, permission enforcement)
- Rotation concurrency protection with lock file (O_CREAT|O_EXCL pattern)
2.17.0 - 2026-02-03
- Codex Worker: Delegate implementation tasks to OpenAI Codex as parallel workers
codex-workerskill for single task delegationultrawork --codexfor parallel worker execution with git worktrees- Quality gates: evidence verification, lint/type-check, test, tampering detection
- File locking mechanism with TTL and heartbeat
- Automatic Plans.md update on task completion
- Skills
codex-workerandcodex-reviewnow have explicit routing rules (Do NOT Load For sections) - Improved skill description for better auto-loading accuracy
- Added 5 shell scripts:
codex-worker-setup.sh,codex-worker-engine.sh,codex-worker-lock.sh,codex-worker-quality-gate.sh,codex-worker-merge.sh - Added integration test:
tests/test-codex-worker.sh - Added reference documentation:
skills/codex-worker/references/*.md
- Shell script security improvements (jq injection, git option injection, value validation)
- POSIX compatibility for grep patterns (
\sto[[:space:]]) - Arithmetic operation in
set -econtext
2.16.21 - 2026-02-03
ultraworkCodex Mode options (--codex,--parallel,--worktree-base) moved to Design Draft- These features are planned but not yet implemented
- Documentation now clearly marks them as "(Design Draft / 未実装)"
- Added
skills/ultrawork/references/codex-mode.mdas design draft documentation - Added Codex Worker scripts and references (untracked, for future implementation)
2.16.20 - 2026-02-03
- Centralized skill routing rules to
skills/routing-rules.md(SSOT pattern) - Made
codex-reviewandcodex-workerrouting deterministic (removed context judgment)
2.16.19 - 2026-02-03
- Reduced duplicate display of Stop hook reason (now outputs keywords only)
2.16.17 - 2026-02-03
Skills now show usage hints in autocomplete
| Before | After |
|---|---|
/harness-review |
`/harness-review [code |
/troubleshoot |
`/troubleshoot [build |
- Usage hints (
argument-hint) added to 17 skills - Inter-session notifications (useful for multi-session workflows)
- Updated CI/tests/docs for Skills-only architecture
2.16.14 - 2026-02-02
Implementation requests are now automatically registered in Plans.md
| Before | After |
|---|---|
| Ad-hoc requests not tracked | All tasks recorded in Plans.md |
| Hard to track progress | /sync-status shows full picture |
2.16.11 - 2026-02-02
Commands have been unified into Skills (usage unchanged)
| Before | After |
|---|---|
/work, /harness-review as commands |
Same names, now powered by skills |
| Internal skills (impl, verify) in menu | Hidden (less noise) |
dev-browser, docs, video |
Renamed to agent-browser, notebookLM, generate-video |
- README rewritten for VibeCoders (added troubleshooting, uninstall)
- CI scripts updated for Skills structure
2.16.5 - 2026-01-31
/generate-video now supports AI images, BGM, subtitles, and visual effects
| Before | After |
|---|---|
| Manual image preparation | AI auto-generates (Nano Banana Pro) |
| No BGM/subtitles | Royalty-free BGM, Japanese subtitles |
| Basic transitions only | GlitchText, Particles, and more |
2.16.0 - 2026-01-31
/ultrawork now requires fewer confirmations for rm -rf and git push (experimental)
| Before | After |
|---|---|
| rm -rf always asks | Only paths approved in plan auto-approved |
| git push always asks | Auto-approved during ultrawork (except force) |
2.15.0 - 2026-01-26
Full OpenCode compatibility mode added
| Before | After |
|---|---|
| Separate setup needed for OpenCode | /setup-opencode auto-configures |
| Different skills/ structure | Same skills work in both environments |
2.14.0 - 2026-01-16
/work --full enables parallel task execution
| Before | After |
|---|---|
| Tasks run one at a time | --parallel 3 runs up to 3 concurrently |
| Manual completion checks | Each worker self-reviews autonomously |
2.13.0 - 2026-01-14
Codex MCP parallel review added
| Before | After |
|---|---|
| Claude reviews alone | 4 Codex experts review in parallel |
| One perspective at a time | Security/Quality/Performance/a11y simultaneously |
2.12.0 - 2026-01-10
- Harness UI Dashboard (
/harness-ui) - Track progress in browser - Browser Automation (
agent-browser) - Page interactions & screenshots
2.11.0 - 2026-01-08
- Inter-session Messaging - Send/receive messages between Claude Code sessions
- CRUD Auto-generation (
crudskill) - Generate endpoints with Zod validation
2.10.0 - 2026-01-04
- LSP Integration - Go-to-definition, Find-references for accurate code understanding
- AST-Grep Integration - Structural code pattern search
For v2.9.x and earlier, see GitHub Releases.