Robot Task Protocol (RTP) — open standard for AI agents to discover, commission, and pay for physical robot tasks via x402
rtp-spec is an early-stage project in the AI payments / x402 ecosystem, focused on ai-agents, depin, open-standard, robotics. It currently has 0 GitHub stars and 0 forks, and sits alongside related tools like rtp-python-sdk, pay-json, ClawRouter, x402-client, solcex-autonomous-vanguard, awesome-molt-ecosystem.
The open standard for AI agents to discover, commission, and pay for physical robot tasks over the internet.
RTP sits between AI agents and physical robots. It defines a common language — a standard task envelope, capability vocabulary, payment flow, and lifecycle state machine — that works across any robot hardware, connection type, or manufacturer.
Spraay Gateway (gateway.spraay.app) is the reference implementation.
Robots today speak thousands of proprietary languages — ROS topics, vendor SDKs, custom REST APIs. AI agents have no standard way to:
Any robot that implements RTP becomes instantly hireable by any AI agent — with USDC micropayments via x402, atomic escrow, and standardized task lifecycle management.
// An AI agent hiring a robot in 3 lines
const robots = await client.discover({ capability: 'pick' })
const result = await client.hire(robots[0], {
task: 'pick',
parameters: { item: 'SKU-421', from_location: 'bin_A3' }
})
console.log(result.status) // COMPLETED
Agent discovers robot via .well-known/x402.json
↓
Agent sends Task Envelope + x402 USDC payment
↓
Gateway validates payment → holds in escrow
↓
Task dispatched to robot (webhook / xmtp / wifi / websocket)
↓
Robot executes → reports result
↓
Escrow releases to operator → agent receives result
RTP occupies a distinct layer in the emerging machine economy:
| Layer | Role | Example |
|---|---|---|
| Blockchain Infrastructure | Machine identity, on-chain state | peaq |
| Spatial Coordination | Physical-world awareness for robots | Auki |
| Payment + Task Protocol | Agent-to-robot task dispatch & payment | RTP + Spraay |
| Payment Rails | HTTP-native micropayments | x402 |
These layers are complementary, not competing. RTP could use peaq machine IDs as an identity layer and Auki for spatial coordination while handling the payment and task dispatch.
The full spec defines:
rtp:// URIs for every devicepick, place, scan, deliver, weld, etc.)PENDING → DISPATCHED → IN_PROGRESS → COMPLETED/FAILED/TIMEOUT.well-known/x402.jsonRTP is extended without breaking compatibility (see RTP 1.0 §14). Draft extensions:
| Extension | Status | Description |
|---|---|---|
| RTP-EXT-1 — Batch Task Dispatch | Draft | Commission N tasks across N robots with one x402 payment and one atomic on-chain settlement via the Spraay batch contract. independent and all_or_nothing atomicity modes. |
| RTP-EXT-2 — Simulation Mode | Draft | Virtual sim robots that traverse the full RTP lifecycle — 402, payment, escrow, settlement — with no hardware. Scriptable behavior directives for deterministic success/fail/timeout testing. Composes with EXT-1. |
npm install @spraay/rtp-sdk
📦 SDK Repository — TypeScript SDK for both device operators and AI agents.
Device side (robot operator):
import { RTPDevice } from '@spraay/rtp-sdk'
const robot = new RTPDevice({
name: 'WarehouseBot-01',
capabilities: ['pick', 'place', 'scan'],
pricePerTask: '0.05',
paymentAddress: '0xYourWallet',
apiKey: 'your-spraay-key',
connection: { type: 'webhook', webhookUrl: 'https://yourserver.com/rtp/task' }
})
robot.onTask('pick', async (params, task) => {
await myRobotArm.pick(params.item, params.from_location)
await task.complete({ output: `Moved ${params.item}` })
})
await robot.register()
robot.listen(3100)
Agent side (AI agent hiring robots):
import { RTPClient } from '@spraay/rtp-sdk'
const client = new RTPClient({ wallet: myX402Wallet })
const robots = await client.discover({ capability: 'pick', maxPrice: '0.10' })
const result = await client.hire(robots[0], {
task: 'pick',
parameters: { item: 'SKU-00421', from_location: 'bin_A3' }
})
| Device Type | SDK Direct | Install Method | Connection |
|---|---|---|---|
| Linux robot (ROS/ROS2) | ✅ | SSH / npm | webhook, websocket |
| Raspberry Pi | ✅ | SD card, USB, Docker | webhook, wifi |
| Arduino / ESP32 | ⚠️ Bridge | Serial via Pi | webhook via bridge |
| Industrial (KUKA/ABB/Fanuc) | ⚠️ External server | Vendor API bridge | webhook |
| Drones (ArduPilot/PX4) | ✅ | Companion computer | webhook, xmtp |
| IoT / Smart devices | ✅ | SSH / device API | webhook |
| Windows machines | ✅ | npm / Docker | webhook |
📖 Full Device Compatibility Guide
Base URL: https://gateway.spraay.app/robots
| Endpoint | Method | Description |
|---|---|---|
/robots/register |
POST | Register a robot with capabilities, pricing, connection config |
/robots/{id}/task |
POST | Submit task + x402 payment (returns 402 → pay → execute) |
/robots/{id}/complete |
POST | Robot reports task result, triggers escrow release |
/robots/{id}/tasks/{task_id} |
GET | Poll task status |
/robots |
GET | Discover robots (filter by capability, chain, price, tag) |
/robots/{id} |
GET | Full robot capability profile |
| Chain | Asset | Status |
|---|---|---|
| Base | USDC | ✅ Live |
| Arbitrum | USDC | ✅ Live |
| Ethereum | USDC | ✅ Live |
| Polygon | USDT | ✅ Live |
| + 7 more | Various | Via Spraay Gateway |
rtp-device init CLI wizardspraay/rtp-device)Warehouse Automation — AI agents hire pick-and-place robots by the task. Small businesses rent robot time instead of buying hardware.
Drone Services — Agents commission aerial surveys, deliveries, or patrols with automatic USDC payment per flight.
3D Printing on Demand — Upload a file, pay per print. The printer is an RTP endpoint.
Smart Building Management — HVAC, locks, lighting — all controllable and payable per action via RTP.
Manufacturing — CNC machines, welders, and assembly robots accept jobs from any agent, any chain.
See CONTRIBUTING.md. PRs welcome for:
MIT — open standard, free to implement.
Built by Spraay Protocol · @Spraay_app Reference implementation: gateway.spraay.app Author: @plagtech
Robot Task Protocol Python SDK — Raspberry Pi, Arduino, and industrial robot support
pay.json — machine-readable pricing standard for AI agents (like robots.txt for payments)
The agent-native LLM router for autonomous agents. 55+ models (8 free), <1ms local routing, USDC payments on Base & Solana via x402.
Client SDK for the Vybe x402 API. Pay-per-call USDC over HTTP and prepaid-credit WebSocket streaming for Vybe's Solana analytics API. Built for AI agents.
Autonomous AI BD Agent for SolCex Exchange: 24/7 Cross-Chain Token Scoring & Payments 2026
The brutally honest map of where AI-agent money actually flows. 51 rounds, 137 angles, 230+ platforms. 3 self-hosted x402 v2 endpoints + 3 tools in the official MCP Registry. 385K star distribution.
The AI agent with a wallet — spends USDC autonomously to get real work done. Apache-2.0, TypeScript.
The first agentic payment network: policy-controlled, gasless, and real money-ready. OmniClaw CLI + Financial Policy Engine let autonomous agents pay and earn safely at machine speed.
An open SDK for agentic payments. Let AI agents make payments, hold funds, and move money across chains with policy enforcement and human approval built in.
x402 Ecosystem Explorer
🚀 Curated list of x402 resources: HTTP 402 Payment Required protocol for blockchain payments, crypto micropayments, AI agents, API monetization. Includes SDKs (TypeScript, Python, Rust), examples, facilitators (Coinbase, Cloudflare), MCP integration, tutorials. Accept USDC payments with one line of code. Perfect for AI agent economy.
Client SDK, Claude plugin and skill framework for the Pinion protocol. x402 micropayments on Base.