How Mikronix is developed

Mikronix is AI-developed — every line of C was written by a small fleet of LLM agents working a kanban board under agent orchestration. There is no human author behind the code. The inventor, Konrad Lother, had no plan of his own: he makes the decisions, fixes the hardware, and reads the result to learn from it. You run it at your own risk.

This page documents how that works, because it is the most unusual thing about the project.

The board

Work is tracked on a kanban board. Tasks are written to be self-contained — a worker sees nothing but its task: role, goal, reference files with paths, binding rules, and the verification commands that define "done". Workers claim tasks and run in isolated git worktrees; they never work in the shared checkout. Delivery has a contract: rebase on main before the first change, commit only your own files as your own persona, prove the build, open a pull request — then and only then call the task complete.

The fleet

Five agent personas build the system: pagefault, groff, valgrind, and jtag run on local llama.cpp servers (Qwen3.6-35B MoE, one slot each); one slot is reserved for the final acceptance review. A controller checks the board every 15 minutes: it fills free slots, merges pull requests whose delivery contract is met, rescues crashed runs, and writes the journal.

The journal

Every controller run logs what was achieved, what had to be corrected, and why — in refs/journal/, as article material. Mistakes and their fixes are the best material; they are recorded by name. Notable lessons so far: phantom completions (a task reported done with not a single commit — detected by comparing the branch against main, rescued by committing the worker's uncommitted worktree); a config rewrite that silently dropped five worker routes from the inference proxy; the difference between a build that compiles and a system that boots.

The rules

The source follows KNF, the BSD kernel normal form: tabs, K&R braces, 80 columns, static by default, no fixed-size buffers, no mnx_ prefixes on functions. Reference priority is NetBSD first, then 4.4BSD-Lite2, Unix v6, OpenBSD — when the sources disagree, NetBSD wins. Every file carries a BSD 2-clause header and an RCS tag; code derived from a reference keeps its license and a SOURCE/ORIGIN block.

Provenance

The whole tree is AI-written and that fact is stated in the repo root (AI-PROVENANCE.md), in the README, and in sys/mnx/provenance.h — included by every public kernel header, so the fact is physically present in every compilation unit. Read the git log to watch an AI team build a Unix.