Enhanced Linear CLI with GitHub PR integration, Claude Code context, and TUI dashboard foundation.
- Linear Issue Management: Search, list, and filter issues with status, assignee, labels, priority
- Automated Workflow: Create branches from Linear issues with automatic status updates
- GitHub PR Integration: View PR status, CI checks, and reviews
- PR Creation: Auto-generate PRs from Linear issues with linked descriptions
- Claude Context Persistence: Generate
.linear.mdwith full workflow context - Workflow Status: Complete pipeline view (issue β branch β PR β CI β reviews)
- TUI Dashboard: Keyboard-navigable PR list (MVP)
- Smart Merge: Auto-merge when checks + approvals are ready
deno task installThis installs the linear command globally.
deno task buildCreates a linear-pro executable in the current directory.
Set environment variables:
export LINEAR_API_KEY=lin_api_xxx
export GITHUB_TOKEN=ghp_your_token_here
export GITHUB_OWNER=your_org
export GITHUB_REPO=your_repoOr configure via commands:
linear auth linear lin_api_xxx
linear auth github ghp_your_token your_org your_repoGet your Linear API key at: https://linear.app/settings/api
# Find issues to work on
linear issue list --status "Todo" --assignee me
# Or search for a specific issue
linear issue search "oauth"
# Start working on an issue (creates branch, updates status, generates context)
linear issue start ENG-123This creates a branch like feature/ENG-123-your-issue-title, updates the issue status to "In Progress", and generates a .linear.md context file.
# Make your changes
git commit -m "ENG-123: Implement feature"
git push
# Create PR with auto-filled description from Linear
linear issue create-prlinear workflow statusOutput:
π Linear Pro Workflow Status
ββββββββββββββββββββββββββββββββββββββββββββββββββββ
π Issue: ENG-123
Title: Implement feature
Status: In Progress
Priority: π‘ Medium
πΏ Branch: feature/eng-123
Commits: 3
Latest: Fix edge case by John Doe
π Pull Request: #987
Title: ENG-123: Implement feature
State: π’ Open
URL: https://github.com/your_org/your_repo/pull/987
CI Checks: 3/3 passing
β
build
β
test
β
lint
Reviews: 2/3 approved
β
@alice: approved
π @bob: changes_requested
β³ @carol: pending
ββββββββββββββββββββββββββββββββββββββββββββββββββββ
linear claude contextThis generates .linear.md with all issue + branch + PR + CI context. Open it in Claude Code for AI-assisted development.
linear pr merge-when-readyWaits for all checks to pass and all required approvals, then auto-merges (squash by default).
linear issue list [options] # List issues with filters
--status <status> # Filter by status (repeatable)
--assignee <assignee> # me/username/unassigned
--label <label> # Filter by label (repeatable)
--priority <priority> # urgent/high/medium/low
--limit <number> # Max results (default: 20)
linear issue search <query> [options] # Search by title/description
--limit <number> # Max results (default: 10)
linear issue start <id> [options] # Start working on issue
--prefix <prefix> # Branch prefix (default: feature)
linear issue create-pr [id] [options] # Create GitHub PR
--draft # Create as draft
--base <branch> # Base branch (default: main)linear pr view # Show PR linked to current branch
linear pr checks # Show CI status
linear pr reviews # Show review status
linear pr merge-when-ready # Auto-merge when ready (with options)linear workflow status # Show complete pipeline statuslinear claude context # Generate .linear.md with full context
linear claude show # Display current .linear.mdlinear tui # Launch interactive dashboardlinear auth linear <api-key> # Configure Linear
linear auth github TOKEN OWNER REPO # Configure GitHub
linear info # Show current configGITHUB_TOKEN: Personal access token (requiresrepoandpullscopes)GITHUB_OWNER: Repository owner/organizationGITHUB_REPO: Repository name
LINEAR_API_KEY: Linear API key (get at https://linear.app/settings/api)
LINEAR_WORKSPACE: Linear workspace ID
When you run linear claude context, a .linear.md file is generated with:
# Linear Pro Context
*Last updated: 2025-01-15T10:30:00Z*
## Issue
- **ID**: ENG-123
- **Title**: Implement feature
- **Status**: In Progress
- **Priority**: π‘ Medium
- **Created**: 1/15/2025
## Git Branch
- **Branch**: `feature/eng-123`
- **Commits**: 3
- Latest commits:
- `a1b2c3d` - Fix edge case (John Doe)
- `e4f5g6h` - Add tests (Jane Smith)
- `i7j8k9l` - Initial implementation (John Doe)
- **Remote**: https://github.com/your_org/your_repo
## GitHub PR
- **Number**: #987
- **Title**: ENG-123: Implement feature
- **URL**: https://github.com/your_org/your_repo/pull/987
- **CI Status**: β
All passing
- **Reviews**:
- Approved: 2
- Changes Requested: 0
- Pending: 1
## Focus Areas
- Add error handling
- Increase test coverage
- Document security implications
## Notes
Key considerations for this feature...
---
> This file is generated by `linear claude context`. Open it in Claude Code for AI-assisted context about your Linear issue workflow.Claude Code can read this file to understand your workflow context automatically.
linear-pro/
βββ src/
β βββ main.ts # Entry point
β βββ cli.ts # Command router
β βββ types.ts # TypeScript types
β βββ linear/
β β βββ client.ts # Linear API wrapper (GraphQL)
β βββ github/
β β βββ client.ts # GitHub REST API wrapper
β βββ git/
β β βββ context.ts # Git context helpers (read-only)
β β βββ operations.ts # Git write operations (branch creation, checkout)
β βββ context/
β β βββ manager.ts # .linear.md persistence
β βββ commands/
β β βββ issue.ts # Issue management commands
β β βββ pr.ts # PR commands
β β βββ workflow.ts # Workflow commands
β β βββ claude.ts # Claude context commands
β βββ tui/
β βββ dashboard.ts # TUI dashboard
βββ test/
β βββ linear_client.test.ts
β βββ github_client.test.ts
β βββ context_manager.test.ts
βββ deno.json # Deno config
βββ README.md
deno task dev # Run CLI
deno task dev:tui # Run TUIdeno task testdeno task build- β GitHub PR integration
- β PR status viewing
- β CI check status
- β Review status
- β Auto-merge when ready
- β Workflow status pipeline
- β Claude context generation
- β Basic TUI dashboard
- Linear API integration (read issues, update status)
- Slack notifications
- Advanced TUI (search, filter, comments)
- Claude suggestion API integration
- Workspace-level dashboard
- Branch protection rules integration
- Automated commit message validation
linear-pro extends linear-cli with:
- GitHub integration - PR status and CI checks
- Context persistence - Automatic .linear.md generation
- Workflow orchestration - Complete pipeline view
- TUI dashboard - Keyboard-navigable interface
Existing linear-cli commands are not modified - linear-pro adds new functionality on top.
Set your GitHub token:
export GITHUB_TOKEN=ghp_your_token_here
export GITHUB_OWNER=your_org
export GITHUB_REPO=your_repoMake sure:
- The PR title or body contains the issue number (e.g., "ENG-123")
- The branch name follows the pattern
feature/ENG-123or similar - The PR exists in the repository
Use branch names that include the issue identifier:
feature/eng-123fix/ENG-123-bugeng-123-implement-feature
Make sure:
- GitHub is configured (see above)
- You're in a git repository
- Terminal supports raw input mode
MIT
Contributions welcome! Please submit PRs to improve the tool.
Linear Pro - The bridge between Linear workflows and Claude Code orchestration.