Skip to main content

AegiLabs security audit agent — runs locally, metered via your AegiLabs key.

Project description

aegi — AegiLabs audit CLI

Runs the AegiLabs security-audit agent on your machine. Your code and targets stay local; only the agent's model calls are routed through the AegiLabs metering proxy using your issued key. Point it at a repo or a URL:

aegi ./path/to/repo          # static audit of a code repository
aegi http://localhost:3000   # authorized assessment of a live target

Install

pipx install aegi

Prerequisite: the Claude Code CLI (claude) must be installed — the agent drives it under the hood. aegi fails fast with a clear message if it's missing.

Configure

You need the Aegi key we issued you. Easiest: just run aegi and paste the key when prompted — it's stored in ~/.aegi/config.toml and reused after that. Or set it yourself:

export AEGI_KEY=aegi_live_...            # env var
# or ~/.aegi/config.toml:
#   key = "aegi_live_..."
# or per-run: aegi --key aegi_live_... ./repo

The proxy URL defaults to AegiLabs' — you don't set it. Precedence for both: flag → env → ~/.aegi/config.toml.

What each mode does

Target Mode Tools Notes
a directory repo Read/Grep/Glob/Bash (read-only) secrets, creds, vulnerable deps, injection/authz sinks
a URL url Bash active assessment — prompts for authorization first (skip with --yes)

Detection is automatic: an existing directory → repo; anything starting http(s):// (or a bare host:port / localhost:port) → url.

Output

Streams progress to the terminal, then writes (stem taken from --out, default aegi-report):

  • aegi-report.pdf — the branded, client-ready report, compiled from the vendored AegiLabs Typst template (report_assets/). Requires typst on PATH (winget install Typst.Typst). Without it, an HTML fallback (aegi-report.html) is written instead.
  • aegi-report.data.json — the structured findings (report-data.json schema); the only file you'd edit to tweak wording before sending.
  • aegi-report.transcript.md — the raw agent transcript (audit trail).

Finally prints tokens used against your quota. Reports are Swedish by default (--lang en for English).

Options

aegi <target> [--max-turns N] [--out report.pdf] [--lang sv|en] [--title T] [--key KEY] [--proxy URL] [--yes]

Prerequisites

Run aegi doctor any time to check these and get the exact install command for your OS (it flags what's required vs optional and whether your key is set).

  • Claude Code CLI (claude) — the agent drives it.
  • Typst (typst) — compiles the PDF. Optional; HTML fallback otherwise.
  • Scanners (optional, repo mode) — gitleaks, osv-scanner, semgrep, trufflehog. Any that are on PATH are run and used to ground findings; install the ones you want.
  • Python 3.11+.

Notes / limits (v0)

  • URL scope is prompt-enforced, not sandboxed — the agent is told to touch only the target host. Treat as a soft guard; only run against targets you're authorized to test. Hard scope enforcement is planned.
  • Repo mode runs any installed deterministic scanners (gitleaks, osv-scanner, semgrep, trufflehog) and feeds their real output to the agent as ground truth, then the agent triages and writes the report. With none installed it falls back to a read-only LLM review (CVE claims are then memory-based — install scanners to ground them). Scanners are optional: install the ones you want and they're used automatically.
  • Needs Python 3.11+ (uses stdlib tomllib).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aegi-0.1.4.tar.gz (138.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aegi-0.1.4-py3-none-any.whl (144.2 kB view details)

Uploaded Python 3

File details

Details for the file aegi-0.1.4.tar.gz.

File metadata

  • Download URL: aegi-0.1.4.tar.gz
  • Upload date:
  • Size: 138.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for aegi-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a524689a4209530af48a3d19ced214f53a59de54c3ab6fead5cd6182d0e38246
MD5 919d3fe10cb3fd5a1b5ce02684228449
BLAKE2b-256 3ae60d023a95132f4c6cbb19acdf03278d0997637b88486975eae669ec275f63

See more details on using hashes here.

File details

Details for the file aegi-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: aegi-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 144.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for aegi-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 36968b17e2bc8b6cf658fbdbf46e1112ece8f3dc0e4b6e5fcdf72ff396ddd3df
MD5 d3dd08f22b33a61c5d2232637717f8e7
BLAKE2b-256 13cc129d4ef072d3fecabe2eed4907f50ebfebef325f024d3ca0aadaf2add54a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page