Back to Atomic

Privacy Policy

Bastani Inc. ("Bastani," "we," "our," or "us") is committed to protecting your privacy. This Privacy Policy explains how we handle data when you use Atomic, our terminal-based command-line application, and our website (the "Services").

Atomic runs entirely on your local machine. Your code and conversations do not pass through Bastani — all interactions with AI model providers are sent directly from your device to the provider you choose. Bastani does not operate servers that process, store, or relay that data. The limited exceptions are the outbound requests described in Section 1, none of which carry your code or conversations.

This Privacy Policy also describes your privacy rights. More information about your rights, and how to exercise them, is set out in Section 4 ("Rights and Choices").

1. Data Collection

Atomic Runs Locally

Atomic operates entirely on your local machine. Your source code, files, project data, configuration, session history, and all Inputs and Outputs remain on your device. Bastani does not have access to any of this data. We do not operate servers that receive, process, or store your code or conversations.

Third-Party AI Model Providers

Atomic is its own command-line coding agent and connects directly to the AI model providers you configure, such as Anthropic, OpenAI, GitHub Copilot, OpenCode, and OpenRouter. When you use these providers, your Inputs are transmitted directly from your device to the applicable third-party provider — they do not pass through Bastani. Bastani does not control the data practices of these third-party providers, and you should review their privacy policies independently.

Install and Update Telemetry (Enabled by Default)

After a first install, or when Atomic detects an update from its changelog, Atomic sends a single anonymous version ping to https://pi.dev/api/report-install. The request carries the Atomic version number, and its user-agent header identifies the application version, operating-system platform, JavaScript runtime version, and CPU architecture. It does not include your code, conversations, Inputs, Outputs, commands, file paths, account details, or any identifier assigned to you. The pi.dev endpoint is operated by the upstream Pi project, not by Bastani.

This ping is controlled by the enableInstallTelemetry setting, which defaults to enabled. Setting it to false turns the ping off, but note that a defined ATOMIC_TELEMETRY environment variable (or its legacy alias PI_TELEMETRY) takes precedence over the setting in both directions: a value of 1, true, or yes re-enables the ping even when the setting is false, and any other value disables it even when the setting is enabled. Running Atomic with --offline or ATOMIC_OFFLINE=1 suppresses the ping unconditionally, ahead of both the setting and that variable, along with all other startup network operations.

Update Checks (Separate from Telemetry)

Independently of the setting above, Atomic may check the public npm registry at https://registry.npmjs.org/@bastani/atomic/latest to see whether a newer version exists. Turning off install telemetry does not disable this check; --offline or ATOMIC_OFFLINE=1 does. This request goes to the npm registry, not to Bastani.

Model Catalog Refresh

On a normal, non-offline interactive start, Atomic refreshes its model catalog by requesting https://pi.dev/api/models/providers/<provider> for each provider you have configured. The request path names the provider, so this discloses which model providers you use. Its user-agent header carries the same application version, operating-system platform, JavaScript runtime version, and CPU architecture as the install ping. It sends no code, conversations, prompts, Inputs, Outputs, or credentials. The request is revalidated with a cached ETag, is rate-limited between refreshes, and keeps the cached catalog when it fails. Running Atomic with --offline or ATOMIC_OFFLINE=1 disables it. As with the install ping, pi.dev is operated by the upstream Pi project, not by Bastani.

Website Analytics

This website loads Plausible Analytics (plausible.io) on its public pages, including this one, to count page views and referrers in aggregate. Plausible is a third-party service and operates under its own privacy policy; Bastani does not control how it processes requests. This applies to the website only — Atomic itself does not load it.

Communication Information

If you contact us directly (for example, by email), we receive the contents of any messages you send.

No Third-Party Data Collection

Bastani does not obtain or collect data from third-party external sources.

2. Uses of Data

We use the limited data we receive for the following purposes:

3. How We Disclose Data

Because Bastani does not operate servers and does not collect or store user data beyond the flows described in Section 1, we have very limited data to disclose. The following may apply:

4. Rights and Choices

Depending on where you live and applicable laws, you may enjoy certain rights regarding your data. To exercise your rights, you may submit a request by emailing us at stealthbastani@gmail.com.

5. Data Transfers

Bastani does not operate servers and does not transfer your code or conversations. When you use a third-party AI model provider through Atomic, your data is transmitted directly from your device to that provider, which may be located in another country. These transfers are governed by the third-party provider's privacy policy. The install/update version ping and the model catalog refresh described in Section 1 are sent to pi.dev endpoints operated by the upstream Pi project and may be processed in the United States.

6. Data Retention and Security

Requests to pi.dev

The install/update version ping and the model catalog refresh are sent to the third-party pi.dev endpoints described in Section 1. Neither carries an account identifier, and neither carries your code or conversations. Bastani does not operate those endpoints and does not control how long they keep request data.

Local Data

Atomic stores session data, configuration files, workflow state, and task histories locally on your device (e.g., in the ~/.atomic/ directory). This local data is under your control. You may delete local data at any time by removing the relevant files. Removing the Atomic application itself is a package-manager operation, such as npm uninstall -g @bastani/atomic. Bastani does not have access to data stored solely on your local machine.

7. Children

Our Services are not directed towards, and we do not knowingly collect information from, children under the age of 18. If you become aware that a child under 18 has provided data to us, please email us at stealthbastani@gmail.com and we will investigate and, if appropriate, delete the data.

8. Changes to This Privacy Policy

Bastani may update this Privacy Policy from time to time. We will notify you of any material changes as appropriate and update the Effective Date at the top of this page.

9. Contact Information

If you have any questions about this Privacy Policy, you can contact us:

10. Legal Bases for Processing

The table below summarizes the legal bases on which we process data: