@martini-film/cli 0.2.0 → 0.4.0

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 (46) hide show
  1. package/README.md +173 -56
  2. package/dist/api.js +69 -2
  3. package/dist/api.js.map +1 -1
  4. package/dist/approve.js +2 -1
  5. package/dist/approve.js.map +1 -1
  6. package/dist/args.js +31 -6
  7. package/dist/args.js.map +1 -1
  8. package/dist/cli.js +457 -110
  9. package/dist/cli.js.map +1 -1
  10. package/dist/commands/assets.js +297 -45
  11. package/dist/commands/assets.js.map +1 -1
  12. package/dist/commands/call.js +99 -0
  13. package/dist/commands/call.js.map +1 -0
  14. package/dist/commands/context.js +16 -3
  15. package/dist/commands/context.js.map +1 -1
  16. package/dist/commands/files.js +208 -83
  17. package/dist/commands/files.js.map +1 -1
  18. package/dist/commands/guide.js +67 -0
  19. package/dist/commands/guide.js.map +1 -0
  20. package/dist/commands/init.js +196 -0
  21. package/dist/commands/init.js.map +1 -0
  22. package/dist/commands/login.js +69 -15
  23. package/dist/commands/login.js.map +1 -1
  24. package/dist/commands/tools.js +63 -78
  25. package/dist/commands/tools.js.map +1 -1
  26. package/dist/commands/use.js +143 -0
  27. package/dist/commands/use.js.map +1 -0
  28. package/dist/config.js +87 -6
  29. package/dist/config.js.map +1 -1
  30. package/dist/generated/guide.json +104 -0
  31. package/dist/generated/manifest.json +3885 -241
  32. package/dist/guideCache.js +204 -0
  33. package/dist/guideCache.js.map +1 -0
  34. package/dist/help.js +391 -34
  35. package/dist/help.js.map +1 -1
  36. package/dist/manifest.js +34 -3
  37. package/dist/manifest.js.map +1 -1
  38. package/dist/manifestCache.js +196 -0
  39. package/dist/manifestCache.js.map +1 -0
  40. package/dist/output.js +251 -28
  41. package/dist/output.js.map +1 -1
  42. package/dist/schema.js +132 -15
  43. package/dist/schema.js.map +1 -1
  44. package/dist/wait.js +181 -8
  45. package/dist/wait.js.map +1 -1
  46. package/package.json +2 -2
package/dist/schema.js CHANGED
@@ -1,8 +1,34 @@
1
1
  import { readFileSync } from 'node:fs';
