
linear-issue
by dairectiv
SKILL.md
name: linear-issue description: Creates structured Linear issues following team conventions. Use when the user asks to create a ticket, issue, or task in Linear, or mentions tracking work, bugs, features, improvements, chores, or spikes. allowed-tools: AskUserQuestion, mcp__linear__create_issue, mcp__linear__update_issue, mcp__linear__get_issue, mcp__linear__list_teams, mcp__linear__list_projects, mcp__linear__list_issue_labels, mcp__linear__get_team
Linear Issue Creator
This Skill helps create well-structured Linear issues following the team's conventions and templates.
When to Use
Use this Skill when the user:
- Asks to create a Linear ticket/issue/task
- Reports a bug that should be tracked
- Suggests a feature or improvement
- Mentions creating a spike or investigation task
- Asks to track technical debt or chores
- Asks to refine an existing issue
Default Values
Every issue created or refined via this Skill MUST have:
- Assignee: "Thomas Boileau"
- Project: "dairectiv"
- Status: "Todo" (refined issues go to Todo, unrefined stay in Backlog)
- Estimation: Required (see Estimation Guide below)
Estimation Guide
Use the Fibonacci scale for estimation. Estimation reflects complexity and effort:
| Points | Description | Examples |
|---|---|---|
| 1 | Straightforward, no complexity. Can be done very quickly manually or with AI. | Skills, Subagents, CLAUDE.md updates, trivial fixes |
| 2 | Light complexity manually or moderate with AI. | Simple feature, small refactor |
| 3 | Moderate complexity manually, or high with AI. | Feature with multiple files, integration work |
| 5 | High complexity, often introduces new technique. Default for Spike. | New architectural pattern, complex feature |
| 8 | Very large technical undertaking, even with AI. | Major refactoring, new bounded context |
Estimation by Issue Type
- Spike: Default to 5 (investigation effort is unpredictable)
- Documentation: 1-3 max (1 for Skills/Subagents/CLAUDE.md, higher for extensive docs)
- Bugfix: Same rules as other types (can range from 1 to 8 depending on complexity)
- Chore/CI/Build: Same rules as other types
Refined vs Unrefined Issues
| State | Status | Description |
|---|---|---|
| Refined | Todo | Issue created/updated via this Skill with full template, estimation, and assignment |
| Unrefined | Backlog | Issue created quickly without proper structure (to be refined later) |
Refinement Workflow
When asked to refine an existing issue:
- Fetch the issue using
mcp__linear__get_issue - Update the description with the appropriate template
- Add/adjust the estimation
- Change status from Backlog → Todo
- Ensure assignee is "Thomas Boileau" and project is "dairectiv"
Workflow
Step 1: Identify Issue Type
Determine the appropriate issue type based on the request:
- Feature: New functionality or capability
- Bugfix: Something is broken and needs fixing
- Refactor: Code refactoring without behavior change
- Performance: Performance improvements
- Documentation: Adding or updating documentation
- Test: Adding or updating tests
- Chore: Maintenance, dependencies, or tooling
- Style: UI/styling changes
- Build: Build system or dependencies
- CI: CI/CD configuration
- Revert: Reverting previous changes
- Spike: Research or investigation needed
If unclear, ask the user which type fits best.
Step 2: Gather Information
Based on the issue type, collect the necessary information from the conversation or ask the user to clarify missing details.
Step 3: Determine Estimation
Based on the issue type and complexity:
- Assess the technical complexity
- Consider if new techniques are introduced
- Apply the Fibonacci scale (1, 2, 3, 5, 8)
- Use defaults for specific types (Spike = 5, Documentation = 1-3)
Step 4: Fill Template
Use the appropriate template below and fill it with the gathered information. Keep it concise - provide only what's needed to understand, plan, and validate.
Step 5: Create or Update Issue via MCP
Use the Linear MCP to create/update the issue with:
- Title: Short, action-oriented (e.g., "Add user authentication", "Fix database connection timeout")
- Description: The filled template (Markdown format)
- Project:
dairectiv(always) - Assignee: "Thomas Boileau" (always)
- Label: Map the issue type to the correct label (see Label Mapping below)
- Estimate: The determined estimation (1, 2, 3, 5, or 8)
- Status: "Todo" (refined issues)
- Write in English: All issue content must be in English
Step 6: Sanity Check
Before creating/updating, verify the issue includes:
- Clear goal or problem statement
- Concrete success criteria or acceptance
- Estimation based on complexity
- Any dependencies or risks if applicable
- Issue status should be "Todo"
- Assignee should be "Thomas Boileau"
Label Mapping
Map each issue type 1-to-1 with its Linear label:
- Feature →
Feature - Bugfix →
Bugfix - Refactor →
Refactor - Performance →
Performance - Documentation →
Documentation - Test →
Test - Chore →
Chore - Style →
Style - Build →
Build - CI →
CI - Revert →
Revert - Spike →
Spike
Issue Templates
Feature Template
# ✨ Feature
## 🧠 Context
- [Why this is needed - 1-2 bullets]
## 🎯 Goal
- [What outcome we want]
## ✅ Success Criteria
- [Measurable outcome 1]
- [Measurable outcome 2]
- [Measurable outcome 3]
## 🔗 Dependencies (Optional)
- [External services, teams, or blockers if any]
Bugfix Template
# 🐛 Bugfix
## ❗ Issue
- [What is broken and where]
## 🔎 Investigation
- [Key findings or suspected root cause]
## 🧭 Plan
- [High-level fix step 1]
- [High-level fix step 2]
- [High-level fix step 3]
## ✅ Acceptance
- [How we know it is fixed]
Improvement Template
# 🛠 Improvement
## 🧠 Context
- [What could be improved and why]
## 🎯 Goal
- [Target outcome or desired change]
## ✅ Success Criteria
- [Observable result 1]
- [Observable result 2]
- [Observable result 3]
Chore Template
# 🧹 Chore
## 🧩 Task
- [What needs to be done]
## 🧭 Plan
- [Step 1]
- [Step 2]
- [Step 3]
## ✅ Done When
- [Clear completion condition 1]
- [Clear completion condition 2]
Spike Template
# 🧪 Spike
## ❓ Question
- [What we need to learn]
## 🔍 Investigation
- [Approach or sources to explore]
## 📦 Output
- [Expected deliverable: doc, summary, or decision]
Documentation Template
# 📚 Documentation
## 🧩 Task
- [What documentation needs to be added or updated]
## 🎯 Goal
- [Target audience and purpose]
## ✅ Done When
- [Documentation is complete and reviewed]
Refactor Template
# ♻️ Refactor
## 🧠 Context
- [What code needs refactoring and why]
## 🎯 Goal
- [Desired code structure or organization]
## 🧭 Plan
- [Step 1: what to extract/rename/reorganize]
- [Step 2]
- [Step 3]
## ✅ Done When
- [Code is cleaner/more maintainable]
- [All tests still pass]
- [No behavior changes]
Performance Template
# ⚡ Performance
## 🐌 Problem
- [What is slow and where]
- [Current metrics/measurements]
## 🎯 Goal
- [Target performance improvement]
## 🧭 Plan
- [Optimization approach]
- [Areas to focus on]
## ✅ Success Criteria
- [Measurable performance metrics]
- [Before/after comparison]
Test Template
# ✅ Test
## 🧩 Task
- [What needs test coverage]
## 🧭 Plan
- [Test scenarios to cover]
- [Edge cases to handle]
## ✅ Done When
- [Test coverage is adequate]
- [All tests pass]
Style Template
# 💄 Style
## 🧩 Task
- [UI/styling changes needed]
## 🎯 Goal
- [Desired visual outcome]
## ✅ Done When
- [Visual changes are complete]
- [Responsive design works]
- [Design is reviewed]
Build Template
# 🏗️ Build
## 🧩 Task
- [Build system or dependency changes needed]
## 🧭 Plan
- [What to update/configure]
- [Impact assessment]
## ✅ Done When
- [Build works correctly]
- [Dependencies are updated]
- [CI passes]
CI Template
# 👷 CI
## 🧩 Task
- [CI/CD configuration changes needed]
## 🧭 Plan
- [Pipeline/workflow modifications]
- [New steps or jobs]
## ✅ Done When
- [CI configuration is working]
- [All checks pass]
Revert Template
# ⏪ Revert
## ❗ Problem
- [What needs to be reverted and why]
- [Impact of the original change]
## 🧭 Plan
- [What commits/changes to revert]
- [Clean-up steps]
## ✅ Done When
- [Revert is complete]
- [System is stable]
Best Practices
- Keep it concise: Only include what's needed for understanding and action
- Be specific: Use concrete examples and measurable criteria
- Use English: All issue content must be in English
- Action-oriented titles: Start with a verb (Add, Fix, Improve, Refactor, etc.)
- Include context: Help future readers understand why this matters
- Define success: Make it clear how to verify the work is complete
- Always estimate: Every refined issue must have an estimation
Examples
Good Title Examples
- ✓ "Add PostgreSQL connection pooling"
- ✓ "Fix memory leak in API worker process"
- ✓ "Improve database migration performance"
- ✓ "Refactor Castor task organization"
- ✓ "Research OAuth 2.0 providers for authentication"
Bad Title Examples
- ✗ "Database stuff" (too vague)
- ✗ "Bug" (no context)
- ✗ "Things to do" (not specific)
- ✗ "Investigate" (missing what to investigate)
- ✗ "[Rules] Display rules list" (no bracketed prefixes - use plain title instead)
- ✗ "[API] Add endpoint" (prefixes add noise, issue labels/project already provide context)
Notes
- If the user's request is unclear, ask clarifying questions before creating the issue
- If multiple issues are needed, create them one at a time
- After creating an issue, provide the user with the Linear issue URL
- If the user wants to add more details later, they can edit the issue in Linear directly
- When refining an existing issue, always update status to "Todo"
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon