mcpField
L
llm-kosh

llm-kosh

本地服务
github.com/rastogivaibhav记忆与知识16 周前更新

关于 llm-kosh

LLM-Kosh 是面向 AI Agent 和 MCP 兼容客户端(包括 Claude 与 Cursor)的本地优先持久记忆系统。它以本地文件和索引保存可检查的记忆,并通过权限控制和 Kosh Verify 提供证据感知验证。

主要功能

  1. 01持久化本地记忆 cartridge
  2. 02可检查的文件存储与索引
  3. 03防篡改变更记录
  4. 04MCP 默认只读访问
  5. 05证据、矛盾与缺口报告
  6. 06用于搜索、导入和验证的命令行工具

适用场景

  1. 01跨会话保留 Agent 记忆
  2. 02搜索和审查本地记忆 cartridge
  3. 03核查记忆背后的证据与矛盾
  4. 04在 MCP 兼容客户端间共享受治理的记忆

MCP 相关

提供访问 cartridge 的本地 MCP 服务,并可选用 streamable HTTP 传输。默认只读;写入、修改和私有导出需明确启用,组合服务还可提供 Kosh Verify 和受治理的 Trusted Memory 工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rastogivaibhav-llm-kosh": {
"command": "uvx",
"args": [
"llm-kosh"
],
"env": {
"CARTRIDGE_WORKSPACE": "<CARTRIDGE_WORKSPACE>"
}
}
}
}
启动命令uvx llm-kosh
需要配置的环境变量
CARTRIDGE_WORKSPACEPath to the local folder llm-kosh should use as its memory cartridge root.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypillm-kosh2.1.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

LLM-Kosh

LLM-Kosh

为 AI Agent 提供本地优先的持久记忆。

让 Claude、Cursor 及其他兼容 MCP 的客户端拥有持久且可检查的记忆,无需将你的工作区交给托管记忆服务。

Kosh Verify 能让记忆展示其推理依据:证据、时间、因果路径、矛盾、推断边界、缺失证据和拒绝作答。

PyPI Python 测试 质量 许可证:MIT GitHub 星标

快速开始 · Kosh Verify · 架构 · MCP · 安全模型 · 参与贡献


为什么要做这个

AI Agent 能在越来越长的工作流中进行推理,但它们的记忆往往要么是临时的,要么被交给不透明的托管服务。

**LLM-Kosh 将记忆视为本地基础设施:**可检查、可移植、可审计、受权限控制,并可供兼容 MCP 的客户端使用。

它为 Agent 提供持久记忆层,由普通本地文件、结构化索引和治理控制机制构成:

  • 本地优先 — 默认情况下,你的记忆仓库保留在本机。
  • 可检查 — 记忆始终可读、可备份、可比较差异并可审阅。
  • 可审计 — 所有变更都会记录在防篡改账本中。
  • 权限控制 — MCP 默认以只读方式启动;写入、修改和私密导出都需要明确选择启用。
  • 可移植 — 一个记忆仓库即可支持多个兼容的 AI 客户端和工作流。
  • 感知证据 — Kosh Verify 能区分支持、矛盾、推断、证据缺口和缺失。

安装: python -m pip install --upgrade llm-kosh

Kosh Verify:能够展示推理依据的记忆

长期记忆会带来一种不同于一次性错误回答的失效模式:薄弱或被误解的记忆可能在后续会话中再次被回忆起来。

Kosh Verify 是 LLM-Kosh 的证据感知验证界面。给定卡匣中已有的证据,它可以生成结构化报告,其中包含时间背景、支持性事实、因果路径、矛盾、推断得出但尚未发现的关系、缺失的证据、稳定性信息,以及证据不足时的明确弃答状态。

它不是通用的真相判定器,也不会仅仅因为导入的来源被存储起来,就让其变得可信。其目标是保留以下区别:卡匣观察到的内容、推断出的内容、存在冲突的内容,以及缺乏证据支持的内容。

试用确定性的合成事件演示:

llm-kosh --root ./kosh-demo kosh-verify \
  "Why did checkout fail and what evidence contradicts the explanation?" \
  --when "2026-05-01T13:30:00+00:00" \
  --depth 5 \
  --demo-seed \
  --json

--demo-seed 会将合成事件证据写入所选根目录,因此请使用临时目录。自动化测试和离线验收框架也涵盖了相同的行为:

python scripts/kosh_verify_acceptance.py

请参阅 Kosh Verify,了解契约、边界、API 示例、MCP 接口和可复现检查。

LLM-Kosh 的不同之处

能力LLM-Kosh
本地优先的持久记忆✅
原生 MCP 访问✅
可供人工检查的存储✅
防篡改变更日志✅
默认只读的 Agent 访问✅
有证据支持的上下文包✅
时间/因果验证✅
矛盾与证据缺口报告✅
明确的无证据弃答✅
需要托管记忆服务❌
需要自动云同步❌

架构

