feat: v0.13.0 — 新增 Hermes Agent 双引擎支持,更新全部文档与官网

- 新增 Hermes Agent 引擎,与 OpenClaw 双引擎并行管理
- 内置 Hermes Agent 对话界面(工具调用可视化、SSE 流式、文件访问开关)
- 多安装清理工具(OpenClaw 多安装检测与一键清理)
- 官网 index.html 更新(title/meta/OG/Twitter/Schema.org/hero/i18n)
- 全部 11 语言 README 更新为多引擎架构描述
- 版本号升级至 0.13.0(package.json/Cargo.toml/tauri.conf.json)
- CHANGELOG.md 新增 0.13.0 条目
- 规划与开发文档从 docs/ 迁移至 .tmp/(不再对外暴露)
This commit is contained in:
晴天
2026-04-13 04:07:25 +08:00
parent 849924b152
commit 32190c8f27
23 changed files with 103 additions and 1964 deletions

View File

@@ -5,6 +5,26 @@
格式遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/)
版本号遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
## [0.13.0] - 2026-04-13
### 新功能 (Features)
- **Hermes Agent 多引擎支持** — 新增 Hermes Agent 引擎,与 OpenClaw 双引擎并行,自由切换、各自独立管理。包含完整的 Hermes 仪表盘、服务管理、模型配置、Agent 管理等页面
- **Hermes Agent 对话** — 内置 Hermes Agent 聊天界面支持工具调用可视化、SSE 流式输出、多会话管理、Slash 命令
- **文件系统访问开关** — Hermes Agent 对话新增文件访问开关,开启后 Agent 可读取本机文件,自动适配 Windows/macOS/Linux 命令
- **多安装清理工具** — OpenClaw 多安装检测与一键清理支持查看所有安装路径、卸载命令、CLI 绑定
### 改进 (Improvements)
- **官网与文档全面更新** — 官网 index.html、所有 11 语言 README 更新为多引擎架构描述SEO meta/OG/Twitter Card/Schema.org 同步更新
- **内部文档整理** — 规划与开发文档从 docs/ 迁移至 .tmp/,不再对外暴露
### 修复 (Fixes)
- **Gateway 冲突引导优化** — 外来 Gateway 冲突弹窗新增一键清理按钮,直接跳转安装管理
---
## [0.12.0] - 2026-04-11
### 新功能 (Features)

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
OpenClaw-Verwaltungspanel mit integriertem KI-Assistenten — Installation, Konfiguration, Diagnose & Reparatur mit einem Klick
OpenClaw & Hermes Agent Verwaltungspanel mit integriertem KI-Assistenten — Multi-Engine AI-Framework-Verwaltung
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel ist ein visuelles Verwaltungspanel für das KI-Agenten-Framework [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Mit einem **integrierten intelligenten KI-Assistenten**, der bei der Ein-Klick-Installation von OpenClaw hilft, Konfigurationen automatisch diagnostiziert, Probleme behebt und Fehler korrigiert. 8 Werkzeuge + 4 Modi + interaktives Q&A — einfache Verwaltung für Anfänger und Experten.
ClawPanel ist ein visuelles Verwaltungspanel, das mehrere AI-Agent-Frameworks unterstützt, derzeit mit Dual-Engine-Unterstützung für [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) und [Hermes Agent](https://github.com/org-2048/hermes-agent). Mit einem **integrierten intelligenten KI-Assistenten**, der bei der Installation hilft, Konfigurationen automatisch diagnostiziert, Probleme behebt und Fehler korrigiert. 8 Werkzeuge + 4 Modi + interaktives Q&A — einfache Verwaltung für Anfänger und Experten.
> 🌐 **Website**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Download**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ Eine Community leidenschaftlicher KI-Agenten-Entwickler und -Enthusiasten — tr
## Funktionen
- **🤖 KI-Assistent (Neu)** — Integrierter KI-Assistent, 4 Modi + 8 Werkzeuge + interaktives Q&A
- **🧩 Multi-Engine-Architektur** — Unterstützt OpenClaw und Hermes Agent Dual-Engine, freies Umschalten, unabhängige Verwaltung
- **🤖 Hermes Agent Chat** — Integrierte Hermes Agent Chat-Oberfläche, Tool-Aufruf-Visualisierung, Dateizugriff, SSE-Streaming
- **🖼️ Bilderkennung** — Screenshots einfügen oder Bilder ziehen, KI analysiert automatisch
- **Dashboard** — Systemübersicht, Echtzeit-Service-Monitoring
- **Serviceverwaltung** — OpenClaw starten/stoppen, Versionserkennung und Ein-Klick-Upgrade
- **Serviceverwaltung** — OpenClaw / Hermes Gateway starten/stoppen, Versionserkennung und Upgrade
- **Modellkonfiguration** — Multi-Provider-Verwaltung, Batch-Konnektivitätstests, Drag-Sortierung
- **Gateway-Konfiguration** — Port, Zugriffsbereich, Auth-Token, Tailscale
- **Nachrichtenkanäle** — Einheitliche Verwaltung von Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
OpenClaw Management Panel with Built-in AI Assistant — One-click Install, Configure, Diagnose & Fix
OpenClaw & Hermes Agent Management Panel with Built-in AI Assistant — Multi-Engine AI Framework Management
</p>
<p align="center">
@@ -31,7 +31,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Feature Showcase">
</p>
ClawPanel is a visual management panel for the [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) AI Agent framework. It features a **built-in intelligent AI assistant** that helps you install OpenClaw with one click, auto-diagnose configurations, troubleshoot issues, and fix errors. 8 tools + 4 modes + interactive Q&A — easy to manage for beginners and experts alike.
ClawPanel is a visual management panel supporting multiple AI Agent frameworks, currently with [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) and [Hermes Agent](https://github.com/org-2048/hermes-agent) dual-engine support. It features a **built-in intelligent AI assistant** that helps you install, auto-diagnose configurations, troubleshoot issues, and fix errors. 8 tools + 4 modes + interactive Q&A — easy to manage for beginners and experts alike.
> 🌐 **Website**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Download**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -76,9 +76,11 @@ A community of passionate AI Agent developers and enthusiasts — join us!
## Features
- **🤖 AI Assistant (New)** — Built-in AI assistant, 4 modes + 8 tools + interactive Q&A. See [AI Assistant Highlights](#-ai-assistant-highlights)
- **🧩 Multi-Engine Architecture** — Supports both OpenClaw and Hermes Agent dual engines, freely switchable, independently managed
- **🤖 Hermes Agent Chat** — Built-in Hermes Agent chat interface with tool call visualization, file system access toggle, SSE streaming output
- **🖼️ Image Recognition** — Paste screenshots or drag images, AI auto-analyzes, multimodal conversations
- **Dashboard** — System overview, real-time service monitoring, quick actions
- **Service Management** — OpenClaw start/stop, version detection & one-click upgrade, Gateway install/uninstall, config backup & restore
- **Service Management** — OpenClaw / Hermes Gateway start/stop, version detection & one-click upgrade, config backup & restore
- **Model Configuration** — Multi-provider management, model CRUD, batch connectivity tests, latency detection, drag-to-reorder, auto-save + undo
- **Gateway Configuration** — Port, access scope (localhost/LAN), auth Token, Tailscale networking
- **Messaging Channels** — Unified Telegram, Discord, Feishu, DingTalk, QQ management, multi-Agent binding per platform

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
Panel de gestión OpenClaw con Asistente IA integrado — Instalación, Configuración, Diagnóstico y Reparación con un clic
Panel de gestión OpenClaw & Hermes Agent con Asistente IA integrado — Gestión multi-motor de frameworks IA
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel es un panel de gestión visual para el framework de AI Agent [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Cuenta con un **asistente IA inteligente integrado** que te ayuda a instalar OpenClaw con un clic, diagnosticar configuraciones automáticamente, solucionar problemas y corregir errores. 8 herramientas + 4 modos + Q&A interactivo — fácil de gestionar para principiantes y expertos.
ClawPanel es un panel de gestión visual que soporta múltiples frameworks de AI Agent, actualmente con soporte dual para [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) y [Hermes Agent](https://github.com/org-2048/hermes-agent). Cuenta con un **asistente IA inteligente integrado** que te ayuda a instalar, diagnosticar configuraciones automáticamente, solucionar problemas y corregir errores. 8 herramientas + 4 modos + Q&A interactivo — fácil de gestionar para principiantes y expertos.
> 🌐 **Sitio web**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Descargar**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ Una comunidad de desarrolladores y entusiastas apasionados por los AI Agents —
## Características
- **🤖 Asistente IA (Nuevo)** — Asistente IA integrado, 4 modos + 8 herramientas + Q&A interactivo
- **🧩 Arquitectura multi-motor** — Soporta OpenClaw y Hermes Agent dual, conmutación libre, gestión independiente
- **🤖 Chat Hermes Agent** — Interfaz de chat Hermes Agent integrada, visualización de llamadas a herramientas, acceso a archivos, streaming SSE
- **🖼️ Reconocimiento de imágenes** — Pega capturas o arrastra imágenes, IA analiza automáticamente
- **Panel** — Vista general del sistema, monitoreo de servicios en tiempo real
- **Gestión de servicios** — Inicio/parada de OpenClaw, detección de versión y actualización con un clic
- **Gestión de servicios** — Inicio/parada de OpenClaw / Hermes Gateway, detección de versión y actualización
- **Configuración de modelos** — Gestión multi-proveedor, pruebas de conectividad por lotes, ordenar arrastrando
- **Configuración de Gateway** — Puerto, alcance de acceso, Token de autenticación, Tailscale
- **Canales de mensajería** — Gestión unificada de Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
Panneau de gestion OpenClaw avec Assistant IA intégré — Installation, Configuration, Diagnostic et Réparation en un clic
Panneau de gestion OpenClaw & Hermes Agent avec Assistant IA intégré — Gestion multi-moteur de frameworks IA
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel est un panneau de gestion visuel pour le framework d'agents IA [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Il intègre un **assistant IA intelligent** qui vous aide à installer OpenClaw en un clic, diagnostiquer automatiquement les configurations, résoudre les problèmes et corriger les erreurs. 8 outils + 4 modes + Q&A interactif — facile à gérer pour débutants et experts.
ClawPanel est un panneau de gestion visuel supportant plusieurs frameworks d'agents IA, actuellement avec un double support pour [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) et [Hermes Agent](https://github.com/org-2048/hermes-agent). Il intègre un **assistant IA intelligent** qui vous aide à installer, diagnostiquer automatiquement les configurations, résoudre les problèmes et corriger les erreurs. 8 outils + 4 modes + Q&A interactif — facile à gérer pour débutants et experts.
> 🌐 **Site web** : [claw.qt.cool](https://claw.qt.cool/) | 📦 **Télécharger** : [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ Une communauté de développeurs et d'enthousiastes passionnés par les agents I
## Fonctionnalités
- **🤖 Assistant IA (Nouveau)** — Assistant IA intégré, 4 modes + 8 outils + Q&A interactif
- **🧩 Architecture multi-moteur** — Support OpenClaw et Hermes Agent en double moteur, commutation libre, gestion indépendante
- **🤖 Chat Hermes Agent** — Interface de chat Hermes Agent intégrée, visualisation des appels d'outils, accès aux fichiers, streaming SSE
- **🖼️ Reconnaissance d'images** — Collez des captures d'écran ou glissez des images, l'IA analyse automatiquement
- **Tableau de bord** — Vue d'ensemble du système, surveillance des services en temps réel
- **Gestion des services** — Démarrage/arrêt d'OpenClaw, détection de version et mise à jour en un clic
- **Gestion des services** — Démarrage/arrêt d'OpenClaw / Hermes Gateway, détection de version et mise à jour
- **Configuration des modèles** — Gestion multi-fournisseurs, tests de connectivité par lots, tri par glisser-déposer
- **Configuration du Gateway** — Port, portée d'accès, Token d'authentification, Tailscale
- **Canaux de messagerie** — Gestion unifiée de Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
AI アシスタント内蔵の OpenClaw 管理パネル — ワンクリックでインストール、設定、診断、修復
AI アシスタント内蔵の OpenClaw & Hermes Agent 管理パネル — マルチエンジン AI フレームワーク管理
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel 機能ショーケース">
</p>
ClawPanel は [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) AI Agent フレームワークのビジュアル管理パネルです。**インテリジェント AI アシスタントを内蔵**し、OpenClaw のワンクリックインストール、設定の自動診断、問題の特定と修復をサポートします。8 つのツール + 4 つのモード + インタラクティブ Q&A で、初心者からエキスパートまで簡単に管理できます。
ClawPanel は複数の AI Agent フレームワークをサポートするビジュアル管理パネルで、現在 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) と [Hermes Agent](https://github.com/org-2048/hermes-agent) のデュアルエンジンをサポートしています。**インテリジェント AI アシスタントを内蔵**し、ワンクリックインストール、設定の自動診断、問題の特定と修復をサポートします。8 つのツール + 4 つのモード + インタラクティブ Q&A で、初心者からエキスパートまで簡単に管理できます。
> 🌐 **ウェブサイト**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **ダウンロード**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ AI Agent に情熱を持つ開発者とユーザーのコミュニティ — ぜ
## 機能
- **🤖 AI アシスタント(新機能)** — 内蔵 AI アシスタント、4 モード + 8 ツール + インタラクティブ Q&A
- **🧩 マルチエンジンアーキテクチャ** — OpenClaw と Hermes Agent のデュアルエンジンをサポート、自由に切り替え、それぞれ独立管理
- **🤖 Hermes Agent チャット** — 内蔵 Hermes Agent チャットインターフェース、ツール呼び出しの可視化、ファイルアクセス切り替え、SSE ストリーミング
- **🖼️ 画像認識** — スクリーンショットの貼り付けや画像のドラッグで AI が自動分析
- **ダッシュボード** — システム概要、リアルタイムサービス監視、クイックアクション
- **サービス管理** — OpenClaw の起動/停止、バージョン検出とワンクリックアップグレード
- **サービス管理** — OpenClaw / Hermes Gateway の起動/停止、バージョン検出とワンクリックアップグレード
- **モデル設定** — マルチプロバイダー管理、バッチ接続テスト、ドラッグ並び替え、自動保存
- **ゲートウェイ設定** — ポート、アクセス範囲、認証 Token、Tailscale
- **メッセージチャンネル** — Telegram、Discord、飛書、DingTalk、QQ の統合管理

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
AI 어시스턴트 내장 OpenClaw 관리 패널 — 원클릭 설치, 설정, 진단, 복구
AI 어시스턴트 내장 OpenClaw & Hermes Agent 관리 패널 — 멀티엔진 AI 프레임워크 관리
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel 기능 쇼케이스">
</p>
ClawPanel은 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) AI Agent 프레임워크의 시각적 관리 패널입니다. **지능형 AI 어시스턴트를 내장**하여 OpenClaw 원클릭 설치, 자동 설정 진단, 문제 해결 및 오류 수정을 지원합니다. 8개 도구 + 4가지 모드 + 대화형 Q&A로 초보자부터 전문가까지 쉽게 관리할 수 있습니다.
ClawPanel은 여러 AI Agent 프레임워크를 지원하는 시각적 관리 패널으로, 현재 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) 및 [Hermes Agent](https://github.com/org-2048/hermes-agent) 듀얼 엔진을 지원합니다. **지능형 AI 어시스턴트를 내장**하여 원클릭 설치, 자동 설정 진단, 문제 해결 및 오류 수정을 지원합니다. 8개 도구 + 4가지 모드 + 대화형 Q&A로 초보자부터 전문가까지 쉽게 관리할 수 있습니다.
> 🌐 **웹사이트**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **다운로드**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ AI Agent에 열정적인 개발자와 사용자 커뮤니티 — 함께하세요
## 기능
- **🤖 AI 어시스턴트 (신규)** — 내장 AI 어시스턴트, 4가지 모드 + 8개 도구 + 대화형 Q&A
- **🧩 멀티엔진 아키텍처** — OpenClaw 및 Hermes Agent 듀얼 엔진 지원, 자유롭게 전환, 각각 독립 관리
- **🤖 Hermes Agent 채팅** — 내장 Hermes Agent 채팅 인터페이스, 도구 호출 시각화, 파일 시스템 액세스 토글, SSE 스트리밍
- **🖼️ 이미지 인식** — 스크린샷 붙여넣기 또는 이미지 드래그로 AI 자동 분석
- **대시보드** — 시스템 개요, 실시간 서비스 모니터링, 빠른 작업
- **서비스 관리** — OpenClaw 시작/중지, 버전 감지 및 원클릭 업그레이드
- **서비스 관리** — OpenClaw / Hermes Gateway 시작/중지, 버전 감지 및 원클릭 업그레이드
- **모델 설정** — 멀티 프로바이더 관리, 배치 연결 테스트, 드래그 정렬, 자동 저장
- **게이트웨이 설정** — 포트, 접근 범위, 인증 Token, Tailscale
- **메시징 채널** — Telegram, Discord, 飞书, DingTalk, QQ 통합 관리

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
内置 AI 助手的 OpenClaw 管理面板 — 一键安装、配置、诊断、修复
内置 AI 助手的 OpenClaw & Hermes Agent 管理面板 — 多引擎 AI 框架管理
</p>
<p align="center">
@@ -37,7 +37,7 @@
</a>
</p>
ClawPanel 是 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) AI Agent 框架的可视化管理面板。**内置智能 AI 助手**,帮你一键安装 OpenClaw、自动诊断配置、排查问题、修复错误。8 大工具 + 4 种模式 + 交互式问答,从新手到老手都能轻松管理。
ClawPanel 是支持多 AI Agent 框架的可视化管理面板,目前支持 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) 和 [Hermes Agent](https://github.com/org-2048/hermes-agent) 双引擎。**内置智能 AI 助手**帮你一键安装、自动诊断配置、排查问题、修复错误。8 大工具 + 4 种模式 + 交互式问答,从新手到老手都能轻松管理。
> 🌐 **官网**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **下载**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -369,9 +369,11 @@ docker rmi $(docker images --filter "reference=*clawpanel*" -q) 2>/dev/null
</p>
- **🤖 AI 助手(全新·重磅)** — 内置独立 AI 助手4 种操作模式 + 8 大工具 + 交互式问答,详见下方 [AI 助手亮点](#-ai-助手亮点)
- **🧩 多引擎架构** — 同时支持 OpenClaw 和 Hermes Agent 双引擎,自由切换,各自独立管理
- **🤖 Hermes Agent 对话** — 内置 Hermes Agent 聊天界面支持工具调用可视化、文件系统访问开关、SSE 流式输出
- **🖼️ 图片识别** — 粘贴截图或拖拽图片AI 自动识别分析,支持多模态图文混排对话
- **仪表盘** — 系统概览,服务状态实时监控,快捷操作
- **服务管理** — OpenClaw 启停控制、版本检测与一键升级、Gateway 安装/卸载、配置备份与还原
- **服务管理** — OpenClaw / Hermes Gateway 启停控制、版本检测与一键升级、配置备份与还原
- **模型配置** — 多服务商管理、模型增删改查、批量连通性测试、延迟检测、拖拽排序、自动保存+撤销
- **网关配置** — 端口、访问权限(本机/局域网)、认证 Token、Tailscale 组网
- **消息渠道** — 统一管理 Telegram、Discord、飞书、钉钉、QQ 等消息接入,支持同平台多 Agent 绑定

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
Painel de gestão OpenClaw com Assistente IA integrado — Instalação, Configuração, Diagnóstico e Correção com um clique
Painel de gestão OpenClaw & Hermes Agent com Assistente IA integrado — Gestão multi-motor de frameworks IA
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel é um painel de gestão visual para o framework de AI Agent [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Possui um **assistente IA inteligente integrado** que ajuda a instalar o OpenClaw com um clique, diagnosticar configurações automaticamente, resolver problemas e corrigir erros. 8 ferramentas + 4 modos + Q&A interativo — fácil de gerenciar para iniciantes e especialistas.
ClawPanel é um painel de gestão visual que suporta múltiplos frameworks de AI Agent, atualmente com suporte dual para [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) e [Hermes Agent](https://github.com/org-2048/hermes-agent). Possui um **assistente IA inteligente integrado** que ajuda a instalar, diagnosticar configurações automaticamente, resolver problemas e corrigir erros. 8 ferramentas + 4 modos + Q&A interativo — fácil de gerenciar para iniciantes e especialistas.
> 🌐 **Website**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Download**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ Uma comunidade de desenvolvedores e entusiastas apaixonados por AI Agents — ju
## Funcionalidades
- **🤖 Assistente IA (Novo)** — Assistente IA integrado, 4 modos + 8 ferramentas + Q&A interativo
- **🧩 Arquitetura multi-motor** — Suporta OpenClaw e Hermes Agent dual, comutação livre, gestão independente
- **🤖 Chat Hermes Agent** — Interface de chat Hermes Agent integrada, visualização de chamadas de ferramentas, acesso a arquivos, streaming SSE
- **🖼️ Reconhecimento de imagens** — Cole capturas ou arraste imagens, IA analisa automaticamente
- **Painel** — Visão geral do sistema, monitoramento de serviços em tempo real
- **Gestão de serviços** — Iniciar/parar OpenClaw, detecção de versão e atualização com um clique
- **Gestão de serviços** — Iniciar/parar OpenClaw / Hermes Gateway, detecção de versão e atualização
- **Configuração de modelos** — Gestão multi-provedor, testes de conectividade em lote, ordenação por arrasto
- **Configuração de Gateway** — Porta, escopo de acesso, Token de autenticação, Tailscale
- **Canais de mensagens** — Gestão unificada de Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
Панель управления OpenClaw со встроенным ИИ-ассистентом — Установка, Настройка, Диагностика и Исправление в один клик
Панель управления OpenClaw & Hermes Agent со встроенным ИИ-ассистентом — Управление мульти-движковыми AI фреймворками
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel — это визуальная панель управления для фреймворка AI-агентов [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Со **встроенным интеллектуальным ИИ-ассистентом**, который помогает установить OpenClaw одним кликом, автоматически диагностировать конфигурации, устранять неполадки и исправлять ошибки. 8 инструментов + 4 режима + интерактивный Q&A — удобное управление для новичков и экспертов.
ClawPanel — это визуальная панель управления, поддерживающая несколько фреймворков AI-агентов, сейчас с двойной поддержкой [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) и [Hermes Agent](https://github.com/org-2048/hermes-agent). Со **встроенным интеллектуальным ИИ-ассистентом**, который помогает установить, автоматически диагностировать конфигурации, устранять неполадки и исправлять ошибки. 8 инструментов + 4 режима + интерактивный Q&A — удобное управление для новичков и экспертов.
> 🌐 **Сайт**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Скачать**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ ClawPanel — это визуальная панель управления дл
## Возможности
- **🤖 ИИ-ассистент (Новый)** — Встроенный ИИ-ассистент, 4 режима + 8 инструментов + интерактивный Q&A
- **🧩 Мульти-движковая архитектура** — Поддержка OpenClaw и Hermes Agent, свободное переключение, независимое управление
- **🤖 Чат Hermes Agent** — Встроенный интерфейс чата Hermes Agent, визуализация вызовов инструментов, доступ к файлам, SSE стриминг
- **🖼️ Распознавание изображений** — Вставьте скриншот или перетащите изображение, ИИ автоматически анализирует
- **Панель мониторинга** — Обзор системы, мониторинг сервисов в реальном времени
- **Управление сервисами** — Запуск/остановка OpenClaw, обнаружение версии и обновление одним кликом
- **Управление сервисами** — Запуск/остановка OpenClaw / Hermes Gateway, обнаружение версии и обновление
- **Настройка моделей** — Управление несколькими провайдерами, пакетное тестирование подключения, сортировка перетаскиванием
- **Настройка Gateway** — Порт, область доступа, токен аутентификации, Tailscale
- **Каналы сообщений** — Единое управление Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
Bảng quản lý OpenClaw với Trợ lý AI tích hợp — Cài đặt, Cấu hình, Chẩn đoán & Sửa lỗi một cú nhấp
Bảng quản lý OpenClaw & Hermes Agent với Trợ lý AI tích hợp — Quản lý đa động cơ AI Framework
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel Showcase">
</p>
ClawPanel là bảng quản lý trực quan cho framework AI Agent [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation). Tích hợp **trợ lý AI thông minh**, giúp bạn cài đặt OpenClaw một cú nhấp, tự động chẩn đoán cấu hình, xử lý sự cố và sửa lỗi. 8 công cụ + 4 chế độ + hỏi đáp tương tác — dễ dàng quản lý cho cả người mới và chuyên gia.
ClawPanel là bảng quản lý trực quan hỗ trợ nhiều AI Agent framework, hiện tại hỗ trợ [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) và [Hermes Agent](https://github.com/org-2048/hermes-agent) động cơ kép. Tích hợp **trợ lý AI thông minh**, giúp bạn cài đặt, tự động chẩn đoán cấu hình, xử lý sự cố và sửa lỗi. 8 công cụ + 4 chế độ + hỏi đáp tương tác — dễ dàng quản lý cho cả người mới và chuyên gia.
> 🌐 **Website**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **Tải xuống**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ Cộng đồng các nhà phát triển và người dùng đam mê AI Agent —
## Tính năng
- **🤖 Trợ lý AI (Mới)** — Trợ lý AI tích hợp, 4 chế độ + 8 công cụ + hỏi đáp tương tác
- **🧩 Kiến trúc đa động cơ** — Hỗ trợ cả OpenClaw và Hermes Agent, chuyển đổi tự do, quản lý độc lập
- **🤖 Hermes Agent Chat** — Giao diện chat Hermes Agent tích hợp, hiển thị công cụ, chuyển đổi truy cập tệp, SSE streaming
- **🖼️ Nhận dạng hình ảnh** — Dán ảnh chụp màn hình hoặc kéo thả hình ảnh, AI tự động phân tích
- **Bảng điều khiển** — Tổng quan hệ thống, giám sát dịch vụ thời gian thực
- **Quản lý dịch vụ** — Khởi động/dừng OpenClaw, phát hiện phiên bản & nâng cấp một cú nhấp
- **Quản lý dịch vụ** — Khởi động/dừng OpenClaw / Hermes Gateway, phát hiện phiên bản & nâng cấp
- **Cấu hình mô hình** — Quản lý nhiều nhà cung cấp, kiểm tra kết nối hàng loạt, kéo sắp xếp
- **Cấu hình Gateway** — Cổng, phạm vi truy cập, Token xác thực, Tailscale
- **Kênh nhắn tin** — Quản lý thống nhất Telegram, Discord, Feishu, DingTalk, QQ

View File

@@ -3,7 +3,7 @@
</p>
<p align="center">
內建 AI 助手的 OpenClaw 管理面板 — 一鍵安裝、設定、診斷、修復
內建 AI 助手的 OpenClaw & Hermes Agent 管理面板 — 多引擎 AI 框架管理
</p>
<p align="center">
@@ -28,7 +28,7 @@
<img src="docs/feature-showcase.gif" width="800" alt="ClawPanel 功能展示">
</p>
ClawPanel 是 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) AI Agent 框架的視覺化管理面板。**內建智慧 AI 助手**,幫你一鍵安裝 OpenClaw、自動診斷設定、排查問題、修復錯誤。8 大工具 + 4 種模式 + 互動式問答,從新手到老手都能輕鬆管理。
ClawPanel 是支援多 AI Agent 框架的視覺化管理面板,目前支援 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslation) 和 [Hermes Agent](https://github.com/org-2048/hermes-agent) 雙引擎。**內建智慧 AI 助手**幫你一鍵安裝、自動診斷設定、排查問題、修復錯誤。8 大工具 + 4 種模式 + 互動式問答,從新手到老手都能輕鬆管理。
> 🌐 **官網**: [claw.qt.cool](https://claw.qt.cool/) | 📦 **下載**: [GitHub Releases](https://github.com/qingchencloud/clawpanel/releases/latest)
@@ -69,9 +69,11 @@ ClawPanel 是 [OpenClaw](https://github.com/1186258278/OpenClawChineseTranslatio
## 功能特性
- **🤖 AI 助手(全新)** — 內建 AI 助手4 種模式 + 8 大工具 + 互動式問答
- **🧩 多引擎架構** — 同時支援 OpenClaw 和 Hermes Agent 雙引擎,自由切換,各自獨立管理
- **🤖 Hermes Agent 對話** — 內建 Hermes Agent 聊天介面支援工具呼叫視覺化、檔案系統存取開關、SSE 串流輸出
- **🖼️ 圖片辨識** — 貼上截圖或拖曳圖片AI 自動辨識分析
- **儀表板** — 系統概覽,即時服務狀態監控,快捷操作
- **服務管理** — OpenClaw 啟停控制、版本偵測與一鍵升級
- **服務管理** — OpenClaw / Hermes Gateway 啟停控制、版本偵測與一鍵升級
- **模型設定** — 多服務商管理、批次連通性測試、拖曳排序、自動儲存
- **閘道設定** — 埠口、存取權限、認證 Token、Tailscale
- **訊息頻道** — 統一管理 Telegram、Discord、飛書、釘釘、QQ

View File

@@ -1,559 +0,0 @@
# Skills 页面重构规划
> 目标:**完全去掉 CLI 依赖**,用 Rust `reqwest` 内置 SkillHub API 调用 + zip 解压,用户无需安装任何额外工具即可搜索/安装/管理 Skills。
---
## 一、现状分析
### 现有架构(问题)
```
┌─────────────┐ ┌───────────────────┐ ┌──────────────┐
│ skills.js │ ───→ │ skills.rs / dev- │ ───→ │ 外部 CLI 进程 │
│ (前端 UI) │ │ api.js (后端) │ │ │
└─────────────┘ └───────────────────┘ └──────┬───────┘
┌────────────┼────────────┐
▼ ▼ ▼
openclaw CLI skillhub CLI clawhub CLI
(skills list) (search/install) (npx)
```
**痛点清单:**
| # | 问题 | 影响 |
|---|------|------|
| 1 | **必须安装 OpenClaw CLI** 才能查看已安装 Skills 列表 | 新用户看到空白页或报错 |
| 2 | **必须安装 SkillHub CLI** 才能从国内源搜索/安装 | 额外安装步骤,需要 npm |
| 3 | **ClawHub 用 `npx -y clawhub`** 每次冷启动 ~10s | 体验差,且海外源限流 |
| 4 | CLI 输出是人类可读文本,需要**正则解析** | 脆弱CLI 版本更新就可能坏 |
| 5 | 前端有两个安装源下拉 + CLI 检测状态 UI | 复杂且令人困惑 |
| 6 | `skills_list` 依赖 CLI超时/失败才 fallback 本地扫描 | 不可靠,延迟高 |
### 可保留的部分
| 模块 | 保留? | 说明 |
|------|--------|------|
| `scan_local_skills()` / 本地扫描逻辑 | ✅ 保留 | 扫描 `~/.openclaw/skills/` 等目录,不依赖 CLI |
| `scan_single_skill()` | ✅ 保留 | 解析 SKILL.md frontmatter + package.json |
| `skills_uninstall()` | ✅ 保留 | 简单的 `rm -rf`,无 CLI 依赖 |
| `skills_validate()` | ✅ 保留 | 纯本地文件检查 |
| `skills_install_dep()` | ✅ 保留 | brew/npm/go/uv 本地包管理器 |
| 前端已安装 Tab 的分组渲染 | ✅ 保留 | eligible/missing/disabled/blocked 分组 |
| 前端过滤搜索 | ✅ 保留 | 实时 filter |
---
## 二、SkillHub API 协议
从 CLI 源码逆向得到的接口(腾讯云 COS + API 后端):
| 功能 | URL | 返回 |
|------|-----|------|
| **搜索** | `GET https://lightmake.site/api/v1/search?q={query}&limit={limit}` | `{ results: [{ slug, displayName, summary, version }] }` |
| **主下载** | `GET https://lightmake.site/api/v1/download?slug={slug}` | zip 二进制 |
| **COS 镜像下载** | `GET https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/skills/{slug}.zip` | zip 二进制(国内加速) |
| **全量索引** | `GET https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/skills.json` | JSON 数组 |
### 安装流程(内置化)
```
搜索 → 选择 Skill → 下载 zip → 解压到 ~/.openclaw/skills/{slug}/ → 完成
```
不需要任何 CLI 工具。
---
## 三、新架构设计SDK 模式 + 双平台)
关键设计:**抽出独立 SDK 层**Tauri 桌面端和 Web/Docker 端各实现一份,上层 API 接口一致,后续调整只改 SDK 即可。
```
┌──────────────────┐
│ skills.js (前端) │ 统一 UI不关心后端是 Rust 还是 Node
└────────┬─────────┘
│ invoke / fetch
┌──────────────────────────────────────────────────────────┐
│ Tauri 命令层 / dev-api 路由层 │
│ skills.rs (Tauri) dev-api.js (Web/Docker) │
│ ↓ 调用 ↓ 调用 │
│ skillhub.rs (Rust SDK) skillhub-sdk.js (Node SDK) │
└──────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌──────────────────────────────────────────────────────────┐
│ SkillHub API + COS │
│ 搜索: lightmake.site/api/v1/search │
│ 索引: cos.ap-guangzhou.myqcloud.com/skills.json │
│ 下载: cos.ap-guangzhou.myqcloud.com/skills/{slug}.zip │
│ 回退: lightmake.site/api/v1/download │
└──────────────────────────────────────────────────────────┘
```
### 为什么用 SDK 模式?
| 优势 | 说明 |
|------|------|
| **解耦** | SDK 只管 HTTP + zip不涉及 Tauri/Express 框架 |
| **双平台** | Rust SDK 给 Tauri 桌面端用Node SDK 给 Web/Docker 端用 |
| **易调整** | API 域名/路径/认证变了,只改 SDK 一个文件 |
| **可测试** | SDK 函数可单独写单元测试 |
| **可复用** | 未来其他模块要调 SkillHub 也直接引 SDK |
---
## 四、Rust SDK`src-tauri/src/commands/skillhub.rs`
独立模块,不依赖 Tauri 框架,纯 `reqwest` + `zip` + `serde`
### 4.1 数据结构
```rust
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SkillHubItem {
pub slug: String,
#[serde(alias = "displayName")]
pub display_name: Option<String>,
pub summary: Option<String>,
pub version: Option<String>,
}
#[derive(Debug, Deserialize)]
struct SearchResponse {
results: Vec<SkillHubItem>,
}
```
### 4.2 SDK 公开接口
```rust
/// 搜索 SkillHub
pub async fn search(query: &str, limit: u32) -> Result<Vec<SkillHubItem>, String>
/// 拉取全量索引(带 10 分钟内存缓存)
pub async fn fetch_index() -> Result<Vec<SkillHubItem>, String>
/// 下载并安装 Skillzip → 解压到 target_dir
pub async fn install(slug: &str, skills_dir: &Path) -> Result<PathBuf, String>
/// 仅下载 zip 字节COS 优先,回退主站)
pub async fn download_zip(slug: &str) -> Result<Vec<u8>, String>
```
### 4.3 下载策略
```rust
const COS_BASE: &str = "https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com";
const API_BASE: &str = "https://lightmake.site/api/v1";
pub async fn download_zip(slug: &str) -> Result<Vec<u8>, String> {
// 1. 优先 COS 镜像(国内 CDN毫秒级
let cos_url = format!("{}/skills/{}.zip", COS_BASE, slug);
if let Ok(resp) = client().get(&cos_url).send().await {
if resp.status().is_success() {
return resp.bytes().await
.map(|b| b.to_vec())
.map_err(|e| format!("COS 下载失败: {e}"));
}
}
// 2. 回退主站 API
let api_url = format!("{}/download?slug={}", API_BASE, slug);
let resp = client().get(&api_url).send().await
.map_err(|e| format!("主站下载失败: {e}"))?;
if !resp.status().is_success() {
return Err(format!("下载失败: HTTP {}", resp.status()));
}
resp.bytes().await
.map(|b| b.to_vec())
.map_err(|e| format!("读取下载内容失败: {e}"))
}
```
### 4.4 全量索引缓存
```rust
use std::sync::Mutex;
use std::time::{Duration, Instant};
use once_cell::sync::Lazy;
static INDEX_CACHE: Lazy<Mutex<Option<(Instant, Vec<SkillHubItem>)>>> =
Lazy::new(|| Mutex::new(None));
pub async fn fetch_index() -> Result<Vec<SkillHubItem>, String> {
// 命中缓存10 分钟有效)
if let Ok(guard) = INDEX_CACHE.lock() {
if let Some((ts, ref items)) = *guard {
if ts.elapsed() < Duration::from_secs(600) {
return Ok(items.clone());
}
}
}
// 拉取远程索引
let url = format!("{}/skills.json", COS_BASE);
let items: Vec<SkillHubItem> = client().get(&url).send().await
.map_err(|e| format!("拉取索引失败: {e}"))?
.json().await
.map_err(|e| format!("解析索引失败: {e}"))?;
// 写入缓存
if let Ok(mut guard) = INDEX_CACHE.lock() {
*guard = Some((Instant::now(), items.clone()));
}
Ok(items)
}
```
### 4.5 zip 解压
```rust
pub fn extract_zip(zip_bytes: &[u8], target_dir: &Path) -> Result<(), String> {
use std::io::Cursor;
use zip::ZipArchive;
if target_dir.exists() {
std::fs::remove_dir_all(target_dir)
.map_err(|e| format!("清理旧目录失败: {e}"))?;
}
std::fs::create_dir_all(target_dir)
.map_err(|e| format!("创建目录失败: {e}"))?;
let reader = Cursor::new(zip_bytes);
let mut archive = ZipArchive::new(reader)
.map_err(|e| format!("打开 zip 失败: {e}"))?;
for i in 0..archive.len() {
let mut file = archive.by_index(i)
.map_err(|e| format!("读取 zip 条目失败: {e}"))?;
let name = file.name().to_string();
// 安全检查:防止路径穿越
if name.contains("..") { continue; }
let out_path = target_dir.join(&name);
if file.is_dir() {
std::fs::create_dir_all(&out_path).ok();
} else {
if let Some(parent) = out_path.parent() {
std::fs::create_dir_all(parent).ok();
}
let mut outfile = std::fs::File::create(&out_path)
.map_err(|e| format!("创建文件失败 {name}: {e}"))?;
std::io::copy(&mut file, &mut outfile)
.map_err(|e| format!("写入文件失败 {name}: {e}"))?;
}
}
Ok(())
}
```
---
## 五、Node.js SDK`scripts/lib/skillhub-sdk.js`
给 Web/Docker 端用API 接口与 Rust SDK **完全对齐**
### 5.1 模块结构
```javascript
// scripts/lib/skillhub-sdk.js
const COS_BASE = 'https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com'
const API_BASE = 'https://lightmake.site/api/v1'
let _indexCache = null // { ts: Date.now(), items: [] }
const INDEX_TTL = 10 * 60 * 1000 // 10 分钟
module.exports = { search, fetchIndex, install, downloadZip }
```
### 5.2 SDK 公开接口
```javascript
/**
* 搜索 SkillHub
* @param {string} query
* @param {number} [limit=20]
* @returns {Promise<Array<{slug, displayName, summary, version}>>}
*/
async function search(query, limit = 20) {
const url = `${API_BASE}/search?q=${encodeURIComponent(query)}&limit=${limit}`
const resp = await fetch(url)
if (!resp.ok) throw new Error(`搜索失败: HTTP ${resp.status}`)
const data = await resp.json()
return data.results || []
}
/**
* 拉取全量索引(带缓存)
* @returns {Promise<Array<{slug, displayName, summary, version}>>}
*/
async function fetchIndex() {
if (_indexCache && Date.now() - _indexCache.ts < INDEX_TTL) {
return _indexCache.items
}
const resp = await fetch(`${COS_BASE}/skills.json`)
if (!resp.ok) throw new Error(`拉取索引失败: HTTP ${resp.status}`)
const items = await resp.json()
_indexCache = { ts: Date.now(), items }
return items
}
/**
* 下载 zipCOS 优先,回退主站)
* @param {string} slug
* @returns {Promise<Buffer>}
*/
async function downloadZip(slug) {
// COS 优先
try {
const resp = await fetch(`${COS_BASE}/skills/${slug}.zip`)
if (resp.ok) return Buffer.from(await resp.arrayBuffer())
} catch {}
// 回退主站
const resp = await fetch(`${API_BASE}/download?slug=${encodeURIComponent(slug)}`)
if (!resp.ok) throw new Error(`下载失败: HTTP ${resp.status}`)
return Buffer.from(await resp.arrayBuffer())
}
/**
* 下载并安装 Skill
* @param {string} slug
* @param {string} skillsDir - ~/.openclaw/skills/
* @returns {Promise<string>} 安装路径
*/
async function install(slug, skillsDir) {
const zipBuf = await downloadZip(slug)
const targetDir = path.join(skillsDir, slug)
// 清理旧目录
if (fs.existsSync(targetDir)) fs.rmSync(targetDir, { recursive: true, force: true })
fs.mkdirSync(targetDir, { recursive: true })
// 解压(用 Node.js 内置或 adm-zip
const AdmZip = require('adm-zip')
const zip = new AdmZip(zipBuf)
zip.extractAllTo(targetDir, true)
return targetDir
}
```
### 5.3 dev-api.js 集成
```javascript
const skillhub = require('./lib/skillhub-sdk')
// 路由处理器中直接调用 SDK
handlers = {
skillhub_search({ query, limit }) { return skillhub.search(query, limit) },
skillhub_index() { return skillhub.fetchIndex() },
skillhub_install({ slug }) { return skillhub.install(slug, SKILLS_DIR) },
// skills_list → 纯本地扫描(已有 scanLocalSkillsFallback
skills_list() { return scanLocalSkillsFallback() },
}
```
---
## 六、命令层改造
### 6.1 skills.rs — Tauri 命令层(薄包装)
改造后 `skills.rs` 只是 SDK 的 Tauri 命令薄包装:
```rust
mod skillhub; // SDK 模块
#[tauri::command]
pub async fn skillhub_search(query: String, limit: Option<u32>) -> Result<Value, String> {
let items = skillhub::search(&query, limit.unwrap_or(20)).await?;
Ok(serde_json::to_value(items).unwrap())
}
#[tauri::command]
pub async fn skillhub_index() -> Result<Value, String> {
let items = skillhub::fetch_index().await?;
Ok(serde_json::to_value(items).unwrap())
}
#[tauri::command]
pub async fn skillhub_install(slug: String) -> Result<Value, String> {
let skills_dir = super::openclaw_dir().join("skills");
let path = skillhub::install(&slug, &skills_dir).await?;
Ok(serde_json::json!({ "success": true, "slug": slug, "path": path.to_string_lossy() }))
}
// skills_list → 纯本地扫描(复用已有 scan_local_skills
#[tauri::command]
pub async fn skills_list() -> Result<Value, String> {
scan_local_skills(None) // 不再调 CLI
}
```
### 6.2 可删除的命令
| 命令 | 原因 |
|------|------|
| `skills_skillhub_check` | 不再需要检测 CLI |
| `skills_skillhub_setup` | 不再需要安装 CLI |
| `skills_skillhub_search` | 替换为 `skillhub_search`SDK |
| `skills_skillhub_install` | 替换为 `skillhub_install`SDK |
| `skills_clawhub_search` | 合并到 SkillHub |
| `skills_clawhub_install` | 合并到 SkillHub |
### 6.3 保留的命令
| 命令 | 说明 |
|------|------|
| `skills_list` | 改为纯本地扫描 |
| `skills_info` | 改为纯本地文件解析 |
| `skills_uninstall` | 不变(删目录) |
| `skills_validate` | 不变(本地文件检查) |
| `skills_install_dep` | 不变brew/npm/go/uv |
---
## 七、前端改造(`skills.js`
### 7.1 UI 简化
**删除:**
- 安装源下拉(`<select id="install-source-select">`)— 统一为 SkillHub
- SkillHub CLI 状态检测 / 安装按钮
- ClawHub 源相关 UI
- `checkSkillHubStatus()` / `switchInstallSource()` 等函数
**保留:**
- 两个 Tab"已安装" / "技能商店"
- 已安装 Tab 的分组渲染eligible/missing/disabled/blocked
- 实时过滤搜索
- Skill 卡片渲染
**新增:**
- 技能商店 Tab 改为**浏览模式**:默认加载全量索引(热门/推荐),支持搜索过滤
- 安装进度条/状态(下载中 → 解压中 → 完成)
- 已安装 Skill 的**更新检测**(比对本地版本 vs 索引版本)
### 7.2 新的"技能商店"Tab 布局
```
┌──────────────────────────────────────────────────┐
│ 🔍 搜索技能... [浏览 SkillHub] │
├──────────────────────────────────────────────────┤
│ │
│ 📦 weather ☀️ 天气查询 [安装] │
│ 📦 github 🐙 GitHub 操作 [安装] │
│ 📦 tavily 🔍 网页搜索 [安装] │
│ 📦 feishu-doc 📄 飞书文档 [安装] │
│ ... │
│ │
└──────────────────────────────────────────────────┘
```
- 页面进入时自动加载全量索引COS CDN国内毫秒级
- 搜索框实时过滤(客户端)+ 回车触发服务端搜索(更精准)
- 已安装的 Skill 显示"已安装"灰色标记,不显示安装按钮
### 7.3 API 调用映射
| 旧 API | 新 API | 说明 |
|--------|--------|------|
| `api.skillsList()` | `api.skillsList()` | 后端改为纯本地扫描 |
| `api.skillsSkillHubCheck()` | ❌ 删除 | 不再需要 |
| `api.skillsSkillHubSetup()` | ❌ 删除 | 不再需要 |
| `api.skillsSkillHubSearch(q)` | `api.skillhubSearch(q)` | 内置 HTTP 调用 |
| `api.skillsSkillHubInstall(slug)` | `api.skillhubInstall(slug)` | 内置下载+解压 |
| `api.skillsClawHubSearch(q)` | ❌ 删除 | 统一到 SkillHub |
| `api.skillsClawHubInstall(slug)` | ❌ 删除 | 统一到 SkillHub |
| — | `api.skillhubIndex()` | 新增:全量索引 |
---
## 八、i18n 改造
### 删除的 key
```
skillhubNeedCLI, skillhubNeedCLIHint, skillhubSetup,
skillhubInstalling, skillhubInstalled, skillhubInstallFailed,
sourceSkillHub, sourceClawHub, installCLI,
rateLimitClawHub, sourceLocalScanTimeout, sourceLocalScanParseFailed,
sourceLocalScanExecFailed, sourceLocalScan, sourceLocalScanNoCli, sourceCLI,
loadFailedHint (不再需要提示安装 OpenClaw)
```
### 新增/修改的 key
```
storeTitle: '技能商店' / 'Skill Store'
storeLoading: '正在加载技能索引...' / 'Loading skill index...'
storeLoadFailed: '加载技能索引失败' / 'Failed to load skill index'
downloading: '下载中...' / 'Downloading...'
extracting: '解压中...' / 'Extracting...'
updateAvailable: '可更新' / 'Update available'
update: '更新' / 'Update'
```
---
## 九、实施步骤
### Phase 1Rust SDK 模块(`skillhub.rs`
1. 新建 `src-tauri/src/commands/skillhub.rs`
2. 实现 `SkillHubItem` 数据结构
3. 实现 `search()``fetch_index()``download_zip()``install()``extract_zip()`
4. 实现全量索引内存缓存
5.`commands/mod.rs` 中声明 `pub mod skillhub`
6. `cargo check` 验证 SDK 模块编译通过
### Phase 2Node.js SDK 模块(`skillhub-sdk.js`
1. 新建 `scripts/lib/skillhub-sdk.js`
2. 实现 `search()``fetchIndex()``downloadZip()``install()`
3. 确认 `adm-zip` 已在 devDependencies或改用 Node 内置 `zlib` + `tar`
4. `node --check` 验证
### Phase 3命令层改造skills.rs + dev-api.js
1. `skills.rs`:新增 `skillhub_search``skillhub_index``skillhub_install` Tauri 命令(薄包装 SDK
2. `skills.rs`:改造 `skills_list` → 纯本地扫描,改造 `skills_info` → 纯本地解析
3. `skills.rs`:删除 6 个旧 CLI 命令
4. `lib.rs`:更新命令注册
5. `dev-api.js`:路由层接入 `skillhub-sdk.js`,删除旧 CLI 调用
6. `cargo check` + `node --check` 验证
### Phase 4前端 UI 重写skills.js + tauri-api.js
1. 更新 `tauri-api.js` API 映射(新增 3 个,删除 6 个)
2. 重写"技能商店"Tab — 默认加载全量索引,搜索过滤,一键安装
3. 简化已安装 Tab — 删除 CLI 状态提示和诊断信息
4. 删除 `switchInstallSource``checkSkillHubStatus``handleSkillHubSetup`
5. 添加安装进度反馈(下载中 → 解压中 → 完成)
### Phase 5i18n + 清理 + 验证
1. 更新 `locales/modules/skills.js`(删除旧 key新增商店 key
2. 清理 `assistant.js` 中的 skills 工具定义(如有需要)
3. `cargo check` + `npx vite build` 全量验证
4. 手动测试已安装 Tab + 技能商店 Tab
---
## 十、风险与兼容性
| 风险 | 缓解 |
|------|------|
| SkillHub API 不可用 | COS 镜像作为备选;全量索引可离线缓存 |
| zip 解压路径安全 | 校验 slug 无 `..`/`/`/`\`;解压时检查相对路径 |
| 已有用户的 Skills 目录结构不兼容 | 不变 — 仍然解压到 `~/.openclaw/skills/{slug}/` |
| `skills_list` 去掉 CLI 后丢失 bundled skills 信息 | `custom_skill_roots()` 已包含 bundled 路径推导 |
| `skills_install_dep` (brew/npm/go/uv) 仍需本地工具 | 保留 — 这是 Skill 运行时依赖,不是安装工具依赖 |
---
## 十一、预期效果
| 指标 | 改造前 | 改造后 |
|------|--------|--------|
| 首次使用需安装 | OpenClaw CLI + SkillHub CLI | **无需安装** |
| 搜索延迟 | ~3-10sCLI 冷启动) | **<1s**HTTP API |
| 安装延迟 | ~5-15sCLI 调用) | **~2-5s**(直接下载 zip |
| 前端代码复杂度 | 492 行(含双源切换/CLI 检测) | ~300 行(统一 UI |
| 后端 CLI 调用 | 8 个命令依赖外部 CLI | **0 个** |
| 用户认知负担 | 安装源选择 + CLI 状态 | 搜索框 + 安装按钮 |
| Web/Docker 端 | CLI 经常找不到或权限问题 | **内置 HTTP与桌面端体验一致** |

View File

@@ -1,266 +0,0 @@
# ClawPanel GitHub Issues & PRs 待处理清单
> 生成时间2026-03-30 | 范围2026-03-25 ~ 2026-03-30 | 仓库qingchencloud/clawpanel
---
## 📊 概览
| 类别 | 数量 |
|------|------|
| 新 Issues5天内创建 | 22 个 |
| 其中 OPEN | 19 个 |
| 其中 CLOSED | 3 个 |
| 活跃 PRs5天内创建 | 3 个 |
| 有冲突的老 PRs | 4 个 |
---
## 🔴 P0 紧急 — 服务阻塞/无法使用
### Issue #160 — [Bug] 恶性Bug特定操作导致服务器必定阻塞
- **状态**: OPEN 🔥 | **标签**: `bug`, `openclaw-processing`
- **提交者**: yushu200403 | **创建**: 03-27
- **问题**: 点击"实时聊天"页面的自动修复 Origin 按钮后ClawPanel 进入无限循环持续尝试访问 Gateway导致 2C4G 服务器完全阻塞,只能强制重启
- **环境**: Ubuntu 22.04, v0.10.0
- **根因推测**: 配置更改后进入无延迟死循环
- **修复建议**: 检查 Gateway 连接重试逻辑,加退避/上限
- **链接**: https://github.com/qingchencloud/clawpanel/issues/160
### Issue #151 — [Bug] Gateway 检测错误导致与系统 OpenClaw 冲突不断重启
- **状态**: OPEN 🔥 | **标签**: `bug`, `openclaw-processing`
- **提交者**: fakers777 | **创建**: 03-26
- **问题**: Gateway 检测逻辑错误ClawPanel 与系统已运行的 OpenClaw 冲突,造成不断重启
- **环境**: Ubuntu, v0.10.0
- **链接**: https://github.com/qingchencloud/clawpanel/issues/151
---
## 🟠 P1 高优 — 核心功能故障
### Issue #150 — [Bug] 升级到 0.99 版本后完全打不开 ClawPanel
- **状态**: OPEN | **标签**: `bug`
- **提交者**: carlyle168 | **创建**: 03-25
- **问题**: 从 0.97 一路升级到 0.98/0.99 后 ClawPanel 无法打开,反复安装无效
- **环境**: Windows 10
- **链接**: https://github.com/qingchencloud/clawpanel/issues/150
### Issue #165 — fix: Agent 绑定消息渠道保存失败 (readConfig is not defined)
- **状态**: OPEN | **标签**: `openclaw-processing`
- **提交者**: jx270417948 | **创建**: 03-28
- **问题**: Agent 绑定飞书消息渠道时点保存报错 `readConfig is not defined`
- **环境**: Linux (Ubuntu), v0.10.0, openclaw-lark 2026.3.26
- **根因**: 代码中引用了未定义的 `readConfig` 函数
- **链接**: https://github.com/qingchencloud/clawpanel/issues/165
### Issue #159 — [Bug] Docker 双容器找不到 openclaw单容器把系统搞死
- **状态**: OPEN | **标签**: `bug`, `openclaw-processing`
- **提交者**: wanababy | **创建**: 03-27
- **问题**: Docker 双容器部署时 ClawPanel 找不到 OpenClaw CLI单容器模式下 ClawPanel 自动拉起 Gateway 与已有进程冲突导致系统崩溃
- **修复建议**: 需要添加 `DISABLE_LOCAL_GATEWAY_SPAWN` 环境变量开关,或支持纯远程 Gateway 模式
- **链接**: https://github.com/qingchencloud/clawpanel/issues/159
### Issue #157 — [Bug] 版本问题太多
- **状态**: OPEN | **标签**: `bug`, `openclaw-processing`
- **提交者**: lwsg1987 | **创建**: 03-27
- **问题**: 多个问题集合(综合反馈):
1. 版本过高提示降级,降级后版本号不变
2. 安装 skill(summarize) 提示缺依赖,安完后继续提示
3. 安装微信插件卡住,手动 CLI 安装后可用但无法识别微信图片
- **环境**: Ubuntu 24.02, v0.10.0
- **链接**: https://github.com/qingchencloud/clawpanel/issues/157
### Issue #152 — 无法切换 OpenClaw 版本
- **状态**: OPEN
- **提交者**: SEVENTEEN-TAN | **创建**: 03-26
- **问题**: 版本切换操作失败或无响应
- **环境**: Windows x86_64, Node.js v22.22.1, OpenClaw 2026.3.24
- **链接**: https://github.com/qingchencloud/clawpanel/issues/152
---
## 🟡 P2 中等 — 功能缺陷/兼容性
### Issue #166 — 未检测到任何 Skills
- **状态**: OPEN | **创建**: 03-30 (今天)
- **提交者**: penghaiqiu1988
- **问题**: Skills 页面显示"CLI 可用,但返回结果解析失败""未检测到任何 Skills"
- **环境**: v0.10.0, OpenClaw 汉化版 2026.3.24-zh.1
- **链接**: https://github.com/qingchencloud/clawpanel/issues/166
### Issue #156 — [Bug] Linux Web 模式下 CLI 检测失败systemd 缺少 PATH
- **状态**: OPEN | **创建**: 03-26
- **提交者**: XIAzhenglin
- **问题**: `linux-deploy.sh` 部署后面板显示"OpenClaw CLI 未安装",但终端 `which openclaw` 正常
- **根因**: systemd 服务配置缺少 PATH 环境变量npm 全局路径未包含
- **修复方案已给出**:
- 方案 1: systemd 服务添加 PATH 环境变量
- 方案 2: `dev-api.js``findOpenclawBin()` 补充 npm 全局路径扫描
- **链接**: https://github.com/qingchencloud/clawpanel/issues/156
### Issue #155 — [Bug] (无标题描述)
- **状态**: OPEN | **标签**: `bug` | **创建**: 03-26
- **提交者**: xiaochengshiguduo
- **链接**: https://github.com/qingchencloud/clawpanel/issues/155
### Issue #154 — [Bug] (无标题描述)
- **状态**: OPEN | **标签**: `bug` | **创建**: 03-26
- **提交者**: friendfish
- **链接**: https://github.com/qingchencloud/clawpanel/issues/154
### Issue #153 — 执行 openclaw devices list 命令失败
- **状态**: OPEN | **创建**: 03-26
- **提交者**: caofakun
- **问题**: 执行 `openclaw devices list` 报错 gateway connect failed (1000 normal closure),设备配对批准按钮无反应
- **环境**: Windows, OpenClaw 中文版 2026.3.13
- **链接**: https://github.com/qingchencloud/clawpanel/issues/153
### Issue #149 — [Bug] Models configured via OAuth not being pulled
- **状态**: OPEN | **创建**: 03-25
- **提交者**: adam479
- **问题**: 通过 OAuth 配置的模型不被 ClawPanel 拉取/显示
- **根因推测**: OAuth token 未在模型发现接口的请求头中传递
- **链接**: https://github.com/qingchencloud/clawpanel/issues/149
### Issue #148 — [Bug] AI 助手读取 OpenClaw 配置测试无法联通
- **状态**: OPEN | **标签**: `bug` | **创建**: 03-25
- **提交者**: WHHGR
- **问题**: AI 助手 API 设置中导入 OpenClaw 配置后测试 Failed to fetch但在 OpenClaw 中可正常使用
- **环境**: Ubuntu 20.04, v0.9.9
- **链接**: https://github.com/qingchencloud/clawpanel/issues/148
### Issue #146 — 升级 OpenClaw 后触发重复升级检测
- **状态**: OPEN | **创建**: 03-25
- **提交者**: z1a2q3wolf
- **问题**: 升级完成后每次打开 ClawPanel 仍弹出升级提示
- **根因**: 版本检测逻辑有误,升级后未正确更新本地缓存版本号
- **链接**: https://github.com/qingchencloud/clawpanel/issues/146
### Issue #144 — 黑苹果 OpenClaw 未检测到
- **状态**: OPEN | **标签**: `openclaw-processing` | **创建**: 03-25
- **提交者**: kof8855
- **问题**: Hackintosh 环境下 OpenClaw 检测失败
- **链接**: https://github.com/qingchencloud/clawpanel/issues/144
### Issue #143 — [Bug] Mac 电脑的多版本 Node 选择
- **状态**: OPEN | **标签**: `bug` | **创建**: 03-25
- **提交者**: zshaxy
- **问题**: macOS 多版本 Node.js 环境兼容问题
- **链接**: https://github.com/qingchencloud/clawpanel/issues/143
### Issue #158 — [Bug] Channel 插件包无法在面板安装
- **状态**: OPEN | **标签**: `bug` | **创建**: 03-27
- **提交者**: joeshen2021
- **问题**: 在 ClawPanel 上安装 channel 插件始终失败,请求支持手动 CLI 安装方式
- **链接**: https://github.com/qingchencloud/clawpanel/issues/158
---
## 🟢 P3 功能请求
### Issue #147 — feat: 定时器支持自然时间格式输入
- **状态**: OPEN | **创建**: 03-25
- **提交者**: z1a2q3wolf
- **问题**: 希望定时器支持自然语言时间格式(如"每天 8 点"),而非只能用 cron 表达式
- **链接**: https://github.com/qingchencloud/clawpanel/issues/147
---
## ✅ 已关闭 Issues
| # | 标题 | 关闭原因 |
|---|------|----------|
| #145 | 切换项目后仪表盘偶发显示"版本信息未获取" | 已修复 |
| #142 | Agent 模型配置问题 | 已修复 |
---
## 🔀 待处理 Pull Requests
### PR #163 — feat: upgrade MiniMax provider preset and add model presets ✅可合并
- **作者**: octo-patch | **创建**: 03-28
- **分支**: `feature/add-minimax-provider`
- **状态**: MERGEABLE
- **变更**: +113/-2 | 4 文件
- **内容**:
- 修复 MiniMax API 地址从弃用的 `api.minimax.chat` 更新为 `api.minimax.io`
- 添加 M2.7, M2.7-highspeed (1M上下文), M2.5, M2.5-highspeed 模型预设
- 更新 README 中英文版本
- 12 个单测覆盖
- **评估**: 质量良好,有测试,建议合并 ✅
- **链接**: https://github.com/qingchencloud/clawpanel/pull/163
### PR #162 — 修复记忆文件菜单显示问题 ⚠️需审查
- **作者**: roc-xie | **创建**: 03-28
- **分支**: `develop`
- **状态**: MERGEABLE
- **变更**: +141/-93 | 1 文件 (`scripts/dev-api.js`)
- **内容**:
- 修复工作记忆/记忆归档/核心文件创建后不显示
- 对齐 Tab 目录路径
- 递归搜索子目录并支持更多文件扩展名
- 修复 Agent 工作区路径
- **评估**: 功能修复有价值,但需检查文件路径变更是否影响其他功能 ⚠️
- **链接**: https://github.com/qingchencloud/clawpanel/pull/162
### PR #161 — fix: 重构版本源检测逻辑 + standalone 目录集中化 + Linux 平台检测补全 ⚠️需审查
- **作者**: SEVENTEEN-TAN | **创建**: 03-28
- **分支**: `fix/version-detection-and-standalone`
- **状态**: MERGEABLE
- **变更**: +252/-80 | 8 文件 (Rust + JS)
- **内容**:
- 新增 Windows `.cmd` shim 文件检测判断 npm 包归属
- `all_standalone_dirs()` 集中化消除 6 处硬编码
- Linux 平台检测补全至与 macOS/Windows 同等完整
- 前端三源显示(官方/汉化/未知来源)
- 跨源切换时清理 standalone 残留
- **评估**: 改动较大,直接解决 #146 #150 #152 等版本检测问题,需仔细 Review ⚠️
- **链接**: https://github.com/qingchencloud/clawpanel/pull/161
### 有冲突的老 PRs需决策处理
| # | 标题 | 作者 | 状态 |
|---|------|------|------|
| #130 | docs: add Japanese README | eltociear | CONFLICTING — 已有 README.ja.md可关闭 |
| #129 | feat: 消息渠道多账号支持与 Agent 绑定展示 | 0xsline | CONFLICTING — 功能有价值,需 rebase |
| #115 | feat: improve dashboard, skills, sidebar, cloudflared | kiss-kedaya | CONFLICTING — 大改动,需确认是否还需要 |
| #101 | feat: chat virtual scroll | kiss-kedaya | CONFLICTING — 虚拟滚动,需确认 |
---
## 📋 建议处理优先级
### 🎯 立即处理
1. **PR #163** → Review 后合并MiniMax 修复,质量好)
2. **PR #161** → 重点 Review解决一大批版本检测 bug: #146 #150 #152
3. **Issue #160** → P0 修复 Gateway 连接死循环导致服务器阻塞
### ⏳ 本周处理
4. **PR #162** → Review 记忆文件显示修复
5. **Issue #165** → 修复 `readConfig is not defined` 错误
6. **Issue #156** → systemd PATH 问题修复
7. **Issue #159/#151** → Docker 部署模式 + Gateway 冲突,考虑加环境变量开关
8. **Issue #166** → Skills 检测失败(今天新报的)
### 📝 待排期
9. **Issue #149** → OAuth 模型拉取
10. **Issue #148** → AI 助手 API 联通
11. **Issue #147** → 自然时间格式(功能需求)
12. 关闭/整理冲突 PRs (#130 #129 #115 #101)
---
## 🔢 按模块归类
| 模块 | 相关 Issues |
|------|------------|
| **版本检测/升级** | #150 #152 #146 #157 |
| **Gateway/服务管理** | #160 #151 #159 |
| **Skills 管理** | #166 #157 |
| **Docker 部署** | #159 |
| **Linux 部署** | #156 |
| **消息渠道/插件** | #165 #158 |
| **AI 助手** | #148 |
| **设备管理** | #153 |
| **OAuth/模型** | #149 |
| **Mac 兼容性** | #144 #143 |

View File

@@ -3,14 +3,14 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ClawPanel - OpenClaw AI Agent 可视化管理面板 | 快速搭建、配置、监控你的 AI 智能体</title>
<meta name="description" content="ClawPanel 是 OpenClaw AI Agent 框架的可视化管理面板,基于 Tauri v2 构建的跨平台桌面应用。内置晴辰助手AI Assistant支持工具调用终端执行、文件读写、目录浏览让 AI 帮你诊断和修复 OpenClaw 配置。支持仪表盘监控、多模型配置OpenAI/DeepSeek/Kimi/Anthropic、晴辰云 AI 接口一键接入、消息渠道管理、内置 QQ 机器人、实时 AI 聊天、记忆管理、Agent 管理、网关配置、服务管控、日志查看、内网穿透、系统诊断。一键安装 OpenClaw快速搭建你的私有 AI Agent开源免费,支持 Windows/macOS/Linux支持 11 种语言。">
<meta name="keywords" content="ClawPanel, OpenClaw, AI Agent, AI 智能体, 管理面板, 可视化管理, 快速搭建, 一键安装, 桌面应用, 跨平台, Tauri, Tauri v2, Rust, 开源, 免费, LLM, 大语言模型, 多模型, 模型配置, OpenAI, DeepSeek, Kimi, Anthropic, Claude, 晴辰云, 晴辰云 AI 接口, QingchenCloud, 晴辰助手, AI Assistant, 消息渠道, QQ 机器人, Telegram, Discord, 实时聊天, AI 对话, 流式响应, 记忆管理, Agent 管理, 多 Agent, 网关配置, Gateway, 服务管理, 日志查看, 内网穿透, Cloudflare Tunnel, 系统诊断, WebSocket, 仪表盘, 监控, 配置管理, 私有部署, 本地部署, 自托管, AI 工具, AI 平台, 智能体平台, 人工智能, 深度学习, 自然语言处理, NLP, 模型调度, 模型切换, 备选模型, 开箱即用, 零代码, 低代码, admin panel, dashboard, open source AI, self-hosted AI, local AI, AI management, Docker 部署, 开发板, 树莓派, ARM, i18n, 多语言">
<title>ClawPanel - OpenClaw & Hermes Agent 多引擎 AI 管理面板 | 快速搭建、配置、监控你的 AI 智能体</title>
<meta name="description" content="ClawPanel 是支持多 AI Agent 框架的可视化管理面板,目前支持 OpenClaw 和 Hermes Agent 双引擎。基于 Tauri v2 构建的跨平台桌面应用。内置晴辰助手AI Assistant支持工具调用终端执行、文件读写、目录浏览让 AI 帮你诊断和修复配置。支持仪表盘监控、多模型配置OpenAI/DeepSeek/Kimi/Anthropic、晴辰云 AI 接口一键接入、Hermes Agent 对话、消息渠道管理、内置 QQ 机器人、实时 AI 聊天、记忆管理、Agent 管理、网关配置、服务管控、日志查看、内网穿透、系统诊断。开源免费,支持 Windows/macOS/Linux支持 11 种语言。">
<meta name="keywords" content="ClawPanel, OpenClaw, Hermes Agent, AI Agent, AI 智能体, 多引擎, 管理面板, 可视化管理, 快速搭建, 一键安装, 桌面应用, 跨平台, Tauri, Tauri v2, Rust, 开源, 免费, LLM, 大语言模型, 多模型, 模型配置, OpenAI, DeepSeek, Kimi, Anthropic, Claude, 晴辰云, 晴辰云 AI 接口, QingchenCloud, 晴辰助手, AI Assistant, 消息渠道, QQ 机器人, Telegram, Discord, 实时聊天, AI 对话, 流式响应, 记忆管理, Agent 管理, 多 Agent, 网关配置, Gateway, 服务管理, 日志查看, 内网穿透, Cloudflare Tunnel, 系统诊断, WebSocket, 仪表盘, 监控, 配置管理, 私有部署, 本地部署, 自托管, AI 工具, AI 平台, 智能体平台, 人工智能, 深度学习, 自然语言处理, NLP, 模型调度, 模型切换, 备选模型, 开箱即用, 零代码, 低代码, admin panel, dashboard, open source AI, self-hosted AI, local AI, AI management, Docker 部署, 开发板, 树莓派, ARM, i18n, 多语言">
<meta name="author" content="晴辰云 QingchenCloud">
<meta name="robots" content="index, follow, max-snippet:-1, max-image-preview:large">
<link rel="canonical" href="https://claw.qt.cool/">
<meta property="og:title" content="ClawPanel - OpenClaw AI Agent 可视化管理面板 | 快速搭建你的 AI 智能体">
<meta property="og:description" content="基于 Tauri v2 的跨平台桌面应用, OpenClaw AI Agent 提供可视化管理。内置晴辰助手支持工具调用,晴辰云 AI 接口一键接入,消息渠道管理与内置 QQ 机器人。开源免费,支持 11 种语言。">
<meta property="og:title" content="ClawPanel - OpenClaw & Hermes Agent 多引擎 AI 管理面板 | 快速搭建你的 AI 智能体">
<meta property="og:description" content="基于 Tauri v2 的跨平台桌面应用,支持 OpenClaw 和 Hermes Agent 双引擎 AI 管理。内置晴辰助手支持工具调用,晴辰云 AI 接口一键接入,消息渠道管理与内置 QQ 机器人。开源免费,支持 11 种语言。">
<meta property="og:type" content="website">
<meta property="og:url" content="https://claw.qt.cool/">
<meta property="og:site_name" content="ClawPanel">
@@ -20,8 +20,8 @@
<meta property="og:image:height" content="675">
<meta property="og:image:alt" content="ClawPanel 仪表盘">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="ClawPanel - OpenClaw AI Agent 可视化管理面板">
<meta name="twitter:description" content="基于 Tauri v2 的跨平台桌面应用。内置晴辰助手与晴辰云 AI 接口,支持消息渠道管理、QQ 机器人、多模型配置与实时 AI 聊天。开源免费。">
<meta name="twitter:title" content="ClawPanel - OpenClaw & Hermes Agent 多引擎 AI 管理面板">
<meta name="twitter:description" content="基于 Tauri v2 的跨平台桌面应用。支持 OpenClaw & Hermes Agent 双引擎,内置晴辰助手与晴辰云 AI 接口消息渠道管理、QQ 机器人、多模型配置与实时 AI 聊天。开源免费。">
<meta name="twitter:image" content="https://claw.qt.cool/00.png">
<link rel="icon" href="./logo.png" type="image/png">
<script type="application/ld+json">
@@ -31,10 +31,10 @@
"name": "ClawPanel",
"applicationCategory": "DeveloperApplication",
"operatingSystem": "Windows, macOS, Linux",
"description": "OpenClaw AI Agent 可视化管理面板,基于 Tauri v2 的跨平台桌面应用。内置晴辰助手支持工具调用,晴辰云 AI 接口一键接入。支持仪表盘监控、多模型配置、消息渠道管理、内置 QQ 机器人、实时 AI 聊天、记忆管理、Agent 管理、网关配置、内网穿透等功能。支持 11 种语言。",
"description": "支持 OpenClaw 和 Hermes Agent 双引擎的多 AI Agent 可视化管理面板,基于 Tauri v2 的跨平台桌面应用。内置晴辰助手支持工具调用,晴辰云 AI 接口一键接入。支持仪表盘监控、多模型配置、Hermes Agent 对话、消息渠道管理、内置 QQ 机器人、实时 AI 聊天、记忆管理、Agent 管理、网关配置、内网穿透等功能。支持 11 种语言。",
"url": "https://claw.qt.cool/",
"downloadUrl": "https://github.com/qingchencloud/clawpanel/releases/latest",
"softwareVersion": "0.12.0",
"softwareVersion": "0.13.0",
"author": {
"@type": "Organization",
"name": "晴辰云 QingchenCloud",
@@ -47,7 +47,7 @@
"priceCurrency": "CNY"
},
"screenshot": "https://claw.qt.cool/00.png",
"keywords": "OpenClaw, AI Agent, 管理面板, Tauri, 跨平台, 开源, 免费, LLM, 多模型, 晴辰云, 晴辰助手, Discord"
"keywords": "OpenClaw, Hermes Agent, AI Agent, 多引擎, 管理面板, Tauri, 跨平台, 开源, 免费, LLM, 多模型, 晴辰云, 晴辰助手, Discord"
}
</script>
<style>
@@ -621,9 +621,9 @@
<div class="orb orb-1" id="orb1"></div>
<div class="orb orb-2" id="orb2"></div>
<div class="hero-inner">
<div class="reveal hero-badge"><span class="pulse"></span> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="display:inline;vertical-align:-2px"><rect x="3" y="11" width="18" height="10" rx="2"/><circle cx="9" cy="16" r="1"/><circle cx="15" cy="16" r="1"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></svg> <span data-i18n="hero.badge">内置 AI 助手 — 一键安装、配置、诊断、修复 OpenClaw</span></div>
<h1 class="reveal hero-title" data-i18n="hero.title"><span class="gradient-text shimmer">AI 助手</span>驱动的<br>OpenClaw 管理面板</h1>
<p class="reveal hero-subtitle" data-i18n="hero.sub">内置智能 AI 助手,帮你<strong>一键安装 OpenClaw</strong>、自动诊断配置、排查问题、修复错误。<br>新增消息渠道管理,内置 QQ 机器人,并支持 Telegram、Discord 等外部渠道接入</p>
<div class="reveal hero-badge"><span class="pulse"></span> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="display:inline;vertical-align:-2px"><rect x="3" y="11" width="18" height="10" rx="2"/><circle cx="9" cy="16" r="1"/><circle cx="15" cy="16" r="1"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></svg> <span data-i18n="hero.badge">内置 AI 助手 — 支持 OpenClaw & Hermes Agent 双引擎管理</span></div>
<h1 class="reveal hero-title" data-i18n="hero.title"><span class="gradient-text shimmer">AI 助手</span>驱动的<br>多引擎 AI 管理面板</h1>
<p class="reveal hero-subtitle" data-i18n="hero.sub">支持 <strong>OpenClaw</strong><strong>Hermes Agent</strong> 双引擎,内置智能 AI 助手帮你一键安装、自动诊断配置、排查问题、修复错误。<br>内置 Hermes Agent 对话、消息渠道管理QQ 机器人,并支持 Telegram、Discord 等外部渠道。</p>
<div class="reveal hero-cta">
<a href="#download" class="btn btn-primary">
<svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path d="M12 15V3m0 12l-4-4m4 4l4-4M2 17l.621 2.485A2 2 0 004.561 21h14.878a2 2 0 001.94-1.515L22 17"/></svg>
@@ -744,7 +744,7 @@
<div class="container" style="position:relative;z-index:10">
<div class="section-header">
<h2 class="reveal section-title" data-i18n="feat.title">强大的 <span class="gradient-text">功能矩阵</span></h2>
<p class="reveal section-desc" data-i18n="feat.desc">一个面板,管理 OpenClaw 的方方面面</p>
<p class="reveal section-desc" data-i18n="feat.desc">一个面板,管理 OpenClaw & Hermes Agent 双引擎</p>
</div>
<!-- 仪表盘 -->
@@ -1652,9 +1652,9 @@
'nav.features':'Features','nav.tech':'Architecture','nav.quickstart':'Quick Start',
'nav.deploy':'Deploy','nav.docs':'Docs','nav.community':'Community',
'nav.activity':'Activity','nav.download':'Download',
'hero.badge':'Built-in AI Assistant — One-click Install, Configure, Diagnose & Fix OpenClaw',
'hero.title':'<span class="gradient-text shimmer">AI Assistant</span>-Powered<br>OpenClaw Management Panel',
'hero.sub':'Built-in smart AI assistant helps you <strong>install OpenClaw with one click</strong>, auto-diagnose configs, troubleshoot issues & fix errors.<br>New messaging channel management with built-in QQ bot, plus Telegram, Discord & more.',
'hero.badge':'Built-in AI Assistant — Supporting OpenClaw & Hermes Agent Dual-Engine Management',
'hero.title':'<span class="gradient-text shimmer">AI Assistant</span>-Powered<br>Multi-Engine AI Management Panel',
'hero.sub':'Supports <strong>OpenClaw</strong> and <strong>Hermes Agent</strong> dual engines with built-in AI assistant for one-click install, auto-diagnosis, troubleshooting & error fixing.<br>Built-in Hermes Agent chat, messaging channels, QQ bot, plus Telegram, Discord & more.',
'hero.dl':'Download Latest','hero.src':'Source Code',
'stat.1':'Modules','stat.2':'Desktop Framework','stat.3':'Cross-Platform','stat.4':'License',
'comm.title':'<span class="gradient-text">Join Community</span>',
@@ -1667,7 +1667,7 @@
'video.title':'Product <span class="gradient-text">Demo Video</span>',
'video.desc':'From dashboard to memory management, see all core features in one video',
'feat.title':'Powerful <span class="gradient-text">Feature Matrix</span>',
'feat.desc':'One panel to manage every aspect of OpenClaw',
'feat.desc':'One panel to manage OpenClaw & Hermes Agent',
'feat.tag.overview':'Full Overview','feat.tag.ready':'Ready to Use','feat.tag.soul':'Soul Transfer',
'feat.tag.core':'Core Feature','feat.tag.config':'Config Center','feat.tag.data':'Data Management',
'feat.tag.security':'Security','feat.tag.agent':'Smart Agent',
@@ -1764,7 +1764,7 @@
'doc4.t':'Changelog','doc4.d':'New features, bug fixes and improvements for each version',
'doc4.t1':'New Features','doc4.t2':'Bug Fixes','doc4.t3':'Version History',
'eco.title':'<span class="gradient-text">Ecosystem</span>',
'eco.desc':'ClawPanel is part of the OpenClaw ecosystem',
'eco.desc':'ClawPanel supports the OpenClaw & Hermes Agent ecosystems',
'eco1.d':'AI Agent Framework — ClawPanel\'s core management target',
'eco2.d':'Cross-platform mobile chat client, talk to AI Agent anywhere',
'eco3.d':'Cloudflare Tunnel tool, expose local services with one click',

View File

@@ -1,463 +0,0 @@
# OpenClaw 2026.3.28 兼容性与旧版客户端风险说明
更新时间2026-03-31 13:02 +08:00
## 一、文档目的
这份文档用于说明以下三个问题:
1. ClawPanel 当前是否应该将 OpenClaw `2026.3.28` / `2026.3.28-zh.2` 设为推荐稳定版。
2. 旧版 ClawPanel 客户端在连接 OpenClaw `2026.3.28` 时,兼容边界在哪里。
3. 后续发布策略应该如何兼顾“新版面板适配 3.28”与“旧客户端不要被错误引导升级”。
这份文档不是 OpenClaw 3.28 的功能手册,而是面向 ClawPanel 维护者的兼容性决策说明。
## 二、结论摘要
### 1. 当前结论
OpenClaw `2026.3.28` 并不是“完全不兼容”。
就当前仓库代码来看:
1. **当前主干代码已经具备基础兼容能力**
2. **推荐稳定版策略文件已经可以指向 `2026.3.28` / `2026.3.28-zh.2`**
3. **真正需要重点关注的是旧版客户端的写入兼容性,而不是只读兼容性**
### 2. 不应简单得出的错误结论
以下两种判断都不准确:
1. “所有版本的 ClawPanel 都已经可以安全推荐 3.28。”
2. “旧版客户端完全不能连接 3.28。”
更准确的结论是:
> 旧版客户端大多可以读取和连接 OpenClaw 3.28,但不一定可以安全地修改其配置。
### 3. 推荐策略结论
后续发布不建议把 `2026.3.28` 直接作为所有历史 ClawPanel 版本的推荐稳定版。
更稳妥的策略是:
1. **仅对已经验证过的面板版本推荐 3.28**
2. **对历史旧版客户端保持旧稳定版映射,或至少不给 3.28 做默认推荐**
3. **对旧客户端连接 3.28 的场景,增加明确的风险提示,尤其是配置写入场景**
## 三、为什么源码改了稳定版,已发布旧桌面客户端可能仍显示旧值
ClawPanel 当前有两套版本策略读取路径:
### 1. Web / dev-api 模式
Web 模式下,版本策略由 Node 后端在运行时读取:
- 文件:`scripts/dev-api.js`
- 关键常量:`VERSION_POLICY_PATH`
- 数据源:仓库根目录 `openclaw-version-policy.json`
这种模式下,只要修改策略文件并重新启动 Web 后端,新的推荐版就会立即生效。
### 2. Tauri 桌面端
桌面端不是运行时读 JSON 文件,而是编译时直接把策略文件嵌入到二进制:
- 文件:`src-tauri/src/commands/config.rs`
- 关键实现:`include_str!("../../../openclaw-version-policy.json")`
这意味着:
1. 已发布的桌面安装包会继续使用它编译当时内嵌进去的策略。
2. 仓库里后续修改 `openclaw-version-policy.json`,不会自动影响用户手里的旧桌面安装包。
3. 如果要让桌面端真正把稳定版从 `2026.3.13` 切到 `2026.3.28`,必须重新构建并重新发布桌面端。
### 3. 这件事对旧客户端兼容策略的影响
这实际上天然把“旧客户端兼容”分成了两类:
1. **已发布旧桌面客户端**:不会自动切到新推荐版。
2. **未来重新打包的旧版本分支 / Web 旧客户端**:会直接吃到当前策略文件。
所以后续讨论“是否推荐 3.28”时,不能只看仓库代码,还要看对应客户端是否已经重新发布。
## 四、兼容性需要拆成两种:只读兼容 vs 写入兼容
### 1. 只读兼容
只读兼容指旧版客户端在连接 OpenClaw 3.28 后,是否还能正常:
1. 获取版本信息。
2. 查看服务状态。
3. 打开 Dashboard / About / Services 等页面。
4. 执行基础聊天和基础 RPC 请求。
从当前代码和已知链路看,这部分整体风险相对可控。
原因是:
1. 旧面板很多页面只是读取 `getVersionInfo()``getServicesStatus()``readOpenclawConfig()` 等接口返回结果。
2. OpenClaw 3.28 的新能力即使旧客户端不认识,通常也只是“页面不展示”,并不必然导致崩溃。
3. 当前版本比较逻辑已经支持去掉 `-zh.x` 后缀做基础版本判断,因此 `2026.3.28-zh.2` 不会天然被错误识别成不同主版本。
### 2. 写入兼容
写入兼容才是重点。
这里的风险不在于“旧客户端看不懂新字段”,而在于:
> 旧客户端一旦保存配置,会不会把 OpenClaw 3.28 新增的字段写没、改坏,或者回写成旧结构。
这是后续是否允许旧客户端“安全管理 3.28”最关键的判断标准。
## 五、旧客户端连接 3.28 时,当前最主要的风险点
## 5.1 风险一:整份 openclaw.json 回写
这是当前最需要警惕的风险。
### Tauri 当前实现相对安全
在当前仓库版本里Tauri 的 `write_openclaw_config()` 已经做了保留未知字段的处理:
- 文件:`src-tauri/src/commands/config.rs`
- 关键函数:`write_openclaw_config()`
- 合并逻辑:`merge_configs_preserving_fields()`
写入流程大致是:
1. 先读取现有配置。
2. 用新配置覆盖旧配置中的同名字段。
3. 保留未被新配置覆盖的已有字段。
4. 最后只清理 ClawPanel 自己的 UI 字段。
这意味着:
1. 如果 OpenClaw 3.28 新增了旧客户端不认识的合法字段,当前 Tauri 主干代码在整份保存时,**有机会把这些字段保留下来**。
2. 因此当前主干 Tauri 对 3.28 的配置写入兼容性,仍然属于当前仓库里更稳的一侧。
### Web dev-api 当前实现已改善,但历史旧客户端仍然有风险
在当前仓库版本里,`scripts/dev-api.js``write_openclaw_config({ config })` 已不再是“直接写传入对象”,而是:
1. 先读取现有 `openclaw.json`
2. 通过 `mergeConfigsPreservingFields(existing, config)` 合并新旧配置。
3. 再执行 `stripUiFields(merged)`
4. 最后写回磁盘。
这意味着:
1. **当前主干 Web dev-api 的整份保存风险,已经明显低于之前的直接覆盖实现。**
2. 对于“旧客户端不认识、但本次前端没有主动覆盖”的字段,当前 Web 链路通常也能保留下来。
3. 但这仍然**不是零风险**
- 如果旧客户端在同一路径上用旧结构覆盖新结构,语义仍可能被改坏。
- 数组类字段、整块对象替换、用户手动删字段等场景,仍然可能破坏 3.28 配置。
- 已发布的历史旧 Web / 桌面客户端如果还没有这套 merge 逻辑,风险依旧存在。
### 风险结论
因此在“旧客户端兼容 3.28”这个问题上:
1. **Tauri 主干版本的整份配置写入风险较低,但不是零风险。**
2. **当前主干 Web dev-api 也已经具备 merge 保留未知字段能力,但整体风险仍略高于只读场景。**
3. **任何历史旧版客户端,如果尚未具备 merge 保留未知字段能力,都不应默认推荐用户去管理 3.28 配置。**
## 5.2 风险二:配置编辑器属于高风险入口
文件:`src/pages/services.js`
当前配置编辑器的流程是:
1. `api.readOpenclawConfig()` 读取完整配置。
2. 用户在文本框中编辑 JSON。
3. `api.writeOpenclawConfig(config)` 保存。
这个入口的问题在于:
1. 用户会把它当作“完整配置编辑器”。
2. 但旧客户端不一定理解 OpenClaw 3.28 的所有新字段语义。
3. 一旦旧客户端底层写入链路不保留未知字段,保存行为就可能破坏 3.28 配置。
因此对于旧客户端来说,这个页面属于:
- **高风险写入口**。
如果后续要做旧客户端兼容保护,这里应该是首批增加警告或限制的页面。
## 5.3 风险三Agent 高级配置字段不一定完全跟上 3.28
OpenClaw 3.28 在 Agent 侧的能力明显增强,例如:
1. 推理模式细分。
2. Fallback 模型链。
3. Heartbeat 轻量会话配置。
4. 更完整的 tools / sessions / subagents / runtime / params 配置。
当前主干代码里ClawPanel 已经不是“完全没有 Agent 高级能力”,但也还没有完整承接 OpenClaw 3.28 的所有新能力。
### 当前已经有基础支持的部分
从当前代码看,以下能力已经有了基础承接:
1. Agent 详情页。
2. Bootstrap 文件读写。
3. `model.primary + fallbacks`
4. `thinkingDefault`
5. `skills`
6. `tools`
相关文件包括:
- `src/pages/agent-detail.js`
- `src-tauri/src/commands/agent.rs`
- `scripts/dev-api.js`
### 当前仍未完整对齐的部分
以下字段和能力,目前仍然更像“部分支持”或“未完整产品化”:
1. `reasoningDefault`
2. `fastModeDefault`
3. `heartbeat`
4. `subagents`
5. `sandbox`
6. `params`
7. `runtime`
8. 更完整的会话生命周期配置
9. 工具目录、生效工具、工具审批等高级工具系统
这意味着:
1. 新版主干客户端连接 3.28 时,**基础 Agent 管理大体可用**。
2. 历史旧客户端连接 3.28 时,**只要涉及高级 Agent 配置写入,就存在结构丢失或无法表达的风险**。
## 5.4 风险四:旧客户端可能“能看、能连、能聊”,但不代表“能安全写”
这是维护决策里最容易被忽略的一点。
很多时候用户看到旧客户端还能:
1. 显示版本号。
2. 启动 Gateway。
3. 正常聊天。
就会误以为“完全兼容”。
实际上这只能说明:
- **基础运行兼容**。
它不能说明:
- **配置写入兼容**。
- **高级能力兼容**。
- **长期运维兼容**。
因此在版本发布策略上,不能把“能连上 3.28”直接等同于“可以安全把 3.28 设成旧客户端的推荐稳定版”。
## 六、当前主干代码对 3.28 的真实支持情况
## 6.1 已经具备基础兼容能力的部分
当前主干分支已经有以下基础承接能力:
1. **版本策略统一文件**
- `openclaw-version-policy.json`
2. **前后端统一版本信息读取**
- Web`scripts/dev-api.js`
- Tauri`src-tauri/src/commands/config.rs`
3. **Agent 文件管理**
- `list_agent_files`
- `read_agent_file`
- `write_agent_file`
4. **Agent 高级基础配置**
- primary model
- fallbacks
- thinkingDefault
- tools
- skills
5. **基础会话能力**
- `sessions.list`
- `sessions.delete`
- `sessions.reset`
因此“ClawPanel 完全不支持 3.28”并不成立。
## 6.2 当前仍需补齐的部分
要说“ClawPanel 已完整支持 3.28 新能力”,当前也还做不到。
主要缺口包括:
1. Tauri / Web 对 Agent 高级字段的承接还不完全对齐。
2. 会话系统仍然只覆盖部分方法。
3. 工具系统仍然缺少目录与生效状态视图。
4. Heartbeat / lightContext / isolatedSession 等高级能力还没有完整面板入口。
5. 旧客户端缺少针对 3.28 的显式风险提示和保护策略。
## 七、为什么不建议把 3.28 直接推荐给所有历史客户端
如果把 `openclaw-version-policy.json` 中所有历史 `panels.*` 全部统一改成 `2026.3.28` / `2026.3.28-zh.2`,会有三个风险:
### 1. 风险一:未来重打旧版本分支时会误导用户
策略文件本身支持按面板版本映射推荐版。
如果后续把所有历史 panel 版本都指向 3.28,那么:
1. 历史旧版本一旦重新构建。
2. 或 Web 模式旧代码直接读取最新策略文件。
3. 用户就会被引导去安装 3.28。
但这些旧客户端并未必具备安全管理 3.28 配置的能力。
### 2. 风险二:旧客户端缺少写入保护
对于旧客户端来说,真正危险的是:
1. 打开配置编辑器。
2. 修改 Agent 高级配置。
3. 写入 openclaw.json。
如果它们没有“保留未知字段”的能力,就可能把 3.28 的新字段覆盖掉。
### 3. 风险三:推荐版意味着维护者背书
一旦某版本被标成“推荐稳定版”,用户会自然理解为:
1. 当前面板版本已经验证过。
2. 可以放心安装。
3. 后续出现配置或行为问题,默认认为是面板 bug。
如果实际上只是“能读能连,但不保证安全写”,就不适合把它作为所有历史客户端的推荐稳定版。
## 八、建议采用的版本推荐策略
## 8.1 分层推荐,而不是一刀切推荐
推荐策略应分为三层:
### A. 已验证的新面板版本
这类版本已经完成对 3.28 的验证,可以推荐:
- official: `2026.3.28`
- chinese: `2026.3.28-zh.2`
### B. 历史旧面板版本
这类版本不建议默认推荐 3.28。
可以继续保持旧稳定版,例如:
- official: 继续使用旧验证版
- chinese: 继续使用旧验证版
### C. 未知来源 / 手动升级用户
允许用户自己切换到 3.28,但必须承担自测兼容性的责任。
适合继续保留以下原则:
1. 关于页允许手动切换版本。
2. 服务页只默认推荐“已验证稳定版”。
3. 高于推荐版时显示风险提示。
## 8.2 对旧客户端,应至少明确支持两档兼容声明
后续在说明和 UI 提示中,建议把兼容性拆成两档:
### 只读兼容
表示:
1. 可以连接 3.28。
2. 可以查看状态。
3. 可以做基础聊天。
4. 不代表所有配置编辑都安全。
### 完整管理兼容
表示:
1. 已验证当前客户端对 3.28 的配置读写安全。
2. 已验证关键高级字段不会被误删。
3. 可以作为推荐稳定版公开引导用户升级。
## 九、如果后续要做旧客户端保护,优先级建议
## P0先调整推荐策略
最先应该做的不是补全所有 3.28 UI而是先控制策略风险
1. 不再给所有历史面板版本一刀切推荐 3.28。
2. 只对当前验证通过的面板版本设置 3.28 推荐。
3. 历史版本保留旧推荐版映射。
## P1补旧客户端风险提示
优先在这些高风险入口增加提示:
1. 关于页版本管理。
2. 服务页配置编辑器。
3. Agent 高级配置页面。
提示目标不是阻止用户使用 3.28,而是明确说明:
- 当前客户端可能仅保证只读兼容或基础运行兼容。
- 高级配置写入需谨慎。
## P2补 Web 写入链路的未知字段保留能力
当前 `scripts/dev-api.js``write_openclaw_config()` 风险高于 Tauri。
如果要提高 3.28 在 Web 模式下的兼容性,建议优先把这条链路改成和 Tauri 一样的“先读现有配置、再 merge 保留未知字段”的模式。
## P3逐步补齐 3.28 高级能力
后续再考虑:
1. reasoning / fast mode
2. heartbeat 高级配置
3. sessions 全量方法
4. tools.catalog / tools.effective
5. requireApproval / 审批策略
6. subagents / sandbox / runtime / params
## 十、维护建议
后续在维护 OpenClaw 推荐版时,建议遵循以下原则:
1. **推荐稳定版不等于上游最新版。**
2. **是否推荐,取决于当前面板版本是否已经验证过读写兼容。**
3. **旧客户端兼容性优先看写入风险,而不是页面能不能打开。**
4. **Tauri 已发布旧包与仓库当前代码要分开判断。**
5. **Web 模式与桌面模式的写入安全性不能混为一谈。**
## 十一、最终结论
最终建议如下:
1. **可以让当前主干 ClawPanel 以 OpenClaw `2026.3.28` / `2026.3.28-zh.2` 为推荐稳定版。**
2. **不要把 3.28 直接作为所有历史 ClawPanel 版本的推荐稳定版。**
3. **对旧客户端,应将兼容性定义为“基础运行兼容优先、配置写入兼容待验证”。**
4. **后续若要正式公开推广 3.28,应优先补策略分层和写入保护。**
换句话说:
> 3.28 可以成为新面板的推荐稳定版,但不应成为所有旧客户端的默认推荐版。
## 十二、建议后续动作清单
建议按以下顺序推进:
1. 重新审视 `openclaw-version-policy.json` 的历史版本映射。
2. 为当前已验证的面板版本单独设置 3.28 推荐。
3. 保留历史旧面板版本的旧推荐版映射。
4. 在旧客户端的高风险写入口增加 3.28 风险提示。
5. 优先修复 Web `write_openclaw_config()` 的未知字段丢失风险。
6. 再逐步补齐 3.28 的高级 Agent / Session / Tools 能力。

View File

@@ -1,368 +0,0 @@
# OpenClaw 多实例兼容性优化方案
更新时间2026-03-31 01:07:53 +08:00
## 背景
当前 ClawPanel 已经具备“实例切换”的一部分界面与数据结构,但底层仍然以单一 OpenClaw 根目录为默认前提。这会在以下场景中产生明显冲突:
1. 同一台机器存在多个 OpenClaw 安装目录。
2. 用户手动切换了实例,但某些页面仍然读写旧路径。
3. Tauri 桌面端与 Web dev-api 对实例的理解不一致。
4. 多个 OpenClaw 同时运行时Gateway 名称、Bonjour 广播、端口、配置文件读写可能相互干扰。
这个问题不是单个页面写死路径,而是“实例选择层”和“本地路径解析层”没有完成统一抽象。
## 现状诊断
### 1. 现有能力
当前仓库已经有三类相关能力:
1. 面板设置页支持单个自定义 OpenClaw 路径。
2. 前端侧边栏支持实例切换 UI。
3. Web dev-api 具备实例列表、添加、删除、切换能力。
### 2. 当前架构缺口
#### 2.1 单路径配置不等于多实例支持
Tauri 侧当前通过 `clawpanel.json.openclawDir` 决定唯一生效目录,本质上仍然是“全局单路径覆盖”,不是“多实例上下文切换”。
#### 2.2 大量命令直接依赖单一根目录
Rust 侧很多命令直接调用统一的 `openclaw_dir()`,例如:
1. Agent 管理
2. Memory
3. Skills
4. Messaging
5. Service
6. Pairing
7. Config 读写
这意味着只要当前根目录解析不正确,多个页面都会一起读错目录。
#### 2.3 桌面端与 Web 端实例模型不一致
前端 API 里 `instance_*` 被标记为仅 Web 后端实现,说明“实例管理”目前主要停留在 dev-api 层,而桌面端大量本地读写命令仍走 Tauri Rust 本地目录解析。
结果就是:
1. 前端能显示实例切换。
2. 真实文件读写却未必跟随实例切换。
3. 用户会感觉“切了实例,但操作的还是另一个 OpenClaw”。
#### 2.4 本地多实例冲突缺少显式选择
当系统中检测到多个 OpenClaw 安装时当前没有统一的冲突选择弹窗也没有清晰的“当前操作对象是谁”的确认流程。对于会修改配置、插件、Agent 文件的操作,这个缺口风险很高。
## 根因
根因可以归纳为一句话:
> ClawPanel 目前有“实例列表”,但没有“实例上下文驱动的路径解析内核”。
也就是说,实例是 UI 概念,不是系统级资源定位概念。
## 目标
本次优化的目标不是简单把路径输入框改成下拉框,而是建立完整的一套实例上下文机制。
### 功能目标
1. 支持同时管理多个本地 OpenClaw 安装目录。
2. 支持远程实例、Docker 实例、本地实例统一出现在实例中心。
3. 所有本地文件读写类能力都基于“当前激活实例”解析路径。
4. 检测到多个候选 OpenClaw 时,必须弹窗让用户明确选择。
5. 用户可以手动新增、重命名、移除、设为默认本地实例。
6. 高风险操作前能明确显示当前目标实例与路径。
### 体验目标
1. 不允许“静默写错目录”。
2. 不允许“界面切换了实例,后端仍操作旧实例”。
3. 当前激活实例必须在侧边栏、详情页、设置页都可见。
4. 冲突时优先询问用户,不做隐式猜测。
## 设计原则
1. 统一实例抽象,不再区分“本地路径选择”和“实例切换”两套逻辑。
2. 本地实例必须有稳定 ID不能只靠路径字符串临时判断。
3. 路径解析必须收敛到单一入口函数,禁止业务模块自行拼接根目录。
4. 冲突选择必须是显式交互,不能偷偷回退默认目录。
5. Web 模式与桌面模式的数据模型必须一致。
## 数据模型改造
建议将“实例”扩展为统一模型:
```json
{
"activeInstanceId": "local-main",
"instances": [
{
"id": "local-main",
"name": "本机主实例",
"type": "local",
"openclawDir": "C:/Users/user/.openclaw",
"gatewayPort": 18789,
"version": "3.28.0",
"detected": true,
"isDefault": true,
"fingerprint": "sha1:...",
"lastSeenAt": 1774890473
},
{
"id": "local-dev",
"name": "开发实例",
"type": "local",
"openclawDir": "D:/OpenClaw/dev",
"gatewayPort": 28789,
"version": "3.28.0",
"detected": false,
"isDefault": false,
"fingerprint": "sha1:...",
"lastSeenAt": 1774890473
},
{
"id": "remote-xxxx",
"name": "远程节点",
"type": "remote",
"endpoint": "http://192.168.1.8:18789"
}
]
}
```
### 字段说明
1. `id`:稳定实例 ID。
2. `type``local``remote``docker`
3. `openclawDir`:仅本地实例必填。
4. `fingerprint`:用于识别是否是同一个 OpenClaw 实例,避免路径变更后丢失绑定关系。
5. `activeInstanceId`:全局激活实例,不再由单独的 `openclawDir` 决定一切。
## 路径解析内核
### 统一入口
新增统一上下文解析函数:
1. Rust`resolve_active_instance_context()`
2. Node dev-api`resolveActiveInstanceContext()`
返回结构建议为:
```json
{
"id": "local-dev",
"type": "local",
"name": "开发实例",
"openclawDir": "D:/OpenClaw/dev",
"configPath": "D:/OpenClaw/dev/openclaw.json",
"agentsDir": "D:/OpenClaw/dev/agents",
"workspaceDir": "D:/OpenClaw/dev/workspace"
}
```
### 禁止继续直接使用全局根目录
后续所有本地资源读写都应从实例上下文取值,不再在业务代码中直接调用全局默认目录。需要逐步替换以下模式:
1. `openclaw_dir().join("openclaw.json")`
2. `openclaw_dir().join("agents")`
3. `OPENCLAW_DIR + ...`
4. 基于固定 `~/.openclaw` 的路径常量
## 实例发现与冲突检测
### 自动发现来源
建议本地实例发现至少覆盖以下来源:
1. 默认目录:`~/.openclaw`
2. 面板历史记录中的自定义目录
3. 用户手动添加过的目录
4. 最近成功运行 Gateway 的目录
### 判定一个目录是不是有效 OpenClaw
满足以下条件之一即可视为候选实例:
1. 存在 `openclaw.json`
2. 存在 `agents``logs``workspace` 等关键结构
3. 通过读取配置可得到有效 Gateway 配置或版本信息
### 冲突弹窗触发条件
出现以下任一情况时必须弹窗:
1. 启动时发现 2 个及以上本地有效实例,且尚未指定默认实例。
2. 当前默认实例路径不存在,但发现其他可用实例。
3. 用户执行高风险写操作时,当前实例存在歧义。
4. 发现 Bonjour 名称或 Gateway 端口冲突,需要区分具体实例。
## 交互方案
### 1. 启动冲突选择弹窗
当发现多个本地 OpenClaw 时,弹出实例选择框,展示:
1. 实例名称
2. 完整路径
3. OpenClaw 版本
4. Gateway 端口
5. 最近使用时间
6. 配置文件状态
提供按钮:
1. 设为当前实例
2. 设为默认实例
3. 查看详情
4. 手动选择其他目录
### 2. 侧边栏实例切换器增强
当前侧边栏已有实例切换区域,后续应增强为:
1. 本地实例与远程实例分组显示
2. 当前实例显示路径简写
3. 高风险页面顶部显示“当前实例路径”
4. 切换实例后触发全局上下文刷新
### 3. 设置页改造
当前“OpenClaw 安装路径”单输入框应升级为“本地实例管理器”:
1. 列出全部本地实例
2. 支持新增目录
3. 支持校验目录有效性
4. 支持设为默认
5. 支持删除失效记录
## 实施分期
### Phase 1先打通实例上下文内核
目标:所有本地读写命令都能跟随当前实例。
改造项:
1. 定义统一实例模型。
2.`activeInstanceId` 作为全局当前实例标识。
3. 在 Rust 与 dev-api 中新增统一上下文解析函数。
4. Agent、Config、Memory、Skills 先切到新解析层。
### Phase 2补齐实例发现与冲突弹窗
目标:多实例存在时不再隐式写默认目录。
改造项:
1. 启动扫描候选实例。
2. 新增实例冲突弹窗。
3. 新增“记住我的选择”。
4. 启动阶段写入最近使用实例。
### Phase 3统一桌面端与 Web 端实例能力
目标:两套运行模式具有一致的数据模型与行为。
改造项:
1.`instance_*` 能力从仅 Web 实现,补齐到 Tauri 端或抽象成统一后端层。
2. 清理前端 `WEB_ONLY_CMDS` 中与实例管理相关的分支差异。
3. 统一实例切换后的缓存失效与页面刷新策略。
### Phase 4增加保护性提示与审计
目标:降低误操作风险。
改造项:
1. 高风险写操作展示当前实例标识。
2. 写配置前生成实例级备份。
3. 记录最近操作的实例与路径。
## 受影响模块
以下模块需要优先排查和改造:
1. `src-tauri/src/commands/mod.rs`
2. `src-tauri/src/commands/config.rs`
3. `src-tauri/src/commands/agent.rs`
4. `src-tauri/src/commands/memory.rs`
5. `src-tauri/src/commands/skills.rs`
6. `src-tauri/src/commands/messaging.rs`
7. `src-tauri/src/commands/service.rs`
8. `scripts/dev-api.js`
9. `src/lib/tauri-api.js`
10. `src/lib/app-state.js`
11. `src/components/sidebar.js`
12. `src/pages/settings.js`
## 迁移建议
### 配置兼容
旧版本仅有:
```json
{
"openclawDir": "D:/OpenClaw/dev"
}
```
迁移后建议自动转换为:
```json
{
"activeInstanceId": "local-migrated",
"instances": [
{
"id": "local-migrated",
"name": "迁移实例",
"type": "local",
"openclawDir": "D:/OpenClaw/dev",
"isDefault": true
}
]
}
```
### 兼容策略
1. 首次迁移保留旧字段一段时间,只读不再写。
2. 新逻辑优先读取实例模型。
3. 若实例模型缺失,再回退读取旧 `openclawDir`
4. 一旦成功迁移,可在后续版本移除旧字段写入。
## 验收标准
满足以下条件,才算多实例兼容完成:
1. 两个本地 OpenClaw 共存时,用户启动面板会看到明确选择。
2. 切换本地实例后Agent、Config、Skills、Memory、Channels 页面都读写对应实例目录。
3. Tauri 与 Web 模式下,实例切换行为一致。
4. 当前实例信息在 UI 中可见,不存在“我不知道现在在改谁”的状态。
5. 任意高风险写操作都不会静默落到错误目录。
## 明确不建议的方案
以下做法不建议采用:
1. 继续在更多页面增加单独的路径输入框。
2. 只在前端记住当前实例,不改底层路径解析。
3. 发现多个实例时自动猜测“最近修改时间最新的那个”。
4. 仅修补 Agent 页面,不统一 Config、Memory、Skills 等其他模块。
## 建议的下一步落地顺序
1. 先把实例数据模型统一下来。
2. 再实现 Rust 和 dev-api 的上下文解析内核。
3. 然后改 Agent 与 Config 两条主链路做首批验证。
4. 最后补冲突弹窗和设置页实例管理器。
这样可以避免 UI 先做完,底层路径仍然写错的问题再次出现。

View File

@@ -1,114 +0,0 @@
# OpenClaw v2026.4.9 适配计划
> ClawPanel 当前绑定 `2026.3.28`,上游已达 `v2026.4.9`5991 commits
> 本文档列出所有需要适配的功能点,按优先级排列
---
## ✅ 已完成
### 1. version-policy 绑定更新
- `openclaw-version-policy.json` 已更新
- 0.9.x → 3.13, 0.10.x-0.11.2 → 3.28, 0.11.3+ → 4.9
- default fallback 也更新到 4.9
- **向下兼容**:旧面板版本仍绑定旧内核
### 2. 梦境页dreaming.js
- 已有完整 Dream Diary UI日记查看器、分段解析、原始 Markdown
- 已调用 4.9 新 RPC`doctor.memory.dreamDiary`, `backfillDreamDiary`, `resetDreamDiary`, `resetGroundedShortTerm`
- 已有三阶段状态light / deep / rem
- 已有向下兼容:`isUnsupportedError()` 检测,旧版本优雅降级
---
## ✅ P0 — 已完成
### 3. Skills 页增强:接入 Gateway `skills.search` + `skills.detail`
- `ws-client.js` 新增 `skillsSearch()` / `skillsDetail()` 方法
- `skills.js` 商店搜索优先走 Gateway RPC回退 Tauri
- `skills.js` 详情查看优先走 Gateway RPC回退 Tauri
- Web 模式下也可搜索/查看技能详情
---
## ✅ P1 — 已完成
### 4. Sessions Compaction UI会话压缩历史/恢复)
- `ws-client.js` 新增 4 个方法:`sessionsCompactionList/Get/Branch/Restore`
- `chat.js` 会话卡片显示压缩检查点计数徽章⇳N
- 点击弹出检查点列表弹窗时间、token 变化)
- 每个检查点提供“分支”和“恢复”操作,恢复需 confirm
- 旧版本优雅降级:显示“不支持”提示
- i18n 已增加 9 个新 key
### 5. exec/plugin Approval 管理增强
- `ws-client.js` 新增 3 个方法:`execApprovalList/Get`, `pluginApprovalList`
- `communication.js` 审批 Tab 新增“待处理审批队列”面板
- 主动拉取 exec + plugin 审批列表(并行请求)
- Gateway 未连接 / RPC 不支持时优雅降级
- i18n 已增加 6 个新 key
---
## ✅ P2 — 已完成
经审查,以下变更均不涉及 ClawPanel 现有 UI
| 项 | 原因 |
|------|------|
| TTS `talk` 字段迁移 | ClawPanel 无 TTS 配置编辑器 |
| MCP `headers` 新字段 | ClawPanel 无 MCP 服务器配置编辑器(仅 dashboard 显示计数) |
| Provider fallback 新参数 | 内核侧有默认值,面板无需暴露 |
| ACP bindings 校验放宽 | ClawPanel route-map 仅读取显示,无硬编码渠道限制 |
| `operator.talk_secrets` 新权限 | 方法列表为空,暂无实际影响 |
---
## 📡 渠道模块审查channels.js — 无需适配)
**审查范围**:全量 2198 行 `channels.js` + 上游 180 文件 channels diff
| 审查项 | 4.9 变更 | 面板影响 |
|--------|----------|----------|
| Gateway RPC `channels.ts` | `normalizeOptionalString` 内部重构 | 无 — API 无变化 |
| Config schema `zod-schema.agents.ts` | ACP binding 校验放宽 | 无 — 面板不做校验 |
| 渠道插件基础设施 | module-loader/registry/contracts 重构 | 无 — 内核内部 |
| Setup wizard `setup-helpers.ts` | 账号提升逻辑重构 | 无 — 内部迁移 |
| 新渠道类型 | 未新增 | 无 |
| LINE/Matrix/Slack/Teams/Telegram | 内部增强draft streaming/outbound media/status reactions/thread isolation/polling watchdog | 无 — 内核自动生效 |
**结论**`channels.js` 的 18 个 `api.*` 调用均为面板自有后端 API未受上游影响。`wsClient.request('web.login.start/wait')` WhatsApp QR 登录亦无变化。完全兼容 4.9。
## 🔒 安全修复(内核侧,面板无需适配)
- exec 审批绕过修复
- SSRF 硬化(浏览器重定向)
- auth 令牌轮换后旧 WebSocket 失效
- 媒体 base64 大小限制
- 运行时事件信任标记
- 宿主 exec/env 环境变量消毒
---
## 执行状态
```
Phase 1: ✅ version-policy 绑定 4.9
Phase 2: ✅ dreaming 页已有完整 4.9 支持
Phase 3: ✅ Skills Gateway RPC 接入
Phase 4: ✅ Sessions Compaction UI
Phase 5: ✅ Approval 管理增强
Phase 6: ✅ P2 审查完毕,均无需适配
Phase 7: ✅ channels.js 全量审查2198 行 + 上游 180 文件 diff完全兼容 4.9
全部适配工作已完成。Build 通过。
```
## 注意事项
1. **所有新功能必须向下兼容**:用户可能运行 3.13/3.28 内核,新 RPC 调用必须 catch `isUnsupportedError` 并优雅降级
2. **Web 模式适配**:新 RPC 通过 WebSocket 调用Web 模式dev-api.js如需支持需增加转发
3. **i18n**:所有新 UI 文本需同步 zh-CN 和 en 两套翻译

View File

@@ -1,137 +0,0 @@
# ClawPanel 版本维护说明
这份文档面向 ClawPanel 维护者,说明后续如何维护:
- ClawPanel 自身版本号
- OpenClaw 推荐稳定版映射
- 热更新清单 `latest.json`
- 桌面端图标资源
- 本地回归检查
## 一、维护入口速查
- **改 OpenClaw 推荐稳定版**:编辑仓库根目录 `openclaw-version-policy.json`
- **改 ClawPanel 程序版本号**:执行 `npm run version:set 0.x.y`
- **改前端热更新清单**:编辑 `docs/update/latest.json`
- **重生成桌面图标**:执行 `npm run icon:regen`
- **本地回归**:执行 `npm run build``cargo check --manifest-path src-tauri/Cargo.toml`
## 二、如何调整 OpenClaw 推荐稳定版
ClawPanel 现在使用仓库根目录的 `openclaw-version-policy.json` 作为统一版本策略文件。
当前结构示例:
```json
{
"default": {
"official": { "recommended": "2026.3.11" },
"chinese": { "recommended": "2026.3.7-zh.2" }
},
"panels": {
"0.9.0": {
"official": { "recommended": "2026.3.11" },
"chinese": { "recommended": "2026.3.7-zh.2" }
}
}
}
```
维护建议:
1. **默认推荐版**:改 `default`
2. **某个面板版本的推荐版**:改 `panels.<panel_version>`
3. 如果新面板版本需要绑定独立推荐版,新增一个新的 `panels.<new_version>` 节点
4. 如果没有单独配置某个面板版本,会回退到 `default`
改完这个文件后Rust 后端和 Web dev 后端都会读取同一份策略,前端各页面也会自动显示新的推荐版本和风险提示。
## 三、如何调整 ClawPanel 程序版本号
ClawPanel 现在以 `package.json` 作为主版本源,并通过脚本同步到其他文件。
当前 `0.11.0` 起,版本同步脚本也会一并维护 `package-lock.json`,避免 npm 锁文件版本与程序版本漂移。
推荐用法:
```bash
npm run version:set 0.9.1
```
这条命令会同步以下文件:
- `package.json`
- `package-lock.json`
- `src-tauri/tauri.conf.json`
- `src-tauri/Cargo.toml`
- `docs/index.html`
如果你只是想重新同步,不改版本号,也可以执行:
```bash
npm run version:sync
```
## 四、什么时候需要更新 `docs/update/latest.json`
`docs/update/latest.json` 用于桌面端前端热更新提示。
常见维护规则:
1. 发布了新的前端热更新包后,需要同步更新:
- `version`
- `minAppVersion`
- `url`
- `hash`
- `releasedAt`
2. 如果 `latest.json` 落后于当前程序版本ClawPanel 现在**不会再误报有更新**,但用户也看不到最新发布提示,所以仍然建议及时维护
3. 如果热更新资源还没准备好,不要提前把 `latest.json.version` 指到新版本
## 五、如何重生成桌面图标
ClawPanel 桌面端图标源现在使用 `docs/logo.png`
重生成命令:
```bash
npm run icon:regen
```
它会重生成 `src-tauri/icons` 下的一整套图标资源,包括:
- `icon.icns`
- `icon.ico`
- `32x32.png`
- `128x128.png`
- 其他平台尺寸图标
如果后续只更新 Logo重新执行一次即可不需要手动逐个改图标文件。
## 六、本地回归检查建议
每次维护版本策略、程序版本号、热更新清单或桌面图标后,至少执行:
```bash
npm run build
cargo check --manifest-path src-tauri/Cargo.toml
```
如果本次改动涉及安装/检测链路,建议额外确认:
- Windows 下自定义 Node 路径后CLI 状态能立即刷新
- “关于”页 / “服务管理”页能正确显示推荐稳定版
- 本地版本高于推荐版时,风险提示仍然正确
-`docs/update/latest.json` 版本低于本地版本时,不会再误弹更新提示
## 七、推荐维护顺序
推荐按下面顺序维护:
1. 确认本次要发布的 ClawPanel 版本
2. 执行 `npm run version:set x.y.z`
3. 如有必要,更新 `openclaw-version-policy.json`
4. 重新构建前端 / 检查 Rust 编译
5. 如桌面图标有调整,执行 `npm run icon:regen`
6. 如有前端热更新包,最后再更新 `docs/update/latest.json`
这样可以最大限度避免版本号、推荐版映射和更新清单不一致。

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "clawpanel",
"version": "0.12.0",
"version": "0.13.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "clawpanel",
"version": "0.12.0",
"version": "0.13.0",
"license": "AGPL-3.0",
"dependencies": {
"@tauri-apps/api": "^2.5.0",

View File

@@ -1,6 +1,6 @@
{
"name": "clawpanel",
"version": "0.12.0",
"version": "0.13.0",
"private": true,
"description": "ClawPanel - OpenClaw 可视化管理面板,基于 Tauri v2 的跨平台桌面应用",
"type": "module",

View File

@@ -1,6 +1,6 @@
[package]
name = "clawpanel"
version = "0.12.0"
version = "0.13.0"
edition = "2021"
description = "ClawPanel - OpenClaw 可视化管理面板"
authors = ["qingchencloud"]
@@ -33,5 +33,9 @@ urlencoding = "2"
regex = "1"
tokio = { version = "1", features = ["process", "time"] }
[target.'cfg(unix)'.dependencies]
flate2 = "1"
tar = "0.4"
[target.'cfg(any(target_os = "macos", windows, target_os = "linux"))'.dependencies]
tauri-plugin-autostart = "2"

View File

@@ -1,7 +1,7 @@
{
"$schema": "https://raw.githubusercontent.com/tauri-apps/tauri/dev/crates/tauri-config-schema/schema.json",
"productName": "ClawPanel",
"version": "0.12.0",
"version": "0.13.0",
"identifier": "ai.openclaw.clawpanel",
"build": {
"frontendDist": "../dist",