用途:定义具有精确工具访问与权限的专用 OpenCode 智能体,用于智能体创建、工具访问控制、权限模式与模式选择。
定义位置:项目级为 .opencode/agent/<name>.md,全局为 ~/.config/opencode/agent/<name>.md,也可在 opencode.json 的 agent 字段中定义。
Frontmatter 字段:description(必填,触发描述)、mode(primary、subagent 或 all,默认 all)、model(默认继承)、temperature(默认 1.0,0.0-2.0)、maxSteps(默认 100)、disable(默认 false)、tools(默认全部启用)、permission(默认全部允许)。
模式:primary 在菜单可见、不可作为 task 目标;subagent 菜单不可见、可被编排;all 两者皆可。primary 描述最多 3 个词,subagent 描述必须包含触发示例。
权限:默认拥有全部工具与权限,只有需要限制时才添加 permission 块。级别为 allow、ask、deny。bash 支持精确、前缀与通配符匹配,按具体程度排序,例如 "npm test": "allow"、"npm ": "ask"、"": "deny",且不应允许 rm -rf。
工具:可启用或禁用 question、webfetch、task 等,关键工具包括 question、delegate、task、todowrite、todoread、skill。
常见原型:只读分析器(edit 与 bash 拒绝,仅允许 git log、git diff)、完全访问构建器(无 permission 块)、研究型(禁编辑与 bash)、基于技能的安全扫描器(skill 默认拒绝,仅允许 security-*)。
系统提示:markdown 正文即系统提示,可写角色、目标、指令、工作流与输出格式。
验证:创建后运行 opencode run "test",primary 从菜单选择,subagent 用 task 工具调用。
限制:资料未提供具体收费、价格、平台支持范围与效果数据。