2
+ export const GLOBAL_FLAG_NAMES = new Set([
3
+ 'help',
4
+ 'version',
5
+ 'fields',
6
+ 'out',
7
+ 'out-dir',
8
+ 'wait',
9
+ 'timeout',
10
+ 'quiet',
11
+ 'raw',
12
+ 'project',
13
+ 'canvas',
14
+ 'run',
15
+ 'api-key',
16
+ 'api-url',
17
+ 'profile',
18
+ 'context',
19
+ 'approve',
20
+ 'max-olives',
21
+ 'schema',
22
+ 'all',
23
+ 'keys',
24
+ ]);
25
+ const RESERVED_FLAGS = new Set([...GLOBAL_FLAG_NAMES, 'args']);
2
26
  export class ArgumentError extends Error {
3
- constructor(message) {
27
+ hint;
28
+ constructor(message, options = {}) {
4
29
  super(message);
5
30
  this.name = 'ArgumentError';
31
+ this.hint = options.hint;
6
32
  }
7
33
  }
8
34
  export function kebab(property) {
@@ -11,7 +37,7 @@ export function kebab(property) {
11
37
  .replace(/_/g, '-')
12
38
  .toLowerCase();
13
39
  }
14
- function withoutNull(schema) {
40
+ export function withoutNull(schema) {
15
41
  const variants = schema.anyOf ?? schema.oneOf;
16
42
  if (!variants) {
17
43
  const nullable = Array.isArray(schema.type) && schema.type.includes('null');
@@ -58,12 +84,21 @@ function schemaKind(schema) {
58
84
  export function flagSpecs(tool) {
59
85
  const properties = tool.inputSchema.properties ?? {};
60
86
  const required = new Set(tool.inputSchema.required ?? []);
87
+ const taken = new Set([...RESERVED_FLAGS, ...Object.keys(properties).map(kebab)]);
61
88
  return Object.entries(properties).map(([property, raw]) => {
62
89
  const { schema, nullable } = withoutNull(raw);
63
90
  const kind = schemaKind(schema);
91
+ const name = kebab(property);
92
+ let flag = name;
93
+ if (RESERVED_FLAGS.has(name)) {
94
+ flag = `tool-${name}`;
95
+ while (taken.has(flag))
96
+ flag = `tool-${flag}`;
97
+ taken.add(flag);
98
+ }
64
99
  const spec = {
65
100
  property,
66
- flag: kebab(property),
101
+ flag,
67
102
  kind,
68
103
  required: required.has(property),
69
104
  description: raw.description ?? schema.description ?? '',
@@ -79,15 +114,64 @@ export function flagSpecs(tool) {
79
114
  spec.nullable = true;
80
115
  if (kind === 'json' && admitsString(schema))
81
116
  spec.acceptsString = true;
117
+ if (flag !== name)
118
+ spec.shadows = name;
82
119
  return spec;
83
120
  });
84
121
  }
122
+ export function argumentSchema(tool, name) {
123
+ const root = tool.inputSchema;
124
+ if (!name)
125
+ return root;
126
+ const wanted = name.replace(/^--/, '');
127
+ const specs = flagSpecs(tool);
128
+ const spec = specs.find(candidate => candidate.flag === wanted || candidate.property === wanted);
129
+ if (!spec) {
130
+ throw new ArgumentError(`${tool.name} has no argument --${wanted}. Flags: ${specs.map(candidate => `--${candidate.flag}`).join(', ') || '(none)'}. martini ${tool.name} --schema prints the whole input schema.`);
131
+ }
132
+ return propertySchema(tool, spec.property);
133
+ }
134
+ export function propertySchema(tool, property) {
135
+ return resolveRefs(tool.inputSchema.properties?.[property] ?? {}, tool.inputSchema);
136
+ }
137
+ export function resolveRefs(node, root, seen = new Set()) {
138
+ if (Array.isArray(node)) {
139
+ const items = node.map(item => resolveRefs(item, root, seen));
140
+ return (items.some((item, index) => item !== node[index]) ? items : node);
141
+ }
142
+ if (!node || typeof node !== 'object')
143
+ return node;
144
+ const { $ref: ref, ...siblings } = node;
145
+ if (typeof ref === 'string') {
146
+ const [, section, key] = /^#\/(\$defs|definitions)\/([^/]+)$/.exec(ref) ?? [];
147
+ const target = section && key ? root[section]?.[key] : undefined;
148
+ if (!target || typeof target !== 'object' || seen.has(ref))
149
+ return node;
150
+ return resolveRefs({ ...target, ...siblings }, root, new Set([...seen, ref]));
151
+ }
152
+ let changed = false;
153
+ const resolved = {};
154
+ for (const [key, value] of Object.entries(node)) {
155
+ resolved[key] = resolveRefs(value, root, seen);
156
+ if (resolved[key] !== value)
157
+ changed = true;
158
+ }
159
+ return (changed ? resolved : node);
160
+ }
85
161
  function admitsString(schema) {
86
162
  const variants = schema.anyOf ?? schema.oneOf ?? [];
87
163
  return variants.some(variant => variant.type === 'string' || typeof variant.const === 'string');
88
164
  }
89
- function readJsonArgument(raw, what) {
90
- const text = raw.startsWith('@') ? readFileSync(raw === '@-' ? 0 : raw.slice(1), 'utf8') : raw;
165
+ export function readJsonArgument(raw, what) {
166
+ let text = raw;
167
+ if (raw.startsWith('@')) {
168
+ try {
169
+ text = readFileSync(raw === '@-' ? 0 : raw.slice(1), 'utf8');
170
+ }
171
+ catch (error) {
172
+ throw new ArgumentError(`${what} could not read ${raw === '@-' ? 'stdin' : raw.slice(1)}: ${error instanceof Error ? error.message : String(error)}`);
173
+ }
174
+ }
91
175
  try {
92
176
  return JSON.parse(text);
93
177
  }
@@ -124,15 +208,23 @@ function coerceScalar(raw, kind, what) {
124
208
  }
125
209
  }
126
210
  const CONTEXT_HINTS = {
127
- projectId: '--project <id> or MARTINI_PROJECT_ID',
128
- canvasId: '--canvas <id> or MARTINI_CANVAS_ID',
129
- runId: '--run <id> or MARTINI_RUN_ID',
211
+ projectId: 'martini use <project> (or MARTINI_PROJECT_ID)',
212
+ canvasId: 'martini use <project> --canvas <canvas> (or MARTINI_CANVAS_ID)',
213
+ runId: 'MARTINI_RUN_ID (a Martini workflow run sets it)',
130
214
  };
215
+ function mergeFlagsFor(specs) {
216
+ return specs.some(spec => spec.flag === 'json') ? ['args'] : ['args', 'json'];
217
+ }
218
+ export function unknownToolFlags(tool, flags, ignore = new Set()) {
219
+ const specs = flagSpecs(tool);
220
+ const known = new Set([...specs.map(spec => spec.flag), ...mergeFlagsFor(specs)]);
221
+ return [...flags.keys()].filter(flag => !known.has(flag) && !ignore.has(flag));
222
+ }
131
223
  export function buildArguments(tool, flags, options = {}) {
132
224
  const specs = flagSpecs(tool);
133
225
  const byFlag = new Map(specs.map(spec => [spec.flag, spec]));
134
226
  const args = {};
135
- const mergeFlags = byFlag.has('json') ? ['args'] : ['args', 'json'];
227
+ const mergeFlags = mergeFlagsFor(specs);
136
228
  for (const mergeFlag of mergeFlags) {
137
229
  const value = flags.get(mergeFlag);
138
230
  if (value === undefined || value === true)
@@ -150,7 +242,7 @@ export function buildArguments(tool, flags, options = {}) {
150
242
  const spec = byFlag.get(flag);
151
243
  if (!spec) {
152
244
  const known = specs.map(s => `--${s.flag}`).join(', ');
153
- throw new ArgumentError(`Unknown flag --${flag} for ${tool.name}. Flags: ${known || '(none)'}. If the server's tool surface is newer than this build (martini tools says), pass the argument with --json '{"…": …}' or update: npx @martini-film/cli@latest.`);
245
+ throw new ArgumentError(`Unknown flag --${flag} for ${tool.name}. Flags: ${known || '(none)'} (from the server's tool list when the CLI could check it, else this build's). An argument not listed can still be sent inside ${mergeFlags.map(name => `--${name}`).join(' or ')} '{"…": …}'.`);
154
246
  }
155
247
  const what = `--${spec.flag}`;
156
248
  if (value === true) {
@@ -161,11 +253,14 @@ export function buildArguments(tool, flags, options = {}) {
161
253
  }
162
254
  const values = Array.isArray(value) ? value : [value];
163
255
  if (spec.kind === 'array') {
164
- const single = values.length === 1 && values[0].trim().startsWith('[') ? values[0] : null;
256
+ const takesFile = spec.items === 'object' || spec.items === 'json' || spec.items === 'array';
257
+ const single = values.length === 1 && (takesFile ? /^(\[|@)/ : /^\[/).test(values[0].trim()) ? values[0] : null;
165
258
  const jsonList = single ? readJsonArgument(single, what) : null;
166
259
  args[spec.property] = Array.isArray(jsonList)
167
260
  ? jsonList
168
- : values.map(raw => coerceScalar(raw, spec.items === 'json' ? 'string' : (spec.items ?? 'string'), what));
261
+ : jsonList !== null
262
+ ? [jsonList]
263
+ : values.map(raw => coerceScalar(raw, spec.items === 'json' ? 'string' : (spec.items ?? 'string'), what));
169
264
  continue;
170
265
  }
171
266
  const last = values[values.length - 1];
@@ -179,27 +274,49 @@ export function buildArguments(tool, flags, options = {}) {
179
274
  args[spec.property] = coerceScalar(last, spec.kind, what);
180
275
  }
181
276
  }
182
- const filled = options.context ? applyContextDefaults(tool, args, options.context) : args;
277
+ for (const [property, value] of Object.entries(args)) {
278
+ if (isAssetIdProperty(property))
279
+ args[property] = bareAssetIds(value);
280
+ }
281
+ const typedCanvas = typeof flags.get('canvas') === 'string';
282
+ const filled = options.context ? applyContextDefaults(tool, args, options.context, { canvasId: typedCanvas }) : args;
183
283
  for (const spec of specs) {
184
284
  if (spec.required && filled[spec.property] === undefined) {
185
285
  const context = CONTEXT_HINTS[spec.property];
186
286
  throw new ArgumentError(context
187
- ? `--${spec.flag} is required for ${tool.name}. Set it once instead: ${context}, or a .martini/config.json (a run sandbox has one).`
287
+ ? `--${spec.flag} is required for ${tool.name}. Pass it, or set it once for this directory: ${context}.`
188
288
  : `--${spec.flag} is required for ${tool.name}.`);
189
289
  }
190
290
  }
191
291
  return filled;
192
292
  }
293
+ export function bareAssetId(value) {
294
+ return value.replace(/^asset-(?=[0-9a-fA-F-]{8,})/, '');
295
+ }
296
+ function isAssetIdProperty(property) {
297
+ return /^(?:assetIds?|\w+AssetIds?)$/.test(property);
298
+ }
299
+ function bareAssetIds(value) {
300
+ if (typeof value === 'string')
301
+ return bareAssetId(value);
302
+ return Array.isArray(value) ? value.map(item => (typeof item === 'string' ? bareAssetId(item) : item)) : value;
303
+ }
193
304
  const CONTEXT_ALTERNATIVES = [
194
305
  { tool: 'get_board_overview', context: 'projectId', typed: ['projectQuery', 'exactProjectName'] },
195
306
  { tool: 'run_workflow', context: 'canvasId', typed: ['workflowId'] },
196
307
  ];
197
- export function applyContextDefaults(tool, args, context) {
308
+ export function applyContextDefaults(tool, args, context, typed = {}) {
198
309
  const properties = tool.inputSchema.properties ?? {};
199
310
  const filled = { ...args };
200
311
  for (const key of ['projectId', 'canvasId', 'runId']) {
201
312
  if (!(key in properties) || filled[key] !== undefined || !context[key])
202
313
  continue;
314
+ if (key === 'canvasId' &&
315
+ !typed.canvasId &&
316
+ typeof filled.projectId === 'string' &&
317
+ context.projectId !== undefined &&
318
+ filled.projectId !== context.projectId)
319
+ continue;
203
320
  const replaced = CONTEXT_ALTERNATIVES.some(rule => rule.tool === tool.name && rule.context === key && rule.typed.some(typed => filled[typed] !== undefined));
204
321
  if (replaced)
205
322
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/wait.js CHANGED
@@ -2,6 +2,9 @@ import { CliApiError } from './api.js';
2
2
  export const DEFAULT_WAIT_TIMEOUT_MS = 50_000;
3
3
  const TERMINAL_ASSET_STATUSES = new Set(['completed', 'failed', 'cancelled']);
4
4
  const TERMINAL_RUN_STATUSES = new Set(['completed', 'failed', 'cancelled', 'needs_revision']);
5
+ const JOB_HOLD_MAX_SECONDS = 45;
6
+ const JOB_HOLD_MAX_IDS = 25;
7
+ const ASSET_READ_CONCURRENCY = 6;
5
8
  export function assetsOutcome(assets) {
6
9
  const statuses = assets.map(asset => asset.status);
7
10
  const status = statuses.includes('failed') ? 'failed' : statuses.includes('cancelled') ? 'cancelled' : 'completed';
@@ -26,10 +29,40 @@ export function handleOutcome(kind, record) {
26
29
  return { kind, status, delivery: value };
27
30
  }
28
31
  }
32
+ const NOT_COMPLETED = new Set(['failed', 'cancelled', 'needs_revision']);
33
+ export function notCompleted(outcome) {
34
+ if (!NOT_COMPLETED.has(outcome.status))
35
+ return null;
36
+ const code = `${outcome.kind}_${outcome.status}`.toUpperCase();
37
+ let message = `The ${outcome.kind} ended ${outcome.status.replace('_', ' ')}.`;
38
+ if (outcome.kind === 'asset') {
39
+ const assets = outcome.assets ?? [];
40
+ const bad = assets.filter(asset => NOT_COMPLETED.has(asset.status));
41
+ message = `${bad.length} of ${assets.length} asset${assets.length === 1 ? '' : 's'} did not complete: ${bad
42
+ .map(asset => `${asset.id} (${asset.status}${typeof asset.error === 'string' && asset.error ? `: ${asset.error}` : ''})`)
43
+ .join(', ')}.`;
44
+ }
45
+ const error = new CliApiError(message, {
46
+ code,
47
+ status: 0,
48
+ hint: outcome.kind === 'run'
49
+ ? 'The run record is on stdout; martini get_run --run-id <id> says what it stopped on.'
50
+ : 'What settled is on stdout. Nothing is retried for you: read the error, change what caused it, and generate again (a new generation is charged again).',
51
+ });
52
+ error.result = outcome;
53
+ return error;
54
+ }
55
+ export function completedOrThrow(outcome) {
56
+ const error = notCompleted(outcome);
57
+ if (error)
58
+ throw error;
59
+ return outcome;
60
+ }
29
61
  export class WaitTimeoutError extends CliApiError {
30
62
  kind;
31
63
  pending;
32
64
  settled;
65
+ project;
33
66
  constructor(kind, pending, options = {}) {
34
67
  super(`Timed out waiting for ${pending.length} ${kind}${pending.length === 1 ? '' : 's'}: ${pending.join(', ')}`, {
35
68
  code: 'TIMEOUT',
@@ -42,7 +75,7 @@ export class WaitTimeoutError extends CliApiError {
42
75
  resumeCommand() {
43
76
  switch (this.kind) {
44
77
  case 'asset':
45
- return `martini wait ${this.pending.join(' ')} --timeout <seconds>`;
78
+ return `martini wait ${this.pending.join(' ')}${this.project ? ` --project ${this.project}` : ''} --timeout <seconds>`;
46
79
  case 'job':
47
80
  return `martini wait --job ${this.pending[0]} --timeout <seconds>`;
48
81
  case 'run':
@@ -60,27 +93,133 @@ function pause(attempt, started, timeoutMs, now) {
60
93
  return Math.max(0, Math.min(backoff(attempt), timeoutMs - (now() - started)));
61
94
  }
62
95
  const defaultSleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
96
+ async function holdJobs(client, jobIds, seconds, projectId) {
97
+ const batches = [];
98
+ for (let index = 0; index < jobIds.length; index += JOB_HOLD_MAX_IDS) {
99
+ batches.push(jobIds.slice(index, index + JOB_HOLD_MAX_IDS));
100
+ }
101
+ let answers;
102
+ try {
103
+ answers = await Promise.all(batches.map(batch => client.callTool('wait_for_jobs', {
104
+ jobIds: batch,
105
+ timeoutSeconds: seconds,
106
+ ...(projectId ? { projectId } : {}),
107
+ })));
108
+ }
109
+ catch (error) {
110
+ if (error instanceof CliApiError)
111
+ return null;
112
+ throw error;
113
+ }
114
+ const finished = new Set();
115
+ let atCapacity = false;
116
+ for (const answer of answers) {
117
+ for (const id of answer.notFound ?? [])
118
+ if (typeof id === 'string')
119
+ finished.add(id);
120
+ for (const job of answer.jobs ?? []) {
121
+ if (typeof job.id === 'string' && typeof job.status === 'string' && TERMINAL_ASSET_STATUSES.has(job.status)) {
122
+ finished.add(job.id);
123
+ }
124
+ }
125
+ if (answer.wokeOn === 'capacity')
126
+ atCapacity = true;
127
+ }
128
+ return { finished, atCapacity };
129
+ }
130
+ function holdCameBackEarly(hold, seconds, heldMs) {
131
+ return hold.finished.size === 0 && (hold.atCapacity || heldMs < seconds * 500);
132
+ }
133
+ async function mapConcurrent(items, limit, task) {
134
+ const results = new Array(items.length);
135
+ let next = 0;
136
+ let failed = false;
137
+ const worker = async () => {
138
+ while (!failed && next < items.length) {
139
+ const index = next++;
140
+ try {
141
+ results[index] = await task(items[index]);
142
+ }
143
+ catch (error) {
144
+ failed = true;
145
+ throw error;
146
+ }
147
+ }
148
+ };
149
+ await Promise.all(Array.from({ length: Math.min(limit, items.length) }, worker));
150
+ return results;
151
+ }
152
+ function readAsset(client, projectId, assetId) {
153
+ return client.callTool('get_asset', { projectId, assetId }, {
154
+ select: [
155
+ 'asset.id',
156
+ 'asset.status',
157
+ 'asset.imageUrl',
158
+ 'asset.uri',
159
+ 'asset.error',
160
+ 'asset.displayName',
161
+ 'asset.originalFilename',
162
+ 'generation.jobId',
163
+ 'generation.status',
164
+ ],
165
+ });
166
+ }
63
167
  export async function waitForAssets(client, projectId, assetIds, options = {}) {
64
168
  const timeoutMs = options.timeoutMs ?? DEFAULT_WAIT_TIMEOUT_MS;
65
169
  const now = options.now ?? Date.now;
66
170
  const sleep = options.sleep ?? defaultSleep;
67
171
  const started = now();
68
172
  const settled = new Map();
173
+ const jobOf = new Map();
174
+ const spentJobs = new Set();
175
+ let holdAvailable = true;
69
176
  let pending = [...new Set(assetIds)];
177
+ let toRead = pending;
70
178
  let attempt = 0;
71
179
  for (;;) {
72
- for (const assetId of pending) {
73
- const result = await client.callTool('get_asset', { projectId, assetId }, { select: ['asset.id', 'asset.status', 'asset.imageUrl', 'asset.uri', 'asset.error'] });
74
- const asset = result.asset;
180
+ const reads = await mapConcurrent(toRead, ASSET_READ_CONCURRENCY, assetId => readAsset(client, projectId, assetId));
181
+ toRead.forEach((assetId, index) => {
182
+ const { asset, generation } = reads[index];
75
183
  if (asset?.status && TERMINAL_ASSET_STATUSES.has(asset.status)) {
76
184
  settled.set(assetId, { ...asset, id: asset.id ?? assetId, status: asset.status });
185
+ return;
77
186
  }
78
- }
187
+ const jobId = typeof generation?.jobId === 'string' ? generation.jobId : undefined;
188
+ const jobRunning = typeof generation?.status === 'string' && !TERMINAL_ASSET_STATUSES.has(generation.status);
189
+ if (jobId && jobRunning && !spentJobs.has(jobId))
190
+ jobOf.set(assetId, jobId);
191
+ else
192
+ jobOf.delete(assetId);
193
+ });
79
194
  pending = pending.filter(id => !settled.has(id));
80
195
  if (pending.length === 0)
81
196
  return assetIds.map(id => settled.get(id));
82
- if (now() - started >= timeoutMs)
197
+ const elapsed = now() - started;
198
+ if (elapsed >= timeoutMs)
83
199
  throw new WaitTimeoutError('asset', pending, { settled: [...settled.values()] });
200
+ const held = holdAvailable ? pending.filter(id => jobOf.has(id)) : [];
201
+ const polled = pending.filter(id => !jobOf.has(id) || !holdAvailable);
202
+ const remainingSeconds = Math.floor((timeoutMs - elapsed) / 1000);
203
+ if (held.length > 0 && remainingSeconds >= 1) {
204
+ const seconds = Math.min(JOB_HOLD_MAX_SECONDS, remainingSeconds, polled.length > 0 ? Math.max(1, Math.round(backoff(attempt) / 1000)) : JOB_HOLD_MAX_SECONDS);
205
+ const holdStarted = now();
206
+ const hold = await holdJobs(client, [...new Set(held.map(id => jobOf.get(id)))], seconds, projectId);
207
+ if (hold === null) {
208
+ holdAvailable = false;
209
+ toRead = pending;
210
+ await sleep(pause(attempt, started, timeoutMs, now));
211
+ }
212
+ else {
213
+ for (const jobId of hold.finished)
214
+ spentJobs.add(jobId);
215
+ toRead = pending.filter(id => !jobOf.has(id) || hold.finished.has(jobOf.get(id)));
216
+ if (holdCameBackEarly(hold, seconds, now() - holdStarted))
217
+ await sleep(pause(attempt, started, timeoutMs, now));
218
+ }
219
+ attempt += 1;
220
+ continue;
221
+ }
222
+ toRead = pending;
84
223
  await sleep(pause(attempt, started, timeoutMs, now));
85
224
  attempt += 1;
86
225
  }
@@ -90,8 +229,26 @@ export async function waitForJob(client, jobId, options = {}) {
90
229
  const now = options.now ?? Date.now;
91
230
  const sleep = options.sleep ?? defaultSleep;
92
231
  const started = now();
232
+ let holdAvailable = true;
93
233
  let attempt = 0;
94
234
  for (;;) {
235
+ const remainingSeconds = Math.floor((timeoutMs - (now() - started)) / 1000);
236
+ if (holdAvailable && remainingSeconds >= 1) {
237
+ const seconds = Math.min(JOB_HOLD_MAX_SECONDS, remainingSeconds);
238
+ const holdStarted = now();
239
+ const hold = await holdJobs(client, [jobId], seconds);
240
+ if (hold === null || hold.finished.has(jobId)) {
241
+ holdAvailable = false;
242
+ }
243
+ else {
244
+ if (now() - started >= timeoutMs)
245
+ throw new WaitTimeoutError('job', [jobId]);
246
+ if (holdCameBackEarly(hold, seconds, now() - holdStarted))
247
+ await sleep(pause(attempt, started, timeoutMs, now));
248
+ attempt += 1;
249
+ continue;
250
+ }
251
+ }
95
252
  const result = await client.callTool('get_jobs', { jobId });
96
253
  const status = statusOf(result);
97
254
  if (status && TERMINAL_ASSET_STATUSES.has(status))
@@ -107,17 +264,33 @@ export async function waitForRun(client, runId, options = {}) {
107
264
  const now = options.now ?? Date.now;
108
265
  const sleep = options.sleep ?? defaultSleep;
109
266
  const started = now();
267
+ let wakeOnTerminal = true;
110
268
  let attempt = 0;
111
269
  for (;;) {
112
270
  const remaining = timeoutMs - (now() - started);
113
271
  if (remaining <= 0)
114
272
  throw new WaitTimeoutError('run', [runId]);
115
273
  const waitSeconds = Math.min(30, Math.floor(remaining / 1000));
116
- const result = await client.callTool('get_run', { runId, view: 'status', waitSeconds });
274
+ const filtered = wakeOnTerminal && waitSeconds > 0;
275
+ let result;
276
+ try {
277
+ result = await client.callTool('get_run', {
278
+ runId,
279
+ view: 'status',
280
+ waitSeconds,
281
+ ...(filtered ? { wakeOn: ['terminal'] } : {}),
282
+ });
283
+ }
284
+ catch (error) {
285
+ if (!filtered || !(error instanceof CliApiError) || error.code !== 'INVALID_ARGUMENTS')
286
+ throw error;
287
+ wakeOnTerminal = false;
288
+ continue;
289
+ }
117
290
  const status = statusOf(result);
118
291
  if (status && TERMINAL_RUN_STATUSES.has(status))
119
292
  return result;
120
- if (waitSeconds === 0)
293
+ if (waitSeconds === 0 || result.wokeOn === 'capacity')
121
294
  await sleep(pause(attempt, started, timeoutMs, now));
122
295
  else if (options.sleep && now() - started < timeoutMs)
123
296
  await options.sleep(0);
package/dist/wait.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"wait.js","sourceRoot":"","sources":["../src/wait.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAkB,MAAM,UAAU,CAAA;AAEtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAC7C,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;AAC7E,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAA;AAyB7F,MAAM,UAAU,aAAa,CAAC,MAAuB;IACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAA;IAClH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;AAC1C,CAAC;AAGD,SAAS,YAAY,CAAC,IAA8B,EAAE,MAAe;IACnE,MAAM,KAAK,GACT,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAkC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC3G,MAAM,OAAO,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3D,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACtE,CAAC,CAAE,OAAmC;QACtC,CAAC,CAAC,KAAK,CAAA;AACX,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAA8B,EAAE,MAAe;IAC3E,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAA;IAC3C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QACrC,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QACrC,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IACtC,IAAI,CAAU;IACd,OAAO,CAAU;IAEjB,OAAO,CAAW;IAC3B,YAAY,IAAc,EAAE,OAAiB,EAAE,UAAmC,EAAE;QAClF,KAAK,CAAC,yBAAyB,OAAO,CAAC,MAAM,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAChH,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,CAAC;SACV,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAA;IACtC,CAAC;IAGD,aAAa;QACX,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,OAAO;gBACV,OAAO,gBAAgB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAA;YACrE,KAAK,KAAK;gBACR,OAAO,sBAAsB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAA;YACpE,KAAK,KAAK;gBACR,OAAO,sBAAsB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAA;YACpE,KAAK,QAAQ;gBACX,OAAO,yBAAyB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAA;QACzE,CAAC;IACH,CAAC;CACF;AAED,SAAS,OAAO,CAAC,OAAe;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,IAAI,OAAO,EAAE,IAAI,CAAC,CAAA;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;AACvD,CAAC;AAQD,SAAS,KAAK,CAAC,OAAe,EAAE,OAAe,EAAE,SAAiB,EAAE,GAAiB;IACnF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAS1F,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAiB,EACjB,SAAiB,EACjB,QAAkB,EAClB,UAAuB,EAAE;IAEzB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAA;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAA;IAC3C,MAAM,OAAO,GAAG,GAAG,EAAE,CAAA;IACrB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAA;IAChD,IAAI,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;IACpC,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,SAAS,CAAC;QACR,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAClC,WAAW,EACX,EAAE,SAAS,EAAE,OAAO,EAAE,EACtB,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,CACvF,CAAA;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;YAC1B,IAAI,KAAK,EAAE,MAAM,IAAI,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YACnF,CAAC;QACH,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QAChD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,CAAA;QACrE,IAAI,GAAG,EAAE,GAAG,OAAO,IAAI,SAAS;YAAE,MAAM,IAAI,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QAClH,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAA;QACpD,OAAO,IAAI,CAAC,CAAA;IACd,CAAC;AACH,CAAC;AAGD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAiB,EAAE,KAAa,EAAE,UAAuB,EAAE;IAC1F,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAA;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAA;IAC3C,MAAM,OAAO,GAAG,GAAG,EAAE,CAAA;IACrB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAA0B,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACpF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC/B,IAAI,MAAM,IAAI,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAA;QAChE,IAAI,GAAG,EAAE,GAAG,OAAO,IAAI,SAAS;YAAE,MAAM,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QAC5E,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAA;QACpD,OAAO,IAAI,CAAC,CAAA;IACd,CAAC;AACH,CAAC;AAGD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAiB,EAAE,KAAa,EAAE,UAAuB,EAAE;IAC1F,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAA;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAA;IAC3C,MAAM,OAAO,GAAG,GAAG,EAAE,CAAA;IACrB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,SAAS,CAAC;QACR,MAAM,SAAS,GAAG,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAA;QAC/C,IAAI,SAAS,IAAI,CAAC;YAAE,MAAM,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QAG9D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAA;QAC9D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAA0B,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAA;QAChH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC/B,IAAI,MAAM,IAAI,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAA;QAG9D,IAAI,WAAW,KAAK,CAAC;YAAE,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAA;aACtE,IAAI,OAAO,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,OAAO,GAAG,SAAS;YAAE,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC7E,OAAO,IAAI,CAAC,CAAA;IACd,CAAC;AACH,CAAC;AAGD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAiB,EACjB,GAA6C,EAC7C,UAAuB,EAAE;IAEzB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAA;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAA;IAC3C,MAAM,OAAO,GAAG,GAAG,EAAE,CAAA;IACrB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAA;IACxD,SAAS,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAA0B,8BAA8B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC/G,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC/B,IAAI,MAAM,IAAI,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAA;QAChE,IAAI,GAAG,EAAE,GAAG,OAAO,IAAI,SAAS;YAAE,MAAM,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QAC/E,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAA;QACpD,OAAO,IAAI,CAAC,CAAA;IACd,CAAC;AACH,CAAC;AAGD,MAAM,UAAU,QAAQ,CAAC,MAAkD;IACzE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACxB,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,MAAM,CAAA;IAC3D,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAQ,MAA+B,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxG,OAAQ,MAA6B,CAAC,MAAM,CAAA;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,MAAM,UAAU,gBAAgB,CAAC,MAAe;IAC9C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAA;IACpD,MAAM,MAAM,GAAG,MAAiC,CAAA;IAChD,MAAM,GAAG,GAAa,EAAE,CAAA;IAExB,MAAM,MAAM,GAAG,CAAC,KAAc,EAAE,EAAE;QAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAC3D,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAM;QAC5C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC,CAAA;IACD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACtB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACrB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAqC,CAAA;IAC1D,IAAI,KAAK;QAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC3B,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,SAAQ;QAClC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,SAAQ;YAC/C,MAAM,KAAK,GAAG,IAA+B,CAAA;YAC7C,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK;gBAAE,SAAQ;YAChC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"wait.js","sourceRoot":"","sources":["../src/wait.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@martini-film/cli",
3
- "version": "0.2.0",
4
- "description": "The Martini command-line interface for agents and scripts: every MCP tool as a command, plus upload, download, wait, files, probe, and login",
3
+ "version": "0.4.0",
4
+ "description": "The Martini command-line interface for agents and scripts: every MCP tool as a command, plus upload, download, wait, files, probe, guide, init, and login",
5
5
  "license": "MIT",
6
6
  "author": {
7
7
  "name": "Martini",