CtrlK
BlogDocsLog inGet started
Tessl Logo

create-module

Use when: scaffolding a new backend entity type, domain module, GraphQL schema, resolvers, or STIX converter in opencti-graphql

59

Quality

68%

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 ./.github/skills/create-module/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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 procedure is an admirably lean, well-sequenced scaffolding checklist with concrete file and symbol names, but it lacks executable code examples and any build/validation feedback loop between scaffolding and the final schema regeneration.

Suggestions

Add a validation checkpoint after Step 8d (e.g., 'Run `yarn build` and confirm the module loads with no type errors; fix before proceeding') to give the workflow an explicit verify->fix->retry loop.

Include a minimal copy-paste template for at least one representative file (e.g., the `<name>.ts` ModuleDefinition or the domain CRUD functions) so the 'implement X' steps become executable rather than directive.

Consider pulling the repeated per-file conventions into a referenced template file under references/ so the body stays a lean overview.

DimensionReasoningScore

Conciseness

The body is lean and directive — each step is a single line naming the file to create and what to put in it, with no padding or explanation of concepts Claude already knows. Every token earns its place.

5 / 5

Actionability

It gives concrete file names, function names (convert<Name>ToStix, findAll, add<Name>), and imports (listEntities, createEntity, registerGraphqlSchema, yarn build:schema), but provides no executable code examples or copy-paste templates — the guidance stays at the level of 'implement these functions' rather than showing how.

3 / 5

Workflow Clarity

Steps are clearly numbered and sequenced, but this is a code-generation/multi-file scaffolding task with no validation checkpoint between scaffolding and the final `yarn build:schema` — there is no 'verify the module loads / build passes' feedback loop, capping clarity at 3 for a multi-step creation workflow.

3 / 5

Progressive Disclosure

No bundle files exist (references/scripts/assets absent), and the content is a single well-organized SKILL.md under ~50 lines with clear section headers; per the simple-skill guidance this is appropriately structured, though it has no pointers to deeper material for the many reusable patterns implied.

4 / 5

Total

15

/

20

Passed

Description

67%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 concise, scoped to a specific repo, and uses an explicit 'Use when' trigger with several concrete scaffolding targets. Its main weakness is trigger-term naturalness — it relies on internal jargon rather than the words a user would naturally say.

Suggestions

Add a verb-first capability clause before the 'Use when' (e.g., 'Scaffolds a new backend entity module in opencti-graphql') so the 'what' is stated as an action, not only a trigger.

Include natural user-facing synonyms in the trigger (e.g., 'adding a new entity', 'creating an OpenCTI module') alongside the technical terms.

DimensionReasoningScore

Specificity

Names the domain (opencti-graphql) plus several concrete scaffolding targets — 'backend entity type, domain module, GraphQL schema, resolvers, or STIX converter' — giving multiple specific actions with only minor coverage gaps.

4 / 5

Completeness

Explicitly provides 'when' via the 'Use when:' clause, and the 'what' is conveyed through the enumerated scaffolding actions; the 'what' is somewhat implicit (no verb-first statement of capability) which keeps it just below a 5.

4 / 5

Trigger Term Quality

It leads with 'Use when' but the keywords are internal jargon ('scaffolding', 'domain module', 'STIX converter', 'resolvers') rather than the natural phrases a user would actually say; common synonyms a user might utter (e.g., 'add a new entity', 'create an OpenCTI module') are missing.

3 / 5

Distinctiveness Conflict Risk

Scoping to 'opencti-graphql' and the specific backend-module artifacts makes it mostly distinct from other skills, with only minor overlap risk against a generic code-scaffolding skill.

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

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
OpenCTI-Platform/opencti
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.