cd—AI
en_US → cd_AI AN INPUT METHOD FOR AI

If you can type there,
you can use AI there.

cd_AI is an input method for Linux, Windows, and macOS. Switch to it like any keyboard language, and what you type goes to a model you choose: a small local one by default, or your own API key. The answer arrives as a candidate at the caret. Nothing is inserted until you accept it.

English goes in. Em dashes come out.

#release · team chattell the team the deploy slips to Friday
instruct · 1–3: insert that one · Esc: keep your words
  1. 1 Heads-up: the deploy moves to Friday—thanks for bearing with us.
  2. 2 Quick update—we're shipping Friday instead. I'll share the details shortly.
  3. 3 Deploy slips to Friday. Details to follow.
Any text box: chat, mail, an editor, a terminal. Pick with a number, as with any CJK input method.
01 / THREE LAYERS, ONE KEYBOARD

Rewrite, continue, instruct—F7 switches.

Rewrite

Ordinary English becomes unnecessarily polished prose.

this is important → This is of utmost significance.

Continue

Start a sentence; the model offers the rest, like autocomplete for everything.

Thanks for the review on → …the parser change.

Instruct

Type what you want; Enter sends it; the draft lands at the caret. It can look things up first, and ask before it acts.

decline the meeting politely → three readings to pick from

02 / THE KEYS

Everything else is typing.

People who type Chinese or Japanese already know this grammar: compose, see the candidates, choose, commit. Claudish extends it from what you meant to say to what you meant to do.

F7switch layer: rewrite → continue → instruct
Tabaccept the candidate
Enterkeep your wording; in instruct, send, then insert
1–9pick a reading, or answer an agent's question
F8in instruct, also send a picture of this window
Esckeep what you typed
03 / BRING YOUR OWN INTELLIGENCE

The caret is model-agnostic.

  • Local by default. llama.cpp and a 491 MB model, downloaded and checksum-verified by setup. Nothing leaves your machine.
  • Or yours. Claude with your API key, any OpenAI-compatible server, or an agent CLI. Hosted backends are labelled.
  • Context. Files, commands, and MCP servers, per app: the PR diff in your editor, the ticket in your browser. Import the MCP servers you already use with Claude.
  • Tools and agents. An instruction may call read-only tools, or run an agent whose permission questions arrive as choices. You approve every side effect.
  • Restraint. It runs only on what you type, never watches the screen, and never inserts anything you did not accept. Password fields bypass it.
04 / INSTALL

Let your agent do it.

Paste this into Claude Code (or any coding agent) on the computer where you want Claudish. It shows you the plan before it changes anything, and leaves sudo and administrator steps to you.

PROMPT
Install Claudish (cd_AI), an input method that puts a language model at the caret, on this computer.

1. Check that Python 3.10 or newer and git are installed. If not, tell me how to install them and stop.
2. Clone https://github.com/noobpwnftw/claudish into ~/claudish (or pull it if it is already there) and work in that folder. Use python3 on Linux and macOS, python on Windows.
3. Run `python -m claudish setup --dry-run`, show me the plan, and ask me before continuing.
4. Run `python -m claudish setup --yes`. It downloads a verified llama.cpp build and a 491 MB model, writes a config, registers the input method, and starts Claudish at login.
5. If setup says a step needs me (sudo on Linux, an administrator PowerShell or the PIME installer on Windows, a build on macOS), show me the exact command and why. Do not run anything with sudo or as administrator yourself.
6. Run `python -m claudish doctor` and follow its fixes until every check passes, or explain what is left.
7. Finish by telling me to log out and back in, add "cd_AI — Claudish" in my input sources, and the keys: F7 switches mode, Tab accepts, Enter keeps my words, Esc cancels.

Make no mistakes.

Or by hand

git clone https://github.com/noobpwnftw/claudish
cd claudish
python3 -m claudish setup

Setup asks before each step and skips what is already done; --dry-run shows the plan. Details in the README.

05 / WHERE IT STANDS

An experiment, tested honestly.

Linux (IBus)Verified with real IBus and GTK typing in a container, 21 scenarios. Wayland/GNOME and Qt are not yet tested.
Windows (PIME/TSF)Verified on Windows 11 ARM64: Notepad and Edge, setup end to end. x64 hardware untested.
macOS (IMK)Builds in CI and passes event tests; not yet run on a Mac.
Browser demoThe model runs in the page through WebAssembly; nothing you type leaves it.