# How it works

> Who does what between your request and your live app: you, the agents, the shared toolkit, and us.

GoLocomotive has three parts that work together: your app, the agents that change it, and the portal where you meet them. This page explains each part in plain words. The technical version is in [Developers](https://golocomotive.fr/docs/developers.md).

## Your app

- **One app, one process, one database.** Your app is a single program with its own database file. It serves its screens, its data and its admin. No other customer's data is in it, and no other customer's app runs in it.
- **Its own code.** Each app is a separate code repository. Every change an agent makes is a saved step in its history, with a message that says what changed and why. The code and the data are yours: you get the full repository on request, at any time. See [Your data](https://golocomotive.fr/docs/trust/data-protection.md#take-it-with-you).
- **Small on purpose.** The app holds only what is yours: the shape of your data and its rules, your screens, and a few actions that run on the server. Sign in, data screens, mail, backups and the rest come from one shared toolkit, `locosdk`. A small app is easier to change safely, and easier to check by looking at it.
- **Two copies.** A working copy runs on our build machine: that is the preview you see in the portal, and the copy the agents change. The live copy runs on our production server, and it changes only when you deploy a release.

## The agents

An agent is an AI coding assistant that works on one request in your app's code. It follows the same steps every time:

1. It reads your request, your words and the rectangles you drew.
2. It takes a picture of the screen as it is now.
3. It changes the code. The preview reloads by itself.
4. It runs the app's checks: the code compiles, the tests pass, the code style holds.
5. It writes one line for your users' "what's new" note, in your app's language.
6. It saves the change, takes the picture after, and sends you the card.

An agent never asks you a question in a chat window that nobody reads. It asks on the card and stops. Your answer, your approval with a fix, or your rejection is its next instruction.

Each agent works inside a closed space: it can change only your app's code, it can reach only the few internet services it needs, and each run has a spending limit. See [How agents are contained](https://golocomotive.fr/docs/trust/agents.md).

## The portal

The portal is where you meet the agents. One page shows your apps, the cards, the open card and your live app side by side. From the same page you release and deploy, manage your users, and change your app's name, color, logo and address. See [Using the portal](https://golocomotive.fr/docs/using.md).

## Us

We run the machines: the build machine where agents work and the production server where your live app runs. We keep the shared toolkit, the agent rules and the portal up to date. Your app receives toolkit updates the next time an agent works on it.

## Why this shape

- **You judge results, not specifications.** A picture before and after, next to the live app, is faster to judge than a document.
- **Nothing ships without you.** Agents can change the working copy. Only you release and deploy.
- **One rule set for everyone.** The rules that decide who can read or change a record live in the app's server. The screens, the agents and your own AI all go through them. A screen that hides a button is a convenience, the server rule is the protection.
