v0.2.0
Tau v0.2.0
User-facing changes since v0.1.1, selected from the release's commit descriptions.
Before upgrading
- Existing session journals may not load. Canonical provider responses now
require a persisted final-status decision so unfinished delegated work is not
mistaken for completed work after restart. Older records without that field
are rejected; no migration or compatibility default is supplied. Finish
important sessions with the old binary and preserve both it and a state backup
before upgrading. - Extension compatibility changed. The harness uses protocol 10.1 and
Rust SDK 0.9.0. Older protocol-major extensions must be rebuilt. The seven
packaged external extension projects use SDK 0.8.0 / protocol 10.0;
same-major skew is admitted with a warning and best-effort operation. - Default keys changed: Ctrl-H/Ctrl-L select the previous/next agent;
Ctrl-K/Ctrl-J move through prompt history. Existing overrides win. If your
terminal sends Ctrl-H for Backspace, use DEL or override the binding. - Image-tool clients and role policies need attention:
read_image(path)
moved from the shell extension to standard utilities asread_image(key),
accepting an artifact reference rather than a filesystem path. It now uses
theartifact:read:imagepolicy; local files must first be exported to the
artifact store.
Providers and project context
- Native Grok account support: device authorization, separate renewable
credentials, model discovery, streamed inference and native opaque standalone
compaction. Start withtau provider add grok. Prompt/time-limit responses
retain partial prose and usage without automatically resending the request or
executing partial tool calls. Account entitlement remains provider-dependent;
observed compaction acceptance does not establish fidelity or live restart
recovery. - Updated ChatGPT defaults: the shipped catalog adds GPT-6 Sol and Luna and
gives Sol the highest default preference. Newly added ChatGPT profiles use
standard Responses without a Lite compatibility question; explicitly configured
Lite remains supported. These are shipped choices, not a guarantee of model
access, and displayed API-equivalent costs are not subscription invoices. - Project instructions follow the agent's workdir. Committed persistent
workdir changes refresh that shell source's AGENTS instructions and skills
before dependent work continues, while preserving user-scope inputs and
historical context. Failed refreshes remove stale project inputs and report
degraded discovery. - Role-aware instructions and skills: use
only-roles,only-role-groups,
except-rolesandexcept-role-groupsmetadata to tailor context. Inspect the
effective selection withtau dev print-skills --role ROLE(also supports
JSON). This filters context, not filesystem access; previews initialize
configured extensions but do not call a provider. - Clearer native compaction progress: validated activity displays as
N/?
while working, thenN/Nonly after the harness commits successful compaction.
Agents, files and tools
- Large pastes become artifacts. A bracketed text paste of at least 8 KiB
after newline normalization uploads to the shared artifact store and inserts
an editable reference instead of inline prompt text. Smaller pastes and pasted
paths stay ordinary text. Import/export, image generation and image inspection
now share<tau-artifact:FULL_KEY>references that compatible tools accept
directly; stored images can be inspected by artifact reference. - Grep no longer needs an installed
rgexecutable. The dedicated tool uses
ripgrep libraries in-process while retaining ignore/glob handling and bounded
output. This does not remove dependencies used by your own shell commands. - Faster message delivery during ordinary waits: the default agent-message
wait-any delay drops from 60 seconds to 5 seconds. Idle delivery remains
immediate, exact-tool waits keep their two-minute policy, and configuration
overrides still apply. - Sticky bridge receivers: compatible bridges can opt into automatic
receiver selection, restore a saved designation, or lazily create an eligible
role-targeted receiver after incoming input. Manual restoration remains the
default; rebuilding an arbitrary bridge does not enable automatic reception. - Opt-in in-session papercut triage:
papercut_list,papercut_readand
papercut_archiveexpose shared-instance report history only when both the
extension option and explicit role grants enable it. The normal reporter
remains separate; history can include unredacted reports from other sessions.
Everyday operation and diagnostics
- Optional idle session shutdown: set
session_idle_shutdown: 48h, for
example, to stop inactive daemons through normal graceful teardown. It is
disabled by default and does not interrupt accepted work. Passive polling and
attached UIs do not renew the window; scheduled timers alone do not keep a
daemon alive. - More informative UI: agent command completions show live status and task
titles, and completed-turn statistics include the recorded completion time. - Better diagnostic evidence: content-free performance traces now carry a
UTC anchor. Codex captures expose bounded response-side cache-policy and
comparison diagnostics without raw comparison IDs or prompt content; those
fields do not prove cache residency or diagnose an otherwise unknown miss. - Expanded built-in help: searchable self-knowledge now covers coordination,
roles and skills, context/compaction, cache evidence, artifacts, trust, session
operation and extension integration.
Reliability fixes
- Queued steering input is retained across temporary journal-admission pressure;
explicit child metadata wins inherited defaults, and displayed agent renames
follow committed state rather than getting ahead of it. - Resume no longer gets stuck when a later interrupted inference follows failed
compaction. Pending manual compaction starts and usage accounting retry when
journal capacity returns; restored cross-agent compaction waits keep their
intended result. - Public Responses context-limit errors now reach the existing guarded recovery
path across HTTP, SSE and WebSocket. Canceled/preempted queued UI prompts no
longer leave misleading queued blocks, andwaitrejects unsupported argument
keys instead of accidentally consuming an unrelated background completion.
Downloads
The v0.2.0 release contains
verified Linux amd64 and arm64 DEB, RPM and tar.gz packages. tau-full
tarballs bundle all nine binaries; its DEB/RPM packages are exact-dependency
metapackages. Check SHA256SUMS before installing, or use
cargo install --locked dpc-tau --version '=0.2.0'.
Native package checks cover archive/ELF contents, licenses, manifests and
checksums, not broad distro, CPU/kernel, service-lifecycle or provider-account
qualification. The package floor remains glibc 2.34. Publishing this release does
not activate Nix configuration or restart running sessions.
Published September 28, 2026, from
4761e99c0375d0b8a4eb8046922b8f3790675398.