@vm0/cli 9.222.10 → 9.222.11

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 (94) hide show
  1. package/{agent-T7M7TEPS.js → agent-XNVQRMKI.js} +4 -4
  2. package/automation-7MAK66QT.js +31 -0
  3. package/automation-7MAK66QT.js.map +1 -0
  4. package/{banking-FNJZFPXK.js → banking-QBTNNOCQ.js} +2 -2
  5. package/{chat-6NJ4VVNA.js → chat-ELAJKQXT.js} +2 -2
  6. package/{chunk-FJFAPB3B.js → chunk-5EPGSDIQ.js} +479 -46
  7. package/chunk-5EPGSDIQ.js.map +1 -0
  8. package/{chunk-IJBKOTQR.js → chunk-7ZJOZZXZ.js} +2 -2
  9. package/{chunk-PAZFEW6A.js → chunk-F774K6TY.js} +2 -2
  10. package/{chunk-STCMWCQB.js → chunk-JOOQB7W3.js} +2 -2
  11. package/{chunk-LRXQIJYA.js → chunk-KBDCWC3F.js} +20 -393
  12. package/chunk-KBDCWC3F.js.map +1 -0
  13. package/{chunk-UFH34RCB.js → chunk-MJ4W2C3Z.js} +7 -9
  14. package/{chunk-UFH34RCB.js.map → chunk-MJ4W2C3Z.js.map} +1 -1
  15. package/{chunk-ZQR57JPN.js → chunk-VTG6TDYL.js} +2 -2
  16. package/{chunk-ZTIA2B55.js → chunk-Y4YHS5UO.js} +2 -2
  17. package/{chunk-EQLMBGHF.js → chunk-ZPWEXRMA.js} +3 -3
  18. package/{computer-use-PNFYU4P6.js → computer-use-XXPDTJSQ.js} +2 -2
  19. package/{connector-5QNIIQYE.js → connector-PWDJ3R6G.js} +2 -2
  20. package/{credit-N4VWEZQD.js → credit-MYBUWRHP.js} +2 -2
  21. package/{developer-support-6YAKUD6P.js → developer-support-65OQ2RK4.js} +2 -2
  22. package/{doctor-APGXQWMY.js → doctor-2U4HK4AX.js} +5 -5
  23. package/{generate-DJTSGM7S.js → generate-UEDRCAKX.js} +2 -2
  24. package/{github-WJX4QT2H.js → github-R6JKL74U.js} +2 -2
  25. package/{goal-NITAYB5U.js → goal-BG47S2RP.js} +2 -2
  26. package/{host-2UZGVQ3F.js → host-2VS2KOZQ.js} +2 -2
  27. package/index.js +18 -20
  28. package/index.js.map +1 -1
  29. package/{logs-7BZRPSMW.js → logs-XFVZAKVG.js} +11 -13
  30. package/{logs-7BZRPSMW.js.map → logs-XFVZAKVG.js.map} +1 -1
  31. package/{maps-K5NX2KAB.js → maps-ZBULOEZW.js} +2 -2
  32. package/{model-HSKVRTFU.js → model-BFHGQJ5U.js} +3 -3
  33. package/{model-provider-JL4VLJRT.js → model-provider-OUSOKSWW.js} +3 -3
  34. package/{org-DIC435XZ.js → org-RI2EYUW7.js} +2 -2
  35. package/package.json +1 -1
  36. package/{phone-R6FRR5SW.js → phone-SNLGLD3J.js} +2 -2
  37. package/{preference-2Y47RK7E.js → preference-XDSQRZWM.js} +2 -2
  38. package/{resource-PNK3R6OE.js → resource-BA4FQCNQ.js} +2 -2
  39. package/schedule-OSHL7HWT.js +33 -0
  40. package/schedule-OSHL7HWT.js.map +1 -0
  41. package/{search-DAC3VR2E.js → search-KXVRANLT.js} +8 -10
  42. package/{search-DAC3VR2E.js.map → search-KXVRANLT.js.map} +1 -1
  43. package/{secret-JNDL44GI.js → secret-NFJQKUPS.js} +3 -3
  44. package/{slack-46YY7OG4.js → slack-JPM5WVX6.js} +2 -2
  45. package/{telegram-KOLEDEVQ.js → telegram-BNX4UZTT.js} +2 -2
  46. package/{variable-WKYVSOGW.js → variable-IAIPAH3T.js} +2 -2
  47. package/{web-UMLXHPQM.js → web-3TJGHZNA.js} +2 -2
  48. package/{whoami-UJTFVSQG.js → whoami-OVIXXMRR.js} +4 -4
  49. package/{workflow-FG4M2QL6.js → workflow-WWMTJDLF.js} +62 -7
  50. package/workflow-WWMTJDLF.js.map +1 -0
  51. package/zero.js +36 -37
  52. package/zero.js.map +1 -1
  53. package/automation-ODWI55XR.js +0 -501
  54. package/automation-ODWI55XR.js.map +0 -1
  55. package/chunk-FJFAPB3B.js.map +0 -1
  56. package/chunk-H63W4KQL.js +0 -160
  57. package/chunk-H63W4KQL.js.map +0 -1
  58. package/chunk-HQFETCZ6.js +0 -71
  59. package/chunk-HQFETCZ6.js.map +0 -1
  60. package/chunk-LRXQIJYA.js.map +0 -1
  61. package/schedule-MTI5OP23.js +0 -31
  62. package/schedule-MTI5OP23.js.map +0 -1
  63. package/workflow-FG4M2QL6.js.map +0 -1
  64. /package/{agent-T7M7TEPS.js.map → agent-XNVQRMKI.js.map} +0 -0
  65. /package/{banking-FNJZFPXK.js.map → banking-QBTNNOCQ.js.map} +0 -0
  66. /package/{chat-6NJ4VVNA.js.map → chat-ELAJKQXT.js.map} +0 -0
  67. /package/{chunk-IJBKOTQR.js.map → chunk-7ZJOZZXZ.js.map} +0 -0
  68. /package/{chunk-PAZFEW6A.js.map → chunk-F774K6TY.js.map} +0 -0
  69. /package/{chunk-STCMWCQB.js.map → chunk-JOOQB7W3.js.map} +0 -0
  70. /package/{chunk-ZQR57JPN.js.map → chunk-VTG6TDYL.js.map} +0 -0
  71. /package/{chunk-ZTIA2B55.js.map → chunk-Y4YHS5UO.js.map} +0 -0
  72. /package/{chunk-EQLMBGHF.js.map → chunk-ZPWEXRMA.js.map} +0 -0
  73. /package/{computer-use-PNFYU4P6.js.map → computer-use-XXPDTJSQ.js.map} +0 -0
  74. /package/{connector-5QNIIQYE.js.map → connector-PWDJ3R6G.js.map} +0 -0
  75. /package/{credit-N4VWEZQD.js.map → credit-MYBUWRHP.js.map} +0 -0
  76. /package/{developer-support-6YAKUD6P.js.map → developer-support-65OQ2RK4.js.map} +0 -0
  77. /package/{doctor-APGXQWMY.js.map → doctor-2U4HK4AX.js.map} +0 -0
  78. /package/{generate-DJTSGM7S.js.map → generate-UEDRCAKX.js.map} +0 -0
  79. /package/{github-WJX4QT2H.js.map → github-R6JKL74U.js.map} +0 -0
  80. /package/{goal-NITAYB5U.js.map → goal-BG47S2RP.js.map} +0 -0
  81. /package/{host-2UZGVQ3F.js.map → host-2VS2KOZQ.js.map} +0 -0
  82. /package/{maps-K5NX2KAB.js.map → maps-ZBULOEZW.js.map} +0 -0
  83. /package/{model-HSKVRTFU.js.map → model-BFHGQJ5U.js.map} +0 -0
  84. /package/{model-provider-JL4VLJRT.js.map → model-provider-OUSOKSWW.js.map} +0 -0
  85. /package/{org-DIC435XZ.js.map → org-RI2EYUW7.js.map} +0 -0
  86. /package/{phone-R6FRR5SW.js.map → phone-SNLGLD3J.js.map} +0 -0
  87. /package/{preference-2Y47RK7E.js.map → preference-XDSQRZWM.js.map} +0 -0
  88. /package/{resource-PNK3R6OE.js.map → resource-BA4FQCNQ.js.map} +0 -0
  89. /package/{secret-JNDL44GI.js.map → secret-NFJQKUPS.js.map} +0 -0
  90. /package/{slack-46YY7OG4.js.map → slack-JPM5WVX6.js.map} +0 -0
  91. /package/{telegram-KOLEDEVQ.js.map → telegram-BNX4UZTT.js.map} +0 -0
  92. /package/{variable-WKYVSOGW.js.map → variable-IAIPAH3T.js.map} +0 -0
  93. /package/{web-UMLXHPQM.js.map → web-3TJGHZNA.js.map} +0 -0
  94. /package/{whoami-UJTFVSQG.js.map → whoami-OVIXXMRR.js.map} +0 -0
