fuzz

Fuzz-test OCaml parsers, encoders, and state machines with Crowbar.

35|9|Updated Dec 25, 2025
One-click install
npx skills add https://github.com/avsm/ocaml-claude-marketplace --skill fuzz-avsm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fuzz
Source: https://github.com/avsm/ocaml-claude-marketplace/tree/main/plugins/ocaml-dev/skills/fuzz
Command: npx skills add https://github.com/avsm/ocaml-claude-marketplace --skill fuzz-avsm

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Fuzz testing OCaml codebases to find bugs in parsers, encoders, and state machines using Crowbar, ensuring robustness for protocol implementations.

Core Features & Use Cases

  • One fuzz file per module to keep tests organized and discoverable
  • Coverage of crash-safety, roundtrip invariants, boundary conditions, invalid input rejection, and state machine transitions
  • Ready-to-run patterns for common OCaml data structures and libraries used in protocol implementations

Quick Start

Run the fuzz harness to execute all fuzz tests for the current OCaml project.

Frequently Asked Questions about fuzz

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fuzz test OCaml parsers and state machines?

Fuzzing OCaml parsers and state machines with Crowbar involves generating random inputs to test protocol implementations for crash-safety, roundtrip correctness, boundary conditions, and invalid input rejection across per-module test suites.

What is fuzz testing used for in OCaml protocol implementations?

Fuzz testing in OCaml protocol implementations is used to identify and prevent bugs in encoders, parsers, and state machines by verifying that invalid inputs are rejected and that state transitions execute safely under random test generation.

Do I need Crowbar and dune to set up an OCaml fuzz testing harness?

Setting up an OCaml fuzz testing harness requires Crowbar and borealis in the build along with a dune-based test harness to compile and link per-module fuzz suites reliably across the project.

How do I organize fuzz tests for multiple OCaml library modules?

Organizing fuzz tests for multiple OCaml library modules involves creating one fuzz file per module to keep tests discoverable, ensuring each suite covers crash-safety, roundtrip invariants, and state machine transitions individually.

What are the limitations of using Crowbar for OCaml fuzz testing?

A limitation of using Crowbar for OCaml fuzz testing is that tests must compile and link reliably across modules within the dune build system, requiring valid borearis integration to execute the per-module fuzz harness successfully.