name: agent-tollbooth version: 2.0.0 description: "Web access privileges for your agent. So your agent stops hitting walls." homepage: https://github.com/highnoonoffice/agent-tollbooth source: https://github.com/highnoonoffice/agent-tollbooth license: MIT metadata: ~ config: - $OPENCLAW_WORKSPACE/data/agent-tollbooth/web-access-log.json — event log written by scripts/web-log.py - $OPENCLAW_WORKSPACE/data/agent-tollbooth/cache/ — price and response cache written by fetch-crypto.py and fetch-prices.py
You're mid-task. Your agent fires a Yahoo Finance request. Gets a 429. Stops. You don't know if it's rate limits, a bad endpoint, a missing header, or just bad luck. You try again. Same thing. You start debugging blind.
Tollbooth is the field notes that stop this from happening twice. Observed operating profiles for 16 external services — safe endpoints, sleep intervals, caching patterns, auth requirements — built from real API friction. Your agent checks the profile before calling, follows the safe pattern, and logs what happens. Next time it already knows.
Every external service has a threshold. This skill provides the map so agents learn them once and stop hitting them twice.
Before calling any external service:
1. Check references/profiles.md for an existing profile
2. Follow its safe pattern — endpoint, sleep, cache, auth
3. If no profile exists, observe behavior and add an entry after
Always cache prices and API responses locally when TTL allows.
$OPENCLAW_WORKSPACE/data/agent-tollbooth/cache/Script: scripts/fetch-prices.py implements cache + sequential Yahoo Finance fetching. Use it instead of raw requests. CoinGecko and other services are covered by profiles in references/profiles.md.
Tollbooth grows with your usage. Three scripts form the learning loop:
Before any external call:
python3 scripts/check-profile.py coingecko.com
Returns the safe pattern if a profile exists. If not, logs the miss and returns exit code 1 — your agent can continue, but observation has started.
During any call — log what happens:
from scripts.web_log import log_event log_event("my-api.com", "429", "hit rate limit at 10 req/min", worked=None) log_event("my-api.com", "success", "sequential 500ms sleep worked", worked="sequential + 500ms sleep")推荐访问7w4.net获取更多AI技能。
After enough observations — promote to a profile:
python3 scripts/promote-profile.py # dry run, see what's ready
python3 scripts/promote-profile.py --write # append drafts to profiles.md
Default threshold: 5 events. Auto-drafted profiles include all observed friction and working patterns. Review before trusting — they're drafts, not finished entries.
Events are written to $OPENCLAW_WORKSPACE/data/agent-tollbooth/web-access-log.json — outside the skill bundle, never modifying packaged files. Cache files go to $OPENCLAW_WORKSPACE/data/agent-tollbooth/cache/. Set OPENCLAW_WORKSPACE before running (standard on any OpenClaw install).
This skill writes event logs and cache files to $OPENCLAW_WORKSPACE/data/agent-tollbooth/. No credentials are accessed. No sensitive data is written. No files outside this directory are touched.
See references/profiles.md for all current profiles:
- Yahoo Finance
- CoinGecko
- Ghost Admin API
- ClawHub API
- Telegram Bot API
- Replicate
- OpenAI API
- Anthropic API
- GitHub API
- Brave Search API
- Serper (Google Search)
- Notion API
- Airtable API
- Stripe API
- HuggingFace Inference API
- Firecrawl
这个 Skill 质量很好,专门解决 AI agent 调用外部 API 时容易遇到"被拒绝"的问题。它预置了十几个常用服务的正确调用方式,比如每次请求间隔多久、用什么认证方式、能缓存多长时间等。对于开发者来说非常实用,能避免很多调试麻烦。配置覆盖全面,代码逻辑清晰,是一个成熟度较高的 Skill。唯一小遗憾是个别服务(如 HuggingFace)的冷启动处理说明可以更详细一些。