Least effort — REST
Start with the REST client if you
just need to delegate an edit and get a result back. It’s a single
POST, then poll or stream until it’s done.
Coframe Agent exposes a small set of integration points. Each one is built for a specific job — start from what you want to build and follow the link.
| I want to… | Use | Why |
|---|---|---|
| Kick off an edit from my backend and collect the result | @coframe/editor-rest | Simple request/response (plus optional streaming). No persistent connection. |
| Call the raw HTTP API (no SDK) or get run events pushed to my webhook | Session API | The POST /api/session wire contract, with signed webhook callbacks for run lifecycle events. |
| Show the agent working — messages, tool calls, approvals — in real time | @coframe/agent-client | A live WebSocket connection with auto-reconnect and a React hook. |
| Put the full editor UI inside my own app | @coframe/editor-embed | A drop-in iframe driven by a typed postMessage channel. |
| Let my users annotate a live page and send me the feedback | @coframe/editor-embed (annotated-browser) | A self-contained iframe — annotations arrive via postMessage, no extra plumbing. |
| Navigate or check the status of the in-session browser over HTTP | Browser API | Plain REST endpoints, no SDK required. |
| Receive annotations server-to-server | Annotation webhook | A session-scoped HTTP webhook you can point at your own service. |
| Build my own editor frontend from scratch | @coframe/editor-session | The same session types and wire protocol the Coframe Agent UI uses. |
Least effort — REST
Start with the REST client if you
just need to delegate an edit and get a result back. It’s a single
POST, then poll or stream until it’s done.
Live updates — WebSocket
Reach for the WebSocket client when you want to render the agent’s progress as it happens, with tool-call and approval handling.
Drop-in UI — Embed
Use the editor embed to ship the whole editor experience without rebuilding it — the iframe handles the UI, you handle the wiring.
Full control — Custom UI
Use the session client when you need to design your own interface against the real session state and RPC.