nolo-cli 0.110.0-alpha.1 → 0.112.0-alpha.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 (62) hide show
  1. package/{_executeModel-OXVCJ2BM.js → _executeModel-S7OU2QIO.js} +13 -13
  2. package/{agentDeleteCommand-QJAHAZ4T.js → agentDeleteCommand-XWLL2PMB.js} +6 -6
  3. package/{agentEmailCommands-3SCPUF33.js → agentEmailCommands-PNEZCF6T.js} +15 -15
  4. package/{agentListCommands-QXGSCIV4.js → agentListCommands-MQVMQVOE.js} +17 -10
  5. package/{agentMachineCommands-E4NUTGI6.js → agentMachineCommands-SIVJRNKN.js} +6 -6
  6. package/{agentRecordCommands-OMWI6OH5.js → agentRecordCommands-6POMYCA7.js} +15 -15
  7. package/{agentRunCommand-WE72RU4J.js → agentRunCommand-A5JN2A55.js} +15 -15
  8. package/{agentRuntimeLocal-7MO5IJV6.js → agentRuntimeLocal-73R544NQ.js} +3 -3
  9. package/{agentSlice-5H7MTCE7.js → agentSlice-UTLXHAFW.js} +1 -1
  10. package/{appDeleteCommands-UQ5YMNLP.js → appDeleteCommands-WOSWEWOC.js} +7 -7
  11. package/{appDeployCommands-QX6BL5XL.js → appDeployCommands-KSOWMHCG.js} +7 -7
  12. package/{appDeployStatusCommands-QHQVLR3J.js → appDeployStatusCommands-JCMJMYK4.js} +7 -7
  13. package/{appGetCommands-GY4NGSF4.js → appGetCommands-7LIJCRZ3.js} +7 -7
  14. package/{appListCommands-IZCYPSKI.js → appListCommands-T4JTSWDD.js} +7 -7
  15. package/{chatQueueReduxAdapter-LO7EUBKJ.js → chatQueueReduxAdapter-LXYPUM6T.js} +2 -2
  16. package/{chunk-Z77CRGTW.js → chunk-3AMA42ZI.js} +1 -1
  17. package/{chunk-IQPFGYO3.js → chunk-3YIAR5UI.js} +1 -1
  18. package/{chunk-LXATDEM7.js → chunk-4RMFGFRH.js} +3 -3
  19. package/{chunk-3OD2OTTR.js → chunk-5PJTI4EP.js} +1 -1
  20. package/{chunk-CQ5TTXPU.js → chunk-6S3QIHMN.js} +5 -5
  21. package/{chunk-2OASQKU2.js → chunk-CWQINZEA.js} +112 -2
  22. package/{chunk-2KNZCY53.js → chunk-FBFEKY73.js} +7 -7
  23. package/{chunk-PHXD6JTX.js → chunk-FKNWP6SG.js} +1 -1
  24. package/{chunk-MRIHM22T.js → chunk-FORUBDQQ.js} +1 -1
  25. package/{chunk-APB6ES6B.js → chunk-FZK3Z2MJ.js} +1 -1
  26. package/{chunk-KZJP33ZK.js → chunk-HAFJ3NDE.js} +2 -2
  27. package/{chunk-IIVGDG4I.js → chunk-HCT7U36O.js} +3 -0
  28. package/{chunk-HSSRGGXJ.js → chunk-K36IXSCQ.js} +1 -1
  29. package/{chunk-PBF2K4ER.js → chunk-K4A446HZ.js} +2 -2
  30. package/{chunk-DGE5HEGA.js → chunk-L322LGOM.js} +2 -2
  31. package/{chunk-L6LNO27F.js → chunk-L4KM22WM.js} +10 -9
  32. package/{chunk-QHYC7W2Y.js → chunk-NJBXVHED.js} +2 -2
  33. package/{chunk-LWKP7AWH.js → chunk-QSHEEA5N.js} +1 -1
  34. package/{chunk-HQTMPHIS.js → chunk-TDGDSTGC.js} +29 -107
  35. package/{chunk-XA6KE2HD.js → chunk-WKWF4RJH.js} +8 -8
  36. package/{chunk-AODJ7WSF.js → chunk-WP5UXDA5.js} +4 -3
  37. package/{chunk-HLKK4S6U.js → chunk-WTDSXQIV.js} +2 -2
  38. package/{chunk-TJOYV65D.js → chunk-XRTLTE4O.js} +4 -4
  39. package/{chunk-HWGNS46C.js → chunk-YP7H6FE4.js} +4 -4
  40. package/{chunk-QPPZN3AA.js → chunk-YYYAN2NH.js} +2 -2
  41. package/{contentThunks-L4UB5RXR.js → contentThunks-BKHGW5JF.js} +3 -3
  42. package/{createAgentAutomationAction-FOXQWOJQ.js → createAgentAutomationAction-5VG5HN7Z.js} +3 -3
  43. package/{createDialogAction-YRAHHXWR.js → createDialogAction-MA7HM3BD.js} +4 -4
  44. package/{createPageAction-MVFMLE3N.js → createPageAction-G7IYJMTT.js} +3 -3
  45. package/{dialogCommands-HSLLNN4Y.js → dialogCommands-2PEE34TR.js} +7 -7
  46. package/{dialogSlice-VI4GR4PA.js → dialogSlice-ORVLG3AA.js} +2 -2
  47. package/{docCreateCommands-I2Y4IR2O.js → docCreateCommands-PZHUUFTX.js} +6 -6
  48. package/{docDeleteCommands-TLRPJXQ6.js → docDeleteCommands-CEWIA4CQ.js} +7 -7
  49. package/{docReadCommands-6AKGK2LU.js → docReadCommands-4TVEX6ZD.js} +6 -6
  50. package/{docStore-X75VCYIF.js → docStore-JFRTM66X.js} +1 -1
  51. package/{docUpdateCommands-54AZTMMH.js → docUpdateCommands-TW3PHXLY.js} +6 -6
  52. package/{handleSendMessageAction-E3B2YV3N.js → handleSendMessageAction-GALALRRM.js} +2 -2
  53. package/index.js +41 -41
  54. package/{machineCommands-MGVJGN3N.js → machineCommands-SLKZBMRB.js} +14 -14
  55. package/{machineWsRunDispatch-AHRZCOIG.js → machineWsRunDispatch-4JISAOO2.js} +14 -14
  56. package/package.json +1 -1
  57. package/{readlineWorkspace-5GEDEDMU.js → readlineWorkspace-6USXFY6R.js} +18 -18
  58. package/{runAgentClientLoop-O4EDXPBJ.js → runAgentClientLoop-6DAWYFWZ.js} +11 -11
  59. package/{spaceCommands-ESJCQ5UY.js → spaceCommands-7Y5AUMLD.js} +6 -6
  60. package/{streamAgentChatTurn-OBSA4Z6K.js → streamAgentChatTurn-T7B7IVHX.js} +12 -12
  61. package/{tools-XBU2MRGG.js → tools-CGRUHWCA.js} +8 -8
  62. package/{updateDialogTitleAction-DATQ2KIC.js → updateDialogTitleAction-QMSKYS55.js} +3 -3
