1. Who we are & what this covers
This Privacy Policy explains how OpenEng Labs Private Limited, Bangalore, Karnataka, India (“OpenEng”, “we”, “us”, or “our”) handles personal information across the OpenEng products and services (collectively, the “Services”):
- this website, openeng.app, including sign-in (
/oauth) and account & billing (/subscribe); - the five engineering apps — Terminal (terminal.openeng.app), Kubernetes (k8s.openeng.app), Data (data.openeng.app), Git (git.openeng.app), and Chat (chat.openeng.app) — and the engines you run for them on your own machine;
- OpenEng AI: the OpenEng AI engine (the
openeng program), the Web Console (app.openeng.app), and the Console (console.openeng.app); and - the services that support them: sign-in at auth.openeng.app, billing at billing.openeng.app, the API at api.openeng.app, releases at releases.openeng.app, feedback at feedback.openeng.app, the docs at docs.openeng.app, and the public catalogs.
You can reach us at hello@openeng.app. By using the Services you agree to this Policy. If you do not agree, please do not use the Services.
2. Information we collect
2.3 Console configurations, files, and preferences
When you use the Console, we store what you create there: the configurations you build and publish (models, agents, templates, loops, schedulers, and their settings), the files you attach to agents or templates (up to 10 MB each, kept in our cloud storage), your plan status, and your preferences, such as the theme, so they apply wherever you sign in. This is tied to your account identifier. Configs refer to secrets only by ${ENV} placeholder name — the Console and our servers reject raw secret values in a config, and the real values are resolved on your machine. If you choose, you can instead save a value for a placeholder in the optional per-config vault from the Web Console: we store it encrypted at rest, it can never be read back into a browser, it is released only to an engine that presents your API key, and an environment variable on the engine machine always takes precedence. You can clear a stored value at any time. None of this contains content from your terminals, repositories, or files unless you attach a file yourself.
If you use Human-in-the-Loop, we also store the approval requests your engine registers — the run, thread, and config identifiers, the boundary where the run paused, and the requested behavior — together with your decision. Approvals expire after 24 hours.
3. What stays on your device
OpenEng is designed to be local-first. Everything you do inside an OpenEng app executes in a local engine on your hardware, and the OpenEng AI engine runs its models and agents on your machine too. The following stay on your own machine — in the OpenEng home directory (~/.openeng by default) or wherever your tools already keep them — and are not sent to us, except as described in sections 2.2–2.4 and 6 and listed below:
- your source code, files, working directories, repositories, diffs, commits, and git credentials;
- your terminal sessions, commands, command history, output, and saved commands;
- your kubeconfigs, cluster data, logs, and secrets;
- your database connection strings, queries, and results;
- Chat projects, conversations, repository indexes, and model files;
- the AI engine’s skills and usage ledger, and the on-device models; and
- passwords and private keys, and the provider keys the AI engine stores (encrypted at rest).
These are the exceptions:
- your OpenEng key is sent to our API when the AI engine registers, fetches your configs, and checks for updates (section 2.2);
- vault values you choose to save are stored by us, encrypted (section 2.3);
- the AI engine’s threads — including anything a conversation quotes from your files — and its memory pass through the Broker when the Web Console loads them, and the Broker keeps them for 7 days by default (section 2.4);
- requests to the included Cloud Planner, paid from planning credit, pass through our API, and a hosted model you choose receives what you send it (section 6); and
- the CI/CD API token you give the Git app stays in that browser and goes only to your own forge (section 6).
In the five apps, the browser and the engine talk over loopback (127.0.0.1) on your own machine, and after the key-exchange handshake the web app seals every frame of its session — no OpenEng server sits between them. The engines ship no analytics SDKs, no crash beacons, and no usage telemetry. Beyond sign-in, key registration, update checks, and the downloads described in section 2.2, what leaves your machine is what you choose to send: requests you type in the Web Console, and the engine’s replies and data it shows you there (section 2.4), content you save in the Console (section 2.3, including any vault values you choose to store), and hosted models or services you connect (section 6).
4. How we use information
- to authenticate you, connect your browser to your local engine, and start your engines;
- to route the requests you send from the Web Console to your engine, and your engine’s replies and data back to your browser;
- to provide, maintain, and secure the Services;
- to store and serve the configs, files, and preferences you save in the Console;
- to manage your subscription and billing;
- to respond to your requests, feedback, and support questions;
- to detect, prevent, and address security incidents, fraud, or abuse;
- to understand and improve this website (in aggregate); and
- to comply with legal obligations.
We do not use your content to train AI models or for advertising.
Where required by law (e.g., in the EEA/UK), we rely on the following legal bases: performance of a contract (to provide the Services you request) and our legitimate interests (to secure and improve the Services, including measuring this website in aggregate with Google Analytics for Firebase). You can object to website analytics at any time, as described in section 9. Where we ask for your consent for something, you can withdraw it at any time.
5. How information is shared
We do not sell your personal information. We share it only as follows:
- Service providers. We use Google Firebase and Google Cloud (Authentication, Firestore, Cloud Storage, Cloud Functions, Cloud Run, Cloud SQL, Vertex AI, Hosting, and Analytics) to operate the Services. They process your account data, and the content described in sections 2.3 and 2.4 and in section 6, only to the extent needed to run the Services or to comply with the law. Google processes this data on our behalf under its own terms; see Google’s Privacy Policy.
- Payment processing. Paid plans are billed through Razorpay, which processes your payment details under its own Privacy Policy. We share with Razorpay only what is needed to create and manage your subscription (such as your account identifier and email).
- Legal & safety. We may disclose information if required by law or to protect the rights, safety, and security of our users, the public, or OpenEng.
- Business transfers. If OpenEng is involved in a merger, acquisition, or asset sale, information may be transferred as part of that transaction, subject to this Policy.
6. Third-party services you choose to use
Some features connect to services you configure. When you use them, your data goes directly from your machine to that provider under their privacy terms — not through us:
- Cloud AI models (bring-your-own-key). If you point a role at a hosted model with your own provider key, your prompts and the key are sent to that provider — through the AI engine’s gateway on your machine — when you use that model.
- Model registries. When an engine downloads model weights, it fetches them from the registry you chose — such as Hugging Face, the Ollama library, or ModelScope — which sees an ordinary download request. The Terminal engine also downloads its small suggestion model from Hugging Face once, without your choosing a registry (section 2.2).
- Your own infrastructure. SSH hosts, Kubernetes clusters and cloud providers, databases and object stores, git servers and CI systems, and the MCP servers and connectors you attach: the engine on your machine connects to them directly, with credentials you keep. The one exception is the Git app’s CI/CD view: your browser calls your forge’s API directly (GitHub, GitLab, Bitbucket, or Gitea), with the API token you enter, which is kept in that browser.
- Agent cells. Agent cells are deployed to your own cloud account; OpenEng does not host them or receive their data.
- On-device models. Local models run on your hardware and send nothing externally. The AI engine’s built-in models run in its enclosed model daemon; catalog models run in a local Ollama daemon that you install and run yourself.
One option does go through us: the included Cloud Planner (launching Q4 2026), the Console’s default option for the planner role, paid from planning credit (Pro’s included credit and any pay-as-you-go top-ups). If you use it, your planning requests pass through our API, which forwards them to Google’s Gemini on Vertex AI and meters the tokens against your planning credit.
7. Data security
We use industry-standard safeguards: encryption in transit (TLS) on every connection to our services; per-frame sealing (X25519, HKDF, ChaCha20-Poly1305) between each app and its loopback engine; the AI engine’s streamed replies sealed end to end to your browser when its session key is available, with Web Console requests and the engine data the Web Console loads encrypted in transit and at rest; OpenEng keys stored only as hashes; provider keys on your machine encrypted at rest (AES-256-GCM) with a key file only your user can read; least-privilege access controls; and input validation at every trust boundary. No method of storage or transmission is 100% secure, but we work to protect your information and to keep as much of it as possible on your own device. See Security for the full model.
8. Data retention
The work you do in the five apps stays on your machine, so there is nothing for us to retain about it. OpenEng AI runs your work on your machine too; what we hold is what the Broker routes — your Web Console requests and the engine data the Web Console loads (such as thread history and learned memory), both encrypted at rest and readable by the Broker, and the engine’s streamed replies, in end-to-end sealed form we cannot read when your browser’s session key was available and otherwise sealed to the Broker like the other engine data — for 7 days by default, after which it is deleted (see section 2.4). We retain account information, what you save in the Console, and subscription records for as long as your account is active or as needed to provide the Services. You can delete your account and associated data at any time by contacting us (see below); we will delete or anonymize it within a reasonable period, except where we must retain it to comply with legal obligations (such as billing and tax records) or resolve disputes. Server logs are kept by our hosting provider under Google’s standard operational and security retention periods.
On-device data is removed when you delete it — for example, the OpenEng home directory (~/.openeng) — or uninstall an engine. Revoking an OpenEng key in the Console stops it from starting an engine.
9. Your rights & choices
Depending on where you live — including under India’s Digital Personal Data Protection Act, 2023, the GDPR and UK GDPR, and the CCPA/CPRA — you may have the right to:
- access the personal information we hold about you;
- correct inaccurate information;
- delete your information;
- export your information (data portability);
- object to or restrict certain processing;
- withdraw consent wherever we rely on it, at any time; and
- have your grievances addressed.
To opt out of website analytics, turn on Global Privacy Control or Do Not Track in your browser — analytics then does not load on openeng.app — or block or clear cookies for openeng.app, or use Google’s Analytics opt-out browser add-on. Because we sell no personal information and run no targeted advertising, there is no “sale” or “sharing” to opt out of under the CCPA. To exercise any right or raise a grievance, email hello@openeng.app. We will not discriminate against you for exercising your rights, and you may lodge a complaint with your local data-protection authority.
10. International data transfers
OpenEng is operated from India. Our service providers (notably Google) operate globally, so your account and analytics information may be processed in countries other than your own, including India and the United States. Where required, such transfers are protected by appropriate safeguards such as the European Commission’s Standard Contractual Clauses.
11. Children’s privacy
OpenEng is intended for developers. The Services are not directed to children under 16, and we do not knowingly collect personal information from them. If you believe a child has provided us information, contact us and we will delete it.
12. Cookies & local storage
This website uses cookies and similar technologies for analytics (section 2.5) and, on its sign-in pages (/subscribe, /oauth), browser storage to keep you signed in. The apps, the Web Console, and the Console use cookies and browser storage to keep you signed in, remember your preferences, cache a one-time pairing key until it is used, and — in the Git app — hold the CI/CD API tokens you enter, which never leave your browser except to your own forge. We do not use advertising cookies or third-party advertising trackers. You can control cookies through your browser settings.
13. Changes to this Policy
We may update this Policy from time to time. When we do, we will revise the “Last updated” date above and, for material changes, provide a more prominent notice. Your continued use of the Services after an update means you accept the revised Policy.
14. Contact us
For any privacy question, request, grievance, or security report, email hello@openeng.app. We aim to acknowledge security reports promptly. See also our Terms of Service.
OpenEng Labs Private Limited, Bangalore, Karnataka, India