Archcore MCP

官方

本地 stdio MCP 服务器,让 AI 编码代理直接从你的仓库中读取并维护结构化的架构、规则和决策。

你可以用 Archcore MCP 做什么?

Archcore 将规范、决策和规则以类型化 Markdown 形式存储在 .archcore/ 中,并通过 MCP 工具提供给您的代理使用。

  • 搜索项目上下文 — 在编辑之前,让助手通过 search_documents 查找适用的 ADR、规则或规范。
  • 记录决策 — 让助手使用 create_document 创建结构化的 ADR 或规则文档。
  • 更新现有上下文 — 让助手使用 update_document 修订规范或计划。
  • 列出所有文档 — 使用 list_documents 枚举 .archcore/ 中的每个上下文文档。
  • 获取文档 — 使用 get_document 检索单个文档的完整内容。
  • 关联相关文档 — 使用 add_relation 连接文档,并通过 list_relations 查看它们。

文档

Archcore CLI — Git 原生上下文,面向 AI 编程代理

License Go Release Platform

Archcore 是面向 AI 编程代理的 Git 原生上下文层。

该 CLI 将规范、架构决策、规则、计划和项目知识保存在 .archcore/ 中,与代码一起版本化,并通过 MCP 和会话钩子向编程代理提供相关上下文。

它作为 CLI 和本地 stdio MCP 服务器发布,因此任何兼容 MCP 的编程代理都可以通过标准工具读写你的项目上下文。可将其用于跨 Claude Code、Cursor、Codex CLI、GitHub Copilot、Gemini CLI、OpenCode、Roo Code 和 Cline 的持久项目上下文。

实际效果

该上下文来自 .archcore/ — 存储在 Git 中的类型化 Markdown 文档,通过 MCP 工具和会话钩子提供给任何代理。

archcore demo

变化

❌ 没有 Archcore

每个会话都从零开始。代理:

  • 猜测你的架构并破坏你的约定
  • 重复已有的逻辑
  • 重新争论团队已经做出的决策
  • 需要在每次聊天中重新解释相同的上下文

✅ 使用 Archcore

你的决策、规则和约定以结构化上下文形式存在于 Git 中。代理:

  • 在会话开始时加载适用的决策和规则
  • 将代码放在架构指定的位置
  • 尊重仓库中已有的 ADR、规范和规则
  • 将新决策记录为持久上下文——可在 PR 中审查,可跨代理移植

代理不再猜测,开始遵循系统。

60 秒快速开始

curl -fsSL https://archcore.ai/install.sh | bash    # macOS / Linux
cd your-project && archcore init

archcore init 会搭建 .archcore/,检测你的编程代理,并为它们配置钩子和 MCP。

然后打开你的代理并说:

"我们正在使用 PostgreSQL 作为主存储。记录这个决策。"

完成——现在 .archcore/ 中有一个结构化的 ADR,任何代理的任何未来会话都会看到它。

Windows 上:irm https://archcore.ai/install.ps1 | iex。对于 WSL,go install,以及从源码构建,请参阅下方的 安装方法完整安装指南

与你的代理协作

该 CLI 本身就是一个本地 stdio MCP 服务器——适用于每个兼容 MCP 代理的统一集成面。钩子在代理支持的情况下添加会话开始上下文。

代理钩子MCP
Claude Code
Cursor
Gemini CLI
GitHub Copilot
OpenCode
Codex CLI
Roo Code
Cline手动

archcore init 会自动配置检测到的代理。若要手动连接一个:

archcore mcp install --agent cursor      # write MCP config for a specific agent
archcore hooks install                   # install session-start hooks for detected agents
claude mcp add --transport stdio archcore -- archcore mcp   # or add the server manually

工作原理

  1. 初始化archcore init 创建 .archcore/ 并安装代理集成。
  2. 捕获 — 决策、规则、计划和指南以带有 YAML frontmatter 的类型化 Markdown 文档存储。
  3. 复用 — 代理在工作时通过 MCP 工具读取、创建、更新和链接文档;钩子在会话开始时加载上下文。
  4. 保存在 Git 中 — 像审查代码一样审查上下文变更,随时间演进,并保持跨工具可移植。
