@pixelzx/genesis 2026.5.16-1 → 2026.5.17

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 (29) hide show
  1. package/CHANGELOG.md +2 -8
  2. package/dist/.buildstamp +1 -1
  3. package/dist/build-info.json +3 -3
  4. package/dist/cli-startup-metadata.json +1 -1
  5. package/dist/{command-registry-IUMzen5t.js → command-registry-CrpK5V0t.js} +2 -2
  6. package/dist/{command-registry-CEutuF6h.js → command-registry-DsEHhyvq.js} +2 -2
  7. package/dist/{command-registry-core-dhTXkSFE.js → command-registry-core-C2q-Fuql.js} +2 -2
  8. package/dist/{completion-cli-Cmokglnf.js → completion-cli-DnhwBrSV.js} +2 -2
  9. package/dist/{config-cli-CUXquLaz.js → config-cli--BUELAQJ.js} +1 -1
  10. package/dist/entry.js +1 -1
  11. package/dist/extensions/matrix/api.js +1 -1
  12. package/dist/extensions/matrix/{channel-JsCM8zLn.js → channel-DS3gG6Qe.js} +4 -1
  13. package/dist/extensions/matrix/channel-plugin-api.js +1 -1
  14. package/dist/extensions/matrix/test-api.js +1 -1
  15. package/dist/{gateway-cli-ZPcCgahB.js → gateway-cli-C5C_Nuar.js} +1 -1
  16. package/dist/index.js +1 -1
  17. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  18. package/dist/postinstall-inventory.json +17 -17
  19. package/dist/{program-LInAEfJ8.js → program-D8CJbt46.js} +1 -1
  20. package/dist/{register.subclis-D_z-c21p.js → register.subclis-BIp329mG.js} +1 -1
  21. package/dist/{register.subclis-0sZa4b7M.js → register.subclis-CueYijEv.js} +2 -2
  22. package/dist/{register.subclis-core-nHLmpKBo.js → register.subclis-core-DN2YDFif.js} +1 -1
  23. package/dist/{run-main-3RcfMsx0.js → run-main-DOuA3tSk.js} +4 -4
  24. package/dist/{runtime-schema-DQ1WKzXr.js → runtime-schema-rcICNHHB.js} +1 -1
  25. package/dist/{server-plugin-bootstrap-SkX3seQa.js → server-plugin-bootstrap-5mOkDyUg.js} +5 -5
  26. package/dist/{server-plugin-bootstrap-BKr5Q-qc.js → server-plugin-bootstrap-D88wQksA.js} +1 -1
  27. package/dist/{server-BjnI9kFs.js → server-yp4dS-aT.js} +1 -1
  28. package/dist/{server.impl-DLBqoOJE.js → server.impl-C1V8cZ_1.js} +2 -2
  29. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,17 +2,11 @@
2
2
 
3
3
  Docs: https://docs.genesis.ai
4
4
 
5
- ## 2026.5.16-1
5
+ ## 2026.5.17
6
6
 
7
7
  ### Fixes
8
8
 
9
- - Gateway: writing wallet config or unregistered channel config no longer triggers a full gateway restart; both path prefixes are now treated as no-op reloads.
10
-
11
- ## 2026.5.16
12
-
13
- ### Fixes
14
-
15
- - Agents: creating, updating, or deleting an agent no longer injects runtime-only gateway auth overrides that could trigger an unnecessary gateway restart.
9
+ - Gateway: prevent Matrix channel avatar URL rewrites (HTTP→mxc conversion during startup) from triggering channel restarts; treat `channels.matrix.avatarUrl` and `channels.matrix.name` as no-op config paths.
16
10
 
17
11
  ## 2026.5.14
18
12
 
package/dist/.buildstamp CHANGED
@@ -1 +1 @@
1
- {"builtAt":1778910219020,"head":"35d6277456eeb8fce08c16e16b5c2323af3038a8"}
1
+ {"builtAt":1778976447113,"head":"9314d4df972bf27302a0cb32399b161a33f2ac06"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2026.5.16-1",
3
- "commit": "35d6277456eeb8fce08c16e16b5c2323af3038a8",
4
- "builtAt": "2026-05-16T05:43:39.369Z"
2
+ "version": "2026.5.17",
3
+ "commit": "9314d4df972bf27302a0cb32399b161a33f2ac06",
4
+ "builtAt": "2026-05-17T00:07:27.544Z"
5
5
  }
@@ -26,5 +26,5 @@
26
26
  ],
27
27
  "channelCatalogSignature": "42572c297ec512116b06530236f3aa8b204823e5",
28
28
  "rootHelpBundleSignature": "437bdc216eab24f7d121a6c204a83d434b9e5a28",
