.claude/skills/linear-pm/SKILL.md
Linear project management - issues, projects, cycles, and roadmaps. Use for Linear-related tasks like managing issues, tracking sprints, and organizing projects.
npx skillsauth add oimiragieo/agent-studio linear-pmInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Mode: Cognitive/Prompt-Driven - No standalone utility script; use via agent context.
This skill provides comprehensive Linear project management capabilities with progressive disclosure for optimal context usage.
Context Savings: ~92% reduction
| Toolset | Description | | -------- | ------------------------------------------------ | | issues | Issue creation, updates, comments, state changes | | projects | Project management and issue association | | cycles | Sprint/cycle management and planning | | teams | Team structure and member management | | labels | Label and workflow state management |
| Tool | Description | Confirmation | | ------------- | ------------------------------------------------- | ------------ | | list-issues | List issues with filters (state, assignee, label) | No | | get-issue | Get detailed issue information | No | | create-issue | Create new issue with title, description, team | Yes | | update-issue | Update issue fields (state, assignee, priority) | Yes | | add-comment | Add comment to an issue | Yes | | search-issues | Search issues by text query | No | | assign-issue | Assign issue to team member | Yes | | set-priority | Set issue priority (urgent, high, medium, low) | Yes | | add-label | Add label to issue | Yes |
| Tool | Description | Confirmation | | -------------- | -------------------------------- | ------------ | | list-projects | List all projects for a team | No | | get-project | Get project details and metadata | No | | project-issues | Get all issues in a project | No | | create-project | Create new project | Yes | | update-project | Update project details | Yes |
| Tool | Description | Confirmation | | -------------- | ------------------------------ | ------------ | | list-cycles | List cycles for a team | No | | current-cycle | Get current active cycle | No | | cycle-issues | Get issues in a specific cycle | No | | cycle-progress | Get cycle completion metrics | No |
| Tool | Description | Confirmation | | ------------ | --------------------------- | ------------ | | list-teams | List all teams in workspace | No | | get-team | Get team details | No | | team-members | List team members | No |
| Tool | Description | Confirmation | | ------------ | -------------------------------------------------------- | ------------ | | list-labels | List all labels for a team | No | | list-states | List workflow states (backlog, to-do, in-progress, done) | No | | create-label | Create new label | Yes |
LINEAR_API_KEY is set before any API call — Linear's API returns a 401 with a generic error message when the key is missing or expired; early validation produces a clear, actionable error.| Anti-Pattern | Why It Fails | Correct Approach |
| ----------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Creating issues without deduplication check | Duplicate issues split tracking; team velocity metrics skewed | Search with a title filter (issues query with filter.title.eq field) before creating |
| Using state names in transitions | Case-sensitive; breaks when team renames state; locale issues | Use workflowState { id } query to get stable IDs; transition by ID |
| Fetching all team issues without filter | Thousands of results; rate limit hit; unusable output | Filter by state, assignee, cycle, or label in GraphQL query |
| Re-fetching team/project metadata per operation | Multiple identical API calls; rate limit waste; slow execution | Fetch team and project IDs once at session start; reuse for all subsequent calls |
| Ignoring pagination cursors | Only first page returned; missed issues cause incomplete reports | Use pageInfo { hasNextPage, endCursor } and paginate until hasNextPage: false |
Before starting: Read .claude/context/memory/learnings.md
After completing:
ASSUME INTERRUPTION: If it is not in memory, it did not happen.
tools
Comprehensive biosignal processing toolkit for analyzing physiological data including ECG, EEG, EDA, RSP, PPG, EMG, and EOG signals. Use this skill when processing cardiovascular signals, brain activity, electrodermal responses, respiratory patterns, muscle activity, or eye movements. Applicable for heart rate variability analysis, event-related potentials, complexity measures, autonomic nervous system assessment, psychophysiology research, and multi-modal physiological signal integration.
tools
Comprehensive toolkit for creating, analyzing, and visualizing complex networks and graphs in Python. Use when working with network/graph data structures, analyzing relationships between entities, computing graph algorithms (shortest paths, centrality, clustering), detecting communities, generating synthetic networks, or visualizing network topologies. Applicable to social networks, biological networks, transportation systems, citation networks, and any domain involving pairwise relationships.
data-ai
Molecular featurization for ML (100+ featurizers). ECFP, MACCS, descriptors, pretrained models (ChemBERTa), convert SMILES to features, for QSAR and molecular ML.
development
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.