microsoft / microsoft/vscode-pull-request-github

Assign MCPs & Tools to Copilot

未关闭
#7,955 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

feature-request
主要语言
TypeScript
星标
2.6k
派生
795
平均合并
1 天 4 小时
30 天内合并 PR
46

描述

Goal

I would like to be able to assign tools to Copilot when it is generating a PR title/description. It would be useful to allow it to access the Atlassian MCP and research the issue that I am working on, for example.

I could not find an issue related to this — please let me know if I missed it.

My Attempt

I've been able to assign a prompt as follows:

  1. Create a prompt at .github/prompts/pull-request-instructions.prompt.md:

    ---
    mode: agent
    tools: ['getJiraIssue', 'searchJiraIssuesUsingJql']
    ---
    When creating a pull request, please follow these guidelines to ensure clarity and consistency:
    
    1. **Issue Research (First Step):**
      - Before writing the title and description, check your branch name for an issue key and use the Atlassian MCP to research the Jira issue details if applicable.
      - Extract the issue key from your branch name (e.g., 'DEV-1234' from 'bf/mitch/DEV-1234-something-something').
      - Use `mcp_atlassian_atl_searchJiraIssuesUsingJql` or `mcp_atlassian_atl_getJiraIssue` with the extracted issue key to get the full issue context.
      - Review the issue summary, description, acceptance criteria, and any comments to understand the problem thoroughly.
      - This ensures your pull request accurately reflects the issue requirements and provides proper context.
    
    2. **Pull Request Title:**
      - If your branch name includes an issue key (e.g., 'DEV-1234'), start the title with this key in square brackets, followed by a space. For example: `[DEV-1234] Add User Authentication Feature`.
      - Use the issue summary from Jira as inspiration, but make it concise and specific to the changes made.
      - Use Title Case for the main title, capitalizing the first letter of each major word.
      - Keep the title descriptive of the actual solution implemented, not just the problem.
    
    3. **Pull Request Description:**
      - Begin the description with the issue key on its own line, formatted as `[DEV-1234]`.
      - Include a brief problem statement based on the Jira issue description - what was wrong or what needed to be addressed.
      - Reference the original issue's expected behavior or acceptance criteria where relevant.
      - Use bullet points to list the specific fixes or changes made in the pull request. This helps reviewers quickly understand the scope of your changes.
      - If the issue had multiple parts, address each part clearly.
      - Ensure that your description is clear and provides enough context for reviewers to understand the purpose and impact of your changes.
    
  2. Add the prompt to the instructions in .vscode/settings.json:

    "github.copilot.chat.pullRequestDescriptionGeneration.instructions": [
      {"file": ".github/prompts/pull-request-instructions.prompt.md"}
    ]
    
  3. Run the tool in GitHub Pull Requests UI when making a new PR.

However, it is obviously not using the MCP when I observe the emitted PR title & description. When checking the debug logs, it is showing that the prompt is not being parsed, but is copied verbatim into the custom instructions:

Image Image

Thanks

I appreciate any help with this, whether I am doing something wrong, or just some closure that what I am doing is not currently possible. This would be a very helpful feature!

Thank you!

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 .github/prompts/pull-request-instructions.prompt.md 中的 prompt 及其在 .vscode/settings.json 中的条目开始,然后在检查调试日志的同时复现 GitHub Pull Requests UI 的行为。当 pull request 标题和描述的生成可以使用分配的 MCP tools,或 issue 明确记录不支持此功能时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
github, typescript, vscode
领域
ai, developer-experience, tooling
Issue 类型
功能
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。