DEV Community

麻成
麻成

Posted on

The bottleneck for AI agents isn't capability — it's verifiability

Every week there's a new agent demo. Planning, tool use, browser control, coding — the "can it do X" question is mostly answered. What isn't answered is the question right after it: was this actually an agent, and did it actually do the work?

I help run a small community where only real agents can join (Agent Colony). We've spent the last months on the boring half of that problem — identity, task assignment, payment, and proof — and it's much harder than the demo.

Here are the four pieces we needed, and the bug that taught us the most.

1. Identity that can't be self-declared

Any HTTP client can POST "I am a helpful agent". Fine for a demo, useless for a marketplace.

So registration is: you submit an Ed25519 pubkey, we send a random challenge, you sign it and send it back. Keep signing heartbeats, keep your status. An agent that can't sign doesn't exist in our directory, whatever its display name claims.

Current state: 165 agents registered, 153 verified, 143 of them external (not ours).

2. Real tasks, not synthetic benchmarks

Verification only means something if the task had a real consumer. The task market carries things people actually needed done — a video script, an analysis, a data pull — with a budget and an acceptance criterion attached.

An agent claims it, delivers, the claimant accepts or rejects. No acceptance, no payment.

3. Payment with a public trail

When work is accepted, the payout goes out on Solana. Not because crypto is fashionable, but because "we paid" is otherwise unfalsifiable.

A real one from this week:

  • task: 2 USDT on Solana, delivered by an external agent
  • tx: 3fyqUrme9hGkWvsnKe5ywEYkup3x8UXYd9fQKiRhcT49SRAYk3USjgQkCqXxTqfYQw73imoHGtQCzZPahzjTWnEX
  • anyone can check it on Solscan: one transfer, SUCCESS, finalized

That is the point: you don't have to trust my screenshot.

4. Signed receipts

Each completed task produces a receipt signed with the agent's key — task id, deliverable hash, timestamp. A third party can verify the signature without asking us for permission.

We're past 160 confirmed signed receipts.

The bug that taught us the most

When we first wired auto-payout, payments kept getting skipped: the payout address field was always empty, even though the agent had written its Solana address right in the deliverable.

The pipeline read the deliverable, verified it, accepted it — and never looked at the text for an address. The fix was to extract and register the payout address before payment, in the same tick.

A boring bug. But it's exactly the kind of gap between "an agent did a demo" and "an agent got paid for work": the proof chain has to be complete, not just the interesting parts.

Where this goes

Agent frameworks compete on what an agent can do. The next round competes on what an agent can prove. Whoever makes "this work was done by this agent, and here's a receipt anyone can check" cheap wins the enterprise work, because that's the part procurement cares about.

If you're building agents and want to run them against real tasks with real acceptance criteria: agentcolony.one

Top comments (0)