Set Up CapsWriter Offline on Windows: Local Voice Typing with Qwen3-ASR
As more people turn to coding with AI, entering prompts quickly has become a new challenge. When people have an idea, they want to quickly explain it to an AI agent.
I have tried ChatGPT’s built-in voice input, but it doesn’t always accurately capture what I’m saying when I mix two languages. I also tried commercial applications like Typeless. Yes, that online service gave me perfect results, but it costs about as much as a ChatGPT subscription. Also, I can’t say there is no risk to send my voice online.
Today, I want to share the best local voice input tool I have found. It’s called CapsWriter, and it’s free and open source. The application supports multiple models, from simpler ONNX models to the more advanced Qwen3-ASR model.
I am using CapsWriter with Qwen3-ASR to voice input this article. It offers fast recognition and can even help correct some of my pronunciation mistakes.I also test the auto rewrite functions through the online LLM API. I use the DeepSeek API. It gives me impressive results. I feel the result is similar to the Typeless service.
Below are the steps I asked ChatGPT to install the application on Windows 11. I have also included a few small tips to minimizing the terminal windows to the tray icon.
Download CapsWriter Offline
Open the official release page and download the full application ZIP, rather than the client-only package.
Extract it to a permanent folder, such as:
C:\Apps\CapsWriter-Offline
The folder should contain start_server.exe, start_client.exe, config_server.py, config_client.py, and a models folder. If the application reports a missing Visual C++ runtime, install the Microsoft Visual C++ x64 Redistributable.
Understand the available models
CapsWriter supports several speech recognition models:
| Model | Description |
|---|---|
| SenseVoice-Small | A lightweight model with fast recognition, suitable for computers with limited resources. |
| Fun-ASR-Nano | A middle option that balances recognition accuracy and speed. |
| Qwen3-ASR-1.7B | A larger model that prioritizes accuracy and requires more computing resources. Available in q4_k and q5_k quantized versions. |
The following steps use Qwen3-ASR-1.7B q5_k as an example. You only need to download the model you plan to use. Official model guide
Download and copy the Qwen3-ASR model
Open the model download page and download:
Qwen3-ASR-1.7B-q5_k.zip
Extract the ZIP. Copy the extracted Qwen3-ASR-1.7B folder into the application’s models\Qwen3-ASR folder.
The final structure should look like this:
CapsWriter-Offline\
└── models\
└── Qwen3-ASR\
└── Qwen3-ASR-1.7B\
├── qwen3_asr_encoder_frontend.onnx
├── qwen3_asr_encoder_backend.onnx
└── qwen3_asr_llm.gguf
Avoid adding an extra folder level. These three files should be directly inside Qwen3-ASR-1.7B.
Select the model and start CapsWriter
Open config_server.py in a text editor. Find the existing model_type setting and confirm that it is:
model_type = 'qwen_asr'
If it already has this value, leave it unchanged.
Double-click start_server.exe and wait for the model to finish loading. Then double-click start_client.exe. The server performs speech recognition, while the client records your voice and inserts the text. Both must remain running. Server configuration
Use voice input
Click a text box in the application where you want to type. Hold CapsLock, speak, and release the key. CapsWriter will recognize the recording and insert the text.
The default configuration also supports holding the mouse’s X2 side button. If CapsWriter does not capture your voice, check your microphone selection and Windows microphone permissions. Usage instructions
Keep CapsWriter in the system tray
Confirm that the following setting is enabled in both config_server.py and config_client.py:
enable_tray = True
For the current session, click Minimize on both console windows. CapsWriter hides them in the system tray, removing their window buttons from the taskbar while voice input continues working. We verified this behavior on our installation.
To start the programs minimized:
- Create a Windows shortcut for each executable.
- Right-click each shortcut and select Properties.
- Under the Shortcut tab, set Run to Minimized, then click Apply.
- Launch CapsWriter using those shortcuts.
With tray support enabled, CapsWriter is designed to hide minimized windows in the tray. If a window remains on the taskbar after startup, minimize it once after initialization.
Double-click the corresponding tray icon to show or hide its window. You can also right-click the icon and choose “Show/Hide”. Use the tray menu’s exit command when you want to stop the application.
0 Comments