Capabilities

Features

Everything you need to govern, test, and observe your AI coding agents — running entirely on localhost.

01 · The guard

Manage & test hooks
before agents run them

The core of Argus: one-click hook presets, a structured config editor, and a simulator that fires synthetic payloads at any hook command — plus a free public collection of battle-tested guardrail scripts.

  • One-click presets for Claude Code, Codex, and 9 more agents — tagged, additive, reversible
  • Simulator runs any hook against a realistic payload for every event type
  • Inspect stdout, stderr, exit code, and duration without a live agent
  • Public script collection: command blocker, secrets guard, branch protection, auto-format, injection scanner
  • Structured JSON editor with live validation
hooks — config & simulator
PreToolUse ✓ active
PostToolUse ✓ active
Stop ✓ active
Notification ○ inactive
 
── simulate ──
payload PreToolUse/Bash
exit 0 · 8ms · stdout {}

02 · The armory

A community registry
of battle-tested guardrails

Zero-dependency hook scripts, free for everyone — browse and one-click install from the community registry, test in the simulator first, then publish your own with an optional GitHub login. The bundled guardrail scripts target Claude Code and Codex.

  • Browse and search the whole community registry from the Scripts page
  • One-click install any script into ~/.argus/hooks
  • Publish your own via a pull request, or back up your collection to a private gist
  • block-dangerous, protect-secrets, protect-branch, format-lint, scan-injection, and more
  • Nothing is uploaded except the scripts you choose to share
scripts · registry
$ ls ~/.argus/hooks
block-dangerous.js protect-secrets.js
protect-branch.js format-lint.js
scan-injection.js notify-webhook.js
 
$ node block-dangerous.js < fixtures/bash-dangerous.json
permissionDecision: deny

03 · The record

Every tool call,
in real time

Argus streams every agent action to your browser the instant it fires. No polling. No refresh.

  • SSE stream — events appear the moment a hook fires
  • Normalized event model across every supported agent
  • Filter the session list by agent or project, plus free-text search
  • Expand any event to inspect the raw payload
events — live feed
12:34:01 PreToolUse Bash
cmd: npm run test
12:34:02 PostToolUse Bash
exit: 0 duration: 1.2s
12:34:03 PostToolUse Write src/App.tsx
12:34:05 PostToolUse Edit src/index.css
12:34:09 Stop agent finished
 
$

04 · The ledger

Every session,
in one list

Sessions stream into one list, newest first, filterable by agent and project. Click a session for its full chronological event stream.

  • Session id, agent, project, and last-activity time
  • Filter by agent or project; free-text search
  • Load more as you scroll
  • Open a session for its full event stream
  • Expand any event for the raw payload — diffs, commands, output
sessions — ~/projects/argus
session · agent · project · last activity
 
a1b2c3d4e5f6 claude-code ~/work/api 2m ago
9f8e7d6c5b4a codex ~/oss/argus 14m ago
3c2b1a0f9e8d claude-code ~/work/api 1h ago
 
└ click a session → event stream
PostToolUse Edit internal/handler/hook.go
Stop agent finished

05 · The pulse

The instrument
checks itself

Diagnostics shows the watcher is awake: health, storage, hook inventory, and live log tails.

  • Readiness and per-agent connectivity status
  • SQLite size, journal mode, and WAL
  • Active hook preset detection (Baseline / Medium / Full)
  • ~/.argus file inventory with reveal-in-Finder
  • argus and hook-script log tails
diagnostics
backend healthy :10804
db ~/.argus/argus.db · 12.4 MB
hooks preset Medium (14/30)
~/.argus/hooks 6 scripts
 
log tail
argus.log · hook-scripts.log

01 · Signal chain

How it works

AI AGENTClaude Code, Codex + 9 more fire hooks
POST HOOKcurl POSTs JSON event to :10804
NORMALIZEUnified event model applied
SQLITEPersisted locally, zero cloud
DASHBOARDReal-time SSE stream to UI

Ready to start?

One command, and your first event lands in minutes.