Agent skill
sops-encrypt
Encrypt .env files using SOPS + age. Converts dotenv to YAML format (avoids SOPS bug #1435), then encrypts. Auto-detects unencrypted .env files. Use when user mentions "encrypt env", "sops encrypt", "encrypt secrets", "encrypt .env", "encrypt environment", "re-encrypt", "update encrypted".
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/sops-encrypt
SKILL.md
SOPS Encrypt
Encrypt .env files by converting to YAML and encrypting with SOPS + age.
Why YAML? SOPS dotenv store has a known bug (#1435) that corrupts backslash and \n sequences. The helper script converts dotenv→YAML before encryption.
Workflow
-
Detect current state:
bashpython3 ${CLAUDE_SKILL_DIR}/../sops-setup/scripts/detect_sops.py <project-root> -
Verify prerequisites:
tools.sops.installedmust be true — if not, tell user to run/devtools:sops-setupproject.sops_yaml.existsmust be true — if not, tell user to run/devtools:sops-setupage_key.existsmust be true — if not, tell user to run/devtools:sops-setup
-
Show unencrypted .env files from
project.env_files. If empty, report "No .env files found to encrypt" and exit. -
Use
AskUserQuestion(multiSelect: true) — which files to encrypt. List each.env*file. If a corresponding.enc.yamlfile already exists, note it will be overwritten. -
Encrypt each selected file (convert dotenv→YAML, then encrypt):
bashpython3 ${CLAUDE_SKILL_DIR}/../sops-setup/scripts/dotenv_yaml.py to-yaml <file> > <file>.enc.yaml.tmp sops --encrypt <file>.enc.yaml.tmp > <file>.enc.yaml rm <file>.enc.yaml.tmpExample:
.env.local→.env.local.enc.yaml -
Verify each encrypted file exists and is non-empty.
-
Summary:
| File | Encrypted To | Status | |------|-------------|--------| | .env.local | .env.local.enc.yaml | done | | .env.production | .env.production.enc.yaml | done |Remind user to commit the
.enc.yamlfiles.
Key Rules
- Always verify
.sops.yamlexists before attempting encryption - Always convert dotenv→YAML before encrypting (use the helper script)
- Warn if an
.enc.yamlfile will be overwritten - Never delete the original
.envfile — only create the.enc.yamlcopy - Clean up
.tmpfiles even if encryption fails
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?