fix: chat scroll, add sidebar logo, WSL2 docs
- Fix chat panel not scrolling by adding overflow-hidden to ScrollArea - Add 36x36 app logo next to "ClawPal" title in sidebar - Add WSL2 SSH setup guide to README Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
This commit is contained in:
95
README.md
95
README.md
@@ -1,42 +1,91 @@
|
||||
# ClawPal MVP (Tauri)
|
||||
# ClawPal
|
||||
|
||||
ClawPal is a local helper for OpenClaw configuration:
|
||||
- install scenarios via Recipes
|
||||
- one-click rollback for every config change
|
||||
- local doctor checks with basic auto-fixes
|
||||
A desktop companion app for [OpenClaw](https://github.com/openclaw/openclaw) — manage your AI agents, models, and configurations with a visual interface instead of editing JSON by hand.
|
||||
|
||||
## Quick start
|
||||
## Features
|
||||
|
||||
- **Recipes** — Browse and apply pre-built configuration templates with parameter forms, live diffs, and automatic rollback on failure
|
||||
- **Agent Management** — Create, configure, and monitor your OpenClaw agents at a glance
|
||||
- **Model Profiles** — Set up API keys, browse the model catalog, and switch the global default model in one click
|
||||
- **Channel Bindings** — Connect Discord channels to agents with per-channel model overrides
|
||||
- **Doctor** — Run diagnostics, auto-fix common issues, and clean up stale sessions
|
||||
- **History & Rollback** — Every config change is snapshotted; roll back to any point in time
|
||||
- **Remote Management** — Connect to remote OpenClaw instances over SSH and manage them the same way
|
||||
- **Auto-Update** — ClawPal checks for new versions and updates itself in-app
|
||||
|
||||
## Install
|
||||
|
||||
Download the latest release for your platform from [GitHub Releases](https://github.com/zhixianio/clawpal/releases):
|
||||
|
||||
| Platform | Format |
|
||||
|----------|--------|
|
||||
| macOS (Apple Silicon) | `.dmg` |
|
||||
| macOS (Intel) | `.dmg` |
|
||||
| Windows | `.exe` installer or portable |
|
||||
| Linux | `.deb` / `.AppImage` |
|
||||
|
||||
## Development
|
||||
|
||||
Prerequisites: [Node.js](https://nodejs.org/) 20+, [Rust](https://www.rust-lang.org/tools/install), and [Tauri CLI](https://v2.tauri.app/start/prerequisites/)
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run dev
|
||||
npm run dev # Vite dev server + Tauri window
|
||||
```
|
||||
|
||||
### Override folders outside `~/.openclaw`
|
||||
|
||||
You can place ClawPal-managed files outside `~/.openclaw` with env vars:
|
||||
|
||||
```bash
|
||||
export CLAWPAL_OPENCLAW_DIR="$HOME/.openclaw" # OpenClaw 配置来源目录(默认)
|
||||
export CLAWPAL_DATA_DIR="$HOME/.clawpal" # ClawPal 元数据目录(默认: $CLAWPAL_OPENCLAW_DIR/.clawpal)
|
||||
```
|
||||
|
||||
## Build
|
||||
### Build
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
cd src-tauri && cargo build
|
||||
```
|
||||
|
||||
## Release
|
||||
### Release
|
||||
|
||||
```bash
|
||||
npm run release:dry-run
|
||||
npm run release
|
||||
npm run release:dry-run # Preview version bump + tag
|
||||
npm run release # Tag and push (triggers CI)
|
||||
```
|
||||
|
||||
### Environment overrides
|
||||
|
||||
```bash
|
||||
export CLAWPAL_OPENCLAW_DIR="$HOME/.openclaw" # OpenClaw config directory (default)
|
||||
export CLAWPAL_DATA_DIR="$HOME/.clawpal" # ClawPal metadata directory
|
||||
```
|
||||
|
||||
## WSL2 (Windows Subsystem for Linux)
|
||||
|
||||
If you have OpenClaw installed inside WSL2, you can manage it from ClawPal using the built-in SSH Remote feature:
|
||||
|
||||
1. Enable SSH inside your WSL2 distro:
|
||||
```bash
|
||||
sudo apt install openssh-server
|
||||
sudo systemctl enable ssh
|
||||
sudo systemctl start ssh
|
||||
```
|
||||
|
||||
2. In ClawPal, add a new SSH host:
|
||||
- **Host**: `localhost`
|
||||
- **Port**: the SSH port (default `22`, or check with `ss -tlnp | grep ssh`)
|
||||
- **User**: your WSL2 username
|
||||
|
||||
3. Connect — ClawPal will manage the WSL2 OpenClaw instance the same as any remote server.
|
||||
|
||||
## Tech stack
|
||||
|
||||
- **Frontend** — React, TypeScript, Tailwind CSS, Radix UI
|
||||
- **Backend** — Rust, Tauri 2
|
||||
- **Remote** — russh (SSH/SFTP)
|
||||
|
||||
## Project layout
|
||||
|
||||
- `src/` React + TypeScript UI
|
||||
- `src-tauri/` Rust + Tauri host and command APIs
|
||||
- `docs/plans/` design and implementation plan
|
||||
```
|
||||
src/ React + TypeScript UI
|
||||
src-tauri/ Rust + Tauri backend
|
||||
docs/plans/ Design and implementation plans
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Proprietary. All rights reserved.
|
||||
|
||||
Reference in New Issue
Block a user