← ClaudeAtlas

skillci-guardrailslisted

Use this skill whenever you create, edit, or review a Claude Skill — any SKILL.md file, or the eval cases/config next to one. Most SKILL.md files today are written or edited by an agent, not typed by hand, so this closes the loop by having the agent that just wrote the skill also author it defensively and verify it, the same way a linter and test suite run after any other code change. Trigger phrases include "write a skill", "create a SKILL.md", "add a new skill", "edit this skill", "update the skill's frontmatter/description/triggers", or any diff that touches a SKILL.md path.
kabirnarang39/skillci · ★ 8 · AI & Automation · score 76
Install: claude install-skill kabirnarang39/skillci
# skillci guardrails A `SKILL.md` is code: its frontmatter is an API, its body is an executable instruction set. It fails silently — a model just quietly does the wrong thing — rather than loudly, which makes both authoring it defensively and verifying it after the fact more important than for ordinary code, not less. ## Step 1 — Author defensively, don't just lint afterward These map directly to skillci's own static checks, so getting them right up front means Step 2 finds nothing instead of catching it after the fact: - **`description`** is the single field that decides whether this skill gets discovered and triggered at all — state what it does *and* when to use it, in language close to how a user would actually phrase the request. Keep it under 1024 characters (skillci flags longer — it eats into every caller's trigger-matching budget). - **Never instruct piping a downloaded script straight into a shell interpreter**, and never reference an unpinned `:latest`/`@latest` dependency — OWASP AST01/AST02, both real risk, not just lint noise. - **Don't request network access to non-localhost hosts** unless the skill's purpose requires it (AST03). - **Never fetch remote content and tell the model to treat it as authoritative instructions** (AST05) — use frontmatter's `pinned_sources` (a declared `sha256`, verifiable on request) instead. - **Keep the body lean**: under ~8000 characters, no exact-duplicate lines, no more than ~10 referenced files or ~100KB