## Summary Depends on #3492. This completes the Phase 2 migration by removing the transitional version-file layer and making `mise.toml` plus `mise.lock` the repository toolchain source of truth. It also moves runtime test matrices into `toolchain-versions.json`, so CI matrix changes are explicit and reviewable without reintroducing `.nvmrc`, `.dvmrc`, `.bun-version`, or `.python-version`. The Node.js e2e matrix now starts at the latest Node 22 LTS line and also covers the latest Node 24 and Node 25 lines. That removes Node 20 from the well-known e2e versions while keeping us covered on the runtimes SDK users are moving toward. ## Rationale Phase 1 introduced mise side by side with the existing version files to keep the first PR low-risk. Phase 2 removes that compatibility layer so there is one place to update tool versions. That avoids silent drift between local setup, GitHub Actions, Docker E2E images, release docs, and install-time checks. The composite setup actions now install Node, Bun, Python, and uv through mise by default, with explicit version overrides only where a matrix needs them. New GitHub actions added in this PR are pinned by release commit SHA and include the release version comment. ## What changed - Deleted the transitional root/version files: `.nvmrc`, `.bun-version`, `.dvmrc`, root `.python-version`, and `python/.python-version`. - Removed `idiomatic_version_file_enable_tools` from `mise.toml` and added a committed `mise.lock` for linux/macOS x64/arm64 tool resolution. - Replaced `BYPASS_BUN_VERSION_CHECK` with `BYPASS_TOOLCHAIN_CHECK`, and made Docker E2E image installs use that bypass because they receive explicit build args instead of installing mise. - Updated Node/Bun and Python/uv composite actions to default to mise, remove `*-version-file` inputs, report resolved versions, and cache pnpm after `corepack enable`. - Centralized CI runtime matrices in `toolchain-versions.json` for TS E2E, Python tests, and CLI npm fallback coverage. - Updated the Node E2E matrix to `22.22.3`, `24.16.0`, and `25.9.0`, removing Node 20 from the well-known runtime versions. - Updated workflows, docs, E2E helpers, Dockerfiles, and release guidance to reference `mise.toml` / `mise.lock`. ## Verification - Verified latest Node 22/24/25 releases from the official Node dist index: `22.22.3`, `24.16.0`, `25.9.0` (https://nodejs.org/dist/index.json). - `pnpm install --frozen-lockfile` - `pnpm --filter @e2e-tests/utils typecheck` - `pnpm --filter @e2e-tests/utils exec tsc --noEmit --target es2022 --module esnext --moduleResolution bundler --types bun --resolveJsonModule --skipLibCheck --strict scripts/docker-build.ts` - `bash -n ts/scripts/pre-install.sh && bun run ts/scripts/pre-install/check-toolchain.ts && BYPASS_TOOLCHAIN_CHECK=1 bash ts/scripts/pre-install.sh` - `pnpm exec prettier --check ...` on touched YAML/Markdown/TS/JSON files - `ruby -e "require \"yaml\"; ARGV.each { |f| YAML.load_file(f) }" ...` on touched actions/workflows - `mise lock --platform linux-x64,linux-arm64,macos-arm64,macos-x64 && git diff --exit-code mise.lock` - `mise exec node@22.22.3 -- pnpm --filter @e2e-tests/utils typecheck` - `mise exec node@22.22.3 -- pnpm --filter @e2e-tests/node-esm-basic typecheck` - `mise exec node@22.22.3 -- pnpm --filter @e2e-tests/node-cjs-basic typecheck` - `docker manifest inspect node:24.16.0-slim` - `docker manifest inspect node:25.9.0-slim` - `git diff --check`
Composio SDK v3 Documentation
Composio SDK is a powerful toolkit that enables you to integrate third-party tools and services into your applications. This SDK helps you connect to various services (toolkits), execute tools, and manage user connections seamlessly.
Table of Contents
- Overview
- Installation
- Core Concepts
- Getting Started
- API Reference
- Providers
- Examples
- Advanced Topics
- Internal Documentation
Overview
Composio SDK allows you to:
- Execute tools from various services (like GitHub, Gmail, Slack, etc.)
- Manage user connections to external services
- Create session-scoped custom tools
- Implement triggers and event handlers
- Integrate with AI providers like OpenAI
The SDK is designed to be flexible and extensible, allowing you to integrate it into various types of applications.
Installation
npm install @composio/core
Core Concepts
The Composio SDK is built around several key concepts:
- UserIds: Unique identifier for a user in your application (eg. UUID for a user in your database)
- Tools: Individual actions that can be performed (e.g., "Get GitHub Repository", "Send Email")
- Toolkits: Collections of related tools (e.g., GitHub, Gmail)
- Connected Accounts: User connections to external services
- Auth Configs: Authentication configurations for external services
- Providers: Adapters for AI services that can use tools (e.g., OpenAI)
- Custom Tools: Session-scoped local tools created with
experimental_createTool - MCP: Create and manage MCP Servers and clients
Check out the Core Concepts documentation for more detailed information.
Getting Started
Here's a quick example of how to use the Composio SDK:
import { Composio } from '@composio/core';
// Initialize the SDK
const composio = new Composio({
apiKey: 'your-api-key',
});
// Get tools from a specific toolkit
const tools = await composio.tools.get('default', {
toolkits: ['github'],
});
// Execute a tool
const result = await composio.tools.execute('GITHUB_GET_REPO', {
userId: 'default',
arguments: {
owner: 'composio',
repo: 'sdk',
},
});
console.log(result.data);
For more detailed examples and tutorials, check out the Getting Started guide.
API Reference
The complete API reference documentation is available here:
- Composio Class
- Tools
- Toolkits
- Connected Accounts
- Auth Configs
- Providers
- MCP
- ToolRouter
- Tool Router Session Files
Providers
Composio SDK comes with built-in support for different providers:
Non-Agentic Providers
- OpenAI Provider - OpenAI integration with GPT-4, GPT-3.5, etc.
- Anthropic Provider - Anthropic Claude integration
- Google Provider - Google Gemini integration
- Cloudflare Provider - Cloudflare Workers AI integration
Agentic Providers
- LangChain Provider - LangChain integration with LCEL support
- Mastra Provider - Agentic provider for autonomous behavior
- Vercel Provider - Vercel AI SDK integration
Examples
Check out our examples directory for complete code samples:
Advanced Topics
Internal Documentation
For SDK maintainers and contributors:
- Configuration and Environment Variables - Detailed guide on SDK configuration
- Triggers Implementation - Internal workings of the trigger system