remoteagent init, and you can change it at any time by re-running init.
Comparison table
How to select a runner
Runremoteagent init and the wizard will show an interactive list — use the arrow keys to pick a runner, then press Enter:
--runner:
Switching runners
To change the runner for an existing agent, runremoteagent init again in the same project directory. The wizard will detect your existing configuration and ask what you want to do — choose “Update runner — keep existing pairing” to change only the runner without re-pairing.
After the wizard completes, start the agent:
Runner architecture
All runners implement the same interface internally. When the agent receives a command, it calls the runner with the prompt and streams chunks back as they are produced. The runner is responsible for:- Receiving the prompt string
- Invoking the AI model (in-process, via subprocess, or via HTTP)
- Yielding output chunks as they arrive
- Signaling completion or error
Runners marked Beta are functional but may have edge cases in output
parsing or error handling. If you encounter issues, please open an issue on
the GitHub repository.