Replace Composio Connect with project sessions - #165
Merged
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (25)
📝 WalkthroughWalkthroughComposio integration now uses project API keys and reusable Sessions. The server persists Session metadata, supports external secret storage, and exposes Session-based MCP and toolkit operations. Electron stores keys securely, while the UI and documentation use Composio Sessions terminology. ChangesComposio Sessions integration
Estimated code review effort: 4 (Complex) | ~60 minutes Sequence Diagram(s)sequenceDiagram
participant SettingsUI
participant ElectronIPC
participant ServerConfig
participant ComposioSessions
participant ClaudeDriver
SettingsUI->>ElectronIPC: setCredential("composioApiKey", value)
ElectronIPC->>ServerConfig: update Composio configuration
ServerConfig->>ComposioSessions: validate or create Session
ComposioSessions-->>ServerConfig: Session metadata
ServerConfig-->>ElectronIPC: configured status
ClaudeDriver->>ServerConfig: request Composio integration
ServerConfig->>ComposioSessions: retrieve Session MCP details
ComposioSessions-->>ClaudeDriver: MCP URL and x-api-key headers
Possibly related PRs
Suggested reviewers: ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
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.
What changed
Why
Fresh installs could not use connected apps because the UI still asked for the old Connect key, while current Composio projects use project API keys and Sessions. The old split-key setup also made onboarding needlessly confusing.
User impact
A self-hosting user now creates or copies one
ak_…project key, pastes it once, and connects providers from the Connected apps screen. Provider OAuth tokens remain in Composio; OpenMausBot stores only its project key and non-secret Session identifiers.The packaged desktop app encrypts the project key with the operating system credential store. Source/headless installs can use
COMPOSIO_API_KEY.Validation
pnpm test: 471 passed, 8 skippedpnpm typecheckpnpm check:electronpnpm buildpnpm package:preparegit diff --checkRemaining live check
One real provider authorization should be completed with a real Composio project key before marking this ready for merge.
Summary by CodeRabbit
New Features
Bug Fixes
Documentation