CtrlK
BlogDocsLog inGet started
Tessl Logo

skill-creator-linter

Internal tool (not user-invocable). Called by meta-skill-creator as a DAG step (kind: agent) to lint a candidate meta-skill SKILL.md against G1 (parse + reference check + xml_escape grep + structural lint) and G2 (scheduler dry-run with stub executors). Deterministic, sub-second, no LLM. Returns JSON diagnostics.

54

Quality

62%

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 ./src/opensquilla/skills/bundled/skill-creator-linter/SKILL.md
SKILL.md
Quality
Evals
Security

Skill Creator Linter

Validates a candidate meta-skill SKILL.md before it gets registered.

G1 rules

RuleCheck
G1.1parse_meta_plan does not raise
G1.2Every step.skill for kind=agent/skill_exec exists in the main catalog
G1.3Template variables resolve at render time (covered by G1.1)
G1.4on_failure parser rules (covered by G1.1)
G1.5step kind: consistency (covered by G1.1)
G1.6Grep: every `{{ inputs.user_message

G2 dry-run

Replace step executors with stubs yielding _StepDone(text="<stub:id>"). Run scheduler; pass if no exception and topology terminates.

Usage

uv run python {baseDir}/scripts/lint.py --skill-md path/to/SKILL.md --gates G1,G2
uv run python {baseDir}/scripts/lint.py --skill-md-stdin --gates G1,G2 < SKILL.md

Output

JSON to stdout: {"G1": {"passed": bool, "diagnostics": [...]}, "G2": {...}}.

Fallback

Manually inspect SKILL.md and run parse_meta_plan in a Python REPL.

Repository
opensquilla/opensquilla
Last updated
First committed

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.