nolo-cli 0.143.0-alpha.1 → 0.144.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 (83) hide show
  1. package/{_executeModel-QK43QR2R.js → _executeModel-VA7AOJ7I.js} +18 -17
  2. package/{agentDeleteCommand-SE4WUIRR.js → agentDeleteCommand-Z3UO4OJU.js} +10 -9
  3. package/{agentEmailCommands-LW5JMYH2.js → agentEmailCommands-73TKP5CA.js} +24 -23
  4. package/{agentListCommands-LGZG2OQR.js → agentListCommands-Y7QPH22N.js} +12 -11
  5. package/{agentMachineCommands-BNOXYSPZ.js → agentMachineCommands-NTV2CIGF.js} +10 -9
  6. package/{agentProviderCommands-AOG3OZJA.js → agentProviderCommands-TWB6E5WD.js} +1 -1
  7. package/{agentRecordCommands-W5ZXPHZV.js → agentRecordCommands-XOXZQYL3.js} +23 -22
  8. package/{agentRunCommand-VRLCL57M.js → agentRunCommand-6C7BR2AM.js} +23 -22
  9. package/{agentRuntimeLocal-VOQ3UYZB.js → agentRuntimeLocal-3FUYPU7E.js} +8 -7
  10. package/{agentSlice-4AK24F5F.js → agentSlice-FK2FY7UE.js} +1 -1
  11. package/{appDeleteCommands-XWAIUHTN.js → appDeleteCommands-L6IDOOI7.js} +11 -10
  12. package/{appDeployCommands-CBJJCUMG.js → appDeployCommands-XTT6FWGB.js} +11 -10
  13. package/{appDeployStatusCommands-LTTZTJQS.js → appDeployStatusCommands-3USXE3N3.js} +11 -10
  14. package/{appGetCommands-QHUB7MFF.js → appGetCommands-PHADWOLO.js} +11 -10
  15. package/{appListCommands-HINIDJE7.js → appListCommands-YM22HHY5.js} +11 -10
  16. package/{authCommand-LARLQ3GC.js → authCommand-XLCNATZR.js} +5 -5
  17. package/{builtinSkillRegistry-AFPSTTAU.js → builtinSkillRegistry-HRI7DXC2.js} +4 -3
  18. package/{chatQueueReduxAdapter-KIQ3FQ62.js → chatQueueReduxAdapter-ZHUJO77G.js} +2 -2
  19. package/{chromeCommands-NKU3OWKH.js → chromeCommands-K27J4OVZ.js} +91 -20
  20. package/{chromeOpsCommands-OQDJGD4Y.js → chromeOpsCommands-IXRLN57H.js} +4 -3
  21. package/{chunk-7MUSNQ6E.js → chunk-27ONFIEY.js} +20 -2
  22. package/{chunk-OZ6V53WV.js → chunk-2EE5UD3N.js} +1 -1
  23. package/{chunk-T36EFAW7.js → chunk-2KHRSBYS.js} +3 -3
  24. package/{chunk-44QZPYLI.js → chunk-2SYTUTLI.js} +92 -20
  25. package/{chunk-OUOJE2P2.js → chunk-3AOSNKIZ.js} +5 -5
  26. package/{chunk-ZOI6KA4N.js → chunk-3T6MH737.js} +22 -20
  27. package/chunk-5J3PYNUP.js +255 -0
  28. package/{chunk-GZQNKKDG.js → chunk-6YSYZTKW.js} +1 -1
  29. package/{chunk-MXRUAINC.js → chunk-6Z5V5T6Q.js} +3 -3
  30. package/{chunk-RRMAZ2BI.js → chunk-7NANRWL4.js} +1 -1
  31. package/{chunk-OFYHCA6W.js → chunk-AATZZAZE.js} +1 -1
  32. package/{chunk-CTGZO35O.js → chunk-AQTJUKN6.js} +1 -1
  33. package/{chunk-44F6KKUE.js → chunk-BRCOB2YF.js} +3 -3
  34. package/{chunk-A5MB5RIT.js → chunk-CCOXTK3I.js} +1 -1
  35. package/{chunk-WTUVMKSQ.js → chunk-EM7HELS5.js} +2 -2
  36. package/{chunk-WC6A2Q7S.js → chunk-EMBK4B7D.js} +4 -1
  37. package/{chunk-KUPDS66Q.js → chunk-EP34KKT6.js} +8 -8
  38. package/{chunk-7LLWEG6F.js → chunk-I44MDY73.js} +3 -3
  39. package/{chunk-QDT5T7MK.js → chunk-I4OPU5TK.js} +1 -1
  40. package/{chunk-K25DK52L.js → chunk-L55HWODG.js} +21 -223
  41. package/{chunk-DID5AVGT.js → chunk-LQNRUDVN.js} +11 -10
  42. package/{chunk-PQVOC2CZ.js → chunk-M2YBIBBS.js} +1 -1
  43. package/{chunk-J5H6SUOW.js → chunk-MOFAGINP.js} +2 -2
  44. package/{chunk-L6RB42ZR.js → chunk-OJL4DA6B.js} +3 -3
  45. package/{chunk-U5QTKTZE.js → chunk-P6GMCCAT.js} +1 -1
  46. package/{chunk-GH4MH73K.js → chunk-QMJG7UFL.js} +14 -10
  47. package/{chunk-M6NK74VP.js → chunk-S5XGT6GB.js} +1 -1
  48. package/{chunk-KUWT3C2P.js → chunk-T76D3OYX.js} +1 -1
  49. package/{chunk-DOBBRISY.js → chunk-TIPZHRUE.js} +9 -9
  50. package/{chunk-AAROOKLX.js → chunk-X2QRZXZH.js} +1 -1
  51. package/{chunk-WYYO2YOL.js → chunk-XGO2LIJZ.js} +1 -1
  52. package/{chunk-VVUSRF5D.js → chunk-XPV3S4HP.js} +3 -3
  53. package/{chunk-O6OSWFZQ.js → chunk-XUWRURDF.js} +6 -0
  54. package/{chunk-NOGH7HCP.js → chunk-YFIUVDQY.js} +1 -1
  55. package/{chunk-W247GBSQ.js → chunk-YU2THNST.js} +1 -1
  56. package/{chunk-OY5IJI2N.js → chunk-YUNJN43V.js} +23 -3
  57. package/{commandRegistry-DETYXF5I.js → commandRegistry-VN3VYRTY.js} +72 -61
  58. package/{contentThunks-6QBTPLWT.js → contentThunks-GLALFCSA.js} +3 -3
  59. package/{createAgentAutomationAction-TZVIJTZ7.js → createAgentAutomationAction-AJYCFU4M.js} +3 -3
  60. package/{createDialogAction-KTDAEA42.js → createDialogAction-RHUDYILB.js} +6 -5
  61. package/{createPageAction-4RASVDAU.js → createPageAction-QNBURBCT.js} +3 -3
  62. package/{dialogCommands-GY7LRERG.js → dialogCommands-FUZOZGN2.js} +11 -10
  63. package/{dialogSlice-J24APUGG.js → dialogSlice-OXWSQS6J.js} +2 -2
  64. package/{docCreateCommands-T7KII3WP.js → docCreateCommands-TKWA2BQD.js} +10 -9
  65. package/{docDeleteCommands-SQ26EFE6.js → docDeleteCommands-BEBGKH2B.js} +11 -10
  66. package/{docReadCommands-I6NA2ZKV.js → docReadCommands-5GWHRUJF.js} +10 -9
  67. package/{docStore-SPOGE7K3.js → docStore-RMY3R4VP.js} +1 -1
  68. package/{docUpdateCommands-IG43SZ6U.js → docUpdateCommands-WTKBMMUQ.js} +10 -9
  69. package/{handleSendMessageAction-I2IN64DS.js → handleSendMessageAction-D7XLCRJJ.js} +4 -3
  70. package/index.js +4 -4
  71. package/{machineCommands-U7VABJPW.js → machineCommands-DHJHXKIL.js} +22 -21
  72. package/{machineWsRunDispatch-ZNU6LRNG.js → machineWsRunDispatch-KP636B54.js} +22 -21
  73. package/package.json +1 -1
  74. package/{providerPresetApply-7XEHTODR.js → providerPresetApply-XTEXOH7X.js} +3 -3
  75. package/{providerRegistry-GNV4FFSA.js → providerRegistry-ADYDSLKR.js} +3 -3
  76. package/{readlineWorkspace-46KDFUHN.js → readlineWorkspace-5P24E57Z.js} +27 -26
  77. package/{runAgentClientLoop-CQWLWU4W.js → runAgentClientLoop-AXFKKSVY.js} +16 -15
  78. package/{spaceCommands-TSBC5UWP.js → spaceCommands-TRABD7YR.js} +10 -9
  79. package/{streamAgentChatTurn-XD5JEJXA.js → streamAgentChatTurn-RG7NWZWY.js} +17 -16
  80. package/{tools-5NAJJTFN.js → tools-GIXG5YIO.js} +13 -12
  81. package/{tuiSummaryLlmCaller-7KLLDP22.js → tuiSummaryLlmCaller-RVWN63CP.js} +2 -2
  82. package/{updateCommands-XYMGOKF4.js → updateCommands-4EHDLF5J.js} +1 -1
  83. package/{updateDialogTitleAction-IKZPJCRA.js → updateDialogTitleAction-JXZ2K54W.js} +3 -3
