nolo-cli 0.53.0-alpha.1 → 0.54.0-alpha.2

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 (110) hide show
  1. package/{_executeModel-36GKPAEZ.js → _executeModel-ANY4SIAS.js} +34 -35
  2. package/{action-IU6ON7ZB.js → action-Q4W5JPI5.js} +7 -7
  3. package/{addContentAction-5V5CCI3I.js → addContentAction-O25HFR37.js} +6 -6
  4. package/{addDialogAgentAction-KF3KZZNZ.js → addDialogAgentAction-GH7AUPPB.js} +5 -5
  5. package/{agentDeleteCommand-SBODEUPE.js → agentDeleteCommand-JWIKNWWI.js} +17 -17
  6. package/{agentEmailCommands-ME7BCY5S.js → agentEmailCommands-PL22BEU5.js} +39 -40
  7. package/{agentListCommands-QBWPKN5D.js → agentListCommands-6NR7AQEK.js} +19 -19
  8. package/{agentMachineCommands-KFFUPELZ.js → agentMachineCommands-TASPU6OA.js} +18 -18
  9. package/{agentRecordCommands-4BF6JIHS.js → agentRecordCommands-Z64TA63M.js} +38 -39
  10. package/{agentRunCommand-4MA7D6SV.js → agentRunCommand-4QJQLPRW.js} +39 -40
  11. package/{agentRuntimeLocal-RD52NPCG.js → agentRuntimeLocal-PCJJ56J2.js} +17 -17
  12. package/{agentSlice-AJABGQHU.js → agentSlice-KYLDUSNN.js} +6 -6
  13. package/{appDeleteCommands-I42NL3LP.js → appDeleteCommands-WLHMJAVT.js} +19 -19
  14. package/{appDeployCommands-CZWHXVPU.js → appDeployCommands-CKON7N2E.js} +19 -19
  15. package/{appDeployStatusCommands-PIQYXACM.js → appDeployStatusCommands-PXRLDASH.js} +19 -19
  16. package/{appGetCommands-CI2OWLT7.js → appGetCommands-RAB5RM4M.js} +19 -19
  17. package/{appListCommands-LWLSHPCP.js → appListCommands-GU57FB62.js} +19 -19
  18. package/{authCommand-WLWOEVYI.js → authCommand-QOPOEYEK.js} +7 -7
  19. package/{chatQueueReduxAdapter-V37RK3A6.js → chatQueueReduxAdapter-5O2WLITN.js} +16 -16
  20. package/chunk-2BWU4ORW.js +2574 -0
  21. package/{chunk-SG65C33A.js → chunk-32I5RVMY.js} +4 -4
  22. package/{chunk-X7S7OFUX.js → chunk-3QJTD6DO.js} +4 -4
  23. package/{chunk-CY5KIIPU.js → chunk-3Z3DXZBD.js} +12 -12
  24. package/{chunk-RO2IUWZE.js → chunk-4NN3EK7H.js} +1 -1
  25. package/{chunk-Y7TGWSUN.js → chunk-56W233KG.js} +1 -1
  26. package/{chunk-C2WF2OY7.js → chunk-5WADL4O7.js} +1 -1
  27. package/{chunk-QTH72J3N.js → chunk-6BGAQ3KR.js} +116 -23
  28. package/{chunk-67Q6IHM5.js → chunk-6FQ2552G.js} +142 -62
  29. package/{chunk-6XIE5ZGI.js → chunk-6HIGYUBQ.js} +1 -1
  30. package/{chunk-XPW6JLOB.js → chunk-6SZ52ORL.js} +8 -8
  31. package/{chunk-4ZL2KBI7.js → chunk-757BGY6Y.js} +1 -1
  32. package/{chunk-SQTVMYMU.js → chunk-7APQB6R6.js} +3 -3
  33. package/{chunk-QF27IZB3.js → chunk-7K5VMB4Q.js} +3 -3
  34. package/{chunk-V2IPBG5U.js → chunk-AA564GBL.js} +2 -2
  35. package/{chunk-76UA7376.js → chunk-AV6KQCM5.js} +6 -6
  36. package/{chunk-PGKZ2KGE.js → chunk-BJLYCOZK.js} +24 -24
  37. package/{chunk-VKSBVRGP.js → chunk-CVT7L2WZ.js} +1 -1
  38. package/{chunk-JVKFKKYN.js → chunk-D3JQPONH.js} +1 -1
  39. package/{chunk-KHCLMKZZ.js → chunk-EY7V7REW.js} +280 -6
  40. package/{chunk-4RXXP6WD.js → chunk-FGEYVPPR.js} +2 -2
  41. package/{chunk-AZ6DT2UD.js → chunk-GBADO3SM.js} +1 -1
  42. package/chunk-GLGD2JGY.js +1766 -0
  43. package/{chunk-POLE2QLO.js → chunk-GV35EHNA.js} +126 -59
  44. package/{chunk-HR5XDXYM.js → chunk-H4RYESI6.js} +3 -3
  45. package/{chunk-W3RZLXMA.js → chunk-IKTHA3JH.js} +2 -2
  46. package/{chunk-XB7ACJFH.js → chunk-INXBNYCG.js} +3 -3
  47. package/{chunk-F22JQTSX.js → chunk-KUUTWU4I.js} +3 -3
  48. package/{chunk-DFY6O64O.js → chunk-LA4IDAK7.js} +12 -12
  49. package/{chunk-IVKEJD7I.js → chunk-LN3OQJGG.js} +1 -1
  50. package/{chunk-YZ2WE6CW.js → chunk-MFI4FGHX.js} +2 -2
  51. package/{chunk-LGUQHYAL.js → chunk-O5FLGN2L.js} +3 -2
  52. package/{chunk-HCBQVVFZ.js → chunk-PAHILFNT.js} +1 -1
  53. package/{chunk-HHBXCRJS.js → chunk-PYKV6FSC.js} +1 -1
  54. package/{chunk-BO3YFOZR.js → chunk-QDHZCAH3.js} +1 -1
  55. package/{chunk-L3JWI7WX.js → chunk-QOKAKDPE.js} +15 -11
  56. package/{chunk-B54WOZ77.js → chunk-RTLJUGQH.js} +1 -1
  57. package/{chunk-Z7A54NFZ.js → chunk-RU5D3B22.js} +1 -1
  58. package/{chunk-JBL24PK6.js → chunk-SP3DPVBH.js} +2 -2
  59. package/{chunk-TZRB2I2M.js → chunk-TI5BCZCH.js} +18 -18
  60. package/{chunk-KOZ2G3ZG.js → chunk-U2A47SVI.js} +5 -5
  61. package/{chunk-3YVCM5PE.js → chunk-U5Z7LFZF.js} +1 -1
  62. package/{chunk-DIQCV4FR.js → chunk-UITMHBVK.js} +1 -1
  63. package/{chunk-H5QLIP6S.js → chunk-UW4INMD2.js} +2 -2
  64. package/{chunk-5SLTA66C.js → chunk-V4KZGLOI.js} +30 -30
  65. package/{chunk-AV4Z57LV.js → chunk-VRJUIUIY.js} +2 -2
  66. package/{chunk-5XCW6RQG.js → chunk-VRZIH5JO.js} +1 -1
  67. package/{chunk-2JYSSXLY.js → chunk-VULELK4T.js} +2 -2
  68. package/{chunk-VFN256RI.js → chunk-WL3UOGYO.js} +25 -0
  69. package/{chunk-PJASTA2U.js → chunk-Y7LNKP32.js} +3 -3
  70. package/{chunk-OZKJBDG4.js → chunk-YBV6QJKM.js} +14 -8
  71. package/{codingSkills-BYQI6EPT.js → codingSkills-BCQXRZOI.js} +3 -4
  72. package/{createAgentAutomationAction-5OZIWOK4.js → createAgentAutomationAction-UJLNFFFC.js} +17 -17
  73. package/{createDialogAction-334CHPJF.js → createDialogAction-TJCX6GUE.js} +20 -21
  74. package/{createPageAction-LXY22WTA.js → createPageAction-N3IYABHV.js} +18 -19
  75. package/{dbSlice-FWF5F4L7.js → dbSlice-D5CNGWPD.js} +5 -5
  76. package/{deleteFile-NPZ64DFN.js → deleteFile-44TUM34Y.js} +3 -3
  77. package/{dialogCommands-4MGUHAJI.js → dialogCommands-35M6RBAC.js} +18 -18
  78. package/{dialogSlice-76W7S3C4.js → dialogSlice-KO7ADD7H.js} +16 -16
  79. package/{docCreateCommands-346W5443.js → docCreateCommands-VXHZWQ3P.js} +20 -21
  80. package/{docDeleteCommands-FKEEPUUS.js → docDeleteCommands-4WFAJR6A.js} +20 -21
  81. package/{docReadCommands-AACI4DVO.js → docReadCommands-OYREEFAR.js} +20 -21
  82. package/{docStore-N7QTPHAX.js → docStore-5BU76DFK.js} +18 -18
  83. package/{docUpdateCommands-WHWVZ2XE.js → docUpdateCommands-A7QERSME.js} +20 -21
  84. package/{getPricing-JNOCWYDH.js → getPricing-HAU62AFM.js} +3 -3
  85. package/{handleSendMessageAction-EAXEX5AX.js → handleSendMessageAction-OSGQJQ45.js} +16 -16
  86. package/index.js +58 -58
  87. package/{machineCommands-XNWLQVTN.js → machineCommands-J43U3TX5.js} +38 -39
  88. package/{machineWsRunDispatch-56HWQ67L.js → machineWsRunDispatch-Z2Z6STXZ.js} +38 -39
  89. package/{models-N4NXQ44D.js → models-4QF4BJVY.js} +2 -2
  90. package/package.json +2 -3
  91. package/{read-J7RVVCHH.js → read-RGNPI5H2.js} +3 -3
  92. package/{readDocTool-G2WBM4IH.js → readDocTool-6ESWKTXD.js} +1 -1
  93. package/{readlineWorkspace-AXTB7DJC.js → readlineWorkspace-YRPV6JPN.js} +485 -222
  94. package/{removeDialogAgentAction-RMPISD42.js → removeDialogAgentAction-JYT73FU2.js} +7 -7
  95. package/{runAgentClientLoop-PU3R3UXA.js → runAgentClientLoop-5YM5WMAY.js} +32 -33
  96. package/{setDialogExtraReferencesAction-7BUTHDAL.js → setDialogExtraReferencesAction-D564LMYQ.js} +6 -6
  97. package/{setPrimaryDialogAgentAction-WCYIBGZ4.js → setPrimaryDialogAgentAction-ACY3BLYA.js} +7 -7
  98. package/{settingSlice-7NN2MI6Y.js → settingSlice-MKI3MNZJ.js} +6 -6
  99. package/{skillDiscovery-COX56OBO.js → skillDiscovery-GPUDHDTZ.js} +1 -2
  100. package/{spaceCommands-JYI3X4N2.js → spaceCommands-MY26V52L.js} +17 -17
  101. package/{spaceSlice-ERZ3RGWC.js → spaceSlice-JUIXC365.js} +17 -17
  102. package/{streamAgentChatTurn-2IH4MTQC.js → streamAgentChatTurn-XV5X5TNQ.js} +36 -37
  103. package/{switchDialogAgentAction-WGMMQHDI.js → switchDialogAgentAction-CJ5H6SAR.js} +5 -5
  104. package/{tableCommands-P2TXJ3CF.js → tableCommands-R6WFRDYF.js} +1 -1
  105. package/{tools-DJUTQEMP.js → tools-MIMELA2Y.js} +27 -28
  106. package/{tuiSummaryLlmCaller-U4EGD2SX.js → tuiSummaryLlmCaller-XJ5BKNNS.js} +12 -12
  107. package/{updateDialogTitleAction-OVOPGTC3.js → updateDialogTitleAction-EIZUSWHR.js} +17 -17
  108. package/chunk-AETZ7AD6.js +0 -274
  109. package/chunk-EUG45QJR.js +0 -6104
  110. package/chunk-OFZPJ3NT.js +0 -114
