Skip to content

v2.9.0

Choose a tag to compare

@agentconnect-release agentconnect-release released this 02 Nov 09:50
· 400 commits to main since this release
28e3938

Summary

  • Auto Session Mode — A new Auto mode runs a conversation through a coordinator that reads incoming messages and hands work to titled tasks, each in its own thread. Tasks can delegate tasks of their own and keep summaries, follow-ups become watch tasks, and coordinators get a work board across places. New rooms and group DMs start on Auto.
  • Slack Code Channels and Native Reports — A coding task can get its own Slack code channel with its plan, task list, and work steps. Agents can also publish collapsible reports and sortable tables, and Slack shows "Needs attention" while a turn waits on an approval.
  • GitHub Apps per Agent — An organization can add its own GitHub Apps and give an agent one of them, so a reviewing agent acts as a different GitHub user from the agent that wrote the pull request.
  • Daemon Auto-Upgrade — A daemon can upgrade itself to the release shown in the console once it is idle. This is a per-daemon switch, off by default.
  • More Capability Requests — Agents can now request any setting on their agent form, including the runtime, and a scheduled task.
  • Draft Pull Requests — GitHub pull-request integrations can skip drafts until they are marked ready for review.
  • AHP Clients — Agent Host Protocol clients such as VS Code can sign in with AgentConnect through OAuth, and daemons now serve AHP by default where the deployment enables it.

Behavior change: New rooms and group DMs start in Auto mode on daemons that support it; existing conversations keep their mode. Session transcripts are now kept for 90 days by default, while session workspaces are still reclaimed after 7 days. Container images now run on Node.js 26; published npm packages still support Node.js 24.12 and later.

