Skip to main content

Security gateway for Claude Code traffic

Project description

cc-guard

Security gateway for Claude Code traffic.

Not to be confused with agent-guard — that's a runtime security engine for AI agents. This is a config installer.

What it does

Point Claude Code at any local anthropic-compatible proxy (flowlens sidecar, litellm, mitmproxy, anthropic-proxy, …) by modifying ~/.claude/settings.json, and back it out cleanly when you're done. Optionally, spawn and supervise the proxy subprocess for you.

# A. Bring your own proxy — cc-guard just patches settings.json
flow run -c ~/.flowlens/sidecar.yaml &
cc-guard install http://127.0.0.1:9999
# ...
cc-guard uninstall

# B. Let cc-guard generate the sidecar config AND spawn the process
cc-guard install http://127.0.0.1:9999 --sidecar
# or against a remote flowlens hub for centralized audit:
cc-guard install http://127.0.0.1:9999 \
  --hub https://hub.example.com --hub-token $TOKEN

Your ANTHROPIC_API_KEY / ANTHROPIC_AUTH_TOKEN are passed through untouched in both modes — cc-guard never reads, stores, or rewrites credentials.

Why not just edit ~/.claude/settings.json by hand

Several things need to happen together for the redirect to actually stick:

  • Back up the original ANTHROPIC_BASE_URL so uninstall can restore it (otherwise you lose whatever was there before).
  • Clean conflicting export ANTHROPIC_BASE_URL=... lines in your shell rc file, since shell env vars override settings.json.
  • Atomic writes so a Ctrl-C mid-edit doesn't corrupt your settings.
  • Idempotent install/uninstall so running it twice doesn't double-backup or crash.

cc-guard does all of this, and provides doctor and status commands for checking things after the fact.

Design principles

  1. Proxy-agnostic — any anthropic-compatible local proxy works; nothing is hard-coded to one implementation.
  2. Never touches credentialsANTHROPIC_AUTH_TOKEN and ANTHROPIC_API_KEY pass through unchanged. The proxy forwards them to the real upstream.
  3. Clean uninstall — every change is backed up before it's made, and the optional managed sidecar is SIGTERM'd cleanly on uninstall.
  4. Idempotent — repeat install/uninstall safely.
  5. Plain installer by default — sidecar spawning is strictly opt-in via --sidecar / --hub / --sidecar-config. No background processes unless you asked.

Install

The PyPI package is cc-guardian (the short cc-guard name was too close to an unrelated ccguard project, so PyPI forced a rename). The CLI command is still cc-guard.

uv tool install cc-guardian
# or
pipx install cc-guardian
# or
pip install --user cc-guardian

Two commands are installed: cc-guard (full name) and ccg (short alias).

Platforms: Linux, macOS, Windows. The plain installer is fully cross-platform; the managed sidecar uses start_new_session on POSIX and DETACHED_PROCESS | CREATE_NEW_PROCESS_GROUP on Windows. Shell rc cleanup is POSIX-only (no equivalent concept in cmd.exe / PowerShell).

Commands

Command Purpose
cc-guard install URL Point Claude Code at URL (plain mode)
cc-guard install URL --sidecar + spawn a local flowlens sidecar
cc-guard install URL --hub HUB --hub-token TOK + attach to a remote hub
cc-guard uninstall Restore previous settings, stop managed sidecar
cc-guard status Show current install state + sidecar liveness
cc-guard doctor Run diagnostic checks
cc-guard (no args) Interactive wizard

See cc-guard <command> --help for all options, or read docs/execution-logic.md for the wire flow.

License

MIT

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

cc_guardian-0.0.9.tar.gz (242.8 kB view details)

Uploaded Source

Built Distribution

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

cc_guardian-0.0.9-py3-none-any.whl (57.6 kB view details)

Uploaded Python 3

File details

Details for the file cc_guardian-0.0.9.tar.gz.

File metadata

  • Download URL: cc_guardian-0.0.9.tar.gz
  • Upload date:
  • Size: 242.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.2

File hashes

Hashes for cc_guardian-0.0.9.tar.gz
Algorithm Hash digest
SHA256 bd5cd4a9551de27cae860de24baaaab8cbd904d5fd0529c2c6827037ab539163
MD5 9bd82499c56b4943d18b3f2ac23dd398
BLAKE2b-256 81223831f47c0b6b743879013448ff871db4502fc4f04c2e6701d2be029070f9

See more details on using hashes here.

File details

Details for the file cc_guardian-0.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for cc_guardian-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4546a89684bee1e98355f90fc7e977b0be41975ce39c47e38ca973180744ca3b
MD5 b50021dbca753f6c9ae05edf03bd4264
BLAKE2b-256 331ccfa081a03aaa698486a88a7c98943252f8fd7e0487f2f4f3f8ccdacf8a7f

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