@skaile/workspaces 4.30.0 → 4.30.1

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 (129) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/app-sdk/index.js +1 -1
  3. package/dist/{asset-feeds-K7N37CGF.js → asset-feeds-YB5ROSAE.js} +4 -4
  4. package/dist/{asset-feeds-K7N37CGF.js.map → asset-feeds-YB5ROSAE.js.map} +1 -1
  5. package/dist/asset-manager/index.js +1 -1
  6. package/dist/bridge/drivers/claude-sdk.js +100 -12
  7. package/dist/bridge/drivers/claude-sdk.js.map +1 -1
  8. package/dist/bridge/drivers/codex.js +3 -3
  9. package/dist/bridge/drivers/continue.js +4 -4
  10. package/dist/bridge/drivers/echo.js +3 -3
  11. package/dist/bridge/drivers/gemini.js +6 -6
  12. package/dist/bridge/drivers/goose.js +4 -4
  13. package/dist/bridge/drivers/omp.js +5 -5
  14. package/dist/bridge/drivers/opencode.js +4 -4
  15. package/dist/bridge/drivers/qwen.js +6 -6
  16. package/dist/bridge/index.js +6 -6
  17. package/dist/bridge/src/drivers/claude-sdk.d.ts +24 -0
  18. package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
  19. package/dist/bridge/src/error-classifier.d.ts +13 -0
  20. package/dist/bridge/src/error-classifier.d.ts.map +1 -1
  21. package/dist/bridge/src/types.d.ts +15 -0
  22. package/dist/bridge/src/types.d.ts.map +1 -1
  23. package/dist/{chunk-RLIISQHO.js → chunk-2ICKARYU.js} +3 -3
  24. package/dist/{chunk-RLIISQHO.js.map → chunk-2ICKARYU.js.map} +1 -1
  25. package/dist/{chunk-TU2UTFVG.js → chunk-3AX5PZRA.js} +4 -4
  26. package/dist/{chunk-TU2UTFVG.js.map → chunk-3AX5PZRA.js.map} +1 -1
  27. package/dist/{chunk-MLM5JZAQ.js → chunk-3TK7CZVL.js} +3 -3
  28. package/dist/{chunk-MLM5JZAQ.js.map → chunk-3TK7CZVL.js.map} +1 -1
  29. package/dist/{chunk-MZQOSE2X.js → chunk-7HJ3YLRF.js} +3 -3
  30. package/dist/{chunk-MZQOSE2X.js.map → chunk-7HJ3YLRF.js.map} +1 -1
  31. package/dist/{chunk-KOVAB6W2.js → chunk-7VQGUNXJ.js} +2 -2
  32. package/dist/{chunk-KOVAB6W2.js.map → chunk-7VQGUNXJ.js.map} +1 -1
  33. package/dist/{chunk-324NAWHN.js → chunk-DDCRSE5P.js} +4 -4
  34. package/dist/{chunk-324NAWHN.js.map → chunk-DDCRSE5P.js.map} +1 -1
  35. package/dist/{chunk-3FVL4TBA.js → chunk-ECTQR7IM.js} +6 -6
  36. package/dist/{chunk-3FVL4TBA.js.map → chunk-ECTQR7IM.js.map} +1 -1
  37. package/dist/{chunk-RHXRXTBO.js → chunk-FAQRNZ44.js} +2 -2
  38. package/dist/{chunk-RHXRXTBO.js.map → chunk-FAQRNZ44.js.map} +1 -1
  39. package/dist/{chunk-GHLJV2FY.js → chunk-FF5L6IV3.js} +3 -3
  40. package/dist/{chunk-GHLJV2FY.js.map → chunk-FF5L6IV3.js.map} +1 -1
  41. package/dist/{chunk-3W4SDHJP.js → chunk-FRX2BO3V.js} +26 -20
  42. package/dist/chunk-FRX2BO3V.js.map +1 -0
  43. package/dist/{chunk-X22NBPTU.js → chunk-L2GKM47Q.js} +6 -6
  44. package/dist/{chunk-X22NBPTU.js.map → chunk-L2GKM47Q.js.map} +1 -1
  45. package/dist/{chunk-KKBXGPJE.js → chunk-LUC6OEWM.js} +3 -3
  46. package/dist/{chunk-KKBXGPJE.js.map → chunk-LUC6OEWM.js.map} +1 -1
  47. package/dist/{chunk-OHON7XSG.js → chunk-M42SMH7V.js} +3 -3
  48. package/dist/{chunk-OHON7XSG.js.map → chunk-M42SMH7V.js.map} +1 -1
  49. package/dist/{chunk-NQOE57Q7.js → chunk-MX7LCQUQ.js} +4 -4
  50. package/dist/{chunk-NQOE57Q7.js.map → chunk-MX7LCQUQ.js.map} +1 -1
  51. package/dist/{chunk-CYX7TIWL.js → chunk-NP3WH7JF.js} +3 -3
  52. package/dist/{chunk-CYX7TIWL.js.map → chunk-NP3WH7JF.js.map} +1 -1
  53. package/dist/{chunk-GHX6XFLY.js → chunk-NQCQTAMQ.js} +7 -7
  54. package/dist/{chunk-GHX6XFLY.js.map → chunk-NQCQTAMQ.js.map} +1 -1
  55. package/dist/{chunk-CFKJQDPA.js → chunk-PM6DO25W.js} +5 -5
  56. package/dist/{chunk-CFKJQDPA.js.map → chunk-PM6DO25W.js.map} +1 -1
  57. package/dist/{chunk-527MPCTU.js → chunk-RXTKWTZV.js} +3 -3
  58. package/dist/{chunk-527MPCTU.js.map → chunk-RXTKWTZV.js.map} +1 -1
  59. package/dist/{chunk-LIWDDZO2.js → chunk-SM3UPDXE.js} +6 -6
  60. package/dist/{chunk-LIWDDZO2.js.map → chunk-SM3UPDXE.js.map} +1 -1
  61. package/dist/{chunk-K575XNKG.js → chunk-UKIL4XH5.js} +3 -3
  62. package/dist/{chunk-K575XNKG.js.map → chunk-UKIL4XH5.js.map} +1 -1
  63. package/dist/{chunk-C5OSO7HJ.js → chunk-VYNIZDAD.js} +3 -3
  64. package/dist/{chunk-C5OSO7HJ.js.map → chunk-VYNIZDAD.js.map} +1 -1
  65. package/dist/{chunk-BGY4KTU6.js → chunk-XBSQ4KMC.js} +10 -3
  66. package/dist/chunk-XBSQ4KMC.js.map +1 -0
  67. package/dist/{chunk-HNWYNNIX.js → chunk-ZVVZ67EH.js} +2 -2
  68. package/dist/{chunk-HNWYNNIX.js.map → chunk-ZVVZ67EH.js.map} +1 -1
  69. package/dist/cli/index.js +36 -36
  70. package/dist/connectors/index.js +8 -8
  71. package/dist/connectors-shared/index.js +2 -2
  72. package/dist/{ensure-sources-OGAOMNTT.js → ensure-sources-3VOIO6IM.js} +4 -4
  73. package/dist/{ensure-sources-OGAOMNTT.js.map → ensure-sources-3VOIO6IM.js.map} +1 -1
  74. package/dist/factory-assets/connectors/box.js +8 -8
  75. package/dist/factory-assets/connectors/deploy.js +8 -8
  76. package/dist/factory-assets/connectors/devserver.js +8 -8
  77. package/dist/factory-assets/connectors/flow/adapter.js +8 -8
  78. package/dist/factory-assets/connectors/flow/run-flow.js +9 -9
  79. package/dist/factory-assets/connectors/flow.js +8 -8
  80. package/dist/factory-assets/connectors/git.js +8 -8
  81. package/dist/factory-assets/connectors/gmail.js +8 -8
  82. package/dist/factory-assets/connectors/googledrive.js +8 -8
  83. package/dist/factory-assets/connectors/local.js +8 -8
  84. package/dist/factory-assets/connectors/mattermost.js +8 -8
  85. package/dist/factory-assets/connectors/memory.js +8 -8
  86. package/dist/factory-assets/connectors/minio.js +8 -8
  87. package/dist/factory-assets/connectors/postgres.js +8 -8
  88. package/dist/factory-assets/connectors/s3.js +8 -8
  89. package/dist/factory-assets/connectors/sharepoint.js +8 -8
  90. package/dist/factory-assets/connectors/sqlite.js +8 -8
  91. package/dist/factory-assets/connectors/static-server.js +8 -8
  92. package/dist/factory-assets/connectors/tunnel.js +8 -8
  93. package/dist/factory-assets/connectors/webdav.js +8 -8
  94. package/dist/factory-assets/connectors/xstate-store.js +8 -8
  95. package/dist/factory-assets/connectors/xstate.js +8 -8
  96. package/dist/{helpers-AS2CN7BJ.js → helpers-G7AQV3NN.js} +4 -4
  97. package/dist/{helpers-AS2CN7BJ.js.map → helpers-G7AQV3NN.js.map} +1 -1
  98. package/dist/{library-publish-SXQAWWPG.js → library-publish-YOF75HVC.js} +6 -6
  99. package/dist/{library-publish-SXQAWWPG.js.map → library-publish-YOF75HVC.js.map} +1 -1
  100. package/dist/{open-library-UVAFPWK7.js → open-library-DAIEAPNR.js} +5 -5
  101. package/dist/{open-library-UVAFPWK7.js.map → open-library-DAIEAPNR.js.map} +1 -1
  102. package/dist/{project-MHUUWPCN.js → project-IKHGSG4I.js} +5 -5
  103. package/dist/{project-MHUUWPCN.js.map → project-IKHGSG4I.js.map} +1 -1
  104. package/dist/runner/index.js +12 -12
  105. package/dist/runner/src/serve.d.ts.map +1 -1
  106. package/dist/sdk/asset-manager.js +1 -1
  107. package/dist/sdk/bridge.js +6 -6
  108. package/dist/sdk/index.js +12 -12
  109. package/dist/sdk/runner.js +12 -12
  110. package/dist/sdk/session.js +2 -2
  111. package/dist/sdk/types.js +1 -1
  112. package/dist/session/index.js +2 -2
  113. package/dist/{setup-NQKJXRK5.js → setup-234UBMJX.js} +11 -11
  114. package/dist/{setup-NQKJXRK5.js.map → setup-234UBMJX.js.map} +1 -1
  115. package/dist/{source-T7DWNSDN.js → source-VAKNCLQY.js} +6 -6
  116. package/dist/{source-T7DWNSDN.js.map → source-VAKNCLQY.js.map} +1 -1
  117. package/dist/{source-manifest-publish-WBAWFUHX.js → source-manifest-publish-FEFRWILI.js} +7 -7
  118. package/dist/{source-manifest-publish-WBAWFUHX.js.map → source-manifest-publish-FEFRWILI.js.map} +1 -1
  119. package/dist/tui/index.js +12 -12
  120. package/dist/types/index.js +1 -1
  121. package/dist/types/src/events.d.ts +8 -0
  122. package/dist/types/src/events.d.ts.map +1 -1
  123. package/dist/types/src/version.d.ts +8 -1
  124. package/dist/types/src/version.d.ts.map +1 -1
  125. package/dist/workspace-plugin/adapters/mcp.js +2 -2
  126. package/dist/workspace-plugin/index.js +1 -1
  127. package/package.json +1 -1
  128. package/dist/chunk-3W4SDHJP.js.map +0 -1
  129. package/dist/chunk-BGY4KTU6.js.map +0 -1