29
- "rootHelpText": "\n🦞 Genesis 2026.5.16-1 (35d6277) — I don't judge, but your missing API keys are absolutely judging you.\n\nUsage: genesis [options] [command]\n\nOptions:\n --container <name> Run the CLI inside a running Podman/Docker container\n named <name> (default: env GENESIS_CONTAINER)\n --dev Dev profile: isolate state under ~/.genesis-dev, default\n gateway port 19001, and shift derived ports\n (browser/canvas)\n -h, --help Display help for command\n --log-level <level> Global log level override for file + console\n (silent|fatal|error|warn|info|debug|trace)\n --no-color Disable ANSI colors\n --profile <name> Use a named profile (isolates\n GENESIS_STATE_DIR/GENESIS_CONFIG_PATH under\n ~/.genesis-<name>)\n -V, --version output the version number\n\nCommands:\n Hint: commands suffixed with * have subcommands. Run <command> --help for details.\n acp * Agent Control Protocol tools\n agent Run one agent turn via the Gateway\n agents * Manage isolated agents (workspaces, auth, routing)\n approvals * Manage exec approvals (gateway or node host)\n backup * Create and verify local backup archives for Genesis state\n capability * Run provider-backed inference commands (fallback alias:\n infer)\n channels * Manage connected chat channels (Telegram, Discord, etc.)\n chat Open a local terminal UI (alias for tui --local)\n clawbot * Legacy clawbot command aliases\n completion Generate shell completion script\n config * Non-interactive config helpers\n (get/set/unset/file/validate). Default: starts guided\n setup.\n configure Interactive configuration for credentials, channels,\n gateway, and agent defaults\n cron * Manage cron jobs via the Gateway scheduler\n daemon * Gateway service (legacy alias)\n dashboard Open the Control UI with your current token\n devices * Device pairing + token management\n directory * Lookup contact and group IDs (self, peers, groups) for\n supported chat channels\n dns * DNS helpers for wide-area discovery (Tailscale + CoreDNS)\n docs Search the live Genesis docs\n doctor Health checks + quick fixes for the gateway and channels\n exec-policy * Show or synchronize requested exec policy with host\n approvals\n gateway * Run, inspect, and query the WebSocket Gateway\n health Fetch health from the running gateway\n help Display help for command\n hooks * Manage internal agent hooks\n infer * Run provider-backed inference commands\n logs Tail gateway file logs via RPC\n mcp * Manage Genesis MCP config and channel bridge\n memory Search, inspect, and reindex memory files\n message * Send, read, and manage messages\n migrate Import config and local state from OpenClaw or Hermes\n Agent\n models * Discover, scan, and configure models\n node * Run and manage the headless node host service\n nodes * Manage gateway-owned node pairing and node commands\n onboard Interactive onboarding for gateway, workspace, and skills\n pairing * Secure DM pairing (approve inbound requests)\n plugins * Manage Genesis plugins\n proxy * Run the Genesis debug proxy and inspect captured traffic\n qr Generate mobile pairing QR/setup code\n reset Reset local config/state (keeps the CLI installed)\n sandbox * Manage sandbox containers for agent isolation\n secrets * Secrets runtime reload controls\n security * Security tools and local config audits\n sessions * List stored conversation sessions\n setup Initialize local config and agent workspace\n skills * List and inspect available skills\n status Show channel health and recent session recipients\n system * System events, heartbeat, and presence\n tasks * Inspect durable background task state\n terminal Open a local terminal UI (alias for tui --local)\n tui Open a terminal UI connected to the Gateway\n uninstall Uninstall the gateway service + local data (CLI remains)\n update * Update Genesis and inspect update channel status\n wallet * Manage the encrypted local wallet and public addresses\n webhooks * Webhook helpers and integrations\n\nExamples:\n genesis models --help\n Show detailed help for the models command.\n genesis channels login --verbose\n Link personal WhatsApp Web and show QR + connection logs.\n genesis message send --target +15555550123 --message \"Hi\" --json\n Send via your web session and print JSON result.\n genesis gateway --port 18789\n Run the WebSocket Gateway locally.\n genesis --dev gateway\n Run a dev Gateway (isolated state/config) on ws://127.0.0.1:19001.\n genesis gateway --force\n Kill anything bound to the default gateway port, then start it.\n genesis gateway ...\n Gateway control via WebSocket.\n genesis agent --to +15555550123 --message \"Run summary\" --deliver\n Talk directly to the agent using the Gateway; optionally send the WhatsApp reply.\n genesis message send --channel telegram --target @mychat --message \"Hi\"\n Send via your Telegram bot.\n\nDocs: https://docs.genesis.ai/cli\n\n"
29
+ "rootHelpText": "\n🦞 Genesis 2026.5.17 (9314d4d) — Half butler, half debugger, full crustacean.\n\nUsage: genesis [options] [command]\n\nOptions:\n --container <name> Run the CLI inside a running Podman/Docker container\n named <name> (default: env GENESIS_CONTAINER)\n --dev Dev profile: isolate state under ~/.genesis-dev, default\n gateway port 19001, and shift derived ports\n (browser/canvas)\n -h, --help Display help for command\n --log-level <level> Global log level override for file + console\n (silent|fatal|error|warn|info|debug|trace)\n --no-color Disable ANSI colors\n --profile <name> Use a named profile (isolates\n GENESIS_STATE_DIR/GENESIS_CONFIG_PATH under\n ~/.genesis-<name>)\n -V, --version output the version number\n\nCommands:\n Hint: commands suffixed with * have subcommands. Run <command> --help for details.\n acp * Agent Control Protocol tools\n agent Run one agent turn via the Gateway\n agents * Manage isolated agents (workspaces, auth, routing)\n approvals * Manage exec approvals (gateway or node host)\n backup * Create and verify local backup archives for Genesis state\n capability * Run provider-backed inference commands (fallback alias:\n infer)\n channels * Manage connected chat channels (Telegram, Discord, etc.)\n chat Open a local terminal UI (alias for tui --local)\n clawbot * Legacy clawbot command aliases\n completion Generate shell completion script\n config * Non-interactive config helpers\n (get/set/unset/file/validate). Default: starts guided\n setup.\n configure Interactive configuration for credentials, channels,\n gateway, and agent defaults\n cron * Manage cron jobs via the Gateway scheduler\n daemon * Gateway service (legacy alias)\n dashboard Open the Control UI with your current token\n devices * Device pairing + token management\n directory * Lookup contact and group IDs (self, peers, groups) for\n supported chat channels\n dns * DNS helpers for wide-area discovery (Tailscale + CoreDNS)\n docs Search the live Genesis docs\n doctor Health checks + quick fixes for the gateway and channels\n exec-policy * Show or synchronize requested exec policy with host\n approvals\n gateway * Run, inspect, and query the WebSocket Gateway\n health Fetch health from the running gateway\n help Display help for command\n hooks * Manage internal agent hooks\n infer * Run provider-backed inference commands\n logs Tail gateway file logs via RPC\n mcp * Manage Genesis MCP config and channel bridge\n memory Search, inspect, and reindex memory files\n message * Send, read, and manage messages\n migrate Import config and local state from OpenClaw or Hermes\n Agent\n models * Discover, scan, and configure models\n node * Run and manage the headless node host service\n nodes * Manage gateway-owned node pairing and node commands\n onboard Interactive onboarding for gateway, workspace, and skills\n pairing * Secure DM pairing (approve inbound requests)\n plugins * Manage Genesis plugins\n proxy * Run the Genesis debug proxy and inspect captured traffic\n qr Generate mobile pairing QR/setup code\n reset Reset local config/state (keeps the CLI installed)\n sandbox * Manage sandbox containers for agent isolation\n secrets * Secrets runtime reload controls\n security * Security tools and local config audits\n sessions * List stored conversation sessions\n setup Initialize local config and agent workspace\n skills * List and inspect available skills\n status Show channel health and recent session recipients\n system * System events, heartbeat, and presence\n tasks * Inspect durable background task state\n terminal Open a local terminal UI (alias for tui --local)\n tui Open a terminal UI connected to the Gateway\n uninstall Uninstall the gateway service + local data (CLI remains)\n update * Update Genesis and inspect update channel status\n wallet * Manage the encrypted local wallet and public addresses\n webhooks * Webhook helpers and integrations\n\nExamples:\n genesis models --help\n Show detailed help for the models command.\n genesis channels login --verbose\n Link personal WhatsApp Web and show QR + connection logs.\n genesis message send --target +15555550123 --message \"Hi\" --json\n Send via your web session and print JSON result.\n genesis gateway --port 18789\n Run the WebSocket Gateway locally.\n genesis --dev gateway\n Run a dev Gateway (isolated state/config) on ws://127.0.0.1:19001.\n genesis gateway --force\n Kill anything bound to the default gateway port, then start it.\n genesis gateway ...\n Gateway control via WebSocket.\n genesis agent --to +15555550123 --message \"Run summary\" --deliver\n Talk directly to the agent using the Gateway; optionally send the WhatsApp reply.\n genesis message send --channel telegram --target @mychat --message \"Hi\"\n Send via your Telegram bot.\n\nDocs: https://docs.genesis.ai/cli\n\n"
30
30
  }
