Looking for English? Start here: Open the English README

把 OpenClaw 从黑箱变成一个看得清、信得过、控得住的本地控制中心。
语言: English | 中文
总览:系统状态、待处理事项、关键风险和运营摘要用量:用量、花费、订阅窗口和连接状态员工:谁真的在工作,谁只是排队待命协作:一个 hall-first 的多 agent 工作群,可以在同一条线程里讨论、排顺序、交接、评审任务:当前任务、审批、执行链和运行证据文档 与 记忆:按活跃 OpenClaw agent 范围展示的源文件工作台协作:新增 hall-first 的独立 协作 页面,任务可以先在共享时间线里讨论、再收口到执行 owner,而不是只靠父子会话去猜任务怎么推进。协作:hall 里的讨论、指派和交接现在可以走真实 openclaw agent 运行时,草稿流和最终落地消息都会回到同一条线程。协作:hall 现在直接使用你当前 OpenClaw roster 里的 agent id 和显示名;已有用户不需要把 agent 改名成任何 control-center 私有名字就能接入。设置:新增 接线状态,直接告诉你哪些数据已经接好、哪些还差一步,以及该去哪里补。设置:新增 安全风险摘要,把当前风险、影响和下一步建议翻译成人话。设置:新增 更新状态,直接看当前版本、最新版本、更新通道和安装方式。用量:新增 上下文压力,直接看哪些会话更接近上下文上限,哪里可能变慢或变贵。记忆:新增 记忆状态,直接看每个智能体的记忆是否可用、可搜索、需不需要检查。以下截图来自一个本地 OpenClaw 环境:
|
|
| Token 消耗归因 直接看定时任务 token 是被哪些任务吃掉的,占比一眼可见。 | 员工页 直接看谁在工作、谁待命、最近产出和排班状态。 |
|
|
| 协作页 直接看多 agent 在同一条线程里讨论、拍板、执行、交接和评审,而不是把协作关系藏在不同会话里。 | 安全与更新状态 直接看当前风险、影响、下一步建议,以及当前版本和最新版本。 |
pandas、coq、monkey 这类 control-center 示例名,直接接入即可。manager、planner、builder、qa 之类信号,会优先用这些信号,否则会平滑降级,不会因为名字不匹配而卡住。surface、workspaceRoot、workdir、关键入口文件和 artifact 引用一起传给 agent,让 repo-aware 的任务尽量获得和其他渠道一致的执行上下文。讨论中。@ 某个人,hall 会尽量先收两条短回复,让第二个人承接第一人的上下文补缺口,而不是重写一遍。安排后续顺序 来决定谁先做、后面谁接、每一步交接给谁。开始执行(...)。@ 下一位交棒。继续讨论 回到讨论态,再排下一轮顺序,然后从同一条线程继续开始。npm install
cp .env.example .env
npm run build
npm test
npm run smoke:ui
npm run smoke:hall
npm run dev:ui
然后打开:
- http://127.0.0.1:4310/?section=overview&lang=zh
- http://127.0.0.1:4310/?section=overview&lang=en
说明:
- 推荐用 npm run dev:ui 启动界面;它比 UI_MODE=true npm run dev 更稳,尤其是 Windows shell。
- npm run dev 只会执行一次 monitor,不会启动 HTTP UI。
OpenClaw 现在整体正常吗?工作区未写明职责,优先看 FAQ 与最佳实践 的第 1 条。@下一位,最后才评审。openclaw.json 里的活跃 agent,不会把已删除 agent 继续显示出来。接线状态、安全风险摘要 和 更新状态 三张关键卡片。control-center/ 目录内的文件READONLY_MODE=trueLOCAL_TOKEN_AUTH_REQUIRED=trueIMPORT_MUTATION_ENABLED=falseIMPORT_MUTATION_DRY_RUN=falseAPPROVAL_ACTIONS_ENABLED=falseAPPROVAL_ACTIONS_DRY_RUN=true~/.openclaw/openclaw.jsonnpm installcp .env.example .envGATEWAY_URL 或路径覆盖项npm run buildnpm testnpm run smoke:uinpm run smoke:hallnpm run dev:ui你最好已经有:
- 一个可用的 OpenClaw 安装
- 一个可连接的 OpenClaw Gateway
- 当前机器上的 node 和 npm
- 对 OpenClaw 主目录的读取权限
如果你希望 用量 / 订阅 信息更完整,当前机器最好还能读到:
- ~/.openclaw
- ~/.codex
- OpenClaw 订阅快照文件,尤其是它不在默认位置时
git clone https://github.com/TianyiDataScience/openclaw-control-center.git
cd openclaw-control-center
npm install
cp .env.example .env
如果 OpenClaw 说“仓库缺少 src/runtime”或“缺少核心源码”,先不要改代码。这个仓库的标准结构本来就包含:
- package.json
- src/runtime
- src/ui
- .env.example
这类报错通常意味着:
- 当前目录不是 openclaw-control-center 仓库根目录
- clone 到了错误仓库
- checkout / 下载不完整
- agent 在错误 workspace 里执行
最推荐的接入方式,不是你手动一项项配,而是直接把下面这段安装指令交给你自己的 OpenClaw。
如果你想直接复制独立文件,用这个: - INSTALL_PROMPT.md - INSTALL_PROMPT.en.md
它应该一次性帮你做完这些事:
- 检查本机 OpenClaw / Gateway / 路径
- 安装依赖
- 创建或修正 .env
- 保持安全默认值
- 跑 build / test / smoke
- 告诉你最后该执行什么命令、该看哪些页面
这段安装指令已经考虑了这些常见情况:
- 用户没有 GPT / Codex 订阅,或者没有可读的订阅快照
- 用户的 OpenClaw 底层不是订阅,而是 API key / 其他 provider(例如 OpenAI API、Anthropic、OpenRouter 等)
- ~/.openclaw、~/.codex、Gateway 地址、端口都不是默认值
- 一台机器上存在多套 OpenClaw home、多个可能的 Gateway,或者当前项目不是默认 workspace
- 机器上的活跃 agent 名单和本仓库示例完全不同
- 机器当前只能本地构建,暂时还接不上 live Gateway
- 机器缺少 node / npm、没有 npm registry 网络、或者仓库目录没有写权限
- 某些数据源缺失,但控制中心仍然应该先以“安全只读”方式跑起来
直接把下面整段原样交给 OpenClaw:
你现在要帮我把 OpenClaw Control Center 安装并接到这台机器自己的 OpenClaw 环境上。
你的目标不是解释原理,而是直接完成一次安全的首次接入。
严格约束:
1. 只允许在 control-center 仓库里工作。
2. 除非我明确要求,否则不要修改应用源码。
3. 不要修改 OpenClaw 自己的配置文件。
4. 不要开启 live import,不要开启 approval mutation。
5. 所有高风险写操作保持关闭。
6. 不要假设这台机器使用默认 agent 名称、默认路径、默认订阅方式,必须以实际探测结果为准。
7. 不要把“缺少订阅数据 / 缺少 Codex 数据 / 缺少账单快照”当成安装失败;只要 UI 能安全跑起来,就应当继续并明确哪些面板会降级。
8. 不要伪造、生成、改写任何 provider API key、token、cookie 或外部凭证;如果 OpenClaw 本身缺少这些前置条件,只能报告,不要替用户猜。
请按这个顺序执行:
第一阶段:确认环境
1. 检查 OpenClaw Gateway 是否可达,并确认正确的 `GATEWAY_URL`。
2. 确认这台机器上正确的 `OPENCLAW_HOME` 和 `CODEX_HOME`。
3. 如果订阅或账单快照文件不在默认位置,找到正确的 `OPENCLAW_SUBSCRIPTION_SNAPSHOT_PATH`。
4. 确认这台机器上有哪些前提是真正存在的,哪些是缺失但允许降级的。
5. 如果机器上存在多个候选 `OPENCLAW_HOME`、多个可能的 Gateway,或多个 workspace,不要猜。
6. 如果缺少会导致“完全无法启动控制中心”的必要条件,直接停止并明确告诉我缺什么。
7. 如果缺少的只是增强型数据源,不要停止安装;继续并把这些项标记为“安装可继续,但相关页面会部分缺失”。
8. 不要假设任何固定 agent 名称。若 `openclaw.json` 可读,就以它为准。
第二阶段:安装项目
9. 确认当前目录是 control-center 仓库根目录。如果还没有 clone,先执行:`git clone https://github.com/TianyiDataScience/openclaw-control-center.git`
10. 先确认仓库本体完整。
11. 如果缺少 `src/runtime`、`src/ui` 或 `package.json`,不要继续安装,重新 clone:`https://github.com/TianyiDataScience/openclaw-control-center.git`。
12. 运行依赖安装。
13. 如果 `.env` 不存在,就从 `.env.example` 创建;如果存在,就在保留安全默认值的前提下修正它。
第三阶段:配置安全首次接入
14. 保持这些值:
- READONLY_MODE=true
- LOCAL_TOKEN_AUTH_REQUIRED=true
- APPROVAL_ACTIONS_ENABLED=false
- APPROVAL_ACTIONS_DRY_RUN=true
- IMPORT_MUTATION_ENABLED=false
- IMPORT_MUTATION_DRY_RUN=false
- UI_MODE=false
15. 只有在本机环境确实不同的时候,才修改:
- GATEWAY_URL
- OPENCLAW_HOME
- CODEX_HOME
- OPENCLAW_SUBSCRIPTION_SNAPSHOT_PATH
- UI_PORT
16. 如果 `CODEX_HOME` 不存在,或者这台机器根本没有 Codex / GPT 订阅数据,不要强行填假路径;保留为空,并在结果里明确说明“Usage / Subscription 将部分可见或不可见”。
第四阶段:验证安装
17. 运行:
- npm run build
- npm test
- npm run smoke:ui
18. 如果有任何一步失败,停止并告诉我:
- 哪一步失败了
- 原因是什么
- 我下一步该怎么修
19. 如果 build / test / smoke 通过,但 live Gateway 仍不可达,也不要把这次接入判定为失败;要把结果归类为“本地 UI 已可用,但 live 观测尚未接通”。
第五阶段:交付可启动结果
20. 如果验证通过,输出:
- 你实际修改了哪些 env 值
- 最终 `.env` 中哪些值沿用了默认值
- 我下一步启动 UI 的准确命令
- 我应该先打开的 3 个页面
- 哪些信号如果为空,属于“正常但未接线完全”
- 哪些能力现在已经可用
- 哪些能力因为当前机器没有相关数据源而处于降级状态
- 如果我以后补上订阅 / Codex / Gateway,只需要补哪几个 env 或前置条件
.gitignore、LICENSE 和可发布的 package 元数据。GATEWAY_URL 可配置,不再绑定单一本地 socket。~/.openclaw/... 路径,不包含机器私有 home 目录。npm run release:audit。$ claude mcp add openclaw-control-center \
-- python -m otcore.mcp_server <graph>