Composer 2 garbles hardcoded Chinese in generated source files (Windows)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor 3.1.15 / VS Code 1.105.1, Commit 3a67af7b780e0bfc8d32aefa96b8ff1cb8817f80, Windows 10 x64 10.0.26200, Electron 39.8.1, Node 22.22.1.

When using Composer 2 to generate or heavily edit frontend sources (e.g. .vue), hardcoded Chinese literals in the saved file are corrupted; API responses in the same app render Chinese correctly. index.html uses UTF-8. Issue appears on the write-to-disk path; fixed manually, no garbled sample retained. Please check UTF-8 handling when applying Composer patches on Windows. I can provide a minimal repro if needed.

Steps to Reproduce

Environment: Windows 10/11, Cursor 3.1.15 (Composer 2 available), default or UTF-8 file encoding for workspace.
2. Open an existing frontend project (e.g. Vue/Vite) where index.html uses <meta charset="utf-8"> and API responses display Chinese correctly at runtime.
3. Open Composer 2 (not only inline chat).
4. Ask Composer to create a NEW file, e.g. src/views/test-encoding.vue, containing:

  • A short <template> with several Chinese labels in plain text (hardcoded).
  • A <script setup> block with a few Chinese strings in ref() or constants.
  1. Apply / accept all generated changes so the file is written to disk.
  2. Open the new file in the editor (do not paste from elsewhere).
  3. Observe: Chinese in hardcoded strings appears as mojibake / wrong characters. (Previously: same project’s API-loaded Chinese still displayed correctly in the app.)
  4. Optional check: In the file, use “Reopen with Encoding” → UTF-8; if text stays wrong, bytes on disk are already corrupted, not only display.

Expected Behavior

Generated files should be saved as UTF-8; hardcoded Chinese in .vue/.js should appear correctly in the editor, same as the rest of the project.

Operating System

Windows 10/11

Version Information

Version: 3.1.15 (system setup)
VSCode Version: 1.105.1
Commit: 3a67af7b780e0bfc8d32aefa96b8ff1cb8817f80
Date: 2026-04-15T01:46:06.515Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.26200

Does this stop you from using Cursor

No - Cursor works, but with this issue

A post was merged into an existing topic: Agent Write/StrReplace tools output GBK-encoded files on Chinese Windows — persists in 3.0.13 even after ACP changed to 65001