文档

五类能力,一套约定

底层的七个 Service 都在 @baoyx/dsh-agent-kit 中。钉钉仅支持已登录的 user 身份,飞书、企业微信使用机器人身份;业务包通常只 inject notify。doctor、setup 与设置页在可选的 @baoyx/dsh-agent-kit-admin 中。

通用约定

错误模型

所有错误都继承 KitError,带有 service、code、retryable,以及经过脱敏的 cause 与 details。 业务包用 isKitError(e) 和 code 判断错误,不依赖 instanceof,这样即使出现多份模块实例也能正确判断。 配置或环境变量非法时抛出 ConfigError(code: invalid_config),对应 Service 启动失败。

import { isKitError } from '@baoyx/dsh-agent-kit'

onError: (err, frame) => {
  if (isKitError(err) && err.retryable) {
    // 例如:记录下来,交给对端系统重投
  }
}

生命周期与卸载

健康状态与可观测性

本地开发与测试

@baoyx/dsh-agent-kit/testing 导出本地 WebSocket 测试服务端、假 subagent provider、Jev mock 和假 dws 脚本(createFakeDws),业务包可以在没有 dws 与 Agent 登录态的环境下开发和测试;钉钉推送也可以设为 dryRun。