DSH Quality
入门
4 分钟阅读

理解 DSH 命令系统

理解 DSH 命令系统 — 学习如何构建入门 dsh 插件。

最后更新:2026-08-29

命令是用户-facing 的入口

命令是用户从 UI 或 CLI 显式触发的操作。和 tool(由模型自主调用)不同,command 由人主动发起。理解命令是写第一个插件之后的第二步。

注册命令

最小注册:

ts
ctx.commands.register('my-cmd', {
  description: 'Run my custom command',
  action: (args) => {
    return `Got: ${JSON.stringify(args)}`;
  },
});

命令可以带类型化参数、帮助文本和子命令。action 回调接收已解析的参数并返回 UI 可展示的结果。

参数与校验

ts
ctx.commands.register('greet', {
  description: 'Say hello to someone',
  args: {
    name: { type: 'string', description: 'Person to greet' },
  },
  action: ({ name }) => `Hello, ${name}!`,
});

参数校验在 action 运行之前执行。输入错误会直接报错,不会调用你的代码。

为什么这关系到质量

设计良好的命令是我们评分引擎检查的信号之一:清晰的描述、合理的参数、有帮助的错误提示。命令 UX 差的插件在文档维度得分更低。