Skip to main content

harness-pickup

Phase skill: fetch Linear ticket or parse task description into structured context

Jump to install

Source facts

Repository
cowcow02/agentfleet
Last source activity
April 9, 2026 at 07:45
Detected SKILL.md language
English
Stars
0
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
harness-pickup
description
Phase skill: fetch Linear ticket or parse task description into structured context
user-invocable
false
## Purpose Load the task context so all subsequent phases have a clear picture of what to build. ## Steps 1. **If ticket identifier (AGE-XX):** - Use `mcp__plugin_linear_linear__get_issue` to fetch the full ticket - Extract: title, description, acceptance criteria, labels, priority, assignee - If the ticket has linked issues or parent, note them as context 2. **If plain text description:** - Use the description as-is - Note: no labels or priority available, downstream phases should infer from content 3. **Update Linear ticket — assign to self and move to "In Progress"** — if the task is a Linear ticket (AGE-XX pattern): - Use a single `mcp__plugin_linear_linear__save_issue` call with both: - `state: "In Progress"` - `assignee: "me"` - This signals the team that work has started AND who is doing it, without manual board updates - The `assignee: "me"` resolves to the authenticated Linear user behind the MCP — safe to call even if already assigned to self (idempotent) - Skip the state update silently if the ticket is already in `In Progress` or a later state, but still set the assignee - Skip the entire step for plain-text tasks (no Linear ticket) 4. **Write to state outputs:** ```json { "ticket_id": "AGE-XX", "title": "...", "description": "...", "labels": [], "priority": "high|medium|low", "acceptance_criteria": "..." } ``` 5. **Initialize the conversation file** at `.harness/conversations/<task-id>.md` (pickup owns file creation): ``` # <task-id>: <title> ## Pickup **Ticket:** AGE-XX — <title> **Priority:** <priority> **Linear status:** moved to In Progress **Linear assignee:** self **Description:** <summary> <!-- Subsequent phases append their sections below --> ## Harness Issues <!-- Record any friction encountered during this implementation. Format per issue: ### [Phase] Brief title - What happened: <attempt and failure> - Root cause: <why the skill instruction was wrong/missing> - Workaround: <what you did instead> - Suggested fix: <specific edit to phase skill> - Turns wasted: <count> Leave empty if no friction occurred. --> ``` ## Checklist - [ ] Ticket/task context loaded - [ ] Linear ticket moved to "In Progress" and assigned to self (Linear tickets only) - [ ] Context written to state outputs - [ ] Conversation file initialized with Harness Issues section ## Escalation - If the ticket doesn't exist or Linear MCP fails, stop and tell the human - If the ticket description is empty or vague, note this and proceed — the understand phase will explore
View on GitHub