CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

linear

Load for any Linear read or write: issues, projects, cycles, milestones, initiatives, labels.

Quality

72%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/linear/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A dense, information-rich CLI reference with strong validation discipline: fail-closed refusals, retry semantics, partial-failure reporting, and post-mutation verification paths are all explicitly documented, and example commands are executable. The weaknesses are structural: rare-needed policy (journal internals, label governance) is inlined rather than split into the referenced files — and the two detail references the body points to (patterns/workflow-actions.md, README.md) are absent from the bundle, leaving the progressive-disclosure structure partially broken.

Suggestions

Ship or remove the dangling references: add patterns/workflow-actions.md and README.md to the bundle (preserving the #quota-holds and #setup anchors), or rewrite those pointers to in-section content or '--help' output.

Move the 'Request journal' and 'Shared label maintenance' sections into a reference file, keeping a few-line summary plus a one-level-deep link in SKILL.md so the always-loaded body covers only invocation and common workflows.

Add copy-paste examples for the most common write flows that are currently prose-only — issues create with agent labels, and the --labels fetch/validate/replace cycle — mirroring the style of the existing Reads examples.

DimensionReasoningScore

Conciseness

The body never explains concepts Claude already knows — there is no 'Linear is a project tracking tool' padding, and lines like 'Every read and write goes to Linear's API as it runs; no tracker data is stored locally' are ruthlessly compressed. But several sections carry rare-needed operational policy at full length in the always-loaded file: the ~19-line 'Request journal' section ('It sums only returned valid X-Complexity values. Missing values stay unread. Shared remaining-quota changes are never request costs.'), the 'Shared label maintenance' governance paragraphs, and the single-bullet 'issues complete' wall of conditions. This matches level 3 ('mostly efficient but... could be tightened' — via relocation and compression). It is not level 2 because there is no fluff or known-concept explanation — every sentence carries non-obvious information — and not level 4 because a substantial fraction of the 170 lines is edge-case material that most invocations never use.

3 / 5

Actionability

Concrete, executable guidance dominates: the invocation pattern 'linear.sh <resource> <action> [options]', a full resource/action table, and copy-ready examples like 'linear.sh issues list --project "Phase 2" --state "Todo,In Progress" --max' and 'linear.sh journal start --max-bytes BYTES --actor-id UUID'. It is not level 5 because several common flows (create with agent labels, the --labels replace-and-validate procedure, quota-hold handling) are described only in prose with no example command, and a few examples use bare placeholders ('attachments fetch [URL] --output tmp/[FILENAME]'). It is above level 3 because what is shown is genuinely executable, not pseudocode, and the '--help' per-resource detail path is real.

4 / 5

Workflow Clarity

Validation checkpoints are explicit and pervasive for risky operations: 'Run auth-check --strict before the first mutation', the label procedure 'Fetch current labels, compute the final set, validate it against labels list --max --format=safe, then pass the complete set', post-mutation verification via 'issues bulk-get', and batch failure semantics ('Partial failures emit per-issue results, partial: true, and exit nonzero') with retry policy ('A 5xx or unanswered mutation is sent once with linear-http: write=unconfirmed: read its result before resending'). The destructive/batch cap at 3 does not apply since bulk/complete workflows do carry validation and fail-closed refusals. It is not level 5 because several multi-step processes (the Done-when/complete rules, attachment resolution, shared-label change coordination) are rendered as dense conditional prose rather than ordered steps or checklists, making their sequence hard to follow.

4 / 5

Progressive Disclosure

Section structure is real and usable (Commands table, Reads, Team Target, Attachments), and references are prominently signaled as markdown links — but scored against the actual bundle, both referenced files are missing: 'patterns/workflow-actions.md' (cited twice, including a '#quota-holds' anchor) and 'README.md' ('§ Setup', cited twice) do not exist anywhere in the bundle, which only ships scripts/. Meanwhile content that belongs in separate reference files (Request journal internals, shared-label governance) is inlined. This matches level 3 ('some structure but could be better organized... content that should be separate is inline'). It is not level 2 because structure is far from minimal (clear headers, a command table, a working '--help' depth path), and not level 4 because the two primary detail references are dangling, breaking navigation for exactly the material pushed out of the overview.

3 / 5

Total

14

/

20

Passed

Description

73%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A tight, distinct description that names the target tool and its resources with an explicit load trigger ('Load for any Linear read or write'). Its main weakness is action generality — 'read or write' summarizes rather than enumerates concrete capabilities — and it omits several natural trigger terms (comments, attachments, teams) that the skill actually covers.

Suggestions

Replace the generic 'read or write' verb pair with concrete actions, e.g. 'list, search, create, update, archive' applied to the named resources, to lift specificity toward the level-4/5 anchors.

Add the resource terms the skill supports but the description omits — comments, attachments, teams — plus natural synonyms like 'ticket' or 'issue tracker' to broaden trigger coverage.

Consider adding a 'Use when the user mentions Linear, tickets, or issue tracking' style clause with concrete trigger phrases to make the when-to-load guidance fully explicit.

DimensionReasoningScore

Specificity

The description quotes 'read or write: issues, projects, cycles, milestones, initiatives, labels' — it names the domain (Linear) and six concrete resources, but the only actions are the generic umbrella verbs 'read or write' rather than concrete operations (create, update, search, archive). This matches the level-3 anchor 'names domain and 1-2 concrete actions, but not comprehensive' (the resource enumeration is specific, the action coverage is not). It is not level 4 because it does not list several specific actions, and not level 2 because the resource list is more concrete than a bare 'Processes PDF files' style example.

3 / 5

Completeness

The opening 'Load for any Linear read or write' is an explicit when-to-load clause (equivalent to 'Use when...'), and 'read or write: issues, projects, cycles, milestones, initiatives, labels' states what it covers — so both what and when are present, matching level 4 ('when' could be more explicit or specific). It is not level 5 because the 'what' lacks concrete action phrases and the 'when' offers no trigger-phrase variety beyond 'any Linear read or write'; it is not level 3 because the trigger guidance is explicit, not merely implied, so the missing-'Use when' cap does not apply.

4 / 5

Trigger Term Quality

Quotes 'Linear read or write: issues, projects, cycles, milestones, initiatives, labels' — 'Linear' plus the resource names (issues, projects, labels) are exactly the natural terms a user would say when needing this skill. It is not level 5 because common variations are missing: 'comments', 'attachments', 'teams', and generic synonyms like 'ticket' or 'task' are absent even though the skill handles them. It is above level 3 because coverage of the tool's own vocabulary is good, not just 'some relevant keywords'.

4 / 5

Distinctiveness Conflict Risk

The description leads with 'Linear' and uses Linear-specific vocabulary ('cycles', 'initiatives'), giving it a clear niche with minimal risk of triggering for an unrelated skill. This matches level 5 ('clear niche with distinct triggers; minimal conflict risk'). It is not level 4 because no closely related skill domain is plausibly confused: generic words like 'issues' and 'projects' are anchored to the named tool Linear throughout.

5 / 5

Total

16

/

20

Passed

Validation

75%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 5 missing

Warning

referenced_paths_exist

Referenced path issues: 2 missing

Warning

Total

12

/

16

Passed

Repository

vanillagreencom/kendex

Path

.agents/skills/linear/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.