popup-studio-ai/bkit-claude-code/sprint

Claude Code and agent skill by popup-studio-ai/bkit-claude-code

Trust tier 2
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Sprint Management — generic sprint capability for ANY bkit user. 16 sub-actions: init, start, status, watch, phase, iterate, qa, report, archive, list, feature, pause, resume, fork, help, master-plan. Triggers: sprint, sprint start, sprint init, sprint status, sprint list, master plan, multi-sprint plan, sprint master plan

Install

npx vskill@latest install popup-studio-ai/bkit-claude-code/sprint

SKILL.md

Sprint Skill — Generic Sprint Management for bkit Users

Sprint = meta-container above bkit's PDCA 9-phase. A sprint groups one or
more features under a shared scope, budget, and timeline. Each sprint runs
its own 8-phase lifecycle: prd -> plan -> design -> do -> iterate -> qa
-> report -> archived.

Quick Start

/sprint init my-launch --name "Q2 Launch" --trust L3
/sprint start my-launch

The skill handler routes through <bkit-root>/scripts/sprint-handler.js (bkit convention — handlers live at the bkit repo root scripts/ directory, NOT inside skills/<name>/scripts/). The handler composes Sprint 3 adapters (state-store + telemetry + doc-scanner + matrix-sync) into Sprint 2 use cases (start / advance / iterate / qa / report / archive). Sprint 1 entities (createSprint / SprintEvents / typedefs) are produced and consumed transparently along the way.

