Skip to content

[6/6] Add protection to the Goose harness plugin - #839

Draft
shellz-n-stuff wants to merge 1 commit into
codex/security-codex-integrationfrom
codex/security-agent-identity
Draft

shellz-n-stuff wants to merge 1 commit into
codex/security-codex-integrationfrom
codex/security-agent-identity

Conversation

@shellz-n-stuff

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

Copy link
Copy Markdown
Collaborator

Protected Goose sessions must run through the policy provider's verified engine and acknowledge retirement before protection changes. This connects Goose to the authenticated native protection bridge, adds strict ACP session retirement, supplies conversation evidence for Buzz tool checks, and registers configured models for temporary, tool-free review inference. Goose coverage and its build-script adjustment stay with the adapter.

This final layer completes the four-runtime host integration and documents the protection contract and refused paths. The separate Buzz Security plugin PR owns policies, reviewer prompts, approvals UI, and the protected Codex/Goose runtime distributions and native boundary fixtures. Buzz owns identity binding, revisions, retirement, shared tool gates, and native containment. The original PR is retained as the stack's top layer.

Code flow

[6/6] Add protection to the Goose harness plugin — illustrative code flow

Goose gates native conversation input, including results, and checks tool arguments with history before dispatch. Policy changes require strict ACP retirement.

Illustrative flow; checks shown enabled. Source: runtime.ts, agent-sessions.ts.

Ownership across the stack

Harness plugin, Buzz host and Security plugin ownership

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 Goose/ACP tests pass (265 passed, 8 skipped). The final stack tree exactly matches the preserved complete feature snapshot rebased onto afac5b5. Mandatory push checks pass. Fresh hosted checks run on each individual PR; earlier monolithic CI results do not validate these new commits.

Draft. A fresh protected action through the Buzz UI and human app acceptance remain pending. The stack preserves the original implementation without functional changes from splitting it. The Claude hook/watchdog redesign remains deferred.

Live Buzz demo

These user-approved clips were recorded before the runtime-distribution refactor in the packaged macOS development app with Security Worker (Codex), with both hooks enabled.

Benign input completes (20 seconds, 7c3dba764). The request returns Ready.

demo-ready-success.mp4

Quoted injection pauses for approval (55 seconds, 9ed4ebda2). Buzz identifies the embedded attack, shows the requesting agent and reason, and stops the native worker after Deny. These are continuous trims of live recordings.

demo-injection-denied.mp4
Live screenshots Security Worker completes the benign request with Ready Buzz identifies Security Worker and pauses the quoted injection for approval

@shellz-n-stuff
shellz-n-stuff force-pushed the codex/security-agent-identity branch from 72341b2 to 49d337e Compare October 28, 2026 13:53
@shellz-n-stuff shellz-n-stuff changed the title Identify the requesting agent in protection launch context Add native agent protection and attributed approval support Oct 28, 2026
Comment thread .github/workflows/ci.yml Fixed
@shellz-n-stuff
shellz-n-stuff force-pushed the codex/security-agent-identity branch 3 times, most recently from 445e303 to 25e442d Compare October 28, 2026 22:23
@shellz-n-stuff shellz-n-stuff changed the title Add native agent protection and attributed approval support Add native protection hooks and verified plugin runtime support Oct 28, 2026
Co-authored-by: Codex <codex@openai.com>
Signed-off-by: Alex Rosenzweig <arosenzweig@squareup.com>
@shellz-n-stuff
shellz-n-stuff force-pushed the codex/security-agent-identity branch from 5d8eafb to e595973 Compare October 29, 2026 02:17
@shellz-n-stuff shellz-n-stuff changed the title Add native protection hooks and verified plugin runtime support [6/6] Add protection to the Goose harness plugin Oct 29, 2026
@shellz-n-stuff
shellz-n-stuff changed the base branch from main to codex/security-codex-integration October 29, 2026 02:18
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