flowchart TB
    A[AI client / agent] -->|MCP| R[Access layer]
    M[CLI] --> R
    N[Background service] --> R
    O[Local HTTP MCP - optional] --> R

    subgraph KOSH[LLM-Kosh]
      R
      C[Memory]
      D[Evidence]
      E[Search]
      F[Policy]
      G[Ledger]
      H[Context packs]
      V[Kosh Verify]

      R --> C
      R --> D
      R --> F
      C --> E
      C --> G
      C --> H
      C --> V
      D --> V
    end

    C --> I[(Local cartridge)]
    D --> I
    E --> I
    G --> I
    I --> J[Plain files]
    I --> K[SQLite / FTS]
    I --> L[Audit ledger]

仓库根目录包含代码。卡匣根目录包含实时记忆存储。受监视的导入文件夹可以将新内容导入卡匣,而不会将运行时数据与源代码检出目录混在一起。

60 秒快速入门

需要 Python 3.10 或更高版本。

python -m pip install --upgrade llm-kosh
llm-kosh install --yes
llm-kosh status

这会安装软件包,在 ~/.llmkosh/cartridge 创建默认卡匣,配置本地默认设置,并在可能的情况下注册受支持的桌面集成。

创建并查询自定义卡匣:

llm-kosh --root ./my-cartridge init --owner "Local User"
llm-kosh --root ./my-cartridge add --kind note --title "First memory" --body "Hello"
llm-kosh --root ./my-cartridge query "Hello"

管理后台服务:

llm-kosh service start
llm-kosh service status
llm-kosh service stop

当前可用功能

核心项目现已可用:

  • 已发布的 Python 软件包 llm-kosh
  • 用于创建、搜索、导入、打包和验证卡匣的本地 CLI
  • 受治理的 llm-kosh-memory CLI,用于提出、回忆、检查、处理冲突,以及明确审核可信记忆
  • 用于证据感知时间/因果验证的 Kosh Verify CLI 和 Python API
  • 确定性的 Kosh Verify 事件演示和验收测试
  • 具有明确写入、变更和私有导出能力门控的本地 MCP 服务
  • 源码级 MCP 组合,在不改变这些门控的前提下,添加只读 kosh_verify 和受治理的可信记忆工具
  • 用于导入和维护任务的后台服务
  • 基于纯文件、可供检查的存储,并带有本地索引
  • 防篡改变更日志
  • GitHub Actions 测试、质量检查、安全扫描和发布工作流
  • 用于有证据支持的记忆和引用上下文的实验性公司知识库基础

剩余的发布工作主要是完善桌面软件包并完成 Windows、macOS 和 Linux 平台的签名。此处介绍的 llm-kosh-mcp 和 llm-kosh-memory 入口已存在于当前 master 源码中,计划用于下一次软件包发布;当前已发布的 PyPI 2.1.3 软件包早于这些入口。

与 MCP 客户端搭配使用

目前已发布的软件包通过现有 CLI 提供标准 MCP 服务:

llm-kosh --root ./my-cartridge mcp-server

在当前源代码中,组合后的 MCP 入口提供标准服务、只读的 kosh_verify,以及受治理的可信记忆工具:

python -m pip install -e .
llm-kosh-mcp --root ./my-cartridge

等效的模块调用方式:

python -m llm_kosh.mcp_trusted_memory_server --root ./my-cartridge

可信记忆 MCP 接口有意设置了权限限制:

  • trusted_memory_recall、trusted_memory_inbox、trusted_memory_conflicts 和 trusted_memory_explain 均为只读。
  • trusted_memory_propose 需要 --allow-write。
  • trusted_memory_review 需要 --allow-mutate。
  • Agent 创建的提案证据会记录为 agent_observation,绝不会自行提升为 user_direct。
  • 显式审核可以更改生命周期,而不会重写原始来源的权威性;严格召回仍要求证据具有权威性或可信度。

Kosh Verify 不需要额外权限。写入、变更和私密导出功能仍需选择启用,并继续使用标准服务标志:

llm-kosh-mcp --root ./my-cartridge --allow-write
llm-kosh-mcp --root ./my-cartridge --allow-write --allow-mutate
llm-kosh-mcp --root ./my-cartridge --allow-private

组合后的服务还支持本地可流式传输的 HTTP:

llm-kosh-mcp --root ./my-cartridge --http --port 8000
# endpoint: http://127.0.0.1:8000/mcp

如果将 HTTP 传输暴露到回环地址之外,请将其视为真实的网络边界。有关受治理记忆的约定,请参阅 MCP 上的可信记忆;有关 kosh_verify 的约定,请参阅 Kosh Verify;有关常规 MCP 设置,请参阅 MCP 指南。

公司知识大脑基础

实验性的公司知识大脑层在简单的笔记召回之外扩展了知识库。它引入了以参考为先的证据、会话和事件理解、基于证据的记忆、审核生命周期、权限优先的检索,以及结构化的引用上下文包。

迁移现有知识库:

