CLI reference
tama enforcement preflight
Asks one installed hook whether it can work on this machine, and prints the whole exchange.
#Invocation
tama enforcement preflight <hook-id> [--session SESSION_ID]
Takes one hook id and an optional exact session id. The command reads the installed registry and runs that hook; it never writes the machine selection, adaptive state or session state. Completion checks need the real session id to find its transcript and Oko ledger.
#Output and state
The report names hook:, an explicit session: when supplied, catalogue:, the recorded command:, the executed program:, exit: or spawn:, the first diagnostic line under answer:, and verdict:. The verdict distinguishes usable, unusable with the dependency failure, and not installed on this machine. An absent catalogue command returns before execution and says that nothing could be asked.
The hook is asked with the same activation payload the session path sends, so a hook that already understands the session preflight answers this command the same way.
For check-open-items-with-model, a usable response means the authoritative Oko ledger was read. Its answer separately includes completionAllowed and pendingTasks; usable does not mean unfinished work may be called complete. The actual Stop hook refuses those tasks and names the oko tasks verify --before-stop --session SESSION_ID command for independent qualification after delivery.
Exit is 0 for a usable hook, and 1 when the hook answered with an infrastructure failure or the catalogue records no command for it. An absent binary exits 0: a hook that is not installed yet is not a broken hook.
#Refusals and failures
There are no policy refusals: nothing is changed. A registry that cannot be read prints enforcement: <error> and exits 1. An id the installed registry does not declare is still probed if the catalogue records a command for it, and the catalogue: line says it is unknown.
This is the diagnostic behind the refusal in tama enforcement only. Read it when a hook was accepted or refused and the reason has to be visible rather than guessed.
Return to the complete CLI command tree.