Architecture overview
OfficeLabs has two halves. Most of the work happens on your computer. The cloud handles your account, billing and the connection to the AI model you picked.
On your computer
- LibreOffice. The editor you already know. OfficeLabs is a fork of it.
- The sidebar. A chat panel inside each LibreOffice window. It talks to the local assistant service for chat. It asks LibreOffice itself for the current document and selection, and to apply edits.
- The local assistant service. It runs on port 8766 and only accepts connections from your own computer. It runs the agent loop, chooses which tools to call, and holds your sign-in.
- The document bridge. A helper process that reads and edits the open document through LibreOffice's UNO interface. See The document bridge.
In the OfficeLabs cloud
- Account and sign-in. See Sign-in.
- Billing and usage. See How usage is measured.
- The AI proxy. The assistant sends model requests here. The proxy checks that you are signed in and have usage left, then forwards the request to the model you picked.
Release builds and development builds
In the OfficeLabs you download, chat in the sidebar goes through the OfficeLabs cloud. The inline completion suggestions in Writer do not: they run on your computer, on a model that ships with the app, and need no sign-in.
Development builds, which the OfficeLabs team uses to build and test the app, talk to a local model server by default instead. The OFFICELABS_CHANNEL key in Config keys decides which kind of build you have. The installer writes it, and you do not need to change it.
What is not in the path
A second local service ships with the app, but the sidebar does not use it for chat. Chat goes straight from the sidebar to the local assistant service.
For what travels between the two halves, see Data flow.
Based on the OfficeLabs architecture and the LibreOffice fork's sidebar host.