BooleOS: building a bare-metal x86 OS without writing a single line of it myself
BooleOS is a hobby operating system for x86 (32-bit), written in C99 and NASM, no Linux or BSD underneath, no libc. It boots via Multiboot2, has its own heap manager (no raw malloc), a FAT16/VFS layer, and a cooperative scheduler so far. Repo: https://github.com/BooleSystems/BooleOS The actual premise I don't write the code. I direct Claude Code, review every diff, and decide what gets built…
BooleOS is a hobby operating system for x86 (32-bit) that has been developed without writing a single line of code myself. Instead, I employ Claude Code, which writes the implementation, and I review every change before deciding what to build next. This AI-generated code must adhere to strict guidelines outlined in its CONTRIBUTING.md file, and contributions must also be AI-generated with a verifiable co-author tag.
The project's focus on bare-metal development poses unique challenges, as it lacks the support and guardrails found in typical web app or high-level system projects. Bare-metal systems have no libc to catch pointer errors, no OS to manage processes, and no standard debugger tools. As a result, reviewing AI-generated code requires a much deeper level of scrutiny.
The project's constraints are non-negotiable, including a commitment to 32-bit architecture, identical 32-bit and 64-bit behavior, and the use of fixed-width types from stdint.h. These rules prevent common assumptions made in Linux environments. The development process involves careful constraint setting, manual testing in QEMU, and the construction of a custom heap manager and graphics API.
The project is not yet at a 1.0 release but has achieved functional USB HID input and is moving toward a minimal GUI. This story delves into the unique challenge of building an OS from scratch using AI while adhering to strict constraints that mimic the real-world development of a bare-metal system.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.