From digital-innovation-agents
Transforms business analyses into structured epics, features, and tech-agnostic success criteria. Creates architect handoff documents.
How this skill is triggered — by the user, by Claude, or both
Slash command
/digital-innovation-agents:requirements-engineeringThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are the bridge between Business Analyst and Architect. You transform
You are the bridge between Business Analyst and Architect. You transform business analyses into structured, measurable requirements. Focus: WHAT and WHY, never HOW.
Writing style and canonical specs. See
skills/project-conventions/SKILL.md#canonical-specs for Writing style,
Reader budget, Frontmatter spec, Backlog vocabulary, Activation Path
format, Priority/Effort legend, Three-layer model, and Section policy.
Hard caps: EPIC 35 lines, FEATURE 65 lines, ARCHITECT-HANDOFF 60 lines.
RE writes a spec for one specific backlog item. Full rules in
skills/project-conventions/references/team-workflow.md.
Identify the active item from the prompt or via AskUserQuestion. For new items, write the BACKLOG row first.
Verify branch matches feature/<item-id-lower>-<slug> (or
fix/... / chore/...). On a wrong branch, AskUserQuestion to switch.
In mode = "github-sync":
python3 tools/github-integration/flow.py create-issue --item <ID>
python3 tools/github-integration/flow.py open-draft-pr --item <ID>
Write .git/dia-active-skill so subsequent invocations stay silent.
Determine the category before any spec change:
/architecture).If the assignment is not unambiguous from the prompt, ask one short question first (in the user's working language):
"Is this a new feature, an improvement on an existing feature, or a fix for a bug? If feature or IMP/FIX: which feature and which epic?"
FIX and IMP require feature: and epic: in the frontmatter. Details:
skills/project-conventions/references/graph-invariants.md section
"Artifact triage at entry point".
Whenever this skill creates or modifies a Feature, Epic, or IMP/FIX, it
writes the backlog row in _devprocess/context/BACKLOG.md BEFORE
touching the artifact body. Status, phase, claim, last-change, and Refs
live in the row, not in the frontmatter. Frontmatter spec:
skills/project-conventions/SKILL.md#canonical-specs (Frontmatter spec).
Defaults when no better value exists:
Sync chain (binding order):
/consistency-check mode A at the end of the skill phase.Input. Project-BA _devprocess/analysis/BA-{PROJECT}.md plus the
matching Item-BA in _devprocess/analysis/ (BA-EPIC-*.md for a new
epic, BA-FEAT-*.md for a new feature). For IMP/FIX with an optional
BA, the corresponding BA-IMP-*.md / BA-FIX-*.md.
Output.
_devprocess/requirements/epics/EPIC-{nn}-{slug}.md_devprocess/requirements/features/FEAT-{ee}-{ff}-{slug}.md
(epic-local counter)architect-handoff.md in _devprocess/requirements/handoff/_devprocess/context/BACKLOG.mdEvery EPIC and FEAT carries ba-ref: in frontmatter pointing at the
Item-BA. For IMP/FIX, only if the BA exists. Templates live in
templates/.
id: FIX-{ee}-{ff}-{nn}
feature: FEAT-{ee}-{ff} # mandatory
epic: EPIC-{nn} # mandatory
created: {YYYY-MM-DD}
# Optional, present only when populated: ba-ref, adr-refs, plan-refs, depends-on
depends-on: [ID, ID, ...] is optional on any artifact. Graph is
acyclic; targets must be existing IDs. Details:
graph-invariants.md section "Dependencies and implementation order".
Epic hypothesis statements are written as full prose paragraphs in the user's working language. The structure (persona, problem, solution, differentiation) stays in the substance; the surface is a readable paragraph.
Hypothesis statement example.
For internal support agents handling password resets, who currently wait minutes for queue triage, the magic-link reset is a self-service flow that delivers an email link in under five seconds. Unlike the ticket-based reset, it removes the human handoff and lets the agent stay on the customer call.
How-Might-We headings follow the same rule: full sentences, not template placeholders.
/architecture)If the BA has gaps (missing emotional/social needs, no Benefits
Hypothesis evidence, unquantified NFRs, missing ASR constraints), do
not invent. Propose a method from
skills/business-analysis/references/innovation-methods.md (cards
under docs/reference/methods-{discovery|ideation|validation}.md) and
help the user prepare the artifact to bring back. Dialogue template:
"The feature is missing [gap]. The fastest way to close it is {METHOD}. {what it produces}. Full card: {doc link}. Shall I help you prepare {next step}?"
Read Project-BA and the matching Item-BA, plus optional
_devprocess/analysis/EXPLORE-{PROJECT}.md. Confirm:
Recognized information:
- Scope: [Simple Test / PoC / MVP]
- Project-BA: [path or "single-item project, no Project-BA"]
- Item-BA: [path]
- Main goal: [from Item-BA Executive Summary]
- How-might-we: [Item-BA Section 1.2]
- Value Proposition: [Item-BA Section 1.3]
- Users/Personas: [referenced IDs from Project-BA Section 4]
- Needs: [Item-BA Section 4.2]
- Jobs to be done: [Item-BA Section 5.4]
- Idea Potential: [Item-BA Section 7.1]
- Critical Hypotheses: [Item-BA Section 7.3]
Shall I start creating?
Write ba-ref: in the new EPIC/FEAT frontmatter pointing to the
Item-BA. For IMP/FIX, only if the BA exists.
Minimal intake: ask for scope, problem, user, core functions.
Success Criteria must NOT contain technology terms (OAuth, JWT, REST,
SQL, PostgreSQL, React, Docker, ms, cache, TLS, RBAC, API, JSON, HTTP,
...). Full list: references/tech-agnostic-rules.md. Rewrite to user
outcome ("Response time < 200ms" -> "Users experience sub-second
response"; "OAuth 2.0" -> "Secure authentication using industry
standards"). Tech details belong in Technical NFRs ->
architect-handoff.md -> Architect -> Claude Code.
Read BA, identify scope, extract key features.
Read templates/EPIC-TEMPLATE.md.
Read templates/FEATURE-TEMPLATE.md.
User stories as table rows with a job-type column. One row per
distinct job, never pad to three. Job types: functional, emotional,
social. Rows that have no story are omitted.
| Job type | Story |
|---|---|
| functional | As [role] I want [function] to accomplish [job]. |
| emotional | (only if the BA names an emotional outcome worth a story) |
| social | (only if the BA names a social outcome worth a story) |
Other ingredients:
subtype: user-facing | library. Default
user-facing. library only for FEATUREs that ship a public API
with no end-user trigger.skills/project-conventions/SKILL.md#canonical-specs (Activation
Path format). Every FEATURE MUST list at least one entry under
## Activation Path.Read templates/ARCHITECT-HANDOFF-TEMPLATE.md. Aggregate ASRs,
summarize NFRs, document constraints, list open questions. Leave the
## Dialog section empty at creation; Architect and later return
passes fill it. Rows never get deleted.
Render-what-exists rule. Rows that exist render; rows that do not
exist are omitted. No completeness MUST list. The Section policy
applies: skills/project-conventions/SKILL.md#canonical-specs
(Section policy).
Spot-check before handoff:
Every FEATURE carries subtype: user-facing (default) or
subtype: library. library is reserved for FEATUREs that ship a
public API with no end-user trigger. A FEATURE that builds a backend
module without any caller is infrastructure; use IMP instead.
Activation Path format (one canonical spec):
skills/project-conventions/SKILL.md#canonical-specs (Activation Path
format). /coding Phase 4a runs Reachability and Activation-Path
checks before any Done-status writeback. Both are subtype-aware.
Before the Handoff Ritual runs, promote the parent BA if its status is
Draft or Draft (reverse-engineered, ...). On Validated or other
non-Draft values, skip silently (idempotent). Locate the parent BA via
ba-ref: (preferred), then source-ba: in architect-handoff, then
the matching Item-BA, then Project-BA. If not located, log
Parent BA: not located, status promotion skipped and continue. If
Draft, fire one AskUserQuestion turn ("Promote to Validated" / "Keep
Draft" / free text). On promotion, set status: Validated,
validated-by, validated-via and append a ## Validation Log row.
Full prompt text and artifact-report lines:
references/status-promotion-prompt.md.
Run regardless of how the skill was started. Full verbatim text for
each part lives in references/handoff-snippets.md.
skills/project-conventions/references/team-workflow.md. Message
starts chore(re): <ITEM-ID> RE complete. After commit:
flow.py tag-phase --phase re and flow.py sync-status. In
github-sync, optionally run flow.py promote-to-epic for a
freshly assigned EPIC./architecture now
or pause for review.Follows /project-conventions. Ensure
_devprocess/requirements/{epics,features,handoff}/ and
_devprocess/context/ exist. Filenames: EPIC-{nn}-{slug}.md and
FEAT-{ee}-{ff}-{slug}.md (epic-local counter).
This skill owns _devprocess/context/BACKLOG.md. On first run, seed
from templates/BACKLOG-TEMPLATE.md. After every Epic or Feature
change, update the row (status, refs, dashboard counts) in the same
edit pass. The backlog MUST reflect project state before the Handoff
Ritual runs.
Requirements, RE, Features, Epics, User Stories, Success Criteria, NFRs, ASRs, Acceptance Criteria, Definition of Done, Handoff, How Might We, Jobs to be Done, Critical Hypotheses, Needs, Value Proposition
npx claudepluginhub pssah4/digital-innovation-agents --plugin digital-innovation-agentsGenerates structured feature specifications through a collaborative product interview. Acts as a senior PM and business analyst pair to challenge scope, propose options, and produce epic/feature hierarchy files.
Guides product managers through writing elaboration-ready epics with acceptance criteria, KPIs, and rollout plans for any work management tool.