package/dist/cli/index.js CHANGED
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { AI_RESOURCES } from '../chunk-GMXG2JGN.js';
3
- import { makeInstallCommand, makeCheckCommand, makeCleanCommand, reportInstalledSoftDeps } from '../chunk-X22NBPTU.js';
4
- import { makeProvidersCommand, loadRegistryView, addProviderEntry, ProviderRegistryWriteError } from '../chunk-324NAWHN.js';
3
+ import { makeInstallCommand, makeCheckCommand, makeCleanCommand, reportInstalledSoftDeps } from '../chunk-L2GKM47Q.js';
4
+ import { makeProvidersCommand, loadRegistryView, addProviderEntry, ProviderRegistryWriteError } from '../chunk-DDCRSE5P.js';
5
5
  import { getStoreConfig, storeFetch, deviceLogin, loadStoreAuthConfig, logout, hasStoredAuth, isStoreAuthenticated, getStoreToken, getStoreIdentity } from '../chunk-IJTEDXWQ.js';
6
- import { makeSourceCommand, syncProjectSources } from '../chunk-3FVL4TBA.js';
7
- import { openCatalogSource, openLibraryManager, createFullRegistry, openLibrary } from '../chunk-KKBXGPJE.js';
8
- import { logErr, S, logOk, logInfo, logWarn, kindColorPad, kindColor, colorRef, formatSoftDepSection, bareSoftDepName, formatSoftDepHint, formatRelativeTime, formatSoftDepRemovePreview, formatSoftDepAddPreview, fitWidth } from '../chunk-CYX7TIWL.js';
6
+ import { makeSourceCommand, syncProjectSources } from '../chunk-ECTQR7IM.js';
7
+ import { openCatalogSource, openLibraryManager, createFullRegistry, openLibrary } from '../chunk-LUC6OEWM.js';
8
+ import { logErr, S, logOk, logInfo, logWarn, kindColorPad, kindColor, colorRef, formatSoftDepSection, bareSoftDepName, formatSoftDepHint, formatRelativeTime, formatSoftDepRemovePreview, formatSoftDepAddPreview, fitWidth } from '../chunk-NP3WH7JF.js';
9
9
  import { LocalSecretsProvider } from '../chunk-6BEGKO2Q.js';
