{"id":47620178,"url":"https://github.com/marcel-tuinstra/opencode-council","last_synced_at":"2026-04-01T21:59:52.579Z","repository":{"id":336911327,"uuid":"1151628605","full_name":"marcel-tuinstra/opencode-council","owner":"marcel-tuinstra","description":"Structured multi-agent orchestration for OpenCode, with a supervisor/worktree foundation for staged parallel execution.","archived":false,"fork":false,"pushed_at":"2026-03-19T12:28:16.000Z","size":441,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-20T05:34:10.115Z","etag":null,"topics":["ai","multi-agent","opencode"],"latest_commit_sha":null,"homepage":"https://opencode.ai","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcel-tuinstra.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-06T17:46:47.000Z","updated_at":"2026-03-19T12:28:07.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/marcel-tuinstra/opencode-council","commit_stats":null,"previous_names":["marcel-tuinstra/opencode-agent-conversations","marcel-tuinstra/opencode-council"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/marcel-tuinstra/opencode-council","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcel-tuinstra%2Fopencode-council","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcel-tuinstra%2Fopencode-council/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcel-tuinstra%2Fopencode-council/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcel-tuinstra%2Fopencode-council/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcel-tuinstra","download_url":"https://codeload.github.com/marcel-tuinstra/opencode-council/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcel-tuinstra%2Fopencode-council/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31292631,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","multi-agent","opencode"],"created_at":"2026-04-01T21:59:51.568Z","updated_at":"2026-04-01T21:59:52.570Z","avatar_url":"https://github.com/marcel-tuinstra.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OpenCode Council\n\n[![CI](https://github.com/marcel-tuinstra/opencode-council/actions/workflows/ci.yml/badge.svg)](https://github.com/marcel-tuinstra/opencode-council/actions/workflows/ci.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](./LICENSE)\n[![Version](https://img.shields.io/badge/version-0.5.0-blue.svg)](https://github.com/marcel-tuinstra/opencode-council/releases)\n[![OpenCode Plugin](https://img.shields.io/badge/OpenCode-Plugin-green.svg)](https://github.com/sst/opencode)\n\n**AI agents that debate before they act.**\n\nMulti-agent orchestration for [OpenCode](https://github.com/sst/opencode) where specialized roles deliberate, challenge assumptions, and synthesize recommendations -- instead of blindly executing tasks.\n\n## Quick Start\n\n```bash\nnpx opencode-council init\n```\n\nOr without Node.js:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/marcel-tuinstra/opencode-council/main/install.sh | bash\n```\n\nRestart OpenCode, then try:\n\n```\n@cto @dev @pm Investigate why API latency regressed this week and propose a fix plan using sentry and github.\n```\n\n## What You Get\n\n| Capability | What it does |\n|---|---|\n| Mention-driven roles | `@cto @dev @pm` activates the agents you need |\n| Heartbeat phases | Frame, Challenge, Synthesize -- structured reasoning for 3+ roles |\n| Delegation mode | `@cto delegate [prompt]` -- lead agent plans and coordinates specialists |\n| MCP gating | Sentry, GitHub, Shortcut only activate when explicitly mentioned |\n| Governance | Budget limits, reason codes, and [policy profiles](./docs/guides/policy-profiles.md) |\n| 10 agents | CTO, CEO, PO, PM, DEV, FE, BE, UX, Research, Marketing ([personas](./agents/)) |\n\n## Stable Contract\n\nStarting in `v0.5.0`, the package root intentionally exposes a small stable runtime contract for consumers that build on the live orchestration plugin. The canonical compatibility and deprecation policy lives in [`docs/guides/compatibility-and-deprecations.md`](./docs/guides/compatibility-and-deprecations.md).\n\nThat document defines the stable root exports, CLI compatibility, documented env var and policy-key guarantees, and the deprecation/removal process for `v0.5.x`.\n\nSupervisor helpers and other pre-`v0.6.0` orchestration internals remain available under an experimental supervisor entry point instead of the root barrel.\n\n## Example\n\n```\n[1] CTO: We need to isolate whether this is compute saturation, query contention,\n    or an external dependency regression; start with p95/p99 breakdown and release\n    correlation.\n\n[2] DEV: I will inspect Sentry trace waterfalls for the hottest endpoint and map\n    spans to the last two deployment windows.\n\n[3] PM: I will prepare a rollback threshold, owner checklist, and a 48-hour\n    mitigation timeline.\n\n[4] CTO: Recommendation: run a short Sentry trace audit plus GitHub change diff\n    first, then commit to either rollback or targeted fix.\n```\n\nCTO frames the problem, DEV and PM challenge with their expertise, CTO synthesizes. That's the heartbeat model.\n\n## Manage Your Install\n\n```bash\nnpx opencode-council refresh     # Update to latest version\nnpx opencode-council verify      # Check install health\nnpx opencode-council uninstall   # Clean removal\n```\n\n## Roadmap\n\n**Now (v0.5.0):** Deliberative orchestration, delegation mode, MCP gating, budget governance, 10 agent personas, one-command install, and a defined compatibility policy for the stable runtime contract.\n\n**Next:** Governed parallel execution (supervisor mode) and async delegation with governance.\n\n## Documentation\n\n| | |\n|---|---|\n| Getting started | [Install](./docs/getting-started/install.md) / [Quick start](./docs/getting-started/quickstart.md) |\n| Upgrading | [Upgrade to v0.5.0](./docs/guides/upgrading-to-0.5.0.md) |\n| Compatibility | [Compatibility and deprecations](./docs/guides/compatibility-and-deprecations.md) |\n| Configuration | [Customization](./docs/guides/customization.md) / [Policy profiles](./docs/guides/policy-profiles.md) |\n| Architecture | [Overview](./docs/overview/architecture.md) / [Positioning](./docs/overview/product-positioning.md) |\n| Troubleshooting | [Local sync and agents](./docs/guides/local-sync-and-agents.md) |\n| Testing | [Guide](./docs/testing/testing.md) / [Role sanity](./docs/testing/role-sanity-script.md) |\n\n## Contributing\n\n```bash\nnpm install \u0026\u0026 npm test\n```\n\n197 tests, CI on every PR. See the [testing guide](./docs/testing/testing.md) for conventions.\n\n## Contact\n\n[marcel.tuinstra.dev](https://marcel.tuinstra.dev) / marcel@tuinstra.dev\n\n## License\n\nMIT. See [LICENSE](./LICENSE).\n\n---\n\n\u003csub\u003eIndependent community plugin for OpenCode. Not affiliated with or endorsed by the OpenCode project.\u003c/sub\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcel-tuinstra%2Fopencode-council","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcel-tuinstra%2Fopencode-council","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcel-tuinstra%2Fopencode-council/lists"}