@@ -5,16 +5,16 @@ import {
5
5
  pickDefined,
6
6
  printCliError,
7
7
  resolveCliContext
8
- } from "./chunk-HSSRGGXJ.js";
8
+ } from "./chunk-K36IXSCQ.js";
9
9
  import {
10
10
  hasFlag,
11
11
  hasHelpArg
12
- } from "./chunk-PHXD6JTX.js";
13
- import "./chunk-LWKP7AWH.js";
14
- import "./chunk-Z77CRGTW.js";
12
+ } from "./chunk-FKNWP6SG.js";
13
+ import "./chunk-QSHEEA5N.js";
14
+ import "./chunk-3AMA42ZI.js";
15
15
  import "./chunk-SV5IJK6K.js";
16
16
  import "./chunk-VF4K2QE6.js";
17
- import "./chunk-DGE5HEGA.js";
17
+ import "./chunk-L322LGOM.js";
18
18
  import "./chunk-H4AHY5BU.js";
19
19
  import "./chunk-FV3JEYR3.js";
20
20
  import "./chunk-GMZLP5DV.js";
@@ -23,9 +23,9 @@ import "./chunk-4MK3I7Y4.js";
23
23
  import "./chunk-CQ3WA2NE.js";
24
24
  import "./chunk-5ZUL4CUO.js";