@@ -21,8 +21,8 @@ import {
21
21
  resolveOpenAiCompatibleProviderConfig,
22
22
  runLocalAgentTurn,
23
23
  shouldCacheHybridRemoteRecord
24
- } from "./chunk-GH4MH73K.js";
25
- import "./chunk-U5QTKTZE.js";
24
+ } from "./chunk-QMJG7UFL.js";
25
+ import "./chunk-P6GMCCAT.js";
26
26
  import "./chunk-ZNFJWEN4.js";
27
27
  import {
28
28
  buildPlatformChatCompletionRequest,
@@ -33,7 +33,7 @@ import {
33
33
  readPlatformChatSseCompletion,
34
34
  resolvePlatformChatProviderConfig,
35
35
  shouldUsePlatformChatProvider
36
- } from "./chunk-NOGH7HCP.js";
36
+ } from "./chunk-YFIUVDQY.js";
37
37
  import "./chunk-GMZLP5DV.js";
38
38
  import {
39
39
  resolveAgentRuntimeConfigFromRecord
@@ -42,7 +42,7 @@ import "./chunk-5ZUL4CUO.js";
42
42
  import "./chunk-CQ3WA2NE.js";
43
43
  import "./chunk-2MBTWINN.js";
44
44
  import "./chunk-N7J63Q6C.js";
45
- import "./chunk-CTGZO35O.js";
45
+ import "./chunk-AQTJUKN6.js";
46
46
  import "./chunk-PUOC4YRO.js";
47
47
  import {
48
48
  buildAgentRuntimeAgentLookupKeys,
@@ -50,10 +50,10 @@ import {
50
50
  shouldFetchAgentRuntimeRecordRemotely
51
51
  } from "./chunk-RGNEEJ3Y.js";
52
52
  import "./chunk-H6A6X4EK.js";
53
- import "./chunk-M6NK74VP.js";
53
+ import "./chunk-S5XGT6GB.js";
54
54
  import {
55
55
  pickAgentRuntimeInferenceOptions
56
- } from "./chunk-7MUSNQ6E.js";
56
+ } from "./chunk-27ONFIEY.js";
57
57
  import "./chunk-RVX32KGQ.js";
58
58
  import "./chunk-F64B2W3R.js";
59
59
  import "./chunk-PSCNXBYA.js";
@@ -74,7 +74,8 @@ import "./chunk-UAD2WT54.js";
74
74
  import "./chunk-ZWQUWF6W.js";
75
75
  import "./chunk-DVINR3PL.js";
76
76
  import "./chunk-2GRGFCF6.js";
77
- import "./chunk-O6OSWFZQ.js";
77
+ import "./chunk-XUWRURDF.js";
78
+ import "./chunk-5J3PYNUP.js";
78
79
  import "./chunk-CYSYR67N.js";
79
80
  import "./chunk-Y3PMXGLH.js";
80
81
  import "./chunk-KX6YBIHG.js";
@@ -7,7 +7,7 @@ import {
7
7
  slice,
8
8
  streamAgentChatTurn,
9
9
  updateAgent
10
- } from "./chunk-MXRUAINC.js";
10
+ } from "./chunk-6Z5V5T6Q.js";
11
11
  import "./chunk-L36OWPP3.js";
