secrets-management

secrets-management is a skill for Claude Code, Codex from catpilotai/catpilot-ai-guardrails. It costs 103 tokens per session (4,363 once invoked), scanned C, original, MIT.

A guide for storing, limiting, distributing, rotating, and exposing secrets such as API keys and passwords to running software.

In plain words
What is it for?
Use it when configuring credentials, separating environment access, handling secrets in CI, or deciding how running code should receive them.
Why use it?
It helps prevent secrets from leaking through committed .env files, CI logs, URLs, error messages, or reuse across development, testing, and production.

Skill for Claude CodeCodex

Which agent this was written for is unclear — built for openclaw. Also seen: mentions Codex; built for openclaw.

Good fit Use it when configuring credentials, separating environment access, handling secrets in CI, or deciding how running code should receive them.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/catpilotai/catpilot-ai-guardrails/secrets-management
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add catpilotai/catpilot-ai-guardrails --skill secrets-management
Clone the repo
git clone --depth 1 https://github.com/catpilotai/catpilot-ai-guardrails

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for secrets-management

README.md
[![agentmods](https://agentmods.dev/badge/skills/catpilotai/catpilot-ai-guardrails/secrets-management/github.svg)](https://agentmods.dev/skills/catpilotai/catpilot-ai-guardrails/secrets-management)
Your own site
<a href="https://agentmods.dev/skills/catpilotai/catpilot-ai-guardrails/secrets-management"><img src="https://agentmods.dev/badge/skills/catpilotai/catpilot-ai-guardrails/secrets-management/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for secrets-management

Your own site · 80×15
<a href="https://agentmods.dev/skills/catpilotai/catpilot-ai-guardrails/secrets-management"><img src="https://agentmods.dev/badge/skills/catpilotai/catpilot-ai-guardrails/secrets-management.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 103 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,363 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 2 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00103 $0.04363
Opus 5 $0.00051 $0.02181
Sonnet 5 $0.00021 $0.00873
Haiku 4.5 $0.00010 $0.00436

Measured 11d ago against content hash f1d4fe6ef67d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade C, and why

secrets-management scanned grade C with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Harvests environment variableshighData exfiltration

Enumerating or grepping the environment for keys collects credentials unrelated to what the mod says it does.

return dict(os.environ)

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

fetch(url, opts).then(res => {
src/skills/core/secrets-management/SKILL.md · 501 lines

How it starts

The opening of the file, as written. The whole thing — 501 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Why

Secrets fail in predictable ways. secret-blocking catches the hardcoded patterns themselves — sk-live-..., AKIA..., private-key blocks — and prevents them from being written into source files. But secrets that are correctly handled at the point of generation still fail in five other places:

  1. .env files committed by accident. A developer adds .env to the repo for "just one quick test" and the secret is in git history forever, even after a follow-up commit removes it.
  2. CI logs echo the secret. A workflow step does echo $API_KEY for "debugging," or a tool the workflow runs decides to print the environment, and the secret lands in a log that the CI provider retains for 30+ days and that anyone with read access to the repo can view.
  3. Secrets travel in URLs. A database connection string with the password embedded ends up in error messages, in SELECT pg_stat_* output, in HTTP request logs from a reverse proxy, in browser history, in the agent's own tool-call transcripts.
  4. One secret for every environment. The same STRIPE_API_KEY value is configured in dev, staging, and prod because there is no separation. A developer-laptop compromise becomes a production compromise.
  5. No rotation, no inventory. When a secret leaks, nobody knows where it is used, what it grants access to, or how to revoke it. The leak persists because rotation requires hand-tracing every service that has the value pinned.

This skill governs the lifecycle around the secret value once it exists: stored in a secret manager, scoped per environment, distributed via tooling that redacts, never logged, rotated on a schedule, and revoked on exposure.

When to apply

Apply this skill before the agent recommends, writes, or commits any of the following:

  • .env, .env.*, .envrc, secrets.yml, secrets.json, or similar developer-environment secret files.
  • .gitignore, repository setup scripts, or PR/CI configuration that determines what gets committed.
  • CI workflow files (GitHub Actions, GitLab CI, CircleCI, Azure Pipelines, Buildkite, Jenkinsfile, Drone) — particularly any step that uses echo, printenv, env, set, or shell tracing (set -x).
  • Container manifests, Helm charts, Kubernetes Secret/ConfigMap, Terraform/Pulumi/Bicep that defines runtime configuration.
  • Application code that connects to a database, calls an external API, or reads configuration from the environment.
  • Error-handling code paths that format exception messages, log request/response payloads, or post to external observability systems.
  • Incident-response steps after a secret has been exposed.

Read the full file on GitHub · 501 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 501 lines · 103 tokens per session scan C f1d4fe6ef67d

Subscribe to this mod's changes

secrets-management is a skill published in the GitHub repository catpilotai/catpilot-ai-guardrails (2 stars, last pushed 2mo ago), licensed MIT. It adds 103 tokens to every session and 4,363 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it C with 2 findings (harvests environment variables, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

insight-error-page

Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…

vercel/next.js · 83 tokens

next-cache-components-optimizer

Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…

vercel/next.js · 170 tokens

next-partial-prefetching-adoption

Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…

vercel/next.js · 103 tokens