0.3.0 - 2026-06-01
Release Notes
This release makes the embedding geometry configurable and adds zero-downtime reindexing of the embedding space. It is a breaking release: the initial database schema is revised for the embedding-profile model and the embedding configuration keys have moved, so there is no in-place upgrade from 0.2.x. Provision a fresh database and update the configuration (see Changed).
Added
- Configurable embedding geometry. The embedding model, output dimension, and provider endpoint are config-driven rather than fixed at 768 dimensions. Each activation is recorded in an append-only log of embedding profiles; the active profile is derived from that log and is the live identity for every read and write. Embeddings are stored as
halfvec, and a database trigger rejects any vector whose dimension does not match its profile. tribal reindex, a zero-downtime migration of the embedding space to a new model, dimension, or endpoint. The run is a background, single-flight, crash-safe catch-up that embeds the corpus into a new profile while reads and writes continue against the active one, then cuts over atomically; an unchanged target is a no-op. The CLI exposesrun(--providerand--model, optional--dimensionsand--base-url, with--dry-runto estimate the item and tag counts before spending),cancel, andprune(supersede the non-active and failed profiles and reclaim their storage).tribal checknow reports the active embedding profile.- The same three reindex operations as operator MCP tools (
tribal_reindex,tribal_reindex_cancel,tribal_reindex_prune), so an authorised agent can drive a migration without shell access. - A narrow
tribal.embedding:executeOAuth scope that gates the reindex tools, and a repeatable--scopeflag ontribal token createto mint scoped tokens. Read and write scopes plustribal.embedding:executeare mintable; root and uncatalogued execute scopes are refused. The local stdio principal is granted the scope automatically, so bootstrap and thetribal token createdefaults are unchanged (full read and write).
Changed
- The embedding configuration has moved. The flat
[embedding]section is replaced byinit.embedding, a genesis seed applied only when a corpus is first created (once the corpus exists the active profile is the live identity, so later edits toinitare inert andtribal checkreports any divergence as informational state), and by acredentialscatalogue that binds a named(provider, base_url)endpoint to an API key so a migrated corpus keeps its key reachable. Environment overrides are renamed to match:TRIBAL_EMBEDDING__*becomesTRIBAL_INIT__EMBEDDING__*, and a catalogue key is set withTRIBAL_CREDENTIALS__<NAME>__API_KEY. The Docker Compose and.env.examplesamples are updated accordingly. tribal_discoverresults now carryembedding_profile_id, the active profile that produced them, andtribal_feedbackaccepts it so the local retrieval-feedback log records the producing profile. A discover pagination cursor is bound to the embedding profile that issued it.- The worker pipeline prompts are reframed around tacit knowledge (the reasoning, the rejected alternatives, and the bounding constraints behind a decision) rather than a generic knowledge base, and the model-facing vocabulary is unified on "claim". The few-shot examples and the structured-output guards are unchanged.
- The Docker Compose Postgres image is pinned to
pgvector/pgvector:0.8.2-pg17, the minimum that provides thehalfvecoperations the embedding store now relies on.
Install tribal 0.3.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/tribal-memory/tribal/releases/download/v0.3.0/tribal-installer.sh | shInstall prebuilt binaries via Homebrew
brew install tribal-memory/tap/tribalDownload tribal 0.3.0
| File | Platform | Checksum |
|---|---|---|
| tribal-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| tribal-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| tribal-aarch64-unknown-linux-gnu.tar.xz | ARM64 Linux | checksum |
| tribal-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |
| tribal-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |