Regler
Set custom instructions for OpenCode.
Du kan gi tilpassede instruksjoner for å OpenCode ved å opprette en AGENTS.md-fil. Dette ligner på Cursors regler. Den inneholder instruksjoner som vil bli inkludert i LLMs kontekst for å tilpasse oppførselen til ditt spesifikke prosjekt.
Initialiser
For å lage en ny AGENTS.md fil, kan du kjøre kommandoen /init i OpenCode.
Dette vil skanne prosjektet og alt dets innhold for å forstå hva prosjektet handler om og generere en AGENTS.md-fil med det. Dette hjelper OpenCode å navigere i prosjektet bedre.
Hvis du har en eksisterende AGENTS.md-fil, vil denne prøve å legge til den.
Eksempel
Du kan også bare lage denne filen manuelt. Her er et eksempel på noen ting du kan legge inn i en AGENTS.md-fil.
# SST v3 Monorepo Project
This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for package management.
## Project Structure
- `packages/` - Contains all workspace packages (functions, core, web, etc.)- `infra/` - Infrastructure definitions split by service (storage.ts, api.ts, web.ts)- `sst.config.ts` - Main SST configuration with dynamic imports
## Code Standards
- Use TypeScript with strict mode enabled- Shared code goes in `packages/core/` with proper exports configuration- Functions go in `packages/functions/`- Infrastructure should be split into logical files in `infra/`
## Monorepo Conventions
- Import shared modules using workspace names: `@my-app/core/example`Vi legger til prosjektspesifikke instruksjoner her, og dette vil bli delt på tvers av teamet ditt.
Typer
OpenCode støtter også lesing av AGENTS.md-filen fra flere steder. Og dette tjener forskjellige formål.
Prosjekt
Plasser en AGENTS.md i prosjektroten for prosjektspesifikke regler. Disse gjelder kun når du arbeider i denne katalogen eller dens underkataloger.
Globalt
Du kan også ha globale regler i en ~/.config/opencode/AGENTS.md-fil. Dette blir brukt på alle OpenCode-økter.
Siden dette ikke er forpliktet til Git eller delt med teamet ditt, anbefaler vi å bruke dette til å spesifisere eventuelle personlige regler som LLM bør følge.
Claude Code-kompatibilitet
For brukere som migrerer fra Claude Code, støtter OpenCode Claude Codes filkonvensjoner som fallbacks:
- Prosjektregler:
CLAUDE.mdi prosjektkatalogen din (brukes hvis ingenAGENTS.mdeksisterer) - Globale regler:
~/.claude/CLAUDE.md(brukes hvis ingen~/.config/opencode/AGENTS.mdeksisterer) - Skills:
~/.claude/skills/— se Agent Skills for detaljer
For å deaktivere Claude Code-kompatibilitet, sett en av disse miljøvariablene:
export OPENCODE_DISABLE_CLAUDE_CODE=1 # Disable all .claude supportexport OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1 # Disable only ~/.claude/CLAUDE.mdexport OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skillsForrang
Når OpenCode starter, ser den etter regelfiler i denne rekkefølgen:
- Lokale filer ved å gå opp fra gjeldende katalog (
AGENTS.md,CLAUDE.md) - Global fil på
~/.config/opencode/AGENTS.md - Claude Code-fil på
~/.claude/CLAUDE.md(med mindre de er deaktivert)
Den første matchende filen vinner i hver kategori. For eksempel, hvis du har både AGENTS.md og CLAUDE.md, brukes bare AGENTS.md. På samme måte har ~/.config/opencode/AGENTS.md forrang over ~/.claude/CLAUDE.md.
Egendefinerte instruksjoner
Du kan spesifisere egendefinerte instruksjonsfiler i din opencode.json eller den globale ~/.config/opencode/opencode.json. Dette lar deg og teamet ditt gjenbruke eksisterende regler i stedet for å måtte duplisere dem til AGENTS.md.
Eksempel:
{ "$schema": "https://opencode.ai/config.json", "instructions": ["CONTRIBUTING.md", "docs/guidelines.md", ".cursor/rules/*.md"]}Du kan også bruke eksterne URL-er for å laste instruksjoner fra nettet.
{ "$schema": "https://opencode.ai/config.json", "instructions": ["https://raw.githubusercontent.com/my-org/shared-rules/main/style.md"]}Fjerninstruksjoner hentes med 5 sekunders tidsavbrudd.
Alle instruksjonsfilene er kombinert med AGENTS.md-filene dine.
Refererer til eksterne filer
Selv om OpenCode ikke automatisk analyserer filreferanser i AGENTS.md, kan du oppnå lignende funksjonalitet på to måter:
Bruker opencode.json
Den anbefalte tilnærmingen er å bruke feltet instructions i opencode.json:
{ "$schema": "https://opencode.ai/config.json", "instructions": ["docs/development-standards.md", "test/testing-guidelines.md", "packages/*/AGENTS.md"]}Manuelle instruksjoner i AGENTS.md
Du kan lære OpenCode å lese eksterne filer ved å gi eksplisitte instruksjoner i AGENTS.md. Her er et praktisk eksempel:
# TypeScript Project Rules
## External File Loading
CRITICAL: When you encounter a file reference (e.g., @rules/general.md), use your Read tool to load it on a need-to-know basis. They're relevant to the SPECIFIC task at hand.
Instructions:
- Do NOT preemptively load all references - use lazy loading based on actual need- When loaded, treat content as mandatory instructions that override defaults- Follow references recursively when needed
## Development Guidelines
For TypeScript code style and best practices: @docs/typescript-guidelines.mdFor React component architecture and hooks patterns: @docs/react-patterns.mdFor REST API design and error handling: @docs/api-standards.mdFor testing strategies and coverage requirements: @test/testing-guidelines.md
## General Guidelines
Read the following file immediately as it's relevant to all workflows: @rules/general-guidelines.md.Denne tilnærmingen lar deg:
- Lag modulære, gjenbrukbare regelfiler
- Del regler på tvers av prosjekter via symbolkoblinger eller git-undermoduler
- Hold AGENTS.md kortfattet mens du refererer til detaljerte retningslinjer
- Sørg for at OpenCode laster filer kun når det er nødvendig for den spesifikke oppgaven