🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

时序上下文图 melandlabs/opencontext

DeepSeek Harness
melandlabs11 天前有提交已提供中文文档扫描:含敏感能力

你的智能体忘了自己为什么做决定。OpenContext 解决这个问题。

55.7/100
综合分
77
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add melandlabs/opencontext
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · browser
装得上吗
作者未把包发布到 npm,只能用源码安装
插件本身没问题,是分发方式不同
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包opencontext-monorepo(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.0.0 <27.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 09:03:37

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量发起外部网络请求
扫描于 2026/11/3(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
涉及外部主机:openrouter.ai

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 记忆API
  • 检索原语

时序上下文图、记忆 API、检索原语,还有多平台集成网格——都能嵌进任意宿主进程。

README

由 DeepSeek 最新模型翻译生成
OpenContext 你的智能体忘了自己为什么做决定。OpenContext 解决这个问题。 _面向 AI 智能体的上下文层 —— 时序上下文图、记忆 API、自演化循环,全在一个依赖里。_ 上下文是缺失的那一层。 检索回答的是_发生了什么_。OpenContext 回答的是_发生过的事如何变成现在这样_。 不同于只做检索的记忆库, OpenContext 保留_为什么_ —— 时序时间线、信念修正、来源追溯。 English · 简体中文 ⭐ 如果你觉得 opencontext 有用,欢迎在 GitHub 上给我们点个 star! 这能让更多人发现这个项目,也是我们继续做下去的动力。🙏 OpenContext 是什么? OpenContext 是智能体上下文运行时,位于智能体应用的下层 —— 也是你在上面搭建自己智能体的底座。 它不是 UI,不是聊天界面,也不是模型服务商 ——它是把让智能体真正有用的那些东西粘起来的胶水:持久记忆、检索、上下文修正、多平台连接、定时感知,以及确定性的循环引擎,全都藏在一个依赖后面。 → 阅读 docs/architecture.md,了解完整的数据模型、一条事实的生命周期,以及传输层接口地图。 适合谁用?
展开完整文档(README 剩余 1 节)
OpenContext

你的智能体忘了自己为什么做决定。OpenContext 解决这个问题。

_面向 AI 智能体的上下文层 —— 时序上下文图、记忆 API、自演化循环,全在一个依赖里。_

上下文是缺失的那一层。 检索回答的是_发生了什么_。OpenContext 回答的是_发生过的事如何变成现在这样_。

不同于只做检索的记忆库, OpenContext 保留_为什么_ —— 时序时间线、信念修正、来源追溯。

English · 简体中文

⭐ 如果你觉得 opencontext 有用,欢迎在 GitHub 上给我们点个 star! 这能让更多人发现这个项目,也是我们继续做下去的动力。🙏

OpenContext 是什么?

OpenContext 是智能体上下文运行时,位于智能体应用的下层 —— 也是你在上面搭建自己智能体的底座。
它不是 UI,不是聊天界面,也不是模型服务商 ——它是把让智能体真正有用的那些东西粘起来的胶水:持久记忆、检索、上下文修正、多平台连接、定时感知,以及确定性的循环引擎,全都藏在一个依赖后面。

→ 阅读 docs/architecture.md,了解完整的数据模型、一条事实的生命周期,以及传输层接口地图。

适合谁用?

OpenContext 适合需要把上下文当作工程来做的团队 —— 也就是说,这些团队的日常工作正好撞上 OpenContext 当初要解决的问题。下面每一条都点出痛点,以及 OpenContext 怎么应对:

- 软件工程团队。 决策散落在 GitHub PR、Linear 工单、Slack 讨论串和 Notion 文档里 —— 跨人、跨工具、跨季度。新同事问「我们当初为什么选 X?」,没人答得上来。OpenContext 的时序图给每条事实都存了 valid_from / valid_until,所以「上个季度我们相信的是什么?」是一个真实可查、可引用的查询 —— 不是靠猜。
- 效率 / 生产力工程团队。 这些人给公司其他部门做内部自动化。他们不想要又一个 SaaS —— 他们想要一个能直接塞进命令行、MCP 服务器或守护进程的运行时。OpenContext 以库为先,确定性的 Loop 引擎只在真有活干的时候才调用 LLM,所以它不会变成一个烧 token 的常开循环。
- 办公助手类产品。 助手跑在 Telegram、iMessage、WhatsApp、飞书等平台里。同一套智能体代码,跨渠道共享同一份上下文。IntegrationRecord 把凭据、限流和重连逻辑藏起来,而 platform + messageId 天然就是个人数据与工作数据的审计线索。
- 金融交易团队。 每一笔订单、每一次调仓、每一个风控决策都要可追溯、可审计。时序图加上只追加的更正,意味着「4 月的策略是什么?」是一个可查询的事实,而不是埋在角落里的猜测——这条线索也符合 MiFID II / SEC 的留存规则。
- 法律、医疗等受审计领域。 律所、医院以及类似团队,每一个判断都需要逐事实的来源追溯、只追加的更正,以及可导出的合规证据。
- 多智能体与自主工作流的作者。 需要按计划、确定性地唤醒,而不是一路 LLM 循环到底。packages/loop 提供的正是这种分离。

功能

| | 能力 | 作用 |
| 🧠 | 时序上下文图 | 一张有向无环图,每个事实都带 valid_from / valid_until。取代、矛盾、合并都是一等边——更正是只追加的,不破坏原有数据。 |
| 🔌 | 平台集成网格 | 在 Gmail、Slack、Telegram、Linear、Jira、iMessage、飞书、微信等平台之间,统一成一种 IntegrationRecord 结构——凭据轮换、限流处理、重连逻辑都藏在适配器后面。 |
| ⏰ | 确定性循环引擎 | 调度器先醒来,判断有没有真正的工作,确认之后才调用智能体运行时。LLM 调用不是基础,而是最后一步。 |
| 🔍 | 检索原语 | 分块、嵌入、解析器(PDF/ZIP/文本)、sqlite-vec + pgvector + Chroma 适配器。混用后端,不用重写召回流水线。 |
| 🤖 | 智能体运行时 | AI SDK 封装、沙箱服务商(native / Claude / Vercel)、MCP 服务器、记忆整合任务、图像 + 音频生成。 |
| 🪶 | 库优先 API | 用 pnpm add @melandlabs/opencontext 安装一次,就能拿到契约、记忆存储、检索原语、循环引擎和智能体运行时。 |
| 🛡️ | 审计 + 加密存储 | 结构化审计日志写入 ~/.opencontext/logs/audit.jsonl,密钥用 Fernet 对称加密,对外调用有 URL 允许列表/阻止列表。 |

基准测试

第三方记忆与长上下文召回基准(数据截至 2026-08):

| 基准 | 得分 | 衡量内容 |
| LongMemEval-S | 97.6% | 跨长会话的长期记忆召回 |
| LoCoMo-V2 | 97.4% | 长多模态对话上的问答 |
| BEAM @ 10M | 67.0% | 10M token 上下文窗口下的事实召回 |
上方分数是 opencontext 自评,跑在公开数据集上,由我们自己的 harness 在 benchmark/ 下生成。它们不是 Agent Memory Leaderboard(AML)的结果 —— AML 在自己的平台上,用私有精调数据集评测。等我们的托管提交跑完,官方 AML 分数会出现在排行榜卡片上;提交内容见 benchmark/aml-local/。

快速开始

把 opencontext 接入项目有好几种方式。挑一种适合你正在做的东西。

1. 把运行时嵌入你自己的应用

pnpm add @melandlabs/opencontext

30 秒上手 memory API:

import { createMemoryStore, getRawMessageManager } from "@melandlabs/opencontext";

// The store defaults to SQLite at MEMORY_STORE_DB_PATH (./memory.db by
// default). Each call returns an awaitable handle.
const store = await createMemoryStore();
const messages = await getRawMessageManager();

// A message is one fact: a single piece of content attributed to a user.
// messageId makes the call idempotent across re-ingest.
const now = Date.now();
await messages.storeMessages([
{
messageId: "msg-1",
userId: "u-42",
content: "User prefers dark mode in all tools",
platform: "test",
botId: "bot-1",
timestamp: now,
createdAt: now,
},
]);

// Unified search fans out to memory + insights + knowledge. Sources you
// haven't wired up just emit a warning — fine for a single-backend deploy. const hits = await store.search({ userId: "u-42", query: "What does the user prefer?", limit: 5, }); // hits.count — number of results // hits.sources — which sub-indexes were actually consulted // hits.warnings — per-source degradation (e.g. missing embedder)

2. 用命令行管理记忆

直接在命令行里写入和查询记忆。add 把单条原始消息写进当前 manager,不走 LLM 往返;search 在 memory、insights、knowledge 上做统一读取。

pnpm add -g @melandlabs/opencontext # puts the opencontext bin on PATH

Write a fact (auto-fills messageId, platform="cli", timestamp=now)
opencontext add --text "Rust achieves memory safety without GC"

Write with full provenance for later consolidation
opencontext add \
--text "Discussed Q4 roadmap with the team" \
--source "meeting://2026-08-20" --kind experience \
--tag topic=roadmap --tag team=eng

Plain hybrid search (RRF across memory + insights + knowledge)
opencontext search --query "memory safety" --k 5

Inspect what would have been sent to the LLM, no synthesis call
opencontext search --query "what did we chat about last weekend" --context-only

Script-friendly JSON
opencontext search --query "x" --json | jq '.results[].id'

add 接受 --user(默认 "default")、--bot(默认 "default")、--platform、--channel、--person、--source、--kind、--at、可重复的 --tag key=value。search 接受 --mode {auto|lex|sem}、--k、--threshold,可重复的 --bot / --kind、--since / --until,以及 --explain,用来在命中结果旁展示推理过程和警告。

运行 opencontext <command> --help 查看完整参数列表。完整参数参考和示例见入门教程。

3. 从 npm 运行 HTTP 守护进程

pnpm add -g @melandlabs/opencontext # puts the opencontext bin on PATH
opencontext http \
--embedding-provider local \
--memory-backend sqlite-vec \
--host 127.0.0.1 --port 7421
Or, without a global install, via npx:
npx -y @melandlabs/opencontext http \
--embedding-provider local --memory-backend sqlite-vec
curl http://127.0.0.1:7421/health

4. 把 MCP 服务器接入 Claude Desktop / Cursor

opencontext mcp \
--embedding-provider local \
--memory-backend sqlite-vec

5. 配合 DeepSeek Harness(DSH)使用

OpenContext 提供 DSH 插件,让任何 DSH 智能体都能拥有持久记忆和检索增强上下文:

Install the plugin from npm
dsh plugin --profile web add dsh-opencontext

Confirm it's mounted
dsh --profile web --dump-config | grep dsh-opencontext
... should contain id: dsh-opencontext

Start DSH web and verify
dsh web
Visit http://127.0.0.1:3080/plugins and confirm dsh-opencontext shows "Enabled"

插件暴露 16 个 oc_* 工具(例如 oc_search、oc_remember、oc_memory_list),并自动完成以下操作:
- 每轮运行召回瀑布,注入相关的历史上下文
- 把用户消息捕获进持久记忆
- 在自然断点处总结会话(需主动开启)

配置选项和完整工具参考见 plugins/dsh-opencontext/README.md。

6. 诊断安装

opencontext doctor # human-readable health checks
opencontext doctor --json # CI-friendly { ok, exit, results } envelope
opencontext doctor --section memory-store

doctor 只读,安装健康时退出码为 0。它扫描九个部分(runtime、filesystem、loop、memory-store、embedding、policies、audit、security、integrations),并逐项报告 pass / warn / fail。v1 不提供自动修复。

下一步:教程 —— 入门、用户指南、开发者指南、高级模式与最佳实践

示例

examples/ 工作区为每个能力领域都提供了一个可运行的示例。克隆、安装并运行:

git clone https://github.com/melandlabs/opencontext.git
cd opencontext/examples
pnpm install
pnpm test

完整演练见 examples/README.md。

它有何不同

OpenContext 不是记忆库,也不是向量数据库。它是运行时底座 —— @melandlabs/opencontext 包打包了契约、记忆存储、检索原语、循环引擎,以及智能体运行时,全都收进一个依赖里。

| 对比对象 | opencontext 多出来的东西 |
| 扁平向量数据库(Pinecone、Weaviate、Qdrant) | 时序图——事实带 valid_from / valid_until,会被取代,而不只是做相似度匹配 |
| 上下文 / 记忆库 | 运行时,不是库——HTTP 守护进程、MCP 服务器、命令行,外加集成网格和循环引擎 |
| 自己接智能体循环 | 可拆分的 Loop 引擎,负责调度何时唤醒智能体,而不是一路往下都是 LLM 循环 |
| 为了拿集成才嵌入 opencontext | 单包安装——一次 pnpm add 拿到全部能力,用不着 React / Next / Tauri |

架构

┌────────────────────────────┐
│ Host application │ ← your UI, CLI, or daemon
│ (a reference app, │
│ or your own embedder) │
└─────────────┬──────────────┘
│
┌────────────────────────┴────────────────────────┐
│ @melandlabs/opencontext │
│ contracts · memory · rag · loop · agent │ └────────────────────────┬────────────────────────┘ │ ┌─────────────────────────────┴─────────────────────────────┐ │ Storage backends │ │ sqlite-vec · postgres · indexeddb · chroma · pgvector │ └─────────────────────────────┬─────────────────────────────┘ │ ┌─────────────────────────────┴─────────────────────────────┐ │ Integrations mesh (gmail, slack, …) │ └───────────────────────────────────────────────────────────┘

完整的数据流图、传输层接口和存储后端都在 docs/architecture.md。

文档

教程(从这里开始)

- docs/tutorials/README.md — 教程索引与学习路径
- docs/tutorials/00-getting-started.md — 5 分钟跑起来
- docs/tutorials/01-user-guide.md — 搞懂四个动词和时序记忆
- docs/tutorials/02-developer-guide.md — 把 OpenContext 集成进你的应用
- docs/tutorials/03-advanced-usage.md — 生产环境模式与高级功能
- docs/tutorials/04-best-practices.md — 技巧与常见坑
- docs/tutorials/use-cases/README.md — 真实用例:个人助理、客服智能体、研究追踪

架构与设计

- docs/architecture.md — 数据模型、生命周期、数据面与控制面
- docs/philosophy.md — 为什么是这个形态
- 每个包的 README.md — API 接口、示例、迁移说明

贡献

见 CONTRIBUTING.md。

许可

Apache-2.0。© 2026 Meland Labs。
预览分享卡片长什么样 ↓melandlabs/opencontext
分享 · DeepSeek Harness Hub
melandlabs/opencontext

你的智能体忘了自己为什么做决定。OpenContext 解决这个问题。

回到顶部