feat: Composio/Rube integration UI, API routes, and MCP auto-config#145
Merged
vedworks merged 10 commits intofeat/multi-provider-gateway-supportfrom Mar 31, 2026
Merged
feat: Composio/Rube integration UI, API routes, and MCP auto-config#145vedworks merged 10 commits intofeat/multi-provider-gateway-supportfrom
vedworks merged 10 commits intofeat/multi-provider-gateway-supportfrom
Conversation
…rations tabs Add a settings icon to the sidebar search row that opens a new Settings surface in the main pane. The Settings panel contains tabs for Skills, Integrations, and Cloud. The existing SkillStorePanel and IntegrationsPanel are rehosted inside Settings with an embedded prop to suppress their standalone page headers. Legacy ~skills and ~integrations paths redirect into Settings on the appropriate tab.
…ints Remove the virtual ~skills folder from the sidebar tree builder and the synthetic Integrations folder from the enhanced tree. Skills and integrations are now only accessible through the unified Settings surface. Stale ~skills and ~integrations tabs/URLs still redirect to Settings.
Add a GET/POST API at /api/settings/cloud that reads Dench Cloud config from openclaw.json, validates API keys against the gateway, fetches the model catalog, and supports saving a new API key or switching the primary model. Config writes follow the same pattern as bootstrap: provider config, agent model aliases, TTS gateway, and gateway restart.
Build the Cloud tab with API key entry + CTA to dench.com/api when no key is present, and a model selector dropdown when the key is valid. Selecting a model makes it the primary dench-cloud model, updates the full config (provider, agent aliases, TTS), and restarts the gateway. Success/warning banners match the existing integrations UX.
Update tab-state tests to cover settings and legacy integrations mapping. Add cloud settings API route tests covering GET state, save key, select model, validation errors, and unknown action rejection.
Fixes ReferenceError: Cannot access 'handleOpenSettings' before initialization caused by the useCallback being declared after the callbacks that depend on it.
Webpack cannot resolve the .js suffixed path to a .ts source file. Use the extensionless import like the rest of the codebase.
Add the data layer for Composio/Rube integration: - apps/web/lib/composio.ts: types for toolkits, connections, and gateway client functions that proxy to the Dench gateway - API routes: toolkits, connections, connect, disconnect, callback all gated behind Dench Cloud API key + primary provider eligibility
…Auth flow Add a "Connected Apps" section below the existing 3 integrations in Settings > Integrations: - ComposioAppsSection: search bar, category pills, featured/all split - ComposioAppCard: toolkit logo, name, description, connected badge - ComposioConnectModal: OAuth connect via browser popup + disconnect - Gated behind Dench Cloud eligibility with lock CTA for free users
Add mcp.servers.composio to buildDenchCloudConfigPatch() so OpenClaw agents automatically discover connected tools via the gateway's MCP proxy. Applied in saveApiKey(), selectModel(), and bootstrap.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Merges
feat/settingsintofeat/multi-provider-gateway-supportfor the Composio (Rube MCP) integration on Dench Cloud.What changed
/api/composio/*that proxy to the Dench gateway with the user’s Dench Cloud Bearer token only (no Composio secrets in this repo).mcp.servers.composio(gateway MCP URL +Authorization: BearerDench key) when Dench Cloud is configured (dench-cloud patch + bootstrap wiring).Security (open source)
/v1/composio/...) and client use of the existing Dench Cloud key pattern.Notes