Intégration Composio
Scavio est livré comme un package d'outils personnalisé pour Composio, la couche d'outils qui connecte vos agents aux services externes à travers tous les principaux frameworks. Construisez le package d'outils Scavio, liez-le à une session Composio, et n'importe quel agent propulsé par Composio bénéficie d'une recherche en temps réel sur Google, YouTube, Amazon, Walmart, Reddit, TikTok et Instagram — un seul package, une seule clé API. Disponible à la fois pour Python et TypeScript.
Prérequis
- Python 3.9 ou ultérieur, ou Node.js 18 ou ultérieur.
- Une clé API Scavio depuis dashboard.scavio.dev.
- Une clé API Composio depuis app.composio.dev.
Installation
# Python
pip install composio composio-scavio
# TypeScript
npm install @composio/core composio-scavioLes deux packages encapsulent le SDK Scavio officiel et exposent chaque point de terminaison comme un outil personnalisé Composio, regroupés sous un seul package d'outils SCAVIO.
Définir vos clés API
export SCAVIO_API_KEY=sk_live_your_key
export COMPOSIO_API_KEY=your_composio_keyLe package d'outils lit SCAVIO_API_KEY depuis l'environnement. Vous pouvez aussi la passer explicitement lorsque vous construisez le package d'outils.
Démarrage rapide (Python)
from composio import Composio
from composio_scavio import build_scavio_toolkit
composio = Composio()
scavio = build_scavio_toolkit() # reads SCAVIO_API_KEY
session = composio.create(
user_id="user_1",
experimental={"custom_toolkits": [scavio]},
)
# Hand the tools to your agent, or call one directly:
result = session.execute(
"SCAVIO_GOOGLE_SEARCH",
arguments={"query": "best search API for AI agents", "light_request": True},
)
print(result)Démarrage rapide (TypeScript)
import { Composio } from "@composio/core";
import { buildScavioToolkit } from "composio-scavio";
const composio = new Composio();
const scavio = buildScavioToolkit(); // reads SCAVIO_API_KEY
const session = await composio.create("user_1", {
experimental: { customToolkits: [scavio] },
});
const out = await session.execute("LOCAL_SCAVIO_GOOGLE_SEARCH", {
query: "best search API for AI agents",
light_request: true,
});
console.log(out);Activer uniquement les fournisseurs dont vous avez besoin
Chaque fournisseur est activé par défaut. Chacun est contrôlé par un indicateur, ce qui vous permet d'exposer une liste d'outils réduite au modèle :
# Python: web-only toolkit (Google, YouTube, Reddit)
scavio = build_scavio_toolkit(
enable_google=True,
enable_youtube=True,
enable_reddit=True,
enable_amazon=False,
enable_walmart=False,
enable_tiktok=False,
enable_instagram=False,
)// TypeScript: same idea
const scavio = buildScavioToolkit({
enableGoogle: true,
enableYoutube: true,
enableReddit: true,
enableAmazon: false,
enableWalmart: false,
enableTiktok: false,
enableInstagram: false,
});Passez all=True (Python) ou { all: true } (TypeScript) pour enregistrer chaque outil indépendamment des indicateurs individuels.
Slugs des outils
Les outils sont regroupés sous le package d'outils SCAVIO. Le slug présenté à l'agent est le slug du package d'outils suivi du nom de l'outil. En Python, le slug est SCAVIO_GOOGLE_SEARCH ; en TypeScript, Composio ajoute son préfixe réservé LOCAL_ pour les outils personnalisés, de sorte que le même outil devient LOCAL_SCAVIO_GOOGLE_SEARCH. Utilisez la forme correspondante lorsque vous appelez session.execute(...).
Outils disponibles
Chaque point de terminaison Scavio est exposé comme un outil préfixé par le fournisseur (32 au total). Les slugs ci-dessous omettent le préfixe SCAVIO_ / LOCAL_SCAVIO_ par souci de concision.
| Fournisseur | Outils |
|---|---|
GOOGLE_SEARCH | |
| Amazon | AMAZON_SEARCH, AMAZON_PRODUCT |
| Walmart | WALMART_SEARCH, WALMART_PRODUCT |
| YouTube | YOUTUBE_SEARCH, YOUTUBE_METADATA |
REDDIT_SEARCH, REDDIT_POST | |
| TikTok | TIKTOK_PROFILE, TIKTOK_USER_POSTS, TIKTOK_VIDEO, TIKTOK_VIDEO_COMMENTS, TIKTOK_COMMENT_REPLIES, TIKTOK_SEARCH_VIDEOS, TIKTOK_SEARCH_USERS, TIKTOK_HASHTAG, TIKTOK_HASHTAG_VIDEOS, TIKTOK_USER_FOLLOWERS, TIKTOK_USER_FOLLOWINGS |
INSTAGRAM_PROFILE, INSTAGRAM_USER_POSTS, INSTAGRAM_USER_REELS, INSTAGRAM_USER_TAGGED, INSTAGRAM_USER_STORIES, INSTAGRAM_POST, INSTAGRAM_POST_COMMENTS, INSTAGRAM_COMMENT_REPLIES, INSTAGRAM_SEARCH_USERS, INSTAGRAM_SEARCH_HASHTAGS, INSTAGRAM_USER_FOLLOWERS, INSTAGRAM_USER_FOLLOWINGS |
Comment ça marche
Chaque outil renvoie la réponse Scavio sous forme d'objet JSON que le modèle peut lire directement. Les appels passent par le SDK Scavio officiel, qui gère l'authentification, la limitation de débit et le formatage des requêtes. Comme les outils s'exécutent dans le processus, vous fournissez votre propre clé API Scavio — Composio ne relaie pas la requête.
Coûts en crédits
La plupart des appels coûtent 1 crédit. Reddit et Instagram coûtent 2 crédits, et Google coûte 2 lorsque light_request=false. Consultez la référence des limites de débit pour les limites de plan et la référence des erreurs pour les conseils de réessai.