llm-to-agent/docs/features/extensions.md
2026-07-23 17:49:50 +08:00

91 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 扩展体系
## 静态扩展装配
**实现阶段P1**
- 使用明确的产品装配清单安装公共 Extension 和产品线私有 Extension。
- 第一版通过静态 import 和 Extension Factory 装配,不使用动态扫描或 manifest。
- Kernel 只调用 Extension 注册的公共抓手,不认识任何具体 Extension。
## Extension 生命周期
**实现阶段P1**
- 定义统一的 `setup/start/stop` 契约。
- 全部 Extension 完成 `setup` 后再按装配顺序 `start`,关闭时逆序 `stop`
- 启动或停止失败必须留下可诊断结果,并尽量清理已经获得的资源。
## 能力注册与运行事件
**实现阶段P1**
- Extension 可以注册 Kernel 主动调用的能力,也可以订阅已经发生的运行事件。
- 能力注册使用带类型的扩展点,不依赖字符串扫描,也不要求能力属于固定技术分类。
- Kernel 事实只由拥有该流程的 Kernel 代码发布Extension 只能订阅,监听失败隔离并进入诊断记录。
- 事件监听不用于偷偷修改主流程;需要返回结果或阻止执行时使用明确的受控调用点。
## 公共与产品线私有扩展
**实现阶段P1**
- 公共 Extension 保存模型、Workspace、记忆、计划等不只属于一条产品线的能力不要求三个产品全部启用。
- CLI、Web、Desktop 私有 Extension 只保存各自输入、展示、协议与原生集成。
- 产品私有实现不能互相依赖;复用部分进入公共 Extension。
## Tool 与 Run Hook 执行接缝
**实现阶段P2**
- 围绕 Tool 调用和 Run 完成提供少量明确、可测试的 Hook 执行接缝。
- 支持观察、限制、确认或附加处理,同时保持实际 Tool 调用由 Kernel 统一控制。
- 接缝失败不会悄然破坏主流程,执行结果进入 Run 日志。
## Hook 管理与诊断
**实现阶段P4**
- 支持执行处理器的顺序、启停、异常隔离、耗时和调用链查看。
- 明确哪些处理器只观察、哪些可以拒绝或结构化修改调用。
- 为日志、摘要、确认、通知和评估提供稳定抓手。
## 本地扩展加载
**实现阶段P4**
- 在静态装配契约之上增加本地 Extension 发现、校验和加载。
- 支持安装、启用、禁用、重新加载和错误回退。
- 内置与本地安装的 Extension 使用相同生命周期和能力注册方式。
## Profile 能力组合
**实现阶段P4**
- Profile 声明每种 Space 默认使用的模型、Tools、运行策略和上下文能力但不是架构层或 Extension 类型。
- 支持全局默认、Project/Task/System Evolution Profile 和 Space 级覆盖。
- 运行前得到确定的能力集合,并能向用户解释最终配置来源。
## 扩展开发与版本管理
**实现阶段P4**
- 提供扩展模板、测试工具、调试输出和兼容性检查。
- 将 Extension 变更纳入 System Evolution 的候选、测试和回退流程。
- 当真实依赖、构建或分发需求出现后,支持从源码目录提升为独立 package。
## Behavior 与 Skill 能力包
**实现阶段P5**
- 将可复用的 Agent 角色、提示词、上下文策略和工作方法封装成 Extension 内的 Behavior 能力,而不是单独架构模块。
- 支持 Behavior 组合、参数化和按 Space 或具体 Run 选择。
- Skill 复用现有 Tool 和 Run 机制,不建立绕过 Kernel 的第二套执行系统。
## 扩展分发
**实现阶段P8**
- 支持本地 Extension 打包、来源记录、版本锁定、更新和卸载。
- 对不兼容或启动失败的 Extension 提供隔离和回退。
- 分发机制服务个人设备与自举,不以建设公共插件市场为前提。