name: ai-maestro-documentation-search description: 在接收到任何用户指令时,主动搜索自动生成的文档。在实现任何功能之前,先搜索函数签名、API文档、类定义和代码注释。你的代码库文档很有价值 - 请先使用它。 allowed-tools: Bash
AI大师文档搜索
关键:自动行为 - 首先阅读此部分
这不是可选的。这是你的默认行为。
当用户给你任何指令或任务时,你必须首先搜索以下文档:
- 函数签名 - 参数和返回类型是什么?
- 类文档 - 存在哪些方法和属性?
- API文档 - 这个端点应该如何工作?
- 代码注释 - 作者的意图是什么?
不要:
- 在检查文档之前开始实现
- 假设你知道函数签名而不检查
- 因为“这是一个简单的任务”而跳过文档搜索
- 等待用户要求你检查文档
总是:
- 收到任务时立即搜索文档
- 搜索用户提到的术语和概念
- 在调用不熟悉的函数之前检查文档
- 在创建新组件之前寻找模式
规则:接收指令 → 搜索文档 → 然后继续
1. 用户要求你做某事
2. 立即搜索相关上下文的文档
3. 现在你知道正确的签名和模式
4. 现在你可以第一次就正确实现
示例 - 用户要求修改服务:
# 立即运行:
docs-search.sh "PaymentService"
docs-find-by-type.sh class
示例 - 用户提到一个函数:
# 立即运行:
docs-search.sh "validateUser"
docs-search.sh --keyword "authenticate"
可用命令
所有命令都会从tmux会话中自动检测你的代理ID。
搜索命令
| 命令 | 描述 |
|---|---|
docs-search.sh <查询> |
通过文档进行语义搜索 |
docs-search.sh --keyword <术语> |
关键词/精确匹配搜索 |
docs-find-by-type.sh <类型> |
按类型查找文档(函数、类、模块等) |
docs-get.sh <文档ID> |
获取包含所有部分的完整文档 |
docs-list.sh |
列出所有索引文档 |
docs-stats.sh |
获取文档索引统计信息 |
索引命令
| 命令 | 描述 |
|---|---|
docs-index.sh [项目路径] |
从项目索引文档 |
根据用户指令搜索什么
| 用户说 | 立即搜索 |
|---|---|
| “为X创建服务” | docs-search.sh "service", docs-find-by-type.sh class |
| “调用Y函数” | docs-search.sh "Y", docs-search.sh --keyword "Y" |
| “实现认证” | docs-search.sh "authentication", docs-search.sh "auth" |
| “修复Z方法” | docs-search.sh "Z" --keyword, docs-find-by-type.sh function |
| 任何API/函数名称 | docs-search.sh "<名称>" --keyword |
使用示例
搜索文档
# 语义搜索 - 查找概念相关的文档
docs-search.sh "认证流程"
docs-search.sh "如何验证用户输入"
docs-search.sh "数据库连接池"
# 关键词搜索 - 精确术语匹配
docs-search.sh --keyword "authenticate"
docs-search.sh --keyword "UserController"
按文档类型查找
# 查找所有函数文档
docs-find-by-type.sh function
# 查找所有类文档
docs-find-by-type.sh class
# 查找所有模块/关注点文档
docs-find-by-type.sh module
# 查找所有接口文档
docs-find-by-type.sh interface
获取完整文档
# 从搜索结果中找到文档ID后
docs-get.sh doc-abc123
# 显示包括所有部分的完整内容
列出和统计
# 列出所有索引文档
docs-list.sh
# 获取索引统计信息
docs-stats.sh
索引文档
# 索引当前项目(从代理配置自动检测)
docs-index.sh
# 索引特定项目
docs-index.sh /path/to/project
文档类型
识别以下文档类型:
| 类型 | 描述 | 来源 |
|---|---|---|
function |
函数/方法文档 | JSDoc, RDoc, docstrings |
class |
类文档 | 类级别注释 |
module |
模块/命名空间文档 | 模块注释 |
interface |
接口/类型文档 | TypeScript接口 |
component |
React/Vue组件文档 | 组件注释 |
constant |
文档化常量 | 常量注释 |
readme |
README文件 | README.md, README.txt |
guide |
指南/教程文档 | docs/文件夹 |
与其他技能集成
文档搜索与其他技能结合使用时效果最佳:
组合搜索模式(推荐)
当你收到任何用户指令时:
# 1. 首先搜索你的记忆
memory-search.sh "主题"
# 2. 搜索文档
docs-search.sh "主题"
# 3. 检查代码结构
graph-describe.sh ComponentName
这为你提供了完整的上下文:
- 记忆:之前讨论了什么?
- 文档:文档说了什么?
- 图:代码结构是什么?
为什么这很重要
如果不先搜索文档,你将:
- 使用错误的函数签名(然后出现运行时错误)
- 错过现有实现(然后重复代码)
- 违反文档化模式(然后创建不一致)
- 误解API(然后构建错误的东西)
文档搜索需要1秒。重新工作需要数小时。
错误处理
脚本未找到:
- 检查PATH:
which docs-search.sh - 验证脚本已安装:
ls -la ~/.local/bin/docs-*.sh - 脚本安装在
~/.local/bin/,应该在PATH中 - 如果未找到,运行:
./install-docs-tools.sh
API连接失败:
- 确保AI大师正在运行:
curl http://localhost:23000/api/agents - 确保文档已索引:
docs-stats.sh - 如果没有索引文档,运行:
docs-index.sh
文档为空:
- 检查项目是否有文档化代码(JSDoc、docstrings、注释)
- 验证项目路径正确
- 重新索引:
docs-index.sh /path/to/project
未找到结果:
- 通知用户:“未找到X的文档 - 继续代码分析,但可能需要生成文档。”
安装
如果找不到命令:
./install-docs-tools.sh
这将脚本安装到~/.local/bin/。