2.5 KiB
2.5 KiB
Project Overview
This is the OpenCode agentic configuration for a multi-agent coding workflow. It defines agent roles, permissions, quality pipelines, and project memory conventions used across all projects that load this config.
- Config root:
~/.config/opencode/ - Config file:
opencode.jsonc— defines default agent, plugins, global permissions, and MCP servers. - Agent definitions:
agents/*.md— one file per agent with YAML frontmatter (model, permissions, temperature) and markdown instructions. - Memory system:
.memory/— persistent project knowledge, decisions, plans, and research in markdown. - Cross-tool instruction files:
AGENTS.md,CLAUDE.md,.github/copilot-instructions.md,.cursorrules— derived views of project knowledge for different agentic tools.
Agent Architecture
10 agents with distinct roles, models, and permission profiles. See Agent Roster in AGENTS.md for the full table.
Permission Model
- Full edit access:
lead,coder,librarian. - Memory-only edit access:
reviewer,tester,explorer,researcher,critic,sme,designer— these agents havepermission.edit: allowbut are instructed to keep code/source edits read-only. Their edit permission exists solely to support.memory/*writes for recording duties (verdicts, discoveries, research, guidance, design decisions). - No edit access: none (all agents can write
.memory/*).
See Decision: Agent Memory Write Access for rationale and guardrails.
Memory Write Guardrails
Agents with memory-only edit access are constrained by instruction-level guardrails (not path-scoped config, which OpenCode does not support):
- Each agent's instructions explicitly state: "
.memory/*writes are allowed for [specific duty]; code/source edits remain read-only." - Each agent's instructions list tool restrictions (e.g., "Disallowed: non-memory file edits").
- The
permission.edit: allowfallback is necessary because OpenCode'spermission.editdoes not support path-scoped allow/deny syntax.
Quality Pipeline
Tiered pipeline (Tier 1/2/3) defined in agents/lead.md. Standard flow: explorer/researcher → coder → reviewer → tester → librarian.
MCP Servers
- Context7: Remote documentation lookup (
https://mcp.context7.com/mcp) - GitHub Grep: Remote code search across public repos (
https://mcp.grep.app) - Playwright: Local headless Chromium for UI testing