Skip to content

feat(desktop): bind agents to Project connections - #4735

Draft
wolfyy970 wants to merge 50 commits into
block:mainfrom
wolfyy970:codex/project-connection-bindings-v2
Draft

feat(desktop): bind agents to Project connections#4735
wolfyy970 wants to merge 50 commits into
block:mainfrom
wolfyy970:codex/project-connection-bindings-v2

Conversation

@wolfyy970

Copy link
Copy Markdown

Summary

Connects reusable agent tool requirements to Project-owned connections.

A template says which capabilities an agent needs. When starting or editing the agent, its owner chooses a Project and compatible connection. The agent stores the binding; endpoints and credentials remain with the Project.

This lets one connection serve several agents without copying secrets into portable agent data. It also makes the agent's Project access clear before it runs.

Behavior

  • Starting an agent asks for its Project and required connections.
  • Editing an agent keeps that agent as the primary object. Editing its template remains a separate action.
  • Idle agents save and restart immediately. Active agents keep their current task and use the new settings at their next restart.
  • Changing Project clears incompatible bindings.

A selected MCP connection currently grants every tool exposed by that server. Exact tool allowlists are outside this PR.

The same ownership boundary is now used by #4571 for hosted agents.

Stack

Depends on #4164, #4588 and #4671. This branch includes those heads so the complete flow can be tested now.

Validation

  • just ci
  • Desktop screenshot flow passed

thomaspblock and others added 30 commits July 24, 2026 09:14
Add an owner-authored project event that groups NIP-34 repositories while preserving standalone repositories as legacy single-repository projects.
Load grouped project announcements throughout the desktop experience and keep Git operations scoped to the selected repository. Preserve legacy single-repository projects while adding shareable repository selection and end-to-end coverage.
Publish the project grouping alongside its initial NIP-34 repository and make partial-write retries idempotent. Add protocol validation and end-to-end coverage for accepted, rejected, and lost-acknowledgement paths.
Add repository selection and creation within projects, expose repository-level activity, and preserve usability when connected relays lack project announcement support.
…-projects

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Resolve Inbox work against its owning repository so project navigation and canonical PR or issue actions remain correctly scoped after the model merge.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Preserve repository-aware project routing while incorporating current main behavior and test selectors.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Keep pull request attribution compact while distinguishing people from agents without obscuring repository context.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Distinguish Buzz-hosted repositories from linked GitHub repositories, provide a safe local clone flow for public GitHub remotes, and replace misleading empty states with actionable availability feedback.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Pass the parent project through repository detail views and normalize repository-only filters when returning to project lists.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
…-projects

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Keep the Node configuration free of an obsolete TypeScript diagnostic now that process is typed.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Point the shared Xcode scheme at the Buzz application product name.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Reuse the compact avatar and identity-only tooltip across issue and pull-request rows so work-item authors render consistently.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
…-projects

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Bring issue conversations to pull-request timeline parity while keeping rapid comments ordered safely.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Preserve both project kind names while integrating the latest CLI and git transport changes.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Use the finalized project contract and exhaustive secure folding so multi-repository projects remain complete without allowing grouping metadata to hide repositories.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
…-projects

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Let project owners group repositories that already exist while retaining the current create-and-add flow and NIP-MP ownership boundaries.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
wolfyy970 and others added 19 commits August 3, 2026 18:58
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Bind project repositories to explicit access channels, reuse project data efficiently, and retain privacy-safe activation context on agent-authored Git activity.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Centralize the paired session and Git attribution environment updates so the managed-agent runtime stays within its enforced file-size ceiling.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
…-projects

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Keep the shared provider payload contract synchronized with the privacy-safe Git attribution environment.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Update project smoke assertions for provenance, repository hosts, and multi-repository layouts while keeping repository cards visually consistent.

Signed-off-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…cp-servers

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…ions

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…cp-servers

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…ions

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…oject-connection-bindings-v2

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>

# Conflicts:
#	desktop/src/features/projects/ui/ProjectWorkspaceTabs.tsx
Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…ion-bindings-v2

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
…ion-bindings-v2

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
wolfyy970 added a commit to wolfyy970/buzz that referenced this pull request Aug 4, 2026
@wolfyy970

Copy link
Copy Markdown
Author

Edit the agent

The agent stays at the top of the hierarchy. Its template is a separate edit, and Project access is explicit before it runs.

01-agent-configuration

Save without interrupting work

A running agent keeps its current task. Buzz explains when the saved configuration will be used.

02-running-agent-update-ready

Confirm the restart

Buzz confirms when the agent has restarted with its new configuration.

03-running-agent-update-success

…ion-bindings-v2

Signed-off-by: KC <79471844+wolfyy970@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants