Writing a Safe SKILL.md: An Author's Checklist

Guide · skillsmith.ch

Most of our material looks at skills from the defender's side. This one is for authors: how to write a skill that is genuinely safe, scans clean, and stays clean — so users (and their agents) can trust it.

Frontmatter: say what you do

Instructions: authority, not commands to the agent's operator

Dependencies: minimize and pin

Remote content: make yourself rug-pull-proof

What the scanner treats as red flags (2026 engine)

Heads-up for authors: URLs that start with api., data. or telemetry. subdomains add a small score penalty (+4), because exfiltration endpoints often hide there. Calling a legitimate API like api.github.com is fine — expect one informational finding, not a bad verdict. Combined findings can push a skill to "medium"; check the finding list to see exactly which line triggered it.

Recent engine updates catch obfuscation that used to slip past keyword scans — avoid all of these, even unintentionally:

Before you ship

  1. Run the local linter: pip install skillsmith-scanner && skillsmith lint .
  2. Scan it on skillsmith.ch and read every finding — false positives tell you where a reviewer might also stumble.
  3. Publish with {"publish": true} so the clean verdict and the exact text become verifiable in the public database.
  4. Add your badge to the README and keep a watch on the hosted file.

Safe skills win in the long run: they pass audits, get published to the Safe Skills Database, and survive the scrutiny that increasingly comes with agent ecosystems.