SuperAPI AI 工具集

code-intelligence

编程与开发

查看项目

更新于 10-15 16:52

技能介绍

用途:在导航或重构代码时,按任务而非习惯选择搜索工具。该技能通用且与语言无关,领域技能可为其扩展服务器能力矩阵与生态前置条件,例如同一市场中的 terraform-skill 插件负责 terraform-ls 能力矩阵与 Terraform 配置。它是模型触发式指导,不是强制约束。

主要能力与工具优先级:符号关系(定义、引用、调用点、重命名安全性)使用指定位置的语言服务器(LSP),代价是需要运行中的服务器与已索引工作区;精确文本、已知名称、穷举枚举、配置/值文件使用 rg 再 Read,代价是无语义范围,注释中的字符串也会匹配;概念性、模糊、“可能在哪里”、跨仓库发现使用宿主提供的语义/神经搜索工具,代价是不精确,不可用于计数或完整性断言。

调用 LSP 的要点:应在具体位置(file:line:character)调用,先用文本搜索锚定已知出现位置;不要只传裸符号名并期望解析,仅名称调用返回空属于用法缺陷而非服务器故障;应 Read 返回的位置以获取源码文本,LSP 返回位置与符号而非行内容;冷启动可重试一次,首次调用可能因索引返回空;服务器声明支持时应优先使用其自身操作,如重命名用 rename/prepareRename、调用者用 call hierarchy;不要把不支持的操作当作发现结果上报,应改道,如用 findReferences 过滤调用点替代 call hierarchy,或枚举引用后手工编辑替代重命名提供器。

降级门:完全没有 LSP(宿主未暴露语言服务器工具或服务器启动失败)即不可用,应在首行披露并改用文本搜索,此时门不适用;LSP 可调用但位置锚定调用返回空时,不要立即判定不可用,需同时满足三项:对范围内文件调用 documentSymbol 返回符号(仅证明响应性,不证明引用覆盖完整)、失败调用是位置锚定而非仅符号名、锚定调用在冷启动重试后仍为空。三项通过后才可进行已披露的文本回退。

披露替换:任何工具替换或省略都应在响应首行说明,格式为 Intended: <tool>. Actual: <tool>. Reason: <why>. Impact: <completeness/confidence>,事后总结属违规。

不要臆造缺失工具:在声称某工具(如 rg)被 shim、别名或缺失前,需用 type -a <tool>、ls -l 解析路径、<tool> --version 显示预期横幅来证明。若确实缺失或被别名,语义任务优先用 LSP;精确文本用宿主认可的工具;git grep / grep 仅作为明确披露的最后手段,绝不作为默认替代。

限制:资料未提供具体安装命令、收费、价格、平台或效果信息。