一眼看懂這份計畫
Deployment Decision
設備 → 先用你的 Mac mini,量產再遷小型 VPS
拓撲 → 一台中央 hub 存共享記憶,各人 agent 連上來
連線 → Tailscale 私網,不曝露公網
知識入庫 → Hermes 擷取 + 治理閘門 + REST 寫入
agentmemory 原本是「每個開發者本機一台」的設計。要變成全公司共用的知識庫,我們把它架成 hub-and-spoke:一台中央 hub 持有共享命名空間(business knowledge 進這裡、所有人的 agent 查這裡),每個人的 Claude Code / OpenClaw / Hermes 當 spoke 連上來。這用的是它的 team 模式 + bearer 驗證,能跑,但屬於「非預設用法」,所以計畫刻意採先試點、再全公司的節奏。
目標架構:hub-and-spoke
單一「真相來源」比全網狀(mesh)更適合公司知識庫。中央 hub 是那個真相來源;個人端可自行選擇要不要另跑本機記憶。
CENTRAL HUB · 共享記憶
agentmemory Hub
- TEAM 共享命名空間 · SQLite+本地向量 · 稽核/來源/快照 · 綁 0.0.0.0(僅限 Tailscale 私網)· :3111
▲ 讀取共享知識 │ 寫入(經治理閘門)▼
SPOKE · 擷取
Hermes 擷取代理
- 從 Email/簡報/會議記錄擷取 → 治理閘門 → 寫入 hub
SPOKE · 消費
各人 Claude Code
- MCP 指向 hub;查共享+帶自己的 USER_ID 私有
SPOKE · 消費
OpenClaw/其他 agent
- 同一段 MCP 設定,全公司共用一份記憶
設備選擇:Mac mini vs VPS
agentmemory 極輕——零外部資料庫(SQLite + 記憶體向量索引),本地 embedding 跑 CPU 就好。所以「要多強的機器」不是重點,**「always-on、網路穩、能備份、資料在你手上」**才是。
| 考量 | Mac mini(你現有) | 小型 VPS(自控) |
|---|---|---|
| 上線速度 | 最快——機器已在跑(pmset 關睡眠+tmux) | 需開機/設定,約半天 |
| 資料主權 | 100% 在你辦公室 | 你租的機器,root 在你手上 |
| 成本 | 零額外成本 | 約 US$12–24/月(2 vCPU / 4–8GB) |
| 可靠度 | 綁辦公室電力/網路;停電即停 | 資料中心級 uptime、獨立於辦公室 |
| 對外端點 | 需 Tailscale 才穩定可達 | 固定 IP/DNS,Tailscale 亦可 |
| 備份 | 需自建(Time Machine/rsync) | 快照+磁碟備份易自動化 |
| 維運介面 | tmux/launchd 手動 | Coolify=自架 PaaS UI,重啟/log/備份一鍵 |
| 建議 | Phase 1 試點:就用它,最快驗證價值 | Phase 2 量產:遷過去當公司正式服務 |
Phase 1 · Mac mini
沿用你現有設定:
pmset關睡眠、tmux常駐 session。Node.js ≥ 20;裝
iii-enginev0.11.2(macOS arm64 二進位)。用
launchd讓 hub 開機自啟、掛掉自動重拉。Tailscale 讓團隊在私網內連到它,不動防火牆、不曝露公網。
Phase 2 · VPS 規格
2 vCPU / 4 GB RAM / 60–80 GB SSD 已足(零外部 DB)。
要本地 embedding + LLM 壓縮較從容 → 升到 8 GB。
Ubuntu 22.04/24.04;裝 Docker → 用 Coolify 跑同一套 compose stack。
供應商挑你偏好的(Hetzner/DO/Vultr…),重點是你能拿到 root。
建置中央 hub(逐步)
3.1 安裝 runtime 與 agentmemory。需要 Node ≥ 20,以及 iii-engine(原生二進位,agentmemory 目前鎖定 v0.11.2——別自行升級,它還沒為新版 sandbox 模型重構)。
hub · install(macOS arm64 範例)
# 1) iii-engine v0.11.2(Mac mini arm64)
mkdir -p ~/.local/bin
curl -fsSL https://github.com/iii-hq/iii/releases/download/iii/v0.11.2/iii-aarch64-apple-darwin.tar.gz \
| tar -xz -C ~/.local/bin && chmod +x ~/.local/bin/iii
iii --version # 應印出 0.11.2
# 2) agentmemory(全域安裝,之後 bare 指令到處可用)
npm install -g @agentmemory/agentmemory
# 3) 本地 embedding(免費、離線、資料不外流)+ 繁中斷詞(必裝)
npm install -g @xenova/transformers
npm install -g @node-rs/jieba tiny-segmenter # 中日韓斷詞,繁中檢索品質關鍵**3.2 設定檔 ~/.agentmemory/.env。**這是 hub 的核心設定。共享 hub 一定要開驗證(AGENTMEMORY_SECRET),並用你的 OpenRouter 把壓縮 LLM 路由到便宜模型(呼應你 OpenClaw 的分層路由思路)。
~/.agentmemory/.env
# ── 驗證(共享 hub 必填)──
AGENTMEMORY_SECRET=<openssl rand -hex 32 產生的長字串>
# ── Port(預設即可)──
III_REST_PORT=3111
# ── Embedding:本地、免費、離線 ──
EMBEDDING_PROVIDER=local
# ── LLM 壓縮/摘要:走你的 OpenRouter,路由便宜模型 ──
OPENROUTER_API_KEY=<你的 key>
AGENTMEMORY_AUTO_COMPRESS=true # 要壓縮才開;活躍寫入會有 token 花費
# ── Team:共享 + 私有命名空間 ──
TEAM_ID=neteon
# USER_ID 由各使用者「端」帶入(見 §06),hub 端不寫死
# TEAM_MODE 可用值以你安裝版本的 `agentmemory doctor` / 文件為準
# ── 治理/運維 ──
GRAPH_EXTRACTION_ENABLED=true # 開知識圖譜抽取
CONSOLIDATION_ENABLED=true
LESSON_DECAY_ENABLED=true
SNAPSHOT_ENABLED=true # git 版本化快照,可回溯/diff
AGENTMEMORY_TOOLS=all # 開滿 51 個 MCP 工具(含治理類)3.3 啟動與冒煙測試。
hub · smoke test
agentmemory # 啟動 hub(REST :3111 / viewer :3113)
agentmemory doctor # 互動式診斷,確認 engine/embedding/team 設定
agentmemory demo # 灌入樣本資料,驗證語意檢索真的會動
curl http://localhost:3111/agentmemory/health # 應回 ok(此端點永遠公開)
open http://localhost:3113 # viewer:看記憶即時長出來**3.4 常駐化。**hub 是公司服務,要開機自啟、掛掉自動重起。
Mac mini · launchd
寫一個
~/Library/LaunchAgents/net.neteon.agentmemory.plist,KeepAlive=true、RunAtLoad=true。launchctl load後即背景常駐;比 tmux 更適合正式服務。log 導到
~/.agentmemory/hub.log方便排錯。
VPS · Coolify / compose
Coolify 內新增 Resource → 指到 repo 的
deploy/coolify藍圖。同一套 Docker Compose(拉
iiidev/iii:0.11.2),持久卷掛/data。容器內只發布
3111;重啟/log/備份都在 Coolify UI。
連線與資安
預設 agentmemory 只綁 127.0.0.1。要讓全公司連到,首選不是開防火牆,而是拉一張私網。
首選:Tailscale 私網
hub 與每位同事都加入同一個 tailnet;hub 只在私網內可達,公網零曝露。
大家連的是
http://memory-hub.<tailnet>.ts.net:3111,跨 Mac/Win/Linux 一致。用 Tailscale ACL 限定只有特定裝置能碰
:3111——網路層就先擋一道。最適合小公司:免憑證申請、免反向代理,最快落地。
替代:反向代理 + TLS
VPS 上用 Caddy/nginx 前擋,自動 Let's Encrypt 憑證。
只把
:3111經 TLS 對外;務必疊AGENTMEMORY_SECRETbearer 驗證。適合已有網域/要對外正式端點時;比 Tailscale 多一層維運。
資安硬化清單(上線前逐條打勾):
- 未完成:
設定強
AGENTMEMORY_SECRET:openssl rand -hex 32;所有受保護端點都要 bearer。 - 未完成:
API 綁定範圍:只在 Tailscale/VPN 或 TLS 反代之後綁
0.0.0.0;絕不裸奔公網。 - 未完成:
viewer / console loopback-only:
:3113、:3114不對外。 - 未完成:
隱私過濾已內建:寫入前自動剝除密鑰/API key/
<private>標籤——但仍要疊你自己的「可入庫政策」(見 §05)。 - 未完成:
備份
/data:SQLite + 索引都在這;每日快照+異地備份。 - 未完成:
鎖版本:
iii-engine維持 v0.11.2,別跟著上游盲升;升級走 §07 的流程。 - 未完成:
定期輪替 secret:搭配 deploy 範本產生的 HMAC,一季輪替一次。
知識怎麼進來:擷取 + 治理閘門
這是把你原始構想落地的關鍵。agentmemory 的自動 hook 是為「coding session」設計的;你要的**商業知識(Email/簡報/會議)**走的是它的 REST/MCP 寫入路徑。用你既有的 Hermes 排程當擷取代理,最順。
SRC · 來源
Email、簡報、會議記錄——知識交換的現場。
EXT · Hermes 擷取代理
排程跑
claude -p讀原文,抽出候選事實(誰、什麼、何時、來源)。GATE · 治理閘門(你定政策)
去識別(內建)+ 來源/信心標記 + 存取分級 + 寫入審核。機制 agentmemory 給,政策你定。
HUB · 寫入 hub 共享命名空間
經
/agentmemory/remember落地,帶上 facet 標籤供日後分級檢索。
寫入範例(示意——實際欄位以 src/triggers/api.ts 的 schema 為準;用 memory_facet_tag 打 dept/confidentiality 維度標籤):
ingest · POST /agentmemory/remember
curl -X POST http://memory-hub.<tailnet>.ts.net:3111/agentmemory/remember \
-H "Authorization: Bearer $AGENTMEMORY_SECRET" \
-H "Content-Type: application/json" \
-d '{
"project": "neteon-shared",
"content": "Moxa 於 2026 Q2 將 Neteon 升為 Gold Partner,適用北美區。",
"source": "2026-04 業務週會記錄",
"facets": { "dept": "sales", "confidentiality": "internal" }
}'全公司上線:每個人怎麼接
對使用者來說,接上 hub 就是在他們 agent 的 MCP 設定裡貼一段,把 AGENTMEMORY_URL 指向 hub、帶上自己的 USER_ID。同一段設定,跨所有 agent 通用。
各 agent 通用 · mcpServers 區塊
{
"mcpServers": {
"agentmemory": {
"command": "npx",
"args": ["-y", "@agentmemory/mcp"],
"env": {
"AGENTMEMORY_URL": "http://memory-hub.<tailnet>.ts.net:3111",
"AGENTMEMORY_SECRET": "<hub 的 secret>",
"USER_ID": "hubert"
}
}
}
}Claude Code
/plugin marketplace add rohitg00/agentmemory→/plugin install agentmemory。自動註冊 12 hooks + 4 skills + MCP,並把
AGENTMEMORY_URL指向 hub。驗證:
curl .../agentmemory/health。
OpenClaw
把上面
mcpServers區塊併進 OpenClaw MCP 設定。要更深整合:複製
integrations/openclaw到~/.openclaw/extensions/agentmemory,設plugins.slots.memory = "agentmemory"。
Hermes
~/.hermes/config.yaml加mcp_servers.agentmemory+memory.provider: agentmemory。要 6-hook 深整合:複製
integrations/hermes到~/.hermes/plugins/agentmemory。
治理與日常運維
治理工具(開箱)
memory_audit//agentmemory/audit:所有操作的稽核軌跡。memory_verify:任一記憶回溯到來源觀察,追 provenance。memory_governance_delete:帶稽核的刪除(符合遺忘權)。memory_snapshot_create:git 版本化快照,可回滾/diff。
排程與監控
iii worker add iii-cron:夜間固化、每週快照、衰減掃描。用你既有的 Hermes cron 跑每日擷取 + 記憶健檢。
iii console(
:3114,走 tunnel):OTEL trace 看每次檢索的 BM25→向量→RRF 瀑布。memory_diagnose/memory_heal:健檢與自動修復卡住狀態。
備份與升級
- 未完成:
每日備份
/data(Mac mini:rsync 到 NAS/雲;VPS:Coolify 快照+磁碟備份)。 - 未完成:
升級走 staging:
agentmemory upgrade會變動 runtime,先在測試機驗證再上正式。 - 未完成:
engine 版本鎖定:維持
iii-enginev0.11.2,直到 agentmemory 官方解除 pin。 - 未完成:
還原演練:每季用快照做一次還原演練,確認備份真的能救。
分階段上線節奏
P0 · 第 1 週 · 你自己 · hub 起來
Mac mini 上把 §03 走完:安裝、.env、繁中斷詞、secret、Tailscale、常駐化、冒煙測試。一台能通的 hub。
P1 · 第 2–3 週 · 擷取 · 接一個知識源
先接會議記錄一種來源,用 Hermes 擷取+治理閘門+寫入
neteon-shared。驗證「進得去、查得到、來源可追」。P2 · 第 3–5 週 · 試點團隊 · 3–5 人接上 hub
把試點同仁的 Claude Code/OpenClaw/Hermes 指向 hub。重點觀察多人同時寫入時的命名空間隔離與矛盾處理。
P3 · 第 5–7 週 · 治理定案 · 政策成文
訂共享 vs 私有、寫入審核、依部門/機密級的存取分級;用 audit+verify 落實 provenance;開快照。
P4 · 第 7 週後 · 全公司 · 自助上線 + 遷 VPS
發一頁 onboarding(就是 §06 那段設定),同仁自助接入;同時把 hub 遷到自控 VPS 當正式服務。
風險與護欄
pre-1.0 成熟度
agentmemory 仍在 v0.9.x、單一主維護者。護欄:鎖版本、開快照、每日備份、升級走 staging。
試點階段就把「備份能還原」演練過,別等出事。
hub 模式屬非預設用法
它本是本機單人設計;多人中央共享靠 team+auth 撐。護欄:P2 專門壓測多人寫入的隔離與矛盾。
先小規模驗證再放大,別一次全公司。
iii 引擎依賴
綁較新的
iii(鎖 v0.11.2)。護欄:不盲升;關注上游;必要時 Docker 版隔離。
單點故障
單 hub 掛了全公司無記憶。護欄:常駐自啟+監控;量產後評估
iii-pubsub雙 hub。
**資料來源:**rohitg00/agentmemory 官方 README 與 deploy/、src/triggers/api.ts(查證於 2026/07,對應 v0.9.18 / iii-engine v0.11.2);iii-hq/iii releases。
**注意:**agentmemory 為 pre-1.0,指令、環境變數與端點 schema 可能隨版本變動;上線前以你安裝版本的 agentmemory doctor 與 repo 內文件為準。部分寫入 payload 欄位為示意,實際以 api.ts 為準。