Replace 4 separate instruction files with 1 real file + symlinks: - .github/copilot-instructions.md is the canonical instruction file - CLAUDE.md and .cursorrules are symlinks to it - AGENTS.md stays as global config (not a project instruction file) This eliminates all sync/merge logic - changes propagate automatically. Changes: - AGENTS.md: rewrite Cross-Tool Instruction Files section for symlink convention - librarian.md: simplify to maintain single instruction file + verify symlinks - lead.md: simplify PHASE-WRAP and Documentation Completion Gate - commands (init, bootstrap-memory, save-memory): update for symlink model - doc-coverage skill: verify symlinks exist and point correctly
2.6 KiB
2.6 KiB
OpenCode Agent Configuration
This repository contains the multi-agent configuration for OpenCode, defining agent roles, permissions, quality pipelines, and project memory conventions.
Project Structure
opencode.jsonc # Main config: default agent, plugins, permissions, MCP servers
agents/ # Agent definitions (one .md per agent)
lead.md # Primary orchestrator
coder.md # Implementation agent
reviewer.md # Code review (read-only code, writes .memory/*)
tester.md # Test validation (writes .memory/*)
explorer.md # Codebase mapping (read-only code, writes .memory/*)
researcher.md # Technical investigation (writes .memory/*)
librarian.md # Documentation specialist (full edit)
critic.md # Plan review gate (writes .memory/*)
sme.md # Domain expert (writes .memory/*)
designer.md # UI/UX guidance (writes .memory/*)
.memory/ # Persistent project memory (knowledge, decisions, plans, research)
AGENTS.md # Global OpenCode config (not a symlink in this repo)
CLAUDE.md -> .github/copilot-instructions.md
.cursorrules -> .github/copilot-instructions.md
Agent Permission Model
- Full edit access:
lead,coder,librarian. - Memory-only edit access:
reviewer,tester,explorer,researcher,critic,sme,designer—permission.edit: allowin config, but instructions restrict edits to.memory/*only. Code/source edits remain read-only. - OpenCode does not support path-scoped
permission.edit, so guardrails are instruction-level.
Memory System
.memory/ is the persistent project knowledge store:
knowledge.md— architecture, patterns, key conceptsdecisions.md— architecture decisions, design choicesplans/<feature>.md— active plans with tasks and statusesresearch/<topic>.md— research findings
Workflow: read relevant .memory/ files → work → update .memory/ files with outcomes.
Quality Pipeline
Standard flow: explorer/researcher → coder → reviewer → tester → librarian.
Three tiers based on change scope (Tier 1: full, Tier 2: standard, Tier 3: fast).
Conventions
- This repo uses symlinks for cross-tool instruction files:
CLAUDE.mdand.cursorrulespoint to this file. .memory/knowledge.mdis the canonical source of truth for deep project knowledge.- Recording discipline: record only outcomes/decisions/discoveries in
.memory/, never ceremony checkpoints.