25
25
  import "./chunk-N7J63Q6C.js";
26
- import "./chunk-MRIHM22T.js";
26
+ import "./chunk-FORUBDQQ.js";
27
27
  import "./chunk-PUOC4YRO.js";
28
- import "./chunk-IIVGDG4I.js";
28
+ import "./chunk-HCT7U36O.js";
29
29
  import "./chunk-FDTR4QJ6.js";
30
30
  import "./chunk-GNCCNNZD.js";
31
31
  import "./chunk-6OZ36FXI.js";
@@ -4,12 +4,12 @@ import {
4
4
  } from "./chunk-YPREESF4.js";
5
5
  import {
6
6
  handleSendMessage
7
- } from "./chunk-XA6KE2HD.js";
7
+ } from "./chunk-WKWF4RJH.js";
8
8
  import "./chunk-MC4XLIJ7.js";
9
9
  import "./chunk-3BMYXEUW.js";
10
10
  import "./chunk-YYLHWIW6.js";
11
11
  import "./chunk-AGGIDPCZ.js";
12
- import "./chunk-LXATDEM7.js";
12
+ import "./chunk-4RMFGFRH.js";
13
13
  import "./chunk-BFDFRLLQ.js";
14
14
  import "./chunk-5RGU3J7P.js";
15
15
  import {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  buildAgentRuntimeAgentLookupKeys,
3
3
  shouldFetchAgentRuntimeRecordRemotely
4
- } from "./chunk-IIVGDG4I.js";
4
+ } from "./chunk-HCT7U36O.js";
5
5
 
6
6
  // packages/cli/client/localAgentRecords.ts
7
7
  var buildLocalAgentLookupKeys = buildAgentRuntimeAgentLookupKeys;
@@ -2,7 +2,7 @@ import {
2
2
  deleteDbRecord,
3
3
  queryUserRecords,
4
4
  readDbRecord
5
- } from "./chunk-LWKP7AWH.js";
5
+ } from "./chunk-QSHEEA5N.js";
6
6
  import {
7
7
  mergeAndDedupUserData
8
8
  } from "./chunk-KQHGZWSV.js";
