Commit Graph

87 Commits

Author SHA1 Message Date
晴天
7eb78ea186 修复:macOS Gateway 启动失败 Bootstrap failed: 5 (v0.4.8)
根因: plist 二进制路径过期(nvm/fnm 切版本后),launchctl 找不到程序
修复: launchctl bootstrap/kickstart 失败时回退到 CLI 直接 spawn Gateway
覆盖: start_service_impl + restart_service_impl 均有 fallback
v0.4.8
2026-03-06 00:25:01 +08:00
晴天
fe66fe0e73 发布 v0.4.7:修复 fnm 检测 + Release Notes 生成
修复:
- fnm 用户 Node.js 检测失败(扫描 FNM_DIR/node-versions)
- Release Notes 中文 commit grep 失败(|| true 兜底)
v0.4.7
2026-03-06 00:04:45 +08:00
晴天
d7d403e8a0 修复:fnm 用户 Node.js 检测 + Release Notes 生成失败
fnm 修复:
- 移除错误的 ~/.fnm/current/bin 路径
- macOS/Linux: 扫描  或 ~/.local/share/fnm/node-versions/*/installation/bin
- Windows: 扫描 %FNM_DIR% 或 %APPDATA%\fnm\node-versions\*\installation

release.yml 修复:
- grep 无匹配时返回 exit 1,GitHub Actions pipefail 导致脚本终止
- 用 { grep ... || true; } 包裹,中文 commit message 不再触发失败
2026-03-06 00:00:26 +08:00
晴天
b4e959ec99 紧急修复:mode 字段位置错误导致 Gateway 无法启动 (v0.4.6)
根因:openclaw.json 的 mode 属于 gateway 对象内部,不是顶层字段。
OpenClaw zod-schema 对顶层 mode 报 Unrecognized key 错误。

修复:
- config.rs init_openclaw_config: mode 移入 gateway 对象
- dev-api.js init_openclaw_config: 同上
- dashboard.js 自愈: config.mode → config.gateway.mode
- dashboard.js 自愈: 自动删除旧版错误的顶层 mode 字段
- setup.js 安装流程: config.mode → config.gateway.mode
v0.4.6
2026-03-05 23:41:55 +08:00
晴天
8ba25a25e0 发布 v0.4.5:修复 nvm 兼容性 + 自动初始化配置
修复:
- nvm 用户 Node.js/CLI 检测失败(扫描 nvm 版本目录)
- Tauri v2 参数名 snake_case → camelCase 不匹配
- Windows CLI 检测遗漏(增加 PATH 兜底)
- Agent/记忆文件页面晦涩 os error 2 → 中文提示
- cargo fmt + clippy 修复

新增:
- 初始设置自动创建配置文件 + 一键初始化按钮
- ClawPanel Web 版部署文档 + 文档中心
v0.4.5
2026-03-05 23:25:34 +08:00
晴天
e99479fbeb 修复:记忆文件页面 openclaw 找不到时的友好错误提示
memory.rs 的 agent_workspace() 也调用 openclaw CLI,
同样需要处理 NotFound 错误,显示中文提示而非 os error 2
2026-03-05 23:20:39 +08:00
晴天
ac5f6157ef 优化:Agent 管理页面 openclaw 找不到时显示友好错误提示
将 'No such file or directory (os error 2)' 替换为中文提示:
'OpenClaw CLI 未找到,请确认已安装并重启 ClawPanel'
涉及 list_agents、add_agent、delete_agent 三个命令
2026-03-05 23:19:12 +08:00
晴天
ef3ae03546 修复:nvm 用户 Node.js/CLI 检测失败的问题
Bug1: check_node_at_path 参数名不匹配(snake_case vs camelCase)
- Tauri v2 默认期望 camelCase,前端发送的 node_dir 改为 nodeDir
- 同步修复 save_custom_node_path 和所有 memory 函数的 agent_id → agentId

Bug2: Windows 上 OpenClaw CLI 已安装但检测显示 
- is_cli_installed() 仅检查 %APPDATA%\npm\openclaw.cmd
- 增加 PATH 查找兜底,兼容 nvm、自定义 prefix 等安装方式

增强: enhanced_path() 扫描 nvm 版本目录
- macOS/Linux: 扫描 ~/.nvm/versions/node/*/bin
- Windows: 扫描 %APPDATA%\nvm\* 和 %NVM_HOME%\*
2026-03-05 23:16:44 +08:00
晴天
bb2c6df8ec 优化:初始设置页面自动创建默认配置文件
当检测到 OpenClaw CLI 已安装但 openclaw.json 不存在时:
1. 自动创建包含合理默认值的配置文件(mode:local, tools:full 等)
2. 如果自动创建失败,显示「一键初始化配置」按钮供手动操作
3. 新增 init_openclaw_config API(dev-api.js + Tauri Rust 后端)
4. 用户不再需要去终端手动执行 openclaw configure
2026-03-05 23:14:13 +08:00
晴天
b709b70839 fix: rewrite deploy docs to be about ClawPanel Web版 (not OpenClaw)
ClawPanel is the management tool - the docs should be about deploying
ClawPanel itself on Linux/Docker, not OpenClaw Gateway.