@@ -1,4 +1,4 @@
1
1
  import "./core-command-descriptors-C5qh62Os.js";
2
- import { t as registerCoreCliByName } from "./command-registry-core-dhTXkSFE.js";
3
- import "./command-registry-CEutuF6h.js";
2
+ import { t as registerCoreCliByName } from "./command-registry-core-C2q-Fuql.js";
3
+ import "./command-registry-DsEHhyvq.js";
4
4
  export { registerCoreCliByName };
@@ -1,5 +1,5 @@
1
- import { n as registerCoreCliCommands } from "./command-registry-core-dhTXkSFE.js";
2
- import { n as registerSubCliCommands } from "./register.subclis-0sZa4b7M.js";
1
+ import { n as registerCoreCliCommands } from "./command-registry-core-C2q-Fuql.js";
2
+ import { n as registerSubCliCommands } from "./register.subclis-CueYijEv.js";
3
3
  //#region src/cli/program/command-registry.ts
4
4
  function registerProgramCommands(program, ctx, argv = process.argv) {
5
5
  registerCoreCliCommands(program, ctx, argv);
@@ -1,6 +1,6 @@
1
1
  import { t as resolveCliArgvInvocation } from "./argv-invocation-BIP3nEco.js";
2
2
  import { n as shouldRegisterPrimaryCommandOnly } from "./command-registration-policy-BdwKjnCV.js";
3
- import { a as defineImportedCommandGroupSpec, i as buildCommandGroupEntries, o as defineImportedProgramCommandGroupSpecs } from "./register.subclis-core-nHLmpKBo.js";
3
+ import { a as defineImportedCommandGroupSpec, i as buildCommandGroupEntries, o as defineImportedProgramCommandGroupSpecs } from "./register.subclis-core-DN2YDFif.js";
4
4
  import { t as getCoreCliCommandDescriptors } from "./core-command-descriptors-C5qh62Os.js";
5
5
  import { i as registerCommandGroups, r as registerCommandGroupByName } from "./register-command-groups-DhvN8p0W.js";
6
6
  //#region src/cli/program/command-registry-core.ts
@@ -31,7 +31,7 @@ const coreEntrySpecs = [
31
31
  },
32
32
  {
33
33
  commandNames: ["config"],
34
- loadModule: () => import("./config-cli-CUXquLaz.js"),
34
+ loadModule: () => import("./config-cli--BUELAQJ.js"),
35
35
  exportName: "registerConfigCli"
36
36
  },
37
37
  {
@@ -2,9 +2,9 @@ import { c as routeLogsToStderr } from "./subsystem-DTMy5YmO.js";
2
2
  import { t as formatDocsLink } from "./links-DmsJCU7L.js";
3
3
  import { r as theme } from "./theme-BrRleVfL.js";
4
4
  import { a as isCompletionShell, o as resolveCompletionCachePath, r as installCompletion, s as resolveShellFromEnv, t as COMPLETION_SHELLS } from "./completion-runtime-BsbwIluW.js";
5
- import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-core-nHLmpKBo.js";
5
+ import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-core-DN2YDFif.js";
6
6
  import { t as getCoreCliCommandDescriptors } from "./core-command-descriptors-C5qh62Os.js";
7
- import "./command-registry-core-dhTXkSFE.js";
7
+ import "./command-registry-core-C2q-Fuql.js";
8
8
  import path from "node:path";
9
9
  import fs from "node:fs/promises";
10
10
  import { Option } from "commander";
@@ -17,7 +17,7 @@ import { r as replaceConfigFile } from "./mutate-Ck2md8xN.js";
17
17
  import "./config-978YFBb1.js";
18
18
  import { a as normalizeConfigIssues, n as formatConfigIssueLines } from "./issue-format-CctGyTV-.js";
19
19
  import { t as redactConfigObject } from "./redact-snapshot-BRzjCxXA.js";
20
- import { n as readBestEffortRuntimeConfigSchema } from "./runtime-schema-DQ1WKzXr.js";
20
+ import { n as readBestEffortRuntimeConfigSchema } from "./runtime-schema-rcICNHHB.js";
21
21
  import { n as setCommandJsonMode } from "./json-mode-C-v0O8CU.js";
22
22
  import fs from "node:fs";
23
23
  import JSON5 from "json5";
package/dist/entry.js CHANGED
@@ -179,7 +179,7 @@ function tryHandleRootHelpFastPath(argv, deps = {}) {
179
179
  }
180
180
  function runMainOrRootHelp(argv) {
181
181
  if (tryHandleRootHelpFastPath(argv)) return;
182
- import("./run-main-3RcfMsx0.js").then(({ runCli }) => runCli(argv)).catch((error) => {
182
+ import("./run-main-DOuA3tSk.js").then(({ runCli }) => runCli(argv)).catch((error) => {
183
183
  console.error("[genesis] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
184
184
  process$1.exitCode = 1;
185
185
  });
@@ -2,7 +2,7 @@ import { d as setMatrixThreadBindingIdleTimeoutBySessionKey, n as getMatrixThrea
2
2
  import { a as resolveMatrixDefaultOrOnlyAccountId, i as resolveMatrixChannelConfig, n as requiresExplicitMatrixDefaultAccount, r as resolveConfiguredMatrixAccountIds, t as findMatrixAccountEntry } from "./account-selection-DjWlIEiW.js";
3
3
  import { n as listMatrixEnvAccountIds, r as resolveMatrixEnvAccountToken, t as getMatrixScopedEnvVarNames } from "./env-vars-BVfgZ_aO.js";
4
4
  import { a as resolveMatrixCredentialsPath, c as resolveMatrixLegacyFlatStoreRoot, i as resolveMatrixCredentialsFilename, l as sanitizeMatrixPathSegment, n as resolveMatrixAccountStorageRoot, o as resolveMatrixHomeserverKey, r as resolveMatrixCredentialsDir, s as resolveMatrixLegacyFlatStoragePaths, t as hashMatrixAccessToken } from "./storage-paths-D9lhZvF4.js";
5
- import { t as matrixPlugin } from "./channel-JsCM8zLn.js";
5
+ import { t as matrixPlugin } from "./channel-DS3gG6Qe.js";
6
6
  import { n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-DvuUNvs4.js";
7
7
  import { n as matrixOnboardingAdapter } from "./setup-surface-OuzcHjlh.js";
8
8
  import { t as createMatrixThreadBindingManager } from "./thread-bindings-B1sXX5Bk.js";
@@ -849,7 +849,10 @@ const matrixPlugin = createChatChannelPlugin({
849
849
  threads: true,
850
850
  media: true
851
851
  },
852
- reload: { configPrefixes: ["channels.matrix"] },
852
+ reload: {
853
+ configPrefixes: ["channels.matrix"],
854
+ noopPrefixes: ["channels.matrix.avatarUrl", "channels.matrix.name"]
855
+ },
853
856
  configSchema: buildChannelConfigSchema(MatrixConfigSchema),
854
857
  config: {
855
858
  ...matrixConfigAdapter,
@@ -1,2 +1,2 @@
1
- import { t as matrixPlugin } from "./channel-JsCM8zLn.js";
1
+ import { t as matrixPlugin } from "./channel-DS3gG6Qe.js";
2
2
  export { matrixPlugin };
@@ -1,4 +1,4 @@
1
1
  import { n as setMatrixRuntime } from "./runtime-BRGIN27k.js";
2
- import { t as matrixPlugin } from "./channel-JsCM8zLn.js";
2
+ import { t as matrixPlugin } from "./channel-DS3gG6Qe.js";
3
3
  import { t as MatrixClient } from "./sdk-BaOzI5bm.js";
4
4
  export { MatrixClient, matrixPlugin, setMatrixRuntime };
@@ -707,7 +707,7 @@ async function runGatewayCommand$1(opts) {
707
707
  const { startGatewayServer } = await startupTrace.measure("cli.server-import", () => withProgress({
708
708
  label: "Loading gateway modules…",
709
709
  indeterminate: true
710
- }, async () => import("./server-BjnI9kFs.js")));
710
+ }, async () => import("./server-yp4dS-aT.js")));
711
711
  setConsoleTimestampPrefix(true);
712
712
  if (devMode) await startupTrace.measure("cli.dev-config", () => ensureDevGatewayConfig({ reset: Boolean(opts.reset) }));
713
713
  gatewayLog.info("loading configuration…");
package/dist/index.js CHANGED
@@ -27,7 +27,7 @@ let runExec;
27
27
  let saveSessionStore;
28
28
  let waitForever;
29
29
  async function loadLegacyCliDeps() {
30
- const { runCli } = await import("./run-main-3RcfMsx0.js");
30
+ const { runCli } = await import("./run-main-DOuA3tSk.js");
31
31
  return { runCli };
32
32
  }
33
33
  async function runLegacyCliEntry(argv = process.argv, deps) {
@@ -1 +1 @@
1
- 2026-05-16T05:43:39.195Z
1
+ 2026-05-17T00:07:27.302Z
@@ -468,9 +468,9 @@
468
468
  "dist/command-queue-BVp2ZFpC.js",
469
469
  "dist/command-registration-B-qUrAIO.js",
470
470
  "dist/command-registration-policy-BdwKjnCV.js",
471
- "dist/command-registry-CEutuF6h.js",
472
- "dist/command-registry-core-dhTXkSFE.js",
473
- "dist/command-registry-IUMzen5t.js",
471
+ "dist/command-registry-core-C2q-Fuql.js",
472
+ "dist/command-registry-CrpK5V0t.js",
473
+ "dist/command-registry-DsEHhyvq.js",
474
474
  "dist/command-secret-gateway-CeBdQ0UB.js",
475
475
  "dist/command-secret-targets-0Wyup4PV.js",
476
476
  "dist/command-secret-targets-BV4u8JMq.js",
@@ -512,7 +512,7 @@
512
512
  "dist/compact-BIdDCBoG.js",
513
513
  "dist/compact.runtime-DgjjAE5U.js",
514
514
  "dist/compact.runtime.js",
515
- "dist/completion-cli-Cmokglnf.js",
515
+ "dist/completion-cli-DnhwBrSV.js",
516
516
  "dist/completion-runtime-BsbwIluW.js",
517
517
  "dist/config-7I0knzAJ.js",
518
518
  "dist/config-978YFBb1.js",
@@ -525,7 +525,7 @@
525
525
  "dist/config-BmmeC3qi.js",
526
526
  "dist/config-BNyrkpR-.js",
527
527
  "dist/config-BT5PfloK.js",
528
- "dist/config-cli-CUXquLaz.js",
528
+ "dist/config-cli--BUELAQJ.js",
529
529
  "dist/config-compat-BhJuQ9Ht.js",
530
530
  "dist/config-compat-BZ4ovP5A.js",
531
531
  "dist/config-compat-RCYFy_Rb.js",
@@ -1474,7 +1474,7 @@
1474
1474
  "dist/extensions/matrix/async-lock-hEU0xcd9.js",
1475
1475
  "dist/extensions/matrix/auth-presence.js",
1476
1476
  "dist/extensions/matrix/backup-health-DCSlgaaM.js",
1477
- "dist/extensions/matrix/channel-JsCM8zLn.js",
1477
+ "dist/extensions/matrix/channel-DS3gG6Qe.js",
1478
1478
  "dist/extensions/matrix/channel-plugin-api.js",
1479
1479
  "dist/extensions/matrix/channel.runtime-CdqDGGBB.js",
1480
1480
  "dist/extensions/matrix/cli-Bw8npwl6.js",
@@ -2434,7 +2434,7 @@
2434
2434
  "dist/gateway-auth-bypass-dbCx0KUx.js",
2435
2435
  "dist/gateway-bindings-ClJ2dExa.js",
2436
2436
  "dist/gateway-CjuxvsvZ.js",
2437
- "dist/gateway-cli-ZPcCgahB.js",
2437
+ "dist/gateway-cli-C5C_Nuar.js",
2438
2438
  "dist/gateway-control-ui-origins-BtAQL9cI.js",
2439
2439
  "dist/gateway-discovery-targets-DKx0wuJ4.js",
2440
2440
  "dist/gateway-install-token-U905xAQq.js",
@@ -6926,7 +6926,7 @@
6926
6926
  "dist/profiles-iex9FALy.js",
6927
6927
  "dist/program-context-D0cjwuja.js",
6928
6928
  "dist/program-context-Va23KkRp.js",
6929
- "dist/program-LInAEfJ8.js",
6929
+ "dist/program-D8CJbt46.js",
6930
6930
  "dist/progress-B0hhA4sH.js",
6931
6931
  "dist/progress-BaE4F9na.js",
6932
6932
  "dist/progress-line-xDw3PVgH.js",
@@ -7136,9 +7136,9 @@
7136
7136
  "dist/register.runtime.js",
7137
7137
  "dist/register.setup-VfQ0EfuW.js",
7138
7138
  "dist/register.status-health-sessions-ZXf1H1GV.js",
7139
- "dist/register.subclis-0sZa4b7M.js",
7140
- "dist/register.subclis-core-nHLmpKBo.js",
7141
- "dist/register.subclis-D_z-c21p.js",
7139
+ "dist/register.subclis-BIp329mG.js",
7140
+ "dist/register.subclis-core-DN2YDFif.js",
7141
+ "dist/register.subclis-CueYijEv.js",
7142
7142
  "dist/register.wallet-DIhihGeq.js",
7143
7143
  "dist/registry-BFavuj82.js",
7144
7144
  "dist/registry-CXnn3dzM.js",
@@ -7227,7 +7227,7 @@
7227
7227
  "dist/run-external-content.runtime-C3ZQF1m8.js",
7228
7228
  "dist/run-external-content.runtime.js",
7229
7229
  "dist/run-id-C6SoIdjl.js",
7230
- "dist/run-main-3RcfMsx0.js",
7230
+ "dist/run-main-DOuA3tSk.js",
7231
7231
  "dist/run-model-catalog.runtime-D1G1rb2a.js",
7232
7232
  "dist/run-model-catalog.runtime.js",
7233
7233
  "dist/run-session-state-C2B335sY.js",
@@ -7303,7 +7303,7 @@
7303
7303
  "dist/runtime-provider-euu3-9WC.js",
7304
7304
  "dist/runtime-registry-loader-CT5UYVi7.js",
7305
7305
  "dist/runtime-registry-loader-nToq7r4Y.js",
7306
- "dist/runtime-schema-DQ1WKzXr.js",
7306
+ "dist/runtime-schema-rcICNHHB.js",
7307
7307
  "dist/runtime-shared-BYcgFPa1.js",
7308
7308
  "dist/runtime-shared-wlemx0vJ.js",
7309
7309
  "dist/runtime-Sn8KleIb.js",
@@ -7383,19 +7383,19 @@
7383
7383
  "dist/send-policy-C-G8KVhh.js",
7384
7384
  "dist/send.runtime-CEMrmW9b.js",
7385
7385
  "dist/send.runtime.js",
7386
- "dist/server-BjnI9kFs.js",
7387
7386
  "dist/server-context-B6XEIceO.js",
7388
7387
  "dist/server-context-Dsf1Dbvg.js",
7389
7388
  "dist/server-jgippPyH.js",
7390
7389
  "dist/server-middleware-C8S5aVse.js",
7391
7390
  "dist/server-node-events-ClFTdjSU.js",
7392
- "dist/server-plugin-bootstrap-BKr5Q-qc.js",
7393
- "dist/server-plugin-bootstrap-SkX3seQa.js",
7391
+ "dist/server-plugin-bootstrap-5mOkDyUg.js",
7392
+ "dist/server-plugin-bootstrap-D88wQksA.js",
7394
7393
  "dist/server-restart-sentinel-BHMcnf9r.js",
7395
7394
  "dist/server-startup-log-BxIlUtST.js",
7396
7395
  "dist/server-startup-memory-D55xWFfq.js",
7397
7396
  "dist/server-tailscale-D1PqQsd5.js",
7398
- "dist/server.impl-DLBqoOJE.js",
7397
+ "dist/server-yp4dS-aT.js",
7398
+ "dist/server.impl-C1V8cZ_1.js",
7399
7399
  "dist/service-audit-CuYUK6l5.js",
7400
7400
  "dist/service-audit-FsztusUk.js",
7401
7401
  "dist/service-CQCSbs_d.js",
@@ -7,7 +7,7 @@ import { n as resolveCliChannelOptions } from "./channel-options-cRnHf9Nu.js";
7
7
  import { t as isCommandJsonOutputMode } from "./json-mode-C-v0O8CU.js";
8
8
  import { t as forceFreePort } from "./ports-CCwOHpa_.js";
9
9
  import { n as resolvePluginInstallPreactionRequest, t as resolvePluginInstallInvalidConfigPolicy } from "./plugin-install-config-policy--SxTae7t.js";
10
- import { t as registerProgramCommands } from "./command-registry-CEutuF6h.js";
10
+ import { t as registerProgramCommands } from "./command-registry-DsEHhyvq.js";
11
11
  import { t as configureProgramHelp } from "./help-s987DOEM.js";
12
12
  import { i as shouldBypassConfigGuardForCommandPath, n as ensureCliExecutionBootstrap, r as resolveCliExecutionStartupContext, t as applyCliExecutionStartupPresentation } from "./command-execution-startup-QB6n1mLE.js";
13
13
  import { n as setProgramContext } from "./program-context-Va23KkRp.js";
@@ -1,3 +1,3 @@
1
1
  import "./subcli-descriptors-CkIxFGIA.js";
2
- import { t as registerSubCliByName } from "./register.subclis-0sZa4b7M.js";
2
+ import { t as registerSubCliByName } from "./register.subclis-CueYijEv.js";
3
3
  export { registerSubCliByName };
@@ -1,12 +1,12 @@
1
1
  import { t as resolveCliArgvInvocation } from "./argv-invocation-BIP3nEco.js";
2
2
  import { r as shouldRegisterPrimarySubcommandOnly, t as shouldEagerRegisterSubcommands } from "./command-registration-policy-BdwKjnCV.js";
3
- import { i as buildCommandGroupEntries, n as registerSubCliByName$1, o as defineImportedProgramCommandGroupSpecs, r as registerSubCliCommands$1 } from "./register.subclis-core-nHLmpKBo.js";
3
+ import { i as buildCommandGroupEntries, n as registerSubCliByName$1, o as defineImportedProgramCommandGroupSpecs, r as registerSubCliCommands$1 } from "./register.subclis-core-DN2YDFif.js";
4
4
  import { i as registerCommandGroups, r as registerCommandGroupByName } from "./register-command-groups-DhvN8p0W.js";
5
5
  import { n as getSubCliEntries } from "./subcli-descriptors-CkIxFGIA.js";
6
6
  //#region src/cli/program/register.subclis.ts
7
7
  const entrySpecs = [...defineImportedProgramCommandGroupSpecs([{
8
8
  commandNames: ["completion"],
9
- loadModule: () => import("./completion-cli-Cmokglnf.js"),
9
+ loadModule: () => import("./completion-cli-DnhwBrSV.js"),
10
10
  exportName: "registerCompletionCli"
11
11
  }])];
12
12
  function resolveSubCliCommandGroups() {
@@ -63,7 +63,7 @@ function buildEntrySpecs(options = {}) {
63
63
  },
64
64
  {
65
65
  commandNames: ["gateway"],
66
- loadModule: () => import("./gateway-cli-ZPcCgahB.js"),
66
+ loadModule: () => import("./gateway-cli-C5C_Nuar.js"),
67
67
  exportName: "registerGatewayCli"
68
68
  },
69
69
  {
@@ -240,7 +240,7 @@ function defineRoutedCommand(definition) {
240
240
  let configCliPromise;
241
241
  let modelsListPromise;
242
242
  function loadConfigCli() {
243
- configCliPromise ??= import("./config-cli-CUXquLaz.js");
243
+ configCliPromise ??= import("./config-cli--BUELAQJ.js");
244
244
  return configCliPromise;
245
245
  }
246
246
  function loadModelsList() {
@@ -508,7 +508,7 @@ async function runCli(argv = process$1.argv) {
508
508
  if (await tryRouteCli(normalizedArgv)) return;
509
509
  enableConsoleCapture();
510
510
  const [{ buildProgram }, { runFatalErrorHooks }, { installUnhandledRejectionHandler }, { restoreTerminalState }] = await Promise.all([
511
- import("./program-LInAEfJ8.js"),
511
+ import("./program-D8CJbt46.js"),
512
512
  import("./fatal-error-hooks-C54p3nG2.js"),
513
513
  import("./unhandled-rejections-Cr4SP4Pl.js"),
514
514
  import("./restore-Bq3mpjIz.js")
@@ -530,10 +530,10 @@ async function runCli(argv = process$1.argv) {
530
530
  const { getProgramContext } = await import("./program-context-D0cjwuja.js");
531
531
  const ctx = getProgramContext(program);
532
532
  if (ctx) {
533
- const { registerCoreCliByName } = await import("./command-registry-IUMzen5t.js");
533
+ const { registerCoreCliByName } = await import("./command-registry-CrpK5V0t.js");
534
534
  await registerCoreCliByName(program, ctx, primary, parseArgv);
535
535
  }
536
- const { registerSubCliByName } = await import("./register.subclis-D_z-c21p.js");
536
+ const { registerSubCliByName } = await import("./register.subclis-BIp329mG.js");
537
537
  await registerSubCliByName(program, primary);
538
538
  }
539
539
  if (!shouldSkipPluginCommandRegistration({
@@ -27398,7 +27398,7 @@ const GENERATED_BASE_CONFIG_SCHEMA = {
27398
27398
  ] },
27399
27399
  "mcp.servers.*.url": { tags: ["advanced", "url-secret"] }
27400
27400
  },
27401
- version: "2026.5.16-1",
27401
+ version: "2026.5.17",
27402
27402
  generatedAt: "2026-03-22T21:17:33.302Z"
27403
27403
  };
27404
27404
  //#endregion
@@ -160,7 +160,7 @@ import { n as movePathToTrash } from "./browser-maintenance-DioVSEZf.js";
160
160
  import { a as performGatewaySessionReset } from "./session-reset-service-DQ3zBf6H.js";
161
161
  import { t as buildChannelUiCatalog } from "./catalog-DG_AWp-b.js";
162
162
  import { a as removeBackfillDiaryEntries, c as writeBackfillDiaryEntries, n as dedupeDreamDiaryEntries, o as removeGroundedShortTermCandidates, r as previewGroundedRemMarkdown, s as repairDreamingArtifacts } from "./memory-core-bundled-runtime-BqcQ1Ofv.js";
163
- import { r as lookupConfigSchema, t as loadGatewayRuntimeConfigSchema } from "./runtime-schema-DQ1WKzXr.js";
163
+ import { r as lookupConfigSchema, t as loadGatewayRuntimeConfigSchema } from "./runtime-schema-rcICNHHB.js";
164
164
  import { t as readConfiguredLogTail } from "./log-tail-DXfzWKxo.js";
165
165
  import { n as purgeAgentSessionStoreEntries } from "./agents.command-shared-By3fc3ma.js";
166
166
  import { a as pruneAgentConfig, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BZdrxX2O.js";
@@ -2512,13 +2512,13 @@ function listReloadRules() {
2512
2512
  cachedChannelRegistryVersion = channelRegistryVersion;
2513
2513
  }
2514
2514
  if (cachedReloadRules) return cachedReloadRules;
2515
- const channelReloadRules = listChannelPlugins().flatMap((plugin) => (plugin.reload?.configPrefixes ?? []).map((prefix) => ({
2515
+ const channelReloadRules = listChannelPlugins().flatMap((plugin) => (plugin.reload?.noopPrefixes ?? []).map((prefix) => ({
2516
+ prefix,
2517
+ kind: "none"
2518
+ })).concat((plugin.reload?.configPrefixes ?? []).map((prefix) => ({
2516
2519
  prefix,
2517
2520
  kind: "hot",
2518
2521
  actions: [`restart-channel:${plugin.id}`]
2519
- })).concat((plugin.reload?.noopPrefixes ?? []).map((prefix) => ({
2520
- prefix,
2521
- kind: "none"
2522
2522
  }))));
2523
2523
  const pluginReloadRules = (registry?.reloads ?? []).flatMap((entry) => (entry.registration.restartPrefixes ?? []).map((prefix) => ({
2524
2524
  prefix,
@@ -1,2 +1,2 @@
1
- import { r as reloadDeferredGatewayPlugins } from "./server-plugin-bootstrap-SkX3seQa.js";
1
+ import { r as reloadDeferredGatewayPlugins } from "./server-plugin-bootstrap-5mOkDyUg.js";
2
2
  export { reloadDeferredGatewayPlugins };
@@ -1,7 +1,7 @@
1
1
  import { t as truncateCloseReason } from "./close-reason-DwPR0L-C.js";
2
2
  //#region src/gateway/server.ts
3
3
  async function loadServerImpl() {
4
- return await import("./server.impl-DLBqoOJE.js");
4
+ return await import("./server.impl-C1V8cZ_1.js");
5
5
  }
6
6
  async function startGatewayServer(...args) {
7
7
  return await (await loadServerImpl()).startGatewayServer(...args);
@@ -159,7 +159,7 @@ import { a as resolveCronChannelOutputPolicy, n as markCronSessionPreRun, r as p
159
159
  import { t as runChannelPluginStartupMaintenance } from "./lifecycle-startup-Df7XVuzY.js";
160
160
  import { n as resolveAssistantIdentity } from "./assistant-identity-Ba0DAN-x.js";
161
161
  import { a as resolveApnsAuthConfigFromEnv, c as sendApnsExecApprovalAlert, d as resolveApnsRelayConfigFromEnv, l as sendApnsExecApprovalResolvedWake, n as loadApnsRegistration, t as clearApnsRegistrationIfCurrent, u as shouldClearStoredApnsRegistration } from "./push-apns-Bb6CdO5N.js";
162
- import { C as resolveGatewayReloadSettings, D as roleCanSkipDeviceIdentity, E as parseGatewayRole, O as pruneStaleControlPlaneBuckets, S as diffConfigPaths, T as buildGatewayReloadPlan, _ as appendCronRunLog, a as coreGatewayHandlers, b as resolveCronDeliveryPlan, c as listSystemPresence, d as CANVAS_CAPABILITY_TTL_MS, f as buildCanvasScopedHostUrl, g as loadVoiceWakeConfig, h as formatError, i as setFallbackGatewayContextResolver, l as upsertPresence, m as normalizeCanvasScopedUrl, o as handleGatewayRequest, p as mintCanvasCapabilityToken, s as broadcastPresenceSnapshot, t as loadGatewayStartupPlugins, u as clearNodeWakeState, v as resolveCronRunLogPath, w as startGatewayConfigReloader, x as resolveFailureDestination, y as resolveCronRunLogPruneOptions } from "./server-plugin-bootstrap-SkX3seQa.js";
162
+ import { C as resolveGatewayReloadSettings, D as roleCanSkipDeviceIdentity, E as parseGatewayRole, O as pruneStaleControlPlaneBuckets, S as diffConfigPaths, T as buildGatewayReloadPlan, _ as appendCronRunLog, a as coreGatewayHandlers, b as resolveCronDeliveryPlan, c as listSystemPresence, d as CANVAS_CAPABILITY_TTL_MS, f as buildCanvasScopedHostUrl, g as loadVoiceWakeConfig, h as formatError, i as setFallbackGatewayContextResolver, l as upsertPresence, m as normalizeCanvasScopedUrl, o as handleGatewayRequest, p as mintCanvasCapabilityToken, s as broadcastPresenceSnapshot, t as loadGatewayStartupPlugins, u as clearNodeWakeState, v as resolveCronRunLogPath, w as startGatewayConfigReloader, x as resolveFailureDestination, y as resolveCronRunLogPruneOptions } from "./server-plugin-bootstrap-5mOkDyUg.js";
163
163
  import { i as resolveCronSession, n as runHeartbeatOnce, r as startHeartbeatRunner } from "./heartbeat-runner-Bv2kAmU3.js";
164
164
  import { n as stopGmailWatcher, t as startGmailWatcherWithLogs } from "./gmail-watcher-lifecycle-D7YJbR__.js";
165
165
  import "./paths-gBx9AUp_.js";
@@ -12677,7 +12677,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
12677
12677
  setFallbackGatewayContextResolver(() => gatewayRequestContext);
12678
12678
  if (!minimalTestGateway) {
12679
12679
  if (deferredConfiguredChannelPluginIds.length > 0) {
12680
- const { reloadDeferredGatewayPlugins } = await import("./server-plugin-bootstrap-BKr5Q-qc.js");
12680
+ const { reloadDeferredGatewayPlugins } = await import("./server-plugin-bootstrap-D88wQksA.js");
12681
12681
  ({pluginRegistry, gatewayMethods: baseGatewayMethods} = reloadDeferredGatewayPlugins({
12682
12682
  cfg: gatewayPluginConfigAtStart,
12683
12683
  workspaceDir: defaultWorkspaceDir,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixelzx/genesis",
3
- "version": "2026.5.16-1",
3
+ "version": "2026.5.17",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/PIXELZX0/Genesis#readme",