Changelog

What shipped recently in CLI.

October 2026


CLI·

CLI fixes: keys typed under prompts, the first run of init, and upload retries

  • Keys typed under a prompt stay there. In the interactive CLI, keys typed while an approval prompt or a picker is open, a paste or Ctrl+V included, no longer turn up in your next message.
  • The first run of testrelic init finishes. It no longer waits forever on Playwright's HTML report (PLAYWRIGHT_HTML_OPEN=never is set for that run). A first run still going after 10 minutes is stopped, with a note to run the command yourself to see where it waits. /init works the same way.
  • A page in place of TestRelic is reported. When a proxy or antivirus page, a Wi-Fi sign-in page or the TestRelic web app answers instead of the API, a tool result is no longer counted as delivered. The CLI reports why, for example "the connection was intercepted before it reached TestRelic".
  • Retried uploads keep their files. An upload retried after a server error still sends its screenshots, videos and traces.
  • Performance runs are sent once. If a server error may have come after the run was saved, testrelic upload k6 and testrelic upload jmeter don't send it again; the error asks you to check the repo's performance runs first. A refusal that saved nothing (HTTP 429 or 503) is still retried.

Released as testrelic-cli 1.8.4.

CLI·

Studio's bash terminals and Live Browser DevTools work again

Two Studio tools that had stopped working are back.

  • Bash terminals start. Since 0.91.0, a terminal running bash closed before showing a prompt ("Git Bash closed. It stopped with exit code 2"), and Restart failed the same way. That covered Git Bash on Windows and, on Linux, the default terminal wherever your shell is bash. Bash terminals now open at a prompt, with Studio's command blocks and failure summaries. PowerShell and zsh terminals weren't affected.
  • DevTools connects. On recent Chromium versions, Open DevTools in the Live Browser showed its tabs with nothing in them. It now shows the page's DOM and styles, its console (including messages from clicks you make in the live view) and its network requests, docked to the bottom or the right.
  • Undock works. Undock into a separate window closed the panel and opened nothing. It now opens DevTools in your default browser.

Released as testrelic-cli 1.8.3.

CLI·

Studio's chat header shows what a chat changed, whichever engine made the change

