linear-claude-skill by sickn33/antigravity-awesome-skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill linear-claude-skill管理 Linear 问题、项目和团队
当需要管理 Linear 问题、项目和团队时,请使用此技能。
用于管理 Linear 中的问题、项目和团队的工具与工作流。
此技能支持多种工具后端。请使用任何可用的后端:
linear 命令) - 始终可通过 Bash 使用如果 MCP 工具不可用,请通过 Bash 使用 Linear CLI:
# 查看问题
linear issues view ENG-123
# 创建问题
linear issues create --title "Issue title" --description "Description"
# 更新问题状态(首先获取状态 ID)
linear issues update ENG-123 -s "STATE_ID"
# 添加评论
linear issues comment add ENG-123 -m "Comment text"
# 列出问题
linear issues list
请勿将“MCP 工具不可用”报告为阻碍 - 请改用 CLI。
管理 Linear 问题、项目和团队
当需要管理 Linear 问题、项目和团队时,请使用此技能。
:切勿在终端输出或 Claude 的上下文中暴露 API 密钥。
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
# 验证 LINEAR_API_KEY 是否已设置(输出被屏蔽)
varlock load 2>&1 | grep LINEAR
# 运行注入密钥的命令
varlock run -- npx tsx scripts/query.ts "query { viewer { name } }"
# 检查架构(安全 - 不显示值)
cat .env.schema | grep LINEAR
# ❌ 切勿使用 - 将密钥暴露给 Claude 的上下文
linear config show
echo $LINEAR_API_KEY
printenv | grep LINEAR
cat .env
创建带有 @sensitive 注解的 .env.schema:
LINEAR_API_KEY=
将 LINEAR_API_KEY 添加到 .env(切勿提交此文件)
配置 MCP 以使用环境变量:
{ "mcpServers": { "linear": { "env": { "LINEAR_API_KEY": "${LINEAR_API_KEY}" } } } }
在操作前使用 varlock load 进行验证
运行设置检查以验证您的配置:
npx tsx ~/.claude/skills/linear/scripts/setup.ts
这将检查:
如果设置报告缺少 API 密钥:
lin_api_ 开头)# 选项 A:添加到 shell 配置文件(~/.zshrc 或 ~/.bashrc)
export LINEAR_API_KEY="lin_api_your_key_here"
# 选项 B:添加到 Claude Code 环境
echo 'LINEAR_API_KEY=lin_api_your_key_here' >> ~/.claude/.env
# 然后重新加载您的 shell 或重启 Claude Code
验证一切是否正常工作:
npx tsx ~/.claude/skills/linear/scripts/query.ts "query { viewer { name } }"
您应该会看到来自 Linear 的您的姓名。
# 在项目中创建问题
npx tsx scripts/linear-ops.ts create-issue "Project" "Title" "Description"
# 更新问题状态
npx tsx scripts/linear-ops.ts status Done ENG-123 ENG-124
# 创建子问题
npx tsx scripts/linear-ops.ts create-sub-issue ENG-100 "Sub-task" "Details"
# 更新项目状态
npx tsx scripts/linear-ops.ts project-status "Phase 1" completed
# 显示所有命令
npx tsx scripts/linear-ops.ts help
完整参考请参见项目管理命令。
管理 Linear 问题、项目和团队
当需要管理 Linear 问题、项目和团队时,请使用此技能。
最佳实践:在规划新阶段或新计划时,在单个规划会话中一起创建项目及其问题。避免在通用项目中创建问题,然后再移动它们。
首先创建项目:
npx tsx scripts/linear-ops.ts create-project "Phase X: Feature Name" "My Initiative"
将项目状态设置为已规划:
npx tsx scripts/linear-ops.ts project-status "Phase X: Feature Name" planned
直接在项目中创建问题:
npx tsx scripts/linear-ops.ts create-issue "Phase X: Feature Name" "Parent task" "Description" npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 1" "Description" npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 2" "Description"
当工作开始时更新项目状态:
npx tsx scripts/linear-ops.ts project-status "Phase X: Feature Name" in-progress
❌ 在“暂存”项目中创建问题,稍后再移动:
# 不要这样做
create-issue "Phase 6A" "New feature" # 错误项目
# 稍后:手动移动到 Phase X # 额外工作
更新 Linear 中项目的状态。接受映射到 Linear API 的用户友好术语。
npx tsx scripts/linear-ops.ts project-status <project-name> <state>
有效状态:
| 输入 | 描述 | API 值 |
|---|---|---|
backlog | 尚未开始 | backlog |
planned | 计划在未来进行 | planned |
in-progress | 当前活跃 | started |
paused | 暂时搁置 | paused |
completed | 成功完成 | completed |
canceled | 将不会完成 | canceled |
示例:
# 开始处理一个项目
npx tsx scripts/linear-ops.ts project-status "Phase 8: MCP Decision Engine" in-progress
# 标记项目完成
npx tsx scripts/linear-ops.ts project-status "Phase 8" completed
# 支持部分名称匹配
npx tsx scripts/linear-ops.ts project-status "Phase 8" paused
将现有项目链接到计划。
npx tsx scripts/linear-ops.ts link-initiative <project-name> <initiative-name>
示例:
# 将项目链接到计划
npx tsx scripts/linear-ops.ts link-initiative "Phase 8: MCP Decision Engine" "Q1 Goals"
# 支持部分匹配
npx tsx scripts/linear-ops.ts link-initiative "Phase 8" "Q1 Goals"
将项目从计划中移除。
npx tsx scripts/linear-ops.ts unlink-initiative <project-name> <initiative-name>
示例:
# 移除错误的链接
npx tsx scripts/linear-ops.ts unlink-initiative "Phase 8" "Linear Skill"
# 清理测试链接
npx tsx scripts/linear-ops.ts unlink-initiative "Test Project" "Q1 Goals"
错误处理:
# 1. 创建链接到计划的项目
npx tsx scripts/linear-ops.ts create-project "Phase 11: New Feature" "Q1 Goals"
# 2. 将状态设置为已规划
npx tsx scripts/linear-ops.ts project-status "Phase 11" planned
# 3. 在项目中创建问题
npx tsx scripts/linear-ops.ts create-issue "Phase 11" "Parent task" "Description"
npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 1" "Details"
# 4. 开始工作 - 更新为进行中
npx tsx scripts/linear-ops.ts project-status "Phase 11" in-progress
# 5. 标记问题为完成
npx tsx scripts/linear-ops.ts status Done ENG-XXX ENG-YYY
# 6. 完成项目
npx tsx scripts/linear-ops.ts project-status "Phase 11" completed
# 7. (可选)链接到其他计划
npx tsx scripts/linear-ops.ts link-initiative "Phase 11" "Q2 Goals"
管理 Linear 问题、项目和团队
当需要管理 Linear 问题、项目和团队时,请使用此技能。
为任务选择合适的工具:
| 工具 | 何时使用 |
|---|---|
| MCP(官方服务器) | 大多数操作 - 首选 |
| 辅助脚本 | 批量操作,当 MCP 不可用时 |
| SDK 脚本 | 复杂操作(循环、条件判断) |
| GraphQL API | MCP/SDK 不支持的操作 |
使用位于 mcp.linear.app 的官方 Linear MCP 服务器:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.linear.app/sse"],
"env": { "LINEAR_API_KEY": "your_api_key" }
}
}
}
警告:请勿使用已弃用的社区服务器。详情请见 troubleshooting.md。
| 操作 | 可靠性 | 备注 |
|---|---|---|
| 创建问题 | ✅ 高 | 完全支持 |
| 更新状态 | ✅ 高 | 直接使用 state: "Done" |
| 列出/搜索问题 | ✅ 高 | 支持过滤器、查询 |
| 添加评论 | ✅ 高 | 适用于问题 ID |
# 通过 MCP - 使用人类可读的状态名称
update_issue with id="issue-uuid", state="Done"
# 通过辅助脚本(批量操作)
node scripts/linear-helpers.mjs update-status Done 123 124 125
有关辅助脚本的详细用法,请参见 troubleshooting.md。
对于批量操作或后台执行,请使用 Linear-specialist 子代理:
Task({
description: "Update Linear issues",
prompt: "Mark ENG-101, ENG-102, ENG-103 as Done",
subagent_type: "Linear-specialist"
})
何时使用 Linear-specialist(并行):
何时使用直接执行:
并行执行模式请参见 sync.md。
每个问题必须附加到一个项目。每个项目必须链接到一个计划。
| 实体 | 必须链接到 | 如果缺失 |
|---|---|---|
| 问题 | 项目 | 在项目看板中不可见 |
| 项目 | 计划 | 在路线图中不可见 |
完整项目创建清单请参见 projects.md。
state: "Todo"state: "Backlog"使用基于领域的标签分类法。参见 docs/labels.md。
关键规则:
一个类型标签:feature, bug, refactor, chore, spike
1-2 个领域标签:security, backend, frontend 等
适用时使用范围标签:blocked, breaking-change, tech-debt
npx tsx scripts/linear-ops.ts labels validate "feature,security"
npx tsx scripts/linear-ops.ts labels suggest "Fix XSS vulnerability"
仅在 MCP 工具不足时使用。 对于涉及循环、映射或批量更新的复杂操作,请使用 @linear/sdk 编写 TypeScript 脚本。参见 sdk.md 了解:
与原始 GraphQL 相比,脚本提供完整的类型提示,并且对于多步骤操作更容易调试。
仅作为备用方案。 当 MCP 或 SDK 不支持操作时使用。
完整文档请参见 api.md,包括:
快速临时查询:
npx tsx ~/.claude/skills/linear/scripts/query.ts "query { viewer { name } }"
高级项目和计划管理模式,请参见 projects.md。
快速参考 - 常见项目命令:
# 创建链接到计划的项目
npx tsx scripts/linear-ops.ts create-project "Phase X: Name" "My Initiative"
# 更新项目状态
npx tsx scripts/linear-ops.ts project-status "Phase X" in-progress
npx tsx scripts/linear-ops.ts project-status "Phase X" completed
# 将项目链接/取消链接到计划
npx tsx scripts/linear-ops.ts link-initiative "Phase X" "My Initiative"
npx tsx scripts/linear-ops.ts unlink-initiative "Phase X" "Old Initiative"
projects.md 中的关键主题:
管理 Linear 问题、项目和团队
当需要管理 Linear 问题、项目和团队时,请使用此技能。
有关将代码更改批量同步到 Linear 的信息,请参见 sync.md。
快速同步命令:
# 批量将问题更新为完成
npx tsx scripts/linear-ops.ts status Done ENG-101 ENG-102 ENG-103
# 更新项目状态
npx tsx scripts/linear-ops.ts project-status "My Project" completed
| 文档 | 用途 |
|---|---|
| api.md | GraphQL API 参考,超时处理 |
| sdk.md | SDK 自动化模式 |
| sync.md | 批量同步模式 |
| projects.md | 项目与计划管理 |
| troubleshooting.md | 常见问题,MCP 调试 |
| docs/labels.md | 标签分类法 |
外部链接: Linear MCP 文档
每周安装次数
85
仓库
GitHub 星标
26.9K
首次出现
2026年2月5日
安全审计
安装于
codex83
opencode83
cursor82
github-copilot82
kimi-cli82
gemini-cli82
Manage Linear issues, projects, and teams
Use this skill when working with manage linear issues, projects, and teams.
Tools and workflows for managing issues, projects, and teams in Linear.
This skill supports multiple tool backends. Use whichever is available:
linear command) - Always available via BashIf MCP tools are NOT available , use the Linear CLI via Bash:
# View an issue
linear issues view ENG-123
# Create an issue
linear issues create --title "Issue title" --description "Description"
# Update issue status (get state IDs first)
linear issues update ENG-123 -s "STATE_ID"
# Add a comment
linear issues comment add ENG-123 -m "Comment text"
# List issues
linear issues list
Do NOT report "MCP tools not available" as a blocker - use CLI instead.
Manage Linear issues, projects, and teams
Use this skill when working with manage linear issues, projects, and teams.
CRITICAL : Never expose API keys in terminal output or Claude's context.
# Validate LINEAR_API_KEY is set (masked output)
varlock load 2>&1 | grep LINEAR
# Run commands with secrets injected
varlock run -- npx tsx scripts/query.ts "query { viewer { name } }"
# Check schema (safe - no values)
cat .env.schema | grep LINEAR
# ❌ NEVER - exposes key to Claude's context
linear config show
echo $LINEAR_API_KEY
printenv | grep LINEAR
cat .env
Create .env.schema with @sensitive annotation:
# @type=string(startsWith=lin_api_) @required @sensitive
LINEAR_API_KEY=
Add LINEAR_API_KEY to .env (never commit this file)
Configure MCP to use environment variable:
{
"mcpServers": {
"linear": {
"env": { "LINEAR_API_KEY": "${LINEAR_API_KEY}" }
}
}
}
Use varlock load to validate before operations
Run the setup check to verify your configuration:
npx tsx ~/.claude/skills/linear/scripts/setup.ts
This will check:
If setup reports a missing API key:
lin_api_)# Option A: Add to shell profile (~/.zshrc or ~/.bashrc)
export LINEAR_API_KEY="lin_api_your_key_here"
# Option B: Add to Claude Code environment
echo 'LINEAR_API_KEY=lin_api_your_key_here' >> ~/.claude/.env
# Then reload your shell or restart Claude Code
Verify everything works:
npx tsx ~/.claude/skills/linear/scripts/query.ts "query { viewer { name } }"
You should see your name from Linear.
# Create issue in a project
npx tsx scripts/linear-ops.ts create-issue "Project" "Title" "Description"
# Update issue status
npx tsx scripts/linear-ops.ts status Done ENG-123 ENG-124
# Create sub-issue
npx tsx scripts/linear-ops.ts create-sub-issue ENG-100 "Sub-task" "Details"
# Update project status
npx tsx scripts/linear-ops.ts project-status "Phase 1" completed
# Show all commands
npx tsx scripts/linear-ops.ts help
See Project Management Commands for full reference.
Manage Linear issues, projects, and teams
Use this skill when working with manage linear issues, projects, and teams.
Best Practice : When planning a new phase or initiative, create the project and its issues together in a single planning session. Avoid creating issues in a catch-all project and moving them later.
Create the project first :
npx tsx scripts/linear-ops.ts create-project "Phase X: Feature Name" "My Initiative"
Set project state to Planned :
npx tsx scripts/linear-ops.ts project-status "Phase X: Feature Name" planned
Create issues directly in the project :
npx tsx scripts/linear-ops.ts create-issue "Phase X: Feature Name" "Parent task" "Description"
npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 1" "Description"
npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 2" "Description"
Update project state when work begins :
npx tsx scripts/linear-ops.ts project-status "Phase X: Feature Name" in-progress
❌ Creating issues in a "holding" project and moving them later:
# Don't do this
create-issue "Phase 6A" "New feature" # Wrong project
# Later: manually move to Phase X # Extra work
Update a project's state in Linear. Accepts user-friendly terminology that maps to Linear's API.
npx tsx scripts/linear-ops.ts project-status <project-name> <state>
Valid States:
| Input | Description | API Value |
|---|---|---|
backlog | Not yet started | backlog |
planned | Scheduled for future | planned |
in-progress | Currently active | started |
paused | Temporarily on hold | paused |
completed | Successfully finished | completed |
Examples:
# Start working on a project
npx tsx scripts/linear-ops.ts project-status "Phase 8: MCP Decision Engine" in-progress
# Mark project complete
npx tsx scripts/linear-ops.ts project-status "Phase 8" completed
# Partial name matching works
npx tsx scripts/linear-ops.ts project-status "Phase 8" paused
Link an existing project to an initiative.
npx tsx scripts/linear-ops.ts link-initiative <project-name> <initiative-name>
Examples:
# Link a project to an initiative
npx tsx scripts/linear-ops.ts link-initiative "Phase 8: MCP Decision Engine" "Q1 Goals"
# Partial matching works
npx tsx scripts/linear-ops.ts link-initiative "Phase 8" "Q1 Goals"
Remove a project from an initiative.
npx tsx scripts/linear-ops.ts unlink-initiative <project-name> <initiative-name>
Examples:
# Remove incorrect link
npx tsx scripts/linear-ops.ts unlink-initiative "Phase 8" "Linear Skill"
# Clean up test links
npx tsx scripts/linear-ops.ts unlink-initiative "Test Project" "Q1 Goals"
Error Handling:
# 1. Create project linked to initiative
npx tsx scripts/linear-ops.ts create-project "Phase 11: New Feature" "Q1 Goals"
# 2. Set state to planned
npx tsx scripts/linear-ops.ts project-status "Phase 11" planned
# 3. Create issues in the project
npx tsx scripts/linear-ops.ts create-issue "Phase 11" "Parent task" "Description"
npx tsx scripts/linear-ops.ts create-sub-issue ENG-XXX "Sub-task 1" "Details"
# 4. Start work - update to in-progress
npx tsx scripts/linear-ops.ts project-status "Phase 11" in-progress
# 5. Mark issues done
npx tsx scripts/linear-ops.ts status Done ENG-XXX ENG-YYY
# 6. Complete project
npx tsx scripts/linear-ops.ts project-status "Phase 11" completed
# 7. (Optional) Link to additional initiative
npx tsx scripts/linear-ops.ts link-initiative "Phase 11" "Q2 Goals"
Manage Linear issues, projects, and teams
Use this skill when working with manage linear issues, projects, and teams.
Choose the right tool for the task:
| Tool | When to Use |
|---|---|
| MCP (Official Server) | Most operations - PREFERRED |
| Helper Scripts | Bulk operations, when MCP unavailable |
| SDK scripts | Complex operations (loops, conditionals) |
| GraphQL API | Operations not supported by MCP/SDK |
Use the official Linear MCP server at mcp.linear.app:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.linear.app/sse"],
"env": { "LINEAR_API_KEY": "your_api_key" }
}
}
}
WARNING : Do NOT use deprecated community servers. See troubleshooting.md for details.
| Operation | Reliability | Notes |
|---|---|---|
| Create issue | ✅ High | Full support |
| Update status | ✅ High | Use state: "Done" directly |
| List/Search issues | ✅ High | Supports filters, queries |
| Add comment | ✅ High | Works with issue IDs |
# Via MCP - use human-readable state names
update_issue with id="issue-uuid", state="Done"
# Via helper script (bulk operations)
node scripts/linear-helpers.mjs update-status Done 123 124 125
For detailed helper script usage, see troubleshooting.md.
For bulk operations or background execution, use the Linear-specialist subagent:
Task({
description: "Update Linear issues",
prompt: "Mark ENG-101, ENG-102, ENG-103 as Done",
subagent_type: "Linear-specialist"
})
When to useLinear-specialist (parallel):
When to use direct execution:
See sync.md for parallel execution patterns.
Every issue MUST be attached to a project. Every project MUST be linked to an initiative.
| Entity | Must Link To | If Missing |
|---|---|---|
| Issue | Project | Not visible in project board |
| Project | Initiative | Not visible in roadmap |
See projects.md for complete project creation checklist.
state: "Todo"state: "Backlog"Uses domain-based label taxonomy. See docs/labels.md.
Key rules:
ONE Type label: feature, bug, refactor, chore, spike
1-2 Domain labels: security, backend, frontend, etc.
Scope labels when applicable: blocked, breaking-change, tech-debt
Use only when MCP tools are insufficient. For complex operations involving loops, mapping, or bulk updates, write TypeScript scripts using @linear/sdk. See sdk.md for:
Scripts provide full type hints and are easier to debug than raw GraphQL for multi-step operations.
Fallback only. Use when operations aren't supported by MCP or SDK.
See api.md for complete documentation including:
Quick ad-hoc query:
npx tsx ~/.claude/skills/linear/scripts/query.ts "query { viewer { name } }"
For advanced project and initiative management patterns, see projects.md.
Quick reference - common project commands:
# Create project linked to initiative
npx tsx scripts/linear-ops.ts create-project "Phase X: Name" "My Initiative"
# Update project status
npx tsx scripts/linear-ops.ts project-status "Phase X" in-progress
npx tsx scripts/linear-ops.ts project-status "Phase X" completed
# Link/unlink projects to initiatives
npx tsx scripts/linear-ops.ts link-initiative "Phase X" "My Initiative"
npx tsx scripts/linear-ops.ts unlink-initiative "Phase X" "Old Initiative"
Key topics in projects.md:
Manage Linear issues, projects, and teams
Use this skill when working with manage linear issues, projects, and teams.
For bulk synchronization of code changes to Linear, see sync.md.
Quick sync commands:
# Bulk update issues to Done
npx tsx scripts/linear-ops.ts status Done ENG-101 ENG-102 ENG-103
# Update project status
npx tsx scripts/linear-ops.ts project-status "My Project" completed
| Document | Purpose |
|---|---|
| api.md | GraphQL API reference, timeout handling |
| sdk.md | SDK automation patterns |
| sync.md | Bulk sync patterns |
| projects.md | Project & initiative management |
| troubleshooting.md | Common issues, MCP debugging |
| docs/labels.md | Label taxonomy |
External: Linear MCP Documentation
Weekly Installs
85
Repository
GitHub Stars
26.9K
First Seen
Feb 5, 2026
Security Audits
Gen Agent Trust HubPassSocketFailSnykPass
Installed on
codex83
opencode83
cursor82
github-copilot82
kimi-cli82
gemini-cli82
开源项目教练指南 - 诊断问题、制定行动计划、优化开源项目运营
46,800 周安装
PrivateInvestigator 道德人员查找工具 | 公开数据调查、反向搜索与背景研究
69 周安装
TorchTitan:PyTorch原生分布式大语言模型预训练平台,支持4D并行与H100 GPU加速
69 周安装
screenshot 截图技能:跨平台桌面截图工具,支持macOS/Linux权限管理与多模式捕获
69 周安装
tmux进程管理最佳实践:交互式Shell初始化、会话命名与生命周期管理
69 周安装
Git Rebase Sync:安全同步分支的Git变基工具,解决冲突与备份
69 周安装
LinkedIn自动化工具 - Claude Code专属,自然对话拓展人脉,避免垃圾信息
69 周安装
canceled | Will not be done | canceled |
npx tsx scripts/linear-ops.ts labels validate "feature,security"
npx tsx scripts/linear-ops.ts labels suggest "Fix XSS vulnerability"