openFTTH
FeaturesHow it worksDocsChangelogGitHub

Docs/Start

Introduction

What openFTTH is, how it is put together, and the rules it never breaks.

2 min read

openFTTH is an open-source, local-first desktop app where you talk to an AI crew and it designs a whole fibre-to-the-home network. Give it a map, an address list or a client GIS export. It hands back a construction-ready design: routes, chambers, splitters, splice plans and the bill of quantities.

Engine, crew and app

openFTTH is three parts that run on your PC:

  • The design engine (Python): ingest, twin, rules, solve, validate, deliver. It makes every engineering decision with deterministic solvers and rule checkers, and it also runs headless from the command line.
  • The harness (Node): the crew members, the project room, the AI engines, approvals and the runtime log, served as a local HTTP + SSE sidecar.
  • The Windows app (openftth.exe): the map, the conversation and the approval cards. It starts the harness and the design engine itself when you open it.

The crew is four long-lived agents: Surveyor, Planner, Checker and Drafter. They read the inputs, place equipment, route cables, check the rules and write the deliverables. You do not need the crew at all: Design automatically designs a whole area with the engine alone, with no AI, account or key.

The model never writes a number

The LLM plans, explains and talks. Deterministic solvers and rule checkers make every engineering decision, so every result can be repeated and audited. Every change to the design is an engine tool call that takes ids and rule references; the engine produces the numbers and records a reason for each decision.

  • The human approves. Every design change is a reviewable diff. Leaving a duct, digging a new trench or exporting for construction needs one click.
  • The human can still steer. Move a cabinet, take a building out, forbid digging on a street: each is an engine tool call with the reason on record, the routes are planned again and the Checker looks again.
  • Same inputs, same output. The same inputs give the same element ids and the same design bundle, byte for byte apart from the timestamp.

Local first

Everything runs on your machine; cloud models are optional. There is no telemetry. Network calls happen only for the AI engine you choose, for an explicit map download (the engine's fetch_osm tool, which the crew runs only when asked) and for Help → Check for updates.

openFTTH is also open to other AI apps: turn on its MCP link and Claude Desktop, Claude Code, Cursor, VS Code or any MCP client can open projects, design, ask the crew and pull the deliverables. See MCP link.

openFTTH is MIT-licensed. The source is on GitHub.