コンテンツにスキップ

ルール

OpenCode は Cursor のルール类似して、AGENTS.md ファイルを通じてカスタム指示を提供できます。これらの指示は、特定プロジェクトの動作をカスタマイズするために LLM のコンテキストに含められます。

Initialize

新しい AGENTS.mdファイルを作成するには、OpenCode で /init コマンドを実行します:

/init

/init はリポジトリの重要なファイルをスキャンし、コードベースが回答できない場合にターゲットを絞った質問をし、簡潔なプロジェクト固有のガイダンスを持つ AGENTS.md を作成または更新します。

これは将来のエージェントセッションが最も 必要とするものに集中します:

  • ビルド、lint、テストコマンド
  • コマンド順序と集中検証ステップ
  • ファイル名からでは明らかでないアーキテクチャとレポジトリ構造
  • プロジェクト固有の規則、設定の癖、運用の落とし穴
  • Cursor や Copilot ルールなどの既存の指示ソースへの参照

既に AGENTS.md がある場合、/init はその場で改善します。

Example

このファイルを手動で作成することもできます。例:

# SST v3 Monorepo Project

This is an SST v3 monorepo with TypeScript. The project uses bun workspaces.

## Project Structure
- `packages/` - All workspace packages
- `infra/` - Infrastructure definitions

## Code Standards
- Use TypeScript with strict mode
- Shared code goes in `packages/core/`

Types

OpenCode は異なる目的で複数の場所から AGENTS.md を読み取ることをサポートしています。

Project

プロジェクトルートに AGENTS.md を配置して、プロジェクト固有のルールを設定します。これらはそのディレクトリ或其のサブディレクトリでのみ適用されます。

Global

~/.config/opencode/AGENTS.md にグローバルルールを持つこともできます。これはすべての OpenCode セッションに適用されます。Git にコミットされないため、个人的なルールに使用します。

Claude Code Compatibility

Claude Code からの移行ユーザーの場合、OpenCode はフォールバックとして Claude Code のファイル規則をサポートします:

  • プロジェクトルール: プロジェクトディレクトリの CLAUDE.mdAGENTS.md が存在しない場合に使用)
  • グローバルルール: ~/.claude/CLAUDE.md~/.config/opencode/AGENTS.md が存在しない場合に使用)

Claude Code 互換性を無効にするには:

export OPENCODE_DISABLE_CLAUDE_CODE=1        # Disable all .claude support
export OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1 # Disable only ~/.claude/CLAUDE.md
export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills

Precedence

OpenCode が起動するとき、以下の順序でルールファイルを検索します:

  1. 現在のディレクトリから上ってローカルファイル(AGENTS.md、次に CLAUDE.md
  2. ~/.config/opencode/AGENTS.md のグローバルファイル
  3. ~/.claude/CLAUDE.md の Claude Codeファイル(無効にしていない場合)

各カテゴリで最初の一致ファイルが優先します。

Custom Instructions

opencode.json でカスタム指示ファイルを指定できます:

{
  "$schema": "https://opencode.ai/config.json",
  "instructions": ["CONTRIBUTING.md", "docs/guidelines.md", ".cursor/rules/*.md"]
}

遥控 URL も使用できます:

{
  "$schema": "https://opencode.ai/config.json",
  "instructions": ["https://raw.githubusercontent.com/my-org/shared-rules/main/style.md"]
}

すべての指示ファイルは AGENTS.md ファイルと組み合わされます。

Referencing External Files

OpenCode は AGENTS.md のファイル参照を自動的に解析しませんが、2 つの方法でこれを達成できます:

Using opencode.json

推奨されるアプローチは opencode.jsoninstructions フィールドを使用します:

{
  "$schema": "https://opencode.ai/config.json",
  "instructions": ["docs/development-standards.md", "test/testing-guidelines.md"]
}

Manual Instructions in AGENTS.md

明示的な指示を提供することで OpenCode に外部ファイルを読み取るように教えることができます:

# TypeScript Project Rules

## Development Guidelines
For TypeScript code style: @docs/typescript-guidelines.md
For React patterns: @docs/react-patterns.md

OpenCode は要求に応じてファイルをロードします。