针对语雀的命令行客户端:cookie 认证,驱动内部 web 接口,提供文档与评论的 CRUD
Project description
yuque-cli
语雀通用命令行客户端,以浏览器 cookie 认证,驱动语雀内部 web 接口,提供文档与评论的增删改查。
术语(知识库/文档/评论/space/namespace/slug)见 CONTEXT.md;关键设计取舍见 docs/adr。
安装
需要 Python ≥ 3.10 与 uv。
uv sync # 安装依赖
uv run yuque --help # 项目内运行
uv tool install . # 全局安装
快速开始
yuque auth login # 登录(自动 CDP 抓取 cookie,失败回退手动粘贴)
yuque auth status # 查看当前身份
yuque repo list # 列出我的知识库
yuque doc list <space>/<repo> # 列出知识库下的文档
yuque doc get <space>/<repo>/<slug> # 取文档正文(Markdown)
地址可用完整浏览器 URL 或去掉 host 的路径形态,二者等价。
认证
yuque auth login 默认从 Chrome 远程调试端口(9222)自动抓取 cookie。前提是 Chrome 以此端口启动:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --remote-debugging-port=9222
未检测到远程调试时,提示手动粘贴 cookie。也可 yuque auth login --manual 跳过 CDP。
会话保存在 ~/.config/yuque-cli/session.json(权限 0600),yuque auth logout 清除。
全局选项
置于子命令之前:yuque --json repo list。
| 选项 | 说明 |
|---|---|
--json |
输出原始 JSON |
-y, --yes |
跳过确认 |
-v, --verbose |
打印 HTTP 请求到 stderr |
-V, --version |
显示版本 |
命令
auth
| 命令 | 说明 |
|---|---|
auth login [--manual] |
登录 |
auth status |
显示当前身份 |
auth logout |
清除会话 |
repo
| 命令 | 说明 |
|---|---|
repo list |
列出我的知识库 |
doc
| 命令 | 说明 |
|---|---|
doc list <space>/<repo> |
列出文档 |
doc get <space>/<repo>/<slug> |
取正文(默认 Markdown,--json 出详情) |
doc create <space>/<repo> -t <标题> [选项] |
创建文档 |
doc update <space>/<repo>/<slug> [选项] |
更新文档(先取后合并,未给的字段保持原值) |
doc delete <space>/<repo>/<slug> |
删除文档(软删,可回收站恢复) |
doc create 选项:-t/--title(必填)、--slug、--public/--private、-b/--body、-F/--file。
doc update 选项:-t/--title、--public/--private、-b/--body、-F/--file;至少给其一。
yuque doc create team/handbook -t "上手指南" --body "# 标题\n正文"
yuque doc create team/handbook -t "周报" -F report.md --private
yuque doc update team/handbook/getting-started -t "新标题"
yuque -y doc delete team/handbook/old-draft
comment
| 命令 | 说明 |
|---|---|
comment list <space>/<repo>/<slug> |
列出评论 |
comment add <space>/<repo>/<slug> [-b/--body | -F/--file] |
添加评论 |
comment delete <comment_id> |
删除评论 |
正文输入
doc create / comment add 正文来源(--body 与 --file 互斥):
-b/--body内联字符串-F/--file从文件读(-F -读 stdin)- 管道 stdin
echo "# 正文" | yuque doc create team/handbook -t "标题"
doc update 只有显式给 -b/-F 才会改正文,裸管道不生效。
环境变量
| 变量 | 作用 | 默认 |
|---|---|---|
YUQUE_HOST |
目标语雀 host | www.yuque.com |
YUQUE_CONFIG_DIR |
配置目录 | ~/.config/yuque-cli |
NO_COLOR |
禁用彩色输出 | — |
开发
mise run deps # uv sync
mise run test # pytest
mise run lint # ruff check && ruff format
mise run check # pyright
mise run cli -- --help
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yuque_cli-0.2.0.tar.gz.
File metadata
- Download URL: yuque_cli-0.2.0.tar.gz
- Upload date:
- Size: 45.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
145747982199754a3f5a7c16e2cea384d3c3731dfa62114dbee53fde5cf1b0ad
|
|
| MD5 |
e37cc308ccb224d2ac831d18caca8090
|
|
| BLAKE2b-256 |
2f5bdd796c7cb8f45606ba1a588e090c3019da90f449d39f6fcda0390e9b9538
|
File details
Details for the file yuque_cli-0.2.0-py3-none-any.whl.
File metadata
- Download URL: yuque_cli-0.2.0-py3-none-any.whl
- Upload date:
- Size: 21.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae396a1fa9507e99a17d3c6f2801666c4be68a521a91606afdc6bbdf1d3ffa87
|
|
| MD5 |
daa175c14f9c49926282d2bdd57cf398
|
|
| BLAKE2b-256 |
0046da70b288d5e5d85de6b61cfc7188e91e27992dd39e89cae5f99791fcebf4
|