nolo-cli 0.8.0-alpha.2 → 0.8.0-alpha.21

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 (188) hide show
  1. package/README.md +1 -1
  2. package/_executeModel-42U3VOVZ.js +205 -0
  3. package/action-TLI3V62L.js +28 -0
  4. package/addContentAction-57RSIIMR.js +26 -0
  5. package/addDialogAgentAction-G3VWEA6E.js +68 -0
  6. package/agentDeleteCommand-5DD2IM3J.js +327 -0
  7. package/agentEmailCommands-6FACJBU4.js +628 -0
  8. package/agentListCommands-I6KZYCIG.js +223 -0
  9. package/agentMachineCommands-VKLIGMZA.js +425 -0
  10. package/agentPullCommand-O2MTUAFR.js +122 -0
  11. package/agentRecordCommands-7TZICYDT.js +96 -0
  12. package/agentRunCommand-L4OM23KV.js +114 -0
  13. package/agentRunControl-K4VKNEHF.js +57 -0
  14. package/agentRuntimeLocal-ZYEIPTY4.js +104 -0
  15. package/agentSlice-BX7GXSNO.js +42 -0
  16. package/authCommand-EB5JSOX5.js +581 -0
  17. package/authCommands-XPEHTKSM.js +35 -0
  18. package/chunk-25LCXTML.js +175 -0
  19. package/chunk-2ECQG4YX.js +22296 -0
  20. package/chunk-2FTTDCD4.js +675 -0
  21. package/chunk-2JCXITPK.js +1078 -0
  22. package/chunk-3ASDTTEI.js +1774 -0
  23. package/chunk-3EUW3WEO.js +8 -0
  24. package/chunk-3LY4F7SV.js +9293 -0
  25. package/chunk-4CQLVGRV.js +50 -0
  26. package/chunk-4IJYA27C.js +342 -0
  27. package/chunk-4O3CARJ4.js +231 -0
  28. package/chunk-4QEWT7KD.js +933 -0
  29. package/chunk-4SN6J65J.js +38 -0
  30. package/chunk-4VNS5WPM.js +42 -0
  31. package/chunk-4XENYTF5.js +222 -0
  32. package/chunk-4ZDM73SD.js +34 -0
  33. package/chunk-5CS33IBL.js +301 -0
  34. package/chunk-5EFXE3O7.js +138 -0
  35. package/chunk-5KLGBAAR.js +386 -0
  36. package/chunk-5MIDPSSK.js +206 -0
  37. package/chunk-5MMAK75Q.js +15 -0
  38. package/chunk-63W5N6P3.js +150 -0
  39. package/chunk-6HYVJV7B.js +102 -0
  40. package/chunk-6KHNO3SK.js +1948 -0
  41. package/chunk-6WD3OOJS.js +20 -0
  42. package/chunk-7DAJ4AI4.js +191 -0
  43. package/chunk-7GNGZRLZ.js +1939 -0
  44. package/chunk-7KCUSYT2.js +354 -0
  45. package/chunk-7U44LYTR.js +238 -0
  46. package/chunk-AFON4QUU.js +112 -0
  47. package/chunk-AGFH73SK.js +239 -0
  48. package/chunk-AL2KDGR2.js +27339 -0
  49. package/chunk-AS4PVWA4.js +221 -0
  50. package/chunk-ATNTHIZI.js +13 -0
  51. package/chunk-AVMKZHBC.js +85 -0
  52. package/chunk-AZPCASRE.js +36 -0
  53. package/chunk-BBYVOSU2.js +792 -0
  54. package/chunk-C3RUNRHT.js +51 -0
  55. package/chunk-C4FTUXVF.js +146 -0
  56. package/chunk-CF2WZF4N.js +134 -0
  57. package/chunk-CF7PE763.js +10 -0
  58. package/chunk-CKOJQDKR.js +198 -0
  59. package/chunk-CMKUBIGW.js +1550 -0
  60. package/chunk-CWMSB67P.js +34 -0
  61. package/chunk-DCOA4QSN.js +105 -0
  62. package/chunk-DFFIZ25G.js +30 -0
  63. package/chunk-DSZUWUYB.js +478 -0
  64. package/chunk-DWLEOOGR.js +8 -0
  65. package/chunk-DZ3XJVET.js +231 -0
  66. package/chunk-EHLHSX7R.js +1433 -0
  67. package/chunk-ENOG22KJ.js +939 -0
  68. package/chunk-FSO5B7GH.js +171 -0
  69. package/chunk-FVYY6MCS.js +1447 -0
  70. package/chunk-G3SUCT4W.js +8 -0
  71. package/chunk-GAKEBQD6.js +30 -0
  72. package/chunk-GBRG75BQ.js +86 -0
  73. package/chunk-GU3PEVGZ.js +4723 -0
  74. package/chunk-H33743XH.js +25 -0
  75. package/chunk-HNMXYYJR.js +12 -0
  76. package/chunk-HNW7IJSK.js +71 -0
  77. package/chunk-I42VC5KR.js +15 -0
  78. package/chunk-I6XMPTMR.js +113 -0
  79. package/chunk-IDZTNRP2.js +85 -0
  80. package/chunk-ISNCLGUZ.js +146 -0
  81. package/chunk-IWX4UW2E.js +548 -0
  82. package/chunk-JBTJAPUF.js +35 -0
  83. package/chunk-JEXVIMYZ.js +55 -0
  84. package/chunk-JRKKFRAV.js +537 -0
  85. package/chunk-JZPBVBIY.js +94 -0
  86. package/chunk-KKY4B2Q2.js +21 -0
  87. package/chunk-KQHGZWSV.js +63 -0
  88. package/chunk-KUG52IAP.js +8 -0
  89. package/chunk-KX6YBIHG.js +8 -0
  90. package/chunk-LCBAMY2M.js +60 -0
  91. package/chunk-LM6IYQ3F.js +16 -0
  92. package/chunk-LTRXGFMS.js +83 -0
  93. package/chunk-M76ECQRD.js +13658 -0
  94. package/chunk-MRC4Q34M.js +188 -0
  95. package/chunk-MTU75CZ2.js +91 -0
  96. package/chunk-N54XAP77.js +19 -0
  97. package/chunk-O2ZNTTET.js +3272 -0
  98. package/chunk-O4BU24WZ.js +3212 -0
  99. package/chunk-OLZBQWZU.js +6 -0
  100. package/chunk-OOSFSFMA.js +271 -0
  101. package/chunk-OPZYGHUC.js +89 -0
  102. package/chunk-OWOHNGCN.js +50 -0
  103. package/chunk-P3PKED2I.js +962 -0
  104. package/chunk-QSJ3HFEF.js +8 -0
  105. package/chunk-RCSJFQPB.js +9036 -0
  106. package/chunk-RL776AGR.js +190 -0
  107. package/chunk-ROWQEJRP.js +139 -0
  108. package/chunk-S7Z2HMCN.js +25 -0
  109. package/chunk-SDJDLO5W.js +628 -0
  110. package/chunk-SOTZ6RDN.js +69 -0
  111. package/chunk-TILFE6LV.js +381 -0
  112. package/chunk-U4TRT5V4.js +246 -0
  113. package/chunk-U6VC4MU4.js +8 -0
  114. package/chunk-UAD2WT54.js +64 -0
  115. package/chunk-UB6SN4NJ.js +421 -0
  116. package/chunk-URUUZLPA.js +807 -0
  117. package/chunk-UTLZINAP.js +3066 -0
  118. package/chunk-VC6OZXO5.js +298 -0
  119. package/chunk-VF4K2QE6.js +21 -0
  120. package/chunk-VHBWHNVT.js +59 -0
  121. package/chunk-VIDPVFP3.js +20 -0
  122. package/chunk-VP4WJWKW.js +8882 -0
  123. package/chunk-VUW5FBDB.js +573 -0
  124. package/chunk-VVX233PH.js +482 -0
  125. package/chunk-VX3SXJ3N.js +2052 -0
  126. package/chunk-W4NVOSFF.js +37 -0
  127. package/chunk-WWC7I6TA.js +8 -0
  128. package/chunk-WZSRQNQG.js +2587 -0
  129. package/chunk-XBUBEFNX.js +34 -0
  130. package/chunk-XENYHRUE.js +104 -0
  131. package/chunk-Y5GCAMGP.js +9 -0
  132. package/chunk-YPRZSPF3.js +148 -0
  133. package/chunk-Z4NR32XR.js +50 -0
  134. package/chunk-ZNFJWEN4.js +56 -0
  135. package/cliExecutor-K3F7DMRO.js +36 -0
  136. package/clipboardy-BVE3LVEH.js +12001 -0
  137. package/createAgentAutomationAction-RJF3N2QY.js +866 -0
  138. package/createDialogAction-DRSPS6CE.js +55 -0
  139. package/createPageAction-6B2WMNO3.js +172 -0
  140. package/db-HCJ5PRB5.js +271 -0
  141. package/dbSlice-Q3TM2FJV.js +60 -0
  142. package/deleteFile-OW53A6BX.js +41 -0
  143. package/dialogCommands-4IX4XIZE.js +63 -0
  144. package/dialogSlice-3M7KX2TX.js +148 -0
  145. package/docCreateCommands-SIL3NPGT.js +220 -0
  146. package/docDeleteCommands-7IOMLUS4.js +181 -0
  147. package/docReadCommands-FNFXUA5L.js +134 -0
  148. package/docStore-SV7E34D4.js +98 -0
  149. package/docUpdateCommands-X2HNDVUC.js +318 -0
  150. package/fetchMessages-KTNM7QAR.js +17 -0
  151. package/getPricing-3E6UNPKL.js +30 -0
  152. package/handleSendMessageAction-JYETO5RZ.js +185 -0
  153. package/index.js +188 -112958
  154. package/lib-FYYBQIXS.js +19839 -0
  155. package/localDialogRead-2VRI24F4.js +26 -0
  156. package/localFirstLog-DHNOY2NA.js +19 -0
  157. package/localRuntimeAuthority-TEGCOWX4.js +471 -0
  158. package/localRuntimeDb-LGDF6FQP.js +12 -0
  159. package/machineCommands-RIO3RP5Q.js +781 -0
  160. package/machineInfo-M6KB6HZN.js +10 -0
  161. package/machineWsRunDispatch-W7UYLGB5.js +112 -0
  162. package/memoryCommands-O4MIPIWQ.js +476 -0
  163. package/models-4OPOOLFS.js +9 -0
  164. package/offlineMarxistsAgentCommand-BCPJITJL.js +242 -0
  165. package/package.json +4 -24
  166. package/read-GW7ZEI23.js +17 -0
  167. package/readDocTool-HUFU6OCT.js +16 -0
  168. package/readlineWorkspace-27JR7WPW.js +5682 -0
  169. package/removeDialogAgentAction-CXKR4NJI.js +73 -0
  170. package/runAgentClientLoop-HZFAPJHS.js +293 -0
  171. package/runtimeDoctorCommands-LRHLPDRC.js +289 -0
  172. package/setDialogExtraReferencesAction-6RKUSXHX.js +60 -0
  173. package/setPrimaryDialogAgentAction-T3UTBEFG.js +80 -0
  174. package/settingSlice-IVKXJXMG.js +199 -0
  175. package/skillDiscovery-UGSQGX2U.js +16 -0
  176. package/skillSummaryMarker-42HKSXYY.js +9 -0
  177. package/slateToRenderMarkdown-Y5IYN73U.js +7 -0
  178. package/slateUtils-2M7MUTWX.js +19 -0
  179. package/spaceCommands-E7VOF4LO.js +450 -0
  180. package/spaceSlice-TSVROA5U.js +149 -0
  181. package/streamAgentChatTurn-3C5RQZJF.js +4510 -0
  182. package/tableCommands-O7O2LBEG.js +1286 -0
  183. package/toolApiClient-QI3YBNWB.js +26 -0
  184. package/tools-EQDEKR6N.js +87 -0
  185. package/tuiSummaryLlmCaller-RV3THLZF.js +78 -0
  186. package/understanding-3CUQQ6SV.js +271 -0
  187. package/updateCommands-VOSPKXFF.js +31 -0
  188. package/updateDialogTitleAction-3XV7VWSZ.js +188 -0
