Privacy

A private AI browser for iPhone, with the limits written down.

Peji runs the browser, the files and the dictation on your iPhone. The model is remote, and the request that reaches it carries only what the answer needs. This page says what stays, what travels and what no server keeps.

Checked on 2026-10-30

Where each thing lives

Most privacy pages describe a policy. This one describes the places. Each row is a place where a piece of your data can be, and the only people who can read it there.

PlaceWhat stays thereWho can read it
Your iPhoneChats, attachments, routines, settings, tabs, downloaded files, recorded audio until it is transcribedYou, and the apps you give access to with iOS
The iOS KeychainAPI keys and session tokens, marked this device onlyOnly this iPhone; they never enter a chat, a backup or a log
Your iCloud DriveThe backup you choose to create, in your own containerYou and Apple; Peji holds no key and cannot open it
The Peji server, with the built-in providerAccount, session hashes, code hashes, daily token counters, plan and subscriptionPeji, as described below
The model provider, while it answersThe request: your message, the page text and images the agent read, the files it openedInference.net for text and Runware for pictures, both with zero data retention
The model provider, with your own endpointThe request goes straight to the endpoint you configuredThe provider you chose; the Peji server receives nothing

What the Peji server keeps, and what it does not

With the built-in provider every request passes through the Peji server, because that is where the monthly usage is counted before the request goes on to the model. Forwarding is not keeping: the server writes no message, page, image, tool result or answer to its database, and no log line carries the body of a request. The logs hold the upstream status and the byte count.

Two tests in the repository prove it on the paths that matter: the chat proxy and the picture route. Both check that the text and the bytes never reach the database or the log.

  • Kept: the account, the email, the hashed sessions and verification codes, the daily token and cost counters, the plan.
  • Kept: the subscription status it reads from RevenueCat, so it can give you Pro.
  • Not kept: the message text, the answers, the page text, the tool results.
  • Not kept: the images the agent looked at, the pictures it generated, the files it read.
  • Not kept: cookies, browsing history, the sites you visited.

Zero data retention at the model providers

The server forwards to inference.net for text and to Runware for pictures. Both accounts run with zero data retention turned on: they answer the request and keep no copy of it, and no operator there reads it. Any provider or model added later has to work the same way to be allowed in.

A script in the repository checks the setting against the live key for every model the app can use, so the claim is tested and not just written.

Your own endpoint, and a server that never hears from you

The second way to power the assistant is your own endpoint: any address that speaks the OpenAI chat completions format with streaming and tool calls. The key stays in the Keychain and the request leaves the iPhone for your provider. The Peji server receives nothing, not the request, not the answer, not a counter.

The same is true of the browser itself. Opening a page, switching tabs, downloading a file: those are WebKit calls on your phone. No Peji account is needed for any of it.

What actually runs on the iPhone

The word private is doing a lot of work in this category, so here is the honest split. Peji is not an on-device model. The browser, the stored chats, the files, the routines and the dictation run on the iPhone; the model that writes the answers runs on a server, because an iPhone cannot hold the model the agent needs for this job.

Dictation is the one model that does run locally: Whisper base, about 150 MB of weights, downloaded once and verified by size and SHA-256. The recording is a temporary file, deleted after the transcription. The text goes into the message field and waits for you to send it.

What you can switch off

  • The built-in provider: use the browser without an account, and the chat stays off until you add an endpoint.
  • The ad blocker: an extension you download yourself, off until you ask for it, and removable, which unloads it.
  • Dictation: off until you download the model, and you can remove it.
  • The account and everything on the server: deleting it from the app removes the account, its sessions and its counters. Chats stay on the iPhone until you delete them, and the subscription is cancelled in your Apple ID settings.
  • The website: no cookies, no advertising identifier. The pageviews are counted with Plausible on our own server, and blocking the script leaves the page working.

Questions

Is Peji an on-device AI browser?

No. The browser, the chats, the files and the dictation run on the iPhone, and the language model runs on a server. An iPhone cannot hold a model that can drive a browser across tabs. We say remote, so nobody downloads the app expecting an offline agent.

Does the Peji server read my messages?

The server receives a request to forward it, counts the tokens for your monthly usage and passes it on. It writes no message, page, image or answer to its database, and the logs keep the status code and the byte count, not the body. Two tests in the repository check that these two paths store nothing.

Where do my chats go when the app closes?

Nowhere. Chats are JSON files in the app folder on the iPhone, and attachments are files next to them. They leave the iPhone only if you create an iCloud backup, which goes to your own private container, or if the agent reads a file in a request to the model.

Can I use Peji without a Peji account?

Yes. Add your own OpenAI-compatible endpoint and the key stays in the Keychain. The Peji server receives nothing, the browser works the same and no subscription is needed.

What happens when I delete my account?

The account, its sessions and its usage counters are removed from the server. Chats, attachments and settings stay on the iPhone until you delete them in Settings, and the subscription stays active until you cancel it in your Apple ID settings, because Apple manages it.

Does this website track me?

It counts pageviews with Plausible, running on our own server in the European Union, without cookies and without a persistent identifier. The full list of what it records is in the privacy policy.

Read it, then try it.

Peji is free on the App Store. Every feature is in the free plan, and Pro only adds monthly usage.

Get Peji on the App Store