ModelCLI 调用包装器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_7897338a/modelcli。
技能介绍
它解决什么问题
当你让 Agent 直接驱动本地 ModelCLI 时,最常见的问题不是模型效果,而是接口不稳定:人类可读的富文本输出、日志、错误信息和结果混在一起,解析规则稍有偏差就会让下游任务失败。这个 skill 提供一层包装器,把调用、参数注入、JSON 信封解析和重试策略收敛到固定流程里,避免 Agent 自行拼接协议或直接读原始输出。
核心工作流
- 根据请求选择能力:物体检测用
detect,图片文字用ocr,音频转写用asr,文本转语音用tts;环境或模型状态检查用capabilities、doctor或models。 - 推理前检查输入文件存在且可读,所有路径转为绝对路径。
- 通过
{baseDir}/scripts/invoke.py执行。包装器会确保 CLI 可用,并加入全局--json --allow-download,不需要调用方手工补参数。 - 解析 stdout 中唯一的 JSON 信封:
ok: true时使用result回答,并指出生成文件的绝对路径;ok: false时使用error.code、message和retryable处理失败,stderr只作为诊断信息。 - 对
retryable: true或MODEL_BUSY最多重试一次;输入错误、输出冲突和不可重试错误不要重试。 - 向用户简洁报告结果。除非用户明确要求,不要倾倒完整 JSON 或依赖日志。
安全与敏感操作边界
包装器会自动安装缺失的 ModelCLI,也允许推理时下载缺失模型。以下操作必须先获得用户明确确认,再加入 --approve-sensitive:任何 --force 覆盖已有输出;models install ... --refresh;models remove ... 或 models clean;doctor --deep。不要主动刷新模型、删除缓存或覆盖文件。普通推理、models install、models verify、models list、capabilities 和静态 doctor 不需要额外确认。
能力选择与调用约束
detect只识别 COCO 80 类,类别名使用英文,例如person、car;它不是开放词汇或 UI 元素检测模型。- OCR 返回逐行文本、置信度和四点坐标;需要可视化时使用
--draw-boxes。 - ASR 语言可选
auto|zh|en|yue|ja|ko;长音频默认启用 VAD。 - TTS 在 Agent 模式必须有
--out;需要克隆声音时用可读音频传--prompt-audio。 - 调用方拥有墙钟超时;包装器默认 900 秒,可用
--timeout调整。 - 需要具体参数或返回字段时读取
references/commands.md;需要错误码、信封或重试细节时读取references/protocol.md。
使用场景
- 编写图片审核服务,需要对上传图片做 COCO 80 类物体检测并拿到置信度与坐标。
- 构建文档数字化流程,需要从扫描件中提取逐行文字、置信度和四点坐标。
- 处理访谈录音时,需要把长音频转写成带时间段的文字,并判断音频中的情绪或声音事件。
- 开发有声内容工具时,需要把脚本合成语音,或用几秒参考音频克隆特定音色。
适合人员
- 开发 Agent 应用的工程师,需要在工作流中稳定调用本地 CLI 模型并解析结构化结果。
- 搭建图像处理管线的工程师,需要批量做物体检测或 OCR,并把输出接入下游逻辑。
- 做语音产品的研发人员,需要把录音转写成文字,或为文本生成自然语音输出。