hairyf

halo2

Skills for building and debugging PLONK circuits with halo2_proofs (zcash/halo2)

hairyf 4 1 Updated 3mo ago

Resources

2
GitHub

Install

npx skillscat add hairyf/blockchain-skills/halo2

Install via the SkillsCat registry.

SKILL.md

The skill is based on halo2 (halo2_proofs) at the version recorded in GENERATION.md, generated at 2026-02-24.

halo2 is a Rust library for building PLONK-based zero-knowledge proofs. The main crates are halo2_proofs (circuit API, keygen, prover, verifier) and halo2_gadgets (reusable gadgets). This skill focuses on agent-oriented usage: defining circuits, configuring constraints, assigning witnesses, and debugging with the mock prover.

Core References

Topic Description Reference
Circuit API Circuit trait, configure, synthesize, FloorPlanner core-circuit-api
Constraint system Columns, gates, equality, lookups core-constraint-system
Chip and region Chip trait, Region, Layouter, assign_region, copy_advice core-chip-and-region
Columns and values Column types, Value, Assigned, AssignedCell, Rotation core-columns-and-values

Features

Topic Description Reference
Lookup tables Lookup argument, TableColumn, TableLayouter features-lookup-tables
Keygen, prover, verifier Params, keygen_vk/keygen_pk, create_proof, verify_proof features-keygen-prover-verifier
Mock prover MockProver::run, verify(), VerifyFailure features-mock-prover
Parallelism RAYON_NUM_THREADS, multicore feature features-parallelism

Best practices

Topic Description Reference
Floor planning SimpleFloorPlanner, choosing k, regions best-practices-floor-planning