# `rho agent`
## Purpose
`rho agent` launches and supervises an agent in repo context.
V1 can use Pi as the first backend, but `rho agent` should own the product-facing contract rather than Pi-specific details.
## Responsibilities
- build agent context from repo state
- expose repo-local tools and messages
- read incoming messages
- let the agent propose actions via tool calls written to outside the sandbox
- route protected execution through `rho run`
## Simplify
- one agent runner abstraction
- one default backend first
- avoid mixing transport, approval, and execution directly into the agent runtime
## Replace Old Functionality With
- a thin agent launcher
- explicit bindings to `rho tools`, `rho messages`, and `rho run`
- stable request files for protected actions
## Leave Off In V1
- multi-agent orchestration frameworks
- many provider backends
## Important Rule
If an agent wants to do something sensitive, it should emit a structured request that deterministic code can validate.
It should not directly gain new privileges because it wrote convincing text.