@alpsckr/unitycli 0.4.0 → 0.4.2

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.
Files changed (98) hide show
  1. package/README.md +111 -299
  2. package/contracts/init-contract.json +64 -0
  3. package/contracts/instances-contract.json +49 -0
  4. package/contracts/package-assembly-closure.json +33 -0
  5. package/contracts/package-files.json +1953 -0
  6. package/dist/bridge/session-supervisor.d.ts +2 -0
  7. package/dist/bridge/session-supervisor.js +52 -19
  8. package/dist/bridge/session-supervisor.js.map +1 -1
  9. package/dist/cli-commands/command.js +33 -15
  10. package/dist/cli-commands/command.js.map +1 -1
  11. package/dist/cli-commands/init-discovery.d.ts +11 -0
  12. package/dist/cli-commands/init-discovery.js +185 -0
  13. package/dist/cli-commands/init-discovery.js.map +1 -0
  14. package/dist/cli-commands/init-help.d.ts +3 -0
  15. package/dist/cli-commands/init-help.js +41 -0
  16. package/dist/cli-commands/init-help.js.map +1 -0
  17. package/dist/cli-commands/init-skill.d.ts +10 -0
  18. package/dist/cli-commands/init-skill.js +171 -0
  19. package/dist/cli-commands/init-skill.js.map +1 -0
  20. package/dist/cli-commands/instances.d.ts +4 -0
  21. package/dist/cli-commands/instances.js +90 -0
  22. package/dist/cli-commands/instances.js.map +1 -0
  23. package/dist/cli-commands/package.d.ts +2 -2
  24. package/dist/cli-commands/package.js +97 -130
  25. package/dist/cli-commands/package.js.map +1 -1
  26. package/dist/cli-commands/skill-installer.d.ts +29 -13
  27. package/dist/cli-commands/skill-installer.js +127 -88
  28. package/dist/cli-commands/skill-installer.js.map +1 -1
  29. package/dist/cli-commands/types.d.ts +4 -0
  30. package/dist/cli.d.ts +1 -1
  31. package/dist/cli.js +46 -37
  32. package/dist/cli.js.map +1 -1
  33. package/dist/contracts/command-contract.js +1 -0
  34. package/dist/contracts/command-contract.js.map +1 -1
  35. package/dist/doctor.js +1 -1
  36. package/dist/doctor.js.map +1 -1
  37. package/dist/instances.d.ts +1 -1
  38. package/dist/instances.js +63 -38
  39. package/dist/instances.js.map +1 -1
  40. package/dist/output.d.ts +4 -4
  41. package/dist/output.js +3 -4
  42. package/dist/output.js.map +1 -1
  43. package/dist/package-manager.d.ts +47 -2
  44. package/dist/package-manager.js +267 -16
  45. package/dist/package-manager.js.map +1 -1
  46. package/dist/tools/.generated-schemas.js +2 -2
  47. package/dist/tools/.generated-schemas.js.map +1 -1
  48. package/dist/tools/commands.js +11 -4
  49. package/dist/tools/commands.js.map +1 -1
  50. package/dist/tools/dispatcher.js +1 -1
  51. package/dist/tools/dispatcher.js.map +1 -1
  52. package/dist/tools/tools/group-list.d.ts +4 -8
  53. package/dist/tools/tools/group-list.js +12 -13
  54. package/dist/tools/tools/group-list.js.map +1 -1
  55. package/dist/tools/tools/pagination.d.ts +17 -0
  56. package/dist/tools/tools/pagination.js +28 -0
  57. package/dist/tools/tools/pagination.js.map +1 -0
  58. package/dist/tools/tools/search.d.ts +3 -5
  59. package/dist/tools/tools/search.js +12 -12
  60. package/dist/tools/tools/search.js.map +1 -1
  61. package/dist/unity-project-processes.d.ts +7 -0
  62. package/dist/unity-project-processes.js +54 -0
  63. package/dist/unity-project-processes.js.map +1 -1
  64. package/docs/README.md +7 -4
  65. package/docs/architecture.md +103 -0
  66. package/docs/availability-differences.md +1 -1
  67. package/docs/command-execution.md +6 -1
  68. package/docs/development.md +91 -0
  69. package/docs/error-codes.md +21 -5
  70. package/docs/extensions.md +13 -13
  71. package/docs/target-and-instance.md +6 -4
  72. package/docs/tool-discovery.md +12 -10
  73. package/docs/tool-execution.md +3 -2
  74. package/package.json +10 -4
  75. package/schemas/init.schema.json +209 -0
  76. package/schemas/instances.schema.json +104 -0
  77. package/skills/unitycli/SKILL.md +18 -6
  78. package/skills/unitycli/manifest.json +2 -2
  79. package/skills/unitycli/references/custom-tools.md +3 -3
  80. package/skills/unitycli/references/operation-protocol.md +6 -4
  81. package/skills/unitycli/reports/output_quality_scorecard.md +1 -1
  82. package/skills/unitycli/reports/trust-report.md +1 -1
  83. package/unitypkg/Editor/Bridge/BridgeCommandRegistry.cs +1 -0
  84. package/unitypkg/Editor/Bridge/BridgeWorkQueue.cs +18 -6
  85. package/unitypkg/Editor/Infrastructure/CodeExecSupport.cs +8 -77
  86. package/unitypkg/Editor/Infrastructure/UnityCliInstanceCleanup.cs +295 -0
  87. package/unitypkg/Editor/Infrastructure/UnityCliInstanceRegistry.cs +166 -10
  88. package/unitypkg/Editor/Infrastructure/UnityCliOperationCoordinator.cs +1 -0
  89. package/unitypkg/Editor/UnityCliBridge.cs +5 -1
  90. package/unitypkg/Tests/Editor/UnityCliInstanceCleanupTests.cs +232 -0
  91. package/unitypkg/Tests/Editor/UnityCliInstancePublicationRetryTests.cs +143 -0
  92. package/unitypkg/UnityCli.Editor.asmdef +1 -5
  93. package/unitypkg/package.json +1 -1
  94. package/unitypkg/Editor/Roslyn/LICENSE.txt +0 -23
  95. package/unitypkg/Editor/Roslyn/Microsoft.CodeAnalysis.CSharp.dll +0 -0
  96. package/unitypkg/Editor/Roslyn/Microsoft.CodeAnalysis.dll +0 -0
  97. package/unitypkg/Editor/Roslyn/System.Collections.Immutable.dll +0 -0
  98. package/unitypkg/Editor/Roslyn/System.Reflection.Metadata.dll +0 -0
