@ace-sdk/cli 3.12.0 → 3.14.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 (44) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +9 -18
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/config.js +1 -1
  5. package/dist/commands/config.js.map +1 -1
  6. package/dist/commands/doctor.js +1 -1
  7. package/dist/commands/doctor.js.map +1 -1
  8. package/dist/commands/domains.js +3 -3
  9. package/dist/commands/domains.js.map +1 -1
  10. package/dist/commands/login.js +2 -2
  11. package/dist/commands/login.js.map +1 -1
  12. package/dist/commands/orgs.js +2 -2
  13. package/dist/commands/orgs.js.map +1 -1
  14. package/dist/commands/patterns.js +1 -1
  15. package/dist/commands/patterns.js.map +1 -1
  16. package/dist/commands/plugin.js +8 -8
  17. package/dist/commands/plugin.js.map +1 -1
  18. package/dist/commands/projects.d.ts +1 -1
  19. package/dist/commands/projects.js +2 -2
  20. package/dist/commands/projects.js.map +1 -1
  21. package/dist/commands/record.js +9 -9
  22. package/dist/commands/record.js.map +1 -1
  23. package/dist/commands/refresh.js +2 -2
  24. package/dist/commands/refresh.js.map +1 -1
  25. package/dist/commands/search.js +5 -5
  26. package/dist/commands/search.js.map +1 -1
  27. package/dist/commands/switch-org.js +2 -2
  28. package/dist/commands/switch-org.js.map +1 -1
  29. package/dist/commands/tune.js +1 -1
  30. package/dist/commands/tune.js.map +1 -1
  31. package/dist/commands/whoami.js +1 -1
  32. package/dist/commands/whoami.js.map +1 -1
  33. package/dist/services/plugin-loader.js +2 -2
  34. package/dist/services/plugin-loader.js.map +1 -1
  35. package/dist/services/server-client.d.ts.map +1 -1
  36. package/dist/services/server-client.js +1 -0
  37. package/dist/services/server-client.js.map +1 -1
  38. package/dist/utils/version-checker.js +1 -1
  39. package/dist/utils/version-checker.js.map +1 -1
  40. package/package.json +2 -2
  41. package/dist/commands/summarize.d.ts +0 -17
  42. package/dist/commands/summarize.d.ts.map +0 -1
  43. package/dist/commands/summarize.js +0 -167
  44. package/dist/commands/summarize.js.map +0 -1
