schema

oc-schema · package · G1-数据模型 · Layer 5

① 作用

纯类型/数据模型包,仅依赖 effect(package.json:14-16)。以 Effect Schema 定义全部领域类型:Session/SessionInput/SessionMessage(src/session*.ts)、Event 与 Durable 事件清单(src/event.ts、event-manifest.ts、durable-event-manifest.ts)、Provider/Model(src/provider.ts、model.ts)、Permission、Prompt、Agent 等 40+ 模型。src/index.ts:1-28 统一 re-export;src/schema.ts:3-10 提供 AbsolutePath/RelativePath/DateTimeUtc 等基础 branded schema。

② 提供能力

· 领域数据模型:Session/Message/Event/Permission/Provider/Model 等(packages/schema/src/index.ts:1-28)
· Effect Schema 编解码与校验基础(packages/schema/src/schema.ts:3-30)
· 事件定义清单:Event/EventManifest/Durable(packages/schema/src/event.ts、durable-event-manifest.ts)
· V1 兼容模型(packages/schema/src/v1/session.ts、question.ts、permission.ts)

③ 依赖(上游)

节点机制证据
planagent-core装配层→官方包
buildagent-core装配层→官方包
generalagent-dep装配层→官方包
exploreagent-dep装配层→官方包
search-workeragent-dep装配层→官方包
pdf-readermcp-dep装配层→官方包

④ 被依赖(下游)

节点机制证据
appworkspace-dep@opencode-ai/app/package.json dependencies.@opencode-ai/schema
clientworkspace-dep@opencode-ai/client/package.json dependencies.@opencode-ai/schema
coreworkspace-dep@opencode-ai/core/package.json dependencies.@opencode-ai/schema
llmworkspace-dep@opencode-ai/llm/package.json dependencies.@opencode-ai/schema
protocolworkspace-dep@opencode-ai/protocol/package.json dependencies.@opencode-ai/schema
opencodesemantic-depstage-01 opencode

⑤ 为什么存在(why)

设计意图(官方)

作为依赖链最底层的单一事实源,所有包共享同一套 Effect Schema 数据契约,保证类型与运行时校验一致,避免跨包重复定义与 drift。

改造关联

官方底座,未被本机装配层直接引用

⑥ 怎么用(how)

怎么用

典型场景与协作

模块内部结构 DAG(64 模块 · 176 边) 内部结构基线 v1.18.29,v1.18.35 包级结构未变(36 包集合逐一致)