The three promises
Your code stays on your computer
Your project files never touch Onlook’s servers. The AI sees only the context it needs, through your own Claude or ChatGPT account.
You decide what ships
Nothing reaches your team’s repository until you send it.
Edits happen on a copy of your codebase, locally
Onlook works in its own copy, on its own branch. Your original files stay as you left them.
What “a copy” means
When you choose a folder, Onlook makes a separate copy of your code in its own folder on your Mac. It also makes a new branch for that copy, based on your main branch.- Your files are untouched. Onlook never edits, moves or commits the files in the folder you chose. The copy is a git worktree, so your repository’s git records list its branch. When you remove the project from Onlook, that branch stays in your repository.
- The agent only works in the copy. Onlook refuses to run the agent anywhere else.
- The copy lives in Onlook’s data folder, under
~/Library/Application Support/Onlook Studio/workspaces. - If Onlook can’t make a copy, it stops. It never falls back to working in your folder.
What leaves your Mac
This is the full list:- Context sent to the AI you signed in to. To make a change, the agent sends the parts of your code it needs to Claude or ChatGPT, under your own account. That’s the same as using those tools directly.
- Your pushes and pull requests to GitHub, and only when you approve them.
- Usage events to Onlook, such as which features you use. After you sign in, they’re linked to your email address. They never include your code, file paths, prompts, or repository or branch names.
- Diagnostic logs and error reports, so we can fix what breaks. They follow the same rule: no code, prompts or file paths.
- Reports you choose to send with Send feedback: your message, your Onlook version and an anonymous ID. Nothing from your project.
- Your email address, which you enter when you sign in.
Environment files
Most apps need a.env file to run. To start your app the way it starts for your engineers, Onlook copies the .env files your repository already ignores into the copy. Git keeps ignoring them there, so they stay out of commits.
If your folder wasn’t a git repository, Onlook also tells git in its copy to ignore .env files, keys and build output.
What needs your approval
With Claude, the agent always asks before it:- pushes to GitHub
- creates or merges a pull request
- force-pushes, deletes a branch or throws away work with a hard reset