Spuro x HTTPayer · Sub0 Hackathon
Milestone 2 Plan: Spuro – Arkiv-backed Agent SDK
This page follows the Sub0 Milestone 2 template, adapted to the Spuro docs & catalogue demo.
sub0 Hackathon Demo
This proof-of-concept demonstrates agent-native infrastructure: AI agents use Arkiv-backed memory via Spuro and HTTPayer (x402), while an external agent (e.g. AI-Spuro) queries Polkadot via PAPI and persists stash-account snapshots into that paid memory layer.
📍 Where we are now
What we built/validated this weekend
- Spuro backend: FastAPI service wrapping Arkiv with x402/HTTPayer, exposing paid entity endpoints.
- Spuro Functions SDK in
packages/ts, providing typed helpers likecreateEntityandqueryEntities. - AI-Spuro demo agent that snapshots Polkadot stash accounts via PAPI and persists them to Arkiv through Spuro.
What's working
- End-to-end flow from external data source → AI-Spuro agent → Spuro → Arkiv, with x402 handling payments at the HTTP layer.
- Docs & catalogue UI that explains the core Spuro endpoints and the Spuro Functions used by AI-Spuro.
What still needs work
- Turning AI-Spuro into a reusable Spuro Agent SDK so other teams can plug in their own prompts and flows.
- Sharper agent patterns for Arkiv-backed memory (TTL, session-scoped buckets, query helpers).
Blockers or hurdles we hit
- Balancing time between core infra (Spuro/Arkiv/x402) and higher-level DX (SDK ergonomics, agent templates).
- Designing abstractions that work both for Polkadot data and non‑Polkadot data sources without over-complicating the SDK.
🚀 What we'll ship in 30 days
Our MVP will do this
Ship an AI SDK for Spuro that any TypeScript agent can import to get Arkiv-backed memory, x402-paid storage, and ready-made helpers for snapshotting external data (starting with Polkadot accounts). For hackathon teams and future users, this means they can wire "agent memory as a service" into their bots in under an hour.
Features we'll build (3–5 max)
Weeks 1–2
Feature: Spuro Agent SDK package
Why it matters: turns today's Spuro Functions into a consumable SDK with clear typings, examples, and sensible defaults for agents.
Who builds it: backend/SDK engineer (Spuro + Arkiv).
Weeks 2–3
Feature: Agent memory patterns & helpers
Why it matters: gives teams opinionated recipes for snapshots, TTL, and querying so they don't have to design their own Arkiv schema.
Who builds it: backend + agent-experience engineer.
Weeks 3–4
Feature: Example agents & docs
Why it matters: shows how to plug the SDK into concrete agents (Polkadot stash monitor plus a generic snapshotting bot) and how to run them end-to-end.
Who builds it: frontend/docs + agent-experience engineer.
Team breakdown
Backend Engineer – Spuro/Arkiv | ~10 hrs/week
Owns: Spuro API surface, Arkiv entity design, SDK core.
Infra/Payments Engineer – HTTPayer/x402 | ~8 hrs/week
Owns: x402 payment flows, API security, example configs for paid agents.
Agent Experience Engineer – SDK DX & Docs | ~8 hrs/week
Owns: AI-Spuro CLI demos, docs site, agent templates, and onboarding guides.
Mentoring & expertise we need
Areas where we need support
- Validating our SDK design against how other agent frameworks structure tools and memory.
- Stress-testing Arkiv/Spuro patterns for scale and long-lived agent sessions.
Specific expertise we're looking for
- Mentors with experience building agent SDKs or tool ecosystems.
- Experts in Arkiv / on-chain data storage best practices to review our entity and TTL design.
🎯 What happens after
When M2 is done, we plan to...
- Open up the Spuro Agent SDK to early design partners (other hackathon teams, infra projects) and iterate on feedback.
- Add 1–2 additional example agents beyond Polkadot, showing how Spuro-backed memory can power any autonomous workflow.
And 6 months out we see our project achieve:
- Multiple external teams shipping production agents that rely on Spuro/Arkiv as their primary memory layer.
- Spuro recognized as a core building block for agent-native infrastructure, with HTTPayer/x402 and Arkiv underneath and a healthy ecosystem of community-contributed agent templates on top.