A GraphQL wrapper for Linear that enforces lean patterns to keep context windows manageable. The big idea is the workpad: you edit a local markdown file as you work, then sync it to Linear comments only at milestones instead of spamming the API. It blocks schema introspection queries outright because they dump 200K characters of type definitions you don't need. Everything else is documented query fragments for the common stuff: reading issues, moving tickets between states, attaching PRs, uploading files. Useful if you're building agents that interact with Linear and want to avoid the usual API thrash.

skills.sh installs
542
GitHub stars
82
last updated
Aug 21, 2026

Install

$ npx -y skills add odysseus0/symphony --skill linear --agent claude-code

Installs into .claude/skills of the current project.

Files

Linear GraphQL

All Linear operations go through the linear_graphql client tool exposed by Symphony's app server. It handles auth automatically.

{
  "query": "query or mutation document",
  "variables": { "optional": "graphql variables" }
}

One operation per tool call. A top-level errors array means the operation failed even if the tool call completed.

Workpad

Maintain a local workpad.md in your workspace. Edit freely (zero API cost), then sync to Linear at milestones — plan finalized, implementation done, validation complete. Do not sync after every small change.

First sync — create the comment, save the ID:

mutation CreateComment($issueId: String!, $body: String!) {
  commentCreate(input: { issueId: $issueId, body: $body }) {
    success
    comment { id }
  }
}

Write the returned comment.id to .workpad-id so subsequent syncs can update.

Subsequent syncs — read .workpad-id, update in place:

mutation UpdateComment($id: String!, $body: String!) {
  commentUpdate(id: $id, input: { body: $body }) { success }
}

Query an issue

Sponsors

Details

Repository
github.com/odysseus0/symphony
Categories
Backend & APIs, Git & Pull Requests
First seen
Jun 3, 2026

More from odysseus0/symphony

All 7
1davila7 avatarpolarsdavila7/claude-code-templatesFast DataFrame library (Apache Arrow). Select, filter, group_by, joins, lazy evaluation, CSV/Parquet I/O, expression API, for high-performance data analysis wor539skills.sh installs
2useai-pro avatarcredential-scanneruseai-pro/openclaw-skills-securityScan your project for exposed credentials, API keys, and secrets before running OpenClaw skills. Prevents accidental exfiltration.539skills.sh installs
3hkuds avatarcli-anything-videocaptionerhkuds/cli-anythingAI-powered video captioning — transcribe speech, optimize/translate subtitles, and burn them into video via the stable VideoCaptioner backend. Free ASR and tran537skills.sh installs
4intellectronica avatarcopilot-sdkintellectronica/agent-skillsThis skill helps with GitHub Copilot SDK work across Node.js/TypeScript, Python, Go, .NET, and Java. It covers setup, authentication, permissions, streaming eve535skills.sh installs
5vercel-labs avatarvercel-deployvercel-labs/agent-skillsDeploy applications and websites to Vercel. Use this skill when the user requests deployment actions such as "Deploy my app", "Deploy this to production", "Crea534skills.sh installs
6aj-geddes avatarsql-injection-preventionaj-geddes/useful-ai-promptsPrevent SQL injection attacks using prepared statements, parameterized queries, and input validation. Use when building database-driven applications securely.533skills.sh installs