CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

bmad-agent-po

Sofia, the Product Owner: turns any input (an idea, brief, PRD, transcript, notes) into a ticket's requirements, slices initiatives into epics and epics into stories, writes and refines tickets, runs the board, validates the tree, replans when a change lands, and sets up the ticket store. Use when the user asks for Sofia or the product owner, or says 'create a spec', 'distill this PRD', 'write the initiative from', 'slice this', 'split this epic', 'break this into stories', 'make a ticket', 'refine this ticket', 'what's ready', 'status of', 'publish', 'validate these tickets', 'this changed, what now', 'set up the ticket store'.

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

96%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exemplary dispatcher-style body: minimal, fully executable, and covers every failure mode with explicit stop/retry semantics. The only gap is that all bundle navigation is delegated to the render script rather than directly signaled in SKILL.md.

DimensionReasoningScore

Conciseness

Thirteen lean lines with zero padding: a single command, two placeholder-resolution rules, and three failure-handling bullets — every token is load-bearing and nothing explains concepts Claude already knows. Not 4: there is nothing left to trim.

5 / 5

Actionability

Provides a fully executable command ('uv run --no-cache "{project-root}/_bmad/scripts/render_skill.py" --project-root "{project-root}" --skill "{skill-root}"') with mechanical placeholder resolution ('the nearest folder containing `_bmad/`, from the working directory upward') and concrete per-failure-mode instructions. Not 4: the substitution rules leave no gaps, so the command is effectively copy-paste ready.

5 / 5

Workflow Clarity

The single bootstrap action is unambiguous ('Run the following command exactly once without changing the current working directory') and every failure path has explicit handling — 'HALT: <reason>': report and stop; script missing: offer bmad setup, then rerun (a recovery loop); any other failure: report and stop. No destructive or batch operation is performed in the body, so the validation cap does not apply.

5 / 5

Progressive Disclosure

The body is a thin overview delegating rendering to a script, and the bundle (8 references, 3 scripts, 4 templates) is appropriately split and one level deep — but the body signals none of the bundle files itself, leaving navigation entirely to the rendered output. Matches 'good structure; minor organization gaps'; not 5 because the references are not directly signaled in the body.

4 / 5

Total

19

/

20

Passed

Description

83%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete third-person capability list, explicit 'Use when' triggers with extensive natural phrasing and synonyms, and a clear product-owner niche. The only weakness is a handful of unqualified generic trigger terms ('publish', 'status of', 'what's ready') that could fire for non-PO skills.

Suggestions

Qualify the generic trigger terms: bare 'publish', 'status of', and 'what's ready' can fire for CI, deploy, or dashboard skills; scope them as 'publish the board', 'status of the tickets', 'what's ready for dev'.

If the BMad suite installs sibling agent skills (analyst, architect, dev), disambiguate shared agile terms like 'create a spec' from the analyst's PRD work to further reduce overlap risk.

DimensionReasoningScore

Specificity

Lists seven-plus concrete, third-person actions — 'turns any input (an idea, brief, PRD, transcript, notes) into a ticket's requirements, slices initiatives into epics and epics into stories, writes and refines tickets, runs the board, validates the tree, replans when a change lands, and sets up the ticket store' — with comprehensive coverage of the product-owner domain. Not 4: there are no minor gaps in capability coverage.

5 / 5

Completeness

Explicitly answers both 'what' (the full action list from distilling input into requirements through store setup) and 'when' ('Use when the user asks for Sofia or the product owner, or says…') with concrete trigger phrases. Not 4: the 'when' clause is fully explicit, not merely present.

5 / 5

Trigger Term Quality

Includes a long list of natural phrases users would actually say — 'create a spec', 'distill this PRD', 'slice this', 'split this epic', 'break this into stories', 'make a ticket', 'refine this ticket', 'what's ready', 'validate these tickets', 'this changed, what now', 'set up the ticket store' — with synonym variants for slicing/splitting. Not 4: synonym and phrasing coverage is comprehensive rather than missing a few terms.

5 / 5

Distinctiveness Conflict Risk

The niche is clear ('Sofia, the Product Owner', ticket store, epics/stories, the board), but the bare triggers 'publish', 'status of', and 'what's ready' are generic enough to overlap with CI/deploy/dashboard skills. Matches the 'mostly distinct; minor overlap risk' anchor; not 5 because those unqualified terms leave more than minimal conflict risk.

4 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

bmad-code-org/BMAD-METHOD

Path

skills/bmad-agent-po/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.