AI计划
GitHub Copilot和异步工程团队的工作树感知公关智能系统。
它做什么
此存储库提供了一个本地MCP服务器,可帮助团队回答:
- 谁改变了这个地区?
- 为什么它被改变了?
- 我不在的时候,什么降落在主甲板上了?
- 在计划新工作之前,我应该复习什么?
当前的系统不再仅依赖于提交搜索,而是结合了:
- 本地git历史
- GitHub公关描述
- GitHub公关评论和评论
- 促进决策/阻断上下文
- 用于并行功能会话的活动git工作树
当前MCP工具
sync_pr_contextbuild_context_packpromote_context_factsarchive_feature_contextlist_active_worktreeswho_changed_thiswhy_was_this_changedget_main_branch_overnight_briefresume_feature_session_briefpre_plan_sync_brief
突破性变化
这些旧工具已被移除:
search_related_commitsexplain_commit_matchget_commit_diffreindex_commits
看 对于当前的工作流合同。
为什么存在
异步团队在三个方面失去了上下文:
- 提交消息描述了一个小的更改,但不是最终的功能决定。
- 公关评论包含重要的讨论,但它们很吵,以后很难恢复。
- 工程师们会切换树枝和工作树,在计划之前需要一份快速的“我睡觉时发生了什么变化”简报。
该项目使PR描述成为规范的特征叙述,将审查讨论视为次要证据,并在实施开始前制作一份计划前同步简报。
快速开始
1.安装和构建
npm install
cd packages/commit-rag-mcp
npm run build2.在VS代码中配置MCP
工作区已包含 mcp.json.
重新加载VS代码并启用 commit-memory-mcp MCP工具面板中的服务器。
3.验证GitHub CLI
gh auth status如果 gh 未通过身份验证,PR同步工具无法获取PR描述/评论/评论。
4.从预先计划简报开始
让Copilot运行:
Run pre_plan_sync_brief for MaxwellClinic-Development/EverBetter-Pro或者直接通过MCP调用该工具。
推荐的团队工作流程
- 开始每个编码会话
pre_plan_sync_brief. - 在更改代码之前,请先审查阻断器级别的决定。
- 检查
resume_feature_session_brief在重设基准或重大合并之后。 - 根据审查线程的最终决定更新公关描述。
上下文分区流
为了避免功能增长时出现过大的提示,请在作用域分区中不断更改上下文:
- 与同步上下文
sync_pr_context使用域/特征/分支/任务元数据。 - 将非最终讨论保留为
draft事实。 - 通过以下方式宣传已批准的事实
promote_context_facts. - 使用以下工具构建以任务为中心的小型包
build_context_pack. - 将已完成的功能上下文存档
archive_feature_context.
这使代理保持精简,并仅为子代理提供所需的上下文切片。
用于多个AI编码会话的Git工作树
git worktree 让您的团队运行并行AI编码会话,而不会发生分支冲突。
典型模式:
- 为每个功能/会话创建一个工作台。
- 跑
list_active_worktrees以发现所有活动会话。 - 跑
resume_feature_session_brief在目标工作台内。 - 跑
build_context_pack在将工作移交给子代理之前,先完成该功能/任务。
这允许多个子代理与作用域上下文同时工作,而不是一个大型的全局提示。
用例
1.开始日同步
问题: 你昨晚离线了,想知道发生了什么变化 main 在继续工作之前。
用途:
Run get_main_branch_overnight_brief for main in the last 12 hours结果: 您将获得最近主分支提交的作者/日期/主题摘要。
2.在另一台工作台上恢复未完成的功能
问题: 您在不同的git工作树中打开了多个功能,需要知道您的分支是落后于main还是与main冲突。
用途:
Run resume_feature_session_brief for this worktree against main结果: 在开始规划或重设基础之前,您会遇到分支分歧和文件重叠的风险。
3.了解最近谁更改了文件
问题: 文件的行为不同,您需要可能的作者和最近的提交。
用途:
Run who_changed_this for src/features/auth/session.ts结果: 您可以获得顶级作者、最近的提交和快速的所有权追踪。
4.解释做出更改的原因
问题: 提交或文件已更改,但仅提交不足以解释推理。
用途:
Run why_was_this_changed for src/features/auth/session.ts或者:
Run why_was_this_changed for sha abc1234结果: 代理将提交元数据与同步的PR描述和提升的决策上下文相结合。
5.在实施规划之前同步PR上下文
问题: 你的团队撰写了强有力的公关描述和评论讨论,你希望计划反映出这种背景。
用途:
Run sync_pr_context for MaxwellClinic-Development/EverBetter-Pro结果: PR描述、评论和评论存储在本地,供以后的作者/原因分析。
6.一次指挥预案简报会
问题: 您需要一个命令来同步GitHub上下文、检查main、检查功能会话,并告诉您首先要做什么。
用途:
Run pre_plan_sync_brief for MaxwellClinic-Development/EverBetter-Pro with baseBranch main结果: 你得到:
- PR同步状态
- 隔夜主要变化
- 分支向前/向后计数
- 重叠文件
- 建议的第一步行动
7.为子代理构建一个小型上下文包
问题: 特征知识对于一个提示来说太大了,你需要为编码子代理提供一个集中的包。
用途:
Run build_context_pack with domain billing, feature invoice-retry, branch feat/invoice-retry, taskType coding, limit 12结果: 你会得到一个排名的、有界的上下文集,这样子代理只会收到相关的事实。
建筑
GitHub Copilot / MCP Client
|
v
commit-memory-mcp
|
+-- git history
+-- GitHub PR metadata via gh
+-- SQLite context store
+-- worktree session tracking项目结构
packages/
commit-rag-mcp/ MCP server and local context engine
.github/
agents/ Agent specifications
copilot-instructions.md
mcp.json Workspace MCP configuration
SETUP.md Setup guide
README.md Overview and workflow guide文档
开发说明
- Node.js 20+
ghPR同步功能需要CLI- SQLite用作本地持久上下文存储
- 工作树感知规划是一个一流的用例
下一个文档步骤
设置.md 仍然需要在计划更新之前进行迁移和同步,以完全匹配当前的工具合同。
