feat(plugins): add devstack, a skills-only sprint plugin (init, plan, ship)
Links
- Plan and step 0 decisions:
plans/20261110-1846-devstack.md - Research: https://app.superset.sh/page/devstack-a-superset-native-gstack-research-qjfbzo
Summary
- Adds
plugins/devstack, a first-party plugin with only skills, shipped through the marketplace. It has three skills:devstack:init,devstack:plananddevstack:ship. planandshipare generic versions of the repo-localcreate-plan,create-pr,ci-checkandrespond-to-pr-commentscommands. Each repo sets its own values in.devstack/config.md.- Adds this repo's
.devstack/config.mdfor dogfooding: checks from CI, PRs assigned tosuperset-home, codex as reviewer.
Why / Context
Paradev has the primitives (workspaces, agents, pages, automations, the MCP proxy) but no opinionated workflow that runs them in order. devstack is that workflow: Frame → Plan → Fan-out → Review → Verify → Ship → Watch → Retro. This PR is steps 0 and 1 of the research plan. It records the decisions and promotes the commands we already use. The wedge skills (fanout, review) and retro follow in their own PRs (see the Work units in the plan).
Step 0 decisions (recommendations for review)
- Separate plugin, not part of the
supersetplugin. Thesupersetplugin is managed and always on; an opinionated workflow should be opt-in and versioned on its own tag. devstack composessuperset:orchestrateandsuperset:pageby name. - Skill names drop
dev-. Installed skills already carry the plugin name, sodev-planwould install asdevstack-dev-plan. The names are nowdevstack:plan,devstack-plan, and so on. - Artifacts.
.devstack/config.mdholds YAML frontmatter for skills and prose for people. A plan is an ExecPlan-style markdown file with a## Work unitsYAML block (id, title, depends_on, owns, acceptance, verify, role);fanoutreads that block. Workers reuse orchestrate'sSUPERSET_WORKER_DONEenvelope. - Agent per role comes from
rolesin the config. With no setting, review uses a different agent than the author. - Works without the CLI. Units run in order in one checkout, and markdown files replace pages.
- Linear first, with GitHub Issues as fallback.
shipnever merges. - The repo-local commands stay as they are until devstack is dogfooded.
How It Works
superset plugins create devstack --kind nonescaffolded the plugin. I then fixed the scaffold output: its$schemapointed atlocalhost:3002and itsiconwas not a built-in key, so the plugin now shipsassets/icon.svg.superset plugins publish devstackwrote the marketplace entry (0.1.0) and regeneratedmanifests.generated.ts.- Added a
devstackentry toPLUGIN_CATALOG;index.test.tsneeds one for every published manifest.
Testing
bun run check:plugins: All plugins are valid and published.superset plugins validate plugins/devstack: no problems.bun testinpackages/shared/src/plugins(23 pass),packages/trpcplugins and organization-plugins (197 pass), andpackages/cli/src/lib/plugins(54 pass).- Biome check on the changed files, and
tscforpackages/shared. - Dogfood: a fresh agent followed
devstack:planon theretrounit. Its Work units YAML parsed and had every field. I fixed the gaps it found in the skill text: unanswered questions, who owns the plan file, research units, sub-plans, the timestamp, and defaults.
Known Limitations
- I did not test a real install.
plugins installandmarketplace addare turned off in cloud sandboxes (sandbox: false), and this PR was made in one. Someone needs to runsuperset plugins install devstackon a desktop machine before release. - 0.1.0 becomes public on merge. Merging tags
devstack@0.1.0, and the plugin then shows on the marketing marketplace page and in the desktop Plugins page with three of the eight skills. If we want to dogfood first, I can removeversionfrom the marketplace entry. An unreleased entry stays out of the generated bundle. - No desktop
PluginIconbuilt-in yet: before install the plugin shows the generic puzzle icon, and after install it shows the icon it ships.
Follow-ups
devstack:fanout+devstack:review(the wedge), thenretro, thenqa+watch.- Point
create-plan/create-prat the devstack skills once they are proven.
Summary by cubic
Adds plugins/devstack, a first-party skills-only plugin that runs an agent sprint: devstack:init writes a per-repo .devstack/config.md, devstack:plan writes a plan split into independent work units, and devstack:ship takes a branch to a green, reviewed PR — resuming an existing PR for the branch when one is open, then triaging CI and addressing review findings. It generalizes the repo-local create-plan, create-pr, ci-check and respond-to-pr-comments commands, and dogfoods the plugin with this repo's own .devstack/config.md. The plan in plans/20261110-1846-devstack.md records step 0 decisions and the remaining units (fanout, review, retro, qa, watch).
Known Limitations
- Merging tags
devstack@0.1.0and makes the plugin public with three of the eight planned skills; removingversionfrom the marketplace entry would keep it unreleased. - Install was not tested —
plugins installandmarketplace addare disabled in cloud sandboxes, so someone needs to runsuperset plugins install devstackon a desktop machine before release.
Summary by CodeRabbit
- New Features
- Added the Devstack plugin to the marketplace, with
init,plan, andshipskills for configuring a repository, preparing an implementation plan, and taking a branch through checks and pull-request review. - Added Devstack’s layered icon to plugin listings.
- Added the Devstack plugin to the marketplace, with
- Documentation
- Added guidance for repository settings, planning and approval, checks, tracker integration, agent roles, and pull-request defaults. The shipping workflow covers existing pull requests, CI results, and review feedback.