@agentuity/cli 0.0.87 → 0.0.88

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 (48) hide show
  1. package/dist/cli.js +3 -3
  2. package/dist/cmd/build/bundler.d.ts.map +1 -1
  3. package/dist/cmd/build/bundler.js +142 -7
  4. package/dist/cmd/build/bundler.js.map +1 -1
  5. package/dist/cmd/build/config-loader.d.ts +16 -0
  6. package/dist/cmd/build/config-loader.d.ts.map +1 -0
  7. package/dist/cmd/build/config-loader.js +165 -0
  8. package/dist/cmd/build/config-loader.js.map +1 -0
  9. package/dist/cmd/build/plugin.d.ts.map +1 -1
  10. package/dist/cmd/build/plugin.js +16 -2
  11. package/dist/cmd/build/plugin.js.map +1 -1
  12. package/dist/cmd/build/workbench.d.ts +1 -0
  13. package/dist/cmd/build/workbench.d.ts.map +1 -1
  14. package/dist/cmd/build/workbench.js +8 -1
  15. package/dist/cmd/build/workbench.js.map +1 -1
  16. package/dist/cmd/cloud/index.d.ts.map +1 -1
  17. package/dist/cmd/cloud/index.js +2 -0
  18. package/dist/cmd/cloud/index.js.map +1 -1
  19. package/dist/cmd/cloud/redis/get.d.ts +2 -0
  20. package/dist/cmd/cloud/redis/get.d.ts.map +1 -0
  21. package/dist/cmd/cloud/redis/get.js +62 -0
  22. package/dist/cmd/cloud/redis/get.js.map +1 -0
  23. package/dist/cmd/cloud/redis/index.d.ts +2 -0
  24. package/dist/cmd/cloud/redis/index.d.ts.map +1 -0
  25. package/dist/cmd/cloud/redis/index.js +13 -0
  26. package/dist/cmd/cloud/redis/index.js.map +1 -0
  27. package/dist/index.d.ts +1 -1
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/tui.d.ts +5 -0
  31. package/dist/tui.d.ts.map +1 -1
  32. package/dist/tui.js +7 -0
  33. package/dist/tui.js.map +1 -1
  34. package/dist/types.d.ts +66 -0
  35. package/dist/types.d.ts.map +1 -1
  36. package/dist/types.js.map +1 -1
  37. package/package.json +6 -4
  38. package/src/cli.ts +3 -3
  39. package/src/cmd/build/bundler.ts +169 -8
  40. package/src/cmd/build/config-loader.ts +200 -0
  41. package/src/cmd/build/plugin.ts +18 -2
  42. package/src/cmd/build/workbench.ts +9 -1
  43. package/src/cmd/cloud/index.ts +2 -0
  44. package/src/cmd/cloud/redis/get.ts +72 -0
  45. package/src/cmd/cloud/redis/index.ts +13 -0
  46. package/src/index.ts +4 -0
  47. package/src/tui.ts +8 -0
  48. package/src/types.ts +73 -0
