@auto-engineer/cli 0.19.1 → 0.20.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 (138) hide show
  1. package/CHANGELOG.md +11 -4
  2. package/dist/src/__fixtures__/auto.config.d.ts +7 -0
  3. package/dist/src/__fixtures__/auto.config.d.ts.map +1 -0
  4. package/dist/src/__fixtures__/auto.config.js +7 -0
  5. package/dist/src/__fixtures__/auto.config.js.map +1 -0
  6. package/dist/src/dsl/index.d.ts +71 -0
  7. package/dist/src/dsl/index.d.ts.map +1 -0
  8. package/dist/src/dsl/index.js +504 -0
  9. package/dist/src/dsl/index.js.map +1 -0
  10. package/dist/src/dsl/types.d.ts +39 -0
  11. package/dist/src/dsl/types.d.ts.map +1 -0
  12. package/dist/src/dsl/types.js +2 -0
  13. package/dist/src/dsl/types.js.map +1 -0
  14. package/dist/src/dsl-exports.d.ts +5 -0
  15. package/dist/src/dsl-exports.d.ts.map +1 -0
  16. package/dist/src/dsl-exports.js +4 -0
  17. package/dist/src/dsl-exports.js.map +1 -0
  18. package/dist/src/index.js +16 -201
  19. package/dist/src/index.js.map +1 -1
  20. package/dist/src/plugin-loader.d.ts +84 -0
  21. package/dist/src/plugin-loader.d.ts.map +1 -0
  22. package/dist/src/plugin-loader.js +801 -0
  23. package/dist/src/plugin-loader.js.map +1 -0
  24. package/dist/src/server/command-metadata-service.d.ts +27 -0
  25. package/dist/src/server/command-metadata-service.d.ts.map +1 -0
  26. package/dist/src/server/command-metadata-service.js +69 -0
  27. package/dist/src/server/command-metadata-service.js.map +1 -0
  28. package/dist/src/server/command-registry.d.ts +21 -0
  29. package/dist/src/server/command-registry.d.ts.map +1 -0
  30. package/dist/src/server/command-registry.js +58 -0
  31. package/dist/src/server/command-registry.js.map +1 -0
  32. package/dist/src/server/config-loader.d.ts +16 -0
  33. package/dist/src/server/config-loader.d.ts.map +1 -0
  34. package/dist/src/server/config-loader.js +106 -0
  35. package/dist/src/server/config-loader.js.map +1 -0
  36. package/dist/src/server/event-processor.d.ts +45 -0
  37. package/dist/src/server/event-processor.d.ts.map +1 -0
  38. package/dist/src/server/event-processor.js +287 -0
  39. package/dist/src/server/event-processor.js.map +1 -0
  40. package/dist/src/server/file-syncer/crypto/jwe-encryptor.d.ts +15 -0
  41. package/dist/src/server/file-syncer/crypto/jwe-encryptor.d.ts.map +1 -0
  42. package/dist/src/server/file-syncer/crypto/jwe-encryptor.js +72 -0
  43. package/dist/src/server/file-syncer/crypto/jwe-encryptor.js.map +1 -0
  44. package/dist/src/server/file-syncer/crypto/provider-resolver.d.ts +24 -0
  45. package/dist/src/server/file-syncer/crypto/provider-resolver.d.ts.map +1 -0
  46. package/dist/src/server/file-syncer/crypto/provider-resolver.js +71 -0
  47. package/dist/src/server/file-syncer/crypto/provider-resolver.js.map +1 -0
  48. package/dist/src/server/file-syncer/discovery/bareImports.d.ts +3 -0
  49. package/dist/src/server/file-syncer/discovery/bareImports.d.ts.map +1 -0
  50. package/dist/src/server/file-syncer/discovery/bareImports.js +36 -0
  51. package/dist/src/server/file-syncer/discovery/bareImports.js.map +1 -0
  52. package/dist/src/server/file-syncer/discovery/dts.d.ts +11 -0
  53. package/dist/src/server/file-syncer/discovery/dts.d.ts.map +1 -0
  54. package/dist/src/server/file-syncer/discovery/dts.js +108 -0
  55. package/dist/src/server/file-syncer/discovery/dts.js.map +1 -0
  56. package/dist/src/server/file-syncer/index.d.ts +22 -0
  57. package/dist/src/server/file-syncer/index.d.ts.map +1 -0
  58. package/dist/src/server/file-syncer/index.js +378 -0
  59. package/dist/src/server/file-syncer/index.js.map +1 -0
  60. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.d.ts +7 -0
  61. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.d.ts.map +1 -0
  62. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.js +103 -0
  63. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.js.map +1 -0
  64. package/dist/src/server/file-syncer/types/wire.d.ts +14 -0
  65. package/dist/src/server/file-syncer/types/wire.d.ts.map +1 -0
  66. package/dist/src/server/file-syncer/types/wire.js +2 -0
  67. package/dist/src/server/file-syncer/types/wire.js.map +1 -0
  68. package/dist/src/server/file-syncer/utils/hash.d.ts +5 -0
  69. package/dist/src/server/file-syncer/utils/hash.d.ts.map +1 -0
  70. package/dist/src/server/file-syncer/utils/hash.js +20 -0
  71. package/dist/src/server/file-syncer/utils/hash.js.map +1 -0
  72. package/dist/src/server/file-syncer/utils/path.d.ts +15 -0
  73. package/dist/src/server/file-syncer/utils/path.d.ts.map +1 -0
  74. package/dist/src/server/file-syncer/utils/path.js +109 -0
  75. package/dist/src/server/file-syncer/utils/path.js.map +1 -0
  76. package/dist/src/server/http-routes.d.ts +30 -0
  77. package/dist/src/server/http-routes.d.ts.map +1 -0
  78. package/dist/src/server/http-routes.js +394 -0
  79. package/dist/src/server/http-routes.js.map +1 -0
  80. package/dist/src/server/sandbox-landing-page.html +367 -0
  81. package/dist/src/server/server.d.ts +106 -0
  82. package/dist/src/server/server.d.ts.map +1 -0
  83. package/dist/src/server/server.js +255 -0
  84. package/dist/src/server/server.js.map +1 -0
  85. package/dist/src/server/services/child-process-manager.d.ts +27 -0
  86. package/dist/src/server/services/child-process-manager.d.ts.map +1 -0
  87. package/dist/src/server/services/child-process-manager.js +126 -0
  88. package/dist/src/server/services/child-process-manager.js.map +1 -0
  89. package/dist/src/server/services/index.d.ts +3 -0
  90. package/dist/src/server/services/index.d.ts.map +1 -0
  91. package/dist/src/server/services/index.js +2 -0
  92. package/dist/src/server/services/index.js.map +1 -0
  93. package/dist/src/server/services/interface.d.ts +6 -0
  94. package/dist/src/server/services/interface.d.ts.map +1 -0
  95. package/dist/src/server/services/interface.js +2 -0
  96. package/dist/src/server/services/interface.js.map +1 -0
  97. package/dist/src/server/settled-tracker.d.ts +29 -0
  98. package/dist/src/server/settled-tracker.d.ts.map +1 -0
  99. package/dist/src/server/settled-tracker.js +203 -0
  100. package/dist/src/server/settled-tracker.js.map +1 -0
  101. package/dist/src/server/state-manager.d.ts +24 -0
  102. package/dist/src/server/state-manager.d.ts.map +1 -0
  103. package/dist/src/server/state-manager.js +56 -0
  104. package/dist/src/server/state-manager.js.map +1 -0
  105. package/dist/src/server/websocket-handler.d.ts +5 -0
  106. package/dist/src/server/websocket-handler.d.ts.map +1 -0
  107. package/dist/src/server/websocket-handler.js +0 -0
  108. package/dist/src/server/websocket-handler.js.map +1 -0
  109. package/dist/src/server.d.ts +20 -0
  110. package/dist/src/server.d.ts.map +1 -0
  111. package/dist/src/server.js +204 -0
  112. package/dist/src/server.js.map +1 -0
  113. package/dist/src/utils/analytics.d.ts +21 -0
  114. package/dist/src/utils/analytics.d.ts.map +1 -0
  115. package/dist/src/utils/analytics.js +41 -0
  116. package/dist/src/utils/analytics.js.map +1 -0
  117. package/dist/src/utils/config.d.ts +11 -0
  118. package/dist/src/utils/config.d.ts.map +1 -0
  119. package/dist/src/utils/config.js +50 -0
  120. package/dist/src/utils/config.js.map +1 -0
  121. package/dist/src/utils/correlation-id.d.ts +3 -0
  122. package/dist/src/utils/correlation-id.d.ts.map +1 -0
  123. package/dist/src/utils/correlation-id.js +7 -0
  124. package/dist/src/utils/correlation-id.js.map +1 -0
  125. package/dist/src/utils/errors.d.ts +22 -0
  126. package/dist/src/utils/errors.d.ts.map +1 -0
  127. package/dist/src/utils/errors.js +50 -0
  128. package/dist/src/utils/errors.js.map +1 -0
  129. package/dist/src/utils/get-package-version.d.ts +7 -0
  130. package/dist/src/utils/get-package-version.d.ts.map +1 -0
  131. package/dist/src/utils/get-package-version.js +31 -0
  132. package/dist/src/utils/get-package-version.js.map +1 -0
  133. package/dist/src/utils/terminal.d.ts +13 -0
  134. package/dist/src/utils/terminal.d.ts.map +1 -0
  135. package/dist/src/utils/terminal.js +85 -0
  136. package/dist/src/utils/terminal.js.map +1 -0
  137. package/dist/tsconfig.tsbuildinfo +1 -1
  138. package/package.json +14 -4