@@ -1,21 +1,19 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __createRequire } from "node:module";
3
3
  const require = __createRequire(import.meta.url);
4
- import {
5
- parseBoundedLogCount,
6
- parseSearchQuery,
7
- parseTime
8
- } from "./chunk-H63W4KQL.js";
9
4
  import {
10
5
  EventRenderer,
11
6
  EventStreamNormalizer,
12
7
  formatIsoTimestamp,
13
8
  isSupportedFramework,
14
- isUUID
15
- } from "./chunk-FJFAPB3B.js";
9
+ isUUID,
10
+ parseBoundedLogCount,
11
+ parseSearchQuery,
12
+ parseTime
13
+ } from "./chunk-5EPGSDIQ.js";
16
14
  import {
17
15
  searchZeroLogs
18
- } from "./chunk-LRXQIJYA.js";
16
+ } from "./chunk-KBDCWC3F.js";
19
17
  import {
20
18
  withErrorHandler
21
19
  } from "./chunk-3F4RFLPX.js";
@@ -178,4 +176,4 @@ export {
178
176
  runLogsSearch,
179
177
  searchCommand
180
178
  };
181
- //# sourceMappingURL=chunk-UFH34RCB.js.map
179
+ //# sourceMappingURL=chunk-MJ4W2C3Z.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/commands/zero/logs/search.ts"],"sourcesContent":["import { Command } from \"commander\";\nimport chalk from \"chalk\";\nimport {\n searchZeroLogs,\n type RunEvent,\n type LogsSearchResponse,\n} from \"../../../lib/api\";\nimport { parseTime } from \"../../../lib/utils/time-parser\";\nimport { formatIsoTimestamp } from \"../../../lib/utils/time-format\";\nimport { EventRenderer } from \"../../../lib/events/event-renderer\";\nimport { EventStreamNormalizer } from \"../../../lib/events/event-stream-normalizer\";\nimport { withErrorHandler } from \"../../../lib/command\";\nimport { isUUID } from \"../../run/shared\";\nimport { parseBoundedLogCount } from \"../../../lib/utils/log-pagination\";\nimport { parseSearchQuery } from \"../../../lib/utils/search-query\";\nimport { isSupportedFramework } from \"@vm0/core/frameworks\";\n\nconst SEVEN_DAYS_MS = 7 * 24 * 60 * 60 * 1000;\n\nexport interface LogsSearchCliOptions {\n afterContext?: string;\n beforeContext?: string;\n context?: string;\n agentId?: string;\n run?: string;\n since?: string;\n limit?: string;\n}\n\ninterface LogsSearchCommandOptions extends Omit<\n LogsSearchCliOptions,\n \"agentId\"\n> {\n agent?: string;\n}\n\nfunction supportedSearchFramework(\n framework: string | null | undefined,\n): string | undefined {\n const normalized = framework ?? undefined;\n return isSupportedFramework(normalized) ? normalized : undefined;\n}\n\nfunction renderSearchEvent(\n event: RunEvent,\n framework: string | null | undefined,\n renderer: EventRenderer,\n normalizer: EventStreamNormalizer,\n): void {\n const parsedEvents = normalizer.process(\n event.eventData,\n supportedSearchFramework(framework),\n new Date(event.createdAt),\n );\n for (const parsed of parsedEvents) {\n renderer.render(parsed);\n }\n}\n\nfunction flushSearchRenderer(\n renderer: EventRenderer,\n normalizer: EventStreamNormalizer,\n): void {\n for (const parsed of normalizer.flush()) {\n renderer.render(parsed);\n }\n renderer.flush();\n}\n\nfunction formatRunHeader(\n runId: string,\n agentName: string,\n timestamp: string,\n): string {\n const time = formatIsoTimestamp(timestamp);\n return `── Run ${runId} (${agentName}, ${time}) ──────────`;\n}\n\nfunction parseContextOptions(options: LogsSearchCliOptions): {\n before: number;\n after: number;\n} {\n const contextN =\n options.context !== undefined\n ? parseBoundedLogCount(options.context, \"--context\", 0, 10)\n : 0;\n const before =\n options.beforeContext !== undefined\n ? parseBoundedLogCount(options.beforeContext, \"--before-context\", 0, 10)\n : contextN;\n const after =\n options.afterContext !== undefined\n ? parseBoundedLogCount(options.afterContext, \"--after-context\", 0, 10)\n : contextN;\n\n return { before, after };\n}\n\nfunction parseLimit(value: string | undefined): number | undefined {\n if (value === undefined) return undefined;\n return parseBoundedLogCount(value, \"--limit\", 1, 50);\n}\n\nfunction renderResults(response: LogsSearchResponse): void {\n const grouped = new Map<\n string,\n { agentName: string; results: LogsSearchResponse[\"results\"] }\n >();\n for (const result of response.results) {\n const existing = grouped.get(result.runId);\n if (existing) {\n existing.results.push(result);\n } else {\n grouped.set(result.runId, {\n agentName: result.agentName,\n results: [result],\n });\n }\n }\n\n let isFirstGroup = true;\n for (const [runId, group] of grouped) {\n if (!isFirstGroup) {\n console.log();\n }\n isFirstGroup = false;\n\n const firstTimestamp = group.results[0]!.matchedEvent.createdAt;\n console.log(\n chalk.bold(formatRunHeader(runId, group.agentName, firstTimestamp)),\n );\n\n for (const result of group.results) {\n const renderer = new EventRenderer({\n showTimestamp: true,\n verbose: false,\n });\n const normalizer = new EventStreamNormalizer();\n\n for (const event of result.contextBefore) {\n renderSearchEvent(event, result.framework, renderer, normalizer);\n }\n renderSearchEvent(\n result.matchedEvent,\n result.framework,\n renderer,\n normalizer,\n );\n for (const event of result.contextAfter) {\n renderSearchEvent(event, result.framework, renderer, normalizer);\n }\n flushSearchRenderer(renderer, normalizer);\n }\n }\n\n if (response.hasMore) {\n console.log();\n console.log(\n chalk.dim(\n ` Showing first ${response.results.length} matches. Use --limit to see more.`,\n ),\n );\n }\n}\n\nexport async function runLogsSearch(\n keyword: string,\n options: LogsSearchCliOptions,\n): Promise<void> {\n const searchKeyword = parseSearchQuery(keyword, \"Keyword\");\n const { before, after } = parseContextOptions(options);\n\n if (options.agentId !== undefined && !isUUID(options.agentId)) {\n console.error(\n chalk.red(`✗ Invalid agent ID \"${options.agentId}\" — expected a UUID`),\n );\n console.error(chalk.dim(\" Run: zero logs list to find agent IDs\"));\n process.exit(1);\n }\n\n if (options.run !== undefined && !isUUID(options.run)) {\n console.error(\n chalk.red(`✗ Invalid run ID \"${options.run}\" — expected a UUID`),\n );\n console.error(chalk.dim(\" Run: zero logs list to find run IDs\"));\n process.exit(1);\n }\n\n const since =\n options.since !== undefined\n ? parseTime(options.since)\n : Date.now() - SEVEN_DAYS_MS;\n const limit = parseLimit(options.limit);\n\n const response = await searchZeroLogs({\n keyword: searchKeyword,\n agentId: options.agentId,\n runId: options.run,\n since,\n limit,\n before,\n after,\n });\n\n if (response.results.length === 0) {\n console.log(chalk.dim(\"No matches found\"));\n console.log(\n chalk.dim(\n \" Try a broader search with --since 30d or a different keyword\",\n ),\n );\n return;\n }\n\n renderResults(response);\n}\n\nexport const searchCommand = new Command()\n .name(\"search\")\n .description(\"Search agent events across runs\")\n .argument(\"<keyword>\", \"Search keyword\")\n .option(\"-A, --after-context <n>\", \"Show n events after each match\")\n .option(\"-B, --before-context <n>\", \"Show n events before each match\")\n .option(\"-C, --context <n>\", \"Show n events before and after each match\")\n .option(\"--agent <id>\", \"Filter by Zero agent ID\")\n .option(\"--run <id>\", \"Filter by specific run ID\")\n .option(\"--since <time>\", \"Search logs since (default: 7d)\")\n .option(\"--limit <n>\", \"Maximum number of matches (default: 20)\")\n .addHelpText(\n \"after\",\n `\nExamples:\n zero logs search \"error\"\n zero logs search \"timeout\" --agent 123e4567-e89b-12d3-a456-426614174000 -C 2\n zero logs search \"failed\" --since 30d --limit 50`,\n )\n .action(\n withErrorHandler(\n async (keyword: string, options: LogsSearchCommandOptions) => {\n const { agent, ...searchOptions } = options;\n await runLogsSearch(keyword, { ...searchOptions, agentId: agent });\n },\n ),\n );\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/commands/zero/logs/search.ts"],"sourcesContent":["import { Command } from \"commander\";\nimport chalk from \"chalk\";\nimport {\n searchZeroLogs,\n type RunEvent,\n type LogsSearchResponse,\n} from \"../../../lib/api\";\nimport { parseTime } from \"../../../lib/utils/time-parser\";\nimport { formatIsoTimestamp } from \"../../../lib/utils/time-format\";\nimport { EventRenderer } from \"../../../lib/events/event-renderer\";\nimport { EventStreamNormalizer } from \"../../../lib/events/event-stream-normalizer\";\nimport { withErrorHandler } from \"../../../lib/command\";\nimport { isUUID } from \"../../run/shared\";\nimport { parseBoundedLogCount } from \"../../../lib/utils/log-pagination\";\nimport { parseSearchQuery } from \"../../../lib/utils/search-query\";\nimport { isSupportedFramework } from \"@vm0/core/frameworks\";\n\nconst SEVEN_DAYS_MS = 7 * 24 * 60 * 60 * 1000;\n\nexport interface LogsSearchCliOptions {\n afterContext?: string;\n beforeContext?: string;\n context?: string;\n agentId?: string;\n run?: string;\n since?: string;\n limit?: string;\n}\n\ninterface LogsSearchCommandOptions extends Omit<\n LogsSearchCliOptions,\n \"agentId\"\n> {\n agent?: string;\n}\n\nfunction supportedSearchFramework(\n framework: string | null | undefined,\n): string | undefined {\n const normalized = framework ?? undefined;\n return isSupportedFramework(normalized) ? normalized : undefined;\n}\n\nfunction renderSearchEvent(\n event: RunEvent,\n framework: string | null | undefined,\n renderer: EventRenderer,\n normalizer: EventStreamNormalizer,\n): void {\n const parsedEvents = normalizer.process(\n event.eventData,\n supportedSearchFramework(framework),\n new Date(event.createdAt),\n );\n for (const parsed of parsedEvents) {\n renderer.render(parsed);\n }\n}\n\nfunction flushSearchRenderer(\n renderer: EventRenderer,\n normalizer: EventStreamNormalizer,\n): void {\n for (const parsed of normalizer.flush()) {\n renderer.render(parsed);\n }\n renderer.flush();\n}\n\nfunction formatRunHeader(\n runId: string,\n agentName: string,\n timestamp: string,\n): string {\n const time = formatIsoTimestamp(timestamp);\n return `── Run ${runId} (${agentName}, ${time}) ──────────`;\n}\n\nfunction parseContextOptions(options: LogsSearchCliOptions): {\n before: number;\n after: number;\n} {\n const contextN =\n options.context !== undefined\n ? parseBoundedLogCount(options.context, \"--context\", 0, 10)\n : 0;\n const before =\n options.beforeContext !== undefined\n ? parseBoundedLogCount(options.beforeContext, \"--before-context\", 0, 10)\n : contextN;\n const after =\n options.afterContext !== undefined\n ? parseBoundedLogCount(options.afterContext, \"--after-context\", 0, 10)\n : contextN;\n\n return { before, after };\n}\n\nfunction parseLimit(value: string | undefined): number | undefined {\n if (value === undefined) return undefined;\n return parseBoundedLogCount(value, \"--limit\", 1, 50);\n}\n\nfunction renderResults(response: LogsSearchResponse): void {\n const grouped = new Map<\n string,\n { agentName: string; results: LogsSearchResponse[\"results\"] }\n >();\n for (const result of response.results) {\n const existing = grouped.get(result.runId);\n if (existing) {\n existing.results.push(result);\n } else {\n grouped.set(result.runId, {\n agentName: result.agentName,\n results: [result],\n });\n }\n }\n\n let isFirstGroup = true;\n for (const [runId, group] of grouped) {\n if (!isFirstGroup) {\n console.log();\n }\n isFirstGroup = false;\n\n const firstTimestamp = group.results[0]!.matchedEvent.createdAt;\n console.log(\n chalk.bold(formatRunHeader(runId, group.agentName, firstTimestamp)),\n );\n\n for (const result of group.results) {\n const renderer = new EventRenderer({\n showTimestamp: true,\n verbose: false,\n });\n const normalizer = new EventStreamNormalizer();\n\n for (const event of result.contextBefore) {\n renderSearchEvent(event, result.framework, renderer, normalizer);\n }\n renderSearchEvent(\n result.matchedEvent,\n result.framework,\n renderer,\n normalizer,\n );\n for (const event of result.contextAfter) {\n renderSearchEvent(event, result.framework, renderer, normalizer);\n }\n flushSearchRenderer(renderer, normalizer);\n }\n }\n\n if (response.hasMore) {\n console.log();\n console.log(\n chalk.dim(\n ` Showing first ${response.results.length} matches. Use --limit to see more.`,\n ),\n );\n }\n}\n\nexport async function runLogsSearch(\n keyword: string,\n options: LogsSearchCliOptions,\n): Promise<void> {\n const searchKeyword = parseSearchQuery(keyword, \"Keyword\");\n const { before, after } = parseContextOptions(options);\n\n if (options.agentId !== undefined && !isUUID(options.agentId)) {\n console.error(\n chalk.red(`✗ Invalid agent ID \"${options.agentId}\" — expected a UUID`),\n );\n console.error(chalk.dim(\" Run: zero logs list to find agent IDs\"));\n process.exit(1);\n }\n\n if (options.run !== undefined && !isUUID(options.run)) {\n console.error(\n chalk.red(`✗ Invalid run ID \"${options.run}\" — expected a UUID`),\n );\n console.error(chalk.dim(\" Run: zero logs list to find run IDs\"));\n process.exit(1);\n }\n\n const since =\n options.since !== undefined\n ? parseTime(options.since)\n : Date.now() - SEVEN_DAYS_MS;\n const limit = parseLimit(options.limit);\n\n const response = await searchZeroLogs({\n keyword: searchKeyword,\n agentId: options.agentId,\n runId: options.run,\n since,\n limit,\n before,\n after,\n });\n\n if (response.results.length === 0) {\n console.log(chalk.dim(\"No matches found\"));\n console.log(\n chalk.dim(\n \" Try a broader search with --since 30d or a different keyword\",\n ),\n );\n return;\n }\n\n renderResults(response);\n}\n\nexport const searchCommand = new Command()\n .name(\"search\")\n .description(\"Search agent events across runs\")\n .argument(\"<keyword>\", \"Search keyword\")\n .option(\"-A, --after-context <n>\", \"Show n events after each match\")\n .option(\"-B, --before-context <n>\", \"Show n events before each match\")\n .option(\"-C, --context <n>\", \"Show n events before and after each match\")\n .option(\"--agent <id>\", \"Filter by Zero agent ID\")\n .option(\"--run <id>\", \"Filter by specific run ID\")\n .option(\"--since <time>\", \"Search logs since (default: 7d)\")\n .option(\"--limit <n>\", \"Maximum number of matches (default: 20)\")\n .addHelpText(\n \"after\",\n `\nExamples:\n zero logs search \"error\"\n zero logs search \"timeout\" --agent 123e4567-e89b-12d3-a456-426614174000 -C 2\n zero logs search \"failed\" --since 30d --limit 50`,\n )\n .action(\n withErrorHandler(\n async (keyword: string, options: LogsSearchCommandOptions) => {\n const { agent, ...searchOptions } = options;\n await runLogsSearch(keyword, { ...searchOptions, agentId: agent });\n },\n ),\n );\n"],"mappings":"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","names":[]}
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from "node:module";
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  MODEL_PROVIDER_TYPES
6
- } from "./chunk-LRXQIJYA.js";
6
+ } from "./chunk-KBDCWC3F.js";
7
7
  import {
8
8
  init_esm_shims
9
9
  } from "./chunk-DIRAZ3YX.js";
