@amodalai/amodal 0.3.89 → 0.3.90

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # @amodalai/amodal
2
2
 
3
+ ## 0.3.90
4
+
5
+ ### Patch Changes
6
+
7
+ - e31c71f: **Hosted runtime now loads agents from disk like OSS does** — same code path, same bundle hydration, same driver discovery. The standalone deploy-snapshot abstraction is gone.
8
+
9
+ Removed:
10
+ - `@amodalai/core` exports `buildSnapshot`, `snapshotToBundle`, `loadSnapshotFromFile`, `serializeSnapshot`, `snapshotSizeBytes`, `parseSurfaceFromSnapshot`, and the entire `packages/core/src/snapshot/` module.
11
+ - `@amodalai/types` exports `DeploySnapshot`, `SnapshotConnection`, `SnapshotSkill`, `SnapshotAutomation`, `SnapshotKnowledge`, `SnapshotTool`, `SnapshotSubagent`, `SnapshotEval`, `BuildSnapshotOptions`.
12
+ - `@amodalai/runtime` exports `createSnapshotServer` / `SnapshotServerConfig`.
13
+ - `@amodalai/amodal` `getActiveSnapshot` / `uploadSnapshot` methods on `PlatformClient`. `SnapshotDeploymentMeta` renamed to `DeploymentMeta`.
14
+
15
+ Added / renamed:
16
+ - `@amodalai/types` `ToolBuildManifest` and `ToolBuildManifestEntry` (moved from `snapshot-types.ts` into `tool-types.ts`; renamed from `SnapshotBuildManifest` / `SnapshotToolManifestEntry`). These describe tool sandbox snapshots, which are a distinct concept from deploy snapshots and survive the deletion.
17
+ - `@amodalai/runtime` `createBundleServer` / `BundleServerConfig` — drop-in replacement for the old snapshot-server, loads from a repo directory (or extracted tarball) via `loadRepoFromDisk`.
18
+ - `@amodalai/types` `RepoLoadOptions.resolvedCredentials?: Record<string, string>` — pre-resolved credentials passed to every `ConnectionDriver.loadConnection()` call as `LoadConnectionOptions.credentials`, and stamped onto the returned `AgentBundle.resolvedCredentials`. Community drivers (SQL, GraphQL, etc.) can resolve `env:KEY` references in their spec.json against deploy-time secrets, not just `process.env`.
19
+
20
+ Changed CLI behavior:
21
+ - `amodal build` now writes `<output>/agent.tar.gz` (the bundle) and `<output>/manifest.json` (audit metadata: deployId, commitSha, branch, agentName, source, optional toolBuildManifest). Default output dir is `./build/` (was `resolved-config.json`).
22
+ - `amodal serve --config <path>` now accepts a bundle directory or a `.tar.gz` (auto-extracted). `--platform` mode dropped; equivalent flow is to download the tarball and pass `--config`.
23
+ - `amodal chat --config <path>` likewise accepts a bundle directory.
24
+ - Deployment-listing endpoints in `PlatformClient` (`listDeployments`, `rollback`, `promote`, `getStatus`) now hit `/api/deployments` (was `/api/snapshot-deployments`). Cloud-side rename to follow.
25
+
26
+ This is the OSS half of a coordinated change. Cloud-side (build-server, platform-api, hosted-runtime) follows: hosted-runtime fetches `repo.tar.gz` from R2 at boot and calls `loadRepoFromDisk`; `CHANNEL_CONFIG` env injection is dropped (channels are read from `bundle.channels`); the deployments table stops storing `snapshot` JSONB.
27
+
28
+ - Updated dependencies [e31c71f]
29
+ - @amodalai/types@0.3.90
30
+ - @amodalai/core@0.3.90
31
+ - @amodalai/runtime@0.3.90
32
+ - @amodalai/db@0.3.90
33
+ - @amodalai/runtime-app@0.3.90
34
+ - @amodalai/studio@0.3.90
35
+
3
36
  ## 0.3.89
4
37
 
5
38
  ### Patch Changes
