Linear
v1.0.0Manage Linear projects, issues, and tasks via the bundled Node CLI and the official Linear API. Use when you need to read, create, update, or organize Linear...
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
The name/description match the contained CLI implementation (scripts/linear-cli.js) which uses @linear/sdk and targets Linear's GraphQL API. Required binaries (node, npm) and the LINEAR_API_KEY credential are appropriate and expected for this purpose.
Instruction Scope
SKILL.md instructs the agent to run the bundled Node CLI and to read LINEAR_API_KEY from the environment. Runtime steps are limited to listing/reading/updating Linear resources and explicitly forbid sending data to endpoints outside the Linear API. The CLI source only calls the official SDK and prints JSON; it does not access unrelated files or network endpoints.
Install Mechanism
Install uses a brew formula to install Node (reasonable). The package.json triggers `cd scripts && npm install` (postinstall), which will fetch @linear/sdk from the npm registry — typical but worth verifying in your environment. Note: @linear/sdk declares node engine >=18.x; ensure your Node version meets that requirement.
Credentials
Only a single credential (LINEAR_API_KEY) is required and is the primaryEnv; that is proportionate. The code reads only that env var and nothing else. Recommend using a dedicated, least-privilege Linear token for automation as the SKILL.md suggests.
Persistence & Privilege
The skill does not request permanent 'always' inclusion (always: false). It doesn't modify other skills or system-wide configs. Note that model invocation is allowed by default (disable-model-invocation: false) — this is the platform default and not in itself suspicious.
Assessment
This skill appears coherent and implements a straightforward CLI wrapper for the official Linear SDK. Before installing: 1) Use a dedicated Linear API token with minimal permissions and rotate it if needed. 2) Run npm install in a controlled environment (the package installs @linear/sdk from npm); verify network sources if you require stricter supply-chain controls. 3) Ensure your Node version meets the SDK's engine requirement (>=18.x). 4) Review the bundled scripts if you want extra assurance (the CLI is short and only calls the official SDK). 5) On shared platforms, ensure the platform only exposes LINEAR_API_KEY to this skill and not to unrelated components.Like a lobster shell, security has layers — review code before you run it.
Runtime requirements
📐 Clawdis
Binsnode, npm
EnvLINEAR_API_KEY
Primary envLINEAR_API_KEY
Install
Install Node.js (brew)
Bins: node, npm
brew install nodelatest
Linear Workflow Management
Manage Linear issues and projects through the bundled CLI at {baseDir}/scripts/linear-cli.js.
Scope and Runtime Model
- This skill runs
node {baseDir}/scripts/linear-cli.js .... - The CLI uses the official
@linear/sdk. - Authentication is
LINEAR_API_KEYfrom the local environment. - Expected API destination is Linear GraphQL (
https://api.linear.app/graphql) through the official SDK.
Prerequisites
- Node.js and npm are installed.
- Install script dependencies once:
cd {baseDir}/scripts && npm install
- Set your API key:
export LINEAR_API_KEY="lin_api_..."
If dependencies or LINEAR_API_KEY are missing, stop and complete setup before issue/project operations.
Authentication and Credentials
- Required credential:
LINEAR_API_KEY. - Get it from
https://linear.app/settings/api. - Use least-privilege access and a dedicated token for automation.
Required Workflow
- Clarify intent and scope:
- Team/project, labels, cycle, assignee, due date, priority.
- Read current state first:
- List/get issues, projects, statuses, labels, users, cycles.
- Apply mutations second:
- Create/update issues, comments, projects, milestones, labels.
- Summarize exactly what changed:
- Mention IDs, states, assignees, blockers, and follow-up actions.
Command Coverage
- Teams and projects:
teams,projects,createProject - Issues:
issues,issue,createIssue,updateIssue - Comments:
createComment - States and labels:
states,labels - User:
user
Quick Examples
node {baseDir}/scripts/linear-cli.js teams
node {baseDir}/scripts/linear-cli.js projects
node {baseDir}/scripts/linear-cli.js issues
node {baseDir}/scripts/linear-cli.js issue ENG-123
node {baseDir}/scripts/linear-cli.js createIssue "Title" "Description" "team-id" '{"priority":2}'
node {baseDir}/scripts/linear-cli.js updateIssue "issue-id" '{"stateId":"state-id"}'
Practical Workflows
- Triage urgent bugs:
list high-priority open issues, assign owners, move state to
In Progress, add triage comments. - Sprint planning: review cycle scope, create missing issues, set priorities and estimates, align assignees.
- Release prep: verify blockers, update project status, create milestone tasks, add rollout comments.
- Documentation cleanup: find stale docs/issues, open follow-up tasks, link related records.
Safety and Operational Rules
- Never invent IDs; fetch and confirm before updates.
- Prefer narrow updates over broad bulk edits.
- For bulk edits, explain grouping logic before applying changes.
- Do not include secrets in issue comments or descriptions.
- Do not send data to endpoints outside Linear API scope for this skill.
References
references/API.mdfor priority values and workflow patterns.
Comments
Loading comments...
