work-story
Work a user story end to end — fetch the ticket, plan (with approval), implement, verify the applicable gates, self-review, open the PR, and update the…
Fetch a work item (summary, status, description, acceptance criteria, comments) from the team's issue tracker and display a clean summary. Supports Jira, Linear, GitHub Issues, and Azure DevOps via adapters. Use whenever a prompt contains an issue reference (e.g. PROJ-1234,
$ npx -y skills add theam/claude-dev-kit --skill issue-fetch --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/issue-fetchContext preview
The summary Claude sees to decide when to auto-load this skill.
Fetch a work item (summary, status, description, acceptance criteria, comments) from the team's issue tracker and display a clean summary. Supports Jira, Linear, GitHub Issues, and Azure DevOps via adapters. Use whenever a prompt contains an issue reference (e.g. PROJ-1234,
name: issue-fetch description: Fetch a work item (summary, status, description, acceptance criteria, comments) from the team's issue tracker and display a clean summary. Supports Jira, Linear, GitHub Issues, and Azure DevOps via adapters. Use whenever a prompt contains an issue reference (e.g. PROJ-1234, ENG-42, #123) or the user asks to work on a user story.
Fetch full context for a work item before any planning or implementation begins. The tracker is configured once (see below); this skill speaks to whichever one the team uses.
Any prompt containing an issue reference, or an explicit request to fetch/work on a story. Reference shapes differ by tracker:
| Tracker | Key shape | Example | |---|---|---| | Jira | `[A-Z][A-Z0-9]+-\d+` | `PROJ-1234` | | Linear | `[A-Z]+-\d+` | `ENG-42` | | GitHub Issues | `#\d+` or `owner/repo#\d+` | `#123` | | Azure DevOps | `#?\d+` (work item id) | `#4567` |
Read `.claude/dev-kit.json` at the consuming repo root. The `tracker` block names the active adapter and its settings:
{ "tracker": { "type": "jira" | "linear" | "github" | "azure", ... } }**If the file does not exist (or has no `tracker` block), run the `dev-kit-setup` skill first** — it detects the tracker, gathers what it needs, persists the file, and returns here. Do not ask the user for values that setup can discover.
If the requested key's project/prefix does not match the configured one, confirm with the user before fetching (it may be a cross-project item — allowed, just not silently).
Use the adapter matching `tracker.type`. In every case request at minimum: **summary/title, type, status, priority, assignee, reporter, labels, description, acceptance criteria, and all comments** (plus story points and sprint/cycle when the tracker has them).
Config: `site`, `cloudId`, `projectKey`, `fields` (custom field IDs for acceptance criteria / sprint / story points). Use the **Atlassian MCP** tools against the configured site to get the issue and its comments, reading acceptance criteria via the configured field IDs.
Config: `teamKey` (and optionally `workspace`). Use the **Linear MCP** tools to fetch the issue by identifier, its description, labels, state, assignee, and comments. Acceptance criteria usually live in the description body or a checklist — extract them from there.
Config: `repo` (`owner/name`); defaults to the current repo's `origin` when omitted. Fetch with the GitHub CLI (no MCP needed):
gh issue view <number> --repo <owner/name> --json number,title,state,labels,assignees,body,comments
Acceptance criteria are parsed from the issue body (task lists / a "Acceptance criteria" section).
Config: `org`, `project`. Fetch via the Azure DevOps MCP if configured, otherwise the REST API / `az boards work-item show --id <id>`. Map fields: `System.Title`, `System.State`, `System.Description`, `Microsoft.VSTS.Common.AcceptanceCriteria`, and the work-item comments.
If the adapter's backend is not authenticated (MCP connector not authorized, `gh`/`az` not logged in), tell the user exactly how to authenticate — MCP connectors via `/mcp` or claude.ai connector settings; CLIs via `gh auth login` / `az login` — and stop. **Never invent ticket content.**
Display a concise summary before doing anything else:
===== KEY ===== Summary : ... Type : ... Status : ... Priority : ... Assignee : ... Points : ... (omit if the tracker has no such field) Sprint : ... (omit if the tracker has no such field) Labels : ... --- Description --- ... --- Acceptance Criteria --- ... --- Comments (N) --- [date] author: ...
1. If the description or comments contain a **Figma URL** (`figma.com/(design|file)/...`), invoke the `figma-fetch` skill next. 2. Present an **implementation plan** and **wait for explicit user approval** before writing any code (see the issue-to-PR workflow). Never skip this gate unless the caller explicitly says the plan is pre-approved.
An open-source Claude Code plugin by The Agile Monkeys: a stack-agnostic issue-to-PR workflow with enforced quality gates. Also runs on OpenAI Codex, Cursor, and other Agent Plugins 1.0.0 clients.
Repo: theam/claude-dev-kit
Work a user story end to end — fetch the ticket, plan (with approval), implement, verify the applicable gates, self-review, open the PR, and update the…
Run the repo's unit tests with coverage and verify that every file touched in the current change keeps line, branch, and function coverage at or above 95%.…
Create a branch, commit the work, and open a pull request for a completed user story, after all quality gates pass. Use when the user asks to open/create a PR…
First-use bootstrap for the dev kit. Detects the team's issue tracker, discovers what it can via MCP/CLI, asks only what cannot be discovered, and persists the…
Create or update end-to-end tests for a user-facing flow that changed, using whatever e2e framework the repo already uses. Use after implementing a user story…
Extract frame/component structure and all visible text from a Figma design URL. Use whenever a prompt or a fetched issue contains a figma.com/design or…