Skip to content

v0.208.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 10:06
· 158 commits to main since this release
b04f4da

Upgrading from v0.207.0

  • Chat history is now bounded as it's written. Each chat keeps only its latest saved states, trimmed on every write instead of every six hours. protoAgent only ever resumes from the latest state, so nothing visible changes. If you read older states yourself (LangGraph time travel), raise checkpoint.keep_per_thread.
  • Large images in chat history are stored once per history database instead of being copied into every saved state. The first start on this version moves any existing stored images into the new layout. To read a history database from a stock LangGraph SqliteSaver, LangGraph Studio or a script, pass serde=graph.checkpoint_serde.protoagent_serde(conn); without it, those images read back as protoagent-ckblob:sha256:… references. A stock SqliteSaver used this way is safe single-threaded only, as LangGraph advises.
  • Downgrading an agent below v0.208.0 mid-chat shows images saved by this version as reference strings, and older versions send those strings to the model, until the chat ages out.
  • New size alerts. The console shows a warning banner when an agent's history database passes checkpoint.alert_db_mb (default 5120 MB) or one chat passes checkpoint.alert_thread_mb (default 1024 MB). A fleet hub shows the database alert for its local members too. Both are in the History section of the Knowledge settings, alongside checkpoint.prune_on_write and checkpoint.offload_media (both on by default).
  • Reclaiming an already-bloated database: protoagent checkpoint compact lists what it would trim and how much space it would free; add --apply to do it. It's safe while the agent runs.

Fixed

  • A long, image-heavy turn can no longer fill the disk (#4306, #4313). One screenshot-heavy turn wrote 87 GB of chat history because every saved state carried all ~490 of its screenshots, and pruning only ran every six hours. History is now trimmed on every write, without ever dropping a running subagent's parent state, and each image is stored once. The space reclaim after pruning actually frees space now; before, it freed one page per run, which is why many history databases were mostly empty space. Deleting a chat now also removes its /btw side threads and frees images no other chat uses. (ADR 0120)
  • In the desktop app, a chat image's "Open in new tab" opens your default browser (#4312). It used to open a second, empty protoAgent window. The browser gets a link that expires after 15 minutes, so your history doesn't keep a permanent one. The web console still opens a browser tab.
  • Fullscreen works inside plugin views (#4288), including a video's fullscreen button in the desktop app and the Artifact panel's inline video. The Artifact panel grants fullscreen only while it shows its own video, never to model-generated code.
  • Fleet Room shows who's working:
    • a member busy on a turn another agent delegated to it over A2A, with who asked and what for, including several delegations at once (#4291);
    • a member already running when the room opens, because each member's feed replays recent events on connect (#4304);
    • member activity on a hub that requires an auth token, where member feeds used to fail with 401 (#4297).
  • Fleet members boot again on a hub that uses a Claude subscription model. Headless setup accepts a provider-qualified model such as anthropic-oauth:<model> (#4305).
  • fetch_url reads PDFs instead of returning raw %PDF bytes (#4294). A damaged PDF returns a readable error, and an encrypted or image-only PDF says it has no extractable text.

Added

  • Managed-git delegates can open draft PRs (#4293). An acp delegate entry takes an optional draft_pr setting (default false). With managed git on, the harness opens the delegate's PRs with gh pr create --draft, so they wait for a human to merge. Existing delegates behave as before.

Docs

  • Atlas's architecture model of protoAgent now covers the fleet, with a tour and a parallel local-and-remote delegation flow (#4289).
  • The README shows the Coder monitor (#4303) and the Atlas plugin-system walkthrough (#4287).
  • Task guides and automation guides are shorter and match current behavior; old plans are archived (#4307, #4311).

What's Changed

  • docs(architecture): the fleet in protoAgent's Atlas model by @mabry1985 in #4289
  • docs(readme): Atlas plugin-system walkthrough loop in the Plugins section by @mabry1985 in #4287
  • fix(fleet-room): a member working on a delegated A2A turn shows busy by @mabry1985 in #4291
  • fix(fleet-room): member feeds connect on a token-gated hub by @mabry1985 in #4297
  • feat: fetch_url: extract text from PDF responses instead of returning raw %PDF bytes by @mabry1985 in #4299
  • feat: coding_agent managed-git harness: optional draft_pr delegate setting opens the PR with --draft by @mabry1985 in #4301
  • docs(readme): show the Coder monitor by @mabry1985 in #4303
  • fix(fleet-room): show members already running when the room opens (#4302) by @mabry1985 in #4304
  • fix(setup): headless setup accepts a provider-qualified model (fleet members boot again) (#4262) by @mabry1985 in #4305
  • fix(console): fullscreen works inside plugin views (desktop cross-origin frames + artifact video) by @mabry1985 in #4288
  • fix(checkpoint): bound growth on the write path, offload media, drain reclaim, alert on size (ADR 0120) by @mabry1985 in #4306
  • fix(desktop): image "open in new tab" opens the system browser, not a second app window by @mabry1985 in #4312
  • refactor(checkpoint): media offload as a LangGraph serializer, content-addressed per DB (ADR 0120 amendment 1) by @mabry1985 in #4313

Full Changelog: v0.207.0...v0.208.0