10
- import { runAgentChat, loadSessionById, loadSession, listSessions, setCurrentSession, deleteSession, clearSession, loadAgentManifest, compileComposition, MarkdownStreamer, resolveMixin } from '../chunk-3W4SDHJP.js';
11
- import { buildClaudePluginFiles } from '../chunk-HNWYNNIX.js';
12
- import '../chunk-527MPCTU.js';
10
+ import { runAgentChat, loadSessionById, loadSession, listSessions, setCurrentSession, deleteSession, clearSession, loadAgentManifest, compileComposition, MarkdownStreamer, resolveMixin } from '../chunk-FRX2BO3V.js';
11
+ import { buildClaudePluginFiles } from '../chunk-ZVVZ67EH.js';
12
+ import '../chunk-RXTKWTZV.js';
13
13
  import '../chunk-UQ3JFN4N.js';
14
14
  import '../chunk-P2DLXBZK.js';
15
15
  import '../chunk-7IH3RKKK.js';
@@ -24,23 +24,23 @@ import '../chunk-5LKOAX7I.js';
24
24
  import '../chunk-32NA4TVC.js';
25
25
  import '../chunk-W3UDISS2.js';
26
26
  import '../chunk-PE3A6FFW.js';
27
- import { runFlow, resumeFlow } from '../chunk-MZQOSE2X.js';
27
+ import { runFlow, resumeFlow } from '../chunk-7HJ3YLRF.js';
28
28
  import '../chunk-4R6DROGN.js';
29
29
  import { validateFlowVersions, parseSkillFrontmatter } from '../chunk-T3YUSWVK.js';
30
30
  import '../chunk-Q6NDQ6BH.js';
31
31
  import '../chunk-6X4DHKHP.js';
32
- import '../chunk-GHX6XFLY.js';
33
- import '../chunk-C5OSO7HJ.js';
32
+ import '../chunk-NQCQTAMQ.js';
33
+ import '../chunk-VYNIZDAD.js';
34
34
  import '../chunk-2JANXYTJ.js';
35
- import '../chunk-CFKJQDPA.js';
35
+ import '../chunk-PM6DO25W.js';
36
36
  import '../chunk-6S5KL76M.js';
37
37
  import '../chunk-TJRNJVGU.js';
38
38
  import '../chunk-LOO5CB5M.js';
39
- import '../chunk-GHLJV2FY.js';
40
- import '../chunk-MLM5JZAQ.js';
41
- import '../chunk-BGY4KTU6.js';
39
+ import '../chunk-FF5L6IV3.js';
40
+ import '../chunk-3TK7CZVL.js';
41
+ import '../chunk-XBSQ4KMC.js';
42
42
  import '../chunk-YROR332M.js';
43
- import { getProviderPreset, AI_PROVIDER_PRESETS } from '../chunk-RHXRXTBO.js';
43
+ import { getProviderPreset, AI_PROVIDER_PRESETS } from '../chunk-FAQRNZ44.js';
44
44
  import '../chunk-6E6PKKAD.js';
45
45
  import '../chunk-IFGTRL2I.js';
46
46
  import { projectAiAssetsRoots, loadFlow, loadAllFlowEntries, findFlowFileInRoots } from '../chunk-YVWUHPQW.js';
@@ -49,8 +49,8 @@ import '../chunk-DIQDYNXZ.js';
49
49
  import '../chunk-K3IBZ2UZ.js';
50
50
  import { nodeLabel, nodeSkillAsset, nodeIsInert, nodeIsOptional, nodeRunKind, flowSkillVersionPins } from '../chunk-UDFWBALP.js';
51
51
  import '../chunk-ORH2BZEM.js';
52
- import '../chunk-NQOE57Q7.js';
53
- import { AssetManager, NON_DEPLOYABLE_KINDS, MissingManifestError, parseRefTolerant, normalizeRepoUrl, FACTORY_SOURCE_URL } from '../chunk-KOVAB6W2.js';
52
+ import '../chunk-MX7LCQUQ.js';
53
+ import { AssetManager, NON_DEPLOYABLE_KINDS, MissingManifestError, parseRefTolerant, normalizeRepoUrl, FACTORY_SOURCE_URL } from '../chunk-7VQGUNXJ.js';
54
54
  import { getStoreManifestsDir, getDefaultValue, isSecretPlaceholder } from '../chunk-UFWADBG6.js';
55
55
  import '../chunk-HGPSZXZP.js';
56
56
  import '../chunk-VOEBLPXO.js';
@@ -129,7 +129,7 @@ async function runSearch(kind, query, opts) {
129
129
  }
130
130
  }
