# Vomit

> A local CLI tool that translates Claude's verbose token output into readable English by piping it through a local LLM, with no telemetry or external dependencies.

Vomit is a fully local, open-source command-line tool written in Go by developer zachahn. It addresses a specific pain point with Claude's agentic output: the model tends to emit verbose, hard-to-read "token vomit" during sessions, and Vomit pipes that output through a local LLM to produce cleaner, more readable English. The project is self-described as "totally vibe-coded" and primarily tested on Mac.

## What It Is

Vomit sits between Claude's output and the user, intercepting session tokens and translating them via a locally running LLM. It operates entirely on-device — no telemetry, no external API calls, no cloud dependencies. The tool integrates with Claude via hooks, replacing Claude's raw output in the terminal with a more human-readable version. It can also run in a non-invasive side-by-side mode, letting users monitor Claude sessions without modifying the primary output stream.

## How It Works

The workflow involves three steps: installing the binary via `go install`, running `vomit init` to configure the local LLM connection, and then running `vomit scrub -claude` to get instructions for wiring it into Claude's hook system. Key CLI commands include:

- `vomit list` — lists Claude session identifiers
- `vomit tail [<session_identifier>]` — translates tokens for a specific session or follows the latest one
- `vomit help` — shows all available commands

The local LLM only sees what Claude tries to communicate — it has no access to actions or files — so some hallucination is expected. The author notes it is also "pretty slow."

## Local LLM Compatibility

Vomit is designed to work with any LLM backend that exposes an OpenAI-compatible API. Explicitly supported backends include:

- **Llama.app** (the author's recommended starting point, with GPT-OSS 20B suggested as a model)
- **Ollama**
- Any service implementing the OpenAI API interface

## Tradeoffs to Know

The README is candid about limitations: the local LLM can hallucinate because it only sees Claude's communicated tokens, not the full context of actions or files. There is also a possibility of completely missing Claude's message during translation. The author recommends using a tool like AgentsView alongside Vomit to retain access to original messages, since Vomit does not modify anything at runtime beyond writing temporary files to `TMPDIR`.

## Current Status

The repository was created in August 2026 and last updated shortly after, with 173 stars and 5 forks as of the latest data. It is an early-stage, single-developer project released under the GNU GPLv3 license. The author published a companion blog post at zachahn.com describing the project's motivation and design.

## Features
- Translates Claude's verbose token output into readable English
- Fully local — no telemetry, no external dependencies
- Integrates with Claude via hooks to replace output in-terminal
- Non-invasive side-by-side monitoring mode
- List and tail Claude session identifiers
- Compatible with Llama.app, Ollama, and any OpenAI-compatible API
- Writes only to TMPDIR at runtime — does not modify Claude sessions
- Simple setup via go install and vomit init

## Integrations
Claude Code, Llama.app, Ollama, OpenAI-compatible LLM APIs, AgentsView

## Platforms
MACOS, LINUX, API, CLI

## Pricing
Open Source

## Version
latest

## Links
- Website: https://github.com/zachahn/vomit
- Documentation: https://github.com/zachahn/vomit
- Repository: https://github.com/zachahn/vomit
- EveryDev.ai: https://www.everydev.ai/tools/vomit
