From 5e6e6abd20602b8120c8ea0da4f49d81c6d205f5 Mon Sep 17 00:00:00 2001 From: Jonah Schulte Date: Thu, 8 Jan 2026 20:56:54 -0500 Subject: [PATCH] fix: use MCP parameters instead of URLs in bootstrap prompts Update all bootstrap prompts to use the correct GitHub MCP format: owner: YOUR-ORG repo: YOUR-REPO path: src/modules/bmm/agents/po.agent.yaml Instead of URLs like github.com/YOUR-ORG/YOUR-REPO which don't work with MCP tools. Also added: - GitHub Enterprise note for enterprise hosts - Reference to auto-generated bootstrap file - MCP tools reference section --- .../installation/claude-desktop-github.md | 45 +++++--- .../prompts/claude-desktop-po-bootstrap.md | 108 ++++++++++-------- .../installers/lib/utils/git-repo-detector.js | 74 ++++++++---- 3 files changed, 140 insertions(+), 87 deletions(-) diff --git a/docs/how-to/installation/claude-desktop-github.md b/docs/how-to/installation/claude-desktop-github.md index 6f6c0827..af720ebb 100644 --- a/docs/how-to/installation/claude-desktop-github.md +++ b/docs/how-to/installation/claude-desktop-github.md @@ -173,35 +173,48 @@ This gives Claude the full BMAD methodology documentation. Copy and paste this into Claude Desktop to get started immediately: -### Minimal Version +### Quick Version ``` -Load the Product Owner agent from github.com/YOUR-ORG/YOUR-REPO -(path: src/modules/bmm/agents/po.agent.yaml) and enter PO mode. -Show me what needs my attention. +Use GitHub MCP to fetch and embody the BMAD Product Owner agent. + +Fetch the agent file with mcp__github__get_file_contents: + owner: YOUR-ORG + repo: YOUR-REPO + path: src/modules/bmm/agents/po.agent.yaml + +After reading: +1. Embody the agent persona (name, role, principles) +2. Show me available commands +3. Check what PRDs or tasks need my attention ``` ### Full Version ``` -Fetch and embody the BMAD Product Owner agent. +I need you to act as the BMAD Product Owner agent. -1. Read the agent definition from GitHub: - - Repository: YOUR-ORG/YOUR-REPO - - Path: src/modules/bmm/agents/po.agent.yaml +Step 1: Fetch the agent definition using GitHub MCP +Use mcp__github__get_file_contents with: + owner: YOUR-ORG + repo: YOUR-REPO + path: src/modules/bmm/agents/po.agent.yaml -2. After reading, fully embody this agent: - - Adopt the persona (name, role, communication style) - - Internalize all principles - - Make the menu commands available +Step 2: Fully embody this agent + - Adopt the persona (name: Sarah, role: Product Owner) + - Internalize all principles from the file + - Make the menu commands available + - Use GitHub MCP tools for all GitHub operations -3. Introduce yourself and show the available commands. +Step 3: Introduce yourself and show available commands -4. Then check: what PRDs or stories need my attention? - -Use GitHub MCP tools (mcp__github__*) for all GitHub operations. +Step 4: Check what PRDs or stories need my attention ``` Replace `YOUR-ORG` and `YOUR-REPO` with your actual repository details. +### Auto-Generated Bootstrap + +When you run `npx bmad-method install`, a pre-filled version is generated at `_bmad/claude-desktop-bootstrap.md` with your repo details already filled in. + For more bootstrap prompts (including stakeholder-specific versions), see: `resources/prompts/claude-desktop-po-bootstrap.md` diff --git a/resources/prompts/claude-desktop-po-bootstrap.md b/resources/prompts/claude-desktop-po-bootstrap.md index 9e96a760..2e5e6230 100644 --- a/resources/prompts/claude-desktop-po-bootstrap.md +++ b/resources/prompts/claude-desktop-po-bootstrap.md @@ -1,29 +1,23 @@ # BMAD Product Owner - Claude Desktop Bootstrap -Copy and paste this entire prompt into Claude Desktop to activate the Product Owner agent. +Copy and paste one of these prompts into Claude Desktop to activate the Product Owner agent. --- -## Quick Start (Replace YOUR-ORG/YOUR-REPO) +## Quick Start (Replace YOUR-ORG and YOUR-REPO) ``` -Fetch and embody the BMAD Product Owner agent. +Use GitHub MCP to fetch and embody the BMAD Product Owner agent. -1. Read the agent definition from GitHub: - - Repository: YOUR-ORG/YOUR-REPO - - Path: src/modules/bmm/agents/po.agent.yaml +Fetch the agent file with mcp__github__get_file_contents: + owner: YOUR-ORG + repo: YOUR-REPO + path: src/modules/bmm/agents/po.agent.yaml -2. After reading, fully embody this agent: - - Adopt the persona (name, role, communication style) - - Internalize all principles - - Make the menu commands available - - Load any prompts defined in the file - -3. Introduce yourself and show the available commands. - -4. Then check: what PRDs or stories need my attention? - -Use GitHub MCP tools (mcp__github__*) for all GitHub operations. +After reading: +1. Embody the agent persona (name, role, principles) +2. Show me available commands +3. Check what PRDs or tasks need my attention ``` --- @@ -31,62 +25,72 @@ Use GitHub MCP tools (mcp__github__*) for all GitHub operations. ## Example with Real Repository ``` -Fetch and embody the BMAD Product Owner agent. +Use GitHub MCP to fetch and embody the BMAD Product Owner agent. -1. Read the agent definition from GitHub: - - Repository: acme-corp/acme-platform - - Path: src/modules/bmm/agents/po.agent.yaml +Fetch the agent file with mcp__github__get_file_contents: + owner: acme-corp + repo: acme-platform + path: src/modules/bmm/agents/po.agent.yaml -2. After reading, fully embody this agent: - - Adopt the persona (name, role, communication style) - - Internalize all principles - - Make the menu commands available - - Load any prompts defined in the file - -3. Introduce yourself and show the available commands. - -4. Then check: what PRDs or stories need my attention? - -Use GitHub MCP tools (mcp__github__*) for all GitHub operations. +After reading: +1. Embody the agent persona (name, role, principles) +2. Show me available commands +3. Check what PRDs or tasks need my attention ``` --- -## Minimal Version - -If you just want the shortest possible bootstrap: +## Full Version ``` -Load the Product Owner agent from github.com/YOUR-ORG/YOUR-REPO -(path: src/modules/bmm/agents/po.agent.yaml) and enter PO mode. -Show me what needs my attention. +I need you to act as the BMAD Product Owner agent. + +Step 1: Fetch the agent definition using GitHub MCP +Use mcp__github__get_file_contents with: + owner: YOUR-ORG + repo: YOUR-REPO + path: src/modules/bmm/agents/po.agent.yaml + +Step 2: Fully embody this agent + - Adopt the persona (name: Sarah, role: Product Owner) + - Internalize all principles from the file + - Make the menu commands available + - Use GitHub MCP tools for all GitHub operations + +Step 3: Introduce yourself and show available commands + +Step 4: Check what PRDs or stories need my attention ``` --- ## For Stakeholders (Non-PO Team Members) -Stakeholders who just need to give feedback on PRDs can use a lighter prompt: +Stakeholders who just need to give feedback on PRDs: ``` I'm a stakeholder who needs to review PRDs and give feedback. -Load the Product Owner agent from github.com/YOUR-ORG/YOUR-REPO -(path: src/modules/bmm/agents/po.agent.yaml) +Fetch the Product Owner agent using GitHub MCP: + owner: YOUR-ORG + repo: YOUR-REPO + path: src/modules/bmm/agents/po.agent.yaml Then show me: 1. What PRDs need my feedback 2. What PRDs need my sign-off -I'll mainly use these commands: -- MT (my tasks) -- SF (submit feedback) -- SO (sign off) -- VF (view feedback) +I'll mainly use: MT (my tasks), SF (submit feedback), SO (sign off) ``` --- +## For GitHub Enterprise + +If using GitHub Enterprise (e.g., `ghe.company.com`), ensure your GitHub MCP is configured for your enterprise host. The prompts above work the same - just use your enterprise org and repo names. + +--- + ## Prerequisites Before using these prompts, ensure: @@ -95,4 +99,16 @@ Before using these prompts, ensure: 2. **Your repo has BMAD installed** (has `src/modules/bmm/agents/` folder) 3. **Your GitHub token** has `repo` and `issues` scopes +--- + +## Auto-Generated Bootstrap + +When you run `npx bmad-method install`, a pre-filled bootstrap prompt is generated at: + +``` +_bmad/claude-desktop-bootstrap.md +``` + +This file has your org/repo already filled in - just copy and paste! + See the full setup guide: `docs/how-to/installation/claude-desktop-github.md` diff --git a/tools/cli/installers/lib/utils/git-repo-detector.js b/tools/cli/installers/lib/utils/git-repo-detector.js index acc9182d..379962ea 100644 --- a/tools/cli/installers/lib/utils/git-repo-detector.js +++ b/tools/cli/installers/lib/utils/git-repo-detector.js @@ -76,13 +76,17 @@ function detectGitRepo(projectDir) { * @returns {string} The bootstrap prompt content */ function generateBootstrapPrompt(repoInfo, agentPath = 'src/modules/bmm/agents/po.agent.yaml') { - const repoRef = repoInfo.isEnterprise - ? `${repoInfo.host}/${repoInfo.owner}/${repoInfo.repo}` - : `${repoInfo.owner}/${repoInfo.repo}`; + // For GitHub Enterprise, note it may require different MCP config + const enterpriseNote = repoInfo.isEnterprise + ? ` + +> **Note:** This is a GitHub Enterprise repository (${repoInfo.host}). +> Ensure your GitHub MCP is configured for this host.` + : ''; return `# BMAD Product Owner - Claude Desktop Bootstrap -This prompt is pre-configured for your repository. +This prompt is pre-configured for your repository.${enterpriseNote} --- @@ -91,9 +95,17 @@ This prompt is pre-configured for your repository. Copy and paste this into Claude Desktop: \`\`\` -Load the Product Owner agent from ${repoInfo.fullUrl} -(path: ${agentPath}) and enter PO mode. -Show me what needs my attention. +Use GitHub MCP to fetch and embody the BMAD Product Owner agent. + +Fetch the agent file with mcp__github__get_file_contents: + owner: ${repoInfo.owner} + repo: ${repoInfo.repo} + path: ${agentPath} + +After reading: +1. Embody the agent persona (name, role, principles) +2. Show me available commands +3. Check what PRDs or tasks need my attention \`\`\` --- @@ -101,23 +113,23 @@ Show me what needs my attention. ## Full Version \`\`\` -Fetch and embody the BMAD Product Owner agent. +I need you to act as the BMAD Product Owner agent. -1. Read the agent definition from GitHub: - - Host: ${repoInfo.host} - - Repository: ${repoInfo.owner}/${repoInfo.repo} - - Path: ${agentPath} +Step 1: Fetch the agent definition using GitHub MCP +Use mcp__github__get_file_contents with: + owner: ${repoInfo.owner} + repo: ${repoInfo.repo} + path: ${agentPath} -2. After reading, fully embody this agent: - - Adopt the persona (name, role, communication style) - - Internalize all principles - - Make the menu commands available +Step 2: Fully embody this agent + - Adopt the persona (name: Sarah, role: Product Owner) + - Internalize all principles from the file + - Make the menu commands available + - Use GitHub MCP tools for all GitHub operations -3. Introduce yourself and show the available commands. +Step 3: Introduce yourself and show available commands -4. Then check: what PRDs or stories need my attention? - -Use GitHub MCP tools (mcp__github__*) for all GitHub operations. +Step 4: Check what PRDs or stories need my attention \`\`\` --- @@ -127,8 +139,10 @@ Use GitHub MCP tools (mcp__github__*) for all GitHub operations. \`\`\` I'm a stakeholder who needs to review PRDs and give feedback. -Load the Product Owner agent from ${repoInfo.fullUrl} -(path: ${agentPath}) +Fetch the Product Owner agent using GitHub MCP: + owner: ${repoInfo.owner} + repo: ${repoInfo.repo} + path: ${agentPath} Then show me: 1. What PRDs need my feedback @@ -143,11 +157,21 @@ I'll mainly use: MT (my tasks), SF (submit feedback), SO (sign off) | Field | Value | |-------|-------| -| Host | ${repoInfo.host} | -| Owner | ${repoInfo.owner} | -| Repo | ${repoInfo.repo} | +| Owner | \`${repoInfo.owner}\` | +| Repo | \`${repoInfo.repo}\` | +| Host | \`${repoInfo.host}\` | | Enterprise | ${repoInfo.isEnterprise ? 'Yes' : 'No'} | +--- + +## GitHub MCP Reference + +All operations use these GitHub MCP tools: +- \`mcp__github__get_file_contents\` - Read files from repo +- \`mcp__github__search_issues\` - Find PRDs and stories +- \`mcp__github__issue_write\` - Create/update issues +- \`mcp__github__add_issue_comment\` - Add feedback + Generated during BMAD installation. `; }