Orchestrating Business Analysis
Plugin: tsh-product-management
Invoke: /tsh-product-management:orchestrating-business-analysis. Claude also loads it when a request matches its description. The entry-point commands analyze-materials and explore-materials both invoke it.
Used by: analyze-materials, explore-materials (Explore Mode)
Runs the business-analysis workflow from the main conversation. The main conversation is the orchestrator: it owns the materials, the gates, the files and the Jira mutations, while the reading and drafting run in read-only worker subagents so their document parsing stays out of its context. Output is business-oriented throughout: epics and stories a stakeholder understands without technical knowledge, with technical notes only where the workshop raised them.
Key Areas
| Area | Coverage |
|---|---|
| Entry points | Workshop materials start at transcript processing. Jira issue keys or a project key skip to Import Mode in formatting-jira-issues and join at the quality review. Explore Mode produces workshop-context-summary.md and stops, with no epics or stories unless the user asks to continue |
| Review gates | Five gates: 0 (intent brief), 1 (extraction), 1.5 (quality review), 1.75 (roadmap proposal), 2 (Jira push). Every approval is written to the ledger before the action it unlocks |
| Gate ledger | specifications/<workshop-name>/.gates.md is the source of truth, not the conversation. The Gate 2 row names the target project key, which the Jira-write hook matches against |
| Protected Status Policy | Tasks with status Done, Cancelled or PO APPROVE are immutable everywhere in the workflow. The policy block is pasted verbatim into any delegation prompt that touches existing tasks |
| Delegation | Read-only workers do the reading and drafting; the orchestrator keeps every question, persistent write and Jira mutation. Parallel Agent calls go out in one message, after the user confirms the suggestion to parallelize. At most 5 workers run at once |
| Roadmap | Planned by a single roadmap-planner by default and never fanned out, because reconciliation needs the whole epic set in one context. The proposal is written to .roadmap-proposal.md, then to the project roadmap only after Roadmap Review approval |
| Jira access | Through whichever Atlassian MCP server the session exposes, with tool names discovered before the first push instead of assumed. Reads are never gated; the push follows a fixed safe sequence |
| Exclusions | No technical specifications or architecture decisions, no implementation, test or deployment plans, no story point estimates. Where the work needs one of those, the gap is named to the user |
Non-negotiable rules
- Record every gate approval in
.gates.mdbefore taking the action it unlocks. - Keep the Jira gate's ledger row numbered
2. ThePreToolUsehook matches it by number, which is why Roadmap Review is1.75. - Never push to Jira before Gate 2 is recorded. If a write is blocked, verify the ledger instead of working around the hook.
- Keep every user-facing question, persistent write and Jira mutation in the main conversation. Workers write nothing and speak to nobody.
- Never fan out roadmap planning.
- Never guess where you could ask: exhaust the materials first, then ask.
How it works
- Create the gate ledger at
specifications/<workshop-name>/.gates.md. - Process the transcript with
processing-workshop-transcriptswhen raw discussion material is supplied. - Analyze the remaining materials and the project baseline with
analyzing-discovery-context. This is the phase that most often justifies parallel workers. Ifdomain-dictionary.mdexists for the project it is consumed as canonical terms; otherwise the skill suggests/tsh-product-management:domain-dictionary. - Draft the intent brief with
extracting-epics-and-stories, then run and record Gate 0. - Extract epics and stories, then run and record Gate 1.
- Run the quality review with
reviewing-backlog-qualityautomatically after Gate 1. Present the suggestions file-first at Gate 1.5, apply what the user accepts, and record it. - Summarize what changed in
extracted-tasks.mdand proceed only on confirmation. - Send the confirmed tasks, accepted findings, baseline and any existing roadmap to a single
roadmap-planner, which appliesplanning-delivery-roadmapsand returns an in-memory proposal. Write it to.roadmap-proposal.md. The orchestrator may instead applyplanning-delivery-roadmapsinline, and says that it did and why. - Run Roadmap Review from the file and record the approval in the
1.75row. Only then create or updatespecifications/projects/<project-name>/roadmap.md. - Format for Jira with
formatting-jira-issuesand savejira-tasks.md. - Run Gate 2: confirm the target project and push scope, and record the approval before any write call.
- Push, read the issues back to verify, archive the session artifacts and refresh the project baseline.
The skill ends with exactly one suggested next step and the command to run, without running it. If the session ended before Gate 2, it names the gate it stopped at, the file that holds the current state, and how to resume.
Session artifacts
In specifications/<workshop-name>/: .gates.md, cleaned-transcript.md, workshop-context-summary.md (Explore Mode only), intent-brief.md, extracted-tasks.md, quality-review.md, .roadmap-proposal.md (draft) and jira-tasks.md.
Outliving the session, in specifications/projects/<project-name>/: roadmap.md, task-baseline.md and domain-dictionary.md. The dictionary keeps its own gate ledger, .dictionary-gates.md, at that same project scope.
References
| Reference | Load when |
|---|---|
review-gates-and-ledger.md | Before the first gate and before recording any approval: the five gates, the ledger format, the hook interlock, how to ask well |
protected-status-policy.md | Whenever existing tasks are in play and before every delegation that touches them |
delegating-to-workers.md | Before spawning any worker: routing, when to parallelize, the prompt contract, merge rules |
working-with-jira.md | Any Jira read, push or iteration-mode session |
reading-workshop-materials.md | Processing PDFs, designs or mixed material bundles |
Related skills
processing-workshop-transcripts, analyzing-discovery-context, extracting-epics-and-stories, reviewing-backlog-quality, planning-delivery-roadmaps, formatting-jira-issues and domain-dictionary. The Jira-write hook that enforces Gate 2 is described on the plugin page.
Source
plugins/tsh-product-management/skills/orchestrating-business-analysis/SKILL.md