llm-to-agent/docs/extensions.md
2026-07-24 17:37:00 +08:00

1.8 KiB
Raw Blame History

Extension 目录

具体能力全部由 Extension 实现。Tool、页面、命令和事件监听器只是 Extension 内部组成,不是新的架构类型。

第一版

src/extensions/
├── catalog.ts
├── shared/
│   ├── workspace/
│   ├── agent/
│   └── deepseek/
└── cli/
  • workspaceWorkspace、Conversation 和消息。
  • agentRun、上下文和 Agent 执行。
  • deepseekDeepSeek 模型接入。
  • cli:终端输入、命令和展示。

第一版只静态装配这四个 Extension。

catalog.ts 集中列出所有跨 Extension 使用的 Extension ID、能力抓手和事实事件它只保存字符串不保存类型或运行逻辑。

当前协作链路:

workspace  -> 提供 workspace
deepseek   -> 添加 model.providers
agent      -> 使用二者并提供 agent
cli        -> 调用 agent

协作

  • 一个明确能力由 Extension 提供,调用方取得后直接调用。
  • 模型、Tool 等多个实现通过同一扩展点汇集,由业务拥有者选择。
  • 状态真正发生后再发布事件,监听器只做展示、日志或派生处理。
  • Extension 只引用其他 Extension 的公开契约。

后续方向

后续公共能力大致包括:

项目操作与 Git
自身进化
计划与多 Agent
记忆与知识
浏览器与本机控制
自动化

CLI、Web、Desktop 各自先保持一个产品 Extension。远程仓库、外部 Tool 协议、Keychain 等在实际接入时再决定是否独立。

何时拆分

只有出现以下真实边界时才创建新 Extension

  • 需要独立启停;
  • 拥有独立的长期资源或数据;
  • 存在可替换实现;
  • 有明确产品或平台边界。

否则继续留在现有 Extension 内。目录只在能力开始实现时创建,不预建占位代码。