CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

cowart-image-edit

Generate revised AI images from user-supplied Cowart annotation screenshots and place each result beside its original without replacing, moving, hiding, or deleting existing images or annotations.

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 ./skills/cowart-image-edit/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

88%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 dense, highly actionable workflow with concrete tool names, exact parameters, an explicit resolution order for generated-image files, and validation/verification checkpoints at both the file-resolution and final-canvas stages. Its only notable weaknesses are token-costly repetition of guardrail statements and inline fallback details that could be split into a reference file.

Suggestions

Deduplicate the repeated canvas-scanning prohibition (Preconditions, step 3, step 7, Guardrails) into a single Guardrails entry to reclaim tokens without losing safety emphasis.

Move the fallback-mode specifics (asset URL scheme, per-page snapshot paths, save_cowart_canvas_state usage) into a references/fallback.md so the main workflow stays lean.

State each "never replace/move/hide/delete" rule once in Guardrails and reference it from the workflow steps instead of restating it inline.

DimensionReasoningScore

Conciseness

The body is fully operational — no explanation of concepts Claude already knows, no filler — and every section instructs rather than describes. It is not anchor 5 because several instructions repeat near-verbatim across sections: "do not auto-capture or scan the canvas for edit intent" appears in Preconditions, step 3, step 7, and Guardrails, and the never-replace/never-delete rules are stated three times; deliberate safety emphasis, but trimmable.

4 / 5

Actionability

Fully executable guidance: exact MCP tool names (`insert_cowart_image`, `save_cowart_canvas_state`), a copy-paste-ready JSON call shape with concrete values (placement "right", margin 40, matchAnchor true), precise placement arithmetic ("margin of about 40 canvas units", "keep moving right by anchor width + 40"), a timestamped filename example, an explicit output-resolution priority order, and fallback asset URL formats. Specific and complete for the common cases.

5 / 5

Workflow Clarity

The 8-step sequence is clearly ordered with explicit validation checkpoints and feedback loops: visually confirm the resolved bitmap is the newly generated image before inserting (step 5), verify the final canvas state after saving (step 8), ask the user when the screenshot is unusable or anchors are ambiguous (steps 3 and 6), and keep moving right on overlap (step 6). The operation is explicitly non-destructive by design, and ambiguity handling (contradictory annotations) is addressed.

5 / 5

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are all absent) and the body is well-sectioned (Preconditions, Workflow, Guardrails) with a self-contained single-level structure — no nested references. Not anchor 5 because at ~160 lines some content that would sit better in a separate reference file is inlined, notably the full fallback-mode details (asset URL scheme, snapshot paths) and the complete MCP call shape.

4 / 5

Total

18

/

20

Passed

Description

62%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 specific, action-oriented, and highly distinctive within its niche, written in appropriate third-person imperative voice without fluff. Its main weakness is the complete absence of an explicit 'Use when...' trigger clause and the lack of natural synonyms (including the Chinese term 批注 used throughout the body), which caps completeness and trigger-term quality at 3.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user supplies a Cowart annotation screenshot (批注截图) and wants the annotated image revised or regenerated."

Include natural synonyms and user phrasings such as "edit image", "mark up", "批注", and "revised version" so the skill triggers on how users actually describe the request.

Optionally state the annotation-extraction step ("reads 批注 labels and arrows from each screenshot") to close the minor coverage gap in the 'what' portion.

DimensionReasoningScore

Specificity

Lists several specific concrete actions — "Generate revised AI images from user-supplied Cowart annotation screenshots", "place each result beside its original", "without replacing, moving, hiding, or deleting existing images or annotations" — all stated in operational terms. It stops short of anchor 5 because coverage has minor gaps (e.g., extracting/reading the annotations themselves is a core capability only implied by "from ... screenshots").

4 / 5

Completeness

The "what" is clear and concrete (generate revised images from annotation screenshots and place them beside originals), but there is no "Use when..." clause or any equivalent explicit trigger guidance — the trigger must be inferred from the 'what'. Per the judging guidelines, a missing explicit trigger clause caps completeness at 3; not score 4 because the 'when' is not merely under-specified, it is absent.

3 / 5

Trigger Term Quality

Relevant natural keywords are present ("annotation screenshots", "revised AI images", "images", "annotations") but common variations and synonyms are missing — e.g. "edit", "mark up", "批注" (the term actually used in the workflow), or "before/after" phrasing a user might naturally say. This matches the anchor 'Some relevant keywords but missing common variations or synonyms' rather than anchor 4, whose good keyword coverage is not fully met.

3 / 5

Distinctiveness Conflict Risk

"Cowart annotation screenshots" carves out a clear niche with distinct triggers, and the non-destructive placement framing further distinguishes it from generic image-generation or canvas-editing skills. Conflict risk with other skills is minimal, matching the anchor 'Clear niche with distinct triggers; minimal conflict risk'.

5 / 5

Total

15

/

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

zhongerxin/Cowart

Path

skills/cowart-image-edit/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.