companion  by The-Vibe-Company

Browser UI for Claude Code CLI

Created 4 days ago

New!

1,300 stars

Top 30.6% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides an open-source web UI for Claude Code, enabling users to manage multiple sessions, stream responses, and approve tool calls directly from a browser or mobile device. It targets users who find the Claude Code CLI powerful but cumbersome, offering a more interactive and visual experience without requiring additional API keys, leveraging existing Claude Code subscriptions.

How It Works

The core innovation lies in reverse-engineering the undocumented WebSocket protocol embedded within the Claude Code CLI. By setting the --sdk-url flag, the CLI connects to a custom backend server built with Bun and Hono. This server acts as a bridge, translating NDJSON messages from the CLI into standard JSON for a React-based frontend. This architecture allows for real-time streaming of responses and granular control over agent tool execution, enhancing usability over the standard terminal interface.

Quick Start & Requirements

To run, use bunx the-vibe-companion Open localhost:3456 .. For development, clone the repository, navigate to companion/web, run bun install, and then bun run dev. Production builds are created with bun run build && bun run start. Key requirements include the Bun runtime and a modern web browser. No Claude Code API key is necessary.

Highlighted Details

  • Multiple Sessions: Run and manage several Claude Code instances concurrently, each with independent configurations.
  • Real-time Streaming: Observe agent responses render token-by-token as they are generated.
  • Tool Call Visibility: Inspect and approve/deny all executed tool calls (e.g., Bash commands, file operations) with syntax highlighting.
  • Hierarchical Subagent Display: Visualize nested agent interactions clearly.
  • Configurable Permissions: Control tool execution approval from fully automatic to manual per-call.
  • Session Persistence: Sessions are saved to disk and can auto-recover after server restarts or crashes using the --resume flag.
  • Environment Profiles: Manage API keys and configurations per-project via ~/.companion/envs/.

Maintenance & Community

Contribution guidelines are provided, encouraging users to check open issues and submit pull requests. Specific community channels (like Discord or Slack) or notable maintainers are not detailed in the README.

Licensing & Compatibility

The project is licensed under the MIT license, which is permissive and generally compatible with commercial use and integration into closed-source projects.

Limitations & Caveats

This project relies on a reverse-engineered, undocumented WebSocket protocol. Future updates to the Claude Code CLI could potentially break compatibility, requiring maintenance efforts to adapt to protocol changes. The stability and long-term viability are contingent on the continued accessibility and stability of the underlying CLI's internal protocol.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
91
Issues (30d)
14
Star History
1,447 stars in the last 4 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Magnus Müller Magnus Müller(Cofounder of Browser Use), and
4 more.

web-ui by browser-use

0.2%
16k
Web UI for AI browser agent
Created 1 year ago
Updated 5 months ago
Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Wei-Lin Chiang Wei-Lin Chiang(Cofounder of LMArena), and
5 more.

open-lovable by firecrawl

0.4%
24k
Build React apps instantly with AI chat
Created 6 months ago
Updated 2 months ago
Feedback? Help us improve.