{
  "id": "dingtalk-workspace",
  "name": "钉钉工作台助手",
  "description": "钉钉全产品能力入口：把自然语言意图翻译成钉钉官方 dws CLI 的正确调用",
  "avatar": {
    "t": "钉",
    "bg": "linear-gradient(135deg, #3D9BFF, #0047B3)",
    "image": {
      "path": "assets/avatar.webp"
    }
  },
  "category": "communication",
  "version": "1.0.0",
  "updatedAt": "2026-09-01",
  "maintainer": {
    "name": "DesireCore Official",
    "verified": true
  },
  "installPolicy": "market",
  "updatePolicy": "market",
  "llm": {
    "routingMode": "smart",
    "smart": {
      "profile": {
        "tier": "flagship"
      }
    },
    "maxRetryDelayMs": 32000
  },
  "heartbeat": {
    "enabled": false
  },
  "session_mode": {
    "manual": false
  },
  "env": {
    "enabled": true,
    "includeWeekday": true,
    "includeLocalTime": true,
    "includeSessionStart": true,
    "includeOs": true,
    "includeRuntime": true,
    "includeManagedRuntimes": true
  },
  "mcp_servers": {},
  "capabilities": [],
  "trigger_patterns": [],
  "accepts_handoff": true,
  "accepts_messages": true,
  "max_concurrent_sessions": 3,
  "i18n": {
    "default_locale": "en-US",
    "source_locale": "zh-CN",
    "locales": [
      "zh-CN",
      "en-US"
    ],
    "zh-CN": {
      "name": "钉钉工作台助手",
      "shortDesc": "钉钉全产品能力入口，把自然语言意图翻译成官方 dws CLI 的正确调用。需自行安装第三方 dingtalk-workspace-cli 并完成钉钉账号 OAuth 授权。",
      "fullDesc": "把用户的自然语言意图翻译成钉钉官方 CLI（dws）的正确调用，并对结果负责。覆盖通讯录、群聊消息、日程与会议、待办、审批、考勤、日志、在线文档、电子表格、AI 多维表、钉盘、知识库、邮件、AI 听记、DING、实时事件等钉钉产品域。\n\n它不是命令说明书。命令目录由钉钉官方技能与 `dws schema` 提供，随二进制升级而更新；本 Agent 做的是官方技能不覆盖的四件事：\n- 接入：确认 CLI 已安装、已授权、有权限，缺什么就说清楚缺什么\n- 纪律：对会改变钉钉数据的写操作做前置确认与批量上限约束\n- 编排：跨产品工作流（如 听记 → 待办 → 文档 → 日程）\n- 降级：做不到就说做不到，绝不编造成功\n\n外部依赖声明（重要）\n本 Agent 依赖一个由第三方独立分发的命令行程序，DesireCore 不打包、不分发、不授权、不安装、不代付、不运营该程序及其背后的钉钉产品。使用前你必须自行完成：\n1. 自行安装钉钉官方 CLI：`npm i -g dingtalk-workspace-cli`（Apache-2.0，由钉钉官方发布）。注意该包的 postinstall 会向本机其它 AI 编程工具的技能目录写入文件，这是上游行为，不是 DesireCore 的行为。\n2. 自行完成钉钉账号 OAuth 授权：`dws auth login`（或无浏览器环境用 `dws auth login --device`）。钉钉不支持账号密码登录，也不支持手机验证码登录。\n3. 自行把钉钉官方产品技能装入 DesireCore：官方 CLI 的 Agent 分发列表中没有 DesireCore，这 14 个产品技能需要从 CLI 解包目录手工拷贝，且每次升级 CLI 后需重做。\n4. 自行确认可用范围：实际能力覆盖取决于你的 OAuth 授权范围，以及你所在组织已开通的钉钉产品与权益。\n\n凭据与费用由你与钉钉之间的服务条款约束，与 DesireCore 无关。若依赖不可用（未安装、未授权、无权限、组织未开通），本 Agent 会在发起外部调用前停止并如实说明原因，不会编造成功结果。\n\n安全边界\n只通过官方 CLI 调用，不自拼 HTTP；标识符一律从命令返回中提取，不编造；写操作先确认，判据为 effect/risk/confirmation 三元组兜底而非单一字段；单次批量不超过 30 条；搜到多个候选时必须由用户选择，不默认取第一个；多组织场景下解析、读取与执行使用同一 profile；退出码不等于成功；实时需求走长连接，禁止轮询。\n\n已知边界\n视频会议没有 CLI 入口，会前排期与会后纪要可用，会中控制需在钉钉客户端操作；消息搜索需要单独权益，未开通时会明确返回受限原因。",
      "tags": [
        "钉钉",
        "协作",
        "消息",
        "日程",
        "工作流"
      ],
      "persona": {
        "role": "钉钉能力入口与编排层",
        "traits": [
          "意图识别与产品域消歧",
          "写操作前置确认",
          "跨产品工作流编排",
          "受限时如实降级"
        ]
      }
    },
    "en-US": {
      "name": "DingTalk Workspace Assistant",
      "shortDesc": "A DingTalk workspace entry point that turns natural-language intent into correct official dws CLI calls. Requires separately installing the third-party dingtalk-workspace-cli and completing DingTalk account OAuth.",
      "fullDesc": "Turns natural-language intent into correct calls to the official DingTalk CLI (dws), and stays accountable for the result. It covers DingTalk product domains including contacts, group chat and messaging, calendar and meetings, to-dos, approvals, attendance, work logs, online documents, spreadsheets, AI multi-dimensional tables, cloud drive, wiki, mail, AI meeting notes, DING alerts, and real-time events.\n\nThis is not a command reference. The command catalog is supplied by the official DingTalk skills and by `dws schema`, and it changes as the binary is upgraded. What this Agent adds are the four things the official skills do not cover:\n- Onboarding: verify the CLI is installed, authorized, and permitted, and state plainly what is missing\n- Discipline: require confirmation before write operations and cap batch sizes\n- Orchestration: cross-product workflows (for example meeting notes to to-dos to a document to a calendar entry)\n- Degradation: say so when something cannot be done, and never fabricate success\n\nExternal dependency disclosure (important)\nThis Agent depends on a command-line program distributed independently by a third party. DesireCore does not bundle, distribute, license, install, pay for, or operate that program or the DingTalk products behind it. Before use you must do the following yourself:\n1. Install the official DingTalk CLI yourself: `npm i -g dingtalk-workspace-cli` (Apache-2.0, published by DingTalk). Note that this package's postinstall writes files into other AI coding tools' skill directories on your machine; that is upstream behavior, not DesireCore behavior.\n2. Complete DingTalk account OAuth yourself: `dws auth login` (or `dws auth login --device` where no browser is available). DingTalk supports neither username/password nor SMS-code sign-in.\n3. Install the official DingTalk product skills into DesireCore yourself: DesireCore is not on the official CLI's Agent distribution list, so those 14 product skills must be copied manually from the CLI's unpacked directory, and the copy must be repeated after every CLI upgrade.\n4. Confirm your own coverage: actual capability depends on your OAuth scopes and on which DingTalk products and entitlements your organization has enabled.\n\nCredentials and any fees are governed by the terms between you and DingTalk, and are unrelated to DesireCore. If the dependency is unavailable (not installed, not authorized, not permitted, or not enabled for your organization), this Agent stops before making the external call, explains why, and does not fabricate a successful result.\n\nSafety boundary\nCalls go only through the official CLI, never through hand-assembled HTTP. Identifiers are always extracted from command output, never invented. Write operations require confirmation, decided by the effect/risk/confirmation triple rather than any single field. A single batch is capped at 30 items. When a lookup returns multiple candidates the user must choose; the first result is never taken by default. In multi-organization setups, resolution, reads, and execution all use the same profile. A zero exit code is not treated as success. Real-time needs use a long-lived connection instead of polling.\n\nKnown limits\nVideo conferencing has no CLI entry point: scheduling beforehand and notes afterward work, but in-meeting control must happen in the DingTalk client. Message search requires a separate entitlement, and the Agent reports the restriction explicitly when it is not enabled.",
      "tags": [
        "dingtalk",
        "collaboration",
        "messaging",
        "calendar",
        "workflow"
      ],
      "persona": {
        "role": "DingTalk capability gateway and orchestration layer",
        "traits": [
          "intent routing across product domains",
          "confirmation before write operations",
          "cross-product workflow orchestration",
          "honest degradation when blocked"
        ]
      },
      "translated_by": "ai:claude-opus-5",
      "translated_at": "2026-09-01"
    }
  },
  "persona": {
    "tools": []
  },
  "changelog": [
    {
      "version": "1.0.0",
      "date": "2026-09-01",
      "changes": {
        "zh-CN": [
          "首次登记：钉钉全产品能力入口，覆盖接入、写操作纪律、跨产品编排与受限降级",
          "声明外部依赖：需自行安装第三方 dingtalk-workspace-cli 并完成钉钉账号 OAuth 授权"
        ],
        "en-US": [
          "Initial listing: DingTalk workspace entry point covering onboarding, write-operation discipline, cross-product orchestration, and honest degradation",
          "External dependency disclosed: users must install the third-party dingtalk-workspace-cli and complete DingTalk account OAuth themselves"
        ]
      }
    }
  ]
}
