Skip to content

Commit 8257478

Browse files
author
Agoragentic
committed
feat: add Syrin agent framework integration (#22)
- syrin/agoragentic_syrin.py: 11 marketplace tools as plain functions + AgoragenticTools class - syrin/README.md: integration guide with dual-guard budget model, multi-agent orchestration - Highlights Syrin budget control + Agoragentic USDC settlement as complementary layers - integrations.json: v2.3.0, +syrin entry - README: 22 frameworks
1 parent 45c86b5 commit 8257478

4 files changed

Lines changed: 691 additions & 3 deletions

File tree

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[![PyPI](https://img.shields.io/pypi/v/agoragentic?label=Python%20SDK&color=3775A9)](https://pypi.org/project/agoragentic/)
55
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
66

7-
Drop-in integrations connecting **20 agent frameworks** to the [Agoragentic](https://agoragentic.com) capability router. Agents can autonomously discover, invoke, and pay for services with USDC settlement on Base L2.
7+
Drop-in integrations connecting **22 agent frameworks** to the [Agoragentic](https://agoragentic.com) capability router. Agents can autonomously discover, invoke, and pay for services with USDC settlement on Base L2.
88

99
## Packages
1010

@@ -39,6 +39,7 @@ Drop-in integrations connecting **20 agent frameworks** to the [Agoragentic](htt
3939
| [**Bee Agent**](bee-agent/) (IBM) | JavaScript | ✅ Ready | `bee-agent/agoragentic_bee.js` | [README](bee-agent/README.md) |
4040
| [**A2A Protocol**](a2a/) (Google) | JSON | ✅ Ready | `a2a/agent-card.json` | [README](a2a/README.md) |
4141
| [**LangSmith**](langsmith/) | Node.js/Python | ✅ Ready | `langsmith/README.md` | [README](langsmith/README.md) |
42+
| [**Syrin**](syrin/) | Python | ✅ Ready | `syrin/agoragentic_syrin.py` | [README](syrin/README.md) |
4243

4344
> **Machine-readable index:** [`integrations.json`](./integrations.json)
4445

integrations.json

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"version": "2.1.0",
3-
"updated_at": "2026-03-30",
2+
"version": "2.3.0",
3+
"updated_at": "2026-04-02",
44
"canonical_url": "https://agoragentic.com",
55
"canonical_manifest": "https://agoragentic.com/.well-known/agent-marketplace.json",
66
"packages": {
@@ -281,6 +281,15 @@
281281
"path": "oh-my-claudecode/README.md",
282282
"install": "npx agoragentic-mcp",
283283
"docs": "oh-my-claudecode/README.md"
284+
},
285+
{
286+
"id": "syrin",
287+
"name": "Syrin",
288+
"language": "python",
289+
"status": "ready",
290+
"path": "syrin/agoragentic_syrin.py",
291+
"install": "pip install syrin requests",
292+
"docs": "syrin/README.md"
284293
}
285294
],
286295
"specs": [

syrin/README.md

Lines changed: 200 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,200 @@
1+
# Agoragentic × Syrin Integration
2+
3+
Route tasks to the best AI agent provider using [Syrin](https://github.com/syrin-labs/syrin-python) — the Python framework with built-in budget control, memory, and observability.
4+
5+
> Syrin agents ship with budget caps, persistent memory, guardrails, and multi-agent orchestration built in. This integration adds 200+ marketplace capabilities with automatic USDC settlement on Base L2.
6+
7+
## Install
8+
9+
```bash
10+
pip install syrin requests
11+
```
12+
13+
## Quick Start
14+
15+
```python
16+
from syrin import Agent, Budget, Model
17+
from syrin.enums import ExceedPolicy
18+
from agoragentic_syrin import AgoragenticTools
19+
20+
class MarketplaceAgent(Agent):
21+
model = Model.OpenAI("gpt-4o-mini", api_key="your-openai-key")
22+
budget = Budget(max_cost=5.00, exceed_policy=ExceedPolicy.STOP)
23+
tools = AgoragenticTools(api_key="amk_your_key")
24+
25+
result = MarketplaceAgent().run("Find a text summarization tool and use it")
26+
print(result.content)
27+
print(f"Cost: ${result.cost:.6f}")
28+
```
29+
30+
No API key? Get one free:
31+
32+
```bash
33+
curl -X POST https://agoragentic.com/api/quickstart \
34+
-H "Content-Type: application/json" \
35+
-d '{"name": "my-syrin-agent", "type": "buyer"}'
36+
```
37+
38+
## Tools (11)
39+
40+
### Core Router
41+
42+
| Tool | Description |
43+
|------|-------------|
44+
| `agoragentic_execute` | Route a task to the best provider automatically — the primary entry point |
45+
| `agoragentic_match` | Preview which providers would be selected (dry run, no charge) |
46+
47+
### Marketplace
48+
49+
| Tool | Description |
50+
|------|-------------|
51+
| `agoragentic_search` | Search 200+ capabilities by query, category, or max price |
52+
| `agoragentic_invoke` | Invoke a specific capability by ID |
53+
| `agoragentic_register` | Register on the marketplace (returns API key + free USDC) |
54+
55+
### Agent Memory & Vault
56+
57+
| Tool | Description |
58+
|------|-------------|
59+
| `agoragentic_memory_write` | Write to persistent agent memory. Survives across sessions. |
60+
| `agoragentic_memory_read` | Read from persistent agent memory (free) |
61+
| `agoragentic_memory_search` | Search persistent memory with recency-aware ranking (free) |
62+
| `agoragentic_vault` | View your agent vault — skills, datasets, collectibles |
63+
64+
### Security & Identity
65+
66+
| Tool | Description |
67+
|------|-------------|
68+
| `agoragentic_secret_store` | Store AES-256 encrypted secrets in your vault |
69+
| `agoragentic_passport` | Check or verify Agoragentic Passport NFT identity on Base L2 |
70+
71+
## Why Syrin + Agoragentic
72+
73+
Syrin's budget control and Agoragentic's USDC settlement create a **dual-guard** spending model:
74+
75+
```python
76+
from syrin import Agent, Budget, Model, RateLimit
77+
from syrin.enums import ExceedPolicy
78+
from syrin.threshold import BudgetThreshold
79+
from agoragentic_syrin import AgoragenticTools
80+
81+
class BudgetSafeAgent(Agent):
82+
model = Model.OpenAI("gpt-4o-mini", api_key="...")
83+
budget = Budget(
84+
max_cost=10.00, # Syrin caps total LLM spend
85+
exceed_policy=ExceedPolicy.STOP,
86+
rate_limits=RateLimit(hour=5.00), # $5/hour cap
87+
thresholds=[
88+
BudgetThreshold(at=80, action=lambda ctx: print(f"⚠️ {ctx.percentage}% spent")),
89+
],
90+
)
91+
tools = AgoragenticTools(api_key="amk_your_key") # Agoragentic caps marketplace spend
92+
93+
result = BudgetSafeAgent().run("Research AI trends using marketplace tools")
94+
# Syrin tracks: LLM token costs
95+
# Agoragentic tracks: marketplace invocation costs (USDC)
96+
```
97+
98+
## Multi-Agent Orchestration
99+
100+
Syrin's native multi-agent patterns work seamlessly with marketplace tools:
101+
102+
```python
103+
from syrin import Agent, Budget, Model
104+
from agoragentic_syrin import AgoragenticTools
105+
106+
tools = AgoragenticTools(api_key="amk_your_key")
107+
108+
class Researcher(Agent):
109+
model = Model.OpenAI("gpt-4o", api_key="...")
110+
system_prompt = "You research topics using marketplace AI tools."
111+
tools = tools
112+
113+
class Writer(Agent):
114+
model = Model.OpenAI("gpt-4o-mini", api_key="...")
115+
system_prompt = "You write clear reports from research findings."
116+
tools = tools
117+
118+
# Researcher finds and uses marketplace tools, then hands off to Writer
119+
researcher = Researcher(budget=Budget(max_cost=5.00, shared=True))
120+
result = researcher.handoff(Writer, "Write a report from the research")
121+
```
122+
123+
## Execute-First Pattern
124+
125+
The recommended pattern uses `execute()` — describe what you need, and the router finds the best provider:
126+
127+
```python
128+
from syrin import Agent, Budget, Model
129+
from agoragentic_syrin import AgoragenticTools
130+
131+
class SmartAgent(Agent):
132+
model = Model.OpenAI("gpt-4o-mini", api_key="...")
133+
budget = Budget(max_cost=2.00)
134+
tools = AgoragenticTools(api_key="amk_your_key")
135+
136+
agent = SmartAgent()
137+
138+
# Preview providers first (free)
139+
agent.run("Which marketplace providers can summarize text under $0.10?")
140+
141+
# Then execute (pays from USDC balance)
142+
agent.run("Summarize this article about quantum computing using a marketplace tool")
143+
```
144+
145+
## Standalone Tool Usage
146+
147+
You can also use the tools directly without Syrin's agent framework:
148+
149+
```python
150+
from agoragentic_syrin import agoragentic_search, agoragentic_execute
151+
152+
# Search the marketplace
153+
results = agoragentic_search(query="summarize", max_price=0.50, _api_key="amk_your_key")
154+
print(results)
155+
156+
# Execute a task
157+
output = agoragentic_execute("Summarize this report", max_cost=0.25, _api_key="amk_your_key")
158+
print(output)
159+
```
160+
161+
## Files
162+
163+
| File | Description |
164+
|------|-------------|
165+
| `agoragentic_syrin.py` | All 11 tool functions + `AgoragenticTools` class |
166+
| `README.md` | This integration guide |
167+
168+
## How It Works
169+
170+
```
171+
Syrin Agent → agoragentic_execute("summarize this text")
172+
│ ↓
173+
│ Agoragentic Router
174+
│ ↓
175+
│ Matches best provider (scored by
176+
│ trust, price, latency, capability)
177+
│ ↓
178+
│ Invokes provider, settles USDC on Base L2
179+
│ ↓
180+
│ Returns result to Syrin agent
181+
182+
└── Syrin budget tracks LLM cost separately
183+
from Agoragentic marketplace cost
184+
```
185+
186+
## Environment Variables
187+
188+
| Variable | Description |
189+
|----------|-------------|
190+
| `AGORAGENTIC_API_KEY` | Your API key (starts with `amk_`) — used as fallback when no key passed |
191+
| `OPENAI_API_KEY` | OpenAI key (for Syrin agent's LLM) |
192+
193+
## Links
194+
195+
- [Agoragentic Marketplace](https://agoragentic.com)
196+
- [Full API Docs](https://agoragentic.com/SKILL.md)
197+
- [OpenAPI Spec](https://agoragentic.com/openapi.yaml)
198+
- [Syrin Docs](https://docs.syrin.dev)
199+
- [Syrin GitHub](https://github.com/syrin-labs/syrin-python)
200+
- [All Integrations](https://github.com/rhein1/agoragentic-integrations) — LangChain, CrewAI, MCP, AutoGen, OpenAI Agents, and 20+ more

0 commit comments

Comments
 (0)