tick-it
Installation
SKILL.md
Tick It
Turn one approved source into dependency-aware implementation tickets in TODO.md. The source may be an approved Spec, plan, or clearly identified conversation. Do not invent requirements, write Spec records, create ordinary TODOs, or create GitHub Issues or separate ticket files.
Draft
- Inspect applicable repository instructions, terminology, relevant code and tests, and the current
TODO.md. If the source is ambiguous, ask which source to use before drafting. - Split work into tracer-bullet vertical slices: each ticket delivers a narrow, complete behavior or contract that can be implemented and verified independently. Avoid layer-only tickets unless a real technical dependency requires them.
- For a wide mechanical refactor that cannot land incrementally, use expand–migrate–contract: add compatible support, migrate callers/data, then remove obsolete support. Do not use this sequence for ordinary feature work.
- Add only genuine blocker edges: the dependent ticket cannot be built or meaningfully verified until the blocker is complete. Never add ordering-only dependencies. Blockers must be existing or proposed Tickets.
- For each ticket, show its title, parent Spec,
Belongs toparent Ticket ID (orNone), blockers, user-facing outcome, and concrete acceptance criteria. - Show the whole proposed ticket set, proposed IDs, and dependency graph. Ask the user to review source alignment, granularity, dependencies, and criteria. Iterate and show the revised set until explicitly approved. Make no file changes before approval.
Validate and write
- After approval, allocate stable IDs in dependency order, following the highest numeric suffix in the current board; never reuse or renumber IDs. Re-read the latest
TODO.mdimmediately before writing and recalculate. If IDs or dependencies changed, show the updated proposal and obtain approval again. - Before writing, validate unique IDs, every blocker references a Ticket, every non-
NoneBelongs toreference resolves to one existing or proposed Ticket, and both dependency graphs are acyclic. Reject self-links and ambiguous/missing parents. If invalid, revise and validate again. - Append one card per approved ticket to its status column. New cards go in
## Readywhen unblocked, or## Blockedwhen they have incomplete blockers. Use this format: