CtrlK
BlogDocsLog inGet started
Tessl Logo

book-mirror

Take any book (EPUB/PDF), produce a personalized chapter-by-chapter analysis with two-column tables. Left column preserves the chapter content; right column maps every idea to the reader's actual life using brain context. Output is a single brain page at media/books/<slug>-personalized.md plus an optional PDF via brain-pdf.

56

Quality

65%

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

Quality

Content

77%

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

The body is highly actionable with executable code, a well-sequenced pipeline, and strong validation/feedback loops, but it is weighed down by conformance-test scaffolding sections and duplicated headers, and it is monolithic with no bundle files to support a progressive-disclosure structure.

Suggestions

Remove the redundant scaffolding sections ("## Contract", "## Output Format", "## Anti-Patterns") and the duplicate Anti-Patterns header — or consolidate them into the existing body sections — to tighten conciseness toward 3.

Move the long EPUB/PDF extraction scripts and the context-pack assembly into a scripts/ or references/ bundle file and reference it one level deep, which would convert the monolithic inline content into proper progressive disclosure and let that dimension score 3.

Replace the placeholder `# ...` ellipses in the context-pack heredoc with a concrete (even if minimal) executable snippet so every code block is complete.

DimensionReasoningScore

Conciseness

Mostly efficient — concrete bash/python code with no concept-explaining fluff — but it carries real overhead: a duplicate "## Anti-Patterns" header (already covered by "## Anti-patterns (do not do these)") and conformance-test scaffolding sections ("## Contract", "## Output Format", "## Anti-Patterns") that explicitly exist only for the test, plus placeholder `# ...` ellipses in the context-pack heredoc. Matches the score-2 "mostly efficient but includes some unnecessary" anchor; not 3 because of the scaffolding/duplication, not 1 because it never explains things Claude already knows.

2 / 3

Actionability

Fully executable, copy-paste-ready guidance: a real BeautifulSoup EPUB extraction script, `unzip`/`find`/`pdftotext` commands, word-count and HTML-tag quality checks, and a complete `gbrain book-mirror` invocation with every flag specified — matching the score-3 anchor. Minor `# ...` ellipses in one heredoc don't undermine the dominant executable content.

3 / 3

Workflow Clarity

A clear 6-step pipeline (ACQUIRE→EXTRACT→CONTEXT→ANALYZE→ASSEMBLE→PDF) with explicit validation checkpoints for this batch operation: a cost-gate [y/N] prompt, per-chapter word-count/HTML quality checks, a post-assembly fact-check pass, idempotency-keyed retry on failure, and a final output checklist — matching the score-3 "clear sequence with explicit validation" anchor.

3 / 3

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are all absent), so there is no actual bundle structure to validate; the body references external brain-repo files (_brain-filing-rules.md, conventions/quality.md, skills/brain-pdf/SKILL.md) that are one level deep but unverifiable. The content is well-sectioned but monolithic (~330 inline lines), matching the score-2 "some structure but content that should be separate is inline" anchor — not 3 because the one-level-deep reference pattern has no real bundle backing it.

2 / 3

Total

10

/

12

Passed

Description

52%

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 specific and distinctive about what it does, but it omits any "Use when..." trigger guidance and relies on technical/branded jargon rather than natural user-facing keywords, since those keywords are isolated in the separate triggers field.

Suggestions

Add an explicit "Use when..." clause to the description naming natural user phrases (e.g. "Use when the user wants to personalize a book to their own life, mirror a book, or apply a book's ideas to their situation") so completeness and trigger-term quality both reach 3.

Fold 1-2 of the most natural triggers ("mirror this book", "apply this book to my life") into the description prose rather than leaving them only in the triggers field, so the description text carries user-facing keywords.

DimensionReasoningScore

Specificity

Lists multiple concrete actions: "produce a personalized chapter-by-chapter analysis with two-column tables", a left column that "preserves the chapter content", a right column that "maps every idea to the reader's actual life", output "at media/books/<slug>-personalized.md", and "an optional PDF via brain-pdf" — matching the multi-action score-3 anchor and far more concrete than the score-2 example.

3 / 3

Completeness

It clearly answers "what" in detail but provides no "when" — there is no "Use when..." or equivalent trigger guidance, which per the judging guideline caps completeness at 2. Not score 3 (no explicit when), not score 1 (the what is strong).

2 / 3

Trigger Term Quality

The description text itself contains no natural user keywords — only technical/branded jargon ("brain context", "media/books/<slug>-personalized.md", "brain-pdf", "two-column tables"). The natural triggers live in the separate triggers: field, not the description, so against the description alone it matches the score-1 "No natural keywords; technical jargon" anchor.

1 / 3

Distinctiveness Conflict Risk

The niche is sharply defined — personalized, chapter-by-chapter analysis of any book mapped to the reader's own brain context — making it unlikely to trigger for the wrong skill, matching the score-3 "clear niche" anchor.

3 / 3

Total

9

/

12

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.

Validation14 / 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: 3 suspicious

Warning

Total

14

/

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.