docs: rewrite READMEs with progressive disclosure, add SECURITY.md and roadmap
Main README restructured: collapsable features, quick start with secure defaults, Why a GUI section, roadmap Package READMEs (web/desktop/vscode) rewritten with runtime-specific focus; VSCode includes full commands and settings Added SECURITY.md, non-dev contributing guide, and updated CONTRIBUTING.md with dev scripts and ports
This commit is contained in:
+73
-46
@@ -1,76 +1,103 @@
|
||||
# <picture><source media="(prefers-color-scheme: dark)" srcset="https://github.com/btriapitsyn/openchamber/raw/HEAD/docs/references/badges/openchamber-logo-dark.svg"><img src="https://github.com/btriapitsyn/openchamber/raw/HEAD/docs/references/badges/openchamber-logo-light.svg" width="32" height="32" align="absmiddle" /></picture> @openchamber/web
|
||||
|
||||
[](https://github.com/btriapitsyn/openchamber/stargazers)
|
||||
[](https://github.com/btriapitsyn/openchamber/network/members)
|
||||
[](https://github.com/btriapitsyn/openchamber/releases/latest)
|
||||
[](https://opencode.ai)
|
||||
[](https://zread.ai/btriapitsyn/openchamber)
|
||||
[](https://discord.gg/ZYRSdnwwKA)
|
||||
[](https://ko-fi.com/G2G41SAWNS)
|
||||
|
||||
Web/PWA interface for the [OpenCode](https://opencode.ai) AI coding agent.
|
||||
Run [OpenCode](https://opencode.ai) in your browser. Install the CLI, open `localhost:3000`, done. Works on desktop browsers, tablets, and phones as a PWA.
|
||||
|
||||
This package installs the `openchamber` CLI that runs a local web server. For the full project overview and screenshots, see the main repo:
|
||||
Full project overview, screenshots, and all features: [github.com/btriapitsyn/openchamber](https://github.com/btriapitsyn/openchamber)
|
||||
|
||||
https://github.com/btriapitsyn/openchamber
|
||||
|
||||
## Installation
|
||||
## Install
|
||||
|
||||
```bash
|
||||
# Quick install (auto-detects your package manager)
|
||||
curl -fsSL https://raw.githubusercontent.com/btriapitsyn/openchamber/main/scripts/install.sh | bash
|
||||
|
||||
# Or install manually
|
||||
bun add -g @openchamber/web # or npm, pnpm, yarn
|
||||
```
|
||||
|
||||
Or install manually: `bun add -g @openchamber/web` (or npm, pnpm, yarn).
|
||||
|
||||
> **Prerequisites:** [OpenCode CLI](https://opencode.ai) installed, Node.js 20+.
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
openchamber # Start on port 3000
|
||||
openchamber --port 8080 # Custom port
|
||||
openchamber --daemon # Background mode
|
||||
openchamber --ui-password secret # Password-protect UI
|
||||
openchamber --try-cf-tunnel # Create a Cloudflare Quick Tunnel for remote access
|
||||
openchamber --try-cf-tunnel --tunnel-qr # Show QR code for easy mobile access
|
||||
openchamber --try-cf-tunnel --tunnel-password-url # Include password in URL for auto-login
|
||||
OPENCODE_PORT=4096 OPENCODE_SKIP_START=true openchamber # Connect to external OpenCode server
|
||||
OPENCODE_HOST=https://myhost:4096 OPENCODE_SKIP_START=true openchamber # Connect via custom host/HTTPS
|
||||
openchamber stop # Stop server
|
||||
openchamber update # Update to latest version
|
||||
openchamber # Start on port 3000
|
||||
openchamber --port 8080 # Custom port
|
||||
openchamber --ui-password secret # Password-protect
|
||||
openchamber stop # Stop server
|
||||
openchamber update # Update to latest
|
||||
```
|
||||
|
||||
Named Tunnel mode is configured in-app (Settings -> OpenChamber -> Tunnel). The CLI currently supports Quick Tunnel flags only. `--tunnel <config.yml>` is not supported yet.
|
||||
<details>
|
||||
<summary>Remote access & tunnels</summary>
|
||||
|
||||
### Environment Variables
|
||||
```bash
|
||||
openchamber --try-cf-tunnel # Cloudflare Quick Tunnel
|
||||
openchamber --try-cf-tunnel --tunnel-qr # + QR code for mobile
|
||||
openchamber --try-cf-tunnel --tunnel-password-url # + password in URL
|
||||
```
|
||||
|
||||
- `OPENCODE_HOST` - Full base URL of external OpenCode server, e.g. `http://hostname:4096` or `https://hostname:4096` (overrides `OPENCODE_PORT`)
|
||||
- `OPENCODE_PORT` - Port of external OpenCode server to connect to (instead of starting embedded server)
|
||||
- `OPENCODE_SKIP_START` - Skip starting embedded OpenCode server (use with `OPENCODE_HOST` or `OPENCODE_PORT` to connect to external instance)
|
||||
Named Tunnel mode is configured in-app at **Settings > OpenChamber > Tunnel**. Requires [cloudflared](https://github.com/cloudflare/cloudflared/releases).
|
||||
|
||||
## Prerequisites
|
||||
</details>
|
||||
|
||||
- [OpenCode CLI](https://opencode.ai) installed (`opencode`)
|
||||
- Node.js 20+
|
||||
<details>
|
||||
<summary>Connect to external OpenCode server</summary>
|
||||
|
||||
## Features
|
||||
```bash
|
||||
OPENCODE_PORT=4096 OPENCODE_SKIP_START=true openchamber
|
||||
OPENCODE_HOST=https://myhost:4096 OPENCODE_SKIP_START=true openchamber
|
||||
```
|
||||
|
||||
### Core UI
|
||||
| Variable | Description |
|
||||
|----------|-------------|
|
||||
| `OPENCODE_HOST` | Full base URL of external server (overrides `OPENCODE_PORT`) |
|
||||
| `OPENCODE_PORT` | Port of external server |
|
||||
| `OPENCODE_SKIP_START` | Skip starting embedded OpenCode server |
|
||||
|
||||
- Branchable chat timeline with `/undo`, `/redo`, and one-click forks from earlier turns
|
||||
- Smart tool UIs for diffs, file operations, permissions, and long-running task progress
|
||||
- Multi-agent runs from one prompt with isolated worktrees for safe comparisons
|
||||
- Git workflows in-app: identities, commits, PR creation, checks, and merge actions
|
||||
- Context visibility tools (token/cost breakdowns, raw message inspection, and activity summaries)
|
||||
- Integrated terminal with per-directory sessions and stable performance on heavy output
|
||||
</details>
|
||||
|
||||
### Web / PWA
|
||||
<details>
|
||||
<summary>Docker</summary>
|
||||
|
||||
- Cloudflare tunnel access with two modes: Quick Tunnel (CLI) and Named Tunnel (in-app settings)
|
||||
- One-scan onboarding with tunnel QR + password URL helpers
|
||||
- Mobile-first experience: optimized chat controls, keyboard-safe layouts, and attachment-friendly UI
|
||||
- Background notifications plus reliable cross-tab session activity tracking
|
||||
- Built-in self-update + restart flow that keeps your server settings intact
|
||||
```bash
|
||||
docker compose up -d # Available at http://localhost:3000
|
||||
```
|
||||
|
||||
**Optional env vars:**
|
||||
```yaml
|
||||
environment:
|
||||
UI_PASSWORD: your_secure_password
|
||||
CF_TUNNEL: "true" # Options: true, qr, password
|
||||
```
|
||||
|
||||
**Data directory:** mount `data/` for persistent storage. Ensure permissions:
|
||||
```bash
|
||||
mkdir -p data/openchamber data/opencode/share data/opencode/config data/ssh
|
||||
chown -R 1000:1000 data/
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Background & daemon mode</summary>
|
||||
|
||||
```bash
|
||||
openchamber --daemon # Run in background
|
||||
openchamber stop # Stop background server
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
## What makes the web version special
|
||||
|
||||
- **Remote access** — Cloudflare tunnel with QR onboarding. Scan from your phone, start coding.
|
||||
- **Mobile-first PWA** — optimized chat controls, keyboard-safe layouts, drag-to-reorder projects
|
||||
- **Background notifications** — know when your agent finishes, even from another tab
|
||||
- **Self-update** — update and restart from the UI, server settings stay intact
|
||||
- **Cross-tab tracking** — session activity stays in sync across browser tabs
|
||||
|
||||
Plus everything from the shared OpenChamber UI: branchable timeline, Git sidebar, terminal, voice mode, and more.
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Reference in New Issue
Block a user