Skip to content

Harness Remote v2.10.0

Choose a tag to compare

@github-actions github-actions released this 07 Aug 18:50
· 1633 commits to main since this release

Release

Stable release of Harness Remote 2.10.0: the Android APK below, plus unsigned Windows, macOS and Linux desktop builds attached by the desktop workflow.

What's Changed

  • Codex CLI is now a supported harness. It connects through the same bridge as the other ACP backends, using the official @agentclientprotocol/codex-acp adapter. The adapter embeds @openai/codex, so nothing else needs installing, and the bridge signs in with the ChatGPT method — a codex login on the host machine is all it wants. Sessions, streaming, cancellation, queued follow-up prompts, plan updates, model selection and slash commands all work; the README section covers setup and the per-backend limits.
  • Conversations open in the Codex desktop app are readable here. Codex allows one writer per conversation and holds the lock for as long as a client keeps it open, so those sessions cannot be joined over the protocol — which is most of the ones worth reading from a phone. The bridge shows them anyway, from the transcript Codex already keeps on disk, and they carry on updating as Codex works. They stay read-only, and the app labels them as started by another client.
  • A redesigned interface on desktop and mobile. A grouped sidebar, a command palette, a server switcher in the header, and a connect wizard that hands you the exact command to paste on the machine running the agent, filled in with the address and credentials you just typed.
  • A real application menu on macOS, drawn by the system rather than the page, with the shortcuts where a Mac user expects them.
  • The browser keeps its own keyboard shortcuts. Ctrl+R and Ctrl+F used to be taken by the app in a browser tab, costing you reload and find-in-page — the two keys people reach for when something looks stuck. They now bind only in the packaged desktop app.

Fixes

  • A session whose history failed to load left the transcript spinning with no explanation. It now says what went wrong and offers a retry, and clears itself as soon as a later refresh succeeds.
  • Loading a session's transcript and its model list at the same time — which the app does on every open — could make one failure sink both, so a session the harness would not fully open could not be opened at all.
  • Bridge errors reached the screen as raw JSON. They read as sentences now, including the detail Codex hides behind a bare "Internal error".
  • The model picker vanished when its list could not be fetched, hiding a control every other session has instead of saying why.
  • Sheets kept their phone styling on desktop and opened flat against the bottom of the window; they are centred dialogs there now, and unchanged on a phone.

Contributors

  • A big thank you to @giuliastro (Giulio Ardoino) for the Codex backend and its disk-backed history, the interface redesign, the macOS application menu, the keyboard-shortcut and session-loading fixes, the documentation, and the release.

Notes

  • Built from 9919e02b058c2880817787cb146dd688da15c94d
  • Version code 21000

Full changelog: v2.9.0...v2.10.0