Global Agent Memory

io.github.ozankasikci由 GitHub 帳號 ozankasikci 發布v0.1.6更新於 Oct 27, 2026

Shared, project-aware memory for Claude Code, Codex, and other agents with human review.

發布方自己的服務:Memory.fit

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

為編碼代理設計的本地優先、專案感知記憶服務,以 Markdown 儲存可搜尋、可人工審核的持久知識。

可以做什麼
  • 搜尋記憶、載入有界的任務脈絡、讀取單筆記憶並查看狀態
  • 以候選形式提出、更新、核准、拒絕、取代與封存記憶
  • 瀏覽專案與標籤,開啟記憶或本機儀表板
  • 申請並查詢受保護記憶的存取權限
  • 重建索引並透過同一介面管理 Markdown 記憶庫
適用情境
適合多個編碼代理(Claude Code、Codex 及其他 MCP 用戶端)需要跨工作階段共用專案慣例、決策、維運手冊與已解決問題等持久知識,並由人工審核哪些內容正式生效的情境。
執行需求
在 macOS 或 Linux 上以本機程序執行,需要 Python 3.12 或更新版本與 uv,透過 PyPI 套件 global-memory-mcp 安裝。託管整合需要 Claude Code 或 Codex。可選用 Obsidian 瀏覽 Markdown 記憶庫,可選用 Ollama 進行語意檢索。未宣告任何 API 金鑰。
安裝前請注意
代理可以建立、更新、取代與封存記憶,但新記憶在人工核准前僅為候選。儀表板與 HTTP 模式使用自動產生的本機 bearer token 及短效啟動連結,不應分享。專案明確表示它不是密鑰管理器,不應存放密碼、憑證、私鑰或 API 金鑰。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Global Agent Memory,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Global Agent Memory

Local-first, project-aware, durable memory for Claude Code, Codex, and other MCP-compatible agents.

[Python 3.12+] [PyPI] [MCP contract] [Local first] [License] [GitHub release]

Global Agent Memory gives multiple coding agents one shared, reviewable memory without handing control of your knowledge base to a hosted service. Markdown files are canonical, a hybrid local MCP runtime is the public agent interface, and the dashboard lets a human approve, edit, protect, or remove what agents remember. Agent commands work without a background server. The authenticated localhost server starts on demand for the dashboard and can optionally run continuously for live file watching and shared embedding work.

One Vault. Multiple agents. Human-controlled memory.

[Global Agent Memory connects AI agents through a daemonless-capable hybrid MCP runtime to owner-controlled Markdown and dashboard surfaces]

Quick start · Obsidian Vault · Dashboard · How it works · Security · MCP contract · Documentation

Why Global Agent Memory?

Coding agents are useful inside a session, but important context is often lost between sessions or fragmented across individual clients. Global Agent Memory provides a durable layer for knowledge such as:

  • architectural decisions and project conventions;
  • verified workflows and operational runbooks;
  • recurring problems and their proven solutions;
  • project preferences, entities, and handoff summaries;
  • bounded context for a new task or agent session.

Agents propose memories as candidates. A human reviews them before they become durable, controls their visibility, and can later update, supersede, archive, or hard-delete them.

How it compares

ApproachShared across agentsHuman-reviewableProject-awareOwner-controlled accessPortable source of truth
CLAUDE.md / AGENTS.mdLimited✓✓—✓
Basic memory MCP✓VariesVariesVariesVaries
Hosted agent memory✓Varies✓Provider-defined—
Global Agent Memory✓✓✓✓Markdown

Use project instruction files for compact rules that always belong in a prompt. Use Global Agent Memory when knowledge should be searchable, shared between clients, reviewed by a person, updated over time, or hidden behind explicit permission.

Highlights

  • Shared across agents — Claude Code, Codex, and other MCP clients use the same service and immutable memory IDs.
  • Project-aware by default — Git roots, remotes, aliases, and the project registry keep retrieval scoped to the active project.
  • Markdown is canonical — the Vault remains readable, portable, backup-friendly, and usable with Obsidian.
  • Human review workflow — agents create candidates; owners approve, edit, reject, or resolve conflicts in the dashboard.
  • Protected and sealed memory — sensitive knowledge can be excluded from ordinary retrieval and placed behind owner-controlled access.
  • Hybrid local search — SQLite FTS5 provides keyword retrieval; optional Ollama embeddings and sqlite-vec add semantic ranking.
  • Offline-friendly — keyword search and lifecycle operations continue when Ollama is unavailable.
  • Rebuildable generated state — SQLite, FTS, vectors, queues, and caches can be recreated from Markdown.
  • Frozen MCP V1 contract — tools, resources, prompts, envelopes, and compatibility rules are versioned in the repository.
  • No required background server: Claude Code, Codex, and CLI commands fall back to the same MCP application services in-process when the optional daemon is offline.
  • Local security boundary: when the dashboard or HTTP MCP is active, the server binds to 127.0.0.1 and requires a generated bearer token stored outside the Vault.