@@ -304,7 +304,7 @@ var slice = createSliceWithThunks({
304
304
  const overrides = {};
305
305
  if (args.systemPromptOverride !== void 0) overrides.prompt = args.systemPromptOverride;
306
306
  if (args.toolsOverride !== void 0) overrides.tools = args.toolsOverride;
307
- const { _executeModel } = await import("./_executeModel-OXVCJ2BM.js");
307
+ const { _executeModel } = await import("./_executeModel-S7OU2QIO.js");
308
308
  return _executeModel(
309
309
  {
310
310
  isStreaming: args.isStreaming ?? false,
@@ -325,7 +325,7 @@ var slice = createSliceWithThunks({
325
325
  * - 循环直到无工具调用或触发其他运行时停止条件
326
326
  */
327
327
  runAgent: create.asyncThunk(async (args, thunkApi) => {
328
- const { runAgentClientLoop } = await import("./runAgentClientLoop-O4EDXPBJ.js");
328
+ const { runAgentClientLoop } = await import("./runAgentClientLoop-6DAWYFWZ.js");
329
329
  const { content: loopContent, toolCallCount } = await runAgentClientLoop(
330
330
  {
331
331
  agentKey: args.agentKey,
@@ -341,7 +341,7 @@ var slice = createSliceWithThunks({
341
341
  * 聊天轮次流式 Agent 调用
342
342
  */
343
343
  streamAgentChatTurn: create.asyncThunk(async (args, thunkApi) => {
344
- const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-OBSA4Z6K.js");
344
+ const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-T7B7IVHX.js");
345
345
  return streamAgentChatTurnHandler(args, thunkApi);
346
346
  }),
347
347
  /**
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  fetchReferenceContents,
3
3
  resolveReferenceAssets
4
- } from "./chunk-TJOYV65D.js";
4
+ } from "./chunk-XRTLTE4O.js";
5
5
 
6
6
  // packages/ai/agent/fetchAgentContexts.ts
7
7
  async function fetchAgentContexts(references, dispatch) {
@@ -5,14 +5,14 @@ import {
5
5
  inlineImageUrlsForCustomProvider,
6
6
  prepareTools,
7
7
  shouldInlineImageUrlsForAgent
8
- } from "./chunk-QHYC7W2Y.js";
8
+ } from "./chunk-NJBXVHED.js";
9
9
  import {
10
10
  INVALID_TOOL_ARGS_REPLACEMENT,
11
11
  buildInvalidToolCallSelfHealResult,
12
12
  parseToolCallArguments,
13
13
  performFetchRequest,
14
14
  sanitizeOutboundMessages
15
- } from "./chunk-TJOYV65D.js";
15
+ } from "./chunk-XRTLTE4O.js";
16
16
  import {
17
17
  createSSEParser,
18
18
  createToolRunId,
@@ -23,7 +23,7 @@ import {
23
23
  toolRunSetPending,
24
24
  toolRunStarted,
25
25
  toolRunSucceeded
26
- } from "./chunk-HQTMPHIS.js";
26
+ } from "./chunk-TDGDSTGC.js";
27
27
  import {
28
28
  getPublicImageAgentMode
29
29
  } from "./chunk-VIDPVFP3.js";
@@ -35,10 +35,10 @@ import {
35
35
  messageStreamEnd,
36
36
  messageStreaming,
37
37
  updateToolMessage
38
- } from "./chunk-XA6KE2HD.js";
38
+ } from "./chunk-WKWF4RJH.js";
39
39
  import {
40
40
  streamAgentChatTurn
41
- } from "./chunk-LXATDEM7.js";
41
+ } from "./chunk-4RMFGFRH.js";
42
42
  import {
43
43
  addActiveController,
44
44
  removeActiveController,
@@ -3,7 +3,10 @@ import {
3
3
  } from "./chunk-YYLHWIW6.js";
4
4
  import {
5
5
  compareAgentSelection
6
- } from "./chunk-IIVGDG4I.js";
6
+ } from "./chunk-HCT7U36O.js";
7
+ import {
8
+ isAgentUnavailableNow
9
+ } from "./chunk-FDTR4QJ6.js";
7
10
  import {
8
11
  isAntigravityOAuthAgent
9
12
  } from "./chunk-GNCCNNZD.js";
@@ -506,6 +509,110 @@ function toUnavailableAgentSummary(summary) {
506
509
  return item;
507
510
  }
508
511
 
512
+ // packages/ai/agent/agentDiscovery.ts
513
+ function isPreferredAgent(agent) {
514
+ return agent.isFavorite === true || agent.isOwned === true || agent.isOAuth === true || agent.billingSource === "user_subscription" || agent.billingSource === "user_api" || agent.billingSource === "local";
515
+ }
516
+ function isPublicDiscoveryAgent(agent) {
517
+ return agent.isPublic === true && !isPreferredAgent(agent);
518
+ }
519
+ function resolveDiscoveryScope(args) {
520
+ const rawScope = typeof args?.scope === "string" ? args.scope.trim().toLowerCase() : void 0;
521
+ const hasScope = rawScope !== void 0 && rawScope !== "";
522
+ const hasPublicOnly = typeof args?.publicOnly === "boolean";
523
+ const publicOnly = args?.publicOnly === true;
524
+ if (hasScope) {
525
+ if (rawScope !== "preferred" && rawScope !== "public" && rawScope !== "all") {
526
+ throw new Error(`Invalid scope '${args?.scope}': must be 'preferred', 'public', or 'all'.`);
527
+ }
528
+ const scope = rawScope;
529
+ if (hasPublicOnly) {
530
+ if (publicOnly && scope !== "public") {
531
+ throw new Error(
532
+ `Conflicting arguments: scope='${args?.scope}' conflicts with publicOnly=true.`
533
+ );
534
+ }
535
+ if (!publicOnly && scope === "public") {
536
+ throw new Error(
537
+ `Conflicting arguments: scope='${args?.scope}' conflicts with publicOnly=false.`
538
+ );
539
+ }
540
+ }
541
+ return scope;
542
+ }
543
+ if (hasPublicOnly && publicOnly) {
544
+ return "public";
545
+ }
546
+ return "preferred";
547
+ }
548
+ function agentIdentityKeys(agent) {
549
+ return [agent.agentKey, agent.publicKey, agent.id].filter(
550
+ (key) => typeof key === "string" && key.length > 0
551
+ );
552
+ }
553
+ function deduplicateAgentSummaries(agents) {
554
+ const byIdentity = /* @__PURE__ */ new Map();
555
+ for (const agent of agents) {
556
+ const keys = agentIdentityKeys(agent);
557
+ const existing = keys.map((key) => byIdentity.get(key)).find(Boolean);
558
+ if (!existing) {
559
+ for (const key of keys) byIdentity.set(key, agent);
560
+ continue;
561
+ }
562
+ const winner = isPreferredAgent(agent) && !isPreferredAgent(existing) ? agent : existing;
563
+ for (const key of /* @__PURE__ */ new Set([...agentIdentityKeys(existing), ...keys])) byIdentity.set(key, winner);
564
+ }
565
+ return [...new Set(byIdentity.values())];
566
+ }
567
+ function filterAgentsByScope(agents, scope) {
568
+ const unique = deduplicateAgentSummaries(agents);
569
+ if (scope === "preferred") return unique.filter((agent) => isPreferredAgent(agent));
570
+ if (scope === "public") return unique.filter((agent) => isPublicDiscoveryAgent(agent));
571
+ return unique.filter((agent) => isPreferredAgent(agent) || agent.isPublic === true);
572
+ }
573
+ function matchesAgentQuery(agent, query) {
574
+ if (!query || typeof query !== "string") return true;
575
+ const q = query.trim().toLowerCase();
576
+ if (!q) return true;
577
+ const candidates = [
578
+ agent.name,
579
+ agent.model,
580
+ agent.provider,
581
+ agent.handle,
582
+ agent.agentKey,
583
+ agent.publicKey,
584
+ agent.id
585
+ ];
586
+ return candidates.some((text) => typeof text === "string" && text.toLowerCase().includes(q));
587
+ }
588
+ function buildAgentDiscoveryResult(options) {
589
+ const scope = resolveDiscoveryScope({
590
+ scope: options.scope,
591
+ publicOnly: options.publicOnly
592
+ });
593
+ const now = options.now ?? Date.now();
594
+ let scopedAgents = filterAgentsByScope(options.agents, scope);
595
+ if (options.query && typeof options.query === "string" && options.query.trim()) {
596
+ scopedAgents = scopedAgents.filter((a) => matchesAgentQuery(a, options.query));
597
+ }
598
+ const unavailableList = scopedAgents.filter((a) => isAgentUnavailableNow(a, now));
599
+ const unavailableCount = unavailableList.length;
600
+ const unavailableAgents = sortSafeAgentSummaries(unavailableList).map(toUnavailableAgentSummary);
601
+ const credentialGroups = summarizeCredentialGroups(scopedAgents, now);
602
+ if (options.showUnavailable !== true) {
603
+ scopedAgents = scopedAgents.filter((a) => !isAgentUnavailableNow(a, now));
604
+ }
605
+ const sortedAgents = sortSafeAgentSummaries(scopedAgents);
606
+ const projectedAgents = options.verbose === true ? sortedAgents.map(omitNullishAgentSummaryFields) : sortedAgents.map(toCompactAgentSummary);
607
+ return {
608
+ total: projectedAgents.length,
609
+ unavailableCount,
610
+ unavailableAgents,
611
+ credentialGroups,
612
+ agents: projectedAgents
613
+ };
614
+ }
615
+
509
616
  export {
510
617
  deriveCredentialGroup,
511
618
  summarizeCredentialGroups,
@@ -513,5 +620,8 @@ export {
513
620
  sortSafeAgentSummaries,
514
621
  omitNullishAgentSummaryFields,
515
622
  toCompactAgentSummary,
516
- toUnavailableAgentSummary
623
+ toUnavailableAgentSummary,
624
+ resolveDiscoveryScope,
625
+ matchesAgentQuery,
626
+ buildAgentDiscoveryResult
517
627
  };
@@ -30,7 +30,7 @@ import {
30
30
  resolveLocalUserId,
31
31
  t,
32
32
  toolLabel
33
- } from "./chunk-L6LNO27F.js";
33
+ } from "./chunk-L4KM22WM.js";
34
34
  import {
35
35
  createRunActivityTracker,
36
36
  popSingleQueueMessage,
@@ -51,7 +51,7 @@ import {
51
51
  import {
52
52
  readDbRecord,
53
53
  resolveAgentRecordFromHybridStore
54
- } from "./chunk-LWKP7AWH.js";
54
+ } from "./chunk-QSHEEA5N.js";
55
55
  import {
56
56
  isLocalCliAgentKey
57
57
  } from "./chunk-SV5IJK6K.js";
@@ -64,7 +64,7 @@ import {
64
64
  } from "./chunk-LTRXGFMS.js";
65
65
  import {
66
66
  formatAgentListCard
67
- } from "./chunk-HQTMPHIS.js";
67
+ } from "./chunk-TDGDSTGC.js";
68
68
  import {
69
69
  isTransientFetchError
70
70
  } from "./chunk-5UTFL4QJ.js";
@@ -88,11 +88,11 @@ import {
88
88
  chooseMemoryOwners,
89
89
  loadMemoryCandidatesFromDb,
90
90
  resolveAgentMemoryPolicy
91
- } from "./chunk-QPPZN3AA.js";
91
+ } from "./chunk-YYYAN2NH.js";
92
92
  import {
93
93
  API_REPORTED_COST_MULTIPLIER,
94
94
  parseUiAskChoiceContent
95
- } from "./chunk-XA6KE2HD.js";
95
+ } from "./chunk-WKWF4RJH.js";
96
96
  import {
97
97
  isOAuthApiKeyRef
98
98
  } from "./chunk-YYLHWIW6.js";
@@ -115,7 +115,7 @@ import {
115
115
  LOCAL_AGENT_CONFIG_MISSING_CODE,
116
116
  LOCAL_TURN_ABORTED_CODE,
117
117
  readActionGate
118
- } from "./chunk-DGE5HEGA.js";
118
+ } from "./chunk-L322LGOM.js";
119
119
  import {
120
120
  resolveAgentRuntimeConfigFromRecord
121
121
  } from "./chunk-4MK3I7Y4.js";
@@ -10535,7 +10535,7 @@ function findCollapsedPasteSpanAt(buffer, pos, opts = {}) {
10535
10535
  // packages/cli/client/agentRun.ts
10536
10536
  import { ulid as ulid2 } from "ulid";
10537
10537
  async function loadRunLocalAgentTurn() {
10538
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-7MO5IJV6.js");
10538
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-73R544NQ.js");
10539
10539
  return runLocalAgentTurn;
10540
10540
  }
10541
10541
  var stripDebugNoise = (s) => s.replace(/\s*raw="[\s\S]*"/g, "").replace(/\s*raw=\S+/g, "").replace(/\s*headers=\[[^\]]*\]/g, "").replace(/\s*headers=\S+/g, "").trim();
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readDbRecord,
3
3
  writeAgentRecord
4
- } from "./chunk-LWKP7AWH.js";
4
+ } from "./chunk-QSHEEA5N.js";
5
5
  import {
6
6
  buildSkillSummaryMarker
7
7
  } from "./chunk-VF4K2QE6.js";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-PUOC4YRO.js";
5
5
  import {
6
6
  AGENT_SELECTION_PRIORITY_INSTRUCTIONS
7
- } from "./chunk-IIVGDG4I.js";
7
+ } from "./chunk-HCT7U36O.js";
8
8
  import {
9
9
  getModelContextWindow
10
10
  } from "./chunk-HKNXJGEC.js";
@@ -9,7 +9,7 @@ import {
9
9
  initReactI18next,
10
10
  instance,
11
11
  toast
12
- } from "./chunk-XA6KE2HD.js";
12
+ } from "./chunk-WKWF4RJH.js";
13
13
  import {
14
14
  require_date_fns
15
15
  } from "./chunk-M76ECQRD.js";
@@ -7,7 +7,7 @@ import {
7
7
  listUserRecordsFromServers,
8
8
  readDbRecordFromServers,
9
9
  readLiveDbRecordAfterTombstoneMerge
10
- } from "./chunk-IQPFGYO3.js";
10
+ } from "./chunk-3YIAR5UI.js";
11
11
  import {
12
12
  fetchWithTransientRetry
13
13
  } from "./chunk-5UTFL4QJ.js";
@@ -30,7 +30,7 @@ import {
30
30
  boundSummaryText,
31
31
  buildDialogReadEnvelope,
32
32
  projectDialogReadForAgent
33
- } from "./chunk-IIVGDG4I.js";
33
+ } from "./chunk-HCT7U36O.js";
34
34
  import {
35
35
  toErrorMessage
36
36
  } from "./chunk-HNMXYYJR.js";
@@ -854,6 +854,7 @@ function buildNoloWorkspaceOpenAiTools(args) {
854
854
  }
855
855
  }, ["query"]);
