Tutorial Composio: Platform Integrasi Tool untuk AI Agents
Composio adalah platform open-source yang memungkinkan AI agents terhubung dengan lebih dari 250+ tools dan aplikasi eksternal seperti GitHub, Slack, Gmail, Google Sheets, Jira, dan banyak lagi. Dengan Composio, Anda bisa membangun AI agents yang tidak hanya bisa berpikir, tetapi juga bertindak langsung di dunia nyata melalui integrasi API yang aman dan terkelola.
Dalam tutorial ini, kita akan mempelajari cara menggunakan Composio mulai dari instalasi, autentikasi, hingga membangun AI agent yang bisa berinteraksi dengan berbagai tools secara otomatis.
Mengapa Composio?
Membangun AI agent yang bisa berinteraksi dengan tools eksternal biasanya memerlukan banyak boilerplate code: mengelola OAuth tokens, menulis wrapper API, menangani rate limiting, dan memastikan keamanan. Composio menyelesaikan semua masalah ini dengan menyediakan:
- Managed Authentication: OAuth2, API Key, dan Basic Auth dikelola secara otomatis
- 250+ Pre-built Integrations: GitHub, Slack, Gmail, Notion, Jira, Linear, Google Drive, dan banyak lagi
- Framework Agnostic: Mendukung LangChain, CrewAI, AutoGen, LlamaIndex, OpenAI, dan framework lainnya
- Type-safe Actions: Setiap tool action memiliki schema yang jelas untuk input dan output
- Execution Environment: Mendukung eksekusi lokal, Docker, dan cloud
Instalasi
Instalasi Python SDK
pip install composio-core
Untuk integrasi dengan framework spesifik, install paket tambahan:
# Untuk OpenAI
pip install composio-openai
Untuk LangChain
pip install composio-langchain
Untuk CrewAI
pip install composio-crewai
Untuk Autogen
pip install composio-autogen
Untuk LlamaIndex
pip install composio-llamaindex
Instalasi CLI
Composio menyediakan CLI untuk mengelola koneksi dan tools:
pip install composio-core
Login ke Composio
composio login
Cek status
composio whoami
Setup API Key
Setelah login, Anda bisa mendapatkan API key dari dashboard Composio:
export COMPOSIOAPIKEY="your-api-key-here"
Atau simpan di file .env:
COMPOSIOAPIKEY=your-api-key-here
Basic Usage
Menghubungkan App
Langkah pertama adalah menghubungkan aplikasi yang ingin digunakan oleh agent. Composio mengelola proses OAuth secara otomatis:
from composio import ComposioToolSet, App, Action
Inisialisasi toolset
toolset = ComposioToolSet()
Memulai koneksi ke GitHub
Ini akan membuka browser untuk OAuth authorization
entity = toolset.getentity(id="default")
connectionrequest = entity.initiateconnection(
appname=App.GITHUB
)
print(f"Buka URL ini untuk authorize: {connectionrequest.redirectUrl}")
print(f"Connection status: {connectionrequest.connectionStatus}")
Untuk CLI, proses koneksi lebih sederhana:
# Menambahkan koneksi GitHub
composio add github
Menambahkan koneksi Slack
composio add slack
Melihat daftar koneksi aktif
composio connections
Menggunakan Tools dengan OpenAI
Berikut contoh sederhana menggunakan Composio dengan OpenAI untuk membuat agent yang bisa berinteraksi dengan GitHub:
from composioopenai import ComposioToolSet, Action
from openai import OpenAI
Inisialisasi
client = OpenAI()
toolset = ComposioToolSet()
Ambil tools untuk GitHub
tools = toolset.get
tools(actions=[
Action.GITHUBCREATEISSUE,
Action.GITHUBLISTREPOS,
Action.GITHUBSTARREPO,
])
Buat request ke OpenAI dengan tools
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{
"role": "system",
"content": "Kamu adalah asisten yang bisa membantu mengelola GitHub repositories."
},
{
"role": "user",
"content": "Buatkan issue baru di repo 'myorg/myproject' dengan judul 'Fix login bug' dan deskripsi 'Login page returns 500 error when using SSO'"
}
],
tools=tools,
toolchoice="auto"