Built for real project vaults

The opt-in performance suite creates 10,000 synthetic memories and exercises the same indexing and retrieval paths used by both runtime modes. On the recorded macOS ARM64 baseline, a full rebuild takes 36.5 seconds, warm keyword search P95 is 56 ms, warm hybrid search P95 is 76 ms, and incremental stdio proxy overhead is 1.5 ms. Results vary by machine; the changed-note, search, and proxy budgets run as regression gates. See the methodology and complete baseline.

Three surfaces, one memory system

Global Agent Memory is more than an MCP server. Agents, owners, and knowledge workers use the same canonical memories through three purpose-built surfaces:

SurfaceDesigned forWhat it provides
MCPClaude Code, Codex, and other agentsProject-aware context, search, candidate creation, safe updates, lifecycle actions, and permission requests through a frozen V1 contract
Obsidian VaultReading, writing, linking, and long-term knowledge ownershipPortable Markdown and YAML, templates, native Bases views, project overview hubs, wikilinks, backlinks, graph navigation, and direct-edit synchronization
Local dashboardFast owner review and administrationCandidate approval and editing, conflict comparison, visibility classification, protected-access decisions, search, projects, activity, backups, and system health

The Vault is the durable source of truth. The dashboard is a complementary control plane, and the MCP interface is the safe automation layer used by agents. You can use Obsidian, the dashboard, or both without creating separate copies of your memory.

Dashboard at a glance

[Global Agent Memory dashboard overview showing the review queue, protected-memory access request, project conventions, solutions, preferences, and recent agent activity]

Real dashboard UI with synthetic Atlas project data. No private Vault content is shown.

Quick start

This is the shortest path to persistent memory for Claude Code, Codex, and other MCP clients. The guided installer creates the local service, Obsidian-compatible Vault, dashboard, MCP registrations, and agent skills together.

Requirements

  • macOS or Linux
  • Python 3.12 or newer
  • uv
  • Claude Code or Codex for the managed client integrations
  • Optional: Obsidian for browsing the Markdown Vault
  • Optional: Ollama for semantic retrieval

1. Install

shell
uv tool install global-memory-mcp

To install the latest unreleased source, use uv tool install git+https://github.com/ozankasikci/global-agent-memory.git. For a local checkout, use uv tool install ..

2. Run guided setup

shell
global-memory setup

Setup shows one plan and asks once before it changes anything. It initializes the local Vault, creates the protected token, detects Claude Code and Codex, installs their MCP integrations and skills, verifies healthy clients, and opens the dashboard. Opening the dashboard starts its authenticated localhost server on demand. The command is idempotent, so running it again repairs or updates managed components without replacing unrelated client configuration.

Use flags when you need a non-default setup:

shell
# Non-interactive installationglobal-memory setup --yes
# Choose a different Vault on first setupglobal-memory setup --vault "$HOME/Memory"
# Install only one client, or no client yetglobal-memory setup --clients claude-codeglobal-memory setup --clients none
# Optional: install an always-on native service for live watching and shared indexingglobal-memory setup --service
# Preview without changing files or servicesglobal-memory setup --dry-run

3. Use the installed agent shortcuts

Setup installs five basic shortcuts for each detected client:

ShortcutPurpose
gam-contextLoad project-aware context for a task
gam-searchFind a decision, fact, error, convention, or solution
gam-rememberPropose explicitly supplied durable knowledge as a candidate
gam-reviewShow the candidate queue without changing it
gam-dashboardOpen the authenticated dashboard

In Claude Code, invoke them directly, for example /gam-context fix the upload retry bug. In Codex, type /skills and choose one, or mention it directly, for example $gam-context fix the upload retry bug.

4. Open the dashboard again

shell
global-memory dashboard

You can also ask a connected agent:

Open the Global Agent Memory dashboard.

The agent calls memory_dashboard_open and opens the same authenticated local dashboard.

Manual installation and repair

The individual commands remain available for advanced setups and troubleshooting:

shell
global-memory init --vault "$HOME/Documents/Global Agent Memory"global-memory daemon install-service --kind launchd  # use systemd on Linuxglobal-memory integrations install allglobal-memory integrations verify allglobal-memory doctor

Using it with an agent

