Skip to content

CI probe for GCWing/OpenBitFun#3086 (identical commit) - #1

Closed
TunaTung wants to merge 1 commit into
mainfrom
fix/acp-subagent-tool-exposure
Closed

TunaTung wants to merge 1 commit into
mainfrom
fix/acp-subagent-tool-exposure

Conversation

@TunaTung

Copy link
Copy Markdown
Owner

Throwaway PR opened only to run this repository's own CI on the exact commit submitted to GCWing#3086, because the submitting machine has no Rust toolchain. Identical tree; will be closed once the checks report.

An ACP client with `subagent.enabled` is registered as a tool
(`acp__<client>__prompt`), but no Agent manifest ever listed that tool name, and
`resolve_tool_manifest_policy` only exposes tools contained in the manifest
allowlist. An ACP subagent the user explicitly enabled therefore stayed
unreachable for the model, while the settings page kept showing it as
configured and running.

Append registered ACP tools alongside the existing dynamic MCP merge, and keep
ACP tools out of remote-workspace sessions, where they cannot run because
`AcpAgentTool::call_impl` never forwards a remote connection id.

`get_agent_tool_policy` is the only place that builds an agent's tool allowlist
(execution engine, tool catalog, MCP catalog, plugin host and skill snapshots
all consume it), so merging there covers every consumer. The merge order is
extracted into `merge_dynamic_mode_tools` so a unit test fails if the ACP
merge is ever dropped again.

The tool-name prefixes stay local string constants: the canonical
`openbitfun_agent_tools::{ACP_TOOL_PREFIX, MCP_TOOL_PREFIX}` sit behind that
crate's `acp-bridge` / `mcp-bridge` features, which `openbitfun-core` does not
enable, so this module also compiles under `agent-runtime` alone.
@TunaTung
TunaTung force-pushed the fix/acp-subagent-tool-exposure branch from f16bf78 to ea6ec85 Compare September 17, 2026 12:48
@TunaTung TunaTung closed this Sep 17, 2026
@TunaTung
TunaTung deleted the fix/acp-subagent-tool-exposure branch September 18, 2026 06:54
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