Reference / AI coding agents
Compare AI coding agents.
Where commands run, where models are hosted, and how work gets reviewed.
Published comparison · 2026-09-08.1 · recorded
Coverage & source checksChoosing a GitHub workflow? Compare issue-to-PR workflows
Full comparison · vendor documentation
| Documented characteristic | CursorCloud Agents · Team Pools | GitHub CopilotCloud agent · Standard runnerExact configurationPaid Copilot plan · standard GitHub-hosted ubuntu-latest · one GitHub repositoryGitHub | JunieCLI · OpenAI BYOK |
|---|---|---|---|
| Where commands runWhere the agent changes files and runs tools, builds and tests. | CursorCloud Agents · Team Pools Company-managed worker runs file edits and terminal commands. The team operates the worker infrastructure. Customer-managed tool execution does not mean offline inference. Source ↗ | GitHub CopilotCloud agent · Standard runner The standard configuration runs on a GitHub-hosted Actions runner using ubuntu-latest. Self-hosted runners are a separate configuration. This record uses the standard ubuntu-latest runner. Self-hosted and custom runners are separate configurations. Source ↗ | JunieCLI · OpenAI BYOK Runs against a project directory on the machine hosting Junie CLI. The CLI operates in its project directory. This is separate from where model requests go. Source ↗ |
| Model hosting and coordinationWhere model requests go and how the agent coordinates work. | CursorCloud Agents · Team Pools Cursor cloud runs inference, planning and the agent loop. The worker sends tool results and needed content to Cursor. Exact model, provider and inference region are unspecified; needed content leaves the worker. Source ↗ | GitHub CopilotCloud agent · Standard runner Unknown Not established for this configuration. GitHub documents model-specific hosting; runner location does not establish inference or orchestration location. Model-dependent hosting; no model selected. Separate orchestration location is also unknown. Source ↗ | JunieCLI · OpenAI BYOK With OpenAI BYOK, LLM requests go directly to OpenAI. Inference region and separate orchestration location are not established here. OpenAI BYOK only. Exact model, region and a separate orchestration host are unknown. Source ↗ |
| Source controlWhich repository services this configuration supports. | CursorCloud Agents · Team Pools Repository-backed workers use an accessible Git checkout. This record selects the documented GitHub repository workflow. Selected scope: a GitHub checkout already accessible to the worker. Other SCM hosts are not established here. Source ↗ | GitHub CopilotCloud agent · Standard runner Works on a GitHub repository, with one target repository per task. Managed-user-owned repositories and repositories where access is disabled are excluded. One target repository per task; managed-user-owned or disabled repositories are excluded. Source ↗ | JunieCLI · OpenAI BYOK Local Git checkout, with optional Git worktrees. A host-specific repository integration is not established for this selected terminal mode. Git worktrees are optional. This does not establish a host-specific integration. Source ↗ |
| How work startsHow you can give the agent a task. | CursorCloud Agents · Team Pools Select a pool in the Cloud Agents dashboard or direct a request to that pool through the API; team routing settings apply. The request must target the configured pool; ordinary requests may use Cursor-managed machines. Source ↗ | GitHub CopilotCloud agent · Standard runner Start from the agents panel on GitHub.com, assign an issue, or mention Copilot in a pull-request comment. GitHub.com, issue assignment and PR comments are documented; no API trigger is established in this record. Source ↗ | JunieCLI · OpenAI BYOK Start junie in the project and type a prompt. Sensitive actions require approval unless allowlisted or a broader Brave mode is enabled. Interactive terminal, Brave Off selected; configured allowlists still apply. Source ↗ |
| Output and handoffWhat you get back and how it reaches review. | CursorCloud Agents · Team Pools File edits happen on the worker. Uploaded artifacts can appear in pull requests and the Cursor dashboard. Artifact upload can be blocked. Automatic PR creation for every worker setup is not established. Source ↗ | GitHub CopilotCloud agent · Standard runner Changes are made on a branch. From GitHub.com, inspect the diff and iterate before choosing to create a pull request. GitHub.com supports review before PR creation; issue entry points may create a PR directly. Source ↗ | JunieCLI · OpenAI BYOK Edits project files and returns terminal responses with a session transcript. Pull-request handoff is not established for this selected mode. Local files and transcript are documented. Automatic PR creation is not established for this mode. Source ↗ |
| Access and availabilityPlans, setup, approvals and restricted access. This is not a cost estimate. | CursorCloud Agents · Team Pools Enterprise plan, team admin configuration and a service-account API key are required for Team Pool workers. Workers need the CLI and outbound HTTPS. Enterprise and team admin configuration apply. Region and release stage are not established. Source ↗ | GitHub CopilotCloud agent · Standard runner Available on paid Copilot plans. Business and Enterprise require admin enablement; repository owners can disable access. Paid plan required; Business and Enterprise need admin enablement. Exact price, quotas and region are outside scope. Source ↗ | JunieCLI · OpenAI BYOK Linux, macOS or Windows, with an OpenAI API key. BYOK is billed by the provider and does not require a JetBrains AI subscription. The provider bills BYOK usage. Exact cost, regional availability and release stage are not established. Source ↗ |
Vendor documentation; no independent product tests. Original release JSON
Earlier records
Mistral serverless API: mistral-medium-latest and mistral-large-latest. Their source revision dates do not establish live routing switch dates.