---
summary: New security-pass skill (8-axis MCP server audit) and devcheck Skills Sync step verifying skills/ propagated to local agent mirrors
breaking: false
---

# 0.6.14 — 2026-04-23

Adds a structured pre-release security review path and closes the silent-drift gap between `skills/` and local agent mirrors. No code-runtime changes.

## Added

- **`skills/security-pass/`** (v1.0). New audit skill that walks an MCP server through eight axes shaped around what the server builder actually controls — tool output as LLM injection vector, scope granularity, destructive ops without `ctx.elicit`, upstream auth shape, input sinks (URL/path/shell/proto-pollution), tenant isolation (module-scope state in services), leakage back (errors/outputs/logs), and resource bounds. Produces grouped findings (critical → high → medium → low) and a numbered, cherry-pickable options list. Cross-referenced from `polish-docs-meta`, `release-and-publish`, `setup`, `templates/AGENTS.md`/`CLAUDE.md` "What's Next?" sequence (now slot 8), and the root agent protocol skill table.
- **`Skills Sync` devcheck step** (`scripts/check-skills-sync.ts`, 150 lines). Compares canonical `skills/` against `.agents/skills/` and `.claude/skills/` mirrors and reports missing or content-drifted files. Skipped automatically when `skills/` or both mirrors are absent (non-mirrored projects). Drift is demoted to a warning in devcheck so it surfaces without blocking. Per-skill or per-file ignores live in `devcheck.config.json` `skillsSync.ignore`. Script is shipped via `package.json` `files` and copied into new servers by the init CLI.

## Changed

- **`templates/AGENTS.md`** / **`templates/CLAUDE.md`** — "What's Next?" sequence reordered to insert `security-pass` between `devcheck` and `polish-docs-meta` (steps renumbered 8 → 10). Skill table updated.
- **`README.md`** — `security-pass` added to the included-skills lifecycle blurb between `testing` and `release-and-publish`.

## Removed

- **`scripts/make-executable.ts`** (123 lines). Unreferenced — not in `package.json` `files`, not in `SCAFFOLD_SCRIPTS`, not invoked by any build script. The framework's CLI binary uses Node's shebang directly; chmod handling at install time is npm's job.
