@agentuity/cli 1.0.8 → 1.0.10

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 (67) hide show
  1. package/dist/cmd/ai/claude-code/constants.d.ts +13 -0
  2. package/dist/cmd/ai/claude-code/constants.d.ts.map +1 -0
  3. package/dist/cmd/ai/claude-code/constants.js +16 -0
  4. package/dist/cmd/ai/claude-code/constants.js.map +1 -0
  5. package/dist/cmd/ai/claude-code/index.d.ts +3 -0
  6. package/dist/cmd/ai/claude-code/index.d.ts.map +1 -0
  7. package/dist/cmd/ai/claude-code/index.js +22 -0
  8. package/dist/cmd/ai/claude-code/index.js.map +1 -0
  9. package/dist/cmd/ai/claude-code/install.d.ts +3 -0
  10. package/dist/cmd/ai/claude-code/install.d.ts.map +1 -0
  11. package/dist/cmd/ai/claude-code/install.js +133 -0
  12. package/dist/cmd/ai/claude-code/install.js.map +1 -0
  13. package/dist/cmd/ai/claude-code/uninstall.d.ts +3 -0
  14. package/dist/cmd/ai/claude-code/uninstall.d.ts.map +1 -0
  15. package/dist/cmd/ai/claude-code/uninstall.js +105 -0
  16. package/dist/cmd/ai/claude-code/uninstall.js.map +1 -0
  17. package/dist/cmd/ai/index.d.ts.map +1 -1
  18. package/dist/cmd/ai/index.js +6 -0
  19. package/dist/cmd/ai/index.js.map +1 -1
  20. package/dist/cmd/build/entry-generator.d.ts.map +1 -1
  21. package/dist/cmd/build/entry-generator.js +1 -8
  22. package/dist/cmd/build/entry-generator.js.map +1 -1
  23. package/dist/cmd/build/vite/config-loader.d.ts +9 -0
  24. package/dist/cmd/build/vite/config-loader.d.ts.map +1 -1
  25. package/dist/cmd/build/vite/config-loader.js +30 -0
  26. package/dist/cmd/build/vite/config-loader.js.map +1 -1
  27. package/dist/cmd/build/vite/server-bundler.d.ts.map +1 -1
  28. package/dist/cmd/build/vite/server-bundler.js +22 -1
  29. package/dist/cmd/build/vite/server-bundler.js.map +1 -1
  30. package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +1 -1
  31. package/dist/cmd/build/vite/vite-asset-server-config.js +19 -14
  32. package/dist/cmd/build/vite/vite-asset-server-config.js.map +1 -1
  33. package/dist/cmd/build/vite/vite-builder.d.ts.map +1 -1
  34. package/dist/cmd/build/vite/vite-builder.js +12 -8
  35. package/dist/cmd/build/vite/vite-builder.js.map +1 -1
  36. package/dist/cmd/dev/download.d.ts.map +1 -1
  37. package/dist/cmd/dev/download.js +63 -53
  38. package/dist/cmd/dev/download.js.map +1 -1
  39. package/dist/cmd/upgrade/index.d.ts.map +1 -1
  40. package/dist/cmd/upgrade/index.js +24 -11
  41. package/dist/cmd/upgrade/index.js.map +1 -1
  42. package/dist/cmd/upgrade/npm-availability.d.ts +45 -12
  43. package/dist/cmd/upgrade/npm-availability.d.ts.map +1 -1
  44. package/dist/cmd/upgrade/npm-availability.js +73 -26
  45. package/dist/cmd/upgrade/npm-availability.js.map +1 -1
  46. package/dist/types.d.ts +4 -2
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/types.js.map +1 -1
  49. package/dist/version-check.d.ts.map +1 -1
  50. package/dist/version-check.js +13 -2
  51. package/dist/version-check.js.map +1 -1
  52. package/package.json +6 -7
  53. package/src/cmd/ai/claude-code/constants.ts +26 -0
  54. package/src/cmd/ai/claude-code/index.ts +23 -0
  55. package/src/cmd/ai/claude-code/install.ts +181 -0
  56. package/src/cmd/ai/claude-code/uninstall.ts +122 -0
  57. package/src/cmd/ai/index.ts +6 -0
  58. package/src/cmd/build/entry-generator.ts +1 -8
  59. package/src/cmd/build/vite/config-loader.ts +37 -0
  60. package/src/cmd/build/vite/server-bundler.ts +28 -1
  61. package/src/cmd/build/vite/vite-asset-server-config.ts +22 -13
  62. package/src/cmd/build/vite/vite-builder.ts +17 -8
  63. package/src/cmd/dev/download.ts +76 -78
  64. package/src/cmd/upgrade/index.ts +35 -12
  65. package/src/cmd/upgrade/npm-availability.ts +106 -36
  66. package/src/types.ts +4 -2
  67. package/src/version-check.ts +20 -2
