@agenticmail/enterprise 0.5.374 → 0.5.376

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.
@@ -0,0 +1,246 @@
1
+ import "./chunk-KFQGP6VL.js";
2
+
3
+ // src/cli-update.ts
4
+ import { execSync } from "child_process";
5
+ import { readFileSync, writeFileSync, existsSync } from "fs";
6
+ import { join } from "path";
7
+ import { homedir, platform } from "os";
8
+ var PKG_NAME = "@agenticmail/enterprise";
9
+ function getCurrentVersion() {
10
+ try {
11
+ const pkgPath = join(import.meta.dirname || __dirname, "..", "package.json");
12
+ if (existsSync(pkgPath)) {
13
+ return JSON.parse(readFileSync(pkgPath, "utf-8")).version;
14
+ }
15
+ } catch {
16
+ }
17
+ try {
18
+ const out = execSync(`npm ls -g ${PKG_NAME} --json 2>/dev/null`, { encoding: "utf-8", timeout: 1e4 });
19
+ const data = JSON.parse(out);
20
+ return data.dependencies?.[PKG_NAME]?.version || "unknown";
21
+ } catch {
22
+ }
23
+ return "unknown";
24
+ }
25
+ async function getLatestVersion() {
26
+ try {
27
+ const res = await fetch(`https://registry.npmjs.org/${PKG_NAME}/latest`, {
28
+ headers: { "Accept": "application/json" },
29
+ signal: AbortSignal.timeout(1e4)
30
+ });
31
+ if (!res.ok) throw new Error(`HTTP ${res.status}`);
32
+ const data = await res.json();
33
+ return data.version;
34
+ } catch {
35
+ try {
36
+ return execSync(`npm view ${PKG_NAME} version 2>/dev/null`, { encoding: "utf-8", timeout: 1e4 }).trim();
37
+ } catch {
38
+ }
39
+ }
40
+ return "unknown";
41
+ }
42
+ async function checkForUpdate() {
43
+ const current = getCurrentVersion();
44
+ const latest = await getLatestVersion();
45
+ const updateAvailable = latest !== "unknown" && current !== "unknown" && latest !== current;
46
+ const info = {
47
+ current,
48
+ latest,
49
+ updateAvailable,
50
+ checkedAt: (/* @__PURE__ */ new Date()).toISOString()
51
+ };
52
+ try {
53
+ const cacheDir = join(homedir(), ".agenticmail");
54
+ const cachePath = join(cacheDir, "update-check.json");
55
+ writeFileSync(cachePath, JSON.stringify(info, null, 2));
56
+ } catch {
57
+ }
58
+ return info;
59
+ }
60
+ function getCachedUpdateCheck() {
61
+ try {
62
+ const cachePath = join(homedir(), ".agenticmail", "update-check.json");
63
+ if (existsSync(cachePath)) {
64
+ return JSON.parse(readFileSync(cachePath, "utf-8"));
65
+ }
66
+ } catch {
67
+ }
68
+ return null;
69
+ }
70
+ async function performUpdate(options) {
71
+ const current = getCurrentVersion();
72
+ console.log(`
73
+ \u{1F380} AgenticMail Enterprise Update
74
+ `);
75
+ console.log(` Current version: ${current}`);
76
+ const latest = await getLatestVersion();
77
+ console.log(` Latest version: ${latest}`);
78
+ if (latest === current) {
79
+ console.log(`
80
+ \u2705 Already up to date!
81
+ `);
82
+ return { success: true, from: current, to: current, message: "Already up to date" };
83
+ }
84
+ if (latest === "unknown") {
85
+ console.log(`
86
+ \u274C Could not determine latest version
87
+ `);
88
+ return { success: false, from: current, to: "unknown", message: "Could not determine latest version" };
89
+ }
90
+ console.log(`
91
+ \u{1F4E6} Installing ${PKG_NAME}@${latest}...`);
92
+ try {
93
+ execSync(`npm install -g ${PKG_NAME}@${latest}`, {
94
+ stdio: "inherit",
95
+ timeout: 12e4
96
+ });
97
+ } catch (err) {
98
+ console.error(`
99
+ \u274C Update failed: ${err.message}
100
+ `);
101
+ return { success: false, from: current, to: latest, message: `npm install failed: ${err.message}` };
102
+ }
103
+ const newVersion = getCurrentVersion();
104
+ console.log(`
105
+ \u2705 Updated to v${newVersion}`);
106
+ if (options?.restart !== false) {
107
+ console.log(` \u{1F504} Restarting services...`);
108
+ try {
109
+ const jlist = execSync('pm2 jlist 2>/dev/null || echo "[]"', { encoding: "utf-8", timeout: 1e4 });
110
+ const procs = JSON.parse(jlist);
111
+ const amProcs = procs.filter((p) => {
112
+ const script = p.pm2_env?.pm_exec_path || "";
113
+ return script.includes("agenticmail") || script.includes("enterprise");
114
+ });
115
+ if (amProcs.length > 0) {
116
+ const names = amProcs.map((p) => p.name).join(" ");
117
+ console.log(` Restarting: ${names}`);
118
+ execSync(`pm2 restart ${names}`, { stdio: "inherit", timeout: 3e4 });
119
+ execSync("pm2 save", { stdio: "ignore", timeout: 1e4 });
120
+ console.log(` \u2705 All services restarted`);
121
+ } else {
122
+ console.log(` \u26A0\uFE0F No PM2 processes found \u2014 restart manually if needed`);
123
+ }
124
+ } catch (err) {
125
+ console.log(` \u26A0\uFE0F Could not restart PM2: ${err.message}`);
126
+ console.log(` Run manually: pm2 restart enterprise && pm2 save`);
127
+ }
128
+ }
129
+ console.log("");
130
+ return { success: true, from: current, to: newVersion, message: `Updated from ${current} to ${newVersion}` };
131
+ }
132
+ function setupAutoUpdateCron() {
133
+ console.log(`
134
+ \u{1F380} Auto-Update Cron Setup
135
+ `);
136
+ const isWindows = platform() === "win32";
137
+ if (isWindows) {
138
+ const taskName = "AgenticMailEnterprise-AutoUpdate";
139
+ const cmd = `npm install -g ${PKG_NAME}@latest && pm2 restart enterprise && pm2 save`;
140
+ console.log(` Creating Windows Task Scheduler entry...`);
141
+ console.log(` Task: ${taskName}`);
142
+ console.log(` Schedule: Every 6 hours
143
+ `);
144
+ try {
145
+ execSync(
146
+ `schtasks /create /tn "${taskName}" /tr "cmd /c ${cmd}" /sc HOURLY /mo 6 /f`,
147
+ { stdio: "inherit" }
148
+ );
149
+ console.log(` \u2705 Auto-update scheduled!`);
150
+ console.log(` To remove: schtasks /delete /tn "${taskName}" /f
151
+ `);
152
+ } catch (err) {
153
+ console.error(` \u274C Failed: ${err.message}`);
154
+ console.log(` Manual alternative:`);
155
+ console.log(` schtasks /create /tn "${taskName}" /tr "cmd /c ${cmd}" /sc HOURLY /mo 6
156
+ `);
157
+ }
158
+ } else {
159
+ const npmPath = execSync("which npm", { encoding: "utf-8" }).trim();
160
+ const pm2Path = execSync("which pm2 2>/dev/null || echo pm2", { encoding: "utf-8" }).trim();
161
+ const cronLine = `0 */6 * * * ${npmPath} install -g ${PKG_NAME}@latest && ${pm2Path} restart enterprise && ${pm2Path} save 2>/dev/null`;
162
+ const cronTag = "# agenticmail-auto-update";
163
+ console.log(` Adding cron job (every 6 hours):
164
+ `);
165
+ console.log(` ${cronLine}
166
+ `);
167
+ try {
168
+ const existing = execSync('crontab -l 2>/dev/null || echo ""', { encoding: "utf-8" });
169
+ if (existing.includes(cronTag)) {
170
+ console.log(` \u26A0\uFE0F Auto-update cron already installed. Replacing...`);
171
+ const filtered = existing.split("\n").filter((l) => !l.includes(cronTag) && !l.includes("agenticmail")).join("\n");
172
+ const newCron = `${filtered.trimEnd()}
173
+ ${cronLine} ${cronTag}
174
+ `;
175
+ execSync(`echo "${newCron}" | crontab -`, { timeout: 5e3 });
176
+ } else {
177
+ const newCron = `${existing.trimEnd()}
178
+ ${cronLine} ${cronTag}
179
+ `;
180
+ execSync(`echo "${newCron}" | crontab -`, { timeout: 5e3 });
181
+ }
182
+ console.log(` \u2705 Auto-update cron installed!`);
183
+ console.log(` To remove: crontab -e and delete the agenticmail line
184
+ `);
185
+ } catch (err) {
186
+ console.error(` \u274C Failed to install cron: ${err.message}`);
187
+ console.log(` Manual alternative:`);
188
+ console.log(` crontab -e`);
189
+ console.log(` Add: ${cronLine}
190
+ `);
191
+ }
192
+ }
193
+ }
194
+ function startBackgroundUpdateCheck() {
195
+ setTimeout(async () => {
196
+ try {
197
+ const info = await checkForUpdate();
198
+ if (info.updateAvailable) {
199
+ console.log(`[update] \u{1F380} New version available: v${info.latest} (current: v${info.current})`);
200
+ console.log(`[update] Run: agenticmail-enterprise update`);
201
+ }
202
+ } catch {
203
+ }
204
+ }, 3e4);
205
+ setInterval(async () => {
206
+ try {
207
+ const info = await checkForUpdate();
208
+ if (info.updateAvailable) {
209
+ console.log(`[update] \u{1F380} New version available: v${info.latest} (current: v${info.current})`);
210
+ }
211
+ } catch {
212
+ }
213
+ }, 6 * 60 * 6e4);
214
+ }
215
+ async function runUpdate(args) {
216
+ if (args.includes("--cron")) {
217
+ setupAutoUpdateCron();
218
+ return;
219
+ }
220
+ if (args.includes("--check")) {
221
+ const info = await checkForUpdate();
222
+ if (info.updateAvailable) {
223
+ console.log(`
224
+ \u{1F380} Update available: v${info.current} \u2192 v${info.latest}`);
225
+ console.log(` Run: agenticmail-enterprise update
226
+ `);
227
+ } else {
228
+ console.log(`
229
+ \u2705 Up to date (v${info.current})
230
+ `);
231
+ }
232
+ return;
233
+ }
234
+ const noRestart = args.includes("--no-restart");
235
+ await performUpdate({ restart: !noRestart });
236
+ }
237
+ export {
238
+ checkForUpdate,
239
+ getCachedUpdateCheck,
240
+ getCurrentVersion,
241
+ getLatestVersion,
242
+ performUpdate,
243
+ runUpdate,
244
+ setupAutoUpdateCron,
245
+ startBackgroundUpdateCheck
246
+ };
package/dist/cli.js CHANGED
@@ -38,6 +38,10 @@ Commands:
38
38
  recover Recover a domain/subdomain on a new machine
