Repository navigation
NaNofuzz v0.4.1 introduces experimental testing support for Java and OCaml/OxCaml; a dedicated Model Context Protocol (MCP) server; an autonomous Bug Hunter mode for AI coding agents; standalone @nanofuzz/cli npm packaging; Rust AddressSanitizer and BorrowSanitizer integration; and expanded Rust type coverage.
Highlights
- Java Support: Test Java 17+ projects using Maven or Gradle with bytecode coverage tracking, implicit and property oracles, and JUnit 5 test export.
- OCaml & OxCaml Support: Test OCaml and OxCaml functions with native AST analysis, Dune test runner integration, and the
nanofuzz_runtimeopam package. - Model Context Protocol (MCP) Server: Run NaNofuzz as a standard MCP server (
npx -y @nanofuzz/cli mcp) over stdio or SSE to equip AI agents with target discovery, fuzzing, input shrinking, and bug hunting tools. - Autonomous Bug Hunter Mode: Multi-turn workflow (
nanofuzz_findBugs) that guides coding agents through invariant discovery, harness synthesis, and coverage-gated fuzzing to surface deep semantic defects. - Standalone
@nanofuzz/cliPackage: Install and run NaNofuzz directly in CI pipelines or terminal workflows outside of VS Code via npm/npx. - Rust Sanitizers: Built-in AddressSanitizer (ASan) and BorrowSanitizer support to identify memory corruption and borrow violations during fuzzing.
- Expanded Rust & TypeScript Capabilities: Struct and primitive type expansion for Rust harnesses, alongside direct imports coverage scoping in TypeScript.
Key Changes
Features
- Add Java support with bytecode coverage tracking, runner host, and JUnit 5 export (#657, #666, #669, #675)
- Add OCaml and OxCaml support with Dune test adapter and opam package (#656, #660, #662, #674)
- Add Model Context Protocol (MCP) server support with stdio and SSE transports (#661)
- Add autonomous Bug Hunter mode and agent orchestration guidance (#659)
- Add standalone
@nanofuzz/clinpm package distribution (#649, #650, #653) - Add Rust AddressSanitizer (ASan) and BorrowSanitizer support (#663)
- Support additional Rust types, structs, and primitive mappings (#655)
- Support direct imports coverage scoping in TypeScript (#668)
- Add compilation waiting and loading animations to the FuzzPanel UI (#654)
Performance & Engine
- Optimize test suite execution times and CI pipeline performance (#672, #676)
- Improve TypeScript runner coverage collection and JavaScript host isolation (#668)
- Optimize Rust runner host communication and harness generation (#655, #671)
Fixes & Refinements
- Fix Rust harness generation, type serialization, and cargo coverage measurements (#671, #677)
- Improve compiler error feedback and diagnostic formatting across CLI and UI (#670)
- Fix typed input handling and serialization in AI agent tools (#667)
- Fix FuzzPanel initialization animations and teaser image display (#648, #664)
- Bump dependencies:
com.fasterxml.jackson.core:jackson-databind(#658),undici(#651), andfast-uri(#652)
Full Changelog: v0.4.0...v0.4.1