macOS
brew install peripherylocal Homebrew formula metadata
brew / rank 960
Identify unused code in Swift projects. Version 3.8.0 via Homebrew; verified 2026-09-16. Also installable with nix: nix profile install nixpkgs#periphery.
install
brew install peripherylocal Homebrew formula metadata
nix profile install nixpkgs#peripherynixpkgs package indexes · pkgs/by-name/pe/periphery/package.nix · source: api.github.com
overview
Identify unused code in Swift projects
history
Periphery is an archived open-source command-line analyzer that identifies unused declarations in Swift projects by combining build index data with source analysis.
Periphery was developed as an open-source Swift static-analysis tool centered on Xcode and Swift Package Manager projects. Its changelog identifies version 1.3.0 in February 2019 as the first open-source release.
The scanner evolved from syntax-oriented analysis toward index-store-based whole-project analysis, adding configuration persistence, CI reuse of existing builds, Bazel support, and handling for newer Swift and Xcode constructs.
The last documented release before archival was in the 3.8 series in July 2026. The official GitHub repository was archived the following month.
Periphery was adopted in iOS, macOS, and Swift package maintenance as a focused way to detect declarations that compile but are no longer reachable. Its support for Xcode, Swift Package Manager, Bazel, local command-line use, and continuous integration made it practical across several Swift build workflows.
Official Homebrew support was added in 2019. In December 2024 the project moved from its custom Homebrew tap into Homebrew's main formula collection. The upstream repository was archived and made read-only on 12 August 2026.
Run `periphery scan --setup` for guided initial configuration, then persist established options in `.periphery.yml` at the project root and use `periphery scan` for repeatable analysis.
Periphery builds projects to generate an index store, or CI can reuse a previous build with `--skip-build` and `--index-store-path`. All relevant targets must be built to reduce false positives; standalone frameworks may require `--retain-public`.
Periphery fills a narrow gap between compiler diagnostics and general linting: it builds or consumes an index store, constructs a declaration-reference graph, and searches that graph for unused code across project targets.
Its archived status is operationally important to package users. Existing releases remain useful, but adopters should account for the absence of ongoing upstream maintenance when new Swift, Xcode, or project-file formats appear.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
.periphery.ymlexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
periphery | 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/peripheryapp/periphery
install metadata
| Package key | brew:periphery |
|---|---|
| Version | 3.8.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/periphery |
| Homepage | https://github.com/peripheryapp/periphery |
| Repository | https://github.com/peripheryapp/periphery |
| License | MIT |
| Source archive | https://github.com/peripheryapp/periphery/archive/refs/tags/3.8.0.tar.gz |
| Last updated | 2026-09-16T13:21:41Z |
| Pulse | updated |
| Uses from macOS | curl, libxml2, swift |
| Bottle | available (on arm64_golden_gate, arm64_linux, arm64_sequoia, arm64_tahoe, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | periphery |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Requirements |
|
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | yes |
| 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.
periphery
nix profile install nixpkgs#peripherysource 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.