- Rewrite linux-deploy.md: ClawPanel Web版 Linux deployment guide
- Rewrite docker-deploy.md: ClawPanel Web版 Docker deployment guide
- Rewrite linux-deploy.sh: one-click script deploys ClawPanel Web + OpenClaw
- Update README deploy sections with correct descriptions and commands
- Update index.html deploy section and docs center card descriptions
- Port changed from 18789 (Gateway) to 1420 (ClawPanel Web)
2026-03-05 23:10:46 +08:00
晴天
05c5876090 feat: add Docs Center section with markdown reader to official website
- 4 doc cards: Linux Deploy, Docker Deploy, README, Changelog
- Click to open inline markdown reader (fetches from GitHub raw)
- marked.js lazy-loaded on first doc open
- Spotlight hover effect on doc cards
- Keyboard ESC to close reader
- Nav links updated with '文档' in desktop + mobile menus
2026-03-05 23:07:00 +08:00
晴天
6c2ad384ef fix: update deploy section tip to focus on ClawPanel as management tool 2026-03-05 23:05:42 +08:00
晴天
9c16f971ee docs: add Deploy Guides section to official website
- New 'Deploy Guides' section on index.html with Linux one-liner and Docker commands
- Terminal-style cards with copy-paste commands
- Links to full linux-deploy.md and docker-deploy.md guides
- Added '部署' nav link in both desktop and mobile menus
- CSS styles for deploy cards
2026-03-05 23:02:18 +08:00
晴天
9efea81caf docs: add Docker deployment guide + cross-links
- docs/docker-deploy.md: comprehensive Docker guide covering quick start, Compose, Dockerfile, model config (DeepSeek/OpenAI/Claude/Ollama), Nginx reverse proxy, multi-instance, troubleshooting
- README.md: add Docker deployment section
- docs/linux-deploy.md: cross-link to Docker guide
2026-03-05 23:00:28 +08:00
晴天
0fabb803d4 docs: add Linux server deployment guide + one-click deploy script
- docs/linux-deploy.md: comprehensive guide covering Node.js install, OpenClaw setup, systemd/PM2/Docker, Nginx reverse proxy, firewall, troubleshooting
- scripts/linux-deploy.sh: one-click deploy script with auto OS detection
- README.md: add Linux server section with curl one-liner
2026-03-05 22:59:10 +08:00
晴天
cb5cbe2f71 feat: Agent tools permission config UI + auto-heal (v0.4.4)
- Gateway config page: add tools profile selector (full/limited/none)
- Gateway config page: add session visibility selector (all/own/none)
- Auto-heal: setup + dashboard auto-set tools.profile:full on install/load
- Fixes OpenClaw 2026.3.2 breaking change that disabled tools by default
v0.4.4
2026-03-05 22:40:02 +08:00
晴天
aae531a7bd bump: v0.4.3 - auto-set mode:local + Gateway self-heal v0.4.3 2026-03-05 22:35:09 +08:00
晴天
46928e798c fix: auto-set mode:local after Gateway install + dashboard self-heal
- Setup flow: write mode:'local' to openclaw.json after Gateway install
- Dashboard: auto-heal missing mode field on load for existing users
2026-03-05 22:34:07 +08:00
晴天
6ca4267970 feat: Node.js path scanning + manual path input + git HTTPS auto-fix (v0.4.2)
- Add scan_node_paths: auto-scan C/D/E/F/G drives for Node.js installations
- Add check_node_at_path: verify Node.js at user-specified directory
- Add save_custom_node_path: persist custom path to ~/.openclaw/clawpanel.json
- enhanced_path() now loads saved custom path and applies to all commands
- Windows enhanced_path: scan Program Files, LOCALAPPDATA, APPDATA, common drives
- Auto git config HTTPS-instead-of-SSH before npm install (fixes exit 128)
- Setup page: auto-scan button + manual path input when Node.js not detected
- Error diagnosis: add EPERM, MODULE_NOT_FOUND, SSH publickey patterns
- README: expanded troubleshooting section
v0.4.2
2026-03-05 22:30:19 +08:00
晴天
b1b95e5a11 fix: macOS PATH detection + npm install error diagnosis (v0.4.1)
- Fix macOS Node.js/npm/openclaw detection by adding enhanced_path() with common install locations (/usr/local/bin, /opt/homebrew/bin, ~/.nvm, ~/.volta, etc.)
- Add npm install error diagnosis: auto-detect git missing (exit 128), ENOENT, permission denied, network errors, cache corruption
- Show macOS-specific hint when Node.js detection fails in setup page
- Add shared error-diagnosis.js module used by both setup and services pages
- Add troubleshooting section to README.md
- Bump version to 0.4.1
v0.4.1
2026-03-05 22:21:11 +08:00
晴天
afb9f8ebe5 fix: cargo fmt + update docs version to 0.4.0 v0.4.0 2026-03-05 20:57:21 +08:00
晴天
79cd15e1c4 v0.4.0: Gateway 进程守护、配置自愈、双配置同步、流式超时、模型删除安全切换 2026-03-05 20:44:47 +08:00
晴天
d27d5cc8af docs: add macOS xattr quarantine fix command to README and release notes 2026-03-04 23:48:53 +08:00
晴天
e0f0d2ef27 seo: comprehensive SEO optimization with structured data, OG/Twitter cards, extensive keywords 2026-03-04 23:32:04 +08:00
晴天
e75a5a9a49 feat: add aurora background, noise texture, scroll progress, mouse parallax, magnetic buttons, 3D tilt, shimmer text, animated screenshot border 2026-03-04 23:26:44 +08:00
晴天
1cfd3ffb5c chore: replace openclaw repo links with Chinese translation fork v0.3.0 2026-03-04 23:10:50 +08:00
晴天
63953782fd fix: resolve YAML indentation errors in release.yml workflow 2026-03-04 23:05:30 +08:00
晴天
ffa9daffc3 chore: release v0.3.0 2026-03-04 22:55:48 +08:00
晴天
77953af3b7 docs: add community section with QR codes and links to README.md 2026-03-04 22:50:02 +08:00
晴天
c21679e867 feat: replace community emoji icons with QR code images for QQ and WeChat groups 2026-03-04 22:48:44 +08:00
晴天
3bcb5f7baa feat: rewrite GitHub Pages with zero CDN deps, community section, enhanced effects 2026-03-04 22:09:23 +08:00
晴天
3605f192ec feat: integrate 10 demo screenshots into GitHub Pages and README 2026-03-04 21:53:53 +08:00
晴天
373fc37f92 fix: limit auto-pair to 1 attempt to prevent infinite loop, add button feedback on diagnostics page 2026-03-04 21:28:06 +08:00
晴天
3886aafc00 feat: gateway auth supports token/password mode switching; fix ClawApp description 2026-03-04 21:20:18 +08:00
晴天
ea251002c8 fix: auto-repair origin not allowed in connect handshake + cleanup duplicate listeners 2026-03-04 21:16:41 +08:00
晴天
35143b52e4 fix: use local logo.png and fix light mode button text visibility 2026-03-04 20:59:43 +08:00
晴天
d4e51c7e78 docs: redesign Pages landing page with premium SaaS visual effects 2026-03-04 20:55:15 +08:00
晴天
a6e1f40a59 feat: image rendering, sidebar toggle, contribute section; fix: private repo update check; bump v0.2.1 v0.2.1 2026-03-04 20:47:00 +08:00
晴天
59c84b5eaf ci: improve release notes with categorized changelog, clickable downloads, first-use guide v0.2.0 2026-03-04 18:56:48 +08:00
晴天
73ca2ba88e style: cargo fmt 2026-03-04 18:23:35 +08:00
晴天
3b81a193bb fix: wsClient.close→disconnect, model vision input, memory leaks; feat: loading skeletons, panel update check; bump v0.2.0 2026-03-04 18:07:12 +08:00
晴天
57ad84fcd3 fix: 聊天附件图片 AI 看不到的问题
根本原因分析(对比上游源码):
1. fileToBase64 用 split(',')[1] 在边缘情况不如 regex 健壮,
   改为 /^data:[^;]+;base64,(.+)\$/ 精确提取(匹配 upstream)
