📖 6分で読める

【セキュリティ #4】AGENTS.md — AIエージェントのリスク管理


⚠️ 注意 この記事は個人の学習記録です。筆者はセキュリティの専門家ではありません。 本番環境や機密性の高いシステムでは、必ず専門家に相談してください。

本記事の内容を参考にした結果について、筆者は一切の責任を負いません。


背景

AIアシスタント「スピカ」と一緒に開発をしていると、ふと気になることがあります。

「このAI、どこまでやっていいんだっけ?」

例えば、curlで外部APIを叩く時。知らないURLにアクセスしたら危険かもしれない。でも毎回確認するのも面倒…。

そこで、AGENTS.md というファイルにルールを書いておくことにしました。

「これはOK」「これはNG」「これは確認して」を明文化しておけば、AIも人間も迷わない。

今日、実際にcurlのルールを追加したので、その考え方をまとめます。


この記事で学べること

  • AIエージェントのリスクとは
  • AGENTS.md の役割
  • 何を許可し、何を禁止すべきか
  • 実際の設定例

AIエージェントのリスク

AIエージェントは便利ですが、強力すぎることもあります。

graph TD
  A[AIエージェント] --> B[ファイル操作]
  A --> C[コマンド実行]
  A --> D[ネットワークアクセス]
  A --> E[外部API呼び出し]
  
  B --> F[💀 重要ファイル削除]
  C --> G[💀 rm -rf /]
  D --> H[💀 データ漏洩]
  E --> I[💀 意図しない課金]

AGENTS.md とは

AIエージェントへの指示書

「これはやっていい」
「これはダメ」
「迷ったら聞いて」

基本構造

# AGENTS.md

## 許可されていること
- ワークスペース内のファイル操作
- 安全なコマンド実行
- Web検索

## 禁止されていること
- rm -rf(復元不可能な削除)
- 未知のURLへのアクセス
- 外部への機密情報送信

## 確認が必要なこと
- メール送信
- SNS投稿
- 課金が発生する操作

リスクレベル

graph LR
  subgraph 🟢 安全
      A[ファイル読み取り]
      B[検索]
      C[計算]
  end
  
  subgraph 🟡 注意
      D[ファイル書き込み]
      E[コマンド実行]
  end
  
  subgraph 🔴 危険
      F[削除操作]
      G[外部送信]
      H[課金操作]
  end

実践的なルール

ファイル操作

## ファイル操作
- trash > rm(復元可能にする)
- ワークスペース外は触らない
- .env, 秘密鍵は絶対に外部送信しない

ネットワーク

## ネットワーク
許可されたAPI:
- discord.com/api/
- *.googleapis.com
- api.open-meteo.com

禁止:
- localhost / 127.0.0.1
- プライベートIP (192.168.x.x)
- 未知のドメイン

外部操作

## 外部操作(確認必須)
- メール送信
- SNS投稿
- 公開リポジトリへのプッシュ

なぜ重要?

1. 事故防止

AIが「良かれと思って」やった操作が
取り返しのつかない結果に...

2. 責任の明確化

「これはルールで禁止されてるから確認するね」
→ 人間が判断できる

3. 信頼構築

ルールを守るAI → 任せられる範囲が増える

OpenClaw での実装

OpenClaw は AGENTS.md を起動時に読み込みます。

sequenceDiagram
  participant User as ユーザー
  participant Agent as AIエージェント
  participant Rules as AGENTS.md

  Agent->>Rules: ルールを読み込み
  User->>Agent: 「これやって」
  Agent->>Rules: 許可されてる?
  Rules-->>Agent: ✅ OK / ❌ 確認必要
  Agent->>User: 実行 or 確認

まとめ

ポイント説明
明文化ルールをファイルに書く
段階分け安全/注意/危険 を区別
確認文化迷ったら聞く

AIエージェントは強力。だから私はルールを設定しています。


💡 この記事は個人VPS向けです。 業務環境では追加の対策が必要な場合があります。


シリーズ目次

  1. サンドボックスとは?
  2. SSH鍵認証入門
  3. Deploy Key を使う
  4. AIエージェントのリスク管理 ← 今ここ
  5. tmux でプロセス永続化
  6. CI/CD セキュリティチェック