Install
openclaw skills install cms-cwork-skilsCWork 工作协同原子能力集,覆盖员工搜索、文件上传下载、发送/回复汇报、收发件箱、汇报详情、任务、待办、事项、插件聚合、新消息、已读状态与 AI 问答;适用于“汇报、待办、任务、附件、消息、已读、员工查询”等场景;仅支持 appKey 鉴权并按需加载接口执行组合调用。
openclaw skills install cms-cwork-skils本技能包基于 XGJK v1.05 协议构建,围绕《工作协同业务说明.md》《工作协同API说明.md》《基础服务业务说明.md》《基础服务-API说明.md》整理当前已覆盖的 CWork 常用协同能力,通过"一接口一脚本"的模式提供自动化办公支持。
当前版本: v1.3
接口版本: 所有业务接口统一使用 /open-api/* 前缀,自带 appKey 鉴权。
工作协同 汇报 回复 待办 任务 附件 消息 已读 员工搜索 组织架构 AI问答。cms-auth-skills 提供 appKey。当前覆盖范围说明:
统一规范:
cms-auth-skills 提供,详见 cms-auth-skills/SKILL.mdxgjk-cwork 所有业务接口仅支持
appKey鉴权模式,不支持access-token。
- 对应
cms-auth-skills的login.py,xgjk-cwork 场景只允许使用--resolve-app-key参数(返回appKey)- 禁止使用
--ensure(会返回 access-token,xgjk-cwork 接口无法识别)- 正确用法:
python3 login.py --resolve-app-key→ 返回可直接用于appKeyHeader 的值
cms-auth-skillscms-auth-skills/scripts/auth/login.py --resolve-app-key 执行,严禁在脚本中直接调用底层 HTTP 鉴权接口appKey 时,优先直接读取 cms-auth-skills/SKILL.mdcms-auth-skills/SKILL.md 中的鉴权规则,使用 login.py --resolve-app-key 准备 appKeynpx clawhub@latest install cms-auth-skills --forcenpx clawhub@latest install https://github.com/spzwin/cms-auth-skills.git --forceXG_BIZ_API_KEY / XG_APP_KEY 运行;若本地尚未准备 appKey,需先按 cms-auth-skills 规则解析后再执行。openapi/) 必须对应一个 Python 脚本 (scripts/)。appKey 时执行 -h/--help,便于 AI 先探测参数再组合调用。--report-id、--employee-id、--corp-id),仅在兼容场景下使用位置参数。openapi/<module>/api-index.md 确认接口,再读取对应 scripts/<module>/README.md 确认参数,最后执行脚本。report-write/*、todos/complete.py、report-message/read-report.py、plan-create/create-simple.py)必须先做明确确认再调用。--client-limit 和 --output-file,默认建议只处理前 200 条,最大不超过 500 条。reportInfoOpenQuery/unreadList 实测可能忽略传入 pageSize,不要把脚本裁剪结果误判为平台真实分页结果。resultCode / resultMsg / data 读取,必要时再解析模块特定字段。27 个接口文档与脚本说明。SKILL.md(能力定位)→ openapi/<module>/api-index.md(接口候选)→ 单接口 openapi 文档(请求契约)→ scripts/<module>/README.md(参数规范)→ 单脚本执行。file-service + report-write,不应额外加载 tasks/todos/plugin-report。cms-cwork-skils/
├── SKILL.md
├── openapi/
│ ├── user-search/
│ │ ├── api-index.md
│ │ └── search-emp.md
│ ├── employee-service/
│ │ ├── api-index.md
│ │ ├── get-by-person-ids.md
│ │ └── get-org-info.md
│ ├── file-service/
│ │ ├── api-index.md
│ │ ├── get-download-info.md
│ │ └── upload-file.md
│ ├── report-write/
│ │ ├── api-index.md
│ │ ├── submit.md
│ │ └── reply.md
│ ├── inbox/
│ │ ├── api-index.md
│ │ └── get-list.md
│ ├── outbox/
│ │ ├── api-index.md
│ │ └── get-list.md
│ ├── report-detail/
│ │ ├── api-index.md
│ │ └── get-info.md
│ ├── tasks/
│ │ ├── api-index.md
│ │ ├── get-page.md
│ │ └── get-simple-plan-and-report-info.md
│ ├── todos/
│ │ ├── api-index.md
│ │ ├── get-list.md
│ │ ├── complete.md
│ │ └── list-created-feedbacks.md
│ ├── templates/
│ │ ├── api-index.md
│ │ ├── get-list.md
│ │ └── list-by-ids.md
│ ├── plugin-report/
│ │ ├── api-index.md
│ │ ├── get-list.md
│ │ ├── get-latest-list.md
│ │ └── get-unread-list.md
│ ├── report-query/
│ │ ├── api-index.md
│ │ ├── get-todo-list.md
│ │ ├── get-unread-list.md
│ │ └── is-report-read.md
│ ├── report-message/
│ │ ├── api-index.md
│ │ ├── find-my-new-msg-list.md
│ │ └── read-report.md
│ ├── ai-qa/
│ │ ├── api-index.md
│ │ └── ask-sse.md
│ └── plan-create/
│ ├── api-index.md
│ └── create-simple.md
├── examples/
│ ├── user-search/README.md # 含 3S1R 管理闭环
│ ├── employee-service/README.md # 含 3S1R 管理闭环
│ ├── file-service/README.md # 含 3S1R 管理闭环
│ ├── report-write/README.md # 含 3S1R 管理闭环(含写操作确认)
│ ├── inbox/README.md # 含 3S1R 管理闭环
│ ├── outbox/README.md # 含 3S1R 管理闭环
│ ├── report-detail/README.md # 含 3S1R 管理闭环
│ ├── tasks/README.md # 含 3S1R 管理闭环
│ ├── todos/README.md # 含 3S1R 管理闭环(含写操作确认)
│ ├── templates/README.md # 含 3S1R 管理闭环
│ ├── plugin-report/README.md # 含 3S1R 管理闭环
│ ├── report-query/README.md # 含 3S1R 管理闭环
│ ├── report-message/README.md # 含 3S1R 管理闭环(含写操作确认)
│ ├── ai-qa/README.md # 含 3S1R 管理闭环(含 SSE 说明)
│ └── plan-create/README.md # 含 3S1R 管理闭环(含写操作确认)
└── scripts/
├── user-search/
│ ├── search-emp.py
│ └── README.md
├── employee-service/
│ ├── get-by-person-ids.py
│ ├── get-org-info.py
│ └── README.md
├── file-service/
│ ├── get-download-info.py
│ ├── upload-file.py
│ └── README.md
├── report-write/
│ ├── submit.py
│ ├── reply.py
│ └── README.md
├── inbox/
│ ├── get-list.py
│ └── README.md
├── outbox/
│ ├── get-list.py
│ └── README.md
├── report-detail/
│ ├── get-info.py
│ └── README.md
├── tasks/
│ ├── get-page.py
│ ├── get-simple-plan-and-report-info.py
│ └── README.md
├── todos/
│ ├── get-list.py
│ ├── complete.py
│ ├── list-created-feedbacks.py
│ └── README.md
├── templates/
│ ├── get-list.py
│ ├── get-by-ids.py
│ └── README.md
├── plugin-report/
│ ├── get-list.py
│ ├── get-latest-list.py
│ ├── get-unread-list.py
│ └── README.md
├── report-query/
│ ├── get-todo-list.py
│ ├── get-unread-list.py
│ ├── is-report-read.py
│ └── README.md
├── report-message/
│ ├── find-my-new-msg-list.py
│ ├── read-report.py
│ └── README.md
├── ai-qa/
│ ├── ask-sse.py
│ └── README.md
└── plan-create/
├── create-simple.py
└── README.md
| 分类 | 数量 | 说明 |
|---|---|---|
| 业务模块 | 15 | user-search / employee-service / file-service / report-write / inbox / outbox / report-detail / tasks / todos / templates / plugin-report / report-query / report-message / ai-qa / plan-create |
| API 接口文档 | 27 | 对两份主文档去重后形成的 27 个接口能力文档 |
| Python 脚本 | 27 | 与接口 1:1 映射 |
| 示例指引文档 | 15 | examples/<module>/README.md,含 3S1R 标准化流程 |