claude-code-webui CLAUDE.md

Repository-specific instructions for claude-code-webui, a web interface that streams responses from the Claude command-line tool. They cover setup, quality checks, and the backend and API structure.

In plain words
What is it for?
Use them to install Git hooks, run quality checks, understand the backend, and work with project, chat, and streaming-response endpoints.
Why use it?
They tell contributors how to prepare the project and verify changes consistently.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/sugyan/claude-code-webui/claude-md
Clone the repo
git clone --depth 1 https://github.com/sugyan/claude-code-webui
Per session 2,346 This file is loaded in full into every session.
When invoked 2,346 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.02346 $0.02346
Opus 5 $0.01173 $0.01173
Sonnet 5 $0.00469 $0.00469
Haiku 4.5 $0.00235 $0.00235

Measured 3d ago against content hash c1b49e309dd4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

claude-code-webui CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 290 lines

How it starts

The opening of the file, as written. The whole thing — 290 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Claude Code Web UI

A web-based interface for the claude command line tool that provides streaming responses in a chat interface.

Code Quality

Automated quality checks ensure consistent code standards:

  • Lefthook: Git hooks manager running make check before commits
  • Quality Commands: make check runs all quality checks manually
  • CI/CD: GitHub Actions runs quality checks on every push

Setup for New Contributors

# Install Lefthook
brew install lefthook  # macOS
# Or download from https://github.com/evilmartians/lefthook/releases

# Install and verify hooks
lefthook install
lefthook run pre-commit

Architecture

Backend (Deno/Node.js)

  • Location: backend/ | Port: 8080 (configurable)
  • Technology: TypeScript + Hono framework with runtime abstraction
  • Purpose: Executes claude commands and streams JSON responses

Key Features: Runtime abstraction, modular architecture, structured logging, universal Claude CLI path detection, session continuity, single binary distribution, comprehensive testing.

API Endpoints:

  • GET /api/projects - List available project directories
  • POST /api/chat - Chat messages with streaming responses ({ message, sessionId?, requestId, allowedTools?, workingDirectory? })
  • POST /api/abort/:requestId - Abort ongoing requests
  • GET /api/projects/:encodedProjectName/histories - Conversation histories
  • GET /api/projects/:encodedProjectName/histories/:sessionId - Specific conversation history

Frontend (React)

  • Location: frontend/ | Port: 3000 (configurable)
  • Technology: Vite + React + SWC + TypeScript + TailwindCSS + React Router
  • Purpose: Project selection and chat interface with streaming responses

Key Features: Project directory selection, routing system, conversation history, demo mode, real-time streaming, theme toggle, auto-scroll, accessibility features, modular hook architecture, request abort functionality, permission dialog handling, configurable Enter key behavior.

Read the full file on GitHub · 290 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 290 lines · 2,346 tokens per session scan A c1b49e309dd4

Subscribe to this mod's changes

claude-code-webui CLAUDE.md is an instructions file published in the GitHub repository sugyan/claude-code-webui (1,140 stars, last pushed 3mo ago), licensed MIT. It adds 2,346 tokens to every session, about $0.0117 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.