# Product vs runtime agent

## Two jobs

**Your product**: UI, login, tenants, permissions, business data, server routes, storage, previews, and downloads.

**Runtime agent**: The configured HarnessRouter agent that receives one authorized user task and returns progress, text, files, and artifacts.

## Top questions

**Does HarnessRouter replace my app UI?**  
No. Your app keeps the interface, brand, login, permissions, customer context, previews, downloads, and follow-up flow.

**Where do Cursor, Codex, or Claude Code fit?**  
They are build-time coding agents. Paste AGENTS.md into them so they can add the HarnessRouter integration to your product.

**What does HarnessRouter receive at runtime?**  
One product task from an authorized user, plus the files and context your server decided that task may access.

**How do I choose harness and model?**  
Start with candidate configured agents, run representative tasks, then compare Trace, stream behavior, recovery, files, artifact quality, cost, and latency.

**Who authorizes sessions and files?**  
Your server does. Treat HarnessRouter session and file IDs as opaque backend resources mapped to your own user or tenant records.

## Example

**Keep build-time and runtime separate**  
```
Ask your coding agent to build:
A contract review product with upload, progress, preview, download, and revise.

What your product sends to HarnessRouter at runtime:
Review this uploaded agreement and return a checklist, redline notes, and generated files.
```

**Open standard**  
The split this page draws between your product and the runtime agent mirrors the client–server–harness roles UHP's Architecture chapter defines — your backend is the client, and HarnessRouter implements the server side of that open contract. See [the UHP Architecture chapter](https://unifiedharnessprotocol.org/spec/architecture).

[Create API Key →](https://app.harnessrouter.ai/quickstart?ref=docs-create-api-key)  
Ready to run this against a live workspace? Keys take under a minute.
