alivirgo/major-ai-skills/vault

Claude Code and agent skill by alivirgo/major-ai-skills

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Configure Vault auth methods, least-privilege policies, and dynamic secrets with correct K8s TokenReview wiring; never log secret material or treat root tokens as routine.

Install

npx vskill@latest install alivirgo/major-ai-skills/vault

SKILL.md

HashiCorp Vault Secrets AI Skill Guide (Claude)

Overview & Engine Architecture

Vault centralizes secrets, encryption (Transit), and dynamic credentials (DB, PKI, cloud) behind authentication and ACL policies. Clients authenticate → receive a token with lease TTL → access only allowed paths. HA depends on storage backend and unseal procedures (Shamir or auto-unseal)—agents document patterns but never invent production unseal keys.

┌─────────────────────────────────────────────────────────────┐
│ Vault request path │
│ │
│ Auth (K8s / AppRole / OIDC / cloud) │
│ ↓ token + policies │
│ Secret engines: KV v2, database, PKI, Transit │
│ ↓ leases / versions │
│ Audit devices → immutable log (no secret echo in chat) │
└─────────────────────────────────────────────────────────────┘

When to use / when not to

Use when

  • Designing KV v2 path layouts, policies, AppRole for CI, Kubernetes auth for pods.
  • Issuing dynamic DB credentials vs long-lived passwords in Git.
  • Incident response: revoke leases/tokens after leak.

Do not use when

  • Storing TLS certs for public websites only → @lets-encrypt may suffice; Vault PKI for internal mesh.
  • Replacing full IAM for humans—Vault complements, rarely replaces cloud SSO for operators.

Operational Capabilities & Agent Directives

  1. Never paste root tokens, unseal keys, wrapped tokens, or secret payloads into chat/logs.
  2. KV v2 paths: use secret/data/... for reads/writes; secret/metadata/... for policies; enable versioning; use cas for concurrent writers.
  3. Least privilege policies: narrow path prefixes; separate read vs admin; test with non-admin token.
  4. Dynamic secrets preferred over static KV for databases; always revoke leases on rotation/incident (vault lease revoke -prefix).
  5. Kubernetes auth gotcha: Vault calls TokenReview API—reviewer JWT needs system:auth-delegator; short-lived reviewer tokens expiring breaks all logins.
  6. Vault in-cluster: omit token_reviewer_jwt, use local projected SA token with periodic reload (Vault ≥1.9.3); set disable_local_ca_jwt=true when using client JWT as reviewer per docs.
  7. AppRole: short token_ttl, bind secret_id delivery out-of-band; rotate role IDs on compromise.
  8. Audit devices early; protect audit sink integrity.

Production Example: policy + K8s auth role

Policy api-prod.hcl:

hcl
path "secret/data/api/prod" {
capabilities = ["read"]
}
path "secret/metadata/api/prod" {
capabilities = ["read", "list"]
}
path "database/creds/api-readonly" {
capabilities = ["read"]
}

Enable and configure (sketch):

bash
vault secrets enable -path=secret kv-v2
vault policy write api-prod api-prod.hcl
vault auth enable kubernetes
vault write auth/kubernetes/config \
kubernetes_host="https://kubernetes.default.svc:443" \
disable_local_ca_jwt=true
vault write auth/kubernetes/role/api \
bound_service_account_names=api \
bound_service_account_namespaces=api \
token_policies=api-prod \
token_ttl=20m

ClusterRoleBinding for reviewer SA (when external Vault):

yaml
# vault-auth SA needs system:auth-delegator to call TokenReview

AppRole for CI (short TTL):

bash
vault auth enable approle
vault write auth/approle/role/ci token_policies="api-prod" token_ttl=15m token_max_ttl=1h

Technical Troubleshooting Matrix

SignatureLikely causeFix
403 tokenreviews forbiddenReviewer SA lacks delegatorClusterRoleBinding system:auth-delegator
All K8s logins fail after ~24hExpired reviewer JWTIn-cluster Vault or rotate long-lived reviewer
permission denied on pathPolicy typo / wrong mountvault token capabilities with test token
Leaked approle secret_idCredential theftRotate secret_id; revoke accessors
Sealed vaultRestart/unseal eventOperator unseal ceremony—agents don’t guess keys
DB creds still work after revokeApp cached passwordRevoke lease + restart app

Best Practices

  1. Namespaces (Enterprise) or strict path prefixes for team isolation in OSS.
  2. Break-glass root procedure documented offline; no root in Git.
  3. Prefer Transit for app-level crypto without exporting key material.
  4. Pair with @kubernetes CSI/driver or external-secrets for pod injection.
  5. Run rotation drills; measure time-to-revoke.

Limitations

  • Vault outage is critical path—design HA, backups, and unseal custody.
  • Mis-scoped policies are common; always validate with dedicated test tokens.
  • Agents must stop and ask for seal status, namespace, and auth method before destructive revoke.

Related Skills

  • @kubernetes — service accounts, projected tokens, injectors
  • @terraform — Vault provider resources (if used)
  • @github-actions — AppRole/OIDC for CI secrets
  • @mysql / @postgresql — dynamic DB engines

Agent Operational Directive

MANDATORY: Never output secret values or root/unseal material. Default to dynamic secrets and short TTLs. For Kubernetes auth, verify TokenReview permissions and reviewer JWT lifetime. On leak: revoke token/lease first, then rotate upstream credentials. Test policies with non-admin tokens before declaring least privilege done.

Source anchors (research)

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
1
7-day trend score
3

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/alivirgo/major-ai-skills/vault/badge)](https://verified-skill.com/skills/alivirgo/major-ai-skills/vault)

Something wrong with this skill or its page? Tell us.