CtrlK
BlogDocsLog inGet started
Tessl Logo

oma-hwp

Convert HWP / HWPX / HWPML files to Markdown using kordoc. Extracts text, headings, tables, lists, images, footnotes, and hyperlinks. Use for Korean word processor files (Hangul), government documents, and AI-ready data preparation.

67

Quality

80%

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 ./benchmarks/runs/oma/.agents/skills/oma-hwp/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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.

A well-structured, mostly executable skill body with a clear scene-based workflow, good error-recovery routing, and sensible guardrails. Its two real weaknesses are meta-descriptive padding (SSL-primitive and resource-scope tables) that inflates token cost without aiding execution, and references to bundle files that are not present in the skill's directory, which undermines the progressive-disclosure design.

Suggestions

Delete the meta-descriptive sections that don't aid execution — the 'Actions | SSL primitive' table, 'Resource scope' table, and 'Control-flow features' — and merge 'Intent signature' into 'When to use' to remove duplication and cut token cost.

Ship the referenced bundle files (resources/execution-protocol.md, resources/troubleshooting.md, resources/flatten-tables.ts, config/hwp-config.yaml) or inline the essential details; as written, the skill defers CLI specifics to files that don't exist in the bundle.

Make the VERIFY step concrete: specify an actual check (e.g., grep for heading markers, confirm non-empty output, count extracted tables) instead of 'inspect structure', and show the kordoc flags for page_range and JSON output inline.

DimensionReasoningScore

Conciseness

The actionable parts (Entry, Scenes, Transitions, Failure and recovery, Guardrails, Canonical command path) are efficient, but several sections are meta-padding Claude does not need: the "Actions | SSL primitive" table, the "Resource scope" table (LOCAL_FS/PROCESS/MEMORY), "Control-flow features", and "Intent signature" largely duplicate "When to use"/"Preconditions". This fits "mostly efficient but includes some unnecessary explanation or could be tightened" rather than 2, since no space is spent explaining known concepts (e.g., what HWP is).

3 / 5

Actionability

The canonical command path gives copy-adaptable commands ("bunx kordoc@latest \"{input_path}\" -o \"{output_path}\"", "bun run .../flatten-tables.ts \"{output_path}\"", plus a batch variant), and runtime checks are concrete ("bun --version"). Minor gaps keep it below 5: the kordoc CLI options for page_range/format/JSON output are never shown (deferred to an external protocol file), so the common cases are not fully covered inline.

4 / 5

Workflow Clarity

The PREPARE→ACQUIRE→ACT→VERIFY→FINALIZE scene sequence, explicit Transitions, and a failure/recovery table with feedback loops ("Empty Markdown output → consult resources/troubleshooting.md", "Stale kordoc cache → use bunx kordoc@latest") form a clear sequence with most checkpoints present. Not 5 because VERIFY is underspecified — "inspect structure for headings, tables..." gives no concrete verification command or acceptance check.

4 / 5

Progressive Disclosure

The body is well-sectioned with clearly signaled one-level-deep references ("Execution protocol: resources/execution-protocol.md", "Troubleshooting: resources/troubleshooting.md", "Keep full CLI details in resources/execution-protocol.md"). However, none of the referenced bundle files (resources/execution-protocol.md, resources/troubleshooting.md, resources/flatten-tables.ts, config/hwp-config.yaml) exist in the skill's bundle — the references/ and resources/ directories are absent — so the deferred detail is unreachable and navigation cannot fully deliver, keeping this below 5.

4 / 5

Total

15

/

20

Passed

Description

92%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 strong description: concrete, tool-named capabilities, an explicit "Use for..." trigger clause, and a well-defined niche. The only weakness is trigger phrasing that leans slightly formal (missing colloquial variants like "HWP to Markdown" or "한글 파일") and a mild buzzword in "AI-ready data preparation".

DimensionReasoningScore

Specificity

"Convert HWP / HWPX / HWPML files to Markdown using kordoc. Extracts text, headings, tables, lists, images, footnotes, and hyperlinks." names the tool and lists many concrete extraction actions with comprehensive coverage of the domain's content types. This matches the 5 anchor ("multiple specific concrete actions; comprehensive coverage") rather than 4, since no meaningful capability of the converter is left unmentioned.

5 / 5

Completeness

The "what" is explicit ("Convert... Extracts text, headings, tables, lists, images, footnotes, and hyperlinks") and the "when" is an explicit trigger clause ("Use for Korean word processor files (Hangul), government documents, and AI-ready data preparation"), mirroring the 5 anchor's structure of concrete capabilities plus a "Use when..." clause. Not 4, because the when-clause is explicit rather than merely present.

5 / 5

Trigger Term Quality

Strong keyword coverage: "HWP / HWPX / HWPML", "Korean word processor files (Hangul)", and "government documents" cover extensions and synonyms. It falls short of the 5 anchor because natural phrasings users actually say ("HWP to Markdown", "한글 파일", "Hangul converter") are missing and "AI-ready data preparation" is buzzword-adjacent rather than a natural trigger.

4 / 5

Distinctiveness Conflict Risk

"Korean word processor files (Hangul)" plus the HWP/HWPX/HWPML extensions define a clear niche with distinct triggers and minimal conflict risk against generic document or PDF skills. No broader or generic claims (e.g., "handles documents") that would create overlap.

5 / 5

Total

19

/

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
first-fluke/oh-my-agent
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.