CtrlK
BlogDocsLog inGet started
Tessl Logo

build-report

Build polished analytical reports for executive, product, business, or technical audiences. Use when the task needs a durable answer-first narrative with evidence-backed findings, visuals or tables, caveats, and source context.

55

Quality

62%

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 ./plugins/data-analytics/skills/build-report/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

55%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's greatest strength is its disciplined 10-step workflow with validation, fallback, and blocker-recording loops, plus a final quality-bar checklist. Its weaknesses are heavy redundancy (delivery-mode and waiver rules restated many times) that inflates token cost, key executable details (the artifact.json schema) deferred to files missing from the bundle, and bulky delivery-mode specifications inlined in SKILL.md instead of living in the referenced spec files.

Suggestions

State each delivery-mode selection, fallback, and waiver rule exactly once (e.g., consolidate Skill Configuration, Workflow step 8, and the HTML Report Specifications bullets into one authoritative section) and cut the 100+ word multi-clause sentences to lift conciseness.

Include a minimal working artifact.json example (surface, one manifest block, one source) or inline the essential schema fields so the report can actually be built without the absent analytics-app-core.md reference, raising actionability.

Move the HTML Report Specifications and long Narrative bullet lists into the existing specifications/ files and reference them with one-line pointers, and verify that every referenced path (specifications/*.md, ../../src/analytics-app-core.md, ../../assets/demo-product-growth.csv) resolves in the shipped bundle.

DimensionReasoningScore

Conciseness

The body is noticeably verbose for an always-loaded SKILL.md: delivery-mode rules are stated three or more times (Skill Configuration lines on 'sites-app'/'html' fallbacks, again under Workflow step 8, again under HTML Report Specifications and the Quality Bar), and waiver logic is repeated in nearly identical words ('Do not infer a waiver from the absence of the word "report"' vs. 'A user can explicitly waive report creation by...'). Dense multi-clause sentences like the 100+ word delivery-surface paragraph in step 8 carry redundant qualifiers. It does not fall to anchor 1 because it teaches genuinely non-obvious project policy rather than concepts Claude already knows, but the padding and repetition clearly exceed anchor 3's 'mostly efficient'.

2 / 5

Actionability

There are some concrete, executable anchors — 'npm run report:deliver -- --input artifact.json --output report.html', the 'validate_artifact' call, 'export_artifact_package' with project id and output_dir, and the bundled scripts/deliver_portable_artifact.mjs whose real usage string matches the documented command. But most guidance is directional rather than executable: 'Distill the report spine... write or mentally verify', 'Author artifact.json as a complete validate_artifact input' delegates the critical artifact.json schema to ../../src/analytics-app-core.md, which is absent from this bundle, so a reader cannot actually construct the payload from the skill alone. This matches anchor 3 ('some concrete guidance but incomplete; missing key details').

3 / 5

Workflow Clarity

The 10-step numbered Workflow is clearly sequenced (define job → read audience spec → gather evidence → spine → structure → standards → visuals → build surface → validate → hand off) with explicit validation checkpoints: step 9 'Validate the finished report... Review the rendered report itself', 'Fix the report before handoff when any of these checks fail', a closing 'Quality Bar' checklist, feedback loops ('If the selected MCP app report cannot be rendered after one targeted correction, fall back to html'), and blocker-recording instructions. This matches anchor 5's 'clear sequence with explicit validation steps; feedback loops for error recovery; checklists for complex processes'.

5 / 5

Progressive Disclosure

Structure exists (Workflow, Report Standards, Quality Bar with one-level links like [executive-report.md](specifications/executive-report.md) and [mcp-app-report.md](specifications/mcp-app-report.md)), but judged against the actual bundle, those referenced files plus ../../src/analytics-app-core.md and ../../assets/demo-product-growth.csv are not present in the staged skill directory — only scripts/ exists. Meanwhile large blocks of surface-specific detail (the ~20-bullet HTML Report Specifications section and the long Narrative standards lists) are inlined in SKILL.md where they belong in the referenced specification files. This sits at anchor 3 ('some structure... content that should be separate is inline'), above anchor 2 because section headers and reference signals are present and navigation is possible.

3 / 5

Total

13

/

20

Passed

Description

70%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 well-formed: third person, compact, and it explicitly pairs a concrete 'what' with a 'Use when' trigger clause covering audiences and report elements. Its main weaknesses are a single-action 'what' (only 'build reports'), a 'when' clause written in internal spec jargon rather than natural user trigger phrases, and missing common synonyms like 'write a report' or 'memo'.

Suggestions

Broaden the 'what' with 2-3 more concrete actions (e.g., 'build, revise, and export analytical reports') to lift specificity toward comprehensive coverage.

Rewrite the 'when' clause around phrases users actually say — e.g., 'Use when the user asks for a report, write-up, memo, or executive summary with findings, charts or tables, and caveats' — to improve both completeness and trigger-term quality.

Add natural synonyms for the report concept (write-up, brief, memo, executive summary) so the description triggers on the full range of user phrasings.

DimensionReasoningScore

Specificity

"Build polished analytical reports for executive, product, business, or technical audiences" names the domain plus essentially one concrete action (build reports) with audience variants; the rest of the sentence ("evidence-backed findings, visuals or tables, caveats, and source context") describes the report's contents rather than additional distinct actions like creating, revising, or exporting reports. This matches the anchor 'Names domain and 1-2 concrete actions, but not comprehensive' — below 4 because it does not list several specific actions, above 2 because the domain and output form are concretely stated.

3 / 5

Completeness

Both parts are explicitly present: what — "Build polished analytical reports for executive, product, business, or technical audiences"; when — "Use when the task needs a durable answer-first narrative with evidence-backed findings...". It does not reach anchor 5 because the 'when' clause is framed in spec vocabulary ("durable answer-first narrative", "source context") rather than concrete user trigger phrases, matching anchor 4's "'when' could be more explicit or specific". It is well above anchor 3 since the 'Use when' trigger is explicit, not merely implied.

4 / 5

Trigger Term Quality

Natural user-facing terms are present: "analytical reports", "executive", "product", "business", or "technical audiences", "visuals or tables", "caveats" — phrases a user asking for a report would plausibly say. It falls short of anchor 5 because common synonyms a user might naturally say (e.g., "write a report", "write-up", "memo", "brief", "summary document") are missing, and no file-format triggers exist; it is clearly above anchor 3's 'some relevant keywords but missing common variations'.

4 / 5

Distinctiveness Conflict Risk

"Analytical reports" with a defined audience set and evidence/caveat framing carves a fairly clear niche with explicit triggers, so it is 'mostly distinct' (anchor 4) — though there is minor overlap risk with adjacent data-analysis, dashboard, and document-writing skills that also involve tables, findings, and audiences. It is not anchor 5 because the wording does not sharply fence off those neighboring skills within the description itself, and not anchor 3 because the report-specific framing is substantially more specific than generic 'works with files' style overlap.

4 / 5

Total

15

/

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

relative_links

Relative link issues: 5 missing, 1 suspicious

Warning

Total

15

/

16

Passed

Repository
openai/plugins
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.