What problem does it solve?
This Skill helps you convert verified F* and Pulse code into C through KaRaMeL, while avoiding common extraction pitfalls that lead to missing symbols, wrong names, or brittle generated output.
Core Features & Use Cases
- Two-stage extraction workflow: First generate
.krml from F*, then translate it into .c and .h files with KaRaMeL.
- Clean extraction structure: Use interfaces, fixed-width integer types, ghost/erased values, and inline helpers so the generated C stays stable and readable.
- Bundle and naming control: Configure KaRaMeL bundles, hide spec-only modules, and strip module prefixes to shape the final C layout.
- Debugging support: Diagnose unresolved polymorphic functions, unexpected
out.krml output, missing functions, and extraction type mismatches.
- Use case: When a verified F* module needs to ship as C, this Skill guides you through extracting the right modules, bundling them correctly, and fixing issues before they reach compilation.
Quick Start
Ask for help extracting your F* or Pulse module to C and specify the module name, output layout, and any KaRaMeL errors you want diagnosed.