@iqai/adk-cli 0.3.14 → 0.3.15

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,13 @@
1
1
  # @iqai/adk-cli
2
2
 
3
+ ## 0.3.15
4
+
5
+ ### Patch Changes
6
+
7
+ - 2fdd83f: Refactor graceful shutdown handling for server commands
8
+ - Updated dependencies [c538a1a]
9
+ - @iqai/adk@0.4.0
10
+
3
11
  ## 0.3.14
4
12
 
5
13
  ### Patch Changes
@@ -78,18 +78,18 @@ const templates = [
78
78
  hint: "Web server with agent endpoints",
79
79
  source: "github:IQAIcom/adk-ts/apps/starter-templates/hono-server",
80
80
  },
81
- {
82
- value: "shade-agent",
83
- label: "šŸŒ“ Near Shade Agent",
84
- hint: "Starter that uses Near Shade Agent",
85
- source: "github:IQAIcom/adk-ts/apps/starter-templates/shade-agent",
86
- },
87
81
  {
88
82
  value: "mcp-starter",
89
83
  label: "šŸ”Œ MCP Integration",
90
84
  hint: "Model Context Protocol server",
91
85
  source: "github:IQAIcom/adk-ts/apps/starter-templates/mcp-starter",
92
86
  },
87
+ {
88
+ value: "shade-agent",
89
+ label: "šŸŒ“ Near Shade Agent",
90
+ hint: "Starter that uses Near Shade Agent",
91
+ source: "github:IQAIcom/adk-ts/apps/starter-templates/shade-agent",
92
+ },
93
93
  ];