856
856
  add("listAgents", "List agents for delegation. Default scope='preferred' returns the user's favorites, owned, OAuth, custom API, and local agents only; scope='public' discovers shared/marketplace agents; scope='all' returns their deduplicated union. Public agents may consume platform credits. Copy the agentKey verbatim; use the runnable agentKey exactly and do not infer it from the display name. publicOnly is deprecated compatibility for scope='public'. Rate-limited agents are hidden unless showUnavailable is true.", {
857
+ query: stringToolParam("Optional case-insensitive search substring matching agent name, model, provider, handle, or agentKey."),
857
858
  scope: { type: "string", enum: ["preferred", "public", "all"], description: "Discovery scope; preferred is the default and does not load the public marketplace." },
858
859
  publicOnly: { type: "boolean", description: "Deprecated compatibility alias for scope='public'." },
859
860
  showUnavailable: { type: "boolean", description: "Include agents currently rate-limited (429). Default false." },
@@ -1183,6 +1184,8 @@ function buildNoloWorkspaceCommandArgs(call) {
1183
1184
  }
1184
1185
  case "listAgents": {
1185
1186
  const cliArgs = ["agent", "list"];
1187
+ const query = noloStringArg(args.query);
1188
+ if (query) cliArgs.push("--query", query);
1186
1189
  const space = noloStringArg(args.space);
1187
1190
  if (space) cliArgs.push("--space", space);
1188
1191
  const scope = noloStringArg(args.scope);
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  requireTokenUser
3
- } from "./chunk-PHXD6JTX.js";
3
+ } from "./chunk-FKNWP6SG.js";
4
4
  import {
5
5
  resolveServerUrl
6
6
  } from "./chunk-A7GB5UGH.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  clearCliLocalRuntimePreparedAgentCache
3
- } from "./chunk-L6LNO27F.js";
3
+ } from "./chunk-L4KM22WM.js";
4
4
  import {
5
5
  getReadableCliDb
6
6
  } from "./chunk-LS2ZANRJ.js";
