agentsclimarketplace

Agent config security audit

Skill yeaight7/agent-powerups/skills/agent-config-security-audit

Use when modifying agent config files, committing configuration changes, onboarding a repository with existing agent configs, or running a periodic config hygiene check.From its SKILL.md

Install
npx -y skills add yeaight7/agent-powerups --skill agent-config-security-audit

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.6 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Agent Config Security Audit

Systematic security review of agent configuration files. Run before committing config changes or onboarding a new repository.

When to Use

  • After modifying any agent config file (.claude/settings.json, .claude/mcp.json, AGENTS.md, hooks)
  • Before committing configuration changes to version control
  • When onboarding a project with existing agent configs
  • Periodic hygiene check (monthly or after a major dependency update)

Scope

Audit every config file present:

FileAgent
.claude/settings.jsonClaude Code
.claude/mcp.json (or project-root mcp.json)Claude Code
.codex/config.tomlCodex
docs/AGENTS.md (project root)Generic/Codex
docs/CLAUDE.md (project root)Claude Code
hooks/Any
plugins/*/plugin.jsonAgent Powerups
.apx/relay/*.jsonapx relay

Audit Checklist

Secrets and Credentials

  • No API keys, tokens, or passwords hardcoded in any config file
  • All secrets referenced as $ENV_VAR or process.env.* — never literal values
  • .env and .env.local files are in .gitignore
  • MCP server env fields contain variable references, not values

P0 (block immediately): Hardcoded secret in any committed file.

Permissions and Allow Lists

  • allowedTools is scoped — no Bash(*) wildcard granting unrestricted shell access
  • deniedTools list is present and non-empty for risky operations
  • MCP server tool scopes match the stated purpose of the server
  • No --no-verify, --force, or safety-bypass flags in hook commands

P0: Bash(*) or equivalent wildcard in allow list. P1: No deniedTools list when Bash is in scope.

Hooks

  • Hook commands use fixed strings — no ${file}, ${input}, or other user-interpolated variables
  • No outbound network calls (curl, wget) in hooks without explicit user knowledge
  • Errors in safety hooks are not silently suppressed (2>/dev/null, || true)
  • PreToolUse hooks for high-risk tools (file delete, shell exec) are present

P0: Command injection via interpolation in any hook. P1: Silent error suppression on a security or quality hook.

MCP Servers

  • Each server is from a known, trusted source
  • No npx -y without a pinned version or digest
  • Each server has a description field
  • Servers not in active use are removed or disabled

P1: Unpinned npx -y auto-install in MCP server config.

AGENTS.md / CLAUDE.md

  • No auto-run instructions that would execute arbitrary commands on session start
  • No instructions that unconditionally override safety behavior
  • Prohibitive instructions present (explicit list of what the agent must NOT do)
  • No prompt injection patterns (user-controlled values inlined into instructions)

P1: Auto-run instruction with shell exec; unconditional safety override.

Plugin Manifests

  • Each plugin's manifest (plugins/NAME/.codex-plugin/plugin.json) declares tool access scoped to its purpose
  • No plugin grants broader access than it needs
  • Plugin version pinned, not latest

Relay Config (if present)

  • Relay session files (.apx/relay/) are in .gitignore
  • No secrets in relay artifact files

Classification

SeverityDefinitionResponse
P0Can directly compromise security or leak secretsFix before any commit; do not push
P1Increases attack surface or weakens safety controlsFix before merging; document exception if deferred
NoteBest practice not followed, no direct riskFix in follow-up; log as tech debt

Report Format

Agent Config Security Audit — <project>/<date>

P0 findings:
  [P0] <file>:<line> — <description>
       Fix: <what to change>

P1 findings:
  [P1] <file>:<line> — <description>
       Fix: <what to change>

Notes:
  [Note] <file> — <description>

Summary: <N> P0, <N> P1, <N> Notes

If no findings: state "No findings." explicitly.

Verification

  • Every config file present in the repo was checked against its checklist section — none skipped
  • Each finding is classified P0/P1/Note with file, location, and a concrete fix
  • The summary line is present, or "No findings." is stated explicitly
  • No commit or push was recommended while a P0 finding remains unfixed

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most project setup skills give in ~1.1k tokens

Counted across 1,553 of the 3,091 authors here whose files we hold, read 2026-09-06

  • Write the configuration filein 36 of 1553
  • Create the directory structurein 35 of 1553, across 33 files
  • Verify the setupin 31 of 1553, across 28 files
  • Run the setup scriptin 30 of 1553, across 29 files
  • Pre-determine the required sample sizein 29 of 1553, across 12 files
  • Check if the configuration already existsin 29 of 1553
  • Document every testin 26 of 1553, across 10 files
  • Start with a hypothesisin 26 of 1553, across 11 files
  • Ask one question at a timein 22 of 1553
  • Test a single variable per testin 21 of 1553, across 9 files
  • Read product marketing context before asking questionsin 19 of 1553, across 8 files
  • Do not peek and stop earlyin 18 of 1553, across 7 files

Said here and by no other author read

  • Audit every config file present
  • Scope allowed tools without wildcards
  • Ensure denied tools list is non-empty
  • Use fixed strings in hook commands
  • Pin MCP server versions or digests
  • Classify findings as P0, P1, or Note

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.