gravity.controlbeta

Privacy and data

Gravity runs on your own computer. Your code, your AI logins and your full plans stay there. Gravity Cloud keeps only what the control room needs, and only after you pair a device or make an account.

Gravity is offered by Nils Groove. Contact: hello@gravitycontrol.app. Last updated 31 October 2026.

Your account

We do not sell or rent your data, and we do not use it for ads.

Never collected

On your device

FileWhat
~/.gravity/config.tomlYour projects, their folders and plan files.
~/.gravity/cloud.jsonOnly when paired: the device token (file mode 0600), your choices (item text, adds, error reports).
~/.gravity/holds.jsonPaused projects.

In Gravity Cloud (only after gravity pair)

TableWhat it holdsHow long
devicesDevice name, your account, a SHA-256 hash of the device token (never the token), last seen, Gravity version, plan usage percent, OS family and Node version, the GitHub owners you allow for adds, the last add result.Until you remove the device.
pair_requestsHashes of the pairing codes, device name, the IP address that asked, state.Deleted after the 10 minute expiry.
statusPer project: name, plan file name and line, the next item (secrets removed, at most 140 characters; off with gravity pair --no-item-text), blocker count, state, last progress time, open owner decisions (secrets removed, at most 200 characters).Replaced on each change; removed with the device.
eventsProject name, kind and time of each status change.The newest 500 per device.
commandsYour pause, resume, answers and adds, until the device collects them.Until the device confirms them.
error_reportsOnly with gravity pair --error-reports: error codes and counts per day.30 days.
failuresFailed code entries by account and IP address, for the lock that stops guessing.15 minutes.
userOnly with a control room account: your email address, name, sign-up time and, with Google or GitHub sign-in, your profile picture link.Until you ask for the account to be removed.
sessionSign-in sessions: a random session token, the IP address and browser name at sign-in.30 days, or until you sign out.
accountThe sign-in method linked to your account (email link or passkey), no password.Until the account is removed.
verificationThe one-time code of an email sign-in link.10 minutes.
passkeyThe public key of each passkey you add (never the private key), its name and device type.Until you remove the passkey or the account.
rateLimitRequest counts per IP address and route, to stop abuse.1 minute windows.
billingOnly with Gravity Pro: the Stripe customer and subscription IDs, the subscription state, plan and renewal date. No card data: Stripe holds the card.Until the account is removed.
auth_sendsA hash of the email address and the IP address of each sign-in link sent, for the limit of 5 links per hour.1 hour.

Remove a device on the Devices page: its token stops working at once and its rows in devices, status, events, commands and error_reports are deleted. gravity unpair deletes the token on the device.

Where it runs

Gravity Cloud is a Cloudflare Worker with a Cloudflare D1 database. Cloudflare processes requests as our hosting provider. Worker request logging is off. The control room signs you in with your account; the owner pages use Cloudflare Access.

Delete your data

Write to hello@gravitycontrol.app from your account email. We delete your account, sessions, passkeys and devices within 30 days and confirm by email. You can remove a device yourself at any time, as above.

See also the terms.