{"id":51055840,"url":"https://github.com/frap129/opencode-workflow","last_synced_at":"2026-06-22T21:01:28.046Z","repository":{"id":362556775,"uuid":"1253616301","full_name":"frap129/opencode-workflow","owner":"frap129","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-04T19:56:09.000Z","size":219,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-04T21:38:32.846Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/frap129.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-05-29T16:38:35.000Z","updated_at":"2026-06-04T19:56:16.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/frap129/opencode-workflow","commit_stats":null,"previous_names":["frap129/opencode-workflow"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/frap129/opencode-workflow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frap129%2Fopencode-workflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frap129%2Fopencode-workflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frap129%2Fopencode-workflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frap129%2Fopencode-workflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frap129","download_url":"https://codeload.github.com/frap129/opencode-workflow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frap129%2Fopencode-workflow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34665261,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-22T02:00:06.391Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-06-22T21:01:25.794Z","updated_at":"2026-06-22T21:01:28.030Z","avatar_url":"https://github.com/frap129.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# opencode-workflow\n\nA plugin for [opencode](https://opencode.ai) that adds a structured brainstorm-plan-implement workflow with specialized agents and artifact management.\n\n## Overview\n\nThis plugin introduces a three-phase development workflow, each backed by a dedicated agent with scoped tool access:\n\n1. **Brainstorm** (`/brainstorm`) — Explore ideas, gather context, and refine requirements into a spec\n2. **Plan** (`/plan`) — Turn an approved spec into a detailed, step-by-step implementation plan\n3. **Implement** (`/implement`) — Execute against an approved plan using focused subagents\n\nEach phase has its own primary agent with restricted tool permissions, ensuring agents stay focused on their role. Supporting subagents handle codebase exploration, research, implementation, and review tasks.\n\n## Agents\n\n| Agent | Mode | Role |\n|---|---|---|\n| `workflow-brainstorm` | primary | Requirements gathering and spec authoring |\n| `workflow-plan` | primary | Implementation planning from specs |\n| `workflow-implement` | primary | Plan execution via subagent delegation |\n| `workflow-explore` | subagent | Read-only codebase inspection |\n| `workflow-research` | subagent | Documentation and technical research |\n| `workflow-programmer` | subagent | Focused coding tasks |\n| `workflow-reviewer` | subagent | Structured artifact review |\n\nAgent files are auto-generated in `.opencode/agents/` on first use. Run `/workflow-init` to regenerate them after plugin updates.\n\n## Tools\n\n### Artifact tools\n- `read_spec` / `write_spec` — Read and write spec files in `.opencode/plans/`\n- `read_plan` / `write_plan` — Read and write plan files in `.opencode/plans/`\n\n### Artifact edit tools\n- `edit_spec` — Apply targeted edits to a spec file\n- `edit_plan` — Apply targeted edits to a plan file\n\n### Wrapper tools (dispatch subagent tasks)\n- `explore` — Dispatch codebase exploration to `workflow-explore`\n- `research` — Dispatch investigation to `workflow-research`\n- `programmer` — Dispatch implementation to `workflow-programmer`\n- `review_spec` — Dispatch spec review to `workflow-reviewer`\n- `review_plan` — Dispatch plan review to `workflow-reviewer`\n\n### Verification and review tools\n- `verify_spec_compliance` — Verify implementation against spec requirements\n- `code_review` — Dispatch structured code review to `workflow-reviewer`\n- `investigate` — Dispatch deep investigation tasks to `workflow-explore`\n\n## Installation\n\nAdd the plugin to your `opencode.jsonc`:\n\n```jsonc\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"plugin\": [\n    \"file://path/to/opencode-workflow/src/index.ts\"\n  ]\n}\n```\n\n## Development\n\n```bash\n# Install dependencies\nbun install\n\n# Run tests\nbun test\n\n# Type check\nbun x tsc --noEmit\n```\n\n## Artifact conventions\n\n- Spec files: `\u003cname\u003e-spec.md` in `.opencode/plans/`\n- Plan files: `\u003cname\u003e-plan.md` in `.opencode/plans/`\n- Filenames must start with a lowercase alphanumeric character and contain only `[a-z0-9._-]`\n\n## Optional: Hide workflow tools from non-workflow agents\n\nIf you want these workflow-specific tools to be unavailable by default outside the workflow agents created by this plugin, add the following to your global or project `opencode.jsonc`:\n\n```jsonc\n{\n  \"permission\": {\n    \"read_spec\": \"deny\",\n    \"write_spec\": \"deny\",\n    \"edit_spec\": \"deny\",\n    \"read_plan\": \"deny\",\n    \"write_plan\": \"deny\",\n    \"edit_plan\": \"deny\",\n    \"review_spec\": \"deny\",\n    \"review_plan\": \"deny\",\n    \"explore\": \"deny\",\n    \"research\": \"deny\",\n    \"programmer\": \"deny\",\n    \"verify_spec_compliance\": \"deny\",\n    \"code_review\": \"deny\",\n    \"investigate\": \"deny\"\n  }\n}\n```\n\nThe workflow agents generated by this plugin explicitly `allow` the tools they need, so those agent-specific rules override the global deny list.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrap129%2Fopencode-workflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrap129%2Fopencode-workflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrap129%2Fopencode-workflow/lists"}