OpenCode ルール(AGENTS.md)
OpenCode では、ルール(Rules)は AI の動作を制御する中核メカニズムです。
私たちはAGENTS.mdファイルを通じて、OpenCode にカスタム指示を提供し、プロジェクトの規範に従って開発させることができます。
ツールは AI が何をできるかを決定し、AGENTS.md は AI がどうすべきかを決定します。
AGENTS.md = AI にチーム開発規範を設定する。
一、AGENTS.md とは
AGENTS.mdルールファイルであり、次のために使用されます:
- プロジェクト構造の定義
- コードスタイルの制約
- 開発プロセスの標準化
- AI にタスクの実行方法を指示
これらの内容は LLM のコンテキストに追加されます。
効果:
- AI があなたのプロジェクトをより理解する
- 生成されるコードが規範に適合する
- 繰り返しの修正が減る
二、クイック初期化
OpenCode で実行:
/init
このコマンドは:
- プロジェクト構造をスキャン
- コードの編成方法を分析
- AGENTS.md を自動生成
推奨:
- AGENTS.md を Git にコミット
- チームの統一規範として
三、サンプル構造
# 项目说明 这是一个基于 TypeScript 的 monorepo 项目。 ## 项目结构 - packages/ 核心模块 - infra/ 基础设施 - web/ 前端应用 ## 代码规范 - 使用 TypeScript 严格模式 - 公共代码放在 packages/core - 所有函数必须添加注释 ## 开发约定 - 使用 workspace 方式引用模块 - API 必须统一错误处理
本質:チーム規範を「AI に向けて書く」
四、ルールの適用範囲
1、プロジェクトレベルルール
パス:
./AGENTS.md
作用:
- 現在のプロジェクトでのみ有効
- チームで共有
2、グローバルルール
パス:
~/.config/opencode/AGENTS.md
作用:
- すべてのプロジェクトで有効
- 個人用
推奨用途:
- 個人のコーディング習慣
- 出力スタイルの制御
五、Claude Code 互換性
OpenCode は Claude Code のルール体系と互換性があります:
- プロジェクトルール:CLAUDE.md
- グローバルルール:~/.claude/CLAUDE.md
- スキルディレクトリ:~/.claude/skills/
使用したくない場合は、無効にできます:
export OPENCODE_DISABLE_CLAUDE_CODE=1
六、ルールの読み込み優先順位(重要)
OpenCode は起動時に次の順序で読み込みます:
- 現在のディレクトリから上方向に AGENTS.md を探す
- ない場合 → CLAUDE.md を探す
- グローバルルール ~/.config/opencode/AGENTS.md
- Claude グローバルルール ~/.claude/CLAUDE.md
重要ポイント:
- AGENTS.md の優先順位が最も高い
- 同じレベルでは最初に一致したファイルのみが使用される
七、拡張ルール(instructions)
~の中でopencode.json追加のルールファイルを読み込めます:
{
"instructions": [
"CONTRIBUTING.md",
"docs/guidelines.md",
".cursor/rules/*.md"
]
}
利点:
- 既存のドキュメントを再利用
- 重複管理を回避
リモートルールをサポート
{
"instructions": [
"https://raw.githubusercontent.com/xxx/rules/main/style.md"
]
}
説明:
- URL 読み込みをサポート
- タイムアウト:5 秒
八、モジュール化ルール(上級)
推奨方法(instructions を使用)
{
"instructions": [
"docs/dev.md",
"test/rules.md",
"packages/*/AGENTS.md"
]
}
適しているケース:
- monorepo
- 大規模プロジェクト
方法2:AGENTS.md で手動参照
# 规则加载说明 当遇到 @xxx 文件时,请使用 read 工具加载。 - 不要一次性加载全部文件 - 按需加载 - 加载后必须遵守
例:
TypeScript 规范:@docs/typescript.md React 规范:@docs/react.md API 规范:@docs/api.md
「オンデマンドでのルール読み込み」を実現
九、ベストプラクティス(重点)
1、ルールは具体的に
❌ 書かないこと:
コードは規範に従うべきだ
✅ 書くべきこと:
所有函数必须添加 JSDoc 注释
2、ルールは実行可能に
AI は抽象的な説明ではなく、明確なルールのみを実行できます。
3、長すぎないように
推奨:
- コアルールは AGENTS.md に書く
- 詳細ルールは instructions ファイルに分割
4、チームで一元的に管理
- Git 管理に組み込む
- 開発規範の一部として