@arborship/codebase
v0.3.0
Published
Levi Codebase - Domain knowledge for the Levi monorepo architecture [PROMPT/ASSETS-ONLY: no compiled TypeScript, contents are markdown skills/agents/commands for Claude Code and OpenCode]
Maintainers
Readme
@arborship/codebase
Architecture decision (MAR-69/MAR-95): This is a PROMPT/ASSETS-ONLY package. It contains no TypeScript source code and produces no compiled output. The package ships markdown skill files, agent prompts, slash commands, and plugin manifests for consumption by Claude Code (
.claude-plugin/) and OpenCode (opencode/). There is nosrc/directory and no build step. Themain/exportsfields in package.json pointing atopencode/plugin/index.jsare vestigial placeholders — that file does not exist and is not needed for the package to function as a prompt plugin.
Domain knowledge for the Levi monorepo. Provides instant architectural context for each layer of the stack.
Works with both Claude Code and OpenCode
Installation
For Claude Code
Reference the plugin directly - Claude Code reads from .claude-plugin/plugin.json.
For OpenCode
Add to your opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@arborship/codebase"]
}Features
- 7 Domain Skills: CLI, SDK, Core, Drivers, Control Plane, Desktop, Agent Supervisor
- 5 Agents: Add API endpoint, add CLI command, add driver, debug VM, refresh knowledge
- 3 Slash Commands:
domains,refresh-knowledge, andcapture-discoveries - Custom Tools:
getDomainContextandfindDomainForFile
Domain Skills
cli-domain- CLI layer (oclif)sdk-domain- SDK layercore-domain- Core layer (libvirt)drivers-domain- Drivers layercontrol-plane-domain- Control plane layerdesktop-domain- Desktop layer (Electron)agent-supervisor-domain- Agent supervisor layer
Agents
add-api-endpoint- Add API endpointsadd-cli-command- Add CLI commandsadd-driver- Add platform driversdebug-vm- Debug VM issuesrefresh-knowledge- Refresh codebase knowledge
Slash Commands
domains- Show Levi domain quick referencerefresh-knowledge- Compare skills/docs against current source and propose updatescapture-discoveries- Persist new debugging/provisioning discoveries into AGENTS/docs/skills/commands
Custom Tools
getDomainContext
Get architectural context for a domain:
getDomainContext({ domain: "sdk" })findDomainForFile
Determine which domain a file belongs to:
findDomainForFile({ filePath: "packages/host/sdk/src/index.ts" })License
Apache-2.0 — see the LICENSE file in this package.
