AIエージェント(AI Agent)は、目標達成までの手順を自分で考えて動くAIのことです。この記事では、AIを使う人が知っておきたいAIエージェントの基本をまとめました。実際に使っているルールも紹介します。
AIエージェントとは?
AIエージェントは、目標を渡すとそこに至るまでの手順を自分で組み立てて実行する、自律性のあるAIのことです。
- 一般的に使われているAIはチャット型で、1回の質問に1回回答すると終わるが、AIエージェントは目標達成まで連続して動き続ける
- 目標までの道のりが複雑で手順が多い作業には、AIエージェントを使うのが良い
AIエージェントの動き方
ユーザーが指示をすると、AIエージェントは以下のように動きます。
- 目標を設定する
- 目標をどう達成するかの計画を立てる
- タスク・手順に分解する
- タスクを1つずつ実行する
- 途中でAIが判断に迷うときはユーザーへ質問する
- 目標を達成する
- 経過や結果を記憶する
AIエージェントへの指示の出し方
具体的な指示を出すことで、AIエージェントの精度は上がります。
- 最初にタスクの種類を伝えると、無駄な確認のやり取りが減る
- 対象のファイルや箇所がわかっているときは、先に指定すると探索の手間が省ける
- 一連の作業はまとめて依頼すると、手順どおりに自動で実行される
- 性質の違うタスクは新規チャットにして会話を分けると、無関係な文脈を引きずらない
毎回の指示はAGENTS.mdに記載
AIエージェントに毎回同じ指示を繰り返している場合は、AGENTS.mdというファイルにルールとして書いておきます。
- プロジェクトフォルダの直下に
AGENTS.mdをおき、AIの振る舞いやルールを記載する AGENTS.mdは、多くのAIエージェントが作業を始める最初のタイミングで読み込まれる標準のファイル- 必ず守ってほしいルールは、AIのメモリ機能だけに頼らずファイルにはっきり書いておく
AGENTS.mdの作り方
書式
AGENTS.mdはマークダウン形式のファイル- 正式な書式はない
- 多くのAIエージェントで採用されているので、AIを乗り換えても使いまわせる
AGENTS.mdは、AIエージェント自身に書いてもらうのが手っ取り早い
置き場所
sample-project/
┗ AGENTS.md
記載内容サンプル
# プロジェクト概要
## 基本情報
## エージェントの役割
## 作業の基本方針(回答・進め方・振る舞い)
## 開発コマンド・ビルド/検証
## タスク別の参照ファイル
## コーディング規約
## プロジェクト構成
Claudeで使う場合の注意点
Claudeでは、標準で読み込む最初のファイルは、AGENTS.mdではなくCLAUDE.mdなので、共通のAGENTS.mdを使いたいときは、以下のようにします。
sample-project/
┗ CLAUDE.md
┗ AGENTS.md
CLAUDE.mdに以下の1行を書く
@AGENTS.md
手順書はSkillsにまとめる
プロジェクトで何度も使うような作業の手順書は、AGENTS.mdではなく、Skills(スキル)という別の仕組みを使います。
スキルについては、AIのSkills(スキル) で説明しています。
AIエージェントのメモリ機能も使う
AGENTS.mdに書くほど恒常的ではない情報は、AIエージェントが持っているメモリ機能に任せると効率的です。
メモリとAGENTS.mdの使い分け
| 置き場所 | 判定基準 |
|---|---|
AGENTS.mdなどの設定ファイル | システムの仕様や、作業の恒常的なルール。現時点で真となるルールはここに書く。コードと一緒に更新する前提で、Git管理下に置く |
| メモリ | 時限的な状態(あとで解消される前提の状況)、意思決定の経緯(なぜそう判断したか)、AIエージェントとの協働に関する合意事項、外部システムへの参照先など |
判断に迷ったら、コードから今すぐ確認できる恒常的な仕様か、それとも時限的な状態・経緯・協働のメモかで分けます。
メモリを最新に保つ方法
メモリが古くなる場合もあるので、以下を意識して使います。
- AIエージェントを通さずに、人間がファイル削除や移動を行った時は、AIエージェントに伝える(AIエージェント側から変化に気づけない)
- AIエージェントの会話からメモリの内容が古いと感じたら、気づいた時点で指摘する
- 大きな変更のあとや数か月に一度など、メモリに書かれた事実を実際の状態と突き合わせて確認する棚卸しを行う(タイミングを決めて依頼する)
AIエージェントを使う時の注意点
- いきなり全自動にせず、小さな単位の作業から試す
- AIは事実でない内容(ハルシネーション)をもとに作業を進めてしまう場合があるので注意する
- AIエージェントはファイル操作や外部サービスへの接続ができるため、想定外の変更や情報の送信が起きないような設計が必要
- 一般的なチャット型AIよりもコストがかかる(トークンが多い)
まなびのすけが使っているAIエージェント
まなびのすけが使っているAGENTS.mdには、以下を設定しています。
## 作業の基本方針(回答・進め方・振る舞い)
- 結論から簡潔に回答。
- 依頼は「間違っているかも」で受ける。すぐ着手せず、前提・事実・KPI に疑問があれば質問・代案・リスクを先に出す。反対は理由つきで。
- 推測で進めない。情報不足なら「〜という前提で進めます」と宣言してから着手。仕様・命名・配置・データ構造を独断で決めない。
- コードは最小限。「ついでに便利かも」で関数・props・抽象化・拡張点を足さない。必要十分だけ。
- 頼まれた範囲だけ直す。他所の書式・命名・並び・スタイル・コメントをついで直ししない。必要なら別タスクで提案。
- コミット前に秘密情報を確認する。差分に API キー・トークン・パスワード・`.env`・秘密鍵・htpasswd ハッシュ(`$apr1$` / `$2y$`)・個人情報(メール・氏名・住所)・サーバーの絶対パスや認証情報が混ざっていないか確認する。見つかったらユーザーへ確認する。
AIエージェントを使っていく中で、回答がマッチしていないと感じた時に、その都度ルールを追加・修正してブラッシュアップしています。
よくある質問(FAQ)
Q. AIエージェントとChatGPTのようなチャットAIは何が違いますか?
チャットとして使う場合は、質問を受け取って1回答える使い方が中心です。AIエージェントは、目標を渡すと手順を自分で分解し、ツールを使いながら達成まで複数の行動を繰り返します。近年はチャット型のサービスにもエージェント的な機能が加わってきており、境界は少しずつ重なってきています。
Q. AIエージェントはプログラミングの知識がないと使えませんか?
自分でエージェントを組む場合はプログラミングの知識が要りますが、すでに用意されたエージェント型のサービスやツールを使うだけなら、必ずしも必要ありません。まずは提供されているツールで、何をどこまで任せられるかを試すところから始められます。
Q. AIエージェントに任せれば何でも自動でやってくれますか?
任せきりにはできません。事実でない内容をもとに作業を進めたり、想定外の操作をしたりするリスクがあります。実行前に人が確認する手順を挟み、与える権限を絞り、小さな作業から試すのが安全です。