Skip to content

Releases: kurashizu/kdchat

v1.11.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 10:18

Added

  • First-run setup: a new install opens a short guide: the interface language, turning on OSC in VRChat, and which
    avatar you use (KuraDot Full / Standard / Lite, or none: the display then stays off). Settings → General → Setup runs
    it again. PUT /api/v1/setup, setup_done in GET /api/v1/settings.

Changed

  • The avatar version is chosen by hand (setup or Settings → Display); the automatic detection from VRChat's OSC files
    is gone (it could not tell which avatar is worn, and nothing when kdchat runs on another computer). A saved "Auto"
    becomes Full.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.10.1

Choose a tag to compare

@github-actions github-actions released this 07 Oct 08:26

Changed

  • The console calls the display "KuraDot display" (Klaude avatars are the Full version of it).

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.10.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 07:55

Added

  • KuraDot avatars in three versions (sync tiers with the same screen): Full (also Klaude), Standard and Lite, which
    use fewer synced parameters (251 / 140 / 93 bits with the menu) and send a page in 1 / 2 / 3 chunks, only the changed
    ones. Settings → Display → Avatar version: Auto finds it from VRChat's OSC files on this computer (the newest avatar
    with display parameters), or pick it. Lite shows pictures in low resolution and opens one side screen (with two
    translation languages the second goes to the game chatbox only).

Fixed

  • Turning the display on no longer "syncs" for over a minute: the first pass sends one clear command, the pages that
    decide what is drawn and the pages with content (Full: about 10 s instead of about 80 s); empty pages are refreshed
    in the background.
  • Side screens sometimes unfolded and folded again by themselves (and transitions could play out of turn): a frame whose
    page id and bytes reached the avatar apart could make it read a register value that was never sent. The frames with
    those registers now go out between idle frames, and command frames keep the bytes on the wire. Works with the
    avatars already uploaded.
  • A Chinese / Korean / Russian ... message with English words in it ("这是 KuraDot 版") was detected as English: the
    English side screen showed the original and the small font drew "?" for the Chinese characters. Any non-Latin script
    now decides the language; a message the small font cannot draw keeps the normal font.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 05:08

Added

  • The console in Japanese (日本語) and Korean (한국어): Settings → General → Interface language, ?lang=ja / ?lang=ko,
    or the browser's language on the first visit.

Fixed

  • The "no password" notice on phones: its text ran under the "Set a password" button.
  • Language names in the translation lists use their own script's letter forms (Cyrillic and Greek names were drawn
    full-width with a Japanese or Chinese interface).

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.8.4

Choose a tag to compare

@github-actions github-actions released this 07 Oct 04:50

Needs the Klaude avatar uploaded on 2026-10-07 15:43 or later (new font atlas).

Fixed

  • Every language the translation offers shows on the Klaude display (no more □): all Latin letters (German ä ö ß,
    Polish ł ą ę, Czech ř, Turkish ı ş ğ, Nordic æ ø å, Romanian ș ț, French œ « », Vietnamese with all its tone marks),
    Greek with accents, Cyrillic incl. Ukrainian і є ї ґ and Serbian ђ ј љ њ ћ џ, Hebrew and Arabic / Persian / Urdu
    (right to left, Arabic letters joined), Thai (vowel and tone marks stacked on their consonant), € and other currency
    signs, dashes, quotes, ©, ™, arrows, ♥ ★ ♫, and the Cantonese characters of traditional Chinese.
  • Accented letters, Greek and Cyrillic are as narrow as plain Latin letters (they used to take a whole CJK cell:
    "caf é"); quotes and dashes are narrow in Latin text and full width in Chinese / Japanese text.
  • Hindi, Marathi, Bengali, Gujarati, Tamil, Telugu, Kannada and Malayalam cannot be drawn on the display (their letters
    combine in ways a fixed pixel grid cannot show): their translations go to the game chatbox, the side screen says so,
    and the language list marks them "chatbox only".

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.8.3

Choose a tag to compare

@github-actions github-actions released this 07 Oct 02:44

