插件配置
插件配置参考:agent.json、plugin.json 与顶层 nebflow 配置的 plugins 段。
插件系统的配置分布在三个文件里,各司其职:
| 文件 | 配置什么 |
|---|---|
agent.json | 智能体定义:身份,外加负责协调的智能体的角色级工具箱 |
plugin.json | 插件 manifest:身份与描述——能力来自技能文件夹 |
| 顶层配置 | nebflow 全局设置文件(~/.nebflow/nebflow.json):启用插件、记录安装 |
agent.json —— 智能体定义
每个智能体在 ~/.nebflow/agents/<name>/ 下有自己的目录:
my-agent/
├── agent.json # 定义(必需)
└── system.md # 系统提示词(推荐)
{
"name": "general",
"description": "通用执行 agent——能力由分配的 plugins 决定"
}
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
name | string | 是 | 智能体唯一标识 |
description | string | 是 | 这个智能体是做什么的 |
displayName | string | 否 | 界面里显示的可读名 |
tools | string[] | 否 | 智能体始终拥有的内建工具——固定的角色级工具箱 |
skills | string[] | 否 | 技能订阅;"*" 订阅整个目录 |
注意:
- 内建
general智能体——每个任务节点的运行基座——只带身份:一个名字和一个描述。它不声明任何自己的工具或技能:节点会怎么做来自分配给它的插件,而不是这个文件 - 任务节点不需要自己的
agent.json:节点跑在内建基座上,专化是按节点的指派——见专用智能体 - 负责协调而非执行的智能体改为声明角色级工具箱:内建 project-dispatcher 的
tools存放它规划用的图工具(NodeEdit、NodeList、NodeCancel),外加检视图用的读取工具 agent.json旁边的system.md存放该智能体的系统提示词
plugin.json —— 插件 manifest
插件是 ~/.nebflow/plugins/<name>/ 下的目录:
explorer-toolkit/
├── plugin.json # manifest(必需)
└── skills/ # 注入的指令
├── exploration-method/SKILL.md
└── solution-planning/SKILL.md
SKILL.md 引用的任何东西——参考文件、素材、脚本——都放在该技能自己的文件夹里,随插件一同交付。
manifest 遵循 Agent Plugins 1.0.0 格式:
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "explorer-toolkit",
"version": "1.0.0",
"description": "Codebase exploration and solution-planning methodology."
}
| 字段 | 必填 | 说明 |
|---|---|---|
$schema | 推荐 | 锁定 Agent Plugins 1.0.0 格式 |
name | 是 | 插件标识,展示在目录中 |
version | 推荐 | 记入安装记录 |
description | 推荐 | 插件提供什么,展示在目录与插件面板中 |
每份自带 manifest 都带一个 author 块,而 manifest 的 description 是其唯一描述源。早先的 capability 行已作废:它不是 Agent Plugins 1.0.0 schema 的字段,现存 manifest 也无一携带。
装载校验规则:
- 插件必须提供至少一项技能(
skills/<name>/SKILL.md);没有技能的文件夹在装载时被拒 - 技能自带支撑文件:
SKILL.md引用的内容就放在该技能文件夹里,随插件一同交付 - 协议对工具扩展是封闭的:没有
mcp.json、没有工具授予扩展、不挂载外部工具服务器。插件不能新增、申请或启用工具——节点的工具面由引擎按角色固定 - 未知 manifest 字段与未知文件夹忽略并告警——默认向前兼容
顶层配置——全局插件设置
在 nebflow 顶层配置文件 ~/.nebflow/nebflow.json 里,plugins 段形如:
{
"plugins": {
"enabled": true,
"trust": {
"explorer-toolkit": {
"sha256": "6769131e38df1799…",
"approvedAt": 1788881067,
"scope": "all",
"files": {
"plugin.json": "c72a9b490fc1bcba…",
"skills/exploration-method/SKILL.md": "…"
}
}
}
}
}
| 键 | 缺省 | 说明 |
|---|---|---|
plugins.enabled | true | 总开关。关闭时插件指派被忽略——节点无插件运行,目录隐藏 |
plugins.trust.<name> | — | 安装插件时写入的安装记录:整包内容 digest(sha256)、逐文件 digest 表(files)、安装时间(approvedAt)与 scope。由 nebflow 自身托管,不手工维护——删除条目即等于卸载该插件 |
plugins 段只管启用与安装记录。插件里有什么,住在插件文件夹自己身上(~/.nebflow/plugins/<name>/)——配置文件从不描述它。
智能体的工具从哪里来
节点的工具面由引擎按角色固定。插件不改动它:一个节点无论带零个插件还是五个插件,运行时的工具集完全相同。插件加的是知识与资源,不是工具——注入一套方法论,改变的是节点处理工作的方式,而不是它能触碰的范围。
插件协议页讲插件如何安装与指派。