⌘K
Adversaries
Portable executable reviewers that analyze software artifacts and emit structured findings.
An adversary is closer to a focused Docker image or GitHub Action than a full application: small, versioned, and runnable in different environments. It declares what it needs (capabilities and optional isolation), not a large dependency stack.
Where they live
- Free public catalog — official packages signed by Adversary Labs, identified by domain/name (not a free vs paid catalog). Browse at /adversaries; install with
adversary pull. - Local projects — directories you pass as
.or a path; trusted for host execution by path selection. - External registries — private or third-party OCI packages. Not official-signed unless you control signing keys; host execution is untrusted by default.
references
# Official free catalog (domain/name)
go/security
go/cli
ci/github-actions
security/secrets
web/react
infra/terraform
# Local project
./my-adversary
# External / private OCI
ghcr.io/acme/private-review:1.0.0Lifecycle
- Author with the TypeScript SDK (
adversary init). - Validate and pack (
adversary validate,adversary pack). - Push to a registry (
adversary push). Official catalog packages are additionally signed in release CI. - Consumers pull and run (
adversary pull,adversary run).
Execution trust and signatures: trust model, official signatures.