This directory contains two workspace packages:
warcraft-core: shared domain services and filesystem logicopencode-warcraft: OpenCode plugin, agent prompts, hooks, and MCP wiring
Use this split when making changes:
- Put reusable logic in
warcraft-corefirst. - Keep
opencode-warcraftfocused on plugin integration and runtime behavior. - Export shared APIs from
warcraft-core/src/index.ts. - Consume shared APIs from
opencode-warcraft/src/index.ts.
For workflow details, configuration options (beadsMode, agentMode, priority, and plan approval), and tool reference, see the root AGENTS.md.
For detailed tool behavior and parameters, see:
- WARCRAFT-TOOLS.md: Tool reference with parameters and gate behavior
- DATA-MODEL.md: Artifact layout and data schemas
- BEADS.md: Beads subsystem architecture and storage backends
- Identify the package boundary (
corelogic vs plugin runtime). - Update code in the correct package.
- Add or update tests next to touched files.
- Run package tests first, then workspace checks.
Common commands:
bun run test --filter warcraft-corebun run test --filter opencode-warcraftbun run lintbun run build
Run package commands from the repo root or the package directory itself:
cd /path/to/repo/root
bun run test --filter warcraft-core
bun run test --filter opencode-warcraft