Vomit: Claude 5의 난해한 출력을 로컬 LLM으로 다시 써 주는 도구
Vomit: Clean up Claude 5's token output with a separate LLM
TL;DR Highlight
Claude Code 출력을 로컬 LLM에 통과시켜 읽기 쉬운 영어로 바꿔 준다
Who Should Read
Claude Code의 장황하고 난해한 문체 때문에 읽기 힘든 개발자
Core Mechanics
- Vomit은 Claude 출력을 로컬 LLM으로 다시 쓴다
- Claude의 'token vomit'을 로컬 LLM에 파이프로 넘겨 영어로 바꿔 준다.
- 로컬에서만 돌고 텔레메트리와 외부 의존성이 없다.
- Claude Code 훅으로 터미널 UI 출력을 바꾼다
- Claude Code에 훅으로 연결해 터미널 UI에 보이는 출력 전체를 다시 쓴다.
- 설치 후 vomit init으로 LLM 연결 정보를 설정한다.
- 로컬 LLM은 Claude의 말만 본다
- 파일이나 실행한 작업에는 접근하지 못한다.
- 그래서 내용을 조금 지어낼 수 있다고 작성자가 직접 밝혔다.
- 호환 백엔드와 추천 모델이 정해져 있다
- Llama.app, Ollama, Apfel, OpenAI API 호환 서버와 함께 쓸 수 있다고 한다.
- 로컬 LLM이 없다면 Llama.app으로 GPT-OSS 20B를 받아 쓰길 추천한다.
- 한계와 원본 확인 방법이 있다
- 전부 vibe-coded이고 Mac에서만 테스트했으며 꽤 느리다.
- Claude Code 안에서 ctrl-o를 누르면 원래 출력을 볼 수 있다.
Community Reactions
- 프롬프트 래퍼일 뿐이라는 의견
- 한 댓글은 이 도구가 편집자 역할을 주는 프롬프트의 래퍼처럼 보인다고 했다.
- 그 프롬프트는 주어·동사 어색함, 자화자찬, 엠 대시를 없애고 대화체로 다시 쓰라는 규칙이었다.
- 프롬프트나 스킬로 직접 줄였다는 경험
- 한 댓글은 'deslop' 스킬을 만들어 Claude 출력이 엇나갈 때 호출한다고 했다.
- 다른 댓글은 claude.md로 'carries' 같은 단어를 금지했더니 조금 나아졌다고 했다.
- 또 다른 댓글은 Simplified Technical English를 쓰라는 지시를 제안했고, Caveman 프로젝트가 경험을 크게 개선했다는 댓글도 있었다.
- AGENTS.md가 잘 안 먹힌다는 경험
- 한 댓글은 Codex에서도 비슷한 문제가 있고 AGENTS.md 지시는 세션이 길어지면 자주 어겨진다고 했다.
- 다른 댓글들은 Opus 4.6으로 되돌리거나 Codex로 갈아탔다고 했다.
- 원인과 이름에 대한 의견
- 한 댓글은 추론용 문체와 최종 답변 문체가 달라서 생기는 문제라고 봤다.
- 'Save your tokens' 문구는 이미 생성된 토큰을 아끼는 게 아니라는 지적이 있었다.
- 이름이 구토 공포증이 있는 사람에게 불편할 수 있다는 의견도 있었다.
How to Apply
- CLAUDE.md에 금지 표현과 문체 규칙 추가하기
- 오늘 Claude Code 프로젝트의 CLAUDE.md에 자주 거슬린 동사와 비유를 금지 목록으로 적어라.
- 'X carries ...' 같은 사물 주어 문장, 엠 대시, 자화자찬을 쓰지 말라고 명시하라.
- 로컬 LLM으로 Vomit 설치해 보기
- Mac에서 Llama.app 또는 Ollama에 GPT-OSS 20B를 받아 둬라.
- go install로 설치하고 vomit init으로 연결한 뒤 vomit scrub -claude의 안내대로 훅을 설정하라.
- 원본과 변환본을 비교하며 환각 점검하기
- 중요한 작업 결과는 ctrl-o로 Claude 원본 출력을 열어 변환본과 대조하라.
- 변환 LLM은 파일과 작업 내용을 못 보므로 사실 관계는 원본으로 확인하라.
Try It
# Claude Code, ChatGPT, Claude에 붙여넣는 프롬프트 (댓글에 소개된 편집자 프롬프트를 옮긴 것)
You are an editor. You'll be given a message with strange characteristics:
- Weird subject and verb combinations
- Subjects that should be objects
- Very roundabout reasoning, peppered with pseudo-epiphanies
- A distracting beat to the flow of the message
- Self-praise
Remove these characteristics, and rewrite it in a clear, conversational style. Keep the intent of the message, and take care not to lose any of the details.
Rules:
- Only humans, groups of humans, and agents should do action verbs.
- Objects should never do anything (avoid "X carries ...", "X names ...").
- APIs may do CRUD, queueing, running, and calling.
- Avoid em dashes.
Reply with the edited prose and nothing else.
{{Claude의 난해한 출력}}
# 이어서 해 볼 것: 변환 결과에서 원본의 세부 내용이 빠졌는지 비교해 달라고 요청해 보기Terminology
관련 논문
AI는 도구다, 잘 쓰려면 기술이 필요하다
Hickey의 'AI는 도구가 아니다'에 맞서, LLM도 쓰는 사람의 기술이 결과를 가른다고 반박
딥리서치 에이전트의 Reflective Prompt Optimization: 토픽 분리·멀티 시드로 본 진짜 성능 향상과 프롬프트 과적합
GEPA로 프롬프트를 최적화했더니 held-out 인용 보상 0.702→0.781
GPT-6와 Intelligent UI: 채팅 안에서 시각·인터랙티브 응답 만들기
OpenAI가 GPT-6로 채팅 응답에 UI를 넣는다는데 원문이 없어 댓글 반응만 확인된다
Base 모델도 첫 토큰 단서(cue) 하나로 추론한다: 학습 데이터가 만든 연상
응답 첫 두 토큰만 고정했더니 Olmo-3-7B의 MATH-500 정답률이 42%에서 78%로 올랐다
Jev식 Typed Decision Model에서는 정의보다 라벨이 이긴다
옵션 이름을 A, B로 바꿨더니 정확도가 +0.1511 올랐다
프롬프트는 얼마나 필요한가? Few-shot 예시를 블랙박스로 최소화하는 DD-FSM
Delta debugging으로 few-shot 예시를 평균 65.3% 줄여도 출력은 그대로
언어모델은 "불안정한(Insecure)" 보고자다: 결함을 숨기는 LLM 리포트
"Be honest" 한 줄을 붙였더니 GPT-5.5의 부정 결과 공개가 2/200에서 190/200으로 늘었다