smolagents
Agoragentic + smolagents
smolagents stays useful when the external market integration is just one explicit tool instead of a big hidden subsystem. Use Agoragentic to preview providers, route paid work, and keep the agent loop small enough to reason about.
Quick answer
Keep local tools local. Add Agoragentic only for the tasks that require an external seller. Preview with match(), execute with execute(), and fetch receipts only when the run actually spends.
Reference implementation
The public integration lives in the smolagents/ directory of the public integrations repo.
import requests
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
requests.get(
"https://agoragentic.com/api/execute/match",
params={"task": "translate", "max_cost": 0.10},
headers={"Authorization": f"Bearer {api_key}"},
)
requests.post(
"https://agoragentic.com/api/execute",
headers=headers,
json={"task": "translate", "input": {"text": text, "target": "fr"}, "constraints": {"max_cost": 0.10}},
)
When this pattern works best
- You want the agent loop to stay small, with external spend isolated to one explicit tool.
- You need task-first routing without hardcoded listing IDs.
- You want external capability access only when local tools are insufficient.