Skip to content

scotthamilton77/claude-code-proxy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code Proxy

Claude Code Proxy Demo

A dual-purpose monitoring solution that serves as both a proxy for Claude Code requests and a visualization dashboard for your Claude API conversations.

What It Does

Claude Code Proxy serves two main purposes:

  1. Claude Code Proxy: Intercepts and monitors requests from Claude Code (claude.ai/code) to the Anthropic API, allowing you to see what Claude Code is doing in real-time
  2. Conversation Viewer: Displays and analyzes your Claude API conversations with a beautiful web interface

Features

  • Transparent Proxy: Routes Claude Code requests through the monitor without disruption with full header forwarding and compression support
  • Request Monitoring: SQLite-based logging of all API interactions
  • Live Dashboard: Real-time visualization of requests and responses
  • Conversation Analysis: View full conversation threads with tool usage and configuration
  • Token Usage Tracking: Monitor and display token consumption metrics for requests
  • Tools Configuration Display: View tool configurations and parameters in request details
  • Easy Setup: One-command startup for both services

Quick Start

Prerequisites

  • Go 1.20+
  • Node.js 18+
  • Anthropic API key
  • Claude Code

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/claude-code-monitor.git
    cd claude-code-monitor
  2. Set up your environment variables

    cp .env.example .env
  3. Install and run (first time)

    make install  # Install all dependencies
    make dev      # Start both services

    Or use the script that does both:

    ./run.sh
  4. Subsequent runs (after initial setup)

    make dev
    # or
    ./run.sh
  5. Using with Claude Code

To use this proxy with Claude Code, set:

export ANTHROPIC_BASE_URL=http://localhost:3001

Then launch Claude Code using the claude command.

This will route Claude Code's requests through the proxy for monitoring.

Access Points

Advanced Usage

Running Services Separately

If you need to run services independently:

# Run proxy only
make run-proxy

# Run web interface only (in another terminal)
make run-web

Available Make Commands

make install    # Install all dependencies
make build      # Build both services
make dev        # Run in development mode
make clean      # Clean build artifacts
make db-reset   # Reset database
make help       # Show all commands

Configuration

Create a .env file with:

PORT=3001
DB_PATH=requests.db
ANTHROPIC_FORWARD_URL=https://api.anthropic.com

See .env.example for all available options.

Project Structure

claude-code-monitor/
├── proxy/                  # Go proxy server
│   ├── cmd/               # Application entry points
│   ├── internal/          # Internal packages
│   └── go.mod            # Go dependencies
├── web/                   # React Remix frontend
│   ├── app/              # Remix application
│   └── package.json      # Node dependencies
├── run.sh                # Start script
├── .env.example          # Environment template
└── README.md            # This file

Features in Detail

Request Monitoring

  • All API requests logged to SQLite database
  • Searchable request history
  • Request/response body inspection
  • Conversation threading
  • Token usage tracking and analysis
  • Tools configuration monitoring

Prompt Analysis

  • Automatic prompt grading
  • Best practices evaluation
  • Complexity assessment
  • Response quality metrics

Web Dashboard

  • Real-time request streaming
  • Interactive request explorer
  • Conversation visualization
  • Performance metrics

License

MIT License - see LICENSE for details.

About

Proxy that captures and visualizes in-flight Claude Code requests and conversations.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 66.2%
  • Go 30.0%
  • CSS 1.6%
  • Other 2.2%