원클릭으로
rabiroute-webgui-build
RabiRoute WebGUI 构建、打包和开发注意事项,包括常见报错的排查与修复。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
RabiRoute WebGUI 构建、打包和开发注意事项,包括常见报错的排查与修复。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
审计并修复 RabiRoute 公共文档在本机、远端 RabiLink WebGUI 和仓库浏览三种入口中的可用性。用于新增或修改 API、报告或下载文档,处理远端链接 404,补可复制的 TTS/ASR 示例,检查中英双语同步,或发布前核对源码与部署产物一致性。
运行或更新 RabiSpeech 本机语音模型闭环基准。用于新增、替换或比较本地 TTS / ASR 模型,测试首请求、加载、预热、热态耗时、RTF、显存、波形和 CER,并从统一公开语料生成 JSON、CSV 及 RibiWebGUI 内可查看的 HTML 报告;也用于维护 TTS / ASR 功能支持矩阵和硬件建议。不得为基准调用已归档云 API。
Bind, inspect, refresh, switch, or remove a Rabi persona context for one Codex session. Use when a user asks the current conversation to use a named persona, asks about the Rabi Codex hook, wants Codex-only context management without Rabi PC, connects a Rabi PC roles directory, or troubleshoots missing persona, plan, memory, or skill injection.
Bind, inspect, refresh, switch, or remove Rabi PC-managed persona context for one Codex session and understand its entry, reasoning, and message-delivery triggers. Use when a user asks the current Codex conversation to use a named Rabi persona, asks about the Rabi Codex hook, runs Rabi in context-only mode for Codex, proactively binds an exact Codex session from Rabi PC, or troubleshoots Manager-owned persona, plan, memory, recall, viewedAt, consolidation, role-skill injection, PreToolUse/PostToolUse refresh, or per-turn deduplication.
创建或修改通用 RabiRoute 人格配置。用于根据用户指定的角色和材料忠实写成 persona.md 和 roleMessageConfig.json,尤其适用于用户希望“就是那个角色”、要求按文本、图片、对白、音频、设定集、网页等材料一比一还原,或希望角色从指定时间点分叉到平行世界继续生活的场景;也适用于现实职业、陪伴角色、世界观角色、非人角色、拟人角色、地点/物品人格或其他自定义角色,并检查人格是否忠实、路由触发是否清楚、模板是否没有双重转义。
新增、改造或排障 RabiRoute Agent 端适配器时使用。覆盖 Runtime 所有权和启动独立性、会话找不到或串线、工具能力缺失、后端 agent adapter、独立 Agent Manager API、扫描/安装/登录/健康检查、RibiWebGUI 自动化配置、消息投递、诊断和验证;适用于 Codex runtime、Copilot CLI、Marvis、AstrBot、Hermes、脚本、Webhook 或其他 Agent 处理端。
SOC 직업 분류 기준
| name | rabiroute-webgui-build |
| description | RabiRoute WebGUI 构建、打包和开发注意事项,包括常见报错的排查与修复。 |
始终用 cmd /c 包裹,不要直接在 PowerShell 里用 &&:
cmd /c "cd /d <repo> && npm run build"
前端只改动时可以单独构建:
cmd /c "cd /d <repo> && npm run webgui:build"
重启 Manager:
$p = (netstat -ano | Select-String ":8790.*LISTENING") -replace '.*\s(\d+)$','$1' | Select-Object -First 1
if ($p) { Stop-Process -Id ([int]$p.Trim()) -Force; Start-Sleep 1 }
Start-Process "node" -ArgumentList "dist/manager.js" -WorkingDirectory "<repo>" -WindowStyle Hidden
ReferenceError: Cannot access 'X' before initialization症状: 浏览器控制台报 TDZ(Temporal Dead Zone)错误,指向打包后的 index-xxx.js。
原因: 通常是以下之一:
types.ts 删除字段后,旧 chunk 缓存仍引用已删除的导出修复:清理 dist 后全量重建:
cmd /c "cd /d <repo> && rmdir /s /q ribiwebgui\dist && npm run build"
浏览器也要强制刷新(Ctrl+Shift+R)清除缓存。
预防: 删除 types.ts 字段前,先 grep 所有引用,确认全部清理干净再构建。
症状: 路由数据目录出现 config-3/config-3/config-3/... 多层嵌套。
原因: routeConfigItem() 把 definition.dataDir(已含 configName 的完整路径)写入配置文件,下次 normalizeDefinition 读取后再次拼接 configName,每保存一次多嵌套一层。
修复原则:
dataDir 不应写入 routeConfig.json,路径由全局 routeRoot/configName 动态计算normalizeDefinition、envFor、dataDirFor 统一使用 path.resolve(routeRoot, configName),不读 definition.dataDirdata/manager.json,字段为 routeDir(路由根目录)和 rolesDir(角色根目录),接口为 GET/POST /manager-configdataDir/rolesDir 已废弃,不保存到 routeConfig.jsonrouteRoot / configName,角色目录 = rolesRoot