| name | fable-examples |
| description | ghost-fable-harnessの対比例バンク(references/examples.md)を実セッションから育てる採集スキル。「この応答よかった/ダメだった、例に追加して」「examples更新」「対比例に採集」と言われた時、またはfable-evalで不合格場面が出た時に使う。 |
Fable Examples — 対比例の採集
小さいモデルほど原則より few-shot が効く。ホストモデルが実際に外した場面を「同じ状況 / デフォルトの声 / fableの声」の三点セットに整形し、.claude/skills/ghost-fable-harness/references/examples.md に追記する。
手順
- 素材を特定する — 対象は3種類:
- このセッションでユーザーが「よかった」と言った応答(fable側の例として)
- ユーザーに訂正された・温度が下がった応答(デフォルト側の例として)
- fable-eval で不合格になったシナリオとその実出力(最優先の素材)
- 三点セットに整形する — examples.md 冒頭の書式に従い、失敗型タグ(examples.md「失敗型タグ(正本)」の語彙: 媚び/メモ声/単調/汎用労い/未検証断定/引き延ばし/リスト逃げ/両論逃げ/質問並べ/過適用)を必ず付ける。デフォルト側は実際の出力を要約せずそのまま引く(脚色すると矯正力が落ちる)。fable側は voice_lint を通し、8問診断をクリアする文例に磨く。正解の幅がある場面は「別の行き方」を1つまで併記してよい(幅を見せる方が丸暗記を防ぐ)
- 重複チェック — 既存の例と同じ失敗型タグなら、強い方だけ残して置換する。追記ではなく置換(矛盾を残さない — implementation.md)。既存のどのタグにも当てはまらない失敗なら、新しいタグを examples.md の正本一覧に足してから収める
- examples.md に書き込む — 番号を振って「採集済みの例」の末尾へ。別環境にミラーを置いている場合(例: Codex CLIの
~/.codex/skills/ghost-fable-harness/references/examples.md)は、そちらにも同じ内容をコピーする(このリポジトリが正本、ミラーは常に正本の複製)
- 総量の管理 — 例が10を超えたら、失敗型ごとに最強の1〜2例へ間引く。例が多すぎるとアンカリングで出力が痩せる。examples.md が100行を超えたら冒頭に目次を置く(長い参照ファイルは部分読みされ、後半の例が読み飛ばされる)
- 頻度を集計する — 採集のたびに examples.md 末尾の集計表でタグの観測回数を更新する。頻出タグは「ハーネスがまだ直せていない失敗」の実測値——fable-eval の新シナリオ候補はここから採る(evalは仕様から演繹せず、実失敗から帰納して育てる)。逆に、採集を続けても新しいタグが出なくなったら例バンクは飽和——以後は例の追加より、シナリオとレジスタの多様化に投資する
多様性の基準
例は話題とレジスタを意図的に散らす。同じ話題(技術対話ばかり等)で揃えると、ホストモデルは文体をその話題の型ごと複写する——内容が似た例ばかり見せると文体再現はむしろ悪化する、というのが文体模倣研究の実測。レジスタは最低3種(対話的な返信/長文の納品・解説/感情場面)をカバーし、採集時に「この失敗型は既にあるが、レジスタが未収載」なら置換でなく追加してよい。
してはいけないこと
- 想像で失敗例をでっち上げない。観測された出力だけが素材
- fable側の例に、その場面固有すぎる情報(プロジェクト名等)を残さない。汎用化してから収める
- SKILL.md 本体の対比5例は正本なので触らない。追補はすべて examples.md へ