94
94
  const packageManagers = [
95
95
  { name: "npm", command: "npm", args: ["install"], label: "šŸ“¦ npm" },
@@ -257,7 +257,7 @@ exports.NewCommand = NewCommand;
257
257
  __decorate([
258
258
  (0, nest_commander_1.Option)({
259
259
  flags: "-t, --template <template>",
260
- description: "Template to use (simple-agent, discord-bot, telegram-bot, hono-server, mcp-starter)",
260
+ description: "Template to use (simple-agent, discord-bot, telegram-bot, hono-server, mcp-starter, shade-agent)",
261
261
  }),
262
262
  __metadata("design:type", Function),
263
263
  __metadata("design:paramtypes", [String]),
@@ -1 +1 @@
1
- {"version":3,"file":"new.command.js","sourceRoot":"","sources":["../../src/cli/new.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new.command.js","sourceRoot":"","sources":["../../src/cli/new.command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serve.command.d.ts","sourceRoot":"","sources":["../../src/cli/serve.command.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAGhE,UAAU,mBAAmB;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAIa,YAAa,SAAQ,aAAa;IACxC,GAAG,CACR,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IA+ChB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAS7B,UAAU,IAAI,OAAO;IASrB,YAAY,IAAI,OAAO;IAQvB,cAAc,IAAI,OAAO;CAGzB"}
1
+ {"version":3,"file":"serve.command.d.ts","sourceRoot":"","sources":["../../src/cli/serve.command.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAIhE,UAAU,mBAAmB;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAIa,YAAa,SAAQ,aAAa;IACxC,GAAG,CACR,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IA6ChB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAS7B,UAAU,IAAI,OAAO;IASrB,YAAY,IAAI,OAAO;IAQvB,cAAc,IAAI,OAAO;CAGzB"}
@@ -16,13 +16,14 @@ exports.ServeCommand = void 0;
16
16
  const chalk_1 = __importDefault(require("chalk"));
17
17
  const nest_commander_1 = require("nest-commander");
18
18
  const bootstrap_1 = require("../http/bootstrap");
19
+ const graceful_shutdown_1 = require("../utils/graceful-shutdown");
19
20
  let ServeCommand = class ServeCommand extends nest_commander_1.CommandRunner {
20
21
  async run(_passedParams, options) {
21
22
  const port = options?.port ?? 8042;
22
23
  const host = options?.host ?? "localhost";
23
24
  const agentsDir = options?.dir ?? process.cwd();
24
25
  const quiet = !!options?.quiet;
25
- let swagger = undefined;
26
+ let swagger;
26
27
  if (options?.swagger)
27
28
  swagger = true;
28
29
  else if (options?.noSwagger)
@@ -41,13 +42,11 @@ let ServeCommand = class ServeCommand extends nest_commander_1.CommandRunner {
41
42
  console.log(chalk_1.default.green("āœ… Server ready"));
42
43
  console.log(chalk_1.default.cyan("Press Ctrl+C to stop the server"));
43
44
  }
44
- const cleanup = async () => {
45
- if (!quiet) {
46
- console.log(chalk_1.default.yellow("\nšŸ›‘ Stopping server..."));
47
- }
48
- await server.stop();
49
- process.exit(0);
50
- };
45
+ // Graceful shutdown with single-invocation guard and force-exit fallback
46
+ const cleanup = (0, graceful_shutdown_1.createGracefulShutdownHandler)(server, {
47
+ quiet,
48
+ name: "server",
49
+ });
51
50
  process.on("SIGINT", cleanup);
52
51
  process.on("SIGTERM", cleanup);
53
52
  // Keep process running
@@ -1 +1 @@
1
- {"version":3,"file":"serve.command.js","sourceRoot":"","sources":["../../src/cli/serve.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.command.js","sourceRoot":"","sources":["../../src/cli/serve.command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"web.command.d.ts","sourceRoot":"","sources":["../../src/cli/web.command.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAGhE,UAAU,iBAAiB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAIa,UAAW,SAAQ,aAAa;IACtC,GAAG,CACR,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC;IA2ChB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ7B,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAGhC"}
1
+ {"version":3,"file":"web.command.d.ts","sourceRoot":"","sources":["../../src/cli/web.command.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,aAAa,EAAU,MAAM,gBAAgB,CAAC;AAIhE,UAAU,iBAAiB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAIa,UAAW,SAAQ,aAAa;IACtC,GAAG,CACR,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC;IA2ChB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ9B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ7B,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAGhC"}
@@ -16,6 +16,7 @@ exports.WebCommand = void 0;
16
16
  const chalk_1 = __importDefault(require("chalk"));
17
17
  const nest_commander_1 = require("nest-commander");
18
18
  const bootstrap_1 = require("../http/bootstrap");
19
+ const graceful_shutdown_1 = require("../utils/graceful-shutdown");
19
20
  let WebCommand = class WebCommand extends nest_commander_1.CommandRunner {
20
21
  async run(_passedParams, options) {
21
22
  const apiPort = options?.port ?? 8042;
@@ -38,11 +39,11 @@ let WebCommand = class WebCommand extends nest_commander_1.CommandRunner {
38
39
  console.log(chalk_1.default.cyan(`šŸ”— Open this URL in your browser: ${webAppUrl}`));
39
40
  console.log(chalk_1.default.gray(` API Server: http://${host}:${apiPort}`));
40
41
  console.log(chalk_1.default.cyan("Press Ctrl+C to stop the API server"));
41
- const cleanup = async () => {
42
- console.log(chalk_1.default.yellow("\nšŸ›‘ Stopping API server..."));
43
- await server.stop();
44
- process.exit(0);
45
- };
42
+ // Graceful shutdown with single-invocation guard and force-exit fallback
43
+ const cleanup = (0, graceful_shutdown_1.createGracefulShutdownHandler)(server, {
44
+ quiet: false, // web command always shows output
45
+ name: "API server",
46
+ });
46
47
  process.on("SIGINT", cleanup);
47
48
  process.on("SIGTERM", cleanup);
48
49
  // Keep the process running
@@ -1 +1 @@
1
- {"version":3,"file":"web.command.js","sourceRoot":"","sources":["../../src/cli/web.command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web.command.js","sourceRoot":"","sources":["../../src/cli/web.command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface GracefulShutdownOptions {
2
+ quiet?: boolean;
3
+ name: string;
4
+ }
5
+ export declare function createGracefulShutdownHandler(server: {
6
+ stop: () => Promise<void>;
7
+ }, options: GracefulShutdownOptions): () => Promise<void>;
8
+ //# sourceMappingURL=graceful-shutdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graceful-shutdown.d.ts","sourceRoot":"","sources":["../../src/utils/graceful-shutdown.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,uBAAuB;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,6BAA6B,CAC5C,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,EACrC,OAAO,EAAE,uBAAuB,GAC9B,MAAM,OAAO,CAAC,IAAI,CAAC,CAqCrB"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createGracefulShutdownHandler = createGracefulShutdownHandler;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ function createGracefulShutdownHandler(server, options) {
9
+ let shuttingDown = false;
10
+ return async () => {
11
+ if (shuttingDown)
12
+ return;
13
+ shuttingDown = true;
14
+ if (!options.quiet) {
15
+ console.log(chalk_1.default.yellow(`\nšŸ›‘ Stopping ${options.name}...`));
16
+ }
17
+ const FORCE_EXIT_MS = Number(process.env.ADK_FORCE_EXIT_MS || 5000);
18
+ const timeout = setTimeout(() => {
19
+ if (!options.quiet) {
20
+ console.error(chalk_1.default.red(`Force exiting after ${FORCE_EXIT_MS}ms. Some resources may not have closed cleanly.`));
21
+ }
22
+ process.exit(1);
23
+ }, FORCE_EXIT_MS);
24
+ timeout.unref?.();
25
+ let exitCode = 0;
26
+ try {
27
+ await server.stop();
28
+ }
29
+ catch (e) {
30
+ if (!options.quiet) {
31
+ console.error(chalk_1.default.red("Error during shutdown:"), e);
32
+ }
33
+ exitCode = 1;
34
+ }
35
+ finally {
36
+ clearTimeout(timeout);
37
+ process.exit(exitCode);
38
+ }
39
+ };
40
+ }
41
+ //# sourceMappingURL=graceful-shutdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graceful-shutdown.js","sourceRoot":"","sources":["../../src/utils/graceful-shutdown.ts"],"names":[],"mappings":";;;;;AAOA,sEAwCC;AA/CD,kDAA0B;AAO1B,SAAgB,6BAA6B,CAC5C,MAAqC,EACrC,OAAgC;IAEhC,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,OAAO,KAAK,IAAI,EAAE;QACjB,IAAI,YAAY;YAAE,OAAO;QACzB,YAAY,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iBAAiB,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,GAAG,CACR,uBAAuB,aAAa,iDAAiD,CACrF,CACD,CAAC;YACH,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,EAAE,aAAa,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;QAElB,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC;YACJ,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;YACD,QAAQ,GAAG,CAAC,CAAC;QACd,CAAC;gBAAS,CAAC;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;IACF,CAAC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iqai/adk-cli",
3
- "version": "0.3.14",
3
+ "version": "0.3.15",
4
4
  "description": "CLI tool for creating, running, and testing ADK agents",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
@@ -40,7 +40,7 @@
40
40
  "reflect-metadata": "^0.2.2",
41
41
  "rxjs": "^7.8.2",
42
42
  "swagger-ui-express": "^5.0.1",
43
- "@iqai/adk": "0.3.7"
43
+ "@iqai/adk": "0.4.0"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/marked-terminal": "^6.1.1",