Archcore MCP Server
官方本地 stdio MCP 伺服器,讓 AI 編碼代理能直接從你的儲存庫中讀取並維護結構化的架構、規則與決策。
文件
Archcore CLI
讓你的 AI 代理停止猜測,開始遵循你的架構。
Git 傳遞你的程式碼。CI/CD 傳遞你的交付。Archcore 傳遞你的理解。
Archcore 將你的決策、規則和慣例儲存在 Git 中——讓你的 AI 代理自動遵循。適用於 Claude Code、Cursor、Copilot、Gemini CLI、Codex、OpenCode、Roo Code 和 Cline。
Archcore 以 CLI 和本地 stdio MCP 伺服器形式提供——任何相容 MCP 的編碼代理都可以透過標準工具讀取和寫入你的儲存庫上下文,而 Claude Code / Cursor 外掛則增加了更高層級的工作流程層。
正在使用 Claude Code 或 Cursor? 將 CLI 與 Archcore Plugin 搭配使用——相同的引擎,外加開箱即用的技能、意圖指令和防護機制。繼續使用 CLI 也很好——它適用於所有其他代理。
60 秒內快速上手
curl -fsSL https://archcore.ai/install.sh | bash
cd your-project && archcore init
然後打開你的 AI 代理並說:
"我們使用 PostgreSQL 作為主要儲存。記錄這個決策。"
完成。現在 .archcore/ 中有一個結構化的 ADR,每個未來的會話——在任何代理中——都可以讀取。
在 Windows 上?使用 PowerShell:
irm https://archcore.ai/install.ps1 | iex。對於 WSL,go install,以及其他選項,請參閱安裝方法或完整安裝指南。
向你的 AI 詢問類似以下內容
一旦你的儲存庫中有一些文件,你的代理就可以使用它們。試試看:
"在我接觸 auth 模組之前,這裡適用哪些 ADR 和規則?"
代理在編輯任何一行程式碼之前,會載入與該區域相關的決策和規則。
"新增一個 API 處理器,並遵循這個儲存庫的慣例。"
代理會找出匹配的規則(例如「處理器位於 src/api/handlers/」),並將程式碼放在你的架構指定的位置。
"我們的錯誤處理規則是什麼?"
代理直接從 .archcore/ 讀取 error-wrapping.rule.md,而不是從程式碼庫中的幾個範例來猜測。
先試試這些
這些提示會擷取新的上下文——決策、規則、計劃、事件。每個都會建立一個結構化文件,供代理(或任何團隊成員)日後重複使用。
新的儲存庫?archcore init 會建立 .archcore/。MCP 伺服器也可以在空的儲存庫中運作,並公開一個 init_project 工具,因此代理可以為你進行引導設定。
"我們決定使用 PostgreSQL 而不是 MongoDB 作為主要資料庫。記錄這個決策。"
建立 infrastructure/use-postgres.adr.md,包含上下文、決策、考慮過的替代方案和後果。
"我們有一個團隊慣例:始終使用 fmt.Errorf 和 %w 來包裝錯誤並附加上下文。將此設為規則。"
建立 backend/error-wrapping.rule.md,包含指令性指導、理由和好/壞程式碼範例。
"上週我們發生了一起連線池耗盡事件,因為閒置連線沒有被回收。記錄下來,以免重蹈覆轍。"
建立 incidents/connection-pool-exhaustion.cpat.md,包含根本原因分析和預防步驟。
"我需要一個使用者通知功能的 PRD——推播、電子郵件摘要和應用程式內警示。"
建立 notifications/user-notifications.prd.md,包含目標、使用者故事、需求和成功指標。
"為通知 PRD 建立一個實作計劃,並將它們連結在一起。"
建立 notifications/notifications-implementation.plan.md,然後透過 implements 關係將其連結到 PRD。
如果以上任何一項引起你的共鳴,Archcore 的其餘部分大致相同——只是結構化而已。
安裝後會改變什麼
沒有 Archcore,代理會:
- 忽略你的架構
- 打破你的慣例
- 重複已存在的邏輯
- 重新爭論你的團隊已經做出的決策
- 需要在每次對話中重複相同的慣例
- 在會話結束時失去專案真相
有了 Archcore,相同的請求會產生以下程式碼:
- 落在你的架構指定的位置
- 尊重已在 Git 中的 ADR、規格和規則
- 遵循在會話開始時自動載入的團隊慣例
- 將新的決策反映為未來的防護機制,而不是 markdown 墓地
AI 應該遵循你的系統,而不是猜測它。
何時使用 Archcore
- 你的代理會編寫程式碼,但不是以這個儲存庫期望的方式
- 你的
CLAUDE.md/.cursorrules/AGENTS.md不斷增長和偏離 - 你使用 2 個以上的代理或 2 個以上的主機工具(Claude Code + Cursor + Copilot)
- 你希望決策、規則和規格存在 Git 中——而不是在聊天記錄中
不適用於——聊天記憶、提示庫或一次性規格轉程式碼產生器。Archcore 是編碼代理的儲存庫真相層,而不是方法論工具包。
為什麼不只是使用指令檔?
CLAUDE.md、AGENTS.md 和儲存庫指令是有用的起點,但當你的團隊需要以下內容時,它們就會失效:
- 多個扁平記憶體檔案
- 結構化文件類型——ADR、規則、計劃、事件
- 跨多個 AI 工具的可重複使用上下文
- 隨程式碼庫增長的版本化專案知識
- 文件之間的關係(一個實作 PRD 的計劃,一個擴展 ADR 的 RFC)
- 事件學習和代理日後可以拾取的重複性工作流程
指令檔告訴代理你想要什麼。Archcore 告訴代理你的系統如何運作——因此代理可以遵循你的系統,而不是猜測它。
支援的代理
Archcore CLI 本身就是一個本地 stdio MCP 伺服器——這是下表中每個相容 MCP 的代理的共享整合介面。Hooks 在代理支援的情況下,會新增主動的會話啟動上下文。
| 代理 | Hooks | MCP |
|---|---|---|
| Claude Code | 是 | 是 |
| Cursor | 是 | 是 |
| Gemini CLI | 是 | 是 |
| GitHub Copilot | 是 | 是 |
| OpenCode | — | 是 |
| Codex CLI | — | 是 |
| Roo Code | — | 是 |
| Cline | — | 手動 |
運作方式
-
初始化你的儲存庫
archcore init會建立.archcore/並為支援的代理安裝整合。 -
擷取持久的上下文 將架構決策、規則、計劃、產品文件和事件學習儲存為結構化 Markdown 檔案。
-
讓代理重複使用它 Hooks 和 MCP 讓你的編碼代理在實際工作中讀取現有上下文,並建立或更新文件。
-
保留在 Git 中 像審查程式碼一樣審查上下文變更,隨著時間演進它們,並保持它們在工具之間的可攜性。
心智模型
Archcore CLI 是上下文編譯器——它將分散的文件轉換為結構化、機器可讀的上下文。MCP 和 hooks 是執行階段——代理在實際工作中用來消費該上下文的介面。適用於 Claude Code 和 Cursor 的 Archcore Plugin 是建立在之上的更高層級執行階段。
implicit repo knowledge → structured context → AI-readable system
.archcore/ 中有什麼
.archcore/
├── settings.json
├── .sync-state.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)。
使用 .archcore/ 來存放:
- 架構決策
- 編碼規則和慣例
- 實作計劃
- 產品需求
- 事件和事後分析
- 可重複使用的工作流程知識
請參閱 Archcore CLI 儲存庫本身以獲取實際範例:此儲存庫中的 .archcore/
內含功能
- 18 種文件類型,涵蓋願景、知識和經驗
- 4 種關係類型——
related、implements、extends、depends_on - 10 個 MCP 工具——
list_documents、get_document、create_document、update_document、remove_document、search_documents、init_project,加上關係管理(add_relation、remove_relation、list_relations) - 5 個多文件提示——可作為斜線指令從相容 MCP 的代理調用的追蹤級聯
- Hook 整合適用於 4 個代理(Claude Code、Cursor、Gemini CLI、GitHub Copilot)和 MCP 整合適用於 8 個
文件類型
Archcore 將上下文組織成 3 層知識:願景、知識和經驗。
願景
| 類型 | 全名 | 說明 |
|---|---|---|
prd | 產品需求文件 | 目標、使用者故事、驗收標準和成功指標 |
idea | 想法 | 輕量級擷取產品或技術想法以供未來探索 |
plan | 計劃 | 包含驗收標準和依賴關係的分階段任務清單 |
Archcore 也為需要結構化探索或正式分解的團隊支援兩個額外的需求追蹤:
來源追蹤(MRD → BRD → URD)——擷取需求的來源:
| 類型 | 全名 | 說明 |
|---|---|---|
mrd | 市場需求文件 | 市場格局、TAM/SAM/SOM、競爭分析和市場需求 |
brd | 業務需求文件 | 業務目標、利害關係人、投資回報率和業務規則 |
urd | 使用者需求文件 | 使用者角色、旅程、可用性需求和驗收標準 |
ISO/IEC/IEEE 29148:2018 追蹤(BRS → StRS → SyRS → SRS)——擷取需求如何分解:
| 類型 | 全名 | 說明 |
|---|---|---|
brs | 業務需求規格 | 使命、目標、目的和業務運作概念 |
strs | 利害關係人需求規格 | 利害關係人需求、運作概念和使用者需求 |
syrs | 系統需求規格 | 系統功能、介面、效能和設計限制 |
srs | 軟體需求規格 | 軟體功能、外部介面和詳細的行為規格 |
對大多數專案使用 PRD。當你需要結構化需求探索時,加入來源追蹤。當你需要為受監管或複雜的多團隊系統提供正式的可追溯性時,加入 ISO 29148。可以自由混合——某些功能可以使用 PRD,而其他功能則使用完整的級聯。
知識
| 類型 | 全名 | 說明 |
|---|---|---|
adr | 架構決策記錄 | 擷取已確定的技術決策,包含上下文、替代方案和後果 |
rfc | 請求評論 | 提出一個重大變更,開放團隊審查和回饋 |
rule | 規則 | 包含指令性指導和範例的編碼或流程標準 |
guide | 指南 | 完成特定任務的逐步說明 |
doc | 文件 | 參考文件、登錄檔和描述性材料 |
spec | 規格 | 系統、組件、介面或協定的規範性標準合約 |
經驗
| 類型 | 完整名稱 | 說明 |
|---|---|---|
task-type | 任務類型 | 用於重複性任務的可重複使用檢查清單與工作流程 |
cpat | 程式碼變更模式 | 針對錯誤或事件的根因分析,並附上預防步驟 |
每個文件都是一個帶有 YAML 前置資料的 Markdown 檔案:
---
title: "Use PostgreSQL for Primary Storage"
status: draft
tags: [database, infrastructure]
---
## Context
...
有效的狀態:draft、accepted 和 rejected。標籤為選填且格式自由 — 使用它們來標記跨領域的主題(security、golang、frontend)。
文件關係
文件可以透過有向關係連結到其他文件:
- related — 一般關聯
- implements — 來源實作了目標所指定的內容
- extends — 來源建構在目標之上
- depends_on — 來源需要目標才能繼續進行
關係儲存在 .sync-state.json 中,並由 AI 代理程式透過 MCP 工具自動管理。
AI 代理程式整合
Archcore 透過三種方式與 AI 編碼代理程式整合:
- 掛鉤 在工作階段開始時注入上下文,讓代理程式從第一則訊息就知道您的
.archcore/文件。 - MCP 工具 賦予代理程式即時列出、搜尋、讀取、建立、更新和連結文件的能力。MCP 伺服器也可以在空的儲存庫中運作,並提供
init_project工具,讓代理程式可以自行引導.archcore/。 - MCP 提示 是現成的多文件工作流程,您可以從代理程式以斜線指令的形式觸發。
提示
提示可以在一次呼叫中協調完整的文件串聯 — 代理程式會為您建立並連結追蹤中的每個文件。大多數相容 MCP 的代理程式會將它們顯示為斜線指令(例如 /architecture_track);確切的前置詞取決於客戶端。
| 提示 | 功能 |
|---|---|
product_track | 想法 → PRD → 計劃(輕量級功能流程) |
architecture_track | ADR → 規格 → 計劃(技術設計 + 實作) |
standard_track | ADR → 規則 → 指南(將團隊標準編纂成文) |
sources_track | MRD → BRD → URD(市場 / 商業 / 使用者探索) |
iso_track | BRS → StRS → SyRS → SRS(正式的 ISO 29148 串聯) |
範例。 在您的代理程式中,執行 /product_track feature="user notifications"。代理程式會起草一個想法,衍生出 PRD,建立實作計劃,並自動將它們連結起來。
本機 MCP 伺服器
Archcore 不需要託管服務。CLI 會執行一個本機的 stdio MCP 伺服器:
archcore mcp
預設情況下,archcore mcp 會從當前目錄提供文件。傳遞 --project /path/to/repo(或設定 ARCHCORE_PROJECT_ROOT)將其指向其他位置 — 當伺服器是從非您工作區的目錄啟動時(例如,由編輯器整合啟動),這會很有用。
將其連接到 Claude Code:
claude mcp add --transport stdio archcore -- archcore mcp
或為支援的代理程式自動安裝:
archcore mcp install --agent cursor
安裝整合
# Auto-detect agents in your project and install everything
archcore hooks install
# Or target a specific agent
archcore mcp install --agent opencode
archcore hooks install --agent cursor
指令
| 指令 | 說明 |
|---|---|
archcore init | 以互動方式初始化 .archcore/ 目錄 |
archcore doctor | 檢查您的 archcore 設定並修復問題 |
archcore status | 檢查 .archcore/ 結構和文件健全狀況 |
archcore config | 檢視或修改設定 |
archcore hooks install | 為偵測到的 AI 代理程式安裝掛鉤 |
archcore update | 將 Archcore 更新至最新版本 |
archcore mcp | 執行 MCP stdio 伺服器 |
archcore mcp install | 為偵測到的代理程式安裝 MCP 設定 |
更新
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 視窗,以便套用 PATH 的變更。
Windows (WSL)
安裝 WSL,然後在其中執行:
curl -fsSL https://archcore.ai/install.sh | bash
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_VERSION、ARCHCORE_INSTALL_DIR、GITHUB_TOKEN)和 PATH 疑難排解,請參閱 docs.archcore.ai 上的完整安裝指南。
設定
設定儲存在 .archcore/settings.json 中,並在 archcore init 期間建立。
| 欄位 | 說明 | 值 |
|---|---|---|
sync | 同步模式。雲端和地端即將推出。 | none(僅本機)、cloud、on-prem |
language | 文件語言。幫助代理程式以正確的語言產生文件。 | 字串,預設為 en |
archcore config # show all settings
archcore config get <key> # get a specific value
archcore config set <key> <value> # set a value
開發
先決條件
- Go 1.24+
建置與測試
# Build
go build -o archcore .
# Run all tests
go test ./...
# Run a specific package
go test ./cmd/
# Run a single test
go test ./cmd/ -run TestConfigCmd
專案結構
├── cmd/ # Cobra commands (init, doctor, config, status, hooks, mcp, ...)
├── internal/
│ ├── agents/ # Supported AI agents with hooks/MCP capabilities
│ ├── api/ # HTTP client for archcore server
│ ├── config/ # Settings management and directory init
│ ├── display/ # Terminal output formatting (lipgloss)
│ ├── update/ # Self-update logic (version check, download, verify, replace)
│ ├── mcp/ # MCP stdio server, tools, and prompts
│ └── sync/ # Sync logic
├── templates/ # Document type templates
├── install.sh # Install script
└── .goreleaser.yaml # Release configuration
Archcore 類似於 BMAD / Spec Kit / Memory Bank 嗎?
不 — 這些工具解決的是不同的問題。快速對照:
| 工具 | 類別 | 它是什麼 | Archcore 的差異 |
|---|---|---|---|
| BMAD | 方法論 | 代理式 SDLC 方法論 — 12+ 個角色,34+ 個工作流程 | Archcore 儲存_成品_;BMAD 規定_流程_ |
| Spec Kit | 方法論 | 規格驅動的工作流程:specify → plan → tasks → implement,一次性 | Spec Kit 是一次性的交接;Archcore 維護一個與程式碼庫共同演進的動態圖譜 |
| Agent OS | 方法論 | 程式碼庫標準提取 + 規格驅動的開發 | 定位最接近。Archcore 新增了類型化文件、經過驗證的關係,以及一個可選的 ISO 串聯 |
| claude-mem / Mem0 | 記憶 | 自動擷取工作階段記憶,跨代理程式召回 | 記憶工具記住_您做了什麼_;Archcore 儲存_系統是如何建構的以及做出了什麼決定_ |
| Cline Memory Bank | 文件 | 固定結構的 Markdown 檔案(projectbrief、activeContext、systemPatterns…) | 相同的精神,更低的規範要求。Archcore 新增了類型化關係、MCP 驗證和多步驟串聯 |
| CLAUDE.md / .cursorrules | 指令 | 代理程式在工作階段開始時讀取的單一平面檔案 | Archcore 以類型化、相關聯、可查詢的文件取代不斷增長的指令檔案 |
選擇一個方法論工具來獲得一個有主見的開發流程。選擇一個記憶工具來獲得工作階段的連續性。當您想要類型化、可查詢的_專案真相_ — 即_這個_儲存庫的決策、規則和架構 — 並且希望您的編碼代理程式在每次請求時都遵守它時,請選擇 Archcore。
連結與授權
- 文件: docs.archcore.ai
- 網站: archcore.ai
- 外掛程式 (Claude Code, Cursor): github.com/archcore-ai/archcore-plugin
- 問題: github.com/archcore-ai/cli/issues
- 授權: Apache 2.0