@lesliechan721/aw 0.1.0-beta.58 → 0.1.0-beta.60

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 (79) hide show
  1. package/dist/authoring/scripts/lib/plugin-version-check.mjs +1 -1
  2. package/dist/authoring/scripts/validate-plugin.mjs +22 -4
  3. package/dist/authoring/scripts/validate-plugin.mjs.map +1 -1
  4. package/dist/native-runtime/reader-runtime.mjs +34 -0
  5. package/dist/native-runtime/reader.d.mts +6 -0
  6. package/dist/native-runtime/reader.mjs +11 -0
  7. package/dist/scripts/bundle-plugins.js +4 -13
  8. package/dist/scripts/bundle-plugins.js.map +1 -1
  9. package/dist/scripts/test-plugin-scripts.d.ts +3 -0
  10. package/dist/scripts/test-plugin-scripts.js +89 -10
  11. package/dist/scripts/test-plugin-scripts.js.map +1 -1
  12. package/dist/src/authoring/workspace-commands.d.ts +2 -0
  13. package/dist/src/authoring/workspace-commands.js +3 -1
  14. package/dist/src/authoring/workspace-commands.js.map +1 -1
  15. package/dist/src/commands/aw-capabilities.d.ts +1 -1
  16. package/dist/src/commands/aw-capabilities.js +1 -0
  17. package/dist/src/commands/aw-capabilities.js.map +1 -1
  18. package/dist/src/commands/managed-commands.d.ts +2 -0
  19. package/dist/src/commands/managed-commands.js +41 -3
  20. package/dist/src/commands/managed-commands.js.map +1 -1
  21. package/dist/src/commands/operation-plan.d.ts +8 -1
  22. package/dist/src/commands/operation-plan.js.map +1 -1
  23. package/dist/src/commands/plugin-capabilities.js +13 -0
  24. package/dist/src/commands/plugin-capabilities.js.map +1 -1
  25. package/dist/src/commands/rebuild-command.js +67 -21
  26. package/dist/src/commands/rebuild-command.js.map +1 -1
  27. package/dist/src/commands/rebuild-integration.js +33 -6
  28. package/dist/src/commands/rebuild-integration.js.map +1 -1
  29. package/dist/src/commands/runtime.js +3 -3
  30. package/dist/src/commands/runtime.js.map +1 -1
  31. package/dist/src/commands/sync-command.js +4 -0
  32. package/dist/src/commands/sync-command.js.map +1 -1
  33. package/dist/src/commands/write-commands.js +17 -8
  34. package/dist/src/commands/write-commands.js.map +1 -1
  35. package/dist/src/generators/local-plugin.js +10 -1
  36. package/dist/src/generators/local-plugin.js.map +1 -1
  37. package/dist/src/index.js +14 -4
  38. package/dist/src/index.js.map +1 -1
  39. package/dist/src/output/command-receipt.d.ts +2 -0
  40. package/dist/src/output/command-receipt.js +5 -0
  41. package/dist/src/output/command-receipt.js.map +1 -1
  42. package/dist/src/portable/materializer.js +4 -0
  43. package/dist/src/portable/materializer.js.map +1 -1
  44. package/dist/src/review/skill-materialization.js +4 -0
  45. package/dist/src/review/skill-materialization.js.map +1 -1
  46. package/dist/src/tui/controller-runtime.js +7 -0
  47. package/dist/src/tui/controller-runtime.js.map +1 -1
  48. package/dist/src/tui/operation-review-planner.js +12 -1
  49. package/dist/src/tui/operation-review-planner.js.map +1 -1
  50. package/dist/src/utils/managed-command-materialization.d.ts +10 -1
  51. package/dist/src/utils/managed-command-materialization.js +56 -4
  52. package/dist/src/utils/managed-command-materialization.js.map +1 -1
  53. package/dist/src/utils/managed-command-runtime.d.ts +10 -9
  54. package/dist/src/utils/managed-command-runtime.js +19 -8
  55. package/dist/src/utils/managed-command-runtime.js.map +1 -1
  56. package/dist/src/utils/managed-command-store.d.ts +6 -2
  57. package/dist/src/utils/managed-command-store.js +20 -7
  58. package/dist/src/utils/managed-command-store.js.map +1 -1
  59. package/dist/src/utils/native-cli.d.ts +6 -0
  60. package/dist/src/utils/native-cli.js +32 -6
  61. package/dist/src/utils/native-cli.js.map +1 -1
  62. package/dist/src/utils/native-tool-context.d.ts +14 -0
  63. package/dist/src/utils/native-tool-context.js +38 -0
  64. package/dist/src/utils/native-tool-context.js.map +1 -0
  65. package/dist/src/utils/native-tool-review.d.ts +21 -0
  66. package/dist/src/utils/native-tool-review.js +102 -0
  67. package/dist/src/utils/native-tool-review.js.map +1 -0
  68. package/dist/src/utils/plugin-config-write.js +30 -2
  69. package/dist/src/utils/plugin-config-write.js.map +1 -1
  70. package/dist/src/utils/plugin-scripts.js +14 -7
  71. package/dist/src/utils/plugin-scripts.js.map +1 -1
  72. package/dist/src/utils/process-lock.js +3 -1
  73. package/dist/src/utils/process-lock.js.map +1 -1
  74. package/dist/src/utils/process-tree.d.ts +2 -2
  75. package/dist/src/utils/process-tree.js +1 -1
  76. package/dist/src/utils/process-tree.js.map +1 -1
  77. package/dist/vitest.config.js +10 -1
  78. package/dist/vitest.config.js.map +1 -1
  79. package/package.json +8 -7
