Skip to content

Data boundary

Data and privacy

ManualMode collects the minimum product data needed to maintain your training plan, operate billing, and understand whether the product works.

Account and training data

ManualMode stores your account, onboarding answers, training plan, attempts, bounded test summaries, Coach usage, and progress evidence so the queue can adapt across sessions.

Browser Gym code

Public tests execute in your browser; ManualMode does not run this code on the server. For signed-in training, the workspace creates a server-side attempt and sends the current code when you run tests, save, submit, or request Coach. The attempt code is stored so work can resume across sessions.

Project Mode

Raw repository source stays in your local development environment by default. Connected agents send bounded task metadata, hashes, and evidence summaries. ManualMode rejects raw source, diffs, prompts, transcripts, command output, and credentials from Project Mode payloads.

AI Coach

When you request Coach, ManualMode sends the model provider your explicitly submitted Coach message, de-identified source structure, bounded public-test signals, and effort counts. Raw source and expected or received values are not attached. Obvious credential patterns are rejected before transfer. Coach message text is not retained in durable interaction records or analytics; a hash and bounded usage metadata are retained as training evidence.

Optional public audit feedback

The public audit scores patch decisions in your browser. If you opt in to AI feedback, ManualMode sends only the short review note you entered and the public synthetic scenario to TypeSafe AI. Do not include private code or secrets. The note is not saved to your account or product analytics. You can finish the audit without AI feedback.

Stripe billing

ManualMode Pro subscriptions use Stripe-hosted Checkout. ManualMode sends Stripe your account email, internal account reference, and selected plan; card details stay with Stripe. Subscription management uses Stripe's hosted Billing Portal. ManualMode stores bounded customer, Checkout, and subscription-status identifiers, but not card data or full webhook payloads.

Product analytics

ManualMode records a closed set of first-party acquisition, activation, training, Project, and billing lifecycle events for up to 395 days. The same bounded events may be delivered server-side to an isolated PostHog project. There is no session replay, autocapture, advertising tracker, or cross-site profile. Raw code, diffs, prompts, Coach transcripts, test output, secrets, account email, and payment details are prohibited from analytics.

Optional Google Analytics

With your permission, Google Analytics records visits to public pages to show which acquisition channels bring readers. We load its tag only after you choose Allow. We send the public page path and title, without URL query parameters, account email, code, audit answers, or product events. Google may receive your IP address and set analytics cookies. You can change your choice below; declining does not affect the product. Google's privacy policy explains Google's processing.

Google Analytics for public pages: no choice yet.

Support requests

The support form stores the email, selected category, message, account link when available, handling status, and timestamps in ManualMode's database. Support content is restricted to the founder operator and is not copied into product analytics. Do not submit source code, diffs, credentials, card numbers, or other secrets.

Your controls

Project credentials are scoped and revocable. To request an account export or deletion, use the support page. Deletion anonymizes linked analytics records.
Last updated: September 29, 2026.