Version 3.9.0 ships the twenty skills below. They always invoke as /devstride:<name>, including when the plugin was installed through the shorter ds@devstride marketplace entry.
Each skill file states a goal, the rules that must hold, and its hard floors, rather than a numbered script. The descriptions below say what each one guarantees.
| Skill | Invocation | What it does |
|---|---|---|
plan | /devstride:plan <parent-item> [description] [profile] | Interactively shapes a grouping item → release unit → leaf roadmap, writes approved items and dependencies, rationalizes dates, and numbers the execution order. Reads the existing plan first. |
comprehend-plan | /devstride:comprehend-plan <item> [focus question] | Reads the complete descendant tree, descriptions, comments, status, and dependencies. Strictly read-only. |
insert-story | /devstride:insert-story [parent-item] <description> | Creates one Story and splices it into an existing plan’s dependency order. It does not build the code. |
insert-defect | /devstride:insert-defect [parent-item] <description> | Creates and splices one Defect. It asks before moving an urgent defect ahead of the normal next item. |
rationalize-gantt | /devstride:rationalize-gantt <plan-root> | Recomputes a synthetic one-day-per-leaf timeline and reviews invalid dependency edges. It overwrites selected dates and may remove or repoint edges. |
rebalance | /devstride:rebalance <plan-root> <profile> | Re-slices a live plan’s not-started leaves to a new delivery profile, sizing the successors to that profile’s leaf size, after you approve a before/after table. Archives absorbed originals with a pointer, rewires dependencies, numbers successors with the splice convention, rewrites the root marker, then re-dates not-done items. Refuses to run while a build loop is active on the plan. |
Planning writes to the connected DevStride organization except for comprehend-plan. None of these skills writes repository code.
| Skill | Invocation | What it does |
|---|---|---|
build-item | /devstride:build-item [item | next | next under I#### | plan-root] | Orchestrates selection, status, branch, build, review, merge, completion, and release-unit closeout for one leaf. Empty means next. |
create-story | /devstride:create-story <description> | Creates, places, assigns, and delivers one standalone Story — onto the support train when one is configured, else by its own pull request. No plan numbering or dependency splice. |
create-defect | /devstride:create-defect <description> | Creates, places, assigns, and delivers one standalone Defect. |
branch-feature | /devstride:branch-feature <branch-name> | Creates and pushes a feature branch from the resolved working base, dated with branchNaming.dateFormat. Stops on a dirty tree. |
branch-hotfix | /devstride:branch-hotfix <branch-name> | Creates a hotfix branch from a fresh production branch, dated with branchNaming.dateFormat like a feature branch. It does not open the pull request. |
ultracode-build | /devstride:ultracode-build <item> <scope> | Understands, implements, tests, commits, and adversarially reviews one item. It does not open or merge a pull request. |
pr | /devstride:pr [item] | Opens the pull request, requests configured cloud reviewers, delegates review and CI settlement, runs matching local pre-ship checks, and optionally links the item. |
review | /devstride:review [PR#] | Resolves the configured roster, verifies and settles findings, writes qualifying lessons, releases draft-held CI, and requires green at the final head commit. Also has local-only and pre-ship-resume modes for callers. |
push | /devstride:push | Stages intended tracked and named new files, commits, runs configured typechecks, and pushes. It never opens a pull request. |
release | /devstride:release [--release-notes true|draft] [no docs | docs only | release-notes only] | Merges the support train first when configured, cuts the release branch when release.releaseBranchPattern is set, and prepares the production pull request, review, local release checks and CI; asks the owner before the production merge; then updates documentation through your local docs skill by default and writes a release note only on --release-notes, both after the deploy is confirmed. |
build-item chooses between two delivery shapes:
skills/build-item/scripts/routing.py makes that decision, and anything else (Codex, a script, a person) can run it and get the same answer.| Skill | Invocation | What it does |
|---|---|---|
setup | /devstride:setup [validate | ecosystem | verify | ci-inspect | branches | engines | docs | ci] | Detects repository settings, confirms DevStride hierarchy roles, writes .claude/ds-config.json, and validates it. It also offers the scaffolded docs skills and a repository status line, and CI workflow diffs in setup ci. validate and detector-only runs write nothing. |
doctor | /devstride:doctor [env | plugin | devstride | config | ci | gates | docs] | Inspects the installation, connection, config, effective branch roles, CI ordering, and merge gates. It suggests existing remote branches when static fallbacks do not resolve. Diagnosis is read-only; it then offers the repairs that are safe to automate as one batch and re-verifies each. Invoked non-interactively it repairs nothing. |
ci-audit | /devstride:ci-audit [days] [workflow] | Measures what CI actually costs over a window: executed runs per pull request per workflow (the design is one each), post-merge push minutes, release pull requests re-run by a moving base, and the named offenders with their likely cause. Read-only. |
update | /devstride:update | Updates the exact plugin installation that loaded the command, verifies the installed copy against the published tag, and says whether /reload-plugins is enough or a restart is needed. Stops rather than guessing when an install is pinned, administrator-managed, unbound, or ambiguous. |
| Situation | Use |
|---|---|
| No buildable roadmap exists | plan |
| You need to understand a plan before changing it | comprehend-plan |
| New work belongs in a sequenced plan | insert-story or insert-defect |
| New work is an unplanned, standalone request | create-story or create-defect |
| The item already exists and should ship | build-item |
| A production fix must start from production code | branch-hotfix, then build and pr |
| The release source is ready for production | release |
| A running plan is taking far too long per item | rebalance |
| The loop behaves unexpectedly, or config changed | doctor — safe to re-run any time |
| The plugin is behind the newest release | update |