Runtime adapters¶
Canonical entries use common name and description frontmatter. Exporters add
host fields and layout and rebase links into one shared catalog/ copy.
| Runtime | Exported layout | Behavior |
|---|---|---|
| OpenCode 1 | agents/*.md, skills/<name>/SKILL.md, commands/, opencode.json |
Jörg, Plan and Build are primary; specialists are subagents |
| VS Code / Copilot | .github/agents/*.agent.md, .github/skills/<name>/SKILL.md |
Project-native profiles; select in the host |
| Portable | .agents/skills/<name>/SKILL.md, agents/*.agent.md |
Agent Skills plus portable profiles; agent discovery is host-specific |
OpenCode in WSL¶
Export into a dedicated directory, then set both variables when starting from a project.
OPENCODE_CONFIG loads JSON; OPENCODE_CONFIG_DIR loads agents, skills and commands.
Your provider setup stays separately configured. Project configuration and permissions
can affect the final merged setup.
The exported configuration permits access to its own reference catalog outside the project and denies editing that catalog. It does not grant access to other external directories or a private vault. Configure those separately in your host when needed.
python3 tools/ai_toolkit.py export --runtime opencode \
--output "$HOME/.config/ai-agents/opencode"
cd /path/to/project
OPENCODE_CONFIG_DIR="$HOME/.config/ai-agents/opencode" \
OPENCODE_CONFIG="$HOME/.config/ai-agents/opencode/opencode.json" opencode web
By default the adapter uses mode and singular permission, with no fixed model or plugin.
Reviewers deny edit, shell and task tools. Plan has edit exceptions for .ai/work/**
and .ai/archive/**. This is a planning guardrail, not an OS sandbox: consider other
installed tools and project configuration. Build and Jörg use normal host permissions.
Do not install unrestricted write tools on a profile intended to be read-only.
Use /work-plan, /work-build or /brain. Native delegation and interaction with
child sessions in OpenCode Web depend on your release. The toolkit adds no session
orchestration plugin.
For plan comments and approval before implementation, add --plannotator to the export.
Use --plan-model, --build-model, --plan-variant and --build-variant for independent
phase settings. These are optional and OpenCode-specific. See the local plan review
guide for WSL startup, privacy, review states and model handoff.
Copilot¶
Export into another project. Existing edited/unmanaged files, including
.github/copilot-instructions.md, are protected. If you maintain those already,
export separately and integrate deliberately. Keep catalog/ with the profiles;
their focused reference links point into it.
VS Code aliases read and search restrict reviewers and Plan to proposed changes.
Use a writing profile to apply a plan. Permissions and tool availability are
host-specific; other Copilot surfaces may interpret frontmatter differently.
Updates and privacy¶
Re-export after source updates. .ai-toolkit-manifest.json tracks owned paths and
hashes. Edited or unmanaged files are not silently overwritten. --dry-run checks
without writing; --force explicitly permits replacing files at planned paths.
Updates write only changed files and remove obsolete owned files. Identical files,
including the manifest, keep their timestamps. JSON output reports changed,
unchanged and removed file counts; the manifest is excluded. With --dry-run,
these counts describe the proposed update. Use a dedicated destination.
Re-export with the same optional phase settings; omitted options restore the defaults.
Keep model keys and private vault paths in local configuration. The catalog/dashboard uses no remote runtime service; AI provider calls are managed by your host.
Sources: OpenCode agents, configuration, skills, VS Code custom agents. Structural checks do not establish model behavior or installed web UX compatibility.
Canonical source: toolkit/RUNTIMES.md.