with one click
linear
Manage Linear issues, projects, and cycles via the Linear GraphQL API.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Manage Linear issues, projects, and cycles via the Linear GraphQL API.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Create or update SKILL.md packages with deterministic frontmatter, clear trigger descriptions, and valid command/script execution mappings.
Narrative summarization, storytelling, and long-form synthesis in Sigrid's voice — named after the Viking court poets who kept memory alive through story.
Maintain stable user and project facts across sessions using workspace memory files and runtime memory state.
Schedule reminders and recurring tasks with the `cron` tool (add/list/remove/enable/disable/run).
Read, write, and search local Obsidian vault markdown files via the filesystem.
Remote-control tmux sessions for interactive CLIs by sending keystrokes and capturing pane output.
| name | linear |
| description | Manage Linear issues, projects, and cycles via the Linear GraphQL API. |
| always | false |
| script | linear |
| requirements | {"env":["LINEAR_API_KEY"]} |
| metadata | {"clawlite":{"emoji":"📐","auth":{"requiredEnv":["LINEAR_API_KEY"]}}} |
Use this skill when the user wants to create, update, search, or triage Linear issues and projects.
Set LINEAR_API_KEY (from https://linear.app/settings/api).
ENDPOINT="https://api.linear.app/graphql"
HEADERS='-H "Authorization: $LINEAR_API_KEY" -H "Content-Type: application/json"'
query {
issues(filter: { state: { name: { eq: "In Progress" } } }, first: 20) {
nodes { id identifier title priority state { name } assignee { name } }
}
}
curl -s -X POST "$ENDPOINT" \
-H "Authorization: $LINEAR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"{ issues(first:20){nodes{id identifier title state{name}}} }"}'
mutation {
issueCreate(input: {
title: "Fix login bug"
description: "Steps to reproduce..."
teamId: "TEAM_ID"
priority: 2
}) {
issue { id identifier url }
}
}
mutation {
issueUpdate(id: "ISSUE_ID", input: { stateId: "STATE_ID" }) {
issue { id state { name } }
}
}
query { teams { nodes { id name states { nodes { id name } } } } }
teamId and stateId before mutations.