docs: Opus 5 の挙動を踏まえ出力量の規律と委譲判断を規約化 - #758
Conversation
公式ガイド Prompting Claude Opus 5 との突き合わせで判明した 2 点の 規約欠落を `.agents/rules/common.md` に追加する。 - 1.1 出力量の規律(新設): 現行世代モデルは会話応答も生成ドキュメント も既定で長い。長さは effort / thinking では制御できないため、PR 本文 / plan・spec / agent-lessons / 会話応答それぞれの長さ基準を明示した。 長い Markdown が format:check 失敗の確率を上げる点も併記。 - 6.9 に「委譲するかどうかの判断」小節を追加: 従来の 6.9 は委譲後の品質 ルールのみで、いつ委譲しないかが未定義だった。親が数ツールコールで 完結できる作業・検証目的の subagent・1 体で足りる作業への並列投入を 非委譲条件として明文化し、reviewer subagent の適用範囲を複数ファイル 機能追加とセキュリティ変更に限定した(solo dev 体制のため全廃はしない)。 仕様を初回プロンプトで完結させる指針も追加。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
🖼️ Visual Regression Test 結果
|
fumtas1k
left a comment
There was a problem hiding this comment.
レビュー: PR #758(多角的観点)
docs 単独変更(.agents/rules/common.md のみ / +27 行)。src/ tests/ に影響なく、E2E 未実行の判断は妥当。観点別に評価する。
セキュリティ
影響なし。むしろ「検証・ダブルチェック目的の subagent は委譲しない」と reviewer subagent の適用範囲限定を追加しつつ、セキュリティ関連変更は reviewer subagent の適用対象として明示残している carve-out は適切で、レビュー厳格性を落とさない設計になっている。
フロントエンド / スタイル
UI 変更なし。Markdown 記法(表・見出し・コードスパン)は既存 doc の様式に沿っており format:check pass 済み。末尾空白の混入もなし(9.3 章準拠)。
ロジック / 整合性
相互参照(3 章 / 6.7 節 / 「矛盾する設計指示を混ぜない」)はいずれも実在し正しい。1.1 / 6.9 の小節番号付けも既存パターン(6.2.1 7.1)と整合。「長い Markdown は format:check 失敗確率を上げる(PR #753 と同根)」の因果も既存 3 章の記述と一致している。
アーキテクチャ(規約構造)
6.9 を「委譲前の判断 / 委譲後の運用」に二分した構成は、従来「委譲後」しか無かった穴を埋めており読みやすさも向上。common.md を SoT として skill 記述より優先すると明記した点も 11 章の SoT 方針と整合。
テスト
docs 変更のため実行時テスト対象外。meta テスト(tests/meta/)は tool 追加・icon・VRT ページの整合を見るもので本 diff とは無関係。検証欄の記載(format:check / test / astro check pass、E2E skip 理由)も妥当。
指摘 1(clarity・要検討 / inline 参照)
PR 本文の「適用しなかった項目」表では『会話応答の簡潔さ … は二重定義になるので入れない』としているが、1.1 に 会話応答 bullet が入っており、表と突き合わせた読み手が混乱しうる。内容は「簡潔さ」ではなく「結論先出し + 過圧縮防止」で別物のため矛盾ではないが、同じ語で衝突するので一言の補足を推奨。
指摘 2(discoverability・任意 / スコープ外可)
reviewer subagent を「複数ファイル機能追加 / セキュリティ変更」に限定する方針は、vendored skill 側の "mandatory" と食い違う。common.md 優先と明記済で運用は成立するが、skill だけ読む将来セッションは気づけない。skills-lock 管理で skill 本体は触れないため、対応するなら現記述に「skill と方針が異なる」旨を一行足す程度で十分。
総評: 規約追加として妥当で内部整合も取れており、ブロッカーはない。指摘 1 のみ一言の補足を推奨(指摘 2 は任意)。
Generated by Claude Code
| - **PR 本文**: 変更点・検証結果・スコープ外を簡潔に。同じ内容を「概要」と「詳細」で二度書かない。定型見出しを埋めるための水増し節を作らない | ||
| - **plan / spec(`docs/superpowers/plans/` `specs/`)**: 判断と実装に必要な情報のみ。読み手が次に取る行動を変えない記述は落とす | ||
| - **`docs/agent-lessons.md`**: 1 エントリは「現象 / 根本原因 / 対処 / 関連」に収める。試行錯誤の全経過ではなく、次回繰り返さないために必要な事実だけを残す(効かなかった対策は「効かない対策」として列挙するに留める) | ||
| - **会話応答**: 結論を最初の 1 文に置き、根拠は後に置く。短さより読みやすさを優先し、削るなら情報の選別で削る(矢印連結・省略語・断片文への圧縮では削らない) |
There was a problem hiding this comment.
PR 本文の「適用しなかった項目」表では『会話応答の簡潔さ … は system prompt と二重定義になるので入れない』としているが、この bullet で 会話応答 を扱っているため、表と突き合わせた読み手が「除外したはずでは?」と混乱しうる。
内容自体は「簡潔さ」ではなく「結論先出し + 過圧縮の禁止(短さより読みやすさを優先)」で、除外対象とは別物なので矛盾はしていない。ただ両者が同じ「会話応答」語で衝突するため、ここに「=簡潔さの指示ではなく構造・過圧縮防止の規律」と一言添えるか、PR 本文表側に但し書きを足すと誤読を防げる。
セクション見出しが「出力量の規律」なのに対しこの bullet だけ「短さより読みやすさを優先」と逆方向を向いている点も、意図(過圧縮への歯止め)が伝わりにくい一因。
Generated by Claude Code
|
レビューありがとうございます。2 件の指摘を確認しました。 指摘 1(clarity)→ 対応しましたご指摘のとおり、PR 本文の表現が不正確でした。表側を「会話応答の冗長さ抑制("Keep responses concise" 系の指示)」に改め、1.1 節の
指摘 2(discoverability)→ すでに diff に含まれています「skill と方針が異なる旨を一行足す」については、 そのため追加の変更はしていません。「skill 本体だけ読むセッションは気づけない」という構造的な課題自体は残りますが、 本 diff への変更はありません(指摘 1 は PR 本文のみ、指摘 2 は対応済み)。検証結果も変わらず format:check / test / astro check すべて pass のままです。 Generated by Claude Code |
fumtas1k
left a comment
There was a problem hiding this comment.
再レビュー: 修正確認
コード diff(.agents/rules/common.md、+27 行)は前回から不変で、修正は PR 本文のみ。以下のとおり確認した。
| 指摘 | 対応 | 判定 |
|---|---|---|
1(clarity): 表と 1.1 節で 会話応答 の語が衝突し混乱しうる |
表の該当行を「冗長さ抑制("Keep responses concise" 系)」と限定し、1.1 の bullet は「構成の指針(結論先出し / 過圧縮防止)」で別物である旨の補足を追加 | ✅ 解消 |
| 2(discoverability): skill 側 "mandatory" と方針が食い違う旨の明示 | 既存の括弧書き(「skill 側は mandatory だが本リポジトリの適用方針が優先」)が担っている旨を明示 | ✅ 妥当(対応済) |
指摘 1 は「表 vs diff の読み手混乱」が主眼だったため、PR 本文側での語の限定で過不足なく解消している(doc 単体には除外表が無いため矛盾は生じない)。指摘 2 も既存記述で意図は成立しており、skill 単独読者が気づけない構造的課題は skills-lock.json 管理制約として妥当に切り分けられている。
新規の問題は検出なし。ブロッカーなし・merge 可。format:check / test / astro check の緑も PR 本文で確認済み。
Generated by Claude Code
目的
公式ガイド Prompting Claude Opus 5 と本リポジトリの規約(
CLAUDE.md/.agents/rules//.claude/rules// vendor skills)を突き合わせ、規約が欠落していた 2 点を.agents/rules/common.mdに追加する。変更内容
1.
1.1 出力量の規律(新設)現行世代モデルは会話応答も生成ドキュメントも既定で長く、長さは effort / thinking 設定では制御できない(思考量を変えるだけで可視出力の長さは縮まない)。従来の規約に長さ規定は 11 章の「この doc では肥大化させない」1 箇所しかなかった。
PR 本文 / plan・spec /
agent-lessons.md/ 会話応答それぞれの基準を明示し、長い Markdown がformat:check失敗確率を上げる点(3 章・PR #753 の事例と同根)も併記した。2.
6.9に「委譲するかどうかの判断」小節を追加従来の 6.9 は委譲後の品質ルール(完了報告フォーマット・lock 同期・PR 本文は親)のみで、いつ委譲しないかが未定義だった。現行世代モデルは委譲に積極的なため、非委譲条件を明文化した。
あわせて reviewer subagent(
requesting-code-review)の適用範囲を「複数ファイルにまたがる機能追加 / セキュリティ関連変更」に限定した。skill 側は「major feature 後 / merge 前は mandatory」だが、solo dev 体制(6.7 節)で人間レビューが無いため全廃はせず、既定で回すのもやめる方針。vendor skill 本体はskills-lock.json管理のため触っていない。「仕様は最初のプロンプトで完結させる」指針も追加(既存の「矛盾する設計指示を混ぜない」と同根の問題)。
適用しなかった項目(意図的)
突き合わせで挙がったが今回スコープ外にしたもの:
common.mdに書くと二重定義になるverification-before-completionskill と 3 章の重複整理docs/decisions.mdへの記録common.md内に埋め込んだが、decisions.mdへの追記は未実施Opus 5 ガイドの「検証指示を削除せよ」はモデルに自己再確認を促す prompt scaffolding("double-check your answer" 等)が対象であり、3 章の
npm run test/astro check/format:check/test:e2eは実コマンドを走らせる tooling gate なので削除対象ではない。この区別を規約に明文化しておかないと「Opus 5 の推奨だから」と 3 章を緩める事故が起きうる。必要なら別 PR で追記する。検証
npm run format:checknpm run testnode_modules/.bin/astro checknpm run test:e2eE2E 未実行の理由: diff は
.agents/rules/common.mdのみ(git diff --name-onlyで確認済み、src/tests/に変更なし)で、E2E が検証する実行時挙動に影響しない。CI を最終ゲートとする。🤖 Generated with Claude Code
レビュー対応(2026-07-27)
会話応答の語が衝突し混乱しうる指摘 2 について、
.agents/rules/common.mdの該当行に既に注記が入っています。ご指摘の「skill と方針が異なる旨を一行」はこの括弧書きが担っているため、追加の変更はしていません。skill 本体を読むだけのセッションが気づけないという構造的な課題は残りますが、
skills-lock.json管理下のため vendor skill 側は変更しない方針です。コード変更なし(指摘 1 は PR 本文のみの修正、指摘 2 は対応済みのため)。