@capyclaw/foundation
v0.1.4
Published
dsh 插件基石层:接口 ABI、插件加载器与内核服务 ctx.os。应用插件只声明接口,不写装配代码。
Readme
@capyclaw/foundation
dsh 插件基石层:接口 ABI、插件加载器与内核服务 ctx.os。
应用插件不再写 inject / apply / provider 装配,只声明「我实现了哪个接口」:
import { createPlugin, skillProvider } from '@capyclaw/foundation/abi'
export const { name, inject, apply } = createPlugin({
name: 'canvas',
requires: ['canvas.runtime@^1'],
implements: [skillProvider({ skill: './skills/canvas' })],
}, import.meta.url)三个入口
| 入口 | 内容 | 谁用 |
|---|---|---|
| . | Cordis 插件,产出 ctx.os | dsh profile |
| ./abi | 描述符构建器、加载器、错误码、版本工具 | 应用插件 |
| ./kit | 纯函数基建(迁移期复用 plugin-kit) | 应用插件 |
| ./runtime | createKernel 等宿主 API | dsh 之外的宿主(独立技能服务、测试夹具) |
状态
- 已发布
0.1.3,并登记进capyclaw-registry.json。 - 分层:应用插件 → ABI → 内核 → Host 适配器 → agent 运行时。内核不认识 dsh;
lib/host/dsh.mjs是唯一知道 dsh 服务名的地方,lib/host/memory.mjs是可移植性基线。 规范见docs/HOST-ADAPTER.md。 - ABI v1,六个接口适配器全部可用:
skill-provider/tool-provider/runtime-driver/http-router/ui-panel/lifecycle-hook,另有逃生舱raw@1。 - 能力表按
ctx实际服务探测(见lib/kernel.mjs的detectCapabilities),不做空头承诺。 - 15 个 skill 包已迁移到本 ABI;其余插件在豁免表中按批次迁移。
设计规范见 docs/spec/plugin-abi.md,强制规则见 docs/POLICY.md。
