Skip to content
PacSpace
Talk to us

Introduction

PacSpace is the flight recorder for AI agents. You write each action as it happens, PacSpace commits it where no one can change it, and anyone you hand the link to can check it without asking you or PacSpace.

PacSpace makes AI actions provable. Record what your AI agents do, as they do it. Keep the details private and prove what they did.

What this is for

Your agents act on their own now. One reads a file, calls a tool, sends a message, issues a refund. Afterward someone asks what it did: an outside evaluator, an auditor, your board, a program office, a customer. Your logs are your own account of it, and they sit within reach of the system that wrote them, so nobody outside can check them without asking you.

PacSpace is the flight recorder for AI agents. Your system writes an entry as the work happens. PacSpace commits it, and once committed, no one can change that entry, PacSpace included. You hand the other side one link, and their browser checks the record without asking you or PacSpace. Afterward there is a record, not an argument.

Who reads the record

What PacSpace does and does not do

PacSpace records and never decides. It does not watch your agents, approve their actions, or stop them. It does not read the files you record: you fingerprint a file where it lives and send the fingerprint and the size, never the file. What it gives you is the record of what happened, in your own words, that cannot be rewritten afterward and that anyone with the link can check.

The check shows the record is unchanged since it was committed. It does not show that what was recorded was true.

The calls

CallWhat it does
fingerprint(file)Fingerprints a file, a buffer, or a stream where it lives, and gives you its blinding file to keep beside it. The bytes never leave.
records.emit({ ... })Writes one entry to a record: what happened, when, who acted, and the fingerprints of the files it names.
records.history({ record })Reads the record's history: every entry, its status, and each committed entry's receipt.
records.check({ history })Runs the check from your own code.
records.disclose({ ... })Builds a file that shows a reader the fields you choose, and nothing more.
POST .../shareHands the other side one link and a code. Their browser runs the check when the record opens.

Two lines to record it. One link to check it. Someone who holds only the history file checks it with the open-source checker, npx @pacspace-io/check history.json, with no account and without asking us.

Where to start

  • Quick start goes from an API key to a committed entry and a link, in five steps.
  • What you can record shows the shapes an entry takes for the cases people bring us.
  • Examples walks through a whole record for each reader, with code.
  • Records and entries explains the words: record, entry, seal, receipt, history, statement.
  • Write an entry is the reference for the one write call.