docs: add v0.9 roadmap + update latest.json to 0.8.2

This commit is contained in:
晴天
2026-03-13 00:33:59 +08:00
parent 4f9ffe9e5f
commit f1d5d2da12
2 changed files with 76 additions and 2 deletions

74
docs/ROADMAP-v0.9.md Normal file
View File

@@ -0,0 +1,74 @@
# ClawPanel v0.9.0 规划
## 命令执行权限管理 (Issue #55)
### 需求
AI 助手执行终端命令时,允许用户配置白名单/黑名单规则,控制哪些命令可以执行。
### 规则类型
| 类型 | 示例 | 说明 |
|------|------|------|
| 精确匹配 | `go run main.go` | 只允许/禁止这一条完整命令 |
| 前缀通配 | `go *` | 允许/禁止所有 go 开头的命令 |
| 全局 | `*` | 允许/禁止所有命令 |
### 配置模式
- **确认模式**(默认)— 每条命令都弹窗确认
- **白名单模式** — 匹配白名单的命令自动执行,其余弹窗确认
- **黑名单模式** — 匹配黑名单的命令直接拒绝,其余弹窗确认
- **无限模式** — 所有命令自动执行(当前已有的 unlimited 模式)
### 存储位置
`~/.openclaw/clawpanel.json``commandRules` 字段:
```json
{
"commandRules": {
"mode": "whitelist",
"rules": [
{ "pattern": "go run *", "action": "allow" },
{ "pattern": "npm *", "action": "allow" },
{ "pattern": "rm -rf /", "action": "deny" },
{ "pattern": "git *", "action": "allow" }
]
}
}
```
### 实现方案
1. **设置页面 UI** — 安全设置页面新增「命令规则」区域
- 规则列表(增删改)
- 模式切换(确认/白名单/黑名单/无限)
- 预设模板(开发者常用、安全最小权限等)
2. **存储** — 读写 `clawpanel.json``commandRules`
3. **拦截逻辑**`assistant.js``assistant_exec` 调用前
- 解析命令字符串
- 按规则列表逐条匹配(支持 glob 通配符)
- 匹配到 allow → 自动执行
- 匹配到 deny → 直接拒绝并提示
- 无匹配 → 按模式决定(弹窗确认或拒绝)
4. **Rust 后端**`assistant_exec` 命令增加规则检查
-`clawpanel.json` 读取规则
- glob 匹配逻辑
- 返回 `{ allowed: bool, rule: string }` 给前端
### 优先级
中等。当前 AI 助手已有 4 种模式(聊天/规划/执行/无限),命令规则是对「执行」模式的细化增强。
---
## 其他待规划功能
- [ ] 消息渠道:渠道级别的消息统计(收发量、响应时间)
- [ ] 模型配置:支持更多服务商预设(硅基流动、智谱、百川、通义千问等国内模型)
- [ ] Docker 桌面版Rust 原生 Docker APIbollard crate替代 Node.js 后端
- [ ] 前端热更新增量包:只下载变更文件,减小更新包体积
- [ ] 多语言支持i18n 框架(中/英双语)

View File

@@ -1,9 +1,9 @@
{
"version": "0.8.2",
"minAppVersion": "0.8.2",
"minAppVersion": "0.8.0",
"hash": "sha256:79629912a4eb05cca161ba720d8fd8b8638c80f62084a7b190af8343dd4c6326",
"url": "https://github.com/qingchencloud/clawpanel/releases/download/v0.8.2/web-0.8.2.zip",
"size": 1990153,
"changelog": "",
"changelog": "15项修复 + 4项新功能/v1拼接修复、SSH升级、飞书双插件、Linux sudo、渠道操作秒响应等",
"releasedAt": "2026-03-12T16:16:27Z"
}