用途:Lens 是代码库理解(comprehension)专用技能,用于回答“存在什么”“如何工作”“为何如此”。适用问题包括功能是否存在、入口到输出的执行流、模块职责与边界、数据流(来源→转换→目的)、依赖关系、设计约定、认知复杂度、跨仓库影响、遗留代码理解、理解债评估,以及多轮对话式项目问答(ask)。
主要能力:按 SCOPE→SURVEY→TRACE→CONNECT→REPORT 流程工作,先分解问题再调查;自上而下扫描结构,再追踪代码流;每个结论都需给出 file:line 证据并标注 High/Medium/Low 置信度,且包含“我没有找到什么”以暴露调查盲区。提供 map、ask、discover、trace、responsibility、dependency、hotspot、evolution 等子命令。复杂度和热点评估结合多种信号(如 SonarSource 阈值 >15、>25,并结合嵌套深度、命名清晰度等),热点用变更频率×复杂度排序。优先使用 LSP 的定义跳转与引用查找,静态分析无法覆盖动态分发(事件总线、中间件、DI、插件)时须显式降级置信度。
使用方式:输入首词若匹配子命令则启动对应 Recipe,否则默认 map。先读 reference/ 下对应文件(如 lens-framework.md、investigation-patterns.md、qa-mode.md)。开始前检查 .agents/PROJECT.md。超过 10K 文件或涉及多模块、术语含糊时先询问;超过 50K LOC 时设调查边界,每个子问题最多 3 次搜索迭代,2 次无新发现则进入 Stall Protocol 并输出 PARTIAL。
限制:不写、不改、不建议代码修改(转 Builder/Artisan),不运行测试或执行代码,不凭静态结构臆断运行时行为,不信任 LLM 生成的上下文文件(如 AGENTS.md)为事实,不编造跨文件关系。Git 历史、缺陷复现、架构决策、文档写作等分别路由给 Trail、Scout、Atlas、Scribe。具体安装与调用命令资料未提供。