After integration, you normally describe your intent instead of running memory commands manually.

Retrieve context before work

Before you start, load the relevant memory for this project and summarize the conventions and recent decisions.

Propose a durable memory

Remember that production ARM64 binaries must be built locally and uploaded to the server. Add it as a project convention with the deployment discussion as evidence.

The agent creates a candidate. Nothing becomes active until it is approved.

Update existing knowledge

Find the deployment memory and update it with the new health-check command. Do not create a duplicate.

Open the review surface

Open the memory dashboard so I can review the candidates.

The shared integration skill teaches supported agents when to retrieve, propose, update, and avoid duplicating memory.

Obsidian Vault

The configured Obsidian Vault is the human-readable, durable source of truth—not an export of an opaque database. Every managed memory is a normal Markdown file with YAML properties, a stable memory ID, lifecycle metadata, and project-aware links.

Initialization adds an Obsidian workspace without replacing your existing files:

  • templates for decisions, facts, solutions, conventions, preferences, entities, references, session summaries, and project overviews;
  • native Bases views for the candidate review queue, active knowledge, recent updates, decisions by project, verified solutions, and lifecycle history;
  • project overview hubs that embed project memories and remain stable as notes move through candidate, active, rejected, superseded, or archived folders;
  • wikilinks and reciprocal supersession links for backlinks and graph navigation;
  • request-time synchronization, so ordinary content and descriptive-property edits made in Obsidian become searchable without a background service;
  • optional watcher synchronization for immediate indexing when the background service is enabled.

Obsidian is optional: the same Markdown remains readable and editable with any text editor. Lifecycle and access-policy changes should still go through the dashboard, MCP, or CLI so validation, optimistic concurrency, and audit records remain intact.

Dashboard

The authenticated dashboard is the owner control plane for:

  • project overview and recent project activity;
  • one-at-a-time candidate review and editing;
  • duplicate and conflict comparison;
  • memory search and lifecycle management;
  • Standard, Protected, and Sealed classification;
  • access-request approval and active-grant revocation;
  • sealed-memory owner unlocks with audit records;
  • project switching, system health, reindexing, and backups;
  • opening canonical Markdown in Obsidian or the local file viewer.

[Candidate review in the Global Agent Memory dashboard showing evidence, confidence, conflict detection, and owner approval actions]

Candidate review keeps evidence and conflicts visible before an owner approves durable memory.

Dashboard launch URLs expire after 60 seconds, can be exchanged only once, and create a local HttpOnly session. Do not share a launch URL.

Memory visibility and access

LevelDefault agent behaviorOwner control
StandardIncluded in ordinary scoped retrievalNormal candidate and lifecycle review
ProtectedExcluded from default results; an agent receives only a neutral relevance signalOwner selects exact memories, permission, duration, policy, and eligible projects
SealedBody is not indexed or returned through agent toolsOne owner-unlocked dashboard view; every access is audited

Protected grants are scoped by purpose, project, agent, permission, exact memory IDs, and duration. Owners may downgrade a request but never elevate it. Agents may request and poll for access, but they cannot approve, deny, or revoke grants.

[!IMPORTANT]

Protected and Sealed memory are not secret managers. Never store passwords, credentials, private keys, API keys, or bearer tokens in Global Agent Memory.

How it works

mermaid
flowchart LR    A[Claude Code] -->|stdio MCP| H[Hybrid MCP runtime]    B[Codex] -->|stdio MCP| H    C[CLI] -->|MCP| H
    H -->|daemonless default| E[Application and domain services]    H -.->|optional localhost daemon| D[Watcher, shared indexing, dashboard]    D --> E    E --> V[Markdown Vault<br/>canonical state]    E --> I[SQLite FTS5 and sqlite-vec<br/>generated state]    E --> O[Ollama embeddings<br/>optional]    D --> W[Local dashboard<br/>owner control]

The global-memory-mcp bridge prefers a healthy shared daemon and otherwise runs the same MCP server and application services in-process. Both paths expose the same frozen MCP V1 contract and use the same canonical Markdown and generated SQLite state. The optional daemon owns real-time Vault watching, background embedding retries, HTTP MCP, and dashboard sessions. Agent memory operations do not depend on its availability.

The dependency direction is:

text
transport and client adapters → application services → domain

Vault, SQLite, vectors, embeddings, Git, Watchdog, and client integrations are adapters. The domain layer does not depend on them.

MCP interface

The MCP interface is the only public AI-facing API. Clients do not read the Vault, SQLite database, vectors, token, or runtime logs directly.

The frozen V1 discovery snapshot currently contains 17 tools, 10 resources, and 6 prompts.

