yuque-cookie-plugin 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,19 +6,19 @@
6
6
 
7
7
  这不是一个 OpenAPI wrapper,而是一个本地 CLI 操作面:AI 可以用它读取、整理、下载、快照、对比、格式化并安全写入语雀文档,尽量接近语雀编辑器原生 Lake 结构。
8
8
 
9
- ## 当前 MVP 能力
10
-
11
- - Cookie 登录和登录态检测:`login`、`auth-status`
12
- - 读取语雀信息:`inspect`
13
- - 文档快照和结构对比:`snapshot`、`diff-lake`
14
- - Lake 和 Markdown 辅助转换:`lake-to-markdown`、`editor-serialize`
15
- - 安全写入:`apply-lake`、`update-lake`
16
- - 创建知识库和文档:`create-book`、`create-doc`
9
+ ## 当前能力
10
+
11
+ - Cookie 登录和登录态检测:`auth login`、`auth status`
12
+ - 读取语雀信息:`book inspect`、`doc inspect`
13
+ - 文档快照和结构对比:`doc snapshot`、`lake diff`
14
+ - Lake 和 Markdown 辅助转换:`lake to-markdown`、`lake serialize`
15
+ - 安全写入:`doc apply-lake`、`doc update-lake`
16
+ - 创建知识库和文档:`book create`、`doc create`
17
17
  - 标题原生编号:`--number-headings`
18
- - 整库/单篇下载:`download-book`、`download-doc`
18
+ - 整库/单篇下载:`book download`、`doc download`
19
19
  - 下载资源清单、warning、retry 报告
20
20
  - 本地 VitePress 预览:`serve-book`
21
- - 上传并插入图片、PDF 附件:`upload-attach`、`insert-image`、`insert-attachment`
21
+ - 上传并插入图片、PDF 附件:`doc upload`、`doc insert-image`、`doc insert-attachment`
22
22
 
23
23
  ## 安装
24
24
 
@@ -28,15 +28,16 @@
28
28
  npm install -g yuque-cookie-plugin
29
29
  ```
30
30
 
31
- 如果 npm 版本还没有发布,也可以临时从 GitHub 安装:
31
+ 当前 npm 最新版本:
32
32
 
33
33
  ```bash
34
- npm install -g https://codeload.github.com/c-sunc6/yuque-cookie-plugin/tar.gz/refs/heads/main
34
+ npm view yuque-cookie-plugin version
35
35
  ```
36
36
 
37
37
  安装后可直接运行:
38
38
 
39
39
  ```bash
40
+ yuque-local --version
40
41
  yuque-local --help
41
42
  yuque-local auth login
42
43
  yuque-local doctor --json
@@ -51,14 +52,12 @@ cd yuque-cookie-plugin
51
52
  npm install
52
53
  ```
53
54
 
54
- 本项目建议作为“项目内本地 CLI”使用:
55
+ 开发者也可以在源码目录中作为“项目内本地 CLI”使用:
55
56
 
56
57
  ```bash
57
58
  npm run yuque-local -- --help
58
59
  ```
59
60
 
60
- MVP 阶段不建议使用 `npm install -g`、`npm link` 或修改全局 npm 配置,避免影响电脑上的其他开发环境。
61
-
62
61
  ## 登录
63
62
 
64
63
  ```bash
@@ -217,12 +216,11 @@ npm test
217
216
  npm run yuque-local -- --help
218
217
  ```
219
218
 
220
- 发布前本地打包验证:
219
+ 发布检查:
221
220
 
222
221
  ```bash
223
- npm pack
224
- npm install -g ./yuque-cookie-plugin-0.1.0.tgz
225
- yuque-local --help
222
+ npm run release:check
223
+ npm run release:smoke
226
224
  ```
227
225
 
228
226
  真实语雀验收不会进入默认 `npm test`。需要手动运行:
package/dist/cli.js CHANGED
@@ -20,6 +20,7 @@ function help() {
20
20
  console.log(`yuque-local
21
21
 
22
22
  Usage:
23
+ yuque-local --version
23
24
  yuque-local auth login [--manual]
24
25
  yuque-local auth status [doc-or-book-url] [--json]
25
26
  yuque-local doctor [--json]
@@ -88,6 +89,7 @@ Options:
88
89
  --force Recreate VitePress config
89
90
  --config-only Generate serve-book VitePress config and exit
90
91
  -h, --help Show help
