CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

convex-create-component

Builds reusable Convex components with isolated tables and app-facing APIs. Use for new components, reusable backend modules, integrations, or component boundary work.

Quality

87%

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

The canonical home for this skill is convex-create-component in openclaw/clawhub

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.

An exemplary code-skill body: a fully executable worked skeleton, boundary rules stated with rationale, an ordered validation sequence with failure handling, and clean one-level-deep reference splitting. The only notable flaw is the duplicated app-wrapper code between the Component Skeleton and the Patterns section.

DimensionReasoningScore

Conciseness

The body is dense and task-specific with no explanation of concepts Claude already knows, and every rule carries a because-clause instead of padding. It is not 5 because the "Client-facing API" pattern repeats the sendNotification wrapper code already shown in the Component Skeleton, and the Patterns section partly restates the Critical Rules.

4 / 5

Actionability

The Component Skeleton provides complete, copy-paste-ready code across five files (component config, schema, functions, app config, app wrapper), plus exact commands like "npx convex codegen --component-dir convex/components/<name>" and "npx convex dev". Concrete bad/good code pairs cover the common boundary pitfalls, fully covering the default local case.

5 / 5

Workflow Clarity

The ten-step workflow is clearly sequenced with a validation ordering (component-dir codegen, then codegen, then dev) and explicit error recovery ("If validation blocks on Convex login or deployment setup, stop and ask the user for that exact step instead of guessing"), plus a fix-issues-before-finishing feedback loop and a closing checklist. This matches the anchor for clear sequence with explicit validation and feedback loops.

5 / 5

Progressive Disclosure

The SKILL.md is a genuine overview: the default local flow and its skeleton live inline, while shape-specific detail is split into four real one-level-deep reference files (local-components.md, packaged-components.md, hybrid-components.md, advanced-patterns.md), all of which exist in the bundle. References are well signaled via the shape decision table, "Read exactly one reference file", the Reference Files section, and the Advanced Patterns pointer, with no nested references.

5 / 5

Total

19

/

20

Passed

Description

75%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, third-person description that explicitly covers both what the skill does and when to use it, with domain-specific language that anchors it to Convex component authoring. The main room for improvement is broadening natural trigger synonyms and replacing the abstract "component boundary work" phrasing with concrete user-facing triggers.

Suggestions

Add natural trigger synonyms for the packaged shape, e.g. "publish", "npm package", or "share across apps", so users phrasing the need that way still trigger the skill.

Make the 'Use for' clause more concrete, e.g. "Use when the user asks to create a Convex component, extract backend logic for reuse across apps, or build an integration that owns its own tables".

DimensionReasoningScore

Specificity

"Builds reusable Convex components with isolated tables and app-facing APIs" names the domain plus concrete capabilities (isolated tables, app-facing APIs), with minor gaps such as app wiring and validation. It is above anchor 3 because the named capabilities are specific rather than generic, but below anchor 5 because it lists one verb with two facets rather than multiple distinct concrete actions.

4 / 5

Completeness

It explicitly answers both what ("Builds reusable Convex components with isolated tables and app-facing APIs") and when ("Use for new components, reusable backend modules, integrations, or component boundary work"). It is not 5 because the when-triggers lean abstract ("component boundary work") rather than concrete user phrasings, and not 3 because the when-clause is explicit, not merely implied.

4 / 5

Trigger Term Quality

"new components, reusable backend modules, integrations" are terms a user would naturally say, giving good keyword coverage. It falls short of anchor 5 because natural variations like "publish", "npm package", or "share across apps" are missing, but exceeds anchor 3 since coverage is more than just "some relevant keywords".

4 / 5

Distinctiveness Conflict Risk

"Convex components" carves out a clear niche with minimal conflict risk against unrelated skills. It is not 5 because the broad triggers "integrations" and "reusable backend modules" could fire for non-Convex or plain-library work where a component is not warranted.

4 / 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

FacundoLucci/autonomous-buyer

Path

.claude/skills/convex-create-component/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.