常见问题排查
本文按安装、配置、渠道和技能四个维度整理当前 CountBot 最常见的问题。
安装与运行
提示 python: command not found
原因:
- Python 未安装
- Python 未加入系统
PATH
建议:
- Windows 重新安装 Python 时勾选“Add Python to PATH”
- macOS / Linux 优先使用
python3
提示 ModuleNotFoundError: No module named 'xxx'
原因:
- 依赖未安装完整
- 虚拟环境未激活
建议:
pip install -r requirements.txt
如果你使用虚拟环境,先激活再安装。
pip install 报 SSL: CERTIFICATE_VERIFY_FAILED
建议先尝试镜像源:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
启动时报 Address already in use
表示端口已被占用。
可以:
- 换一个端口启动
- 结束占用 8000 端口的进程
在桌面模式里,start_desktop.py 也对这一类错误做了识别。
桌面环境
Windows 缺少 WebView2
桌面版依赖 Edge WebView2。若提示缺失,请安装:
WebView2 Runtime
Linux 缺少 webkit2gtk
桌面模式通常需要系统安装对应 WebKit 依赖。
例如 Ubuntu / Debian:
sudo apt install -y libwebkit2gtk-4.0-37
模型与配置
API Key 无效或测试失败
优先检查:
- 是否把 key 粘贴完整
- provider 与 API Base 是否对应
- 该模型是否可用
- 后端日志中是否已经给出更明确的错误
保存配置后没有生效
当前有两类情况:
- 纯运行时参数会立即生效
- 部分安全 / 工作空间相关配置可能需要重启
尤其要留意:
restrict_to_workspace- Shell 安全相关配置
默认模型与注册表默认值不一致
这是当前代码允许的行为。
例如应用默认模型配置来自 backend/modules/config/schema.py,而 provider 注册表里也会维护各自默认模型。最终使用哪个值,取决于你是否在应用配置里显式覆盖。
渠道接入
飞书机器人不回复
建议检查:
- App ID / App Secret 是否正确
- 应用是否已发布
- 事件订阅是否已开启
- 后端日志里是否有飞书 worker 相关错误
当前实现中,飞书使用独立 worker:
backend/modules/channels/feishu.pybackend/modules/channels/feishu_websocket_worker.py
钉钉机器人不回复
建议检查:
- 是否安装
dingtalk-stream - Client ID / Client Secret 是否正确
- Stream 模式是否已开启
安装依赖:
pip install dingtalk-stream
Telegram 无法连接
当前 Telegram 渠道支持代理配置,字段在配置模型里就是 proxy。
可用格式例如:
socks5://127.0.0.1:1080http://127.0.0.1:7890
对应实现可参考:
backend/modules/channels/telegram.py
提示 python-telegram-bot not installed
说明 Telegram 依赖未安装。重新安装依赖或单独安装对应包即可。
技能与工具
技能调用时报 python: command not found
本质上仍是 Python 环境问题,优先回到安装章节排查。
Shell 工具执行失败
重点检查:
- 是否命中了危险命令拦截
- 是否开启了命令白名单
- 是否开启了工作空间限制
- 命令是否超时或输出过长
相关实现:
backend/modules/tools/shell.pybackend/modules/config/schema.py