A Metal Gear Solid 1 codec interface for chatting with Claude. Claude roleplays as Colonel Roy Campbell, providing mission support via the iconic codec radio screen.
- PS1-authentic codec UI with CRT scanlines, vignetting, and flicker
- Animated 3-frame portraits for both Campbell and Snake
- Streaming responses with real-time codec bar level meter
- 7-segment LCD frequency display (140.85)
- Multi-turn conversation sessions with persistence
- Session selector with keyboard navigation
- Node.js >= 18
- Claude Code CLI installed and authenticated
npm install
npm startOpen http://localhost:3141.
The port can be changed with the PORT environment variable:
PORT=8080 npm start- Enter — send message
- Shift+Enter — newline
- Esc — return to session selector
- ↑ / ↓ — navigate sessions
- Delete — remove a session
server.js Express + WebSocket server, spawns Claude CLI
public/
index.html Codec UI layout
app.js Frontend client (WebSocket, animations, session management)
style.css PS1-era codec theming with CRT effects
assets/ Portrait animation frames (SVG/PNG)
sessions/ Persisted conversation history (gitignored)
The server communicates with Claude by spawning the claude CLI with --append-system-prompt for the Colonel Campbell persona and --output-format stream-json for real-time streaming over WebSocket.