@inquir/compute-cli 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +528 -406
- package/dist/commands/admin-tenants.d.ts +11 -0
- package/dist/commands/admin-tenants.d.ts.map +1 -0
- package/dist/commands/admin-tenants.js +318 -0
- package/dist/commands/admin-tenants.js.map +1 -0
- package/dist/commands/admin.d.ts +2 -0
- package/dist/commands/admin.d.ts.map +1 -0
- package/dist/commands/admin.js +445 -0
- package/dist/commands/admin.js.map +1 -0
- package/dist/commands/apps-describe.d.ts +9 -0
- package/dist/commands/apps-describe.d.ts.map +1 -0
- package/dist/commands/apps-describe.js +125 -0
- package/dist/commands/apps-describe.js.map +1 -0
- package/dist/commands/apps-instances.d.ts +18 -0
- package/dist/commands/apps-instances.d.ts.map +1 -0
- package/dist/commands/apps-instances.js +87 -0
- package/dist/commands/apps-instances.js.map +1 -0
- package/dist/commands/apps-observability.d.ts +15 -0
- package/dist/commands/apps-observability.d.ts.map +1 -0
- package/dist/commands/apps-observability.js +310 -0
- package/dist/commands/apps-observability.js.map +1 -0
- package/dist/commands/apps-promote.d.ts +31 -0
- package/dist/commands/apps-promote.d.ts.map +1 -0
- package/dist/commands/apps-promote.js +115 -0
- package/dist/commands/apps-promote.js.map +1 -0
- package/dist/commands/apps-resources.d.ts +6 -0
- package/dist/commands/apps-resources.d.ts.map +1 -0
- package/dist/commands/apps-resources.js +107 -0
- package/dist/commands/apps-resources.js.map +1 -0
- package/dist/commands/apps.d.ts +118 -2
- package/dist/commands/apps.d.ts.map +1 -1
- package/dist/commands/apps.js +999 -110
- package/dist/commands/apps.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +7 -3
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/delete.d.ts.map +1 -1
- package/dist/commands/delete.js +10 -2
- package/dist/commands/delete.js.map +1 -1
- package/dist/commands/deploy.js +3 -3
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/init.js +15 -15
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +78 -33
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.d.ts.map +1 -1
- package/dist/commands/logout.js +37 -5
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/mcp.d.ts +13 -0
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +184 -77
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/projects.d.ts.map +1 -1
- package/dist/commands/projects.js +107 -11
- package/dist/commands/projects.js.map +1 -1
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/finite-source-command-client.d.ts +3 -0
- package/dist/lib/finite-source-command-client.d.ts.map +1 -0
- package/dist/lib/finite-source-command-client.js +3 -0
- package/dist/lib/finite-source-command-client.js.map +1 -0
- package/dist/lib/mcp-io.d.ts +23 -0
- package/dist/lib/mcp-io.d.ts.map +1 -0
- package/dist/lib/mcp-io.js +185 -0
- package/dist/lib/mcp-io.js.map +1 -0
- package/dist/lib/mcp-source-commands.d.ts +17 -0
- package/dist/lib/mcp-source-commands.d.ts.map +1 -0
- package/dist/lib/mcp-source-commands.js +345 -0
- package/dist/lib/mcp-source-commands.js.map +1 -0
- package/dist/utils/api.d.ts +39 -14
- package/dist/utils/api.d.ts.map +1 -1
- package/dist/utils/api.js +43 -6
- package/dist/utils/api.js.map +1 -1
- package/dist/utils/apps-presentation.d.ts +8 -1
- package/dist/utils/apps-presentation.d.ts.map +1 -1
- package/dist/utils/apps-presentation.js +35 -1
- package/dist/utils/apps-presentation.js.map +1 -1
- package/dist/utils/auth.d.ts +21 -1
- package/dist/utils/auth.d.ts.map +1 -1
- package/dist/utils/auth.js +119 -22
- package/dist/utils/auth.js.map +1 -1
- package/dist/utils/browser.d.ts +12 -0
- package/dist/utils/browser.d.ts.map +1 -1
- package/dist/utils/browser.js +37 -16
- package/dist/utils/browser.js.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +41 -0
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/msys-path.d.ts +14 -0
- package/dist/utils/msys-path.d.ts.map +1 -0
- package/dist/utils/msys-path.js +55 -0
- package/dist/utils/msys-path.js.map +1 -0
- package/dist/utils/package-metadata.js +1 -1
- package/dist/utils/project-context.d.ts.map +1 -1
- package/dist/utils/project-context.js +7 -5
- package/dist/utils/project-context.js.map +1 -1
- package/dist/utils/project-lookup.d.ts +10 -0
- package/dist/utils/project-lookup.d.ts.map +1 -0
- package/dist/utils/project-lookup.js +52 -0
- package/dist/utils/project-lookup.js.map +1 -0
- package/dist/utils/source-pack.d.ts +24 -0
- package/dist/utils/source-pack.d.ts.map +1 -0
- package/dist/utils/source-pack.js +63 -0
- package/dist/utils/source-pack.js.map +1 -0
- package/package.json +26 -26
- package/skill/SKILL.md +73 -67
package/dist/commands/mcp.js
CHANGED
|
@@ -12,14 +12,16 @@
|
|
|
12
12
|
* Register (Claude Code): claude mcp add inquir -- inquir mcp
|
|
13
13
|
*/
|
|
14
14
|
import path from 'node:path';
|
|
15
|
-
import
|
|
16
|
-
import { createZipBase64, rawRequest } from '@inquir/compute';
|
|
15
|
+
import { createZipBase64, rawRequest, createClient, getMe, listRemoteFunctions as listFunctionsWithClient, resolveRemoteFunction as resolveFunctionWithClient } from '@inquir/compute';
|
|
17
16
|
import { createApiClient, createRemoteFunction, getDeployStatus, invokeRemote, listRemoteFunctions, listRemoteInvocations, queueDeploy, resolveRemoteFunction, rollbackDeploy, updateRemoteFunction, } from '../utils/api.js';
|
|
18
17
|
import { buildApiOptions } from '../utils/context.js';
|
|
19
18
|
import { isTerminalDeployStatus } from '../sdk.js';
|
|
20
19
|
import { detectApp } from '../utils/detect.js';
|
|
21
|
-
import { hasFlag } from '../utils/args.js';
|
|
20
|
+
import { hasFlag, readFlagValue } from '../utils/args.js';
|
|
22
21
|
import { printCommandHelp } from '../utils/output.js';
|
|
22
|
+
import { redact } from '../utils/redact.js';
|
|
23
|
+
import { createMcpSourceCommands } from '../lib/mcp-source-commands.js';
|
|
24
|
+
import { boundedMcpFetch, createMcpWriter, readMcpLines, MCP_FRAME_BYTES } from '../lib/mcp-io.js';
|
|
23
25
|
const PROTOCOL_VERSION = '2024-11-05';
|
|
24
26
|
const SERVER_INFO = { name: 'inquir', version: '0.1.0' };
|
|
25
27
|
/** Wait for a queued deploy to reach a terminal status (poll, no SSE). */
|
|
@@ -104,9 +106,9 @@ const TOOLS = [
|
|
|
104
106
|
},
|
|
105
107
|
{
|
|
106
108
|
name: 'exec',
|
|
107
|
-
description: '
|
|
108
|
-
'
|
|
109
|
-
'
|
|
109
|
+
description: 'Submit a command against a private snapshot of function source (default target). Source requires a caller-retained UUID requestId; ' +
|
|
110
|
+
'returns asynchronous execution identity. Observe with source_command_status and explicitly publish with source_command_reconcile. ' +
|
|
111
|
+
'Unavailable finite execution never falls back to writable source mounts. target "release" executes against the deployed release read-only.',
|
|
110
112
|
inputSchema: {
|
|
111
113
|
type: 'object',
|
|
112
114
|
properties: {
|
|
@@ -114,20 +116,52 @@ const TOOLS = [
|
|
|
114
116
|
command: { type: 'string', description: 'Shell command (sh -c)' },
|
|
115
117
|
timeoutMs: { type: 'number', description: 'Timeout in ms (default 60000, max 900000)' },
|
|
116
118
|
target: { type: 'string', enum: ['source', 'release'] },
|
|
119
|
+
requestId: { type: 'string', format: 'uuid', description: 'Required for source: retain one lowercase UUID v4 per intent before calling; reuse for uncertain replies' },
|
|
120
|
+
env: { type: 'object', additionalProperties: { type: 'string' }, description: 'Source command environment overrides' },
|
|
117
121
|
},
|
|
118
122
|
required: ['function', 'command'],
|
|
123
|
+
anyOf: [{ properties: { target: { const: 'release' } }, required: ['target'] }, { required: ['requestId'] }],
|
|
119
124
|
additionalProperties: false,
|
|
120
125
|
},
|
|
121
|
-
handler: async (args, apiOptions) => {
|
|
122
|
-
|
|
123
|
-
|
|
126
|
+
handler: async (args, apiOptions, context) => {
|
|
127
|
+
if (args.target === undefined || args.target === 'source')
|
|
128
|
+
return context.sources.execute(args, context.id, context.signal);
|
|
129
|
+
if (args.target !== 'release')
|
|
130
|
+
throw new Error('Invalid exec target');
|
|
131
|
+
if (args.env !== undefined || args.requestId !== undefined)
|
|
132
|
+
throw new Error('env and requestId apply only to source commands');
|
|
133
|
+
const resolved = await createApiClient(apiOptions), identity = await getMe(resolved);
|
|
134
|
+
const client = createClient({ baseUrl: resolved.baseUrl, apiKey: resolved.apiKey,
|
|
135
|
+
workspaceId: identity.activeWorkspace.id, fetchImpl: resolved.fetchImpl });
|
|
136
|
+
const identifier = String(args.function), functions = await listFunctionsWithClient(client);
|
|
137
|
+
const fn = functions.find(item => item.id === identifier) ?? await resolveFunctionWithClient(client, identifier);
|
|
124
138
|
return rawRequest(client, 'POST', `/functions/${fn.id}/exec`, {
|
|
125
139
|
command: String(args.command),
|
|
126
140
|
...(typeof args.timeoutMs === 'number' ? { timeoutMs: args.timeoutMs } : {}),
|
|
127
|
-
|
|
141
|
+
target: 'release',
|
|
128
142
|
});
|
|
129
143
|
},
|
|
130
144
|
},
|
|
145
|
+
...['status', 'reconcile', 'cancel'].map(action => ({
|
|
146
|
+
name: `source_command_${action}`,
|
|
147
|
+
description: action === 'status' ? 'Read retained source command state/output. Optional waitMs polls GET only; stopping observation does not cancel execution.'
|
|
148
|
+
: action === 'reconcile' ? 'Explicitly reconcile retained output with its original source snapshot. Returns APPLIED, CONFLICT or output refusal; never re-executes the command.'
|
|
149
|
+
: 'Request durable cancellation of a retained source command. CANCEL_REQUESTED is intent, not stopped execution or released capacity; publication may already be committed.',
|
|
150
|
+
inputSchema: { type: 'object', properties: { requestId: { type: 'string', format: 'uuid' },
|
|
151
|
+
...(action === 'status' ? { waitMs: { type: 'integer', minimum: 0, maximum: 900000 } } : {}) }, required: ['requestId'], additionalProperties: false },
|
|
152
|
+
handler: async (args, _apiOptions, context) => context.sources.action(action, args, context.signal),
|
|
153
|
+
})),
|
|
154
|
+
{
|
|
155
|
+
name: 'source_command_resume',
|
|
156
|
+
description: 'Resume a locally retained UUID after reconnect/restart. status only observes; submit explicitly retries the SAME saved command, input and UUID after an uncertain submission. Never generates another execution identity.',
|
|
157
|
+
inputSchema: { type: 'object', properties: { requestId: { type: 'string', format: 'uuid' }, action: { type: 'string', enum: ['status', 'submit'] } },
|
|
158
|
+
required: ['requestId', 'action'], additionalProperties: false },
|
|
159
|
+
handler: async (args, _apiOptions, context) => {
|
|
160
|
+
if (Object.keys(args).some(key => !['requestId', 'action'].includes(key)) || !['status', 'submit'].includes(String(args.action)))
|
|
161
|
+
throw new Error('Invalid source resume action');
|
|
162
|
+
return context.sources.action(args.action, { requestId: args.requestId }, context.signal);
|
|
163
|
+
},
|
|
164
|
+
},
|
|
131
165
|
{
|
|
132
166
|
name: 'list_invocations',
|
|
133
167
|
description: 'Recent invocations for a function (status, duration, errors, logs) — the debugging entry point.',
|
|
@@ -181,7 +215,126 @@ function toolResult(value) {
|
|
|
181
215
|
};
|
|
182
216
|
}
|
|
183
217
|
function toolError(message) {
|
|
184
|
-
return { content: [{ type: 'text', text: message }], isError: true };
|
|
218
|
+
return { content: [{ type: 'text', text: redact(message) }], isError: true };
|
|
219
|
+
}
|
|
220
|
+
/** Requests run independently so cancellation notifications and control tools
|
|
221
|
+
* can be consumed while a GET observation or deployment is waiting.
|
|
222
|
+
*/
|
|
223
|
+
export function createMcpDispatcher(apiOptions, options) {
|
|
224
|
+
const sources = options.sources ?? createMcpSourceCommands({ getClient: () => createApiClient(apiOptions), namespace: options.sourceSession });
|
|
225
|
+
const active = new Map();
|
|
226
|
+
let heavy = 0, control = 0, deployment = 0, closed;
|
|
227
|
+
const keyOf = (id) => `${typeof id}:${id}`;
|
|
228
|
+
const close = (error) => { closed ??= error; for (const entry of active.values())
|
|
229
|
+
entry.controller.abort(error); };
|
|
230
|
+
const dispatch = async (line) => {
|
|
231
|
+
if (closed)
|
|
232
|
+
return;
|
|
233
|
+
if (Buffer.byteLength(line) > MCP_FRAME_BYTES) {
|
|
234
|
+
close(new Error('MCP input frame exceeds 64KiB'));
|
|
235
|
+
throw closed;
|
|
236
|
+
}
|
|
237
|
+
let request;
|
|
238
|
+
try {
|
|
239
|
+
request = JSON.parse(line);
|
|
240
|
+
}
|
|
241
|
+
catch {
|
|
242
|
+
await options.write({ jsonrpc: '2.0', id: null, error: { code: -32700, message: 'Parse error' } });
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
if (!request || request.jsonrpc !== '2.0' || typeof request.method !== 'string'
|
|
246
|
+
|| request.id !== undefined && request.id !== null && (typeof request.id !== 'string' && typeof request.id !== 'number' || typeof request.id === 'number' && !Number.isSafeInteger(request.id))) {
|
|
247
|
+
await options.write({ jsonrpc: '2.0', id: null, error: { code: -32600, message: 'Invalid request' } });
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
const { id, method, params } = request;
|
|
251
|
+
if (method === 'notifications/cancelled') {
|
|
252
|
+
const cancelledId = params?.requestId;
|
|
253
|
+
if (typeof cancelledId === 'string' || typeof cancelledId === 'number')
|
|
254
|
+
active.get(keyOf(cancelledId))?.controller.abort(new Error('MCP observation cancelled'));
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
if (id === undefined || id === null)
|
|
258
|
+
return; // Notifications cannot execute tools.
|
|
259
|
+
const key = keyOf(id), body = JSON.stringify(request), existing = active.get(key);
|
|
260
|
+
if (existing) {
|
|
261
|
+
if (existing.body !== body)
|
|
262
|
+
await options.write({ jsonrpc: '2.0', id, error: { code: -32600, message: 'An active request ID cannot identify different input' } });
|
|
263
|
+
// The original accepted request owns its response; duplicates add no waiters.
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
const respond = (result) => options.write({ jsonrpc: '2.0', id, result });
|
|
267
|
+
// Protocol controls bypass work admission; output still has bounded backpressure.
|
|
268
|
+
if (method === 'initialize') {
|
|
269
|
+
await respond({ protocolVersion: PROTOCOL_VERSION, capabilities: { tools: {} }, serverInfo: SERVER_INFO });
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
if (method === 'ping') {
|
|
273
|
+
await respond({});
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
if (method === 'tools/list') {
|
|
277
|
+
await respond({ tools: TOOLS.map(({ name, description, inputSchema }) => ({ name, description, inputSchema })) });
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
280
|
+
if (method !== 'tools/call') {
|
|
281
|
+
await options.write({ jsonrpc: '2.0', id, error: { code: -32601, message: `Method not found: ${method}` } });
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
const tool = TOOLS.find(item => item.name === String(params?.name ?? ''));
|
|
285
|
+
if (!tool) {
|
|
286
|
+
await respond(toolError(`Unknown tool: ${String(params?.name ?? '')}`));
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
const args = params?.arguments ?? {};
|
|
290
|
+
if (!args || typeof args !== 'object' || Array.isArray(args)) {
|
|
291
|
+
await respond(toolError('Tool arguments must be an object'));
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
const isControl = tool.name.startsWith('source_command_') || tool.name === 'deploy_status';
|
|
295
|
+
const isDeployment = tool.name === 'deploy' || tool.name === 'rollback';
|
|
296
|
+
if (isControl ? control >= 2 : heavy >= 4 || isDeployment && deployment >= 1) {
|
|
297
|
+
await respond(toolError('MCP work limit reached; retain the same source UUID and retry after active work finishes'));
|
|
298
|
+
return;
|
|
299
|
+
}
|
|
300
|
+
if (isControl)
|
|
301
|
+
control++;
|
|
302
|
+
else
|
|
303
|
+
heavy++;
|
|
304
|
+
if (isDeployment)
|
|
305
|
+
deployment++;
|
|
306
|
+
const controller = new AbortController();
|
|
307
|
+
const work = Promise.resolve().then(async () => {
|
|
308
|
+
try {
|
|
309
|
+
controller.signal.throwIfAborted();
|
|
310
|
+
const scopedOptions = { ...apiOptions, fetchImpl: boundedMcpFetch(apiOptions.fetchImpl ?? fetch, controller.signal) };
|
|
311
|
+
try {
|
|
312
|
+
await respond(toolResult(await tool.handler(args, scopedOptions, { id, signal: controller.signal, sources })));
|
|
313
|
+
}
|
|
314
|
+
catch (error) {
|
|
315
|
+
await respond(toolError(error instanceof Error ? error.message : 'Tool failed'));
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
catch (error) {
|
|
319
|
+
await options.write({ jsonrpc: '2.0', id, error: { code: -32603, message: redact(error instanceof Error ? error.message : 'Internal error') } });
|
|
320
|
+
}
|
|
321
|
+
});
|
|
322
|
+
active.set(key, { body, controller, work });
|
|
323
|
+
try {
|
|
324
|
+
await work;
|
|
325
|
+
}
|
|
326
|
+
finally {
|
|
327
|
+
if (active.get(key)?.work === work)
|
|
328
|
+
active.delete(key);
|
|
329
|
+
if (isControl)
|
|
330
|
+
control--;
|
|
331
|
+
else
|
|
332
|
+
heavy--;
|
|
333
|
+
if (isDeployment)
|
|
334
|
+
deployment--;
|
|
335
|
+
}
|
|
336
|
+
};
|
|
337
|
+
return Object.assign(dispatch, { close, async drain() { await Promise.allSettled(Array.from(active.values(), entry => entry.work)); } });
|
|
185
338
|
}
|
|
186
339
|
export async function mcpCommand(args) {
|
|
187
340
|
if (hasFlag(args, '--help') || hasFlag(args, '-h')) {
|
|
@@ -194,75 +347,29 @@ export async function mcpCommand(args) {
|
|
|
194
347
|
]);
|
|
195
348
|
return;
|
|
196
349
|
}
|
|
197
|
-
|
|
198
|
-
const
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
try {
|
|
208
|
-
request = JSON.parse(trimmed);
|
|
209
|
-
}
|
|
210
|
-
catch {
|
|
211
|
-
write({ jsonrpc: '2.0', id: null, error: { code: -32700, message: 'Parse error' } });
|
|
212
|
-
continue;
|
|
350
|
+
let dispatch;
|
|
351
|
+
const writer = createMcpWriter(process.stdout, error => { dispatch?.close(error); process.stdin.destroy(); });
|
|
352
|
+
dispatch = createMcpDispatcher(buildApiOptions(args), { write: writer.write, sourceSession: readFlagValue(args, '--source-session') });
|
|
353
|
+
try {
|
|
354
|
+
for await (const line of readMcpLines(process.stdin)) {
|
|
355
|
+
const trimmed = line.trim();
|
|
356
|
+
if (!trimmed)
|
|
357
|
+
continue;
|
|
358
|
+
// Admission and writer bounds own outstanding work; no unbounded pending set.
|
|
359
|
+
void dispatch(trimmed).catch(error => { dispatch?.close(error instanceof Error ? error : new Error('MCP transport failed')); process.stdin.destroy(); });
|
|
213
360
|
}
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
if (id !== undefined && id !== null)
|
|
222
|
-
write({ jsonrpc: '2.0', id, error: { code, message } });
|
|
223
|
-
};
|
|
361
|
+
}
|
|
362
|
+
catch (error) {
|
|
363
|
+
dispatch.close(error instanceof Error ? error : new Error('MCP input failed'));
|
|
364
|
+
}
|
|
365
|
+
finally {
|
|
366
|
+
dispatch.close(new Error('MCP input ended; observation stopped, execution is not cancelled'));
|
|
367
|
+
await dispatch.drain();
|
|
224
368
|
try {
|
|
225
|
-
|
|
226
|
-
case 'initialize':
|
|
227
|
-
respond({
|
|
228
|
-
protocolVersion: PROTOCOL_VERSION,
|
|
229
|
-
capabilities: { tools: {} },
|
|
230
|
-
serverInfo: SERVER_INFO,
|
|
231
|
-
});
|
|
232
|
-
break;
|
|
233
|
-
case 'notifications/initialized':
|
|
234
|
-
case 'notifications/cancelled':
|
|
235
|
-
break;
|
|
236
|
-
case 'ping':
|
|
237
|
-
respond({});
|
|
238
|
-
break;
|
|
239
|
-
case 'tools/list':
|
|
240
|
-
respond({
|
|
241
|
-
tools: TOOLS.map(({ name, description, inputSchema }) => ({ name, description, inputSchema })),
|
|
242
|
-
});
|
|
243
|
-
break;
|
|
244
|
-
case 'tools/call': {
|
|
245
|
-
const toolName = String(params?.name ?? '');
|
|
246
|
-
const tool = TOOLS.find((t) => t.name === toolName);
|
|
247
|
-
if (!tool) {
|
|
248
|
-
respond(toolError(`Unknown tool: ${toolName}`));
|
|
249
|
-
break;
|
|
250
|
-
}
|
|
251
|
-
const toolArgs = (params?.arguments ?? {});
|
|
252
|
-
try {
|
|
253
|
-
respond(toolResult(await tool.handler(toolArgs, apiOptions)));
|
|
254
|
-
}
|
|
255
|
-
catch (err) {
|
|
256
|
-
respond(toolError(err instanceof Error ? err.message : String(err)));
|
|
257
|
-
}
|
|
258
|
-
break;
|
|
259
|
-
}
|
|
260
|
-
default:
|
|
261
|
-
respondError(-32601, `Method not found: ${method}`);
|
|
262
|
-
}
|
|
369
|
+
await writer.flush();
|
|
263
370
|
}
|
|
264
|
-
|
|
265
|
-
|
|
371
|
+
finally {
|
|
372
|
+
writer.dispose();
|
|
266
373
|
}
|
|
267
374
|
}
|
|
268
375
|
}
|
package/dist/commands/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"AAyBA,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoLnE"}
|
|
@@ -1,27 +1,37 @@
|
|
|
1
|
-
import { addProjectResource, createProject, getProject, listProjects, requireAuth, resolveApplication, } from '../utils/api.js';
|
|
1
|
+
import { addProjectResource, createProject, getProject, listProjects, removeProjectResource, requireAuth, resolveApplication, } from '../utils/api.js';
|
|
2
2
|
import { hasFlag, readFlagValue, readJsonFlag, readLimitFlag, readPositionalArgs } from '../utils/args.js';
|
|
3
3
|
import { buildApiOptions } from '../utils/context.js';
|
|
4
|
-
import { usageError } from '../utils/errors.js';
|
|
5
|
-
import { formatTable, printCommandHelp, printLine } from '../utils/output.js';
|
|
4
|
+
import { CliError, ExitCode, usageError } from '../utils/errors.js';
|
|
5
|
+
import { dim, formatTable, printCommandHelp, printLine } from '../utils/output.js';
|
|
6
6
|
import { readProjectSelection, resolveProjectContext, writeProjectSelection } from '../utils/project-context.js';
|
|
7
|
+
import { isNotFound, resolveProject } from '../utils/project-lookup.js';
|
|
7
8
|
const VALUE_FLAGS = ['--slug', '--description', '--limit', '--cursor'];
|
|
9
|
+
/** Names for a membership list; an id stays when its project cannot be read. */
|
|
10
|
+
async function projectNames(ids, apiOptions) {
|
|
11
|
+
return Promise.all(ids.map((id) => getProject(id, apiOptions).then((project) => project.name, () => id)));
|
|
12
|
+
}
|
|
8
13
|
export async function projectsCommand(args) {
|
|
9
14
|
const [subcommand, ...positionals] = readPositionalArgs(args, { valueFlags: VALUE_FLAGS });
|
|
10
15
|
if (!subcommand || hasFlag(args, '--help') || hasFlag(args, '-h')) {
|
|
11
16
|
printCommandHelp('projects', 'projects <subcommand> [options]', [
|
|
12
17
|
'list List projects (--limit, --cursor)',
|
|
13
18
|
'create <name> Create a project (--slug, --description)',
|
|
14
|
-
'use <
|
|
19
|
+
'use <project> Select a project for apps created from this directory',
|
|
15
20
|
'use --clear Clear the selection; new apps create their own project',
|
|
16
21
|
'current Show the project selected for this directory',
|
|
17
|
-
'add <project> <app>
|
|
22
|
+
'add <project> <app> File an existing application in one more project',
|
|
23
|
+
'remove <project> <app> Take an application out of a project; it keeps running',
|
|
24
|
+
'move <project> <app> File it in <project> and take it out of every other project',
|
|
18
25
|
'--cwd <path> Directory to select a project for (config root when present)',
|
|
19
26
|
'--json Machine-readable output',
|
|
20
27
|
'',
|
|
28
|
+
'<project> is a project id, slug or unique name; <app> an application id or name.',
|
|
21
29
|
'Projects group long-lived container applications: web services, APIs, databases, and workers.',
|
|
22
30
|
'Serverless functions are managed separately and cannot be added to projects.',
|
|
31
|
+
'Archiving a project in the dashboard also archives all its applications.',
|
|
32
|
+
'Removing or moving an application never archives a project; archive an emptied one in the dashboard.',
|
|
23
33
|
'Selection is local to this directory, API, workspace, and signed-in identity.',
|
|
24
|
-
'apps create --project <
|
|
34
|
+
'apps create --project <project> overrides the selection for one application.',
|
|
25
35
|
'With no selection, apps create creates a project named after the application.',
|
|
26
36
|
], [
|
|
27
37
|
'inquir projects create shop',
|
|
@@ -29,13 +39,17 @@ export async function projectsCommand(args) {
|
|
|
29
39
|
'inquir apps create api --port 3000',
|
|
30
40
|
'inquir apps create db --template postgres --project shop',
|
|
31
41
|
'inquir projects add shop existing-app',
|
|
42
|
+
'inquir projects move shop db',
|
|
43
|
+
'inquir projects remove "Old shop" api',
|
|
32
44
|
]);
|
|
33
45
|
if (!subcommand && !hasFlag(args, '--help') && !hasFlag(args, '-h')) {
|
|
34
46
|
throw usageError('Missing projects subcommand', 'inquir projects list');
|
|
35
47
|
}
|
|
36
48
|
return;
|
|
37
49
|
}
|
|
38
|
-
const counts = {
|
|
50
|
+
const counts = {
|
|
51
|
+
list: 0, create: 1, use: hasFlag(args, '--clear') ? 0 : 1, current: 0, add: 2, remove: 2, move: 2,
|
|
52
|
+
};
|
|
39
53
|
if (!(subcommand in counts))
|
|
40
54
|
throw usageError(`Unknown projects subcommand: ${subcommand}`, 'inquir projects --help');
|
|
41
55
|
if (positionals.length !== counts[subcommand]) {
|
|
@@ -70,10 +84,92 @@ export async function projectsCommand(args) {
|
|
|
70
84
|
return;
|
|
71
85
|
}
|
|
72
86
|
if (subcommand === 'add') {
|
|
73
|
-
const project = await
|
|
87
|
+
const project = await resolveProject(positionals[0], apiOptions);
|
|
74
88
|
const application = await resolveApplication(positionals[1], apiOptions);
|
|
75
89
|
const resource = await addProjectResource(project.id, { kind: 'application', id: application.id }, apiOptions);
|
|
76
|
-
|
|
90
|
+
if (json) {
|
|
91
|
+
printLine(JSON.stringify({ projectId: project.id, resource }, null, 2));
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
printLine(`Added ${application.name} to ${project.name}.`);
|
|
95
|
+
// Membership is many-to-many: adding never takes it out of where it was.
|
|
96
|
+
const elsewhere = (application.projectIds ?? []).filter((id) => id !== project.id);
|
|
97
|
+
if (elsewhere.length > 0) {
|
|
98
|
+
printLine(dim(` it is still in ${(await projectNames(elsewhere, apiOptions)).join(', ')}`));
|
|
99
|
+
printLine(dim(` to keep it only here: inquir projects move ${project.slug} ${application.name}`));
|
|
100
|
+
}
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
if (subcommand === 'remove') {
|
|
104
|
+
const project = await resolveProject(positionals[0], apiOptions);
|
|
105
|
+
const application = await resolveApplication(positionals[1], apiOptions);
|
|
106
|
+
const remaining = (application.projectIds ?? []).filter((id) => id !== project.id);
|
|
107
|
+
try {
|
|
108
|
+
await removeProjectResource(project.id, { kind: 'application', id: application.id }, apiOptions);
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
if (!isNotFound(error))
|
|
112
|
+
throw error;
|
|
113
|
+
throw new CliError(`${application.name} is not in project ${project.name}`, {
|
|
114
|
+
code: 'NOT_A_PROJECT_MEMBER',
|
|
115
|
+
exitCode: ExitCode.ERROR,
|
|
116
|
+
fix: remaining.length > 0
|
|
117
|
+
? `It is in: ${(await projectNames(remaining, apiOptions)).join(', ')}`
|
|
118
|
+
: 'It is in no project.',
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
if (json) {
|
|
122
|
+
printLine(JSON.stringify({
|
|
123
|
+
projectId: project.id,
|
|
124
|
+
removed: { kind: 'application', id: application.id },
|
|
125
|
+
remainingProjectIds: remaining,
|
|
126
|
+
}, null, 2));
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
printLine(`Removed ${application.name} from ${project.name}. It keeps running.`);
|
|
130
|
+
if (remaining.length === 0)
|
|
131
|
+
printLine(dim(` it is in no project now; file it: inquir projects add <project> ${application.name}`));
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
if (subcommand === 'move') {
|
|
135
|
+
const target = await resolveProject(positionals[0], apiOptions);
|
|
136
|
+
const application = await resolveApplication(positionals[1], apiOptions);
|
|
137
|
+
const previousIds = (application.projectIds ?? []).filter((id) => id !== target.id);
|
|
138
|
+
// File it in the target first: a failure part-way leaves it in both
|
|
139
|
+
// projects, never in none.
|
|
140
|
+
const resource = await addProjectResource(target.id, { kind: 'application', id: application.id }, apiOptions);
|
|
141
|
+
const left = [];
|
|
142
|
+
for (const id of previousIds) {
|
|
143
|
+
let previous;
|
|
144
|
+
try {
|
|
145
|
+
previous = await getProject(id, apiOptions);
|
|
146
|
+
await removeProjectResource(previous.id, { kind: 'application', id: application.id }, apiOptions);
|
|
147
|
+
}
|
|
148
|
+
catch (error) {
|
|
149
|
+
// Archived or unfiled meanwhile: already where a move would leave it.
|
|
150
|
+
if (isNotFound(error))
|
|
151
|
+
continue;
|
|
152
|
+
throw error;
|
|
153
|
+
}
|
|
154
|
+
const after = await getProject(previous.id, apiOptions);
|
|
155
|
+
left.push({ id: previous.id, name: previous.name, slug: previous.slug, empty: after.resourceCount === 0 });
|
|
156
|
+
}
|
|
157
|
+
if (json) {
|
|
158
|
+
printLine(JSON.stringify({ projectId: target.id, resource, removedFrom: left }, null, 2));
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
printLine(left.length > 0
|
|
162
|
+
? `Moved ${application.name} to ${target.name}.`
|
|
163
|
+
: `${application.name} is in ${target.name}; it was in no other project.`);
|
|
164
|
+
for (const project of left) {
|
|
165
|
+
printLine(dim(` removed from ${project.name}`));
|
|
166
|
+
// Archiving cascades to members, and the API does not record whether a
|
|
167
|
+
// project was created automatically with an application — so an empty
|
|
168
|
+
// one is reported, never archived here.
|
|
169
|
+
if (project.empty) {
|
|
170
|
+
printLine(dim(` ${project.name} is now empty; if it was only created for ${application.name}, archive it in the dashboard`));
|
|
171
|
+
}
|
|
172
|
+
}
|
|
77
173
|
return;
|
|
78
174
|
}
|
|
79
175
|
const context = await resolveProjectContext(args, apiOptions);
|
|
@@ -84,7 +180,7 @@ export async function projectsCommand(args) {
|
|
|
84
180
|
return;
|
|
85
181
|
}
|
|
86
182
|
// Resolve before persisting: unknown/archived projects must never erase a valid selection.
|
|
87
|
-
const project = await
|
|
183
|
+
const project = await resolveProject(positionals[0], context.apiOptions);
|
|
88
184
|
await writeProjectSelection(context, project.id);
|
|
89
185
|
printLine(json ? JSON.stringify({ project, workspaceId: context.workspaceId }, null, 2) : `Now using project ${project.name} (${project.slug}) for applications created from this directory.`);
|
|
90
186
|
return;
|
|
@@ -93,6 +189,6 @@ export async function projectsCommand(args) {
|
|
|
93
189
|
const project = projectId ? await getProject(projectId, context.apiOptions) : null;
|
|
94
190
|
printLine(json ? JSON.stringify({ project, workspaceId: context.workspaceId }, null, 2) : project
|
|
95
191
|
? `${project.name} (${project.slug}) — ${project.id}`
|
|
96
|
-
: 'No project selected. New applications will create their own project. Select one: inquir projects use <
|
|
192
|
+
: 'No project selected. New applications will create their own project. Select one: inquir projects use <project>');
|
|
97
193
|
}
|
|
98
194
|
//# sourceMappingURL=projects.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,WAAW,EACX,kBAAkB,
|
|
1
|
+
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { adminCommand } from './commands/admin.js';
|
|
2
3
|
import { appsCommand } from './commands/apps.js';
|
|
3
4
|
import { codegenCommand } from './commands/codegen.js';
|
|
4
5
|
import { configCommand } from './commands/config.js';
|
|
@@ -77,6 +78,7 @@ const COMMANDS = {
|
|
|
77
78
|
doctor: doctorCommand,
|
|
78
79
|
config: configCommand,
|
|
79
80
|
upgrade: upgradeCommand,
|
|
81
|
+
admin: adminCommand,
|
|
80
82
|
help: async (args) => {
|
|
81
83
|
const [name] = readPositionalArgs(args);
|
|
82
84
|
if (name && COMMANDS[name] && name !== 'help') {
|
|
@@ -125,7 +127,7 @@ function printHelp() {
|
|
|
125
127
|
printLine(bold('Container services (apps)'));
|
|
126
128
|
printLine(' apps Long-lived containers: any image, HTTP or raw TCP ports');
|
|
127
129
|
printLine(' list | create | deploy | status | logs | promote | rollback | stop | exec');
|
|
128
|
-
printLine(' projects Group applications: list | create | use | current | add');
|
|
130
|
+
printLine(' projects Group applications: list | create | use | current | add | remove | move');
|
|
129
131
|
printLine('');
|
|
130
132
|
printLine(bold('Diagnostics & config'));
|
|
131
133
|
printLine(' doctor Diagnose environment, credentials, and connectivity');
|
|
@@ -134,6 +136,12 @@ function printHelp() {
|
|
|
134
136
|
printLine(' mcp Run an MCP server over stdio for coding agents');
|
|
135
137
|
printLine(' help Show help for a command (inquir help <command>)');
|
|
136
138
|
printLine('');
|
|
139
|
+
printLine(bold('Platform operators'));
|
|
140
|
+
printLine(' admin Control-plane cluster: admin cluster status | hold | release | move | host register | grant | revoke;');
|
|
141
|
+
printLine(' replicas: admin allocations relocate <allocationId> | relocation <operationId>');
|
|
142
|
+
printLine(' tenants: admin tenants migrate-fabric <tenantId>|--batch | migrations | migration <id>; admin containerd-tenants');
|
|
143
|
+
printLine(' (needs INQUIR_ADMIN_TOKEN)');
|
|
144
|
+
printLine('');
|
|
137
145
|
printLine(bold('Global flags'));
|
|
138
146
|
printLine(' --json Machine-readable output (implies no color)');
|
|
139
147
|
printLine(' --debug Verbose diagnostics and stack traces');
|