Reference
Hook management
Tama stores hook source and structured configuration, exposes the CLI and MCP catalogue, and carries the runtime paths that enforce approved policy. The repository is never runtime state: logs, transcripts, credentials, shell profiles, local settings, caches, and machine-specific state stay outside it.
#Source of truth
shared-hooks/registry.jsondeclares hook ids, events, commands, blocking status, runtime placement, and provider adapters.shared-hooks/catalog-metadata.jsoncarries durable category, lifecycle, purpose, rationale, and side-effect metadata.tama-corereads those structured sources for the Rust CLI, MCP server, desktop catalogue snapshot, and product checks.
Do not duplicate a hook description in a command or prose file. Update the structured catalogue, then inspect it through tama list --json, tama show <hook-id> --json, or the matching MCP tools.
#Repository layout
shared-hooks/,codex-hooks/, andclaude-hooks/contain archived hook source and the shared registry.repo-githooks/contains project Git entrypoints.rust/crates/tama-core/is the catalogue and validation library.rust/crates/tama-cli/is the supported CLI implementation;rust/crates/tama-mcp-server/exposes catalogue operations.rust/crates/tama-adaptive/owns the runner, symbolic policy, immutable telemetry, feedback bridge, and repair doctor.adaptive/policy.jsonis the frozen symbolic tier and autonomy policy.
#Catalogue commands
tama list
tama list --json
tama show block-git-hook-bypass
tama show block-git-hook-bypass --json
tama validate --json
tama install-plan --json
The install plan separates agent runtime adapters, editor coverage, the MCP server, user-global Git dispatchers, repository Git entrypoints, and operating-system policy. An installed surface proves only its declared scope; Tama does not infer native Kimi, arbitrary editor-save, or device-wide coverage.
#Installation and repository cleanup
tama install writes the user-global pre-commit and pre-push dispatchers only. It preserves existing hooks and changes global Git configuration only when explicitly requested. It does not activate every agent, editor, MCP, or operating-system integration.
tama find-violations scans tracked and untracked-but-not-ignored repository files through the real pre-write policy without changing them. tama clean gives the structured report to a bounded model worker and rescans under the same hooks; generated lock and registry files stay outside that repair loop.
#MCP tools
list_hookslists structured catalogue entries.show_hookreturns one hook and its event bindings.read_hook_sourcereads the archived source for one hook.validate_hookschecks catalogue consistency.find_violationsreturns the same structured repository report as the CLI.
#Changing a hook
- Place source under the owning archive directory.
- Update the registry and catalogue metadata with identity, event, command, timeout, blocking mode, category, purpose, rationale, and side effects.
- Exercise the real runtime path that claims enforcement. Synthetic payload replay, mocks, and dry-run-only evidence do not prove live blocking.
- Keep commits limited to hook source, structured catalogue/configuration, and applicable product checks. Exclude runtime state, credentials, logs, profiles, and caches.
#Security rules
Never commit settings, environment files, shell profiles, logs, transcripts, credentials, private keys, session cookies, or Keychain exports. Hook archives may contain forbidden patterns by design, so any bypass for the Tama source repository must be explicit and scoped.