本文给出 Loom 的总体定位、四层结构和阅读入口。它只沉淀跨层共享的稳定判断,不展开某一层内部的详细设计。
- Loom 是一个面向 Agent OS 的微内核。
- Loom 面向的是可持续存在、可被触发、可在边界内行动的 AI 实体,而不是某一种单一产品。
- Loom 按四个核心层理解:
kernel、plugin、harness和application。 - 单数表示核心层;复数表示外置实现集合。
- harness engineering 是显式的一层,不属于 GUI,也不属于内核。
- harness 层必须保持灵活:允许多实现并存、允许按场景裁剪、允许同一微内核承载多个外置 harness。
- 外置 application 可以很强,但这不自动改写 Loom 的定义。
- 一切能力都应优先通过可插拔组件和显式装配接入,而不是通过动态发现或隐式耦合接入。
Loom 是:
- 一个让 AI 实体在特定边界内持续存在和行动的运行时
- 一个把外部刺激转化为受约束执行过程的协调层
- 一个把共享语义压缩进微内核、把增长能力外置到
plugins/、harnesses/和applications/的模块化系统 - 一个允许多个用户应用共用同一套运行时事实基础的 Agent OS 基座
loom/kernel 定义各种 Loom 部署都必须共享的运行时语义,例如 Entity、Context、Stimulus、Capability、State、Policy、Session、Event 和 Extension,并负责最小授权判定、会话推进和状态 / 事件提交。
loom/plugin 是 plugin 层对应的核心 crate。它负责扩展契约、manifest、能力声明、注册表和 host API,本身不承载具体插件实现。真实插件包放在仓库根的 plugins/。
loom/harness 是 harness 层对应的核心 crate。它负责装配、校验、bootstrap、运行回路和可观测性的 API 边界。真实 harness 放在仓库根的 harnesses/,并且这层必须保持灵活,而不是被提前固化成唯一的调度中心。
loom/application 是 application 层对应的核心 crate。它负责 app-facing 边界与交互接入 API,本身不直接等于某个 GUI / UX 应用。真实用户应用放在仓库根的 applications/,并通过 harness 驱动系统。
plugins/:真实 plugin 包harnesses/:真实 harness 实现applications/:真实用户应用
flowchart TB
subgraph ExternalApps["applications/"]
direction BT
appDesktop["桌面工作台"]
appWeb["Web 控制台"]
appEditor["编辑器前端"]
appMobile["移动端界面"]
end
subgraph ExternalHarnesses["harnesses/"]
direction BT
harnessCode["编码 harness"]
harnessOps["运维 harness"]
harnessCollab["协作 harness"]
end
subgraph ExternalPlugins["plugins/"]
direction BT
pluginFs["fs plugin"]
pluginProc["process plugin"]
pluginNet["network plugin"]
pluginSqlite["sqlite plugin"]
end
subgraph Core["loom/"]
direction BT
appLayer["application"]
harnessLayer["harness"]
pluginLayer["plugin"]
semantics["Entity / Context / Stimulus / Capability / State / Policy / Session / Event / Extension"]
end
ExternalApps --> appLayer
ExternalHarnesses --> harnessLayer
ExternalPlugins --> pluginLayer
appLayer --> harnessLayer
harnessLayer --> pluginLayer
pluginLayer --> semantics
- 想理解 Loom 的微内核边界与核心抽象:看 内核抽象设计 和 内核原则。
- 想判断某个能力是否应沉淀到 plugin 契约或外置 plugins:看 Plugin 抽象设计 和 Plugin 原则。
- 想讨论 harness engineering 在仓库中的职责边界:看 Harness 抽象设计 和 Harness 原则。
- 想讨论 application 边界和外置用户应用:看 Application 抽象设计 和 Application 原则。
- 想统一中文概念、英文表达和目录命名:看 术语对照表。
- 想确认哪些判断已经接受:看 ADR 总览。