2. updateSendState 只判断文本,有附件无文本时发送按钮禁用,
   改为 !text && !attachments.length 联合判断
3. renderAttachments 没有调用 updateSendState,添加附件后
   按钮状态不更新,修复:末尾调用 updateSendState()
4. 无粘贴图片支持:新增 handlePaste,Ctrl+V 直接粘贴图片
2026-03-04 15:44:51 +08:00
晴天
317cda70c2 fix: pairing required(metadata-upgrade) + agents 骨架屏
pairing.rs:
- platform 改用 std::env::consts::OS (windows/macos/linux),
  新增 deviceFamily=desktop,与 device.rs connect frame 保持一致
- 已配对设备若 platform 字段不匹配,自动覆盖更新,避免 Gateway
  因 metadata-upgrade 拒绝静默自动配对

agents.js + components.css:
- loadAgents 调用前先渲染 3 条骨架屏占位,消除空白等待期
- 添加 .skeleton 闪光动画样式
2026-03-04 15:13:27 +08:00
晴天
7f2f6db842 fix: 消除 Win 闪终端 + 替换慢 CLI 操作为直接进程管理
闪终端修复:
- extensions.rs: 提取 cftunnel_cmd() 助手,Windows 自动加
  CREATE_NO_WINDOW;get_cftunnel_status/action/logs 全部改用

