Skip to content

Audit trail for autonomous coding agents

Know what your agent did last night.

Every tool call, every prompt, every response. Audit-grade trails for your Claude Code sessions. Self-hosted on your own box.

See the full prompt
See a sample trail

click the command · first trail in 60 seconds

Open source. Self-hosted. Your data never leaves your network. Export everything, any time.

Stand up your own instance: docker-compose up
~/yoruinstall
pipx install yoru-cli && yoru init --server https://yoru.acme.com
install

not an LLM proxy. not a fork of Claude Code. not your terminal scrollback.

A hook, a grade, six red flags. Per session.

  • ~40tool calls per runevery file edit, every shell, every SQL
  • 0%reviewed the next morningof what your agent did overnight
  • 6red-flag categories that catch itsecret · shell · db · env · migration · ci

Three jobs. One pipeline.

  • INGEST

    Every tool call, every prompt, every response.

    A Claude Code hook forwards agent events the moment they happen. The transcript tailer picks up what the hook misses: your prompts, Claude's replies, thinking blocks. No SDK, no proxy, no trace() wraps. Full conversation, searchable timeline.

  • FORENSICS

    Red flags, and a grade for the session.

    yoru flags six patterns at ingest: secrets, rm, destructive SQL, .env writes, migrations, CI config. Every session also gets a letter grade A to F on three axes: Throughput, Reliability, Safety. You open a session already knowing whether it needs review.

  • AUDIT TRAIL

    Audit trail, in one file.

    Download any session as a single JSON file: every prompt, every tool response, every diff. Sign it, attach it to the PR, email it to legal. Keep it in S3 for seven years. Done.

A grade that tells you something.

Every Claude Code session lands with a letter grade A to F and three bars: Throughput, Reliability, Safety. Strong throughput and zero errors don't hide a leaked AWS key. The axis that fails caps the whole.

A
session grade
  • Throughput
    100
  • Reliability
    100
  • Safety
    72

27 files · 478 tool calls · 0 errors · 1 flagged edit

Methodology anchored in DX Core 4 + SPACE (Microsoft Research). Geometric mean across axes. Critical flags cap the score.

Six signals. One red badge.

Six patterns that turn an overnight agent run into an incident you have to explain on Monday. Flagged at ingest. Severity-weighted. You decide if it's real.

SECRET

Matched AWS / Stripe / JWT / SSH private-key pattern in an event payload.

sk_live_…
ENV

Agent wrote to a file matching .env* outside .env.example.

.env.production
SHELL

Shell tool call included rm, dd, or mkfs.

rm -rf node_modules
DB

Agent ran DROP, TRUNCATE, or an unscoped DELETE / UPDATE.

DROP TABLE sessions
MIGRATION

Agent edited a file under migrations/, prisma/, or alembic/.

005_drop_users.py
CI

Agent modified .github/workflows/, vercel.json, or Dockerfile.

deploy.yml

Audit-ready, in one file.

Every prompt, every tool response, every diff. A Yoru session downloads as a single JSON file. Attach it to the PR. Email it to legal. Keep it in S3 for seven years. Your auditor has opinions. This file has answers.

yoru-ae817188-b484-4335-86bf-af893da6ee12.json124 KB
{  "session": { "id": "ae81…", "grade": "A", "tool_count": 14 },  "events": [    { "ts": "2026-04-18T12:24:58Z", "type": "message" },    { "ts": "2026-04-18T12:25:19Z", "type": "file_change", "flags": ["secret_aws"] }  ]
}

EU AI Act · record-keeping · in force 2 Aug 2026

The audit trail is becoming the law.

If you deploy a high-risk AI system in the EU, the Act's record-keeping obligations land on 2 August 2026. Not every coding-agent run is high-risk — but if yours is, and you're the deployer, you owe an automatic, tamper-evident log of what the system did, kept under your own control. That is the exact shape yoru already has.

Art. 12

High-risk systems must automatically record events over their whole lifetime — no per-event opt-in.

