What an audit trail records
For each agent run: who triggered it (user id, system trigger), when, what prompt, what tools called with what arguments, what tool results returned, what final answer the agent produced, and what permission decisions a human made. Together, these answer 'what happened' months later.
Hooks are your audit hook (literally)
The simplest implementation: a PostToolUse hook that appends a structured line per tool call, plus a UserPromptSubmit hook for the trigger and a final summary on Stop. Each line carries a session id so you can stitch them into a timeline.
Retention vs cost
Audit logs grow. Decide retention policy up front — 30/90/365 days based on regulatory or business need. Cold-storage tiers (S3 Glacier, GCS Coldline) make multi-year retention cheap; hot-storage queries should target the last N days only.