> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yambr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# cu.yambr.com

> Sandbox containers and public artifact URLs. Not an MCP endpoint — the MCP lives on api.yambr.com.

[cu.yambr.com](https://cu.yambr.com/) is the Yambr-managed Computer Use Server. It does two jobs:

1. **Sandbox host** — runs the per-chat Docker containers, bridges the CDP browser, streams the terminal.
2. **Public artifact host** — the domain where files created by the model (PDFs, HTML, images, ...) are served so they can be linked and previewed.

<Warning>
  **`cu.yambr.com` is not the MCP endpoint.** The public MCP endpoint is `https://api.yambr.com/mcp/computer_use`. Calls to `https://cu.yambr.com/mcp` are **not** publicly reachable.
</Warning>

## How to reach the MCP tools

All Computer Use tool calls go through **`https://api.yambr.com/mcp/computer_use`** with `Authorization: Bearer <yambr-key>`. The LiteLLM layer there authenticates, tracks spend, picks the right sandbox by `x-chat-id`, and forwards to `cu.yambr.com` internally.

See [LiteLLM gateway](/platform/litellm).

## File URLs: public

Files the model creates inside its sandbox get URLs of the form:

```
https://cu.yambr.com/files/{chat_id}/{path}
```

These are **publicly reachable** (anyone with the link can fetch them) and scoped to a chat ID. Treat them as unlisted but not secret — don't write sensitive data to a file and share the link without thinking.

### Previews

For file types Open WebUI knows how to render (HTML, PDF, PNG, JPG, SVG, Markdown, ...), the chat UI automatically inserts a preview iframe after the link. The underlying URL pattern is:

```
https://cu.yambr.com/preview/{chat_id}/{path}
```

The filter looks for links of the form `{PUBLIC_BASE_URL}/(files|preview)/...` in the assistant's message and swaps them into the artifacts panel. Full mechanics: [Open WebUI filter](/integrations/open-webui-filter).

### Uploads

Files you upload in chat land at `https://cu.yambr.com/uploads/{chat_id}/{path}` (also public, also chat-scoped) and are mounted into `/home/assistant/uploads/{chat_id}/` inside the sandbox.

### Session lifetime

Files persist as long as the sandbox container does — `CONTAINER_MAX_AGE_HOURS` (default 24) after the last request to that chat ID. After that, the container and its files are garbage-collected. If you need longer retention, download the artifact or push it to a durable store yourself.

## Live browser and terminal

Both the CDP browser WebSocket and the `ttyd` terminal WebSocket are reachable through `cu.yambr.com` **only** via [chat.yambr.com](https://chat.yambr.com/)'s Browser and Terminal tabs — the Open WebUI filter negotiates a session-scoped token before opening the socket. There is no public, unauthenticated way to attach.

## TL;DR

| Use case                              | Endpoint                                      | Auth                                   |
| ------------------------------------- | --------------------------------------------- | -------------------------------------- |
| Call Computer Use MCP tools from code | `https://api.yambr.com/mcp/computer_use`      | Yambr API key                          |
| Use the hosted chat                   | `https://chat.yambr.com`                      | Sign in                                |
| Download a file the model created     | `https://cu.yambr.com/files/...`              | None (URL is the token)                |
| Preview an artifact in Open WebUI     | `https://cu.yambr.com/preview/...`            | None (URL is the token)                |
| Attach to the live browser / terminal | Via chat.yambr.com tabs                       | Session-scoped token                   |
| Call `chat.completions` on Yambr      | **Not supported** — use your own LLM provider | [Access model](/platform/access-model) |