@@ -0,0 +1,39 @@
1
+ import type { Command, Event } from '@auto-engineer/message-bus';
2
+ export interface EventRegistration {
3
+ type: 'on';
4
+ eventType: string;
5
+ handler: (event: Event) => Command | Command[] | DispatchAction | void;
6
+ }
7
+ export interface DispatchAction {
8
+ type: 'dispatch' | 'dispatch-parallel' | 'dispatch-sequence' | 'dispatch-custom';
9
+ command?: Command;
10
+ commands?: Command[];
11
+ commandFactory?: () => Command | Command[];
12
+ }
13
+ export interface FoldRegistration<S = unknown, E = Event> {
14
+ type: 'fold';
15
+ eventType: string;
16
+ reducer: (state: S, event: E) => S;
17
+ }
18
+ export interface SettledRegistration {
19
+ type: 'on-settled';
20
+ commandTypes: readonly string[];
21
+ handler: (events: Record<string, Event[]>) => void | {
22
+ persist: boolean;
23
+ };
24
+ dispatches?: readonly string[];
25
+ }
26
+ export interface SettledHandlerConfig<TDispatchCommands extends Command = Command> {
27
+ dispatches: readonly TDispatchCommands['type'][];
28
+ handler: (events: Record<string, Event[]>, dispatch: <T extends TDispatchCommands>(command: T) => void) => void | {
29
+ persist: boolean;
30
+ };
31
+ }
32
+ export type DslRegistration = EventRegistration | DispatchAction | FoldRegistration | SettledRegistration;
33
+ export interface ConfigDefinition {
34
+ fileId: string;
35
+ plugins: string[];
36
+ aliases?: Record<string, unknown>;
37
+ pipeline?: () => void;
38
+ }
39
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,OAAO,EAAE,GAAG,cAAc,GAAG,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;IACjF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,KAAK;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1E,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB,CAAC,iBAAiB,SAAS,OAAO,GAAG,OAAO;IAC/E,UAAU,EAAE,SAAS,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,OAAO,EAAE,CACP,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAC/B,QAAQ,EAAE,CAAC,CAAC,SAAS,iBAAiB,EAAE,OAAO,EAAE,CAAC,KAAK,IAAI,KACxD,IAAI,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CAClC;AAED,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAE1G,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dsl/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export { on, dispatch, fold, autoConfig, getPipelineGraph } from './dsl/index';
2
+ export { CommandMetadataService } from './server/command-metadata-service';
3
+ export type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, SettledHandlerConfig, } from './dsl/types';
4
+ export type { CommandMetadata } from './server/command-metadata-service';
5
+ //# sourceMappingURL=dsl-exports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsl-exports.d.ts","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,4 @@
1
+ // Export only the DSL functions for use in auto.config.ts
2
+ export { on, dispatch, fold, autoConfig, getPipelineGraph } from './dsl/index.js';
3
+ export { CommandMetadataService } from './server/command-metadata-service.js';
4
+ //# sourceMappingURL=dsl-exports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsl-exports.js","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,82 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import * as fs from 'node:fs';
3
- import { createServer } from 'node:http';
4
3
  import * as path from 'node:path';
