--create <names> generates secrets.json with random 32-byte hex secrets
--filter <names> extracts a subset of users into filtered-secrets.json
--input/--output override default file paths
Removes hardcoded user/agent assumptions from secrets.example.json.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Each request is signed with HMAC-SHA256 over timestamp+body using a
per-user secret loaded from a --secrets file (never env vars or git).
Users have a canApprove list controlling who may approve queued actions.
Queue entries track submitted_by for permission checks on approve/deny.
Also renames all identifiers to snake_case throughout the codebase.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>