Nineteen specialized agents. Thirty-nine workflow skills.
One declaration: Don't learn orchestration. Just use Senate.
Nineteen specialized agents, unified under a single orchestration layer — native to OpenCode.
Senate is a complete multi-agent orchestration layer built natively for OpenCode. Every agent, skill, and workflow is designed for the OpenCode runtime — no wrappers, no compromises.
Configure once. Direct your agents. Watch the assembly work.
Senate is activated through natural language. Speak to it as you would a trusted colleague — the system routes your intent to the right specialist automatically.
Intelligent model routing ensures each task is handled by the right tier: Haiku for quick lookups, Sonnet for standard work, Opus for architecture.
"The senate does not merely deliberate — it executes. Where a single mind might hesitate, the assembly acts with coordinated purpose." — Senate Design Philosophy
Each mode is a distinct strategy — choose based on the nature of your task.
Relentless execution until the task is verified complete. Ralph never stops until the work is done and confirmed.
/ralph fix all TypeScript errorsFull autonomous execution from idea to working code. Ideal for end-to-end feature development with minimal guidance.
/autopilot build a REST APIMaximum parallel agent execution. Deploy burst parallelism for large refactors, fixes across multiple files, or time-critical work.
/ultrawork implement authN coordinated agents sharing a task list. Complex multi-step workflows benefit from a structured division of labour.
/team 3:executor "add feature X"QA cycling until the goal is met. Test, verify, fix, repeat — the system iterates until your quality bar is cleared.
/ultraqa verify all endpointsSocratic requirements gathering before execution. Exposes assumptions, scores ambiguity, and refuses to build until the spec is crystal clear.
/deep-interview "vague idea"Each agent masters a single domain. Together they govern the full spectrum of software creation.
Senate listens for intent. Speak naturally and the assembly activates the appropriate mode — no commands to memorize.
Senate persists state across sessions in .senate/ —
keeping mode state, session notes, project memory, and planning documents available across every conversation.
Two paths lead to Senate. Choose the one that suits your project.
# Clone Senate into your project git clone https://github.com/yadav-prakhar/opencode-senate.git .opencode-senate # Link to your project's .opencode directory ln -s .opencode-senate/.opencode .opencode
Senate will be available in this project only. The .opencode/ symlink integrates seamlessly with OpenCode's plugin discovery.
# Install globally npm install -g opencode-senate # Or install as a project dependency npm install opencode-senate
Global installation makes Senate available across all OpenCode projects on your machine.
// opencode.jsonc { "plugin": ["opencode-senate"], "instructions": ["AGENTS.md"], "skills": { "paths": ["./.opencode/skills"] } }
Add this to your project's opencode.jsonc to activate Senate. The plugin, instructions, and skill paths are loaded automatically.
.opencode/ ├── opencode.jsonc # Main configuration ├── AGENTS.md # Orchestration instructions ├── agent/ # 19 agent definitions │ ├── executor.md │ ├── architect.md │ └── ... ├── skills/ # 39 workflow skills │ ├── ralph/SKILL.md │ ├── autopilot/SKILL.md │ └── ... ├── command/ # Custom commands ├── tool/ # Custom tools └── plugins/ └── senate-plugin.ts # Hook system plugin .senate/ # Runtime state (auto-created) ├── state/ # Mode state files (JSON) ├── notepad.md # Session notes ├── project-memory.json # Cross-session knowledge └── plans/ # Planning documents
Open an OpenCode session and address the assembly.
/ralph fix all TypeScript errors /autopilot build a REST API for tasks /ultrawork implement auth in parallel /team 3:executor "add feature X" /ultraqa verify all endpoints
/plan refactor the auth module /ralplan redesign the API layer /deep-interview clarify requirements /trace why is the build failing /verify all acceptance criteria
/ask architect "design a queue system" /ask security-reviewer "audit auth" /ask test-engineer "improve coverage" /ask git-master "clean up history" /ask critic "challenge this design"
# No slash command needed "don't stop until the tests pass" "ultrawork these 5 refactors" "deep interview my requirements" "ultrathink this architecture" "cancel" — stops active mode