Features

  • ahp: carry the turn plan and usage to AHP Webchat (#3481) (1114d9a)
  • ahp: show capability request cards in AHP Webchat (#3482) (4a3dbbb)
  • capability: let an agent request any agent-form setting, its runtime included, and a scheduled task (#3453) (cd4c734), closes #3396
  • daemon: a task makes its own code channel (#3569) (299ba74), closes #3541
  • daemon: follow-ups become watch tasks (#3560) (40d61ed), closes #3541
  • daemon: give tasks titles and let a task delegate tasks of its own (#3474) (7db9178), closes #3472
  • daemon: let tasks keep a summary their owning session lists (#3475) (7eab53c), closes #3472
  • daemon: readTask and retained closed tasks (#3564) (30da2bf), closes #3541 #3537
  • daemon: reports join the coordinator batch (#3559) (cf8f883), closes #3541
  • daemon: serve AHP by default (#3517) (4fb6f86)
  • daemon: the work board for coordinators (#3555) (ef2b42d), closes #3541
  • github: give an agent its own GitHub App (#3529) (2d2e431), closes #3382
  • github: let an agent work through an organization GitHub App (#3532) (82f3f89), closes #3529 #3530 #3531 #3382
  • keep transcripts 90 days and reclaim session workspaces after 7 (#3459) (624fd02)
  • let AHP clients sign in with AgentConnect through the CP OAuth server (#3522) (056521f)
  • let daemons upgrade themselves to the announced release when idle (#3450) (69a0297), closes #3127
  • open a Slack coordinator task in its own code channel (#3513) (449c876), closes #3472
  • skip draft pull requests until they are marked ready for review (#3458) (c68235a), closes #3412
  • slack: add native reports and code channels (#3462) (8ba29ad)
  • slack: end a code channel's session when it is archived (#3466) (63e769f)
  • slack: keep a code channel's plan in its Plan tab (#3467) (eecb0d9)
  • slack: read full canvases and add report summary columns (#3527) (66fcf76)
  • slack: show individual work steps in native task cards (#3488) (7dfc4db)
  • slack: show Needs attention while a turn waits on an approval (#3464) (5a96807)
  • slack: show session tasks in code channels (#3558) (0dfe7a5)
  • turn on the Auto session mode and start new rooms on it (#3512) (d5e94ce), closes #3472
  • web: drop healthy connected pills and list organization GitHub Apps (#3535) (81280c6)
  • web: link an organization GitHub App's slug to its GitHub page (#3534) (052ae85)
  • web: open an agent's attached MCP server in its edit dialog (#3504) (edb6bd7)
  • web: pick an agent's GitHub App from the console (#3533) (db8bf85)
  • web: tidy the GitHub card and uninstall organization Apps (#3538) (d3baaa5)

Bug Fixes

  • ahp: stop closing Webchat as overloaded while the CP resolves catalog notifications (#3496) (0a0859b)
  • allow published packages to run on Node 24 (#3509) (95c5ae0)
  • assistant-mode: refuse By decision and shared-bot routing under assistant mode (#3542) (a3b0983), closes #3541
  • control-plane: attach AHP Webchat without a per-agent API entry (#3480) (67887cb)
  • control-plane: honor explicit Gitea repository grants on broker effect leases (#3550) (454361f), closes #3545
  • control-plane: honor explicit GitLab project grants on broker effect leases (#3553) (3758757), closes #3545
  • control-plane: route an approval to a linked editor when no rung names one (#3556) (6168f49), closes #3208
  • daemon: a code channel a task holds resolves to its task; a fallback task may hold a channel (#3576) (dc68d17), closes #3541
  • daemon: a message in a room a task holds passes the source gate as the task's own (#3570) (c5f26c3), closes #3541
  • daemon: a task in its held channel can tell its origin thread, and a coordinator's final text never posts (#3572) (8ad20f7), closes #3541
  • daemon: a task's run report from its channel carries the run's result, not only its summary (#3575) (263aaf1), closes #3541
  • daemon: hand Codex's Guardian the operator instructions through auto_review.policy (#3456) (22a8c77), closes #3454 #2953
  • daemon: install npm-launched runtimes on Windows (#3573) (c236ef8)
  • daemon: judge a coordinator batch by every sender and cut it by permission class (#3543) (9ce278b), closes #3541
  • daemon: keep a code channel's wrap-up and archive in its own session (#3525) (481a786)
  • daemon: keep a sandbox workspace's skill ledger across a device renumbering (#3554) (f30a5cc), closes #3546
  • daemon: keep a self-review as a COMMENT when GitHub refuses the author's own verdict (#3528) (5c948d1)
  • daemon: keep the beside handle on an editor's Slack DM (#3414) (ded6fdb), closes #3208
  • daemon: let AHP clients create a session with their own folder (#3520) (0893ac7)
  • daemon: let Codex's Guardian see operator instructions and read CLAUDE.md (#3454) (f8a341e), closes #2953 #2953
  • daemon: publish installed skill bundles read-only and drop file-less directories (#3519) (dd7631f)
  • daemon: remove agent roots and legacy worktrees that hold read-only skill bundles (#3547) (b1710a2), closes #3519 #3519
  • daemon: stop the coordinator from waiting on a plan approval (#3524) (ce0711a), closes #3472
  • encode synthetic A2A conversation keys (Refs #3549) (#3551) (f50fdfb)
  • gitcred: survive an installation invalidation that crosses a token mint (#3460) (3367590)
  • gitea: accept the split review read-back of a managed webhook (#3566) (f13a18c), closes #3565
  • github: give agents' dedicated GitHub Apps a lifecycle webhook (#3530) (aa31888), closes #3382
  • relay: authorize the pusher of a human revision on a bot-authored Gitea PR (#3548) (a9a3fc2), closes #3544
  • relay: authorize the pusher of a human revision on a service-account GitLab MR (#3552) (356dce8), closes #3544
  • relay: keep MCP proxy failure reasons visible behind a CDN (#3503) (578bd13)
  • slack: enable code channels when refreshing app manifests (#3465) (30414ae)
  • slack: group code channels and preserve thread replies (#3478) (5d7bc65)
  • slack: keep code-channel controls visible without headers (#3493) (9c9c46f)
  • slack: maintain task diffs during code sessions (#3471) (d1ebf3a)
  • slack: restore collapsible work-step groups (#3563) (3fe8ca2)
  • slack: reuse code channels and guide native task surfaces (#3468) (38874cf)
  • webchat: attach over legacy where a participant cannot serve AHP (#3489) (3bd4624)
  • web: keep a session's Webchat protocol open until its agent is known (#3508) (32fab73)
  • web: keep an AHP turn retired once the transcript confirmed it (#3514) (1b7a640)
  • web: list each person once in the trigger filter, with the viewer first (#3501) (b10a8a4)
  • web: order an AHP group turn by its earliest stamp and keep its roster (#3516) (8fa9377)
  • web: order billing usage chips and groups by exact amount (#3536) (447b57a), closes #3526
  • web: refresh the CP runtime config a running console serves (#3486) (f24e20d)
  • web: render an adopted session's history once over AHP Webchat (#3497) (1028851)
  • web: retire a live prompt with files once its row is persisted (#3515) (5b44178)
  • web: say the browser could not reach the chat server when the webchat socket fails (#3502) (a7c304d)
  • web: settle a new Webchat's protocol from its roster before the first send (#3518) (b1ea82d)

Internal

  • computer: keep the apt layer cached across releases (#3568) (04bfed3)
  • daemon: a targeted cron's channel anchor shows its name and fire time, not its prompt (#3577) (28e3938)
  • daemon: keep the coordinator in an empty directory on every runtime (#3507) (cca189d), closes #3472
  • daemon: keep threaded tasks' rows, summaries and lifetime (#3483) (f6d1fb8), closes #3472
  • daemon: run auto conversations through a coordinator session (#3479) (4423945), closes #3472
  • daemon: show the coordinator's triage and act on its commands (#3484) (8e60e4a), closes #3472
  • deps: bump croner from 10.0.1 to 11.0.0 (#3499) (2269de1)
  • deps: bump the npm-minor-and-patch group with 21 updates (#3498) (4b833e2)
  • label the coordinator and link a threaded task to it (#3492) (9ae70ca), closes #3472
  • let a delegated task's page take messages behind the Auto switch (#3495) (e03d230), closes #3472
  • let only the coordinator delegate tasks once Auto is on (#3511) (75809c8), closes #3472
  • lint: drop import-x export-map rules and lint in parallel (#3477) (1df6228)
  • lock a threaded task's visibility to the coordinator that owns it (#3510) (832b566), closes #3472
  • open the member's coordinator from the console home and Playground (#3506) (e4b604c), closes #3472
  • protocol: add the auto session mode behind a daemon capability (#3476) (1836d3f), closes #3472
  • run a member's private coordinator conversation in webchat (#3505) (bf9a4fd), closes #3472
  • run assistant mode's places through the coordinator (#3487) (a742529), closes #3472
  • runtime: bump Claude ACP to 0.99.0 (#3457) (4cd4788)
  • runtime: pin agent-browser 0.41.1 (#3571) (c430a0f)
  • runtime: refresh ACP and browser pins (#3473) (616403d)
  • show each task's summary in a conversation's Tasks tab (#3491) (bf267c7), closes #3472
  • show what each agent's coordinator spends on the Usage page (#3494) (20588c6), closes #3472
  • switch conversations into and out of auto (#3485) (340ed0e), closes #3472
  • upgrade Node.js to 26 (#3470) (78e5bf5)
  • web: let the reader dismiss the waiting-for-action banner (#3500) (f65d252)
  • web: list each cloud computer on the Infra page (#3452) (9d3b66f)
  • web: offer Auto in a conversation's session-mode menu (#3490) (cc067cd), closes #3472
  • web: reuse the exact amount comparator in billing usage (#3539) (ca08ce5), closes #3526

Full Changelog: v2.8.0...v2.9.0