@@ -8,72 +8,71 @@ import {
8
8
  toolQueryFunc,
9
9
  toolQueryFunctionSchema,
10
10
  toolRegistry
11
- } from "./chunk-5SLTA66C.js";
11
+ } from "./chunk-V4KZGLOI.js";
12
12
  import "./chunk-5XTOKQLW.js";
13
13
  import "./chunk-NF64D32W.js";
14
14
  import "./chunk-3L2WKC3W.js";
15
- import "./chunk-Z7A54NFZ.js";
15
+ import "./chunk-RU5D3B22.js";
16
16
  import "./chunk-KQHGZWSV.js";
17
- import "./chunk-5XCW6RQG.js";
17
+ import "./chunk-VRZIH5JO.js";
18
18
  import "./chunk-KXKQO4Q6.js";
19
19
  import "./chunk-INZZJSQF.js";
20
- import "./chunk-PJASTA2U.js";
20
+ import "./chunk-Y7LNKP32.js";
21
21
  import "./chunk-BANYWEYY.js";
22
- import "./chunk-HCBQVVFZ.js";
22
+ import "./chunk-PAHILFNT.js";
23
23
  import "./chunk-MEYIRKDN.js";
24
24
  import "./chunk-63W5N6P3.js";
25
25
  import "./chunk-VF4K2QE6.js";