@@ -1,22 +1,40 @@
1
1
  /**
2
2
  * @license
3
- * Copyright 2025 Amodal Labs, Inc.
3
+ * Copyright 2026 Amodal Labs, Inc.
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
6
  import type { CommandModule } from 'yargs';
7
+ import type { ToolBuildManifest } from '@amodalai/types';
7
8
  export interface BuildOptions {
8
9
  cwd?: string;
9
10
  output?: string;
10
11
  tools?: boolean;
11
12
  }
12
13
  /**
13
- * Build a deploy snapshot from the local repo.
14
+ * Audit + handoff metadata `amodal build` emits alongside the bundle
15
+ * tarball. Captures who built it, from where, against which commit —
16
+ * the minimum a runtime / platform needs without re-parsing the bundle.
17
+ */
18
+ export interface DeployManifest {
19
+ deployId: string;
20
+ createdAt: string;
21
+ createdBy: string;
22
+ source: 'cli' | 'github' | 'admin-ui';
23
+ commitSha?: string;
24
+ branch?: string;
25
+ message?: string;
26
+ agentName: string;
27
+ toolBuildManifest?: ToolBuildManifest;
28
+ }
29
+ /**
30
+ * Build a deploy artifact (tarball + manifest) from the local repo.
14
31
  *
15
32
  * 1. Find repo root
16
33
  * 2. Validate configuration
17
- * 3. Load and resolve repo
18
- * 4. Build snapshot
19
- * 5. Write to output file
34
+ * 3. Load and resolve repo (verifies it parses)
35
+ * 4. Optionally build tool sandbox snapshots
36
+ * 5. Pack the repo (including `node_modules`) into a tarball
37
+ * 6. Write a manifest describing the build
20
38
  */
21
39
  export declare function runBuild(options?: BuildOptions): Promise<number>;
