Repository navigation
Remove v1 agents - #859
Remove v1 agents#859baxen wants to merge 7 commits into
Conversation
261db4c to
afa8713
Compare
c3a2a21 to
987566f
Compare
afa8713 to
8fd8bb0
Compare
987566f to
3aa3760
Compare
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
…d agent-mention popups Delete the bundled Agents and Channel templates plugins and every v1 mention popup: wake notices, owner-review requests, the mention attach path in agent control, and snapshot previews. Adding an agent to a channel no longer starts it. Settings > Agents keeps only "Remember mentioned agents" and the saved activity archive. The shell's collapsible-sidebar, retry and icon special cases move from the v1 Agents page to Agents2. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
Keep the Profiles panel for people and Agents2 agents, and drop only what served v1 agents: Runtime, Instances, harness log, start/stop/restart, archive, Memories, Add to channel, exact-instance targets and the kind-10100 Agent type and Capabilities rows. Human profiles render as before. Agents2 agents keep their type's tabs and Delete, and Message for an agent follows the Agents2 LocalAgents snapshot. Browser fixtures use LocalAgents instead of AgentControl; v1-only cases are removed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
…g and security With the v1 Agents page, Profiles and Channel templates gone, the services behind them have no consumer. Delete v1 AgentControl and its native bridge, AgentSecurity, agent snapshots and snapshot sharing, team bundles and import, the community catalog, the agent-management request lease, and the channel kit's team payload/text write paths. Names, mentions and New message now read a LocalAgents snapshot published by Agents2 (the viewer's own live identities) instead of v1 native control, so Agents2 agents stay "managed" for DMs and mention invitations. The plugin author API no longer exports the AgentControl or AgentSecurity types. Docs drop agent-control.md and agent-security.md and describe the remaining agent surfaces. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
Templates & teams was the only TemplateProviders contributor, so with it gone the extension point only rendered empty slots and "templates are off" notes. Remove ctx.channelTemplates and its editor, group-default and save-as slots from Create channel, the channel menu, Channel settings and Personal groups. Create now sends name, privacy, duration and destination group only. The channel kit model and session setup stay: groups and Canvas depend on them, and frozen setup receipts saved by earlier builds still retry with their original agents and Canvas. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
Nothing in the frontend drives the v1 agent controller any more. Delete AgentHost and every agent_control_* command, agent_security, native model discovery (agent/codex/goose/pi models), harness installers and managed npm, media_snapshot_read, the kit team-catalog reader and the agent supervisor dispatch, with their build.rs, capability and permission-test entries, plus the orphaned authorize-agent route in native-api and the dev broker. Drop the now-unused buzz-agent dependency. Agents2's app_agent_* commands are unchanged; app_agents.rs now owns the NIP-98 header helper it borrowed from the v1 module. Quit, update restart and sign-out no longer wait on a native agent host: Agents2 agents are plugin host processes that stop when Buzz exits. Sign-out still deletes keys listed in the v1 agent registry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
Stop building and shipping the unused v1 agent runtime. Keep desktop launch, application signing, installer verification and AppImage launch repairs. Trim the controller crate to Agents2 identities, credentials, profile signing and legacy import. Preserve legacy key deletion with bounded registry reads, identity validation and controller locking, without retaining the v1 runtime. Co-authored-by: Codex <noreply@openai.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
…e it is used With the v1 controller gone, credential locking is its only caller, and that is compiled only on macOS and in tests. Linux and Windows lint failed on the now-unused function. Co-authored-by: claude00 <fb8b76a01257932b8ca35060862c29bd09b2137638573731c2d5074fc02c5385@buzz.block.builderlab.xyz> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Bradley Axen <baxen@squareup.com>
3aa3760 to
c3f4fbe
Compare
8fd8bb0 to
0ab40dd
Compare
wesbillman
left a comment
There was a problem hiding this comment.
One change needed: restore native agent-list recovery through the shared chooser (inline).
Optional documentation cleanup: docs/agents.md:8–11 says Profiles is gone, but src/bundled/index.ts:110–114 still bundles/enables it, consistent with this PR's stated intent.
Star Lord's automated source review via Wes's account. Head 0ab40dd5db1b040db1f221ec3fee4de6ed263bd6; base c3f4fbe549cde9a1347467ba8790be5aaa06e03d. Source-only: no tests, app launches, or CI verification; browser/native interaction, credential-store erasure, and packaged acceptance remain unverified.
| @@ -206,15 +206,13 @@ export function createAgentChoices({ | |||
| if (signal.aborted) return; | |||
| if (includeLegacy && library.snapshot().status === "idle") | |||
| void library.refresh(); | |||
| if (native?.snapshot().status === "idle") void native.refresh(); | |||
| if (archive && archives?.snapshot().status === "idle") | |||
| void archives.ensure(); | |||
| }, | |||
| async refresh(source: SelectionSource = true) { | |||
| if (signal.aborted) return; | |||
| await Promise.all([ | |||
| usesLegacy(source) ? library.refresh() : undefined, | |||
There was a problem hiding this comment.
[P2] Keep Retry connected to the native agent-list producer
Removing native.refresh() leaves this method refreshing only the legacy library and archive state. On desktop, if app_agent_list fails, Agents2Service.refresh() sets the local source to error; MentionPicker and the session chooser still offer “Retry agent list”, but clicking it never issues another native list read. Managed candidates therefore remain absent even after the read problem is resolved. The Agents2 timer/reconnect paths do not reload this list; only startup and unrelated agent mutations do.
Expose a producer-owned reload path through the new binding and invoke it here, without restoring v1 control. Also clear the prior error after a successful native read: local() now forwards it, and templates.complete requires an error-free snapshot. Retain coverage where the first native read fails and chooser Retry performs a second read, restores managed choices, and clears the error.
Retires the v1 agent UI, runtime, controller and packaging after the identity-adoption layer. Agents2 uses LocalAgents as its managed identity source while retaining community-wide runtime lifetime from #838 and the shared Codex server from #852.
Preserves agent keys across rename and non-key erasure, imports picture/description as ordinary metadata, restores the human/agent Profiles panel without the v1 runtime, and adds agent avatar uploads. Explicit identity deletion still removes keys. The retired controller bundles and channel-template extension are removed.
Validation: combined-tip type/lint/design checks passed; 103 focused controller/native tests and 54 tooling tests passed. The model layer additionally passed 124 runtime/hook and 268 composer tests, plus Chromium/WebKit pending-to-ready interaction checks. Independent integration review completed and blockers fixed. Required push checks and hosted CI are recorded separately.
Deferred: native human acceptance, destructive erase acceptance with the real credential store, packaged/signed installer validation. Keep this draft until human testing is complete. Test two Codex agents concurrently; remove one mid-turn and verify the other continues. Also verify cross-community operation, immediate model picker loading, per-turn overrides, identity adoption/rename, avatars and both erase choices.
Final publication checks passed: full JavaScript suite, TypeScript, design checks and native clippy. Three unchanged tests timed out during concurrent broad runs; all 102 tests in those files then passed, and the complete mandatory push check passed serially without modifying tests or timeouts.