5
- import { fileURLToPath, pathToFileURL } from 'node:url';
6
- import { PipelineServer } from '@auto-engineer/pipeline';
4
+ import { fileURLToPath } from 'node:url';
7
5
  import chalk from 'chalk';
8
6
  import { Command } from 'commander';
9
7
  import * as dotenv from 'dotenv';
10
- import getPort, { portNumbers } from 'get-port';
11
- import createJiti from 'jiti';
12
8
  import ora from 'ora';
13
- import { Server as SocketIOServer } from 'socket.io';
14
- import { FileSyncer } from './file-syncer/index.js';
9
+ import { startServer as startServerCore } from './server.js';
15
10
  dotenv.config();
16
11
  const __filename = fileURLToPath(import.meta.url);
17
12
  const __dirname = path.dirname(__filename);
18
- function isValidHandler(item) {
19
- return item !== null && item !== undefined && typeof item === 'object' && 'handle' in item && 'name' in item;
20
- }
21
- function extractCommandHandler(module, filename, packageName) {
22
- if (isValidHandler(module.default)) {
23
- return module.default;
24
- }
25
- if (isValidHandler(module.commandHandler)) {
26
- return module.commandHandler;
27
- }
28
- if (isValidHandler(module.handler)) {
29
- return module.handler;
30
- }
31
- for (const [key, value] of Object.entries(module)) {
32
- if (isValidHandler(value)) {
33
- console.log(chalk.gray(` Found handler via named export "${key}" in ${filename}`));
34
- return value;
35
- }
36
- }
37
- console.log(chalk.gray(` No valid handler found in ${filename} from ${packageName}`));
38
- return null;
39
- }
40
- async function detectCommandsByConvention(packageName) {
41
- const handlers = [];
42
- const packageShortName = packageName.replace('@auto-engineer/', '');
43
- const workspaceCommandsPath = path.join(process.cwd(), 'packages', packageShortName, 'dist', 'commands');
44
- const workspaceSrcCommandsPath = path.join(process.cwd(), 'packages', packageShortName, 'dist', 'src', 'commands');
45
- const nodeModulesCommandsPath = path.join(process.cwd(), 'node_modules', packageName, 'dist', 'commands');
46
- const nodeModulesSrcCommandsPath = path.join(process.cwd(), 'node_modules', packageName, 'dist', 'src', 'commands');
47
- let commandsDir = null;
48
- if (fs.existsSync(workspaceCommandsPath)) {
49
- commandsDir = workspaceCommandsPath;
50
- }
51
- else if (fs.existsSync(workspaceSrcCommandsPath)) {
52
- commandsDir = workspaceSrcCommandsPath;
53
- }
54
- else if (fs.existsSync(nodeModulesCommandsPath)) {
55
- commandsDir = nodeModulesCommandsPath;
56
- }
57
- else if (fs.existsSync(nodeModulesSrcCommandsPath)) {
58
- commandsDir = nodeModulesSrcCommandsPath;
59
- }
60
- if (!commandsDir) {
61
- return handlers;
62
- }
63
- const commandFiles = fs.readdirSync(commandsDir).filter((file) => file.endsWith('.js'));
64
- for (const filename of commandFiles) {
65
- const filePath = path.join(commandsDir, filename);
66
- const fileUrl = pathToFileURL(filePath).href;
67
- try {
68
- const module = (await import(fileUrl));
69
- const handler = extractCommandHandler(module, filename, packageName);
70
- if (handler) {
71
- handlers.push(handler);
72
- }
73
- }
74
- catch (error) {
75
- console.warn(chalk.yellow(` Failed to load command file ${filename}:`), error);
76
- }
77
- }
78
- return handlers;
79
- }
80
13
  function getVersion() {
81
14
  try {
82
15
  const possiblePaths = [
@@ -96,82 +29,6 @@ function getVersion() {
96
29
  return process.env.npm_package_version ?? 'unknown';
97
30
  }
98
31
  const VERSION = getVersion();
99
- async function loadPipelineConfig(configPath) {
100
- try {
101
- if (configPath.endsWith('.ts')) {
102
- const jiti = createJiti(import.meta.url, { interopDefault: true });
103
- return await jiti.import(configPath);
104
- }
105
- const configUrl = pathToFileURL(path.resolve(configPath)).href;
106
- const configModule = (await import(configUrl));
107
- return configModule.default ?? configModule;
108
- }
109
- catch (error) {
110
- console.error(chalk.red('Failed to load config:'), error);
111
- return null;
112
- }
113
- }
114
- async function tryLoadFromPath(modulePath) {
115
- if (!fs.existsSync(modulePath))
116
- return null;
117
- const packageUrl = pathToFileURL(modulePath).href;
118
- return (await import(packageUrl));
119
- }
120
- async function loadPlugin(packageName) {
121
- const packageShortName = packageName.replace('@auto-engineer/', '');
122
- const workspaceBase = path.join(process.cwd(), 'packages', packageShortName, 'dist');
123
- const nodeModulesBase = path.join(process.cwd(), 'node_modules', packageName, 'dist');
124
- const pathsToTry = [
125
- path.join(workspaceBase, 'index.js'),
126
- path.join(workspaceBase, 'src', 'index.js'),
127
- path.join(nodeModulesBase, 'index.js'),
128
- path.join(nodeModulesBase, 'src', 'index.js'),
129
- ];
130
- const nodePathsToTry = [path.join(workspaceBase, 'src', 'node.js'), path.join(nodeModulesBase, 'src', 'node.js')];
131
- try {
132
- for (const modulePath of pathsToTry) {
133
- const plugin = await tryLoadFromPath(modulePath);
134
- if (plugin?.COMMANDS)
135
- return plugin;
136
- }
137
- for (const modulePath of nodePathsToTry) {
138
- const plugin = await tryLoadFromPath(modulePath);
139
- if (plugin?.COMMANDS)
140
- return plugin;
141
- }
142
- const dynamicPlugin = (await import(packageName));
143
- if (dynamicPlugin?.COMMANDS)
144
- return dynamicPlugin;
145
- try {
146
- const nodeImport = (await import(`${packageName}/node`));
147
- if (nodeImport?.COMMANDS)
148
- return nodeImport;
149
- }
150
- catch {
151
- // /node subpath not available for this package
152
- }
153
- return null;
154
- }
155
- catch (error) {
156
- console.warn(chalk.yellow(`Warning: Failed to load plugin ${packageName}:`), error);
157
- return null;
158
- }
159
- }
160
- async function loadCommandHandlers(plugins) {
161
- const handlers = [];
162
- for (const packageName of plugins) {
163
- const plugin = await loadPlugin(packageName);
164
- if (plugin?.COMMANDS) {
165
- handlers.push(...plugin.COMMANDS);
166
- continue;
167
- }
168
- const detectedHandlers = await detectCommandsByConvention(packageName);
169
- if (detectedHandlers.length > 0) {
170
- handlers.push(...detectedHandlers);
171
- }
172
- }
173
- return handlers;
174
- }
175
32
  async function dispatchCommand(baseUrl, commandType, data) {
176
33
  const response = await fetch(`${baseUrl}/command`, {
177
34
  method: 'POST',
@@ -180,70 +37,28 @@ async function dispatchCommand(baseUrl, commandType, data) {
180
37
  });
181
38
  return response.json();
182
39
  }
183
- function findConfigFile() {
184
- const candidates = ['auto.config.ts', 'auto.config.js'];
185
- for (const candidate of candidates) {
186
- const fullPath = path.join(process.cwd(), candidate);
187
- if (fs.existsSync(fullPath)) {
188
- return fullPath;
189
- }
190
- }
191
- return null;
192
- }
193
- async function startFileSyncServer(syncPort, watchDir) {
194
- const httpServer = createServer();
195
- const io = new SocketIOServer(httpServer, {
196
- cors: { origin: '*' },
197
- });
198
- const fileSyncer = new FileSyncer(io, watchDir);
199
- fileSyncer.start();
200
- return new Promise((resolve) => {
201
- httpServer.listen(syncPort, () => {
202
- resolve({ fileSyncer, httpServer });
203
- });
204
- });
205
- }
206
40
  async function startServer(opts) {
207
41
  const port = parseInt(opts.port, 10);
208
- const actualPort = await getPort({ port: portNumbers(port, port + 100) });
209
- const syncPort = await getPort({ port: portNumbers(actualPort + 1, actualPort + 100) });
210
- const configPath = opts.config ?? findConfigFile();
211
- if (!configPath) {
212
- console.error(chalk.red('No pipeline config found. Create an auto.config.ts file.'));
213
- process.exit(1);
214
- }
215
- const spinner = ora('Loading pipeline config...').start();
216
- const config = await loadPipelineConfig(configPath);
217
- if (!config) {
218
- spinner.fail('Failed to load pipeline config');
219
- process.exit(1);
220
- }
221
- spinner.text = 'Loading plugins...';
222
- const commandHandlers = await loadCommandHandlers(config.plugins);
223
- spinner.succeed(`Loaded ${commandHandlers.length} command handlers from ${config.plugins.length} plugins`);
224
- spinner.start('Starting pipeline server...');
42
+ const spinner = ora('Starting server...').start();
225
43
  try {
226
- const server = new PipelineServer({ port: actualPort });
227
- server.registerCommandHandlers(commandHandlers);
228
- server.registerPipeline(config.pipeline);
229
- const watchDir = path.dirname(configPath);
230
- const { fileSyncer, httpServer: syncHttpServer } = await startFileSyncServer(syncPort, watchDir);
44
+ const handle = await startServerCore({
45
+ port,
46
+ debug: opts.debug,
47
+ configPath: opts.config,
48
+ });
231
49
  process.on('SIGINT', () => {
232
50
  console.log(chalk.yellow('\nShutting down servers...'));
233
- fileSyncer.stop();
234
- syncHttpServer.close();
235
- void server.stop();
51
+ void handle.stop();
236
52
  process.exit(0);
237
53
  });
238
- await server.start();
239
- spinner.succeed(`Pipeline server running at http://localhost:${actualPort}`);
54
+ spinner.succeed(`Pipeline server running at http://localhost:${handle.actualPort}`);
240
55
  console.log(chalk.cyan('\nEndpoints:'));
241
- console.log(` ${chalk.gray('Health:')} http://localhost:${actualPort}/health`);
242
- console.log(` ${chalk.gray('Registry:')} http://localhost:${actualPort}/registry`);
243
- console.log(` ${chalk.gray('Pipeline:')} http://localhost:${actualPort}/pipeline`);
244
- console.log(` ${chalk.gray('Diagram:')} http://localhost:${actualPort}/pipeline/diagram`);
245
- console.log(` ${chalk.gray('Events:')} http://localhost:${actualPort}/events (SSE)`);
246
- console.log(` ${chalk.gray('FileSync:')} ws://localhost:${syncPort} (Socket.IO)`);
56
+ console.log(` ${chalk.gray('Health:')} http://localhost:${handle.actualPort}/health`);
57
+ console.log(` ${chalk.gray('Registry:')} http://localhost:${handle.actualPort}/registry`);
58
+ console.log(` ${chalk.gray('Pipeline:')} http://localhost:${handle.actualPort}/pipeline`);
59
+ console.log(` ${chalk.gray('Diagram:')} http://localhost:${handle.actualPort}/pipeline/diagram`);
60
+ console.log(` ${chalk.gray('Events:')} http://localhost:${handle.actualPort}/events (SSE)`);
61
+ console.log(` ${chalk.gray('FileSync:')} ws://localhost:${handle.syncPort} (Socket.IO)`);
247
62
  console.log(chalk.gray('\nPress Ctrl+C to stop'));
248
63
  }
249
64
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ import { type MessageBus } from '@auto-engineer/message-bus';
2
+ import type { Command, UnifiedCommandHandler } from '@auto-engineer/message-bus';
3
+ export interface CliCommand {
4
+ handler: () => Promise<unknown>;
5
+ description: string;
6
+ package: string;
7
+ version?: string;
8
+ usage?: string;
9
+ examples?: string[];
10
+ args?: Array<{
11
+ name: string;
12
+ description: string;
13
+ required?: boolean;
14
+ }>;
15
+ options?: Array<{
16
+ name: string;
17
+ description: string;
18
+ }>;
19
+ category?: string;
20
+ }
21
+ export interface PluginConfig {
22
+ plugins: string[];
23
+ aliases?: Record<string, unknown>;
24
+ pipeline?: () => void;
25
+ }
26
+ export declare class PluginLoader {
27
+ private host?;
28
+ private commands;
29
+ private unifiedHandlers;
30
+ private conflicts;
31
+ private loadedPlugins;
32
+ private messageBus;
33
+ private aliasToHandlerName;
34
+ private hasGlobalEventSubscription;
35
+ private commandMappers;
36
+ loadConfig?: (configPath: string) => Promise<PluginConfig>;
37
+ importPlugin?: (packageName: string) => Promise<unknown>;
38
+ constructor(host?: string | undefined);
39
+ setHost(host: string | undefined): void;
40
+ private setupGlobalEventSubscription;
41
+ private isValidHandler;
42
+ private findCommandHandler;
43
+ private loadConfigFile;
44
+ private loadPlugin;
45
+ private loadPackageMetadata;
46
+ private convertUnifiedToCliCommand;
47
+ private detectCommandsByConvention;
48
+ private extractCommandHandler;
49
+ private processUnifiedCommands;
50
+ private processPlugin;
51
+ private findMatchingCandidate;
52
+ private processConflictResolution;
53
+ private processStringAlias;
54
+ private processHandlerAlias;
55
+ private processFunctionAlias;
56
+ private processCustomAlias;
57
+ private processCustomAliases;
58
+ private reportConflicts;
59
+ loadPlugins(configPath: string): Promise<Map<string, CliCommand>>;
60
+ getLoadedPluginCount(): number;
61
+ getCommandMapper(alias: string): ((args: (string | string[])[], options: Record<string, unknown>) => Record<string, unknown>) | undefined;
62
+ private buildCommandMapper;
63
+ private registerCommand;
64
+ private formatFieldKey;
65
+ private displayArrayValue;
66
+ private displayFieldValue;
67
+ private handleCommandEvent;
68
+ private displayMinimalMessage;
69
+ private displayMessage;
70
+ private highlightYaml;
71
+ private displayErrorField;
72
+ private displayErrorsField;
73
+ executeCommand(commandAlias: string, data: unknown): Promise<void>;
74
+ getCommands(): Map<string, CliCommand>;
75
+ /**
76
+ * Get the unified command handlers with package metadata from package.json
77
+ * This is used by the message bus server for command registration
78
+ */
79
+ getUnifiedHandlers(): Map<string, UnifiedCommandHandler<Command>>;
80
+ getConflicts(): Map<string, string[]>;
81
+ getMessageBus(): MessageBus;
82
+ }
83
+ export declare function loadPlugins(configPath: string): Promise<Map<string, CliCommand>>;
84
+ //# sourceMappingURL=plugin-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-loader.d.ts","sourceRoot":"","sources":["../../src/plugin-loader.ts"],"names":[],"mappings":"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"}