@@ -1,167 +0,0 @@
1
- /**
2
- * Session summarization command
3
- */
4
- import { readFileSync, writeFileSync, existsSync } from 'fs';
5
- import { getRecorder } from '../services/recorder.js';
6
- import { globalOptions } from '../cli.js';
7
- import { Logger } from '../services/logger.js';
8
- import { createContext } from '../types/config.js';
9
- import { ACEServerClient } from '../services/server-client.js';
10
- import chalk from 'chalk';
11
- /**
12
- * Summarize a recorded session
13
- */
14
- export async function summarizeCommand(sessionIdOrFile, options = {}) {
15
- const logger = new Logger(globalOptions);
16
- try {
17
- // Determine if input is a session ID, file path, or stdin
18
- let sessionData;
19
- let sessionId;
20
- if (options.stdin) {
21
- // Read from stdin
22
- logger.debug('Loading session from stdin');
23
- const stdinData = readFileSync(0, 'utf8'); // fd 0 is stdin
24
- sessionData = JSON.parse(stdinData.trim());
25
- sessionId = sessionData.metadata?.id || 'stdin';
26
- }
27
- else if (!sessionIdOrFile) {
28
- throw new Error('Must provide either a session ID/file or use --stdin');
29
- }
30
- else if (existsSync(sessionIdOrFile)) {
31
- // It's a file path
32
- logger.debug(`Loading session from file: ${sessionIdOrFile}`);
33
- const fileContent = readFileSync(sessionIdOrFile, 'utf8');
34
- sessionData = JSON.parse(fileContent);
35
- sessionId = sessionData.metadata?.id || 'unknown';
36
- }
37
- else {
38
- // It's a session ID - load from recorder
39
- logger.debug(`Loading session from recorder: ${sessionIdOrFile}`);
40
- const recorder = getRecorder();
41
- sessionData = recorder.getSession(sessionIdOrFile);
42
- sessionId = sessionIdOrFile;
43
- }
44
- // Get config and create client
45
- const context = await createContext({ org: globalOptions.org, project: globalOptions.project });
46
- const client = new ACEServerClient(context, logger);
47
- // Fetch server config for defaults
48
- const serverConfig = await client.getConfig();
49
- const runtimeSettings = serverConfig?.runtime_settings || {};
50
- const effectiveStyle = runtimeSettings.summarizationStyle || 'short';
51
- const effectiveMaxTokens = runtimeSettings.summarizationMaxTokens || 1000;
52
- logger.debug(`Summarization settings: style=${effectiveStyle}, max_tokens=${effectiveMaxTokens}`);
53
- // Show spinner
54
- const spinner = logger.spinner('Analyzing session...');
55
- // Send to server for summarization (server will use runtime settings)
56
- const summary = await client.summarizeSession(sessionData);
57
- spinner?.succeed();
58
- // Format output based on requested format (CLI option > 'text' default)
59
- const format = options.format || 'text';
60
- if (logger.isJson() || format === 'json') {
61
- // JSON output
62
- const output = {
63
- session_id: sessionId,
64
- summary: summary.summary,
65
- key_events: summary.key_events,
66
- insights: summary.insights,
67
- duration_ms: summary.duration_ms,
68
- event_count: summary.event_count
69
- };
70
- if (options.output) {
71
- writeFileSync(options.output, JSON.stringify(output, null, 2));
72
- logger.success(`Summary saved to ${options.output}`);
73
- }
74
- else {
75
- logger.output(output);
76
- }
77
- }
78
- else if (format === 'markdown') {
79
- // Markdown output
80
- const markdown = formatSummaryAsMarkdown(sessionId, summary);
81
- if (options.output) {
82
- writeFileSync(options.output, markdown);
83
- logger.success(`Summary saved to ${options.output}`);
84
- }
85
- else {
86
- console.log(markdown);
87
- }
88
- }
89
- else {
90
- // Text output (default)
91
- displaySummaryAsText(logger, sessionId, summary);
92
- if (options.output) {
93
- const markdown = formatSummaryAsMarkdown(sessionId, summary);
94
- writeFileSync(options.output, markdown);
95
- logger.success(`\nSummary saved to ${options.output}`);
96
- }
97
- }
98
- }
99
- catch (error) {
100
- if (logger.isJson()) {
101
- logger.output({
102
- success: false,
103
- error: error instanceof Error ? error.message : String(error)
104
- });
105
- }
106
- else {
107
- logger.error('Failed to summarize session', error instanceof Error ? error : String(error));
108
- }
109
- process.exit(1);
110
- }
111
- }
112
- /**
113
- * Display summary as formatted text
114
- */
115
- function displaySummaryAsText(logger, sessionId, summary) {
116
- logger.info(chalk.bold(`\nšŸ“Š Session Summary: ${sessionId}\n`));
117
- // Duration and event count
118
- const durationSeconds = (summary.duration_ms / 1000).toFixed(1);
119
- logger.info(chalk.dim(`Duration: ${durationSeconds}s | Events: ${summary.event_count}\n`));
120
- // Summary
121
- logger.info(chalk.bold('Summary:'));
122
- logger.info(summary.summary);
123
- logger.info('');
124
- // Key events
125
- if (summary.key_events && summary.key_events.length > 0) {
126
- logger.info(chalk.bold('Key Events:'));
127
- for (const event of summary.key_events) {
128
- const timestamp = new Date(event.timestamp).toLocaleTimeString();
129
- logger.info(chalk.dim(` [${timestamp}]`) + ` ${event.type}: ${event.description}`);
130
- }
131
- logger.info('');
132
- }
133
- // Insights
134
- if (summary.insights && summary.insights.length > 0) {
135
- logger.info(chalk.bold('Insights:'));
136
- for (const insight of summary.insights) {
137
- logger.info(chalk.cyan(` • ${insight}`));
138
- }
139
- logger.info('');
140
- }
141
- }
142
- /**
143
- * Format summary as markdown
144
- */
145
- function formatSummaryAsMarkdown(sessionId, summary) {
146
- const durationSeconds = (summary.duration_ms / 1000).toFixed(1);
147
- let markdown = `# Session Summary: ${sessionId}\n\n`;
148
- markdown += `**Duration:** ${durationSeconds}s | **Events:** ${summary.event_count}\n\n`;
149
- markdown += `## Summary\n\n${summary.summary}\n\n`;
150
- if (summary.key_events && summary.key_events.length > 0) {
151
- markdown += `## Key Events\n\n`;
152
- for (const event of summary.key_events) {
153
- const timestamp = new Date(event.timestamp).toLocaleTimeString();
154
- markdown += `- **[${timestamp}]** ${event.type}: ${event.description}\n`;
155
- }
156
- markdown += '\n';
157
- }
158
- if (summary.insights && summary.insights.length > 0) {
159
- markdown += `## Insights\n\n`;
160
- for (const insight of summary.insights) {
161
- markdown += `- ${insight}\n`;
162
- }
163
- markdown += '\n';
164
- }
165
- return markdown;
166
- }
167
- //# sourceMappingURL=summarize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"summarize.js","sourceRoot":"","sources":["../../src/commands/summarize.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,MAAM,OAAO,CAAC;AA2B1B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,eAAmC,EAAE,UAA4B,EAAE;IACxG,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC;IAEzC,IAAI,CAAC;QACH,0DAA0D;QAC1D,IAAI,WAAgB,CAAC;QACrB,IAAI,SAAiB,CAAC;QAEtB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,kBAAkB;YAClB,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC3C,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,gBAAgB;YAC3D,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3C,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,OAAO,CAAC;QAClD,CAAC;aAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;aAAM,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACvC,mBAAmB;YACnB,MAAM,CAAC,KAAK,CAAC,8BAA8B,eAAe,EAAE,CAAC,CAAC;YAC9D,MAAM,WAAW,GAAG,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YAC1D,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACtC,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,SAAS,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,yCAAyC;YACzC,MAAM,CAAC,KAAK,CAAC,kCAAkC,eAAe,EAAE,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;YAC/B,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YACnD,SAAS,GAAG,eAAe,CAAC;QAC9B,CAAC;QAED,+BAA+B;QAC/B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEpD,mCAAmC;QACnC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAC9C,MAAM,eAAe,GAAG,YAAY,EAAE,gBAAgB,IAAI,EAAE,CAAC;QAE7D,MAAM,cAAc,GAAG,eAAe,CAAC,kBAAkB,IAAI,OAAO,CAAC;QACrE,MAAM,kBAAkB,GAAG,eAAe,CAAC,sBAAsB,IAAI,IAAI,CAAC;QAE1E,MAAM,CAAC,KAAK,CAAC,iCAAiC,cAAc,gBAAgB,kBAAkB,EAAE,CAAC,CAAC;QAElG,eAAe;QACf,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAEvD,sEAAsE;QACtE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAE3D,OAAO,EAAE,OAAO,EAAE,CAAC;QAEnB,wEAAwE;QACxE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;QAExC,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACzC,cAAc;YACd,MAAM,MAAM,GAAG;gBACb,UAAU,EAAE,SAAS;gBACrB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC;YAEF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/D,MAAM,CAAC,OAAO,CAAC,oBAAoB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,kBAAkB;YAClB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE7D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACxC,MAAM,CAAC,OAAO,CAAC,oBAAoB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAEjD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7D,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACxC,MAAM,CAAC,OAAO,CAAC,sBAAsB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,MAAc,EAAE,SAAiB,EAAE,OAAuB;IACtF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,SAAS,IAAI,CAAC,CAAC,CAAC;IAEhE,2BAA2B;IAC3B,MAAM,eAAe,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,eAAe,eAAe,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IAE3F,UAAU;IACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,aAAa;IACb,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,CAAC;YACjE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,WAAW;IACX,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACrC,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,SAAiB,EAAE,OAAuB;IACzE,MAAM,eAAe,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChE,IAAI,QAAQ,GAAG,sBAAsB,SAAS,MAAM,CAAC;IACrD,QAAQ,IAAI,iBAAiB,eAAe,mBAAmB,OAAO,CAAC,WAAW,MAAM,CAAC;IAEzF,QAAQ,IAAI,iBAAiB,OAAO,CAAC,OAAO,MAAM,CAAC;IAEnD,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,QAAQ,IAAI,mBAAmB,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE,CAAC;YACjE,QAAQ,IAAI,QAAQ,SAAS,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,IAAI,CAAC;QAC3E,CAAC;QACD,QAAQ,IAAI,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,QAAQ,IAAI,iBAAiB,CAAC;QAC9B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,QAAQ,IAAI,KAAK,OAAO,IAAI,CAAC;QAC/B,CAAC;QACD,QAAQ,IAAI,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}