OpenClaw Linear Project Manager: Manage Issues from Any Chat App
Comprehensive guide to managing Linear issues through OpenClaw with natural language queries, status updates, and sprint automation.
Linear Project Manager (#8 with 610 stars) brings your entire Linear workspace into chat, eliminating constant context-switching between messaging apps and project management tools. You can query issues, update statuses, create tasks, and get sprint insights without opening Linear. For engineering teams that live in Discord, Slack, or Telegram, this skill significantly reduces friction in daily task management.
This guide covers Linear API setup, natural language commands, workflow automation, and sprint management integration.
What It Does
Linear Project Manager connects OpenClaw to Linear’s API, enabling full issue lifecycle management from chat:
- Query issues by assignee, status, label, priority, or custom filters
- Create issues from natural language descriptions with auto-extracted metadata
- Update issue statuses by moving them through workflow states
- Generate sprint reports with burndown data and velocity tracking
- Two-way sync so changes in Linear appear in chat notifications and vice versa
The skill understands Linear’s terminology (cycles, projects, teams) and translates natural language into precise API calls.
Prerequisites
Before setting up Linear integration, ensure you have:
- A Linear workspace with at least Member access
- Permission to create API keys in your workspace
- OpenClaw 2026.1.0 or later
- A default team and project configured in Linear
Installation & Setup
Step 1: Create Linear API Key
- Go to Linear Settings > API > Personal API keys
- Click “Create new API key”
- Name it “OpenClaw Integration”
- Under scopes, select:
read(view issues, projects, users)write(create and update issues)issue:admin(optional, for advanced operations)
- Click “Create” and copy the API key (starts with
lin_api_...)
Security note: API keys grant full access to your Linear workspace. Store them securely and never commit to version control.
Step 2: Configure OpenClaw
Install and configure the skill:
# Install the skill
openclaw skill install linear
# Set your API key
openclaw config set linear.apiKey $LINEAR_API_KEY
Complete YAML configuration:
skills:
linear:
api_key: ${LINEAR_API_KEY}
# Default team (get ID from Linear team settings)
default_team: "ENG" # or team ID like "abc123"
# Default project (optional)
default_project: "Core Product"
# Notification preferences
notifications:
on_create: true
on_status_change: true
on_comment: false
Step 3: Test Connection
Verify the integration:
# In your chat interface:
"Show my Linear issues"
# Expected: List of issues assigned to you
# If error: Check API key, team ID, and network connectivity
Basic Commands
Creating Issues
"Create a Linear bug: login page crash on Safari"
→ Creates bug with title, auto-detects type (bug), assigns to default team
"Create issue: Implement dark mode toggle, assign to Alice, high priority"
→ Extracts: title, assignee, priority
→ Creates issue in Linear with all metadata
"Add to Linear: API endpoint for user preferences, backend label"
→ Creates issue with custom label
OpenClaw intelligently extracts:
- Type (bug, feature, improvement) from keywords
- Priority (urgent, high, medium, low) from explicit mentions
- Assignee from @mentions or names
- Labels from context or explicit tags
- Project from channel name or explicit mention
Viewing Issues
"Show my Linear issues"
→ Lists all issues assigned to you
"List all P0 bugs"
→ Filters by priority (P0 = urgent) and type (bug)
"Show issues in 'Mobile App' project"
→ Filters by project name
"What's assigned to Bob?"
→ Lists issues for specific team member
Updating Status
"Move LIN-423 to In Review"
→ Changes issue status to "In Review"
"Mark issue 123 as done"
→ Moves to "Done" state
"Start working on LIN-456"
→ Moves to "In Progress" and assigns to you
Advanced Queries
Filtering by Multiple Criteria
"Show high-priority backend issues assigned to me"
→ Combines filters: priority:high AND label:backend AND assignee:@me
"List all bugs created this week"
→ Filters: type:bug AND created:>=7d
"Find issues in current cycle with no assignee"
→ Filters: cycle:current AND assignee:null
Date Range Queries
"Issues completed last month"
→ status:completed AND completed_at:>=30d AND completed_at:<=1d
"Show issues due this week"
→ due_date:>=0d AND due_date:<=7d
Saved Query Templates
Define reusable queries in config:
skills:
linear:
saved_queries:
my_sprint:
filters:
assignee: "@me"
cycle: "current"
status: ["Todo", "In Progress"]
blocker_review:
filters:
priority: "urgent"
status: "Blocked"
needs_triage:
filters:
assignee: null
labels: "bug"
created_at: ">=7d"
Then use shortcuts:
"Run my_sprint query"
→ Shows your issues for current sprint
"Check blocker_review"
→ Lists all urgent blocked issues
Issue Creation from Natural Language
OpenClaw uses LLM parsing to extract structured data from free-form text:
Example 1: Feature Request
Input: "We need a user preference API endpoint. Should support GET and POST. Backend team handles it, due end of sprint, high priority."
OpenClaw extracts:
- Title: "User preference API endpoint"
- Description: "Support GET and POST methods"
- Team: Backend
- Due date: End of current cycle
- Priority: High
- Type: Feature
Created issue: LIN-789
Example 2: Bug Report
Input: "Safari users can't log in after password reset. Critical bug. Seen in production. Alice should investigate ASAP."
OpenClaw extracts:
- Title: "Safari login failure after password reset"
- Type: Bug
- Priority: Urgent
- Environment: Production
- Assignee: Alice
- Description: Auto-generated from input
Created issue: LIN-790
Template-Based Creation
Define issue templates for common patterns:
skills:
linear:
templates:
security_incident:
type: "Bug"
priority: "Urgent"
labels: ["security", "incident"]
project: "Security"
required_fields: ["severity", "affected_systems"]
feature_request:
type: "Feature"
priority: "Medium"
labels: ["product"]
required_fields: ["use_case", "target_users"]
Usage:
"Create security incident: SQL injection in auth endpoint, severity critical, affected: user-service"
→ Uses template, auto-fills fields, prompts for missing required fields
Status Workflows
Moving Issues Through States
Linear workflows vary by team. Common state sequences:
Todo → In Progress → In Review → Done
Backlog → Todo → In Progress → Done
Triage → Todo → In Progress → Blocked → Done
OpenClaw respects your configured workflow:
"Start LIN-123"
→ If current state is "Todo", moves to "In Progress"
→ If current state is "Backlog", prompts: "Move to Todo or In Progress?"
"Unblock LIN-456"
→ If current state is "Blocked", moves to previous state (usually "In Progress")
Bulk Status Updates
"Move all my 'In Review' issues to Done"
→ Finds issues matching criteria, confirms, then updates all
"Archive completed issues from last sprint"
→ Filters, confirms, then bulk archives
Custom Workflow Definitions
Map natural language commands to state transitions:
skills:
linear:
workflows:
start: "In Progress"
review: "In Review"
ship: "Done"
block: "Blocked"
backlog: "Backlog"
Then use shortcuts:
"Ship LIN-123" → Moves to "Done"
"Block LIN-456" → Moves to "Blocked"
Sprint Management
Generating Sprint Reports
"Generate sprint report for current cycle"
→ Returns:
- Total issues: 45
- Completed: 32 (71%)
- In progress: 8
- Blocked: 2
- Not started: 3
- Velocity: 32 points/week
- Burndown chart (text visualization)
Cycle Summaries
"Summarize Cycle 42"
→ Returns:
- Cycle dates
- Total scope: 120 points
- Completed: 105 points (88%)
- Carried over: 15 points
- Top contributors
- Most common blockers
Planning Automation
"Create planning meeting agenda for next cycle"
→ Generates:
- Incomplete items from current cycle
- High-priority backlog items
- Team capacity estimates
- Suggested scope for next cycle
Team Collaboration
@Mentions and Notifications
OpenClaw syncs Linear notifications to chat:
skills:
linear:
notifications:
# Post to chat when assigned an issue
on_assign: true
channel: "eng-notifications"
# Notify when issue moves to specific states
on_status_change:
- "In Review" # Notify when entering review
- "Blocked" # Notify when blocked
# Notify on comments from specific people
on_comment_from: ["alice@company.com", "bob@company.com"]
Example notification:
[Linear] LIN-789 moved to In Review by Alice
Title: User preference API endpoint
Assignee: @bob
Link: https://linear.app/team/issue/LIN-789
Issue Handoffs
"Handoff LIN-123 to Carol with context: needs frontend polish"
→ Reassigns to Carol
→ Adds comment with handoff note
→ Notifies Carol in chat
Comment Threading
"Comment on LIN-456: Tested in staging, looks good"
→ Adds comment to issue in Linear
→ Notifies issue participants
Troubleshooting
API Rate Limits
Error: “Rate limit exceeded. Try again in 60 seconds.”
Solution:
- Linear limits: 2000 requests/hour per API key
- Reduce query frequency
- Use caching for repeated queries
- Batch operations where possible
Permission Errors
Error: “Insufficient permissions to create issues in team X”
Solution:
- Verify API key has
writescope - Check team membership (Member role minimum)
- Confirm team ID is correct
- Ask workspace admin for permissions
Ambiguous Team/Project Names
Error: “Multiple teams found matching ‘Backend’. Which one?”
Solution:
- Use team IDs instead of names
- Set
default_teamin config - Disambiguate: “Backend Engineering” vs “Backend Ops”
FAQ
Can I attach files to Linear issues from chat?
Not directly via text commands. However, you can:
- Upload file to chat (Discord, Slack support file uploads)
- OpenClaw extracts file URL
- Adds URL to issue description or comment
Alternatively, use Linear’s email integration to attach files.
Does this work with Linear’s API rate limits?
Yes. OpenClaw implements:
- Request throttling (max 30 requests/minute)
- Exponential backoff on rate limit errors
- Local caching for frequently accessed data (teams, projects, users)
- Batch operations to minimize API calls
Typical usage (50 queries/day) stays well within Linear’s 2000 req/hour limit.
Can I create issues in multiple projects?
Yes. Specify the project explicitly:
"Create issue in Mobile App project: Fix splash screen animation"
Or configure project mapping:
skills:
linear:
project_mapping:
mobile: "Mobile App"
web: "Web Platform"
api: "Backend Services"
Then use shortcuts:
"Create mobile issue: ..." → Routes to Mobile App project
"Create api issue: ..." → Routes to Backend Services project
Next Steps
Once Linear integration is configured, explore these workflow enhancements:
- Combine with GitHub Issue Triage for cross-platform issue management (GitHub issues → Linear tasks)
- Integrate with Notion Sync to sync Linear tasks to Notion databases for documentation
- Use with Calendar Scheduler to schedule sprint planning and review meetings
- Review the Top 10 Skills guide for complete skills overview
- Check the Linear Project Manager details for the latest updates
Linear Project Manager transforms chat into a command center for your Linear workspace. Once configured, you can manage your entire task backlog without leaving your messaging app.
Ready to Get Started?
Install OpenClaw and build your own AI assistant today.
Related Articles
How to Create Your Own Personal AI Assistant in 2026
Build a private AI assistant that runs on your computer. Connect to all your messaging apps, customize its personality, and keep your data completely private.
ClawHub Skill Registry: Discover and Install 5,700+ OpenClaw Skills
Complete guide to browsing, installing, and managing OpenClaw skills from the ClawHub registry with over 5,700 community plugins.
Discord AI Bot Setup Guide: Build a Reliable Multi-Channel Assistant
Step-by-step guide to setting up an OpenClaw Discord bot with permissions, multi-channel strategy, monitoring, and security for teams and communities.