Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Fenolite

Headless, agent-first PCB design automation in Python. Fenolite lets an engineer — or an AI coding agent — generate, open, verify, compare, convert and export printed-circuit-board projects from Python code or a JSON-speaking command line, without a GUI. KiCad is the first backend (its files, with kicad-cli as the verification oracle); a second backend for another major commercial format family follows.

Status: pre-alpha. The repository is being bootstrapped. Nothing here is ready for real boards yet. Follow openspec/changes/ to see what is being built and in which order.

Fenolite is the Portuguese word for phenolic board material — the laminate many of us etched our first circuit boards on.

Principles

  • Agent-first CLI. JSON on stdout when not attached to a terminal, a fixed envelope, typed errors, a small exit-code vocabulary, and writes only with --confirm (--dry-run shows the plan).
  • Evidence on every answer. Each result says how it was verified (see below). Nothing is claimed that was not checked.
  • No silent information loss. What Fenolite does not understand in a file is preserved, and a lossy operation stops unless explicitly allowed.
  • Small, exact model. Integer nanometres and microdegrees, stable ids, canonical JSON that diffs cleanly in Git.
  • Stdlib-only core. pip install fenolite installs no other package; heavier features are optional extras.
  • Your templates, not ours. Sheet frames and title blocks are generated from your own spec; Fenolite ships no organisation's templates, rules or libraries.

The model is described in docs/design-model.md; the CLI contract in docs/cli-contract.md.

Evidence labels

Label Meaning
KICAD-VERIFIED accepted by kicad-cli of the stated version, and the claim confirmed by its output
ORACLE-VERIFIED(<tool>) an independent parser or tool agreed
CORPUS-VERIFIED round-trip holds on public files listed in the corpus manifest
ALTIUM-VERIFIED(kit) confirmed by a native-tool acceptance run with archived results
ALTIUM-VERIFIED(author-report) reported by the author from ordinary use; never enough for a release claim
INFERRED deduced from public documentation; a hypothesis in docs/hypotheses.md tracks it
UNKNOWN bytes or fields preserved without interpretation
UNVERIFIED default for anything new

A command's overall label is the lowest label of the steps it ran.

Install (development)

git clone <this repository>
cd fenolite
uv sync --extra dev
uv run fenolite --version
make check

Talk to it like an agent does:

uv run fenolite capabilities --json --fields tools          # what is installed here
uv run fenolite capabilities --text                         # the same, for humans
echo $?                                                     # 0 ok, 2 usage, 4 confirm, 5 findings …

Optional extras: geo (polygon booleans), kicad-ipc (live KiCad session), route (Freerouting client), mcp (MCP server), oracles (Gerber re-parsers used in tests), dev.

Licence and provenance

Apache-2.0 (LICENSE, NOTICE). Format knowledge comes only from public sources; see LEGAL.md for the clean-room rules and CONTRIBUTING.md for how to contribute. Every CI run and every commit (after make hooks) passes a residue scan (tools/residue/) that blocks absolute paths, internal identifier shapes and known non-public files; see docs/provenance.md for the provenance rules. AI agents working in this repository: read AGENTS.md first.

Metadata

Release files for fenolite 0.0.1.dev0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fenolite 0.0.1.dev0
File Size Uploaded
fenolite-0.0.1.dev0.tar.gz 256.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fenolite 0.0.1.dev0
File Interpreter ABI Platform
fenolite-0.0.1.dev0-py3-none-any.whl Python 3 none any Details

Total release size: 301.0 kB

Release files / fenolite-0.0.1.dev0.tar.gz

Download URL fenolite-0.0.1.dev0.tar.gz
Size 256.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e09e70c48cc100e62172b5349e641d31e81219d35eab1fc47b639a4712077236
BLAKE2b-256 checksum
How to use checksums
5ad031a5a248fd121149d0cc8379a9c81843fe2f0228646b3c27ed18c494e509
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / fenolite-0.0.1.dev0-py3-none-any.whl

Download URL fenolite-0.0.1.dev0-py3-none-any.whl
Size 44.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4a463a2e67d8910adc0cd850f13905c1e3f865e66793c03b8bf18a36828f101c
BLAKE2b-256 checksum
How to use checksums
03996b4f96cfb989e450d3ec8f48f5c0f2f36fd56cedaa6b418e62cfdcb35eaa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.1.dev0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page