llm-kosh --root ./my-cartridge brain migrate --dry-run
llm-kosh --root ./my-cartridge brain migrate
llm-kosh --root ./my-cartridge brain health
llm-kosh --root ./my-cartridge brain context "Prepare the next project decision"

注册现有文件,但不复制其源字节:

llm-kosh --root ./my-cartridge brain register ./report.xlsx --artifact-type worksheet
llm-kosh --root ./my-cartridge brain inspect <evidence-id> \
  --locator '{"sheet":"Summary","range":"A1:F25"}'
llm-kosh --root ./my-cartridge brain evaluate

根据已注册的 JSONL 导出文件构建可重放的会话或事件图:

llm-kosh --root ./my-cartridge brain register ./session.jsonl --artifact-type structured_data
llm-kosh --root ./my-cartridge brain understand <evidence-id> --dry-run
llm-kosh --root ./my-cartridge brain understand <evidence-id>
llm-kosh --root ./my-cartridge brain episodes --query "what was implemented"

参阅公司知识大脑基础。

核心概念

有三个重要位置:

  1. 仓库根目录 — 源代码检出目录。
  2. 知识库根目录 — 由 --root 或 LLMKOSH_ROOT 选择的实时记忆存储。
  3. 监视的收集文件夹 — receipts/、intake/ 和配置的外部投放文件夹。

如果文件被放入知识库的收集区域,服务可以异步处理它们。也可以通过 [daemon].watched_directories 监视外部文件夹。

可选功能

python -m pip install "llm-kosh[watch]"     # filesystem events
python -m pip install "llm-kosh[server]"    # FastAPI service
python -m pip install "llm-kosh[semantic]"  # local semantic search
python -m pip install "llm-kosh[ingest]"    # document conversion helpers
python -m pip install "llm-kosh[all]"       # all optional features

基础安装中包含 MCP 支持。

安全模型

LLM-Kosh 对 Agent 权限和导出边界采取谨慎策略:

  • 默认情况下,存储和搜索均在本地进行
  • 不会自动进行云同步或软件包遥测
  • MCP 默认以只读模式启动
  • 写入、变更和私密导出功能需要明确选择启用
  • 可选的 HTTP 传输是真实的网络边界,应进行相应配置
  • 共享前会检查导出的上下文中是否包含常见机密模式
  • 知识库文件采用明文,这是有意设计;如果本地静态数据需要加密,请使用操作系统磁盘加密

有关权威威胁模型、报告指南和当前安全边界,请参阅 SECURITY.md。

项目状态

LLM-Kosh 是一个积极维护的开源持久 Agent 记忆基础设施项目。

Python 软件包、CLI、MCP 服务、本地服务、Kosh Verify 接口、测试工作流和发布流程均已投入使用。目前的工作重点是互操作性、打包、受治理记忆、证据感知验证,以及让外部贡献者更容易安全地扩展项目。

Electron 桌面应用与 Python 软件包分开打包。支持本地开发者构建和 Windows 安装程序冒烟测试;桌面应用公开 GA 发布仍需完成经验证的 Windows 代码签名以及 macOS Developer ID 签名和公证。

有关详细的发布准备情况,请参阅 GA_READINESS.md。

开发者工作流

python -m pip install -e ".[server,watch,ingest]"
python -m pytest -q

单独运行小型公开验证验收契约:

python scripts/kosh_verify_acceptance.py

进行打包或发布相关更改时:

python -m build
python -m twine check dist/*

原生 C++ 数学加速为可选功能。设置 LLM_KOSH_BUILD_NATIVE=1 并在构建前安装 pybind11,即可对其进行测试。发布版 wheel 使用可移植的纯 Python 回退方案。

贡献

欢迎贡献,尤其是以下方面:

  • MCP 互操作性
  • 测试和回归覆盖
  • 打包和跨平台可靠性
  • 文档
  • 本地优先的记忆工作流
  • 安全加固
  • 证据和检索质量
  • 可复现的验证和基准测试方法

在提出重大更改前,请阅读 CONTRIBUTING.md。请通过 GitHub Issues 提交可复现且不涉及敏感信息的错误报告和功能提案;涉及安全问题的报告请遵循 SECURITY.md。

文档

指南用途
快速入门首次安装和本地使用
Kosh Verify感知证据的验证契约和可复现演示
通过 MCP 实现可信记忆通过 MCP 实现受治理的跨 Agent 回忆、提案、冲突处理和审核
架构系统结构和设计
CLI 参考命令参考
MCP 指南MCP 配置和使用
开发者指南开发工作流
MCP 开发者指南MCP 内部机制
服务开发者指南后台服务内部机制
桌面开发者指南桌面端打包
发布工程构建和发布流程
安全威胁模型和报告方式
GA 就绪情况当前发布状态
已归档的历史文档历史资料

开源

LLM-Kosh 以开源方式在 MIT License 下维护。

欢迎提交错误报告、有针对性的拉取请求、互操作性改进、测试和文档贡献。


记忆应让 Agent 更强大,而不应让你的工作空间变得不再属于你。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。