Each Cyrillic character appears duplicated while typing

Open 💬 3 comments Opened Mar 29, 2026 by Dengleo
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of Codex CLI is running?

v0.117.0

What subscription do you have?

Each Cyrillic character appears duplicated while typing

Which model were you using?

gpt-5.4

What platform is your computer?

win11 Linux 5.15.146.1-microsoft-standard-WSL2 x86_64 x86_64

What terminal emulator and version are you using (if applicable)?

WSL

What issue are you seeing?

Each Cyrillic character appears duplicated while typing

What steps can reproduce the bug?

  1. Open Codex CLI
  2. Switch to a Cyrillic keyboard layout (e.g. Russian/Ukrainian)
  3. Start typing in the input prompt

What is the expected behavior?

Actual behavior:

  • Each Cyrillic character appears duplicated while typing

Expected behavior:

  • Characters should appear once, matching actual input

Additional information

What was verified:

  • printf 'привет\n' outputs correctly in the same terminal
  • cat input does not duplicate characters
  • Latin input works normally
  • Pasting Cyrillic text into Codex works correctly

View original on GitHub ↗

3 Comments

github-actions[bot] contributor · 5 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #15467

Powered by Codex Action

korzhanyuk · 2 months ago

The trigger is the terminal's Kitty keyboard protocol — Codex enables it, and for multi-byte (Cyrillic) keys the character gets inserted twice.

Workaround that fixed it for me: use a terminal where the Kitty protocol can be turned off. WezTerm has it off by default:

-- ~/.wezterm.lua
return { enable_kitty_keyboard = false }

Duplication is gone.

Windows Terminal and Warp support the Kitty protocol with no setting to disable it, so the typing stays doubled there. Switching to WezTerm is the simplest fix until Codex handles this.

Dengleo · 1 month ago

@korzhanyuk not helped(