Linear Issue Management
Manage Linear issues, branches, and PRs with enforced workflow and cross-linking.
Team: IntexuraOS — ALWAYS use this exact team name for all Linear API calls. Never guess.
Project Key: INT- (e.g., INT-123, INT-144). All issue references use generic LIN-XXX placeholders, but for this project always use INT-XXX.
Usage
/linear # NON-INTERACTIVE: Pick random Todo issue /linear <task description> # Create new issue /linear INT-123 # Work on existing issue /linear <sentry-url> # Create issue from Sentry error
Core Mandates
- •Branch First: EVERY task MUST start with branch creation from
origin/development. Task FAILS if work starts ondevelopmentormain. - •Fail Fast: If Linear, GitHub CLI, or GCloud are unavailable, STOP immediately
- •No Guessing: When issue type is ambiguous, ASK the user
- •Cross-Linking: Every issue MUST link between systems (Linear <-> GitHub <-> Sentry)
- •CI Gate:
pnpm run ci:trackedMUST pass before PR creation — NON-NEGOTIABLE, no shortcuts - •State Management (MANDATORY): EVERY issue MUST transition through states: Backlog → In Progress (when starting) → In Review (when PR created). NEVER skip or delay state updates.
- •One Issue at a Time: Complete verification, commit, and PR for EACH issue before starting the next
- •Checkpoint Pattern: After completing an issue, STOP and wait for user instruction before proceeding
- •Done Forbidden: Never move issues to Done — maximum agent-controlled state is QA
- •95% Coverage MINIMUM: All tests listed in issues MUST be implemented. Do NOT simplify work.
Invocation Detection
The skill automatically detects intent from input:
| Input Pattern | Type | Workflow |
|---|---|---|
/linear (no args) | Random Todo | random-todo.md |
/linear <task description> | Create New | create-issue.md |
/linear INT-<number> | Work Existing | work-existing.md |
/linear https://sentry.io/... | Sentry Integration | sentry-integration.md |
Auto-Splitting Detection
For complex multi-step tasks, auto-splitting is triggered when:
- •Issue description has numbered phases (Phase 1, Phase 2...)
- •Issue description has >5 checkbox items
- •Issue description >2000 characters with clear sections
- •User explicitly says "split this into subtasks"
When detected, see: plan-splitting.md
Tool Verification (Fail Fast)
Before ANY operation, verify all required tools:
| Tool | Verification Command | Purpose |
|---|---|---|
| Linear MCP | mcp__linear__list_teams | Issue management |
| GitHub CLI | gh auth status | PR creation |
| GCloud | Service account verification | Firestore access |
GCloud Verification
Service account key location: ~/personal/gcloud-claude-code-dev.json
- •Check if credentials file exists
- •If
gcloud auth listshows no active account, activate service account - •Verify authentication
You are NEVER "unauthenticated" if the service account key file exists.
Failure Handling
If ANY required tool is unavailable, ABORT immediately:
ERROR: /linear cannot proceed - <tool-name> unavailable Required for: <purpose> Fix: <fix-command> Aborting.
GitHub Integration (Critical)
For PRs to appear as attachments in Linear UI:
- •Branch name MUST contain Linear issue ID - e.g.,
fix/INT-123 - •PR title MUST contain Linear issue ID - e.g.,
[INT-123] Fix auth
When both conditions are met, GitHub integration automatically attaches PR to Linear issue.
References
- •Workflows:
workflows/ - •Templates:
templates/ - •Reference:
reference/