Halo-record: Open-source audit trails for AI agents Brian Kuan wrote halo-record, a small Python package that sits inside an AI agent and writes down the moves it makes: tool calls, model calls, data access, approvals. Each action becomes one line in a file that only ever gets appended to, and every line carries a hash of the line before it, a hash being a short fingerprint computed from content. Edit a record later and every fingerprint after it stops matching. The code is open source, and anyone can run that check with no key, no account and no permission from the vendor whose agent produced the log. A customer’s security team asks what your agent did with their data, and the answer they get is a paragraph you wrote about yourself. A hash-chained log replaces the paragraph with a file the customer can test. Wrapping an agent takes one line of Python, and adapters pull records in from OpenTelemetry spans, LangChain, MCP servers and gateway logs, so the evidence can come from tooling you already run. Raw arguments never enter a record. Values get hashed and kept as a redacted summary, and the redaction is pattern matching against common secret and personal-data formats. The package has no runtime dependencies and runs about 5,300 lines of Python, which matters when the recorder goes inside your own product. Nothing was edited is not the same as nothing is missing A chain you hold yourself proves one thing: no record was altered or reordered after it was written. It cannot prove that every record was written. Delete the embarrassing Tuesday, re-seal the chain, and the file stays internally consistent. Closing that hole takes a witness, some party outside the operator’s control that periodically stores two numbers: how many records exist and the hash