@@ -0,0 +1,13 @@
1
+ export interface ClaudeSettings {
2
+ permissions?: {
3
+ allow?: string[];
4
+ deny?: string[];
5
+ };
6
+ [key: string]: unknown;
7
+ }
8
+ export declare const CLAUDE_DIR: string;
9
+ export declare const CLAUDE_SETTINGS_FILE: string;
10
+ export declare const PLUGIN_INSTALL_DIR: string;
11
+ export declare const AGENTUITY_ALLOW_PERMISSIONS: string[];
12
+ export declare const AGENTUITY_DENY_PERMISSIONS: string[];
13
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/constants.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC9B,WAAW,CAAC,EAAE;QACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KAChB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,UAAU,QAA6B,CAAC;AACrD,eAAO,MAAM,oBAAoB,QAA0C,CAAC;AAC5E,eAAO,MAAM,kBAAkB,QAA0D,CAAC;AAE1F,eAAO,MAAM,2BAA2B,UAGvC,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAKtC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { homedir } from 'node:os';
2
+ import { join } from 'node:path';
3
+ export const CLAUDE_DIR = join(homedir(), '.claude');
4
+ export const CLAUDE_SETTINGS_FILE = join(CLAUDE_DIR, 'settings.local.json');
5
+ export const PLUGIN_INSTALL_DIR = join(homedir(), '.agentuity', 'plugins', 'claude-code');
6
+ export const AGENTUITY_ALLOW_PERMISSIONS = [
7
+ 'Bash(agentuity cloud *)',
8
+ 'Bash(agentuity auth whoami *)',
9
+ ];
10
+ export const AGENTUITY_DENY_PERMISSIONS = [
11
+ 'Bash(agentuity cloud secrets *)',
12
+ 'Bash(agentuity cloud secret *)',
13
+ 'Bash(agentuity cloud apikey *)',
14
+ 'Bash(agentuity auth token *)',
15
+ ];
16
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAUjC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;AAC5E,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,2BAA2B,GAAG;IAC1C,yBAAyB;IACzB,+BAA+B;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,iCAAiC;IACjC,gCAAgC;IAChC,gCAAgC;IAChC,8BAA8B;CAC9B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const command: import("../../..").CommandDefinition;
2
+ export default command;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,OAAO,sCAelB,CAAC;AAEH,eAAe,OAAO,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { createCommand } from '../../../types';
2
+ import { installSubcommand } from './install';
3
+ import { uninstallSubcommand } from './uninstall';
4
+ import { getCommand } from '../../../command-prefix';
5
+ export const command = createCommand({
6
+ name: 'claude-code',
7
+ description: 'Agentuity Coder plugin for Claude Code',
8
+ tags: ['fast'],
9
+ examples: [
10
+ {
11
+ command: getCommand('ai claude-code install'),
12
+ description: 'Install Agentuity Coder plugin for Claude Code',
13
+ },
14
+ {
15
+ command: getCommand('ai claude-code uninstall'),
16
+ description: 'Uninstall Agentuity Coder plugin for Claude Code',
17
+ },
18
+ ],
19
+ subcommands: [installSubcommand, uninstallSubcommand],
20
+ });
21
+ export default command;
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC;IACpC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,wCAAwC;IACrD,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,wBAAwB,CAAC;YAC7C,WAAW,EAAE,gDAAgD;SAC7D;QACD;YACC,OAAO,EAAE,UAAU,CAAC,0BAA0B,CAAC;YAC/C,WAAW,EAAE,kDAAkD;SAC/D;KACD;IACD,WAAW,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;CACrD,CAAC,CAAC;AAEH,eAAe,OAAO,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const installSubcommand: import("../../..").SubcommandDefinition;
2
+ export default installSubcommand;
3
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/install.ts"],"names":[],"mappings":"AAyFA,eAAO,MAAM,iBAAiB,yCAyF5B,CAAC;AAEH,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,133 @@
1
+ import { mkdirSync, writeFileSync, readFileSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import { createSubcommand } from '../../../types';
4
+ import * as tui from '../../../tui';
5
+ import { getCommand } from '../../../command-prefix';
6
+ import { CLAUDE_DIR, CLAUDE_SETTINGS_FILE, PLUGIN_INSTALL_DIR, AGENTUITY_ALLOW_PERMISSIONS, AGENTUITY_DENY_PERMISSIONS, } from './constants';
7
+ async function readClaudeSettings() {
8
+ try {
9
+ if (await Bun.file(CLAUDE_SETTINGS_FILE).exists()) {
10
+ const content = readFileSync(CLAUDE_SETTINGS_FILE, 'utf-8');
11
+ return JSON.parse(content);
12
+ }
13
+ }
14
+ catch {
15
+ // invalid or missing
16
+ }
17
+ return {};
18
+ }
19
+ function writeClaudeSettings(settings) {
20
+ mkdirSync(CLAUDE_DIR, { recursive: true });
21
+ writeFileSync(CLAUDE_SETTINGS_FILE, JSON.stringify(settings, null, 2) + '\n');
22
+ }
23
+ function configurePermissions(settings) {
24
+ if (!settings.permissions) {
25
+ settings.permissions = {};
26
+ }
27
+ if (!settings.permissions.allow) {
28
+ settings.permissions.allow = [];
29
+ }
30
+ if (!settings.permissions.deny) {
31
+ settings.permissions.deny = [];
32
+ }
33
+ let added = 0;
34
+ for (const perm of AGENTUITY_ALLOW_PERMISSIONS) {
35
+ if (!settings.permissions.allow.includes(perm)) {
36
+ settings.permissions.allow.push(perm);
37
+ added++;
38
+ }
39
+ }
40
+ for (const perm of AGENTUITY_DENY_PERMISSIONS) {
41
+ if (!settings.permissions.deny.includes(perm)) {
42
+ settings.permissions.deny.push(perm);
43
+ added++;
44
+ }
45
+ }
46
+ return added;
47
+ }
48
+ async function installPackage(logger) {
49
+ mkdirSync(PLUGIN_INSTALL_DIR, { recursive: true });
50
+ const packageJsonPath = join(PLUGIN_INSTALL_DIR, 'package.json');
51
+ if (!(await Bun.file(packageJsonPath).exists())) {
52
+ writeFileSync(packageJsonPath, JSON.stringify({ name: 'agentuity-claude-code-plugin', private: true }, null, 2));
53
+ }
54
+ logger.debug(`Installing @agentuity/claude-code to ${PLUGIN_INSTALL_DIR}`);
55
+ const proc = Bun.spawn(['bun', 'add', '@agentuity/claude-code@latest'], {
56
+ cwd: PLUGIN_INSTALL_DIR,
57
+ stdio: ['ignore', 'pipe', 'pipe'],
58
+ });
59
+ await proc.exited;
60
+ const pluginPath = join(PLUGIN_INSTALL_DIR, 'node_modules', '@agentuity', 'claude-code');
61
+ if (await Bun.file(join(pluginPath, '.claude-plugin', 'plugin.json')).exists()) {
62
+ return pluginPath;
63
+ }
64
+ return null;
65
+ }
66
+ export const installSubcommand = createSubcommand({
67
+ name: 'install',
68
+ description: 'Install Agentuity Coder plugin for Claude Code',
69
+ tags: ['fast'],
70
+ requires: { auth: true, apiClient: true, org: true },
71
+ examples: [
72
+ {
73
+ command: getCommand('ai claude-code install'),
74
+ description: 'Install Agentuity Coder plugin for Claude Code',
75
+ },
76
+ ],
77
+ async handler(ctx) {
78
+ const { options, orgId, logger } = ctx;
79
+ const jsonMode = !!options?.json;
80
+ if (!jsonMode) {
81
+ tui.newline();
82
+ tui.output(tui.bold('Installing Agentuity Coder plugin for Claude Code'));
83
+ tui.newline();
84
+ tui.success(`Using organization: ${orgId}`);
85
+ }
86
+ if (!jsonMode) {
87
+ tui.info('Installing @agentuity/claude-code package...');
88
+ }
89
+ const pluginPath = await installPackage(logger);
90
+ if (!pluginPath) {
91
+ if (jsonMode) {
92
+ return { success: false, orgId, error: 'Failed to install package' };
93
+ }
94
+ logger.fatal('Failed to install @agentuity/claude-code package. Make sure bun is installed and try again');
95
+ }
96
+ if (!jsonMode) {
97
+ tui.success(`Plugin installed to: ${pluginPath}`);
98
+ }
99
+ const settings = await readClaudeSettings();
100
+ const permissionsAdded = configurePermissions(settings);
101
+ if (permissionsAdded > 0) {
102
+ if (!jsonMode) {
103
+ tui.success(`Configured ${permissionsAdded} permission rules for Agentuity Cloud commands`);
104
+ }
105
+ }
106
+ else {
107
+ if (!jsonMode) {
108
+ tui.info('Permissions already configured');
109
+ }
110
+ }
111
+ writeClaudeSettings(settings);
112
+ if (!jsonMode) {
113
+ tui.newline();
114
+ tui.output(tui.bold('Agentuity Coder plugin installed successfully!'));
115
+ tui.newline();
116
+ tui.info('To use the plugin, start Claude Code with:');
117
+ tui.output(` ${tui.ICONS.bullet} ${tui.bold(`claude --plugin-dir ${pluginPath}`)}`);
118
+ tui.newline();
119
+ tui.info('Or install permanently via the Claude Code marketplace:');
120
+ tui.output(` ${tui.ICONS.bullet} ${tui.bold('/plugin marketplace add agentuity/sdk')}`);
121
+ tui.output(` ${tui.ICONS.bullet} ${tui.bold('/plugin install agentuity-coder@agentuity')}`);
122
+ tui.newline();
123
+ tui.info('Available commands in Claude Code:');
124
+ tui.output(` ${tui.ICONS.bullet} ${tui.muted('/agentuity-coder')} - Run a task with the agent team`);
125
+ tui.output(` ${tui.ICONS.bullet} ${tui.muted('/agentuity-cadence')} - Start autonomous long-running task`);
126
+ tui.output(` ${tui.ICONS.bullet} ${tui.muted('/agentuity-memory-save')} - Save session context to memory`);
127
+ tui.newline();
128
+ }
129
+ return { success: true, orgId, pluginPath };
130
+ },
131
+ });
132
+ export default installSubcommand;
133
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/install.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const uninstallSubcommand: import("../../..").SubcommandDefinition;
2
+ export default uninstallSubcommand;
3
+ //# sourceMappingURL=uninstall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/uninstall.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,mBAAmB,yCA2G9B,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,105 @@
1
+ import { readFileSync, writeFileSync, rmSync } from 'node:fs';
2
+ import { createSubcommand } from '../../../types';
3
+ import * as tui from '../../../tui';
4
+ import { getCommand } from '../../../command-prefix';
5
+ import { CLAUDE_SETTINGS_FILE, PLUGIN_INSTALL_DIR, AGENTUITY_ALLOW_PERMISSIONS, AGENTUITY_DENY_PERMISSIONS, } from './constants';
6
+ export const uninstallSubcommand = createSubcommand({
7
+ name: 'uninstall',
8
+ description: 'Uninstall Agentuity Coder plugin for Claude Code',
9
+ tags: ['fast'],
10
+ examples: [
11
+ {
12
+ command: getCommand('ai claude-code uninstall'),
13
+ description: 'Uninstall Agentuity Coder plugin for Claude Code',
14
+ },
15
+ ],
16
+ async handler(ctx) {
17
+ const { options } = ctx;
18
+ const jsonMode = !!options?.json;
19
+ if (!jsonMode) {
20
+ tui.newline();
21
+ tui.output(tui.bold('Uninstalling Agentuity Coder plugin for Claude Code'));
22
+ tui.newline();
23
+ }
24
+ let removedPlugin = false;
25
+ let removedPermissions = false;
26
+ if (await Bun.file(`${PLUGIN_INSTALL_DIR}/package.json`).exists()) {
27
+ try {
28
+ rmSync(PLUGIN_INSTALL_DIR, { recursive: true, force: true });
29
+ removedPlugin = true;
30
+ if (!jsonMode) {
31
+ tui.success('Removed plugin installation directory');
32
+ }
33
+ }
34
+ catch (error) {
35
+ if (!jsonMode) {
36
+ tui.warning(`Failed to remove plugin directory: ${error}`);
37
+ }
38
+ }
39
+ }
40
+ else {
41
+ if (!jsonMode) {
42
+ tui.info('Plugin installation directory not found - nothing to remove');
43
+ }
44
+ }
45
+ if (await Bun.file(CLAUDE_SETTINGS_FILE).exists()) {
46
+ try {
47
+ const content = readFileSync(CLAUDE_SETTINGS_FILE, 'utf-8');
48
+ const settings = JSON.parse(content);
49
+ if (settings.permissions) {
50
+ const allPerms = [...AGENTUITY_ALLOW_PERMISSIONS, ...AGENTUITY_DENY_PERMISSIONS];
51
+ if (settings.permissions.allow) {
52
+ const originalAllowLen = settings.permissions.allow.length;
53
+ settings.permissions.allow = settings.permissions.allow.filter((p) => !allPerms.includes(p));
54
+ if (settings.permissions.allow.length < originalAllowLen) {
55
+ removedPermissions = true;
56
+ }
57
+ }
58
+ if (settings.permissions.deny) {
59
+ const originalDenyLen = settings.permissions.deny.length;
60
+ settings.permissions.deny = settings.permissions.deny.filter((p) => !allPerms.includes(p));
61
+ if (settings.permissions.deny.length < originalDenyLen) {
62
+ removedPermissions = true;
63
+ }
64
+ }
65
+ if (removedPermissions) {
66
+ writeFileSync(CLAUDE_SETTINGS_FILE, JSON.stringify(settings, null, 2) + '\n');
67
+ if (!jsonMode) {
68
+ tui.success('Removed Agentuity permissions from Claude Code settings');
69
+ }
70
+ }
71
+ else {
72
+ if (!jsonMode) {
73
+ tui.info('No Agentuity permissions found in Claude Code settings');
74
+ }
75
+ }
76
+ }
77
+ }
78
+ catch (error) {
79
+ if (!jsonMode) {
80
+ tui.warning(`Failed to update Claude Code settings: ${error}`);
81
+ }
82
+ }
83
+ }
84
+ else {
85
+ if (!jsonMode) {
86
+ tui.info('Claude Code settings file not found');
87
+ }
88
+ }
89
+ if (!jsonMode) {
90
+ tui.newline();
91
+ if (removedPlugin || removedPermissions) {
92
+ tui.output(tui.bold('Agentuity Coder plugin uninstalled successfully'));
93
+ }
94
+ else {
95
+ tui.output(tui.bold('Agentuity Coder plugin was not installed'));
96
+ }
97
+ tui.newline();
98
+ tui.info(`To reinstall, run: ${tui.bold(getCommand('ai claude-code install'))}`);
99
+ tui.newline();
100
+ }
101
+ return { success: true, removedPlugin, removedPermissions };
102
+ },
103
+ });
104
+ export default uninstallSubcommand;
105
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/cmd/ai/claude-code/uninstall.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,OAAO,mCAmClB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,OAAO,mCAwClB,CAAC"}
@@ -3,6 +3,7 @@ import capabilitiesCommand from './capabilities';
3
3
  import promptCommand from './prompt';
4
4
  import schemaCommand from './schema';
5
5
  import opencodeCommand from './opencode';
6
+ import claudeCodeCommand from './claude-code';
6
7
  import introSubcommand from './intro';
7
8
  import detectSubcommand from './detect';
8
9
  import { getCommand } from '../../command-prefix';
@@ -24,6 +25,10 @@ export const command = createCommand({
24
25
  command: getCommand('ai opencode install'),
25
26
  description: 'Install Agentuity Open Code plugin',
26
27
  },
28
+ {
29
+ command: getCommand('ai claude-code install'),
30
+ description: 'Install Agentuity Coder plugin for Claude Code',
31
+ },
27
32
  {
28
33
  command: getCommand('ai capabilities show'),
29
34
  description: 'Show CLI capabilities for AI agents',
@@ -37,6 +42,7 @@ export const command = createCommand({
37
42
  detectSubcommand,
38
43
  introSubcommand,
39
44
  opencodeCommand,
45
+ claudeCodeCommand,
40
46
  capabilitiesCommand,
41
47
  promptCommand,
42
48
  schemaCommand,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,mBAAmB,MAAM,gBAAgB,CAAC;AACjD,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,eAAe,MAAM,YAAY,CAAC;AACzC,OAAO,eAAe,MAAM,SAAS,CAAC;AACtC,OAAO,gBAAgB,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC;IACpC,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,kCAAkC;IAC/C,gBAAgB,EAAE,IAAI;IACtB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;YAChC,WAAW,EAAE,2CAA2C;SACxD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC;YAC/B,WAAW,EAAE,8CAA8C;SAC3D;QACD;YACC,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC;YAC1C,WAAW,EAAE,oCAAoC;SACjD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,sBAAsB,CAAC;YAC3C,WAAW,EAAE,qCAAqC;SAClD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,gBAAgB,CAAC;YACrC,WAAW,EAAE,sCAAsC;SACnD;KACD;IACD,WAAW,EAAE;QACZ,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,mBAAmB;QACnB,aAAa;QACb,aAAa;KACb;CACD,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cmd/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,mBAAmB,MAAM,gBAAgB,CAAC;AACjD,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,aAAa,MAAM,UAAU,CAAC;AACrC,OAAO,eAAe,MAAM,YAAY,CAAC;AACzC,OAAO,iBAAiB,MAAM,eAAe,CAAC;AAC9C,OAAO,eAAe,MAAM,SAAS,CAAC;AACtC,OAAO,gBAAgB,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC;IACpC,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,kCAAkC;IAC/C,gBAAgB,EAAE,IAAI;IACtB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC;YAChC,WAAW,EAAE,2CAA2C;SACxD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC;YAC/B,WAAW,EAAE,8CAA8C;SAC3D;QACD;YACC,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC;YAC1C,WAAW,EAAE,oCAAoC;SACjD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,wBAAwB,CAAC;YAC7C,WAAW,EAAE,gDAAgD;SAC7D;QACD;YACC,OAAO,EAAE,UAAU,CAAC,sBAAsB,CAAC;YAC3C,WAAW,EAAE,qCAAqC;SAClD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,gBAAgB,CAAC;YACrC,WAAW,EAAE,sCAAsC;SACnD;KACD;IACD,WAAW,EAAE;QACZ,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,iBAAiB;QACjB,mBAAmB;QACnB,aAAa;QACb,aAAa;KACb;CACD,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"entry-generator.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/entry-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAK5E,UAAU,oBAAoB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkrBpF"}
1
+ {"version":3,"file":"entry-generator.d.ts","sourceRoot":"","sources":["../../../src/cmd/build/entry-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAK5E,UAAU,oBAAoB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2qBpF"}
@@ -216,18 +216,11 @@ if (isDevelopment() && process.env.VITE_PORT) {
216
216
  const url = new URL(c.req.url);
217
217
  const queryString = url.search; // Includes the '?' prefix
218
218
 
219
- // Get the requested WebSocket subprotocol (Vite uses 'vite-hmr')
220
- const requestedProtocol = c.req.header('sec-websocket-protocol');
221
-
222
219
  const success = server.upgrade(c.req.raw, {
223
220
  data: { type: 'vite-hmr', queryString },
224
- // Echo back the requested subprotocol so the browser accepts the connection
225
- headers: requestedProtocol ? {
226
- 'Sec-WebSocket-Protocol': requestedProtocol,
227
- } : undefined,
228
221
  });
229
222
  if (success) {
230
- otel.logger.debug('[HMR Proxy] WebSocket upgrade successful (protocol: %s)', requestedProtocol || 'none');
223
+ otel.logger.debug('[HMR Proxy] WebSocket upgrade successful');
231
224
  return new Response(null);
232
225
  }
233
226
  otel.logger.error('[HMR Proxy] WebSocket upgrade returned false');
@@ -1 +1 @@
1
- {"version":3,"file":"entry-generator.js","sourceRoot":"","sources":["../../../src/cmd/build/entry-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-generator.js","sourceRoot":"","sources":["../../../src/cmd/build/entry-generator.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,13 @@ export declare function getWorkbenchConfig(config: AgentuityConfig | null, dev:
22
22
  route: string;
23
23
  headers: Record<string, string>;
24
24
  };
25
+ /**
26
+ * Check if the user's plugins include any known UI-framework Vite plugin
27
+ * (React, Svelte, Vue, Solid, Preact, …).
28
+ *
29
+ * Detection is name-based: Vite plugins expose a `name` property and every
30
+ * major framework plugin uses a predictable prefix. This avoids dynamically
31
+ * importing every possible framework just to compare names.
32
+ */
33
+ export declare function hasFrameworkPlugin(userPlugins: import('vite').PluginOption[]): boolean;
25
34
  //# sourceMappingURL=config-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;GAGG;AACH,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAuBjC;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,eAAe,GAAG,IAAI,EAC9B,GAAG,EAAE,OAAO,GACV;IACF,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAgBA"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;GAGG;AACH,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAuBjC;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,eAAe,GAAG,IAAI,EAC9B,GAAG,EAAE,OAAO,GACV;IACF,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAgBA;AAiBD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,OAAO,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAYtF"}
@@ -49,4 +49,34 @@ export function getWorkbenchConfig(config, dev) {
49
49
  headers: workbench.headers ?? {},
50
50
  };
51
51
  }
52
+ /**
53
+ * Known Vite framework plugin name prefixes.
54
+ * Each framework's Vite plugin registers one or more plugins whose names
55
+ * start with these prefixes. We match against these to detect whether the
56
+ * user has already configured a framework plugin in their agentuity.config.ts.
57
+ */
58
+ const FRAMEWORK_PLUGIN_PREFIXES = [
59
+ 'vite:react', // @vitejs/plugin-react (vite:react-babel, vite:react-refresh, …)
60
+ 'vite:preact', // @preact/preset-vite
61
+ 'vite-plugin-svelte', // @sveltejs/vite-plugin-svelte
62
+ 'vite:vue', // @vitejs/plugin-vue (vite:vue, vite:vue-jsx)
63
+ 'vite-plugin-solid', // vite-plugin-solid
64
+ 'solid', // vite-plugin-solid also uses plain "solid"
65
+ ];
66
+ /**
67
+ * Check if the user's plugins include any known UI-framework Vite plugin
68
+ * (React, Svelte, Vue, Solid, Preact, …).
69
+ *
70
+ * Detection is name-based: Vite plugins expose a `name` property and every
71
+ * major framework plugin uses a predictable prefix. This avoids dynamically
72
+ * importing every possible framework just to compare names.
73
+ */
74
+ export function hasFrameworkPlugin(userPlugins) {
75
+ const flat = userPlugins.flat(Infinity).filter(Boolean);
76
+ return flat.some((p) => p &&
77
+ typeof p === 'object' &&
78
+ 'name' in p &&
79
+ typeof p.name === 'string' &&
80
+ FRAMEWORK_PLUGIN_PREFIXES.some((prefix) => (p.name).startsWith(prefix)));
81
+ }
52
82
  //# sourceMappingURL=config-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,OAAe,EACf,MAAc;IAEd,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;IAExD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAsC,CAAC;QAEjE,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;YAC3E,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC3C,OAAO,UAAU,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CACjC,MAA8B,EAC9B,GAAY;IAOZ,MAAM,UAAU,GAAG,MAAM,EAAE,SAAS,KAAK,SAAS,CAAC;IAEnD,2BAA2B;IAC3B,uCAAuC;IACvC,iEAAiE;IACjE,MAAM,OAAO,GAAG,GAAG,IAAI,UAAU,CAAC;IAElC,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IAE1C,OAAO;QACN,UAAU;QACV,OAAO;QACP,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,YAAY;QACtC,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,EAAE;KAChC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,OAAe,EACf,MAAc;IAEd,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;IAExD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAsC,CAAC;QAEjE,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;YAC3E,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC3C,OAAO,UAAU,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CACjC,MAA8B,EAC9B,GAAY;IAOZ,MAAM,UAAU,GAAG,MAAM,EAAE,SAAS,KAAK,SAAS,CAAC;IAEnD,2BAA2B;IAC3B,uCAAuC;IACvC,iEAAiE;IACjE,MAAM,OAAO,GAAG,GAAG,IAAI,UAAU,CAAC;IAElC,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IAE1C,OAAO;QACN,UAAU;QACV,OAAO;QACP,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,YAAY;QACtC,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,EAAE;KAChC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,yBAAyB,GAAG;IACjC,YAAY,EAAE,kEAAkE;IAChF,aAAa,EAAE,sBAAsB;IACrC,oBAAoB,EAAE,+BAA+B;IACrD,UAAU,EAAE,mDAAmD;IAC/D,mBAAmB,EAAE,oBAAoB;IACzC,OAAO,EAAE,4CAA4C;CACrD,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAA0C;IAC5E,MAAM,IAAI,GAAI,WAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC,IAAI,CACf,CAAC,CAAU,EAAE,EAAE,CACd,CAAC;QACD,OAAO,CAAC,KAAK,QAAQ;QACrB,MAAM,IAAI,CAAC;QACX,OAAQ,CAAuB,CAAC,IAAI,KAAK,QAAQ;QACjD,yBAAyB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CACzC,CAAE,CAAsB,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CACjD,CACF,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server-bundler.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/server-bundler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAK7C;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,cAAc,GAAG,MAAM,CA0BzE;AAED,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoZ1F"}
1
+ {"version":3,"file":"server-bundler.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/server-bundler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAK7C;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,cAAc,GAAG,MAAM,CA0BzE;AAED,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+a1F"}
@@ -243,10 +243,24 @@ export async function installExternalsAndBuild(options) {
243
243
  }
244
244
  },
245
245
  };
246
+ // Detect files belonging to @agentuity/postgres or @agentuity/drizzle.
247
+ // Matches both published paths (node_modules/@agentuity/postgres/) and
248
+ // symlinked/monorepo paths (packages/postgres/dist/, packages/postgres/src/).
249
+ const isAgentuityPostgres = (filePath) => filePath.includes('/@agentuity/postgres/') ||
250
+ filePath.includes('\\@agentuity\\postgres\\') ||
251
+ filePath.includes('/packages/postgres/');
252
+ const isAgentuityDrizzle = (filePath) => filePath.includes('/@agentuity/drizzle/') ||
253
+ filePath.includes('\\@agentuity\\drizzle\\') ||
254
+ filePath.includes('/packages/drizzle/');
246
255
  const dbRewritePlugin = {
247
256
  name: 'agentuity:db-rewrite',
248
257
  setup(build) {
249
258
  build.onResolve({ filter: /^drizzle-orm\/bun-sql$/ }, (args) => {
259
+ // Don't redirect if the importer is @agentuity/drizzle itself — that would create a cycle.
260
+ // Matches both published packages in node_modules and symlinked monorepo paths.
261
+ if (args.importer && isAgentuityDrizzle(args.importer)) {
262
+ return; // Let default resolution handle it
263
+ }
250
264
  // Resolve to @agentuity/drizzle — the bundler will find it in node_modules
251
265
  // and bundle it into .agentuity/app.js (NOT kept external).
252
266
  const resolved = import.meta.resolveSync('@agentuity/drizzle', args.importer);
@@ -257,7 +271,14 @@ export async function installExternalsAndBuild(options) {
257
271
  filter: /\.[cm]?[jt]sx?$/,
258
272
  namespace: 'file',
259
273
  }, async (args) => {
260
- if (args.path.includes('/node_modules/')) {
274
+ // Skip node_modules and the rewrite-target packages themselves.
275
+ // The symlink check is needed because symlinked packages (e.g. via
276
+ // workspace links) resolve to paths outside node_modules/ (like
277
+ // ../../sdk/packages/postgres/dist/) and would otherwise be rewritten,
278
+ // creating circular imports (postgres importing from itself).
279
+ if (args.path.includes('/node_modules/') ||
280
+ isAgentuityPostgres(args.path) ||
281
+ isAgentuityDrizzle(args.path)) {
261
282
  return;
262
283
  }
263
284
  const contents = await Bun.file(args.path).text();