12
12
  import "./chunk-ZWQUWF6W.js";
13
13
  import "./chunk-KX6YBIHG.js";
@@ -4,31 +4,31 @@ import {
4
4
  pickDefined,
5
5
  printCliError,
6
6
  resolveCliContext
7
- } from "./chunk-PQVOC2CZ.js";
7
+ } from "./chunk-M2YBIBBS.js";
8
8
  import {
9
9
  hasFlag,
10
10
  hasHelpArg
11
- } from "./chunk-OFYHCA6W.js";
12
- import "./chunk-RRMAZ2BI.js";
11
+ } from "./chunk-AATZZAZE.js";
12
+ import "./chunk-7NANRWL4.js";
13
13
  import "./chunk-OTGFTBLI.js";
14
14
  import "./chunk-SV5IJK6K.js";
15
15
  import "./chunk-VF4K2QE6.js";
16
- import "./chunk-GH4MH73K.js";
17
- import "./chunk-U5QTKTZE.js";
16
+ import "./chunk-QMJG7UFL.js";
17
+ import "./chunk-P6GMCCAT.js";
18
18
  import "./chunk-ZNFJWEN4.js";
19
- import "./chunk-NOGH7HCP.js";
19
+ import "./chunk-YFIUVDQY.js";
20
20
  import "./chunk-GMZLP5DV.js";
21
21
  import "./chunk-I4A26N52.js";
22
22
  import "./chunk-5ZUL4CUO.js";
23
23
  import "./chunk-CQ3WA2NE.js";
24
24
  import "./chunk-2MBTWINN.js";
25
25
  import "./chunk-N7J63Q6C.js";
26
- import "./chunk-CTGZO35O.js";
26
+ import "./chunk-AQTJUKN6.js";
27
27
  import "./chunk-PUOC4YRO.js";
28
28
  import "./chunk-RGNEEJ3Y.js";
29
29
  import "./chunk-H6A6X4EK.js";
30
- import "./chunk-M6NK74VP.js";
31
- import "./chunk-7MUSNQ6E.js";
30
+ import "./chunk-S5XGT6GB.js";
31
+ import "./chunk-27ONFIEY.js";
32
32
  import "./chunk-RVX32KGQ.js";
33
33
  import "./chunk-F64B2W3R.js";
34
34
  import "./chunk-PSCNXBYA.js";
@@ -44,7 +44,8 @@ import "./chunk-UAD2WT54.js";
44
44
  import "./chunk-ZWQUWF6W.js";
45
45
  import "./chunk-DVINR3PL.js";
46
46
  import "./chunk-2GRGFCF6.js";
47
- import "./chunk-O6OSWFZQ.js";
47
+ import "./chunk-XUWRURDF.js";
48
+ import "./chunk-5J3PYNUP.js";
48
49
  import {
49
50
  readOption
50
51
  } from "./chunk-A7GB5UGH.js";
@@ -5,31 +5,31 @@ import {
5
5
  pickDefined,
6
6
  printCliError,
7
7
  resolveCliContext
8
- } from "./chunk-PQVOC2CZ.js";
8
+ } from "./chunk-M2YBIBBS.js";
9
9
  import {
10
10
  hasFlag,
11
11
  hasHelpArg
12
- } from "./chunk-OFYHCA6W.js";
13
- import "./chunk-RRMAZ2BI.js";
12
+ } from "./chunk-AATZZAZE.js";
13
+ import "./chunk-7NANRWL4.js";
14
14
  import "./chunk-OTGFTBLI.js";
15
15
  import "./chunk-SV5IJK6K.js";
16
16
  import "./chunk-VF4K2QE6.js";
17
- import "./chunk-GH4MH73K.js";
18
- import "./chunk-U5QTKTZE.js";
17
+ import "./chunk-QMJG7UFL.js";
18
+ import "./chunk-P6GMCCAT.js";
19
19
  import "./chunk-ZNFJWEN4.js";
20
- import "./chunk-NOGH7HCP.js";
20
+ import "./chunk-YFIUVDQY.js";
21
21
  import "./chunk-GMZLP5DV.js";
22
22
  import "./chunk-I4A26N52.js";
23
23
  import "./chunk-5ZUL4CUO.js";
24
24
  import "./chunk-CQ3WA2NE.js";
25
25
  import "./chunk-2MBTWINN.js";
26
26
  import "./chunk-N7J63Q6C.js";
27
- import "./chunk-CTGZO35O.js";
27
+ import "./chunk-AQTJUKN6.js";
28
28
  import "./chunk-PUOC4YRO.js";
29
29
  import "./chunk-RGNEEJ3Y.js";
30
30
  import "./chunk-H6A6X4EK.js";
31
- import "./chunk-M6NK74VP.js";
32
- import "./chunk-7MUSNQ6E.js";
31
+ import "./chunk-S5XGT6GB.js";
32
+ import "./chunk-27ONFIEY.js";
33
33
  import "./chunk-RVX32KGQ.js";
34
34
  import "./chunk-F64B2W3R.js";
35
35
  import "./chunk-PSCNXBYA.js";
@@ -45,7 +45,8 @@ import "./chunk-UAD2WT54.js";
45
45
  import "./chunk-ZWQUWF6W.js";
46
46
  import "./chunk-DVINR3PL.js";
