커서 ai 터미널 한글 깨짐, chcp 65001만으로 안 고쳐질 때 본 3곳

Cursor 터미널에서 한글이 깨질 때 핵심은 “Cursor를 다시 설치”가 아니라 터미널 프로필, 셸 인코딩, 실행 중인 프로그램 출력 인코딩을 분리해서 보는 것입니다. 저는 Windows 11에서 Cursor로 블로그 자동화 파이프라인을 돌리다가 Python 로그의 한글이 ���로 나오고, Git 파일명은 \353\270...처럼 보여서 한참 돌아갔습니다. 결론부터 말하면 chcp 65001 한 줄로 끝나는 경우도 있지만, AI 코딩 에이전트와 스크립트를 같이 굴리면 보통 한 군데 더 만져야 합니다.

Cursor 터미널에서 chcp 확인부터 시작해 원인을 5분 안에 좁혀보세요.

특히 Cursor, Claude Code, Codex처럼 터미널 안에서 코드를 읽고 고치는 흐름에서는 로그가 깨지면 에이전트도 원인을 잘못 짚습니다. “코드가 문제인지, 콘솔이 문제인지” 먼저 잘라내는 게 시간 절약입니다.

5분 안에 원인부터 좁혀보세요

아래 순서대로 확인하면 Cursor 재설치 없이 해결되는 경우가 많습니다.

점검 순서 바로 보기

제가 실제로 막힌 셋업

제 작업 환경은 Cursor + Windows PowerShell + Python 3.11 + Git입니다. Warp 터미널도 쓰지만, 이 문제는 Cursor 내장 터미널에서 AI 에이전트에게 바로 로그를 보여주려고 할 때 더 자주 드러났습니다.

문제가 된 상황은 간단했습니다. Notion에 임시로 쓴 글감을 Python 스크립트로 정리하고, 결과를 Markdown으로 뽑는 자동화 작업이었는데 터미널에는 제목과 태그가 전부 깨져 보였습니다.

print('오늘도, 코딩할 용기.')

위 코드가 Cursor 터미널에서 ������, ������처럼 나오면 코드 로직보다 콘솔 인코딩을 먼저 의심해야 합니다. Cursor는 VS Code 계열이라 터미널 렌더링은 괜찮아도, 안에서 실행되는 셸이 어떤 코드 페이지와 로케일을 쓰는지가 결과를 갈라놓습니다.

먼저 보는 3곳: 터미널, 셸, 프로그램

1) Windows라면 현재 코드 페이지부터 확인

Cursor 터미널에서 PowerShell을 열고 아래를 입력합니다.

chcp

Active code page: 949가 보이면 한국어 Windows 기본 코드 페이지입니다. 일반적인 한글 출력은 버티지만, UTF-8 기준으로 동작하는 Node.js, Python, npm 로그와 섞이면 깨질 수 있습니다.

chcp 65001

이 명령은 현재 터미널 세션을 UTF-8 쪽으로 바꿉니다. 다만 새 터미널을 열 때마다 풀릴 수 있고, Python이나 Git 설정이 따로 꼬여 있으면 여전히 깨질 수 있습니다.

2) PowerShell 프로필에 UTF-8 출력을 고정

매번 입력하기 귀찮다면 PowerShell 프로필에 넣습니다. Cursor 터미널에서 실행하세요.

notepad $PROFILE

파일이 열리면 아래 내용을 추가합니다.

chcp 65001 > $null
[Console]::InputEncoding = [System.Text.UTF8Encoding]::new()
[Console]::OutputEncoding = [System.Text.UTF8Encoding]::new()
$OutputEncoding = [System.Text.UTF8Encoding]::new()

저는 여기까지 하고도 Python 출력이 한 번 더 흔들렸습니다. 그때는 앱 자체의 인코딩 옵션을 같이 잡아야 했습니다.

3) Python, Git, Node 출력도 따로 확인

Python 스크립트에서 한글 로그가 깨진다면 아래 환경변수가 도움이 됩니다.

setx PYTHONUTF8 1

새 Cursor 터미널을 열고 다시 실행해야 적용됩니다. Git에서 한글 파일명이 이상한 8진수처럼 보이면 이 설정을 추가합니다.

git config --global core.quotepath false

Node.js나 npm 로그는 대체로 터미널 UTF-8 설정을 따라가지만, 오래된 패키지나 Windows 전용 CLI는 별도 인코딩을 타는 경우가 있습니다. 이때는 Cursor가 아니라 해당 CLI 문서를 보는 게 빠릅니다.

증상별로 어디를 고칠지 빠르게 고르기

보이는 증상 가능성이 큰 원인 먼저 할 조치
���처럼 글자가 통째로 깨짐 셸 코드 페이지와 프로그램 출력 인코딩 불일치 chcp 65001, PowerShell 프로필 UTF-8 고정
Git 파일명이 \354\...처럼 표시됨 Git의 경로 quoting 설정 git config --global core.quotepath false
일부 기호만 네모로 보임 인코딩보다 폰트 glyph 문제 Cursor 터미널 폰트를 D2Coding, JetBrains Mono 등으로 변경
Cursor에서는 깨지고 Windows Terminal은 정상 Cursor의 기본 터미널 프로필 차이 Cursor Settings에서 기본 프로필을 PowerShell 7 또는 Git Bash로 맞춤

