Skip to content

[2/6] Add agent-bound protection policy and plugin API - #1876

Draft
shellz-n-stuff wants to merge 1 commit into
codex/security-native-boundaryfrom
codex/security-provider-api
Draft

shellz-n-stuff wants to merge 1 commit into
codex/security-native-boundaryfrom
codex/security-provider-api

Conversation

@shellz-n-stuff

@shellz-n-stuff shellz-n-stuff commented Oct 29, 2026 •

Copy link
Copy Markdown
Collaborator

Agent protection must remain bound to the native-held identity across community memberships, policy changes, and running sessions. This adds native policy defaults and revisioned compare-and-swap, exclusive custody checks, and sticky version-3 identity storage, together with the shared agentProtection service and runner enforcement that consume them.

Plugins own policy content and review decisions. Buzz captures the provider and policy, routes manifest-declared workers through native containment, stops unsupported protected runs, and retires existing runtime sessions before changing protection. Shared Buzz tools check immutable arguments and conversation evidence; signing and stale handles remain bound to the active run. Browser identity projection continues to expose only public metadata.

Policy persistence, custody, shared service, runner, MCP, and identity projection coverage accompany their owners here. Runtime-specific adapters land in the following PRs and remain unavailable for protected work until their integration is present.

Code flow

[2/6] Add agent-bound protection policy and plugin API — illustrative code flow

Policy changes retire every membership before native compare-and-swap. An enabled action check continues only on exactly true.

Illustrative flow; checks shown enabled. Source: service.ts, runner.ts, app_agent.rs.

Review and merge bottom to top:

  1. [1/6] Add verified plugin processes and native containment
  2. [2/6] Add agent-bound protection policy and plugin API
  3. [3/6] Add protection to the Pi harness plugin
  4. [4/6] Add protection to the Claude harness plugin
  5. [5/6] Add protection to the Codex harness plugin
  6. [6/6] Add protection to the Goose harness plugin

Validation

TypeScript and focused shared-service, runner, MCP and identity-projection tests pass (434 passed, 1 skipped). Native policy/controller tests (86), custody tests (12) and webview permission test (1) pass. Persistence and enforcing runner code land together.

Draft. Human app acceptance remains pending. The stack preserves the original implementation without functional changes from splitting it.

Co-authored-by: Codex <codex@openai.com>
Signed-off-by: Alex Rosenzweig <arosenzweig@squareup.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.

1 participant