Skip to content

Attestack

Prove what happened during AI-assisted work — without SaaS, without trust in chat history.

Try it: tamper with the chain

#1 session.started hash: a3f8…c21
#2 command.finished hash: 7b2e…9d0 → prev: a3f8…c21
#3 session.stopped hash: 91ac…4fe → prev: 7b2e…9d0
Terminal recording: attestack init through verify
Full session in under a minute — real CLI output.

AI coding assistants make work faster — but accountability gets worse. Evidence is scattered across Git, CI, chat, and memory. None of it is a single, portable, tamper-evident record.

Evidence exists — but it is fragmented and hard to verify.
  1. Start a session when work begins (attestack start).
  2. Record facts — shell commands, notes, Git snapshots, agent tool calls.
  3. Export a bundle — signed zip for PRs, tickets, or audits.
  4. Verify offline — recompute hashes and check signatures; no server required.
One session → one timeline → one portable artifact.
Each event links to the previous hash; tampering breaks verification.
Every feature branch can follow the same evidence loop.

Without Attestack

  • Reconstruct work from chat exports and memory
  • CI logs expire; hard to link to a specific change
  • No cryptographic proof the timeline is intact
  • Sharing evidence means granting repo or SaaS access

With Attestack

  • Structured session log in .attestack/
  • Commands, exit codes, and Git hashes in one chain
  • attestack verify detects tampering offline
  • Portable .attestack.zip — share the file, not your machine

Hash-chained events

Each event links to the previous one. Reordering or editing breaks verification.

📦 Portable bundles

Signed zip with session metadata, events, report, and optional artifacts.

🔒 Private by default

Data stays local. Command output and diffs are opt-in. Path redaction on export.

Offline verify

Recompute digests and Ed25519 signatures — no network, no account.

QuestionHow
What happened in this session?Event timeline + Markdown report
Which commands ran, and did they pass?command.finished events with exit codes
What changed in Git?Snapshot hashes at start/end
Was the record tampered with?attestack verify on session or bundle
Can I share proof without repo access?Export .attestack.zip; verify anywhere

Install

Release binary or install script — get attestack on your PATH in one command.

Quick start

Record your first session, export a bundle, and verify it offline.

Agent setup

Connect attestack-mcp in Cursor, Claude, or Copilot.

CI integration

Wrap tests in a session and upload bundles as workflow artifacts.

CLI reference

Every command, flag, and exit code.

Security model

Keys, privacy, redaction, and what verification proves.

  • No SaaS account requirement
  • No blockchain dependency
  • No automatic capture of private AI transcripts
  • No always-on surveillance