跳转到内容

扩展总览

本页面面向想把团队工作流分发给他人的维护者。读完后,你会知道扩展包解决什么问题、当前能做什么,以及哪些能力必须继续留在 Jarvis host 边界内。

Jarvis 的扩展系统叫 Declarative Extension Packs。扩展包主要提供数据:Agent Profile、Workflow、slash command、workspace、host-managed native service 和 internal MCP server descriptor。Jarvis Core 负责校验、安装、启停、持久化、UI 展示、worker 启动、权限执行和原生依赖生命周期。

Workflow 和 Agent Profile 已经可以在核心产品里手动创建。扩展包解决的是另一个问题:让第三方维护者把一组配置作为一个可版本化、可验证、可禁用、带来源信息的交付物发布。

这对长期尾需求更有价值。核心开发者不适合维护每个团队的发布流程、数据库隧道、值班巡检、代码评审偏好或迁移 SOP;扩展作者可以维护自己的 pack,Jarvis 只维护稳定的 host 边界。

领域 Jarvis Core Extension Pack
Manifest 解析、schema 校验、兼容性判断、权限展示 声明身份、版本、贡献点、权限和适用条件
Agent Profile YAML 解析、lint、worker 启动、MCP 合并 提供 profile YAML,不写密钥明文
Workflow 校验 DAG、持久化、运行快照、pipeline engine 执行 提供 workflow spec 和 pack-local profile 引用
Slash command 解析、补全、路由、执行 Core action 声明 /command 映射到 workflow、profile 或 route
Workspace 分配 Jarvis-managed 数据目录、套用用户配置 声明插件需要的数据根
Native service 下载、校验、安装、启动和健康检查 声明 host-managed dependency 和 loopback 启动参数
Internal MCP 按 descriptor 生成 relay 并注入 worker 声明工具 schema、路由和安全 annotations
安全 禁止可执行入口、展示风险、锁定 pack-owned 对象 声明需要的能力,接受校验失败
  • 安装 server-local 目录形式的扩展包。
  • 公共 Registry 预览和安装入口在 main/stable 默认开启,gated 构建强制关闭。
  • 使用 jarvis-pack.yaml 声明 pack identity、engine 兼容性、permissions、secrets 和 contributions。
  • 贡献 Agent Profile、Workflow、slash command、workspace、native service descriptor、internal MCP server descriptor 和 capability inspector。
  • 把 workflow 中的 profile:<local-id> 重写为安装后的真实 profile id。
  • 在 Settings → Extensions 中验证、安装、启用、停用和卸载 pack。
  • 在 slash command 菜单中显示 extension command 来源。
  • 将 extension-owned Profile 和 Workflow 展示为 locked,只能复制后编辑。
  • 对 registry-managed pack 执行更新检查和受审查的更新应用。
  • 不能运行第三方 Python、JavaScript 或 shell 插件代码。
  • 不能注册任意 slash command handler。
  • 不能贡献自定义 UI panel 或 Webview。
  • 不会自动安装在线 marketplace 内容;插件目录安装必须由用户显式触发,gated 构建不可用。
  • 不能绕过安装/更新审查;能力变化仍必须由用户确认。
  • 不能从 pack 内脚本自行安装原生依赖;需要二进制时必须走 Jarvis host-managed native dependency。
  • 不能绕过 Jarvis worker 的权限模型。