131
131
  async function searchIndex(query, kind) {
132
- const { openLibrary: openLibrary2 } = await import('../open-library-UVAFPWK7.js');
132
+ const { openLibrary: openLibrary2 } = await import('../open-library-DAIEAPNR.js');
133
133
  const library = await openLibrary2();
134
134
  try {
135
135
  const defs = await library.listAssetDefs(kind ? { kind } : {});
@@ -182,7 +182,7 @@ async function searchLocal(query, kind, opts, showStore, airGapped) {
182
182
  const factory = await searchFactory(projectDir, query, kind);
183
183
  let entries = unionEntries(await searchIndex(query, kind), factory);
184
184
  if (entries.length === 0 && !query && !kind && !airGapped) {
185
- const { autoSyncForSearch } = await import('../source-T7DWNSDN.js');
185
+ const { autoSyncForSearch } = await import('../source-VAKNCLQY.js');
186
186
  if (await autoSyncForSearch(projectDir)) {
187
187
  entries = unionEntries(await searchIndex(query, kind), factory);
188
188
  }
@@ -236,7 +236,7 @@ async function searchStore(query, kind, opts, airGapped) {
236
236
  logInfo("air-gapped (cache_ttl: 0) \u2014 local sources only");
237
237
  return;
238
238
  }
239
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-UVAFPWK7.js');
239
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-DAIEAPNR.js');
240
240
  try {
241
241
  const remote = await openCatalogSource2({ projectDir: path36__default.resolve(opts.projectDir) });
242
242
  const assets = await remote.listAssets(kind ? { kind } : {});
@@ -551,7 +551,7 @@ async function resolveInfoEntry(am2, ref, opts) {
551
551
  return { entry: match ?? deployed };
552
552
  }
553
553
  const lookup = opts.storeLookup ?? (async (filter) => {
554
- const { resolveCatalogSource } = await import('../open-library-UVAFPWK7.js');
554
+ const { resolveCatalogSource } = await import('../open-library-DAIEAPNR.js');
555
555
  const { source, close } = await resolveCatalogSource({ projectDir: opts.projectDir });
556
556
  try {
557
557
  return await source.listAssets(filter);
@@ -567,7 +567,7 @@ async function resolveInfoEntry(am2, ref, opts) {
567
567
  );
568
568
  return { entry: hit ? catalogAssetToEntry(hit) : null };
569
569
  } catch (err) {
570
- const { LocalCatalogDisabledError } = await import('../open-library-UVAFPWK7.js');
570
+ const { LocalCatalogDisabledError } = await import('../open-library-DAIEAPNR.js');
571
571
  const storeNote = err instanceof Error ? err.message : String(err);
572
572
  const disabled = err instanceof LocalCatalogDisabledError || /catalog\.url/i.test(storeNote);
573
573
  return { entry: null, storeNote, ...disabled ? { storeDisabled: true } : {} };
@@ -1187,7 +1187,7 @@ function makeCatalogCommand() {
1187
1187
  return catalog;
1188
1188
  }
1189
1189
  async function runLocalCatalogTest(projectDir) {
1190
- const { resolveCatalogSource } = await import('../open-library-UVAFPWK7.js');
1190
+ const { resolveCatalogSource } = await import('../open-library-DAIEAPNR.js');
1191
1191
  let resolved;
1192
1192
  try {
1193
1193
  resolved = await resolveCatalogSource({ projectDir });
@@ -3504,16 +3504,16 @@ function makeLibraryCommand() {
3504
3504
  });
3505
3505
  cmd.command("publish <lib>").description("Push + register the library's manifest atomically (needs git backend)").option("--asset <ref>", "Publish only the single asset matching this ref/name").option("--create-repo", "Provision + link a public github repo if the library has no remote").option("--ref <gitref>", "Git ref to ingest (default: the library branch or main)").option("--dry-run", "Print the plan; push nothing and call no store endpoint").action(
3506
3506
  async (lib, opts) => {
3507
- const { runLibraryPublish } = await import('../library-publish-SXQAWWPG.js');
3507
+ const { runLibraryPublish } = await import('../library-publish-YOF75HVC.js');
3508
3508
  await withStoreErrorHandling(() => runLibraryPublish(lib, opts));
3509
3509
  }
3510
3510
  );
3511
3511
  cmd.command("register <lib>").description("Register the library's manifest without pushing (bytes already on github)").option("--asset <ref>", "Publish only the single asset matching this ref/name").option("--ref <gitref>", "Git ref to ingest (default: the library branch or main)").option("--dry-run", "Print the plan; call no store endpoint").action(async (lib, opts) => {
3512
- const { runLibraryRegister } = await import('../library-publish-SXQAWWPG.js');
3512
+ const { runLibraryRegister } = await import('../library-publish-YOF75HVC.js');
3513
3513
  await withStoreErrorHandling(() => runLibraryRegister(lib, opts));
3514
3514
  });
3515
3515
  cmd.command("yank <lib>").description("Retract the library's published assets from the store").option("--asset <ref>", "Yank only the single asset matching this ref/name").action(async (lib, opts) => {
3516
- const { runLibraryYank } = await import('../library-publish-SXQAWWPG.js');
3516
+ const { runLibraryYank } = await import('../library-publish-YOF75HVC.js');
3517
3517
  await withStoreErrorHandling(() => runLibraryYank(lib, opts));
3518
3518
  });
3519
3519
  return cmd;
@@ -4235,7 +4235,7 @@ function scheduleSoftDepPreview() {
4235
4235
  }
4236
4236
  async function loadAssets() {
4237
4237
  softDepPreviewCache.clear();
4238
- const { gatherAssetFeeds } = await import('../asset-feeds-K7N37CGF.js');
4238
+ const { gatherAssetFeeds } = await import('../asset-feeds-YB5ROSAE.js');
4239
4239
  const { entries, domains, notes } = await gatherAssetFeeds(am, am.projectDir);
4240
4240
  if (notes.length > 0) {
4241
4241
  state.message = notes.map((n) => `[${n.feed}] ${n.message}`).join(" \u2022 ");
@@ -4441,7 +4441,7 @@ function reconcileCollapsedSets(rows) {
4441
4441
  async function loadSourcesAndLibraries() {
4442
4442
  try {
4443
4443
  const [{ openLibraryManager: openLibraryManager2 }, { skaileHomeDir }, { getGlobalCacheDir: getGlobalCacheDir2 }] = await Promise.all([
4444
- import('../open-library-UVAFPWK7.js'),
4444
+ import('../open-library-DAIEAPNR.js'),
4445
4445
  import('../library/index.js'),
4446
4446
  import('../core/index.js')
4447
4447
  ]);
@@ -7256,7 +7256,7 @@ function makeServeCommand() {
7256
7256
  );
7257
7257
  }
7258
7258
  async function ensurePluginsLoadedForServe(projectDir) {
7259
- const { logInfo: logInfo2, logWarn: logWarn2 } = await import('../helpers-AS2CN7BJ.js');
7259
+ const { logInfo: logInfo2, logWarn: logWarn2 } = await import('../helpers-G7AQV3NN.js');
7260
7260
  try {
7261
7261
  const { resolveSkWorkspaceConfig: resolveSkWorkspaceConfig2 } = await import('../core/index.js');
7262
7262
  const config = resolveSkWorkspaceConfig2(projectDir);
@@ -7275,7 +7275,7 @@ async function ensurePluginsLoadedForServe(projectDir) {
7275
7275
  }
7276
7276
  }
7277
7277
  async function runCompileTest(opts) {
7278
- const { logOk: logOk2, logErr: logErr2, logInfo: logInfo2, S: S2 } = await import('../helpers-AS2CN7BJ.js');
7278
+ const { logOk: logOk2, logErr: logErr2, logInfo: logInfo2, S: S2 } = await import('../helpers-G7AQV3NN.js');
7279
7279
  const { tmpdir } = await import('os');
7280
7280
  const { dirname: dirname4, join: join7, resolve: resolve5 } = await import('path');
7281
7281
  const { fileURLToPath: fileURLToPath2 } = await import('url');
@@ -8157,7 +8157,7 @@ function makeStoreCommand() {
8157
8157
  process.exit(2);
8158
8158
  });
8159
8159
  store.command("search <query>").description("Search the AI Asset Store catalog by name, description, or publisher").option("--kind <kind>", "Filter by asset kind (skill, agent, prompt, flow, \u2026)").option("-C, --project-dir <dir>", "Project directory (catalog config overlay)", process.cwd()).action(async (query, opts) => {
8160
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-UVAFPWK7.js');
8160
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-DAIEAPNR.js');
8161
8161
  try {
8162
8162
  const remote = await openCatalogSource2({ projectDir: path36__default.resolve(opts.projectDir) });
8163
8163
  const assets = await remote.listAssets(opts.kind ? { kind: opts.kind } : {});
@@ -8190,8 +8190,8 @@ function makeStoreCommand() {
8190
8190
  }
8191
8191
  });
8192
8192
  store.command("show <ref>").description("Show a store asset's details + provenance (source, files, integrity)").option("-C, --project-dir <dir>", "Project directory (catalog config overlay)", process.cwd()).action(async (ref, opts) => {
8193
- const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-UVAFPWK7.js');
8194
- const { supportsInstallManifest } = await import('../project-MHUUWPCN.js');
8193
+ const { openCatalogSource: openCatalogSource2, LocalCatalogDisabledError } = await import('../open-library-DAIEAPNR.js');
8194
+ const { supportsInstallManifest } = await import('../project-IKHGSG4I.js');
8195
8195
  try {
8196
8196
  const remote = await openCatalogSource2({ projectDir: path36__default.resolve(opts.projectDir) });
8197
8197
  const asset = await remote.resolve(ref);
@@ -9279,7 +9279,7 @@ async function bootstrapUserConfig() {
9279
9279
  }
9280
9280
  async function hydrateInitSources(resolved, created) {
9281
9281
  try {
9282
- const { ensureSourcesCloned } = await import('../ensure-sources-OGAOMNTT.js');
9282
+ const { ensureSourcesCloned } = await import('../ensure-sources-3VOIO6IM.js');
9283
9283
  const hydrate = ensureSourcesCloned(resolved, { quiet: true });
9284
9284
  for (const n of hydrate.cloned) created.push(`~/.skaile/cache/sources/${n}/`);
9285
9285
  if (hydrate.failed.length > 0) {
@@ -9319,7 +9319,7 @@ function printInitSummary(resolved, projectDir, created) {
9319
9319
  console.log();
9320
9320
  }
9321
9321
  program.command("setup").description("Interactive provider setup wizard").action(async () => {
9322
- const { cmdSetup } = await import('../setup-NQKJXRK5.js');
9322
+ const { cmdSetup } = await import('../setup-234UBMJX.js');
9323
9323
  await cmdSetup([], { projectDir: process.cwd() });
9324
9324
  });
9325
9325
  program.addCommand(makeInstallCommand());
@@ -1,15 +1,15 @@
1
- export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, ConnectorManager, FlowAdapter, LogBuffer, ManagedGitconfigCollisionError, NO_ACTIVE_FLOW_ERROR, PortPool, atomicReplaceCredential, buildConnectorPromptSection, buildLazyFlowToolDefs, buildLazySdkFlowTools, buildSdkConnectorTools, buildSdkFlowTools, checkFleetMountLiveness, classifyConnectError, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, ensureRefreshAttemptStamp, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, missingTokenMediatorMessage, registerBuiltinConnectors, removeMountBlock, removeUnavailableMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock, writeUnavailableMountBlock } from '../chunk-GHX6XFLY.js';
2
- export { CONNECT_ERROR_KIND_PROPERTY, ClassifiedConnectError, declaredConnectErrorKind, withConnectErrorKind } from '../chunk-C5OSO7HJ.js';
1
+ export { AbstractConnector, BUILTIN_CONNECTOR_CATALOG, ConnectorManager, FlowAdapter, LogBuffer, ManagedGitconfigCollisionError, NO_ACTIVE_FLOW_ERROR, PortPool, atomicReplaceCredential, buildConnectorPromptSection, buildLazyFlowToolDefs, buildLazySdkFlowTools, buildSdkConnectorTools, buildSdkFlowTools, checkFleetMountLiveness, classifyConnectError, createFsWatcher, createWorktree, defaultSpawn, ensureDirMode, ensureFleetMounted, ensureRefreshAttemptStamp, findGitRoot, findMissingPackages, getConnector, installNpmPackages, isFleetManaged, isPackageResolvable, listConnectors, listWorktrees, missingTokenMediatorMessage, registerBuiltinConnectors, removeMountBlock, removeUnavailableMountBlock, renderCredentialHelperScript, tryGetConnector, worktreeRegistry, writeHelperScript, writeMountBlock, writeUnavailableMountBlock } from '../chunk-NQCQTAMQ.js';
2
+ export { CONNECT_ERROR_KIND_PROPERTY, ClassifiedConnectError, declaredConnectErrorKind, withConnectErrorKind } from '../chunk-VYNIZDAD.js';
3
3
  export { ConnectorFieldMissingError, ConnectorStartupError, EnvSecretProvider, ForgeSecretProvider, InMemorySecretProvider, LegacyAuthGrammarError, LockedSecretProvider, OAuthRequiredError, PreMintedSecretProvider, SecretProviderChain, createCliSecretProviderChain, createForgeSecretProviderChain, deriveSingleMaterializedConnectorDeclaration, fromMaterializedConnectorMd, isKnownSecretRef, loadConnectorDeclarations, loadMaterializedConnectorDeclarations, loadYamlConnectorDeclarations, readUnavailableMarker, resolveAuthRef, resolveBackendAuthFor, resolvedConfigToDeclarations, withMaterializedConnectorDeclarations } from '../chunk-2JANXYTJ.js';
4
- import '../chunk-CFKJQDPA.js';
4
+ import '../chunk-PM6DO25W.js';
5
5
  import '../chunk-6S5KL76M.js';
6
6
  import '../chunk-TJRNJVGU.js';
7
7
  import '../chunk-LOO5CB5M.js';
8
- import '../chunk-GHLJV2FY.js';
9
- import '../chunk-MLM5JZAQ.js';
10
- import '../chunk-BGY4KTU6.js';
8
+ import '../chunk-FF5L6IV3.js';
9
+ import '../chunk-3TK7CZVL.js';
10
+ import '../chunk-XBSQ4KMC.js';
11
11
  import '../chunk-YROR332M.js';
12
- import '../chunk-RHXRXTBO.js';
12
+ import '../chunk-FAQRNZ44.js';
13
13
  import '../chunk-6E6PKKAD.js';
14
14
  import '../chunk-IFGTRL2I.js';
15
15
  import '../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../chunk-DIQDYNXZ.js';
18
18
  import '../chunk-K3IBZ2UZ.js';
19
19
  import '../chunk-UDFWBALP.js';
20
20
  import '../chunk-ORH2BZEM.js';
21
- import '../chunk-NQOE57Q7.js';
21
+ import '../chunk-MX7LCQUQ.js';
22
22
  import '../chunk-UWU572Q6.js';
23
23
  import '../chunk-4GY63JU6.js';
24
24
  import '../chunk-5RHPNNWP.js';
@@ -1,5 +1,5 @@
1
- export { CONNECT_ERROR_KIND_PROPERTY, ClassifiedConnectError, withConnectErrorKind } from '../chunk-C5OSO7HJ.js';
2
- import '../chunk-NQOE57Q7.js';
1
+ export { CONNECT_ERROR_KIND_PROPERTY, ClassifiedConnectError, withConnectErrorKind } from '../chunk-VYNIZDAD.js';
2
+ import '../chunk-MX7LCQUQ.js';
3
3
  import '../chunk-NSBPE2FW.js';
4
4
  import * as z from 'zod';
5
5
 
@@ -1,5 +1,5 @@
1
- import { logErr, logOk, logInfo } from './chunk-CYX7TIWL.js';
2
- import './chunk-KOVAB6W2.js';
1
+ import { logErr, logOk, logInfo } from './chunk-NP3WH7JF.js';
2
+ import './chunk-7VQGUNXJ.js';
3
3
  import './chunk-UFWADBG6.js';
4
4
  import './chunk-HGPSZXZP.js';
5
5
  import './chunk-VOEBLPXO.js';
@@ -90,5 +90,5 @@ function ensureSourcesCloned(projectDir, opts = {}) {
90
90
  }
91
91
 
92
92
  export { ensureSourcesCloned };
93
- //# sourceMappingURL=ensure-sources-OGAOMNTT.js.map
94
- //# sourceMappingURL=ensure-sources-OGAOMNTT.js.map
93
+ //# sourceMappingURL=ensure-sources-3VOIO6IM.js.map
94
+ //# sourceMappingURL=ensure-sources-3VOIO6IM.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../cli/src/ensure-sources.ts"],"names":[],"mappings":"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","file":"ensure-sources-OGAOMNTT.js","sourcesContent":["/**\n * ensure-sources.ts — hydrate the `~/.skaile/cache/sources/` clone cache from a\n * project's `skaile.yaml` `sources:` entries.\n *\n * Called by `skaile init` (idempotent: no-op when no sources declared) and\n * `skaile install` so checking out a project pulls its source clones onto\n * the local machine.\n */\n\nimport { spawnSync } from \"node:child_process\";\nimport { existsSync, mkdirSync } from \"node:fs\";\nimport * as path from \"node:path\";\nimport {\n getGlobalCacheDir,\n type SourceEntry,\n sourceCacheKey,\n sourceShortName,\n WorkspaceYamlEditor,\n} from \"@skaile/workspaces/core\";\nimport { logErr, logInfo, logOk } from \"./helpers.ts\";\n\nfunction sourceClonePath(key: string): string {\n return path.join(getGlobalCacheDir(), key);\n}\n\nexport interface EnsureResult {\n cloned: string[];\n cached: string[];\n failed: string[];\n}\n\n/** Load `sources:` from a project's `skaile.yaml`, or `null` when unavailable. */\nfunction loadProjectSources(yamlPath: string, quiet: boolean): SourceEntry[] | null {\n try {\n return WorkspaceYamlEditor.load(yamlPath).getSources();\n } catch (err) {\n if (!quiet) {\n logErr(`Could not read ${yamlPath}: ${err instanceof Error ? err.message : String(err)}`);\n }\n return null;\n }\n}\n\n/**\n * Hydrate a single source entry into `result`: skip when already cached,\n * otherwise clone and record success/failure. Mutates `result` in place.\n */\nfunction hydrateSourceEntry(entry: SourceEntry, quiet: boolean, result: EnsureResult): void {\n const key = sourceCacheKey(entry.url);\n const slug = sourceShortName(entry.url);\n const dest = sourceClonePath(key);\n if (existsSync(dest)) {\n result.cached.push(slug);\n return;\n }\n mkdirSync(path.dirname(dest), { recursive: true });\n const args = [\"clone\", entry.url, dest];\n if (entry.pin) args.splice(1, 0, \"--branch\", entry.pin);\n const clone = spawnSync(\"git\", args, { stdio: quiet ? \"pipe\" : \"inherit\" });\n if (clone.status !== 0) {\n result.failed.push(slug);\n if (quiet) {\n logErr(`git clone failed for ${entry.url}`);\n }\n return;\n }\n result.cloned.push(slug);\n}\n\n/** Log a full-hydrate summary of cloned + reused-cached entries. */\nfunction logHydrateSummary(result: EnsureResult): void {\n for (const n of result.cloned) logOk(`Cloned source \"${n}\".`);\n if (result.cached.length > 0) {\n logInfo(`Reused cached clones: ${result.cached.join(\", \")}`);\n }\n}\n\n/**\n * Walk `projectDir/skaile.yaml` `sources:` and clone any entries whose\n * clone directory does not yet exist under `~/.skaile/cache/sources/`. Existing\n * clones are left untouched — this is hydration, not sync.\n *\n * Quiet by default: when `quiet: true` the helper only prints failures.\n * On full hydrate (`quiet: false`) it logs each cloned/cached entry.\n */\nexport function ensureSourcesCloned(\n projectDir: string,\n opts: { quiet?: boolean } = {},\n): EnsureResult {\n const result: EnsureResult = { cloned: [], cached: [], failed: [] };\n const yamlPath = path.join(projectDir, \"skaile.yaml\");\n if (!existsSync(yamlPath)) return result;\n\n const quiet = opts.quiet ?? false;\n const sources = loadProjectSources(yamlPath, quiet);\n if (sources === null) return result;\n if (sources.length === 0) return result;\n\n for (const entry of sources) {\n hydrateSourceEntry(entry, quiet, result);\n }\n\n if (!quiet) {\n logHydrateSummary(result);\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"sources":["../cli/src/ensure-sources.ts"],"names":[],"mappings":"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","file":"ensure-sources-3VOIO6IM.js","sourcesContent":["/**\n * ensure-sources.ts — hydrate the `~/.skaile/cache/sources/` clone cache from a\n * project's `skaile.yaml` `sources:` entries.\n *\n * Called by `skaile init` (idempotent: no-op when no sources declared) and\n * `skaile install` so checking out a project pulls its source clones onto\n * the local machine.\n */\n\nimport { spawnSync } from \"node:child_process\";\nimport { existsSync, mkdirSync } from \"node:fs\";\nimport * as path from \"node:path\";\nimport {\n getGlobalCacheDir,\n type SourceEntry,\n sourceCacheKey,\n sourceShortName,\n WorkspaceYamlEditor,\n} from \"@skaile/workspaces/core\";\nimport { logErr, logInfo, logOk } from \"./helpers.ts\";\n\nfunction sourceClonePath(key: string): string {\n return path.join(getGlobalCacheDir(), key);\n}\n\nexport interface EnsureResult {\n cloned: string[];\n cached: string[];\n failed: string[];\n}\n\n/** Load `sources:` from a project's `skaile.yaml`, or `null` when unavailable. */\nfunction loadProjectSources(yamlPath: string, quiet: boolean): SourceEntry[] | null {\n try {\n return WorkspaceYamlEditor.load(yamlPath).getSources();\n } catch (err) {\n if (!quiet) {\n logErr(`Could not read ${yamlPath}: ${err instanceof Error ? err.message : String(err)}`);\n }\n return null;\n }\n}\n\n/**\n * Hydrate a single source entry into `result`: skip when already cached,\n * otherwise clone and record success/failure. Mutates `result` in place.\n */\nfunction hydrateSourceEntry(entry: SourceEntry, quiet: boolean, result: EnsureResult): void {\n const key = sourceCacheKey(entry.url);\n const slug = sourceShortName(entry.url);\n const dest = sourceClonePath(key);\n if (existsSync(dest)) {\n result.cached.push(slug);\n return;\n }\n mkdirSync(path.dirname(dest), { recursive: true });\n const args = [\"clone\", entry.url, dest];\n if (entry.pin) args.splice(1, 0, \"--branch\", entry.pin);\n const clone = spawnSync(\"git\", args, { stdio: quiet ? \"pipe\" : \"inherit\" });\n if (clone.status !== 0) {\n result.failed.push(slug);\n if (quiet) {\n logErr(`git clone failed for ${entry.url}`);\n }\n return;\n }\n result.cloned.push(slug);\n}\n\n/** Log a full-hydrate summary of cloned + reused-cached entries. */\nfunction logHydrateSummary(result: EnsureResult): void {\n for (const n of result.cloned) logOk(`Cloned source \"${n}\".`);\n if (result.cached.length > 0) {\n logInfo(`Reused cached clones: ${result.cached.join(\", \")}`);\n }\n}\n\n/**\n * Walk `projectDir/skaile.yaml` `sources:` and clone any entries whose\n * clone directory does not yet exist under `~/.skaile/cache/sources/`. Existing\n * clones are left untouched — this is hydration, not sync.\n *\n * Quiet by default: when `quiet: true` the helper only prints failures.\n * On full hydrate (`quiet: false`) it logs each cloned/cached entry.\n */\nexport function ensureSourcesCloned(\n projectDir: string,\n opts: { quiet?: boolean } = {},\n): EnsureResult {\n const result: EnsureResult = { cloned: [], cached: [], failed: [] };\n const yamlPath = path.join(projectDir, \"skaile.yaml\");\n if (!existsSync(yamlPath)) return result;\n\n const quiet = opts.quiet ?? false;\n const sources = loadProjectSources(yamlPath, quiet);\n if (sources === null) return result;\n if (sources.length === 0) return result;\n\n for (const entry of sources) {\n hydrateSourceEntry(entry, quiet, result);\n }\n\n if (!quiet) {\n logHydrateSummary(result);\n }\n\n return result;\n}\n"]}
@@ -1,15 +1,15 @@
1
- export { BoxConnector, createConnector4 as createConnector } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { BoxConnector, createConnector4 as createConnector } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { DeployConnector, createConnector2 as createConnector } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { DeployConnector, createConnector2 as createConnector } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { DevServerConnector, createConnector3 as createConnector } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { DevServerConnector, createConnector3 as createConnector } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { FlowAdapter, createConnector, describeFlowOperations } from '../../../chunk-GHX6XFLY.js';
2
- import '../../../chunk-C5OSO7HJ.js';
1
+ export { FlowAdapter, createConnector, describeFlowOperations } from '../../../chunk-NQCQTAMQ.js';
2
+ import '../../../chunk-VYNIZDAD.js';
3
3
  import '../../../chunk-2JANXYTJ.js';
4
- import '../../../chunk-CFKJQDPA.js';
4
+ import '../../../chunk-PM6DO25W.js';
5
5
  import '../../../chunk-6S5KL76M.js';
6
6
  import '../../../chunk-TJRNJVGU.js';
7
7
  import '../../../chunk-LOO5CB5M.js';
8
- import '../../../chunk-GHLJV2FY.js';
9
- import '../../../chunk-MLM5JZAQ.js';
10
- import '../../../chunk-BGY4KTU6.js';
8
+ import '../../../chunk-FF5L6IV3.js';
9
+ import '../../../chunk-3TK7CZVL.js';
10
+ import '../../../chunk-XBSQ4KMC.js';
11
11
  import '../../../chunk-YROR332M.js';
12
- import '../../../chunk-RHXRXTBO.js';
12
+ import '../../../chunk-FAQRNZ44.js';
13
13
  import '../../../chunk-6E6PKKAD.js';
14
14
  import '../../../chunk-IFGTRL2I.js';
15
15
  export { isBlocking } from '../../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../../chunk-DIQDYNXZ.js';
18
18
  import '../../../chunk-K3IBZ2UZ.js';
19
19
  import '../../../chunk-UDFWBALP.js';
20
20
  import '../../../chunk-ORH2BZEM.js';
21
- import '../../../chunk-NQOE57Q7.js';
21
+ import '../../../chunk-MX7LCQUQ.js';
22
22
  import '../../../chunk-UWU572Q6.js';
23
23
  import '../../../chunk-4GY63JU6.js';
24
24
  import '../../../chunk-5RHPNNWP.js';
@@ -1,18 +1,18 @@
1
- export { awaitAgentEnd, resolveFlowPath, resumeFlow, runFlow } from '../../../chunk-MZQOSE2X.js';
1
+ export { awaitAgentEnd, resolveFlowPath, resumeFlow, runFlow } from '../../../chunk-7HJ3YLRF.js';
2
2
  import '../../../chunk-4R6DROGN.js';
3
3
  import '../../../chunk-T3YUSWVK.js';
4
- import '../../../chunk-GHX6XFLY.js';
5
- import '../../../chunk-C5OSO7HJ.js';
4
+ import '../../../chunk-NQCQTAMQ.js';
5
+ import '../../../chunk-VYNIZDAD.js';
6
6
  import '../../../chunk-2JANXYTJ.js';
7
- import '../../../chunk-CFKJQDPA.js';
7
+ import '../../../chunk-PM6DO25W.js';
8
8
  import '../../../chunk-6S5KL76M.js';
9
9
  import '../../../chunk-TJRNJVGU.js';
10
10
  import '../../../chunk-LOO5CB5M.js';
11
- import '../../../chunk-GHLJV2FY.js';
12
- import '../../../chunk-MLM5JZAQ.js';
13
- import '../../../chunk-BGY4KTU6.js';
11
+ import '../../../chunk-FF5L6IV3.js';
12
+ import '../../../chunk-3TK7CZVL.js';
13
+ import '../../../chunk-XBSQ4KMC.js';
14
14
  import '../../../chunk-YROR332M.js';
15
- import '../../../chunk-RHXRXTBO.js';
15
+ import '../../../chunk-FAQRNZ44.js';
16
16
  import '../../../chunk-6E6PKKAD.js';
17
17
  import '../../../chunk-IFGTRL2I.js';
18
18
  import '../../../chunk-YVWUHPQW.js';
@@ -21,7 +21,7 @@ import '../../../chunk-DIQDYNXZ.js';
21
21
  import '../../../chunk-K3IBZ2UZ.js';
22
22
  import '../../../chunk-UDFWBALP.js';
23
23
  import '../../../chunk-ORH2BZEM.js';
24
- import '../../../chunk-NQOE57Q7.js';
24
+ import '../../../chunk-MX7LCQUQ.js';
25
25
  import '../../../chunk-UWU572Q6.js';
26
26
  import '../../../chunk-4GY63JU6.js';
27
27
  import '../../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { ClassifierSubpromptRunner, FlowAdapter, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, buildFlowPromptEvent, classifierQuestion, createConnector, describeFlowOperations, driveOrchestratorTurn } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { ClassifierSubpromptRunner, FlowAdapter, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, buildFlowPromptEvent, classifierQuestion, createConnector, describeFlowOperations, driveOrchestratorTurn } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { GitConnector, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, REFRESH_LEAD_MS, __test, createConnector5 as createConnector, readGitSyncStatus } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { GitConnector, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, REFRESH_LEAD_MS, __test, createConnector5 as createConnector, readGitSyncStatus } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { GmailConnector, createConnector6 as createConnector } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { GmailConnector, createConnector6 as createConnector } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';
@@ -1,15 +1,15 @@
1
- export { GoogleDriveConnector, createConnector7 as createConnector } from '../../chunk-GHX6XFLY.js';
2
- import '../../chunk-C5OSO7HJ.js';
1
+ export { GoogleDriveConnector, createConnector7 as createConnector } from '../../chunk-NQCQTAMQ.js';
2
+ import '../../chunk-VYNIZDAD.js';
3
3
  import '../../chunk-2JANXYTJ.js';
4
- import '../../chunk-CFKJQDPA.js';
4
+ import '../../chunk-PM6DO25W.js';
5
5
  import '../../chunk-6S5KL76M.js';
6
6
  import '../../chunk-TJRNJVGU.js';
7
7
  import '../../chunk-LOO5CB5M.js';
8
- import '../../chunk-GHLJV2FY.js';
9
- import '../../chunk-MLM5JZAQ.js';
10
- import '../../chunk-BGY4KTU6.js';
8
+ import '../../chunk-FF5L6IV3.js';
9
+ import '../../chunk-3TK7CZVL.js';
10
+ import '../../chunk-XBSQ4KMC.js';
11
11
  import '../../chunk-YROR332M.js';
12
- import '../../chunk-RHXRXTBO.js';
12
+ import '../../chunk-FAQRNZ44.js';
13
13
  import '../../chunk-6E6PKKAD.js';
14
14
  import '../../chunk-IFGTRL2I.js';
15
15
  import '../../chunk-YVWUHPQW.js';
@@ -18,7 +18,7 @@ import '../../chunk-DIQDYNXZ.js';
18
18
  import '../../chunk-K3IBZ2UZ.js';
19
19
  import '../../chunk-UDFWBALP.js';
20
20
  import '../../chunk-ORH2BZEM.js';
21
- import '../../chunk-NQOE57Q7.js';
21
+ import '../../chunk-MX7LCQUQ.js';
22
22
  import '../../chunk-UWU572Q6.js';
23
23
  import '../../chunk-4GY63JU6.js';
24
24
  import '../../chunk-5RHPNNWP.js';