opcrew
v0.1.8
Published
OpenCrew agents and OpenCode plugin
Readme
Opcrew
Opcrew provides a crew of structured agents and an OpenCode plugin that registers them automatically.
Crew Roles
| Agent | Role | Responsibility | |-------|------|----------------| | Captain | Orchestrator | Coordinates, delegates, verifies - never executes directly | | Navigator | Planner | Charts implementation path, decomposes work, creates todo lists | | Boatswain | Executor | Executes tasks, writes code, makes file changes | | Quartermaster | Reviewer | Verifies work, runs tests, ensures quality | | Scout | Researcher | Gathers external information - libraries, APIs, best practices |
Workflow
┌─────────────┐ ┌───────────┐
│ User │ ──── intent ─────► │ Captain │
└─────────────┘ └─────┬─────┘
│
┌──────────────────────────────┼──────────────────────────────┐
│ │ │
│ delegates via task tool │ may summon for research │
▼ │ ▼
┌───────────┐ │ ┌───────────┐
│ Navigator │ ◄───────────────────────┘ │ Scout │
└─────┬─────┘ may summon for research └───────────┘
│ ▲
│ creates plan + todo list │
│ │
▼ │
┌───────────┐ │
│ Captain │ ◄── reviews plan ─── │
└─────┬─────┘ │
│ │
│ delegates via task tool │
▼ │
┌───────────┐ may need research ─────────────────────────┘
│ Boatswain │
└─────┬─────┘
│
│ executes tasks
▼
┌──────────────┐
│ Quartermaster│
└──────┬───────┘
│
│ verifies & reports
▼
┌───────────┐
│ Captain │
└───────────┘Flow Description
- Intent → Captain receives user intent, classifies task type
- Planning → Captain delegates to Navigator, who creates plan and todo list
- Navigator may summon Scout for external research (libraries, APIs, docs)
- Review → Captain reviews Navigator's plan
- Execution → Captain delegates to Boatswain to execute tasks
- Boatswain may trigger Scout if implementation requires external info
- Verification → Captain delegates to Quartermaster for testing/review
- Completion → Quartermaster reports to Captain
Scout Activation
Scout can be summoned by:
- Navigator - During planning to research libraries, frameworks, best practices
- Captain - When external information is needed for decision-making
- Boatswain - During execution if implementation requires API docs or examples
Setup
Install dependencies:
bun installRun the CLI locally:
bun run src/cli/index.ts install --opencodeOpenCode Plugin
This project ships an OpenCode plugin that registers the crew agents via config.agent.
Build
bun run build
bun run build:typesInstall as plugin
Publish the package and add it to your OpenCode config:
{
"plugin": ["opcrew"]
}The plugin entrypoint is src/opencode-plugin.ts and the published bundle is dist/opencode-plugin.js.
Logbook
The crew tracks progress in .opcrew/logbook.json:
| Section | Purpose |
|---------|---------|
| voyage | Current session status (idle/active/blocked/completed) |
| missions | Tasks with intent, status, and outcome |
| decisions | Key decisions with rationale |
| blockers | Impediments blocking progress |
| notes | General observations |
Use the edit_logbook tool to update the logbook.
Knowledge Base
Project context lives under docs/knowledge/:
decisions/for ADRsrunbooks/for operational proceduresproject-map.mdfor module mapglossary.mdfor definitions
