mcpField
I
infisical-agent

infisical-agent

github.com/infisicalSecurity36833 installsUpdated 1w ago
Repository

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

  1. 01Configure authentication and YAML files
  2. 02Render secrets with Go templates
  3. 03Write secrets to files
  4. 04Set polling and caching behavior
  5. 05Run commands when secrets change

Use cases

  1. 01Generate .env files for applications
  2. 02Write configuration files on hosts or in containers
  3. 03Render secrets in Kubernetes init containers
  4. 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-agent

After installing, type/infisical-agentin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
agent-config.md
deployment-examples.md
template-functions.md

Details

From the project README

Infisical 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 controllerinfisical-kubernetes-operator
infisical run wrapping a processinfisical-setup
An SDK call from application codeinfisical-setup
To configure the machine identity the agent authenticates withinfisical-setup
To push secrets to a third-party serviceinfisical-secret-syncs
To configure the dynamic secret the agent leasesinfisical-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:

  1. Auth method — Which authentication method fits their platform
  2. Config file — The YAML config structure with auth, sinks, and templates
  3. Templates — Go template syntax with the correct template functions
  4. 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

FileWhen to read
references/agent-config.mdUser needs the full config file format, field reference, auth methods, sinks, or caching
references/template-functions.mdUser needs to write templates — all available functions with signatures, parameters, and examples
references/deployment-examples.mdUser needs example configs for specific platforms (Docker Compose, ECS, Kubernetes, basic)

Guiding principles

  • Platform-native auth first. On AWS, recommend aws-iam. On Kubernetes, recommend kubernetes. On Azure, recommend azure. Only fall back to universal-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 listSecrets or listSecretsByProjectSlug for .env files. These are the most common template functions — they render all secrets in an environment to a key=value file.
  • Use dynamicSecret for database credentials. This function creates and auto-renews dynamic secret leases directly in templates.
  • SSH dynamic secrets need the 6th principals argument. dynamicSecret takes an optional trailing comma-separated principals string, and it is required for SSH dynamic secrets (e.g. "root,deploy"). SSH leases return PRIVATE_KEY and SIGNED_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: true for 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.command to 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.

Comments

Markdown supported