Skip to main content

Getting started with an AI agent

Paste this prompt into your AI coding agent (Claude Code, Cursor, Copilot, etc.) to get started:
The monorepo includes a requesting skill with step-by-step guidance for wallet setup, CLI install, deposit, submit, and proof retrieval. See AI Agents for more.
The Boundless Foundry Template is the best way to get started. It provides a starter application which has the following components:
  • A zkVM guest program, is-even
  • A smart contract, EvenNumber.sol
  • An example starter application which:
    • uploads the zkVM guest to IPFS (optional)
    • submits a request to the market for a proof that “4” is an even number
    • waits for the request to be fulfilled and receives the proof from the Boundless market
    • submits the received proof to the EvenNumber contract for verification.
For technical support, please post your questions on the Boundless Discussions Forum.

Install RISC Zero

Terminal
See more about installation on the RISC Zero docs.

Clone the repository

Using Foundry

You can either clone the repo using git, but we recommend using forge init (you’ll need to install Foundry):
Terminal

Using Git

Terminal

Set up your environment variables

Export your Sepolia wallet private key as an environment variable (making sure it has enough funds), and export a valid RPC URL (you can use the public one provided):
You’ll also need a deployment of the EvenNumber contract. You can use a predeployed contract on Sepolia:
If you’d like to deploy your own version of the EvenNumber.sol contract, please run: cargo build && forge script contracts/scripts/Deploy.s.sol --rpc-url ${RPC_URL:?} --broadcast -vv after which you can export your deployed contract address to EVEN_NUMBER_ADDRESS.

Run the example app

The example app will submit a request to the market for a proof that “4” is an even number, wait for the request to be fulfilled, and then submit that proof to the EvenNumber contract, setting the public number variable to “4”. To run the example using the pre-uploaded zkVM guest:
Terminal
The output will look something like:
Terminal
and the app will query the status of the proof request until it is fulfilled. Once it fulfilled, you’ll see output confirming the receipt of the proof, and confirmation of the transaction sent onchain calling the set function with the proof as calldata:
Terminal
You’ve now requested your first proof from Boundless, received that proof and sent that proof onchain for verification. Effectively, you’ve offloaded computation offchain with the same trust model as onchain, all thanks to the power of ZK. This is the true power of verifiable compute. To learn more about each individual step, please refer to Build A Program. If you want to do some further development on your local fork of the Boundless Foundry Template, please read the Development section on the README.