47
47
  import "./chunk-2GRGFCF6.js";
48
- import "./chunk-O6OSWFZQ.js";
48
+ import "./chunk-XUWRURDF.js";
49
+ import "./chunk-5J3PYNUP.js";
49
50
  import {
50
51
  readOption
51
52
  } from "./chunk-A7GB5UGH.js";
@@ -4,31 +4,31 @@ import {
4
4
  outputResult,
5
5
  printCliError,
6
6
  resolveCliContext
7
- } from "./chunk-PQVOC2CZ.js";
7
+ } from "./chunk-M2YBIBBS.js";
8
8
  import {
9
9
  hasFlag,
10
10
  hasHelpArg
11
- } from "./chunk-OFYHCA6W.js";
12
- import "./chunk-RRMAZ2BI.js";
11
+ } from "./chunk-AATZZAZE.js";
12
+ import "./chunk-7NANRWL4.js";
13
13
  import "./chunk-OTGFTBLI.js";
14
14
  import "./chunk-SV5IJK6K.js";
15
15
  import "./chunk-VF4K2QE6.js";
16
- import "./chunk-GH4MH73K.js";
17
- import "./chunk-U5QTKTZE.js";
16
+ import "./chunk-QMJG7UFL.js";
17
+ import "./chunk-P6GMCCAT.js";
18
18
  import "./chunk-ZNFJWEN4.js";
19
- import "./chunk-NOGH7HCP.js";
19
+ import "./chunk-YFIUVDQY.js";
20
20
  import "./chunk-GMZLP5DV.js";
21
21
  import "./chunk-I4A26N52.js";
22
22
  import "./chunk-5ZUL4CUO.js";
23
23
  import "./chunk-CQ3WA2NE.js";
24
24
  import "./chunk-2MBTWINN.js";
25
25
  import "./chunk-N7J63Q6C.js";
26
- import "./chunk-CTGZO35O.js";
26
+ import "./chunk-AQTJUKN6.js";
27
27
  import "./chunk-PUOC4YRO.js";
28
28
  import "./chunk-RGNEEJ3Y.js";
29
29
  import "./chunk-H6A6X4EK.js";
30
- import "./chunk-M6NK74VP.js";
31
- import "./chunk-7MUSNQ6E.js";
30
+ import "./chunk-S5XGT6GB.js";
31
+ import "./chunk-27ONFIEY.js";
32
32
  import "./chunk-RVX32KGQ.js";
33
33
  import "./chunk-F64B2W3R.js";
34
34
  import "./chunk-PSCNXBYA.js";
@@ -44,7 +44,8 @@ import "./chunk-UAD2WT54.js";
44
44
  import "./chunk-ZWQUWF6W.js";
45
45
  import "./chunk-DVINR3PL.js";
46
46
  import "./chunk-2GRGFCF6.js";
47
- import "./chunk-O6OSWFZQ.js";
47
+ import "./chunk-XUWRURDF.js";
48
+ import "./chunk-5J3PYNUP.js";
48
49
  import {
49
50
  readOption
50
51
  } from "./chunk-A7GB5UGH.js";
@@ -5,31 +5,31 @@ import {
5
5
  pickDefined,
6
6
  printCliError,
7
7
  resolveCliContext
8
- } from "./chunk-PQVOC2CZ.js";
8
+ } from "./chunk-M2YBIBBS.js";
9
9
  import {
10
10
  hasFlag,
11
11
  hasHelpArg
12
- } from "./chunk-OFYHCA6W.js";
13
- import "./chunk-RRMAZ2BI.js";
12
+ } from "./chunk-AATZZAZE.js";
13
+ import "./chunk-7NANRWL4.js";
14
14
  import "./chunk-OTGFTBLI.js";
15
15
  import "./chunk-SV5IJK6K.js";
16
16
  import "./chunk-VF4K2QE6.js";
17
- import "./chunk-GH4MH73K.js";
18
- import "./chunk-U5QTKTZE.js";
17
+ import "./chunk-QMJG7UFL.js";
18
+ import "./chunk-P6GMCCAT.js";
19
19
  import "./chunk-ZNFJWEN4.js";
20
- import "./chunk-NOGH7HCP.js";
20
+ import "./chunk-YFIUVDQY.js";
21
21
  import "./chunk-GMZLP5DV.js";
22
22
  import "./chunk-I4A26N52.js";
23
23
  import "./chunk-5ZUL4CUO.js";
24
24
  import "./chunk-CQ3WA2NE.js";
25
25
  import "./chunk-2MBTWINN.js";
26
26
  import "./chunk-N7J63Q6C.js";
27
- import "./chunk-CTGZO35O.js";
27
+ import "./chunk-AQTJUKN6.js";
28
28
  import "./chunk-PUOC4YRO.js";
29
29
  import "./chunk-RGNEEJ3Y.js";
30
30
  import "./chunk-H6A6X4EK.js";
31
- import "./chunk-M6NK74VP.js";
32
- import "./chunk-7MUSNQ6E.js";
31
+ import "./chunk-S5XGT6GB.js";
32
+ import "./chunk-27ONFIEY.js";
33
33
  import "./chunk-RVX32KGQ.js";
34
34
  import "./chunk-F64B2W3R.js";
35
35
  import "./chunk-PSCNXBYA.js";
@@ -45,7 +45,8 @@ import "./chunk-UAD2WT54.js";
45
45
  import "./chunk-ZWQUWF6W.js";
46
46
  import "./chunk-DVINR3PL.js";
47
47
  import "./chunk-2GRGFCF6.js";
48
- import "./chunk-O6OSWFZQ.js";
48
+ import "./chunk-XUWRURDF.js";
49
+ import "./chunk-5J3PYNUP.js";
49
50
  import {
50
51
  readOption
51
52
  } from "./chunk-A7GB5UGH.js";
