Command reference
oko index pass
The catalogue synchronization and local transcript ledger sweep Oko's service schedules on independent threads every minute. A long ledger refresh does not hold catalogue synchronization back. Without --run, reads each step's last state; with --run, runs sync and then sweep. These receipts report execution, not proof that every historical message has been allocated to tasks or defects.
Invocation#
oko index pass [--run] [--json]Inputs and options#
- --run runs the sync and then the sweep as the person asking; the sweep runs even when the sync was refused. Left out, the command only reads the kept receipts.
- --json prints the same receipts as JSON.
Output and state effect#
- Each step writes its receipt before starting work and replaces it with its outcome when it ends: `~/.oko/transcript-catalogue-sync.json` and `~/.oko/transcript-ledger-sweep.json`. Fields are `by`, `pid`, `startedAt`, `endedAt`, `answer`, and `refused`; unfinished steps have a null end and answer. Status prints `{sync, sweep}`, each null if never started here, and adds `running` from the actual per-step exclusive lock and `interrupted` when an unfinished step no longer holds that lock. Every step logs its start and outcome to stderr, independently of the other step.
- Oko Desktop (Projection → Catalogue pass) and the native API expose the same state through `index` requests `{"action":"pass","run":true|false}`.
Refusals and safe exits#
- Unknown flags and positional arguments are refused before any work.
- `<step> is already running: <holder>; <lock path>` refuses concurrent runs of the same step rather than racing writes.
- `the transcript catalogue pass by <who>: <step> refused: <cause>` names each failed step; completed or refused steps keep their own receipts even if another step is unfinished. Receipt read and write failures name the actual file and cause. A read failure is not evidence that anyone edited the file by hand.