@@ -0,0 +1,63 @@
1
+ import {
2
+ getRecordTimestamp,
3
+ isTombstoneRecord,
4
+ shouldReplaceWithNextRecord
5
+ } from "./chunk-GBRG75BQ.js";
6
+
7
+ // packages/database/userDataMerge.ts
8
+ var getUserDataItemTimestamp = (dataItem) => getRecordTimestamp(dataItem);
9
+ var getItemKey = (item) => {
10
+ const candidates = [
11
+ typeof item.contentKey === "string" ? item.contentKey : void 0,
12
+ typeof item.dbKey === "string" ? item.dbKey : void 0,
13
+ typeof item.appKey === "string" ? item.appKey : void 0,
14
+ typeof item.appId === "string" ? item.appId : void 0,
15
+ item.id
16
+ ];
17
+ for (const candidate of candidates) {
18
+ if (typeof candidate === "string" && candidate.trim().length > 0) {
19
+ return candidate;
20
+ }
21
+ }
22
+ return null;
23
+ };
24
+ var mergeAndDedupUserData = (localData, remoteResults, options = {}) => {
25
+ const uniqueMap = /* @__PURE__ */ new Map();
26
+ const mergeRecordMetadata = (currentItem, nextItem) => {
27
+ if (typeof currentItem.serverOrigin !== "string" && typeof nextItem.serverOrigin === "string" && nextItem.serverOrigin.trim().length > 0) {
28
+ return {
29
+ ...currentItem,
30
+ serverOrigin: nextItem.serverOrigin
31
+ };
32
+ }
33
+ return currentItem;
34
+ };
35
+ const addToMap = (item) => {
36
+ const itemKey = getItemKey(item);
37
+ if (!itemKey) return;
38
+ const existing = uniqueMap.get(itemKey);
39
+ if (!existing) {
40
+ uniqueMap.set(itemKey, item);
41
+ return;
42
+ }
43
+ if (shouldReplaceWithNextRecord(item, existing)) {
44
+ uniqueMap.set(itemKey, item);
45
+ return;
46
+ }
47
+ uniqueMap.set(itemKey, mergeRecordMetadata(existing, item));
48
+ };
49
+ localData.forEach(addToMap);
50
+ remoteResults.forEach((result) => {
51
+ const items = result?.data?.data;
52
+ if (Array.isArray(items)) {
53
+ items.forEach(addToMap);
54
+ }
55
+ });
56
+ const merged = Array.from(uniqueMap.values());
57
+ return options.includeDeleted ? merged : merged.filter((item) => !isTombstoneRecord(item));
58
+ };
59
+
60
+ export {
61
+ getUserDataItemTimestamp,
62
+ mergeAndDedupUserData
63
+ };
@@ -0,0 +1,8 @@
1
+ // packages/core/isRecord.ts
2
+ function isRecord(value) {
3
+ return Boolean(value) && typeof value === "object" && !Array.isArray(value);
4
+ }
5
+
6
+ export {
7
+ isRecord
8
+ };
@@ -0,0 +1,8 @@
1
+ // packages/core/recordOrEmpty.ts
2
+ function asRecordOrEmpty(value) {
3
+ return value && typeof value === "object" && !Array.isArray(value) ? value : {};
4
+ }
5
+
6
+ export {
7
+ asRecordOrEmpty
8
+ };
@@ -0,0 +1,60 @@
1
+ import {
2
+ normalizeServerOrigin
3
+ } from "./chunk-CF7PE763.js";
4
+
5
+ // packages/database/config.ts
6
+ var API_VERSION = "/api/v1";
7
+ var SERVERS = {
8
+ MAIN: "https://nolo.chat",
9
+ US: "https://us.nolo.chat"
10
+ };
11
+ var NOLO_CLUSTER_SERVERS = Object.values(SERVERS);
12
+ var LEGACY_SERVER_ORIGIN_MAP = {
13
+ "https://nolotus.com": SERVERS.MAIN,
14
+ "https://www.nolotus.com": SERVERS.MAIN,
15
+ "https://us.nolotus.com": SERVERS.US,
16
+ "https://www.us.nolotus.com": SERVERS.US
17
+ };
18
+ var normalizeKnownServerOrigin = (server) => {
19
+ if (typeof server !== "string" || server.trim().length === 0) return null;
20
+ const trimmed = server.trim();
21
+ let origin;
22
+ try {
23
+ origin = new URL(trimmed).origin;
24
+ } catch {
25
+ origin = normalizeServerOrigin(trimmed);
26
+ }
27
+ return LEGACY_SERVER_ORIGIN_MAP[origin.toLowerCase()] ?? origin;
28
+ };
29
+ var LOCAL_DEV_SERVER_ORIGIN_PATTERN = /^https?:\/\/(?:localhost|127\.0\.0\.1|0\.0\.0\.0|nolotus\.local)(?::\d+)?$/i;
30
+ var isLocalDevServerOrigin = (server) => {
31
+ if (typeof server !== "string" || server.trim().length === 0) return false;
32
+ const normalized = normalizeKnownServerOrigin(server) ?? normalizeServerOrigin(server);
33
+ return LOCAL_DEV_SERVER_ORIGIN_PATTERN.test(normalized);
34
+ };
35
+ var isNoloClusterServerOrigin = (server) => {
36
+ if (typeof server !== "string" || server.trim().length === 0) return false;
37
+ const normalized = normalizeKnownServerOrigin(server) ?? normalizeServerOrigin(server);
38
+ return /^https?:\/\/(?:us\.)?nolo\.chat$/i.test(normalized);
39
+ };
40
+ var API_ENDPOINTS = {
41
+ DATABASE: `${API_VERSION}/db`,
42
+ SHARE: `${API_VERSION}/share`,
43
+ USERS: `${API_VERSION}/users`,
44
+ WEATHER: `${API_VERSION}/weather`,
45
+ HI: `${API_VERSION}/hi`,
46
+ CHAT: `${API_VERSION}/chat`,
47
+ EXECUTE_SQL: `${API_VERSION}/sqlite/execute_sql`,
48
+ // --- 新增端点 ---
49
+ TRANSACTIONS: `${API_VERSION}/transactions`
50
+ };
51
+
52
+ export {
53
+ API_VERSION,
54
+ SERVERS,
55
+ NOLO_CLUSTER_SERVERS,
56
+ normalizeKnownServerOrigin,
57
+ isLocalDevServerOrigin,
58
+ isNoloClusterServerOrigin,
59
+ API_ENDPOINTS
60
+ };
@@ -0,0 +1,16 @@
1
+ // packages/database-engine/dbPath.ts
2
+ import { homedir } from "node:os";
3
+ import path from "node:path";
4
+ function resolveServerDbPath(options = {}) {
5
+ const env = options.env ?? process.env;
6
+ return env.NOLO_SERVER_DB_PATH?.trim() || path.join(options.cwd ?? process.cwd(), "data", "leveldb");
7
+ }
8
+ function resolveNoloHome(options = {}) {
9
+ const env = options.env ?? process.env;
10
+ return env.NOLO_HOME?.trim() || path.join(options.homeDir ?? homedir(), ".nolo");
11
+ }
12
+
13
+ export {
14
+ resolveServerDbPath,
15
+ resolveNoloHome
16
+ };
@@ -0,0 +1,83 @@
1
+ // packages/agent-runtime/modelLayerOverride.ts
2
+ var MODEL_LAYER_KEYS = [
3
+ "provider",
4
+ "model",
5
+ "apiSource",
6
+ "cliProvider",
7
+ "useServerProxy",
8
+ "apiKey",
9
+ "apiKeyRef",
10
+ "apiKeyHeader",
11
+ "customProviderUrl",
12
+ "credentialRef",
13
+ "credentialSynced",
14
+ "temperature",
15
+ "top_p",
16
+ "frequency_penalty",
17
+ "presence_penalty",
18
+ "max_tokens",
19
+ "reasoning_effort",
20
+ "enableThinking",
21
+ "thinkingBudget"
22
+ ];
23
+ function mergeReferences(base, extra) {
24
+ const safeBase = Array.isArray(base) ? base : [];
25
+ const safeExtra = Array.isArray(extra) ? extra : [];
26
+ const seen = /* @__PURE__ */ new Set();
27
+ const merged = [];
28
+ for (const item of [...safeBase, ...safeExtra]) {
29
+ const key = item?.dbKey;
30
+ if (key && seen.has(key)) continue;
31
+ if (key) seen.add(key);
32
+ if (item) merged.push(item);
33
+ }
34
+ return merged;
35
+ }
36
+ var asNonEmptyString = (value) => typeof value === "string" && value.trim().length > 0;
37
+ function buildModelLayerOverride(agent) {
38
+ if (!agent || !asNonEmptyString(agent.provider) || !asNonEmptyString(agent.model)) {
39
+ return null;
40
+ }
41
+ const override = {
42
+ provider: agent.provider,
43
+ model: agent.model
44
+ };
45
+ for (const key of MODEL_LAYER_KEYS) {
46
+ if (key === "provider" || key === "model") continue;
47
+ const value = agent[key];
48
+ if (value !== void 0) {
49
+ override[key] = value;
50
+ }
51
+ }
52
+ if (Array.isArray(agent.references) && agent.references.length > 0) {
53
+ override.references = agent.references;
54
+ }
55
+ return override;
56
+ }
57
+ function applyModelLayerOverride(base, override) {
58
+ const next = { ...base };
59
+ for (const key of MODEL_LAYER_KEYS) {
60
+ delete next[key];
61
+ }
62
+ for (const key of MODEL_LAYER_KEYS) {
63
+ const value = override[key];
64
+ if (value !== void 0) {
65
+ next[key] = value;
66
+ }
67
+ }
68
+ const merged = mergeReferences(
69
+ base.references,
70
+ override.references
71
+ );
72
+ if (merged.length > 0) {
73
+ next.references = merged;
74
+ } else {
75
+ delete next.references;
76
+ }
77
+ return next;
78
+ }
79
+
80
+ export {
81
+ buildModelLayerOverride,
82
+ applyModelLayerOverride
83
+ };