@@ -12,7 +12,7 @@ import {
12
12
  resolveAgentRecordFromHybridStore,
13
13
  sanitizeAgentRecordForCliOutput,
14
14
  writeAgentRecord
15
- } from "./chunk-LWKP7AWH.js";
15
+ } from "./chunk-QSHEEA5N.js";
16
16
  import {
17
17
  resolveCliAgentKeyInput
18
18
  } from "./chunk-SV5IJK6K.js";
@@ -49,7 +49,7 @@ import {
49
49
  requiresBareImageUrl,
50
50
  resolveToolGuidedSections,
51
51
  toBareImageUrlMessages
52
- } from "./chunk-MRIHM22T.js";
52
+ } from "./chunk-FORUBDQQ.js";
53
53
  import {
54
54
  convertMessagesToResponsesInput,
55
55
  extractReasoningFromResponseOutput,
@@ -74,7 +74,7 @@ import {
74
74
  parseNoloWorkspaceToolArguments,
75
75
  readTextStreamUpToChars,
76
76
  resolveNoloDialogInput
77
- } from "./chunk-IIVGDG4I.js";
77
+ } from "./chunk-HCT7U36O.js";
78
78
  import {
79
79
  buildProviderAuthHeaders,
80
80
  buildProviderExecutionPlan
@@ -41,7 +41,7 @@ import {
41
41
  } from "./chunk-42V6BK2E.js";
42
42
  import {
43
43
  buildLocalAgentLookupKeys
44
- } from "./chunk-Z77CRGTW.js";
44
+ } from "./chunk-3AMA42ZI.js";
45
45
  import {
46
46
  LOCAL_CODEX_AGENT_ID,
47
47
  LOCAL_CODEX_AGENT_KEY,
@@ -61,7 +61,7 @@ import {
61
61
  import {
62
62
  inlineImageUrlsForCustomProvider,
63
63
  prepareTools
64
- } from "./chunk-QHYC7W2Y.js";
64
+ } from "./chunk-NJBXVHED.js";
65
65
  import {
66
66
  getServerProviderSecret
67
67
  } from "./chunk-HS7MLR74.js";
@@ -80,7 +80,7 @@ import {
80
80
  rememberMemoryFunctionSchema,
81
81
  resolveAgentRequiredPackIds,
82
82
  setTodoListFunc
83
- } from "./chunk-HQTMPHIS.js";
83
+ } from "./chunk-TDGDSTGC.js";
84
84
  import {
85
85
  fetchWithTransientRetry,
86
86
  isTransientFetchError
@@ -99,7 +99,7 @@ import {
99
99
  } from "./chunk-3VNWWVKB.js";
100
100
  import {
101
101
  deriveCredentialGroup
102
- } from "./chunk-2OASQKU2.js";
102
+ } from "./chunk-CWQINZEA.js";
103
103
  import {
104
104
  getModelPricing
105
105
  } from "./chunk-EYAQT56M.js";