26
- import "./chunk-XPW6JLOB.js";
27
- import "./chunk-DFY6O64O.js";
28
- import "./chunk-PGKZ2KGE.js";
26
+ import "./chunk-6SZ52ORL.js";
27
+ import "./chunk-LA4IDAK7.js";
28
+ import "./chunk-BJLYCOZK.js";
29
29
  import "./chunk-EVBFYPDC.js";
30
30
  import "./chunk-H2G6JXTR.js";
31
31
  import "./chunk-YYLHWIW6.js";
32
- import "./chunk-KOZ2G3ZG.js";
32
+ import "./chunk-U2A47SVI.js";
33
33
  import "./chunk-AGGIDPCZ.js";
34
- import "./chunk-SG65C33A.js";
34
+ import "./chunk-32I5RVMY.js";
35
35
  import "./chunk-5RGU3J7P.js";
36
36
  import "./chunk-M76ECQRD.js";
37
37
  import "./chunk-MRWGHF56.js";
38
- import "./chunk-V2IPBG5U.js";
38
+ import "./chunk-AA564GBL.js";
39
39
  import {
40
40
  TOOL_PACKS,
41
41
  addDefaultLightWebToolsForConfiguredAgents,
42
42
  applyDefaultWebToolPacks
43
- } from "./chunk-LGUQHYAL.js";
44
- import "./chunk-AETZ7AD6.js";
45
- import "./chunk-KHCLMKZZ.js";
43
+ } from "./chunk-O5FLGN2L.js";
44
+ import "./chunk-EY7V7REW.js";
46
45
  import "./chunk-TNPCQNGQ.js";
