@llm-dev-ops/agentics-cli 1.0.1 → 1.1.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 (52) hide show
  1. package/README.md +66 -16
  2. package/dist/cli/index.js +88 -24
  3. package/dist/cli/index.js.map +1 -1
  4. package/dist/commands/deploy.d.ts +2 -2
  5. package/dist/commands/deploy.d.ts.map +1 -1
  6. package/dist/commands/deploy.js +13 -3
  7. package/dist/commands/deploy.js.map +1 -1
  8. package/dist/commands/diligence.d.ts +2 -2
  9. package/dist/commands/diligence.d.ts.map +1 -1
  10. package/dist/commands/diligence.js +13 -3
  11. package/dist/commands/diligence.js.map +1 -1
  12. package/dist/commands/export.d.ts +2 -2
  13. package/dist/commands/export.d.ts.map +1 -1
  14. package/dist/commands/export.js +13 -3
  15. package/dist/commands/export.js.map +1 -1
  16. package/dist/commands/index.d.ts +2 -0
  17. package/dist/commands/index.d.ts.map +1 -1
  18. package/dist/commands/index.js +1 -0
  19. package/dist/commands/index.js.map +1 -1
  20. package/dist/commands/inspect.d.ts +2 -2
  21. package/dist/commands/inspect.d.ts.map +1 -1
  22. package/dist/commands/inspect.js +13 -3
  23. package/dist/commands/inspect.js.map +1 -1
  24. package/dist/commands/login.d.ts +30 -0
  25. package/dist/commands/login.d.ts.map +1 -0
  26. package/dist/commands/login.js +261 -0
  27. package/dist/commands/login.js.map +1 -0
  28. package/dist/commands/quantify.d.ts +2 -2
  29. package/dist/commands/quantify.d.ts.map +1 -1
  30. package/dist/commands/quantify.js +13 -3
  31. package/dist/commands/quantify.js.map +1 -1
  32. package/dist/commands/simulate.d.ts +2 -2
  33. package/dist/commands/simulate.d.ts.map +1 -1
  34. package/dist/commands/simulate.js +13 -3
  35. package/dist/commands/simulate.js.map +1 -1
  36. package/dist/modules/command-parser.d.ts +1 -1
  37. package/dist/modules/command-parser.d.ts.map +1 -1
  38. package/dist/modules/command-parser.js +1 -0
  39. package/dist/modules/command-parser.js.map +1 -1
  40. package/dist/types/index.d.ts +40 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/types/index.js +50 -0
  43. package/dist/types/index.js.map +1 -1
  44. package/dist/utils/credentials.d.ts +36 -0
  45. package/dist/utils/credentials.d.ts.map +1 -0
  46. package/dist/utils/credentials.js +104 -0
  47. package/dist/utils/credentials.js.map +1 -0
  48. package/dist/utils/index.d.ts +8 -0
  49. package/dist/utils/index.d.ts.map +1 -0
  50. package/dist/utils/index.js +7 -0
  51. package/dist/utils/index.js.map +1 -0
  52. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * Re-exports all command implementations
5
5
  */
6
+ export { executeLoginCommand } from './login.js';
7
+ export type { LoginCommandInput, LoginCommandResult } from './login.js';
6
8
  export { executePlanCommand } from './plan.js';
7
9
  export type { PlanCommandInput, PlanCommandResult } from './plan.js';
8
10
  export { executeSimulateCommand } from './simulate.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAErE,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAErE,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * Re-exports all command implementations
5
5
  */
6
+ export { executeLoginCommand } from './login.js';
6
7
  export { executePlanCommand } from './plan.js';
7
8
  export { executeSimulateCommand } from './simulate.js';
8
9
  export { executeInspectCommand } from './inspect.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -12,9 +12,9 @@
12
12
  * PURPOSE: Retrieve deterministic simulation outputs from completed simulations
13
13
  * The CLI does NOT interpret or transform outputs - passthrough only
14
14
  */