Fixed

  • Scrolling no longer cuts the top line (or its time label) under the header: only whole lines show at the top of a
    log, on every screen. Most visible on the square screen.
  • With side screens on, the square (and 160 x 112) screen's log started far below the header (up to a third of the
    screen empty): every screen's log now starts right under its header.
  • While a log scrolled, the second line of a new two-line message could show for a moment without its first one.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.8.2

Choose a tag to compare

@github-actions github-actions released this 07 Oct 02:26

Fixed

  • Fill keyboard left the game's keyboard empty: what the console was still doing in the chatbox (a live draft, a
    live update waiting for its turn, the typing indicator renewed every 5 s) reached the game after the fill. Now the
    live draft is dropped and the typing indicator switched off first, the fill waits for the chatbox's rate limit, and
    nothing follows it; the input box is emptied (the text is in the game's keyboard).
  • The Live button's icon was orange on orange while Live is on.

Added

  • "Turn off the Klaude display?" can be answered once for good ("Don't ask again"); Settings > General > Hidden
    confirmations brings it back.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.8.1

Choose a tag to compare

@github-actions github-actions released this 07 Oct 02:19

Fixed

  • Every screen of the Klaude display looks the same: "Message time" and "Divider" now apply to the main screen and
    the side screens alike (the side screens always showed the time, the main screen only with the setting on). Saved
    settings switch "Message time" on once, so the main screen now matches what the side screens showed.
  • Single layout: the side screens centre the translation like the main screen centres the message, and every screen
    shows the message's time with its rule above it.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.8.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 17:36

A new console and a much smaller app.

Changed

  • The console is rebuilt (SvelteKit + shadcn-svelte, SVG icons, light / dark / system). The main screen has what
    you use while chatting: the two outputs with their switches at the top; under the input "Send to" (one or both of
    the outputs that are on, remembered), Translate (shows the languages, opens the translation controls: on/off,
    up to two languages - picking one that is not downloaded starts its download -, typing language, chatbox, side
    screens), Live and Fill keyboard; the display card with the preview, the side screens (Auto / Open / Off and which
    language goes where), the layout, chime, picture, clear (it folds on phones). Translations are shown under each
    message; edit / send again / revert are in each message's menu. Settings are sorted into tabs: General, Display,
    Translation (with the language packs), Connection (VRChat, phone, password, server address), About. Confirmations
    are dialogs, no more browser pop-ups.
  • A message being typed can still be sent elsewhere until it shows live (too long for the game chatbox? send it to the
    display only); editing a message and tapping another one switches when nothing was changed yet.
  • Pictures of every common format: JPEG, PNG, GIF, WebP, AVIF, BMP, TIFF, SVG, ICO and HEIC / HEIF phone photos
    (decoded in the browser, upright by their EXIF orientation; the HEIC and TIFF decoders load only when needed).
  • Smaller download: the translation engine runs on wasmtime instead of an embedded V8 (same output, starts in
    0.4 s); the server needs no image library (the console sends pictures as raw RGB; image files still work through the
    API with Pillow installed) and no psutil; the fallback window without WebView2 is a native message box. The
    .exe is about a third smaller.
  • The typing indicator goes off by itself 15 s after the last word from the console (a closed page or a lost
    connection no longer leaves "typing" on), and at once when the page closes.

Removed

  • The old console (ui/app.js, ui/i18n.js); its URLs /ui/... are gone (the console loads from /_app/...).

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 16:26

Added

  • Korean on the Klaude display (needs the avatar with the 1.7.0 menu icon; older avatars show □): the 2,350 common
    Hangul syllables of KS X 1001 and the compatibility jamo. Korean lines break at spaces, like English; the space between Korean words is a full-width blank (a
    line stays in one code mode and fits its memory). The font grew
    by 2,443 glyphs; the codes of every other character are unchanged.

Windows: download kdchat-*-windows-x64.exe below and run it. Windows SmartScreen may say
"Windows protected your PC" (the app is not code-signed): click More info -> Run anyway.