agents: fix sandboxed workspace access with a stdio MCP bridge (#95)

* agents: expose workspace access through harness-owned stdio MCP

* tests: qualify MCP configuration value in launch coverage

* agents: exclude native approval answers from MCP tools

* cli: simplify MCP notification handling

* agents: clarify MCP cleanup reporting and ownership contract

* docs: record harness MCP verification and review evidence

* docs: complete MCP feature delivery handoff

* integration: report the MCP notice only when the registration changes

Launch-time setup runs on every agent spawn, so an unconditional notice
produced a GUI toast and CLI stderr line on every claude/codex/cursor/
opencode launch. Match the existing Codex hooks notice and speak up only
when the MCP registration was written.

* integration: refresh disabled MCP registrations without enabling them

An owned registration that the user disabled kept its old command, so a
later re-enable could launch a moved or removed executable, and Codex
skipped the context env_vars. Keep the disable flag but refresh the
managed command, arguments and forwarded context variables.

* tests: cover the MCP bridge's absolute-socket requirement

The bridge documents that it accepts only an absolute SIGNALTTY_SOCKET,
but removing the check left every test green. Exercise a relative path
that resolves to a live server from the bridge's working directory.

* docs: renumber harness MCP ADR and spec after main took 0031/046

Main merged ADR-0031 (workspace AI titles) and specs/046-workspace-titles
while this branch used the same numbers. Move the harness MCP decision to
ADR-0032 and its spec to specs/047-harness-socket-access, updating links.

---------

Co-authored-by: Lucenx9 <185146821+Lucenx9@users.noreply.github.com>
2ab2e31df8Simone committed on 10/11/2026, 12:40:37 PM· committed by GitHubparent086b758
29 files changedLine totals unavailable