@numa-tech/numa 1.26.3 → 1.26.5

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.
@@ -0,0 +1,98 @@
1
+ import { skillDependencyConflictReasons } from "./dependency-conflicts.js";
2
+ import { safeTerminal } from "../interactive/prompts.js";
3
+ export function skillUpdateStatusLabel(status) {
4
+ return { UPDATED: "已更新", CURRENT: "无需更新", NEEDS_CONFIRMATION: "待确认依赖", PLANNED: "仅预览", FAILED: "失败" }[status];
5
+ }
6
+ export function skillUpdateSummary(items) {
7
+ const count = (status) => items.filter(item => item.status === status).length;
8
+ return `已更新 ${count("UPDATED")} · 无需更新 ${count("CURRENT")} · 待确认 ${count("NEEDS_CONFIRMATION")} · 失败 ${count("FAILED")}${count("PLANNED") ? ` · 仅预览 ${count("PLANNED")}` : ""}`;
9
+ }
10
+ const reasons = {
11
+ skills_dependency_confirmation_required: "新版依赖声明有变更,需确认依赖计划;本次未更新。",
12
+ skills_dependency_adoption_required: "发现内容已核验但未登记的旧依赖;需确认接管后继续更新。",
13
+ skills_dependency_unpublished: "计划要求的依赖精确版本尚未发布,请核对仓库中的依赖版本。",
14
+ skills_dependency_integrity_failed: "依赖下载版本或摘要校验未通过,安装已保留。",
15
+ skills_dependency_version_conflict: "其他已安装 Skill 固定了旧依赖版本,需协调依赖版本后再更新。",
16
+ skills_dependency_local_conflict: "依赖缺失或本地内容已变更,需先核对依赖安装。",
17
+ skills_update_local_conflict: "本地文件已修改,已保留修改;请先核对本地内容。",
18
+ skills_update_downgrade_blocked: "latest 低于已安装版本,已阻止降级。",
19
+ skills_update_unpublished: "未找到可用的已发布 latest 版本。",
20
+ skills_update_source_changed: "登记的来源绑定已变化,请核对 namespace 和实例。",
21
+ skills_update_integrity_failed: "下载版本或摘要校验未通过,请核对仓库后重试。",
22
+ skills_update_timeout: "检查或下载超时,请稍后重试。",
23
+ skills_update_local_or_network_unavailable: "无法读取本地安装或访问仓库,请检查连接、登录状态及目录后重试。",
24
+ skills_update_restore_failed: "更新中断且部分目录无法恢复;请保留备份,使用 --json 查看 recovery 路径。",
25
+ skills_update_inventory_changed: "安装记录在更新期间发生变化,请重新执行更新。",
26
+ };
27
+ function dependencyConflict(item) {
28
+ const value = item.details?.conflict;
29
+ return value && typeof value.name === "string" && typeof value.path === "string" && typeof value.reason === "string"
30
+ ? { name: value.name, path: value.path, reason: value.reason,
31
+ installedVersion: typeof value.installedVersion === "string" ? value.installedVersion : undefined,
32
+ requiredVersion: typeof value.requiredVersion === "string" ? value.requiredVersion : undefined } : undefined;
33
+ }
34
+ /** One final report; paths and diagnostic codes are kept out of successful no-op rows. */
35
+ export function formatSkillUpdateReport(items, options = {}) {
36
+ if (!items.length)
37
+ return "当前身份没有已登记的用户级 Skill 安装;可用 skills updates status 查看,旧安装用 skills updates adopt 接管。\n";
38
+ const lines = ["Skills 更新结果", skillUpdateSummary(items), ""];
39
+ const rows = items.map(item => [item.name, item.agent, item.previousVersion, item.latestVersion ?? "未获取", skillUpdateStatusLabel(item.status)].map(safeTerminal));
40
+ const header = ["Skill", "客户端", "更新前", "latest", "结果"];
41
+ // Skill names, adapter names and SemVer are ASCII; only the fixed Chinese labels are wide.
42
+ const width = (value) => [...value].reduce((sum, ch) => sum + (ch.charCodeAt(0) > 255 ? 2 : 1), 0);
43
+ const widths = header.map((cell, index) => Math.max(width(cell), ...rows.map(row => width(row[index]))));
44
+ if (widths.reduce((sum, size) => sum + size, 0) + 8 <= (options.columns ?? 100)) {
45
+ const row = (cells) => cells.map((cell, index) => cell + " ".repeat(index === cells.length - 1 ? 0 : widths[index] - width(cell))).join(" ");
46
+ lines.push(row(header), ...rows.map(row));
47
+ }
48
+ else {
49
+ for (const row of rows)
50
+ lines.push(`${row[0]} (${row[1]}) · ${row[4]}`, ` 更新前 ${row[2]} · latest ${row[3]}`);
51
+ }
52
+ for (const item of items.filter(item => item.status === "NEEDS_CONFIRMATION" || item.status === "FAILED")) {
53
+ const conflict = dependencyConflict(item);
54
+ lines.push("", safeTerminal(`${item.name} (${item.agent}) · ${skillUpdateStatusLabel(item.status)}`), ` ${conflict ? skillDependencyConflictReasons[conflict.reason] ?? reasons[item.code] ?? "依赖核验未通过;使用 --json 查看详情。" : reasons[item.code] ?? "更新未完成;使用 --json 查看错误详情。"}`);
55
+ if (conflict) {
56
+ lines.push(safeTerminal(` 冲突 Skill:${conflict.name}${conflict.installedVersion ? ` · 现有 ${conflict.installedVersion}` : ""}${conflict.requiredVersion ? ` · 要求 ${conflict.requiredVersion}` : ""}`), safeTerminal(` 目录:${conflict.path}`));
57
+ }
58
+ for (const change of item.dependencyChanges ?? []) {
59
+ const detail = !change.from ? `新增 ${change.name}@${change.to}` : !change.to ? `移除 ${change.name}@${change.from}`
60
+ : `${change.name}: ${change.from} → ${change.to}`;
61
+ lines.push(` 依赖:${safeTerminal(detail)}`);
62
+ }
63
+ if (item.planCommand) {
64
+ lines.push(" 查看计划(只读):", ` ${safeTerminal(item.planCommand)}`);
65
+ if (item.status === "NEEDS_CONFIRMATION")
66
+ lines.push(" 确认后执行(终端直接重试会询问):", ` ${safeTerminal(item.planCommand.replace(/ --plan$/, ` --with-dependencies${item.plan?.packages.some(p => p.adopt) ? " --adopt-dependencies" : ""}`))}`);
67
+ }
68
+ if (options.debug)
69
+ lines.push(` 错误码:${safeTerminal(item.code)}`, ` 路径:${safeTerminal(item.path)}`);
70
+ }
71
+ for (const item of items) {
72
+ if (item.plan && (item.status === "PLANNED" || item.status === "NEEDS_CONFIRMATION"))
73
+ lines.push("", formatSkillUpdatePlan(item.plan).trimEnd());
74
+ if (item.plan && item.status === "UPDATED") {
75
+ const changedDependencies = item.plan.packages.filter(p => p.name !== item.name && (p.action !== "REUSE" || p.adopt));
76
+ if (changedDependencies.length)
77
+ lines.push("", safeTerminal(`${item.name} (${item.agent}) · 依赖结果`));
78
+ for (const p of changedDependencies) {
79
+ lines.push(` 依赖${p.adopt ? p.action === "REUSE" ? "已接管" : "已接管并更新" : p.action === "INSTALL" ? "已安装" : "已更新"}:${safeTerminal(p.name)} ${p.from ?? "未安装"} → ${p.version}`);
80
+ if (p.backupPath)
81
+ lines.push(` 备份:${safeTerminal(p.backupPath)}`);
82
+ }
83
+ }
84
+ }
85
+ const backups = items.filter(item => item.status === "UPDATED" && item.backupPath);
86
+ if (backups.length)
87
+ lines.push("", "旧版本备份:", ...backups.map(item => ` ${safeTerminal(item.name)} (${safeTerminal(item.agent)}) ${safeTerminal(item.backupPath)}`));
88
+ if (items.some(item => item.status === "UPDATED"))
89
+ lines.push("", "请刷新宿主 Skill 列表或新建会话以加载更新。");
90
+ return lines.join("\n") + "\n";
91
+ }
92
+ export function formatSkillUpdatePlan(plan) {
93
+ const labels = { INSTALL: "安装", UPDATE: "升级", REUSE: "复用" };
94
+ return [safeTerminal(`依赖更新计划 · ${plan.name} (${plan.agent}) · ${plan.namespace} / ${plan.instance}`),
95
+ ...plan.packages.flatMap(p => [safeTerminal(` ${p.adopt ? p.action === "REUSE" ? "接管并复用" : "接管并升级" : labels[p.action]} ${p.name} ${p.from ?? "未安装"} → ${p.version}`),
96
+ safeTerminal(` ${p.path}`), ...(p.adopt ? [" 未登记的旧安装;内容已与同来源发布的旧版本核验一致"] : [])]), ""].join("\n");
97
+ }
98
+ //# sourceMappingURL=update-report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-report.js","sourceRoot":"","sources":["../../src/ai-registry/update-report.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
+ import { type SkillUpdatePlan } from "./update-plan.js";
1
2
  import { z } from "zod";