@@ -5,31 +5,31 @@ import {
5
5
  pickDefined,
6
6
  printCliError,
7
7
  resolveCliContext
8
- } from "./chunk-PQVOC2CZ.js";
8
+ } from "./chunk-M2YBIBBS.js";
9
9
  import {
10
10
  hasFlag,
11
11
  hasHelpArg
12
- } from "./chunk-OFYHCA6W.js";
13
- import "./chunk-RRMAZ2BI.js";
12
+ } from "./chunk-AATZZAZE.js";
13
+ import "./chunk-7NANRWL4.js";
14
14
  import "./chunk-OTGFTBLI.js";
15
15
  import "./chunk-SV5IJK6K.js";
16
16
  import "./chunk-VF4K2QE6.js";
17
- import "./chunk-GH4MH73K.js";
18
- import "./chunk-U5QTKTZE.js";
17
+ import "./chunk-QMJG7UFL.js";
18
+ import "./chunk-P6GMCCAT.js";
19
19
  import "./chunk-ZNFJWEN4.js";
20
- import "./chunk-NOGH7HCP.js";
20
+ import "./chunk-YFIUVDQY.js";
21
21
  import "./chunk-GMZLP5DV.js";
22
22
  import "./chunk-I4A26N52.js";
23
23
  import "./chunk-5ZUL4CUO.js";
24
24
  import "./chunk-CQ3WA2NE.js";
25
25
  import "./chunk-2MBTWINN.js";
26
26
  import "./chunk-N7J63Q6C.js";
27
- import "./chunk-CTGZO35O.js";
27
+ import "./chunk-AQTJUKN6.js";
28
28
  import "./chunk-PUOC4YRO.js";
29
29
  import "./chunk-RGNEEJ3Y.js";
30
30
  import "./chunk-H6A6X4EK.js";
31
- import "./chunk-M6NK74VP.js";
32
- import "./chunk-7MUSNQ6E.js";
31
+ import "./chunk-S5XGT6GB.js";
32
+ import "./chunk-27ONFIEY.js";
33
33
  import "./chunk-RVX32KGQ.js";
34
34
  import "./chunk-F64B2W3R.js";
35
35
  import "./chunk-PSCNXBYA.js";
@@ -45,7 +45,8 @@ import "./chunk-UAD2WT54.js";
45
45
  import "./chunk-ZWQUWF6W.js";
46
46
  import "./chunk-DVINR3PL.js";
47
47
  import "./chunk-2GRGFCF6.js";
48
- import "./chunk-O6OSWFZQ.js";
48
+ import "./chunk-XUWRURDF.js";
49
+ import "./chunk-5J3PYNUP.js";
49
50
  import {
50
51
  readOption
51
52
  } from "./chunk-A7GB5UGH.js";
@@ -3,7 +3,7 @@ import {
3
3
  parseFlagWithOptionalValue,
4
4
  runCloudflareOAuthLogin,
5
5
  upsertEnvVariable
6
- } from "./chunk-AAROOKLX.js";
6
+ } from "./chunk-X2QRZXZH.js";
7
7
  import {
8
8
  ANTHROPIC_OAUTH_AUTHORIZE_URL,
9
9
  ANTHROPIC_OAUTH_CALLBACK_PORT,
@@ -45,7 +45,7 @@ import {
45
45
  startCallbackServer,
46
46
  validateXAIEndpoint,
47
47
  xaiOAuthDiscovery
48
- } from "./chunk-QDT5T7MK.js";
48
+ } from "./chunk-I4OPU5TK.js";
49
49
  import {
50
50
  defaultOpenBrowser
51
51
  } from "./chunk-VPFEPRME.js";
@@ -62,11 +62,11 @@ import {
62
62
  detectLocalDevinCredentials,
63
63
  extractDevinToken,
64
64
  fetchAntigravityCloudCodeCompletion
65
- } from "./chunk-U5QTKTZE.js";
65
+ } from "./chunk-P6GMCCAT.js";
66
66
  import "./chunk-GMZLP5DV.js";
67
67
  import "./chunk-5ZUL4CUO.js";
68
- import "./chunk-M6NK74VP.js";
69
- import "./chunk-7MUSNQ6E.js";
68
+ import "./chunk-S5XGT6GB.js";
69
+ import "./chunk-27ONFIEY.js";
70
70
  import "./chunk-7KVZ5LDQ.js";
71
71
  import {
72
72
  toErrorMessage
@@ -7,11 +7,12 @@ import {
7
7
  resolveBuiltinSkillEntry,
8
8
  resolveBuiltinSkillPage,
9
9
  resolveBuiltinSkillSlug
10
- } from "./chunk-J5H6SUOW.js";
11
- import "./chunk-WC6A2Q7S.js";
10
+ } from "./chunk-MOFAGINP.js";
11
+ import "./chunk-EMBK4B7D.js";
12
12
  import "./chunk-AUDNYVRC.js";
13
13
  import "./chunk-KHCLMKZZ.js";
14
- import "./chunk-O6OSWFZQ.js";
14
+ import "./chunk-XUWRURDF.js";
15
+ import "./chunk-5J3PYNUP.js";
15
16
  import "./chunk-QDSINZM3.js";
16
17
  import "./chunk-3AH7LNUB.js";
17
18
  import "./chunk-WWC7I6TA.js";
@@ -4,11 +4,11 @@ import {
4
4
  } from "./chunk-YPREESF4.js";
5
5
  import {
6
6
  handleSendMessage
7
- } from "./chunk-KUPDS66Q.js";
7
+ } from "./chunk-EP34KKT6.js";
8
8
  import "./chunk-MC4XLIJ7.js";
9
9
  import "./chunk-YYLHWIW6.js";
10
10
  import "./chunk-6O4IK4V2.js";
11
- import "./chunk-MXRUAINC.js";
11
+ import "./chunk-6Z5V5T6Q.js";
12
12
  import "./chunk-D76D3RTR.js";
13
13
  import "./chunk-5RGU3J7P.js";
14
14
  import "./chunk-M76ECQRD.js";
