Repository navigation
Releases: offenselabs/EgressEye
Releases · offenselabs/EgressEye
Release list
EgressEye v0.1.0 — first public release
First public release of EgressEye — per-session egress visibility for AI coding agents.
What it does
Sits in your harness's hook layer, inspects every tool call, and answers one question: what did this session contact, what looked wrong, and why?
- Deterministic detection — OpenPhish/URLhaus mirror feeds (local, in-memory), optional key-gated Google Safe Browsing, typosquat/punycode/IP-literal/credentials-in-URL heuristics against a dev-domain allowlist, RDAP newly-registered-domain checks. No LLM in the verdict path.
- Secret scanning — AWS/GitHub/OpenAI/Anthropic/Slack/Google tokens, JWTs, private keys, DB connection strings,
.envblobs; redacted at creation (4-char preview + length only). - Sharded-exfiltration aggregation — many small sends to the same host (path rotation included) surface as one session-level finding.
- Honest verdicts —
unknownmeans unknown; every verdict carries a machinesourceand human-readablereason. - Local-first privacy — URLs stored query-stripped, secrets redacted on write, feed lookups in memory, zero runtime dependencies (Node builtins only).
Harness adapters (all driven by the same engine)
| Harness | Install |
|---|---|
| ZCode | egress-eye init zcode |
| Claude Code | egress-eye init claude-code |
| Codex | egress-eye init codex |
| Hermes (Nous Research) | egress-eye init hermes |
| OpenCode | egress-eye init opencode |
DeepSeek Harness (dsh) is researched and feasible — deferred until its plugin API stabilizes (see docs/adapters/deepseek-feasibility.md).
Getting started
npm install # build (TypeScript dev deps only)
node dist/cli.js init zcode # pick your harness
node dist/cli.js update-feeds # mirror the blocklist once
# … use your agent normally …
node dist/cli.js report --lastdist.zip below contains the compiled tool if you don't want to build.
Verification
- 70/70 unit tests (
node --test, fully offline) - 39/39 eval-scenario corpus replayed through the real hook path
- CI green on ubuntu + windows, Node 20 and 22
Honest limits
EgressEye is a visibility tool, not a sandbox. The complete bypass list is in docs/limits.md and the threat model in docs/threat-model.md — both are part of the product.
Commits
- egress-eye v0.1.0: per-session egress visibility for AI coding agents
- adapters: Claude Code, Codex, Hermes (Nous Research), OpenCode + dsh feasibility
- audit fixes: independent review findings (5 important + minors)
- chore(release): beginner-friendly README, CI workflow, repo metadata
- test: avoid real-format token literals so push protection stays enabled
- fix(ci): drop trailing slash from the test runner path
- fix(ci): enumerate test files explicitly for cross-version node --test
Full Changelog: initial release