AIエージェントについて、通常のAIとの違い、指示の出し方、AGENTS.mdでのルール管理、メモリ機能の使い方、などについてまとめました。
AIエージェントとは?
AIエージェントは、目標を渡すとそこに至るまでの手順を自分で組み立てて実行する、自律性のあるAIのことです。
一般的に使われているAIはチャット型で、1回の質問に回答すると終わりますが、AIエージェントは目標達成まで連続して動き続けます。
AIエージェントの動き方
人間が指示した後、AIエージェントは以下のように動きます。
- 目標を設定する
- 計画を立てる(タスク・手順に分解)
- タスクを1つずつ実行する
- 途中でAIが判断に迷うときは人間へ質問する
- 目標を達成する
- 経過や結果を記憶する
AIエージェントへの指示の出し方
具体的に指示をすると無駄なやり取りが減り、精度が上がります。
- タスクの種類を伝える
- 対象のファイルや箇所を指定する
- 一連の作業はまとめて依頼する(手順どおりに自動で実行)
- 性質の違うタスクは新規チャットにして会話を分ける(無関係な文脈を引きずらない)
AIエージェントの一般的な注意事項
- AIは事実でない内容(ハルシネーション)をもとに作業を進めてしまう場合がある
- AIエージェントはファイル操作や外部サービスへの接続ができるため、想定外の変更や情報の送信が起きないような設計が必要
- 一般的に、チャット型AIよりもコストがかかる(トークン量が多い)
AGENTS.mdを使う
AGENTS.mdファイルは、多くのAIエージェントが最初のタイミングで読み込む標準ファイルで、プロジェクトフォルダのルート直下に配置します。AGENTS.mdはマークダウン形式のファイルで、正式な書式はありません。
ここにプロジェクト概要やルールなどを書いておくと、AIは毎回これを前提に処理を始めるので、人間側の無駄な入力を省けます。
ClaudeでAGENTS.mdを使う場合の注意点
Claude Codeの読み込み標準ファイルはCLAUDE.mdです。CLAUDE.mdが無いプロジェクトでは、代わりにAGENTS.mdを読み込みます(Claude Code v2.1.277以降)。
CLAUDE.mdとAGENTS.mdの両方があるときはCLAUDE.mdだけが読み込まれます。ルールをAGENTS.mdに一元化したままCLAUDE.mdも置く場合は、CLAUDE.mdに以下の1行を書きます。
@AGENTS.md
`AGENTS.md`は、プロジェクト開始のタイミングで、AIエージェント自身に設定してもらうのが手っ取り早いです。
AIエージェントにはメモリ機能もある
AGENTS.mdに書くほど恒常的ではない情報は、AIエージェントが持っているメモリ機能に任せることもできます。
メモリとAGENTS.mdの使い分け
| 場所 | 内容・判定基準 |
|---|---|
AGENTS.md | システムの仕様や、作業の恒常的なルールはここに書く。コードと一緒に更新する前提で、Git管理下に置く |
| メモリ | 時限的な内容、検討中の内容、意思決定の経緯など、恒常的に持っておく必要がないもの |
プロジェクトの内容や方針を大きく変更した場合は、メモリに書かれた事実を実際の状態と突き合わせる棚卸しを行うのが良いです。
ルーチン作業は「スキル」で管理
プロジェクト全体のルールなどではなく、必要なときだけ呼び出して使うような作業手順は、AGENTS.mdに直接書かずに「スキル」として別に管理します。
スキルの作り方や呼び出し方は、AIのスキルの記事で説明しています。
このサイトのAGENTS.md
このサイト(まなびのすけ)の制作に使用しているAIエージェントのAGENTS.mdには、以下のルールを設定しています。(抜粋)
## 作業の回答方法・進め方・振る舞い
- 結論から述べ、説明は簡潔に
- 前提を鵜呑みにせず、依頼も誤りうる前提で受け取る
- 仮定は明示する、黙って推測しない
- 最小限のコード、推測的な追加はしない
- 外科手術的な変更、隣接コードをリファクタしない
- コミット/プッシュはユーザー本人が実行する
- 成功を定義し、検証されるまでループする
## リポジトリ管理方法
- 単一ソース+参照(二重管理を作らない)
- 正典はコミット済みのソース/ドキュメントのみ
- 特定ツールにロックインしない(マルチエージェント可搬)
- ミニマリズム(冗長を残さない)
## セキュリティ
- コミット前に秘密情報を確認する
- .gitignore で秘密・ローカル物を追跡外にする
AIエージェントを使っていく中で、その都度ルールを追加・修正してブラッシュアップしています。
よくある質問(FAQ)
Q. AIエージェントとChatGPTのようなチャットAIは何が違いますか?
チャットとして使う場合は、質問を受け取って1回答える使い方が中心です。AIエージェントは、目標を渡すと手順を自分で分解し、ツールを使いながら達成まで複数の行動を繰り返します。近年はチャット型のサービスにもエージェント的な機能が加わってきており、境界は少しずつ重なってきています。
Q. AIエージェントはプログラミングの知識がないと使えませんか?
自分でエージェントを組む場合はプログラミングの知識が要りますが、すでに用意されたエージェント型のサービスやツールを使うだけなら、必ずしも必要ありません。まずは提供されているツールで、何をどこまで任せられるかを試すところから始められます。
Q. AIエージェントに任せれば何でも自動でやってくれますか?
任せきりにはできません。事実でない内容をもとに作業を進めたり、想定外の操作をしたりするリスクがあります。実行前に人が確認する手順を挟み、与える権限を絞り、小さな作業から試すのが安全です。