ハーネスとは何か
「ハーネス(harness)」はもともと、馬やパラシュートを体に固定する「安全ベルト・馬具」を意味する英単語だ。ソフトウェアでは意味が少しずれて、AI のようなツールが決められた枠組みの中で安定して働くよう、あらかじめ用意しておく装置を指す。Vibe Coding におけるハーネスとは、AI に毎回説明しなくて済むように、プロジェクトのルール・背景・自分の要望をファイルに書いておくことを言う。
新入社員に初日に手渡すオンボーディング文書を思い浮かべると分かりやすい。「うちの会社はこういうところで、このフォルダにはこれがあって、これはやってはいけない」と文書にまとめておけば、新人は毎回尋ねなくて済む。ハーネスは、AI に渡すまさにそのオンボーディング文書だ。AI は記憶が対話(セッション)ごとにリセットされるため、この文書を対話の開始ごとに読み直し、「このプロジェクトが何かを分かっている状態」で仕事を始める。
なぜ非開発者にこそハーネスが必要なのか
AI コーディングツールは、基本的に相手を開発者だと想定して話す。学習した資料の大半が、開発者どうしでやり取りされた文書・コード・質疑応答だからだ。だから何の設定もせずに使うと、非開発者にも「依存関係」「環境変数」「ビルド」「デプロイパイプライン」といった用語が説明なしに浴びせられる。
ここでよくある誤解が「聞いても分からないのは、自分の実力が足りないせいだ」という思い込みだ。そうではない。AI は相手が誰か分からないので、最も無難な既定値(開発者)で答えているだけだ。自分が誰かを一行伝えるだけで、同じ AI がまったく違う目線で話し始める。ハーネスは、この「自分が誰か」を毎回言わずに一度で固定しておく方法だ。
CLAUDE.md・AGENTS.md とは何か、どこに作るのか
CLAUDE.md と AGENTS.md は特別なプログラムではなく、ただの文字だけのメモファイルだ。拡張子 .md は「マークダウン」という形式だが、書式のない普通のメモ帳ファイルだと思えばいい。専用のエディタは要らず、どんなテキストエディタでも開いて書ける。
置く場所が重要だ。このファイルは必ず「プロジェクトフォルダの一番上(ルート)」になければならない。プロジェクトフォルダとは、今作っている成果物(ウェブサイトでもアプリでも)一つが入ったフォルダのことだ。そのフォルダを開いてすぐ見える位置に、CLAUDE.md を作る。
作り方は二通りある。一つ目は、AI に口で頼むだけでいい。Claude Code や Cursor で「CLAUDE.md ファイルを作って、私が開発者ではないことを書いておいて」と言えば、AI が作ってくれる。二つ目は、自分で作る場合、プロジェクトフォルダの中に新しいファイルを一つ作り、名前を正確に CLAUDE.md(大文字小文字もそのまま)で保存する。
非開発者がまず入れる一行
ファイルを作ったら、他は後回しでいいので、まずこの一行を入れる。
私は開発者ではない。専門用語は必ずやさしい言葉で、できるだけ短く簡潔に説明せよ。この一行が回答をどう変えるか
これがすべてだ。この一文が、毎回の対話の冒頭で AI に「この人は非開発者だ」と伝え、AI はその前提の上で答えを選ぶ。「環境変数」のような言葉を使うことになれば、それが何かを括弧で補い(プログラムに渡す設定値)、長々と続けていた説明を要点だけに絞って短く答える。毎回「やさしく説明して」と頼む必要もなくなる。
一行から数行へ — 実践的なハーネスの例
慣れてきたら、ここに数行を足して AI を自分のやり方にさらに合わせられる。それでも一段落を超えなくて十分だ。
私は開発者ではない。専門用語は必ずやさしい言葉で、できるだけ短く簡潔に説明せよ。
- コードを直すときは、何をなぜ変えるのかを日本語でまず一行説明してから進めよ。
- コマンドを実行するよう案内するときは、どこに(どのウィンドウに)何を貼り付けるのかまで教えてほしい。
- 危険だったり元に戻しにくい作業(ファイル削除など)の前には、必ず先に確認せよ。CLAUDE.md と AGENTS.md、どちらを使うか
各行は結局、「自分が毎回くり返し頼んでいたこと」を一度書いておいただけだ。ハーネスはこうして、対話の中で不便だった点を一行ずつファイルに移し替え、少しずつ育てていけばいい。最初から完璧に書こうと気負う必要はない。
では CLAUDE.md と AGENTS.md、どちらを使うべきか。二つは役割が同じで、どちらも「AI に渡すプロジェクトの案内文」だ。違いはどのツールが読むかだ。CLAUDE.md は名前のとおり Claude(Claude Code)が読むファイルで、AGENTS.md は特定の会社に縛られない共通標準なので、Cursor や Codex など他の AI ツールも一緒に読む。
実務的なヒントを一つ。二つのファイルを同じ内容で二重に管理するのは手間なので、内容は AGENTS.md 一か所に書き、CLAUDE.md はそれを指すようにつなげる方式がよく使われる。ただし初めてなら、CLAUDE.md 一つだけ作れば十分だ。Claude Code を使うなら CLAUDE.md、複数のツールを混ぜて使う予定なら AGENTS.md——この程度に覚えておけばいい。
この一行が節約してくれるもの
たいしたことのない一行に見えて、効果は対話のたびに複利で積み上がる。一つ目、毎回「やさしく説明して」と頼み直す手間がなくなる。二つ目、説明が短くなるので読む時間が減り、意味が分からず聞き返す往復も減る。三つ目、目線が合うので、誤解したまま見当違いのことを実行する失敗が減る。
Vibe Coding が上手いとは、コードをうまく書くことではなく、AI が自分をうまく助けられるよう舞台を整えることに近い。そしてその舞台の最初のレンガが、まさに「私は開発者ではない」という一行だ。大げさな準備もなく、今作っているプロジェクトフォルダに CLAUDE.md を一つ作り、この一文を書くことから始めればいい。