Browse documentation

REPODESK DOCUMENTATION

User guides from stonega/repodesk. Available features depend on your deployment version, connected services and workspace settings.

View source at b292e6c

常见问题与排障

先确认问题发生在哪个工作区、机器人、聊天或 Topic,以及是模型运行、任务执行还是消息交付失败。不要因为没有回复就连续重发可能写入外部服务的请求。

管理员的基础检查

在原部署目录运行,命令不会修改服务配置:

docker compose ps
curl --fail http://localhost:3000/healthz
curl --fail http://localhost:3000/readyz
docker compose logs --tail=100 app worker

检查日志时间和面板当前状态,历史错误不代表问题仍在。分享诊断时提供版本、时间、任务引用和脱敏错误信息,不提供 .env、Token、密码或完整私聊内容。

机器人不回复

现象检查与处理
Setup 提示未激活聊天模型、Telegram 接收器、已启用发布技能是否就绪
显示 Request access尚未成为活跃成员,用邀请加入或等待申请审批
面板可开但 /readyz 失败检查 worker、数据库、迁移和 polling 状态
私聊正常,群里不回复关联群、成员身份、Topic、隐私模式;改用 /ask@your_bot 或 Reply
已收到请求但迟迟未完成/status 定位排队、运行或等待输入,查看 Runs & delivery
看不到原生预览群组和定时任务只发送最终回复;短私聊可能直接完成
旧任务按钮无效使用最新消息上的按钮,或直接发送 /status

Polling 冲突

  • polling_webhook_conflict:同一个 Bot Token 已有 webhook,先按 部署指南 明确切换。
  • telegram_polling_conflict:另一个实例正在 polling,停止重复实例。
  • telegram_unauthorized:检查 Bot Token 和机器人身份。
  • 限流:等待 Telegram 指定的重试间隔,避免不断重启。

polling 不会自动删除 webhook。更换传输方式后同时重新创建 app 和 worker。

模型、预算和附件

供应商保存失败:核对 Base URL、API Key、模型列表接口和服务器网络。Docker 内不能用 localhost 指代宿主机。URL 变化时需重新输入 Key。

模型列表正常但聊天失败:模型还需支持流式 Chat Completions、工具调用和应用使用的参数;Codex 使用 Responses。检查推理强度是否受支持,详见 模型与配置。

预算不足或价格缺失:检查单次/月度上限、模型价格和未确认费用。有限预算需要价格;留空预算是不设限,0 仅允许零费用调用。先向供应商核对账单,再由管理员处理未知费用。

超时:普通运行默认 300 秒。检查模型延迟或推理设置;必要时调整 RUN_TIMEOUT_SECONDS,重新创建服务。调整不会自动重试旧失败,也不会延长 Codex 的任务授权范围。

图片或文件无法处理:核对 格式与大小限制,图片需视觉模型。扫描 PDF 可改发图片;不支持的文档可转成 UTF-8 文本,不发送秘密信息。

GitHub 连接和权限

现象检查与处理
已授权但没有仓库同时完成 App installation,选择仓库并返回连接;用户授权不等于安装
GitHub 提示 redirect_uri核对站点 origin 和回调,保持同一浏览器会话,从 Connect GitHub 重新开始
新仓库没出现在 GitHub 授予后,重新授权并选择;不会自动扩展工作区范围
成员显示 Verification pending本人私聊 /github,浏览器授权后返回 Telegram 确认
Codex 要求连接账号私聊完成 /github,确认当前写权限,再重发请求
github_app_permissions_missing在 GitHub 修改 App 权限并接受 installation 更新;仅重连无效
权限暂时无法验证等待同步或 /github sync;失效则 /github connect;不要新建重复任务

普通成员或工作区管理员不自动拥有 GitHub 写权限。私有仓库的交互请求在私聊进行。详细步骤见 GitHub。

Code Truth 没有代码结果

确认服务容器存在、插件已启用、仓库已配置,点击 Sync & check indexes。首次构建可能尚未完成;就绪后核对默认分支、commit 和索引时间。

索引是快照,刷新失败可能保留旧版本。PR/Issue 实时状态使用 GitHub 查询,不依靠源码索引。修改 .env 的服务连接后需重新创建 app/worker。

Codex 或 Review Bot 不工作

确认 runner 健康、任务镜像已单独构建、插件启用且模型认证有效。Enabled 不代表执行环境安装完毕。

登录暂停由管理员在 Codex 页面重新认证。任务默认分支不存在时,在 GitHub 修正;错误仓库不要靠改默认分支解决。取消的历史任务不会仅因权限恢复就自动重启。

Review Bot 额外检查 HTTPS webhook、secret、事件订阅和 GitHub delivery。自动审查跳过草稿 PR;明确请求的修复需启用并满足写权限,fork PR 仅支持审查和问答。

View conversation 打不开时,检查 BotFather Main Mini App 的 /mini URL,从 Telegram 重新打开以刷新身份。私聊记录只向原发起人开放,群记录还需当前群成员和来源权限;过期来源或旧任务也可能限制可见内容。

结果未知、交付失败和重复风险

delivery_unknown 表示 Telegram 可能已接收;GitHub/Cloudflare 的 unknown 同样表示可能已产生效果。先查看对应聊天、仓库或控制台,保留原任务引用。

应用不会自动重复未知写入。管理员在 Runs & delivery 核对交付、在 Usage 核对费用;确认后再决定是否创建新请求。取消不能撤回已有远端结果。

升级或恢复后异常

检查磁盘、迁移结果、镜像版本一致性、Compose 项目名以及是否沿用原密钥和数据卷。不要重新生成密钥、删除卷或直接回退数据库。按 备份与恢复 核对后再恢复写入。