Skip to content

Patchbay 0.1.4 — 简体中文, and Codex is a client now

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Sep 05:22
· 49 commits to main since this release
40df03b

Patchbay speaks Simplified Chinese, and it registers Codex. Both came from one
report, #14: a Quad Cortex
owner reading the app through Google Translate, connecting it to Codex, and
finding the registration "a little confusing" — for a reason that turned out
to be real.

This is an app-only release: qc_mcp, the daemon and the protocol are
identical to 0.1.3.

简体中文

  • It follows the system. A Mac or PC set to Simplified Chinese gets a
    Chinese Patchbay on first launch, with nothing to find first. The machine's
    preferred-language list is walked in order and the first language Patchbay
    speaks wins, so a Chinese reader whose OS happens to be English second still
    gets Chinese.
  • Preferences opens with a language switcher — the first group in the
    dialog, on purpose. Each language is listed by its own name with a flag, and
    a System entry says which language it currently resolves to.
  • Everything switches at once. Not only the views: the Setup checklist, the
    progress lines during an install, the daemon's errors, the leveling bench's
    errors, the file dialogs and the update messages all come from the same
    dictionary, in both processes, so a toast reads in the language of the button
    that raised it.
  • Traditional Chinese (zh-TW, zh-HK) is deliberately not mapped onto the
    Simplified translation. It is one click away in the switcher, but nobody is
    handed it.
  • Chinese text gets an explicit font stack — PingFang on macOS, Microsoft YaHei
    on Windows — because the app's display face has no Han glyphs and the fallback
    Chromium picks on its own is a serif on some Windows machines.

The translation is in
app/src/shared/i18n/zh-CN.ts,
typed against the English so a missing string fails the build rather than
showing up in English on a Chinese screen. Corrections are welcome as issues
or pull requests, in either language. There is a Chinese onboarding guide too:
app/README.zh-CN.md.

Codex

Codex was never a registration target — its MCP config is TOML, in
~/.codex/config.toml, not the JSON every other client uses. That is why its
setup felt incomplete: it was.

  • Patchbay now writes the [mcp_servers.quad-cortex] table there itself, and
    touches nothing else in the file — a small one-table editor rather than a
    TOML library, so comments, ordering and every other byte survive.
  • An entry from before the daemon (no --attach, so it opens the device itself
    and fails while the daemon holds it) is detected for Codex the same way it is
    for the JSON clients, and Re-point fixes it.
  • Manage clients… now says, for every client you tick, what it does with
    the entry after Apply and how to confirm it — new sessions, a restart, a
    settings page, claude mcp list, codex mcp list — and shows the TOML
    snippet beside the JSON one for anything set up by hand.

Also

  • @singz/ui 1.5.0, which is where
    the switcher lives: a LanguageSwitcher that carries no strings and draws no
    flags of its own, and a Modal that lets an open menu inside it take Escape
    first instead of closing the whole dialog underneath.
  • Chromium's own locale packs for Chinese ship alongside English, so anything
    Chromium draws by itself follows too.

Windows

Still unsigned: SmartScreen asks on first run, More infoRun anyway.
The installer the updater downloads is the same.

The Chinese interface has not been looked at on Windows hardware yet. The
font stack names Microsoft YaHei for it and the flags are SVG rather than emoji
precisely because Windows draws emoji flags as two letters — but if something is
off there, that is where to look first, and a screenshot in #14 would be
welcome.

Verified

The built app driven under Playwright on macOS: the switcher by mouse and by
keyboard, Escape closing the menu and leaving Preferences open, every view in
Chinese, and back to System. The Console correctly flagged a real
~/.codex/config.toml entry that lacked --attach.

The locale rules, the dictionaries' completeness and placeholders, and the TOML
table editor have unit tests, and CI runs them.