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 集成