CLI 替换:
- config.rs reload_gateway / restart_gateway: Windows/Linux 改调
  service::restart_service(),删除慢 openclaw gateway restart CLI 调用
- config.rs uninstall_gateway: Windows 改用直接 taskkill,
  Linux 改用 pkill,不再调用 openclaw gateway stop CLI
2026-03-04 14:56:49 +08:00
晴天
73d7d6e7f5 fix: 修复 pairing required - 改用 openclaw-control-ui 客户端 ID 触发静默自动配对
上游源码分析发现根本原因:
- Gateway 的 shouldAllowSilentLocalPairing 需要 isControlUi=true
  才能在本地连接时静默自动批准设备配对
- 我们之前用 gateway-client+backend,isControlUi=false,加上
  Tauri WebView 会发 Origin 头(hasBrowserOriginHeader=true),
  导致 shouldAllowSilentLocalPairing 返回 false → 'pairing required'

修复内容:
- device.rs: client.id 改为 openclaw-control-ui,mode 改为 ui,
  v3 签名 payload 同步更新,本地连接触发静默自动配对
- pairing.rs: paired.json 的 clientId/clientMode 同步更新
- main.js: 启动时自动调用 autoPairDevice(),确保 device 已配对
  + allowedOrigins 已写入,无需用户手动点击一键修复
2026-03-04 14:39:48 +08:00
晴天
7a05625aee fix: patch_gateway_origins 移至 paired 检查前,修复已配对设备跳过写入 origins 的 bug 2026-03-04 14:09:45 +08:00
晴天
8ced48be4c style: cargo fmt 格式化 pairing.rs 2026-03-04 13:39:42 +08:00
晴天
7c34f7919d fix: 修复系统诊断页面一键修复配对,解决 origin not allowed 握手失败
根本原因:Gateway WebSocket 服务检查 HTTP Origin 头,Tauri 应用的
origin (tauri://localhost / https://tauri.localhost) 不在
gateway.controlUi.allowedOrigins 白名单,导致 code 1008 拒绝握手。

修复内容:
- pairing.rs: auto_pair_device 新增 patch_gateway_origins(),在写入
  paired.json 的同时将 tauri://localhost 和 https://tauri.localhost
  写入 openclaw.json gateway.controlUi.allowedOrigins
- chat-debug.js: fixPairing 流程补充 origins 写入提示;success 后
  触发主 wsClient.reconnect() 让主界面恢复正常;修复诊断建议去除
  重复条件,合并 origin/端口 两种可能原因
- chat-debug.js: testWebSocket 1008 关闭时给出明确原因和解决方法
- ws-client.js: onclose 1008 时自动触发 _autoPairAndReconnect()
  而非普通重连,实现主应用自愈
2026-03-04 13:25:20 +08:00
晴天
590f943e7b fix: macOS 上 openclaw_command import 加 cfg 条件编译,消除 unused_imports 2026-03-04 12:54:42 +08:00
晴天
66799ee2c4 fix: 修复 macOS 专属 Clippy 错误
- service.rs: macOS 平台两处 manual_strip,改用 strip_prefix
- utils.rs: openclaw_command 在 macOS 未被调用,加 #[allow(dead_code)],函数体改用全路径 std::process::Command::new 避免 unused_imports
2026-03-04 12:49:56 +08:00