About kata-linear
kata-linear structures Linear ticket work into start, next, and complete workflows for coding agents. It adds dependency checks, project context, branch creation, and evidence gates while delegating actual MCP calls to the general /linear skill.
Key features
- 01Routes start, next, and complete requests
- 02Checks issue blocking dependencies
- 03Loads project documents and code context
- 04Creates a feature branch
- 05Records completion evidence and promotes downstream issues
Use cases
- 01Starting a Linear issue with dependency checks
- 02Choosing the next Todo or unblocked Backlog issue
- 03Verifying tests and acceptance evidence before completion
MCP support
The skill delegates actual MCP calls to the general /linear skill, using Linear issue, project, document, and comment operations as specified by its workflows.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ gannonh/ skills --skill kata-linearAfter installing, type/kata-linearin Claude Code to confirm it loaded.
Details
From the project READMELinear Ticket Lifecycle
This skill wraps the general /linear skill with structured start/next/end workflows.
Always invoke the /linear skill for the actual MCP calls when using this skill.
Determining the Mode
Parse the user's request to determine which workflow to run:
| User says | Mode |
|---|---|
| "start KAT-N", "pick up KAT-N", "implement KAT-N", "work on KAT-N" | Start |
| "finish KAT-N", "complete KAT-N", "done with KAT-N", "close KAT-N" | Complete |
| "what's next", "what should I work on", "next ticket", "next issue" | Next |
If ambiguous, ask.
Identifying the Project
- Check the current working directory's AGENTS.md for a Linear project reference.
- If not found, call
list_projectsand ask the user which project to use. - Cache the project name for the remainder of the session and update AGENTS.md for future reference.
Mode: Next
Find the next actionable issue.
- Query
list_issuesfor the project with stateTodo. - If results exist, present them. The first
Todoissue is the recommended next pick. - If no
Todoissues, resolve from blocking relations: a. Querylist_issuesfor the project with stateBacklog. b. For each Backlog issue, callget_issuewithincludeRelations: true. c. Find issues whoseblockedByentries are allDone(or have no blockers). - If multiple candidates, determine if they can be run concurrently in isolated worktrees in two ways: a. Re-check Linear tickets (scope + blockers); then b. Inspect the current code boundaries they would touch to see if there’s hidden coupling.
- Present unblocked issues as candidates, including concurrency guidance/risks.
- If the project has Linear documents (execution model, workflow contract), fetch them
with
list_documentsandget_documentto understand pillar/phase ordering.
Mode: Start
Step 1 — Validate the issue
- Call
get_issuefor the requested issue withincludeRelations: true. - Check every entry in
blockedBy. For each blocker, confirm its status isDone. - If any blocker is not
Done, stop and report which blockers remain open.
Step 2 — Move to In Progress
- Call
update_issueto set state toIn Progress.
Step 3 — Load context
- Read the issue description for references to specs, mocks, docs, or design files.
- Read Linear documents (execution model, workflow contract) for project-specific guidance.
- Read relevant spec files, mock images, or design references found in steps 1 and 2.
- Check existing source code in the areas the issue will touch.
Step 4 — Create feature branch
- Use the
gitBranchNamefield from the issue response as the branch name. - Create the branch from the main branch.
Step 5 — Summarize
Present to the user:
- Issue title and acceptance criteria
- Blocker status (all clear)
- Context loaded (specs, mocks, relevant code)
- Branch name created
- Any project-specific workflow reminders from AGENTS.md (e.g., TDD mandate)
Mode: Complete
Step 1 — Gather evidence
Gather evidence:
- PR link or branch with changes
- Test results (unit and/or E2E)
- Screenshots/video or spec-state references demonstrating acceptance criteria
If a PR already exists on the current branch, detect it with gh pr view.
Step 2 — Validate completion gate
Check if the project's CLAUDE.md or Linear workflow contract defines a hard gate. Common gates:
- Referenced spec states/interactions are verified
- Evidence links are attached (tests, screenshots, or traceable PR notes)
- Gap analysis items are either closed or split into follow-up issues
- Acceptance criteria are all marked as verified in the issue checklist
- Definition of Done checklist is completed
If evidence is insufficient, list what's missing and stop.
Step 3 — Attach evidence to the issue & PR
- Call
create_commenton the issue with a structured evidence summary:## Completion Evidence - PR: [link] - Tests: [pass/fail summary] - Acceptance coverage: [which criteria verified] - Screenshots/video: [if applicable] - Add the same summary as a comment on the PR.
Step 4 — Promote next in chain
- Call
get_issuewithincludeRelations: trueon the completed issue. - For each issue in the
blockslist: a. Callget_issuewithincludeRelations: trueon that downstream issue. b. Check if ALL of itsblockedByentries are nowDone. c. If yes, callupdate_issueto move it toTodo. d. Report which issue was promoted.
(Note: the current ticket will automatically move to Done when the PR is merged).
Step 5 — Summarize
Present:
- Issue marked Done with evidence link
- Which downstream issue(s) were promoted to Todo
- Suggested next action
Important Reminders
- Always pass
includeRelations: truewhen callingget_issueto see blocking dependencies. - Always reference the attached media as the source of truth for design specs and mocks.