v0.9.4 is live! — Read the latest technical documentation and migration guides.

docmd-assistant v0.1.15 强化了 LLM 输出清理机制,防止文档中的 JSON 片段和代码块被误提取与剥离,并在自主执行循环中对工具名称实施严格的注册校验。

主要特性与增强

严格已注册工具校验

  • 注册工具校验门禁:工具解析器(parseAssistantOutput)与执行循环(DocmdAssistantEngine)现在严格对照已注册工具列表(knownToolNames / this.tools)进行校验。
  • Markdown JSON 代码块完整保留:包含 "name" 属性的普通 JSON 对象(例如 package.json、配置示例或 OpenAPI Schema)将完整保留在文档回答中,不再被误识别为工具调用而剥离。
  • 自然文本关键词保护:强化了方括号与标签提取规则,避免以 Action:Call:Tool: 开头的普通英文句子被意外剥离。

自主执行循环稳定性与优雅回退

  • 阻断未注册工具调用:执行循环现已过滤未注册工具,防止引擎反复进入“工具未注册”的报错循环。
  • 多轮循环安全终止:当自主多轮执行循环达到最大轮数限制(maxTurns)时,引擎将安全返回最新生成的有效回答内容,而非回退为空字符串。

已解决的问题

  • AI 聊天回答被剥离(“No response generated.”):修复了在检索到结果后,因文档代码片段中含有 "name" 属性而导致助手显示 “No response generated.” 的问题。
  • 工具解析误匹配:修复了自然文本中包含 Action:Tool: 关键词被错误清理的问题。

升级指南

npm
pnpm
npm install docmd-assistant@0.1.15
pnpm add docmd-assistant@0.1.15