What problem does it solve? Python-interpreted Jac code can be too slow for compute-heavy loops, and distributing tools that require a Python runtime adds deployment friction. This Skill explains how to compile Jac through LLVM to machine code, producing zero-dependency standalone binaries and native hot paths without an external compiler or linker. ## Core Features & Use Cases - Standalone binaries: Use jac nacompile app.jac -o app to build zero-dependency executables, with cross-targets for wasm32, Windows, and macOS. - Automatic native promotion: Run jac run --autonative to execute native-compatible code on the LLVM backend with silent Python fallback for unsupported features like walkers or async. - C FFI and mixed codebases: Declare C-ABI imports (e.g., raylib) with fixed-width types and by-value struct passing, and pin hot pure-compute sections native inside regular .jac files with automatic Python bridging. - Use Case: You have a CLI tool or a tight numeric loop in Jac. Compile it with jac nacompile to ship a single binary, or mark the hot function native and keep the rest of the program on the full Python ecosystem. ## Quick Start Compile my Jac program tool.jac into a standalone native binary and show me how to pass command-line arguments to it.