swamp-vault

Manage swamp vaults to create, store, retrieve, and reference secrets via CLI.

Updated May 27, 2026
One-click install
npx skills add https://github.com/alvagante/swamp-construction-kit --skill swamp-vault-alvagante
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: swamp-vault
Source: https://github.com/alvagante/swamp-construction-kit/tree/main/.agents/skills/swamp-vault
Command: npx skills add https://github.com/alvagante/swamp-construction-kit --skill swamp-vault-alvagante

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Managing secrets across environments and providers is error-prone and risky. This Skill guides you through creating swamp vaults, storing and reading secrets safely, and referencing them in models and workflows without hardcoding sensitive values. ## Core Features & Use Cases - Vault Lifecycle Management: Create vaults with auto-assigned IDs using built-in types (aws-sm, azure-kv, 1password, local_encryption) or user-defined @collective/name types, then search, edit, and migrate them. - Secret Operations: Store secrets inline, via piped stdin, or through hidden interactive prompts; read values with confirmation guards and list keys without exposing values. - Vault Expressions in Workflows: Reference secrets with ${{ vault.get(vault-name, key) }} expressions that resolve lazily per-step at runtime, supporting rotation and token-refresh patterns. - Use Case: Set up separate dev and production vaults, store API keys via piped input to keep them out of shell history, and reference them in model globalArguments so workflows always fetch fresh credentials. ## Quick Start Ask the assistant to create a local_encryption vault named dev-secrets and store an API key in it using the swamp vault CLI.

Frequently Asked Questions about swamp-vault

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a vault and store a secret with the swamp CLI?▼

Run swamp vault create <type> <name> --json to create a vault with an auto-assigned ID, then store secrets with swamp vault put <vault> KEY=VALUE --json. Never generate vault IDs manually or write vault YAML files from scratch.

What vault types does swamp support for secret storage?▼

Swamp includes built-in types aws-sm (AWS Secrets Manager), azure-kv (Azure Key Vault), 1password, and local_encryption (AES-GCM encrypted files). You can also create user-defined types in extensions/vaults/*.ts using the @collective/name format.

How do I use vault secrets in swamp workflows and models?▼

Reference secrets with ${{ vault.get(vault-name, secret-key) }} expressions in model globalArguments or workflow step attributes. Expressions resolve lazily per-step at runtime, so rotated secrets are picked up automatically without re-creating models.

How do I store a secret without exposing it in shell history?▼

Pipe the value via stdin, for example echo "$API_KEY" | swamp vault put dev-secrets API_KEY --json, or run swamp vault put dev-secrets API_KEY interactively to get a hidden prompt. Avoid inline KEY=VALUE which appears in shell history.

Why does my vault expression fail with a secret not found error?▼

The vault or key may not exist yet. Verify with swamp vault get <name> --json and swamp vault list-keys <vault> --json, then store the missing secret with swamp vault put. Provider authentication failures can also cause evaluation errors.

When should I use swamp-extension instead of swamp-vault?▼

Use swamp-vault for working with existing vault types through the CLI: creating instances, storing and reading secrets, and vault expressions. Use swamp-extension when you need to write a custom vault TypeScript implementation with the vault export contract.