> ## Documentation Index
> Fetch the complete documentation index at: https://getpullrequest.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# How local execution works

> Why agents run on your machine and what the cloud does.

GPR’s default model is **bring your own agent (BYOA)**.

## On your machine

* `gpr` daemon stays connected over websocket
* Agent processes spawn locally over ACP stdio
* Git worktrees and branches live on disk under your workspace
* Your existing toolchains, tests, and credentials apply

## In the cloud

* User auth (Firebase)
* Task board, queue, and state machine
* Websocket hub / ACP frame relay
* Optional OAuth tokens for GitHub, Jira, Slack
* Push notifications and other app APIs

## What that means

| Concern                          | Where it runs                            |
| -------------------------------- | ---------------------------------------- |
| Code edits                       | Your machine                             |
| Test commands                    | Your machine                             |
| Model calls for the coding agent | Whatever that agent is configured to use |
| Board / orchestration            | GPR backend                              |
| Opening a GitHub PR              | Backend → GitHub API (with your OAuth)   |

The relay sees ACP traffic needed to drive the session from your phone. It is not a substitute for the agent runtime.