15
- import type { CommandOptions, SimulationOutputReference, SimulationReference, SimulationOutputType } from '../types/index.js';
15
+ import type { CommandOptions, SimulationOutputReference, SimulationReference, SimulationOutputType, FlexibleInput } from '../types/index.js';
16
16
  export interface InspectCommandInput {
17
- simRef: SimulationReference;
17
+ simRef: FlexibleInput<SimulationReference>;
18
18
  outputType?: SimulationOutputType;
19
19
  }
20
20
  export interface InspectCommandResult {
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAe3B,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,yBAAyB,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,oBAAoB,CAAC,CAqF/B"}
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,yBAAyB,EACzB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAgB3B,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,yBAAyB,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,oBAAoB,CAAC,CA8F/B"}
@@ -12,6 +12,7 @@
12
12
  * PURPOSE: Retrieve deterministic simulation outputs from completed simulations
13
13
  * The CLI does NOT interpret or transform outputs - passthrough only
14
14
  */
15
+ import { isNaturalLanguage } from '../types/index.js';
15
16
  import { SimulationEngineAdapter } from '../adapters/base-adapter.js';
16
17
  import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
17
18
  import { createArtifactHandoff } from '../modules/artifact-handoff.js';
@@ -42,7 +43,10 @@ export async function executeInspectCommand(input, options) {
42
43
  endpoint: '/api/v1/outputs/retrieve',
43
44
  method: 'POST',
44
45
  buildBody: () => ({
45
- sim_ref: handoff.passthrough(input.simRef),
46
+ // Pass natural language input or structured reference unchanged
47
+ sim_ref: isNaturalLanguage(input.simRef)
48
+ ? { natural_language: input.simRef.description }
49
+ : handoff.passthrough(input.simRef),
46
50
  output_type: outputType,
47
51
  }),
48
52
  },
@@ -59,9 +63,12 @@ export async function executeInspectCommand(input, options) {
59
63
  const outputStage = result.stages.find(s => s.name === 'retrieve-output');
60
64
  const outputRef = handoff.extractReference(outputStage?.response);
61
65
  // Record audit entry
66
+ const simRefId = isNaturalLanguage(input.simRef)
67
+ ? `nl:${input.simRef.description.slice(0, 50)}`
68
+ : input.simRef.id;
62
69
  audit.record({
63
70
  command: 'inspect',
64
- inputs: { simRef: input.simRef.id, outputType },
71
+ inputs: { simRef: simRefId, outputType },
65
72
  outputs: outputRef,
66
73
  dependencies: [
67
74
  { service: 'agentics-simulation-engine', method: 'retrieve', timestamp: new Date().toISOString(), duration_ms: result.timing.total, success: true },
@@ -77,9 +84,12 @@ export async function executeInspectCommand(input, options) {
77
84
  }
78
85
  catch (error) {
79
86
  // Record failure in audit
87
+ const failedSimRefId = isNaturalLanguage(input.simRef)
88
+ ? `nl:${input.simRef.description.slice(0, 50)}`
89
+ : input.simRef.id;
80
90
  audit.record({
81
91
  command: 'inspect',
82
- inputs: { simRef: input.simRef.id, outputType },
92
+ inputs: { simRef: failedSimRefId, outputType },
83
93
  outputs: null,
84
94
  dependencies: [],
85
95
  duration_ms: Date.now() - startTime,
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Login Command (agentics login)
3
+ *
4
+ * SPARC Architecture Reference: CLI Authentication
5
+ *
6
+ * PURPOSE: Initiate CLI authentication flow via device code grant
7
+ *
8
+ * WORKFLOW:
9
+ * 1. Create CLI authentication session with platform API
10
+ * 2. Display verification URL and user code
11
+ * 3. Optionally open URL in user's browser
12
+ * 4. Poll platform API until authorization completes
13
+ * 5. Securely store resulting API key locally
14
+ *
15
+ * FORBIDDEN:
16
+ * - Storing credentials in plaintext in code
17
+ * - Logging credential values
18
+ * - Bypassing the authorization flow
19
+ */
20
+ import type { CommandOptions } from '../types/index.js';
21
+ export interface LoginCommandInput {
22
+ noBrowser?: boolean;
23
+ }
24
+ export interface LoginCommandResult {
25
+ success: boolean;
26
+ message: string;
27
+ credentialsPath?: string;
28
+ }
29
+ export declare function executeLoginCommand(input: LoginCommandInput, options: CommandOptions): Promise<LoginCommandResult>;
30
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAkC,MAAM,mBAAmB,CAAC;AAQxF,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAgBD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,kBAAkB,CAAC,CA8D7B"}
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Login Command (agentics login)
3
+ *
4
+ * SPARC Architecture Reference: CLI Authentication
5
+ *
6
+ * PURPOSE: Initiate CLI authentication flow via device code grant
7
+ *
8
+ * WORKFLOW:
9
+ * 1. Create CLI authentication session with platform API
10
+ * 2. Display verification URL and user code
11
+ * 3. Optionally open URL in user's browser
12
+ * 4. Poll platform API until authorization completes
13
+ * 5. Securely store resulting API key locally
14
+ *
15
+ * FORBIDDEN:
16
+ * - Storing credentials in plaintext in code
17
+ * - Logging credential values
18
+ * - Bypassing the authorization flow
19
+ */
20
+ import { AuthError } from '../errors/index.js';
21
+ import { createCredentialStore } from '../utils/credentials.js';
22
+ // ============================================================================
23
+ // Configuration
24
+ // ============================================================================
25
+ const PLATFORM_URL = process.env['AGENTICS_PLATFORM_URL'] ?? 'https://platform.agentics.org';
26
+ const AUTH_SESSION_ENDPOINT = '/api/v1/cli/auth/session';
27
+ const AUTH_TOKEN_ENDPOINT = '/api/v1/cli/auth/token';
28
+ const DEFAULT_POLL_INTERVAL = 5000; // 5 seconds
29
+ const MAX_POLL_ATTEMPTS = 120; // 10 minutes max (120 * 5s)
30
+ // ============================================================================
31
+ // Login Command Implementation
32
+ // ============================================================================
33
+ export async function executeLoginCommand(input, options) {
34
+ const correlationId = options.trace_id ?? crypto.randomUUID();
35
+ const credentialStore = createCredentialStore();
36
+ // Check if already authenticated
37
+ const existingCredentials = await credentialStore.load();
38
+ if (existingCredentials) {
39
+ if (options.verbose) {
40
+ console.error('Existing credentials found. Re-authenticating...');
41
+ }
42
+ }
43
+ // Step 1: Create CLI auth session
44
+ if (options.verbose) {
45
+ console.error('Creating authentication session...');
46
+ }
47
+ const session = await createAuthSession(correlationId, options);
48
+ // Step 2: Display verification URL and user code
49
+ console.log('');
50
+ console.log('To authenticate, visit:');
51
+ console.log(` ${session.verification_url}`);
52
+ console.log('');
53
+ console.log(`Your verification code: ${session.user_code}`);
54
+ console.log('');
55
+ // Step 3: Optionally open URL in browser
56
+ if (!input.noBrowser) {
57
+ await openBrowser(session.verification_url, options);
58
+ }
59
+ // Step 4: Poll for authorization completion
60
+ console.log('Waiting for authorization...');
61
+ console.log('(Press Ctrl+C to cancel)');
62
+ console.log('');
63
+ const tokenResponse = await pollForAuthorization(session.session_id, session.interval ?? DEFAULT_POLL_INTERVAL, session.expires_at, correlationId, options);
64
+ // Step 5: Store credentials securely
65
+ await credentialStore.save({
66
+ api_key: tokenResponse.api_key,
67
+ created_at: new Date().toISOString(),
68
+ expires_at: tokenResponse.expires_at,
69
+ });
70
+ const credentialsPath = credentialStore.getCredentialsPath?.() ?? '~/.agentics/credentials.json';
71
+ console.log('Authentication successful!');
72
+ console.log(`API key stored at: ${credentialsPath}`);
73
+ return {
74
+ success: true,
75
+ message: 'Authentication successful',
76
+ credentialsPath,
77
+ };
78
+ }
79
+ // ============================================================================
80
+ // Helper Functions
81
+ // ============================================================================
82
+ async function createAuthSession(correlationId, options) {
83
+ const url = `${PLATFORM_URL}${AUTH_SESSION_ENDPOINT}`;
84
+ try {
85
+ const controller = new AbortController();
86
+ const timeoutId = setTimeout(() => controller.abort(), options.timeout ?? 30000);
87
+ const response = await fetch(url, {
88
+ method: 'POST',
89
+ headers: {
90
+ 'Content-Type': 'application/json',
91
+ 'X-Correlation-ID': correlationId,
92
+ 'User-Agent': 'agentics-cli/1.0.0',
93
+ },
94
+ body: JSON.stringify({
95
+ client_type: 'cli',
96
+ }),
97
+ signal: controller.signal,
98
+ });
99
+ clearTimeout(timeoutId);
100
+ if (!response.ok) {
101
+ const errorBody = await response.text().catch(() => 'Unknown error');
102
+ throw new AuthError({
103
+ type: 'invalid',
104
+ message: `Failed to create authentication session: ${response.status} ${errorBody}`,
105
+ correlationId,
106
+ });
107
+ }
108
+ const data = await response.json();
109
+ // Validate response structure
110
+ if (!data.session_id || !data.verification_url || !data.user_code) {
111
+ throw new AuthError({
112
+ type: 'invalid',
113
+ message: 'Invalid authentication session response from server',
114
+ correlationId,
115
+ });
116
+ }
117
+ return data;
118
+ }
119
+ catch (error) {
120
+ if (error instanceof AuthError) {
121
+ throw error;
122
+ }
123
+ if (error instanceof Error && error.name === 'AbortError') {
124
+ throw new AuthError({
125
+ type: 'invalid',
126
+ message: 'Authentication session request timed out',
127
+ correlationId,
128
+ });
129
+ }
130
+ throw new AuthError({
131
+ type: 'invalid',
132
+ message: `Failed to connect to authentication server: ${error instanceof Error ? error.message : 'Unknown error'}`,
133
+ correlationId,
134
+ });
135
+ }
136
+ }
137
+ async function pollForAuthorization(sessionId, interval, expiresAt, correlationId, options) {
138
+ const url = `${PLATFORM_URL}${AUTH_TOKEN_ENDPOINT}`;
139
+ const expirationTime = new Date(expiresAt).getTime();
140
+ let attempts = 0;
141
+ while (attempts < MAX_POLL_ATTEMPTS) {
142
+ // Check if session has expired
143
+ if (Date.now() >= expirationTime) {
144
+ throw new AuthError({
145
+ type: 'expired',
146
+ message: 'Authentication session expired. Please try again.',
147
+ correlationId,
148
+ });
149
+ }
150
+ // Wait before polling
151
+ await sleep(interval);
152
+ attempts++;
153
+ try {
154
+ const controller = new AbortController();
155
+ const timeoutId = setTimeout(() => controller.abort(), options.timeout ?? 30000);
156
+ const response = await fetch(url, {
157
+ method: 'POST',
158
+ headers: {
159
+ 'Content-Type': 'application/json',
160
+ 'X-Correlation-ID': correlationId,
161
+ 'User-Agent': 'agentics-cli/1.0.0',
162
+ },
163
+ body: JSON.stringify({
164
+ session_id: sessionId,
165
+ }),
166
+ signal: controller.signal,
167
+ });
168
+ clearTimeout(timeoutId);
169
+ if (response.status === 202) {
170
+ // Authorization pending, continue polling
171
+ if (options.verbose) {
172
+ process.stderr.write('.');
173
+ }
174
+ continue;
175
+ }
176
+ if (response.status === 403) {
177
+ throw new AuthError({
178
+ type: 'insufficient',
179
+ message: 'Authorization denied by user',
180
+ correlationId,
181
+ });
182
+ }
183
+ if (!response.ok) {
184
+ const errorBody = await response.text().catch(() => 'Unknown error');
185
+ throw new AuthError({
186
+ type: 'invalid',
187
+ message: `Authorization check failed: ${response.status} ${errorBody}`,
188
+ correlationId,
189
+ });
190
+ }
191
+ // Success - parse token response
192
+ const data = await response.json();
193
+ if (!data.api_key) {
194
+ throw new AuthError({
195
+ type: 'invalid',
196
+ message: 'Invalid token response from server',
197
+ correlationId,
198
+ });
199
+ }
200
+ if (options.verbose) {
201
+ console.error(''); // New line after dots
202
+ }
203
+ return data;
204
+ }
205
+ catch (error) {
206
+ if (error instanceof AuthError) {
207
+ throw error;
208
+ }
209
+ if (error instanceof Error && error.name === 'AbortError') {
210
+ // Timeout on poll, continue
211
+ if (options.verbose) {
212
+ process.stderr.write('x');
213
+ }
214
+ continue;
215
+ }
216
+ // Network error, continue polling
217
+ if (options.verbose) {
218
+ process.stderr.write('!');
219
+ }
220
+ continue;
221
+ }
222
+ }
223
+ throw new AuthError({
224
+ type: 'expired',
225
+ message: 'Authentication timed out. Please try again.',
226
+ correlationId,
227
+ });
228
+ }
229
+ async function openBrowser(url, options) {
230
+ try {
231
+ const { exec } = await import('node:child_process');
232
+ const { promisify } = await import('node:util');
233
+ const execAsync = promisify(exec);
234
+ const platform = process.platform;
235
+ let command;
236
+ if (platform === 'darwin') {
237
+ command = `open "${url}"`;
238
+ }
239
+ else if (platform === 'win32') {
240
+ command = `start "" "${url}"`;
241
+ }
242
+ else {
243
+ // Linux and others
244
+ command = `xdg-open "${url}" 2>/dev/null || sensible-browser "${url}" 2>/dev/null || x-www-browser "${url}" 2>/dev/null`;
245
+ }
246
+ await execAsync(command);
247
+ if (options.verbose) {
248
+ console.error('Opened browser for authentication');
249
+ }
250
+ }
251
+ catch {
252
+ // Browser opening failed, user can manually navigate
253
+ if (options.verbose) {
254
+ console.error('Could not open browser automatically. Please navigate to the URL manually.');
255
+ }
256
+ }
257
+ }
258
+ function sleep(ms) {
259
+ return new Promise(resolve => setTimeout(resolve, ms));
260
+ }
261
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAgBhE,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,+BAA+B,CAAC;AAC7F,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AACzD,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AACrD,MAAM,qBAAqB,GAAG,IAAI,CAAC,CAAC,YAAY;AAChD,MAAM,iBAAiB,GAAG,GAAG,CAAC,CAAC,4BAA4B;AAE3D,+EAA+E;AAC/E,+BAA+B;AAC/B,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAwB,EACxB,OAAuB;IAEvB,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9D,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;IAEhD,iCAAiC;IACjC,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC;IACzD,IAAI,mBAAmB,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAEhE,iDAAiD;IACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,2BAA2B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,yCAAyC;IACzC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,WAAW,CAAC,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,4CAA4C;IAC5C,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAC9C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,QAAQ,IAAI,qBAAqB,EACzC,OAAO,CAAC,UAAU,EAClB,aAAa,EACb,OAAO,CACR,CAAC;IAEF,qCAAqC;IACrC,MAAM,eAAe,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACpC,UAAU,EAAE,aAAa,CAAC,UAAU;KACrC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAI,eAAyD,CAAC,kBAAkB,EAAE,EAAE,IAAI,8BAA8B,CAAC;IAE5I,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAe,EAAE,CAAC,CAAC;IAErD,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,2BAA2B;QACpC,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,KAAK,UAAU,iBAAiB,CAC9B,aAAqB,EACrB,OAAuB;IAEvB,MAAM,GAAG,GAAG,GAAG,YAAY,GAAG,qBAAqB,EAAE,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;QAEjF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,kBAAkB,EAAE,aAAa;gBACjC,YAAY,EAAE,oBAAoB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,WAAW,EAAE,KAAK;aACnB,CAAC;YACF,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;YACrE,MAAM,IAAI,SAAS,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,4CAA4C,QAAQ,CAAC,MAAM,IAAI,SAAS,EAAE;gBACnF,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAiB,CAAC;QAElD,8BAA8B;QAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClE,MAAM,IAAI,SAAS,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,qDAAqD;gBAC9D,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1D,MAAM,IAAI,SAAS,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,0CAA0C;gBACnD,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,SAAS,CAAC;YAClB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,+CAA+C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;YAClH,aAAa;SACd,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,SAAiB,EACjB,QAAgB,EAChB,SAAiB,EACjB,aAAqB,EACrB,OAAuB;IAEvB,MAAM,GAAG,GAAG,GAAG,YAAY,GAAG,mBAAmB,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IACrD,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,OAAO,QAAQ,GAAG,iBAAiB,EAAE,CAAC;QACpC,+BAA+B;QAC/B,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,cAAc,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,mDAAmD;gBAC5D,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtB,QAAQ,EAAE,CAAC;QAEX,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;YAEjF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,kBAAkB,EAAE,aAAa;oBACjC,YAAY,EAAE,oBAAoB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,UAAU,EAAE,SAAS;iBACtB,CAAC;gBACF,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,0CAA0C;gBAC1C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,MAAM,IAAI,SAAS,CAAC;oBAClB,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,8BAA8B;oBACvC,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;gBACrE,MAAM,IAAI,SAAS,CAAC;oBAClB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,+BAA+B,QAAQ,CAAC,MAAM,IAAI,SAAS,EAAE;oBACtE,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;YAED,iCAAiC;YACjC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAuB,CAAC;YAExD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,IAAI,SAAS,CAAC;oBAClB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,oCAAoC;oBAC7C,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB;YAC3C,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1D,4BAA4B;gBAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;gBACD,SAAS;YACX,CAAC;YACD,kCAAkC;YAClC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;YACD,SAAS;QACX,CAAC;IACH,CAAC;IAED,MAAM,IAAI,SAAS,CAAC;QAClB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,6CAA6C;QACtD,aAAa;KACd,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,OAAuB;IAC7D,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,OAAe,CAAC;QAEpB,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC;QAC5B,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChC,OAAO,GAAG,aAAa,GAAG,GAAG,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,mBAAmB;YACnB,OAAO,GAAG,aAAa,GAAG,sCAAsC,GAAG,mCAAmC,GAAG,eAAe,CAAC;QAC3H,CAAC;QAED,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QAEzB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,qDAAqD;QACrD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC"}
@@ -12,9 +12,9 @@
12
12
  * PURPOSE: Generate CFO-grade financial impact summaries from completed simulations
13
13
  * The CLI does NOT perform financial calculations - delegates entirely to enterprise-roi-engine
14
14
  */
15
- import type { CommandOptions, RoiReportReference, SimulationReference, RoiReportType } from '../types/index.js';
15
+ import type { CommandOptions, RoiReportReference, SimulationReference, RoiReportType, FlexibleInput } from '../types/index.js';
16
16
  export interface QuantifyCommandInput {
17
- simRef: SimulationReference;
17
+ simRef: FlexibleInput<SimulationReference>;
18
18
  reportType?: RoiReportType;
19
19
  params?: Record<string, unknown>;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"quantify.d.ts","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAe3B,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAsFhC"}
1
+ {"version":3,"file":"quantify.d.ts","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAgB3B,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC,CA+FhC"}
@@ -12,6 +12,7 @@
12
12
  * PURPOSE: Generate CFO-grade financial impact summaries from completed simulations
13
13
  * The CLI does NOT perform financial calculations - delegates entirely to enterprise-roi-engine
14
14
  */
15
+ import { isNaturalLanguage } from '../types/index.js';
15
16
  import { RoiEngineAdapter } from '../adapters/base-adapter.js';
16
17
  import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
17
18
  import { createArtifactHandoff } from '../modules/artifact-handoff.js';
@@ -42,7 +43,10 @@ export async function executeQuantifyCommand(input, options) {
42
43
  endpoint: '/api/v1/reports/generate',
43
44
  method: 'POST',
44
45
  buildBody: () => ({
45
- sim_ref: handoff.passthrough(input.simRef),
46
+ // Pass natural language input or structured reference unchanged
47
+ sim_ref: isNaturalLanguage(input.simRef)
48
+ ? { natural_language: input.simRef.description }
49
+ : handoff.passthrough(input.simRef),
46
50
  report_type: reportType,
47
51
  params: input.params ?? {},
48
52
  }),
@@ -60,9 +64,12 @@ export async function executeQuantifyCommand(input, options) {
60
64
  const roiStage = result.stages.find(s => s.name === 'generate-roi-report');
61
65
  const roiRef = handoff.extractReference(roiStage?.response);
62
66
  // Record audit entry
67
+ const simRefId = isNaturalLanguage(input.simRef)
68
+ ? `nl:${input.simRef.description.slice(0, 50)}`
69
+ : input.simRef.id;
63
70
  audit.record({
64
71
  command: 'quantify',
65
- inputs: { simRef: input.simRef.id, reportType, params: input.params },
72
+ inputs: { simRef: simRefId, reportType, params: input.params },
66
73
  outputs: roiRef,
67
74
  dependencies: [
68
75
  { service: 'enterprise-roi-engine', method: 'generate', timestamp: new Date().toISOString(), duration_ms: result.timing.total, success: true },
@@ -78,9 +85,12 @@ export async function executeQuantifyCommand(input, options) {
78
85
  }
79
86
  catch (error) {
80
87
  // Record failure in audit
88
+ const failedSimRefId = isNaturalLanguage(input.simRef)
89
+ ? `nl:${input.simRef.description.slice(0, 50)}`
90
+ : input.simRef.id;
81
91
  audit.record({
82
92
  command: 'quantify',
83
- inputs: { simRef: input.simRef.id, reportType },
93
+ inputs: { simRef: failedSimRefId, reportType },
84
94
  outputs: null,
85
95
  dependencies: [],
86
96
  duration_ms: Date.now() - startTime,
@@ -1 +1 @@
1
- {"version":3,"file":"quantify.js","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quantify.js","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,9 @@
9
9
  * 3. Record audit entry
10
10
  * 4. Return SimulationReference
11
11
  */
12
- import type { CommandOptions, SimulationReference, PlanReference } from '../types/index.js';
12
+ import type { CommandOptions, SimulationReference, PlanReference, FlexibleInput } from '../types/index.js';
13
13
  export interface SimulateCommandInput {
14
- planRef: PlanReference;
14
+ planRef: FlexibleInput<PlanReference>;
15
15
  config?: Record<string, unknown>;
16
16
  iterations?: number;
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAe3B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAmFhC"}
1
+ {"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAgB3B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC,CA4FhC"}
@@ -9,6 +9,7 @@
9
9
  * 3. Record audit entry
10
10
  * 4. Return SimulationReference
11
11
  */
12
+ import { isNaturalLanguage } from '../types/index.js';
12
13
  import { RunnerAdapter } from '../adapters/base-adapter.js';
13
14
  import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
14
15
  import { createArtifactHandoff } from '../modules/artifact-handoff.js';
@@ -37,7 +38,10 @@ export async function executeSimulateCommand(input, options) {
37
38
  endpoint: '/api/v1/simulations/execute',
38
39
  method: 'POST',
39
40
  buildBody: () => ({
40
- plan_ref: handoff.passthrough(input.planRef),
41
+ // Pass natural language input or structured reference unchanged
42
+ plan_ref: isNaturalLanguage(input.planRef)
43
+ ? { natural_language: input.planRef.description }
44
+ : handoff.passthrough(input.planRef),
41
45
  config: input.config ?? {},
42
46
  iterations: input.iterations ?? 1,
43
47
  }),
@@ -55,9 +59,12 @@ export async function executeSimulateCommand(input, options) {
55
59
  const simStage = result.stages.find(s => s.name === 'execute-simulation');
56
60
  const simRef = handoff.extractReference(simStage?.response);
57
61
  // Record audit entry
62
+ const planRefId = isNaturalLanguage(input.planRef)
63
+ ? `nl:${input.planRef.description.slice(0, 50)}`
64
+ : input.planRef.id;
58
65
  audit.record({
59
66
  command: 'simulate',
60
- inputs: { planRef: input.planRef.id, config: input.config, iterations: input.iterations },
67
+ inputs: { planRef: planRefId, config: input.config, iterations: input.iterations },
61
68
  outputs: simRef,
62
69
  dependencies: [
63
70
  { service: 'agentics-simulation-runner', method: 'execute', timestamp: new Date().toISOString(), duration_ms: result.timing.total, success: true },
@@ -73,9 +80,12 @@ export async function executeSimulateCommand(input, options) {
73
80
  }
74
81
  catch (error) {
75
82
  // Record failure in audit
83
+ const failedPlanRefId = isNaturalLanguage(input.planRef)
84
+ ? `nl:${input.planRef.description.slice(0, 50)}`
85
+ : input.planRef.id;
76
86
  audit.record({
77
87
  command: 'simulate',
78
- inputs: { planRef: input.planRef.id, config: input.config },
88
+ inputs: { planRef: failedPlanRefId, config: input.config },
79
89
  outputs: null,
80
90
  dependencies: [],
81
91
  duration_ms: Date.now() - startTime,
@@ -1 +1 @@
1
- {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACL,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAiB5D,+EAA+E;AAC/E,kCAAkC;AAClC,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAA2B,EAC3B,OAAuB;IAEvB,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,wBAAwB;IACxB,MAAM,MAAM,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IAEjC,iBAAiB;IACjB,MAAM,YAAY,GAAG,kBAAkB,CAAC,4BAA4B,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAErE,8BAA8B;IAC9B,MAAM,MAAM,GAAyB;QACnC;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE;gBACP,QAAQ,EAAE,6BAA6B;gBACvC,MAAM,EAAE,MAAM;gBACd,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;oBAChB,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC5C,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;oBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;iBAClC,CAAC;aACH;SACF;KACF,CAAC;IAEF,IAAI,CAAC;QACH,wBAAwB;QACxB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC;QACtE,CAAC;QAED,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAwB,CAAC;QAEnF,qBAAqB;QACrB,KAAK,CAAC,MAAM,CAAC;YACX,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;YACzF,OAAO,EAAE,MAAM;YACf,YAAY,EAAE;gBACZ,EAAE,OAAO,EAAE,4BAA4B,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;aACnJ;YACD,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;YAChC,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC;QAEH,OAAO;YACL,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SAC/B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0BAA0B;QAC1B,KAAK,CAAC,MAAM,CAAC;YACX,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;YAC3D,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YACnC,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC3D,aAAa,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;YACvE,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC;QAEH,YAAY;QACZ,QAAQ,CAAC;YACP,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,WAAW;YAClB,aAAa,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxE,MAAM,EAAE,KAAK;YACb,aAAa;SACd,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ import type { CommandObject } from '../types/index.js';
16
16
  export interface ICommandParser {
17
17
  parse(args: string[]): CommandObject;
18
18
  }
19
- export declare const SUPPORTED_COMMANDS: readonly ["plan", "simulate", "inspect", "quantify", "deploy", "export", "diligence", "audit", "version", "help"];
19
+ export declare const SUPPORTED_COMMANDS: readonly ["login", "plan", "simulate", "inspect", "quantify", "deploy", "export", "diligence", "audit", "version", "help"];
20
20
  export type SupportedCommand = (typeof SUPPORTED_COMMANDS)[number];
21
21
  export declare class CommandParser implements ICommandParser {
22
22
  parse(args: string[]): CommandObject;