Skip to content
cccskills
FreePublished on GitHub

zig

Start here for any Zig work on this Mac. Routes to the eleven zig-* skills covering the toolchain, types, errors, memory, comptime, builtins, the standard library, the std.Io rewrite, the build system, testing, and C interop. Load this before writing Zig from memory, because the installed toolchain is master and has removed constructs that every tutorial and every model still teaches.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19 stars(GitHub 19 + cccskills 0)

Run score Not tested

See how to install

Files included (12)

  • SKILL.md5.0 KB
  • references/build.md15.9 KB
  • references/builtins.md21.6 KB
  • references/c-interop.md18.3 KB
  • references/comptime.md23.6 KB
  • references/errors.md9.7 KB
  • references/io.md29.3 KB
  • references/memory.md12.2 KB
  • references/std.md29.3 KB
  • references/testing.md14.7 KB
  • references/toolchain.md5.9 KB
  • references/types.md13.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Zig on this Mac

The installed toolchain is master, not a release: 0.18.0-dev.120+9fe22a29b through zvm at /Users/donaldfilimon/.zvm/bin/zig. Measured 2026-10-10.

Read this before writing a line of Zig

Master has removed constructs that pretraining, tutorials, and Stack Overflow all still teach. These are compiler errors, not warnings, and each was confirmed by compiling on this machine:

You will reach forIt givesUse instead
@cImport / @cIncludeinvalid builtin functionzig translate-c, or b.addTranslateC
@Type(...)invalid builtin function@Int, @Struct, @Enum, @Union, @Fn, @Pointer, @Tuple
errdefer |err|expected block or expression, found '|'plain errdefer, destructure in a wrapper
callconv(.C)no member named 'C'callconv(.c)
std.heap.GeneralPurposeAllocatorno member namedstd.heap.SafeAllocator
std.io.getStdOut()goneIo.File.Writer off init.io
std.fs.cwd()no member named 'cwd'Io.Dir.cwd()
ArrayList(T).init(gpa)goneArrayList is unmanaged; pass the allocator per call
@typeInfo(S).Struct.fieldsgone.@"struct" with field_names / field_types
std.meta.fields@compileErrorthe parallel arrays above

std.builtin is a deprecated alias for std.lang, and std.fs is a 21-line shim. If a Zig answer feels familiar, that is a reason to check it, not to trust it.

Two authorities, and they answer different questions

Compiling proves removal. The langref proves deprecation. @intFromEnum compiles and passes today while ~/.zvm/master/doc/langref.html says "Deprecated. Use @backingInt or @bitCast instead", so a green test is not evidence a construct is current. The langref ships with the toolchain and its version stamp matches zig version exactly. Read both.

Never answer a Zig question from memory. Read /Users/donaldfilimon/.zvm/master/lib/std/, then compile the answer in /private/tmp.

Where to go

  • [[zig-toolchain]] first for anything environmental: which zig is active, the dangling ~/.zvm/current symlink, the second zig on PATH, where the langref and stdlib source live, scratch-path rules.
  • [[zig-types]] for the type system: pointers, slices, sentinels, optionals, error unions, structs, enums, unions, vectors, coercion, casting.
  • [[zig-errors]] for error sets, try, catch, errdefer, error return traces, and when to use unreachable or assert instead of an error.
  • [[zig-memory]] for allocators, ownership discipline, alignment, and the leak-checked test pattern.
  • [[zig-comptime]] for generics, inline, @TypeOf, @typeInfo, reflection, and the comptime failure modes.
  • [[zig-builtins]] for the @-builtin reference: 128 recognized, 126 usable.
  • [[zig-std]] for the standard library map: containers, fmt, mem, json, http, crypto, math, sort, threads, time.
  • [[zig-io]] for the std.Io rewrite: readers, writers, buffering, printing to stdout, and async under Io.Threaded. The most-changed surface; go here before any I/O or concurrency work.
  • [[zig-build]] for build.zig, build.zig.zon, modules, steps, dependencies, and cross-compilation.
  • [[zig-testing]] for test blocks, filters, std.testing, and fuzzing.
  • [[zig-c-interop]] for extern, export, the C ABI, linking, and using zig cc as a cross compiler.

False greens seen on this toolchain

A --test-filter matching nothing prints All 0 tests passed and exits 0. A leaking test prints OK on its own line and fails only in the summary. Zig analysis is lazy, so a snippet nothing references can compile without being checked: give every test an explicit driver. And cmd | tail reports tail's exit status, not the command's, which has manufactured false green claims here before.

Projects using Zig here

Zig trees pin minimum_zig_version = "0.18.0-dev.120+9fe22a29b" (verified 2026-10-10): ~/dev/active/baseos, ~/dev/active/cell-lang, ~/dev/active/Gama, ~/dev/active/golive, ~/dev/active/Quesar. ~/dev/active/cell-lang is the Cell language compiler; read its AGENTS.md first, and always build it with -Dswift=false.

-Dswift=false is cell-lang's flag, not a universal one. ~/dev/active/Gama's current build.zig rejects it (error: invalid option: "swift"; the accepted options are target, cpu, ofmt, dynamic-linker, optimize, mlir-opt), so the older written instructions for Gama are stale. Read each project's build.zig option list before passing any -D flag.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Maintain the Abbey / Aviva / Abi Discord system prompts in the Rust abbey-bot (`src/ask.rs`) and keep the hosted Grok bots (Grok Bot Abbey, Aviva Grok) in step with them. Use when the user says "improve grok bots", "abbey prompt", "persona prompt", "ask.rs", "system prompt", "tip floor", asks to change how Abbey/Aviva/Abi speak on Discord, or after an abbey-bot PR merges and the hosted bot's tip floor needs bumping. Runs as /abbey-system-prompt.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

Validate ABI docs and external collateral against repo evidence and docs/contracts/external-claims-audit.mdx. Use when auditing claims, scanning docs for unsupported QPS/sharding/FHE/AES language, checking one claim before publish, or re-confirming the external-claims audit. Agent procedure only — not a CLI or slash command. Pair with abi-doc-claims-sync when editing docs.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

Synchronize ABI Markdown and docs claims with executable behavior. Use before editing README, AGENTS.md, CLAUDE.md, GEMINI.md, docs/**/*.mdx, walkthroughs, changelogs, or any old ABI Markdown that mentions WDBX, MCP, GPU, clustering, compression, FHE, agents, or benchmarks.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

Plan and execute ABI repo work from the TODO board, roadmap/spec docs, stable Rust 1.99.1 constraints, and validation gates. Use when the user asks to find ABI todos/roadmaps, organize a large implementation from tasks/todo.md, or decide the next safe work slice. Distinct from the goals skill — that skill owns the persistent ledger tasks/goals.md; this skill plans from the active board and north-star specs.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

Validate ABI MCP JSON-RPC stdio and its custom loopback HTTP compatibility endpoint, including auth, limits, notifications, and shutdown.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

Review ABI's 16 compiled-in plugin fixtures, manifest validation, manual bundled registry, and real CLI/MCP run dispatch without claiming dynamic loading.

The English summary is being prepared. Showing the original description.

donaldfilimon/abi19Updated Oct 27, 2026

See all skills by donaldfilimon

Report a problem with this skill