需遵循统一规范编写hermesagent技能文档:一、语义化动宾命名并唯一id标识;二、用户视角两句话说明功能;三、yaml格式显式定义输入参数;四、json标准化输出结构;五、覆盖正常、边界、异常的三组验证用例。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望为HermesAgent构建结构清晰、可复用、易维护的AI技能文档,则需遵循统一的编写规范,确保每个技能描述具备明确意图识别边界、标准化输入输出定义与可验证的行为逻辑。以下是具体执行要求:
一、技能命名与标识规范
每个技能必须采用语义化、动宾结构的英文命名,避免缩写与歧义,便于意图解析器准确匹配。名称需全局唯一,并通过唯一ID进行索引,防止同名冲突或版本混淆。
1、使用小写字母与下划线组合,例如:send_email_notification、query_stock_price。
2、在文档头部显式声明 skill_id 字段,格式为:skill_id: "send_email_notification_v1.2"。
3、禁止在名称中嵌入环境信息(如 dev、prod)或用户身份(如 admin_send),应通过参数或权限配置分离。
二、技能功能说明编写要求
功能说明须以用户视角陈述技能解决的具体问题,不涉及实现细节或技术栈,聚焦“做什么”而非“怎么做”,长度控制在两句话以内,确保意图识别模型能从中提取关键动作与对象。
1、首句以动词开头,明确核心动作,例如:向指定邮箱地址发送包含实时股价摘要的邮件通知。
2、次句补充约束条件或典型触发场景,例如:仅在用户明确请求“发送今日收盘提醒”时激活,不响应模糊表述如“帮我看看股票”。
三、输入参数定义规则
所有输入参数必须显式声明类型、是否必填、默认值(如适用)、合法取值范围及业务含义,杜绝隐式依赖或上下文推测,保障技能调用时的确定性与可测试性。
1、参数列表以 YAML 格式嵌入文档,字段包括 name、type、required、default、description、example。
2、字符串类参数必须注明最大长度与允许字符集,例如:email 字段仅接受 RFC 5322 兼容格式,长度不超过 254 字符。
3、枚举型参数须穷举全部有效值并标注状态,例如:time_range 可选值为 ["today", "week_to_date", "last_30_days"],不支持 "yesterday"。
四、输出结构标准化格式
输出必须为严格结构化的 JSON 对象,顶层字段固定为 status、data、message,其中 data 字段内容根据技能语义定义,禁止返回原始日志、调试信息或未封装的异常堆栈。
1、status 字段仅允许三个取值:success、partial_success、failed,不得使用 ok、error 等非约定值。
2、data 字段若为空结果,须显式设为 null,不可省略或置为空对象 {}。
3、message 字段仅用于面向终端用户的简明提示,不含技术术语,例如:“邮件已成功发出,收件人:user@domain.com”,而非 “SMTP 250 OK”。
五、技能行为验证用例编写
每个技能文档须附带至少三组独立验证用例,覆盖正常流、边界值与典型异常场景,每组用例包含明确的输入载荷、预期 status 值、预期 data 结构及 message 文本,供自动化回归测试直接加载。
1、正常流用例输入须满足全部必填参数且值在合法范围内,例如:传入有效 email 与 stock_symbol,预期 status=success,data 包含 sent_time 和 recipient 字段。
2、边界用例须测试临界值,例如:email 字段为 254 个字符的合法地址,验证系统不截断也不报错。
3、异常用例须模拟非法输入,例如:stock_symbol 为空字符串,预期 status=failed,message 明确提示“股票代码不能为空”。











