Hermes Agent 写完代码后项目仍报错,先看 LSP 诊断和实际测试结果,不要只相信它说“已经修好”。v0.14 加入了每次 write_file 或 patch 后的 LSP semantic diagnostics,可以把新增类型错误、未定义符号、缺失导入等问题更早暴露给 agent,但它不能替代完整构建和测试。
LSP 诊断能抓什么
LSP 更擅长抓“编辑后立刻能判断”的问题:变量名写错、import 漏掉、类型不匹配、函数签名不对、JSON/YAML/TOML 结构错误、Python 语法错误等。相比只跑格式化,它更接近编辑器里的红线提示,能让 Hermes Agent 在下一轮就看到自己刚写出的明显问题。
为什么还是会漏
它不一定能知道数据库迁移是否正确,也不一定能覆盖运行时权限、网络错误、第三方服务返回、浏览器兼容、并发问题。还有一种常见情况:项目没有配置好语言服务器,或者依赖没安装完整,LSP 给不出有效诊断。
推荐排查顺序
- 让 Hermes Agent 先汇总它改了哪些文件,不要直接继续大改。
- 查看 LSP 诊断里是否有新增错误,优先修新增项。
- 再运行项目自己的测试、类型检查或构建命令。
- 如果测试失败,把第一段错误和复现命令交回给 Hermes。
- 涉及生产代码时,最后仍要人工看 diff。
一句话:LSP 诊断是提前踩刹车,不是自动保证正确。它能减少“写完才发现低级错误”的次数,但真正的验收仍然是测试、运行和代码审查。官方仓库地址:https://github.com/NousResearch/hermes-agent。