Products
Blue Hood
24/7 non-custodial copilot for Robinhood Chain — the intelligence layer nobody else on chain is building. Oracle vs DEX drift monitoring, arrow signals with a public track record, and a review-and-sign trade panel that keeps every private key with the user.
Positioning. Uniswap has ~95% of RH Chain DEX volume; Arcus / Lighter / Rialto / Native own execution. Nobody owns oracle-vs-DEX drift monitoring, cross-pool discrepancy detection, or a public signal track record. Blue Hood is BlueAgent's wedge in that gap.
Four semantic layers
Blue Hood is built as four discrete layers. Each one has its own cron / route / doc anchor so you can trace any card back to the skill that produced it.
T-A · See
Poller measures drift between Chainlink oracle and DEX pool. Runs every 5 min via /api/cron/blue-hood/poll. Writes bh:snapshot:latest to KV.
T-B · Explain
A4 rh-stock-agent-brief LLM chain (Virtuals → Venice → Bankr) writes a 1-line context for each fired arrow. Runs every 1 min via /api/cron/blue-hood/brief-worker.
T-C/D · Alert
Drift board (
/hood), inbox (
/hood/inbox), + Web Push fan-out. Every arrow gets a serial
#0001….
T-E · Act
ReviewSignPanel — non-custodial, wagmi useSendTransaction, recipient = useAccount().address verbatim. Two signs: approve → swap.
Arrow types
Rule engine (src/lib/blue-hood/rule-engine.ts) fires an arrow when a snapshot row matches one of:
arb
Market OPEN + |drift| ≥ 1% + LONG_DEX or SHORT_DEX verdict.
drift
Market CLOSED + |drift| ≥ 2% during premarket/afterhours.
flow
Unusual buy/sell pressure per token. From D2 flow analytics.
Safety gates
Every arrow candidate passes through in order. Any gate rejection = no arrow fired.
Dust gate
Skips tokens with total_tvl_usd < $5k across ALL pools (not just primary).
Feed staleness gate
Skips arb when Chainlink last update is older than 15 min during regular hours.
Dedup gate
Skips if there's already an open arrow for (ticker, type).
V3 executability
Trade panel refuses Sign if the pool is Uniswap V4-only (router is V3, will revert).
Grading rules
Every fired arrow is later graded against real price data — this is what makes the track record a record and not a feed of opinions. The rules below are the exact ones in src/lib/blue-hood/grader.ts; the machine-readable version ships in the meta.grading block of the /api/acp/track-record response so an agent can re-derive any number we publish.
drift → HIT / MISS
HIT if the DEX↔oracle price gap closes ≥ 50% within grading_window_h NYSE regular-session hours; otherwise MISS. The clock counts regular-session hours only — Chainlink freezes at the close, so afterhours time doesn't count.
arb → HIT / MISS
HIT if the DEX↔oracle spread narrows below 0.5% within 4 NYSE regular-session hours; otherwise MISS. Same regular-session clock as drift.
flow → informational
Never graded HIT/MISS. Flow arrows are context, not a scored prediction, so they never enter any hit-rate denominator.
VOID
Any drift/arb arrow graded before its regular-session window fully elapsed is VOID — excluded from hit-rate, but shown plainly as VOID in the receipts. Honest evidence, never hidden.
Receipts are public, the headline is earned
Every graded arrow and its outcome (HIT / MISS / VOID) is returned freely — that's the evidence, and anyone may compute a hit-rate from it. But the headline number that bears our name (the aggregate %, per-type %, and record curve) stays hidden until the sample earns it: 30 graded arrows in the trailing 7 days for the aggregate, 15 of a type for that type's own number. Below the bar the API returns { ready: false, graded: N, needed: M } and no percentage. The record curve is a cumulative HIT−MISS walk (basis: "cumulative_hit_minus_miss"), not dollars — grading measures signal accuracy, not PnL.
Product roadmap (4 groups, 9 nav items)
Blue Hood is the first pillar of the "Builder OS for Robinhood Chain" relaunch. All new features are surfaces on top of skills that already exist in /hub — no new engines.
See
Hood
Live drift board — 24 tokens, Chainlink oracle vs DEX pool spot, verdict every 5 min.
Radar
Discovery — movers, flow, new-on-chain, whale watch. Coming in Stage 1.
Wallet
Read-only position dashboard with per-token drift column. Coming in Stage 1.
Act
Trade
Standalone quote → prepare → sign panel. Non-custodial. Coming in Stage 2.
Bridge
Route finder for Base/Arb/ETH → Robinhood Chain, deep-link to canonical bridge. Coming in Stage 2.
Automate
Tasks
Scheduled agent jobs from 4 templates. Runs via cron + ERC-4337 session keys. Coming in Stage 3.
Chat
Ask the agent anything — every skill in the Hub is one prompt away.
Build
Hub
74 x402 skills — call any tool for $0.05, no auth. B2B routing endpoints available for indexes.
Docs / Embed
Public API + embed widgets for other builders.
Non-custodial guarantees
The T-E panel enforces five hard rules — search the codebase for any of them and the grep audit MUST catch every site:
- 1. No private-key storage, no session key delegated to the server, no gasless-relayer signing on user's behalf.
- 2. Recipient =
useAccount().address VERBATIM. No default, no env fallback, no server-supplied recipient. - 3. No auto-execute. Every transaction is a deliberate user click.
- 4. Warnings from tools display VERBATIM. The panel never edits warning text.
- 5. When in doubt, disable Sign. Blocking a legitimate trade is cheaper than letting a bad one through.