CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

article-enrichment

Transform raw article text dumps in the brain into structured pages with executive summary, verbatim quotes, key insights, why-it-matters, and cross-references. Replaces walls-of-text with quotable, actionable brain pages.

Quality

73%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugin/skills/article-enrichment/SKILL.md

The canonical home for this skill is article-enrichment in garrytan/gbrain

SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is a strong operational skill document: a clearly sequenced pipeline, concrete gbrain commands, an explicit quality checklist, model-selection guidance with a spot-check feedback loop, and detailed error-recovery behavior for a mutating batch operation. Its main weakness is token efficiency — the conformance-test boilerplate sections, a duplicated link rule, and an embedded version literal could be trimmed without losing any operational value.

DimensionReasoningScore

Conciseness

The operational core is tight, but there is noticeable padding: the 'Contract' and 'Output Format' sections literally state they exist 'for the conformance test' rather than for the agent, the 'Link convention' section repeats the quality-bar checklist item ('standard markdown links ... NOT [[wiki-links]]'), 'Related skills' duplicates the convention pointers at the top, and a version literal is embedded ('It does NOT ship a deterministic CLI command in v0.25.1'). This matches anchor 3 ('mostly efficient but includes some unnecessary explanation or could be tightened') better than anchor 4, since these are several trimmable spots, not just minor instances.

3 / 5

Actionability

Concrete, executable guidance dominates: 'gbrain query "needs_enrichment: true type:article" --limit 50', 'gbrain get media/articles/<slug>', a quality bar with numeric thresholds ('≥3 verbatim quotes', '≥3 bullets'), a model-selection table, and specific error remedies ('poll gbrain write-request <request_id>'). It falls short of anchor 5 because steps 3-5 of the Invocation are comment stubs — '# 4. Write the enriched page / Use the put_page operation' — without the actual command syntax for put_page or the cross-link back-link operation.

4 / 5

Workflow Clarity

The 6-step pipeline (READ → SCAN → CONTEXT → ENRICH → WRITE → CROSS-LINK) is clearly sequenced, and validation is explicit: a quality-bar checklist ('An enriched page passes if it has: ✅ ...'), a validate→fix feedback loop for the batch case ('do a Sonnet draft pass and spot-check 5 with the LLM-judge brain-quality eval. If quotes are paraphrased, switch to Opus'), error-recovery steps ('revision_conflict ... Re-read, re-apply ... never overwrite blind'), and an idempotency guard ('check the needs_enrichment flag ... skip if already false'). This matches anchor 5's 'explicit validation steps; feedback loops for error recovery; checklists'.

5 / 5

Progressive Disclosure

Structure is good: a concise overview ('What this does', 'When to invoke') with clearly signaled one-level-deep references at the top ('see conventions/quality.md for citation rules, verbatim-quote requirements, and back-link enforcement'), deferring citation/filing/operator-protocol detail to separate files. It is not anchor 5 due to minor organization gaps: the test-only 'Contract' and 'Output Format' tail sections add noise, 'Related skills' repeats the top pointers, and the referenced paths sit outside this skill's bundle with no references/ directory of its own.

4 / 5

Total

16

/

20

Passed

Description

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

The description is highly specific about what the skill produces, listing the exact structured sections and the transformation outcome, and occupies a clear niche within its brain-PKM ecosystem. Its main weaknesses are the absence of any 'when to use' trigger guidance inside the description itself (relegated to a separate when_to_use field) and the omission of the primary natural trigger verb 'enrich' that users would actually say. Adding an explicit 'Use when' clause with the concrete trigger phrases would resolve both issues.

Suggestions

Append a 'Use when...' clause with concrete trigger phrases directly to the description (e.g., "Use when the user says 'enrich this article', 'enrich the article', or 'batch enrich'") instead of relying on the separate when_to_use frontmatter field, so the routing text itself answers 'when'.

Work the primary trigger verb 'enrich' and common synonyms (e.g., 'summarize this article', 'make this brain page useful') into the description so natural user phrasings match the description text.

Mention that the raw source is preserved (e.g., 'raw source kept in a collapsed details block') to round out the description of the transformation contract for readers who only see the description.

DimensionReasoningScore

Specificity

The description enumerates concrete output artifacts — 'executive summary, verbatim quotes, key insights, why-it-matters, and cross-references' — plus a clear transformation action ('Transform raw article text dumps in the brain into structured pages') and outcome ('Replaces walls-of-text with quotable, actionable brain pages'). Coverage of what the skill produces is comprehensive for its scope, matching the anchor for multiple specific concrete actions rather than the anchor-4 'minor gaps in coverage'.

5 / 5

Completeness

The 'what' is clearly and concretely answered, but the description itself contains no 'Use when...' clause or equivalent trigger guidance — that lives only in a separate nonstandard frontmatter field ('when_to_use'), not in the description text evaluated here. Per the judging guideline, a missing 'Use when' clause caps completeness at 3 ('clear what but when is missing'); it is not a 2 because the 'what' is fully explicit.

3 / 5

Trigger Term Quality

Relevant keywords are present ('article', 'text dumps', 'brain pages', 'walls-of-text'), but the description never uses the skill's own primary trigger verb 'enrich' (per the frontmatter triggers: 'enrich this article', 'batch enrich') nor common synonyms like 'summarize' or 'synthesize'. This matches anchor 3 ('some relevant keywords but missing common variations or synonyms') rather than anchor 4's 'good keyword coverage with a few natural terms missing', because the most likely user phrasing is absent entirely.

3 / 5

Distinctiveness Conflict Risk

The niche is clear and distinctive ('raw article text dumps in the brain', 'quotable, actionable brain pages'), so it would not trigger for generic skills. However, the body's own 'Related skills' section shows closely related siblings (media-ingest, idea-ingest, which also handle 'link/article ingestion'), creating minor overlap risk with those — matching anchor 4 ('mostly distinct; minor overlap risk with closely related skills') rather than anchor 5's 'minimal conflict risk'.

4 / 5

Total

15

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

relative_links

Relative link issues: 1 missing, 3 suspicious

Warning

Total

14

/

16

Passed

Repository

garrytan/gbrain

Path

plugin/skills/article-enrichment/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.