CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/ceedling-build-runner

Author and run the Ceedling build system for C unit testing - the canonical build orchestration on top of Unity (assertions) + CMock (mocks) + CException (exceptions). Covers ceedling new scaffolding, the project.yml schema (:project / :paths / :files / :defines / :flags / :tools / :test_runner / :cmock / :unity / :cexception / :gcov / :plugins), the task surface (test:all, test:{name}, test:pattern, test:path, release, clean / clobber, gcov:all, module:create, environment, dumpconfig), JUnit XML via the report_tests_* plugins, gcov integration, host vs cross-build flow, and CI wiring. CMock semantics - the generated Expect / Ignore / IgnoreArg / ReturnThruPtr / AddCallback / Stub / ExpectAndThrow family, cmock.yml :plugins, mock naming, tearDown verification, strict-vs-ignore matching - are in references/cmock.md. Use when a C project wants the ThrowTheSwitch trio bundled by one build command, or when authoring / reading CMock mocks. For the Unity assertion API see unity-test-framework-c.

74

Quality

93%

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

Overview
Quality
Evals
Security
Files

Quality

Content

86%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.

A well-structured, highly actionable skill body that offloads detail to real one-level references and provides copy-paste commands and CI wiring. Validation checkpoints exist but are distributed rather than presented as an explicit retry loop, and some prose sections could be tighter.

Suggestions

Add a short explicit test→fail→fix→re-run feedback loop (e.g., a numbered 'Debugging a failing test' sequence under Running/Parsing results) to lift workflow_clarity to 5.

Tighten the Limitations section into bullet-only form and trim explanatory asides like 'The generator emits the canonical skeleton...' to lift conciseness toward 5.

DimensionReasoningScore

Conciseness

Mostly lean and operational (commands, yml snippets, a dense anti-pattern table) assuming Claude's competence, but the Limitations prose and a few explanatory asides could be trimmed; not every token earns its place.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance throughout: 'gem install ceedling', 'ceedling new my-firmware --docs --local', 'ceedling module:create[ringbuffer]', 'ceedling clobber test:all release gcov:all', a real project.yml snippet, and a concrete GitHub Actions yaml with pinned action versions.

5 / 5

Workflow Clarity

Clear sequence with most checkpoints present (clobber → test:all → release → gcov:all chain, exit-code CI gating, file:line:test:reason failure parsing, dumpconfig as a config verifier), but no single explicit validate→fix→retry feedback loop is written out.

4 / 5

Progressive Disclosure

Clear overview spine with well-signaled one-level-deep references (references/cmock.md, references/project-yml-schema.md, references/task-reference.md — all real files), keeping only minimal inline examples and offloading the full schema/task surface; easy navigation.

5 / 5

Total

18

/

20

Passed

Description

100%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 strong, highly specific description that names concrete capabilities, surfaces natural trigger terms, gives an explicit 'Use when' clause, and cleanly scopes its niche against sibling skills. Third-person voice is maintained throughout with no over-claiming.

DimensionReasoningScore

Specificity

Lists many concrete actions with comprehensive coverage — 'Author and run the Ceedling build system', scaffolding, the full project.yml schema section list (:project/:paths/:files/:defines/:flags/:tools/:test_runner/:cmock/:unity/:cexception/:gcov/:plugins), the complete task surface (test:all, test:{name}, test:pattern, test:path, release, clean/clobber, gcov:all, module:create, environment, dumpconfig), JUnit XML, gcov, host vs cross-build, and CI wiring.

5 / 5

Completeness

Explicitly answers both what ('Author and run the Ceedling build system for C unit testing...') and when ('Use when a C project wants the ThrowTheSwitch trio bundled by one build command, or when authoring / reading CMock mocks') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Comprehensive natural-term coverage with synonyms users actually say: 'Ceedling', 'C unit testing', 'Unity', 'CMock', 'CException', 'ThrowTheSwitch trio', 'C project', 'CMock mocks', 'project.yml', 'gcov'.

5 / 5

Distinctiveness Conflict Risk

Clear niche (Ceedling / ThrowTheSwitch C unit-testing stack) with explicit sibling boundaries ('For the Unity assertion API see unity-test-framework-c'); minimal conflict risk with the named adjacent skills.

5 / 5

Total

20

/

20

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Reviewed

Table of Contents