You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
[1.5.0] - 2026-07-28
✨ Features
Agent Home pages. An agent can keep a dashboard.html in its project root; the host reads it and pushes it over the existing agent WebSocket, so a chat client can render it beside the conversation. Sent on connect and after any run that changed the file, with a per-connection (mtime, size) check so an untouched Home costs nothing per turn. host() writes a polished starter on day zero and never clobbers yours. Buttons carrying data-ochat-skill run a skill as a visible chat turn. See docs/network/dashboard.md.
co syno — drive your Synology NAS from the terminal.
co ai YOLO mode — skip the approval prompts when you want it to just go.
Agents can declare how long they need a browser tab, so a long job isn't cut off by tab contention.
♻️ Changed
co ai and the project templates drive the browser through co browser rather than 40 in-process tools — one browser story instead of two.
Deploy polls the full build window and validates the project name locally before uploading, so a typo fails fast instead of halfway through a build.
🐛 Bug Fixes
The [env] diagnostic only prints when stderr is a terminal, so it no longer pollutes piped output.
A live daemon's socket is no longer unlinked on a non-refusal OSError.
Unit tests are hermetic, and send_email works without a .env file.
[1.2.1] - 2026-07-17
✨ Features
co browser runs natively on Windows — the daemon speaks named pipes (stdlib, HMAC-authenticated) on Windows and keeps its Unix socket byte-identical on macOS/Linux. No WSL.
Zero-setup browser: the first page-driving co browser command auto-installs chromium (per-user, no admin rights) when no browser exists; desktop Chrome is auto-detected and preferred.
🐛 Bug Fixes
Windows: emoji/Unicode CLI output no longer crashes on legacy codepages (cp1252) — including when co is driven through a pipe by Claude Code/codex.
co browser go_to no longer rewrites file:///about:/data: URLs into broken https:// forms.
Offline first run: co init now degrades gracefully (friendly one-liner, scaffold + keypair still created) instead of aborting with a traceback; authenticate() carries a 15s network timeout.
Docs: removed nonexistent co init --no-ai/--update-docs flags; fixed the stale auth URL reference.
✅ Testing
New windows-e2e CI job simulates a real Windows user end to end: wheel install, PowerShell 7 / 5.1 / cmd.exe, offline first run, CJK + space home directory, fresh-laptop browser auto-install (real download), three parallel agents, Task-Manager-kill recovery, authkey self-healing.
Windows unit/daemon matrix on Python 3.10/3.12/3.13; concurrency tests (8 simultaneous clients, cold-start singleton race).
[1.0.5] - 2026-07-01
🐛 Bug Fixes
co email: get_emails now reads the API's text/html body fields (falling back to legacy text_body/html_body), so co email inbox and co email read show the message body instead of an empty string.
co browser: take_screenshot prints the saved file path instead of dumping the base64 image to the terminal.