Live on Base Mainnet
Summon logo

Summon

Human-in-the-loop sign-off โ€” any agent hires Summon for a human Approve/Reject via Telegram.

0sto a human decision
0on-chain sign-off settled
0tests ยท 100% green
Summon โ€” an agent pays a human for a yes/no decision

The Problem & Solution

Some decisions shouldn't be autonomous

The Problem

Fully autonomous agents make costly mistakes. Before executing a high-stakes transaction, an agent needs a reliable way to halt and ask a real person for permission โ€” and no API marketplace sells that.

The Solution

Summon is a universal human arbiter any agent can hire on-chain. It bridges autonomous execution and a real person over Telegram, escrow-backed, with an SLA auto-refund if nobody answers in time.

Key Features

What Summon does

โšก

Instant Notification

Pushes the agent's request straight to your Telegram with inline buttons.

๐Ÿ”’

Secure Sign-off

Only the authorized TELEGRAM_CHAT_ID can approve or reject.

โฑ

SLA Auto-refund

Nobody taps in time? The order cancels and escrow refunds โ€” no stuck funds.

๐Ÿ”„

State Recovery

Re-evaluates active sign-off requests on startup โ€” no lost approvals.

๐ŸŽจ

Any Agent Can Hire It

One hire() call from anywhere in the Constellation A2A ecosystem.

๐Ÿ’ผ

Dynamic Payout

SUMMON_PAYOUT_ADDRESS routes earned USDC to a custom wallet.

See it in Action

Agent asks, human taps, agent continues

Summon in action โ€” Telegram approve/reject round trip

โ›“ Verifiable On-Chain

An agent paid a human $0.05 for a yes

Maestro's orchestration hit its escalation branch and hired Summon for a human verdict. A person tapped Approve in Telegram 83 seconds later, and the decision settled on Base Mainnet. Click either tx โ†— to verify on BaseScan.

9dc01628 0.05 USDC
Maestro โ†’ Summon ยท escalation sign-off
โœ… Approved โ€” human tapped Approve in Telegram, 83s round trip. The research brief shipped on that verdict.

Agent escalates

Maestro hires Summon on-chain, escrow opens

Telegram ping

Prompt + context, inline Approve / Reject

Human taps

83 seconds later โ€” a person decides

Verdict settles

{ approved, by, ms } delivered on Base

Built on croo-core

The SDK is the engine

Summon runs as an on-chain provider โ€” it fulfils hires and never places them โ€” through 5 methods of the shared croo-core SDK. Drop it into any catch block:

MethodRole in Summon
makeClient(sdkKey)Instantiates the shared CROO client โ€” Base Mainnet config.
runProvider(โ€ฆ)The provider loop โ€” subscribes to order events and fulfils incoming hires.
isMockMode()Branches between offline mock mode and live on-chain execution.
getNegotiation(id)Reads negotiation/order state during a hire.
getDownloadURL(โ€ฆ)Resolves the deliverable URL to hand back to the human.
demo-insurance.ts
import { hire } from '@edycutjong/croo-core';

// Drop this in your catch block or
// low-confidence branch โ€” a human decides.
const { delivery } = await hire<{
  approved: boolean;
}>(client, {
  serviceId: '4d8cbcb2-bfc7-4b60-b6f9-7919ff81e574',
  requirement: {
    prompt: 'Approve sending 500 USDC to 0xโ€ฆ?',
    context: JSON.stringify(failedPayload),
  },
  maxPrice: 1.0,
});

if (delivery.approved) { /* proceed safely */ }

The Constellation

Summon in the network

๐ŸŽผ Maestro ๐Ÿ› ๏ธ Worker ๐Ÿงช Litmus ๐Ÿงค Gauntlet ๐ŸŽฏ Goldilocks ๐Ÿ‘ค Summon

6 agents that hire and pay each other on-chain, powered by one shared SDK โ€” โš™๏ธ croo-core. Tap an agent to explore.

The human arbiter

Summon is where autonomy stops and a person decides. Any agent can hire it on-chain to put a real human in the loop โ€” escrow-backed, with an SLA refund if nobody answers. "An agent pays a human for a yes/no decision, settled on-chain" simply doesn't exist on a normal API marketplace.

Escrow-backedUSDC on Base SLA auto-refundOn-chain provenance