.archcore/
├── settings.json
├── auth/
│   ├── jwt-strategy.adr.md
│   └── auth-redesign.prd.md
├── backend/
│   └── error-wrapping.rule.md
├── incidents/
│   └── connection-pool-exhaustion.cpat.md
└── notifications/
    └── notifications-implementation.plan.md

结构是自由形式的——可按领域、功能或团队组织。文档的类型位于其文件名中(slug.type.md):跨三个层的 19 种类型——知识(ADR、规则、规范、指南)、愿景(PRD、计划、想法、需求轨道)和经验(事件模式、重复任务)。本仓库自身的 .archcore/ 是一个工作示例。

询问你的代理

"在我接触认证模块之前,这里有哪些决策和规则适用?"

在代理编辑任何一行之前,加载与该区域相关的 ADR 和规则。

"我们有一个约定:总是用 fmt.Errorf 和 %w 包装错误。把它设为一条规则。"

创建 backend/error-wrapping.rule.md,包含命令式指导、理由以及好/坏示例。

"上周我们遇到了连接池耗尽事件。记录它,以免重蹈覆辙。"

创建 incidents/connection-pool-exhaustion.cpat.md,包含根本原因分析和预防步骤。

对比

如果你依赖…差距Archcore 的替代方案
代理在每个会话中重新学习你的仓库,并重新争论已解决的决策在会话开始时加载决策、规则和约定——在任何代理中
扁平指令文件CLAUDE.md.cursorrules不断增长的文本墙——没有类型、没有链接、没有生命周期,每个工具都要复制粘贴类型化文档、关系图、草稿 → 接受的生命周期,每个代理只需一次设置
记忆工具(claude-mem、Mem0)记住 你做了什么 — 易失、不透明、受供应商限制存储 系统如何构建以及决定了什么 — 在 Git 中版本化,由你拥有
方法论工具包(BMAD、Spec Kit、Agent OS)规定一个流程,通常是一次性交接存储工件——一个随代码库演进的动态上下文图
RAG / 更大的上下文窗口检索代码 说了什么,而不是 决定了什么以及为什么保持决策和理由明确且有选择性——代理加载适用的内容,而不是全部

不适用于 — 聊天记忆、提示库或一次性规范到代码生成器。Archcore 是编程代理的仓库真相层,而不是方法论工具包。

参考

内置内容:19 种文档类型4 种关系类型10 个 MCP 工具、针对 4 个代理的钩子集成以及针对 8 个代理的 MCP 集成。

文档类型 — 跨愿景、知识和经验的 19 种类型

知识

类型全名描述
adr架构决策记录捕获已最终确定的技术决策,包含背景、备选方案和后果
rfc征求意见提出重大变更,供团队审查和反馈
rule规则包含命令式指导和示例的编码或流程标准
guide指南完成特定任务的分步说明
doc文档参考文档、注册表和描述性材料
spec规范针对边界或其他人依赖的功能/子系统的规范性行为契约

愿景

类型全名描述
prd产品需求文档目标、用户故事、验收标准和成功指标
idea想法轻量捕获产品或技术想法,供未来探索
plan计划包含验收标准和依赖关系的分阶段任务列表
rnd研究有时间限制的调查,解答阻碍决策的问题

针对需要结构化发现或正式分解的团队,还有两个额外的需求轨道:

来源轨道(MRD → BRD → URD)— 捕获需求 来自哪里

类型全名描述
mrd市场需求文档市场格局、TAM/SAM/SOM、竞争分析和市场需求
brd业务需求文档业务目标、利益相关者、ROI 和业务规则
urd用户需求文档用户画像、旅程、可用性需求和验收标准

ISO/IEC/IEEE 29148:2018 轨道(BRS → StRS → SyRS → SRS)— 捕获需求 如何分解

