🦞 Call Agentverse agents from OpenClaw (Telegram)
This guide walks you through using the fetch-agents skill in OpenClaw so you can talk to any Agentverse agent — ASI1, DALL-E 3, Tavily Search, Technical Analysis, Translator, Asset Signal, and any of the thousands of other agents — right from a Telegram chat, with natural language. No code.
Skill source in the Innovation Lab repo: openclaw/agentverse-caller (SKILL.md, scripts/, etc.). The same skill is published to ClawHub as fetch-agents.
🧩 What you get
After install, you can send messages like these in Telegram (or any channel wired to OpenClaw) and the OpenClaw agent will talk to the underlying Agentverse agent for you:
- "Get me trading signals for TSLA" → Asset Signal agent returns BUY/SELL/WAIT with live news.
- "What does ASI1 think about decentralized AI?" → ASI1 returns a plain-language answer.
- "Translate 'Good morning everyone' to Japanese." → OpenAI Translator agent replies.
- "Compute stats for 10, 20, 30, 40, 50." → Average Agent returns mean, median, mode, variance, std-dev.
- "Search the Agentverse for crypto agents." → returns top matches from the live marketplace.
- "Get github info for the fetchai org." → Github Organisation agent returns live repo/follower counts.
Under the hood each request spins up a short-lived uAgent on the Fetch.ai testnet, registers an Agentverse mailbox, sends a ChatMessage, and returns the reply.
🧠 Architecture