22
40
  export declare const buildCommand: CommandModule;
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAMzC,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAwBD;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4D1E;AAED,eAAO,MAAM,YAAY,EAAE,aAoB1B,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAEzC,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAKvD,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AA0BD;;;;;;;;;GASG;AACH,wBAAsB,QAAQ,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CA8E1E;AAED,eAAO,MAAM,YAAY,EAAE,aAoB1B,CAAC"}
@@ -1,18 +1,16 @@
1
1
  /**
2
2
  * @license
3
- * Copyright 2025 Amodal Labs, Inc.
3
+ * Copyright 2026 Amodal Labs, Inc.
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
- import { writeFileSync } from 'node:fs';
6
+ import { writeFileSync, mkdirSync } from 'node:fs';
7
7
  import { join, resolve } from 'node:path';
8
8
  import { execSync } from 'node:child_process';
9
- import { loadRepo, buildSnapshot, serializeSnapshot, snapshotSizeBytes } from '@amodalai/core';
9
+ import { randomUUID } from 'node:crypto';
10
+ import { loadRepo } from '@amodalai/core';
10
11
  import { buildToolTemplates } from './build-tools.js';
11
12
  import { findRepoRoot } from '../shared/repo-discovery.js';
12
13
  import { runValidate } from './validate.js';
13
- /**
14
- * Get the current user from git config or fallback.
15
- */
16
14
  function getCurrentUser() {
17
15
  try {
18
16
  return execSync('git config user.email', { encoding: 'utf-8' }).trim();
@@ -21,9 +19,6 @@ function getCurrentUser() {
21
19
  return process.env['USER'] ?? 'unknown';
22
20
  }
23
21
  }
24
- /**
25
- * Get the current git commit SHA, or undefined if not in a git repo.
26
- */
27
22
  function getGitSha() {
28
23
  try {
29
24
  return execSync('git rev-parse HEAD', { encoding: 'utf-8' }).trim();
@@ -32,14 +27,23 @@ function getGitSha() {
32
27
  return undefined;
33
28
  }
34
29
  }
30
+ function getGitBranch() {
31
+ try {
32
+ return execSync('git rev-parse --abbrev-ref HEAD', { encoding: 'utf-8' }).trim();
33
+ }
34
+ catch {
35
+ return undefined;
36
+ }
37
+ }
35
38
  /**
36
- * Build a deploy snapshot from the local repo.
39
+ * Build a deploy artifact (tarball + manifest) from the local repo.
37
40
  *
38
41
  * 1. Find repo root
39
42
  * 2. Validate configuration
40
- * 3. Load and resolve repo
41
- * 4. Build snapshot
42
- * 5. Write to output file
43
+ * 3. Load and resolve repo (verifies it parses)
44
+ * 4. Optionally build tool sandbox snapshots
45
+ * 5. Pack the repo (including `node_modules`) into a tarball
46
+ * 6. Write a manifest describing the build
43
47
  */
44
48
  export async function runBuild(options = {}) {
45
49
  let repoPath;
@@ -58,7 +62,7 @@ export async function runBuild(options = {}) {
58
62
  process.stderr.write(`[build] Validation failed with ${errors} error(s). Fix errors before building.\n`);
59
63
  return 1;
60
64
  }
61
- // Load repo
65
+ // Load repo to verify it parses cleanly
62
66
  process.stderr.write('[build] Loading repo...\n');
63
67
  let repo;
64
68
  try {
@@ -70,41 +74,56 @@ export async function runBuild(options = {}) {
70
74
  return 1;
71
75
  }
72
76
  // Build tool sandbox snapshots if requested
73
- let buildManifest;
77
+ let toolBuildManifest;
74
78
  if (options.tools && repo.tools.length > 0) {
75
79
  process.stderr.write(`[build] Building ${repo.tools.length} tool sandbox(es)...\n`);
76
- buildManifest = await buildToolTemplates(repoPath, repo.tools);
80
+ toolBuildManifest = await buildToolTemplates(repoPath, repo.tools);
77
81
  }
78
82
  else if (options.tools && repo.tools.length === 0) {
79
83
  process.stderr.write('[build] No tools found in tools/ directory\n');
80
84
  }
81
- // Build snapshot (includes tool metadata + build manifest if available)
82
- const snapshot = buildSnapshot(repo, {
85
+ const outDir = options.output ? resolve(options.output) : join(repoPath, 'build');
86
+ mkdirSync(outDir, { recursive: true });
87
+ // Pack the repo into a tarball. Excludes things that don't belong in
88
+ // a deploy artifact: VCS dir, prior build output, environment files.
89
+ const tarballPath = join(outDir, 'agent.tar.gz');
90
+ process.stderr.write(`[build] Packing ${repoPath} → ${tarballPath}\n`);
91
+ try {
92
+ execSync(`tar -czf "${tarballPath}" ` +
93
+ `--exclude='.git' --exclude='build' --exclude='.env' --exclude='.env.local' ` +
94
+ `-C "${repoPath}" .`, { stdio: 'pipe' });
95
+ }
96
+ catch (err) {
97
+ const msg = err instanceof Error ? err.message : String(err);
98
+ process.stderr.write(`[build] tar failed: ${msg}\n`);
99
+ return 1;
100
+ }
101
+ const manifest = {
102
+ deployId: randomUUID(),
103
+ createdAt: new Date().toISOString(),
83
104
  createdBy: getCurrentUser(),
84
105
  source: 'cli',
85
- commitSha: getGitSha(),
86
- buildManifest,
87
- });
88
- // Serialize and write
89
- const serialized = serializeSnapshot(snapshot);
90
- const size = snapshotSizeBytes(serialized);
91
- const outputPath = options.output
92
- ? resolve(options.output)
93
- : join(repoPath, 'resolved-config.json');
94
- writeFileSync(outputPath, serialized);
95
- process.stderr.write(`[build] Snapshot ${snapshot.deployId} written to ${outputPath}\n`);
96
- process.stderr.write(`[build] Size: ${(size / 1024).toFixed(1)} KB\n`);
97
- process.stderr.write(`[build] Connections: ${Object.keys(snapshot.connections).length}, Skills: ${snapshot.skills.length}, Automations: ${snapshot.automations.length}, Knowledge: ${snapshot.knowledge.length}, Tools: ${repo.tools.length}\n`);
106
+ agentName: repo.config.name,
107
+ ...(getGitSha() ? { commitSha: getGitSha() } : {}),
108
+ ...(getGitBranch() ? { branch: getGitBranch() } : {}),
109
+ ...(toolBuildManifest ? { toolBuildManifest } : {}),
110
+ };
111
+ const manifestPath = join(outDir, 'manifest.json');
112
+ writeFileSync(manifestPath, JSON.stringify(manifest, null, 2));
113
+ process.stderr.write(`[build] Wrote tarball ${tarballPath}\n`);
114
+ process.stderr.write(`[build] Wrote manifest ${manifestPath}\n`);
115
+ process.stderr.write(`[build] deployId=${manifest.deployId} commit=${manifest.commitSha ?? '(no git)'} branch=${manifest.branch ?? '-'}\n`);
116
+ process.stderr.write(`[build] Bundle: connections=${repo.connections.size + repo.externalConnections.size}, skills=${repo.skills.length}, automations=${repo.automations.length}, knowledge=${repo.knowledge.length}, tools=${repo.tools.length}\n`);
98
117
  return 0;
99
118
  }
100
119
  export const buildCommand = {
101
120
  command: 'build',
102
- describe: 'Build a deploy snapshot from the local repo',
121
+ describe: 'Pack a deploy artifact (tarball + manifest) from the local repo',
103
122
  builder: (yargs) => yargs
104
123
  .option('output', {
105
124
  type: 'string',
106
125
  alias: 'o',
107
- describe: 'Output file path (default: resolved-config.json)',
126
+ describe: 'Output directory (default: ./build)',
108
127
  })
109
128
  .option('tools', {
110
129
  type: 'boolean',
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/commands/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/commands/build.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export interface ChatOptions {
18
18
  *
19
19
  * Three modes:
20
20
  * --url <remote> → connect to an already-running server (no local boot)
21
- * --config <file> → boot from a snapshot file
21
+ * --config <dir> → boot from an extracted bundle directory (offline replay)
22
22
  * (default) → boot from the local repo
23
23
  */
24
24
  export declare function runChat(options: ChatOptions): Promise<void>;
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { createElement } from 'react';
7
7
  import { render } from 'ink';
8
- import { createLocalServer, createSnapshotServer } from '@amodalai/runtime';
8
+ import { createLocalServer, createBundleServer } from '@amodalai/runtime';
9
9
  import { findRepoRoot } from '../shared/repo-discovery.js';
10
10
  import { runConnectionPreflight, printPreflightTable } from '../shared/connection-preflight.js';
11
11
  import { ChatApp } from '../ui/ChatApp.js';
@@ -14,7 +14,7 @@ import { ChatApp } from '../ui/ChatApp.js';
14
14
  *
15
15
  * Three modes:
16
16
  * --url <remote> → connect to an already-running server (no local boot)
17
- * --config <file> → boot from a snapshot file
17
+ * --config <dir> → boot from an extracted bundle directory (offline replay)
18
18
  * (default) → boot from the local repo
19
19
  */
20
20
  export async function runChat(options) {
@@ -37,9 +37,9 @@ export async function runChat(options) {
37
37
  let serverInstance;
38
38
  let repoPath;
39
39
  if (options.config) {
40
- process.stderr.write(`[chat] Loading snapshot from ${options.config}\n`);
41
- serverInstance = await createSnapshotServer({
42
- snapshotPath: options.config,
40
+ process.stderr.write(`[chat] Loading bundle from ${options.config}\n`);
41
+ serverInstance = await createBundleServer({
42
+ bundlePath: options.config,
43
43
  port,
44
44
  host: '127.0.0.1',
45
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/commands/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,16 @@
1
1
  /**
2
2
  * @license
3
- * Copyright 2025 Amodal Labs, Inc.
3
+ * Copyright 2026 Amodal Labs, Inc.
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
6
  import type { CommandModule } from 'yargs';
7
- import type { AgentBundle } from '@amodalai/core';
8
7
  export interface ServeOptions {
9
8
  config?: string;
10
- platform?: boolean;
11
- project?: string;
12
- env?: string;
13
9
  port?: number;
14
10
  host?: string;
15
11
  verbose?: number;
16
12
  quiet?: boolean;
17
13
  }
18
- /**
19
- * Load an agent runtime from a snapshot (file or platform) and start the server.
20
- *
21
- * Returns the loaded repo, or exits with error.
22
- */
23
- export declare function runServe(options: ServeOptions): Promise<AgentBundle | null>;
14
+ export declare function runServe(options: ServeOptions): Promise<boolean>;
24
15
  export declare const serveCommand: CommandModule;
25
16
  //# sourceMappingURL=serve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../src/commands/serve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAEzC,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAIhD,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAkDD;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA0CjF;AAED,eAAO,MAAM,YAAY,EAAE,aAkE1B,CAAC"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../src/commands/serve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAGzC,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAwBD,wBAAsB,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAiDtE;AAED,eAAO,MAAM,YAAY,EAAE,aA6C1B,CAAC"}
@@ -1,83 +1,60 @@
1
1
  /**
2
2
  * @license
3
- * Copyright 2025 Amodal Labs, Inc.
3
+ * Copyright 2026 Amodal Labs, Inc.
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
- import { loadSnapshotFromFile, snapshotToBundle } from '@amodalai/core';
7
- import { createLocalServer, initLogLevel, interceptConsole } from '@amodalai/runtime';
8
- import { PlatformClient } from '../shared/platform-client.js';
6
+ import { execSync } from 'node:child_process';
7
+ import { mkdtempSync, statSync } from 'node:fs';
8
+ import { tmpdir } from 'node:os';
9
+ import { join, resolve } from 'node:path';
10
+ import { createBundleServer, initLogLevel, interceptConsole } from '@amodalai/runtime';
9
11
  const DEFAULT_PORT = 3847;
10
12
  /**
11
- * Load a repo from a snapshot file or from the platform.
13
+ * Resolve the `--config` argument to a directory `createBundleServer`
14
+ * can load via `loadRepoFromDisk`. Accepts either a directory or a
15
+ * `.tar.gz` tarball produced by `amodal build` (extracted to a tempdir).
12
16
  */
13
- async function loadFromSource(options) {
14
- if (options.config) {
15
- process.stderr.write(`[serve] Loading snapshot from ${options.config}...\n`);
16
- try {
17
- const snapshot = await loadSnapshotFromFile(options.config);
18
- const repo = snapshotToBundle(snapshot, options.config);
19
- process.stderr.write(`[serve] Loaded ${snapshot.deployId} (${snapshot.skills.length} skills, ${Object.keys(snapshot.connections).length} connections)\n`);
20
- return repo;
21
- }
22
- catch (err) {
23
- const msg = err instanceof Error ? err.message : String(err);
24
- process.stderr.write(`[serve] Failed to load snapshot: ${msg}\n`);
25
- return null;
26
- }
17
+ function resolveBundlePath(configArg) {
18
+ const absolute = resolve(configArg);
19
+ const stat = statSync(absolute);
20
+ if (stat.isDirectory())
21
+ return absolute;
22
+ if (absolute.endsWith('.tar.gz') || absolute.endsWith('.tgz')) {
23
+ const dir = mkdtempSync(join(tmpdir(), 'amodal-serve-'));
24
+ process.stderr.write(`[serve] Extracting ${absolute} → ${dir}\n`);
25
+ execSync(`tar -xzf "${absolute}" -C "${dir}"`, { stdio: 'pipe' });
26
+ return dir;
27
27
  }
28
- if (options.platform) {
29
- process.stderr.write('[serve] Fetching active snapshot from platform...\n');
30
- let client;
31
- try {
32
- client = await PlatformClient.create();
33
- }
34
- catch (err) {
35
- const msg = err instanceof Error ? err.message : String(err);
36
- process.stderr.write(`[serve] ${msg}\n`);
37
- return null;
38
- }
39
- const environment = options.env ?? 'production';
40
- try {
41
- const snapshot = await client.getActiveSnapshot(environment);
42
- const repo = snapshotToBundle(snapshot, `platform:${environment}`);
43
- process.stderr.write(`[serve] Loaded ${snapshot.deployId} from ${environment}\n`);
44
- return repo;
45
- }
46
- catch (err) {
47
- const msg = err instanceof Error ? err.message : String(err);
48
- process.stderr.write(`[serve] Failed to fetch snapshot: ${msg}\n`);
49
- return null;
50
- }
51
- }
52
- process.stderr.write('[serve] Specify --config <file> or --platform to load a snapshot.\n');
53
- return null;
28
+ throw new Error(`Unsupported --config target: ${absolute} (expected a directory or .tar.gz tarball)`);
54
29
  }
55
- /**
56
- * Load an agent runtime from a snapshot (file or platform) and start the server.
57
- *
58
- * Returns the loaded repo, or exits with error.
59
- */
60
30
  export async function runServe(options) {
61
31
  initLogLevel({ verbosity: options.verbose ?? 0, quiet: options.quiet ?? false });
62
32
  interceptConsole();
63
- const repo = await loadFromSource(options);
64
- if (!repo)
65
- return null;
66
- // Start the runtime server
33
+ if (!options.config) {
34
+ process.stderr.write('[serve] --config <dir-or-tarball> is required.\n');
35
+ return false;
36
+ }
37
+ let bundlePath;
38
+ try {
39
+ bundlePath = resolveBundlePath(options.config);
40
+ }
41
+ catch (err) {
42
+ const msg = err instanceof Error ? err.message : String(err);
43
+ process.stderr.write(`[serve] ${msg}\n`);
44
+ return false;
45
+ }
67
46
  const port = options.port ?? DEFAULT_PORT;
68
47
  const host = options.host ?? '0.0.0.0';
69
- process.stderr.write(`[serve] Starting server on ${host}:${port}...\n`);
48
+ process.stderr.write(`[serve] Starting bundle server from ${bundlePath} on ${host}:${port}...\n`);
70
49
  try {
71
- const server = await createLocalServer({
72
- repoPath: repo.origin,
50
+ const server = await createBundleServer({
51
+ bundlePath,
73
52
  port,
74
53
  host,
75
- hotReload: false,
76
54
  corsOrigin: '*',
77
55
  });
78
56
  await server.start();
79
- process.stderr.write(`[serve] Agent "${repo.config.name}" serving at http://${host}:${port}\n`);
80
- // Graceful shutdown
57
+ process.stderr.write(`[serve] Serving at http://${host}:${port}\n`);
81
58
  const shutdown = async (signal) => {
82
59
  process.stderr.write(`\n[serve] Received ${signal}, shutting down...\n`);
83
60
  await server.stop();
@@ -89,30 +66,18 @@ export async function runServe(options) {
89
66
  catch (err) {
90
67
  const msg = err instanceof Error ? err.message : String(err);
91
68
  process.stderr.write(`[serve] Failed to start server: ${msg}\n`);
92
- return null;
69
+ return false;
93
70
  }
94
- return repo;
71
+ return true;
95
72
  }
96
73
  export const serveCommand = {
97
74
  command: 'serve',
98
- describe: 'Load and serve an agent from a snapshot',
75
+ describe: 'Serve an agent from a built bundle (directory or .tar.gz from `amodal build`)',
99
76
  builder: (yargs) => yargs
100
77
  .option('config', {
101
78
  type: 'string',
102
- describe: 'Path to resolved-config.json snapshot file',
103
- })
104
- .option('platform', {
105
- type: 'boolean',
106
- describe: 'Fetch active snapshot from platform',
107
- default: false,
108
- })
109
- .option('project', {
110
- type: 'string',
111
- describe: 'Platform project name',
112
- })
113
- .option('env', {
114
- type: 'string',
115
- describe: 'Platform environment (default: production)',
79
+ describe: 'Path to a bundle directory or .tar.gz tarball',
80
+ demandOption: true,
116
81
  })
117
82
  .option('port', {
118
83
  type: 'number',
@@ -135,16 +100,10 @@ export const serveCommand = {
135
100
  default: false,
136
101
  }),
137
102
  handler: async (argv) => {
138
- const repo = await runServe({
103
+ const ok = await runServe({
139
104
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
140
105
  config: argv['config'],
141
106
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
142
- platform: argv['platform'],
143
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
144
- project: argv['project'],
145
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
146
- env: argv['env'],
147
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
148
107
  port: argv['port'],
149
108
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
150
109
  host: argv['host'],
@@ -153,10 +112,8 @@ export const serveCommand = {
153
112
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
154
113
  quiet: argv['quiet'],
155
114
  });
156
- if (!repo) {
115
+ if (!ok)
157
116
  process.exit(1);
158
- }
159
- // Server is running — process stays alive until SIGTERM/SIGINT
160
117
  },
161
118
  };
162
119
  //# sourceMappingURL=serve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve.ts"],"names":[],"mappings":"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"}