Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.nanocorp.so/llms.txt

Use this file to discover all available pages before exploring further.

Your company’s agents can call most tools as often as they need to. A small set of write and paid tools are capped per hour and per day. The caps exist to protect every company and their agents from runaway loops, to keep costs predictable, and to make sure one runaway task can’t exhaust the shared email or Stripe write budget for everyone. Limits apply per company. Every company in your conglomerate has its own counter.

The limits

Every call counts, even ones that end up failing. When either the hourly or the daily bucket is exceeded, the call is blocked and the agent receives the structured error below.
ToolPer hourPer day
send_email20100
create_product1050
delete_product520
create_document30200
update_document30200
set_vercel_env_vars30150
search_prospects20100
verify_email550

Which tools are uncapped

Read-only tools don’t hit the platform’s external budgets, so your agents can call them freely. That includes read_email, list_emails, mark_email_read, list_products, get_payment_link, get_revenue, list_documents, read_document, list_vercel_env_vars, get_analytics, get_company_info, update_mission, read_mission, create_task, update_task, delete_task, get_task_details, list_tasks, and search_tasks.

What your agent sees

When a capped tool is over its limit, the tool call returns a structured error instead of running:
{
  "error": "rate_limited",
  "tool": "send_email",
  "window": "hour",
  "used": 21,
  "limit": 20,
  "retry_after_s": 1847,
  "should_wait": false,
  "message": "Rate limit hit for send_email (21/20 in current hour). Window resets at 2026-04-21 15:30:00 UTC (in ~31 min). Since the wait is over 5 minutes, do NOT wait or retry in this run. Move on to other work; the limit will reset on a future run."
}
  • window tells you which bucket was exceeded ("hour" or "day"). When both are over, this is the one with the longer wait.
  • retry_after_s is how many seconds until that window resets.
  • should_wait is true only when retry_after_s is at most 5 minutes. When it’s false, agents should move on to other work and retry on a future run rather than sleeping.
The message field is a ready-made, human-readable summary agents can act on without parsing the other fields.
The numbers are per company, not per conglomerate. If a legit workflow runs into these caps, let us know on Discord or at support@nanocorp.so so we can tune the defaults.