CtrlK
BlogDocsLog inGet started
Tessl Logo

frontmatter-guard

Validate and auto-repair YAML frontmatter on brain pages. Catches malformed pages before they enter the brain (missing closing ---, nested quotes, slug mismatches, null bytes, empty frontmatter, YAML parse failures). Wraps the `gbrain frontmatter` CLI for agent-driven workflows.

64

Quality

76%

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 ./skills/frontmatter-guard/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

77%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 highly actionable, well-sequenced skill body: every phase has copy-paste-ready commands, explicit validation gates, and safety contracts (.bak, dry-run, confirm-before-fix). Its weaknesses are token efficiency (narrative/history padding and a duplicated trigger-words section) and progressive disclosure — it is a ~230-line monolith whose prevention guide and output-format reference material belong in separate one-level-deep reference files.

Suggestions

Move the "Prevention — Writing Valid Frontmatter" section and the full JSON envelope example into a references/ file (e.g. references/prevention.md), leaving a one-line pointer in SKILL.md.

Delete the body-level "Trigger words" section — it duplicates the frontmatter `triggers` field verbatim and adds token cost with no new information.

Trim the "Why This Exists" narrative and the pre-v0.37.5.0 validator history to a sentence each (or fold the version note into a short 'historical note' under the arrays subsection), keeping only the actionable guidance.

DimensionReasoningScore

Conciseness

Mostly efficient — the validation-classes table, phases, and output rules are dense and non-obvious — but there is noticeable padding: the "Why This Exists" narrative, the historical pre-v0.37.5.0 bug story ("One brain saw 6,981 of these on a single doctor run"), and a body-level "Trigger words" section that duplicates the frontmatter triggers. Not 4 because several sections could be trimmed without losing actionable content; not 2 because almost nothing explains concepts Claude already knows — the detail is tool-specific and unfamiliar.

3 / 5

Actionability

Fully executable throughout: copy-paste-ready commands for every phase ("gbrain frontmatter audit --json", "gbrain frontmatter validate <path> --fix", "gbrain frontmatter install-hook"), explicit exit-code semantics ("Exit code 0 = clean; 1 = errors found"), a concrete correct/broken YAML example set, and realistic sample outputs covering the common cases. Not 4 because there are no gaps — commands, flags, and expected outputs are all specified.

5 / 5

Workflow Clarity

Clear sequence with explicit validation checkpoints and feedback loops for destructive/batch operations: audit first ("Always run `gbrain frontmatter audit --json` first; never assume a brain is clean"), `--dry-run` preview ("Use this before applying fixes in batch"), `.bak` backups before every mutation, count-and-confirm before `--fix`, and exit-code validation for CI. The destructive-operation cap at 3 does not apply because verification steps are explicitly present. Not 4 because checkpoints are explicit and the anti-patterns section documents error-recovery behavior for every failure path.

5 / 5

Progressive Disclosure

The single-file body has good header structure, but reference-style material is inlined that belongs in a separate file — the ~60-line "Prevention — Writing Valid Frontmatter" section (canonical YAML forms, quoting rules, the LLM-trap JS snippet) and the full JSON envelope example read like a reference doc, and there are no bundle files at all (no references/, scripts/, or assets/). It matches anchor 3 ('content that should be separate is inline'); not 4 because the long inline reference material is exactly what the level-4/5 anchors expect split out, and not 2 because the section structure and navigation within the file are clear.

3 / 5

Total

16

/

20

Passed

Description

75%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 highly specific, well-differentiated description with a comprehensive enumeration of failure modes, weakened only by the absence of any explicit 'use when' trigger guidance within the description field itself (trigger phrases live in a separate frontmatter field). Trigger keywords are good but miss the natural variations listed in the skill's own triggers.

Suggestions

Add an explicit 'Use when...' clause to the description (e.g. 'Use when the user asks to validate, check, or fix frontmatter, run a frontmatter audit, or lint brain pages') so the description alone answers both what and when.

Fold one or two natural trigger synonyms (e.g. 'frontmatter audit', 'brain lint') into the description text instead of relying solely on the separate triggers field.

DimensionReasoningScore

Specificity

The description names the domain ("YAML frontmatter on brain pages") and multiple concrete actions ("Validate and auto-repair"), and enumerates comprehensive concrete failure modes: "missing closing ---, nested quotes, slug mismatches, null bytes, empty frontmatter, YAML parse failures". It clearly matches the anchor 'Lists multiple specific concrete actions; comprehensive coverage', not the level below where coverage has minor gaps.

5 / 5

Completeness

The 'what' is clear and concrete ("Validate and auto-repair YAML frontmatter... Wraps the `gbrain frontmatter` CLI"), but there is no 'Use when...' clause or equivalent explicit trigger guidance in the description, which caps completeness at 3 per the judging guidelines. It is not 2 because the 'what' is fully explicit, and not 4 because 'when' is entirely absent from the description field rather than weakly stated.

3 / 5

Trigger Term Quality

Good natural-keyword coverage: "frontmatter", "YAML", "validate", "auto-repair", "brain pages" are phrases a user would plausibly say. It is not 5 because common variations users would naturally say — "check frontmatter", "frontmatter audit", "brain lint" — appear only in the separate `triggers` frontmatter field, not in the description itself; it is above 3 because the terms present are relevant and domain-natural rather than generic.

4 / 5

Distinctiveness Conflict Risk

Clear niche with distinct triggers: "YAML frontmatter on brain pages" scoped via "Wraps the `gbrain frontmatter` CLI for agent-driven workflows" — highly unlikely to trigger for an unrelated skill. Not the level below (4) because there is no meaningful overlap risk; the tool name and page-type vocabulary are unique to this domain.

5 / 5

Total

17

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
garrytan/gbrain
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.