Reglas
Establece instrucciones personalizadas para opencode.
Puedes proporcionar instrucciones personalizadas a opencode creando un archivo AGENTS.md. Esto es similar a las reglas de Cursor. Contiene instrucciones que se incluirán en el contexto del LLM para personalizar su comportamiento para tu proyecto específico.
Inicializar
Para crear un nuevo archivo AGENTS.md, puedes ejecutar el comando /init en opencode.
Consejo: Deberías incluir el archivo
AGENTS.mdde tu proyecto en Git.
/init escanea los archivos importantes de tu repositorio, puede hacer un par de preguntas específicas cuando la base de código no puede responderlas, y luego crea o actualiza AGENTS.md con orientación concisa y específica del proyecto.
Se centra en las cosas que las futuras sesiones del agente probablemente necesitarán más:
- comandos de compilación, lint y test
- orden de los comandos y pasos de verificación enfocados cuando importan
- arquitectura y estructura del repositorio que no son obvias solo por los nombres de los archivos
- convenciones específicas del proyecto, peculiaridades de configuración y gotchas operativos
- referencias a fuentes de instrucciones existentes como las reglas de Cursor o Copilot
Si ya tienes un AGENTS.md, /init lo mejorará in situ en lugar de reemplazarlo a ciegas.
Ejemplo
También puedes crear este archivo manualmente. Aquí tienes un ejemplo de algunas cosas que puedes poner en un archivo AGENTS.md.
# 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`Aquí estamos agregando instrucciones específicas del proyecto y esto se compartirá con todo tu equipo.
Tipos
opencode también admite leer el archivo AGENTS.md desde múltiples ubicaciones. Y esto sirve para diferentes propósitos.
Proyecto
Coloca un AGENTS.md en la raíz de tu proyecto para reglas específicas del proyecto. Estas solo se aplican cuando trabajas en este directorio o sus subdirectorios.
Global
También puedes tener reglas globales en un archivo ~/.config/opencode/AGENTS.md. Esto se aplica en todas las sesiones de opencode.
Dado que esto no se incluye en Git ni se comparte con tu equipo, recomendamos usarlo para especificar cualquier regla personal que el LLM deba seguir.
Compatibilidad con Claude Code
Para los usuarios que migran desde Claude Code, OpenCode admite las convenciones de archivos de Claude Code como alternativas:
- Reglas del proyecto :
CLAUDE.mden el directorio de tu proyecto (se usa si no existe ningúnAGENTS.md) - Reglas globales :
~/.claude/CLAUDE.md(se usa si no existe ningún~/.config/opencode/AGENTS.md) - Skills :
~/.claude/skills/— consulta Agent Skills para más detalles
Para deshabilitar la compatibilidad con Claude Code, establece una de estas variables de entorno:
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/skillsPrecedencia
Cuando opencode se inicia, busca archivos de reglas en este orden:
- Archivos locales recorriendo hacia arriba desde el directorio actual (
AGENTS.md,CLAUDE.md) - Archivo global en
~/.config/opencode/AGENTS.md - Archivo de Claude Code en
~/.claude/CLAUDE.md(a menos que esté deshabilitado)
El primer archivo coincidente gana en cada categoría. Por ejemplo, si tienes tanto AGENTS.md como CLAUDE.md, solo se usa AGENTS.md. De forma similar, ~/.config/opencode/AGENTS.md tiene prioridad sobre ~/.claude/CLAUDE.md.
Instrucciones personalizadas
Puedes especificar archivos de instrucciones personalizadas en tu opencode.json o en el ~/.config/opencode/opencode.json global. Esto te permite a ti y a tu equipo reutilizar las reglas existentes en lugar de tener que duplicarlas en AGENTS.md.
Ejemplo:
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["CONTRIBUTING.md", "docs/guidelines.md", ".cursor/rules/*.md"]
}También puedes usar URLs remotas para cargar instrucciones desde la web.
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["https://raw.githubusercontent.com/my-org/shared-rules/main/style.md"]
}Las instrucciones remotas se obtienen con un tiempo de espera de 5 segundos.
Todos los archivos de instrucciones se combinan con tus archivos AGENTS.md.
Referenciar archivos externos
Aunque opencode no analiza automáticamente las referencias a archivos en AGENTS.md, puedes lograr una funcionalidad similar de dos maneras:
Usando opencode.json
El enfoque recomendado es usar el campo instructions en opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"instructions": ["docs/development-standards.md", "test/testing-guidelines.md", "packages/*/AGENTS.md"]
}Instrucciones manuales en AGENTS.md
Puedes enseñar a opencode a leer archivos externos proporcionando instrucciones explícitas en tu AGENTS.md. Aquí tienes un ejemplo práctico:
# 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.md
For React component architecture and hooks patterns: @docs/react-patterns.md
For REST API design and error handling: @docs/api-standards.md
For 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.Este enfoque te permite:
- Crear archivos de reglas modulares y reutilizables
- Compartir reglas entre proyectos mediante symlinks o submódulos de git
- Mantener AGENTS.md conciso mientras referencias directrices detalladas
- Asegurar que opencode cargue los archivos solo cuando se necesiten para la tarea específica
Consejo: Para monorepos o proyectos con estándares compartidos, usar
opencode.jsoncon patrones glob (comopackages/*/AGENTS.md) es más fácil de mantener que las instrucciones manuales.