dna sdlc¶
Declarative lifecycle tracking (Roadmap/Epic/Feature/Story/Issue).
Generated from the command definitions
This page is introspected from the dna Click command tree by
scripts/gen_cli_docs.py, so it stays in lockstep with
dna sdlc --help.
dna sdlc adr¶
ADR-level operations (Architecture Decision Records).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc adr accept¶
Mark ADR status: accepted; stamp accepted_at.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc adr create¶
Create a new ADR.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Markdown body (→ spec.body / ADR.md). |
--consequences |
Trade-offs that follow (→ spec.consequences). |
--context |
WHY we needed to decide (→ spec.context). |
--decision |
WHAT we decided (→ spec.decision). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: proposed) |
--title |
Decision headline (→ spec.title). |
dna sdlc adr deprecate¶
Mark ADR status: deprecated.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc adr propose¶
Mark ADR status: proposed.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc adr supersede¶
Mark ADR status: superseded by another ADR.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--by |
ADR name that supersedes this one (→ spec.superseded_by). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc artifact¶
Manage HtmlArtifacts — HTML pages as first-class work-item outputs.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc artifact create¶
Create an HtmlArtifact from an HTML file: dna sdlc artifact create
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--description |
Short description (promoted to metadata). |
--from |
Path to the .html file to store (read byte-faithful). |
--help |
Show this message and exit. |
--published-url |
Canonical hosted URL (e.g. a claude.ai artifact link) — the gallery renders it as a clickable link. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--source |
Provenance/context (e.g. 'design doc do épico e-dna-dx'). |
--title |
Human title for the artifact. |
dna sdlc artifact list¶
List HtmlArtifacts in a scope.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc artifact show¶
Show an HtmlArtifact's metadata (or --html to dump the raw HTML).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--html |
Print the raw HTML to stdout. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc backfill¶
Back-fill Spec/Plan docs from a directory of markdown files.
File naming convention: YYYY-MM-DD-<slug>.md extracts the date.
Title is the first # Heading line. Status is parsed from
**Status**: X if present, else uses --default-status.
Authors from **Author**: A, B if present.
PATTERN is the spec-driven methodology label (free-form): superpowers, bmad, droid, rfc, adr, custom.
Arguments
| Argument | Required |
|---|---|
PATTERN |
yes |
Options
| Option | Description |
|---|---|
--default-status |
(default: accepted) |
--dry-run |
Preview without writing. |
--from |
Directory containing markdown files to back-fill from. |
--help |
Show this message and exit. |
--kind |
Generate Spec or Plan docs (auto: infer from path — specs/ → Spec, plans/ → Plan). (default: auto) |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc backfill-dates¶
Stamp the dates an instance was filed without.
Repairs created_at / updated_at on every board Kind a read surface
dates by (the digest's windows, the derived journey, recency sorts), taking
the value from the instance's own timeline, else from the commit that added
its file. Instances with neither are LEFT ALONE and listed — inventing
"now" would date them all as filed today and skew every digest window from
here on. Idempotent; --dry-run previews.
Options
| Option | Description |
|---|---|
--dry-run |
Report what would be stamped, write nothing. |
--help |
Show this message and exit. |
--kind |
Repair a single Kind (default: every Kind that a read surface dates — see DATED_SPEC_FIELDS). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc brief¶
Session-start briefing — one screen with everything the next session needs to bootstrap context: in-progress work, open spikes, recent AgentSessions, recent Engram, and open high/critical Issues.
The cross-session "recall in" command: run it at the START of a session
(yours or another agent's) instead of current + session list +
remember separately. Read-only.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
Structured output for programmatic use. |
--limit |
Max items in the recent-sessions / recent-lessons sections. (default: 5) |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc bug¶
Bug-level operations (factual defects with severity).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc bug create¶
File a new Bug.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Markdown body (→ spec.body / BUG.md). |
--desc |
One-line description (→ spec.description; derives title). |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--owner |
|
--related-feature |
Feature name (→ spec.related_feature). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--severity |
(default: medium) |
--status |
(default: open) |
--steps |
Comma-separated repro steps (→ spec.repro_steps). |
dna sdlc bug regress¶
Mark Bug status: regression (reopened defect).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc bug resolve¶
Mark Bug status: resolved; stamp closed_at.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--resolution |
How was it resolved? (timeline summary). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc bug start¶
Mark Bug status: in-progress.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc bug triage¶
Mark Bug status: triaged.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc bug wontfix¶
Mark Bug status: wont-fix.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc changelog¶
Release notes per scope (Keep a Changelog + SemVer).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc changelog release¶
Cut a SemVer release: stamp [Unreleased] as
Options
| Option | Description |
|---|---|
--added |
Keep-a-Changelog 'added' entry (repeatable). |
--changed |
Keep-a-Changelog 'changed' entry (repeatable). |
--deprecated |
Keep-a-Changelog 'deprecated' entry (repeatable). |
--fixed |
Keep-a-Changelog 'fixed' entry (repeatable). |
--help |
Show this message and exit. |
--removed |
Keep-a-Changelog 'removed' entry (repeatable). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--security |
Keep-a-Changelog 'security' entry (repeatable). |
--version |
SemVer for this release (e.g. 1.4.0). |
dna sdlc changelog show¶
Render the scope's changelog (releases, newest first).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc changelog unreleased¶
Accumulate changes under [Unreleased] (cut later with release).
Options
| Option | Description |
|---|---|
--added |
Keep-a-Changelog 'added' entry (repeatable). |
--changed |
Keep-a-Changelog 'changed' entry (repeatable). |
--deprecated |
Keep-a-Changelog 'deprecated' entry (repeatable). |
--fixed |
Keep-a-Changelog 'fixed' entry (repeatable). |
--help |
Show this message and exit. |
--removed |
Keep-a-Changelog 'removed' entry (repeatable). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--security |
Keep-a-Changelog 'security' entry (repeatable). |
dna sdlc cite¶
Bidirectional citation between any two Kinds.
CITED is the source that grounds the caller — <Kind>/<name> (e.g.
Research/dna-portability or ADR/0007) or a bare <name> that
defaults to a Reference. Adds cited to caller.spec.references AND
adds the caller ref to the cited doc's spec.cited_by (the back-ref).
cite = a source that FUNDAMENTA the work; produces = an output the
work AUTHORED. Any Kind with a flexible spec gains cited_by on the
cited side and references on the caller side.
Arguments
| Argument | Required |
|---|---|
CITED |
yes |
Options
| Option | Description |
|---|---|
--from |
Kind/name of the doc that cites this source (e.g. ADR/0007-emit). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc current¶
Show every SDLC doc currently in-progress (across Stories, Features, Epics, Issues). Designed for one-line surface in Claude Code chat — pipe the IDs into the Studio search (⌘K) to confirm visually.
Output format (compact, copy-paste-friendly):
🚧 in-progress now (scope: my-board)
📖 s-vibe-commit-trace "Studio commit_ref link..."
🚀 f-activity-timeline "Activity Timeline..."
With --json returns a structured list for programmatic use.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc demand¶
Open a demand: Story + journey-discover + status=in-progress, atomic.
The single entry point the agent's dna-demand-flow skill uses to
file new work. Equivalent to running story create → story start
→ journey enter discover in one shot, with consistent IDs and a
single timestamp for the trail across Board / Journey.
Arguments
| Argument | Required |
|---|---|
TITLE |
yes |
Options
| Option | Description |
|---|---|
--accept |
Acceptance criterion (repeatable). One bullet per --accept. |
--artifact |
Optional path/URL to a methodology artifact (e.g. spec/plan). |
--as |
User-story 'As a |
--consult |
Consult the Tático oracle before creating the Story. Surfaces divergence between user intent and pattern the system observes — doesn't block. |
--desc |
Multi-line description. Defaults to TITLE if omitted. |
--dod |
Definition-of-Done check (repeatable). One bullet per --dod. |
--epic |
Auto-create the Feature under this Epic if missing (else fails loud). |
--feature |
Parent Feature name (must exist in scope). |
--help |
Show this message and exit. |
--json |
Emit machine-readable JSON with the created IDs. |
--methodology |
Method the agent will follow. (default: superpowers) |
--owner |
(default: claude-code) |
--priority |
|
--reporter |
Who filed the demand (defaults to actor). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--slug |
Force a specific Story slug (auto-derived from title otherwise). |
--so-that |
User-story 'so that |
--want |
User-story 'I want |
dna sdlc digest¶
Retrospectiva: o que aconteceu enquanto você estava fora.
O inverso do brief/next/current — estes olham PRA FRENTE ("o que
fazer a seguir"); o digest olha PRA TRÁS ("o que já aconteceu"). É a
superfície de quem DELEGA e revisa no fim, em vez de acompanhar o board ao
vivo.
Agrega os eventos das timelines de todos os work items numa janela
(--since) e agrupa em Concluído / Decidido / Achado / Precisa de
você — a seção Precisa de você (blocked, stories em review, decisões
do dono, perguntas abertas) vem primeiro, porque é o que o delegador
quer ver. Com --save o digest vira um StatusReport queryável depois.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
Saída estruturada (o dict do agregador). |
--save |
Persiste o digest como StatusReport 'digest-' (durável + queryável via dna cognitive search/recall). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--since |
Janela para trás: ISO-8601, um span (24h/3d/2w) ou 'last-digest' (desde o último digest salvo). Default: 24h. |
dna sdlc epic¶
Epic-level operations (Jira/ADO terminology; was 'milestone' in v1.2).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc epic create¶
Create a new Epic.
Closes the last CRUD gap in the SDLC CLI (s-dx-epic-create): Story and
Feature had create, but an Epic had to be hand-authored via dna instance
apply — an asymmetry the DX epic (e-dna-dx) exists to kill. Mirrors
feature create: same envelope, same write path (kernel.write_instance),
same initial-timeline event. Unlike story create, no --ac/--dod guard —
Epics are roadmap nouns; exit criteria live at the Story level.
Example: dna sdlc epic create e-dna-dx \ --title "DNA developer experience" \ --desc "Collapse the consumer's prompt plumbing to a one-liner." \ --status in-progress --priority high --labels dx,sdk,dogfood
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--business-value |
WSJF-style scalar (0-1000) — drives roadmap sort. |
--desc |
Multi-line description of the Epic's scope. |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--priority |
|
--reporter |
Actor who filed it. Defaults to DNA_CLI_REPORTER env or 'claude-code'. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: planning) |
--title |
Short title shown on roadmap cards. |
dna sdlc epic ship¶
Mark Epic status: done, set closed_at, cascade-close Features whose Stories all done.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc epic show¶
Show Epic burndown — features + stories with status counts.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc epic-reopen¶
Reopen a closed Epic — flip status back to planning.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why reopen? (default: reopened) |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--to |
Status to flip back to (default: planning). (default: planning) |
dna sdlc extract-decisions¶
Walk every Story / Feature / Epic / Issue timeline + promote pre-existing comments that look like decisions. Pure regex — zero LLM cost. Idempotent: events already typed as 'decision' or 'status_change' are untouched.
Useful pra retroativamente capturar o "porquê" das decisões que
foram comentadas como comment em vez de decision durante a
sessão. Output: rows for each promoted event, then a count.
Options
| Option | Description |
|---|---|
--dry-run |
Print matches but don't write. |
--help |
Show this message and exit. |
--scope |
Scope to walk (default: env / sole scope). |
dna sdlc feature¶
Feature-level operations.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc feature cancel¶
Mark a Feature as cancelled with an explicit reason. Used when scope shifts and the Feature won't ship — preserves the historical intent while closing the open-work loop.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why is the Feature cancelled? |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc feature create¶
Create a new Feature.
P4 of f-multi-role followups (s-sdlc-feature-create-cli, 2026-05-16).
Closes the gap where Stories had full CRUD via CLI but Features
required manual YAML editing. Unlike story create, no --ac/--dod
guard — Features are roadmap nouns, AC + DoD live at the Story
level.
Example: dna sdlc feature create f-eval-experiment-pattern \ --title "Eval Lab → Experiment (Braintrust pattern)" \ --desc "Promote draft to immutable EvalExperiment + diff view." \ --priority high --business-value 850 \ --labels eval,braintrust-pattern
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--business-value |
WSJF-style scalar (0-1000) — drives roadmap sort. |
--desc |
Multi-line description of the Feature's scope. |
--epic |
Optional parent Epic name (for hierarchy). |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--owner |
|
--priority |
|
--reporter |
Actor who filed it. Defaults to DNA_CLI_REPORTER env or 'claude-code'. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: discovery) |
--target-milestone |
Milestone name this Feature is scheduled into. |
--target-package |
Owner/name of the Genome this Feature targets (for the per-Genome roadmap widget). |
--title |
Short title shown on roadmap cards. |
dna sdlc feature narrate-all¶
Seed Feature.spec.narrative_line deterministically across
every Feature that lacks one. Walks children Stories per Feature
and synthesizes a Portuguese past-tense summary. Zero LLM cost.
Default: skip Features that already have a narrative_line (avoid clobbering hand-curated prose). Pass --overwrite to re-seed everything.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--only-empty |
Only update Features without an existing narrative_line. |
--overwrite |
Force overwrite even if Feature already has a narrative_line. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc feature narrative¶
Update Feature.spec.narrative_line — agent-curated 1-sentence semantic summary shown next to the Feature in Studio's narrative swimlane. Past-tense voice ("agent shipou X, descobriu Y").
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--line |
One-sentence prose summary of what this Feature has been DOING. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc feature reopen¶
Reopen a closed/cancelled Feature — flip status back to discovery (or specified). Mirror of feature cancel.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why reopen? (default: reopened) |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--to |
Status to flip back to (default: discovery). (default: discovery) |
dna sdlc feature ship¶
Cascade-close a Feature: verify all children Stories are done,
then flip status to done + auto-stamp commit_ref + summary
in the timeline. Mirrors epic ship semantics.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--allow-no-produces |
Silencia o warn de outputs vazios (produces[] + back-refs). |
--commit-ref |
Git SHA shipped with this Feature. Auto-detected from HEAD when omitted. |
--force |
Mark done even when children Stories aren't all done. |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--serves |
Que Spec esta entrega SERVE (repetível): Spec/<nome>, <nome>, ou none para afirmar que não serve nenhuma. Grava a citação bidirecional (references ↔ cited_by) — que é de onde a execução da Spec é DERIVADA (i-117). |
--summary |
One-line description (lands on the timeline event). |
dna sdlc feature show¶
Show Feature detail — header + child-Story rollup (status counts + list).
Mirrors epic show (i-041) — without it, agents fell back to reading raw
YAML to understand a Feature's state.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc feature start¶
Move a Feature discovery → in-development (read-modify-write).
Unlike feature create (a full overwrite that would clobber the doc),
this preserves every other field (description, epic, priority,
business_value, labels, …) and stamps a status_change event. Use it
when work has clearly started on a Feature still parked in discovery.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc gallery¶
Painel board-native dos HtmlArtifacts pra revisar.
Irmão do digest. O digest mostra o que aconteceu (eventos das
timelines); o gallery mostra os artefatos visuais pra revisar (os
HtmlArtifact do board), agrupados pelo status do work item que os
produziu (via produces[] / back-ref):
👀 Precisa de avaliação — Story em review / com PR aberto 🧭 Decisões — produzidos por um ADR ✅ Shipado — work item em status terminal 📈 Em andamento — work item ainda em curso 📎 Sem work item — órfão no board
Board-native: o índice é gerado do board, então está sempre atual —
mata o "publico artifacts soltos no chat e o dono tem que caçar".
Com --html <out> vira UM arquivo navegável (self-contained, sem CDN)
que o delegador abre pra revisar.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--html |
Gera UM arquivo HTML self-contained (cards por artifact, chip de status, link publicado) — o painel que o dono abre. |
--json |
Saída estruturada (o dict do agregador build_gallery). |
--open |
Abre o HTML gerado no browser (implica --html se ausente, usando um arquivo temporário). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc hooks¶
Git hooks that close the git↔SDLC loop (Work-Item trailers).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc hooks install¶
Wire the repo's versioned hooks dir into this clone.
Sets git config core.hooksPath scripts/git-hooks — from then on
every git commit runs the versioned prepare-commit-msg, which
stamps Work-Item: + the dna-sdlc[bot] provenance trailer whenever
a Story is active (dna sdlc story start).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc hooks status¶
Show the symbiosis wiring: hooksPath, hook file, active story, coauthor.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc hooks uninstall¶
Remove the core.hooksPath wiring (git falls back to .git/hooks).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc initiative¶
Initiative-level operations (1-2 quarter investment unit).
Atlassian Jira Align hierarchy: Theme/OKR → Initiative → Epic → Feature → Story → Task. For roadmaps where Epic is granular too far for C-level strategy review.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc initiative cancel¶
Cancel an Initiative with a reason.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Short cancel reason (mandatory). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc initiative create¶
Create a new Initiative.
Example: dna sdlc initiative create i-design-system-overhaul-20260526 \ --title "DNA Studio Design System Overhaul" \ --desc "Theme Kind + 22 viewers + Cmd+K + cross-device sync." \ --status done \ --epic e-helix-extras --epic e-theme-system \ --outcome-metric "Studio usability score" \ --target-value "5 Features done · 26 Stories" \ --priority highest --business-value 850
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--business-value |
WSJF-style scalar 0-1000 — drives roadmap sort. |
--desc |
Multi-paragraph description of the Initiative goal. |
--epic |
Epic name this Initiative groups. Repeatable. |
--help |
Show this message and exit. |
--horizon-end |
End of horizon, ISO date. |
--horizon-start |
Start of horizon, ISO date (e.g. 2026-Q3 start). |
--labels |
Comma-separated labels. |
--outcome-metric |
The KR / metric this initiative is targeted at. |
--owner |
Actor name accountable (typically PM or Product Lead). |
--priority |
Board priority. |
--reporter |
Actor who filed it. Defaults to DNA_CLI_REPORTER or claude-code. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: proposed) |
--target-value |
e.g. '+30% MAU' or '<200ms p95'. |
--theme-ref |
Optional Theme/OKR Objective slug (upstream OKR). |
--title |
Headline shown on roadmap / cards. |
dna sdlc initiative ship¶
Mark an Initiative as done.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc issue¶
Issue-level operations.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc issue comment¶
Append a finding / decision to an Issue timeline without changing status.
Mirrors story comment / spike comment — bugs accrue investigation notes
+ root-cause decisions over their arc (report→triage→fix→resolve), and that
running trail belongs on the timeline (the FOCUS feed + audit), not only in
the final resolve resolution text.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
The comment / finding / decision text. |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--type |
Defaults to 'comment'; decision-shaped bodies auto-promote. |
dna sdlc issue file¶
File a new Issue with auto-incremented i-NNN-
Options
| Option | Description |
|---|---|
--desc |
|
--help |
Show this message and exit. |
--owner |
|
--related-feature |
Feature name (optional). |
--related-finding |
Finding name (optional, eval-derived). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--severity |
(default: medium) |
--slug |
Short kebab-case slug, e.g. 'date-postgres-bug'. |
--title |
Short Jira-style title shown on cards. Omitted from the doc when absent — every read surface already falls back to --desc. |
--type |
(default: bug) |
dna sdlc issue import¶
Import a GitHub issue as an Issue doc (#N, N or the URL).
Nome segue a convenção do board (i-NNN-<slug-do-título> no
próximo número livre). Labels→type/severity por heurística simples
(documentada em _github_bridge); reporter = autor GitHub;
proveniência (github_number/url/state/synced_at) preenchida.
Idempotente: um doc já bridged pra essa issue vence.
Arguments
| Argument | Required |
|---|---|
REF |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--repo |
GitHub repo 'owner/name' (default: derivado do remote origin). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc issue publish¶
Publish the Issue to GitHub — gh issue create born FROM the doc.
Title <título> (<i-x>); body = description + type/severity + link
pro doc no repo + footer 🧬 de atribuição. Grava github_number/url/
state/synced_at de volta no doc (proveniência). Idempotente: doc já
publicado só mostra o link.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--dry-run |
Só imprime title + body montados; não chama gh. |
--help |
Show this message and exit. |
--repo |
GitHub repo 'owner/name' (default: derivado do remote origin). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc issue resolve¶
Mark Issue status: resolved, set closed_at + optional resolution text.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--allow-no-produces |
Silencia o warn de outputs vazios (produces[] + back-refs). |
--help |
Show this message and exit. |
--resolution |
How was it resolved? |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--serves |
Que Spec esta entrega SERVE (repetível): Spec/<nome>, <nome>, ou none para afirmar que não serve nenhuma. Grava a citação bidirecional (references ↔ cited_by) — que é de onde a execução da Spec é DERIVADA (i-117). |
dna sdlc issue start¶
Mark Issue status: in-progress.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc issue sync¶
Refresh github_state from the remote twin.
Fechada lá → além do refresh, deixa uma nota na timeline local (o board fica sabendo sem ninguém vigiar o GitHub). Não mexe no status local — decidir se "closed no GitHub" vira "resolved" é triage humana.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--repo |
GitHub repo 'owner/name' (default: derivado do remote origin). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc issue triage¶
Mark Issue status: triaged.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc journey¶
Phase-aware journey ledger — additive over Superpowers/BMAD/Spec Kit.
Records the trail from idea→ship as a sequence of WorkflowEvent
docs pinned to (phase, artifact) pairs. Companion to the Skill at
.claude/skills/dna-journey/SKILL.md.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc journey close-cycle¶
Close the current cycle and open the next discover, seeded with the prior reflect's lessons.
The ouroboros bite — reflect feeds discover. After this command,
the next dna sdlc journey transition calls will operate on
cycle N+1.
Resolution: looks up the latest reflect entry for
parent_ref. Pulls its referenced Narrative (paragraphs +
decisions + open_items) when available; falls back to the entry
summary. Prints the seed and (unless --show-only) writes a new
discover entry with seed_from set.
Arguments
| Argument | Required |
|---|---|
PARENT_REF |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--next-summary |
Optional summary for the new discover entry. |
--no-narrative |
Skip the auto-Narrative synthesis. By default a retro Narrative is written summarizing the closed cycle. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--show-only |
Print the seed prompt to stdout without writing a new entry. Useful for previewing. |
dna sdlc journey current¶
Show the latest open WorkflowEvent. Without --parent, shows the latest open entry across the whole scope.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--parent |
Filter to a specific anchor doc. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc journey enter¶
Open a new WorkflowEvent pinning a doc to a phase. The previous
entry for this parent (if any) gets ended_at stamped.
Arguments
| Argument | Required |
|---|---|
PHASE |
yes |
Options
| Option | Description |
|---|---|
--artifact |
External methodology artifact path/URL (e.g. docs/superpowers/plans/foo-plan.md). |
--force |
Override methodology gates. Requires --reason for honest justification. |
--help |
Show this message and exit. |
--methodology |
(default: ad-hoc) |
--parent |
Anchor doc (Feature/f-X or Epic/e-X) grouping siblings. |
--reason |
Reason for --force override. Stored in entry.spec.force_reason for audit. |
--ref |
Doc representing this phase (Kind/name, e.g. Plan/foo). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--skip-from |
Previous phase you skipped to land here (honest about cut corners, e.g. --skip-from discover). |
--summary |
1-2 sentence note about what's happening here. |
dna sdlc journey list¶
List the full trajectory (oldest first) for a parent ref. Useful to see "how did we get here" for a Feature/Epic.
For a Story/<name> parent the trajectory is DERIVED server-side
(s-journey-derived) from the Story's own state + linked artifacts —
the same computation the Studio bar renders. Feature/Epic parents
still list explicit WorkflowEvents (methodology ledger).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
|
--parent |
Anchor doc to show the trajectory of. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc journey transition¶
Close the current entry for --parent and open one in
next_phase. Sugar over journey enter that auto-fills
skip_from + transitioned_from from the previous entry. Pass
--skip-from explicitly to widen the skip range beyond the
prev entry's phase.
Arguments
| Argument | Required |
|---|---|
NEXT_PHASE |
yes |
Options
| Option | Description |
|---|---|
--artifact |
|
--auto-stub |
Generate a Plan doc stub at docs/superpowers/plans/ |
--force |
Override methodology gates. Requires --reason. |
--help |
Show this message and exit. |
--inline |
Inline plan text (1-3 lines describing the sequence). Stored in entry.inline_plan — cheap alternative to writing a full Plan doc. Use for small demands. |
--keep-ref |
Reuse the previous entry's ref for the next entry. |
--methodology |
(default: ad-hoc) |
--parent |
Anchor doc grouping siblings (must match the open entry). |
--reason |
Reason for --force override. Stored in entry.spec.force_reason for audit. |
--ref |
Doc representing the NEXT phase. Defaults to previous entry's ref if --keep-ref. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--skip-from |
Override the auto-detected skip-from phase. Use when you want to mark MORE skipped phases than the prev entry implies (e.g. honest self-assessment of cut corners). By default, skipped_phases is computed from prev_phase → next_phase. |
--summary |
dna sdlc kaizen¶
Kaizen — observação de melhoria contínua (arco observed→routed→resolved).
Forma histórica dna sdlc kaizen <wi> --body "…" continua valendo
(alias do subcomando flag).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc kaizen flag¶
Post a kaizen event onto a work item's timeline AND create
the first-class Kaizen doc twin (s-kaizen-kind).
A flagged kaizen observation shows up live in the FOCUS feed (the
kaizen event-type is part of the unified feed). Does NOT change the
work item's status — it's a running improvement note, optionally linking
the Issue/Story that tracks the fix.
Dual-write: the observation is ALSO persisted as a Kaizen doc
(kz-NNN-<slug>, record plane) so the improvement backlog is
queryable + semantically searchable; the timeline event carries a
kaizen_doc ref back to it.
<work_item> accepts Kind/slug (e.g. Story/s-x, Issue/i-1)
or a bare slug, which is treated as a Story.
Arguments
| Argument | Required |
|---|---|
WORK_ITEM |
yes |
Options
| Option | Description |
|---|---|
--body |
The kaizen observation (lands on the timeline event). |
--help |
Show this message and exit. |
--issue |
Optional Issue/Story slug that captured the improvement (e.g. i-042). Linked on the event so it's traceable. |
--label |
Free-form theme tag (repeatable). Lands on the Kaizen doc and is weighted into semantic-search source text. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc kaizen resolve¶
Mark Kaizen status: resolved (fix shipped).
Transição válida a partir de observed ou routed.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc kaizen route¶
Mark Kaizen status: routed (um Issue/Story rastreia o fix).
Transição válida só a partir de observed (arco do descriptor:
observed → routed → resolved). Grava issue no doc.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--issue |
Issue/Story slug que rastreia o fix (e.g. i-042). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc list¶
Tabular list of SDLC docs filtered by status/owner/parent ref.
Arguments
| Argument | Required |
|---|---|
KIND |
yes |
Options
| Option | Description |
|---|---|
--epic |
Filter Features by spec.epic. |
--feature |
Filter Stories by spec.feature. |
--help |
Show this message and exit. |
--json |
|
--owner |
Filter by spec.owner. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
Filter by spec.status. |
dna sdlc narrative¶
Project narrative — write cadence reminders + scaffold helpers.
The Narrative Kind itself is created via dna instance apply against
a NARRATIVE.md bundle (the canonical write path). These commands
are the operator-side ergonomics: telling you when the last one
was written, what's pending since then, and stubbing out the next
one so the friction to write is low.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc narrative add-decision¶
Append a structured decision to an existing Narrative. The
decision goes into spec.decisions[] so Studio renders it in the
yellow callout strip, not just in body markdown.
Use this AT REFLECT TIME (or right after close-cycle) to capture the WHY of choices the cycle made.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--decision |
1-sentence summary of WHAT was decided. |
--help |
Show this message and exit. |
--reason |
WHY — the tradeoff or driving constraint. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--trade-offs |
Optional: what we gave up to make this choice. |
dna sdlc narrative add-open-item¶
Append an open work item to an existing Narrative. Surfaces in Studio's sidebar 'ainda em aberto' section.
Use this when reflecting on a cycle that didn't fully close — something started but didn't ship, a follow-up the next cycle should pick up, a debt acknowledged.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--blocker |
What's blocking it (1-liner). |
--help |
Show this message and exit. |
--owner |
Who's on this (actor name). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--title |
Short description of the open work item. |
dna sdlc narrative add-paragraph¶
Append a paragraph to an existing Narrative. Stored in
spec.paragraphs[] so Studio renders it as the lead block in
order.
Use this when shipping mid-cycle progress that deserves a line on the narrative without waiting for close-cycle synthesis.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--text |
Past-tense paragraph of what shipped (no bullets). |
dna sdlc narrative new¶
Scaffold a NARRATIVE.md bundle for a new Narrative doc. Writes
the file with FLAT frontmatter (the format the bundle reader
expects) + a body skeleton with the structured-fields headings.
Does NOT apply — review/edit, then run dna instance apply.
Arguments
| Argument | Required |
|---|---|
SLUG |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--intent |
Author intent (drives Studio grouping). (default: daily) |
--scope |
Scope holding the Narrative (default: env / sole scope). |
--title |
Optional title; falls back to slug. |
dna sdlc narrative status¶
Report cadence: how long since the last Narrative was written, how many SDLC events accumulated since, and a suggestion if it's time to write one. Prints a short report and exits 0 always.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the Narrative (default: env / sole scope). |
dna sdlc next¶
Snapshot of active work — in-progress epic, pending stories, open issues.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc plan¶
Manage Plan docs (implementation plans).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc plan accept¶
Mark Plan status: accepted; stamp accepted_at.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc plan create¶
Create a Plan doc (optionally linked to a Story and/or Spec).
Body source: inline --body "..." for a quick plan, or
--body-file <plano.md> to pour a rich markdown plan (e.g. the output
of the superpowers writing-plans skill) into the Plan body. --methodology
records which method produced it — opt-in, methodology-agnostic.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--approach, --body |
Plan body / approach (markdown, stored in PLAN.md). |
--body-file |
Lê o body de um markdown (plano RICO: superpowers/bmad/à mão). Mutuamente exclusivo com --body. |
--help |
Show this message and exit. |
--methodology |
Metodologia que produziu o plano (carimba spec.methodology). Opt-in. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--spec |
Parent Spec (spec_ref). |
--status |
(default: accepted) |
--story |
Story this plan attacks (slug or Story/plan phase. |
--title |
Human title (→ spec.title). |
dna sdlc plan deprecate¶
Mark Plan status: deprecated.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc plan propose¶
Mark Plan status: proposed.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc plan supersede¶
Mark Plan status: superseded.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--by |
Plan name that supersedes this one (→ spec.superseded_by). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc pr-footer¶
Print the attribution footer block for a hand-made PR body.
Pure formatter (no kernel session, no gh): paste the output at the
end of the PR body você abriu à mão. Template + override
($DNA_SDLC_PR_FOOTER) em _git_symbiosis.py.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc produces¶
Attach/list artifacts a work item produced (any Kind — the hub).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc produces add¶
Attach an artifact: dna sdlc produces add
Arguments
| Argument | Required |
|---|---|
WORK_ITEM |
yes |
ARTIFACT |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--role |
Role hint (visual-spec, plan, investigation, ...). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc produces list¶
Resolved outputs of a work item (produces[] ∪ legacy back-refs).
Arguments
| Argument | Required |
|---|---|
WORK_ITEM |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc produces rm¶
Detach an artifact from a work item's produces[].
Arguments
| Argument | Required |
|---|---|
WORK_ITEM |
yes |
ARTIFACT |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc reference¶
Reference Kind — create / list / show external sources.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc reference create¶
Create a Reference doc capturing an external source.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--content-path |
Path to rich-content sidecar markdown. |
--help |
Show this message and exit. |
--kind-of |
|
--quote |
Verbatim key quote (max ~500 chars). Repeat for multiple. |
--relevance |
Why this matters for THIS project. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--summary |
1-2 sentence summary of what this source says. |
--tag |
|
--title |
|
--url |
dna sdlc reference list¶
List Reference docs (optionally filtered by kind_of).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--kind-of |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc reference show¶
Show a Reference doc + its citation graph.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spec¶
Spec-level operations (design / spec documents).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc spec accept¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spec create¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Markdown body (→ spec.body / SPEC.md). |
--date |
Date (ISO-8601; → spec.date). Defaults to now. |
--desc |
Short description (→ spec.description). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: draft) |
--title |
Title (→ spec.title). |
dna sdlc spec deprecate¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
WHY it no longer applies (→ spec.deprecation_reason + timeline). Optional for back-compat, but a deprecation whose reason lives outside the doc is a decision nobody can revisit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spec executed¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--summary |
THE PROOF the design became code — PRs, commits, releases (→ spec.execution_summary + timeline). |
dna sdlc spec propose¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spec shelve¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
The decision and WHY — what would have to change for it to be 'now' (→ spec.shelve_reason + timeline). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spec supersede¶
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--by |
Spec name that supersedes this one (→ spec.superseded_by). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spike¶
Spike-level operations (time-boxed technical investigations).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc spike abandon¶
Mark Spike status: abandoned.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spike answer¶
Mark Spike status: answered; stamp completed_at + findings/recommendation.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--findings |
What the spike found (→ spec.findings). |
--follow-up-story |
Story this spike hands off to (→ spec.follow_up_story). |
--help |
Show this message and exit. |
--recommendation |
Recommended next step (→ spec.recommendation). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc spike comment¶
Append a finding / decision to a Spike timeline without changing status.
Mirrors story comment — Spikes accrue findings + decisions over their
investigation, and the running trail belongs on the timeline (the FOCUS
feed + audit), not only in the final answer.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
The comment / finding / decision text. |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--type |
Defaults to 'comment'; decision-shaped bodies auto-promote. |
dna sdlc spike create¶
Create a new Spike (time-boxed technical investigation).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Markdown body (→ spec.body / SPIKE.md). |
--feature |
Parent Feature name. |
--follow-up-story |
Story this spike hands off to (→ spec.follow_up_story). |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--owner |
|
--question |
The ONE question this spike answers (→ spec.question_to_answer). |
--references |
Comma-separated Reference names (→ spec.references). |
--research-refs |
Comma-separated Research names (→ spec.research_refs). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: proposed) |
--time-box |
Time budget in hours (→ spec.time_box_hours). |
--title |
Short title. Derived from --question first line (≤80) when omitted. |
dna sdlc spike link¶
Attach a Spike's outputs (ADR/Research/HtmlArtifact/Reference) + handoffs (Story/Feature) so they show up in FOCUS OUTPUTS and the audit graph — never in limbo. List fields append + dedup; scalar fields are set. Idempotent.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--adr |
ADR this spike hands off to (→ follow_up_adr). |
--artifact |
HtmlArtifact to attach (→ html_artifacts[]). |
--feature |
Parent Feature (→ feature). |
--follow-up-story |
Story this spike hands off to (→ follow_up_story). |
--help |
Show this message and exit. |
--reference |
Reference to attach (→ references[]). |
--related-spike |
Related Spike (→ related_spikes[]). |
--research |
Research doc to attach (→ research_refs[]). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--spec |
Spec this spike produced (→ follow_up_spec). |
dna sdlc spike start¶
Mark Spike status: in-progress.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story¶
Story-level operations.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc story block¶
Mark Story status: blocked, set blocked_reason.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why is it blocked? |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story cancel¶
Mark a Story as cancelled with an explicit reason. Same intent as feature cancel — close the open-work loop without silently dropping context.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why is the Story cancelled? |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story check¶
Mark specific AC / DoD items DONE with evidence — granular
Gapless-DoD closure, vs story done's blanket auto-backfill (which
stamps done_by=story-done-auto and no evidence). Select items by
1-based index or text substring; --all marks every AC + DoD item.
Example: dna sdlc story check s-foo --ac 1 --dod "tests" --evidence "PR #42"
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--ac |
Acceptance-criterion to mark done: 1-based index (exact) or text substring (repeatable). |
--all |
Mark ALL acceptance_criteria + definition_of_done items done. |
--by |
Actor crediting the check (default: DNA_AGENT_OWNER or claude-code). |
--dod |
Definition-of-done item to mark done: 1-based index (exact) or text substring (repeatable). |
--evidence |
Evidence the item is satisfied (PR #, commit sha, link, or prose). Stored per-item. |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story comment¶
Append a comment / decision event to a Story timeline without mutating its status. Useful when shipping a Story produces artifacts beyond the status flip itself.
Auto-promotes comments matching decision patterns to decision events so the morning narrative drawer's "🧠 decisions" section captures the WHY without the agent needing to remember --type.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Comment text (lands on the timeline event). |
--commit-ref |
Optional Git SHA to associate. Auto-detected from HEAD when omitted. |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--type |
Event type — 'comment' or 'decision'. When omitted, auto-detected: comments matching decision patterns ('decidi X porque Y', 'optei por...') are promoted to decisions automatically. |
dna sdlc story commits¶
List every commit tied to a Story — trailers + timeline, merged.
Closes the rastreabilidade loop: "que commits fecharam Story X?" Two sources, deduped by sha (trailer wins — it carries the subject):
git log --grep "Work-Item: Story/<name>"— commits stamped by the prepare-commit-msg hook (dna sdlc hooks install). This is the zero-bookkeeping path; fail-soft when git/repo is unavailable.spec.timeline[].commit_ref(auto-stamped bystory done) +spec.timeline[].session_ref(linkback to the AgentSession).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story create¶
Create a new Story.
AC + DoD guard (2026-05-14): without --ac and --dod the command refuses. Stories that ship "todo" but don't declare exit criteria are the root of the silent-skip-DoD pattern user flagged in chat. Override with --allow-no-ac-dod only for back-compat backfills.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--ac |
Acceptance criterion (repeatable). Each --ac adds one bullet to spec.acceptance_criteria. Use Given/When/Then prose. |
--ac-source |
Provenance tag for acceptance_criteria (e.g. claude-code, llm-analyst-backfill, human). |
--allow-no-ac-dod |
Skip the AC + DoD guard. Use ONLY for back-compat backfills or exceptional grooming. Stories filed without acceptance_criteria + definition_of_done are blocked by default because they ship without exit criteria — see chat 2026-05-14 + memory feedback_story_ac_dod_required. |
--business-value |
WSJF-style scalar (0-1000). |
--desc |
One-line description. |
--dod |
Definition of Done item (repeatable). Each --dod adds one bullet to spec.definition_of_done. Cover Code/Tests/Docs/CI/UX. |
--dod-source |
Provenance tag for definition_of_done. |
--estimate |
|
--feature |
Parent Feature name. |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--owner |
|
--priority |
Board priority (default: medium when set; else field omitted). |
--reporter |
Actor who filed it. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--sprint |
Sprint identifier. |
--status |
(default: todo) |
--title |
Short Jira-style title shown on cards. Falls back to first line of --desc (truncated to 80 chars) when omitted. |
dna sdlc story done¶
Mark Story status: done; auto-stamp commit_ref + optional summary.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--allow-no-produces |
Silencia o warn de outputs vazios (produces[] + back-refs). |
--allow-no-tests |
Pula o test gate (s-sdlc-tests-required-on-done). Use SÓ para exceções registradas — por padrão story done exige um TestRun outcome=pass que verifica a Story, espelhando o guard de --ac/--dod do story create. |
--commit-ref |
Git SHA shipped with this Story. Auto-detected from HEAD when omitted. |
--help |
Show this message and exit. |
--no-commit |
Story sem código (silencia o aviso de commit de entrega + isenta o test gate). |
--no-narrate |
Silencia o warn de narração. |
--note |
Narra esta transição (appenda comment inline na MESMA chamada). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--serves |
Que Spec esta entrega SERVE (repetível): Spec/<nome>, <nome>, ou none para afirmar que não serve nenhuma. Grava a citação bidirecional (references ↔ cited_by) — que é de onde a execução da Spec é DERIVADA (i-117). |
--summary |
One-line description of what shipped (lands on the timeline event). |
dna sdlc story groom¶
Read-modify-write: update only the board-grade fields passed.
Idempotent — running with no flags is a no-op (other than re-stamping updated_at, which we skip when nothing else changed).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--ac |
Acceptance criterion (repeatable). REPLACES existing list. |
--ac-source |
|
--business-value |
|
--dod |
DoD item (repeatable). REPLACES existing list. |
--dod-source |
|
--help |
Show this message and exit. |
--labels |
Comma-separated. Replaces existing. |
--priority |
|
--release-target |
Epic name OR 'owner/pkg@semver'. |
--reporter |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--sprint |
|
--title |
Retitle the Story (e.g. a cli-create title that came in truncated/desc-shaped — story pr builds the PR title from it). |
dna sdlc story pr¶
Open the Story's PR — gh pr create pre-filled FROM the story.
Title feat(<label>): <título> (<s-x>); body = description + AC
como checklist + footer de atribuição (dna sdlc pr-footer). O PR
nasce da story, não o contrário — e a URL volta pra timeline.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--base |
Base branch do PR (passthrough pro gh; default: o do repo). |
--draft |
Abre como draft. |
--dry-run |
Só imprime title + body montados; não chama gh. |
--head |
Head branch (default: a branch corrente — default do próprio gh). |
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story reopen¶
Reopen a closed/cancelled Story — flip status back to todo (or specified) and clear closed_at + cancelled_reason. Stamps a status_change event with the reopen reason.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why reopen? (default: reopened) |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--to |
Status to flip back to (default: todo). (default: todo) |
dna sdlc story review¶
Mark Story status: review.
Also emits a build journey event — submitting for review means the
implementation is complete. The journey is now DERIVED (s-journey-derived):
build is computed from the timeline status_change to in-progress/review
(or a commit_ref), and finer phases (specify/plan) light up automatically
from AC/DoD + linked Spec/Plan. No WorkflowEvent write needed.
Guard (i-133): review = PR aberto. Checa gh pr list --head <branch>
(fail-soft, ≤3s); sem PR aberto exige --no-pr --reason "<por quê>".
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--no-narrate |
Silencia o warn de narração. |
--no-pr |
Escape do guard de PR (i-133): marca review mesmo sem PR aberto na branch corrente. Exige --reason. |
--note |
Narra esta transição (appenda comment inline na MESMA chamada). |
--reason |
Por que está marcando review sem PR aberto (vai pro timeline). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story show¶
Show a Story's full detail — header + AC/DoD + plan + recent timeline.
Reads via the API client (NOT the DB), so it works against any source (filesystem / Postgres / remote) without local Postgres access. Closes the gap where agents fell back to raw YAML / direct SQL to read a Story (i-070).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--json |
Emit the raw spec as JSON. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc story start¶
Mark Story status: in-progress.
Plan gate (s-story-start-plan-gate): você não começa sem decidir o
plano de ataque — --plan "1-3 linhas" (cria Plan inline),
--plan-doc <nome> (linka Plan existente), ou
--no-plan --skip-reason "..." (skip honesto, registrado). Em TTY
interativo sem flag, o CLI pergunta. O artefato nasce no caminho
crítico — ninguém esquece, e a fase plan derivada acende sozinha.
Side-effect: stamps .dna/active-story.txt with <scope>:<name>
so external tools (Claude Code hooks, IDE plugins) can attribute
out-of-band events to the Story currently being worked on.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--methodology |
Metodologia que produziu o plano (carimba Plan.spec.methodology → jornada mostra a origem). Opt-in. |
--no-narrate |
Silencia o warn de narração. |
--no-plan |
Pular o plan conscientemente (exige --skip-reason). |
--note |
Narra esta transição (appenda comment inline na MESMA chamada). |
--plan |
Plano de ataque (1-3 linhas). Cria Plan/plan-plan acende. |
--plan-doc |
Linka um Plan existente (trabalho grande) em vez de criar inline. |
--plan-file |
Cria Plan/plan- |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--skip-reason |
Motivo do skip (com --no-plan) — registrado honestamente na jornada. |
dna sdlc task¶
Task-level operations (granular sub-Story work items).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc task block¶
Mark Task status: blocked, with a reason.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--reason |
Why is it blocked? (→ spec.blocked_reason). |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc task cancel¶
Mark Task status: cancelled.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc task create¶
Create a new Task.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--body |
Markdown body (→ spec.body / TASK.md). |
--desc |
One-line description (→ spec.description; derives title). |
--estimate |
Estimated hours (→ spec.estimate_hours). |
--feature |
Parent Feature name. |
--help |
Show this message and exit. |
--labels |
Comma-separated labels. |
--owner |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--status |
(default: todo) |
dna sdlc task done¶
Mark Task status: done; stamp closed_at.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc task start¶
Mark Task status: in-progress.
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
dna sdlc test-guide¶
Test guides (roteiros) — declarative test scripts that verify work items.
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc test-guide create¶
Create a TestGuide. Manual steps via --step, or stub them from a Story's acceptance_criteria via --from-ac (you then fill in each 'expected'). Pass --product to scaffold a UI-first product smoke (the lane the done-gate counts).
Arguments
| Argument | Required |
|---|---|
NAME |
yes |
Options
| Option | Description |
|---|---|
--description |
What this guide validates. |
--from-ac |
Story name: stub one step per acceptance_criteria (you fill 'expected'). |
--help |
Show this message and exit. |
--kind-of-test |
(default: manual) |
--owner |
Actor who owns this guide. |
--product |
Scaffold a UI-first PRODUCT smoke: forces kind_of_test=smoke and (with --from-ac) generates leigo-proof steps with a 'where' route + observable 'expected'. The tester marks ✗ ONLY if the product is broken — never author a step that forces a failure. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--step |
A step as 'action :: expected' (repeatable). |
--verifies |
Work item this guide verifies, e.g. 'Story/s-x' (repeatable). |
dna sdlc test-run¶
Test runs — execution records of a TestGuide (the verify-phase signal).
Options
| Option | Description |
|---|---|
--help |
Show this message and exit. |
dna sdlc test-run record¶
Record a TestRun for a TestGuide. Inherits the guide's verifies, then
stamps each verified Story (artifact_produced timeline event + produces[]) —
so the run shows in FOCUS and lights the journey's verify phase.
Arguments
| Argument | Required |
|---|---|
GUIDE |
yes |
Options
| Option | Description |
|---|---|
--by |
Actor who ran it (default: CLI actor). |
--evidence |
Ref/link backing the outcome, e.g. 'HtmlArtifact/ha-x' (repeatable). |
--help |
Show this message and exit. |
--name |
Run doc name (default: tr- |
--note |
Free-text notes on the run. |
--outcome |
|
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |
--screenshot |
Print de evidência (imagem). Repetível. Uploadado como Asset. |
dna sdlc uncite¶
Symmetric removal of a citation link (any Kind).
Arguments
| Argument | Required |
|---|---|
CITED |
yes |
Options
| Option | Description |
|---|---|
--from |
|
--help |
Show this message and exit. |
--scope |
Scope holding the SDLC docs (default: $DNA_SDLC_SCOPE, else the auto-detected sole SDLC scope in the source; required if neither resolves). |