macOS
brew install agelocal Homebrew formula metadata
sudo port install ageMacPorts ports tree · security/age/Portfile · source: api.github.com
brew
Simple, modern, secure file encryption. Version 1.3.1 via Homebrew; verified from local package data.
install
brew install agelocal Homebrew formula metadata
sudo port install ageMacPorts ports tree · security/age/Portfile · source: api.github.com
sudo apk add ageAlpine Linux edge package indexes · age · source: dl-cdn.alpinelinux.org
sudo apt install ageDebian stable package indexes · age · source: deb.debian.org
sudo dnf install ageFedora Rawhide package metadata · age · source: dl.fedoraproject.org
nix profile install nixpkgs#agenixpkgs package indexes · pkgs/by-name/ag/age/package.nix · source: api.github.com
sudo pacman -S ageArch Linux sync databases · age · source: geo.mirror.pkgbuild.com
sudo zypper install ageopenSUSE Tumbleweed package metadata · age · source: download.opensuse.org
scoop install extras/ageScoop official bucket manifest trees · bucket/age.json · source: api.github.com
winget install --id FiloSottile.age -eWindows Package Manager source index · FiloSottile.age · source: cdn.winget.microsoft.com
overview
Simple, modern, secure file encryption
history
age is a modern file-encryption tool, file format, and Go library designed around small explicit keys, Unix-style composability, and a deliberately small option surface.
age was designed by Ben Cartwright-Cox and Filippo Valsorda and the public repository was created in May 2019. The README describes it as a simple, modern, secure file encryption tool, format, and Go library with small explicit keys, post-quantum support, no config options, and Unix-style composability.
The first beta releases appeared in December 2019, including a beta named from the floor of 36C3. Release candidates followed in 2021, and age v1.0.0 was published in September 2021. The 1.1.0 release in December 2022 added plugin and YubiKey support, helping turn age from a single CLI into a format with a hardware and plugin ecosystem.
The project continued with v1.2.x in 2024 and v1.3.x in December 2025. The v1.3.0 release was explicitly described upstream as a post-quantum release, matching the README's current positioning of age as a format and tool with post-quantum support.
age became widely packaged for a security CLI. The upstream README lists installation commands for Homebrew, MacPorts, winget, Alpine, Arch, Debian, Fedora, Gentoo, Guix, Nix, openSUSE, Ubuntu, Void, FreeBSD, OpenBSD, Chocolatey, and Scoop, and it asks new packagers for help. The supplied package metadata also records major Linux and Windows package-manager names.
The ecosystem around age includes plugins, alternate implementations, browser/TypeScript work, Passage, and an awesome-age list. That adoption pattern is important: age is not just a command named by package managers, but a small format other tools embed.
The canonical CLI flow is `age-keygen -o key.txt`, encryption with `age -r RECIPIENT`, and decryption with `age --decrypt -i key.txt`. The README documents recipient files, identity files, passphrase encryption, SSH public keys as recipients, and stdin/stdout friendly operation for shell pipelines.
age has intentionally no global config file documented by upstream. Instead, users pass identity and recipient files explicitly, which is part of its packaging appeal: the installed binary is portable, scriptable, and easy to compose with tar, password managers, backups, and deployment tooling.
age is the package-manager-friendly successor-shaped tool many users wanted for file encryption: one small CLI, readable key files, no daemon, no keyring requirement, and simple static-ish binary distribution. Its packaging matrix and plugin convention make it a useful case study in how a security format gets from a GitHub repo to distro repositories and operator scripts.
For package nerds, the interesting bit is that age's minimalism is a distribution feature. The same project is a Go module, a command-line binary, a file format specification, and an ecosystem anchor for Rust, TypeScript, YubiKey, Secure Enclave, and password-manager integrations.
security posture
broad file, network, media, or database tool signal.
blue risk · medium confidence · tool
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
age | cli | global executable | |
age-inspect | cli | global executable | |
age-keygen | cli | global executable | |
age-plugin-batchpass | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/FiloSottile/age
install metadata
| Package key | brew:age |
|---|---|
| Version | 1.3.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/age |
| Homepage | https://github.com/FiloSottile/age |
| Repository | https://github.com/FiloSottile/age |
| Upstream docs | https://age-encryption.org/v1 |
| License | BSD-3-Clause |
| Source archive | https://github.com/FiloSottile/age/archive/refs/tags/v1.3.1.tar.gz |
| Build dependencies | go |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | age |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
age 1.2.1-1+b5
simple, modern and secure encryption tool
https://github.com/FiloSottile/age
sudo apt install agegolang-filippo-age-dev 1.2.1-1
simple, modern and secure encryption tool (Go library)
https://github.com/FiloSottile/age
sudo apt install golang-filippo-age-devage
nix profile install nixpkgs#ageage 1.1.1-1build1
simple, modern and secure encryption tool
https://github.com/FiloSottile/age
sudo apt install agegolang-filippo-age-dev 1.1.1-1build1
simple, modern and secure encryption tool (Go library)
https://github.com/FiloSottile/age
sudo apt install golang-filippo-age-devage 1.3.1-r5
Simple, modern and secure encryption tool
https://github.com/FiloSottile/age
sudo apk add ageage-doc 1.3.1-r5
Simple, modern and secure encryption tool (documentation)
https://github.com/FiloSottile/age
sudo apk add age-docage 1.3.1-4.fc44
Simple, modern and secure encryption tool
https://github.com/FiloSottile/age
sudo dnf install ageage 1.3.1-1
A simple, modern and secure file encryption tool
https://github.com/FiloSottile/age
sudo pacman -S ageage 1.3.0-1.4
A file encryption tool
https://github.com/FiloSottile/age
sudo zypper install ageage
sudo port install ageextras/age
scoop install extras/ageFiloSottile.age
winget install --id FiloSottile.age -esource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.