Skip to Content
概览

SDK

sdk/ 是当前仓库中的私有混合核心,也是共享内部能力的唯一入口。它不是一个供外部直接安装的独立 npm 包。它是将旧核心实现从 cli/ 中抽离出来后形成的事实来源层。

这一层负责什么

  • 它包含私有 npm 包 @truenine/memory-sync-sdk
  • 它包含 Rust crate tnmsd 的实际 workspace 路径
  • 它负责 Rust crate tnmsd 的 facade、NAPI 构建、prompt service、schema 生成,以及最小化的 TypeScript loader 入口
  • 它仍然承接少量过渡期 bridge 逻辑,但这些 bridge 路径已经退回到 sdk/ 内部实现,不再是 cli/ 的公共组合中心
  • 它是 mcp/gui/ 以及未来内部消费者的默认依赖入口
  • 它编排 Logger、MDX-Compiler、Script-Runtime 三类基础能力;其中 Logger 和 Script-Runtime 的 TypeScript facade 已内联到 sdk/src/libraries/*sdk/* 保留 Rust crate 与发布壳层

这一层不负责什么

  • 它不直接负责公共 npm CLI 的发布入口
  • 它不负责 @truenine/memory-sync-cli-<suffix> 这类平台 shim 包的分发标识
  • 它不会把共享内部 API 再塞回 cli/,从而形成第二个事实来源

保持不变的公共标识

这次分层调整没有改变下面这些公共标识:

  • CLI 二进制仍然是 tnmsc
  • 公共 npm CLI 包仍然是 @truenine/memory-sync-cli
  • 公共平台包仍然是 @truenine/memory-sync-cli-<suffix>
  • Rust crate 名称现在是 tnmsd

变化的是路径和归属关系,而不是这些对外标识本身。

Workspace Libraries 快速导航

想看完整的系统架构?SDK 架构总览 包含三库角色定位图、依赖关系 DAG、CLI/MCP 数据流时序图以及从 Rust 源码到 npm 制品的完整构建流程。

消费者依赖方向

消费者依赖方式
cli/一个对 sdk/ 导出能力做轻量封装的 shell 和兼容层
mcp/通过 @truenine/memory-sync-sdk 的最小 binding 访问 prompt 管理能力
gui/src-tauri继续依赖 crate tnmsd,其实际路径现在位于 sdk/

消费者依赖方向是单向的:cli/mcp/gui/ 都依赖 sdk/。在 sdk/ 下游,MDX-Compiler 仍完整保留在 sdk/,而 Logger / Script-Runtime 已形成”sdk/src/libraries/* 作为 TypeScript 事实来源 + sdk/* 作为 Rust crate / wrapper 发布层”的边界。Library 之间的依赖为:MDX-Compiler → Logger;Logger 和 Script-Runtime 互不依赖。

边界规则

  • 仓库中的新内部代码不应再把 cli/ 视为默认的共享 API 入口
  • cli/ 只保留命令入口、兼容导出和发布打包职责
  • 当你需要说明实现边界时,应先从 sdk/ 开始,再看 cli/mcp/gui/

最近更新 — 本次重构的主要成果:

  • 统一的 NAPI Binding 加载器:将平台映射、候选路径探测、CLI 平台包扫描和错误聚合收敛到 sdk/src/core/native-binding-loader.ts
  • Logger / Script-Runtime 内联:TypeScript facade 已迁入 sdk/src/libraries/*,公共包 @truenine/memory-sync-sdk 仅保留 wrapper 入口
  • 完整的技术文档体系:新增 4 个文档页面(Logger、MDX-Compiler、Script-Runtime、架构总览),覆盖 API 参考、架构图、使用示例和最佳实践
  • 标准化的包配置和构建流程:三个 library 统一收敛到共享加载器 + 包级验证/适配层的职责分工,构建脚本支持增量缓存

推荐阅读

  • SDK 架构总览 — 查看完整的系统架构、三库依赖关系 DAG、数据流时序图和构建流程
  • Logger 日志库 — 了解 AI 友好的日志系统设计与完整 API
  • MDX-Compiler 编译器 — 深入 MDX→Markdown 编译流水线、表达式求值与组件机制
  • Script-Runtime 运行时 — 探索代理模块加载、路径验证与 Worker 安全机制
  • 技术细节 / 架构边界:查看 sdk/cli/mcp/gui/ 的完整分层
  • CLI:查看公共命令入口、安装路径以及面向兼容性的发布表层
  • MCP:查看 stdio server 如何消费 sdk 的 prompt service
  • GUI:查看桌面层如何调用 sdk/ 中的 tnmsd crate
Last updated on