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 +17 -19
- package/dist/cli.js +21 -4
- package/docs/npm-release.md +10 -0
- package/docs/usage-zh.md +10 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -6,19 +6,19 @@
|
|
|
6
6
|
|
|
7
7
|
这不是一个 OpenAPI wrapper,而是一个本地 CLI 操作面:AI 可以用它读取、整理、下载、快照、对比、格式化并安全写入语雀文档,尽量接近语雀编辑器原生 Lake 结构。
|
|
8
8
|
|
|
9
|
-
##
|
|
10
|
-
|
|
11
|
-
- Cookie 登录和登录态检测:`login`、`auth
|
|
12
|
-
- 读取语雀信息:`inspect`
|
|
13
|
-
- 文档快照和结构对比:`snapshot`、`diff
|
|
14
|
-
- Lake 和 Markdown 辅助转换:`lake
|
|
15
|
-
- 安全写入:`apply-lake`、`update-lake`
|
|
16
|
-
- 创建知识库和文档:`create
|
|
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
|
|
18
|
+
- 整库/单篇下载:`book download`、`doc download`
|
|
19
19
|
- 下载资源清单、warning、retry 报告
|
|
20
20
|
- 本地 VitePress 预览:`serve-book`
|
|
21
|
-
- 上传并插入图片、PDF 附件:`upload
|
|
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
|
-
|
|
31
|
+
当前 npm 最新版本:
|
|
32
32
|
|
|
33
33
|
```bash
|
|
34
|
-
npm
|
|
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
|
-
|
|
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
|
|
224
|
-
npm
|
|
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
|
|
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:
|
|
236
|
-
version:
|
|
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)
|
package/docs/npm-release.md
CHANGED
|
@@ -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.
|
|
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",
|