@@ -4,35 +4,15 @@ import { createHash } from "node:crypto";
4
4
  import { dirname, join, relative, resolve } from "node:path";
5
5
  import { fileURLToPath } from "node:url";
6
6
  /** All valid agent kinds. */
7
- export const AGENT_KINDS = ["pi", "claude", ".agents"];
7
+ export const AGENT_KINDS = ["claude", ".agents"];
8
8
  // ─── Agent skill target paths ────────────────────────────────────────────────
9
- /** Maps an agent kind to its root directory relative to the Unity project root. */
10
- const AGENT_ROOT_DIR = {
11
- pi: ".pi",
12
- claude: ".claude",
13
- ".agents": ".agents",
14
- };
15
9
  /** Maps an agent kind to its skill directory relative to the Unity project root. */
16
10
  const AGENT_SKILL_DIR = {
17
- pi: ".pi/skills/unitycli",
18
11
  claude: ".claude/skills/unitycli",
19
12
  ".agents": ".agents/skills/unitycli",
20
13
  };
21
- /** 探测项目中已存在的 Agent 目录,用于 init 默认安装 Skill。 */
22
- export async function detectAgentKinds(projectRoot) {
23
- const detected = [];
24
- for (const agent of AGENT_KINDS) {
25
- try {
26
- const rootStat = await stat(join(projectRoot, AGENT_ROOT_DIR[agent]));
27
- if (rootStat.isDirectory()) {
28
- detected.push(agent);
29
- }
30
- }
31
- catch {
32
- // 未配置该 Agent 时跳过,避免凭空创建新的 Agent 根目录。
33
- }
34
- }
35
- return detected;
14
+ export function resolveSkillTarget(basePath, agent) {
15
+ return join(basePath, AGENT_SKILL_DIR[agent]);
36
16
  }
37
17
  // ─── Skill source resolution ─────────────────────────────────────────────────
38
18
  /**
@@ -98,6 +78,11 @@ let beforeSkillPublishForTest;
98
78
  let afterSkillPublishForTest;
99
79
  let beforeSkillRollbackForTest;
100
80
  let beforeSkillPreviousCleanupForTest;
81
+ let beforeSkillTargetLoadForTest;
82
+ /** 仅测试使用:在读取既有target前制造底层文件系统失败。 */
83
+ export function setBeforeSkillTargetLoadForTest(hook) {
84
+ beforeSkillTargetLoadForTest = hook;
85
+ }
101
86
  /** 仅测试使用:在 target 保持完整时、首次发布写入前制造等待或失败。 */
102
87
  export function setBeforeSkillPublishForTest(hook) {
103
88
  beforeSkillPublishForTest = hook;
@@ -201,6 +186,47 @@ async function loadBundle(root, allowMissingFeedbackMode) {
201
186
  feedbackMode: readFeedbackMode(skill.content, allowMissingFeedbackMode),
202
187
  };
203
188
  }
189
+ /** 既有非空目录只有包含Skill入口时才证明归本安装器所有。 */
190
+ async function assertTargetOwnedOrEmpty(targetRoot, deadlineMs) {
191
+ if (!await exists(targetRoot, deadlineMs) || await exists(join(targetRoot, "SKILL.md"), deadlineMs))
192
+ return;
193
+ const entries = await readdir(targetRoot);
194
+ if (entries.length > 0) {
195
+ throw new SkillInstallerError("E_SKILL_TARGET_OWNERSHIP_UNPROVEN", "The selected Skill target is non-empty but does not contain a UnityCLI SKILL.md entry.", ["Choose the exact UnityCLI Skill directory or empty the intended target before installing."]);
196
+ }
197
+ }
198
+ function isRepairableSkillDamage(error) {
199
+ return error instanceof SkillInstallerError
200
+ && (error.code === "E_SKILL_BUNDLE_INVALID" || error.code === "E_SKILL_FEEDBACK_MODE_INVALID");
201
+ }
202
+ function skillTargetReadError(error) {
203
+ if (error instanceof SkillInstallerError)
204
+ return error;
205
+ const code = error.code;
206
+ return new SkillInstallerError("E_SKILL_TARGET_UNREADABLE", `The selected UnityCLI Skill target could not be read${code ? ` (${code})` : ""}.`, ["Close processes holding the Skill files, restore read access, then run the same check again."]);
207
+ }
208
+ async function loadTargetBundle(targetRoot) {
209
+ await beforeSkillTargetLoadForTest?.();
210
+ return loadBundle(targetRoot, true);
211
+ }
212
+ /** 不获取安装 mutex、不写文件,只读比较一个明确 Skill target 与 bundled source。 */
213
+ export async function inspectSkillTarget(sourcePath, targetPath) {
214
+ const source = await loadBundle(dirname(sourcePath), false);
215
+ try {
216
+ await assertTargetOwnedOrEmpty(targetPath);
217
+ if (!await exists(join(targetPath, "SKILL.md")))
218
+ return { status: "missing", targetPath, sourceHash: source.hash };
219
+ const target = await loadTargetBundle(targetPath);
220
+ return target.hash === source.hash
221
+ ? { status: "installed", targetPath, sourceHash: source.hash, hash: target.hash }
222
+ : { status: "drifted", targetPath, sourceHash: source.hash, hash: target.hash };
223
+ }
224
+ catch (error) {
225
+ if (isRepairableSkillDamage(error))
226
+ return { status: "damaged", targetPath, sourceHash: source.hash, message: error.message };
227
+ throw skillTargetReadError(error);
228
+ }
229
+ }
204
230
  /** 把目标本地反馈开关投影到待发布 SKILL.md,其余文件保持原字节。 */
205
231
  function renderBundleFile(file, feedbackMode) {
206
232
  if (file.path !== "SKILL.md")
@@ -371,8 +397,8 @@ async function withSkillInstallMutex(targetRoot, deadlineMs, action) {
371
397
  }
372
398
  const committedTargetMarkerName = "committed-target.json";
373
399
  /** 返回固定 workspace;每个 project + agent 最多只有 staging 和 previous 两个机制目录。 */
374
- function installWorkspace(projectRoot, agent) {
375
- const root = join(projectRoot, "Library", "UnityCli", "skill-install", agent === ".agents" ? "agents" : agent);
400
+ function installWorkspace(projectRoot, agent, explicitRoot) {
401
+ const root = explicitRoot ?? join(projectRoot, "Library", "UnityCli", "skill-install", agent === ".agents" ? "agents" : agent);
376
402
  return { stagingRoot: join(root, "staging"), previousRoot: join(root, "previous") };
377
403
  }
378
404
  /** 将内存中的完整 bundle 写入固定 workspace,并以严格 readback 验证。 */
@@ -540,6 +566,72 @@ async function publishBundle(source, existing, feedbackMode, targetRoot, workspa
540
566
  await retrySharingViolation(cleanupDeadlineMs, () => rm(workspace.stagingRoot, { recursive: true, force: true })).catch(() => undefined);
541
567
  }
542
568
  }
569
+ // ─── Installer interface ─────────────────────────────────────────────────────
570
+ /** 复用唯一bundle事务实现安装一个已经过调用层安全校验的明确目标。 */
571
+ async function installBundleAtTarget(sourcePath, targetRoot, workspace, absoluteDeadlineMs) {
572
+ const targetPath = join(targetRoot, "SKILL.md");
573
+ const source = await loadBundle(dirname(sourcePath), false);
574
+ return withSkillInstallMutex(targetRoot, absoluteDeadlineMs, async () => {
575
+ try {
576
+ await recoverInstallWorkspace(targetRoot, workspace, absoluteDeadlineMs);
577
+ await assertTargetOwnedOrEmpty(targetRoot, absoluteDeadlineMs);
578
+ let existing;
579
+ let replacedDamaged = false;
580
+ if (await exists(targetPath, absoluteDeadlineMs)) {
581
+ try {
582
+ existing = await retrySharingViolation(absoluteDeadlineMs, () => loadTargetBundle(targetRoot));
583
+ }
584
+ catch (error) {
585
+ if (!isRepairableSkillDamage(error))
586
+ throw error;
587
+ if (await exists(workspace.previousRoot, absoluteDeadlineMs)) {
588
+ await restorePreviousBundle(targetRoot, workspace, absoluteDeadlineMs);
589
+ existing = await retrySharingViolation(absoluteDeadlineMs, () => loadTargetBundle(targetRoot));
590
+ }
591
+ else {
592
+ replacedDamaged = true;
593
+ }
594
+ }
595
+ }
596
+ if (existing?.hash === source.hash) {
597
+ await retrySharingViolation(absoluteDeadlineMs, () => rm(workspace.previousRoot, { recursive: true, force: true }));
598
+ return { targetPath, status: "skipped", hash: source.hash };
599
+ }
600
+ if (existing && await exists(workspace.previousRoot, absoluteDeadlineMs)) {
601
+ await retrySharingViolation(absoluteDeadlineMs, () => rm(workspace.previousRoot, { recursive: true, force: true }));
602
+ }
603
+ const feedbackMode = existing?.feedbackMode ?? source.feedbackMode;
604
+ await publishBundle(source, existing, feedbackMode, targetRoot, workspace, absoluteDeadlineMs);
605
+ if (existing || replacedDamaged) {
606
+ return { targetPath, status: "updated", ...(existing ? { previousHash: existing.hash } : {}), newHash: source.hash };
607
+ }
608
+ return { targetPath, status: "installed", hash: source.hash };
609
+ }
610
+ catch (error) {
611
+ throw skillInstallIoError(error, "complete its runtime bundle installation");
612
+ }
613
+ });
614
+ }
615
+ /** 明确目录和预设agent都通过同一mutex读取,避免检查观察到发布中间态。 */
616
+ async function checkBundleAtTarget(sourcePath, targetRoot, absoluteDeadlineMs) {
617
+ const source = await loadBundle(dirname(sourcePath), false);
618
+ return withSkillInstallMutex(targetRoot, absoluteDeadlineMs, async () => {
619
+ const targetPath = join(targetRoot, "SKILL.md");
620
+ if (!await exists(targetPath, absoluteDeadlineMs))
621
+ return { targetPath, status: "missing", sourceHash: source.hash };
622
+ const installed = await retrySharingViolation(absoluteDeadlineMs, () => loadTargetBundle(targetRoot));
623
+ return installed.hash === source.hash
624
+ ? { targetPath, status: "installed", hash: installed.hash, sourceHash: source.hash }
625
+ : { targetPath, status: "outdated", hash: installed.hash, sourceHash: source.hash };
626
+ });
627
+ }
628
+ export async function installSkillTarget(sourcePath, targetRoot, installRoot, absoluteDeadlineMs = Date.now() + defaultInstallTimeoutMs) {
629
+ const workspace = { stagingRoot: join(installRoot, "staging"), previousRoot: join(installRoot, "previous") };
630
+ return installBundleAtTarget(sourcePath, resolve(targetRoot), workspace, absoluteDeadlineMs);
631
+ }
632
+ export async function checkSkillTarget(sourcePath, targetRoot, absoluteDeadlineMs = Date.now() + defaultInstallTimeoutMs) {
633
+ return checkBundleAtTarget(sourcePath, resolve(targetRoot), absoluteDeadlineMs);
634
+ }
543
635
  // ─── Base installer implementation ───────────────────────────────────────────
544
636
  class BaseSkillInstaller {
545
637
  agent;
@@ -549,67 +641,14 @@ class BaseSkillInstaller {
549
641
  resolveTargetPath(projectRoot) {
550
642
  return join(projectRoot, AGENT_SKILL_DIR[this.agent], "SKILL.md");
551
643
  }
552
- async install(sourcePath, projectRoot, absoluteDeadlineMs = Date.now() + defaultInstallTimeoutMs) {
553
- const sourceRoot = dirname(sourcePath);
554
- const targetPath = this.resolveTargetPath(projectRoot);
555
- const targetRoot = dirname(targetPath);
556
- const source = await loadBundle(sourceRoot, false);
557
- const workspace = installWorkspace(projectRoot, this.agent);
558
- return withSkillInstallMutex(targetRoot, absoluteDeadlineMs, async () => {
559
- try {
560
- await recoverInstallWorkspace(targetRoot, workspace, absoluteDeadlineMs);
561
- let existing;
562
- if (await exists(targetPath, absoluteDeadlineMs)) {
563
- try {
564
- existing = await retrySharingViolation(absoluteDeadlineMs, () => loadBundle(targetRoot, true));
565
- }
566
- catch (error) {
567
- if (!await exists(workspace.previousRoot, absoluteDeadlineMs))
568
- throw error;
569
- await restorePreviousBundle(targetRoot, workspace, absoluteDeadlineMs);
570
- existing = await retrySharingViolation(absoluteDeadlineMs, () => loadBundle(targetRoot, true));
571
- }
572
- }
573
- if (existing?.hash === source.hash) {
574
- await retrySharingViolation(absoluteDeadlineMs, () => rm(workspace.previousRoot, { recursive: true, force: true }));
575
- return { agent: this.agent, targetPath, status: "skipped", hash: source.hash };
576
- }
577
- if (existing && await exists(workspace.previousRoot, absoluteDeadlineMs)) {
578
- await retrySharingViolation(absoluteDeadlineMs, () => rm(workspace.previousRoot, { recursive: true, force: true }));
579
- }
580
- const feedbackMode = existing?.feedbackMode ?? source.feedbackMode;
581
- await publishBundle(source, existing, feedbackMode, targetRoot, workspace, absoluteDeadlineMs);
582
- if (existing) {
583
- return {
584
- agent: this.agent,
585
- targetPath,
586
- status: "updated",
587
- previousHash: existing.hash,
588
- newHash: source.hash,
589
- };
590
- }
591
- return { agent: this.agent, targetPath, status: "installed", hash: source.hash };
592
- }
593
- catch (error) {
594
- throw skillInstallIoError(error, "complete its runtime bundle installation");
595
- }
596
- });
644
+ async install(sourcePath, projectRoot, absoluteDeadlineMs = Date.now() + defaultInstallTimeoutMs, installRoot) {
645
+ const targetRoot = dirname(this.resolveTargetPath(projectRoot));
646
+ const result = await installBundleAtTarget(sourcePath, targetRoot, installWorkspace(projectRoot, this.agent, installRoot), absoluteDeadlineMs);
647
+ return { agent: this.agent, ...result };
597
648
  }
598
649
  async check(sourcePath, projectRoot, absoluteDeadlineMs = Date.now() + defaultInstallTimeoutMs) {
599
- const source = await loadBundle(dirname(sourcePath), false);
600
- const targetPath = this.resolveTargetPath(projectRoot);
601
- const targetRoot = dirname(targetPath);
602
- const deadlineMs = absoluteDeadlineMs;
603
- return withSkillInstallMutex(targetRoot, deadlineMs, async () => {
604
- if (!await exists(targetPath, deadlineMs)) {
605
- return { agent: this.agent, targetPath, status: "missing", sourceHash: source.hash };
606
- }
607
- const installed = await retrySharingViolation(deadlineMs, () => loadBundle(targetRoot, true));
608
- if (installed.hash === source.hash) {
609
- return { agent: this.agent, targetPath, status: "installed", hash: installed.hash, sourceHash: source.hash };
610
- }
611
- return { agent: this.agent, targetPath, status: "outdated", hash: installed.hash, sourceHash: source.hash };
612
- });
650
+ const targetRoot = dirname(this.resolveTargetPath(projectRoot));
651
+ return { agent: this.agent, ...await checkBundleAtTarget(sourcePath, targetRoot, absoluteDeadlineMs) };
613
652
  }
614
653
  }
615
654
  // ─── Registry ─────────────────────────────────────────────────────────────────
@@ -632,9 +671,9 @@ export class AgentSkillInstallerRegistry {
632
671
  }
633
672
  /**
634
673
  * Install the skill for the specified agents.
635
- * @param agents Comma-separated or array of agent kinds (e.g. "pi,claude")
674
+ * @param agents Comma-separated or array of agent kinds (e.g. "claude,.agents")
636
675
  */
637
- async installForAgents(agents, sourcePath, projectRoot, absoluteDeadlineMs) {
676
+ async installForAgents(agents, sourcePath, projectRoot, absoluteDeadlineMs, installRoot) {
638
677
  const resolved = parseAgentList(agents);
639
678
  const results = [];
640
679
  for (const agent of resolved) {
@@ -642,7 +681,7 @@ export class AgentSkillInstallerRegistry {
642
681
  if (!installer) {
643
682
  throw new SkillInstallerError("UNKNOWN_AGENT_KIND", `Unknown agent kind: ${agent}. Supported: ${AGENT_KINDS.join(", ")}`, [`Use one of: ${AGENT_KINDS.join(", ")}`]);
644
683
  }
645
- results.push(await installer.install(sourcePath, projectRoot, absoluteDeadlineMs));
684
+ results.push(await installer.install(sourcePath, projectRoot, absoluteDeadlineMs, installRoot));
646
685
  }
647
686
  return results;
648
687
  }
@@ -675,7 +714,7 @@ export function parseAgentList(agents) {
675
714
  const result = [];
676
715
  for (const agent of raw) {
677
716
  if (!validSet.has(agent)) {
678
- throw new SkillInstallerError("UNKNOWN_AGENT_KIND", `Unknown agent kind: "${agent}". Supported: ${AGENT_KINDS.join(", ")}`, [`Use one or more of: ${AGENT_KINDS.join(", ")}, comma-separated (e.g. "pi,claude,.agents")`]);
717
+ throw new SkillInstallerError("UNKNOWN_AGENT_KIND", `Unknown agent kind: "${agent}". Supported: ${AGENT_KINDS.join(", ")}`, [`Use one or more of: ${AGENT_KINDS.join(", ")}, comma-separated (e.g. "claude,.agents")`]);
679
718
  }
680
719
  // Deduplicate
681
720
  if (!result.includes(agent)) {
@@ -1 +1 @@
1
- {"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../../src/cli-commands/skill-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../../src/cli-commands/skill-installer.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,12 @@ import type { BridgeRuntime } from "../bridge/index.js";
2
2
  import type { DoctorRuntime } from "../doctor.js";
3
3
  import type { ToolsRuntime } from "../tools/dispatcher.js";
4
4
  import type { CliResult } from "../types.js";
5
+ import type { UnityProjectCloseResult, UnityProjectProcess } from "../unity-project-processes.js";
5
6
  export interface Runtime extends BridgeRuntime, ToolsRuntime, DoctorRuntime {
6
7
  dataDir: string;
8
+ userHome?: string;
9
+ findUnityProjectProcesses?: (instanceId: string, canonicalProjectPath: string, timeoutMs?: number) => Promise<UnityProjectProcess[]>;
10
+ closeUnityProjectProcesses?: (processes: UnityProjectProcess[], timeoutMs: number) => Promise<UnityProjectCloseResult>;
7
11
  }
8
12
  export interface CliCommandContext {
9
13
  command: string | undefined;
package/dist/cli.d.ts CHANGED
@@ -14,4 +14,4 @@ export interface CliExitRuntime {
14
14
  exit(code: number): void;
15
15
  }
16
16
  /** 输出完成后结束CLI;残留socket、timer或child handle不得延长公开调用生命周期。 */
17
- export declare function finishCliProcess(result: CliResult, raw: boolean, runtime?: CliExitRuntime): void;
17
+ export declare function finishCliProcess(result: CliResult, pretty: boolean, runtime?: CliExitRuntime): void;