@@ -40,4 +40,4 @@ export {
40
40
  formatModelProviderRoute,
41
41
  formatModelPolicyStatus
42
42
  };
43
- //# sourceMappingURL=chunk-ZQR57JPN.js.map
43
+ //# sourceMappingURL=chunk-VTG6TDYL.js.map
@@ -5,7 +5,7 @@ import {
5
5
  CONNECTOR_TYPES,
6
6
  CONNECTOR_TYPE_KEYS,
7
7
  connectorAuthMethodIdSchema
8
- } from "./chunk-LRXQIJYA.js";
8
+ } from "./chunk-KBDCWC3F.js";
9
9
  import {
10
10
  init_esm_shims
11
11
  } from "./chunk-DIRAZ3YX.js";
@@ -120,4 +120,4 @@ export {
120
120
  getConnectorStoredSecretDisplayInfo,
121
121
  getDiagnosticConnectorTypeForRuntimeEnvName
122
122
  };
123
- //# sourceMappingURL=chunk-ZTIA2B55.js.map
123
+ //# sourceMappingURL=chunk-Y4YHS5UO.js.map
@@ -50,7 +50,7 @@ if (DSN) {
50
50
  Sentry.init({
51
51
  dsn: DSN,
52
52
  environment: process.env.SENTRY_ENVIRONMENT ?? "production",
53
- release: "9.222.10",
53
+ release: "9.222.11",
54
54
  sendDefaultPii: false,
55
55
  tracesSampleRate: 0,
56
56
  shutdownTimeout: 500,
@@ -69,7 +69,7 @@ if (DSN) {
69
69
  }
70
70
  });
71
71
  Sentry.setContext("cli", {
72
- version: "9.222.10",
72
+ version: "9.222.11",
73
73
  command: process.argv.slice(2).join(" ")
74
74
  });
75
75
  Sentry.setContext("runtime", {
@@ -146,4 +146,4 @@ async function configureGlobalProxyFromEnv() {
146
146
  export {
147
147
  configureGlobalProxyFromEnv
148
148
  };
149
- //# sourceMappingURL=chunk-EQLMBGHF.js.map
149
+ //# sourceMappingURL=chunk-ZPWEXRMA.js.map
@@ -9,7 +9,7 @@ import {
9
9
  fetchComputerUsePluginContent,
10
10
  fetchComputerUseScreenshot,
11
11
  getComputerUseCommand
12
- } from "./chunk-LRXQIJYA.js";
12
+ } from "./chunk-KBDCWC3F.js";
13
13
  import {
14
14
  ApiRequestError,
15
15
  withErrorHandler
@@ -881,4 +881,4 @@ export {
881
881
  formatComputerUseResultForConsole,
882
882
  zeroComputerUseCommand
883
883
  };
884
- //# sourceMappingURL=computer-use-PNFYU4P6.js.map
884
+ //# sourceMappingURL=computer-use-XXPDTJSQ.js.map
@@ -16,7 +16,7 @@ import {
16
16
  getZeroCustomConnector,
17
17
  listZeroConnectorCatalogStatus,
18
18
  listZeroCustomConnectors
19
- } from "./chunk-LRXQIJYA.js";
19
+ } from "./chunk-KBDCWC3F.js";
20
20
  import {
21
21
  withErrorHandler
22
22
  } from "./chunk-3F4RFLPX.js";
@@ -832,4 +832,4 @@ var zeroConnectorCommand = new Command().name("connector").description("Check th
832
832
  export {
833
833
  zeroConnectorCommand
834
834
  };
835
- //# sourceMappingURL=connector-5QNIIQYE.js.map
835
+ //# sourceMappingURL=connector-PWDJ3R6G.js.map
@@ -8,7 +8,7 @@ import "./chunk-LTDQISD7.js";
8
8
  import {
9
9
  createZeroCreditCheckout,
10
10
  getZeroOrgMembers
11
- } from "./chunk-LRXQIJYA.js";
11
+ } from "./chunk-KBDCWC3F.js";
12
12
  import {
13
13
  withErrorHandler
14
14
  } from "./chunk-3F4RFLPX.js";
@@ -87,4 +87,4 @@ var zeroCreditCommand = new Command().name("credit").description("Create a Strip
87
87
  export {
88
88
  zeroCreditCommand
89
89
  };
90
- //# sourceMappingURL=credit-N4VWEZQD.js.map
90
+ //# sourceMappingURL=credit-MYBUWRHP.js.map
@@ -5,7 +5,7 @@ import "./chunk-LTDQISD7.js";
5
5
  import {
6
6
  requestDeveloperSupportConsent,
7
7
  submitDeveloperSupport
8
- } from "./chunk-LRXQIJYA.js";
8
+ } from "./chunk-KBDCWC3F.js";
9
9
  import {
10
10
  withErrorHandler
11
11
  } from "./chunk-3F4RFLPX.js";
@@ -61,4 +61,4 @@ Notes:
61
61
  export {
62
62
  zeroDeveloperSupportCommand
63
63
  };
64
- //# sourceMappingURL=developer-support-6YAKUD6P.js.map
64
+ //# sourceMappingURL=developer-support-65OQ2RK4.js.map
@@ -5,7 +5,7 @@ import {
5
5
  findFirewallMetadataPermission,
6
6
  getFirewallPermissionSummary,
7
7
  loadFirewallPermissionMetadata
8
- } from "./chunk-IJBKOTQR.js";
8
+ } from "./chunk-7ZJOZZXZ.js";
9
9
  import {
10
10
  getPlatformOrigin,
11
11
  toPlatformUrl
@@ -13,11 +13,11 @@ import {
13
13
  import {
14
14
  matchFirewallBaseUrl,
15
15
  matchFirewallRequestDecision
16
- } from "./chunk-PAZFEW6A.js";
16
+ } from "./chunk-F774K6TY.js";
17
17
  import {
18
18
  getConnectorEnvBindingEntries,
19
19
  getDiagnosticConnectorTypeForRuntimeEnvName
20
- } from "./chunk-ZTIA2B55.js";
20
+ } from "./chunk-Y4YHS5UO.js";
21
21
  import "./chunk-LTDQISD7.js";
22
22
  import {
23
23
  CONNECTOR_TYPES,
@@ -32,7 +32,7 @@ import {
32
32
  hasUnsafeFirewallPath,
33
33
  resolveFirewallBaseUrlTemplate,
34
34
  searchZeroConnectors
35
- } from "./chunk-LRXQIJYA.js";
35
+ } from "./chunk-KBDCWC3F.js";
36
36
  import {
37
37
  ApiRequestError,
38
38
  getApiUrl,
@@ -8645,4 +8645,4 @@ Notes:
8645
8645
  export {
8646
8646
  zeroDoctorCommand
8647
8647
  };
8648
- //# sourceMappingURL=doctor-APGXQWMY.js.map
8648
+ //# sourceMappingURL=doctor-2U4HK4AX.js.map
@@ -24,7 +24,7 @@ import {
24
24
  getZeroAgentUserConnectors,
25
25
  listZeroConnectorCatalog,
26
26
  listZeroConnectorCatalogStatus
27
- } from "./chunk-LRXQIJYA.js";
27
+ } from "./chunk-KBDCWC3F.js";
28
28
  import {
29
29
  generateWebImage,
30
30
  generateWebVideo,
@@ -2693,4 +2693,4 @@ var generateCommand = new Command().name("generate").description(
2693
2693
  export {
2694
2694
  generateCommand
2695
2695
  };
2696
- //# sourceMappingURL=generate-DJTSGM7S.js.map
2696
+ //# sourceMappingURL=generate-UEDRCAKX.js.map
@@ -6,7 +6,7 @@ import {
6
6
  completeGithubFileUpload,
7
7
  downloadGithubFile,
8
8
  initGithubFileUpload
9
- } from "./chunk-LRXQIJYA.js";
9
+ } from "./chunk-KBDCWC3F.js";
10
10
  import {
11
11
  withErrorHandler
12
12
  } from "./chunk-3F4RFLPX.js";
@@ -201,4 +201,4 @@ Examples:
201
201
  export {
202
202
  zeroGithubCommand
203
203
  };
204
- //# sourceMappingURL=github-WJX4QT2H.js.map
204
+ //# sourceMappingURL=github-R6JKL74U.js.map
@@ -11,7 +11,7 @@ import {
11
11
  getGoal,
12
12
  pauseGoal,
13
13
  resumeGoal
14
- } from "./chunk-LRXQIJYA.js";
14
+ } from "./chunk-KBDCWC3F.js";
15
15
  import {
16
16
  withErrorHandler
17
17
  } from "./chunk-3F4RFLPX.js";
@@ -78,4 +78,4 @@ var zeroGoalCommand = new Command().name("goal").description("Manage the current
78
78
  export {
79
79
  zeroGoalCommand
80
80
  };
81
- //# sourceMappingURL=goal-NITAYB5U.js.map
81
+ //# sourceMappingURL=goal-BG47S2RP.js.map
@@ -12,7 +12,7 @@ import {
12
12
  getHostedSiteFiles,
13
13
  hostedArtifactKindSchema,
14
14
  prepareHostedSite
15
- } from "./chunk-LRXQIJYA.js";
15
+ } from "./chunk-KBDCWC3F.js";
16
16
  import {
17
17
  withErrorHandler
18
18
  } from "./chunk-3F4RFLPX.js";
@@ -547,4 +547,4 @@ Notes:
547
547
  export {
548
548
  zeroHostCommand
549
549
  };
550
- //# sourceMappingURL=host-2UZGVQ3F.js.map
550
+ //# sourceMappingURL=host-2VS2KOZQ.js.map
package/index.js CHANGED
@@ -13,18 +13,12 @@ import {
13
13
  Kn,
14
14
  uo
15
15
  } from "./chunk-J4HTPZIN.js";
16
- import {
17
- collectLogItems,
18
- parseBoundedLogCount,
19
- parsePositiveLogCount,
20
- parseSearchQuery,
21
- parseTime
22
- } from "./chunk-H63W4KQL.js";
23
16
  import {
24
17
  EventRenderer,
25
18
  EventStreamNormalizer,
26
19
  collectArtifacts,
27
20
  collectKeyValue,
21
+ collectLogItems,
28
22
  collectMounts,
29
23
  collectVolumeVersions,
30
24
  extractAndGroupVariables,
@@ -36,16 +30,20 @@ import {
36
30
  isSupportedFramework,
37
31
  isUUID,
38
32
  loadValues,
33
+ parseBoundedLogCount,
39
34
  parseIdentifier,
40
35
  parsePermissionPolicies,
36
+ parsePositiveLogCount,
37
+ parseSearchQuery,
38
+ parseTime,
41
39
  pollEvents,
42
40
  renderRunCreated,
43
41
  require_dist,
44
42
  showNextSteps
45
- } from "./chunk-FJFAPB3B.js";
43
+ } from "./chunk-5EPGSDIQ.js";
46
44
  import "./chunk-I23JUVHS.js";
47
- import "./chunk-PAZFEW6A.js";
48
- import "./chunk-ZTIA2B55.js";
45
+ import "./chunk-F774K6TY.js";
46
+ import "./chunk-Y4YHS5UO.js";
49
47
  import {
50
48
  isInteractive,
51
49
  promptText
@@ -79,7 +77,7 @@ import {
79
77
  prepareStorage,
80
78
  searchLogs,
81
79
  volumeConfigSchema
82
- } from "./chunk-LRXQIJYA.js";
80
+ } from "./chunk-KBDCWC3F.js";
83
81
  import {
84
82
  ApiRequestError,
85
83
  clearConfig,
@@ -96,7 +94,7 @@ import {
96
94
  } from "./chunk-JUTUEPIR.js";
97
95
  import {
98
96
  configureGlobalProxyFromEnv
99
- } from "./chunk-EQLMBGHF.js";
97
+ } from "./chunk-ZPWEXRMA.js";
100
98
  import "./chunk-LRHXR7JT.js";
101
99
  import {
102
100
  Command,
@@ -434,7 +432,7 @@ function getConfigPath() {
434
432
  return join(os.homedir(), ".vm0", "config.json");
435
433
  }
436
434
  var infoCommand = new Command().name("info").description("Display environment and debug information").action(async () => {
437
- console.log(source_default.bold(`VM0 CLI v${"9.222.10"}`));
435
+ console.log(source_default.bold(`VM0 CLI v${"9.222.11"}`));
438
436
  console.log();
439
437
  const config = await loadConfig();
440
438
  const hasEnvToken = !!process.env.VM0_TOKEN;
@@ -1137,7 +1135,7 @@ var composeCommand = new Command().name("compose").description("Create or update
1137
1135
  options.autoUpdate = false;
1138
1136
  }
1139
1137
  if (options.autoUpdate !== false) {
1140
- await startSilentUpgrade("9.222.10");
1138
+ await startSilentUpgrade("9.222.11");
1141
1139
  }
1142
1140
  try {
1143
1141
  const { config, agentName, agent, basePath } = await loadAndValidateConfig(resolvedConfigFile);
@@ -1234,7 +1232,7 @@ var mainRunCommand = new Command().name("run").description("Run an agent").argum
1234
1232
  withErrorHandler(
1235
1233
  async (identifier, prompt, options) => {
1236
1234
  if (options.autoUpdate !== false) {
1237
- await startSilentUpgrade("9.222.10");
1235
+ await startSilentUpgrade("9.222.11");
1238
1236
  }
1239
1237
  const { name, version } = parseIdentifier(identifier);
1240
1238
  let composeId;
@@ -3093,13 +3091,13 @@ var upgradeCommand = new Command().name("upgrade").description("Upgrade vm0 CLI
3093
3091
  if (latestVersion === null) {
3094
3092
  throw new Error("Could not check for updates. Please try again later.");
3095
3093
  }
3096
- if (latestVersion === "9.222.10") {
3097
- console.log(source_default.green(`\u2713 Already up to date (${"9.222.10"})`));
3094
+ if (latestVersion === "9.222.11") {
3095
+ console.log(source_default.green(`\u2713 Already up to date (${"9.222.11"})`));
3098
3096
  return;
3099
3097
  }
3100
3098
  console.log(
3101
3099
  source_default.yellow(
3102
- `Current version: ${"9.222.10"} -> Latest version: ${latestVersion}`
3100
+ `Current version: ${"9.222.11"} -> Latest version: ${latestVersion}`
3103
3101
  )
3104
3102
  );
3105
3103
  console.log();
@@ -3126,7 +3124,7 @@ var upgradeCommand = new Command().name("upgrade").description("Upgrade vm0 CLI
3126
3124
  const success = await performUpgrade(packageManager);
3127
3125
  if (success) {
3128
3126
  console.log(
3129
- source_default.green(`\u2713 Upgraded from ${"9.222.10"} to ${latestVersion}`)
3127
+ source_default.green(`\u2713 Upgraded from ${"9.222.11"} to ${latestVersion}`)
3130
3128
  );
3131
3129
  return;
3132
3130
  }
@@ -3193,7 +3191,7 @@ var whoamiCommand = new Command().name("whoami").description("Show current ident
3193
3191
 
3194
3192
  // src/index.ts
3195
3193
  var program = new Command();
3196
- program.name("vm0").description("VM0 CLI - Build and run agents with natural language").version("9.222.10");
3194
+ program.name("vm0").description("VM0 CLI - Build and run agents with natural language").version("9.222.11");
3197
3195
  program.addCommand(authCommand);
3198
3196
  program.addCommand(infoCommand);
3199
3197
  program.addCommand(composeCommand);