sops-encryption — скилл для Claude Code: шифрование секретов
Скилл учит агента шифровать конфиги и секреты Kubernetes через Mozilla SOPS с ключами AWS KMS, GCP KMS или PGP. Пригодится, когда секреты лежат в Git.
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a claude-codeЧто делает sops-encryption
Скилл описывает работу с Mozilla SOPS: шифрование значений в конфигурационных файлах так, что структура остаётся читаемой. Агент получает готовые команды — зашифровать файл, расшифровать, отредактировать уже зашифрованный, зашифровать на месте.
Внутри есть шаблон .sops.yaml с правилами по маске пути: отдельный ключ для прод-файлов, отдельный для dev, PGP как запасной вариант. Отдельный раздел — секреты Kubernetes: манифест Secret с полем sops и зашифрованными значениями вида ENC[AES256_GCM,...], плюс установка плагина ksops для ArgoCD, чтобы тот расшифровывал их сам.
Заранее нужны установленный SOPS и доступ к KMS (AWS, GCP или Azure) либо PGP-ключ. Без этого скилл бесполезен: команды шифрования просто не отработают. Ещё в нём есть совет хранить .sops.yaml в репозитории и не коммитить незашифрованные секреты — это повод проверить, не утекает ли что-то в историю Git прямо сейчас.
Какие задачи решает
- зашифровать секреты в конфиге, не теряя читаемую структуру файла
- положить секреты Kubernetes в Git как код
- настроить разные ключи шифрования для prod и dev
- подключить расшифровку секретов в ArgoCD через ksops
- отредактировать уже зашифрованный файл, не расшифровывая его целиком на диск
Примеры запросов агенту
- зашифруй secrets.yaml через SOPS с ключом AWS KMS
- настрой .sops.yaml так, чтобы для .prod.yaml использовался отдельный KMS-ключ
- зашифруй секрет Kubernetes и объясни, как его подхватит ArgoCD
Как установить sops-encryption
1Через Skills CLI (Vercel)
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a claude-code2Вручную: положить файлы
~/.claude/skills/sops-encryption/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/sops-encryption/
1Через Skills CLI (Vercel)
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a codex2Вручную: положить файлы
.agents/skills/sops-encryption/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a cursor2Вручную: положить файлы
.cursor/skills/sops-encryption/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install BagelHole/DevOps-Security-Agent-Skills sops-encryption2Вручную: положить файлы
.github/skills/sops-encryption/SKILL.md1Через Skills CLI (Vercel)
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a gemini-cli2Командой платформы
gemini skills install https://github.com/BagelHole/DevOps-Security-Agent-Skills --path security/secrets/sops-encryptionВручную: положить файлы
.devin/skills/sops-encryption/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о sops-encryption
Как установить sops-encryption в Claude?
Выполните npx skills add BagelHole/DevOps-Security-Agent-Skills --skill sops-encryption -a claude-code. После этого скилл окажется в ~/.claude/skills/sops-encryption/SKILL.md.
Что делает sops-encryption?
Даёт агенту инструкции по шифрованию конфигов и секретов через Mozilla SOPS с ключами AWS KMS, GCP KMS или PGP, включая шаблон .sops.yaml и манифест Secret для Kubernetes.
Что нужно, чтобы скилл заработал?
Установленный SOPS и доступ к KMS (AWS, GCP или Azure) либо PGP-ключ. Без ключа управления команды шифрования не выполнятся.
Исходный текст
SKILL.md · MIT
---
name: sops-encryption
description: Encrypt files and configs with Mozilla SOPS. Integrate with AWS KMS, GCP KMS, or PGP for key management. Use when encrypting configuration files, Kubernetes secrets, or implementing GitOps with encrypted secrets.
license: MIT
metadata:
author: devops-skills
version: "1.0"
---
# SOPS Encryption
Encrypt secrets in configuration files while keeping structure visible.
## When to Use This Skill
Use this skill when:
- Encrypting secrets in Git
- Implementing GitOps with secrets
- Managing Kubernetes secrets as code
- Encrypting configuration files
## Prerequisites
- SOPS installed
- KMS access (AWS, GCP, Azure) or PGP key
## Installation
```bash
# macOS
brew install sops
# Linux
wget https://github.com/getsops/sops/releases/download/v3.8.0/sops-v3.8.0.linux.amd64
chmod +x sops-v3.8.0.linux.amd64
mv sops-v3.8.0.linux.amd64 /usr/local/bin/sops
```
## Basic Usage
```bash
# Encrypt with AWS KMS
sops --encrypt --kms arn:aws:kms:region:account:key/key-id secrets.yaml > secrets.enc.yaml
# Decrypt
sops --decrypt secrets.enc.yaml
# Edit encrypted file
sops secrets.enc.yaml
# Encrypt in place
sops --encrypt --in-place secrets.yaml
```
## Configuration
```yaml
# .sops.yaml
creation_rules:
- path_regex: .*\.prod\.yaml$
kms: arn:aws:kms:us-east-1:account:key/prod-key
- path_regex: .*\.dev\.yaml$
kms: arn:aws:kms:us-east-1:account:key/dev-key
- path_regex: .*
pgp: fingerprint
```
## Kubernetes Integration
```yaml
# encrypted secret
apiVersion: v1
kind: Secret
metadata:
name: myapp-secrets
type: Opaque
stringData:
password: ENC[AES256_GCM,data:encrypted...]
sops:
kms:
- arn: arn:aws:kms:region:account:key/key-id
```
```bash
# With ArgoCD
# Install ksops plugin for ArgoCD to decrypt secrets
```
## Best Practices
- Store .sops.yaml in repository
- Use different keys per environment
- Rotate encryption keys regularly
- Never commit unencrypted secrets
- Use key aliases for readability
## Related Skills
- [hashicorp-vault](../hashicorp-vault/) - Centralized secrets
- [argocd-gitops](../../../devops/orchestration/argocd-gitops/) - GitOps integration
© devops-skills · MIT · BagelHole/DevOps-Security-Agent-Skills