CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

cowart-image-gen

Generate and place a final AI bitmap on the Cowart canvas, replacing a selected AI 图片 holder or inserting the image into the current page.

Quality

69%

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

Quality

Content

63%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 content is an unusually specific, well-sequenced operational guide: it names exact tools, flags, and paths, and includes real validation checkpoints around a destructive replacement step. Its weaknesses are duplication across steps, one hand-wavy file-resolution branch without an executable command, and everything being packed into a single long file instead of split into referenced materials.

Suggestions

Provide a concrete, copy-paste command for the Codex JSONL fallback (e.g., a jq or Python one-liner that finds the latest image_generation_call.result and decodes the base64 payload to a timestamped PNG).

Deduplicate repeated rules: state 'no holder required — always generate' and 'delete the replaced holder by default' once each instead of across steps 2/5/6 and Notes.

Split reference material (meta-flag specs, legacy geo-holder handling, output file resolution order) into a references/ file linked one level deep from the workflow, keeping SKILL.md as a lean overview.

DimensionReasoningScore

Conciseness

The body is dense with genuinely non-obvious operational detail (MCP tool names, meta flags, resolution order), but several points are repeated: 'do not refuse when no holder is selected' appears in both step 2 and the Notes, holder deletion by default appears in step 5 and again in step 6, and the size-contract props are restated across steps 3 and 5. It is mostly efficient but could be tightened by deduplicating these.

3 / 5

Actionability

Guidance is highly concrete: exact tool names ('get_cowart_selection', 'insert_cowart_image', 'save_cowart_canvas_state'), exact meta flags, JSON shape specs, an example generation prompt, and asset path patterns. The gap is the output-resolution step — 'inspect the current Codex session JSONL ... extract the PNG/base64 payload' gives no concrete command or jq/Python snippet to execute, leaving that branch at the instruction level.

4 / 5

Workflow Clarity

The 8-step sequence is clearly ordered with well-signaled branching (holder replacement vs standalone) and includes real checkpoints: visual inspection of the resolved bitmap before insertion, and post-save confirmation of shape id, dimensions, aspect ratio, asset path, and replaced holder. A 4 rather than 5 because there is no explicit error-recovery loop (e.g., what to do when the located file is stale or insertion fails) — the resolution order implies one but never states a retry path.

4 / 5

Progressive Disclosure

The body has clear sections (Preconditions, Workflow, Notes) but is a single ~139-line monolith with no bundle files at all. Content that naturally belongs in one-level-deep references — the meta-flag specifications, the legacy geo-holder support, the file-resolution order, and the Codex JSONL extraction details — is inlined, which sits at 'some structure but could be better organized'.

3 / 5

Total

14

/

20

Passed

Description

58%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 communicates a concrete, well-scoped capability set for the Cowart canvas, but it reads as a capability statement rather than a trigger description. It lacks any explicit 'Use when...' guidance, which limits how reliably a user or Claude would select this skill at the right moment. Adding trigger phrasing and a few natural synonyms would lift it substantially.

Suggestions

Append an explicit trigger clause, e.g. 'Use when the user wants an AI-generated image placed on a Cowart canvas, or asks to fill/replace an AI 图片 holder.'

Include natural user phrasings and synonyms such as 'generate an image', 'AI-generated image', 'picture', and 'put/place on the canvas' so the description matches how users actually ask.

Move the Cowart qualifier earlier (e.g. lead with 'For the Cowart canvas, ...') to further reduce overlap with generic image-generation skills.

DimensionReasoningScore

Specificity

The description names concrete actions — 'Generate and place a final AI bitmap', 'replacing a selected AI 图片 holder', 'inserting the image into the current page' — which cover several specific capabilities of the Cowart workflow. Minor gaps remain (e.g., sizing to the holder, asset handling), so it sits at 'several specific actions with minor gaps' rather than comprehensive.

4 / 5

Completeness

The 'what' is clear (generate and place an AI bitmap, replace a holder or insert into the current page), but the 'when' is entirely absent — there is no 'Use when...' clause or equivalent trigger guidance, which caps this dimension at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

Relevant terms like 'AI bitmap', 'Cowart canvas', 'image', 'holder', and 'replace' are present, but common user phrasings and synonyms ('generate an image', 'picture', 'artwork', 'AI-generated image', 'put on the canvas') are missing. The 'AI 图片' label is domain jargon that only existing Cowart users would say, so coverage is partial.

3 / 5

Distinctiveness Conflict Risk

The Cowart-specific framing ('Cowart canvas', 'AI 图片 holder') creates a clear niche that mostly avoids conflict with generic image-generation skills. Minor overlap risk remains for generic 'generate an image' requests, since the leading action 'Generate ... AI bitmap' could plausibly match a plain imagegen skill before the Cowart qualifier is reached.

4 / 5

Total

14

/

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-gen/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.