bassclef
SkillsConcept
LitePhase ConceptAlso useful in Design, ShipBody 10 sections · ~556 wordsUpdated 2026-10-02

/state-a-problem

Draft a problem statement for a PR, issue, canvas, or spec. Two sizes: brief (≤500 chars, opener, framework implicit) and para (≤1200 chars, 5-block Who/What/When/Why-now/Outcome template). Runs /kiss --grade8 inline by default.

Copy the command
/state-a-problem

Type it bare, or paste it with loose context after — Claude figures out the rest.

Solves

PR bodies and issue bodies open with framing that hides the user pain. Readers scroll past.

Payoff

One statement that leads with who hurts and what breaks and why fix it now. Ready to paste.

Takes in

  • A ticket ref or doc path or scope description
  • Optional size — brief or para

Returns

  • A problem statement that leads with user pain
Needs first
—
Called by
—
Deep dive — 10 sections · ~556 words · original SKILL.mdScroll for tutorial ↓

What it does

A problem statement that leads with user pain. Two sizes.

brief fits a PR or issue opener. Cap 500 chars. 3-4 sentences carry the 5W framework — Who, What, When, Why now, Outcome. Labels stay implicit.

Read the full skill

The complete instructions live at .claude/skills/state-a-problem/SKILL.md in your repo after bassclef-sync. Open with your editor for phases, rules, and worked examples.

Where in the SDLC

Also relevant in: Design, Ship.

Why this phase: Problem-statement drafting. Concept-time framing; also composes into PR bodies (Ship).

FAQ

Terms from bassclef vocabulary that appear on this page.

cameo
A pattern for routing a specific practitioner's documented judgment into a specific software development task. Bassclef implements it as three parts — a curated catalog of practitioners, a matcher that connects problems to relevant experts, and invokable skills that channel the pick. You see 'Cooper says X' or 'Norman flags Y' inline rather than the skill running a full consult. Trades depth for speed on lower-stakes surfaces. See: /docs/skills/luminary, doi:10.5281/zenodo.22145491
INVEST
Bill Wake's checklist for well-formed user stories — Independent, Negotiable, Valuable, Estimable, Small, Testable. `/ticket` enforces all six for stories. Epics only need V (Valuable) + N (Negotiable) since they break I/E/S/T by definition.
hook
A shell script bassclef wires into Claude Code's tool-invocation lifecycle. Hooks fire at events like PreToolUse (before an Edit lands) or SessionStart (when a session opens). Hooks enforce rules mechanically — a rule says 'don't do X'; a hook fires and BLOCKs if X happens.
rule
A markdown file auto-loaded into every session's context. Rules pin discipline the agent applies to every response (plain-English writing, blocked-items protocol, temperance gates). Different from a hook — rules are steering; hooks are enforcement.
skill
A user-invocable command (like `/kiss` or `/temperance`) that runs a specific bassclef workflow. Every skill lives at `.claude/skills/<name>/SKILL.md` with frontmatter + procedure. Adopters type the slash command; Claude Code loads the skill and runs it.
adopter
A repo that has bassclef installed — either via `bassclef init` (lite tier from npm) or via the symlink pattern (standard tier with an Anthropic key). Bassclef's discipline: never break adopters. Every change to a downstream-observable surface ships with a compat shim.

Shipped by @kingofrock · Read the essays

On this page

© 2025–2026 Sunjay Pandey·Privacy·Apache-2.0 code