47
46
  import "./chunk-IWUMSAQF.js";
48
- import "./chunk-F22JQTSX.js";
49
- import "./chunk-HR5XDXYM.js";
50
- import "./chunk-AV4Z57LV.js";
47
+ import "./chunk-KUUTWU4I.js";
48
+ import "./chunk-H4RYESI6.js";
49
+ import "./chunk-VRJUIUIY.js";
51
50
  import "./chunk-NQ4N4IGO.js";
52
51
  import "./chunk-FD36SCCD.js";
53
- import "./chunk-BO3YFOZR.js";
52
+ import "./chunk-QDHZCAH3.js";
54
53
  import "./chunk-DWLEOOGR.js";
55
54
  import "./chunk-ZHXJ6M7T.js";
56
55
  import "./chunk-HNMXYYJR.js";
57
56
  import "./chunk-O6OSWFZQ.js";
58
57
  import "./chunk-FA4SY4F5.js";
59
- import "./chunk-Y7TGWSUN.js";
60
- import "./chunk-VFN256RI.js";
61
- import "./chunk-SQTVMYMU.js";
62
- import "./chunk-X7S7OFUX.js";
58
+ import "./chunk-56W233KG.js";
59
+ import "./chunk-WL3UOGYO.js";
60
+ import "./chunk-7APQB6R6.js";
61
+ import "./chunk-3QJTD6DO.js";
63
62
  import "./chunk-Y5GCAMGP.js";
64
63
  import "./chunk-UZ6XXCVR.js";
65
64
  import "./chunk-KX6YBIHG.js";
66
- import "./chunk-4RXXP6WD.js";
67
- import "./chunk-76UA7376.js";
65
+ import "./chunk-FGEYVPPR.js";
66
+ import "./chunk-AV6KQCM5.js";
68
67
  import "./chunk-SVEUG45B.js";
69
68
  import "./chunk-WWC7I6TA.js";
70
69
  import "./chunk-I42VC5KR.js";
71
- import "./chunk-YZ2WE6CW.js";
70
+ import "./chunk-MFI4FGHX.js";
72
71
  import "./chunk-QSJ3HFEF.js";
73
- import "./chunk-2JYSSXLY.js";
72
+ import "./chunk-VULELK4T.js";
74
73
  import "./chunk-BJIRLHJR.js";
75
- import "./chunk-HHBXCRJS.js";
76
- import "./chunk-L3JWI7WX.js";
74
+ import "./chunk-PYKV6FSC.js";
75
+ import "./chunk-QOKAKDPE.js";
77
76
  import "./chunk-OW765XBU.js";
78
77
  import "./chunk-GBRG75BQ.js";
79
78
  import "./chunk-KUG52IAP.js";
@@ -6,30 +6,30 @@ import {
6
6
  canUsePlatformChatProvider,
7
7
  parsePlatformChatCompletionResponse,
8
8
  resolvePlatformChatProviderConfig
9
- } from "./chunk-XB7ACJFH.js";
9
+ } from "./chunk-INXBNYCG.js";
10
10
  import "./chunk-T27IEBNQ.js";
11
11
  import "./chunk-N7J63Q6C.js";
12
12
  import "./chunk-6BYAXNH5.js";
13
- import "./chunk-JBL24PK6.js";
13
+ import "./chunk-SP3DPVBH.js";
14
14
  import {
15
15
  COMPACTION_SUMMARY_SYSTEM_PROMPT
16
- } from "./chunk-HR5XDXYM.js";
17
- import "./chunk-AV4Z57LV.js";
18
- import "./chunk-BO3YFOZR.js";
16
+ } from "./chunk-H4RYESI6.js";
17
+ import "./chunk-VRJUIUIY.js";
18
+ import "./chunk-QDHZCAH3.js";
19
19
  import "./chunk-DWLEOOGR.js";
20
20
  import "./chunk-ZHXJ6M7T.js";
