使用说明
OneContext MCP
LLM代理的Git风格上下文控制(GCC)。转发是通过将有界的提交范围导出到段中并共享段id来完成的。
本项目MCP从以下方面提出了想法:
- Git上下文控制器(GCC):COMMIT/BRANCH/MERGE/Context
- (可选)导入一段代理历史(例如,Codex
sessions/*.jsonl)成为可共享的细分市场
它的作用
- 创建并维护
.GCC/当前工作目录中的目录。 - 提供MCP工具以:
- 初始化上下文存储
- 创建/签出分支
- 提交里程碑
- 合并分支
- 列表/搜索提交(选择一个范围)
- 将有界提交范围导出到段中(事件+转录)
- 在多个粒度上检索上下文
- (可选)导入一片Codex
*.jsonl将会话文件转换为片段(事件+文字记录)
- 公开MCP资源,以便另一个代理可以通过id读取提交(
onecontext://gcc/commit/{id})或导出段(onecontext://segment/{id}/...).
文件布局
.GCC/
main.md
state.json
branches/
main/
commit.md
commits.jsonl
log.jsonl
metadata.yaml
<branch>/
...
segments/
<segmentId>/
meta.json
transcript.md
events.jsonl
blobs/
<sha256>.txt
安装
npm i
npm run build
作为包安装(私有、GitHub包)
此仓库配置为以以下方式发布到GitHub包 @pangyuanbo/onecontext-mcp.
- 配置npm auth(示例):
npm config set @pangyuanbo:registry https://npm.pkg.github.com
你的 ~/.npmrc 还必须包含一个身份验证令牌,例如:
//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}
令牌必须具有 read:packages 许可。
- 安装(全局)或通过npx运行:
npm i -g @pangyuanbo/onecontext-mcp
# or:
npx @pangyuanbo/onecontext-mcp
运行(MCP stdio)
node dist/index.js
MCP工具
gcc-initgcc-branchgcc-checkoutgcc-commitgcc-mergegcc-contextgcc-list-commitsgcc-search-commitsgcc-exportforward-codex-session-segment(可选助手)
MCP资源
onecontext://aboutonecontext://instructionsonecontext://gcc/mainonecontext://gcc/stateonecontext://gcc/branchesonecontext://gcc/commit/{id}onecontext://gcc/branch/{branch}/commitonecontext://gcc/branch/{branch}/commitsonecontext://gcc/branch/{branch}/log/{tail}onecontext://gcc/branch/{branch}/metadataonecontext://segment/{id}/metaonecontext://segment/{id}/transcriptonecontext://segment/{id}/eventsonecontext://segment/{id}/blob/{sha256}
备注
- 此服务器在磁盘上存储纯文本/JSON工件。它故意这样做 不 连锁店思维。
- 大型工具输入/输出被截断;在使用时
forward-codex-session-segment,原始的大型有效载荷也可以保存为blobs.GCC/segments/<id>/blobs/.