OpenCode: OpenCode AGENTS.md Configuration

最終更新:2026-08-31

--- title: OpenCodeルール(AGENTS.md) description: AGENTS.mdルールファイルの作成方法を深く学び、プロジェクト内のAIの動作制約と作業規範を定義する order: 12 lang: ja

AGENTS.mdはOpenCodeのプロジェクトレベルのルールファイルで、現在のプロジェクトにおけるAIの動作制約を定義します。

1. 学習内容


2. AGENTS.mdとは

AGENTS.mdはプロジェクトルートに配置するMarkdownファイルで、AIは作業時に自動的に読み込み、ルールに従います。

コアの位置づけ: AI向けのプロジェクト仕様書と動作規範。

特徴 説明
場所 プロジェクトルート
フォーマット Markdown
スコープ 現在のプロジェクトのみ
自動読み込み AIの作業開始時に自動的に読み込み

3. AGENTS.mdの作成

(1) TUIコマンド

TEXT 📖 参照専用
/init

OpenCodeがプロジェクト構造に基づいて基本ルールを自動生成。

(2) 手動作成

プロジェクトルートにAGENTS.mdファイルを作成し、カスタムルールを記述。


4. ルールの書き方

(1) 基本構造

MARKDOWN
# Project Rules

## Coding Standards
- Use TypeScript strict mode
- Follow ESLint configuration
- Maximum function length: 50 lines

## Testing Requirements
- All new functions must have unit tests
- Test coverage no less than 80%

## Commit Standards
- Use Conventional Commits format
- Each commit does one thing only

(2) ルールの分類

カテゴリ
コーディング規約 コードスタイル、命名規則、型要件
アーキテクチャ制約 ディレクトリ構造、モジュール分割、依存方向
テスト要件 カバレッジ、テストタイプ、テスト命名
コミット規約 Commitフォーマット、ブランチ命名、PRルール
セキュリティルール ハードコードキーの禁止、入力検証要件
ビジネスロジック ドメインルール、データ処理フロー

5. ベストプラクティス


6. AGENTS.md vs opencode.json

次元 AGENTS.md opencode.json
フォーマット Markdown JSON
読者 AI + 人間 OpenCodeプログラム
内容 動作ルール、コーディング規約 設定パラメータ、ツール権限
作用 AIの動作を制約 プログラムの動作を制御
優先度 建議的 強制的

両者は補完関係:AGENTS.mdはAIに「どうすべきか」を伝え、opencode.jsonはプログラムに「何ができるか」を制御。


❓ FAQ

Q AGENTS.mdのルールはAIが必ず遵守しますか?
A 保証なし。AGENTS.mdは建議的であり、AIは遵守を試みるが強制ではない。強制が必要なルールはopencode.jsonのpermission設定を使用。
Q サブディレクトリのAGENTS.mdは有効ですか?
A いいえ。プロジェクトルートのAGENTS.mdのみAIが読み込みます。
Q AliceのプロジェクトのAGENTS.mdは100行、Bobは5行です。どちらの効果が良いですか?
A 必ずしも多い方が良いとは限らない。5つの正確なルールが100の曖昧なルールより効果的な場合もある。質が量に勝る。

📖 まとめ


📝 練習問題

  1. 基本問題:プロジェクトにAGENTS.mdを作成し、5つ以上のコーディング規約を定義してください。

  2. 応用問題:AGENTS.mdで完全な開発フロールール(コーディング→テスト→コミット)を定義し、OpenCodeにルールに従ってタスクを実行させてください。

  3. チャレンジ問題:AGENTS.mdの有無でOpenCodeの出力を比較し、ルールがAIの動作に与える影響を定量的に評価してください。

Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%