Built so your code has nowhere to go.
isobata runs on one Linux server that you control, in your cloud (VPC) or on-premises. The AI models run on that server's GPU. This page describes what runs there, what can reach it, what it can reach, and how each release is checked before it installs.
Architecture
Your team opens one HTTPS address. Behind it, every service sits on a private network with no route to the internet. The only way out is an egress proxy that allows the hosts you list and logs every request.
What runs on the server
| Component | What it does | Reachable from |
|---|---|---|
| Proxy | Terminates HTTPS and routes requests to the web app and the answer service | Your network, on port 443 (and 80 for certificates and the redirect to HTTPS) |
| Web app | The chat your team uses | The proxy only |
| Answer service | Searches the index and writes answers with their sources | The proxy only |
| Ingestion | Reads your repositories, docs and Figma files and builds the index | Its admin API listens on the server itself (127.0.0.1), never on the network |
| Index and queue | Store the indexed pieces and the indexing jobs | The services only; the index requires a key generated at installation |
| Models | Open-weight models on your GPU (see AI models) | The services only |
| Egress proxy | The services' only way out | The services only |
Network
One way in
Only the proxy publishes ports. The web app sees nothing but the routes it needs; ingestion's administration endpoints answer on the server itself and are not exposed to the network. Installation ends with a test that confirms they cannot be reached through the proxy.
One way out
The services are on a private network with no route to the internet and no outside DNS. Their only exit is the egress proxy, which allows the hosts on an allowlist built from your settings: your code host, the Figma API if you use it, and the model publishers for the downloads at installation. You can add hosts; everything else is refused. Every request, allowed or refused, is logged with its time and host, so your security team can see exactly what left the server.
Even if a component tried to send data somewhere else, the network would refuse it.
Installation and upgrades
When you install or upgrade, the server downloads isobata's signed images from our registry and the standard components (index, queue, proxy, model servers) from their publishers' registries, each pinned to an exact version.
Your data
- It stays on your server. The index and the generated descriptions live on the server's disks. Backups are written to a folder on the server, for you to copy where your policies require.
- Read-only access to your sources. isobata reads your code host with a read-only token and Figma with a personal access token. The tokens are kept in a settings file readable only by its owner.
- We receive nothing. No telemetry, no usage reports, no crash reports. The licence is checked offline on your server. The index's own telemetry is switched off.
- Never trained on your code. The models are fixed open weights. Nothing learns from your code, your questions or the answers, and none of it leaves your server.
Signed, scanned releases
- Signed. Every isobata image and every release package is signed. The installer checks the signatures against a public key we send you separately, before it runs anything, and again on every upgrade. A release that fails the check does not install.
- Vulnerability-scanned. Every image is scanned before it is published. A release is blocked when it contains a high or critical vulnerability that has a fix. Published images are scanned again on a schedule, and each release includes its scan reports.
- Minimal images. isobata's services run on distroless base images, as a non-root user, with a read-only filesystem. Each image carries its software bill of materials (SBOM) and third-party notices.
Operations
- HTTPS with a free Let's Encrypt certificate or your own, and HSTS.
- Upgrades roll back by themselves. An upgrade checks the new release, takes a backup, starts it and tests it; if anything fails, the previous release comes back.
- Backup and restore with one command each.
- The licence never stops answers. It is a signed file checked offline. Near expiry the app shows a notice; after the grace period, new indexing pauses while answers keep working.
Access
Install isobata on a network that only your team can reach, such as your private network or VPN. Single sign-on with your identity provider is on the roadmap: tell us which one you use when you apply for the pilot.
Does your security team have questions, or a questionnaire to fill in? Write to pilot@isobata.ai.
Apply for the pilot