Resolving `scripts/sprint-handler.js` in this document: throughout
this SKILL.md, references to scripts/sprint-handler.js mean
<bkit-root>/scripts/sprint-handler.js (the canonical location).
LLM dispatchers MUST NOT compose skills/sprint/scripts/sprint-handler.js
— that path does not exist (Issue #107, fixed v2.1.19 S2 F2-1).

Arguments

ArgumentDescriptionExample
init <id>Create a sprint with default config/sprint init my-launch
start <id>Run auto-run loop bounded by Trust Level scope/sprint start my-launch --trust L3
status <id>Show current sprint state from disk/sprint status my-launch
listUnion of state-store entries and master-plan discoveries/sprint list
phase <id> --to <phase>Advance to a specific phase/sprint phase my-launch --to qa
iterate <id>Run matchRate-100 loop (max 5 cycles)/sprint iterate my-launch
qa <id> --feature <name>Run 7-Layer data-flow check on one feature/sprint qa my-launch --feature auth
report <id>Generate KPI + lessons + carry-items report/sprint report my-launch
archive <id>Move to terminal archived status/sprint archive my-launch
pause <id>Manually pause a running sprint/sprint pause my-launch
resume <id>Re-evaluate triggers and resume/sprint resume my-launch
watch <id>Live dashboard (Sprint 5 — current returns snapshot)/sprint watch my-launch
feature <id>Per-feature operations (Sprint 5)/sprint feature my-launch --feature auth
fork <id>Fork into a new sprint (Sprint 5)/sprint fork my-launch --new my-launch-v2
helpPrint sub-action help/sprint help
master-plan <project>Generate multi-sprint Master Plan (agent isolated spawn)/sprint master-plan q2-launch --name "Q2 Launch" --features auth,payment
measure <id>Measure single gate / multi-gate / phase batch (v2.1.16 #94)/sprint measure my-launch --gate M4

Trust Level Scope (auto-run boundary)

LevelStop afterManualNotes
L0prdtrueEach phase requires user approval
L1prdtrue (hint)Hint mode but still manual
L2designfalsePlan -> Design auto, Do requires approval
L3reportfalsePlan -> Report auto, Archive requires approval (default)
L4archivedfalseFull auto including archive (Trust >= 85 recommended)

Auto-Pause Safety Pins

Four armed triggers can pause a running sprint:

  • QUALITY_GATE_FAIL — M3 > 0 OR S1 < 100
  • ITERATION_EXHAUSTED — iter >= 5 AND matchRate < minAcceptable
  • BUDGET_EXCEEDED — cumulativeTokens > config.budget
  • PHASE_TIMEOUT — phase elapsed > config.phaseTimeoutHours

Pause writes an audit log entry and a SprintPaused event. Resume re-evaluates the triggers and refuses if any are still firing.

Cross-Sprint Architecture (Sprint 1+2+3+4)

USER COMMAND
v
skills/sprint/SKILL.md (this file — frontmatter triggers in 8 languages)
v
scripts/sprint-handler.js (English dispatcher)
v
Sprint 3: lib/infra/sprint -> { stateStore, eventEmitter, docScanner, matrixSync }
v
Sprint 2: lib/application/sprint-lifecycle -> startSprint / advancePhase / ...
v
Sprint 1: lib/domain/sprint -> createSprint / SprintEvents / typedefs
v
DISK: .bkit/state/sprints/<id>.json + .bkit/audit/<date>.jsonl

Examples

See:

  • examples/basic-sprint.md
  • examples/multi-feature-sprint.md
  • examples/archive-and-carry.md

When NOT to Use

  • Single-feature PDCA work — use bkit:pdca instead
  • Starter level projects — sprint overhead exceeds value
  • One-off bug fixes that do not warrant a master plan

Delegation notes

Extended trigger keywords, moved here from the frontmatter description (issue #129 token diet) — one anchor per language stays in the description; the full multilingual list is preserved below:

  • JA: スプリント開始, スプリント状態, マスタープラン, マルチスプリント計画, スプリントマスタープラン
  • ZH: 冲刺开始, 冲刺状态, 主计划, 多冲刺计划, 冲刺主计划
  • ES: iniciar sprint, estado sprint, plan maestro, plan multi-sprint, plan maestro sprint
  • FR: demarrer sprint, statut sprint, plan maître, plan multi-sprint, plan maître sprint
  • DE: Sprint starten, Sprint Status, Masterplan, Multi-Sprint-Plan, Sprint-Masterplan
  • IT: avviare sprint, stato sprint, piano principale, piano multi-sprint, piano principale sprint

Related Skills and Agents

  • bkit:pdca — single-feature PDCA cycle (foundation primitive)
  • bkit:control — automation level (L0-L4) — surfaces SPRINT_AUTORUN_SCOPE
  • bkit:sprint-orchestrator (agent) — full lifecycle coordinator
  • bkit:sprint-master-planner (agent) — plan/design generation
  • bkit:sprint-qa-flow (agent) — 7-Layer dataFlowIntegrity verifier
  • bkit:sprint-report-writer (agent) — KPI + lessons + carry items

10. Skill Invocation Contract (for LLM Dispatchers)

This contract specifies how an LLM dispatcher should construct the args object for each of the 16 sub-actions when invoking the underlying handler via scripts/sprint-handler.js.

10.1 Args Object Schema (per action)
ActionRequiredOptionalExample call
initid, nametrust/trustLevel, phase, context, featuresargs = { id: "my-launch", name: "Q2 Launch", trust: "L3" }
startid, nametrust/trustLevel, phase, context, featuresargs = { id: "my-launch", name: "Q2 Launch" } (resume preserves phase)
statusid—args = { id: "my-launch" }
list——args = {}
phaseid, toapprove (boolean), reason (string)args = { id: "my-launch", to: "do", approve: true, reason: "Design review complete" }
iterateid—args = { id: "my-launch" }
qaid, featureName—args = { id: "my-launch", featureName: "auth" }
reportid—args = { id: "my-launch" }
archiveidprojectRootargs = { id: "my-launch" }
pauseidtriggerId, severity, messageargs = { id: "my-launch", triggerId: "USER_REQUEST" }
resumeid—args = { id: "my-launch" }
watchid—args = { id: "my-launch" }
featureid, actionfeatureName (required for add/remove)args = { id: "my-launch", action: "list" }
forkid, newId—args = { id: "my-launch", newId: "my-launch-v2" }
help——args = {}
master-planid (projectId), name (projectName)features (CSV or array), trust/trustLevel, context, projectRoot, force (boolean), durationargs = { id: "q2-launch", name: "Q2 Launch", features: ["auth", "payment"] }
measureidone of: gate (string) / gates (CSV or array) / phase (string); plus trustLevel, source ('manual'\'auto'), agentTaskRunner (function in deps)args = { id: "my-launch", gate: "M4" }
10.1.2 measure action semantics (v2.1.16, Issue #94 F3)

/sprint measure <id> is the user-invokable partial-gate measurement command added in v2.1.16. It routes the requested gate(s) through lib/application/quality-gates/measure-router.js (single SoT shared with sprint-orchestrator self-assessment) and persists results into sprint.qualityGates subject to Trust Level scope.

Three invocation modes (mutually exclusive precedence: gate > gates > phase):

bash
/sprint measure my-launch --gate M4 # single gate
/sprint measure my-launch --gates M4,M8 # multi-gate (CSV)
/sprint measure my-launch --phase design # phase batch (ACTIVE_GATES_BY_PHASE[design])

Agent routing (Master Plan §11.3 AC4 — 7 gates × 4 agents):

GateAgentSource artifact
M1gap-detectorDesign §9 API Contract ↔ shipped implementation
M2code-analyzerlib/ + tests/ quality scan
M3gap-detectorcritical severity issue scan
M4gap-detectorDesign §9 API Contract ↔ module boundaries (#92)
M7code-analyzerstyle + naming convention scan
M8sprint-orchestratordesign §14 self-assessment checklist
S1sprint-qa-flow7-Layer hop traversal

Gates outside this table (M5, M10, S2, S4) return { ok: false, reason: 'unsupported_gate' } — carried to v2.1.17.

Trust Level scope (Master Plan AC5):

  • L0 / L1: preview mode — measurement returned but

sprint.qualityGates NOT updated, no gate_measured audit entry.

  • L2 / L3 / L4: record mode — qualityGates updated +

gate_measured audit entry emitted per gate.

Audit emission (when in record mode):

json
{
"action": "gate_measured",
"category": "sprint",
"actor": "user",
"target": "<sprintId>",
"details": {
"sprintId": "...", "gateKey": "M4", "field": "M4_apiComplianceRate",
"agent": "gap-detector", "value": 100, "threshold": 95, "passed": true,
"source": "manual", "phase": "design", "trustLevel": "L3",
"previousValue": null
}
}

ENH-292 alignment: multi-gate / phase batch dispatches measurements sequentially (no Promise.all) to avoid #56293 sub-agent caching 10x.

Dispatcher requirement: the LLM dispatcher (main session) must inject deps.agentTaskRunner wrapping Claude Code's Task tool. Without it the use case returns reason: 'no_agent_runner' per gate (deterministic, not silent fail). The handler layer exposes createTaskToolRunner({ invokeTaskTool }) (in scripts/lib/sprint-handler-shared.js, re-exported from scripts/sprint-handler.js) to build this wrapper:

javascript
const { createTaskToolRunner } = require('<bkit-root>/scripts/lib/sprint-handler-shared');
const runner = createTaskToolRunner({
invokeTaskTool: async ({ subagent_type, prompt }) => {
// delegate to Claude Code's Task tool in the main session
return { text: await callTaskTool({ subagent_type, prompt }) };
},
});
await handleSprintAction('measure', { id, gate }, { agentTaskRunner: runner });

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
583
Repository forks
148
7-day trend score
32

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/popup-studio-ai/bkit-claude-code/sprint/badge)](https://verified-skill.com/skills/popup-studio-ai/bkit-claude-code/sprint)

Something wrong with this skill or its page? Tell us.