package/dist/cli.js CHANGED
@@ -155,7 +155,7 @@ export async function createCLI(version) {
155
155
  program
156
156
  .name('agentuity')
157
157
  .version(version, '-v, --version', 'Display version')
158
- .helpOption('-h, --help=[json]', 'Display help (with optional JSON output)')
158
+ .helpOption('-h, --help [json]', 'Display help (with optional JSON output)')
159
159
  .allowUnknownOption(false)
160
160
  .allowExcessArguments(false)
161
161
  .showHelpAfterError(true);
@@ -397,7 +397,7 @@ async function resolveRegion(opts) {
397
397
  }
398
398
  async function registerSubcommand(parent, subcommand, baseCtx, hidden) {
399
399
  const cmd = parent.command(subcommand.name, { hidden }).description(subcommand.description);
400
- cmd.helpOption('-h, --help=[json]', 'Display help (with optional JSON output)');
400
+ cmd.helpOption('-h, --help [json]', 'Display help (with optional JSON output)');
401
401
  if (subcommand.aliases) {
402
402
  cmd.aliases(subcommand.aliases);
403
403
  }
@@ -925,7 +925,7 @@ export async function registerCommands(program, commands, baseCtx) {
925
925
  const cmd = program
926
926
  .command(cmdDef.name, { hidden: cmdDef.hidden })
927
927
  .description(cmdDef.description);
928
- cmd.helpOption('-h, --help=[json]', 'Display help (with optional JSON output)');
928
+ cmd.helpOption('-h, --help [json]', 'Display help (with optional JSON output)');
929
929
  if (cmdDef.aliases) {
930
930
  cmd.aliases(cmdDef.aliases);
931
931
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/bundler.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAwC1D,MAAM,WAAW,aAAc,SAAQ,aAAa;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AA8BD,wBAAsB,MAAM,CAAC,EAC5B,KAAK,EACL,SAAS,EACT,YAAY,EACZ,GAAW,EACX,OAAO,EACP,OAAO,EACP,MAAM,EAAE,YAAY,EACpB,GAAG,EACH,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,OAAO,EACP,GAAG,EACH,MAAM,EACN,MAAM,EACN,SAAS,GACT,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqoB/C"}
1
+ {"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/bundler.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AAExD,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAyC1D,MAAM,WAAW,aAAc,SAAQ,aAAa;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAqGD,wBAAsB,MAAM,CAAC,EAC5B,KAAK,EACL,SAAS,EACT,YAAY,EACZ,GAAW,EACX,OAAO,EACP,OAAO,EACP,MAAM,EAAE,YAAY,EACpB,GAAG,EACH,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,OAAO,EACP,GAAG,EACH,MAAM,EACN,MAAM,EACN,SAAS,GACT,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA8tB/C"}
@@ -1,6 +1,6 @@
1
1
  import { $, semver } from 'bun';
2
2
  import { join, relative, resolve, dirname, basename } from 'node:path';
3
- import { cpSync, existsSync, mkdirSync, rmSync, readdirSync } from 'node:fs';
3
+ import { cpSync, existsSync, mkdirSync, rmSync, readdirSync, readFileSync } from 'node:fs';
4
4
  import gitParseUrl from 'git-url-parse';
5
5
  import { StructuredError } from '@agentuity/core';
6
6
  import * as tui from '../../tui';
@@ -12,6 +12,7 @@ import { fixDuplicateExportsInDirectory } from './fix-duplicate-exports';
12
12
  import { generateWorkbenchMainTsx, generateWorkbenchIndexHtml } from './workbench';
13
13
  import { analyzeWorkbench } from './ast';
14
14
  import { checkAndUpgradeDependencies } from '../../utils/dependency-checker';
15
+ import { loadBuildConfig, executeBuildConfig, mergeBuildConfig } from './config-loader';
15
16
  const minBunVersion = '>=1.3.3';
16
17
  async function checkBunVersion() {
17
18
  if (semver.satisfies(Bun.version, minBunVersion)) {
@@ -44,6 +45,73 @@ const AppFileNotFoundError = StructuredError('AppFileNotFoundError');
44
45
  const AgentsDirNotFoundError = StructuredError('AgentsDirNotFoundError');
45
46
  const BuildFailedError = StructuredError('BuildFailedError')();
46
47
  const InvalidBunVersion = StructuredError('InvalidBunVersion')();
48
+ /**
49
+ * Finds the workspace root by walking up the directory tree looking for a package.json with workspaces
50
+ */
51
+ function findWorkspaceRoot(startDir) {
52
+ let currentDir = startDir;
53
+ while (true) {
54
+ const pkgPath = join(currentDir, 'package.json');
55
+ if (existsSync(pkgPath)) {
56
+ try {
57
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
58
+ if (pkg.workspaces) {
59
+ return currentDir;
60
+ }
61
+ }
62
+ catch {
63
+ // Ignore parse errors, continue searching
64
+ }
65
+ }
66
+ const parent = resolve(currentDir, '..');
67
+ if (parent === currentDir)
68
+ break; // reached filesystem root
69
+ currentDir = parent;
70
+ }
71
+ return null;
72
+ }
73
+ /**
74
+ * Finds a package by searching multiple locations:
75
+ * 1. App-level node_modules
76
+ * 2. Workspace root node_modules
77
+ * 3. Workspace packages directory (for workspace packages)
78
+ *
79
+ * @param rootDir - Root directory of the project
80
+ * @param packageName - Package name (e.g., '@agentuity/workbench')
81
+ * @param logger - Optional logger for debug messages
82
+ * @returns Path to the package directory, or null if not found
83
+ */
84
+ function findPackagePath(rootDir, packageName, logger) {
85
+ const [scope, name] = packageName.startsWith('@')
86
+ ? packageName.slice(1).split('/')
87
+ : [null, packageName];
88
+ // 1. Try app-level node_modules
89
+ const appLevelPath = scope
90
+ ? join(rootDir, 'node_modules', `@${scope}`, name)
91
+ : join(rootDir, 'node_modules', name);
92
+ if (existsSync(appLevelPath)) {
93
+ logger?.debug(`Found ${packageName} at app level: ${appLevelPath}`);
94
+ return appLevelPath;
95
+ }
96
+ // 2. Try workspace root node_modules
97
+ const workspaceRoot = findWorkspaceRoot(rootDir);
98
+ if (workspaceRoot) {
99
+ const rootLevelPath = scope
100
+ ? join(workspaceRoot, 'node_modules', `@${scope}`, name)
101
+ : join(workspaceRoot, 'node_modules', name);
102
+ if (existsSync(rootLevelPath)) {
103
+ logger?.debug(`Found ${packageName} at workspace root: ${rootLevelPath}`);
104
+ return rootLevelPath;
105
+ }
106
+ // 3. Try workspace packages directory
107
+ const workspacePackagePath = join(workspaceRoot, 'packages', name);
108
+ if (existsSync(workspacePackagePath)) {
109
+ logger?.debug(`Found ${packageName} in workspace packages: ${workspacePackagePath}`);
110
+ return workspacePackagePath;
111
+ }
112
+ }
113
+ return null;
114
+ }
47
115
  const handleBuildFailure = (buildResult) => {
48
116
  // Collect all build errors with full details
49
117
  const errorMessages = buildResult.logs
@@ -206,8 +274,21 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
206
274
  }
207
275
  const tsconfigPath = join(rootDir, 'tsconfig.json');
208
276
  const hasTsconfig = existsSync(tsconfigPath);
277
+ // Load user build config (if it exists)
278
+ const buildConfigFunction = await loadBuildConfig(rootDir);
279
+ // Helper to create build context for config function
280
+ const createBuildContext = () => ({
281
+ rootDir,
282
+ dev,
283
+ outDir,
284
+ srcDir,
285
+ orgId,
286
+ projectId,
287
+ region,
288
+ logger,
289
+ });
209
290
  await (async () => {
210
- const config = {
291
+ const baseConfig = {
211
292
  entrypoints: appEntrypoints,
212
293
  root: rootDir,
213
294
  outdir: outDir,
@@ -234,7 +315,13 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
234
315
  },
235
316
  tsconfig: hasTsconfig ? tsconfigPath : undefined,
236
317
  };
237
- const buildResult = await Bun.build(config);
318
+ // Apply user config for 'api' phase
319
+ let finalConfig = baseConfig;
320
+ if (buildConfigFunction) {
321
+ const userConfig = await executeBuildConfig(buildConfigFunction, 'api', createBuildContext());
322
+ finalConfig = mergeBuildConfig(baseConfig, userConfig);
323
+ }
324
+ const buildResult = await Bun.build(finalConfig);
238
325
  if (!buildResult.success) {
239
326
  handleBuildFailure(buildResult);
240
327
  }
@@ -335,7 +422,7 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
335
422
  mkdirSync(join(webOutDir, 'chunk'), { recursive: true });
336
423
  mkdirSync(join(webOutDir, 'asset'), { recursive: true });
337
424
  const isLocalRegion = region === 'local' || region === 'l';
338
- const config = {
425
+ const baseConfig = {
339
426
  entrypoints: webEntrypoints,
340
427
  root: webDir,
341
428
  outdir: webOutDir,
@@ -363,7 +450,13 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
363
450
  },
364
451
  tsconfig: hasTsconfig ? tsconfigPath : undefined,
365
452
  };
366
- const result = await Bun.build(config);
453
+ // Apply user config for 'web' phase
454
+ let finalConfig = baseConfig;
455
+ if (buildConfigFunction) {
456
+ const userConfig = await executeBuildConfig(buildConfigFunction, 'web', createBuildContext());
457
+ finalConfig = mergeBuildConfig(baseConfig, userConfig);
458
+ }
459
+ const result = await Bun.build(finalConfig);
367
460
  if (result.success) {
368
461
  // Fix duplicate exports caused by Bun splitting bug
369
462
  // See: https://github.com/oven-sh/bun/issues/5344
@@ -401,11 +494,47 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
401
494
  mkdirSync(tempWorkbenchDir, { recursive: true });
402
495
  // Generate files using templates
403
496
  await Bun.write(join(tempWorkbenchDir, 'main.tsx'), generateWorkbenchMainTsx(config));
497
+ // Copy the pre-built standalone.css from workbench package instead of generating it
498
+ // This ensures we use the built version with Tailwind already processed
499
+ const workbenchPackagePath = findPackagePath(rootDir, '@agentuity/workbench', logger);
500
+ const workbenchStylesOut = join(tempWorkbenchDir, 'styles.css');
501
+ if (workbenchPackagePath) {
502
+ const workbenchStylesPath = join(workbenchPackagePath, 'dist', 'standalone.css');
503
+ const workbenchStylesSourcePath = join(workbenchPackagePath, 'src', 'standalone.css');
504
+ if (existsSync(workbenchStylesPath)) {
505
+ cpSync(workbenchStylesPath, workbenchStylesOut);
506
+ logger.debug('Copied workbench dist/standalone.css to temp workbench dir');
507
+ }
508
+ else if (existsSync(workbenchStylesSourcePath)) {
509
+ // Fallback: copy source CSS file (contains Tailwind directives that need processing)
510
+ cpSync(workbenchStylesSourcePath, workbenchStylesOut);
511
+ logger.warn('Workbench dist/standalone.css not found, using source CSS. Ensure @agentuity/workbench is built.');
512
+ }
513
+ else {
514
+ throw new BuildFailedError({
515
+ message: `Workbench styles not found in ${workbenchPackagePath}. Expected either:
516
+ - ${workbenchStylesPath}
517
+ - ${workbenchStylesSourcePath}
518
+
519
+ Make sure @agentuity/workbench is built.`,
520
+ });
521
+ }
522
+ }
523
+ else {
524
+ throw new BuildFailedError({
525
+ message: `Workbench package not found. Searched in:
526
+ - App-level node_modules
527
+ - Workspace root node_modules
528
+ - Workspace packages directory
529
+
530
+ Make sure @agentuity/workbench is installed or available in the workspace.`,
531
+ });
532
+ }
404
533
  const workbenchIndexFile = join(tempWorkbenchDir, 'index.html');
405
534
  await Bun.write(workbenchIndexFile, generateWorkbenchIndexHtml());
406
535
  // Bundle workbench using generated files
407
536
  // Disable splitting to avoid CommonJS/ESM module resolution conflicts
408
- const workbenchBuildConfig = {
537
+ const workbenchBaseConfig = {
409
538
  entrypoints: [workbenchIndexFile],
410
539
  outdir: join(outDir, 'workbench'),
411
540
  sourcemap: dev ? 'inline' : 'linked',
@@ -423,7 +552,13 @@ export async function bundle({ orgId, projectId, deploymentId, dev = false, root
423
552
  asset: 'workbench/asset/[name]-[hash].[ext]',
424
553
  },
425
554
  };
426
- const workbenchResult = await Bun.build(workbenchBuildConfig);
555
+ // Apply user config for 'workbench' phase
556
+ let finalWorkbenchConfig = workbenchBaseConfig;
557
+ if (buildConfigFunction) {
558
+ const userConfig = await executeBuildConfig(buildConfigFunction, 'workbench', createBuildContext());
559
+ finalWorkbenchConfig = mergeBuildConfig(workbenchBaseConfig, userConfig);
560
+ }
561
+ const workbenchResult = await Bun.build(finalWorkbenchConfig);
427
562
  if (workbenchResult.success) {
428
563
  logger.debug('Workbench bundled successfully');
429
564
  // Clean up temp directory
@@ -1 +1 @@
1
- {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../src/cmd/build/bundler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../src/cmd/build/bundler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { BuildConfigFunction, BuildPhase, BuildContext, BuildConfig } from '../../types';
2
+ /**
3
+ * Load and validate agentuity.config.ts from the project root
4
+ */
5
+ export declare function loadBuildConfig(rootDir: string): Promise<BuildConfigFunction | null>;
6
+ /**
7
+ * Execute the build config function for a specific phase and validate the result
8
+ */
9
+ export declare function executeBuildConfig(configFunction: BuildConfigFunction, phase: BuildPhase, context: BuildContext): Promise<BuildConfig>;
10
+ /**
11
+ * Merge user build config with base Bun.BuildConfig
12
+ * User config is applied AFTER base config with safeguards
13
+ * Returns a complete Bun.BuildConfig with user overrides applied
14
+ */
15
+ export declare function mergeBuildConfig(baseConfig: import('bun').BuildConfig, userConfig: BuildConfig): import('bun').BuildConfig;
16
+ //# sourceMappingURL=config-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/config-loader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAU9F;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAqC1F;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,cAAc,EAAE,mBAAmB,EACnC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC,WAAW,CAAC,CAqGtB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC/B,UAAU,EAAE,OAAO,KAAK,EAAE,WAAW,EACrC,UAAU,EAAE,WAAW,GACrB,OAAO,KAAK,EAAE,WAAW,CA2B3B"}
@@ -0,0 +1,165 @@
1
+ import { join } from 'node:path';
2
+ import { StructuredError } from '@agentuity/core';
3
+ const BuildConfigLoadError = StructuredError('BuildConfigLoadError');
4
+ const BuildConfigValidationError = StructuredError('BuildConfigValidationError');
5
+ /**
6
+ * Reserved define keys that cannot be overridden by user config
7
+ */
8
+ const RESERVED_DEFINE_PREFIXES = ['process.env.AGENTUITY_', 'process.env.NODE_ENV'];
9
+ /**
10
+ * Load and validate agentuity.config.ts from the project root
11
+ */
12
+ export async function loadBuildConfig(rootDir) {
13
+ const configPath = join(rootDir, 'agentuity.config.ts');
14
+ // Check if config file exists
15
+ const configFile = Bun.file(configPath);
16
+ if (!(await configFile.exists())) {
17
+ return null; // No config file is OK - it's optional
18
+ }
19
+ try {
20
+ // Import the config file (Bun handles TypeScript natively)
21
+ // Use file:// URL to ensure absolute path resolution
22
+ const configModule = await import(`file://${configPath}`);
23
+ // Get the default export
24
+ const configFunction = configModule.default;
25
+ // Validate it's a function
26
+ if (typeof configFunction !== 'function') {
27
+ throw new BuildConfigValidationError({
28
+ message: `agentuity.config.ts must export a default function, got ${typeof configFunction}`,
29
+ });
30
+ }
31
+ return configFunction;
32
+ }
33
+ catch (error) {
34
+ // If it's already our error, re-throw
35
+ if (error instanceof BuildConfigValidationError || error instanceof BuildConfigLoadError) {
36
+ throw error;
37
+ }
38
+ // Wrap other errors
39
+ throw new BuildConfigLoadError({
40
+ message: `Failed to load agentuity.config.ts: ${error instanceof Error ? error.message : String(error)}`,
41
+ cause: error instanceof Error ? error : undefined,
42
+ });
43
+ }
44
+ }
45
+ /**
46
+ * Execute the build config function for a specific phase and validate the result
47
+ */
48
+ export async function executeBuildConfig(configFunction, phase, context) {
49
+ try {
50
+ // Execute the config function (may be async)
51
+ const config = await configFunction(phase, context);
52
+ // Validate the result is an object
53
+ if (!config || typeof config !== 'object') {
54
+ throw new BuildConfigValidationError({
55
+ message: `Build config for phase "${phase}" must return an object, got ${typeof config}`,
56
+ });
57
+ }
58
+ // Validate plugins array if provided
59
+ if (config.plugins !== undefined) {
60
+ if (!Array.isArray(config.plugins)) {
61
+ throw new BuildConfigValidationError({
62
+ message: `Build config plugins for phase "${phase}" must be an array, got ${typeof config.plugins}`,
63
+ });
64
+ }
65
+ // Validate each plugin has a name property (basic BunPlugin check)
66
+ for (const plugin of config.plugins) {
67
+ if (!plugin || typeof plugin !== 'object' || !('name' in plugin)) {
68
+ throw new BuildConfigValidationError({
69
+ message: `Invalid plugin in phase "${phase}": plugins must be BunPlugin objects with a name property`,
70
+ });
71
+ }
72
+ }
73
+ }
74
+ // Validate external array if provided
75
+ if (config.external !== undefined) {
76
+ if (!Array.isArray(config.external)) {
77
+ throw new BuildConfigValidationError({
78
+ message: `Build config external for phase "${phase}" must be an array, got ${typeof config.external}`,
79
+ });
80
+ }
81
+ // Validate each external is a string
82
+ for (const ext of config.external) {
83
+ if (typeof ext !== 'string') {
84
+ throw new BuildConfigValidationError({
85
+ message: `Invalid external in phase "${phase}": all externals must be strings, got ${typeof ext}`,
86
+ });
87
+ }
88
+ }
89
+ }
90
+ // Validate and filter define object if provided
91
+ if (config.define !== undefined) {
92
+ if (typeof config.define !== 'object' || config.define === null) {
93
+ throw new BuildConfigValidationError({
94
+ message: `Build config define for phase "${phase}" must be an object, got ${typeof config.define}`,
95
+ });
96
+ }
97
+ // Check for reserved keys and filter them out
98
+ const filteredDefine = {};
99
+ const blockedKeys = [];
100
+ for (const [key, value] of Object.entries(config.define)) {
101
+ // Check if this key starts with any reserved prefix
102
+ const isReserved = RESERVED_DEFINE_PREFIXES.some((prefix) => key.startsWith(prefix));
103
+ if (isReserved) {
104
+ blockedKeys.push(key);
105
+ continue; // Skip reserved keys
106
+ }
107
+ // Validate value is a string
108
+ if (typeof value !== 'string') {
109
+ throw new BuildConfigValidationError({
110
+ message: `Build config define values for phase "${phase}" must be strings, got ${typeof value} for key "${key}"`,
111
+ });
112
+ }
113
+ filteredDefine[key] = value;
114
+ }
115
+ // Warn if we blocked any keys
116
+ if (blockedKeys.length > 0) {
117
+ context.logger.warn(`Build config for phase "${phase}" attempted to override reserved define keys (ignored): ${blockedKeys.join(', ')}`);
118
+ }
119
+ // Replace with filtered version
120
+ config.define = filteredDefine;
121
+ }
122
+ return config;
123
+ }
124
+ catch (error) {
125
+ // If it's already our error, re-throw
126
+ if (error instanceof BuildConfigValidationError) {
127
+ throw error;
128
+ }
129
+ // Wrap other errors
130
+ throw new BuildConfigLoadError({
131
+ message: `Failed to execute build config for phase "${phase}": ${error instanceof Error ? error.message : String(error)}`,
132
+ cause: error instanceof Error ? error : undefined,
133
+ });
134
+ }
135
+ }
136
+ /**
137
+ * Merge user build config with base Bun.BuildConfig
138
+ * User config is applied AFTER base config with safeguards
139
+ * Returns a complete Bun.BuildConfig with user overrides applied
140
+ */
141
+ export function mergeBuildConfig(baseConfig, userConfig) {
142
+ const merged = { ...baseConfig };
143
+ // Merge plugins (user plugins come AFTER Agentuity plugin)
144
+ if (userConfig.plugins && userConfig.plugins.length > 0) {
145
+ merged.plugins = [...(baseConfig.plugins ?? []), ...userConfig.plugins];
146
+ }
147
+ // Merge external (combine arrays, dedupe)
148
+ if (userConfig.external && userConfig.external.length > 0) {
149
+ const existingExternal = Array.isArray(baseConfig.external)
150
+ ? baseConfig.external
151
+ : baseConfig.external
152
+ ? [baseConfig.external]
153
+ : [];
154
+ merged.external = [...new Set([...existingExternal, ...userConfig.external])];
155
+ }
156
+ // Merge define (user defines come last, but reserved keys already filtered)
157
+ if (userConfig.define && Object.keys(userConfig.define).length > 0) {
158
+ merged.define = {
159
+ ...baseConfig.define,
160
+ ...userConfig.define,
161
+ };
162
+ }
163
+ return merged;
164
+ }
165
+ //# sourceMappingURL=config-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../src/cmd/build/config-loader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAGrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmMvD,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,CAEzD;AAOD,QAAA,MAAM,gBAAgB,EAAE,SA4iBvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAGrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmMvD,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,CAEzD;AAOD,QAAA,MAAM,gBAAgB,EAAE,SA4jBvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -258,8 +258,10 @@ const AgentuityBundler = {
258
258
  const indexFile = join(srcDir, 'web', 'index.html');
259
259
  // Setup workbench configuration - evaluate fresh each time during builds
260
260
  const workbenchConfig = await setupWorkbench(srcDir);
261
+ // Store web routes for later (must be registered AFTER API routes)
262
+ let webRoutesInsert = null;
261
263
  if (existsSync(indexFile)) {
262
- inserts.push(`import { serveStatic } from 'hono/bun';
264
+ webRoutesInsert = `import { serveStatic } from 'hono/bun';
263
265
  import { getRouter, registerDevModeRoutes } from '@agentuity/runtime';
264
266
  import { readFileSync, existsSync } from 'node:fs';
265
267
 
@@ -309,14 +311,22 @@ import { readFileSync, existsSync } from 'node:fs';
309
311
  // Serve public assets at root (e.g., /favicon.ico) - must be last
310
312
  router.get('/*', async (c, next) => {
311
313
  const path = c.req.path;
314
+ // Skip API routes - let them 404 naturally
315
+ if (path === '/api' || path.startsWith('/api/')) {
316
+ return c.notFound();
317
+ }
312
318
  // Prevent directory traversal attacks
313
319
  if (path.includes('..') || path.includes('%2e%2e')) {
314
320
  return c.notFound();
315
321
  }
322
+ // Don't catch workbench routes (already handled above)
323
+ if (path.startsWith('/workbench')) {
324
+ return c.notFound();
325
+ }
316
326
  // serve default for any path not explicitly matched
317
327
  return c.html(index);
318
328
  });
319
- })();`);
329
+ })();`;
320
330
  }
321
331
  // Build agentInfo from all discovered agents and track directories
322
332
  const agentDirs = new Set();
@@ -508,6 +518,10 @@ import { readFileSync, existsSync } from 'node:fs';
508
518
  router.route('/', workbenchRouter);
509
519
  })();`);
510
520
  }
521
+ // Add web routes AFTER API routes (catch-all must be last)
522
+ if (webRoutesInsert) {
523
+ inserts.push(webRoutesInsert);
524
+ }
511
525
  const file = Bun.file(args.path);
512
526
  let contents = await file.text();
513
527
  // Use AST-based parsing to reliably find createApp statement end