TheDocumentation Index
Fetch the complete documentation index at: https://theseventeen-2abbdf80.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
approve command moves a binary from the pending queue into your active config.json, granting it a recognized identity in the daemon. When an unregistered binary attempts to connect to the daemon, the connection is rejected and the binary’s details — path, SHA-256 hash, command-line arguments, and timestamp — are held in ~/.config/keychain-auth/pending.json for 24 hours. You can review this queue at any time and approve binaries you trust.
The pending approval workflow
When a binary that is not inconfig.json tries to query the daemon:
- The daemon immediately denies the request with reason
unregistered_binary_pending_approval. - The connection is closed.
- The daemon writes the binary’s details to
~/.config/keychain-auth/pending.jsonwith a 24-hour TTL.
- Path of the binary on disk
- SHA-256 hash of the binary
- Exact command-line arguments used
- Timestamp of the attempt
Reviewing the pending queue
List all binaries currently waiting for authorization:Approving a binary
Copy the hash from thelist-pending output and pass it to approve:
pending.json to find the binary’s path automatically. If the hash has already expired or was never queued, you can provide the path as an optional second argument:
What approve writes to config.json
Approving a binary creates a zero-trust entry inconfig.json — the binary is recognized, but has no permissions:
pending.json.
Approving a binary does not grant it any keychain access. You must still open
~/.config/keychain-auth/config.json and add the service namespaces you want it to read from or write to. See keychain-auth register for a full description of the permission fields.