Skip to content

Add Patina remote MCP connections - #3286

Closed
prollinson wants to merge 1 commit into
block:mainfrom
prollinson:feat/patina-remote-mcp
Closed

Add Patina remote MCP connections#3286
prollinson wants to merge 1 commit into
block:mainfrom
prollinson:feat/patina-remote-mcp

Conversation

@prollinson

Copy link
Copy Markdown

Summary

  • add ACP HTTP MCP server support with runtime capability gating while retaining the built-in Buzz stdio server
  • add keyring-backed, per-agent Patina connections with workspace identity checks, viewer-only tool validation, health, enable/disable, reconnect, and disconnect
  • add the Connect Patina desktop flow and end-to-end lifecycle coverage

Tracks Patina bead patina-hh2i. No matching GitHub issue or pull request was found.

Security and behavior

  • credentials are stored in the OS keyring; only credential-free metadata is persisted
  • credentials are delivered to buzz-acp over private child stdin, not argv, environment variables, or the webview
  • secret-bearing buffers and wire logs are zeroized or redacted
  • connection testing verifies the key's exact workspace and agent ownership
  • Patina write tools are rejected; the launch path is read-only
  • runtimes without ACP HTTP MCP support fail before session/new

This first release is Codex-first. OAuth and built-in Buzz Agent HTTP support remain follow-ons.

Validation

  • just ci
  • cargo test -p buzz-acp — 634 passed
  • pnpm build:e2e && pnpm exec playwright test tests/e2e/patina-mcp.spec.ts --project=smoke — 1 passed
  • git diff --check

The remaining production acceptance gate requires an expiring Patina viewer key and selected workspace; no secret should be posted in the PR or channel.

Manual acceptance

  1. Open an agent's Runtime settings and choose Connect Patina.
  2. Enter the workspace slug and an expiring viewer agent key.
  3. Start a managed Codex agent and request Patina-grounded work; verify artifact-path citations.
  4. Revoke the key in Patina and verify Test and subsequent agent access fail.

Screenshot is posted in a PR comment.

Co-authored-by: Piers Rollinson <piers.rollinson@gmail.com>
Signed-off-by: Piers Rollinson <piers.rollinson@gmail.com>
@prollinson

Copy link
Copy Markdown
Author

Screenshots

pr-3286--connected

@prollinson

Copy link
Copy Markdown
Author

Closing at the request of the project owner: the intended task was local Patina configuration, not a change to Buzz upstream.

@prollinson prollinson closed this Jul 28, 2026
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.

1 participant