SOPS
v3.13.3 open-sourceThe section your link pointed to isn't on SOPS's page any more, so we've brought you to the top.
Encrypted file editor supporting YAML, JSON, ENV, INI, and BINARY formats with AWS KMSAWS KMSAWS Key Management Service, Amazon's hosted service for creating and controlling cryptographic keys, giving cyber tools a durable, audited place to encrypt data without managing raw key material themselves., GCP KMSKMSA managed service that creates, stores, rotates and controls access to encryption keys, usually backed by HSMs. Applications ask it to encrypt or decrypt rather than holding keys themselves., Azure Key Vault, age, and PGP.
export SOPS_GCP_KMS_ENDPOINT=https://cloudkms.myorg.example.com export SOPS_GCP_KMS_UNIVERSE_DOMAIN=myorg.example.com sops --encrypt --gcp-kms projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key secrets.yaml > secrets.enc.yaml export SOPS_AGE_KEY="AGE-SECRET-KEY-1ABC... AGE-SECRET-KEY-1DEF..." sops --decrypt secrets.enc.yaml vault kv get -field=password secret/db | sops set secrets.yaml '["database"]["password"]' --value-stdin export SOPS_ENABLE_LOCAL_KEYSERVICE=true export SOPS_KEYSERVICE=tcp://localhost:5000 sops --decrypt secrets.yaml SOPS_AGE_KEY_CMD='aws secretsmanager get-secret-value --secret-id my-age-key --query SecretString --output text' sops --decrypt secrets.enc.yaml sops edit secrets/new-service.yaml sops --disable-version-check --version sops --input-type json updatekeys sops.json SOPS_AGE_KEY='age1...' sops encrypt --age <public_key> myfile.yaml ./sops_darwin_arm64 --version sops --age age1ql3z7hjy54pw3hyww5ayyfg7zqg67ek58rpd3ysw56lklxt9hwsqf30v8p --encrypt config.yaml > config.enc.yaml sops exec-env 'path/to/secrets.yaml' 'echo $MY_SECRET_KEY' sops exec-file 'path/to/secrets.yaml' 'myapp --config /tmp/sops-xxxxx.json' SOPS_GPG_KEYSERVER=keyserver.ubuntu.com sops -d secrets.yaml.gpg sops -e --aws-kms-alias 'alias/my-key' --aws-profile prod secrets.json sops audit . sops groups --add 'group_name: pgp/0xABC123, aws_kms/arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012' sops keyservice /tmp/sops-keys.sock
Summary
SOPS is an open-source command-line editor for encrypted files, free to use under the Mozilla Public License, that reads and writes YAML, JSON, ENV, INI and binary formats while encrypting values with AWS KMS, GCP KMS, Azure Key Vault, HuaweiCloud KMS, age or PGP. It is aimed at platform engineers and application developers who need secrets committed alongside config in git without storing them in plaintext, fitting naturally into GitOpsGitOpsA practice where Git repositories serve as the single source of truth for infrastructure and application state, with automated systems continuously reconciling live environments to match what is declared in version control. workflows where encrypted files are decrypted at deploy time. Rather than compare itself to a named alternative, its README frames it as the successor to years of managing PGP-encrypted files by hand. Started at Mozilla in 2015 and now a CNCF Sandbox project, it has 216 contributors, over 250 commits and dozens of releases in the past year, with its latest release 29 days ago.
Encrypted file editor supporting YAML, JSON, ENV, INI, and BINARY formats with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP.
How SOPS helps
Which secrets in this file are still plaintext and need encrypting before I commit?
reads the document's structure and encrypts only the values, leaving keys and structure intact so a diff against the last commit shows exactly what changed
Can more than one teammate decrypt this file without sharing a single private key?
encrypts each value's data key separately against every recipient's KMS or PGP/age key listed for the file, so any one of them can decrypt with their own key
Who is actually able to read this secret if the repo leaks?
lists the recipients configured for a given path, since each file only decrypts for the AWS KMS, GCP KMS, Azure Key Vault, HuaweiCloud KMS, age or PGP identities it was encrypted against
Did someone edit the decrypted values in this file, or just reformat it?
recomputes and checks a MAC over the values at decrypt time, so edits made outside the tool or tampering with content show up as a verification failure
How do I rotate keys after someone leaves the team without re-encrypting every secret by hand?
re-wraps the existing data key for the new set of recipients across a whole file or directory tree in one pass, without touching the encrypted values themselves
Languages
Command line
No command matches.
| option | found in | since | description |
|---|
Values are placeholders taken from each option’s declared default. Nothing is executed here — the output shown is a recording of a run that already happened.
Score card
-
Shipping velocity releases a month, last 12 months
-
Documentation quality release-notes rubric, 0–100
-
Breaking-change discipline how rarely a release breaks users, and notice given
-
Maintenance risk quiet time against its own cadence, maintainers
-
Innovation & surface new capabilities, API and MCP surface
- Community health
-
Contributor trend distinct committers, this year against last
-
Maintainer concentration bus factor now against a year ago
-
Issue backlog trend issues closed per issue opened, 12 months
-
Responsiveness median time to a maintainer’s first reply
Nine scores for SOPS, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Score cards are part of every paid plan.
See plans → Already subscribed? Sign in →Trajectory
Blank means never measured; nothing here is a filled-in zero.
Peer standings are included with Researcher and Business. See how this tool ranks against its competitors, using data we don't publish anywhere else.
See plans →Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
- Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
- Documentation quality — the release-notes rubric published on the analytics page, unchanged.
- Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
- Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
- Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
- Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
- Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
- Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail SOPS puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
Checking release-note history…
Website history
getsops.io, every changeMozilla's home page and 3 more pages as they looked each month from January 2025 to October 2026: 13 renders, 0 changes of tagline or palette. Step through them, play them, or put any two months side by side.
Website history is included with Researcher and Business.
See plans → Already subscribed? Sign in →← → or h l a month · Shift a year · [ ] previous / next change · Space play · 1 2 3 page · T whole page · C compare · F full size
← → or h l the right month · Shift the left · S swap · W wipe · T whole page · Esc back
Rebranding timeline
Dates bound when a change appeared between captures. Possible rebrands are AI suggestions; a redesign alone does not establish a rebrand.
Releases
18 entries
No entries match these filters.
- July 20261
- May 20261
- September 20251
- March 20251
- October 20241
- June 20241
- September 20231
- May 20221
- March 20221
- March 20211
- September 20201
- July 20201
- November 20191
- September 20191
- April 20191
- May 20181
- April 20181
- October 20171
Project health
Issue, contributor and maintainer activity in mozilla/sops, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.
- Contributors 25 −4 vs prior 12 months
- Maintainers 2 +1 joined · −1 left, last 12 months
- Bus factor 1 committers behind half the commits
- Community-filed not measured of issues opened, last 12 months
- Median time to close not measured issues closed, last 12 months
- Open backlog not measured open issues today
- Issues opened / month not measured
- Open backlog not measured
- Contributors / month 0
- Commits / month 0
- Stars 23,137
Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can follow every release here.