1.8.8b11 — the second walk
An opt-in preview. Stable remains 1.8.7; the Personal Wiki becomes long-term supported in 1.9.0.
1.8.8b9 carried what five testers found installing 1.8.8b7 into empty profiles. The same five walks were then run again against b9 as published. The fixes held: a stale approval on a second device is refused, a visitor sees only their own runs, the install line resolves stable dependencies. This preview is what the second walk found.
1.8.8b10 was tagged with these changes but never built: co ai's prompt
library linked 18 design records that #1707 had stopped shipping, and the
wheel built from the source package met the dangling links. The links are
gone, a test checks every link inside the package, and this is the same
release under the next number.

The browser always answers
- Every
co browsercommand now ends within its deadline: 120 seconds, or its own--timeoutplus 15. When Chrome's cookie store waits on a macOS Keychain prompt,co browser cookies --allandsave_stateused to hang forever and, one by one, fill the daemon until evenclosewas refused. They now stop and say what they waited on; a client that leaves takes its command with it; andstatus,close,tab lsandtab closeare never answered "busy" (#1709). - The daemon no longer asks Chrome for its cookies after every command with no
time limit, which leaked one connection per command;
co browser statusanswers within seconds; a selector that matches nothing, a missing script or page, and a bad URL are failures with a non-zero exit (#1704, #1709). - Read commands such as
get_current_urlno longer start a daemon when none is running, so a later--headlessis not silently ignored.
Hosting
- A device that joined a session in the first seconds after the host started missed the whole next turn — also on 1.8.7. It joins the session's viewers before its Home page renders now (#1708).
connect()after a host restart mid-turn raisesTurnLostErrornaming the session instead of "Auth error: Agent not connected"; a slowon_approvalis declined at the deadline instead of leaving the host waiting; a script with no terminal is told to passon_onboard=instead of hittingEOFError.co trust addrefuses anything that is not an address. Thehost.mdQuick Start runs as written.
First run
- The benchmark example
co benchmark listprints carries its own data, andco eval runstops an attempt at 10 steps (--max-iterationsraises it). On theco createtemplate the old example cost about $1.00 for five cases;co eval runnow says what it will run before the first model call and suggests--runs 1(#1707). co createinto an existing folder andco deploywith noagent.pyexit 1, andco createnow refuses the folder before a first run makes a keypair and signs up for an account.connect()with no identity says to runco init. Planning notes and internal design records no longer ship in the wheel.
Consent
co wiki startasks again whenever what it showed you changed — the model provider, the permissions, the schedule — instead of only when a source is added; the summary names the login the runner really uses (#1706).co claude runstops the Claude process it started when it is terminated, instead of leaving it running unsupervised.co wiki init --namemakes your own page without a mailbox.
Still open
- The web client (
@connectonion/react0.4.4-rc.6) must sendrequest_idbefore a session open on two browsers can answer approvals; until then that case is refused rather than guessed. co auth statusstill signs you in, as on 1.8.7; its fix (#1693) is in review.
Install
python -m pip install --upgrade 'connectonion==1.8.8b11'
co --version
ConnectOnion