21
- import "./chunk-VFN256RI.js";
22
- import "./chunk-4RXXP6WD.js";
23
- import "./chunk-76UA7376.js";
21
+ import "./chunk-WL3UOGYO.js";
22
+ import "./chunk-FGEYVPPR.js";
23
+ import "./chunk-AV6KQCM5.js";
24
24
  import "./chunk-SVEUG45B.js";
25
25
  import "./chunk-WWC7I6TA.js";
26
26
  import "./chunk-I42VC5KR.js";
27
- import "./chunk-YZ2WE6CW.js";
27
+ import "./chunk-MFI4FGHX.js";
28
28
  import "./chunk-QSJ3HFEF.js";
29
- import "./chunk-2JYSSXLY.js";
29
+ import "./chunk-VULELK4T.js";
30
30
  import "./chunk-BJIRLHJR.js";
31
- import "./chunk-HHBXCRJS.js";
32
- import "./chunk-L3JWI7WX.js";
31
+ import "./chunk-PYKV6FSC.js";
32
+ import "./chunk-QOKAKDPE.js";
33
33
  import "./chunk-OW765XBU.js";
34
34
  import "./chunk-GBRG75BQ.js";
35
35
  import "./chunk-KUG52IAP.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  updateContentTitle
3
- } from "./chunk-DFY6O64O.js";
3
+ } from "./chunk-LA4IDAK7.js";
4
4
  import {
5
5
  isAssistantToolStub,
6
6
  selectAllMsgs
7
- } from "./chunk-PGKZ2KGE.js";
7
+ } from "./chunk-BJLYCOZK.js";
8
8
  import {
9
9
  BUILTIN_TITLE_LLM_CONFIG
10
10
  } from "./chunk-EVBFYPDC.js";
@@ -12,9 +12,9 @@ import "./chunk-H2G6JXTR.js";
12
12
  import "./chunk-YYLHWIW6.js";
13
13
  import {
14
14
  runLlm
15
- } from "./chunk-KOZ2G3ZG.js";
15
+ } from "./chunk-U2A47SVI.js";
16
16
  import "./chunk-AGGIDPCZ.js";
17
- import "./chunk-SG65C33A.js";
17
+ import "./chunk-32I5RVMY.js";
18
18
  import "./chunk-5RGU3J7P.js";
19
19
  import {
20
20
  require_date_fns
@@ -24,44 +24,44 @@ import {
24
24
  buildDialogFallbackTitleFromMessages,
25
25
  resolveDialogTitle
26
26
  } from "./chunk-2MBTWINN.js";
27
- import "./chunk-F22JQTSX.js";
27
+ import "./chunk-KUUTWU4I.js";
28
28
  import {
29
29
  serializeMessageContent
30
- } from "./chunk-HR5XDXYM.js";
31
- import "./chunk-AV4Z57LV.js";
30
+ } from "./chunk-H4RYESI6.js";
31
+ import "./chunk-VRJUIUIY.js";
32
32
  import "./chunk-NQ4N4IGO.js";
33
33
  import "./chunk-FD36SCCD.js";
34
- import "./chunk-BO3YFOZR.js";
34
+ import "./chunk-QDHZCAH3.js";
35
35
  import "./chunk-DWLEOOGR.js";
36
36
  import "./chunk-ZHXJ6M7T.js";
37
37
  import "./chunk-HNMXYYJR.js";
38
38
  import "./chunk-FA4SY4F5.js";
39
- import "./chunk-Y7TGWSUN.js";
40
- import "./chunk-VFN256RI.js";
41
- import "./chunk-X7S7OFUX.js";
39
+ import "./chunk-56W233KG.js";
40
+ import "./chunk-WL3UOGYO.js";
41
+ import "./chunk-3QJTD6DO.js";
42
42
  import "./chunk-Y5GCAMGP.js";
43
43
  import "./chunk-UZ6XXCVR.js";
44
44
  import "./chunk-KX6YBIHG.js";
45
45
  import {
46
46
  normalizeSpaceId
47
- } from "./chunk-4RXXP6WD.js";
47
+ } from "./chunk-FGEYVPPR.js";
48
48
  import {
49
49
  patch,
50
50
  selectById
51
- } from "./chunk-76UA7376.js";
51
+ } from "./chunk-AV6KQCM5.js";
52
52
  import "./chunk-SVEUG45B.js";
53
53
  import "./chunk-WWC7I6TA.js";
54
54
  import "./chunk-I42VC5KR.js";
55
- import "./chunk-YZ2WE6CW.js";
55
+ import "./chunk-MFI4FGHX.js";
56
56
  import "./chunk-QSJ3HFEF.js";
57
- import "./chunk-2JYSSXLY.js";
57
+ import "./chunk-VULELK4T.js";
58
58
  import {
59
59
  extractCustomId
60
60
  } from "./chunk-BJIRLHJR.js";
