Skip to main content

audit

audit checks your whole AI coding agent setup in one pass and reports what is risky.

vulkro-live audit
vulkro-live audit --write-baseline .vulkro/audit-baseline.json
vulkro-live audit --diff .vulkro/audit-baseline.json
$ vulkro-live audit

Agent surface audit: scanned 5 config and instruction file(s).

MCP servers (1):
GREEN filesystem OK latest 2026.1.14, 404643 weekly downloads
via .mcp.json: npx -y @modelcontextprotocol/server-filesystem .

Config secrets (plaintext values that look like secrets):
HIGH filesystem/API_TOKEN = sk_...4c (token-prefix) (.mcp.json)

1 server(s), 0 flagged; 0 instruction finding(s); 0 network hook(s); 1 config secret(s); 0 dangerous setting(s).

It reads the config of Claude Code, Claude Desktop, Cursor, Windsurf and Cline, in the project and your home directory, and:

  • checks every MCP server's package, like inspect
  • scans every rules, skill and instruction file for prompt injection and hidden characters, like warden
  • flags hooks that call the network
  • flags config values (server env, headers, args) that look like plaintext secrets
  • flags dangerous settings: auto-approve, permission bypass, hooks that download and run code

It never starts a server or runs a hook, and never reads your source code.

Baselines​

--write-baseline saves a snapshot you can commit. --diff then reports only what changed since: a new server, a setting switched to auto-approve, a new hook or secret. In CI this stays quiet until your setup actually changes.

Flags​

FlagEffect
--write-baseline <file>Save a snapshot of the current setup
--diff <file>Report only changes since that snapshot
--min-age-days <n>Newer than this is SUSPICIOUS (default 30)
--min-downloads <n>Fewer downloads than this is SUSPICIOUS (default 100)
--no-cacheSkip the local cache
--format <FORMAT>text (default), json or sarif

Exit codes: 0 nothing flagged, 1 anything flagged, 2 error.

For the scripts inside skills, run skillscan; for stored memory, memcheck.