engineering/skills/env-secrets-manager/SKILL.md
Manage environment-variable hygiene and secrets safety across local development and production. Practical auditing, drift awareness, rotation readiness. Use when auditing .env files for committed secrets, planning a credential rotation, debugging missing-env-var production incidents, or hardening a new project against secrets leakage.
npx skillsauth add alirezarezvani/claude-skills env-secrets-managerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Tier: POWERFUL Category: Engineering Domain: Security / DevOps / Configuration Management
Manage environment-variable hygiene and secrets safety across local development and production workflows. This skill focuses on practical auditing, drift awareness, and rotation readiness.
.env and .env.example lifecycle guidance# Scan a repository for likely secret leaks
python3 scripts/env_auditor.py /path/to/repo
# JSON output for CI pipelines
python3 scripts/env_auditor.py /path/to/repo --json
scripts/env_auditor.py on the repository root.critical and high findings first..env.example and .gitignore as needed.references/validation-detection-rotation.mdreferences/secret-patterns.md.env.exampleProduction applications should never read secrets from .env files or environment variables baked into container images. Use a dedicated secret store instead.
| Provider | Best For | Key Feature | |----------|----------|-------------| | HashiCorp Vault | Multi-cloud / hybrid | Dynamic secrets, policy engine, pluggable backends | | AWS Secrets Manager | AWS-native workloads | Native Lambda/ECS/EKS integration, automatic RDS rotation | | Azure Key Vault | Azure-native workloads | Managed HSM, Azure AD RBAC, certificate management | | GCP Secret Manager | GCP-native workloads | IAM-based access, automatic replication, versioning |
Secret objects without hardcoding.Cross-reference: See
engineering/secrets-vault-managerfor production vault infrastructure patterns, HA deployment, and disaster recovery procedures.
Stale secrets are a liability. Rotation ensures that even if a credential leaks, its useful lifetime is bounded.
scripts/env_auditor.py to flag secrets with no recorded rotation date.When a secret is confirmed leaked:
Secrets in CI/CD pipelines require careful handling to avoid exposure in logs, artifacts, or pull request contexts.
${{ secrets.SECRET_NAME }}.aws-actions/configure-aws-credentials with role-to-assume) over long-lived access keys.echo or toJSON() on secret values.masked and protected flags enabled.secrets:vault) for dynamic secret injection without storing values in GitLab.production, staging) to enforce least privilege.Catching secrets before they reach version control is the most cost-effective defense. Two leading tools cover this space.
# .gitleaks.toml — minimal configuration
[extend]
useDefault = true
[[rules]]
id = "custom-internal-token"
description = "Internal service token pattern"
regex = '''INTERNAL_TOKEN_[A-Za-z0-9]{32}'''
secretGroup = 0
brew install gitleaks or download from GitHub releases.gitleaks git --pre-commit --stagedgitleaks detect --source . --report-path gitleaks-report.json.gitleaksignore (one fingerprint per line).# Generate baseline
detect-secrets scan --all-files > .secrets.baseline
# Pre-commit hook (via pre-commit framework)
# .pre-commit-config.yaml
repos:
- repo: https://github.com/Yelp/detect-secrets
rev: v1.5.0
hooks:
- id: detect-secrets
args: ['--baseline', '.secrets.baseline']
detect-secrets audit .secrets.baseline interactively marks true/false positives..gitleaksignore or .secrets.baseline in version control so the whole team shares exclusions.Knowing who accessed which secret and when is critical for incident investigation and compliance.
| Provider | Service | What It Captures |
|----------|---------|-----------------|
| AWS | CloudTrail | Every GetSecretValue, DescribeSecret, RotateSecret API call |
| Azure | Activity Log + Diagnostic Logs | Key Vault access events, including caller identity and IP |
| GCP | Cloud Audit Logs | Data access logs for Secret Manager with principal and timestamp |
| Vault | Audit Backend | Full request/response logging (file, syslog, or socket backend) |
This skill covers env hygiene and secret detection. For deeper coverage of related domains, see:
| Skill | Path | Relationship |
|-------|------|-------------|
| Secrets Vault Manager | engineering/secrets-vault-manager | Production vault infrastructure, HA deployment, DR |
| Senior SecOps | engineering/senior-secops | Security operations perspective, incident response |
| CI/CD Pipeline Builder | engineering/ci-cd-pipeline-builder | Pipeline architecture, secret injection patterns |
| Infrastructure as Code | engineering/infrastructure-as-code | Terraform/Pulumi secret backend configuration |
| Container Orchestration | engineering/container-orchestration | Kubernetes secret mounting, sealed secrets |
development
Use when someone wants to run a weekly review, close open loops, audit stalled projects and commitments, get their system back to trusted, restart a lapsed review habit, or says "/cs:weekly-review". Walks David Allen's three-phase loop — GET CLEAR, GET CURRENT, GET CREATIVE — with deterministic scripts that inventory open loops, gate the checklist with named gaps, and score commitment health 0-100.
development
Use when someone wants to decide whether a meeting is worth calling, price a meeting in dollars, build a timeboxed agenda with desired outcomes, or turn messy meeting notes into owned action items — or says "should this be a meeting", "/cs:meeting-prep", or "/cs:meeting-actions". Runs a cost gate (ASYNC / NOT-READY / MEET), builds a decision-first agenda, and extracts an owner + due-date checklist that flags every orphan.
development
Convert a rambling description of a desired outcome into one polished, autonomous /goal prompt ready to paste into a fresh session. Use when the user says "/fable-goal", "turn this into a goal prompt", "write me a fable prompt", "write the prompt that builds X", or rambles about something they want made and asks for the prompt that makes it happen. The output is a single copy-paste prompt, never the build itself. Do NOT use when the user wants the thing built right now in this session — only when they want the PROMPT that will make it happen in a fresh session.
development
Use when someone wants to plan a deep work day, time-block their calendar or task list, budget or cut shallow work, protect focus hours, track deep-work sessions and streaks, run an end-of-day shutdown ritual, or says "/deep-work" or "/time-block". Classifies tasks deep vs shallow, builds an energy-first time-blocked schedule that refuses deep demand past the 4-hour ceiling, batches shallow work into at most two windows, and logs focus sessions against a weekly target.