GitHub 管理器工具
使用 GitHub 管理器语音工具进行仓库管理的完整指南
GitHub 管理器提供一套全面的语音激活工具,用于管理 GitHub 仓库、问题、拉取请求等。每个工具都设计为通过自然语言命令和特定关键字触发。
仓库管理
获取用户仓库
工具: get_user_repositories
描述: 检索经过身份验证的用户的仓库列表。
触发短语:
- "显示我的仓库"
- "列出我的 GitHub 仓库"
- "我有什么仓库?"
- "显示我的私有/公共仓库"
- "获取我最新的仓库"
参数:
visibility:按仓库可见性过滤(all、public、private)affiliation:按用户关联过滤(owner、collaborator、organization_member)sort:按...排序仓库(created、updated、pushed、full_name)per_page:每页结果数
获取仓库详情
工具: get_repository_details
描述: 获取有关特定仓库的全面信息。
触发短语:
- "显示[仓库名称]的详细信息"
- "告诉我关于[所有者]/[仓库]仓库的信息"
- "[仓库]的状态是什么?"
- "获取关于[仓库]的信息"
- "描述[仓库]仓库"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)
获取仓库内容
工具: get_repository_contents
描述: 浏览仓库中目录或文件的内容。
触发短语:
- "显示[仓库]中的文件"
- "列出[仓库]中[路径]的内容"
- "[文件夹]目录中有什么?"
- "浏览[仓库]仓库结构"
- "显示[仓库]的根目录"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)path:目录或文件的路径(可选,默认为根目录)ref:分支或提交引用(可选,默认为默认分支)
获取文件内容
工具: get_file_content
描述: 检索仓库中特定文件的原始内容。
触发短语:
- "显示[文件]的内容"
- "从[仓库]读取[文件]"
- "从[文件]获取代码"
- "显示[文件]内容"
- "在[仓库]中打开[文件]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)path:文件路径(必需)ref:分支或提交引用(可选)
获取仓库树
工具: get_repository_tree
描述: 获取仓库的完整 Git 树结构。
触发短语:
- "显示[仓库]的完整结构"
- "获取完整的文件树"
- "显示仓库层次结构"
- "显示[仓库]中的所有文件和文件夹"
- "映射项目结构"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)tree_sha:树 SHA 或分支名称(可选,默认为默认分支)recursive:递归获取树(可选,默认为 true)
搜索仓库代码
工具: search_repository_code
描述: 在仓库中搜索代码模式、函数或文本。
触发短语:
- "在[仓库]中搜索[术语]"
- "在代码中查找[函数名]"
- "在[仓库]中查找[模式]"
- "在[仓库]中搜索[关键字]"
- "查找[文本]的所有出现"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)query:搜索查询(必需)path:限制搜索到特定路径language:按编程语言过滤per_page:每页结果数
分析代码结构
工具: analyze_code_structure
描述: 提供有关项目组织、架构和模式的见解。
触发短语:
- "分析[仓库]的结构"
- "这个项目的架构是什么?"
- "给我关于[仓库]的见解"
- "分析[仓库]代码库"
- "描述项目组织"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)include_dependencies:包括依赖项分析(可选)
获取仓库分支
工具: get_repository_branches
描述: 列出仓库中的所有分支。
触发短语:
- "显示[仓库]中的分支"
- "列出所有分支"
- "[仓库]中存在什么分支?"
- "获取[仓库]的分支列表"
- "显示可用的分支"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)
获取仓库标签
工具: get_repository_labels
描述: 获取仓库中可用的所有标签。
触发短语:
- "显示[仓库]的标签"
- "列出问题标签"
- "有哪些可用的标签?"
- "获取[仓库]中的所有标签"
- "显示标签选项"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)
问题管理
获取仓库问题
工具: get_repository_issues
描述: 使用过滤选项检索特定仓库的问题。
触发短语:
- "显示[仓库]中的问题"
- "列出所有打开的问题"
- "获取带有[标签]标签的问题"
- "显示已关闭的问题"
- "哪些问题需要关注?"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)state:按状态过滤(open、closed、all)labels:按标签过滤(逗号分隔)sort:按...排序(created、updated、comments)direction:排序方向(asc、desc)per_page:每页结果数
获取问题详情
工具: get_issue_details
描述: 获取有关特定问题的完整信息。
触发短语:
- "显示问题 #[编号]"
- "获取问题[编号]的详细信息"
- "问题 #[编号]的状态是什么?"
- "告诉我关于问题[编号]的信息"
- "打开问题编号[编号]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)issue_number:问题编号(必需)
创建问题
工具: create_issue
描述: 在仓库中创建新问题。在描述中自动提及 @claude。
触发短语:
- "创建新问题"
- "打开关于[主题]的问题"
- "报告错误"
- "为[问题]提交问题"
- "创建标题为[标题]的问题"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)title:问题标题(必需)body:问题描述labels:要应用的标签assignees:要分配的用户
更新问题
工具: update_issue
描述: 修改现有问题。在更新中自动提及 @claude。
触发短语:
- "更新问题 #[编号]"
- "更改问题[编号]标题"
- "关闭问题 #[编号]"
- "重新打开问题[编号]"
- "将标签添加到问题[编号]"
- "将问题[编号]分配给[用户]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)issue_number:问题编号(必需)title:新标题body:新描述state:更改状态(open、closed)labels:更新标签assignees:更新受让人
添加问题评论
工具: add_issue_comment
描述: 向问题或拉取请求添加评论。自动提及 @claude。
触发短语:
- "评论问题 #[编号]"
- "向问题[编号]添加评论"
- "回复问题[编号]"
- "在 PR #[编号]上发表评论"
- "回复问题[编号]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)issue_number:问题或 PR 编号(必需)body:评论文本(必需)
获取问题评论
工具: get_issue_comments
描述: 检索问题或拉取请求的所有评论。
触发短语:
- "显示问题 #[编号]的评论"
- "获取问题[编号]评论"
- "阅读 PR #[编号]的评论"
- "列出问题[编号]的所有评论"
- "人们对问题[编号]说了什么?"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)issue_number:问题或 PR 编号(必需)
获取问题评论
工具: get_issue_comment
描述: 通过 ID 获取有关特定评论的详细信息。
触发短语:
- "显示评论[id]"
- "获取 ID 为[id]的评论"
- "阅读特定评论[id]"
- "显示评论编号[id]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)comment_id:评论 ID(必需)
拉取请求管理
获取拉取请求
工具: get_pull_requests
描述: 使用过滤选项列出仓库的拉取请求。
触发短语:
- "显示拉取请求"
- "列出打开的 PR"
- "获取[仓库]的 PR"
- "显示合并的拉取请求"
- "哪些 PR 需要审查?"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)state:按状态过滤(open、closed、all)head:按头分支过滤base:按基分支过滤sort:按...排序(created、updated、popularity)direction:排序方向(asc、desc)per_page:每页结果数
获取拉取请求详情
工具: get_pull_request_details
描述: 获取有关特定拉取请求的全面信息。
触发短语:
- "显示 PR #[编号]"
- "获取拉取请求[编号]详细信息"
- "PR [编号]的状态是什么?"
- "告诉我关于拉取请求[编号]的信息"
- "审查 PR 编号[编号]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)pr_number:拉取请求编号(必需)
创建拉取请求
工具: create_pull_request
描述: 创建新的拉取请求。在描述中自动提及 @claude。
触发短语:
- "创建拉取请求"
- "从[分支]到[基分支]打开 PR"
- "提交 PR 以供审查"
- "创建标题为[标题]的拉取请求"
- "将[头分支]合并到[基分支]"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)title:PR 标题(必需)head:头分支(必需)base:基分支(必需)body:PR 描述draft:创建为草稿 PR
更新拉取请求
工具: update_pull_request
描述: 修改现有的拉取请求。自动提及 @claude。
触发短语:
- "更新 PR #[编号]"
- "更改拉取请求[编号]标题"
- "关闭 PR [编号]"
- "编辑拉取请求[编号]"
- "修改 PR 描述"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)pr_number:拉取请求编号(必需)title:新标题body:新描述state:更改状态(open、closed)
PR 监控
启动 PR 监控
工具: start_pr_monitoring
描述: 开始监控仓库的新拉取请求并发送语音通知。
触发短语:
- "开始监控[仓库]的 PR"
- "监视[仓库]的新拉取请求"
- "提醒我[仓库]中的新 PR"
- "监控拉取请求"
- "跟踪[仓库]中的新 PR"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)checkIntervalMs:检查间隔(毫秒)(可选,默认:30000)voiceAnnouncements:启用语音通知(可选,默认:true)
停止 PR 监控
工具: stop_pr_monitoring
描述: 停止监控仓库的拉取请求。
触发短语:
- "停止监控[仓库]"
- "停止监视 PR"
- "禁用[仓库]的 PR 警报"
- "关闭 PR 监控"
- "停止跟踪拉取请求"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)
检查 PR 监控状态
工具: check_pr_monitoring_status
描述: 查看所有或特定仓库的当前 PR 监控状态。
触发短语:
- "我在监控什么仓库?"
- "显示监控状态"
- "检查[仓库]的 PR 监控"
- "列出受监控的仓库"
- "我在监视[仓库]吗?"
参数:
owner:仓库所有者(可选)repo:仓库名称(可选)
手动检查新 PR
工具: manually_check_new_prs
描述: 执行一次性检查以查找新的拉取请求。
触发短语:
- "现在检查新 PR"
- "[仓库]中有任何新的拉取请求吗?"
- "手动检查[仓库]的 PR"
- "查找最近的 PR"
- "快速检查拉取请求"
参数:
owner:仓库所有者用户名(必需)repo:仓库名称(必需)
导航工具
导航到工单
工具: navigate_to_ticket
描述: 按编号直接导航到 GitHub 问题或拉取请求。
触发短语:
- "转到问题 #[编号]"
- "打开工单[编号]"
- "导航到 PR [编号]"
- "显示问题编号[编号]"
- "带我到拉取请求[编号]"
参数:
ticket_number:问题或 PR 编号(必需)reason:导航原因
导航到路径
工具: navigate_to_path
描述: 导航到特定的应用程序路径和页面。
触发短语:
- "转到[页面名称]"
- "导航到设置"
- "打开仪表板"
- "带我到[部分]"
- "显示[页面]"
参数:
path:应用程序路径(必需)query:查询参数reason:导航原因
列出应用程序路由
工具: list_app_routes
描述: 显示所有可用的应用程序路由和导航选项。
触发短语:
- "我可以导航到哪些页面?"
- "显示可用的路由"
- "列出所有页面"
- "有哪些导航选项?"
- "显示所有可用路径"
参数: 无
页内导航
工具: in_page_navigation
描述: 控制当前页面内的滚动和导航。
触发短语:
- "向下滚动"
- "转到顶部"
- "滚动到底部"
- "向上/向下翻页"
- "滚动到[元素]"
参数:
action:导航操作(scroll_down、scroll_up、page_down、page_up、scroll_to_top、scroll_to_bottom、scroll_to_element)selector:scroll_to_element 的 CSS 选择器amount:滚动量(像素)
返回对话
工具: return_to_conversation
描述: 在导航离开后返回语音对话界面。
触发短语:
- "返回对话"
- "返回语音聊天"
- "带我回去"
- "返回对话"
- "返回主屏幕"
参数:
reason:返回原因
系统管理
重置代理状态
工具: reset_agent_state
描述: 清除各种类型的代理状态和上下文以重新开始。
触发短语:
- "重置代理"
- "清除所有状态"
- "重新开始"
- "清除对话历史"
- "重置工作区"
参数:
clearWorkspace:清除工作区数据(默认:true)clearConversation:清除对话历史(默认:true)clearEventLogs:清除事件日志(默认:true)clearNavigationHistory:清除导航历史(默认:true)clearToolCallHistory:清除工具调用历史(默认:true)clearPRMonitoring:清除 PR 监控状态(默认:false)clearAuthentication:清除身份验证令牌(默认:false)clearUserPreferences:清除用户首选项(默认:false)clearCache:清除缓存(默认:true)clearTempFiles:清除临时文件(默认:true)
有效使用提示
-
自然语言:这些工具旨在理解自然语言。您不需要使用确切的短语。
-
上下文感知:代理从您的对话中记住上下文,因此您可以在提及一次后引用"仓库"或"那个问题"。
-
自动提及:在创建或更新问题、PR 和评论时,代理会自动包含 @claude 提及以保持可追溯性。
-
语音反馈:许多工具在操作完成时提供语音反馈,特别是对于监控和导航任务。
-
链接操作:您可以将多个操作链接在一起,例如"创建关于我们刚才讨论的错误的问题并将其分配给我。"
-
智能默认值:大多数可选参数都有合理的默认值,因此您只需要指定要更改的内容。
-
错误处理:如果出现问题,代理将提供有用的错误消息,并在可能的情况下建议替代方案。
常见工作流程
错误报告工作流程
- "创建标题为'按钮在移动设备上不起作用'的问题"
- "添加错误和高优先级标签"
- "将其分配给移动团队"
- "添加带有屏幕截图的评论"
PR 审查工作流程
- "显示打开的拉取请求"
- "获取 PR #42 的详细信息"
- "显示 PR #42 中的更改"
- "添加批准更改的评论"
仓库探索
- "显示仓库结构"
- "搜索身份验证代码"
- "显示 auth 文件夹的内容"
- "获取 login.js 的文件内容"
监控设置
- "开始监控 my-repo 的新 PR"
- "检查监控状态"
- "新 PR 到达时通过语音提醒我"
- "完成后停止监控"