# Install Browser Bolt for this project

You are the user's coding agent in Codex or Claude Code. Do the setup on this machine for the current host; if they ask for Claude Desktop, configure that separately. Do not turn this into a list of shell commands for the user. The current public release is the GitHub **v0.1.0 prerelease** at https://github.com/valente-labs/browser-bolt/releases/tag/v0.1.0. Install only those tagged bytes. Do not install the mutable repository branch or the unpublished direct-TypeSafe update.

## What to finish

1. Install the public release as an isolated `uv` tool with Python 3.12. Do not replace another MCP server or an unrelated existing tool installation.
2. Register its `jev-qwerebras-mcp` stdio executable for the current project in the host you are running in. Store no API key in source, chat, an MCP config file, or a shell command argument.
3. Run keyless verification and report the exact results. The published v0.1.0 route uses OpenRouter for Jev decisions. One OpenRouter key runs both decisions and field writing; an optional Cerebras key moves Qwen field writing directly to Cerebras. Do not ask the user to choose an internal profile. Do not make a paid provider call or request a key value in chat.

## Install the public release

If `uv` is missing, use its [official installation instructions](https://docs.astral.sh/uv/getting-started/installation/) and verify the executable. Do not pipe a Browser Bolt script into a shell. The release wheel is pinned by SHA-256 in this single command; `uv` creates and manages an isolated tool environment and obtains Python 3.12 when needed:

```sh
uv tool install --python 3.12 'jev-qwerebras-ultrafast[mcp] @ https://github.com/valente-labs/browser-bolt/releases/download/v0.1.0/jev_qwerebras_ultrafast-0.1.0-py3-none-any.whl#sha256=63db63a0ad8983f5b11b03a5633c3dd148d88b2c2ef405cd513fb8e1ce187902'
```

The published `SHA256SUMS` is at https://github.com/valente-labs/browser-bolt/releases/download/v0.1.0/SHA256SUMS and its own SHA-256 is `446c771f2a08606ebaa22f8e9b297e867c27c33868aaf188b3505df6b0ac64e0`. The one-command route pins the release wheel; `uv` resolves its declared dependencies from the package index. Do not claim that those dependencies were installed with the separate hash-locked requirements file. If an existing `jev-qwerebras-ultrafast` tool conflicts, inspect it and stop rather than forcing an overwrite.

Locate the installed executables with `uv tool dir --bin` or `uv tool list --show-paths`. From a clean directory outside any Browser Bolt source checkout, run the absolute `jev-qwerebras-host` path with `--preflight` and `--list-profiles`; confirm `jev-qwerebras-mcp` exists beside it. Check `ok: true`, three tools, nine profiles and `provider_calls: 0`. Running from the source checkout can shadow the installed package, so do not count that as an installed-wheel test.

## Connect this host

Use the installed executable's absolute path. For Claude Code, add a **project-scoped** stdio MCP named `browser-bolt` with `claude mcp add --scope project browser-bolt -- <absolute-path-to-jev-qwerebras-mcp>` from this project and verify it with `claude mcp get browser-bolt`. Preserve any existing `.mcp.json` entries. For Codex desktop or CLI, merge a `[mcp_servers.browser-bolt]` entry with `command = "<absolute-path-to-jev-qwerebras-mcp>"` and `args = []` into this trusted project's `.codex/config.toml`, preserving other settings, then check `codex mcp list`. A manual user-wide alternative for both local Codex clients is `codex mcp add browser-bolt -- <absolute-path-to-jev-qwerebras-mcp>`; do not use global scope unless the user asks for it. Claude Desktop chat uses **separate** MCP configuration from Claude Code. If requested, use its Developer settings to locate `claude_desktop_config.json`, back it up, merge a `mcpServers.browser-bolt` entry with the same absolute command and empty args, validate JSON, then restart and check Connectors. Do not replace existing entries. Never write keys into any of these configs. Keep project-local config out of Git with the repository's local exclude file if applicable. If host configuration is blocked by trust or permissions, leave the verified installation in place and report that single remaining step.

For the published v0.1.0 release, prefer Jev through OpenRouter with direct Cerebras Qwen field text when `OPENROUTER_API_KEY` and `CEREBRAS_API_KEY` are both available. Internally this is `jev_qwen`. If Cerebras is not configured, use the one-key OpenRouter route for both model calls; internally that is `jev_qwen_openrouter`, the released default. Treat this as an automatic setup fallback, not a separate choice to present to the user. It is a credential-availability decision before any provider call, not an automatic retry after a failed paid call. These routes can differ in speed and cost. Do not describe v0.1.0 as direct TypeSafe Jev.

Tell the user to create an OpenRouter key at https://openrouter.ai/settings/keys and, for the preferred Jev + Cerebras route, a Cerebras key at https://inference-docs.cerebras.ai/console/api-keys. One OpenRouter key also works on its own. The user should set the variables in the local environment or secret manager that launches Codex or Claude Code, then restart that host. Check only whether variables are present; never echo or save their values. Do not create accounts, purchase credits, or run a live task for them. It is valid to finish with `installed and registered; provider keys pending`.

Report the release URL, verification result, installed executable path, registered host and scope, zero-call preflight result, selected profile, and any remaining key or host action. If a step failed, say where it stopped and leave existing configuration untouched.
