Tell the agent about the connected apps in the system prompt - #36
Conversation
milind-soni
left a comment
There was a problem hiding this comment.
The intent is good, but this hint is currently gated only on integrations.composio. startTurn sets that integration for every provider whenever a key exists, while server/drivers/claude.ts is the only driver that mounts the Composio MCP server; Codex, Grok, and ACP drivers ignore it. That means this change would tell non-Claude bots to call tools they do not have. Please gate both the integration/prompt through an explicit capability (preferred), or at minimum restrict this prompt to the Claude driver until other drivers mount Composio.
When a Composio key is configured the Claude driver mounts the Connect MCP server and pre-allows its tools, but the persona never mentions it — so the model does not link "can you read my email?" to the composio tools it is holding, and answers that it has no access. Add the line, gated the way the computer and agents hints already are: a composioMcp capability the driver declares, which gates the integration itself. A key in the config says the user has those connections, not that this engine can reach them — Codex, Grok and the ACP drivers ignore integrations.composio, and must not be told otherwise. Tests: Claude mounts and claims it; ACP claims neither.
522d7ca to
595be3a
Compare
|
Warning Review limit reached
Next review available in: 34 minutes Limit details: You’ve used all 3 included reviews currently available under your plan. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThe provider capability contract now identifies Composio MCP support. The Claude driver enables this capability, ACP coverage confirms it remains disabled, and server wiring gates Composio credentials and prompt text on the selected adapter’s capability. ChangesComposio MCP capability gating
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This localized prompt change makes the existing connected-app tools discoverable to the agent without altering permissions or runtime behavior; no actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
You are right, and thank you — gating on
Tests:
|
milind-soni
left a comment
There was a problem hiding this comment.
The requested provider-capability gating is now implemented: Composio configuration and prompt guidance are exposed only through adapters that declare composioMcp support. I refreshed the branch on current main while preserving both ACP/Droid test coverage, then verified the full test/build suite and the hosted macOS, Ubuntu, Windows, and Linux package-smoke matrix.
The system-prompt hint added in #36 tells every Composio-enabled bot to "run it with COMPOSIO_EXECUTE_TOOL". That tool does not exist. Queried the live endpoint the driver mounts (connect.composio.dev/mcp) with the repo's own key: tools/list returns seven tools, and calling COMPOSIO_EXECUTE_TOOL answers `-32602: Tool COMPOSIO_EXECUTE_TOOL not found`. The executor is COMPOSIO_MULTI_EXECUTE_TOOL, and the real flow has a middle step the hint skipped — a tool's arguments come from COMPOSIO_GET_TOOL_SCHEMAS. So the hint sent bots to a dead name on the one path it was written to unblock: a bot that trusts it burns its turn on a -32602 and then tells the user it has no access, which is exactly the outcome #36 set out to prevent. Now: SEARCH_TOOLS -> GET_TOOL_SCHEMAS -> MULTI_EXECUTE_TOOL. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
|
Heads-up after this merged: the prompt line named Fixed in #126 (merged): the hint now says SEARCH_TOOLS → GET_TOOL_SCHEMAS → MULTI_EXECUTE_TOOL. The idea was right — a bot that doesn't know it has connected apps tells the user it has no access — it just needed the real tool names. |
When a Composio key is configured the harness mounts the Connect MCP server and pre-allows its tools, but the persona never mentions it — the computer and agents integrations each get a line, Composio gets none.
The result is that the model does not link a request like "can you read my email?" to the
mcp__composio__*tools it is holding. It answers that it has no access, or starts hunting for an unrelated integration to authorize, while a working Gmail connection sits one tool call away.Asked the same question before and after this line: before, the bot said it had no access and suggested authorizing a different connector; after, it searched the toolkits, ran the tool and answered from the mailbox.
One line, in the same shape as the two beside it.
pnpm typecheck && pnpm testpass.Summary by CodeRabbit
New Features
Bug Fixes
Tests