@@ -1,4 +1,6 @@
1
1
  import { type CommandLaunch } from '@lesliechan721/aw-plugin-core/manifest';
2
+ import { type NativeToolContext } from './native-tool-context.js';
3
+ import type { prepareWindowsJobHelper } from '@lesliechan721/agent-skill-eval';
2
4
  export interface CommandHost {
3
5
  schemaVersion: 1;
4
6
  nodeExecutable: string;
@@ -10,23 +12,22 @@ export declare function buildManagedCommandEnvironment(options: {
10
12
  hostEnvironment: NodeJS.ProcessEnv;
11
13
  host: CommandHost;
12
14
  platform?: NodeJS.Platform;
15
+ nativeContext?: NativeToolContext;
13
16
  }): NodeJS.ProcessEnv;
14
- export declare function prepareManagedCommandRun(options: {
17
+ export interface ManagedCommandRunOptions {
15
18
  id: string;
16
19
  args: string[];
17
20
  cwd: string;
18
21
  cliEntry: string;
19
22
  env?: NodeJS.ProcessEnv;
20
- }): Promise<{
23
+ platform?: NodeJS.Platform;
24
+ arch?: string;
25
+ prepareNativeTool?: typeof prepareWindowsJobHelper;
26
+ }
27
+ export declare function prepareManagedCommandRun(options: ManagedCommandRunOptions): Promise<{
21
28
  executable: string;
22
29
  args: string[];
23
30
  cwd: string;
24
31
  env: NodeJS.ProcessEnv;
25
32
  }>;
26
- export declare function runManagedCommand(options: {
27
- id: string;
28
- args: string[];
29
- cwd: string;
30
- cliEntry: string;
31
- env?: NodeJS.ProcessEnv;
32
- }): Promise<number>;
33
+ export declare function runManagedCommand(options: ManagedCommandRunOptions): Promise<number>;
@@ -3,6 +3,7 @@ import os from 'node:os';
3
3
  import path from 'node:path';
4
4
  import { validateCommandEnvironment } from '@lesliechan721/aw-plugin-core/manifest';
5
5
  import { resolveAwHomeCanonical } from './state-paths.js';
6
+ import { prepareNativeToolContext } from './native-tool-context.js';
6
7
  import { ManagedCommandError, resolveManagedCommand } from './managed-command-store.js';
7
8
  export function buildManagedCommandEnvironment(options) {
8
9
  const platform = options.platform ?? process.platform;
@@ -23,7 +24,7 @@ export function buildManagedCommandEnvironment(options) {
23
24
  result[name] = value;
24
25
  };
25
26
  for (const [name, value] of Object.entries(original)) {
26
- if (/^AW_(?:PLUGIN|COMMAND)_/iu.test(name))
27
+ if (/^AW_(?:PLUGIN|COMMAND|NATIVE)_/iu.test(name))
27
28
  continue;
28
29
  put(name, value);
29
30
  }
@@ -38,6 +39,8 @@ export function buildManagedCommandEnvironment(options) {
38
39
  throw new ManagedCommandError('commandEnvironmentSourceMissing', `The command environment source ${source} is missing.`);
39
40
  put(name, value);
40
41
  }
42
+ if (options.nativeContext && Object.keys(options.nativeContext.tools).length > 0)
43
+ put('AW_NATIVE_TOOL_CONTEXT', JSON.stringify(options.nativeContext));
41
44
  put('AW_HOME', options.host.awHome);
42
45
  put('AW_COMMAND_HOST', JSON.stringify(options.host));
43
46
  return result;
@@ -45,18 +48,26 @@ export function buildManagedCommandEnvironment(options) {
45
48
  export async function prepareManagedCommandRun(options) {
46
49
  const hostEnvironment = { ...(options.env ?? process.env) };
47
50
  const awHome = await resolveAwHomeCanonical(hostEnvironment);
48
- const { launch, resourceRoot } = await resolveManagedCommand(options.id, hostEnvironment);
51
+ const { launch, resourceRoot, producer, set } = await resolveManagedCommand(options.id, hostEnvironment);
52
+ // Reject invalid bindings before native preparation or consumer startup.
53
+ const host = { schemaVersion: 1, nodeExecutable: process.execPath, cliEntry: path.resolve(options.cliEntry), awHome };
54
+ const environment = buildManagedCommandEnvironment({ launch, hostEnvironment, host, platform: options.platform });
55
+ let nativeContext;
56
+ try {
57
+ nativeContext = await prepareNativeToolContext({ closure: producer?.nativeTools, kind: 'managed-command-set', key: set ?? '',
58
+ platform: options.platform, arch: options.arch, prepare: options.prepareNativeTool });
59
+ }
60
+ catch (error) {
61
+ throw new ManagedCommandError(error && typeof error === 'object' && 'code' in error ? String(error.code) : 'nativeToolUnavailable', 'The required native tool could not be prepared. Reinstall the current CLI/Eval package and include optional dependencies.');
62
+ }
63
+ if (Object.keys(nativeContext.tools).length > 0)
64
+ environment.AW_NATIVE_TOOL_CONTEXT = JSON.stringify(nativeContext);
49
65
  const absoluteEntry = path.resolve(resourceRoot, launch.entry);
50
66
  return {
51
67
  executable: launch.runner === 'node' ? process.execPath : absoluteEntry,
52
68
  args: [...(launch.runner === 'node' ? [absoluteEntry] : []), ...launch.args, ...options.args],
53
69
  cwd: launch.cwd === 'resource' ? resourceRoot : options.cwd,
54
- env: buildManagedCommandEnvironment({ launch, hostEnvironment, host: {
55
- schemaVersion: 1,
56
- nodeExecutable: process.execPath,
57
- cliEntry: path.resolve(options.cliEntry),
58
- awHome,
59
- } }),
70
+ env: environment,
60
71
  };
61
72
  }
62
73
  export async function runManagedCommand(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"managed-command-runtime.js","sourceRoot":"","sources":["../../../src/utils/managed-command-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"managed-command-runtime.js","sourceRoot":"","sources":["../../../src/utils/managed-command-runtime.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type CommandIdentity, type CommandLaunch, type ProducerIdentity, type InstalledCommandProducer, type UserCommandDefinition } from '@lesliechan721/aw-plugin-core/manifest';
1
+ import { type NativeToolClosure, type CommandIdentity, type CommandLaunch, type ProducerIdentity, type InstalledCommandProducer, type UserCommandDefinition } from '@lesliechan721/aw-plugin-core/manifest';
2
2
  export declare const COMMAND_PRODUCER_RECORD = ".aw-command-producer.json";
3
3
  export type { InstalledCommandProducer, UserCommandDefinition };
4
4
  export interface ManagedCommandDiagnostic {
@@ -78,13 +78,14 @@ export declare function readInstalledCommandProducer(resourceRoot: string): Prom
78
78
  export declare function writeInstalledCommandProducer(resourceRoot: string, record: InstalledCommandProducer): Promise<void>;
79
79
  export declare function revokeManagedCommandBindings(producer: ProducerIdentity, env?: NodeJS.ProcessEnv): Promise<string[]>;
80
80
  export declare function assertManagedCommandBindingIdentities(options: {
81
- producers: Array<Pick<InstalledCommandProducer, 'producer' | 'sets'>>;
81
+ producers: Array<Pick<InstalledCommandProducer, 'producer' | 'sets' | 'nativeTools'>>;
82
82
  env?: NodeJS.ProcessEnv;
83
83
  }): Promise<void>;
84
84
  export declare function publishManagedCommandBindings(options: {
85
85
  producer: ProducerIdentity;
86
86
  resourceRoot: string;
87
87
  sets: InstalledCommandSet[];
88
+ nativeTools?: NativeToolClosure;
88
89
  env?: NodeJS.ProcessEnv;
89
90
  }): Promise<string[]>;
90
91
  export declare function readManagedCommandPackageOwner(id: string, env?: NodeJS.ProcessEnv): Promise<{
@@ -99,6 +100,7 @@ export declare function syncManagedCommandPackage(options: {
99
100
  producer: ProducerIdentity;
100
101
  sourceDirectory: string;
101
102
  sets: InstalledCommandSet[];
103
+ nativeTools?: NativeToolClosure;
102
104
  env?: NodeJS.ProcessEnv;
103
105
  }): Promise<{
104
106
  id: string;
@@ -111,6 +113,8 @@ export declare function resolveManagedCommand(id: string, env?: NodeJS.ProcessEn
111
113
  view: ManagedCommandView;
112
114
  launch: CommandLaunch;
113
115
  resourceRoot: string;
116
+ producer?: InstalledCommandProducer;
117
+ set?: string;
114
118
  }>;
115
119
  export declare function inspectManagedCommand(id: string, env?: NodeJS.ProcessEnv): Promise<ManagedCommandView>;
116
120
  export declare function listManagedCommandPackages(env?: NodeJS.ProcessEnv): Promise<{
@@ -1,7 +1,7 @@
1
1
  import crypto from 'node:crypto';
2
2
  import * as fs from 'node:fs/promises';
3
3
  import path from 'node:path';
4
- import { getCommandPackageId, getPluginCommandId, isManagedCommandId, normalizeCommandIdentity, normalizeCommandLaunch, normalizeInstalledCommandProducer as normalizeCoreProducer, normalizeUserCommandDefinition, normalizeProducerIdentity, COMMAND_PRODUCER_RECORD_FILE, } from '@lesliechan721/aw-plugin-core/manifest';
4
+ import { getCommandPackageId, getPluginCommandId, isManagedCommandId, normalizeCommandIdentity, normalizeCommandLaunch, normalizeInstalledCommandProducer as normalizeCoreProducer, normalizeUserCommandDefinition, normalizeProducerIdentity, COMMAND_PRODUCER_RECORD_FILE, validateNativeToolClosureFiles, } from '@lesliechan721/aw-plugin-core/manifest';
5
5
  import { verifyManagedCommandArtifactEvidence } from './managed-command-evidence.js';
6
6
  import { atomicReplaceSafeFile } from './safe-fs.js';
7
7
  import { canonicalizePathThroughExistingAncestor, ensureRegularDirectoryPath, resolveAwHome, } from './state-paths.js';
@@ -290,7 +290,16 @@ export function normalizeInstalledCommandProducer(value) {
290
290
  }
291
291
  }
292
292
  export async function readInstalledCommandProducer(resourceRoot) {
293
- return normalizeInstalledCommandProducer(await readJson(resourceRoot, path.join(resourceRoot, COMMAND_PRODUCER_RECORD), 'commandBindingInvalid'));
293
+ const record = normalizeInstalledCommandProducer(await readJson(resourceRoot, path.join(resourceRoot, COMMAND_PRODUCER_RECORD), 'commandBindingInvalid'));
294
+ if (record.nativeTools) {
295
+ try {
296
+ await validateNativeToolClosureFiles(resourceRoot, record.nativeTools);
297
+ }
298
+ catch {
299
+ fail('commandBindingInvalid', 'The installed native tool closure does not match its files. Run producer sync or reinstall.');
300
+ }
301
+ }
302
+ return record;
294
303
  }
295
304
  export async function writeInstalledCommandProducer(resourceRoot, record) {
296
305
  await writeJson(resourceRoot, path.join(resourceRoot, COMMAND_PRODUCER_RECORD), normalizeInstalledCommandProducer(record));
@@ -360,17 +369,19 @@ async function prepareManagedCommandIdentities(root, records) {
360
369
  export async function assertManagedCommandBindingIdentities(options) {
361
370
  if (options.producers.length === 0)
362
371
  return;
363
- const records = options.producers.map((producer) => normalizeInstalledCommandProducer({ ...producer, schemaVersion: 1 }));
372
+ const records = options.producers.map((record) => normalizeInstalledCommandProducer({ schemaVersion: 1, producer: record.producer, sets: record.sets, ...(record.nativeTools ? { nativeTools: record.nativeTools } : {}) }));
364
373
  await prepareManagedCommandIdentities(await managedCommandRoot(options.env), records);
365
374
  }
366
375
  export async function publishManagedCommandBindings(options) {
367
- const record = normalizeInstalledCommandProducer({ schemaVersion: 1, producer: options.producer, sets: options.sets });
376
+ const record = normalizeInstalledCommandProducer({ schemaVersion: 1, producer: options.producer, sets: options.sets, ...(options.nativeTools ? { nativeTools: options.nativeTools } : {}) });
368
377
  const root = await managedCommandRoot(options.env);
369
378
  const resourceRoot = path.resolve(options.resourceRoot);
370
379
  for (const set of record.sets)
371
380
  for (const entry of set.entries)
372
381
  await validateManagedCommandResource(resourceRoot, entry);
373
382
  const candidates = await prepareManagedCommandIdentities(root, [record]);
383
+ if (record.nativeTools)
384
+ await validateNativeToolClosureFiles(resourceRoot, record.nativeTools);
374
385
  await writeInstalledCommandProducer(resourceRoot, record);
375
386
  await revokeManagedCommandBindings(record.producer, options.env);
376
387
  for (const [id, identity] of candidates)
@@ -417,11 +428,13 @@ export async function syncManagedCommandPackage(options) {
417
428
  try {
418
429
  const resourceRoot = path.join(staging, 'resource');
419
430
  await copyManagedCommandDirectory(options.sourceDirectory, resourceRoot, options.env);
420
- const record = normalizeInstalledCommandProducer({ schemaVersion: 1, producer, sets: options.sets });
431
+ const record = normalizeInstalledCommandProducer({ schemaVersion: 1, producer, sets: options.sets, ...(options.nativeTools ? { nativeTools: options.nativeTools } : {}) });
421
432
  for (const set of record.sets)
422
433
  for (const entry of set.entries)
423
434
  await validateManagedCommandResource(resourceRoot, entry);
424
435
  await prepareManagedCommandIdentities(root, [record]);
436
+ if (record.nativeTools)
437
+ await validateNativeToolClosureFiles(resourceRoot, record.nativeTools);
425
438
  await writeInstalledCommandProducer(resourceRoot, record);
426
439
  await writeJson(root, path.join(staging, 'owner.json'), { schemaVersion: 1, owner: 'agent-workflows', kind: 'plugin-command-package', producer });
427
440
  const removed = await revokeManagedCommandBindings(producer, options.env);
@@ -431,7 +444,7 @@ export async function syncManagedCommandPackage(options) {
431
444
  }
432
445
  await fs.rename(staging, packageRoot);
433
446
  const installedRoot = path.join(packageRoot, 'resource');
434
- const commandIds = await publishManagedCommandBindings({ producer, resourceRoot: installedRoot, sets: record.sets, env: options.env });
447
+ const commandIds = await publishManagedCommandBindings({ producer, resourceRoot: installedRoot, sets: record.sets, nativeTools: record.nativeTools, env: options.env });
435
448
  return { id, resourceRoot: installedRoot, commandIds, removedCommandIds: removed.filter((commandId) => !commandIds.includes(commandId)) };
436
449
  }
437
450
  finally {
@@ -479,7 +492,7 @@ export async function resolveManagedCommand(id, env = process.env) {
479
492
  fail('commandBindingInvalid', 'The command is absent or disabled in the installed producer.');
480
493
  const { key: _key, variant: _variant, ...launch } = entry;
481
494
  await validateManagedCommandResource(binding.resourceRoot, launch);
482
- return { resourceRoot: binding.resourceRoot, launch, view: { id, name: `${binding.identity.set}/${entry.key}/${entry.variant}`, owner: { kind: 'plugin', producer: record.producer }, availability: 'ready', resourceRoot: binding.resourceRoot, launch, errors: [], recoveryActions: [] } };
495
+ return { resourceRoot: binding.resourceRoot, launch, producer: record, set: binding.identity.set, view: { id, name: `${binding.identity.set}/${entry.key}/${entry.variant}`, owner: { kind: 'plugin', producer: record.producer }, availability: 'ready', resourceRoot: binding.resourceRoot, launch, errors: [], recoveryActions: [] } };
483
496
  }
484
497
  export async function inspectManagedCommand(id, env = process.env) {
485
498
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"managed-command-store.js","sourceRoot":"","sources":["../../../src/utils/managed-command-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"managed-command-store.js","sourceRoot":"","sources":["../../../src/utils/managed-command-store.ts"],"names":[],"mappings":"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"}
@@ -63,8 +63,14 @@ export declare class NativeCliError extends Error {
63
63
  constructor(options: NativeCliErrorOptions);
64
64
  }
65
65
  export type NativeCliRunner = (invocation: NativeCliInvocation) => Promise<NativeCliResult>;
66
+ export declare function retainNativeCliRunnerBackend(wrapper: NativeCliRunner, base: NativeCliRunner): NativeCliRunner;
66
67
  export declare function setNativeCliRunnerOverrideForTests(runner: NativeCliRunner | null): void;
67
68
  export declare function getDefaultNativeCliRunner(): NativeCliRunner;
69
+ /** Prepare outside the AW_HOME write lock. Injected runners own their admission. */
70
+ export declare function prepareNativeCliExecution(options?: {
71
+ env?: NodeJS.ProcessEnv;
72
+ runner?: NativeCliRunner;
73
+ }): Promise<void>;
68
74
  export declare function isNativeCliExecutableMissingError(error: unknown): boolean;
69
75
  export declare function isNativeCliTimeoutError(error: unknown): error is NativeCliError;
70
76
  export declare function summarizeNativeCliFailure(error: unknown): string;
@@ -1,7 +1,7 @@
1
1
  import { execFile } from 'node:child_process';
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import path from 'node:path';
4
- import { createWindowsJobInvocation, observeProcessTree, terminateProcessTree, } from './process-tree.js';
4
+ import { createWindowsJobInvocation, observeProcessTree, prepareWindowsJobHelper, terminateProcessTree, } from './process-tree.js';
5
5
  import { getCodexHome } from './state-paths.js';
6
6
  import { resolveWindowsClaudeCommand } from './windows-claude-shim.js';
7
7
  import { resolveWindowsNpmCommand } from './windows-npm-shim.js';
@@ -74,12 +74,32 @@ export class NativeCliError extends Error {
74
74
  }
75
75
  }
76
76
  let nativeCliRunnerOverrideForTests = null;
77
+ const nativeCliRunnerBases = new WeakMap();
78
+ export function retainNativeCliRunnerBackend(wrapper, base) {
79
+ nativeCliRunnerBases.set(wrapper, base);
80
+ return wrapper;
81
+ }
82
+ function usesDefaultNativeCliBackend(runner) {
83
+ const seen = new Set();
84
+ while (nativeCliRunnerBases.has(runner) && !seen.has(runner)) {
85
+ seen.add(runner);
86
+ runner = nativeCliRunnerBases.get(runner);
87
+ }
88
+ return runner === execFileNativeCliRunner;
89
+ }
77
90
  export function setNativeCliRunnerOverrideForTests(runner) {
78
91
  nativeCliRunnerOverrideForTests = runner;
79
92
  }
80
93
  export function getDefaultNativeCliRunner() {
81
94
  return nativeCliRunnerOverrideForTests ?? execFileNativeCliRunner;
82
95
  }
96
+ /** Prepare outside the AW_HOME write lock. Injected runners own their admission. */
97
+ export async function prepareNativeCliExecution(options = {}) {
98
+ if (process.platform !== 'win32'
99
+ || !usesDefaultNativeCliBackend(options.runner ?? getDefaultNativeCliRunner()))
100
+ return;
101
+ await prepareWindowsJobHelper();
102
+ }
83
103
  function readNativeCliErrorCode(error) {
84
104
  if (!error || typeof error !== 'object') {
85
105
  return undefined;
@@ -302,8 +322,8 @@ export function createExecFileNativeCliRunner(dependencies = {}) {
302
322
  const terminateProcessTreeImpl = dependencies.terminateProcessTree ?? terminateProcessTree;
303
323
  const platform = dependencies.platform ?? process.platform;
304
324
  const killProcess = dependencies.killProcess ?? process.kill;
305
- const createWindowsJobInvocationImpl = dependencies.createWindowsJobInvocation ??
306
- (dependencies.execFile ? undefined : createWindowsJobInvocation);
325
+ const createWindowsJobInvocationImpl = dependencies.createWindowsJobInvocation;
326
+ const usesDefaultWindowsJob = !dependencies.execFile && !createWindowsJobInvocationImpl;
307
327
  return async (invocation) => {
308
328
  if (invocation.signal?.aborted) {
309
329
  throw createAbortedNativeCliError(invocation);
@@ -312,7 +332,7 @@ export function createExecFileNativeCliRunner(dependencies = {}) {
312
332
  let executableArgs = invocation.args;
313
333
  const commandName = normalizeNativeCliCommandName(invocation.command);
314
334
  if (platform === 'win32'
315
- && createWindowsJobInvocationImpl
335
+ && (createWindowsJobInvocationImpl || usesDefaultWindowsJob)
316
336
  && (commandName === 'claude' || commandName === 'codex')) {
317
337
  const commandOptions = {
318
338
  command: invocation.command,
@@ -330,8 +350,14 @@ export function createExecFileNativeCliRunner(dependencies = {}) {
330
350
  executableCommand = resolved.command;
331
351
  executableArgs = [...resolved.argsPrefix, ...invocation.args];
332
352
  }
333
- const windowsJobInvocation = platform === 'win32' && createWindowsJobInvocationImpl
334
- ? createWindowsJobInvocationImpl(executableCommand, executableArgs)
353
+ const windowsJobInvocation = platform === 'win32'
354
+ ? createWindowsJobInvocationImpl
355
+ ? createWindowsJobInvocationImpl(executableCommand, executableArgs)
356
+ : usesDefaultWindowsJob
357
+ ? createWindowsJobInvocation(executableCommand, executableArgs, {
358
+ helperPath: await prepareWindowsJobHelper(),
359
+ })
360
+ : undefined
335
361
  : undefined;
336
362
  const cleanupStrategy = windowsJobInvocation
337
363
  ? 'windows-job'