Fork of seifghazi/claude-code-proxy with local hardening
Find a file
2025-07-10 07:49:03 -04:00
proxy Merge branch 'main' into feat/proxy-v2 2025-07-09 20:01:58 +03:00
web feat: implement proxy v2 with backend and frontend enhancements 2025-07-09 12:57:10 -04:00
.env.example Ready 2025-06-29 20:50:04 -04:00
.gitignore Ready 2025-06-29 20:50:04 -04:00
demo.gif Update ReadMe gif with new design 2025-07-09 13:10:14 -04:00
LICENSE Ready 2025-06-29 20:50:04 -04:00
Makefile Ready 2025-06-29 20:50:04 -04:00
README.md Remove outdate ref to api key requirement 2025-07-10 07:49:03 -04:00
run.sh Ready 2025-06-29 20:50:04 -04:00

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
  • 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
  • Easy Setup: One-command startup for both services

Quick Start

Prerequisites

  • Go 1.20+
  • Node.js 18+
  • 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

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.