CapabilityMCP tools
Retrievalmemory_search, memory_context, memory_get, memory_status
Candidate and lifecyclememory_remember, memory_update, memory_approve, memory_reject, memory_supersede, memory_archive
Navigation and operationsmemory_open, memory_dashboard_open, memory_reindex, memory_projects, memory_tags
Protected accessmemory_access_request, memory_access_status

All mutations are replay-safe through request_id. Updates use optimistic concurrency, and a stale version fails with VERSION_CONFLICT instead of silently overwriting newer knowledge.

See MCP Contract V1 and the generated contracts/mcp/v1/ schemas for the complete contract.

CLI examples

The CLI uses the same MCP path as connected agents. It prefers the optional daemon and otherwise invokes the frozen MCP contract through an in-memory transport. It never bypasses access control by reading Markdown or SQLite directly.

shell
# Check healthglobal-memory statusglobal-memory doctor
# Register and detect a projectglobal-memory project add my-project --root "$HOME/Projects/my-project"global-memory project detect "$HOME/Projects/my-project"
# Search and build bounded task contextglobal-memory search "deployment rollback" --project my-projectglobal-memory context "Prepare the next release" --project my-project --token-budget 3000
# Create a review candidateglobal-memory remember \  "Release rollback procedure" \  "Use the blue-green rollback task and verify both health endpoints." \  --type reference \  --scope project \  --project my-project
# Rebuild generated indexesglobal-memory reindex --full
# Back up canonical Markdownglobal-memory backup "$HOME/Backups/global-agent-memory.zip"

Run global-memory --help or global-memory <command> --help for the complete command reference.

Security model

Global Agent Memory is designed as a local service, not a remotely exposed memory API.

  • The optional HTTP and dashboard server is restricted to 127.0.0.1.
  • Streamable HTTP requires a generated local bearer token.
  • The token, database, logs, locks, and generated state remain outside the Vault.
  • Token files use user-only permissions.
  • Dashboard sessions are short-lived, local, and HttpOnly.
  • Paths are confined to the configured Vault and checked against traversal and symlink escape.
  • Ordinary logs redact bodies, prompts, embeddings, secrets, and authorization material.
  • Generated state can be removed and rebuilt from canonical Markdown.
  • Agent-facing retrieval is fail-closed for Protected and Sealed memories.

Please report security issues according to SECURITY.md.

Development

Clone the repository, then install Python and dashboard dependencies:

shell
uv syncnpm ci --prefix dashboard

Run the standard quality gate:

shell
make check

The gate covers Ruff formatting and linting, strict MyPy, the TypeScript production build, unit/integration/contract/E2E tests, coverage, and deterministic MCP contract regeneration.

Useful focused commands:

shell
make unitmake integrationmake contractmake e2emake dashboard-checkmake performance   # opt-in 10,000-note performance suite

When changing the MCP contract:

shell
make contract-generatemake contract-check

Contributions are welcome. Start with CONTRIBUTING.md, and keep changes compatible with the frozen V1 contract unless a parallel major contract is intentionally introduced.

Community and roadmap

  • Ask usage questions and share agent workflows in GitHub Discussions.
  • Pick up a scoped contribution from the good first issue or help wanted queues.
  • Follow planned distribution, security, and integration work on the public roadmap.
  • If the project is useful, starring the repository helps other agent-tooling users discover it.

Documentation

GuidePurpose
OperationsInstallation, daemon management, diagnostics, backup, restore, upgrades, and recovery
Claude CodeManaged skill and MCP registration for Claude Code
CodexManaged skill and MCP registration for Codex
Hermes AgentManual stdio MCP registration and verified retrieval smoke test
ArchitectureDependency direction and hybrid runtime ownership model
ConfigurationPlatform-native locations, environment variables, and security defaults
MCP Contract V1Public compatibility and response-envelope rules
TestingStandard, performance, and live acceptance strategy
Performance baseline10,000-note benchmark methodology and budgets
Release checklistCurrent V1 acceptance evidence and remaining release gates
Implementation planOriginal product requirements and phased implementation plan

Project status

Global Agent Memory is under active V1 development and is distributed through GitHub Releases and PyPI. The current GitHub release and source package version is 0.1.7; the MCP contract version is v1.

The product name is Global Agent Memory. The technical identifiers global-memory, global-memory-mcp, global-memoryd, global_memory, and product: global-memory remain stable for V1 compatibility.

See the V1 release checklist for verified scenarios and remaining live acceptance work.

License

Global Agent Memory is available under the MIT license declared in pyproject.toml.

來源:README.md,提交 53480fd

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.6最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Memory 整合