Published 2026-09-21 · Tested 2026-08-19

Runware

B-

Runware received 11 PASS votes and passed 4 of five agent surface checks. The clearest finding came from the find the exact limits task.

Panel: GPT 5.6 Sol, Opus 5, DeepSeek v4F Battery: v1 Read as markdown (opens in a new tab)

Three AI models, GPT 5.6 Sol, Claude Opus 5, and DeepSeek v4 Flash, each read Runware’s public documentation independently and attempted five first-hour developer jobs: generate an image, find the exact limits, recover from a 429, verify an inference webhook, use the TypeScript SDK.

No accounts, API calls, or code execution were used. Every verdict came from public pages and every published quotation passed a live verification check.

Freshness

How rechecks work
Tested
Quotes verified
Surface rechecked

No change since the test.

5 of 5 quoted passages still appear on the live pages.

Runware Custom Astro · published
B-

81.2% · 65/80 · AI Agent Readiness Score · reading 30 pts · surface 50 pts

llms.txt PASS
llms-full.txt FAIL
markdown mirror PASS
MCP server PASS
docs AI PASS
Task GPT 5.6 SolOpus 5DeepSeek v4F Consensus
Generate an image PASSPASSPASS PASS
Find the exact limits FAILPARTIALPASS SPLIT
Recover from a 429 PARTIALPASSPASS PASS
Verify an inference webhook PASSPASSPASS PASS
Use the TypeScript SDK PASSPARTIALPASS PASS

docs platform: Custom Astro (unscored) · verified 2026-08-19

What to fix first

These 2 fixes could add up to 13 points to the AI Agent Readiness Score. The list ranks each fix by the points it would add. How the ranking works

  1. 1
    +10 points llms-full.txt check failed

    Found: HTTP 404 HTML, not plausible llms content.

    Fix: Publish llms-full.txt at the docs root with the full text of every docs page in one plain-text file.

    Evidence: runware.ai/docs/llms-full.txt (opens in a new tab)

  2. 2
    +3 points Find the exact limits SPLIT

    Found: Rate Limits says there are no hard rate limits but gives no queue capacity figure. Opus 5 also found no stated scope for the 2-4 concurrent request advice.

    Fix: State whether the 2-4 concurrency advice is per key, account, or model, and give queue capacity or say it varies.

    Evidence: runware.ai/docs/platform/rate-limits (opens in a new tab)

What the docs get right

  • Generate an image: 3 PASS votes. The introduction gives API-key setup and minimum cURL, TypeScript, and Python calls for the shared task API.
  • Verify an inference webhook: 3 PASS votes. One page covers webhookURL, query-token validation, POST handling, a five-second response target, retries, and taskUUID deduplication.
  • 4 of 5 agent surface checks. Present: llms.txt, markdown mirrors, an MCP server, docs AI. Missing: llms-full.txt.

Generate an image

PASS

PASS consensus from 3 PASS.

The introduction provides signup, key creation, Bearer authentication, a complete image request, and an imageURL response. Introduction gives a four-step signup-to-key path and a complete cURL request whose documented response contains imageURL, and Authentication states the endpoint, method, header auth, and array payload shape without ambiguity. The auth page walks from sign-up through API-key creation to a working curl command; the text-to-image page returns the generated imageURL in the response.

Find the exact limits

SPLIT

SPLIT consensus from 1 PASS, 1 PARTIAL, 1 FAIL.

The page states no hard rate limits and recommends 2-4 requests, but it gives no numeric queue capacity. Recommended concurrency is a concrete 2-4, but no queue-capacity number is published anywhere and the page lists 'Real-time capacity metrics - API endpoints showing current queue depth and estimated processing times' as unshipped future work, so two of the three requested values do not exist and the 2-4 figure never states whether its scope is per key, per account, or per model. No numeric rate-limit or queue-depth values are published, but the docs are internally consistent: no hard limits, shared finite queues, recommended 2-4 concurrent requests.

Recover from a 429

PASS

PASS consensus from 2 PASS, 1 PARTIAL.

The backoff example is specific, but queue capacity is unnumbered and the errors page gives a different 429 cause. Runnable TypeScript and Python retry helpers give the exact policy (retry on 429 and 503 only, 1s/2s/4s doubling, maxRetries 3, rethrow everything else), and the docs explain that the applicable threshold is dynamic rather than fixed, offering sub-30s latency as the health signal instead. HTTP 429, 503, and 504 are listed as transient retryable errors; TypeScript and Python code examples implement exponential backoff starting at 1s.

Verify an inference webhook

PASS

PASS consensus from 3 PASS.

One page covers webhookURL, query-token validation, POST handling, a five-second response target, retries, and taskUUID deduplication. All five steps are covered in one page with working code: webhookURL on the request, the full POST body, an Express handler that rejects on a mismatched query token, the 2xx and 5s window, and a taskUUID Set for deduplication, though the 'Receiving notifications' code tabs are miswired and render the webhook response payload as arguments to a client.run() generation call. Complete walkthrough: set webhookURL, verify via token query param, return 2xx within 5 seconds, deduplicate with processed.has(taskUUID), and exponential-backoff retry delivery.

Use the TypeScript SDK

PASS

PASS consensus from 2 PASS, 1 PARTIAL.

The @runware/sdk quick start uses REST and the core REST fields, then prints images[0].imageURL. The TypeScript SDK page alone is excellent and its quick start maps field-for-field onto the REST body, but the site's own llms.txt names the legacy package @runware/sdk-js as the official SDK, so an agent entering through the machine-readable index installs the wrong package and only recovers by cross-referencing the javascript-legacy page. Install @runware/sdk, create a REST client with createClient, call client.run() with imageInference params, and read imageURL from the result.

The receipt

Shared queues - Requests are processed through model-specific queues with finite capacity.

The page states no hard rate limits and recommends 2-4 requests, but it gives no numeric queue capacity.

Agent surface notes

Initialize returned a valid OAuth-protected MCP authentication challenge.

The live docs expose an Ask AI Assistant action and public question form.

Show the score

AI Agent Readiness Score 81.2%, grade B-

Paste this into a readme:

[![AI Agent Readiness Score 81.2%](https://docsforagents.com/badge/runware.svg)](https://docsforagents.com/reports/runware-docs-ai-agent-readiness/)

Method note

This is a reading test of public documentation, not an execution test. No accounts were created and no API calls were run. The AI Agent Readiness Score counts fifteen reading votes at PASS 2, PARTIAL 1, and FAIL 0, for 30 possible points. Five agent surface checks add 10 points each. The total is 80. Consensus chips show each row majority and do not affect scoring. The panel split on 3 of five tasks. Quotes shown here were re-fetched and confirmed verbatim on 2026-08-19.

Read the full methodology

Put another docs site through the battery.

Nominate a docs site