SuperAPI AI 工具集

monitoring-terminal-errors

编程与开发

查看项目

更新于 10-16 02:23

技能介绍

用途

Monitoring Terminal Errors 是一个用于持续监控运行中终端进程的技能。它面向开发服务器、测试运行器、构建进程等场景,自动发现进程运行过程中出现的错误,并尝试定位和修复。

主要能力

  • 识别正在运行目标进程的终端,例如运行 dev server 的终端(npm run dev、pnpm dev、python manage.py runserver 等)。
  • 读取终端完整输出,搜索错误模式,包括:
    • 堆栈跟踪:at <function> (<file>:<line>:<col>)
    • Node.js:Error:、TypeError:、ReferenceError:、ENOENT、ECONNREFUSED
    • Python:Traceback (most recent call last): 后跟 File "<path>", line <n>
    • React/Next.js:Unhandled Runtime Error、Error: ...、Module not found
    • 构建错误:ERROR in、Failed to compile、SyntaxError
    • Vite:[vite] Internal server error:
    • TypeScript:error TS\d+:
  • 从堆栈跟踪中提取源位置:文件路径、行号、错误信息。
  • 读取出错行附近的文件内容,理解错误原因(如缺少导入、类型不匹配、未定义变量等),应用修复。
  • 修复后重新读取终端文件,确认服务器是否恢复(热重载应能自动生效)。

使用方式

  1. 识别终端:列出终端文件并找到运行目标进程的那个,例如执行 head -n 10 <terminals_folder>/*.txt,查找运行 dev server 的终端。
  2. 读取终端输出:读取终端文件完整内容,搜索上述错误模式。
  3. 提取源位置:从堆栈跟踪中提取文件路径、行号、错误信息。Node.js 格式如 at functionName (/path/to/file.ts:42:10);Python 格式如 File "/path/to/file.py", line 42, in function_name。
  4. 定位并修复:读取出错行附近的文件,理解错误,应用修复,然后重新读取终端文件确认服务器恢复。
  5. 循环:若修复后仍显示错误,重复第 2 步。停止条件为:终端显示干净的“compiled successfully”或等价信息;输出中不再出现新错误;已尝试 5 次仍未解决(此时向用户报告)。

适用场景

  • 开发过程中自动监控 dev server 的运行时错误。
  • 监控测试运行器或构建进程的错误输出。
  • 需要自动定位堆栈跟踪并尝试修复的调试工作流。

限制与提示

  • 检查终端文件页脚中的 exit_code,若存在则说明进程已完全崩溃,需要重启。
  • 部分错误会级联出现,修复第一个/根因错误后其余错误往往消失。
  • 对于 HMR 错误,修复可能只需再次保存文件以触发重建。
  • 连续 5 次尝试未解决时应向用户报告。
  • 关于收费、价格、支持平台等具体信息,资料中暂未提供。