chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
# 文档中心
|
||||
|
||||
本目录是 `wecom-cli` 的长期维护文档集,用来承载安装、使用约定、Skills 导航和开发说明。根 `README.md` 保持为项目首页,不再承担所有细节参考。
|
||||
|
||||
## 从这里开始
|
||||
|
||||
- 查看 CLI 使用方法、运行时路径和环境变量:[`docs/cli-reference.md`](cli-reference.md)
|
||||
- 查看内置 Skills 的分工和入口:[`docs/skills.md`](skills.md)
|
||||
- 本地开发、调试和仓库结构:[`docs/development.md`](development.md)
|
||||
|
||||
## 维护约定
|
||||
|
||||
- 优先把持续维护的说明写进 `docs/`。
|
||||
- 同一主题只保留一个主入口,其他页面通过链接复用。
|
||||
@@ -0,0 +1,85 @@
|
||||
## 使用说明
|
||||
|
||||
### 配置凭证 `init`
|
||||
|
||||
交互式配置企业微信机器人凭证,加密存储到本地。仅需执行一次。
|
||||
- 若选择手动配置 Bot ID 和 Secret,获取方式[参考](https://open.work.weixin.qq.com/help2/pc/cat?doc_id=21677)
|
||||
- 若选择扫码接入,需使用企业微信扫码创建绑定
|
||||
|
||||
```bash
|
||||
wecom-cli init
|
||||
```
|
||||
|
||||
### 查看帮助 `--help`
|
||||
支持获取各级命令的使用方式
|
||||
|
||||
```bash
|
||||
# 列出所有支持的命令和品类
|
||||
wecom-cli --help
|
||||
|
||||
# 列出指定品类下的所有工具
|
||||
wecom-cli <category> --help
|
||||
|
||||
# 列出指定工具的所需要的输入
|
||||
wecom-cli <category> <method> --help
|
||||
```
|
||||
|
||||
说明:
|
||||
- 分类工具列表和工具 schema 都需要动态获取,因此“查看帮助”需要凭证与网络。
|
||||
|
||||
### 调用工具
|
||||
|
||||
通用格式:
|
||||
|
||||
```bash
|
||||
wecom-cli <category> <method> [json_args]
|
||||
```
|
||||
其中 `category` 为业务品类标识,支持以下值:
|
||||
|
||||
| category | 品类 |
|
||||
| ---------- | ------------- |
|
||||
| `contact` | 通讯录 |
|
||||
| `doc` | 文档/智能表格 |
|
||||
| `meeting` | 会议 |
|
||||
| `msg` | 消息 |
|
||||
| `schedule` | 日程 |
|
||||
| `todo` | 待办 |
|
||||
|
||||
工具调用行为:
|
||||
- `wecom-cli <category>` 获取该品类下的支持调用工具
|
||||
- `wecom-cli <category> <method> --help` 获取该指定工具的参数定义
|
||||
- `wecom-cli <category> <method>` 执行调用工具并指定参数为'{}'
|
||||
- `wecom-cli <category> <method> 'json_args'` 执行该工具调用
|
||||
|
||||
示例:
|
||||
```bash
|
||||
## 调用工具 — 获取通讯录可见范围内的成员列表
|
||||
wecom-cli contact get_userlist '{}'
|
||||
|
||||
## 调用工具 — 创建文档
|
||||
wecom-cli doc create_doc '{"doc_type": 3, "doc_name": "项目周报"}'
|
||||
```
|
||||
|
||||
补充说明:
|
||||
- 工具调用默认超时为 30 秒;`get_msg_media` 超时为 120 秒。
|
||||
- `get_msg_media`会把媒体文件下载到本地临时目录,返回结果字段`local_path`为文件保存的路径 。
|
||||
|
||||
|
||||
## 运行时路径
|
||||
|
||||
| 项目 | 默认位置 | 备注 |
|
||||
| --- | --- | --- |
|
||||
| 配置目录 | `~/.config/wecom` | 可由 `WECOM_CLI_CONFIG_DIR` 覆盖 |
|
||||
| 机器人凭证 | `<config_dir>/bot.enc` | 配置凭证时创建 |
|
||||
| MCP 配置缓存 | `<config_dir>/mcp_config.enc` | 配置凭证后更新 |
|
||||
| 媒体临时目录 | `<system_tmp>/wecom/media` | 可由 `WECOM_CLI_TMP_DIR` 覆盖根目录 |
|
||||
|
||||
## 环境变量
|
||||
|
||||
| 变量 | 作用 |
|
||||
| --- | --- |
|
||||
| `WECOM_CLI_CONFIG_DIR` | 覆盖默认配置目录 |
|
||||
| `WECOM_CLI_TMP_DIR` | 覆盖媒体临时目录的根目录 |
|
||||
| `WECOM_CLI_LOG_LEVEL` | 打开 stderr 日志并设置过滤级别 |
|
||||
| `WECOM_CLI_LOG_FILE` | 打开 JSON 日志输出,按天写入 `ww.log` |
|
||||
| `WECOM_CLI_MCP_CONFIG_ENDPOINT` | 覆盖默认 MCP 配置接口地址 |
|
||||
@@ -0,0 +1,24 @@
|
||||
# 开发说明
|
||||
|
||||
这页面向仓库维护者和贡献者,记录源码结构、常用本地命令和打包边界。
|
||||
|
||||
## 仓库结构
|
||||
|
||||
| 路径 | 说明 |
|
||||
| --- | --- |
|
||||
| `src/` | Rust CLI 主实现,包括命令解析、认证、JSON-RPC、日志和媒体处理 |
|
||||
| `bin/wecom.js` | npm 入口脚本,负责定位并执行当前平台的二进制 |
|
||||
| `packages/*` | 各平台的 npm 二进制包 |
|
||||
| `skills/*` | Agent Skills 及其补充参考资料 |
|
||||
| `docs/` | 持续维护的使用与开发文档 |
|
||||
| `README.md` | 项目首页 |
|
||||
|
||||
## 本地开发
|
||||
|
||||
仓库的 Rust crate 使用 `edition = "2024"`,开发时建议使用较新的 stable Rust 工具链。
|
||||
|
||||
说明:
|
||||
|
||||
- 根包名为 `@wecom/cli`,实际可执行入口是 `bin/wecom.js`。
|
||||
- 平台二进制通过 `optionalDependencies` 分发,位于 `packages/*`。
|
||||
- `pnpm-workspace.yaml` 当前只管理 `packages/*` 工作区。
|
||||
@@ -0,0 +1,16 @@
|
||||
# Skills 导航
|
||||
|
||||
仓库当前内置 Agent Skills,位于 `skills/` 目录下。这里负责给出分类和入口;每个 Skill 的具体工作流、参数示例和补充参考仍以各自的 `SKILL.md` 为准。
|
||||
|
||||
## Agent Skills
|
||||
|
||||
内置 Agent Skills 列表,可被 AI 工具直接调用:
|
||||
|
||||
| Skill | 品类 | 说明 |
|
||||
| ----- | ---- | ---- |
|
||||
| `wecomcli-contact` | contact | 查询通讯录成员 |
|
||||
| `wecomcli-todo` | todo | 待办列表查询、查询待办详情、创建待办、更新待办、删除待办、变更待办状态 |
|
||||
| `wecomcli-meeting` | meeting | 创建预约会议、取消会议、更新参会成员、查询会议列表和详情 |
|
||||
| `wecomcli-msg` | msg | 查询会话列表、查询会话的消息记录、下载会话中的媒体文件、发送文本消息 |
|
||||
| `wecomcli-schedule` | schedule | 查询日程列表、查询日程详情、取消日程、管理日程参与人、查询用户日程闲忙状态 |
|
||||
| `wecomcli-doc` | doc | 创建文档、覆盖写文档、读取文档内容、管理智能表格子表与字段、增删改查智能表行记录 |
|
||||
Reference in New Issue
Block a user