CtrlK
BlogDocsLog inGet started
Tessl Logo

using-spn-forks

Use when discovering or scoring forks of a repository, finding candidate repositories to prospect with a GitHub search query, comparing fork novelty, clustering forks by novelty, ranking forks against a free-text intent, or fetching directory centrality data for a repo. Applies when the `spn` CLI is on PATH (`command -v spn`). `spn forks list` is NDJSON streaming by default; pass `--csv` for batched tabular output. `spn repo search` prints one JSON envelope and rejects `--csv`.

70

Quality

88%

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

SKILL.md
Quality
Evals
Security

Quality

Content

78%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.

Highly actionable and information-dense, with executable commands, precise output contracts, and good error-handling guidance. Its main weakness is structure: the SKILL.md is a long monolithic reference that would benefit from splitting advanced flag deep-dives into separate reference files rather than inlining everything.

Suggestions

Move the deep-dive material for advanced modes — 'Shortlist with rank uncertainty' (--eb, rank diagnostics), '--touching' gating internals, and 'Owner evidence' — into one-level-deep reference files (e.g. references/shortlist.md, references/touching.md), leaving SKILL.md a concise overview with pointers.

Break the dense single-paragraph sections into tables or bullet lists (e.g. the '--touching' and '--priors' sections) so key facts like field names and matcher semantics are scannable rather than buried mid-paragraph.

Add one worked end-to-end example for the shortlist flow (command, expected stderr rank_report line, and how to act on pTopK/poth), since that section currently describes fields without showing a concrete invocation.

DimensionReasoningScore

Conciseness

The body is information-dense and assumes Claude's competence — no generic concepts are explained, and nearly every sentence carries spn-specific contract details. Minor trimming is possible: sections like '--touching' and 'ownerEvidence' are long clause-stacked single paragraphs that could be tightened or tabulated, which keeps this below a 5.

4 / 5

Actionability

Copy-paste-ready commands throughout: the core loop ('spn forks list owner/repo | jq -c ...'), a concrete repo-search pipeline, exact flag syntax for every mode, an exit-code decision table, and field-by-field tables for shortlist and owner-evidence records. The common cases are covered with executable examples.

5 / 5

Workflow Clarity

The main flows are clearly sequenced (first check `command -v spn`, fall back to `gh api` if absent; stream and filter with jq) with error-recovery checkpoints — exit 2 'do not retry' vs. retryable errors, rate-limit `retry_after_seconds`, 'check the run output for `cluster_skip` warnings', and 'Check `ebRegime` in the `rank_report` first'. Minor gaps remain in sequencing the advanced shortlist/rank-diagnostics flow, so it sits just below a 5.

4 / 5

Progressive Disclosure

Section headers, tables, and a Quick Reference make navigation decent, but there are no bundle files at all: reference-grade detail — the `--shortlist` rank-uncertainty math and empirical-Bayes internals, the `--touching` gating/batch-compare internals, and the `ownerEvidence` schema — is inlined in SKILL.md where it belongs in one-level-deep reference files. This matches 'content that should be separate is inline' better than a 4.

3 / 5

Total

16

/

20

Passed

Description

92%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 strong description: it names concrete capabilities, gives explicit 'Use when...' triggers including an environment precondition (`command -v spn`), and describes output modes precisely. Keyword coverage is good though slightly jargon-flavored in places.

DimensionReasoningScore

Specificity

The description lists multiple specific concrete actions — 'discovering or scoring forks', 'finding candidate repositories to prospect with a GitHub search query', 'comparing fork novelty, clustering forks by novelty', 'ranking forks against a free-text intent', 'fetching directory centrality data' — plus concrete CLI behaviors ('`spn forks list` is NDJSON streaming by default; pass `--csv`'), giving comprehensive coverage of the skill's capabilities.

5 / 5

Completeness

It explicitly answers both what (enumerate/score/cluster/rank forks, search for candidate repos, fetch centrality, with NDJSON/CSV and JSON-envelope output modes) and when ('Use when discovering or scoring forks... Applies when the `spn` CLI is on PATH') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Good keyword coverage of natural user phrasings ('forks of a repository', 'GitHub search query', 'clustering', 'ranking'), but terms like 'prospect', 'comparing fork novelty', and 'directory centrality data' lean on tool jargon rather than everyday synonyms (e.g. 'find interesting forks' or 'find active forks'), so a few natural variations are missing.

4 / 5

Distinctiveness Conflict Risk

The fork-discovery/clustering niche with `spn`-specific triggers is clearly distinct; it even disambiguates from the sibling PR-review skill by scope. Overlap risk is minimal.

5 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Raudbjorn/spoon
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.