chittad runs the daemon. chitta talks to it. Both compiled from C++, communicating over Unix domain socket.
Direct tool invocation with named arguments. The client connects to the running daemon via Unix socket and returns the result.
Global options: --socket-path, --json, --toon, --version, --help
When stdin is not a terminal, chitta forwards raw JSON-RPC to the daemon. This enables programmatic integration from scripts, hooks, and other tools.
Token-Oriented Object Notation — ~40% fewer tokens than JSON, optimized for LLM consumption. Use --toon flag to enable.
--json
--toon
| Variable | Description | Default |
|---|---|---|
| CHITTA_DB_PATH | Mind storage directory | ~/.claude/mind |
| CLAUDE_PLUGIN_ROOT | Plugin root for model paths | — |
| SUBCONSCIOUS_INTERVAL | Daemon cycle interval in seconds | 60 |
| CHITTAD_BIN | Path to chittad binary | ~/.claude/bin/chittad |
| CHITTA_BIN | Path to chitta binary | ~/.claude/bin/chitta |
The daemon searches for the ONNX model (bge-base-en-v1.5) in this order:
What happens when chittad daemon starts:
{path}/chitta.duckdbbge-base-en-v1.5, 768 dimensions)/tmp/chitta-{hash}.sockSubconscious schedule: