zig-best-practiceslisted
Install: claude install-skill christopherkarani/RykanV
# Zig Best Practices
## Operating Mode
Use this skill to make Zig changes with production discipline, not as a style essay. Start by proving the active toolchain and project contract, then load only the reference files needed for the task.
First checks:
```bash
zig version
zig env
test -f build.zig.zon && sed -n '1,80p' build.zig.zon
zig build --help
```
If `zig` is unavailable, inspect `build.zig.zon`, CI files, docs, and lockfiles; report that compile verification is blocked instead of guessing.
As of 2026-05-13, upstream Zig has `0.16.0` as the latest tagged release and `0.17.0-dev` builds available, but many active projects remain pinned to `0.15.x`. Prefer the repo pin over generic advice. Treat `std` APIs as version-sensitive.
## Reference Map
Load the minimum needed references:
- [version-migration.md](references/version-migration.md): version checks, 0.15 to 0.16 drift, official docs to refresh.
- [language-patterns.md](references/language-patterns.md): style, declarations, generics/comptime, type design, data layout.
- [memory-lifetime.md](references/memory-lifetime.md): allocators, ownership, slices, cleanup, tests for leaks.
- [errors-apis.md](references/errors-apis.md): errors, optionals, API surfaces, public contracts.
- [build-test-package.md](references/build-test-package.md): `build.zig`, `build.zig.zon`, package hashes, tests, fuzz/bench lanes, CI.
- [concurrency-io.md](references/concurrency-io.md): threads, process/env handling, 0.16 I/O interfaces