39
39
  reset-password Reset admin password directly in the database
40
40
  verify-domain Check DNS verification for your domain
41
+ update / upgrade Update to the latest version
42
+ --check Check for updates without installing
43
+ --cron Set up automatic updates (cron/task scheduler)
44
+ --no-restart Update without restarting PM2 services
41
45
 
42
46
  Domain Recovery & Verification:
43
47
  npx @agenticmail/enterprise recover
@@ -55,16 +59,20 @@ Skill Development:
55
59
  npx @agenticmail/enterprise submit-skill ./community-skills/my-skill/
56
60
  `);
57
61
  break;
62
+ case "update":
63
+ case "upgrade":
64
+ import("./cli-update-6ZZTT5UR.js").then((m) => m.runUpdate(args.slice(1))).catch(fatal);
65
+ break;
58
66
  case "serve":
59
67
  case "start":
60
- import("./cli-serve-42HTQ45A.js").then((m) => m.runServe(args.slice(1))).catch(fatal);
68
+ import("./cli-serve-IOSXZHIK.js").then((m) => m.runServe(args.slice(1))).catch(fatal);
61
69
  break;
62
70
  case "agent":
63
- import("./cli-agent-CFLWIYRJ.js").then((m) => m.runAgent(args.slice(1))).catch(fatal);
71
+ import("./cli-agent-HWRINZSE.js").then((m) => m.runAgent(args.slice(1))).catch(fatal);
64
72
  break;
65
73
  case "setup":
66
74
  default:
67
- import("./setup-4DKCCU6S.js").then((m) => m.runSetupWizard()).catch(fatal);
75
+ import("./setup-C22ILWUJ.js").then((m) => m.runSetupWizard()).catch(fatal);
68
76
  break;
69
77
  }
70
78
  function fatal(err) {
@@ -135,6 +135,8 @@ function App() {
135
135
  const [permissions, setPermissions] = useState('*'); // '*' = full access, or { pageId: true | ['tab1','tab2'] }
136
136
  const [mustResetPassword, setMustResetPassword] = useState(false);
137
137
  const [show2faReminder, setShow2faReminder] = useState(false);
138
+ const [updateInfo, setUpdateInfo] = useState(null);
139
+ const [updating, setUpdating] = useState(false);
138
140
  const [impersonating, _setImpersonating] = useState(function() {
139
141
  try { var s = localStorage.getItem('em_impersonating'); return s ? JSON.parse(s) : null; } catch { return null; }
140
142
  });
@@ -329,7 +331,14 @@ function App() {
329
331
  if (!authChecked) return h('div', { style: { minHeight: '100vh', display: 'flex', alignItems: 'center', justifyContent: 'center', background: 'var(--bg-primary)', color: 'var(--text-muted)' } }, 'Loading...');
330
332
  if (needsSetup === true && !authed) return h(OnboardingWizard, { onComplete: () => { setNeedsSetup(false); setAuthed(true); authCall('/me').then(d => { setUser(d.user || d); }).catch(() => {}); } });
331
333
  if (!authed) return h(LoginPage, { onLogin: async (d) => {
332
- if (d?.user) { setUser(d.user); if (!d.user.totpEnabled) setShow2faReminder(true); }
334
+ if (d?.user) {
335
+ setUser(d.user);
336
+ if (!d.user.totpEnabled) setShow2faReminder(true);
337
+ // Check for updates (admin only)
338
+ if (d.user.role === 'admin' || d.user.role === 'owner') {
339
+ apiCall('/admin/system/update-check').then(u => { if (u?.updateAvailable) setUpdateInfo(u); }).catch(() => {});
340
+ }
341
+ }
333
342
  if (d?.mustResetPassword) setMustResetPassword(true);
334
343
  // Init encryption before enabling dashboard
335
344
  try {
@@ -544,6 +553,37 @@ function App() {
544
553
  h('button', { className: 'btn btn-warning btn-sm', onClick: () => { setPage('settings'); setShow2faReminder(false); history.pushState(null, '', '/dashboard/settings'); } }, 'Set Up 2FA'),
545
554
  h('button', { className: 'btn btn-ghost btn-sm', onClick: () => setShow2faReminder(false), style: { padding: '2px 6px', minWidth: 0 } }, '\u00d7')
546
555
  ),
556
+ // Update available banner
557
+ updateInfo && h('div', { style: { display: 'flex', alignItems: 'center', gap: 12, padding: '10px 16px', margin: '0 0 16px', background: 'rgba(16,185,129,0.1)', border: '1px solid rgba(16,185,129,0.4)', borderRadius: 8, fontSize: 13 } },
558
+ h('span', { style: { fontSize: 18 } }, '\uD83C\uDF80'),
559
+ h('div', { style: { flex: 1 } },
560
+ h('strong', null, 'Update Available'),
561
+ h('span', { style: { color: 'var(--text-secondary)', marginLeft: 6 } },
562
+ 'v' + updateInfo.current + ' \u2192 v' + updateInfo.latest
563
+ )
564
+ ),
565
+ h('button', {
566
+ className: 'btn btn-sm',
567
+ disabled: updating,
568
+ style: { background: 'rgba(16,185,129,0.9)', color: '#fff', border: 'none' },
569
+ onClick: async () => {
570
+ setUpdating(true);
571
+ try {
572
+ const r = await apiCall('/admin/system/update', { method: 'POST' });
573
+ if (r?.success) {
574
+ setUpdateInfo(null);
575
+ showToast && showToast('Updated to v' + r.to + ' — services restarting...', 'success');
576
+ } else {
577
+ showToast && showToast('Update failed: ' + (r?.message || 'unknown'), 'error');
578
+ }
579
+ } catch (e) {
580
+ showToast && showToast('Update failed: ' + e.message, 'error');
581
+ }
582
+ setUpdating(false);
583
+ }
584
+ }, updating ? 'Updating...' : 'Update Now'),
585
+ h('button', { className: 'btn btn-ghost btn-sm', onClick: () => setUpdateInfo(null), style: { padding: '2px 6px', minWidth: 0 } }, '\u00d7')
586
+ ),
547
587
  selectedAgentId
548
588
  ? h(AgentDetailPage, { agentId: selectedAgentId, onBack: () => { _setSelectedAgentId(null); _setPage('agents'); history.pushState(null, '', '/dashboard/agents'); } })
549
589
  : page === 'agents'
package/dist/index.js CHANGED
@@ -1,3 +1,7 @@
1
+ import {
2
+ provision,
3
+ runSetupWizard
4
+ } from "./chunk-OPPT7QRL.js";
1
5
  import {
2
6
  AgenticMailManager,
3
7
  GoogleEmailProvider,
@@ -10,10 +14,6 @@ import {
10
14
  generateEnvFile,
11
15
  generateFlyToml
12
16
  } from "./chunk-EGEHCCZZ.js";
13
- import {
14
- provision,
15
- runSetupWizard
16
- } from "./chunk-4THTH64Q.js";
17
17
  import {
18
18
  AgentRuntime,
19
19
  EmailChannel,
@@ -28,7 +28,7 @@ import {
28
28
  executeTool,
29
29
  runAgentLoop,
30
30
  toolsToDefinitions
31
- } from "./chunk-CYBP2ZIB.js";
31
+ } from "./chunk-BC4VT5GK.js";
32
32
  import {
33
33
  ValidationError,
34
34
  auditLogger,
@@ -42,7 +42,7 @@ import {
42
42
  requireRole,
43
43
  securityHeaders,
44
44
  validate
45
- } from "./chunk-OOP2M3YE.js";
45
+ } from "./chunk-MI4NMRKF.js";
46
46
  import "./chunk-DJBCRQTD.js";
47
47
  import {
48
48
  PROVIDER_REGISTRY,
@@ -82,7 +82,8 @@ import {
82
82
  init_storage_manager,
83
83
  init_tenant,
84
84
  init_workforce
85
- } from "./chunk-LVKRN4IR.js";
85
+ } from "./chunk-VPWGFA5K.js";
86
+ import "./chunk-WYDVMFGJ.js";
86
87
  import "./chunk-3UAFHUEC.js";
87
88
  import {
88
89
  ENGINE_TABLES,
@@ -94,6 +95,12 @@ import {
94
95
  sqliteToMySQL,
95
96
  sqliteToPostgres
96
97
  } from "./chunk-OWL3QVH7.js";
98
+ import {
99
+ AgentConfigGenerator,
100
+ DeploymentEngine,
101
+ init_agent_config,
102
+ init_deployer
103
+ } from "./chunk-FT5MAYTU.js";
97
104
  import "./chunk-Z7NVD3OQ.js";
98
105
  import {
99
106
  AgentMemoryManager,
@@ -103,19 +110,16 @@ import "./chunk-AF3WSNVX.js";
103
110
  import "./chunk-74ZCQKYU.js";
104
111
  import "./chunk-Z6K5FKAB.js";
105
112
  import "./chunk-C6JP5NR6.js";
106
- import "./chunk-WYDVMFGJ.js";
113
+ import {
114
+ SecureVault,
115
+ init_vault
116
+ } from "./chunk-WUAWWKTN.js";
107
117
  import {
108
118
  BUILTIN_SKILLS,
109
119
  PRESET_PROFILES,
110
120
  PermissionEngine,
111
121
  init_skills
112
122
  } from "./chunk-TCDRCMJJ.js";
113
- import {
114
- AgentConfigGenerator,
115
- DeploymentEngine,
116
- init_agent_config,
117
- init_deployer
118
- } from "./chunk-FT5MAYTU.js";
119
123
  import {
120
124
  CircuitBreaker,
121
125
  CircuitOpenError,
@@ -129,10 +133,6 @@ import "./chunk-37ABTUFU.js";
129
133
  import "./chunk-NU657BBQ.js";
130
134
  import "./chunk-PGAU3W3M.js";
131
135
  import "./chunk-FLQ5FLHW.js";
132
- import {
133
- SecureVault,
134
- init_vault
135
- } from "./chunk-WUAWWKTN.js";
136
136
  import {
137
137
  DatabaseAdapter
138
138
  } from "./chunk-FLRYMSKY.js";
@@ -0,0 +1,92 @@
1
+ import {
2
+ activity,
3
+ agentStatus,
4
+ approvals,
5
+ cluster,
6
+ commBus,
7
+ communityRegistry,
8
+ compliance,
9
+ configGen,
10
+ databaseManager,
11
+ deployer,
12
+ dlp,
13
+ engine,
14
+ getChatPoller,
15
+ getEmailPoller,
16
+ getMessagingPoller,
17
+ guardrails,
18
+ hierarchyManager,
19
+ init_routes,
20
+ journal,
21
+ knowledgeBase,
22
+ knowledgeContribution,
23
+ lifecycle,
24
+ memoryManager,
25
+ mountRuntimeApp,
26
+ onboarding,
27
+ orgIntegrations,
28
+ permissionEngine,
29
+ policyEngine,
30
+ policyImporter,
31
+ setEngineDb,
32
+ setRuntime,
33
+ skillUpdater,
34
+ storageManager,
35
+ tenants,
36
+ vault,
37
+ workforce
38
+ } from "./chunk-VPWGFA5K.js";
39
+ import "./chunk-WYDVMFGJ.js";
40
+ import "./chunk-3UAFHUEC.js";
41
+ import "./chunk-FT5MAYTU.js";
42
+ import "./chunk-Z7NVD3OQ.js";
43
+ import "./chunk-VSBC4SWO.js";
44
+ import "./chunk-AF3WSNVX.js";
45
+ import "./chunk-74ZCQKYU.js";
46
+ import "./chunk-Z6K5FKAB.js";
47
+ import "./chunk-C6JP5NR6.js";
48
+ import "./chunk-WUAWWKTN.js";
49
+ import "./chunk-TCDRCMJJ.js";
50
+ import "./chunk-YDD5TC5Q.js";
51
+ import "./chunk-FLQ5FLHW.js";
52
+ import "./chunk-A2XPEZ7L.js";
53
+ import "./chunk-22U7TZPN.js";
54
+ import "./chunk-KFQGP6VL.js";
55
+ init_routes();
56
+ export {
57
+ activity,
58
+ agentStatus,
59
+ approvals,
60
+ cluster,
61
+ commBus,
62
+ communityRegistry,
63
+ compliance,
64
+ configGen,
65
+ databaseManager,
66
+ deployer,
67
+ dlp,
68
+ engine as engineRoutes,
69
+ getChatPoller,
70
+ getEmailPoller,
71
+ getMessagingPoller,
72
+ guardrails,
73
+ hierarchyManager,
74
+ journal,
75
+ knowledgeBase,
76
+ knowledgeContribution,
77
+ lifecycle,
78
+ memoryManager,
79
+ mountRuntimeApp,
80
+ onboarding,
81
+ orgIntegrations,
82
+ permissionEngine,
83
+ policyEngine,
84
+ policyImporter,
85
+ setEngineDb,
86
+ setRuntime,
87
+ skillUpdater,
88
+ storageManager,
89
+ tenants,
90
+ vault,
91
+ workforce
92
+ };
@@ -0,0 +1,45 @@
1
+ import {
2
+ AgentRuntime,
3
+ EmailChannel,
4
+ FollowUpScheduler,
5
+ SessionManager,
6
+ SubAgentManager,
7
+ ToolRegistry,
8
+ callLLM,
9
+ createAgentRuntime,
10
+ createNoopHooks,
11
+ createRuntimeHooks,
12
+ estimateMessageTokens,
13
+ estimateTokens,
14
+ executeTool,
15
+ runAgentLoop,
16
+ toolsToDefinitions
17
+ } from "./chunk-BBGCFJWI.js";
18
+ import {
19
+ PROVIDER_REGISTRY,
20
+ listAllProviders,
21
+ resolveApiKeyForProvider,
22
+ resolveProvider
23
+ } from "./chunk-UF3ZJMJO.js";
24
+ import "./chunk-KFQGP6VL.js";
25
+ export {
26
+ AgentRuntime,
27
+ EmailChannel,
28
+ FollowUpScheduler,
29
+ PROVIDER_REGISTRY,
30
+ SessionManager,
31
+ SubAgentManager,
32
+ ToolRegistry,
33
+ callLLM,
34
+ createAgentRuntime,
35
+ createNoopHooks,
36
+ createRuntimeHooks,
37
+ estimateMessageTokens,
38
+ estimateTokens,
39
+ executeTool,
40
+ listAllProviders,
41
+ resolveApiKeyForProvider,
42
+ resolveProvider,
43
+ runAgentLoop,
44
+ toolsToDefinitions
45
+ };
@@ -0,0 +1,45 @@
1
+ import {
2
+ AgentRuntime,
3
+ EmailChannel,
4
+ FollowUpScheduler,
5
+ SessionManager,
6
+ SubAgentManager,
7
+ ToolRegistry,
8
+ callLLM,
9
+ createAgentRuntime,
10
+ createNoopHooks,
11
+ createRuntimeHooks,
12
+ estimateMessageTokens,
13
+ estimateTokens,
14
+ executeTool,
15
+ runAgentLoop,
16
+ toolsToDefinitions
17
+ } from "./chunk-BC4VT5GK.js";
18
+ import {
19
+ PROVIDER_REGISTRY,
20
+ listAllProviders,
21
+ resolveApiKeyForProvider,
22
+ resolveProvider
23
+ } from "./chunk-UF3ZJMJO.js";
24
+ import "./chunk-KFQGP6VL.js";
25
+ export {
26
+ AgentRuntime,
27
+ EmailChannel,
28
+ FollowUpScheduler,
29
+ PROVIDER_REGISTRY,
30
+ SessionManager,
31
+ SubAgentManager,
32
+ ToolRegistry,
33
+ callLLM,
34
+ createAgentRuntime,
35
+ createNoopHooks,
36
+ createRuntimeHooks,
37
+ estimateMessageTokens,
38
+ estimateTokens,
39
+ executeTool,
40
+ listAllProviders,
41
+ resolveApiKeyForProvider,
42
+ resolveProvider,
43
+ runAgentLoop,
44
+ toolsToDefinitions
45
+ };
@@ -0,0 +1,28 @@
1
+ import {
2
+ createServer
3
+ } from "./chunk-6MR5ICED.js";
4
+ import "./chunk-DJBCRQTD.js";
5
+ import "./chunk-UF3ZJMJO.js";
6
+ import "./chunk-LVKRN4IR.js";
7
+ import "./chunk-3UAFHUEC.js";
8
+ import "./chunk-Z7NVD3OQ.js";
9
+ import "./chunk-VSBC4SWO.js";
10
+ import "./chunk-AF3WSNVX.js";
11
+ import "./chunk-74ZCQKYU.js";
12
+ import "./chunk-Z6K5FKAB.js";
13
+ import "./chunk-C6JP5NR6.js";
14
+ import "./chunk-WYDVMFGJ.js";
15
+ import "./chunk-TCDRCMJJ.js";
16
+ import "./chunk-FT5MAYTU.js";
17
+ import "./chunk-YDD5TC5Q.js";
18
+ import "./chunk-37ABTUFU.js";
19
+ import "./chunk-NU657BBQ.js";
20
+ import "./chunk-PGAU3W3M.js";
21
+ import "./chunk-FLQ5FLHW.js";
22
+ import "./chunk-WUAWWKTN.js";
23
+ import "./chunk-A2XPEZ7L.js";
24
+ import "./chunk-22U7TZPN.js";
25
+ import "./chunk-KFQGP6VL.js";
26
+ export {
27
+ createServer
28
+ };
@@ -0,0 +1,28 @@
1
+ import {
2
+ createServer
3
+ } from "./chunk-MI4NMRKF.js";
4
+ import "./chunk-DJBCRQTD.js";
5
+ import "./chunk-UF3ZJMJO.js";
6
+ import "./chunk-VPWGFA5K.js";
7
+ import "./chunk-WYDVMFGJ.js";
8
+ import "./chunk-3UAFHUEC.js";
9
+ import "./chunk-FT5MAYTU.js";
10
+ import "./chunk-Z7NVD3OQ.js";
11
+ import "./chunk-VSBC4SWO.js";
12
+ import "./chunk-AF3WSNVX.js";
13
+ import "./chunk-74ZCQKYU.js";
14
+ import "./chunk-Z6K5FKAB.js";
15
+ import "./chunk-C6JP5NR6.js";
16
+ import "./chunk-WUAWWKTN.js";
17
+ import "./chunk-TCDRCMJJ.js";
18
+ import "./chunk-YDD5TC5Q.js";
19
+ import "./chunk-37ABTUFU.js";
20
+ import "./chunk-NU657BBQ.js";
21
+ import "./chunk-PGAU3W3M.js";
22
+ import "./chunk-FLQ5FLHW.js";
23
+ import "./chunk-A2XPEZ7L.js";
24
+ import "./chunk-22U7TZPN.js";
25
+ import "./chunk-KFQGP6VL.js";
26
+ export {
27
+ createServer
28
+ };
@@ -0,0 +1,20 @@
1
+ import {
2
+ promptCompanyInfo,
3
+ promptDatabase,
4
+ promptDeployment,
5
+ promptDomain,
6
+ promptRegistration,
7
+ provision,
8
+ runSetupWizard
9
+ } from "./chunk-OPPT7QRL.js";
10
+ import "./chunk-P6W565WH.js";
11
+ import "./chunk-KFQGP6VL.js";
12
+ export {
13
+ promptCompanyInfo,
14
+ promptDatabase,
15
+ promptDeployment,
16
+ promptDomain,
17
+ promptRegistration,
18
+ provision,
19
+ runSetupWizard
20
+ };