GitHub Copilot設計者のプロンプト設計論が刺さった理由
Claude Codeでブログを構築して半年、記事生成の精度にばらつきが出始めた。同じプロンプトでも日によって出力の質が変わる。原因はClaude.mdの構造が「何を書くか」に偏り、「どう書くか」の設計が弱かったこと。
『LLMのプロンプトエンジニアリング』(John Berryman, Albert Ziegler著)を読んで、GitHub Copilotの設計思想がそのまま使えることに気づいた。本書はモデル固有の機能ではなく、LLM全般に通用する原則を扱っている。特にコンテキスト・スカフォールディング・テンプレート化の3概念が、Claude.md運用の再設計に直結した。
コンテキスト設計:事実の根拠を明示する構造
本書が強調するのは「モデルは与えられたコンテキストでしか判断できない」という前提。プロンプトに事実が書かれていなければ、モデルは推測で埋める。
従来のClaude.mdは「著者プロフィール」「禁止事項」を箇条書きで列挙するだけだった。これを「著者事実台帳」として分離し、年齢・職歴・事業構造・資格・副業実績を時系列と共に記録する形式に変えた。
特に副業実績は「実施済」「計画中」「未実施」を明確に区別した。潜水士と家電修理は実施済、プラント水中作業は未実施。この区別がないと、記事で「副業で稼いだ実績」として書かれるリスクがあった。
事実台帳を分離したことで、プロンプト本体は「どう書くか」のルールに集中できるようになった。
スカフォールディング:段階的に構造を組み立てる
本書の第4章「スカフォールディング」は、プロンプトを一度に完成させるのではなく、段階的に構造を与える設計を扱う。GitHub Copilotが「関数名→引数→本体」の順に補完するのと同じ考え方。
これを記事生成に適用し、プロンプトを「テーマ選定→構成設計→本文生成」の3段階に分けた。従来は1回のプロンプトで全てを指示していたが、これだと冒頭で方向を誤ると全体が崩れる。
特に「直近記事との被り回避」はスカフォールディングが効いた。直近14本のタイトルとカテゴリをプロンプトに渡し、過少カテゴリを優先候補として明示する。この段階でテーマが決まれば、構成設計で迷走しない。
スカフォールディングは「どこで判断を分けるか」の設計。記事生成なら「テーマ→構成→文体」の順に判断を固定すると、後戻りが減る。
テンプレート化:再現性を担保する出力形式
本書の第5章「テンプレートとパターン」は、出力形式を固定することで品質を安定させる技法を扱う。プロンプトに「このJSON形式で出力せよ」と指示する設計。
記事生成では以下の形式を固定した:
- タイトル・スラッグ・説明・カテゴリ・本文・X投稿文の6項目
- 本文はMarkdown(Astro Content Collections用)
- X投稿文は140字以内、ハッシュタグ1〜2個、結論を出し切らない引き
テンプレート化の効果は「前後の説明文が消えた」こと。従来は出力の前後に「以下の記事を作成しました」等の説明が入り、JSONパースでエラーが出ていた。形式を固定し「前後に説明文なし」と明示したことで、エラー率がゼロになった。
テンプレートは「モデルが迷わない形式」の設計。人間が読む必要はなく、パーサーが確実に処理できればいい。
コンテキスト・スカフォールディング・テンプレートの組み合わせ
3原則を組み合わせた結果、記事生成の精度が安定した。具体的には:
- 事実台帳(コンテキスト)で推測を排除
- テーマ選定→構成設計(スカフォールディング)で方向を固定
- JSON形式(テンプレート)で出力を安定化
この設計は本書が扱うGitHub Copilotのコード補完と構造が同じ。Copilotは「プロジェクト構造(コンテキスト)→関数シグネチャ(スカフォールディング)→コード本体(テンプレート)」の順に補完する。記事生成も同じフローで設計できる。
モデル非依存の設計が移行コストを下げる
本書のもう一つの主張は「特定モデルの機能に依存しない設計」。GitHub Copilotは複数のモデルを使い分けているが、プロンプト設計の原則は変わらない。
Claude.mdも同じ考え方で設計した。将来GPT-5やGemini 2.0に移行しても、事実台帳・スカフォールディング・テンプレートの構造は変わらない。モデル固有の機能(Claude Artifactsなど)に依存しない設計にすることで、移行コストを下げる。
本書を読んで「プロンプトエンジニアリングは設計の問題であり、モデルの問題ではない」という原則が腑に落ちた。
まとめ:プロンプトは「モデルへの指示」ではなく「判断の構造」
Claude.mdの再設計で学んだのは、プロンプトは「モデルに何をさせるか」ではなく「モデルが判断する構造をどう設計するか」という問題だということ。
コンテキストで事実を固定し、スカフォールディングで判断の順序を制御し、テンプレートで出力を安定させる。この3原則は『LLMのプロンプトエンジニアリング』が整理した普遍的な設計思想であり、Claude Code・GitHub Copilot・ChatGPT等のツールを問わず適用できる。
記事生成に限らず、業務用プロンプトのテンプレ化を検討している人には、本書の第4〜5章が直接使える知見になる。