2
3
  import { type MaintenanceTask } from "../maintenance/scheduler.js";
3
4
  import type { AiRegistryClient } from "./client.js";
5
+ import { type SkillDependencyChange } from "./skill-dependencies.js";
4
6
  declare const RecordSchema: z.ZodObject<{
5
7
  id: z.ZodString;
6
8
  identity: z.ZodString;
@@ -139,9 +141,14 @@ export interface SkillUpdateInstallationResult {
139
141
  instance: string;
140
142
  previousVersion: string;
141
143
  version: string;
142
- status: "UPDATED" | "CURRENT" | "FAILED";
144
+ latestVersion?: string;
145
+ status: "UPDATED" | "CURRENT" | "NEEDS_CONFIRMATION" | "PLANNED" | "FAILED";
143
146
  code: string;
144
147
  backupPath?: string;
148
+ dependencyChanges?: SkillDependencyChange[];
149
+ planCommand?: string;
150
+ plan?: SkillUpdatePlan;
151
+ details?: unknown;
145
152
  }
146
153
  export type SkillUpdateStage = "waiting" | "checking-local" | "checking-latest" | "downloading" | "verifying" | "extracting" | "backing-up" | "replacing" | "recording";
147
154
  export type SkillUpdateProgress = {
@@ -157,6 +164,10 @@ export type SkillUpdateProgress = {
157
164
  installation: SkillUpdateInstallationResult;
158
165
  };
159
166
  export interface SkillUpdateRunOptions {
167
+ plan?: boolean;
168
+ withDependencies?: boolean;
169
+ adoptDependencies?: boolean;
170
+ confirmDependencies?: (plan: SkillUpdatePlan) => Promise<boolean>;
160
171
  onProgress?: (event: SkillUpdateProgress) => void;
161
172
  signal?: AbortSignal;
162
173
  }
@@ -1,3 +1,4 @@
1
+ import { prepareSkillUpdate, applySkillUpdate } from "./update-plan.js";
1
2
  import { createHash } from "node:crypto";
2
3
  import { mkdtemp, rm } from "node:fs/promises";
3
4
  import { tmpdir } from "node:os";
@@ -10,7 +11,7 @@ import { AiRegistryError } from "./errors.js";
10
11
  import { resolveRegistryNamespace } from "./namespace.js";
11
12
  import { installSkillArchive, skillDirectoryDigest } from "./skill-installer.js";
12
13
  import { readRegistryLock, readRegistryManifest } from "./workspace.js";
13
- import { assertConsumersCompatible, assertInstalledDependencies, assertUnchangedDependencies } from "./skill-dependencies.js";
14
+ import { assertConsumersCompatible, assertInstalledDependencies, assertUnchangedDependencies, SkillDependencyChangeSchema } from "./skill-dependencies.js";
14
15
  const RecordSchema = z.object({
15
16
  id: z.string(), identity: z.string(), name: z.string(), namespace: z.string(), instance: z.string(),
16
17
  namespaceId: z.number(), instanceId: z.number(),
@@ -133,7 +134,8 @@ export async function updateInstalledSkills(identity, clientFor, selection = {},
133
134
  if (!selected.length && Object.values(selection).some(Boolean)) {
134
135
  throw new AiRegistryError("No matching managed user Skill installation for the current identity. Run skills updates status; adopt legacy installations with skills updates adopt --workspace PATH. Use registry upgrade for project Skills.", "skills_update_not_installed");
135
136
  }
136
- const tasks = await buildSkillUpdateTasks(identity, clientFor, directory, new Set(selected.map(item => item.id)), options);
137
+ const inspections = new Map();
138
+ const tasks = await buildSkillUpdateTasks(identity, clientFor, directory, new Set(selected.map(item => item.id)), options, inspections);
137
139
  reportProgress(options, { type: "start", total: tasks.length });
138
140
  const installations = [];
139
141
  for (const task of tasks) {
@@ -141,21 +143,84 @@ export async function updateInstalledSkills(identity, clientFor, selection = {},
141
143
  const original = selected.find(item => task.id === `skills.update.${item.id.slice(0, 16)}`);
142
144
  reportProgress(options, { type: "stage", installation: original, stage: "waiting" });
143
145
  // Give every selected installation its own budget and retain the automatic updater's process lock.
144
- const [outcome] = await runMaintenance([task], { directory, force: true, budgetMs: 60_000 });
146
+ const [outcome] = options.plan ? [] : await runMaintenance([task], { directory, force: true, budgetMs: 60_000 });
145
147
  const current = (await readSkillUpdates(directory)).installations.find(item => item.id === original.id);
146
148
  const code = outcome?.result.code ?? "skills_update_not_checked";
149
+ const inspection = inspections.get(original.id);
147
150
  const installation = { id: original.id, name: original.name, agent: original.agent, path: original.path,
148
151
  namespace: original.namespace, instance: original.instance, previousVersion: original.version,
149
152
  version: current?.version ?? original.version,
150
- status: code === "skills_updated_reload_agent" ? "UPDATED" : code === "skills_update_current" ? "CURRENT" : "FAILED",
153
+ ...inspection,
154
+ status: code === "skills_updated_reload_agent" ? "UPDATED" : code === "skills_update_current" ? "CURRENT"
155
+ : code === "skills_dependency_confirmation_required" ? "NEEDS_CONFIRMATION" : "FAILED",
156
+ ...(code.startsWith("skills_dependency_") && inspection?.latestVersion
157
+ ? { planCommand: skillUpdatePlanCommand(original) } : {}),
151
158
  code, ...(code === "skills_updated_reload_agent" ? { backupPath: current?.backupPath } : {}) };
159
+ if (options.plan || (["skills_dependency_confirmation_required", "skills_dependency_local_conflict"].includes(code)
160
+ && (options.withDependencies || options.confirmDependencies))) {
161
+ try {
162
+ const signal = AbortSignal.any([AbortSignal.timeout(60_000), ...(options.signal ? [options.signal] : [])]);
163
+ reportProgress(options, { type: "stage", installation: original, stage: "verifying" });
164
+ const prepared = await prepareSkillUpdate(current ?? original, clientFor(signal), directory);
165
+ signal.throwIfAborted();
166
+ installation.plan = prepared.plan;
167
+ installation.latestVersion = prepared.plan.packages.find(p => p.name === original.name).version;
168
+ if (options.plan) {
169
+ installation.status = "PLANNED";
170
+ installation.code = "skills_update_planned";
171
+ }
172
+ else if (options.withDependencies && (!prepared.plan.packages.some(p => p.adopt) || options.adoptDependencies)
173
+ || await options.confirmDependencies?.(prepared.plan)) {
174
+ options.signal?.throwIfAborted();
175
+ await applySkillUpdate(prepared, current ?? original, directory, options);
176
+ const saved = (await readSkillUpdates(directory)).installations.find(r => r.id === original.id);
177
+ installation.version = saved.version;
178
+ installation.backupPath = saved.backupPath;
179
+ installation.status = "UPDATED";
180
+ installation.code = "skills_updated_reload_agent";
181
+ }
182
+ else {
183
+ installation.status = "NEEDS_CONFIRMATION";
184
+ installation.code = prepared.plan.packages.some(p => p.adopt) ? "skills_dependency_adoption_required" : "skills_dependency_confirmation_required";
185
+ }
186
+ }
187
+ catch (error) {
188
+ installation.status = "FAILED";
189
+ installation.code = error instanceof AiRegistryError ? error.code : "skills_update_local_or_network_unavailable";
190
+ if (error instanceof AiRegistryError) {
191
+ installation.details = error.details;
192
+ const details = error.details;
193
+ if (typeof details?.latestVersion === "string")
194
+ installation.latestVersion = details.latestVersion;
195
+ }
196
+ }
197
+ }
152
198
  installations.push(installation);
153
199
  reportProgress(options, { type: "result", installation });
154
200
  }
201
+ // A dependency can also be an explicitly selected installation. Report the final graph result,
202
+ // including dependencies whose earlier independent update was blocked by the old consumer pin.
203
+ const applied = new Map(installations.filter(i => i.status === "UPDATED").flatMap(i => (i.plan?.packages ?? []).filter(p => p.action !== "REUSE").map(p => [p.path, p])));
204
+ for (const item of installations) {
205
+ const p = applied.get(item.path);
206
+ if (p && p.version !== item.previousVersion) {
207
+ item.version = p.version;
208
+ if (p.version === item.latestVersion) {
209
+ item.status = "UPDATED";
210
+ item.code = "skills_updated_reload_agent";
211
+ }
212
+ item.backupPath = p.backupPath;
213
+ }
214
+ }
155
215
  options.signal?.throwIfAborted();
156
- return { ok: installations.every(item => item.status !== "FAILED"), installations };
216
+ return { ok: installations.every(item => item.status === "UPDATED" || item.status === "CURRENT" || item.status === "PLANNED"), installations };
217
+ }
218
+ function skillUpdatePlanCommand(record) {
219
+ const quote = (value) => /^[a-zA-Z0-9_./:@-]+$/.test(value) ? value : `'${value.replace(/'/g, "'\\''")}'`;
220
+ return ["numa", "skills", "update", record.name, "--namespace", record.namespace, "--instance", record.instance,
221
+ "--agent", record.agent, "--installation-id", record.id, "--plan"].map(quote).join(" ");
157
222
  }
158
- async function buildSkillUpdateTasks(identity, clientFor, directory, explicitIds, options = {}) {
223
+ async function buildSkillUpdateTasks(identity, clientFor, directory, explicitIds, options = {}, inspections) {
159
224
  const eligible = (item, all) => item.identity === identity
160
225
  && (explicitIds ? item.scope === "user" && explicitIds.has(item.id) : tracksLatest(item, all));
161
226
  const state = await readSkillUpdates(directory);
@@ -183,6 +248,11 @@ async function buildSkillUpdateTasks(identity, clientFor, directory, explicitIds
183
248
  ? error.code : "skills_update_local_or_network_unavailable";
184
249
  if (!/^[a-zA-Z0-9_.:-]{1,120}$/.test(code))
185
250
  code = "skills_update_failed";
251
+ if (code === "skills_dependency_confirmation_required" && error instanceof AiRegistryError) {
252
+ const details = z.object({ dependencyChanges: z.array(SkillDependencyChangeSchema) }).safeParse(error.details);
253
+ if (details.success)
254
+ inspections?.set(item.id, { ...inspections.get(item.id), dependencyChanges: details.data.dependencyChanges });
255
+ }
186
256
  };
187
257
  // Network work holds no global inventory lock: disabling tracking must remain responsive.
188
258
  try {
@@ -200,6 +270,7 @@ async function buildSkillUpdateTasks(identity, clientFor, directory, explicitIds
200
270
  throw new AiRegistryError("Namespace binding changed.", "skills_update_source_changed");
201
271
  }
202
272
  const version = publishedLatest(await client.getSkill(original.namespaceId, original.name), original.name);
273
+ inspections?.set(item.id, { latestVersion: version });
203
274
  if (version !== original.version) {
204
275
  if (!newerVersion(version, original.version))
205
276
  throw new AiRegistryError("Latest moved backwards; explicit install required.", "skills_update_downgrade_blocked");
@@ -1 +1 @@
1
- {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/ai-registry/updates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/ai-registry/updates.ts"],"names":[],"mappings":"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"}
@@ -27,10 +27,16 @@ numa skills install numa-wecom --version 1.1.0 --agent workbuddy --scope user --
27
27
  存在依赖时,交互终端可询问“是否现在安装”,默认否;JSON/非交互模式返回
28
28
  `skills_dependency_confirmation_required` 和计划,不弹框、不静默安装。
29
29
  `--with-dependencies` 只表达对依赖安装的同意,不允许覆盖冲突依赖。
30
- 已安装依赖只有登记来源、精确版本和本地内容一致才复用;手工复制/修改的依赖需先核对。
30
+ 已登记依赖按来源、精确版本和本地内容核验后复用或按已确认计划升级。
31
+ 未登记的旧依赖按 `numa-skill.json` 找到同来源发布的旧版本,只有完整目录内容一致才允许
32
+ 接管;安装向导和 `skills update` 均展示“接管并升级/复用”,确认后才写入。
33
+ 非交互接管需同时提供 `--with-dependencies --adopt-dependencies`;单独的
34
+ `--with-dependencies` 不授权接管。缺少版本元数据、旧版本未发布或内容不同均保留原目录,
35
+ 报告具体依赖、路径和原因。接管升级前备份;接管同版本只登记,不重写文件。
31
36
  每次下载仍验证 ZIP SHA-256;若与安装时的 ZIP 摘要不同,再安全解包至临时目录比较
32
37
  文件内容、目录结构与可执行位。仅打包时间、顺序或压缩方式变化不再误报冲突,
33
- 同版本实际内容变化仍拒绝复用。校验不覆盖文件、不修改更新策略或项目锁定摘要。
38
+ 同版本实际内容变化仍拒绝复用。只读校验不覆盖文件、不修改更新策略或项目锁定摘要;
39
+ 确认安装后,manifest/lock 记录本次核验的完整依赖图和下载摘要。
34
40
  根 Skill 的 `--force` 仍须用户明确授权,依赖不继承此覆盖权限。
35
41
 
36
42
  确认后按依赖先于业务包的顺序安装到相同 Agent/scope,并写入 manifest/lock 与受管清单。
@@ -65,13 +71,21 @@ numa skills update --installation-id <installation-id> --json
65
71
  不会开启后续自动更新。它与只执行已启用追踪项的 `skills updates run` 不同。
66
72
 
67
73
  支持按名称、agent、namespace、instance 或安装 ID 筛选,同名且匹配的多个安装都会检查。
68
- 逐项报告旧版本、新版本、路径、结果码及本次升级的备份;一项失败仍继续其余项,最终退出码为 1。
69
- 本地修改、来源绑定变化、校验失败、依赖图变化或其他 Skill 固定旧版本时保留现状。
74
+ 最终报告用表格列出 Skill、客户端、更新前版本、远端 latest 和结果;窄终端使用紧凑列表。
75
+ 依赖声明变化单列为 `NEEDS_CONFIRMATION`(待确认依赖),显示新增、移除或版本变化的依赖,
76
+ 交互终端展示完整依赖计划并询问;确认后继续升级。非交互模式给出 `skills update --plan`
77
+ 和显式确认用的 `--with-dependencies` 命令。
78
+ JSON 的 `version` 始终表示执行后的本地版本,`latestVersion` 表示查询到的远端目标版本,
79
+ 尚未查询成功时省略。`dependencyChanges` 和 `planCommand` 在适用时提供。
80
+ 普通文本隐藏未更新项的路径及原始错误码,`--debug` 或 JSON 可查看;更新成功仍提供备份路径。
81
+ 一项失败或待确认仍继续其余项,最终退出码为 1,JSON 的 `ok` 为 false。
82
+ 本地修改、来源绑定变化、校验失败、未确认依赖变化或其他 Skill 固定旧版本时保留现状。
70
83
  备份位于 Skills 根目录旁的 `.numa-skill-backups`。更新后刷新宿主 Skill 列表或新建会话。
71
84
 
72
85
  文本模式通过 stderr 实时显示进展:终端使用 Clack TUI 进度条,显示已完成/总数、当前
73
86
  Skill/客户端、版本变化和检查、下载、校验、解包、备份、替换、保存记录等阶段。
74
- 进度条按已处理的安装数量推进,并非下载字节百分比;结束显示更新、已是最新和失败数量。
87
+ 进度条按已处理的安装数量推进,并非下载字节百分比;正常结束时清除动态进度条,由最终报告
88
+ 统一汇总已更新、无需更新、待确认和失败数量,避免重复摘要和成功项路径淹没待处理原因。
75
89
  非终端输出退化为逐行阶段日志。stdout 保留最终逐项报告;`--json` 或配置为 JSON 输出时
76
90
  不启动进度组件,仍只输出一个 JSON 文档。终端取消会停止后续更新,正在替换的文件先安全收尾。
77
91
 
@@ -231,3 +245,19 @@ adopt 使用现有 manifest/lock 下载锁定版本,校验 ZIP SHA-256,再
231
245
  自动追踪不会改写项目 lock,它仍是可复现的固定快照。显式 `registry sync --force` 可恢复
232
246
  锁定快照,且将该安装标为 pinned,避免下一次维护立即把它升回去。平台登录 Bootstrap
233
247
  按精确版本安装的条目同样登记为 pinned;不会擅自替代管理员指定的初始版本。
248
+
249
+ ### 手动更新的依赖确认
250
+
251
+ `numa skills update` 在交互终端遇到依赖变化时,会暂停进度条,展示同 namespace / instance 的完整依赖计划(精确版本、目标目录、安装/升级/复用动作),确认后继续。新增依赖登记为 pinned,已有安装保留追踪策略;从依赖声明移除的 Skill 不会被自动删除。其他已安装 Skill 的固定版本约束仍然生效,不会强行覆盖本地修改或未知来源目录。
252
+
253
+ ```bash
254
+ numa skills update numa-wecom --agent workbuddy --plan
255
+ # 审阅计划后,非交互执行可显式确认依赖变化
256
+ numa skills update numa-wecom --agent workbuddy --with-dependencies
257
+ # 若计划明确包含已核验的未登记旧依赖,确认接管后执行
258
+ numa skills update numa-wecom --agent workbuddy --with-dependencies --adopt-dependencies
259
+ ```
260
+
261
+ `--plan` 不写安装文件或更新清单。`--json` 与非交互终端不会询问,未指定 `--with-dependencies` 时返回“待确认”及可执行的查看计划/确认命令。失败时恢复本轮已替换的依赖;无法恢复的目录和备份在 JSON `details.recovery` 中报告。自动更新仍然遇到依赖变化即停止,不会自动确认。
262
+
263
+ 最终中文表格区分“更新前 / latest / 结果”,分别汇总已更新、无需更新、待确认和失败。依赖执行结果与备份单独列出;原始错误码和安装路径只在 `--debug` 或 JSON 中展示。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@numa-tech/numa",
3
- "version": "1.26.3",
3
+ "version": "1.26.5",
4
4
  "description": "Cross-platform CLI for the Numa internal developer platform with Keycloak authentication and MCP support.",
5
5
  "author": "numa-tech",
6
6
  "keywords": [
@@ -77,8 +77,8 @@
77
77
  "dependencies": {
78
78
  "@clack/prompts": "^1.7.0",
79
79
  "@modelcontextprotocol/sdk": "^1.29.0",
80
- "@numa-tech/cli-auth": "1.26.3",
81
- "@tokensrc/codex": "1.26.3",
80
+ "@numa-tech/cli-auth": "1.26.5",
81
+ "@tokensrc/codex": "1.26.5",
82
82
  "ali-oss": "^6.23.0",
83
83
  "commander": "^14.0.3",
84
84
  "ink": "^6.8.0",