SuperAPI AI 工具集

verify-language

编程与开发

查看项目

更新于 10-15 19:58

技能介绍

用途:对 Python、TypeScript/JavaScript、Go 代码做语言专项验证,检查类型安全、语言习惯用法与最佳实践;分析全部在本地进行。触发方式:用户说“verify agent language”“verify language”“check types”或要求检查 Python/TypeScript/Go 代码;主验证编排器也会按检测到的语言自动调用。需要含安全、模式和质量检查的完整验证时,提示用户说“verify agent”。

流程:先检测主语言。指标包括 pyproject.toml、requirements.txt、setup.py 对应 Python;package.json、tsconfig.json 对应 TypeScript/JavaScript;go.mod、go.sum 对应 Go;Cargo.toml 和 .rs 对应 Rust。也会查看 src/ 或项目根目录扩展名:.py、.ts/.tsx/.js/.jsx、.go、.rs。

Python 检查:公共函数(无前导下划线)、类方法和模块级函数缺少类型注解时给警告;缺失模块、类和公共函数 docstring 时给警告;requirements.txt 与 pyproject.toml 中依赖未固定版本(如 >=、>、无版本)属问题,== 和 ~= 通过;非习惯用法给警告,如 if len(list) > 0、if x == True、list = list + [item]、for i in range(len(list))、dict.keys() 迭代等。

TypeScript/JavaScript 检查:tsconfig.json 中 strict 为 false 或未设置属问题;无约束的 : any 类型给警告;async 函数缺少错误处理给警告;Promise 反模式(缺少 .catch()、new Promise() 搭配 async executor、fire-and-forget)给警告。

Go 检查:忽略返回 error 的赋值(如 _ = file.Close()、result, _ := db.Query(sql))属问题;调用链未传递 context.Context、HTTP handler 未使用 r.Context()、外部调用或长耗时操作缺少 context 给警告;包结构问题(main 包文件过多、循环导入、internal 包暴露、缺少 internal/)给警告;非习惯用法给警告,如重复 if err != nil、长函数裸返回、interface{} 不做类型断言、getter 命名为 GetX()。

报告:输出语言验证报告,含项目、日期、检测语言、分析文件数、通过/警告/问题汇总,以及类型安全、语言习惯、错误处理、发现项(区分 [P] 模式匹配与 [H] 启发式,含位置、规则与修复建议)和语言专项建议。

限制:仅覆盖上述三类语言;资料未说明 Rust 是否执行检查(仅列出识别指标)。所有检查为模式匹配或启发式,资料未提供自动修复、依赖安装或运行命令等细节。