CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

reports

Save and load timestamped reports. Keyword routing for fast lookup. Cron jobs save output as reports; the agent or user queries them by keyword. Includes the Actionability Gate: delivery-time link checks (Broken/Dead/Indirect/ Missing) for briefings, meeting digests, and research reports.

Quality

75%

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-variants/gbrain-daily/skills/reports/SKILL.md

The canonical home for this skill is reports in garrytan/gbrain

SKILL.md
Quality
Evals
Security

Quality

Content

71%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 highly actionable with concrete commands, templates, and an explicit retry loop with validation, but it mixes two concerns (report save/load and the link-quality gate) in one monolithic file with the failure taxonomy restated three times. Splitting the gate into a reference file and deduplicating the taxonomy would tighten both conciseness and organization.

Suggestions

Move the Actionability Gate section into a dedicated reference file (e.g., references/actionability-gate.md) and keep a short summary plus link in SKILL.md, separating the link-quality concern from the core save/load workflow.

Deduplicate the failure taxonomy: the four-failure-modes table, the blocked-vs-warning table, and the LLM-prompt gate snippet restate the same rules — merge the two tables and keep the snippet as the only standalone copy.

Give Phase 2 (Load latest) a concrete mechanism (e.g., an explicit gbrain command or file-glob pattern) instead of the vague 'find the most recent report file'.

DimensionReasoningScore

Conciseness

The body is mostly tables and compact lists rather than padded prose, but the failure taxonomy is restated three times (the four-failure-modes table, the blocked-vs-warning table, and the LLM-prompt gate snippet), and rhetorical flourishes like 'A missing link is honest. An indirect link is a broken promise' add tokens without instruction. This is more than minor trimmable duplication, so it fits 'mostly efficient but could be tightened' rather than the level-4 'minor instances' anchor.

3 / 5

Actionability

Guidance is fully executable throughout: an exact path pattern ('reports/{category}/{YYYY-MM-DD-HHMM}.md'), a copy-paste frontmatter template, concrete commands ('git status', 'gbrain get <slug>', 'gbrain write-request <request_id>'), specific URL patterns to fix (e.g., 'x.com/<handle>/status/<id>'), and a paste-ready gate snippet. This matches the copy-paste-ready anchor covering the common cases.

5 / 5

Workflow Clarity

The retry loop is an exemplary validate→fix→re-check sequence with an explicit 'Max 2 retries' cap and blocked-vs-warning escalation, and the 'When it fails' section adds error-code handling, so it is well above the level-3 validation-gap anchor. However, Phase 2 ('find the most recent report file') names no concrete mechanism or command for locating the latest file, a minor gap that keeps it below the fully-specified level-5 anchor.

4 / 5

Progressive Disclosure

The skill has no bundle files (references/, scripts/, assets/ are absent) and the ~70-line Actionability Gate sub-procedure is inlined in a ~130-line body alongside the core save/load workflow, which is content that could live in a separate reference file. External pointers ('skills/_output-rules.md', '../conventions/agent-operator-protocol.md') are clearly signaled but unverifiable. This fits 'some structure but could be better organized; content that should be separate is inline' better than the level-4 'most content appropriately placed' anchor.

3 / 5

Total

15

/

20

Passed

Description

71%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 specific, third-person description that clearly states capabilities with concrete failure-mode names, but it omits an explicit 'Use when...' trigger clause in the description text itself, capping completeness. Trigger keywords are good but could include more natural user phrasings.

Suggestions

Fold an explicit 'Use when the user asks to save a report, load the latest briefing, or check report link quality' clause into the description text so the trigger guidance is not split across separate frontmatter fields.

Add natural user phrasings and synonyms (e.g., 'latest report', 'daily summary', 'report archive') to the description to strengthen trigger-term coverage.

Briefly state the when-context for the Actionability Gate ('use before delivering any briefing, digest, or research report') so both halves of the skill have explicit usage triggers.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with comprehensive coverage: 'Save and load timestamped reports', 'Keyword routing for fast lookup', and 'delivery-time link checks (Broken/Dead/Indirect/Missing) for briefings, meeting digests, and research reports'. It clearly matches the anchor for multiple specific concrete actions rather than the level-4 anchor with coverage gaps.

5 / 5

Completeness

The 'what' is clear (save/load timestamped reports, keyword routing, actionability gate), but 'when' is only weakly implied by 'Cron jobs save output as reports; the agent or user queries them by keyword' — the description contains no explicit 'Use when...' clause, which the guidelines cap at 3. The explicit trigger guidance lives in separate frontmatter fields (triggers, when_to_use) rather than in the description text.

3 / 5

Trigger Term Quality

The description includes good natural keywords ('save', 'load', 'reports', 'briefings', 'meeting digests', 'link checks'), but common phrasings users would actually say such as 'latest report' or 'daily summary' appear only in the separate triggers field, not in the description itself. It sits between the 'some relevant keywords' (3) and 'comprehensive coverage including synonyms' (5) anchors, noticeably above the midpoint.

4 / 5

Distinctiveness Conflict Risk

The combination of timestamped report storage, keyword routing, and a named link-quality gate carves out a mostly distinct niche, though 'reports' and 'briefings' carry minor overlap risk with generic note-taking or search skills. It fits the 'mostly distinct; minor overlap risk' anchor, not the fully distinct level-5 niche.

4 / 5

Total

16

/

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 suspicious

Warning

Total

14

/

16

Passed

Repository

garrytan/gbrain

Path

plugin-variants/gbrain-daily/skills/reports/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.