Superteam Brasil × ZeroClaw · Track C (DePIN)

The Solana DePIN node that talks.

A $40 Raspberry Pi running ZeroClaw becomes a Solana-attesting device — and the same agent watches your real Helium hotspot and pings you on Telegram the moment it goes dark.
Agent proposes. Multisig disposes. The agent never holds a main wallet key.

197
host tests, all green
wasm32-wasip2
clean component build
v0.1.0
palinurus-core on crates.io
devnet
real on-chain T2 attestation — verified

The wiring

Physical edge → ZeroClaw agent → Solana. Two plugins, one minimal substrate, every transaction signed on the cold path.

Palinurus wiring diagram: Raspberry Pi running ZeroClaw hosts two WIT plugins (depin-attest, depin-rewards) that reach Solana and external APIs; custody tiers and the cold signing path shown.

Two plugins, one substrate

Each a standalone [workspace] crate matching the canonical ZeroClaw plugin layout. Both depend on palinurus-core from crates.io.

depin-attest

T1 default · T2 opt-in (verified on devnet)

the reference implementation nobody else can build

A sensor reading flows in → the plugin builds a real versioned transaction containing a Solana Attestation Service create_attestation instruction, composed with a durable nonce (so it survives an approval queue). The reading is simulated in the demo; the PDA, the instruction, the signature, and the explorer link are real. The T2 custody path (scoped session key, {System, SAS, Memo} allowlist, caps) is verified live on devnet — a real confirmed attestation.

  • 74 host tests
  • T2 verified on devnet
  • memo fallback + SAS path

depin-rewards

T0 reads · T1 unsigned · no T2

the daily-use workhorse — no hardware, no hotspot ownership

Watch any public Helium hotspot via the Relay API. Get a Telegram ping the moment it goes offline, and a daily rewards summary at 08:00. Verified live against a real hotspot (Fit Pine Capybara — earned 0.02 HNT, then went dark). No signing key anywhere in the crate.

  • 52 host tests
  • real Relay + Telegram
  • T0 reads · T1 unsigned · no T2

Custody is a first-class engineering problem

An agent with a private key and an LLM in the loop is a hot wallet with a prompt-injection surface. Palinurus treats that seriously.

The agent never holds a main wallet key. It builds unsigned transactions; a human or a Squads multisig signs. The durable nonce means a tx sitting in an approval queue for hours doesn't die from blockhash expiry.

Where autonomous signing is opt-in (depin-attest T2), it's locked to a program allowlist that blocks value transfer, a session key that holds cents, and a fail-closed prompt-injection test transcript in the README.

T0
Read public data. No key, no risk.
T1
Agent builds an unsigned tx; a human or Squads multisig signs.
T2
A scoped session key signs — locked to a {System, SAS, Memo} program allowlist, hard caps, identity check. Attest opt-in only.

Claim moves value ⇒ depin-rewards stays T0/T1 (multisig). T2 is attestation-only — blast radius = fake attestations, not theft.

See it run

The demo watches a real public Helium hotspot — Fit Pine Capybara — that earned 0.02 HNT then went offline. The watch action fires a real Telegram alert to a real phone. No mock, no slide deck.

demo video — recording now
≤ 3 minutes · real agent · real Telegram · real Solana

The full recording guide lives at docs/demo-recording-guide.md.