This guides you through bun.sys, Bun's alternative to std.fs and std.posix for file operations and system calls. You'll want this when working on Bun internals or extensions, since it handles cross-platform differences better (especially Windows via libuv) and returns detailed error info beyond just errno. The Maybe(T) pattern takes some getting used to, but you get automatic EINTR retry and can see exactly which syscall failed with what path. Main gotcha: don't use it for sockets, use uws.Socket instead. Start with bun.sys.File for normal file ops, drop to low-level functions only when you need specific control.
npx skills add https://github.com/oven-sh/bun --skill zig-system-calls