プロンプトや AI スキルを書いたあと、「これで伝わるか」を正しく評価する方法はあるのか。
結論から言うと、ある。自分で読み直すのではなく、別の AI に白紙で読ませて、両面で評価する。これが mizchi 氏が公開している empirical-prompt-tuning スキルの核だ。
プロンプトや AI スキルを書いたあと、「これで伝わるか」を正しく評価する方法はあるのか。
結論から言うと、ある。自分で読み直すのではなく、別の AI に白紙で読ませて、両面で評価する。これが mizchi 氏が公開している empirical-prompt-tuning スキルの核だ。
対象は筆者の brand-context.md と ~/.claude/rules/ 配下 6 ファイル。
よくある「改善したつもり」ではなく、成功/失敗・精度・ステップ数・所要時間を毎回記録した。数字はすべてこの記事で公開する。
細かい話は後に譲り、何が起きたのかだけ先に示す。
mizchi 氏が公開した Claude Code スキル。プロンプトや skill を「バイアスを排した実行者」に動かしてもらい、両面で評価して反復するためのプロトコル集。
やっていることは単純だ。ただし、独りでは絶対に到達できない構造になっている。
[critical] タグ付き項目を最低 1 つ含める。
tool_uses と duration_ms を取る。成功判定は [critical] 項目が全て ○のときだけ。
筆者が Claude Code の運用で毎日使っている自作プロンプト群のうち、特に重要度が高い 2 系統を対象にした。
初期状態は、率直に言って 「自分では読めたつもりで書いたもの」だった。Iter 0(静的整合チェック)で、すでに次のような問題が顕在化した。
4 イテレーション分を両面評価プロトコルで回した結果がこれだ。数字はすべて subagent の Task tool usage メタからの実測で、筆者の主観採点は含まない。
| イテレーション | 要件達成 | critical | tool_uses | duration | 判定 |
|---|---|---|---|---|---|
| Iter 0 | 2/7 | × | 1 | ≈ 60s | × |
| Iter 1 | 4/7 | ○ | 1 | ≈ 60s | ○ |
| Iter 2 | 6/7 | ○ | 1 | ≈ 60s | ○ |
| Iter 3 | 5/7 | ○ | 1 | ≈ 60s | ↓ 過適合 |
| イテレーション | 要件達成 | critical | tool_uses | duration | 判定 |
|---|---|---|---|---|---|
| Iter 0 | 0/8 | × | 7 | ≈ 60s | × |
| Iter 1 | 6/8 | ○ | 7 | ≈ 88s | ○ |
| Iter 2 | 7/8 | ○ | 7 | ≈ 76s | ○ |
| Iter 3 | 7/8 | ○ | 7 | ≈ 441s | ○ 収束 |
Iter 1 で subagent が次々と返してきた指摘のうち、critical タグが付いた最低ラインをブレイクしていた 3 件を抜粋する。いずれも 筆者の自己再読では発見できなかったものだ。
A. 設定・ルール系 と B. 運用ノート系 の 2 スコープに分割。それぞれの 3 箇所を明示。メタノート不在時のフォールバック(「新規作成しますか?」→却下時は 1・2 のみで完了)も追加。
context-monitor.md と統一してユーザーメッセージ数で自己カウント、と明示。
empirical-prompt-tuning は万能ではない。本事例でも brand-context の Iter 3 で精度が 6/7 → 5/7 に落ちるリグレッションが起きた。SKILL.md が事前に警告していた「過適合」の典型パターンだ。
スキル自身が警告していた Red flags と、今回実際に遭遇したパターンの対応表がこれ。
| 合理化(やりがちな言い訳) | 本事例で実際に起きたこと |
|---|---|
| 「自分で読み直せば同じ効果がある」 | Iter 0 の時点で rules 系は 0/8。自己再読では critical バグ 3 件どれも検出できていなかった。 |
| 「1 シナリオで充分」 | brand-context は 7 要件のうち、edge ケース要件で Iter 1 から Iter 2 にかけて +2 改善。中央値シナリオだけなら見えなかった。 |
| 「不明瞭点ゼロが 1 回出たから終わり」 | Iter 2 で rules が 7/8 クリア。ここで止めず Iter 3 を追加した結果、Iter 2 が偶然ではなく構造的に収束していることが確定した。 |
| 「複数の不明瞭点を一気に潰そう」 | 初回は誘惑に負けて複数修正を束ねかけたが、「何が効いたか追えない」と SKILL.md が警告していたので 1 テーマに絞った。結果、修正の寄与度が分離できた。 |
| 「メトリクスが良いから質的フィードバックは無視」 | Iter 3 は精度こそ Iter 2 と同じ 87.5% だが、subagent の不明瞭点リストは新規項目ゼロで収束確定。メトリクスだけ見ていたら判定できなかった。 |
| 「書き直した方が早い」 | rules 系は 0/8 から始まったが、差分修正だけで 7/8 まで到達した。書き直し衝動が来るのは 3 回以上不明瞭点が減らなかったときだけ、という SKILL.md の記述が実測で裏付けられた。 |
empirical-prompt-tuning はエンジニア専用ツールではない。AI に指示を渡す人すべてに効く。具体的にどう使えるか、3 パターン紹介する。
empirical-prompt-tuning は 1 ファイルの Skill として Claude Code に組み込める。導入後に最初にやるべきことを最短ルートで示す。
~/.claude/skills/empirical-prompt-tuning/SKILL.md に配置。
superpowers:writing-skills(skill 作成時の TDD アプローチ)superpowers:dispatching-parallel-agents(複数シナリオ並列実行)