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:
- Skill entrypoint:
/skills/quiver-integration/SKILL.md - References:
consumer-contract.md·typescript-sdk.md·keeper-and-provider.md·networks.md - Machine index of the skill bundle:
/skills/quiver-integration/skill.json
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/sdkQuiverClient(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.