92
+ -v, --version Show version
91
93
  `);
92
94
  }
93
95
  function parseArgs(argv) {
@@ -162,6 +164,14 @@ function normalizeInvocation(argv) {
162
164
  function toCamel(value) {
163
165
  return value.replace(/-([a-z])/g, (_match, char) => char.toUpperCase());
164
166
  }
167
+ async function readPackageInfo() {
168
+ const packageJsonPath = path.join(PACKAGE_ROOT, 'package.json');
169
+ const packageJson = JSON.parse(await readFile(packageJsonPath, 'utf8'));
170
+ return {
171
+ name: packageJson.name || 'yuque-cookie-plugin',
172
+ version: packageJson.version || '0.0.0'
173
+ };
174
+ }
165
175
  async function createClient(flags) {
166
176
  let credentials;
167
177
  try {
@@ -226,14 +236,13 @@ function printError(error) {
226
236
  console.error(`yuque-local error: ${message}`);
227
237
  }
228
238
  async function commandDoctor(flags) {
229
- const packageJsonPath = path.join(PACKAGE_ROOT, 'package.json');
230
- const packageJson = JSON.parse(await readFile(packageJsonPath, 'utf8'));
239
+ const packageInfo = await readPackageInfo();
231
240
  const status = getCredentialStatus(flags);
232
241
  const skillSource = path.join(PACKAGE_ROOT, 'skills', 'yuque-cookie-plugin');
233
242
  const data = {
234
243
  package: {
235
- name: packageJson.name || 'yuque-cookie-plugin',
236
- version: packageJson.version || '0.0.0',
244
+ name: packageInfo.name,
245
+ version: packageInfo.version,
237
246
  root: PACKAGE_ROOT
238
247
  },
239
248
  runtime: {
@@ -311,6 +320,14 @@ async function main() {
311
320
  help();
312
321
  return;
313
322
  }
323
+ if (command === 'version' || command === '--version' || command === '-v') {
324
+ const packageInfo = await readPackageInfo();
325
+ if (flags.json)
326
+ printJsonResult(jsonResult('success', 'version loaded', packageInfo));
327
+ else
328
+ console.log(`${packageInfo.name}@${packageInfo.version}`);
329
+ return;
330
+ }
314
331
  if (command === 'diff-lake') {
315
332
  const [beforePath, afterPath] = positional;
316
333
  if (!beforePath || !afterPath)
@@ -27,6 +27,16 @@ npm run release:check
27
27
 
28
28
  这个命令会执行类型检查、测试、构建、敏感信息扫描、npm 包名检查、`npm pack` 和临时 prefix 安装验证。
29
29
 
30
+ ## 发布后检查
31
+
32
+ 发布完成后运行:
33
+
34
+ ```bash
35
+ npm run release:smoke
36
+ ```
37
+
38
+ 这个命令会从 npm registry 安装 `yuque-cookie-plugin@latest` 到临时 prefix,并验证 `yuque-local --help` 与 `yuque-local doctor --json`。
39
+
30
40
  确认 tarball 至少包含:
31
41
 
32
42
  - `bin/yuque-local.mjs`
package/docs/usage-zh.md CHANGED
@@ -19,7 +19,15 @@
19
19
 
20
20
  ## 2. 安装和准备
21
21
 
22
- 进入项目目录:
22
+ 普通用户推荐从 npm 安装:
23
+
24
+ ```bash
25
+ npm install -g yuque-cookie-plugin
26
+ yuque-local --version
27
+ yuque-local --help
28
+ ```
29
+
30
+ 开发者进入项目目录:
23
31
 
24
32
  ```bash
25
33
  cd /home/mi/文档/yuque-cookie-plugin
@@ -34,6 +42,7 @@ npm install
34
42
  检查工具是否可运行:
35
43
 
36
44
  ```bash
45
+ npm run yuque-local -- --version
37
46
  npm run yuque-local -- --help
38
47
  ```
39
48
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yuque-cookie-plugin",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "type": "module",
5
5
  "description": "Cookie-based Yuque CLI for AI agents, without MCP or OpenAPI token limits.",
6
6
  "homepage": "https://github.com/c-sunc6/yuque-cookie-plugin#readme",
@@ -48,6 +48,7 @@
48
48
  "yuque-local": "tsx ./src/cli.ts",
49
49
  "real:acceptance": "tsx ./scripts/real-acceptance.ts",
50
50
  "release:check": "tsx ./scripts/prepublish-check.ts",
51
+ "release:smoke": "tsx ./scripts/registry-smoke.ts",
51
52
  "typecheck": "tsc --noEmit",
52
53
  "test": "npm run typecheck && vitest run && npm run yuque-local -- --help",
53
54
  "test:unit": "vitest run",