Home
cd ../playbooks
Project ManagementAdvanced

Linear Project Automation

Automate Linear issue tracking, cycle planning, roadmap management, and engineering workflows

10 minutes
By communitySource
#linear#issue-tracking#engineering#agile#automation

You moved to Linear because Jira was too complex, but now you're manually updating issue statuses, copying cycle summaries into Slack, and tagging issues by hand. Linear is fast — your workflows around it aren't.

Who it's for: engineering teams using Linear for issue tracking, product managers automating cycle planning and reporting, engineering leads connecting Linear to CI/CD pipelines, startups building efficient engineering workflows, teams migrating from Jira who want automated Linear workflows from day one

Example

"Automate our Linear engineering workflows" → Automations for: auto-assign issues on cycle start, move to 'In Review' when PR is opened in GitHub, post cycle summary to Slack on Friday, auto-label bugs from Sentry alerts, and generate roadmap updates from completed issues

CLAUDE.md Template

New here? 3-minute setup guide → | Already set up? Copy the template below.

# Linear Automation

Comprehensive workflow for automating Linear issue tracking and engineering workflows.

## Core Workflows

### 1. Issue Lifecycle

```
LINEAR ISSUE FLOW:
┌─────────────────┐
│    Triage       │
│   (Backlog)     │
└────────┬────────┘
         ▼
┌─────────────────┐
│    Todo         │
│  (Prioritized)  │
└────────┬────────┘
         ▼
┌─────────────────┐
│  In Progress    │
│   (Active)      │
└────────┬────────┘
         ▼
┌─────────────────┐
│   In Review     │
│  (PR Created)   │
└────────┬────────┘
         ▼
┌─────────────────┐
│     Done        │
│   (Merged)      │
└────────┬────────┘
         ▼
┌─────────────────┐
│   Cancelled     │
│  (If needed)    │
└─────────────────┘
```

### 2. Automation Triggers

```yaml
automations:
  - name: auto_assign_on_start
    trigger:
      type: status_changed
      to: "In Progress"
    condition:
      assignee: null
    action:
      set_assignee: "{{trigger_user}}"
      
  - name: add_to_cycle
    trigger:
      type: issue_created
      labels: ["sprint-ready"]
    action:
      add_to_cycle: current
      set_priority: urgent
      
  - name: create_pr_reminder
    trigger:
      type: status_changed
      to: "In Progress"
      duration: "48 hours"
    condition:
      no_linked_pr: true
    action:
      add_comment: "@{{assignee}} Please link your PR"
      
  - name: close_on_merge
    trigger:
      type: github_pr_merged
    action:
      set_status: "Done"
      add_comment: "Closed via PR merge"
```

## Issue Templates

### Bug Report

```yaml
bug_template:
  title: "[Bug] {{summary}}"
  team: "Engineering"
  
  description: |
    ## Description
    {{description}}
    
    ## Steps to Reproduce
    1. {{step1}}
    2. {{step2}}
    3. {{step3}}
    
    ## Expected Behavior
    {{expected}}
    
    ## Actual Behavior
    {{actual}}
    
    ## Environment
    - OS: {{os}}
    - Browser: {{browser}}
    - Version: {{version}}
    
    ## Logs/Screenshots
    {{attachments}}
    
  labels: ["bug", "needs-triage"]
  priority: "{{severity}}"
  estimate: null
```

### Feature Request

```yaml
feature_template:
  title: "[Feature] {{summary}}"
  team: "Product"
  
  description: |
    ## Overview
    {{overview}}
    
    ## User Story
    As a {{user_type}}, I want to {{action}} so that {{benefit}}.
    
    ## Acceptance Criteria
    - [ ] {{criteria1}}
    - [ ] {{criteria2}}
    - [ ] {{criteria3}}
    
    ## Design
    {{design_link}}
    
    ## Technical Considerations
    {{tech_notes}}
    
  labels: ["feature", "needs-refinement"]
  project: "{{roadmap_project}}"
```

### Sub-Issue Structure

```yaml
epic_breakdown:
  parent:
    title: "{{epic_name}}"
    type: "Project"
    
  sub_issues:
    - title: "Design: {{epic_name}}"
      labels: ["design"]
      estimate: 3
      
    - title: "Backend: {{epic_name}}"
      labels: ["backend"]
      estimate: 5
      
    - title: "Frontend: {{epic_name}}"
      labels: ["frontend"]
      estimate: 5
      
    - title: "Testing: {{epic_name}}"
      labels: ["qa"]
      estimate: 2
      
    - title: "Documentation: {{epic_name}}"
      labels: ["docs"]
      estimate: 1
```

