CtrlK
BlogDocsLog inGet started
Tessl Logo

sn-ppt-entry

Entry point for PPT generation. Asks the user to choose a mode (fast, standard, or creative), then collects role / audience / scene / page_count as needed. For standard mode, also asks how images should be sourced (AI generation, web search, or none), whether charts should use AI-generated infographics or ECharts, and whether the final deliverable should be PPTX or PDF. Parses uploaded pdf/docx/md/txt files, produces task_pack.json + info_pack.json in a new deck_dir, then dispatches to sn-ppt-creative or sn-ppt-standard. Fast mode skips optional questions and gets straight to building. Use when the user asks to make a PPT / presentation / 演示 / PPT. If the user asks to open, preview, inspect, or edit previously generated HTML slides in the WebUI/workbench without regenerating, dispatch to sn-ppt-workbench instead of this generation entry.

73

Quality

92%

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

SKILL.md
Quality
Evals
Security

Quality

Content

85%

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 well-sequenced, highly actionable entry-point skill with real bundle files backing its references and explicit validation/degradation checkpoints throughout. Its only weakness is moderate verbosity in a few explanatory passages that could be tightened.

Suggestions

Compress the caption_images.py section: keep the one mandatory command, the 'set PPT_STANDARD_DIR' warning, and the skip-if-no-images note; move the pool A/B and single-source-of-truth detail into a short reference or a comment in the script.

Tighten the repeated absolute-path guidance in step 7 and Hard rule 3 into one statement; the current duplication adds tokens without adding clarity.

Trim the explanatory prose around the WebUI launch fallbacks in step 10 to the essential decision branches.

DimensionReasoningScore

Conciseness

The body is accurate and largely procedural, but it is long and occasionally over-explains (e.g. the multi-paragraph caption_images.py exposition and repeated absolute-path rhetoric) where a tighter statement would suffice; a few tokens could be trimmed without losing clarity.

2 / 3

Actionability

Provides copy-paste-ready bash commands (progress_event.py, launch_workbench.py, caption_images.py), an executable inline python3 block for the document digest, concrete schema JSON, and explicit deck_dir path rules — instructions Claude can execute directly.

3 / 3

Workflow Clarity

A numbered 12-step Flow with explicit validation checkpoints (ask_user must wait for replies, ls/pwd before writing, doc-parse failure → degrade not abort, WebUI skipped/failed → continue), a dedicated Failure handling section, and a mandatory progress-echo checklist — clear sequence with feedback loops for the risky batch/path operations.

3 / 3

Progressive Disclosure

Body is an overview that pulls detail out into real one-level-deep references — references/ask_user_templates.md and references/conventions.md both exist and are clearly signaled, and scripts/ holds the three cited .py helpers — keeping the main file navigable.

3 / 3

Total

11

/

12

Passed

Description

100%

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, third-person, and answers both 'what' and 'when' with explicit triggers and a conflict-avoiding carve-out. It is dense but every clause carries load; it does not pad with concepts Claude already knows.

DimensionReasoningScore

Specificity

Lists multiple concrete actions: 'Asks the user to choose a mode', 'collects role / audience / scene / page_count', 'Parses uploaded pdf/docx/md/txt files', 'produces task_pack.json + info_pack.json', 'dispatches to sn-ppt-creative or sn-ppt-standard' — each a specific verb tied to a concrete artifact.

3 / 3

Completeness

Clearly states what it does (entry point, mode selection, param collection, doc parsing, task/info pack production, dispatch) AND when to use it via the explicit 'Use when the user asks to make a PPT...' clause, plus the negative-trigger guidance to dispatch to sn-ppt-workbench instead.

3 / 3

Trigger Term Quality

Covers natural user phrasings in two languages — 'make a PPT / presentation / 演示 / PPT' — plus the explicit triggers in frontmatter ('生成 PPT', '做一套 PPT', '做一份演示'), matching what users would actually say.

3 / 3

Distinctiveness Conflict Risk

Has a clear niche (entry-point / dispatcher) and explicitly distinguishes it from sibling skills via the workbench-dispatch carve-out, so it is unlikely to trigger for the wrong skill.

3 / 3

Total

12

/

12

Passed

Validation

81%

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

Validation13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

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

Warning

Total

13

/

16

Passed

Repository
OpenSenseNova/SenseNova-Skills
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.