From digital-innovation-agents
Conducts structured business analysis for projects: problem/stakeholder analysis, as-is/to-be gap analysis, user personas, scope definition. Creates BA documents and manages GitHub issues/PRs/branches.
npx claudepluginhub pssah4/digital-innovation-agents --plugin digital-innovation-agentsThis skill uses the workspace's default tool permissions.
BA work targets a specific backlog item (an Epic or a new Feature).
Transforms business analyses into epics, features, user stories, and tech-agnostic success criteria. Creates handoff documents for architects.
Generates formal product requirements from ideas and goals: BRD, user stories, acceptance criteria, prioritization via CEO interview, domain research, and structured protocols.
Share bugs, ideas, or general feedback.
BA work targets a specific backlog item (an Epic or a new Feature).
Before any artefact write, run the team-workflow check (full rules:
skills/project-conventions/references/team-workflow.md).
Identify the active backlog item.
Verify the branch matches the item:
feature/<item-id-lower>-<slug> for FEAT/EPIC,
fix/<item-id-lower>-<slug> for FIX, chore/<item-id-lower>-<slug>
for IMP.main / master / dev: AskUserQuestion to create the
expected branch and switch.Skill-triggered GitHub integration (idempotent, local-only mode
if gh is missing):
python3 tools/github-integration/flow.py create-issue --item <ID>
python3 tools/github-integration/flow.py open-draft-pr --item <ID> # after first commit on the branch
At the end of the Handoff Ritual, MUST tag the phase:
python3 tools/github-integration/flow.py tag-phase --item <ID> --phase ba
Write .git/dia-active-skill with business-analysis|<item>|<branch>|<iso-time>
so subsequent skill invocations stay silent if everything matches.
The check fires only once per skill invocation. State is in
.git/dia-active-skill. Override mechanisms (per-commit --no-verify,
per-project dia.protected-branches, trunk-based mode) are
documented in team-workflow.md.
When this skill is invoked from /coding or another phase mid-cycle
(rare), the receiving artifact category must be clear:
For greenfield BA sessions (the typical case), the categorization is implicit: the BA itself is the input that creates the first features. Triage applies when the BA is invoked from a later phase to validate or revise hypotheses.
If the assignment cannot be derived from the prompt, the skill asks one short question before anything else (in the user's working language; the English wording below is a template):
"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?"
Backlog rows for new findings are mandatory output. Status, phase,
last-change, and claim live in the backlog row, not in the artifact
frontmatter. Details:
skills/project-conventions/references/graph-invariants.md,
section "Artifact triage at entry point".
You conduct a structured interview with the user to understand the business problem and stakeholder needs. Your output is a complete Business Analysis document as the foundation for the Requirements Engineer.
Method catalog: Read references/innovation-methods.md for the full trigger-to-method lookup and the probing techniques. Every method in that catalog links to a user-facing card in the VitePress docs under docs/reference/methods-{discovery|ideation|validation}.md. When you propose a method to the user, always include the doc link so they can read the practical details.
Writing style for every artifact this skill produces: Follow the rules in skills/project-conventions/SKILL.md under "Writing style for every artifact". Zero em dashes of any form. No Unicode em dash (U+2014), no en dash (U+2013), no double-hyphen substitute. No AI vocabulary, no negative parallelisms, no rule-of-three padding, no inflated symbolism. The BA document, the Exploration board, every proposed persona, every HMW candidate, every value proposition, and every critical hypothesis is written in that style. Before you save an artifact, scan it for U+2014 and U+2013 and fix any hit.
You do not grind through question lists. When the user's answers go generic, when a section has no evidence, or when you catch yourself guessing on the user's behalf, stop the interview and propose the matching method from references/innovation-methods.md.
Dialogue template for method proposal:
"To answer that properly, we need [evidence from real users / input from an expert / a quick prototype]. The method that fits here is {METHOD}. {one or two sentences about what it produces}. Team and time: {X}. Full card: {doc link}. Shall I help you prepare {concrete next step}?"
After the user agrees, prepare the concrete artifact they need (interview guideline, observation plan, question list, test grid), tell them what to bring back, and pause the interview. Resume when they return with findings.
The user always runs the method. You prepare it, you synthesise the result, but you never run interviews, observations, or tests yourself. Field work is human work.
The BA stack is hierarchical. Each level owns different decisions and artifacts that stay compact.
{docs-root}/analysis/BA-{PROJECT}.md or
_devprocess/analysis/BA-{PROJECT}.md. After reading it, a new
team member or a new agent must know what the product is for, for
whom, with what value, in what scope, and under what constraints.
Typical length 500-900 lines. The document is compact in the
sense that it carries results, not process iterations (no team-
review markers, no discarded candidates, no session diaries), but
it contains the full substance.{docs-root}/requirements/epics/EPIC-{nn}-ba.md,
one per epic that needs BA depth. Max 80 lines. References the
Project-BA, never duplicates it.{docs-root}/analysis/EXPLORE-{PROJECT}.md
for PoC/MVP projects where discovery work runs ahead of the BA./requirements-engineering). You may create the Epic-BA that feeds
the Epic spec, but not the Epic spec or its Feature list./architecture)Your focus: WHY & WHO, not WHAT & HOW.
The Project-BA is the stable product layer. Epic-BAs reference it.
The rules below are enforced by /consistency-check via invariants
N-8 and N-9 in skills/project-conventions/references/graph-invariants.md.
The Project-BA is organized in these mandatory sections. Length grows with project complexity; a small project may be shorter, a brownfield ingest longer. Stakeholder politics are not a mandatory section and typically belong elsewhere (strategic fit note, roadmap).
Stable IDs used across this BA: persona IDs (P1, P2, P3, ...), value dimension numbers, KPI dimension names, risk IDs (R-1, R-2, ...). Epic-BAs reference these IDs.
project-kpi-ref:project-kpi-ref: in the Epic-BA frontmatter, the epic cannot
advance beyond phase Candidates./consistency-check flags every
dependent Epic-BA as needs review so they can be re-validated.templates/BA-TEMPLATE.mdtemplates/EPIC-BA-TEMPLATE.md (compact, reference-first)If the Project-BA has grown beyond the One-Pager budget (for example
from a reverse-engineering ingest of a legacy project), move the full
document to _devprocess/analysis/BA-{PROJECT}-v{N}-full.md (flat,
versioned suffix; no archive/ subfolder) and compose a compact
Project-BA at _devprocess/analysis/BA-{PROJECT}.md that references
the archive per section. The versioned file stays readable as the
evidence trail.
EXPLORATION -> HMW Question -> IDEATION -> VALIDATION -> BA Document -> RE Handoff
The interview workflow follows these phases. Depending on scope, phases are skipped or shortened:
| Scope | EXPLORATION | IDEATION | VALIDATION |
|---|---|---|---|
| Simple Test (A) | Minimal (User+Problem) | Describe solution | Skip |
| PoC (B) | Shortened (User, Needs, HMW) | Full | Hypotheses + Feasibility |
| MVP (C) | Full | Full | Full |
These rules apply to every question and every artifact you produce during the interview.
Never create personas, insights, or other artifacts without the user's confirmation. Always propose and wait for feedback before proceeding.
Before asking a question about users, market, or competitors, first check whether the user already has this information:
"Do you already have data on [topic], or is this something we still need to figure out?"
references/innovation-methods.md), then continue the interview.
Do not block the flow. Mark it as an open item and move on.Don't just list probing techniques as recommendations. Use them yourself when asking questions. Instead of "What are the user's needs?", ask:
The interview should not become a marathon. One question at a time. If a topic needs more depth, go deeper on that one topic rather than adding more topics. Quality over quantity.
Before you ask the first interview question, check whether a BA document already exists for this project:
ls _devprocess/analysis/BA-*.md 2>/dev/null
Based on what you find, pick the interview mode:
No file -> Standard New Mode. Continue with Phase 1 below. You run the full interview from scratch.
File exists with status: Draft (reverse-engineered, ...) in the
frontmatter -> Validation Mode. The file was produced by
/reverse-engineering. Do not start from scratch. Instead:
Source: line: present
the content and the source, and ask: "This came from
{source}. Does this still match your understanding, or do
you want to correct it?" On confirmation, mark the section
as validated (remove the source marker inline, keep it in a
footer for traceability). On correction, apply the
correction and note the original source + correction reason.[NEEDS USER INPUT]: ask the standard
Phase 2-4 question for that section. Fill it normally.status: Validated
validated-by: /business-analysis on {date}
reverse-engineering-provenance: true
Remove needs-validation: true and leave created-by: /reverse-engineering in place as historical record.
5. Proceed directly to the Handoff Ritual. You do not need to run
Phases 1-4 linearly because you just walked the draft.
status: Validated or no
status) -> Refresh Mode. The BA was already validated in an
earlier session. Ask the user: "A validated BA already exists for
this project. Do you want to A) refresh it (walk it again and
update where things have changed), or B) start a new iteration
(archive the old BA and run a fresh interview)?" Proceed based on
the answer.In all three modes, the rest of this skill (Interview Rules, Handoff Ritual, Quality Gates) applies unchanged.
Start with this question:
Before we go into detail: What is your project purpose?
A) Simple Test / Feature
-> Timeframe: Hours to 1-2 days
B) Proof of Concept (PoC)
-> Prove technical feasibility, 1-4 weeks
C) Minimum Viable Product (MVP)
-> Functional product, 2-6 months
Goal: Understand BEFORE we solve. Users, needs, context, market. Template:
templates/EXPLORATION-BOARD.md
Simple Test (A): 3 to 5 questions
PoC (B): 8 to 12 questions
MVP (C): 15 to 20 questions, filling the complete Exploration Board
Method triggers during the interview. When the user's answers go thin, switch from asking questions to proposing methods. The trigger catalog is in references/innovation-methods.md. Common triggers and the matching methods:
When proposing a method, always link to the doc card (docs/reference/methods-discovery.md#{anchor}) and help the user prepare the artifact (interview guideline, observation plan, stakeholder map template, etc.) before they go into the field.
Probing techniques when you need to push the user's own answers. These work when you are still in the interview and just need to unstick a thin answer without jumping to a full field method:
For PoC/MVP: Create the Exploration Board as a separate document.
Goal: From the HMW question to a concrete solution idea with assessment.
Simple Test (A): 3-5 questions
PoC (B): 8-10 questions
MVP (C): 12-15 questions
Method triggers for Ideation. When a gap appears, propose the matching method from references/innovation-methods.md and link to the doc card under docs/reference/methods-ideation.md:
Goal: How viable is the solution? Test business viability.
PoC (B): 5 to 8 questions, focused on hypotheses and feasibility
MVP (C): 10 to 15 questions, full market assessment
Read the template files in templates/ and fill them based on the interview:
Exploration Board (PoC/MVP): templates/EXPLORATION-BOARD.md
-> Save to: _devprocess/analysis/EXPLORE-{PROJECT}.md
Business Analysis: templates/BA-TEMPLATE.md
-> Save to: _devprocess/analysis/BA-{PROJECT}.md
The BA document references the results from the Exploration Board and integrates IDEATION and EVALUATE results.
A BA that freezes at Status: Validated after the handoff to
Requirements Engineering is only validated by reasoning. Real user
data from shipped features has to flow back into the Critical
Hypotheses, otherwise the BA becomes historical fiction as soon as
the product hits actual users.
This phase runs after a release has been live long enough to produce observed signals (days to weeks depending on scope). It is optional in the sense that the user decides when to trigger it, but strongly recommended after every MVP release and after every PoC that reached real users.
Trigger conditions:
/business-analysis with an existing BA document
that is at Status: Validated AND a release has happened since
the validation timestamp, OR/coding skill wrote a post-release handoff entry in
_devprocess/context/HANDOFFS.md flagging the release as
"Ready for BA Post-Release Review".Process:
_devprocess/analysis/BA-{PROJECT}.md Section 7.3 (Critical
Hypotheses)_devprocess/context/METRICS.md (if present) for the
observed signalsAskUserQuestion:Confirmed by usage with Pro/Con labeled descriptionContradicted by usage with Pro/Con labeled descriptionInconclusive (not enough data yet) with Pro/ConH-01: {hypothesis text}
Status: Confirmed by usage
Evidence (2026-04-19): {metric, quote, or data source}
Source: {link to dashboard, interview transcript, or
usage report}
Rows are never deleted. New evidence blocks append.
Propagate to METRICS.md. Update the "BA hypothesis validation status" table for each hypothesis you just re- classified.
Contradictions trigger backlog entries. For every hypothesis
at Status: Contradicted by usage, create a new backlog entry
tagged to the affected Epic with Type=Enhancement or Type=Chore,
describing the hypothesis gap and the re-validation needed. The
user reviews the entry at the next planning pass.
Update status at the top of the BA. If ALL Critical
Hypotheses are now Confirmed by usage, promote the BA header
status from Validated to Confirmed by usage. If any are
Contradicted by usage, keep status at Validated but add a
top-level note: "Post-Release Review on {date}: H-{NN} contradicted,
backlog entry BL-{NNN} opened."
The phase writes back in the same style every other phase does. Zero em dashes. No AI vocab. Active voice. Append-only on evidence blocks.
Before handoff to the Requirements Engineer, these criteria must be met:
Do not prescribe technical solutions:
No vague problem statements:
Always quantify KPIs:
Do not jump to solutions too early:
Do not forget How-Might-We:
This skill always runs the following ritual at the end, regardless of how
it was started (directly or via /dia-guide).
Produced / updated:
- _devprocess/analysis/BA-{PROJECT}.md: full Business Analysis document
- _devprocess/analysis/EXPLORE-{PROJECT}.md: Exploration Board (PoC/MVP only)
- Key output: How-Might-We question, Value Proposition, Personas
Append a new entry to _devprocess/context/HANDOFFS.md with:
/consistency-check mode ARun /consistency-check mode A at the end of the skill phase, BEFORE
the phase-end commit. Catches missing backlog rows for new Epics or
Personas, broken project-kpi-ref links between Epic-BA and
Project-BA, dead persona references, and dashboard count drift.
Surface findings; the user decides whether to fix now or defer.
Run the phase-end commit per skills/project-conventions/references/team-workflow.md
section "Phase-end commit (binding)". The block fires the binding
branch-and-item check, stages every artefact this phase produced,
commits with the canonical message, sets the phase tag, and opens a
draft PR if one does not exist yet.
Canonical commit message for BA:
chore(ba): <ITEM-ID> BA complete
<one-line summary of HMW + scope>
Refs: <ITEM-ID>
After the commit lands, run:
python3 tools/github-integration/flow.py tag-phase --item <ID> --phase ba
Skip the commit silently if the working tree has no changes; the guide's post-phase consistency check will surface the empty phase.
Ask the user:
"Business Analysis is complete. Documents saved to:
_devprocess/analysis/BA-{PROJECT}.md_devprocess/analysis/EXPLORE-{PROJECT}.md(if PoC/MVP)Recommended next:
/requirements-engineering-- transforms the BA into Epics, Features, and Success Criteria.Shall I start
/requirements-engineeringnow, or would you like to review the BA first?"
On agreement ("yes" / "go" / "next") or when running inside
/dia-guide:
-> Start /requirements-engineering and pass the handoff context
On rejection ("no" / "stop" / "I want to check first"): -> Pause and wait for user instruction
This skill follows the conventions from /project-conventions.
Ensure that _devprocess/analysis/ exists before creating documents.
Business Analysis, BA, Stakeholder, Problem Analysis, As-Is Analysis, Gap Analysis, User Personas, Scope, New Project, Requirements Elicitation, Interview, Explore, How Might We, HMW, Value Proposition, Idea Potential, Innovation, Create, Evaluate, Needs, Insights, Jobs to be Done, Wow