## Cycle Management

### Cycle Planning

```yaml
cycle_config:
  duration: 2_weeks
  
  planning:
    capacity_per_engineer: 8  # points
    buffer_percentage: 20
    
  milestones:
    - day: 1
      event: "Cycle Start"
    - day: 10
      event: "Feature Freeze"
    - day: 12
      event: "Code Freeze"
    - day: 14
      event: "Release"
      
  auto_rollover:
    enabled: true
    statuses: ["Backlog", "Todo"]
    exclude_labels: ["blocked"]
```

### Cycle Dashboard

```
CYCLE 24 - WEEK 2/2
═══════════════════════════════════════

Progress:
████████████████░░░░ 78% Complete

Story Points:
Planned:    42
Completed:  33  ████████████████░░░░
Remaining:   9  ████░░░░░░░░░░░░░░░░

BY STATUS:
Done         ████████████████ 18
In Review    ████░░░░░░░░░░░░ 5
In Progress  ██░░░░░░░░░░░░░░ 3
Todo         ██░░░░░░░░░░░░░░ 2

TEAM PROGRESS:
Sarah    ██████████████░░ 8/10 pts
Mike     ████████████████ 12/12 pts
Alex     ██████████░░░░░░ 7/10 pts
Lisa     ████████████░░░░ 6/10 pts

BLOCKERS:
• LIN-234: Waiting for API access
• LIN-256: Design review pending
```

## GitHub Integration

### Branch & PR Sync

```yaml
github_sync:
  branch_format: "{{username}}/lin-{{issue_number}}-{{issue_slug}}"
  
  on_branch_created:
    - set_status: "In Progress"
    - add_assignee: branch_creator
    
  on_pr_opened:
    - set_status: "In Review"
    - add_link: pr_url
    - add_comment: "PR opened: {{pr_url}}"
    
  on_pr_merged:
    - set_status: "Done"
    - add_comment: "Merged in {{pr_url}}"
    
  on_pr_closed:
    - add_comment: "PR closed without merge"
    
  commit_linking:
    patterns:
      - "LIN-{{number}}"
      - "lin-{{number}}"
      - "Fixes LIN-{{number}}"
```

### CI/CD Integration

```yaml
cicd_integration:
  on_build_failed:
    - add_label: "ci-failed"
    - add_comment: |
        ❌ Build failed
        {{build_url}}
        
  on_build_passed:
    - remove_label: "ci-failed"
    
  on_deploy_staging:
    - add_label: "on-staging"
    - add_comment: "Deployed to staging: {{staging_url}}"
    
  on_deploy_production:
    - add_label: "released"
    - add_comment: "Released to production 🚀"
```

## Labels & Organization

### Label System

```yaml
labels:
  type:
    - name: "bug"
      color: "#eb5757"
    - name: "feature"
      color: "#5e6ad2"
    - name: "improvement"
      color: "#26b5ce"
    - name: "chore"
      color: "#bec2c8"
      
  priority:
    - name: "urgent"
      color: "#eb5757"
    - name: "high"
      color: "#f2994a"
    - name: "medium"
      color: "#f2c94c"
    - name: "low"
      color: "#bec2c8"
      
  area:
    - name: "frontend"
      color: "#5e6ad2"
    - name: "backend"
      color: "#26b5ce"
    - name: "infrastructure"
      color: "#bb87fc"
    - name: "design"
      color: "#f7b500"
      
  status:
    - name: "blocked"
      color: "#eb5757"
    - name: "needs-review"
      color: "#f2994a"
    - name: "ready"
      color: "#0e7a42"
```

## Reporting

### Velocity Tracking

```yaml
velocity_report:
  metrics:
    - completed_points_per_cycle
    - issues_closed_per_cycle
    - cycle_completion_rate
    - carryover_percentage
    
  chart_data:
    cycles: last_6
    show_trend: true
    show_commitment: true
```

### Team Analytics

```
TEAM VELOCITY - LAST 6 CYCLES
═══════════════════════════════════════

│  50 ┤
│     │              ▓▓
│  40 ┤    ▓▓  ▓▓    ▓▓  ▓▓
│     │    ▓▓  ▓▓    ▓▓  ▓▓  ▓▓
│  30 ┤ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│     │ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│  20 ┤ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│     │ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│  10 ┤ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│     │ ▓▓ ▓▓  ▓▓ ▓▓ ▓▓  ▓▓  ▓▓
│   0 ┴─────────────────────────
       C19 C20 C21 C22 C23 C24

Average: 38 pts | Trend: +8%
Completion Rate: 92%
```

