Build from Source
Everything needed to build Zeo lives in one public monorepo: zeo. This includes the KiCad fork (src/zeo), the kipy Python bindings (src/zeo-python), and the per-platform build scripts (dev/). There is no separate repository to clone.
Prerequisites
KiCad's upstream build documentation is the source of truth for compilers, system dependencies, and platform-specific setup: dev-docs.kicad.org/en/build.
Beyond what KiCad needs:
- Python 3.10 or later (for the
kipybindings). protoc(Protocol Buffers compiler), version 25.3 or older. From your package manager, or the protobuf releases page if a newer version is installed system-wide.
Clone
Clone with submodules (the build pulls a custom wxWidgets fork and the KiCad libraries):
git clone --recurse-submodules https://github.com/zeodotdev/zeo.git
cd zeo
If you already cloned without --recurse-submodules:
git submodule update --init --recursive
Build
The dev/ scripts wrap the full CMake build, the kipy build, and packaging. Run them from the monorepo root:
./dev/setup-upstreams.sh # one-time: configure upstream remotes
./dev/mac_build.sh # full build + install
Substitute the platform script:
| OS | Script |
|---|---|
| macOS | ./dev/mac_build.sh |
| Linux | ./dev/appimage_build.sh (Docker-based) |
| Windows | ./dev/win_build_installer.ps1 |
Pass --python to rebuild the kipy bindings, --package to produce a distributable (.dmg / AppImage / installer), and --fast for incremental rebuilds after the first build. Run any script with --help for the full flag set, or see dev/README.md.
Launching
Run the built binary (Zeo.app on macOS, zeo on Linux, zeo.exe on Windows). Enable the API server in Preferences → Plugins so the agent and kipy can connect.