类型全名描述
brs业务需求规范使命、目标、目的和业务运营概念
strs利益相关者需求规范利益相关者需求、运营概念和用户需求
syrs系统需求规范系统功能、接口、性能设计约束
srs软件需求规范软件功能、外部接口和详细行为规范

大多数项目使用 PRD;添加来源轨道进行结构化需求发现,使用 ISO 29148 在受监管或复杂的多团队系统中进行正式的可追溯性。可自由混用。

经验

类型全名描述
task-type任务类型针对重复任务的可复用检查清单和工作流
cpat代码变更模式对 bug 或事件进行根本原因分析,并包含预防步骤

每个文档都是带有 YAML frontmatter 的 Markdown 文件:

---
title: "Use PostgreSQL for Primary Storage"
status: draft
tags: [database, infrastructure]
---

## Context

...

有效状态:draftacceptedrejected。标签是可选的,自由形式。

MCP 工具和关系

MCP 工具

10 个工具:init_projectlist_documentsget_documentsearch_documentscreate_documentupdate_documentremove_documentadd_relationremove_relationlist_relations。该服务器也可以在空仓库中工作——代理可以通过 init_project 自行引导 .archcore/

关系

文档通过定向关系链接:related(通用关联)、implements(源实现目标指定的内容)、extends(源构建于目标之上)、depends_on(源需要目标)。由代理通过 MCP 工具管理。

本地 MCP 服务器

archcore mcp 通过 stdio 从当前目录提供文档。当服务器从不是你工作区的目录启动时(例如,通过编辑器集成),传递 --project /path/to/repo(或设置 ARCHCORE_PROJECT_ROOT)。

命令 | Command | 描述 | | ------------------------ | ------------------------------------------------ | | `archcore init` | 交互式初始化 `.archcore/` 目录 | | `archcore doctor` | 检查你的 archcore 设置并修复问题 | | `archcore status` | 检查 `.archcore/` 结构和文档健康状况 | | `archcore config` | 查看或修改设置 | | `archcore hooks install` | 为检测到的 AI 代理安装钩子 | | `archcore mcp` | 运行 MCP stdio 服务器 | | `archcore mcp install` | 为检测到的代理安装 MCP 配置 | | `archcore update` | 将 Archcore 更新到最新版本 |

archcore update 会检查 GitHub Releases,下载较新版本,验证 SHA-256 校验和,并以原子方式替换二进制文件。

安装方法

macOS / Linux

curl -fsSL https://archcore.ai/install.sh | bash

Windows

irm https://archcore.ai/install.ps1 | iex

archcore.exe 安装到 %LOCALAPPDATA%\Programs\archcore 下,并将其添加到你的用户 PATH。安装后请打开一个新的 PowerShell 窗口。

Windows (WSL)

安装 WSL,然后在其中运行 macOS/Linux 脚本。

Go 安装

go install github.com/archcore-ai/cli@latest

从源码安装

git clone https://github.com/archcore-ai/cli.git
cd cli
go build -o archcore .

支持的平台: macOS、Linux、Windows — amd64 和 arm64。

有关环境变量(ARCHCORE_VERSIONARCHCORE_INSTALL_DIRGITHUB_TOKEN)和 PATH 故障排查,请参阅 完整安装指南

配置

设置位于 .archcore/settings.json,由 archcore init 创建。

字段描述
sync同步模式。云端和本地部署即将推出。none(仅本地)、cloudon-prem
language文档语言。帮助代理以正确的语言生成文档。字符串,默认为 en
archcore config                    # show all settings
archcore config get <key>          # get a specific value
archcore config set <key> <value>  # set a value

生态系统

  • Archcore Plugin — 使用 Claude Code 或 Cursor?该插件与 CLI 搭配使用:相同的引擎,外加技能、意图命令和护栏。一个产品,两个入口 — CLI 本身即可覆盖所有其他代理。
  • docs.archcore.ai — 完整文档。
  • 本仓库中的 .archcore/ — 一个活生生的示例:CLI 是使用其自身的上下文层构建的。

开发

需要 Go 1.25+。

go build -o archcore .   # build
go test ./...            # run all tests

链接与许可证