进阶
DSH 中的错误处理模式
DSH 中的错误处理模式 — 学习如何构建进阶 dsh 插件。
错误必须暴露给模型
当 tool 失败时,返回 { ok: false, error: string }——永远不要 throw。抛出的错误会崩溃模型调用并产生无用的消息。
async execute(args) {
try {
const result = await doSomething(args.input);
return { ok: true, data: result };
} catch (err) {
return { ok: false, error: String(err) };
}
}模型然后可以决定重试、向用户请求澄清、或优雅地报告错误。