61
61
  import {
62
62
  selectIdentityUserId
63
- } from "./chunk-HHBXCRJS.js";
64
- import "./chunk-L3JWI7WX.js";
63
+ } from "./chunk-PYKV6FSC.js";
64
+ import "./chunk-QOKAKDPE.js";
65
65
  import "./chunk-OW765XBU.js";
66
66
  import "./chunk-GBRG75BQ.js";
67
67
  import "./chunk-KUG52IAP.js";
package/chunk-AETZ7AD6.js DELETED
@@ -1,274 +0,0 @@
1
- import {
2
- dump,
3
- load
4
- } from "./chunk-KHCLMKZZ.js";
5
- import {
6
- asTrimmedNonEmptyStringArray
7
- } from "./chunk-I42VC5KR.js";
8
- import {
9
- asOptionalTrimmedString
10
- } from "./chunk-G3SUCT4W.js";
11
-
12
- // packages/ai/skills/skillDocProtocol.ts
13
- var SKILL_DOC_ENUMS = {
14
- triggerMode: ["explicit", "required", "recommended"],
15
- // budgetTier 只服务 WorkflowReferenceConfig;skill 侧已移除(零读点)。
16
- budgetTier: ["low", "medium", "high"],
17
- modality: ["text", "image", "video", "audio", "3d"],
18
- docKind: ["knowledge", "instruction", "skill"]
19
- };
20
- var SKILL_CONFIG_BLOCK = "skill-config";
21
- var EVAL_CONFIG_BLOCK = "eval-config";
22
- var WORKFLOW_CONFIG_BLOCK = "workflow-config";
23
- var normalizeStringArray = (value) => {
24
- if (!Array.isArray(value)) return void 0;
25
- const items = [...new Set(asTrimmedNonEmptyStringArray(value))];
26
- return items.length > 0 ? items : void 0;
27
- };
28
- var normalizeSkillEnumValue = (key, value) => typeof value === "string" && SKILL_DOC_ENUMS[key].includes(value) ? value : void 0;
29
- var normalizeSkillModalities = (value) => {
30
- const raw = normalizeStringArray(value);
31
- if (!raw) return void 0;
32
- const filtered = raw.flatMap((item) => {
33
- const modality = normalizeSkillEnumValue("modality", item);
34
- return modality ? [modality] : [];
35
- });
36
- return filtered.length > 0 ? Array.from(new Set(filtered)) : void 0;
37
- };
38
- var normalizeSkillConfig = (value, fallbackTools) => {
39
- if (!value || typeof value !== "object") return void 0;
40
- const record = value;
41
- const name = asOptionalTrimmedString(record.name) ?? "";
42
- const description = asOptionalTrimmedString(record.description) ?? "";
43
- if (!name || !description) return void 0;
44
- const triggerMode = normalizeSkillEnumValue("triggerMode", record.triggerMode);
45
- const modalities = normalizeSkillModalities(record.modalities);
46
- const toolNames = normalizeStringArray(record.toolNames) ?? normalizeStringArray(fallbackTools) ?? void 0;
47
- return {
48
- version: "0.1",
49
- kind: "skill",
50
- id: asOptionalTrimmedString(record.id),
51
- name,
52
- description,
53
- triggerMode,
54
- toolNames,
55
- modalities,
56
- requiredSkills: normalizeStringArray(record.requiredSkills),
57
- recommendedSkills: normalizeStringArray(record.recommendedSkills),
58
- promptPatch: asOptionalTrimmedString(record.promptPatch)
59
- };
60
- };
61
- var normalizeEvalConfig = (value) => {
62
- if (!value || typeof value !== "object") return void 0;
63
- const record = value;
64
- if (!Array.isArray(record.cases)) return void 0;
65
- const cases = [];
66
- for (const item of record.cases) {
67
- if (!item || typeof item !== "object") continue;
68
- const testCase = item;
69
- const input = asOptionalTrimmedString(testCase.input) ?? "";
70
- if (!input) continue;
71
- cases.push({
72
- input,
73
- expectedTools: normalizeStringArray(testCase.expectedTools),
74
- expectedSignals: normalizeStringArray(testCase.expectedSignals),
75
- forbiddenSignals: normalizeStringArray(testCase.forbiddenSignals)
76
- });
77
- }
78
- return cases.length > 0 ? {
79
- version: "0.1",
80
- cases
81
- } : void 0;
82
- };
83
- var normalizeWorkflowConfig = (value) => {
84
- if (!value || typeof value !== "object") return void 0;
85
- const record = value;
86
- const name = asOptionalTrimmedString(record.name) ?? "";
87
- const description = asOptionalTrimmedString(record.description) ?? "";
88
- if (!name || !description) return void 0;
89
- const budgetTier = normalizeSkillEnumValue("budgetTier", record.budgetTier);
90
- return {
91
- version: "0.1",
92
- kind: "workflow",
93
- id: asOptionalTrimmedString(record.id),
94
- name,
95
- description,
96
- defaultAgent: asOptionalTrimmedString(record.defaultAgent),
97
- inputs: normalizeStringArray(record.inputs),
98
- recommendedTools: normalizeStringArray(record.recommendedTools),
99
- requiredTools: normalizeStringArray(record.requiredTools),
100
- requiredOutputs: normalizeStringArray(record.requiredOutputs),
101
- gates: normalizeStringArray(record.gates),
102
- budgetTier,
103
- contextStrategy: asOptionalTrimmedString(record.contextStrategy),
104
- failureProtocol: asOptionalTrimmedString(record.failureProtocol)
105
- };
106
- };
107
- var normalizePageSkillMetadata = (value, fallbackTools) => {
108
- if (!value || typeof value !== "object") return void 0;
109
- const record = value;
110
- const kind = normalizeSkillEnumValue("docKind", record.kind);
111
- const meta = {
112
- kind,
113
- requiredSkills: normalizeStringArray(record.requiredSkills),
114
- recommendedSkills: normalizeStringArray(record.recommendedSkills),
115
- skillConfig: normalizeSkillConfig(record.skillConfig, fallbackTools),
116
- evalConfig: normalizeEvalConfig(record.evalConfig),
117
- workflowConfig: normalizeWorkflowConfig(record.workflowConfig)
118
- };
119
- if (meta.skillConfig && !meta.kind) {
120
- meta.kind = "skill";
121
- }
122
- if (meta.workflowConfig && !meta.kind) {
123
- meta.kind = "instruction";
124
- }
125
- return meta.kind || meta.requiredSkills || meta.recommendedSkills || meta.skillConfig || meta.evalConfig || meta.workflowConfig ? meta : void 0;
126
- };
127
- var extractCommentBlock = (markdown, blockName) => {
128
- if (!markdown) return void 0;
129
- const matcher = new RegExp(
130
- `<!--\\s*${blockName}\\s*\\n([\\s\\S]*?)-->`,
131
- "i"
132
- );
133
- const match = markdown.match(matcher);
134
- return asOptionalTrimmedString(match?.[1]);
135
- };
136
- var removeCommentBlock = (markdown, blockName) => markdown.replace(
137
- new RegExp(`\\n?<!--\\s*${blockName}\\s*\\n[\\s\\S]*?-->\\s*`, "gi"),
138
- "\n\n"
139
- );
140
- var parseYamlObject = (raw) => {
141
- if (!raw) return void 0;
142
- try {
143
- const parsed = load(raw);
144
- return parsed && typeof parsed === "object" ? parsed : void 0;
145
- } catch {
146
- return void 0;
147
- }
148
- };
149
- var parseSkillDocProtocol = (markdown, existingMeta, fallbackTools) => {
150
- const source = typeof markdown === "string" ? markdown : "";
151
- const skillBlock = parseYamlObject(extractCommentBlock(source, SKILL_CONFIG_BLOCK));
152
- const evalBlock = parseYamlObject(extractCommentBlock(source, EVAL_CONFIG_BLOCK));
153
- const workflowBlock = parseYamlObject(extractCommentBlock(source, WORKFLOW_CONFIG_BLOCK));
154
- const cleanedContent = removeCommentBlock(
155
- removeCommentBlock(
156
- removeCommentBlock(source, SKILL_CONFIG_BLOCK),
157
- EVAL_CONFIG_BLOCK
158
- ),
159
- WORKFLOW_CONFIG_BLOCK
160
- ).replace(/\n{3,}/g, "\n\n").trim();
161
- const parsedMeta = normalizePageSkillMetadata(
162
- {
163
- ...existingMeta ?? {},
164
- ...skillBlock ? {
165
- kind: existingMeta?.kind === "skill" || skillBlock.kind === "skill" ? "skill" : existingMeta?.kind,
166
- requiredSkills: skillBlock.requiredSkills ?? existingMeta?.requiredSkills,
167
- recommendedSkills: skillBlock.recommendedSkills ?? existingMeta?.recommendedSkills,
168
- skillConfig: skillBlock
169
- } : {},
170
- ...evalBlock ? { evalConfig: evalBlock } : {},
171
- ...workflowBlock ? { workflowConfig: workflowBlock } : {}
172
- },
173
- fallbackTools
174
- );
175
- return {
176
- content: cleanedContent,
177
- meta: parsedMeta
178
- };
179
- };
180
- var resolvePageSkillMetadata = (page) => {
181
- if (!page) return void 0;
182
- const existingMeta = normalizePageSkillMetadata(page.meta, page.tools);
183
- return parseSkillDocProtocol(page.content ?? "", existingMeta, page.tools).meta;
184
- };
185
- var yamlBlock = (value) => dump(value, { lineWidth: 120, noRefs: true }).trim();
186
- var buildSkillConfigComment = (config) => {
187
- const payload = {
188
- version: config.version,
189
- kind: config.kind,
190
- ...config.id ? { id: config.id } : {},
191
- name: config.name,
192
- description: config.description,
193
- ...config.triggerMode ? { triggerMode: config.triggerMode } : {},
194
- ...config.requiredSkills?.length ? { requiredSkills: config.requiredSkills } : {},
195
- ...config.recommendedSkills?.length ? { recommendedSkills: config.recommendedSkills } : {},
196
- ...config.toolNames?.length ? { toolNames: config.toolNames } : {},
197
- ...config.modalities?.length ? { modalities: config.modalities } : {},
198
- ...config.promptPatch ? { promptPatch: config.promptPatch } : {}
199
- };
200
- return `<!-- ${SKILL_CONFIG_BLOCK}
201
- ${yamlBlock(payload)}
202
- -->`;
203
- };
204
- var buildEvalConfigComment = (config) => `<!-- ${EVAL_CONFIG_BLOCK}
205
- ${yamlBlock({
206
- version: config.version,
207
- cases: config.cases
208
- })}
209
- -->`;
210
- var buildWorkflowConfigComment = (config) => `<!-- ${WORKFLOW_CONFIG_BLOCK}
211
- ${yamlBlock({
212
- version: config.version,
213
- kind: config.kind,
214
- ...config.id ? { id: config.id } : {},
215
- name: config.name,
216
- description: config.description,
217
- ...config.defaultAgent ? { defaultAgent: config.defaultAgent } : {},
218
- ...config.inputs?.length ? { inputs: config.inputs } : {},
219
- ...config.recommendedTools?.length ? { recommendedTools: config.recommendedTools } : {},
220
- ...config.requiredTools?.length ? { requiredTools: config.requiredTools } : {},
221
- ...config.requiredOutputs?.length ? { requiredOutputs: config.requiredOutputs } : {},
222
- ...config.gates?.length ? { gates: config.gates } : {},
223
- ...config.budgetTier ? { budgetTier: config.budgetTier } : {},
224
- ...config.contextStrategy ? { contextStrategy: config.contextStrategy } : {},
225
- ...config.failureProtocol ? { failureProtocol: config.failureProtocol } : {}
226
- })}
227
- -->`;
228
- var buildSkillDocMarkdown = (options) => {
229
- const sections = [
230
- asOptionalTrimmedString(options.body) ?? "",
231
- buildSkillConfigComment(options.skillConfig),
232
- options.evalConfig ? buildEvalConfigComment(options.evalConfig) : "",
233
- options.workflowConfig ? buildWorkflowConfigComment(options.workflowConfig) : ""
234
- ].filter(Boolean);
235
- return sections.join("\n\n").trim();
236
- };
237
- var extractFrontmatter = (markdown) => {
238
- const match = markdown.match(/^\s*---\s*\n([\s\S]*?)\n\s*---\s*\n?/);
239
- if (!match) return { body: markdown.trim() };
240
- const frontmatter = parseYamlObject(match[1]);
241
- const body = markdown.slice(match[0].length).trim();
242
- return { frontmatter, body };
243
- };
244
- var normalizeAllowedTools = (value) => {
245
- if (Array.isArray(value)) {
246
- return normalizeStringArray(value) ?? [];
247
- }
248
- if (typeof value === "string") {
249
- return value.split(/\s+/).map((item) => item.trim()).filter(Boolean);
250
- }
251
- return [];
252
- };
253
- var parseExternalSkillMarkdown = (markdown) => {
254
- const { frontmatter, body } = extractFrontmatter(markdown);
255
- return {
256
- name: asOptionalTrimmedString(frontmatter?.name),
257
- description: asOptionalTrimmedString(frontmatter?.description),
258
- compatibility: asOptionalTrimmedString(frontmatter?.compatibility),
259
- allowedTools: normalizeAllowedTools(frontmatter?.["allowed-tools"]),
260
- metadata: frontmatter?.metadata && typeof frontmatter.metadata === "object" ? Object.fromEntries(
261
- Object.entries(frontmatter.metadata).filter(([, value]) => typeof value === "string").map(([key, value]) => [key, String(value)])
262
- ) : void 0,
263
- body
264
- };
265
- };
266
-
267
- export {
268
- normalizeStringArray,
269
- normalizeSkillModalities,
270
- parseSkillDocProtocol,
271
- resolvePageSkillMetadata,
272
- buildSkillDocMarkdown,
273
- parseExternalSkillMarkdown
274
- };