CtrlK
BlogDocsLog inGet started
Tessl Logo

add-lua-binding-api

Add Cataclysm-BN Lua API bindings for global game functions, utility libraries, constants, callbacks, and domain-specific Lua namespaces.

54

Quality

61%

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 ./.agents/skills/add-lua-binding-api/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 highly actionable with executable, comprehensive code examples, but it is padded by near-duplicate per-domain scaffolding, lacks an explicit build/validation checkpoint in the workflow, and inlines reference material that could live in bundle files.

Suggestions

Collapse the five repetitive reg_*_api examples into one canonical example plus a concise table of per-domain library names, moving the rest into a references/ file.

Insert an explicit validation step in the workflow, e.g. 'Build the project and confirm the new binding loads without errors before proceeding.'

Extract the advanced patterns (variadic, tables, callbacks, logging) into a separate reference file referenced one level deep from the body.

DimensionReasoningScore

Conciseness

The ~430-line body repeats the same begin_lib/set_fx/finalize_lib scaffolding across five per-domain examples and overlaps 'Logging API Pattern', 'Common API Patterns', and 'Best Practices' with earlier code, adding token bulk without proportional new information.

3 / 5

Actionability

Provides copy-paste-ready C++ using real luna:: APIs and real types (sol::state, tripoint, itype_id), with complete registration functions and Lua usage examples covering functions, constants, tables, variadic args, callbacks, and error handling.

5 / 5

Workflow Clarity

A clear 3-step sequence exists (extend registration -> per-domain examples -> register in main binding), but there is no explicit build/validation checkpoint confirming the binding compiles and loads, and 'Testing Your API' is loose console snippets rather than a workflow checkpoint.

3 / 5

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ absent), and most reference-style per-domain examples and advanced patterns are inlined in SKILL.md rather than split into separate files, despite decent section headers and a closing References list.

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 clearly conveys what the skill does and targets a distinct, narrow niche, but it omits any explicit 'Use when...' trigger guidance and leans on technical jargon over natural user phrasing.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user asks to expose a C++ game function, constant, or callback to Lua, or to add a new Lua API namespace.'

Include natural user phrases such as 'expose to Lua' or 'register a Lua binding' alongside the technical terms to improve trigger-term coverage.

Optionally name the relevant source files (e.g. catalua_bindings_*.cpp) so the description surfaces concrete entry points.

DimensionReasoningScore

Specificity

Lists several concrete binding targets — 'global game functions, utility libraries, constants, callbacks, and domain-specific Lua namespaces' — naming the domain and multiple specific actions, though all are variations of 'add bindings' rather than distinct operations.

4 / 5

Completeness

Has a clear, specific 'what' but no 'Use when...' clause or equivalent explicit trigger guidance, which per the rubric caps completeness at 3.

3 / 5

Trigger Term Quality

Relevant technical terms ('Lua API bindings', 'callbacks', 'Lua namespaces') are present but lean toward jargon; natural user phrases like 'expose a function to Lua' or 'register a Lua API' and any file extensions are missing.

3 / 5

Distinctiveness Conflict Risk

'Cataclysm-BN Lua API bindings' is a narrow, game-specific niche unlikely to trigger for the wrong skill, though the absence of explicit trigger phrases keeps it from being fully minimal-conflict.

4 / 5

Total

14

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

relative_links

Relative link issues: 14 missing, 7 suspicious

Warning

Total

14

/

16

Passed

Repository
cataclysmbn/Cataclysm-BN
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.