CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

report-to-google-slides

Narrow conversion skill. Invoke only when the user explicitly asks to convert an existing HTML analytics report into a native Google Slides deck.

68

Quality

86%

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

SKILL.md
Quality
Evals
Security

Quality

Content

92%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, self-contained workflow document: concrete commands and tool names, explicit validation gates with a repair loop, and clean section organization that delegates implementation detail to the bundled script. Only minor tightening of a few jargon-heavy standards bullets would improve it.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence — no explanations of concepts Claude already knows, and tight imperatives like 'Tighten copy before shrinking fonts.' A few bullets are wordy and jargon-heavy (e.g., 'Support self-contained portable-builder reports whose native charts and builder-generated semantic chart-data representations remain available...'), which keeps it just below the every-token-earns-its-place anchor.

4 / 5

Actionability

Guidance is fully executable: a copy-paste bash command with the real script path (scripts/report_to_google_slides.py, verified to exist) and arguments, the concrete output files to inspect (deck.pptx, manifest.json, deck_plan.json, preflight_checks.json, assets/), named MCP import tool with the exact parameter (mcp__codex_apps__google_drive._import_presentation, upload_mode="native_google_slides"), and a concrete verification command (unzip -t <out-dir>/deck.pptx).

5 / 5

Workflow Clarity

The six-step workflow is clearly sequenced with explicit validation gates and a feedback loop: 'Do not import the PPTX until preflight_checks.json has status: "passed"', zip-integrity check before import, thumbnail verification of specific slide types, and step 5's repair-then-regenerate loop before handoff. This matches the anchor with explicit validation steps and error-recovery loops.

5 / 5

Progressive Disclosure

The body is a well-organized overview (intro, Workflow, Standards, Visual System) with the heavy lifting correctly delegated to the one-level-deep script reference, which exists in the bundle (scripts/report_to_google_slides.py). No buried or nested references, no content that belongs in a separate file, and easy navigation.

5 / 5

Total

19

/

20

Passed

Description

73%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 tight, well-scoped description with an explicit and appropriately restrictive trigger clause. Its main weaknesses are a thin 'what' statement and limited trigger-term coverage — no synonyms like 'presentation', 'PowerPoint', or '.pptx'.

Suggestions

Expand the 'what' clause to name the concrete capabilities, e.g., 'Converts an existing HTML analytics report into a native, editable Google Slides deck, rendering chart images, building slide-native tables, and running preflight quality checks.'

Add trigger synonyms users might naturally say, such as 'presentation', 'PowerPoint', '.pptx', or 'turn this report into slides', to broaden trigger-term coverage.

Clarify the deliverable explicitly (a Google Slides URL plus a local editable .pptx) so the 'what' fully answers what the skill produces.

DimensionReasoningScore

Specificity

The description names the domain ("convert an existing HTML analytics report into a native Google Slides deck") and one concrete action — conversion. It does not enumerate multiple specific capabilities (e.g., chart rendering, table conversion, preflight checks, import), so it matches the 'names domain and 1-2 concrete actions' anchor rather than the 'lists several specific actions' anchor above.

3 / 5

Completeness

Both parts are present: the 'what' ("Narrow conversion skill" converting an HTML analytics report into a native Google Slides deck) and a very explicit 'when' ("Invoke only when the user explicitly asks to convert..."). The 'when' meets the top anchor, but the 'what' is terse — it does not state concrete trigger phrases for the capability side nor what the deliverable includes, keeping it at the 'both present, could be more explicit' level rather than 5.

4 / 5

Trigger Term Quality

Natural trigger phrases are present — "convert", "HTML analytics report", "Google Slides", "deck" — which map well to what a user would say. A few natural variants are missing ("presentation", "PowerPoint", ".pptx", "slides"), so it falls just short of the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

The description carves out a clear niche (HTML analytics report → native Google Slides deck) with an 'only when the user explicitly asks' guard, minimizing overlap with generic presentation or document skills. The trigger is highly specific and unlikely to fire for the wrong skill.

5 / 5

Total

16

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

openai/plugins

Path

plugins/data-analytics/skills/build-report/report-to-google-slides/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.