[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-06c6b208-3c2c-4887-91f0-764e49a2723f":3,"$ffibyNZSvhiTp6K5tr2yFvPNxgC6BM3MxN0FZbyAkWl4":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"06c6b208-3c2c-4887-91f0-764e49a2723f","linear-automation","通过Rube MCP（Composio）自动化线性任务：问题、项目、周期、团队、标签。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: linear-automation\ndescription: \"Automate Linear tasks via Rube MCP (Composio): issues, projects, cycles, teams, labels. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Linear Automation via Rube MCP\n\nAutomate Linear operations through Composio's Linear toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Linear connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `linear`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `linear`\n3. If connection is not ACTIVE, follow the returned auth link to complete Linear OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Manage Issues\n\n**When to use**: User wants to create, search, update, or list Linear issues\n\n**Tool sequence**:\n1. `LINEAR_GET_ALL_LINEAR_TEAMS` - Get team IDs [Prerequisite]\n2. `LINEAR_LIST_LINEAR_STATES` - Get workflow states for a team [Prerequisite]\n3. `LINEAR_CREATE_LINEAR_ISSUE` - Create a new issue [Optional]\n4. `LINEAR_SEARCH_ISSUES` \u002F `LINEAR_LIST_LINEAR_ISSUES` - Find issues [Optional]\n5. `LINEAR_GET_LINEAR_ISSUE` - Get issue details [Optional]\n6. `LINEAR_UPDATE_ISSUE` - Update issue properties [Optional]\n\n**Key parameters**:\n- `team_id`: Team ID (required for creation)\n- `title`: Issue title\n- `description`: Issue description (Markdown supported)\n- `state_id`: Workflow state ID\n- `assignee_id`: Assignee user ID\n- `priority`: 0 (none), 1 (urgent), 2 (high), 3 (medium), 4 (low)\n- `label_ids`: Array of label IDs\n\n**Pitfalls**:\n- Team ID is required when creating issues; use GET_ALL_LINEAR_TEAMS first\n- State IDs are team-specific; use LIST_LINEAR_STATES with the correct team\n- Priority uses integer values 0-4, not string names\n\n### 2. Manage Projects\n\n**When to use**: User wants to create or update Linear projects\n\n**Tool sequence**:\n1. `LINEAR_LIST_LINEAR_PROJECTS` - List existing projects [Optional]\n2. `LINEAR_CREATE_LINEAR_PROJECT` - Create a new project [Optional]\n3. `LINEAR_UPDATE_LINEAR_PROJECT` - Update project details [Optional]\n\n**Key parameters**:\n- `name`: Project name\n- `description`: Project description\n- `team_ids`: Array of team IDs associated with the project\n- `state`: Project state (e.g., 'planned', 'started', 'completed')\n\n**Pitfalls**:\n- Projects span teams; they can be associated with multiple teams\n\n### 3. Manage Cycles\n\n**When to use**: User wants to work with Linear cycles (sprints)\n\n**Tool sequence**:\n1. `LINEAR_GET_ALL_LINEAR_TEAMS` - Get team ID [Prerequisite]\n2. `LINEAR_GET_CYCLES_BY_TEAM_ID` \u002F `LINEAR_LIST_LINEAR_CYCLES` - List cycles [Required]\n\n**Key parameters**:\n- `team_id`: Team ID for cycle operations\n- `number`: Cycle number\n\n**Pitfalls**:\n- Cycles are team-specific; always scope by team_id\n\n### 4. Manage Labels and Comments\n\n**When to use**: User wants to create labels or comment on issues\n\n**Tool sequence**:\n1. `LINEAR_CREATE_LINEAR_LABEL` - Create a new label [Optional]\n2. `LINEAR_CREATE_LINEAR_COMMENT` - Comment on an issue [Optional]\n3. `LINEAR_UPDATE_LINEAR_COMMENT` - Edit a comment [Optional]\n\n**Key parameters**:\n- `name`: Label name\n- `color`: Label color (hex)\n- `issue_id`: Issue ID for comments\n- `body`: Comment body (Markdown)\n\n**Pitfalls**:\n- Labels can be team-scoped or workspace-scoped\n- Comment body supports Markdown formatting\n\n### 5. Custom GraphQL Queries\n\n**When to use**: User needs advanced queries not covered by standard tools\n\n**Tool sequence**:\n1. `LINEAR_RUN_QUERY_OR_MUTATION` - Execute custom GraphQL [Required]\n\n**Key parameters**:\n- `query`: GraphQL query or mutation string\n- `variables`: Variables for the query\n\n**Pitfalls**:\n- Requires knowledge of Linear's GraphQL schema\n- Rate limits apply to GraphQL queries\n\n## Common Patterns\n\n### ID Resolution\n\n**Team name -> Team ID**:\n```\n1. Call LINEAR_GET_ALL_LINEAR_TEAMS\n2. Find team by name in response\n3. Extract id field\n```\n\n**State name -> State ID**:\n```\n1. Call LINEAR_LIST_LINEAR_STATES with team_id\n2. Find state by name\n3. Extract id field\n```\n\n### Pagination\n\n- Linear tools return paginated results\n- Check for pagination cursors in responses\n- Pass cursor to next request for additional pages\n\n## Known Pitfalls\n\n**Team Scoping**:\n- Issues, states, and cycles are team-specific\n- Always resolve team_id before creating issues\n\n**Priority Values**:\n- 0 = No priority, 1 = Urgent, 2 = High, 3 = Medium, 4 = Low\n- Use integer values, not string names\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| List teams | LINEAR_GET_ALL_LINEAR_TEAMS | (none) |\n| Create issue | LINEAR_CREATE_LINEAR_ISSUE | team_id, title, description |\n| Search issues | LINEAR_SEARCH_ISSUES | query |\n| List issues | LINEAR_LIST_LINEAR_ISSUES | team_id, filters |\n| Get issue | LINEAR_GET_LINEAR_ISSUE | issue_id |\n| Update issue | LINEAR_UPDATE_ISSUE | issue_id, fields |\n| List states | LINEAR_LIST_LINEAR_STATES | team_id |\n| List projects | LINEAR_LIST_LINEAR_PROJECTS | (none) |\n| Create project | LINEAR_CREATE_LINEAR_PROJECT | name, team_ids |\n| Update project | LINEAR_UPDATE_LINEAR_PROJECT | project_id, fields |\n| List cycles | LINEAR_LIST_LINEAR_CYCLES | team_id |\n| Get cycles | LINEAR_GET_CYCLES_BY_TEAM_ID | team_id |\n| Create label | LINEAR_CREATE_LINEAR_LABEL | name, color |\n| Create comment | LINEAR_CREATE_LINEAR_COMMENT | issue_id, body |\n| Update comment | LINEAR_UPDATE_LINEAR_COMMENT | comment_id, body |\n| List users | LINEAR_LIST_LINEAR_USERS | (none) |\n| Current user | LINEAR_GET_CURRENT_USER | (none) |\n| Run GraphQL | LINEAR_RUN_QUERY_OR_MUTATION | query, variables |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,196,2028,"2026-05-16 13:26:27",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"034c5e66-b2b8-43af-a42d-67d6ca698b61","1.0.0","linear-automation.zip",2523,"uploads\u002Fskills\u002F06c6b208-3c2c-4887-91f0-764e49a2723f\u002Flinear-automation.zip","0a0ee8e6b2938a8e4393c86a4fc9cc0c66f945c6f1c620bc907f79e50046e7ed","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":6373}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]