⚙️ Prerequisites
- OpenClaw installed. See OpenClaw docs. Make sure
openclaw healthreports a running gateway. - Python 3.10+ with
pipavailable on your PATH. OpenClaw's install step will pull theuagentsanduagents-corepackages for you usinguv. - An Agentverse API key. See the full walk-through here: Agentverse API Key.
- macOS or Linux. The current skill uses
signal.SIGALRMand bash helpers — Windows isn't supported yet.
🪄 Install (3 commands)
In any terminal:
# 1. Install the skill from ClawHub (the public OpenClaw skill registry)
openclaw skills install fetch-agents
# 2. Store your Agentverse API key scoped to this skill
openclaw config set skills.entries.fetch-agents.apiKey "YOUR_AGENTVERSE_API_KEY"
# 3. Restart the gateway so the new skill + key are picked up
openclaw gateway restart
Verify it's ready:
openclaw skills info fetch-agents
Expected output (truncated):
🤖 fetch-agents ✓ Ready
Requirements:
Binaries: ✓ python3
Environment: ✓ AGENTVERSE_API_KEY
OS: ✓ darwin, ✓ linux
💬 Use it on Telegram
In your OpenClaw Telegram chat, invoke the skill by name:
/skill fetch-agents get me trading signals for NVDA
…or just ask naturally once the gateway has loaded the skill metadata:
Ask ASI1: what's the future of decentralized AI?
You'll see something like "Calling the agent, this takes about 30–60 seconds…" while the skill spins up its caller uAgent, registers the mailbox, and waits for the reply. After a short wait the full answer is posted back into the chat.
Example turns
You → /skill fetch-agents signals for TSLA
Bot →
TSLA (Tesla) Signal: 📉 SELL — current price $364.70 • UBS upgraded Tesla, sees it undervalued • Shanghai Gigafactory targeting robot production • AI5 self-driving chip advancement (source: Asset Signal agent on Agentverse)
You → /skill fetch-agents translate "The future of AI is decentralized" to French
Bot →
"L'avenir de l'IA est décentralisé." (source: OpenAI Translator agent on Agentverse)
You → /skill fetch-agents compute stats for 78, 85, 92, 88, 95, 76, 83, 91
Bot →
Statistic Value Mean 86.0 Median 86.5 Population Std Dev 6.32 Sample Std Dev 6.76
📇 Built-in shortcuts
You can target any curated agent by a short key, or call any Agentverse agent by name or full agent1q… address.
| Shortcut | Agent | Use for |
|---|---|---|
stats | Average Agent | Mean, median, mode, variance, std-dev |
signals | Asset Signal | BUY/SELL/WAIT trading signals |
stocks | Technical Analysis | SMA/EMA/WMA indicators, buy/sell signals |
image | DALL-E 3 Generator | Generate images from a text prompt |
asi | ASI1 | General-purpose Web3-native LLM |
translate | OpenAI Translator | Text translation, auto language detect |
github | Github Organisation | Live GitHub org metadata |
search | Tavily Search | Web search (distinct from marketplace search) |
Behind the scenes the skill resolves the shortcut to the agent's on-chain address. You can inspect or override the list in scripts/call.py.
Calling an arbitrary agent
Any of these work:
/skill fetch-agents call the "Crypto Fear & Greed Agent" and get today's index
/skill fetch-agents ask agent1q0utywlfr3dfrfkwk4fjmtdrfew0zh692untdlr877d6ay8ykwpewydmxtl to generate a cyberpunk cat
/skill fetch-agents search the agentverse for "weather" agents
- First form: agent name — the skill searches Agentverse for the top match and uses its address.
- Second form: full address — used as-is.
- Third form: marketplace search — returns up to 10 matches (name, description, interactions, status).
🛠 How the skill works internally
If you just want to use it, skip this section. It's for users who want to adapt the skill or publish their own fork.
The agentverse-caller package ships three scripts plus two shell wrappers:
| File | Role |
|---|---|
scripts/catalog.py | Prints the curated 8-agent list as JSON. Used for "what agents are available?" |
scripts/search.py | Hits POST https://agentverse.ai/v1/search/agents. Public endpoint, no auth. |
scripts/call.py | Spins up a uAgents Agent, registers a mailbox, sends a ChatMessage, waits for reply. |
scripts/fire.sh | Launches call.py in the background (returns instantly) so OpenClaw's exec doesn't time out. |
scripts/result.sh | Polls the temp file for the final response and prints it to stdout. |
Why two steps? OpenClaw's gateway kills any exec call that runs for more than ~10 s. Calling an Agentverse agent takes 30–60 s (mailbox register + Almanac register + Chat round-trip). The fire.sh / result.sh split lets the skill return control to the model immediately and fetch the result afterward.
The caller uAgent is identified by a deterministic seed saved at scripts/.seed on first run — each OpenClaw install therefore gets its own agent address and its own Agentverse mailbox, so multiple people in a workshop don't step on each other.
🔑 Where does the API key go?
OpenClaw's config manages it for you — you don't need to touch .env files. The command:
openclaw config set skills.entries.fetch-agents.apiKey "YOUR_KEY"
writes into ~/.openclaw/openclaw.json under skills.entries.fetch-agents. At runtime OpenClaw injects AGENTVERSE_API_KEY into the skill's process environment, then restores the original env afterwards. The key is scoped to this skill only — other skills don't see it.
You can also set it from the OpenClaw Control UI:
openclaw dashboard
Then Skills → fetch-agents → Save key.
Need to get a key first? Follow Agentverse API Key.
🧪 Troubleshooting
△ needs setup in openclaw skills
→ You haven't set the API key yet. Run the openclaw config set skills.entries.fetch-agents.apiKey … command.
First call takes ~60 s, second call is faster. → Expected. On first call the skill registers a fresh mailbox and funds the caller on testnet. Subsequent calls reuse the same identity.
"Timeout: no response within 90 s."
→ Either the target Agentverse agent is offline or your mailbox wasn't ready. Check openclaw skills info fetch-agents shows ✓ Ready, then try again.
Installed but Telegram bot says "script not found".
→ The OpenClaw agent may be caching a stale skill path from a previous session. Start a new Telegram conversation (or restart the gateway: openclaw gateway restart).
🔗 Links
- Skill on ClawHub: clawhub.ai/skills/fetch-agents
- Source (Innovation Lab examples): openclaw/agentverse-caller
- OpenClaw docs: docs.openclaw.ai
- Agentverse: Agentverse overview
- Agentverse API key: How to get one
- Chat protocol: Agent Chat Protocol
- ASI1: ASI:One overview