yoru · The hook logs every session, tool call, prompt and result the moment it happens. Nothing to switch on.

Art. 19 · 26(6)

The deployer keeps those logs at least six months, under its own control.

yoru · Self-hosted on your box. Append-only. Retention is your policy, on your infra — never a vendor's.

Art. 73

Serious-incident reports have to rest on logs you can trust.

yoru · Each event is hash-chained to the one before it. Alter a record and the chain stops verifying.

The EU AI Act requires an automatic, tamper-evident, ≥6-month audit trail of every AI-agent action. yoru IS that trail.

yoru is the record-keeping instrument. It is not legal advice, and whether your system counts as high-risk is your call to make. Article references (Art. 12, 19, 26(6), 73): artificialintelligenceact.eu.

Compliance surface

The compliance surface, line by line.

Most tools list compliance as a promise. This is what yoru does today, marked against the code — and what is still on the way. Every line says shipped, in progress, or planned. Nothing is dressed up as done before it is.

Record-keeping

  • shippedAutomatic logging of every session, prompt, tool call and resultArt. 12
  • shippedRetention under your control — self-hosted, your policyArt. 19 · 26(6)
  • shippedTamper-evident, hash-chained recordsArt. 73

Integrity

  • shippedPer-session hash-chain, re-verifiable from the dashboard
  • shippedAppend-only trail; secrets redacted at capture

Risk surface

  • shippedSix red-flag categories: secret, env, shell, db, migration, ci
  • shippedPer-developer attribution from the verified token

Control & residency

  • shippedSelf-hosted — audit data never leaves your infrastructure
  • shippedOne-file JSON export of any session trail

Access & identity

  • shippedOrganization roles: owner, admin, member
  • in progressPer-organization audit isolation (multi-tenant)
  • plannedSSO / SCIM

Evidence

  • plannedPer-organization signed EU AI Act evidence bundle

Public beta. “Shipped” means it runs in the beta today; “planned” is on the roadmap, not yet built. yoru is the record-keeping instrument, not legal advice — whether your system is high-risk under the EU AI Act is your call.

Your box. Your network. Your rules.

yoru is self-hosted. MIT CLI, AGPL server. docker-compose up, point the CLI at your own URL, done. No tenant, no seat math, no paywall, every user gets everything. Your session data never leaves your network.

Questions devs actually ask

  • Do I need to change how I use Claude Code?
    No. The hook installs once, runs after every event, and never blocks. Claude Code doesn't notice Yoru exists. If you uninstall, Claude Code keeps working. Yoru was never in the critical path.
  • Can I self-host?
    Self-host is the only way to run Yoru. The CLI is MIT, the server (backend + dashboard) is AGPL. git clone, docker-compose up, point your CLI at your own URL. One full product — no crippled “community edition”, no paid tier you're missing.
  • What about Cursor or Aider?
    Claude Code is supported today. Cursor and Aider write the same transcript-file shape, so the capture layer works. We're aligning the hook contract for each. Star the repo if you want a ping when they land.
  • Does Yoru slow my agent down?
    No. The hook is post-event: it fires after Claude Code finishes a step, not during. The POST runs with a 2-second timeout and || true, so a Yoru outage never stalls your terminal. We watch; we don't gate.
  • Where does my data go?
    To the Yoru instance you run. Nowhere else — it's your server, on your network. The CLI only POSTs to the --server you set; never to us, never to a third party. The code is public, grep the repo.
  • How is this different from Langfuse or Helicone?
    Those track the LLM calls your product makes to serve your customers. Yoru tracks the coding agent sessions your developers run to build the product. Different buyer, different scope. You'd use both.
  • What does it cost?
    Nothing to us — there's no hosted Yoru to bill you for. It's open source: run it on your own box and you get the whole product, every red-flag rule, unlimited retention, full data export. Your only cost is the box you run it on.

Start tonight. Review tomorrow morning.

One pip install from now, your next Claude Code session is a trail. Skip the scroll-and-hope. Wake up knowing.

See a sample trail

Open source · MIT CLI · AGPL server · GitHub