siluzan-cso-cli 1.1.13-beta.1 → 1.1.15-beta.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 +1 -1
- package/dist/index.js +42 -46
- package/dist/skill/_meta.json +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -54,7 +54,7 @@ siluzan-cso init -d /path/to/skills # 写入自定义目录
|
|
|
54
54
|
siluzan-cso init --force # 强制覆盖已存在文件
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
> **注意**:当前为测试版(1.1.
|
|
57
|
+
> **注意**:当前为测试版(1.1.15-beta.1),供内部测试使用。正式发布后安装命令将改为 `npm install -g siluzan-cso-cli`。
|
|
58
58
|
|
|
59
59
|
| 助手 | 建议 `--ai` |
|
|
60
60
|
| ----------------------- | ------------------------------------ |
|
package/dist/index.js
CHANGED
|
@@ -6465,8 +6465,33 @@ function buildMaterialQueryListParams(belongToId, folderId) {
|
|
|
6465
6465
|
folderId
|
|
6466
6466
|
});
|
|
6467
6467
|
}
|
|
6468
|
+
function mergeFoldersByIdOrder(primary, secondary) {
|
|
6469
|
+
const seen = new Set(primary.map((f) => f.id));
|
|
6470
|
+
const out = [...primary];
|
|
6471
|
+
for (const f of secondary) {
|
|
6472
|
+
if (!seen.has(f.id)) {
|
|
6473
|
+
seen.add(f.id);
|
|
6474
|
+
out.push(f);
|
|
6475
|
+
}
|
|
6476
|
+
}
|
|
6477
|
+
return out;
|
|
6478
|
+
}
|
|
6479
|
+
async function safeQueryMaterialFolderList(csoBaseUrl, config, belongToId, folderId, verbose) {
|
|
6480
|
+
const p = buildMaterialQueryListParams(belongToId, folderId);
|
|
6481
|
+
const url = `${csoBaseUrl}/cutapi/v1/material/querylist?${p.toString()}`;
|
|
6482
|
+
try {
|
|
6483
|
+
const raw = await apiFetch2(url, config, {}, verbose);
|
|
6484
|
+
if (raw.code !== 1) {
|
|
6485
|
+
return { ok: false, reason: raw.message || `\u4E1A\u52A1\u7801 ${raw.code}` };
|
|
6486
|
+
}
|
|
6487
|
+
return { ok: true, folders: raw.data?.folders ?? [] };
|
|
6488
|
+
} catch (e) {
|
|
6489
|
+
return { ok: false, reason: e.message };
|
|
6490
|
+
}
|
|
6491
|
+
}
|
|
6468
6492
|
async function runRagList(options) {
|
|
6469
6493
|
const config = loadConfig(options.token);
|
|
6494
|
+
const verbose = Boolean(options.verbose);
|
|
6470
6495
|
let belongToId = String(options.belongToId ?? "").trim();
|
|
6471
6496
|
if (!belongToId) {
|
|
6472
6497
|
const me = await fetchSiluzanCurrentUser(config.apiBaseUrl, config);
|
|
@@ -6478,57 +6503,28 @@ async function runRagList(options) {
|
|
|
6478
6503
|
);
|
|
6479
6504
|
process.exit(1);
|
|
6480
6505
|
}
|
|
6481
|
-
const
|
|
6482
|
-
|
|
6483
|
-
|
|
6484
|
-
|
|
6485
|
-
raw = await apiFetch2(
|
|
6486
|
-
url,
|
|
6506
|
+
const [rootRes, builtinRes] = await Promise.all([
|
|
6507
|
+
safeQueryMaterialFolderList(config.csoBaseUrl, config, belongToId, RAG_ROOT_FOLDER_ID, verbose),
|
|
6508
|
+
safeQueryMaterialFolderList(
|
|
6509
|
+
config.csoBaseUrl,
|
|
6487
6510
|
config,
|
|
6488
|
-
|
|
6489
|
-
|
|
6490
|
-
|
|
6491
|
-
|
|
6511
|
+
belongToId,
|
|
6512
|
+
RAG_BUILTIN_PARENT_FOLDER_ID,
|
|
6513
|
+
verbose
|
|
6514
|
+
)
|
|
6515
|
+
]);
|
|
6516
|
+
if (!rootRes.ok) {
|
|
6492
6517
|
console.error(`
|
|
6493
|
-
\u274C \
|
|
6494
|
-
if (!
|
|
6518
|
+
\u274C \u83B7\u53D6\u77E5\u8BC6\u5E93\u5217\u8868\u5931\u8D25\uFF08\u6839\u8282\u70B9\uFF09\uFF1A${rootRes.reason}`);
|
|
6519
|
+
if (!verbose) console.error(" \u52A0 --verbose \u53C2\u6570\u53EF\u67E5\u770B\u8BE6\u7EC6\u9519\u8BEF\u4FE1\u606F");
|
|
6495
6520
|
process.exit(1);
|
|
6496
6521
|
}
|
|
6497
|
-
|
|
6522
|
+
let folders = rootRes.folders;
|
|
6523
|
+
if (builtinRes.ok) {
|
|
6524
|
+
folders = mergeFoldersByIdOrder(rootRes.folders, builtinRes.folders);
|
|
6525
|
+
} else if (verbose) {
|
|
6498
6526
|
console.error(`
|
|
6499
|
-
\
|
|
6500
|
-
process.exit(1);
|
|
6501
|
-
}
|
|
6502
|
-
let folders = raw.data?.folders ?? [];
|
|
6503
|
-
try {
|
|
6504
|
-
const pBuiltin = buildMaterialQueryListParams(belongToId, RAG_BUILTIN_PARENT_FOLDER_ID);
|
|
6505
|
-
const urlBuiltin = `${config.csoBaseUrl}/cutapi/v1/material/querylist?${pBuiltin.toString()}`;
|
|
6506
|
-
const rawBuiltin = await apiFetch2(
|
|
6507
|
-
urlBuiltin,
|
|
6508
|
-
config,
|
|
6509
|
-
{},
|
|
6510
|
-
Boolean(options.verbose)
|
|
6511
|
-
);
|
|
6512
|
-
if (rawBuiltin.code === 1) {
|
|
6513
|
-
const extra = rawBuiltin.data?.folders ?? [];
|
|
6514
|
-
const seen = new Set(folders.map((f) => f.id));
|
|
6515
|
-
for (const f of extra) {
|
|
6516
|
-
if (!seen.has(f.id)) {
|
|
6517
|
-
seen.add(f.id);
|
|
6518
|
-
folders.push(f);
|
|
6519
|
-
}
|
|
6520
|
-
}
|
|
6521
|
-
} else if (options.verbose) {
|
|
6522
|
-
console.error(
|
|
6523
|
-
`
|
|
6524
|
-
\u26A0\uFE0F \u5185\u7F6E\u77E5\u8BC6\u5E93\u5B50\u5217\u8868\u5931\u8D25\uFF1A${rawBuiltin.message || `\u4E1A\u52A1\u7801 ${rawBuiltin.code}`}\uFF08\u5DF2\u8DF3\u8FC7\u5408\u5E76\uFF09`
|
|
6525
|
-
);
|
|
6526
|
-
}
|
|
6527
|
-
} catch (e) {
|
|
6528
|
-
if (options.verbose) {
|
|
6529
|
-
console.error(`
|
|
6530
|
-
\u26A0\uFE0F \u5185\u7F6E\u77E5\u8BC6\u5E93\u5B50\u5217\u8868\u8BF7\u6C42\u5F02\u5E38\uFF1A${e.message}\uFF08\u5DF2\u8DF3\u8FC7\u5408\u5E76\uFF09`);
|
|
6531
|
-
}
|
|
6527
|
+
\u26A0\uFE0F \u83B7\u53D6\u77E5\u8BC6\u5E93\u5217\u8868\u5931\u8D25\uFF08\u5185\u7F6E\u7236\u7EA7\uFF09\uFF1A${builtinRes.reason}\uFF08\u5DF2\u4EC5\u7528\u6839\u8282\u70B9\u6570\u636E\u5408\u5E76\u5C55\u793A\uFF09`);
|
|
6532
6528
|
}
|
|
6533
6529
|
if (options.ragOnly) {
|
|
6534
6530
|
folders = folders.filter((f) => f.ragStatus === true);
|
package/dist/skill/_meta.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"slug": "siluzan-cso",
|
|
3
|
-
"version": "1.1.
|
|
4
|
-
"publishedAt":
|
|
3
|
+
"version": "1.1.15-beta.1",
|
|
4
|
+
"publishedAt": 1777536513794,
|
|
5
5
|
"homepage": "https://www.siluzan.com",
|
|
6
6
|
"source": "https://dev.azure.com/jack4it/Sammamish/_git/siluzan-skill",
|
|
7
7
|
"requiredBinaries": [
|
package/package.json
CHANGED