---
name: omd-deepsearch
description: "代码库聚焦检索：定位本地代码库中的实现、调用点、定义与数据流。问「东西在哪」而非「怎么做」时使用；触发词：deepsearch / 找一下 / 代码在哪 / 定位 / 谁调用了 / 哪里实现的。"
---

# oh-my-dsh · Deepsearch 代码库聚焦检索

在**本地仓库**里做证据驱动的检索：定位实现、调用点、定义、数据流。对应 OMC 的 `deepsearch` 提示词触发模式。

## 何时用

- 问题答案是「代码在哪里/谁调用了/哪里实现的」，而不是「该怎么做」。
- 要追一条调用链、一个符号的定义与引用、一个配置项的生效位置。

## 检索纪律

- **本地优先**：`grep`（按符号/正则搜内容）、`glob`（按路径模式找文件）、`read`（读上下文）。代码库问题先用它们，别一上来 `web_search`。
- **给证据**：每个结论带 `file:line`（或文件 + 关键片段），让用户能直接点过去核。
- **追到底**：从调用点沿定义→引用→实现追完整链，别停在第一处匹配。
- **广撒网再收口**：范围不明时并行 `subagent`，每个子代理负责一个模块/一条链路，返回带行号的结论，主代理汇总。

## 与其它模式的关系

- 只想「找到」就只返回定位结果；找到后要「改」就转 `omd-plan` 或 `omd-execute`。
- 要理解「为什么这么设计」而不仅是「在哪」，转 `omd-deep-analyze`。
- 框架/API 的**外部**语义仍用 `web_search`/`web_fetch` 查官方文档，别猜。

## 收尾：HUD

用 `omd-hud` 输出检索结果：命中清单表（符号/文件/行号/角色：定义|调用|实现）。让「找到了什么、每条证据在哪」一眼可见。

## 反模式

- 别对代码库问题直接 `web_search`——那是外部信息，不是本项目事实。
- 别返回没有 `file:line` 的模糊结论。
- 别在找到第一处匹配就停，确认它是唯一/权威的那一处。