The changes chip in the agent chat header, for example 2 files · 1 run · 1 commit, now opens its panel and counts every engine's work.

  • Click it and the panel opens beside the header, instead of being cut off inside it.
  • Every engine's edits count. Files written by Claude Code, Cursor and Codex are counted, not only the TestRelic agent's, so a Claude Code chat no longer stays at "No changes yet".
  • Commits count from any shell, PowerShell included, and so does a commit you approved on a git card.
  • Each file says where it stands now: still changed, with its +/− counts and a diff (a new file's diff shows its content); in one of this chat's commits, which opens in History; or "no changes now".
  • The footer says what's left: how many files aren't committed yet, with Review & commit, or "Nothing from this chat is left to commit."

Released as testrelic-cli 1.8.2.

CLI·

Studio's agent runs your tests from the chat, on the run target you pick

Ask the agent in a Studio chat to run your tests and it does, after asking, on this computer or on the run target you've chosen.

  • In the Cloud view too. An Agent session on your project can now run your tests and the scripts it needs, and edit files, asking first. An Ask AI chat (Chat) still only answers. Before, chats in the Cloud view couldn't run anything.
  • Claude Code asks instead of refusing. With Claude Code as the engine, a test command shows an approval card, such as "Run "npx playwright test" in your project?", instead of failing with "This command requires approval", from the first message of a new chat. Your approval mode and "don't ask again" choices apply, and a force-push is still refused.
  • Runs follow your run target. Each test run the agent starts goes to the Default run target in the composer's session settings or on the Run targets page, the same way a run from Tests does. A target that can't take the run refuses it and says why; the run never moves to this computer instead.
  • Claude Code, Codex and Cursor run tests in their own shell, on this computer. When another target is picked, the picker says so.
  • Run cards match the run. A card opens for Claude Code's PowerShell runs on Windows and shows only this run's results, never an earlier report. When the engine cut the output short, the card reads "Saw N of M · output cut short" rather than guessing at the rest.

Released as testrelic-cli 1.8.1.

CLI·

Studio starts in Cloud, and Local mode becomes a per-chat Skill

Every Studio chat now runs in Cloud mode unless you turn Local mode on for that chat. Test runs upload, project memory is shared, and a chat in your project still writes and runs your tests under your approval settings.

  • Studio opens on the Cloud view. It stays in Code when you launch it on a project with testrelic studio, on the first run while its tools install, or when you've picked Code mode under Settings → Engine & approvals → Default mode for new chats. Moving between views with the header's Code | Cloud switch doesn't change that default.
  • Local mode is a Skill you switch on per chat. In a Code chat, open the composer's + menu and pick Skills → Local mode. While it's on, a Local mode chip sits by the input and nothing leaves this computer: test runs aren't uploaded and project memory is read-only. It switches between turns, and the conversation carries on.
  • Code chats follow Cloud rules. If your project's TESTRELIC.md describes the project as local-only or upload-free, the agent is told those lines are out of date. Only the Local mode Skill keeps a chat on this computer.
  • The terminal CLI is unchanged. Shift+Tab and --mode local still switch modes there. See Modes & engines.

Released as testrelic-cli 1.7.2.

CLI·

Studio keeps up on big projects and long working days

Studio no longer freezes while it reads reports, runs git or starts processes, and it stays quick on projects with thousands of tests and chats with hundreds of turns.

  • The window doesn't wait. Disk reads, git, process starts and keychain calls run away from the window, so a click or a keystroke in a terminal or chat never stalls behind them. A big paste arrives whole and in order. When you quit, the window goes at once while Studio finishes closing behind it.
  • Start-up doesn't hang on a missing folder. If your last workspace is on an unplugged drive or a network share Studio can't reach, it opens another workspace and says "Couldn't reach your last workspace".
  • Tests and Needs rework fill in quickly on large projects, and clicking through the Tests list or holding an arrow key no longer lags.
  • Long chats keep up. Answers stream smoothly in chats with hundreds of turns, switching to a long chat shows its newest turns first, and an agent's test run shows its output as it happens.
  • Git on busy repos. Source control opens quickly even when Studio's own folders hold thousands of untracked files, and a very large diff opens at its start with Show the full diff for the rest.
  • F5 and Ctrl+R no longer reload the installed app, which used to leave every chat's processes running behind it.

Released as testrelic-cli 1.7.2.

CLI·

Studio puts idle chats to sleep and keeps evidence for the last 10 runs

Studio now limits what it keeps running and what it keeps on disk. Each limit is on by default and has its own switch.

  • Idle chats sleep. A chat you haven't used for 30 minutes stops its assistant, along with the browser tools and memory that come with it, and no more than 5 chats stay awake. Its history stays where it is, and your next message picks the conversation up again. A chat that is working, waiting for your approval or holding a queued message never sleeps. Change the timings, or turn it off, in Settings → Chat → Idle chats.
  • Evidence for the last 10 runs. Screenshots, videos and traces are kept for the newest 10 test runs. Older runs keep their reports and results, and a test whose evidence has gone says "Evidence removed: only the last 10 runs keep evidence." Before, the newest 20 runs kept theirs, plus any older run still holding a test's latest result. Switching off Settings → Storage → Keep evidence for the last 10 runs goes back to that rule, but doesn't bring back evidence already removed.
  • Cache limits. Files opened from TestRelic Cloud are kept up to 1 GB, and trace frames Studio extracts up to 512 MB, the longest-unopened going first. Each limit has its own switch in Settings → Storage.
  • Studio's own folders stay out of your commits. Sync now, Auto-sync and the agent's autopilot leave out Studio's run archive, chat attachments, page screenshots, the SDK's local report, ctrf/ctrf-report.json and the .playwright-mcp snapshots. .testrelic/testrelic-config.json is still committed.

Released as testrelic-cli 1.7.2.

CLI·

Studio offers to install the TestRelic SDK, and replies in the language you pick

Studio now checks that each project has its TestRelic SDK, and the assistant answers in one language you choose.

  • A project without its SDK asks. Opening a project whose framework has a TestRelic SDK that isn't installed shows Install the TestRelic SDK, with the exact command it will run in the project folder: for Playwright, @testrelic/playwright-analytics through the project's own package manager. Install runs it, and if it fails the dialog shows the output with Retry. Not now skips it until the next time you open the project. Frameworks without a TestRelic SDK, such as Cypress, Jest and Vitest, are never asked. Settings → Reporter offers the same Install.
  • Replies come in English (US) by default, whatever language your files or results are in. Pick another in Settings → Chat → Reply language; open chats switch from their next turn. A message that asks for a different language still gets one.

Released as testrelic-cli 1.7.2.