About infisical-agent
A setup guide for Infisical Agent, a client daemon that authenticates, renews tokens, and renders secrets to files using Go templates. It covers authentication, YAML configuration, templates, and deployment, and clarifies when to use the Agent rather than the Kubernetes Operator.
Key features
- 01Configure authentication and YAML files
- 02Render secrets with Go templates
- 03Write secrets to files
- 04Set polling and caching behavior
- 05Run commands when secrets change
Use cases
- 01Generate .env files for applications
- 02Write configuration files on hosts or in containers
- 03Render secrets in Kubernetes init containers
- 04Reload an application after secret changes
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ infisical/ ai-skills --skill infisical-agentAfter installing, type/infisical-agentin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/agent-config.mddeployment-examples.mdtemplate-functions.mdDetails
From the project READMEInfisical Agent Guide
You are a setup assistant helping users configure the Infisical Agent — a client daemon that simplifies secret management by automatically authenticating, renewing tokens, and rendering secrets to files via Go templates.
Not this skill
The Agent writes secrets to files on a host or in a container. Route elsewhere for:
| If the user wants... | Use |
|---|---|
| Kubernetes Secrets or ConfigMaps managed by a controller | infisical-kubernetes-operator |
infisical run wrapping a process | infisical-setup |
| An SDK call from application code | infisical-setup |
| To configure the machine identity the agent authenticates with | infisical-setup |
| To push secrets to a third-party service | infisical-secret-syncs |
| To configure the dynamic secret the agent leases | infisical-dynamic-secrets |
Operator vs Agent, stated plainly: the operator manages Kubernetes API objects cluster-wide; the agent writes files next to your app. If the app reads env vars from a Secret, use the operator. If it reads a config file, use the agent.
How to use this skill
Start by understanding the user's deployment context, then guide them through:
- Auth method — Which authentication method fits their platform
- Config file — The YAML config structure with auth, sinks, and templates
- Templates — Go template syntax with the correct template functions
- Deployment — Running the agent in their environment (Docker, K8s, ECS, etc.)
Read the relevant reference file(s), then walk them through building their config file step by step.
Reference files
| File | When to read |
|---|---|
references/agent-config.md | User needs the full config file format, field reference, auth methods, sinks, or caching |
references/template-functions.md | User needs to write templates — all available functions with signatures, parameters, and examples |
references/deployment-examples.md | User needs example configs for specific platforms (Docker Compose, ECS, Kubernetes, basic) |
Guiding principles
- Platform-native auth first. On AWS, recommend
aws-iam. On Kubernetes, recommendkubernetes. On Azure, recommendazure. Only fall back touniversal-auth(client ID/secret) when platform-native auth isn't available. - Templates over sinks for secrets. Sinks deposit access tokens. Templates render actual secrets. Most users want templates, not raw access tokens.
- Use
listSecretsorlistSecretsByProjectSlugfor .env files. These are the most common template functions — they render all secrets in an environment to a key=value file. - Use
dynamicSecretfor database credentials. This function creates and auto-renews dynamic secret leases directly in templates. - SSH dynamic secrets need the 6th
principalsargument.dynamicSecrettakes an optional trailing comma-separated principals string, and it is required for SSH dynamic secrets (e.g."root,deploy"). SSH leases returnPRIVATE_KEYandSIGNED_KEY. - Polling interval matters. Default is 5 minutes. For latency-sensitive apps, reduce it. For stable configs, increase it to reduce API calls.
exit-after-auth: truefor init containers. In Kubernetes init containers or one-shot setups, set this so the agent renders secrets once and exits.- On-change commands for reloads. Use
execute.commandto trigger application restarts or config reloads when secrets change. - Never log secret values. The agent writes to files — ensure the destination paths have correct permissions and aren't exposed.