@@ -109,14 +109,14 @@ import {
109
109
  prepareTokenUsageData,
110
110
  resolveBuiltinPlatformAgentConfig,
111
111
  runKeyed
112
- } from "./chunk-XA6KE2HD.js";
112
+ } from "./chunk-WKWF4RJH.js";
113
113
  import {
114
114
  BUILTIN_DIALOG_LLM_CHAT_FALLBACK_MODEL,
115
115
  BUILTIN_TITLE_LLM_CONFIG
116
116
  } from "./chunk-MC4XLIJ7.js";
117
117
  import {
118
118
  fetchServerSyncedCredential
119
- } from "./chunk-LXATDEM7.js";
119
+ } from "./chunk-4RMFGFRH.js";
120
120
  import {
121
121
  require_date_fns
122
122
  } from "./chunk-M76ECQRD.js";
@@ -162,7 +162,7 @@ import {
162
162
  readDevinUpstreamFailure,
163
163
  resolveOpenAiCompatibleProviderConfig,
164
164
  summarizeToolArguments
165
- } from "./chunk-DGE5HEGA.js";
165
+ } from "./chunk-L322LGOM.js";
166
166
  import {
167
167
  PlatformStreamInterruptedError,
168
168
  buildPlatformChatCompletionRequest,
@@ -205,7 +205,7 @@ import {
205
205
  buildNoloWorkspaceOpenAiTools,
206
206
  parseNoloWorkspaceToolArguments,
207
207
  resolveRuntimeToolSurfaceForAgent
208
- } from "./chunk-IIVGDG4I.js";
208
+ } from "./chunk-HCT7U36O.js";
209
209
  import {
210
210
  mergeAvailabilityDeadline,
211
211
  resolveAvailabilityAction,
@@ -11589,7 +11589,8 @@ async function assertCredentialFanoutAllowed(deps, args) {
11589
11589
  const verdict = checkCredentialFanout({
11590
11590
  active,
11591
11591
  candidate: { agentKey: args.agentKey, credentialGroup: candidateGroup },
11592
- allowUnknownCredential: args.allowUnknownCredential === true
11592
+ allowUnknownCredential: args.allowUnknownCredential === true,
11593
+ allowCredentialConcurrency: args.allowCredentialConcurrency === true
11593
11594
  });
11594
11595
  if (!verdict.allowed) throw new Error(verdict.message);
11595
11596
  return candidateGroup;
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  toolRegistry
3
- } from "./chunk-HQTMPHIS.js";
3
+ } from "./chunk-TDGDSTGC.js";
4
4
  import {
5
5
  i18n_default
6
- } from "./chunk-XA6KE2HD.js";
6
+ } from "./chunk-WKWF4RJH.js";
7
7
  import {
8
8
  canonicalizeToolNames
9
9
  } from "./chunk-O6OSWFZQ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  buildLocalAgentLookupKeys,
3
3
  shouldReadAgentKeyRemotely
4
- } from "./chunk-Z77CRGTW.js";
4
+ } from "./chunk-3AMA42ZI.js";
5
5
  import {
6
6
  resolveCliAgentKeyInput
7
7
  } from "./chunk-SV5IJK6K.js";