diff --git a/.gitignore b/.gitignore index b599ee6..802ce05 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,6 @@ __pycache__/ *.pyc .DS_Store *.tmp + +# transient browser-bridge capture artifacts +.playwright-cli/ diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..e4d69e7 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,289 @@ + + +
+ + ++ A coding agent edits your source, runs your shell, reads whatever files it can reach, and + spends money — at machine speed, often unattended. That's a production system. These are + 33 small tools we built filling each operational gap, one real failure at a + time, running autonomous agent fleets on Claude Code in production. +
+ + +# clone once, run any tool directly:
+git clone https://github.com/deemwar-products/agent-ops
+python3 agent-ops/mcp-budget/mcp-budget .
+bash agent-ops/preflight/preflight
+ Get vanished work back, and make it impossible to lose in the first place.
+recoverGet an agent's vanished commit back — reflog + fsck recovery for work you thought was gone.
unwedgeRescue a Claude Code session stuck on the thinking-block 400 ("thinking blocks cannot be modified").
auto-snapshotMake an agent's uncommitted work impossible to lose — auto-snapshot the working tree.
preflightAsk git before your agents collide — a worktree/branch collision pre-check.
mergeraseFind public capabilities that silently disappeared across a parallel-agent merge.
Observe what a dozen unattended sessions are actually doing.
+fleet-psps for your Claude Code agent fleet — which sessions are alive, on what branch, healthy or wedged.
session-statsRead what a Claude Code session actually did, straight from the transcript.
review-briefA reviewer brief from the transcript — close the AI-code verification gap.
Stop the destructive command, the hidden instruction, the runaway fan-out.
+agent-guardA PreToolUse hook that blocks destructive agent commands (git reset --hard, rm -rf, push --force).
Measure blast radius and catch the lethal combination across grants.
+agent-reachMeasure a coding agent's secret blast radius — which secret stores are in reach.
trifecta-scanCross-config lethal-trifecta scanner — catch read + untrusted + exfil reachable in one grant set.
mcp-auditLint your .mcp.json — the highest-trust, never-linted agent config — for egress/security surface.
Find the tokens you spend before the first prompt — and the ones wasted after.
+mcp-budgetMeasure the context tax of your MCP servers — tokens spent before your first prompt.
agent-wasteAudit a session transcript for wasted tokens — re-reads, redundant tool results.
context-carryThe cost of a read is its residence time — weight every result by tokens × turns re-sent.
Generate, lint, and de-drift the instruction files your agent reads every run.
+agentdriftDetect drift across a repo's agent-instruction files (CLAUDE.md / AGENTS.md / .cursorrules).
tooldocMCP tool-description quality audit — find the undocumented parameters your agent guesses.
Run the measurement on your own repo before you trust the ecosystem's claims.
+Catch the render problems before you spend the render.
+storyboard-doctorPre-render linter for auto-demo storyboard JSON — catch dead-air/duration mismatches before you render.
A human developer is gated everywhere — review reads the code, a teammate notices you're stuck, someone catches the key in the diff. An unattended agent has none of that. These are the cheap, loud, deterministic gates that put it back — one per channel the agent touches. Each exits non-zero on a problem, so it drops into a Stop hook or CI unchanged. agent-frisk guards the input channel; these four guard the output channels.
langcheckLint agent output prose for foreign-script intrusion, mojibake, and runaway repetition.
leaklintFlag leaked secrets in agent output — redact-by-design, never reprints the value.
claimlintFlag false completion claims ("tests pass", "created X") the transcript and filesystem contradict.
Each tool is a single Python 3 or bash script. Stock interpreter only — nothing to pip install, nothing to vendor.
Every tool ships a self-contained suite that builds its own fixtures. CI runs all of them on every push and PR — one green check per tool.
Estimates, not bills. Where a finding is uncertain — or our own hypothesis lost — the write-up says so.
Each tool exists because something broke while running autonomous agent fleets in production. The write-up has the data behind it.
We run autonomous coding-agent fleets in production and build the operational layer that keeps them safe, observable, and cheap. If that's your problem too — let's talk.
+ Talk to us → +