The core ctxindex workflow
Organize Sources, materialize context, discover Resources, and follow stable Refs.
Every ctxindex workflow uses the same small model:
- A Realm groups Sources that should be searched and reasoned about together.
- A Source connects one provider collection or local directory through one Source Adapter.
- A Profile gives Resources portable shape, search vocabulary, Relations, Artifacts, exports, and Actions.
- A Ref addresses one Resource independently of local materialization.
The diagram shows the ordinary read path. A Realm owns Sources; each Source either materializes Resources locally or searches its provider, and every result hands back a stable Ref.
Inspect loaded vocabulary
ctxindex describe --format json
ctxindex describe profile mail.message --format json
ctxindex describe adapter microsoft.mailbox --format jsonUse the compact default for orientation and request describe --full --format json only when you need the complete registry snapshot.
Materialize deliberately
ctxindex sync --source company-mail --format json
ctxindex status --source company-mail --format jsonOmit --source from sync or status to select all configured Sources. Sync is a strategy for fast local discovery; it is selected by Source, not Realm. Providers and files remain canonical. Purging local materializations does not delete provider records.
Search, then follow the Ref
ctxindex search "quarterly planning" --realm company --format json
ctxindex get 'ctx://…' --format json
ctxindex thread 'ctx://…' --format json
ctxindex export 'ctx://…' --format jsonAn omitted Realm considers every eligible Realm. An explicit Realm filter is exact; there is no implicit global Realm and no Realm includes another.
Act through a Source
ctxindex describe action mail.message.draft.create \
--source work-mail \
--format jsonActions are typed Profile mutations implemented by a Source Adapter. Current provider mutation stops at reversible email Draft creation and update. ctxindex never sends email.