Cursor 설정에서 확인할 부분

명령어를 바꿔도 새 터미널을 열 때 계속 원복된다면 Cursor의 기본 터미널 프로필을 확인합니다. Settings → Terminal → Integrated: Default Profile Windows에서 실제로 쓰는 셸을 고르세요.

저는 PowerShell 7을 설치한 뒤 Cursor 기본 프로필을 그쪽으로 바꿨을 때 가장 덜 흔들렸습니다. 설치는 Microsoft의 winget을 쓸 수 있습니다.

winget install Microsoft.PowerShell

그리고 Cursor의 settings.json에 이런 식으로 지정할 수 있습니다.

{
  'terminal.integrated.defaultProfile.windows': 'PowerShell'
}

JSON 예시는 설명을 위해 단순화했습니다. 실제 settings.json에서는 Cursor가 자동으로 생성한 프로필 이름과 경로를 확인해 맞추는 편이 안전합니다.

이런 분께는 이렇게 추천합니다

AI 에이전트로 로그를 자주 읽히는 개발자

Claude Code, Codex, Cursor Chat에 터미널 로그를 붙여 원인 분석을 시키는 분이라면 PowerShell 프로필 UTF-8 고정을 추천합니다. 로그가 깨지면 에이전트가 “문자열 처리 버그”로 오판하는 일이 생깁니다.

입문자 또는 설정을 최소화하고 싶은 분

일단 Cursor 터미널에서 chcp 65001만 실행하고 문제가 사라지는지 보세요. 해결되면 그다음에 프로필 고정으로 넘어가면 됩니다. 처음부터 settings.json과 환경변수를 모두 만지면, 나중에 무엇이 효과가 있었는지 모릅니다.

Git Bash를 주로 쓰는 분

Git Bash에서는 ~/.bashrc에 로케일을 넣는 방식이 더 익숙할 수 있습니다.

export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8

한글 표시만 목적이라면 ko_KR.UTF-8도 떠올릴 수 있지만, 환경에 따라 locale이 없을 수 있어 저는 먼저 en_US.UTF-8로 확인합니다.

흔한 함정: 폰트만 바꾸고 끝내기

폰트는 중요하지만 만능은 아닙니다. 네모 박스처럼 보이는 건 폰트 문제일 수 있지만, ���로 변한 텍스트는 이미 잘못 해석된 결과라 폰트만 바꿔도 살아나지 않습니다.

반대로 D2Coding이나 JetBrains Mono 같은 폰트로 바꿨더니 정상처럼 보이는 경우도 있습니다. 그래서 저는 순서를 이렇게 잡습니다. 먼저 chcp로 인코딩을 보고, 그다음 폰트, 마지막으로 프로그램별 설정을 봅니다.

FAQ

Cursor를 삭제하고 다시 설치하면 해결되나요?

대부분은 아닙니다. 설정이 사용자 프로필, PowerShell 프로필, Git 전역 설정에 남아 있기 때문에 재설치보다 현재 셸 설정을 보는 게 빠릅니다.

macOS에서도 같은 문제가 생기나요?

macOS는 기본적으로 UTF-8 환경이라 Windows보다 덜하지만, 원격 서버 SSH 접속이나 Docker 컨테이너 안의 locale이 비어 있으면 한글이 깨질 수 있습니다. 이때는 Cursor보다 서버의 LANG, LC_ALL을 확인하세요.

AI가 고치라고 한 코드 수정은 믿어도 되나요?

터미널 출력만 깨지는 상황이라면 코드 수정 전에 같은 스크립트를 Windows Terminal이나 Warp에서 한 번 실행해보세요. 다른 터미널에서 정상이라면 코드가 아니라 실행 환경 문제일 가능성이 큽니다.

지금 바로 할 체크리스트

  • Cursor 터미널에서 chcp를 실행해 현재 코드 페이지를 확인합니다.
  • chcp 65001로 임시 해결되는지 먼저 테스트합니다.
  • 반복되면 PowerShell 프로필에 UTF-8 설정을 넣고 새 터미널을 엽니다.
  • Git 파일명, Python 로그처럼 특정 도구만 깨지면 해당 도구 설정을 따로 확인합니다.

여기까지 해도 안 잡히면 “어떤 셸에서, 어떤 명령을 실행했을 때, 어떤 글자가 어떻게 깨지는지”를 한 줄로 기록해두세요. 그 기록이 있어야 Cursor Chat이나 Claude Code에게 물어도 엉뚱한 코드 수정으로 새지 않습니다.

오늘도, 코딩할 용기.

관련 링크

글쓴이 용기

15년차 백엔드 개발자, 바이브코딩으로 개발 방식 전환 중. Claude Code·Codex 실사용 후기와 빌더 일지를 씁니다.

지식창고