## API Examples

### GraphQL Queries

```graphql
# Create Issue
mutation CreateIssue {
  issueCreate(input: {
    teamId: "team-id"
    title: "New Feature Request"
    description: "Description here"
    priority: 2
    labelIds: ["label-id"]
  }) {
    success
    issue {
      id
      identifier
      url
    }
  }
}

# Update Issue Status
mutation UpdateIssue {
  issueUpdate(
    id: "issue-id"
    input: {
      stateId: "state-id"
      assigneeId: "user-id"
    }
  ) {
    success
  }
}

# Query Cycle Issues
query CycleIssues {
  cycle(id: "cycle-id") {
    name
    issues {
      nodes {
        identifier
        title
        state {
          name
        }
        assignee {
          name
        }
        estimate
      }
    }
  }
}
```

## Best Practices

1. **Quick Triage**: Process new issues daily
2. **Consistent Estimates**: Use planning poker
3. **Link Everything**: Connect PRs, commits, docs
4. **Use Projects**: Organize related work
5. **Cycle Commitment**: Protect sprint scope
6. **Regular Grooming**: Keep backlog healthy
7. **Automate Status**: Let integrations update
8. **Measure Velocity**: Track team capacity
README.md

What This Does

Comprehensive workflow for automating Linear issue tracking and engineering workflows.


Quick Start

Step 1: Create a Project Folder

mkdir -p ~/Documents/LinearAutomation

Step 2: Download the Template

Click Download above, then:

mv ~/Downloads/CLAUDE.md ~/Documents/LinearAutomation/

Step 3: Start Working

cd ~/Documents/LinearAutomation
claude

Best Practices

  1. Quick Triage: Process new issues daily
  2. Consistent Estimates: Use planning poker
  3. Link Everything: Connect PRs, commits, docs
  4. Use Projects: Organize related work
  5. Cycle Commitment: Protect sprint scope
  6. Regular Grooming: Keep backlog healthy
  7. Automate Status: Let integrations update
  8. Measure Velocity: Track team capacity

$Related Playbooks

Project Management

Monday.com Automation

Automate Monday.com workflows, board management, team collaboration, and cross-board integrations

10 minutes
Advanced
Project Management

Team Capacity & Resource Planner

Analyze team workload, identify capacity gaps, and model resource allocation scenarios for staffing decisions.

15 minutes
Intermediate
Project Management

Product Feature Prioritization

Prioritize product features using RICE, weighted scoring, and value-vs-effort frameworks with stakeholder alignment.

10 minutes
Intermediate
Project Management

Lessons Learned Documentation

Facilitate and document project retrospectives with structured lessons learned, root causes, and actionable improvements.

5 minutes
Beginner
Project Management

Product Roadmap Communication

Transform product roadmaps into audience-specific communications for executives, customers, sales teams, and engineering.

5 minutes
Beginner
Project Management

Project Charter & Kickoff Documentation

Create project charters with scope definition, stakeholder analysis, risk assessment, and kickoff materials for new initiatives.

5 minutes
Beginner
Project Management

Project Status & Health Reporting

Generate project health dashboards with RAG status, milestone tracking, risk updates, and stakeholder-ready summaries.

5 minutes
Beginner
Project Management

Requirements Documentation

Transform stakeholder needs into structured requirements documents with user stories, acceptance criteria, and traceability matrices.

10 minutes
Intermediate
Project Management

Sprint Planning & Backlog Refinement

Structure sprint planning sessions with story estimation, capacity planning, sprint goals, and backlog grooming frameworks.

10 minutes
Intermediate
Project Management

Stakeholder Analysis & Communication Planning

Map project stakeholders by influence and interest, design tailored communication strategies, and build engagement plans.

5 minutes
Beginner
Project Management

Project Management Bootstrapper

Initialize a comprehensive project management system with folder structures, TODO tracking, resource catalogs, and Claude-specific project configuration.

15 minutes
Intermediate
Project Management

Scrum Master Coach

Facilitate sprint ceremonies, coach agile practices, run effective retrospectives, remove impediments, track team health metrics, and generate ceremony templates.

10 minutes
Intermediate

Browse all Project Management playbooks →