Releases
v1.3.0
Compare
Sorry, something went wrong.
No results found
1.3.0 (2026-06-18)
Added
add an export button to the operator console (98541d7 )
add war room hub and MCP bridge package (2689431 )
bridge: add channel tools to the MCP bridge (6caad74 )
bridge: add set_channel_topic tool and surface the join directory (d6b9a33 )
bridge: add setup() gate and protocol version handshake (973d6d8 )
bridge: deregister server-side on leave (8105700 )
bridge: expose talking-stick tools (3dbc33f )
bridge: make the MCP bridge passive until join (9e7f656 )
claude-agent: add talker/worker types and permission-mode selection (3d4ed05 )
claude: add autonomous Claude connector on the Agent SDK (eb9f45b )
claude: add set_channel_topic tool and inject the channel directory (31673e5 )
claude: let the native agent open and use private channels (b8e0dac )
connector: add ask_operator/list_forms to bridge and native connector (d35cbd2 )
connector: add async HubConnector for native agents (d1f51ba )
connector: expose channel join/leave on the hub connector (e940bdd )
connector: expose set_channel_topic and the registration directory (dc001fc )
connector: resend token on re-join and handle name_in_use (d8e1067 )
connector: talking-stick on the native path (a868e7a )
disklog: opt-in append-only JSONL event log (732448e )
export the chat log via a /export endpoint (4c1f4e3 )
expose version via --version flag and /version endpoint (c6978e2 )
hub: add message seq numbers and ACK mechanism with replay on reconnect (9dc443c )
hub: add peer ping and self-reported status (d65147e )
hub: add per-channel topics and a connect-time channel directory (d14ffef )
hub: add talking-stick floor control (e2fc79d )
hub: bump protocol to v5 for the one-shot watcher relaunch contract (cbd1247 )
hub: dashboard WS protocol, auth/RBAC and static asset serving (93d62d4 )
hub: expose /ask and /forms and form answering over /ui (55456e2 )
hub: give channels a convener role for coordinated closes (8d291e3 )
hub: make channels the default for focused pairs (7768c4c )
hub: open operator console in browser on startup (1d9054b )
hub: reap idle peers and add POST /leave endpoint (beb5b2c )
hub: refuse duplicate join under a name held by a live peer (bca30ce )
hub: revive idle-reaped peers on authenticated use (635ebfa )
hub: route messages to private channels (632ee39 )
hub: serve a versioned operating protocol (b103bd1 )
hub: teach the protocol about resuming work and the no-mailbox rule (16afd65 )
invite agents to format messages in Markdown (10cb2b5 )
models: add Field/Form models and answer message kind (b2e4c81 )
models: reserve operator and hub identities and stamp message origin (d77489c )
protocol: keep watcher alive while awaiting a peer callback (1fd0a61 )
protocol: make the shell watcher the default listener (064ef06 )
ratelimit: add read-only available() probe to TokenBucket (f68d226 )
state: add operator-form lifecycle (f77b7b8 )
state: deregister and reap idle peers from the roster (023176e )
state: rich peer info, health metrics, per-peer pause, channel close (a08faef )
ui: add an operator kick button to the peer roster (a42b2e0 )
ui: add operator console served by the hub (ea5831a )
ui: add operator-form wizard to the console (64b0d02 )
ui: click names to target replies and highlight operator-bound messages (773949d )
ui: finish dashboard panels, add Vitest + Playwright suites (bb76fae )
ui: honor allow_other in operator forms (552aac5 )
ui: operator dashboard SPA (Vite + React + TS + Tailwind + shadcn) (f2a4af6 )
ui: readable operator feed with safe markdown rendering (b45bf78 )
ui: rename console to Caucus, show hub version, add composer autocomplete (0ea61bb )
ui: show active talking sticks in the operator console (685e29e )
ui: show channel topics and load web fonts without blocking onload (9c742f8 )
ui: stick-to-bottom auto-scroll in Flow timeline (d21442a )
ui: surface private channels in the operator console (1d53f50 )
ui: v2 dashboard — left-rail layout, composer autocomplete, markdown flow (cb7dc50 )
urlguard: fail-closed validation for the configurable hub URL (ebcb10b )
watch: add zero-token background watcher (d726eaf )
Fixed
agent: retry transient hub errors with backoff and guard the hub URL (9cae76a )
agent: treat inbound peer messages as untrusted to block prompt injection (c7f599f )
bridge: harden watcher token file, guard hub URL, survive hub blips (c8c532e )
bridge: tell the agent to relay then relaunch the one-shot watcher (3b8ccc7 )
deps: require claude-agent-sdk >=0.2.93 for the auto permission mode (db780f0 )
disklog: write the pruned log atomically and serialize with appends (975c3c1 )
hub: bound channel names and rate-limit membership endpoints (13ea571 )
hub: deliver broadcast and channel messages to reaped peers (febb9b8 )
hub: evict same-name reaped ghost on fresh re-register (d9cb28b )
hub: gate ui origin, authenticate control, and enforce resource caps (31a74b7 )
hub: limit request body size, gate /export, add console CSP (e0293b9 )
hub: raise default client TTL to 300s (bf0285b )
hub: read /receive token from Authorization header, not URL query (80071ab )
hub: route direct messages to reaped clients within grace window (51481ae )
hub: type /send return as SendResponse | JSONResponse (f5665c8 )
logging: silence httpx request logging to stop token leak (46c0eaa )
state: cap in-memory resources and mark hub message provenance (2356523 )
ui: clarify required-Other validation message in form wizard (76fce99 )
ui: keep the operator composer pinned to the viewport bottom (884772a )
ui: preserve scroll position when reading scrollback (e178ddb )
ui: unpack nested hub message event (Flow panel crash) (df44316 )
watch: exit one-shot-per-wake so inbound messages reach the agent (90c72be )
watch: guard the hub URL and tolerate malformed hub responses (c00e92c )
Documentation
add CHANGELOG and CONTRIBUTING (31ab6b6 )
add peer war room operating protocol (5fb816d )
add README and Claude Code guidance (11614f4 )
assume public repo and PyPI distribution in install steps (e3026da )
changelog: document 1.1.0, 1.2.0, and 1.2.1 releases (12f9098 )
dashboard: freeze operator dashboard WS protocol contract (547722c )
dashboard: operator runbook, architecture and README (59abd40 )
document duplicate-join protection and operator kick (898ee20 )
document operator forms (87f83ec )
document peer ping and status tools (169b7d2 )
document peer reaping and the /leave endpoint (4652a5a )
document private channels in the project guide (7973b32 )
document reaped-peer revival and the 300s TTL (cfe7b2c )
document setup() and the hub-served protocol (b9daef0 )
document talking-stick floor control (2d9641d )
document the one-shot-per-wake watcher contract (b2103e8 )
document the passive bridge and join/leave loop (c420de1 )
document watcher-on-join lifecycle and communicative style (53a6bbd )
drop Claude-specific framing, position hub as MCP-client-agnostic (86267ea )
extract architecture detail into docs/ARCHITECTURE.md (3d7ed9e )
include MCP client config in the quickstart (f468ec5 )
note the /export endpoint in the architecture overview (e86af28 )
offer pipx and pip alternatives in the quickstart (cc7176c )
point CLAUDE.md at the new pytest suite (b4a6853 )
readme: mark 1.0 stable, add license badge, document talker/worker profiles (8ec7701 )
readme: restructure and refresh the project overview (1064f4f )
reframe architecture around layered connectors (124d2c7 )
reorder README — use cases before quickstart, architecture before development (b02207a )
require a version bump on every release (7deb7a4 )
rewrite README with badges, diagrams, use cases, and install paths (182b3c1 )
sharpen cross-repo use case around ownership boundaries (80b3244 )
slim CLAUDE.md to overview and invariants, link architecture doc (463d167 )
Changed
rename project from War Room to Caucus (af2c7c1 )
ship operator UI as package data (011e91a )
single-source the package version from pyproject.toml (c88c9ce )
ui: drop dead channel branch in recipient rendering (1af200d )
You can’t perform that action at this time.