slack-mpm 0.1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. slack_mpm-0.1.1/.claude/agents/.dependency_cache +13 -0
  2. slack_mpm-0.1.1/.claude/agents/.mpm_deployment_state +11 -0
  3. slack_mpm-0.1.1/.claude/settings.local.json +128 -0
  4. slack_mpm-0.1.1/.claude/skills/mpm/SKILL.md +147 -0
  5. slack_mpm-0.1.1/.claude/skills/mpm-agent-update-workflow/SKILL.md +75 -0
  6. slack_mpm-0.1.1/.claude/skills/mpm-bug-reporting/SKILL.md +269 -0
  7. slack_mpm-0.1.1/.claude/skills/mpm-circuit-breaker-enforcement/SKILL.md +476 -0
  8. slack_mpm-0.1.1/.claude/skills/mpm-config/SKILL.md +29 -0
  9. slack_mpm-0.1.1/.claude/skills/mpm-delegation-patterns/SKILL.md +167 -0
  10. slack_mpm-0.1.1/.claude/skills/mpm-doctor/SKILL.md +53 -0
  11. slack_mpm-0.1.1/.claude/skills/mpm-git-file-tracking/SKILL.md +113 -0
  12. slack_mpm-0.1.1/.claude/skills/mpm-help/SKILL.md +35 -0
  13. slack_mpm-0.1.1/.claude/skills/mpm-init/SKILL.md +125 -0
  14. slack_mpm-0.1.1/.claude/skills/mpm-message/SKILL.md +181 -0
  15. slack_mpm-0.1.1/.claude/skills/mpm-postmortem/SKILL.md +22 -0
  16. slack_mpm-0.1.1/.claude/skills/mpm-pr-workflow/SKILL.md +124 -0
  17. slack_mpm-0.1.1/.claude/skills/mpm-session-management/SKILL.md +312 -0
  18. slack_mpm-0.1.1/.claude/skills/mpm-session-pause/SKILL.md +171 -0
  19. slack_mpm-0.1.1/.claude/skills/mpm-session-resume/SKILL.md +32 -0
  20. slack_mpm-0.1.1/.claude/skills/mpm-status/SKILL.md +37 -0
  21. slack_mpm-0.1.1/.claude/skills/mpm-teaching-mode/SKILL.md +657 -0
  22. slack_mpm-0.1.1/.claude/skills/mpm-ticket-view/SKILL.md +110 -0
  23. slack_mpm-0.1.1/.claude/skills/mpm-ticketing-integration/SKILL.md +154 -0
  24. slack_mpm-0.1.1/.claude/skills/mpm-tool-usage-guide/SKILL.md +386 -0
  25. slack_mpm-0.1.1/.claude/skills/mpm-verification-protocols/SKILL.md +198 -0
  26. slack_mpm-0.1.1/.claude-mpm/.gitignore +4 -0
  27. slack_mpm-0.1.1/.claude-mpm/config/project.json +11 -0
  28. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260304_162333_807.md +1442 -0
  29. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260305_142723_663.md +1442 -0
  30. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260306_055240_916.md +1442 -0
  31. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260306_055336_206.md +1442 -0
  32. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260306_070939_719.md +1442 -0
  33. slack_mpm-0.1.1/.claude-mpm/logs/prompts/system_prompt_20260306_132519_517.md +1442 -0
  34. slack_mpm-0.1.1/.claude-mpm/message_check_state.json +5 -0
  35. slack_mpm-0.1.1/.claude-mpm/pm_skills_registry.yaml +91 -0
  36. slack_mpm-0.1.1/.env.local.example +15 -0
  37. slack_mpm-0.1.1/.gitignore +19 -0
  38. slack_mpm-0.1.1/.pre-commit-config.yaml +118 -0
  39. slack_mpm-0.1.1/.secrets.baseline +345 -0
  40. slack_mpm-0.1.1/CLAUDE.md +85 -0
  41. slack_mpm-0.1.1/Makefile +447 -0
  42. slack_mpm-0.1.1/PKG-INFO +11 -0
  43. slack_mpm-0.1.1/README.md +279 -0
  44. slack_mpm-0.1.1/VERSION +1 -0
  45. slack_mpm-0.1.1/agents/slack_archiver.py +330 -0
  46. slack_mpm-0.1.1/agents/slack_digest.py +205 -0
  47. slack_mpm-0.1.1/agents/slack_listener.py +160 -0
  48. slack_mpm-0.1.1/agents/slack_notifier.py +146 -0
  49. slack_mpm-0.1.1/agents/slack_responder.py +228 -0
  50. slack_mpm-0.1.1/docs/research/credential-loading-analysis-2026-03-06.md +180 -0
  51. slack_mpm-0.1.1/mypy.ini +3 -0
  52. slack_mpm-0.1.1/pyproject.toml +48 -0
  53. slack_mpm-0.1.1/src/slack_mpm/VERSION +1 -0
  54. slack_mpm-0.1.1/src/slack_mpm/__init__.py +5 -0
  55. slack_mpm-0.1.1/src/slack_mpm/__version__.py +6 -0
  56. slack_mpm-0.1.1/src/slack_mpm/api/__init__.py +5 -0
  57. slack_mpm-0.1.1/src/slack_mpm/api/_client.py +106 -0
  58. slack_mpm-0.1.1/src/slack_mpm/api/bookmarks.py +69 -0
  59. slack_mpm-0.1.1/src/slack_mpm/api/channels.py +146 -0
  60. slack_mpm-0.1.1/src/slack_mpm/api/files.py +150 -0
  61. slack_mpm-0.1.1/src/slack_mpm/api/messages.py +264 -0
  62. slack_mpm-0.1.1/src/slack_mpm/api/reminders.py +60 -0
  63. slack_mpm-0.1.1/src/slack_mpm/api/scheduled.py +73 -0
  64. slack_mpm-0.1.1/src/slack_mpm/api/users.py +104 -0
  65. slack_mpm-0.1.1/src/slack_mpm/api/workspace.py +55 -0
  66. slack_mpm-0.1.1/src/slack_mpm/auth/__init__.py +6 -0
  67. slack_mpm-0.1.1/src/slack_mpm/auth/models.py +58 -0
  68. slack_mpm-0.1.1/src/slack_mpm/auth/token_manager.py +205 -0
  69. slack_mpm-0.1.1/src/slack_mpm/cli/__init__.py +1 -0
  70. slack_mpm-0.1.1/src/slack_mpm/cli/main.py +211 -0
  71. slack_mpm-0.1.1/src/slack_mpm/server/__init__.py +5 -0
  72. slack_mpm-0.1.1/src/slack_mpm/server/slack_mcp_server.py +1025 -0
  73. slack_mpm-0.1.1/tests/__init__.py +0 -0
  74. slack_mpm-0.1.1/tests/test_auth.py +175 -0
  75. slack_mpm-0.1.1/tests/test_server.py +181 -0
  76. slack_mpm-0.1.1/uv.lock +1594 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "08a4fa62924b8abea138e19e96516bc7": {
3
+ "timestamp": 1772776360.875742,
4
+ "results": {
5
+ "agents": {},
6
+ "summary": {
7
+ "total_agents": 0
8
+ }
9
+ },
10
+ "deployment_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
11
+ "context": {}
12
+ }
13
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "deployment_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
3
+ "last_check_time": 1772776360.875825,
4
+ "last_check_results": {
5
+ "agents": {},
6
+ "summary": {
7
+ "total_agents": 0
8
+ }
9
+ },
10
+ "agent_count": 0
11
+ }
@@ -0,0 +1,128 @@
1
+ {
2
+ "permissions": {
3
+ "allow": []
4
+ },
5
+ "enableAllProjectMcpServers": true,
6
+ "hooks": {
7
+ "PreToolUse": [
8
+ {
9
+ "matcher": "*",
10
+ "hooks": [
11
+ {
12
+ "type": "command",
13
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
14
+ }
15
+ ]
16
+ }
17
+ ],
18
+ "PostToolUse": [
19
+ {
20
+ "matcher": "*",
21
+ "hooks": [
22
+ {
23
+ "type": "command",
24
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
25
+ }
26
+ ]
27
+ }
28
+ ],
29
+ "Stop": [
30
+ {
31
+ "hooks": [
32
+ {
33
+ "type": "command",
34
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
35
+ }
36
+ ]
37
+ }
38
+ ],
39
+ "SubagentStop": [
40
+ {
41
+ "hooks": [
42
+ {
43
+ "type": "command",
44
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
45
+ }
46
+ ]
47
+ }
48
+ ],
49
+ "WorktreeCreate": [
50
+ {
51
+ "hooks": [
52
+ {
53
+ "type": "command",
54
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
55
+ }
56
+ ]
57
+ }
58
+ ],
59
+ "WorktreeRemove": [
60
+ {
61
+ "hooks": [
62
+ {
63
+ "type": "command",
64
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
65
+ }
66
+ ]
67
+ }
68
+ ],
69
+ "TeammateIdle": [
70
+ {
71
+ "hooks": [
72
+ {
73
+ "type": "command",
74
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
75
+ }
76
+ ]
77
+ }
78
+ ],
79
+ "TaskCompleted": [
80
+ {
81
+ "hooks": [
82
+ {
83
+ "type": "command",
84
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
85
+ }
86
+ ]
87
+ }
88
+ ],
89
+ "SessionStart": [
90
+ {
91
+ "matcher": "*",
92
+ "hooks": [
93
+ {
94
+ "type": "command",
95
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
96
+ }
97
+ ]
98
+ }
99
+ ],
100
+ "UserPromptSubmit": [
101
+ {
102
+ "matcher": "*",
103
+ "hooks": [
104
+ {
105
+ "type": "command",
106
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
107
+ }
108
+ ]
109
+ }
110
+ ],
111
+ "ConfigChange": [
112
+ {
113
+ "matcher": "*",
114
+ "hooks": [
115
+ {
116
+ "type": "command",
117
+ "command": "/Users/masa/.local/share/uv/tools/claude-mpm/lib/python3.12/site-packages/claude_mpm/scripts/claude-hook-fast.sh"
118
+ }
119
+ ]
120
+ }
121
+ ]
122
+ },
123
+ "enabledMcpjsonServers": [
124
+ "mcp-skillset",
125
+ "github",
126
+ "filesystem"
127
+ ]
128
+ }
@@ -0,0 +1,147 @@
1
+ ---
2
+ name: mpm
3
+ description: Access Claude MPM functionality and manage multi-agent orchestration
4
+ user-invocable: true
5
+ version: "2.0.0"
6
+ category: mpm-command
7
+ tags: [mpm-command, system, pm-required, framework]
8
+ ---
9
+
10
+ # /mpm - Claude MPM Framework Guide
11
+
12
+ ## What is Claude MPM?
13
+
14
+ Claude MPM (Multi-Agent Project Manager) extends Claude Code with multi-agent orchestration, project-specific PM instructions, persistent agent memory, real-time monitoring via a WebSocket dashboard, and automation hooks. A **PM agent** coordinates specialized agents to complete work through structured delegation using the Task tool. MPM manages skills deployment, agent selection, session continuity, and cross-project messaging.
15
+
16
+ ## How Delegation Works
17
+
18
+ The PM receives user requests and delegates to specialized agents via the **Task tool**:
19
+
20
+ ```
21
+ Task(description="[what to do]", subagent_type="[agent-type]")
22
+ ```
23
+
24
+ - PM analyzes the request, breaks it into subtasks, and selects the right agent for each
25
+ - Each agent focuses on its specialty and returns results to PM
26
+ - **Parallel execution** when tasks are independent (e.g., frontend + backend simultaneously)
27
+ - **Sequential execution** when tasks depend on each other (e.g., implement, then test, then deploy)
28
+ - Agents should focus on their delegated task and return clear results -- PM handles orchestration
29
+ - If an agent needs help from another specialty, it reports back to PM rather than self-delegating
30
+
31
+ **Typical workflow**: Research -> Engineer -> Ops (deploy) -> Ops (verify) -> QA -> Documentation
32
+
33
+ ## Available Agents
34
+
35
+ ### Core Agents (always deployed)
36
+
37
+ | Agent | subagent_type | Role |
38
+ |-------|---------------|------|
39
+ | Engineer | `engineer` | Code implementation, refactoring, debugging |
40
+ | Research | `Research` | Investigation, analysis, codebase exploration |
41
+ | QA | `qa` | Testing, validation, quality assurance |
42
+ | Documentation | `documentation` | Docs generation, API specs, guides |
43
+ | Ops | `ops` | Deployment, infrastructure, operations |
44
+ | Security | `security` | Vulnerability assessment, security review |
45
+ | Ticketing | `ticketing` | Ticket tracking and workflow management |
46
+
47
+ ### Extended Agents (deployed per project)
48
+
49
+ | Agent | subagent_type | Role |
50
+ |-------|---------------|------|
51
+ | Version Control | `version-control` | Git operations, PR management, tagging |
52
+ | Code Analyzer | `code-analyzer` | Codebase analysis, architecture review |
53
+ | Code Review | `code-review` | PR review, semantic analysis |
54
+ | Data Engineer | `data-engineer` | Database management, API integrations |
55
+ | Product Owner | `product-owner` | Requirements, user stories, prioritization |
56
+
57
+ ### Language-Specific Engineers
58
+
59
+ Deployed automatically based on project toolchain detection:
60
+
61
+ `python-engineer`, `typescript-engineer`, `javascript-engineer`, `golang-engineer`, `rust-engineer`, `java-engineer`, `ruby-engineer`, `php-engineer`, `dart-engineer`
62
+
63
+ **Framework specialists**: `nextjs-engineer`, `react-engineer`, `svelte-engineer`, `tauri-engineer`, `phoenix-engineer`
64
+
65
+ ### Platform Ops
66
+
67
+ `local-ops` (local dev, PM2, Docker), `vercel-ops`, `gcp-ops`, `digitalocean-ops`, `clerk-ops`, `railway-ops`
68
+
69
+ ### Specialized Agents
70
+
71
+ `api-qa`, `web-qa`, `code-review`, `code-analyzer`, `refactoring-engineer`, `prompt-engineer`, `content-agent`, `imagemagick`, `memory-manager`
72
+
73
+ ## Skills System
74
+
75
+ **Skills** are markdown files deployed to `.claude/skills/{name}/SKILL.md` that provide agents with specialized knowledge and procedures.
76
+
77
+ - **User-invocable skills** respond to `/skill-name` slash commands (e.g., `/mpm`, `/mpm-help`)
78
+ - **Non-invocable skills** activate automatically based on context triggers
79
+ - Skills have **frontmatter** with: `name`, `description`, `user-invocable`, `version`, `category`, `tags`
80
+ - **Categories**: `mpm-command`, `pm-workflow`, `pm-reference`, `toolchains-*`, `universal-*`
81
+ - **Progressive disclosure**: Metadata loads first; full content loads on trigger
82
+ - Skills can include `references/` subdirectories for detailed supplementary content
83
+
84
+ ## Memory System
85
+
86
+ Agent memories provide persistent context across sessions.
87
+
88
+ - **Storage**: `.claude-mpm/memories/{agent_id}_memories.md`
89
+ - PM manages memory files directly (read, consolidate, save)
90
+ - Each agent has domain-specific memory categories
91
+ - **Trigger phrases**: "remember", "don't forget", "always", "never", "going forward"
92
+ - **Size limit**: 80KB per file (~20k tokens)
93
+ - **Routing**: Keyword-based routing sends memories to the appropriate agent
94
+ - Memories are automatically loaded when an agent is delegated work
95
+
96
+ ## Hooks and Dashboard
97
+
98
+ Claude Code hooks capture tool usage, responses, and agent activity in real-time.
99
+
100
+ **Event flow**: Hook -> Connection Manager -> Monitor Server -> Dashboard
101
+
102
+ **Dashboard** at `http://localhost:8765/` shows:
103
+ - Tools being used and files being read/written
104
+ - Agent delegations and completions
105
+ - Session timeline and activity feed
106
+
107
+ **Monitor commands**: `/mpm-monitor start`, `/mpm-monitor stop`, `/mpm-monitor status`
108
+
109
+ ## Available Commands
110
+
111
+ | Command | Description |
112
+ |---------|-------------|
113
+ | `/mpm` | This guide -- MPM overview and framework reference |
114
+ | `/mpm-help` | Detailed help for MPM commands |
115
+ | `/mpm-init` | Initialize or update a project for MPM |
116
+ | `/mpm-status` | System health and status |
117
+ | `/mpm-doctor` | Run diagnostic checks |
118
+ | `/mpm-config` | Manage configuration |
119
+ | `/mpm-monitor` | Control monitoring server and dashboard |
120
+ | `/mpm-version` | Version information |
121
+ | `/mpm-message` | Cross-project messaging |
122
+ | `/mpm-organize` | Intelligent file consolidation |
123
+ | `/mpm-ticket-view` | Ticketing workflow management |
124
+ | `/mpm-session-pause` | Save session state for later |
125
+ | `/mpm-session-resume` | Resume from paused session |
126
+ | `/mpm-postmortem` | Analyze session errors |
127
+
128
+ ## Cross-Project Messaging
129
+
130
+ `/mpm-message` sends asynchronous messages between Claude MPM instances running in different projects on the same machine.
131
+
132
+ - Messages stored in a shared SQLite database at `~/.claude-mpm/messaging.db`
133
+ - Checked periodically: on session start, every 10 commands, every 30 minutes
134
+ - Message types: `task`, `request`, `notification`, `reply`
135
+ - Always use the `MessageService` API or `claude-mpm message` CLI -- never query the database directly
136
+
137
+ ## For Agents: How to Work Within MPM
138
+
139
+ When you receive a delegated task from PM:
140
+
141
+ 1. **Focus on your delegated task** -- PM handles orchestration and coordination
142
+ 2. **Return clear results with evidence**: file paths created/modified, test counts and pass rates, URLs, error details
143
+ 3. **Your agent memory is loaded automatically** -- reference it for project-specific conventions and past decisions
144
+ 4. **If you need another specialty**, report back to PM with what you need rather than self-delegating
145
+ 5. **Track files you create or modify** -- PM will handle git operations and file tracking
146
+ 6. **Follow project patterns** -- check your memory and existing code conventions before implementing
147
+ 7. **Escalate blockers immediately** -- do not silently fail or produce partial results without explanation
@@ -0,0 +1,75 @@
1
+ # PM Skill: Agent Update Workflow
2
+
3
+ ## Trigger Patterns
4
+ - "update agent", "fix agent", "improve agent", "modify agent"
5
+ - "change {agent-name} agent", "edit agent instructions"
6
+ - Any request to modify agent behavior
7
+
8
+ ## FUNDAMENTAL RULE: Official vs Custom Agents
9
+
10
+ ### Official MPM Agents (NEVER edit deployed copies)
11
+ **Source**: `~/.claude-mpm/cache/agents/` (from bobmatnyc/claude-mpm-agents repo)
12
+ **Deployed**: `.claude/agents/` - READ-ONLY for official agents
13
+
14
+ **Detection**: Check if agent exists in `~/.claude-mpm/cache/agents/`
15
+ - If YES → Official agent → Follow Official Agent Workflow
16
+ - If NO → Custom agent → Can edit `.claude/agents/` directly
17
+
18
+ ### Custom/Localized Agents
19
+ - Created specifically for project
20
+ - Can be edited directly in `.claude/agents/`
21
+ - Not part of official MPM agent set
22
+
23
+ ## Official Agent Update Workflow
24
+
25
+ ### Step 1: Identify Agent Source
26
+ ```bash
27
+ ls ~/.claude-mpm/cache/agents/ # Find the source file
28
+ ```
29
+
30
+ ### Step 2: Update Source
31
+ Edit the agent source in `~/.claude-mpm/cache/agents/{agent-name}.md`
32
+ (or appropriate path based on agent structure)
33
+
34
+ ### Step 3: Rebuild and Redeploy
35
+ Use MPM deployment tools:
36
+ ```bash
37
+ # Redeploy specific agent
38
+ mpm agents deploy {agent-name}
39
+
40
+ # Or redeploy all agents
41
+ mpm agents deploy --all
42
+ ```
43
+
44
+ ### Step 4: Validate (claude-mpm project only)
45
+ When working in the claude-mpm project itself:
46
+ ```bash
47
+ # Run deepeval against deployed agent instructions
48
+ deepeval test --agent {agent-name}
49
+ ```
50
+
51
+ ## Circuit Breaker
52
+
53
+ **BLOCK** if attempting to edit `.claude/agents/{official-agent}.md` directly:
54
+ - Official agents in deployed location are BUILD OUTPUTS
55
+ - Must update source → rebuild → redeploy
56
+ - Violation = architectural breach
57
+
58
+ ## Examples
59
+
60
+ ### ❌ WRONG (Editing deployed official agent)
61
+ ```
62
+ Edit: .claude/agents/web-qa.md # VIOLATION - this is a built output
63
+ ```
64
+
65
+ ### ✅ CORRECT (Updating source and redeploying)
66
+ ```
67
+ 1. Edit: ~/.claude-mpm/cache/agents/web-qa.md # Update source
68
+ 2. Run: mpm agents deploy web-qa # Rebuild/redeploy
69
+ 3. Validate: deepeval test --agent web-qa # (in claude-mpm project)
70
+ ```
71
+
72
+ ### ✅ CORRECT (Custom agent - can edit directly)
73
+ ```
74
+ Edit: .claude/agents/my-custom-agent.md # OK - not an official agent
75
+ ```
@@ -0,0 +1,269 @@
1
+ ---
2
+ name: pm-bug-reporting
3
+ version: "1.0.0"
4
+ description: Bug reporting protocol for PM and agents to file GitHub issues
5
+ when_to_use: Framework bugs, agent errors, skill content errors detected
6
+ category: pm-workflow
7
+ tags: [bug-reporting, github, issues, pm-required]
8
+ ---
9
+
10
+ # PM Bug Reporting Protocol
11
+
12
+ ## When to Report Bugs
13
+
14
+ Report bugs when you encounter:
15
+ - **PM instruction errors** or missing guidance
16
+ - **Agent malfunction** or incorrect behavior
17
+ - **Skill content errors** or outdated information
18
+ - **Framework crashes** or unexpected behavior
19
+ - **Missing or incorrect documentation**
20
+ - **Configuration errors** or invalid defaults
21
+
22
+ ## GitHub Repositories
23
+
24
+ Route bugs to the correct repository:
25
+
26
+ | Bug Type | Repository | Owner/Repo |
27
+ |----------|------------|------------|
28
+ | Core MPM (CLI, startup, config, orchestration) | claude-mpm | bobmatnyc/claude-mpm |
29
+ | Agent bugs (wrong behavior, errors, missing capabilities) | claude-mpm-agents | bobmatnyc/claude-mpm-agents |
30
+ | Skill bugs (wrong info, outdated, missing content) | claude-mpm-skills | bobmatnyc/claude-mpm-skills |
31
+
32
+ ### External System Bug Routing
33
+
34
+ **Decision tree:**
35
+ - Bug in MPM startup/config/delegation → `bobmatnyc/claude-mpm`
36
+ - Bug in agent behavior → `bobmatnyc/claude-mpm-agents`
37
+ - Bug in skill content → `bobmatnyc/claude-mpm-skills`
38
+ - Bug in external system (installed via setup) → That system's GitHub repo
39
+
40
+ **External systems installed via `claude-mpm setup`:**
41
+ - `kuzu-memory` → File issue at kuzu-memory's GitHub
42
+ - `mcp-vector-search` → File issue at mcp-vector-search's GitHub
43
+ - `slack-user-proxy` → File issue at slack-user-proxy's GitHub
44
+ - `google-workspace-mpm` → File issue at google-workspace-mpm's GitHub
45
+ - Other MCP servers → Check their GitHub repos
46
+
47
+ **Examples:**
48
+ - "Vector search returns no results" → mcp-vector-search repo
49
+ - "Kuzu memory fails to persist" → kuzu-memory repo
50
+ - "PM fails to delegate" → claude-mpm repo
51
+ - "Research agent crashes" → claude-mpm-agents repo
52
+
53
+ ## Bug Report Template
54
+
55
+ When creating an issue, include:
56
+
57
+ ### Title
58
+ Brief, descriptive title (50 chars max)
59
+ - ✅ "PM delegates to non-existent agent"
60
+ - ✅ "Research skill missing web search examples"
61
+ - ❌ "Bug in system"
62
+ - ❌ "Fix this"
63
+
64
+ ### Labels
65
+ Always include:
66
+ - `bug` (required)
67
+ - `agent-reported` (required)
68
+ - Additional context labels:
69
+ - `high-priority` - Critical functionality broken
70
+ - `documentation` - Documentation error
71
+ - `agent-error` - Agent-specific issue
72
+ - `skill-error` - Skill content issue
73
+
74
+ ### Body Structure
75
+ ```markdown
76
+ ## What Happened
77
+ [Clear description of the bug]
78
+
79
+ ## Expected Behavior
80
+ [What should have happened]
81
+
82
+ ## Steps to Reproduce
83
+ 1. [First step]
84
+ 2. [Second step]
85
+ 3. [Third step]
86
+
87
+ ## Context
88
+ - Agent: [agent name if applicable]
89
+ - Skill: [skill name if applicable]
90
+ - Error Message: [full error if available]
91
+ - Version: [MPM version if known]
92
+
93
+ ## Impact
94
+ [How this affects users/workflow]
95
+ ```
96
+
97
+ ## Using gh CLI
98
+
99
+ ### Prerequisites Check
100
+ ```bash
101
+ gh auth status
102
+ ```
103
+
104
+ If not authenticated:
105
+ ```bash
106
+ gh auth login
107
+ ```
108
+
109
+ ### Creating Issues
110
+
111
+ **Delegate to ticketing agent** with:
112
+ ```
113
+ Task:
114
+ agent: ticketing
115
+ task: Create GitHub issue for [bug type]
116
+ context: |
117
+ Repository: bobmatnyc/claude-mpm[-agents|-skills]
118
+ Title: [brief title]
119
+ Labels: bug, agent-reported
120
+ Body: |
121
+ ## What Happened
122
+ [description]
123
+
124
+ ## Expected Behavior
125
+ [expected]
126
+
127
+ ## Steps to Reproduce
128
+ 1. [step 1]
129
+ 2. [step 2]
130
+
131
+ ## Context
132
+ - Agent: [agent name]
133
+ - Error: [error message]
134
+
135
+ ## Impact
136
+ [impact description]
137
+ ```
138
+
139
+ ## Examples
140
+
141
+ ### Core MPM Bug
142
+ ```
143
+ Task:
144
+ agent: ticketing
145
+ task: Create GitHub issue for core MPM bug
146
+ context: |
147
+ Repository: bobmatnyc/claude-mpm
148
+ Title: PM fails to load configuration on startup
149
+ Labels: bug, agent-reported, high-priority
150
+ Body: |
151
+ ## What Happened
152
+ PM fails to initialize when configuration.yaml contains invalid syntax.
153
+ No clear error message shown to user.
154
+
155
+ ## Expected Behavior
156
+ PM should display clear YAML syntax error with line number and fix suggestion.
157
+
158
+ ## Steps to Reproduce
159
+ 1. Add invalid YAML to .claude-mpm/configuration.yaml
160
+ 2. Run `mpm`
161
+ 3. Observe generic error without details
162
+
163
+ ## Context
164
+ - Component: Configuration loader
165
+ - Error: "Failed to load configuration"
166
+ - Version: 5.4.x
167
+
168
+ ## Impact
169
+ Users cannot diagnose configuration errors, requiring manual YAML validation.
170
+ ```
171
+
172
+ ### Agent Bug
173
+ ```
174
+ Task:
175
+ agent: ticketing
176
+ task: Create GitHub issue for agent bug
177
+ context: |
178
+ Repository: bobmatnyc/claude-mpm-agents
179
+ Title: Research agent fails to search with special characters
180
+ Labels: bug, agent-reported, agent-error
181
+ Body: |
182
+ ## What Happened
183
+ Research agent throws error when search query contains quotes or special chars.
184
+
185
+ ## Expected Behavior
186
+ Search queries should be properly escaped and executed.
187
+
188
+ ## Steps to Reproduce
189
+ 1. Delegate to research: "Search for 'React hooks'"
190
+ 2. Research agent attempts search
191
+ 3. Error: "Invalid search query"
192
+
193
+ ## Context
194
+ - Agent: research
195
+ - Error: grep command fails with unescaped quotes
196
+
197
+ ## Impact
198
+ Cannot search for quoted phrases or technical terms with special characters.
199
+ ```
200
+
201
+ ### Skill Bug
202
+ ```
203
+ Task:
204
+ agent: ticketing
205
+ task: Create GitHub issue for skill content error
206
+ context: |
207
+ Repository: bobmatnyc/claude-mpm-skills
208
+ Title: Git workflow skill contains outdated branch strategy
209
+ Labels: bug, agent-reported, documentation, skill-error
210
+ Body: |
211
+ ## What Happened
212
+ Skill recommends `git flow` branching model, which project no longer uses.
213
+ Current standard is trunk-based development.
214
+
215
+ ## Expected Behavior
216
+ Skill should document current trunk-based workflow.
217
+
218
+ ## Context
219
+ - Skill: git-workflow.md
220
+ - Section: "Branching Strategy"
221
+ - Line: 45-60
222
+
223
+ ## Impact
224
+ Agents follow outdated branching model, creating workflow friction.
225
+ ```
226
+
227
+ ## Escalation Path
228
+
229
+ When ticketing agent is unavailable or gh CLI fails:
230
+
231
+ 1. **Log locally** for manual reporting:
232
+ ```
233
+ echo "[BUG] $(date): [description]" >> .claude-mpm/logs/bugs.log
234
+ ```
235
+
236
+ 2. **Report to PM** for alternative action:
237
+ ```
238
+ PM should create ticket in primary ticketing system (Linear/JIRA)
239
+ with note to create GitHub issue once available
240
+ ```
241
+
242
+ 3. **User notification**:
243
+ ```
244
+ "Bug detected: [description]. Logged for manual GitHub issue creation."
245
+ ```
246
+
247
+ ## Success Criteria
248
+
249
+ Bug reporting successful when:
250
+ - ✅ Issue created in correct repository
251
+ - ✅ All required labels applied (`bug`, `agent-reported`)
252
+ - ✅ Body follows template structure
253
+ - ✅ Title is clear and concise
254
+ - ✅ Context includes agent/skill name if applicable
255
+ - ✅ Issue URL returned for tracking
256
+
257
+ ## PM Enforcement
258
+
259
+ PM MUST:
260
+ - Detect bugs during agent interactions
261
+ - Delegate bug reporting to ticketing agent
262
+ - NOT attempt to create GitHub issues directly
263
+ - Follow escalation path if ticketing unavailable
264
+ - Log all bug reports for audit trail
265
+
266
+ ## Related Skills
267
+ - [pm-ticketing-integration.md](pm-ticketing-integration.md) - Ticket delegation patterns
268
+ - [pm-delegation-patterns.md](pm-delegation-patterns.md) - General delegation guidance
269
+ - [ticketing-examples.md](ticketing-examples.md) - Ticketing delegation examples