Skip to content

OpenCode

LNAI exports unified configuration to OpenCode’s native format, transforming settings as needed.

AGENTS.md # Symlink → .ai/AGENTS.md (at project root)
.agents/
└── skills/<name>/ # Symlinks → ../../.ai/skills/<name>/
.opencode/
├── rules/ # Symlink → ../.ai/rules/
└── <overrides> # Symlinks from .ai/.opencode/
opencode.json # Generated (at project root)
SourceOutputType
.ai/AGENTS.mdAGENTS.md (project root)Symlink
.ai/rules/.opencode/rules/Symlink
.ai/skills/<name>/.agents/skills/<name>/Symlink
.ai/settings.jsonopencode.jsonTransformed
.ai/.opencode/<path>.opencode/<path>Symlink
// Input (Claude format)
{ "permissions": { "allow": ["Bash(git:*)"] } }
// Output (OpenCode format)
{ "permission": { "bash": { "git *": "allow" } } }
// Input (Claude stdio)
{ "command": "npx", "args": ["-y", "@example/mcp"] }
// Output (OpenCode local)
{ "type": "local", "command": ["npx", "-y", "@example/mcp"] }
ClaudeOpenCode
stdio (command, args)type: "local", command: [...]
type: "http" or "sse"type: "remote"
env: {}environment: {}
${VAR}{env:VAR}

Place OpenCode-specific files in .ai/.opencode/ to have them symlinked to .opencode/.