From full-orchestration
Fetch and parse a ticket from Jira, Linear, or GitHub Issues. Use when starting work on a ticket, beginning a new feature, or when given a ticket ID or issue URL. Accepts a ticket ID or full URL as argument, auto-detects the ticketing system, and produces a structured requirements summary.
npx claudepluginhub shouenlee/ghcp-dev-plugin --plugin full-orchestrationThis skill uses the workspace's default tool permissions.
**State file**: `.claude/swe-state/{ticket-id}.json`
Fetches JIRA issues by key or search, distills into structured tasks, analyzes codebase for gaps and risks, optionally enriches JIRA or spawns subtasks. Use before coding workflows.
Creates well-structured tickets in Linear, GitHub, or Jira trackers by reading jig.config.md, gathering git context, and interviewing for title, issue type, estimate, and description.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
State file: .claude/swe-state/{ticket-id}.json
Fetch a ticket, parse requirements, present a summary for user confirmation.
/ticket_intake PROJ-123
/ticket_intake https://myorg.atlassian.net/browse/PROJ-123
/ticket_intake #42
| Input Pattern | System | Fetch Method |
|---|---|---|
URL with atlassian.net or jira | Jira | MCP: getJiraIssue |
URL with linear.app | Linear | MCP: linear_get_issue |
URL with github.com, or bare #N | GitHub | gh issue view |
PROJ-123 pattern | Jira (default) | MCP: getJiraIssue |
| Unrecognized | Unknown | Prompt user |
Note: Tool names are for the official Atlassian Rovo and Linear MCP servers. Community servers may use different names (e.g.,
jira_get_issueforsooperset/mcp-atlassian).
Extract ticket ID from the input (Jira key from path, GitHub number, Linear ID).
Jira: getJiraIssue with issueIdOrKey. If MCP unavailable:
claude mcp add --transport sse atlassian https://mcp.atlassian.com/v1/sse
Linear: linear_get_issue with issueId. If MCP unavailable:
claude mcp add --transport sse linear-server https://mcp.linear.app/sse
GitHub: gh issue view <N> --json title,body,comments,labels,assignees,milestone
Generic: Ask user for a curl command or API endpoint.
Parse fetched data into structured fields: title, description, acceptance criteria, comments (with author/timestamp), linked issues, labels, priority, assignee.
For acceptance criteria, search the description for:
- [ ] / - [x] checkboxesExtract keywords (file names, function names, endpoints, class names) from the ticket. Use Grep and Glob to search the codebase. Categorize matches as existing (needs modification), new (referenced but doesn't exist), or test (related test file). Deduplicate and rank by relevance.
Display the summary (source, title, priority, requirements, acceptance criteria, linked issues, affected areas). Ask the user to review — they can edit, add context, or confirm.
On confirmation, write .claude/swe-state/{ticket-id}/ticket.json:
{
"ticket_id": "",
"source": "jira|linear|github|generic",
"url": "",
"title": "",
"description": "",
"acceptance_criteria": [],
"comments": [{"author": "", "body": "", "timestamp": ""}],
"linked_issues": [{"id": "", "relationship": "", "title": ""}],
"labels": [],
"priority": "",
"assignee": "",
"affected_areas": [{"path": "", "category": "existing|new|test", "reason": ""}]
}
Then update pipeline state: set stages.intake.completed = true.