Skip to main content
Reliant is a cloud service, and you need an account to use it. The desktop and web apps talk to Reliant’s API and workflow servers in Google Cloud (us-central1), and those servers run the agent loop. They call the AI model. When the model wants to read a file or run a command, they send that tool call to a daemon: one running on your own machine, on any machine you own, or on a cloud machine we host for you. The daemon returns the result. Our servers store it in your chat and send it to the model as context. Model calls are always made from our servers, never from your device, whether you use your own API key, a provider login, or Reliant AI. So your repository stays wherever the daemon runs. But anything the agent reads, and anything a command prints, is sent to our servers, stored with your chat, and sent to your model provider.

How data flows

A local daemon connects outbound to our gateway; it doesn’t open any inbound ports on your machine. It only reads files and runs commands when the agent asks it to.

What goes where

Secrets get no special handling. If the agent opens a .env file, prints an environment variable, or runs a command that echoes a token, that text becomes tool output. It is stored with your chat and sent to your model provider. Keep secrets out of the agent’s reach, use approval modes for commands you haven’t reviewed, and store deployment secrets with Secrets. If a key has been exposed, rotate it.

Local daemon vs. cloud machine

See Machines for how to run a daemon on your own machines.

Local models

You can point Reliant at a model server running on your own hardware (Ollama, LM Studio, or any OpenAI-compatible endpoint) in ~/.reliant/config.yaml; see Model Configuration. Because model calls are made by our servers, the request is relayed through your daemon to the local server. That means the prompt and the reply still pass through our servers and are stored in your chat like any other. A local model keeps the inference on your hardware, not the conversation. It needs a daemon on the machine that can reach the model server.

Other services the agent can reach

  • Integrations you connect (GitHub, Gmail, Slack, Twilio, custom HTTP): what the agent sends goes to that service under your account.
  • MCP servers you configure get the tool calls the agent makes to them.
  • Web search and fetch: a web search sends the agent’s query to a search provider (currently DuckDuckGo), and fetching a page sends a request to that site. These requests may come from our servers or from your daemon.

Your model provider and training

No training

We don’t use your content to train or fine-tune AI models. That includes your prompts, code, files, tool outputs, chats, attachments, and anything from services you connect. This applies to every user on every plan.

Your own API key or provider login

If you add your own API key, or sign in with a provider subscription (Claude, Codex, GitHub Copilot and others), our servers call that provider on your behalf, under your account. The provider’s terms and privacy policy apply to what it receives, including whether it keeps the data or trains on it. API plans and consumer subscriptions are often treated differently, so check your provider’s settings:

Reliant AI

If you use the optional Reliant AI provider:
  • Requests go through a proxy we run ourselves (LiteLLM) to Google Vertex AI. The proxy records the model, token counts and cost, for billing.
  • Google Cloud’s terms don’t allow Google to use these requests to train or fine-tune AI models without our permission, and we haven’t given it.
  • To respond faster, Google may hold inputs and outputs in memory for up to 24 hours. Google may also log prompts for a limited time to detect abuse, as Google describes.
  • We use Vertex AI’s global endpoint, so a request can be processed in any Google region, not only the US.
Whichever provider you use, the conversation is also stored in your chat history on our servers.

Telemetry

Both kinds of telemetry are on by default. To turn them off, go to Settings → Privacy. Crash reports contain error details and stack traces; we don’t upload memory dumps. Turning off analytics also stops the analytics events our servers record about your account. The switches don’t cover:
  • Server logs. They record identifiers (such as user, chat and run IDs, and sometimes your email address), counts, durations, status codes and IP addresses, not the content of your prompts, chats, tool inputs or outputs, or files. File paths can appear in error logs for file operations. Server logs and metrics are kept for 30 days.
  • Server-side error reports, which go to Sentry with the same shortening and credential redaction.
  • Billing usage records: the model, token count and cost of each request, which we need to bill you.
  • Update checks: the desktop app checks downloads.reliantlabs.io for updates, which sends your IP address and app version. Updates download only after you agree.
This docs site is hosted by Mintlify, which may collect usage analytics about it under its privacy policy. Our marketing site, reliantlabs.io, has its own cookie choices under Your privacy choices in its footer; they don’t apply to this docs site.

Deleting your data

Chats

Deleting a chat archives it. Deleting the archived chat permanently deletes it, along with its messages, tool outputs and attachments.

Cloud machines

Go to Settings → Machines and delete the machine. This deletes its disk and everything on it.

Credentials and integrations

You can remove API keys and provider logins, and disconnect integrations, in the app’s settings at any time. For Gmail, we also revoke the token with Google. Data an integration already pulled into a chat stays there until you delete the chat.

Your account

Go to Settings → Account → Delete account, or email support@reliantlabs.io.
  • Before you can delete: deletion is blocked while a paid subscription is active, so cancel it in the billing settings first. A wallet balance doesn’t block deletion.
  • Your wallet balance: Wallet top-ups include a 5% service fee; coupon credits carry none. Reliant AI usage is billed at the provider’s price. When you delete your account, we refund the face value of your unused paid credit to the card you paid with (the service fee isn’t refunded), and promotional credit, such as credit from coupons, is forfeited. Promotional credit counts as spent before paid credit, so a coupon can’t be turned into cash. The confirmation screen shows both amounts before you confirm. Card refunds usually take 5–10 business days to appear. If a refund can’t go back to your card automatically, our support team refunds it for you.
  • What’s deleted: your sign-in identity, chats and everything in them, projects, workflows, settings, credentials and cloud machines. If you host apps with us, delete them first, or ask support to remove them.
  • What we keep: invoices, usage records, subscription and wallet history, records of any refund made at deletion, and records at Stripe, as the law requires. We remove or replace your account identifiers in them where we can.

How long we keep things

The Privacy Policy has the complete list.

Clearing local app data

These commands remove Reliant’s files from your computer: your local config, the desktop app’s data and sign-in state, and daemon credentials. They don’t delete anything on our servers; delete your chats and account for that. Your project files (reliant.md, .reliant/ in your repos) aren’t touched.
~/.reliant/ also contains the git worktrees Reliant creates (~/.reliant/worktrees/). Commit or push any work in them before deleting it.

Security practices

Credentials. API keys, provider sign-in tokens and integration credentials are encrypted at the application layer, with a key specific to your account, before they’re written to our database. Code modifications. In manual approval mode, Reliant shows each edit before applying it and waits for your confirmation. In auto modes, edits are applied directly and shown in the conversation as they happen. Tool execution. Shell commands and file operations are logged in the conversation, visible in the UI before execution, and controllable via approval modes.

More detail