调试

调试

适用范围

在以下情况下使用本页面:

  • 您需要检查原始模型输出是否存在推理泄漏
  • 您想在迭代时以监视模式运行 Gateway
  • 您需要可重复的调试工作流

本页面涵盖流式输出的调试助手,特别是当提供商将推理混合到普通文本中时。

运行时调试覆盖

在聊天中使用 /debug 设置仅运行时配置覆盖(内存中,而非磁盘)。 /debug 默认禁用;使用 commands.debug: true 启用。 当您需要切换模糊设置而不编辑 moltbot.json 时,这很方便。

示例:

/debug show
/debug set messages.responsePrefix="[moltbot]"
/debug unset messages.responsePrefix
/debug reset

/debug reset 清除所有覆盖并返回磁盘配置。

Gateway 监视模式

为了快速迭代,在文件监视器下运行网关:

pnpm gateway:watch --force

这映射到:

tsx watch src/entry.ts gateway --force

gateway:watch 之后添加任何网关 CLI 标志,它们将在每次重启时传递。

开发配置文件 + 开发网关(–dev)

使用开发配置文件隔离状态并为调试启动一个安全的、一次性设置。 有两个 --dev 标志:

  • **全局 --dev(配置文件):**在 ~/.moltbot-dev 下隔离状态,并将网关端口默认为 19001(派生端口随之移动)。
  • **gateway --dev告诉网关在缺少时自动创建默认配置 + 工作空间(并跳过 BOOTSTRAP.md)。

推荐流程(开发配置文件 + 开发引导):

pnpm gateway:dev
MOLTBOT_PROFILE=dev moltbot tui

如果您还没有全局安装,请通过 pnpm moltbot ... 运行 CLI。

其作用:

  1. 配置文件隔离(全局 --dev

    • MOLTBOT_PROFILE=dev
    • MOLTBOT_STATE_DIR=~/.moltbot-dev
    • MOLTBOT_CONFIG_PATH=~/.moltbot-dev/moltbot.json
    • MOLTBOT_GATEWAY_PORT=19001(浏览器/canvas 相应移动)
  2. 开发引导gateway --dev

    • 如果缺少,写入最小配置(gateway.mode=local,绑定环回)。
    • agent.workspace 设置为开发工作空间。
    • 设置 agent.skipBootstrap=true(无 BOOTSTRAP.md)。
    • 如果缺少,为工作空间文件播种: AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.md
    • 默认身份:C3-PO(协议机器人)。
    • 在开发模式下跳过频道提供商(MOLTBOT_SKIP_CHANNELS=1)。

重置流程(全新开始):

pnpm gateway:dev:reset

注意:--dev 是一个全局配置文件标志,会被某些运行器吞噬。如果您需要明确说明,请使用环境变量形式:

MOLTBOT_PROFILE=dev moltbot gateway --dev --reset

--reset 擦除配置、凭据、会话和开发工作空间(使用 trash,而非 rm),然后重新创建默认开发设置。

提示:如果非开发网关已经在运行(launchd/systemd),请先停止它:

moltbot gateway stop

原始流式日志记录(Moltbot)

Moltbot 可以在任何过滤/格式化之前记录原始助手流。这是查看推理是否以纯文本增量形式到达(或作为单独的思维块)的最佳方式。

通过 CLI 启用:

pnpm gateway:watch --force --raw-stream

可选路径覆盖:

pnpm gateway:watch --force --raw-stream --raw-stream-path ~/.moltbot/logs/raw-stream.jsonl

等效环境变量:

MOLTBOT_RAW_STREAM=1
MOLTBOT_RAW_STREAM_PATH=~/.moltbot/logs/raw-stream.jsonl

默认文件:

~/.moltbot/logs/raw-stream.jsonl

原始块日志记录(pi-mono)

要在将原始 OpenAI 兼容块解析为块之前捕获它们,pi-mono 公开了一个单独的记录器:

PI_RAW_STREAM=1

可选路径:

PI_RAW_STREAM_PATH=~/.pi-mono/logs/raw-openai-completions.jsonl

默认文件:

~/.pi-mono/logs/raw-openai-completions.jsonl

注意:这仅由使用 pi-mono 的 openai-completions 提供商的进程发出。

安全注意事项

  • 原始流日志可能包含完整的提示、工具输出和用户数据。
  • 将日志保留在本地,并在调试后删除它们。
  • 如果您共享日志,请先擦除密钥和 PII。