WorkBuddy导入技能时参数解析失败,主因是InputSchema与实际传参结构不匹配,需依次检查JSON格式合法性、字段名/类型/嵌套层级一致性、$ref引用有效性、array的items定义完整性及字段命名规范性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在WorkBuddy中导入技能后出现参数解析失败的提示,通常是由于技能配置中定义的InputSchema与实际传入参数结构不匹配所致。以下是针对该问题的多种排查与修复方法:
一、检查InputSchema JSON格式合法性
InputSchema必须为标准JSON格式,任何语法错误(如末尾多余逗号、单引号代替双引号、未转义字符)都会导致解析失败。需确保其可被JSON.parse()无异常执行。
1、将InputSchema内容复制到在线JSON校验工具(如jsonlint.com)中进行格式验证。
2、确认所有字符串键名和值均使用双引号包裹,例如 "name": "user_id",而非 'name': 'user_id'。
3、检查是否存在JavaScript风格的注释(// 或 /* */),JSON标准不支持注释,必须全部删除。
二、比对InputSchema字段与调用方传参结构
解析失败常因传入参数对象的顶层字段名、嵌套层级或数据类型与InputSchema声明不一致。系统按schema严格校验字段存在性与类型,不兼容隐式转换。
1、提取一次失败调用的实际请求体(如通过平台日志或Postman捕获的raw body)。
2、逐项对照InputSchema中定义的 "properties" 下每个字段的 "type" 和 "required" 属性。
3、确认传参中不存在schema未声明的额外字段,且所有 "required": true 字段均已提供且非空。
三、验证Schema中引用的自定义类型定义
若InputSchema使用了 "$ref" 引用内部或外部类型(如 "definitions" 中的子结构),引用路径错误或目标缺失会导致解析中断。
1、检查所有 "$ref" 值是否以 "#/definitions/" 开头,且对应名称存在于同一schema的 "definitions" 对象内。
WorkBuddy 桌宠工厂 —— 给一张角色图、一个 codex.pet 链接、一条 codex-pets.net 下载 URL、或一份现成的精灵表,就能自动创建一只可联动 WorkBuddy 状态的桌面宠物。当用户说"创建桌宠"、"做一只桌宠"、"用这张图做桌宠"、"从 codex.pet 安装桌宠"、"导入 codex 桌宠 XX"、"装一下 codex-pets.net 上的 XX&quo
2、若引用跨文件,确认被引用的schema已正确上传并启用,且URI路径可被平台解析访问。
3、临时将 "$ref" 替换为内联定义,例如将 {"$ref": "#/definitions/user"} 改为完整展开的object结构,验证是否为引用解析问题。
四、确认数组类型字段的items定义完整性
当InputSchema中某字段类型为array时,若缺少 "items" 子schema,或items内未声明具体类型,系统无法校验数组元素,将直接报解析失败。
1、定位schema中所有 "type": "array" 的字段。
2、检查其下是否包含 "items" 字段,且items值为合法schema对象(如 {"type": "string"} 或 {"$ref": "#/definitions/item"})。
3、若允许空数组,需明确设置 "minItems": 0;若要求至少一个元素,则设置 "minItems": 1 并确保items定义有效。
五、检查字段命名中的特殊字符与大小写敏感性
WorkBuddy的InputSchema解析器对字段名严格区分大小写,且不支持空格、点号(.)、短横线(-)等非常规标识符字符。非法命名会触发语法级解析中断。
1、扫描所有 "properties" 下的键名,确认仅含字母、数字、下划线(_),且不以数字开头。
2、将类似 "user-name" 或 "api.key" 的字段重命名为 "user_name" 和 "api_key"。
3、统一调用方参数字段命名风格,确保与schema中声明的大小写完全一致,例如 "UserId" 与 "userid" 被视为不同字段。

















