Pre-ticket Fibonacci sizing for pasted stories; advisory by default, writes a Sizing Report. Opt-in auto-create adds a confirm gate. NOT for single-ticket sizing (mk:jira-estimator).
Scanned 9/6/2026
Install to Claude Code
npx -y skills add ngocsangyem/MeowKit --skill mk-story-sizer --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Mk Story Sizer?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ngocsangyem-mk-story-sizer-meowkit)More formats (shields.io, HTML) on the badges page.
---
name: "mk-story-sizer"
description: "Pre-ticket Fibonacci sizing for pasted stories; advisory by default, writes a Sizing Report. Opt-in auto-create adds a confirm gate. NOT for single-ticket sizing (mk:jira-estimator)."
---
# mk:story-sizer
Forks to the `story-sizer` custom agent. v1 ships paste-mode only: the user provides a markdown block of stories, the agent applies heuristics, and a Story Sizing Report is written to `tasks/reports/story-sizing-{YYMMDD}-{slug}.md`. No Jira side effects in default mode.
## Triggers
- "size these stories"
- "rough-size from spec"
- "pre-ticket sizing for these user stories"
- "Fibonacci size this story list"
- "story points for these candidates before we create tickets"
## Commands
| Mode | Invocation | Side effects |
| ----------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| Default | `the story-sizer skill --paste [--scout] [--story <id>]` | Writes Story Sizing Report only. No Jira calls. |
| Auto-create | `the story-sizer skill --paste --auto-create --project <KEY> [--epic <KEY>]` | After dry-run + single confirmation, delegates ticket creation per story. |
## Input
Paste-mode contract: see `references/input-adapter.md` for the strict markdown template, `StoryRecord` schema, validation rules, and failure modes. The parser is `scripts/parse-paste-stories.py` (deterministic; SHA-256 source-hash recorded for the auto-create source-consistency check).
## Heuristics
Fibonacci sizing rules: see `references/sizing-heuristics.md` for complexity dimensions, scoring tables, inconsistency detection, split-proposal triggers, and DoR advisory. Scorer is `scripts/score-story.py` (integer-arithmetic over text-derived counts; same input → same numeric output).
## Output
Report template + slot semantics: `references/report-writer.md`. Renderer is `scripts/write-sizing-report.py`. Default path: `tasks/reports/story-sizing-{YYMMDD}-{slug}.md`. Idempotency by `source_hash` — repeated runs on the identical paste body re-prompt before overwriting.
Per-story suggested create commands obey the v1 field whitelist: `--project`, `--type`, `--summary`, `--story-points`, `--description`, optional `--epic`, `--components`, `--labels`. No `--assignee`, `--priority`, `--sprint`, `--blocks`, or `--custom-fields` in v1.
## Orchestration
End-to-end default flow + `--scout` extract-or-prompt pattern + filtering rules: `references/orchestration.md`. Story-sizer NEVER auto-invokes `the scout skill` — it extracts existing session output or prompts the user to run scout first.
## Auto-create (opt-in)
`--auto-create --project <KEY> [--epic <KEY>]` runs 5 pre-flight checks (NO_ACS, Rule-1 injection, length cap, duplicate suspect via `mk:jira-search`, source-hash mismatch). If all pass, a markdown dry-run table renders + a single `stop and ask the user in chat` gate decides ship-or-abort. Gating rules: `references/auto-create-gating.md`. Rule-1 inventory copy: `references/injection-patterns.md`. Gating check: `scripts/check-auto-create-gating.py`.
## See also
- Agent: `../../agents/story-sizer.md`
- Peer intelligence: `mk:jira-evaluator` (post-ticket complexity), `mk:jira-estimator` (post-ticket estimation), `mk:planning-engine` (sprint capacity)
- Peer execution (delegated): `mk:jira-issue` (create), `mk:jira-collaborate` (audit comment via `--internal`)
- Shared: `../jira/references/estimation-guide.md` (Fibonacci heuristic conventions)
## Gotchas
- The `source_hash` recorded in the report header is the SHA-256 of the _exact_ paste body. If you edit the paste locally between sizing and `--auto-create`, the source-consistency check will ABORT — re-paste the modified body and re-run `--paste` to regenerate the report.
- `--scout` does not auto-invoke `the scout skill`. Run `the scout skill` first when you want codebase signals; otherwise the report carries `[NO_CODEBASE_CONTEXT]`.
- DoR advisory only appears when `mk:agent-detector` loaded the agile story gates rule for the current session.Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!