Agent integration
View raw

Agent integration (Claude Code skill)

Quiver ships a Claude Code skill so an AI agent can integrate verifiable on-chain randomness for you — write a QuiverConsumer contract, wire up the push/pull flow, use the @quiver/sdk client, or run a Fletcher keeper. The skill carries the verified coordinator/provider addresses, the safety rules for _fulfillRandomness, and the full SDK surface, so an agent produces correct integration code without guessing.

Everything below is public and self-contained. Pick whichever install path fits your setup.

Option A — install as a Claude Code plugin (recommended)

Add the Quiver marketplace once, then install the plugin:

/plugin marketplace add camdengrieh/quiver-kit
/plugin install quiver@quiver

This installs the quiver-integration skill (plus its reference files). Your agent will invoke it automatically whenever you ask it to add randomness/VRF/RNG to a contract or dApp on Robinhood Chain.

Option B — drop the skill into a project

Copy the skill straight into a repo's .claude/skills/ directory:

mkdir -p .claude/skills/quiver-integration/references
base=https://quiver.foundation/skills/quiver-integration
curl -sfL $base/SKILL.md -o .claude/skills/quiver-integration/SKILL.md
for f in consumer-contract typescript-sdk keeper-and-provider networks; do
  curl -sfL $base/references/$f.md -o .claude/skills/quiver-integration/references/$f.md
done

The skill is now active for any agent working in that project.

Option C — point any agent at the hosted files

Every file is fetchable directly, so an agent (Claude Code, an SDK app, or any tool that can read a URL) can pull it on demand:

For general LLM context (not the skill), the llms.txt and llms-full.txt indexes cover the whole documentation set.

What the skill knows

  • Push (callback) flow — inherit QuiverConsumer, request in your entrypoint, settle in _fulfillRandomness, and the keeper delivers the result. Includes the non-negotiable rules (never revert on the happy path, correlate by sequence number, fund the contract for fees).
  • Pull flow — request with a sealed commitment and reveal yourself, no keeper required.
  • TypeScript — the @quiver/sdk QuiverClient (requestRandomness, request, reveal, waitForFulfillment) and hash-chain helpers.
  • Keeper & provider ops — running Fletcher and registering/rotating a hash-chain provider.
  • Verified network constants — coordinator + default provider addresses and fees for mainnet (chainId 4663) and testnet (chainId 46630).

Try it

Ask your agent something like:

"Add a Quiver-powered raffle to my Solidity project on Robinhood Chain testnet — one entry per address, pick a winner with verifiable randomness."

With the skill installed it will scaffold a QuiverConsumer, wire the request/callback, and plug in the correct testnet coordinator and provider addresses.