Linear Integration Skill
Overview
This skill provides instructions for accessing and working with Linear data through the Linea agent. Use this when the user asks about:
- •Issues, tickets, or bugs
- •Sprint/cycle status
- •Project progress
- •Team workload
- •Blockers and stalled work
Available Tools
Query Tools (Read-Only)
| Tool | Purpose | When to Use |
|---|---|---|
get_linear_issues | Fetch issues with filters | General issue queries, blockers, stalled work |
get_linear_issue_details | Get full issue details | When you need specifics about one issue |
search_linear_issues | Text search across issues | When user mentions specific keywords |
get_linear_project_status | Project health and progress | Project status questions |
get_linear_team_workload | Workload distribution | Capacity and workload questions |
get_linear_cycle_status | Sprint/cycle progress | Sprint status questions |
Action Tools (Explicit Request)
| Tool | Purpose | When to Use |
|---|---|---|
create_linear_issue | Create a new issue | Use when the user explicitly asks to file/create a ticket |
add_linear_comment | Add comment to issue | Use when the user wants to add context or questions |
update_linear_ticket | Update issue fields | Use when the user wants to change priority, assignee, etc. (confirm if unclear) |
Instructions
1. Understand the Request Type
Categorize the user's request:
- •Status Query: "How's the sprint?", "What's blocking us?" → Use query tools
- •Specific Lookup: "What's issue ABC-123 about?" → Use
get_linear_issue_details - •Search: "Find issues about authentication" → Use
search_linear_issues - •Action Request: "Update the priority" → Use action tools (require approval)
- •Create Request: "Create a ticket for X" → Use
create_linear_issuewith required fields
2. Choose the Right Filter
For get_linear_issues, use appropriate filters (and optional assignee filtering):
- •"my_issues": Current user's assigned issues
- •assignee: "Full Name" (or email) to filter by assignee
- •assigneeId: "user-id" to filter by assignee ID (preferred when known)
- •"team_issues": All team issues
- •"blockers": Issues marked as blocked
- •"stalled": Issues with no activity for 7+ days
- •"recent": Recently updated issues
3. Provide Actionable Summaries
When presenting Linear data:
- •Lead with what matters - Blockers first, then risks, then status
- •Use ticket identifiers - Always include IDs like "ABC-123"
- •Show assignees - "@name" format for quick identification
- •Suggest next steps - Don't just report, recommend
4. Handle Missing Data Gracefully
If Linear returns no results:
- •Check if the integration is connected
- •Suggest the user verify their Linear workspace
- •Offer alternative queries
Example Workflows
Sprint Status Check
- •Call get_linear_cycle_status to get current sprint
- •If completion < expected, call get_linear_issues(filter: "stalled")
- •Summarize: completion %, blockers, at-risk items
- •Suggest actions for blockers
Blocker Investigation
- •Call get_linear_issues(filter: "blockers")
- •For each blocker, note: assignee, age, dependencies
- •Identify who can unblock (check mentions, related issues)
- •Offer to add comments or escalate
Workload Analysis
- •Call get_linear_team_workload
- •Identify overloaded team members (>50% above average)
- •Check for unassigned high-priority issues
- •Suggest rebalancing if needed
Best Practices
- •Be proactive - Don't just answer, anticipate follow-ups
- •Show context - Include relevant links and IDs
- •Respect privacy - Don't judge individual performance
- •Confirm actions - Always get approval before modifying data