名称: pm-错误报告 版本: “1.0.0” 描述: PM和代理提交GitHub问题的错误报告协议 使用时机: 检测到框架错误、代理错误、技能内容错误时 类别: pm-工作流 标签: [错误报告, github, 问题, pm-必需]
PM 错误报告协议
何时报告错误
当遇到以下情况时报告错误:
- PM 指令错误 或缺少指导
- 代理故障 或不正确行为
- 技能内容错误 或过时信息
- 框架崩溃 或意外行为
- 缺失或不正确的文档
- 配置错误 或无效默认值
GitHub 仓库
将错误路由到正确的仓库:
| 错误类型 | 仓库 | 所有者/仓库 |
|---|---|---|
| 核心 MPM(CLI、启动、配置、编排) | claude-mpm | bobmatnyc/claude-mpm |
| 代理错误(错误行为、错误、缺少能力) | claude-mpm-agents | bobmatnyc/claude-mpm-agents |
| 技能错误(错误信息、过时、缺少内容) | claude-mpm-skills | bobmatnyc/claude-mpm-skills |
外部系统错误路由
决策树:
- MPM 启动/配置/委托中的错误 →
bobmatnyc/claude-mpm - 代理行为中的错误 →
bobmatnyc/claude-mpm-agents - 技能内容中的错误 →
bobmatnyc/claude-mpm-skills - 外部系统中的错误(通过安装安装) → 该系统的 GitHub 仓库
通过 claude-mpm setup 安装的外部系统:
kuzu-memory→ 在 kuzu-memory 的 GitHub 提交问题mcp-vector-search→ 在 mcp-vector-search 的 GitHub 提交问题slack-user-proxy→ 在 slack-user-proxy 的 GitHub 提交问题google-workspace-mpm→ 在 google-workspace-mpm 的 GitHub 提交问题- 其他 MCP 服务器 → 检查其 GitHub 仓库
示例:
- “向量搜索无结果” → mcp-vector-search 仓库
- “Kuzu 内存持久化失败” → kuzu-memory 仓库
- “PM 委托失败” → claude-mpm 仓库
- “研究代理崩溃” → claude-mpm-agents 仓库
错误报告模板
创建问题时,包括:
标题
简短、描述性标题(最多 50 字符)
- ✅ “PM 委托给不存在的代理”
- ✅ “研究技能缺少网络搜索示例”
- ❌ “系统中的错误”
- ❌ “修复这个”
标签
始终包括:
bug(必需)agent-reported(必需)- 额外上下文标签:
high-priority- 关键功能损坏documentation- 文档错误agent-error- 代理特定问题skill-error- 技能内容问题
正文结构
## 发生了什么
[错误的清晰描述]
## 预期行为
[应该发生什么]
## 重现步骤
1. [第一步]
2. [第二步]
3. [第三步]
## 上下文
- 代理:[代理名称,如果适用]
- 技能:[技能名称,如果适用]
- 错误消息:[完整错误,如果有]
- 版本:[MPM 版本,如果已知]
## 影响
[这如何影响用户/工作流]
使用 gh CLI
先决条件检查
gh auth status
如果未认证:
gh auth login
创建问题
委托给票务代理:
任务:
代理: ticketing
任务: 为 [错误类型] 创建 GitHub 问题
上下文: |
仓库: bobmatnyc/claude-mpm[-agents|-skills]
标题: [简短标题]
标签: bug, agent-reported
正文: |
## 发生了什么
[描述]
## 预期行为
[预期]
## 重现步骤
1. [步骤 1]
2. [步骤 2]
## 上下文
- 代理: [代理名称]
- 错误: [错误消息]
## 影响
[影响描述]
示例
核心 MPM 错误
任务:
代理: ticketing
任务: 为核心 MPM 错误创建 GitHub 问题
上下文: |
仓库: bobmatnyc/claude-mpm
标题: PM 启动时无法加载配置
标签: bug, agent-reported, high-priority
正文: |
## 发生了什么
当 configuration.yaml 包含无效语法时,PM 无法初始化。
没有向用户显示清晰的错误消息。
## 预期行为
PM 应显示清晰的 YAML 语法错误,包括行号和修复建议。
## 重现步骤
1. 在 .claude-mpm/configuration.yaml 中添加无效 YAML
2. 运行 `mpm`
3. 观察无详细信息的通用错误
## 上下文
- 组件: 配置加载器
- 错误: “无法加载配置”
- 版本: 5.4.x
## 影响
用户无法诊断配置错误,需要手动验证 YAML。
代理错误
任务:
代理: ticketing
任务: 为代理错误创建 GitHub 问题
上下文: |
仓库: bobmatnyc/claude-mpm-agents
标题: 研究代理在搜索包含特殊字符时失败
标签: bug, agent-reported, agent-error
正文: |
## 发生了什么
研究代理在搜索查询包含引号或特殊字符时抛出错误。
## 预期行为
搜索查询应被正确转义和执行。
## 重现步骤
1. 委托给研究: “搜索 'React hooks'”
2. 研究代理尝试搜索
3. 错误: “无效搜索查询”
## 上下文
- 代理: research
- 错误: grep 命令因未转义引号失败
## 影响
无法搜索带引号的短语或包含特殊字符的技术术语。
技能错误
任务:
代理: ticketing
任务: 为技能内容错误创建 GitHub 问题
上下文: |
仓库: bobmatnyc/claude-mpm-skills
标题: Git 工作流技能包含过时的分支策略
标签: bug, agent-reported, documentation, skill-error
正文: |
## 发生了什么
技能推荐使用 `git flow` 分支模型,但项目已不再使用。
当前标准是基于主干开发。
## 预期行为
技能应记录当前基于主干的工作流。
## 上下文
- 技能: git-workflow.md
- 部分: “分支策略”
- 行: 45-60
## 影响
代理遵循过时的分支模型,造成工作流摩擦。
升级路径
当票务代理不可用或 gh CLI 失败时:
-
本地记录 以备手动报告:
echo "[BUG] $(date): [描述]" >> .claude-mpm/logs/bugs.log -
报告给 PM 以备替代操作:
PM 应在主要票务系统(Linear/JIRA)中创建工单 并在可用时备注创建 GitHub 问题 -
用户通知:
“检测到错误:[描述]。已记录以备手动创建 GitHub 问题。”
成功标准
错误报告成功时:
- ✅ 问题在正确仓库中创建
- ✅ 所有必需标签应用(
bug,agent-reported) - ✅ 正文遵循模板结构
- ✅ 标题清晰简洁
- ✅ 上下文包括代理/技能名称(如果适用)
- ✅ 返回问题 URL 以供跟踪
PM 执行
PM 必须:
- 在代理交互中检测错误
- 将错误报告委托给票务代理
- 不尝试直接创建 GitHub 问题
- 如果票务不可用,遵循升级路径
- 记录所有错误报告以进行审计跟踪
相关技能
- pm-ticketing-integration.md - 工单委托模式
- pm-delegation-patterns.md - 一般委托指导
- ticketing-examples.md - 工单委托示例