@@ -1,9 +1,11 @@
1
1
  import {
2
2
  NOLO_CHROME_CONNECTOR_EXTENSION_ID,
3
3
  NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION,
4
+ NOLO_CONNECTOR_EXTENSION_IDS,
5
+ NOLO_FIREFOX_CONNECTOR_EXTENSION_ID,
4
6
  REQUIRED_CHROME_CONNECTOR_FEATURES,
5
7
  createChromeConnectorClient
6
- } from "./chunk-OY5IJI2N.js";
8
+ } from "./chunk-YUNJN43V.js";
7
9
  import {
8
10
  toErrorMessage
9
11
  } from "./chunk-HNMXYYJR.js";
@@ -144,6 +146,21 @@ var CLI_CONNECTOR_ROOT_CANDIDATES = [
144
146
  var FULL_SUPPORT_CHROME_FEATURES = [
145
147
  ...new Set(Object.values(REQUIRED_CHROME_CONNECTOR_FEATURES).flat())
146
148
  ].sort();
149
+ var FIREFOX_UNAVAILABLE_FEATURES = ["browser_debug", "file_upload"];
150
+ function resolveConnectorBrowser(extensionId) {
151
+ if (!extensionId) return null;
152
+ if (extensionId === NOLO_FIREFOX_CONNECTOR_EXTENSION_ID) return "firefox";
153
+ if (NOLO_CONNECTOR_EXTENSION_IDS.includes(extensionId)) return "chrome";
154
+ return null;
155
+ }
156
+ function expectedFeaturesForBrowser(browser) {
157
+ return browser === "firefox" ? FULL_SUPPORT_CHROME_FEATURES.filter(
158
+ (feature) => !FIREFOX_UNAVAILABLE_FEATURES.includes(feature)
159
+ ) : FULL_SUPPORT_CHROME_FEATURES;
160
+ }
161
+ function browserLabel(browser) {
162
+ return browser === "firefox" ? "Firefox" : browser === "chrome" ? "Chrome" : "browser";
163
+ }
147
164
  function pickCliConnectorRoot(candidates) {
148
165
  for (const candidate of candidates) {
149
166
  if (existsSync2(resolve2(candidate, "extension", "manifest.json"))) return candidate;
@@ -258,9 +275,13 @@ async function probeConnectorRpc(requestChrome) {
258
275
  }
259
276
  }
260
277
  function resolveStatusNextStep(report) {
278
+ const targetBrowser = report.rpc.browser ?? report.nativeHost.browser;
279
+ const installCmd = targetBrowser === "firefox" ? "nolo chrome install --browser firefox" : "nolo chrome install";
280
+ const connectedLabel = browserLabel(targetBrowser);
281
+ const browserText = connectedLabel === "browser" ? "the browser" : connectedLabel;
261
282
  if (!report.connectorRoot) {
262
283
  if (report.rpc.online && report.rpc.protocolVersion === report.rpc.expectedProtocolVersion) {
263
- return "Chrome connector is online, but this CLI cannot see a connector checkout, so `nolo chrome install` / manifest checks are unavailable here. Set NOLO_CHROME_CONNECTOR_ROOT (or run the CLI from a repo checkout) to enable them.";
284
+ return "The Nolo Browser Connector is online, but this CLI cannot see a connector checkout, so `nolo chrome install` / manifest checks are unavailable here. Set NOLO_CHROME_CONNECTOR_ROOT (or run the CLI from a repo checkout) to enable them.";
264
285
  }
265
286
  return "Run the CLI from a repo checkout that contains packages/desktop-chrome-connector, or set NOLO_CHROME_CONNECTOR_ROOT to one, then rerun `nolo chrome status`.";
266
287
  }
@@ -268,20 +289,20 @@ function resolveStatusNextStep(report) {
268
289
  return `This platform has no supported native messaging host install (Chrome looks the host up through a registry value on Windows), so non-interactive install is not available: ${report.nativeHost.platformError ?? "unsupported platform"}`;
269
290
  }
270
291
  if (!report.nativeHost.installed || !report.token.present) {
271
- return "nolo chrome install";
292
+ return installCmd;
272
293
  }
273
294
  if (!report.nativeHost.wrapperPathMatches || !report.nativeHost.allowedOriginMatches) {
274
295
  const installedWrapperPath = report.nativeHost.installedWrapperPath;
275
296
  if (!report.nativeHost.wrapperPathMatches && installedWrapperPath && installedWrapperPath !== report.nativeHost.wrapperPath && existsSync2(installedWrapperPath)) {
276
- return `Native host is installed for a different checkout (${installedWrapperPath}); this CLI is looking at ${report.connectorRoot}. Run \`nolo chrome status\` from the checkout that installed it, or run \`nolo chrome install\` from here only if Chrome should switch to this one.`;
297
+ return `Native host is installed for a different checkout (${installedWrapperPath}); this CLI is looking at ${report.connectorRoot}. Run \`nolo chrome status\` from the checkout that installed it, or run \`${installCmd}\` from here only if ${browserText} should switch to this one.`;
277
298
  }
278
- return "nolo chrome install (the installed manifest does not point at this checkout's wrapper / extension id, which Chrome silently ignores)";
299
+ return `${installCmd} (the installed manifest does not point at this checkout's wrapper / extension id, which ${browserText} silently ignores)`;
279
300
  }
280
301
  if (!report.rpc.online) {
281
- return `Load the unpacked extension from ${report.extension.path} in chrome://extensions (Developer mode), or install the Nolo Browser Connector from https://nolo.chat/downloads (Chrome or Firefox), then rerun \`nolo chrome status\`.`;
302
+ return `Load the unpacked extension from ${report.extension.path} in chrome://extensions (Chrome) or about:debugging#/runtime/this-firefox (Firefox), or install the Nolo Browser Connector from https://nolo.chat/downloads, then rerun \`nolo chrome status\`.`;
282
303
  }
283
- if (report.rpc.extensionId && report.rpc.extensionId !== report.extension.expectedId) {
284
- return `The connected extension (${report.rpc.extensionId}) is not the connector at ${report.extension.path}; remove the other copy and rerun \`nolo chrome status\`.`;
304
+ if (report.rpc.extensionId && report.rpc.browser === null) {
305
+ return `The connected extension (${report.rpc.extensionId}) is not a recognized Nolo Browser Connector build; reload it (\`nolo chrome reload\`) or remove the other copy, then rerun \`nolo chrome status\`.`;
285
306
  }
286
307
  if (report.rpc.protocolVersion !== report.rpc.expectedProtocolVersion) {
287
308
  return `nolo chrome reload (the running extension does not speak protocol ${report.rpc.expectedProtocolVersion}; a reload restarts the worker with the files on disk)`;
@@ -289,7 +310,7 @@ function resolveStatusNextStep(report) {
289
310
  if (report.rpc.missingFeatures.length > 0) {
290
311
  return `nolo chrome reload (the running extension is missing ${report.rpc.missingFeatures.join(", ")}); if that persists, the checkout's extension is older than the CLI expects.`;
291
312
  }
292
- return "Chrome connector is online: chrome_* tools execute against this Chrome profile.";
313
+ return `The Nolo Browser Connector is online (${connectedLabel}): connector tools execute against this ${connectedLabel} profile.`;
293
314
  }
294
315
  async function buildChromeConnectorStatus(args = {}) {
295
316
  const env = args.env ?? process.env;
@@ -320,7 +341,8 @@ async function buildChromeConnectorStatus(args = {}) {
320
341
  wrapperPath: null,
321
342
  installedWrapperPath: null,
322
343
  wrapperPathMatches: false,
323
- allowedOriginMatches: false
344
+ allowedOriginMatches: false,
345
+ browser: null
324
346
  },
325
347
  token: { path: null, present: false },
326
348
  rpc: {
@@ -328,6 +350,7 @@ async function buildChromeConnectorStatus(args = {}) {
328
350
  extensionId: null,
329
351
  protocolVersion: null,
330
352
  features: [],
353
+ browser: null,
331
354
  missingFeatures: [...FULL_SUPPORT_CHROME_FEATURES],
332
355
  expectedProtocolVersion: NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION
333
356
  },
@@ -339,19 +362,48 @@ async function buildChromeConnectorStatus(args = {}) {
339
362
  report.rpc.extensionId = probe.extensionId;
340
363
  report.rpc.protocolVersion = probe.protocolVersion;
341
364
  report.rpc.features = probe.features;
342
- report.rpc.missingFeatures = FULL_SUPPORT_CHROME_FEATURES.filter(
365
+ report.rpc.browser = probe.online ? resolveConnectorBrowser(probe.extensionId) ?? (probe.extensionId === expectedId ? "chrome" : null) : null;
366
+ report.rpc.missingFeatures = expectedFeaturesForBrowser(report.rpc.browser).filter(
343
367
  (feature) => !probe.features.includes(feature)
344
368
  );
345
369
  if (!probe.online) report.rpc.error = probe.error;
346
370
  if (!connectorRoot) {
347
371
  if (rootError) report.connectorRootError = rootError;
348
- report.ok = report.rpc.online && probe.extensionId === expectedId && probe.protocolVersion === NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION && report.rpc.missingFeatures.length === 0;
372
+ report.nativeHost.browser = report.rpc.browser;
373
+ report.ok = report.rpc.online && report.rpc.browser !== null && probe.protocolVersion === NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION && report.rpc.missingFeatures.length === 0;
349
374
  report.nextStep = resolveStatusNextStep(report);
350
375
  return report;
351
376
  }
377
+ let manifestBrowser = report.rpc.browser === "firefox" ? "firefox" : "chrome";
378
+ if (!report.rpc.browser) {
379
+ try {
380
+ const chromeManifestPath = resolveNativeHostInstallPaths({
381
+ home,
382
+ connectorRoot,
383
+ platform,
384
+ browser: "chrome"
385
+ }).nativeManifestPath;
386
+ const firefoxManifestPath = resolveNativeHostInstallPaths({
387
+ home,
388
+ connectorRoot,
389
+ platform,
390
+ browser: "firefox"
391
+ }).nativeManifestPath;
392
+ if (!existsSync2(chromeManifestPath) && existsSync2(firefoxManifestPath)) {
393
+ manifestBrowser = "firefox";
394
+ }
395
+ } catch {
396
+ }
397
+ }
398
+ report.nativeHost.browser = manifestBrowser;
352
399
  let paths = null;
353
400
  try {
354
- paths = resolveNativeHostInstallPaths({ home, connectorRoot, platform });
401
+ paths = resolveNativeHostInstallPaths({
402
+ home,
403
+ connectorRoot,
404
+ platform,
405
+ browser: manifestBrowser
406
+ });
355
407
  } catch (error) {
356
408
  report.nativeHost.supported = false;
357
409
  report.nativeHost.platformError = toErrorMessage(error);
@@ -365,8 +417,7 @@ async function buildChromeConnectorStatus(args = {}) {
365
417
  report.nativeHost.installed = installedManifest !== null;
366
418
  report.nativeHost.installedWrapperPath = typeof installedManifest?.path === "string" ? installedManifest.path : null;
367
419
  report.nativeHost.wrapperPathMatches = report.nativeHost.installedWrapperPath === paths.wrapperPath;
368
- const expectedOrigin = `chrome-extension://${expectedId}/`;
369
- report.nativeHost.allowedOriginMatches = Array.isArray(installedManifest?.allowed_origins) && installedManifest.allowed_origins.includes(expectedOrigin);
420
+ report.nativeHost.allowedOriginMatches = manifestBrowser === "firefox" ? Array.isArray(installedManifest?.allowed_extensions) && installedManifest.allowed_extensions.includes(NOLO_FIREFOX_CONNECTOR_EXTENSION_ID) : Array.isArray(installedManifest?.allowed_origins) && installedManifest.allowed_origins.includes(`chrome-extension://${expectedId}/`);
370
421
  if (existsSync2(paths.tokenPath)) {
371
422
  try {
372
423
  report.token.present = readFileSync2(paths.tokenPath, "utf8").trim().length > 0;
@@ -374,7 +425,7 @@ async function buildChromeConnectorStatus(args = {}) {
374
425
  report.token.present = false;
375
426
  }
376
427
  }
377
- report.ok = report.nativeHost.supported && report.nativeHost.installed && report.nativeHost.wrapperPathMatches && report.nativeHost.allowedOriginMatches && report.token.present && probe.online && probe.extensionId === expectedId && probe.protocolVersion === NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION && report.rpc.missingFeatures.length === 0;
428
+ report.ok = report.nativeHost.supported && report.nativeHost.installed && report.nativeHost.wrapperPathMatches && report.nativeHost.allowedOriginMatches && report.token.present && probe.online && report.rpc.browser !== null && probe.protocolVersion === NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION && report.rpc.missingFeatures.length === 0;
378
429
  report.nextStep = resolveStatusNextStep(report);
379
430
  return report;
380
431
  }
@@ -382,7 +433,7 @@ function yesNo(value) {
382
433
  return value ? "ok" : "mismatch";
383
434
  }
384
435
  function formatChromeConnectorStatus(report) {
385
- const lines = ["Nolo Chrome connector"];
436
+ const lines = ["Nolo Browser Connector"];
386
437
  lines.push(
387
438
  ` connector source : ${report.connectorRoot ?? "(not found)"}`
388
439
  );
@@ -402,7 +453,7 @@ function formatChromeConnectorStatus(report) {
402
453
  const rpc = report.rpc;
403
454
  if (rpc.online) {
404
455
  lines.push(
405
- ` RPC : online extension ${rpc.extensionId ?? "unknown"} protocolVersion ${rpc.protocolVersion ?? "unknown"} features ${rpc.features.length > 0 ? rpc.features.join(", ") : "(none)"}`
456
+ ` RPC : online browser ${rpc.browser ?? "unrecognized"} extension ${rpc.extensionId ?? "unknown"} protocolVersion ${rpc.protocolVersion ?? "unknown"} features ${rpc.features.length > 0 ? rpc.features.join(", ") : "(none)"}`
406
457
  );
407
458
  } else {
408
459
  lines.push(
@@ -431,9 +482,25 @@ async function runChromeStatusCommand(args, deps = {}) {
431
482
  }
432
483
  return report.ok ? 0 : 1;
433
484
  }
485
+ function readBrowserOption(args) {
486
+ const equalsForm = args.find((arg) => arg.startsWith("--browser="));
487
+ const index = args.indexOf("--browser");
488
+ const raw = equalsForm !== void 0 ? equalsForm.slice("--browser=".length) : index >= 0 ? args[index + 1] : void 0;
489
+ if (raw === void 0) return "chrome";
490
+ const value = raw.trim();
491
+ if (value === "chrome" || value === "firefox") return value;
492
+ return null;
493
+ }
434
494
  async function runChromeInstallCommand(args, deps = {}) {
435
495
  const env = deps.env ?? process.env;
436
496
  const output = deps.output ?? process.stdout;
497
+ const browser = readBrowserOption(args);
498
+ if (browser === null) {
499
+ output.write(
500
+ '[nolo] Chrome native host install failed: --browser must be "chrome" or "firefox".\n'
501
+ );
502
+ return 1;
503
+ }
437
504
  const install = deps.installNativeHost ?? installNativeHostManifest;
438
505
  let connectorRoot;
439
506
  try {
@@ -457,6 +524,7 @@ async function runChromeInstallCommand(args, deps = {}) {
457
524
  result = install({
458
525
  home: deps.home ?? env.HOME ?? "",
459
526
  connectorRoot,
527
+ browser,
460
528
  ...deps.platform ? { platform: deps.platform } : {},
461
529
  ...deps.nodePath ? { nodePath: deps.nodePath } : {}
462
530
  });
@@ -471,12 +539,12 @@ async function runChromeInstallCommand(args, deps = {}) {
471
539
  } else {
472
540
  output.write(
473
541
  [
474
- "Nolo Chrome connector native host installed.",
542
+ `Nolo Browser Connector native host installed (${browser}).`,
475
543
  ` manifest : ${result.nativeManifestPath}`,
476
544
  ` wrapper : ${result.wrapperPath} -> ${result.nodePath}`,
477
545
  ` token : ${result.tokenPath} (an existing token is kept, so reruns are idempotent)`,
478
546
  ` extension: ${result.extensionId}`,
479
- `Next step: load the unpacked extension from ${resolve2(connectorRoot, "extension")} in chrome://extensions (Developer mode), or install the Nolo Browser Connector from https://nolo.chat/downloads (Chrome or Firefox), then run \`nolo chrome status\`.`,
547
+ `Next step: load the unpacked extension from ${resolve2(connectorRoot, "extension")} in ` + (browser === "firefox" ? "about:debugging#/runtime/this-firefox, or install the signed Nolo Browser Connector add-on from https://nolo.chat/downloads, then run `nolo chrome status`." : "chrome://extensions (Developer mode), or install the Nolo Browser Connector from https://nolo.chat/downloads (Chrome or Firefox), then run `nolo chrome status`."),
480
548
  ""
481
549
  ].join("\n")
482
550
  );
@@ -513,11 +581,14 @@ The connector service worker restarts within ~1s; verify with \`nolo chrome stat
513
581
  }
514
582
  export {
515
583
  CLI_CONNECTOR_ROOT_CANDIDATES,
584
+ FIREFOX_UNAVAILABLE_FEATURES,
516
585
  FULL_SUPPORT_CHROME_FEATURES,
517
586
  buildChromeConnectorStatus,
518
587
  detectWorktreeCheckout,
588
+ expectedFeaturesForBrowser,
519
589
  formatChromeConnectorStatus,
520
590
  resolveCliConnectorRoot,
591
+ resolveConnectorBrowser,
521
592
  runChromeInstallCommand,
522
593
  runChromeReloadCommand,
523
594
  runChromeStatusCommand