@wirecat/cli-memo 0.131.72 → 0.131.74
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.
- package/dist/bin/memo.js +2 -2
- package/dist/bundle/{all-profiles-G6S5HOBT.js → all-profiles-LUGN5BHP.js} +9 -9
- package/dist/bundle/{anthropic-LA6PXTPQ.js → anthropic-W7JXDZPL.js} +16 -7
- package/dist/bundle/{app-server-SESNZIAV.js → app-server-2LQJZC7Z.js} +50 -49
- package/dist/bundle/auto-OCCPDCFY.js +89 -0
- package/dist/bundle/{bun-PZNVNH4G.js → bun-S3JZIN4S.js} +2 -2
- package/dist/bundle/{bun-sqlite-VICDK5FS.js → bun-sqlite-X3WQN3CV.js} +5 -5
- package/dist/bundle/{chunk-ZTONSM5X.js → chunk-2EZFUIL4.js} +2 -2
- package/dist/bundle/{chunk-FXZ7PQKG.js → chunk-3BEJUJEL.js} +8 -8
- package/dist/bundle/{chunk-IRBYZUI7.js → chunk-3OVYPDT6.js} +31 -50
- package/dist/bundle/{chunk-IXZWUHSG.js → chunk-4KDORB7C.js} +12 -37
- package/dist/bundle/{chunk-V3JOIUVB.js → chunk-4O2MYFYC.js} +4 -4
- package/dist/bundle/{chunk-SVVSGUMU.js → chunk-4QGUBKN5.js} +6 -6
- package/dist/bundle/{chunk-3LS76TFB.js → chunk-6AOPUQTC.js} +1 -1
- package/dist/bundle/chunk-6FTZ53TT.js +18 -0
- package/dist/bundle/{chunk-FPWF2XLH.js → chunk-6I4DOBSD.js} +13 -13
- package/dist/bundle/{chunk-FENNNSCI.js → chunk-6Q3JHCU7.js} +12 -12
- package/dist/bundle/{chunk-XXEHPPNS.js → chunk-AHAW3TOS.js} +1266 -952
- package/dist/bundle/{chunk-6B3GQMR6.js → chunk-BDVM5652.js} +1 -1
- package/dist/bundle/{chunk-2VETW2QK.js → chunk-BNJ2XK7D.js} +1192 -838
- package/dist/bundle/{chunk-II2SXJEO.js → chunk-BR4DCOA5.js} +47 -45
- package/dist/bundle/{chunk-FVJSDDSV.js → chunk-C6MWOBEL.js} +26 -22
- package/dist/bundle/{chunk-RGIS2DRA.js → chunk-CWWUZK2U.js} +9 -9
- package/dist/bundle/{chunk-LIF2HXIQ.js → chunk-E2PSOSTN.js} +2 -2
- package/dist/bundle/{chunk-MKOQDN3I.js → chunk-E74VWHZ2.js} +1 -1
- package/dist/bundle/{chunk-5XRCF57Z.js → chunk-EML43XLJ.js} +2 -2
- package/dist/bundle/{chunk-ASDOPGKC.js → chunk-G45BLLDR.js} +4 -4
- package/dist/bundle/{chunk-B7LGXY3S.js → chunk-GPXHGG67.js} +12 -12
- package/dist/bundle/chunk-GWNLLQBD.js +177 -0
- package/dist/bundle/{chunk-FOPDWCRG.js → chunk-HEYIBJ5I.js} +12 -12
- package/dist/bundle/{chunk-PHL53ERQ.js → chunk-IQIM4UC7.js} +10 -10
- package/dist/bundle/{chunk-INQAQ55X.js → chunk-JINEHQ2T.js} +4911 -4900
- package/dist/bundle/chunk-KA5MDFLU.js +138 -0
- package/dist/bundle/{chunk-QUPPO7DB.js → chunk-KDBAY5JZ.js} +1 -1
- package/dist/bundle/{chunk-LJCT7YG6.js → chunk-KEBL3PY4.js} +4 -4
- package/dist/bundle/{chunk-HIHZNBR7.js → chunk-KUFOM3SB.js} +2 -2
- package/dist/bundle/{chunk-PGOMGFXA.js → chunk-KYJBGCTC.js} +2 -2
- package/dist/bundle/{chunk-U3P5F57B.js → chunk-LPGE6ACC.js} +2 -2
- package/dist/bundle/{chunk-I4HWKPQR.js → chunk-LX3OSTBD.js} +4 -4
- package/dist/bundle/{chunk-G3FQTKHT.js → chunk-MPZBV5RL.js} +8 -8
- package/dist/bundle/{chunk-K55WZ67L.js → chunk-NR633L2N.js} +4 -4
- package/dist/bundle/{chunk-DSU6UR2X.js → chunk-NT5IOEEK.js} +1 -1
- package/dist/bundle/{chunk-NRLXWY4Q.js → chunk-OOKMABOJ.js} +1528 -852
- package/dist/bundle/{chunk-L62FWN3Y.js → chunk-OYKQX4H3.js} +1 -1
- package/dist/bundle/{chunk-A4UQKFGY.js → chunk-P6FPRA3P.js} +59 -35
- package/dist/bundle/{chunk-BD7AGXJJ.js → chunk-QCR5WJ7R.js} +53 -48
- package/dist/bundle/{chunk-RF6KPQWV.js → chunk-QKWM4VK4.js} +6 -6
- package/dist/bundle/chunk-QYJJBE56.js +109 -0
- package/dist/bundle/{chunk-MSTWHRLN.js → chunk-SCYHDYLI.js} +3 -1
- package/dist/bundle/{chunk-CLQXHFKG.js → chunk-SIOPF2UG.js} +6 -6
- package/dist/bundle/{chunk-G7XOBQB5.js → chunk-SIQDO5DN.js} +4 -4
- package/dist/bundle/{chunk-ESYCZ575.js → chunk-SJD4KTK2.js} +4 -4
- package/dist/bundle/{chunk-KH43CUE2.js → chunk-UIAGASGP.js} +6 -6
- package/dist/bundle/{chunk-3ZSPTUG3.js → chunk-UU3OAPGO.js} +7 -7
- package/dist/bundle/{chunk-H3LAORYX.js → chunk-V7BDQIZS.js} +2 -2
- package/dist/bundle/{chunk-M2DAITNE.js → chunk-VB4OLJHK.js} +3 -3
- package/dist/bundle/{chunk-YBL4QKLV.js → chunk-VRL5WRRQ.js} +83 -83
- package/dist/bundle/{chunk-HE2F4JII.js → chunk-VYCLOFPC.js} +24 -9
- package/dist/bundle/{chunk-UUBV5ATQ.js → chunk-W46O6RJ5.js} +20 -20
- package/dist/bundle/{chunk-WT2P44YD.js → chunk-WBCY7WHV.js} +17 -17
- package/dist/bundle/{chunk-FDSM2TU6.js → chunk-WFXRR2JT.js} +11 -11
- package/dist/bundle/{chunk-2RNNWFU7.js → chunk-WM7MVKGU.js} +24 -24
- package/dist/bundle/{chunk-XNX3U6GD.js → chunk-WZHCQ4VZ.js} +8 -8
- package/dist/bundle/{chunk-MAGAWAPG.js → chunk-XMHWGHID.js} +4252 -4248
- package/dist/bundle/chunk-XPCTY6XV.js +116 -0
- package/dist/bundle/{chunk-UCRR7R6Q.js → chunk-XPSXVUZG.js} +3 -3
- package/dist/bundle/{chunk-CPUQC7UF.js → chunk-XQ3RZU3J.js} +1 -1
- package/dist/bundle/{chunk-6Z62U7NY.js → chunk-XQHOMQNZ.js} +4 -4
- package/dist/bundle/{chunk-SL2LXOCN.js → chunk-YB4KGUXY.js} +3 -3
- package/dist/bundle/{chunk-STJWETNW.js → chunk-YDTGYYOR.js} +4 -4
- package/dist/bundle/{chunk-FHIGY5K6.js → chunk-YLYZNPAZ.js} +2 -2
- package/dist/bundle/{chunk-ZM6J47GY.js → chunk-ZL63GL3Y.js} +3 -3
- package/dist/bundle/{chunk-SR7C53CS.js → chunk-ZTZLAGZA.js} +3 -3
- package/dist/bundle/{chunk-UX52EWLQ.js → chunk-ZXW5FPH2.js} +1 -1
- package/dist/bundle/command-contract-QQG343ZQ.js +32 -0
- package/dist/bundle/command-server-entry-XVUPTSSH.js +145 -0
- package/dist/bundle/{decode-WRWXOJML.js → decode-METZOSMG.js} +5 -5
- package/dist/bundle/{dispatch-VJSUBAUM.js → dispatch-PHB2Y6ZL.js} +8 -8
- package/dist/bundle/{echarts-MTCNTCST.js → echarts-EBSP4VCK.js} +2 -2
- package/dist/bundle/{embed-PPPCHSTE.js → embed-GVVU7N7W.js} +6 -6
- package/dist/bundle/{embedder-UJBIX6A2.js → embedder-6BZOYAXV.js} +9 -9
- package/dist/bundle/entry-7EYT2OA3.js +21 -0
- package/dist/bundle/{failure-GLF7OMMM.js → failure-OBT7CUVW.js} +2 -2
- package/dist/bundle/failure-YQJ43YFG.js +69 -0
- package/dist/bundle/{first-run-7HAWGQ3B.js → first-run-C7L7IACA.js} +11 -11
- package/dist/bundle/first-screen-6T65PQ37.js +30 -0
- package/dist/bundle/{instructions-JKIO4JF7.js → instructions-VDKK3Y5Z.js} +1 -1
- package/dist/bundle/{mcp-H2WYFBNW.js → mcp-5275YLID.js} +2 -2
- package/dist/bundle/mcp-UCDMODSA.js +90 -0
- package/dist/bundle/memo.js +16 -16
- package/dist/bundle/{node-3AIXDDDR.js → node-HWGZYNUX.js} +2 -2
- package/dist/bundle/{node-sqlite-NX722DXD.js → node-sqlite-PSYENWGS.js} +6 -6
- package/dist/bundle/{oauth-2NPSI7Q3.js → oauth-TQGMUJK2.js} +7 -7
- package/dist/bundle/{open-AFRN6Q36.js → open-KDDJDKCE.js} +5 -5
- package/dist/bundle/openai-QPGCUM4T.js +24 -0
- package/dist/bundle/{process-J2IBN6X7.js → process-APNTXJJE.js} +1 -1
- package/dist/bundle/{program-MRG4ZQQI.js → program-RHPSSKFA.js} +262 -153
- package/dist/bundle/{prompt-6XNKR4VQ.js → prompt-BMBZCLGF.js} +5 -5
- package/dist/bundle/{recognize-G3GI32QS.js → recognize-3SEY2MAR.js} +4 -4
- package/dist/bundle/{remote-DJO255PT.js → remote-ODH54UXO.js} +7 -7
- package/dist/bundle/{rerank-5SBZRIHF.js → rerank-JQHBNTUK.js} +7 -7
- package/dist/bundle/{serve-BZVBKGU3.js → serve-C22ZONSM.js} +9 -9
- package/dist/bundle/server-3TQJ47Q6.js +62 -0
- package/dist/bundle/{server-D5BJDKTJ.js → server-FX7RKPL4.js} +71 -67
- package/dist/bundle/server-SHHKLBS2.js +48 -0
- package/dist/bundle/{state-A57F7T5D.js → state-M3VGXSV4.js} +6 -6
- package/dist/bundle/{store-JXD7SGIK.js → store-K45RFKGF.js} +13 -13
- package/dist/bundle/store-maintenance-command-EOTKQ3E5.js +47 -0
- package/dist/bundle/update-PW77Y4DM.js +72 -0
- package/dist/context/context.d.ts.map +1 -1
- package/dist/context/context.js +4 -2
- package/dist/context/context.js.map +1 -1
- package/dist/contract-overrides/search.d.ts.map +1 -1
- package/dist/contract-overrides/search.js +15 -3
- package/dist/contract-overrides/search.js.map +1 -1
- package/dist/digest/backfill.d.ts.map +1 -1
- package/dist/digest/backfill.js +7 -7
- package/dist/digest/backfill.js.map +1 -1
- package/dist/examples.d.ts.map +1 -1
- package/dist/examples.js +11 -3
- package/dist/examples.js.map +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/search/answers.d.ts +15 -3
- package/dist/search/answers.d.ts.map +1 -1
- package/dist/search/answers.js +76 -6
- package/dist/search/answers.js.map +1 -1
- package/dist/search/command.d.ts.map +1 -1
- package/dist/search/command.js +50 -8
- package/dist/search/command.js.map +1 -1
- package/dist/search/lane-gates.d.ts +4 -3
- package/dist/search/lane-gates.d.ts.map +1 -1
- package/dist/search/lane-gates.js +13 -7
- package/dist/search/lane-gates.js.map +1 -1
- package/dist/search/search.d.ts +10 -2
- package/dist/search/search.d.ts.map +1 -1
- package/dist/search/search.js +18 -5
- package/dist/search/search.js.map +1 -1
- package/dist/store/group.d.ts +1 -1
- package/dist/store/group.d.ts.map +1 -1
- package/dist/store/group.js +2 -1
- package/dist/store/group.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- package/skills/cli-memo/SKILL.md +3 -3
- package/skills/cli-memo/topics/meetings.md +2 -1
- package/skills/cli-memo/topics/search.md +1 -0
- package/dist/bundle/auto-WU47LYXJ.js +0 -85
- package/dist/bundle/chunk-THPGFRPZ.js +0 -262
- package/dist/bundle/command-contract-7QECBB6M.js +0 -32
- package/dist/bundle/entry-W6SHKRBE.js +0 -18
- package/dist/bundle/failure-NRJ3EPBO.js +0 -65
- package/dist/bundle/first-screen-FRRTKWFB.js +0 -30
- package/dist/bundle/mcp-OL6ZYF2T.js +0 -90
- package/dist/bundle/openai-U5CQFLRU.js +0 -23
- package/dist/bundle/server-AEZPZ3ZD.js +0 -48
- package/dist/bundle/server-CIT5B2SV.js +0 -61
- package/dist/bundle/store-maintenance-command-5DG4SEQA.js +0 -47
- package/dist/bundle/update-NI24ED4V.js +0 -68
- /package/dist/bundle/{chunk-SYWHHQMC.js → chunk-G5GW3FFJ.js} +0 -0
- /package/dist/bundle/{chunk-YSYFOIW7.js → chunk-IXSUVHW6.js} +0 -0
|
@@ -6,18 +6,18 @@ import {
|
|
|
6
6
|
autoState,
|
|
7
7
|
lastAutoRun,
|
|
8
8
|
recordAutoRun
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CWWUZK2U.js";
|
|
10
10
|
import {
|
|
11
11
|
installer,
|
|
12
12
|
latest,
|
|
13
13
|
upgradeCommand
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-6Q3JHCU7.js";
|
|
15
15
|
import {
|
|
16
16
|
mcpOwnerAllowed,
|
|
17
17
|
memoLevels,
|
|
18
18
|
readOnlyAvailability,
|
|
19
19
|
refuseWritesUnderLock
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-3BEJUJEL.js";
|
|
21
21
|
import {
|
|
22
22
|
answers,
|
|
23
23
|
atDetail,
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
trackAnswers,
|
|
30
30
|
wholeList,
|
|
31
31
|
withStore
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-HEYIBJ5I.js";
|
|
33
33
|
import {
|
|
34
34
|
ATTACHMENT_CHARS,
|
|
35
35
|
DIALECTS,
|
|
@@ -61,15 +61,15 @@ import {
|
|
|
61
61
|
showMail,
|
|
62
62
|
unsetConfigKey,
|
|
63
63
|
updateConfig
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-QCR5WJ7R.js";
|
|
65
65
|
import "./chunk-QP3KNC5D.js";
|
|
66
|
-
import "./chunk-
|
|
67
|
-
import "./chunk-
|
|
68
|
-
import "./chunk-
|
|
66
|
+
import "./chunk-YB4KGUXY.js";
|
|
67
|
+
import "./chunk-4KDORB7C.js";
|
|
68
|
+
import "./chunk-NR633L2N.js";
|
|
69
69
|
import {
|
|
70
70
|
errorObject,
|
|
71
71
|
recognisable
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-GPXHGG67.js";
|
|
73
73
|
import {
|
|
74
74
|
AGENT_INPUT_MAX_CHARS,
|
|
75
75
|
DISCOVERY_DESCRIPTIONS,
|
|
@@ -119,32 +119,34 @@ import {
|
|
|
119
119
|
tasksStatsCommand,
|
|
120
120
|
templatesCommand,
|
|
121
121
|
withSqliteSidecars
|
|
122
|
-
} from "./chunk-
|
|
123
|
-
import "./chunk-
|
|
124
|
-
import "./chunk-
|
|
122
|
+
} from "./chunk-BNJ2XK7D.js";
|
|
123
|
+
import "./chunk-E74VWHZ2.js";
|
|
124
|
+
import "./chunk-KA5MDFLU.js";
|
|
125
|
+
import "./chunk-BDVM5652.js";
|
|
125
126
|
import {
|
|
126
127
|
allHitItem,
|
|
127
128
|
coverageGaps,
|
|
128
129
|
messageHitItem,
|
|
129
130
|
noteHitItem,
|
|
130
131
|
shownOf
|
|
131
|
-
} from "./chunk-
|
|
132
|
-
import "./chunk-
|
|
132
|
+
} from "./chunk-3OVYPDT6.js";
|
|
133
|
+
import "./chunk-YLYZNPAZ.js";
|
|
133
134
|
import {
|
|
134
135
|
REASONS as REASONS2,
|
|
135
136
|
SKILL_TARGETS,
|
|
136
137
|
skillCommand,
|
|
137
138
|
skillPath,
|
|
138
139
|
skillVersion
|
|
139
|
-
} from "./chunk-
|
|
140
|
+
} from "./chunk-C6MWOBEL.js";
|
|
141
|
+
import "./chunk-LX3OSTBD.js";
|
|
140
142
|
import {
|
|
141
143
|
recoveryNotes,
|
|
142
144
|
storeInfo,
|
|
143
145
|
storeRecoveryCheck,
|
|
144
146
|
storeRecoveryRun,
|
|
145
147
|
storeSummary
|
|
146
|
-
} from "./chunk-
|
|
147
|
-
import "./chunk-
|
|
148
|
+
} from "./chunk-VRL5WRRQ.js";
|
|
149
|
+
import "./chunk-WM7MVKGU.js";
|
|
148
150
|
import {
|
|
149
151
|
LIST_QUERY_GUIDE,
|
|
150
152
|
RESOURCES_SEARCHED,
|
|
@@ -167,6 +169,7 @@ import {
|
|
|
167
169
|
gatherStoredProject,
|
|
168
170
|
groupGuardOf,
|
|
169
171
|
groupLockOf,
|
|
172
|
+
harderRanking,
|
|
170
173
|
importEngine,
|
|
171
174
|
inGroupOf,
|
|
172
175
|
ingest,
|
|
@@ -192,7 +195,6 @@ import {
|
|
|
192
195
|
parseProposalIds,
|
|
193
196
|
personBusiness,
|
|
194
197
|
personContext,
|
|
195
|
-
pickPerson,
|
|
196
198
|
previewProjectAnnotationSnapshot,
|
|
197
199
|
projectStatus,
|
|
198
200
|
proposalRegistry,
|
|
@@ -220,73 +222,31 @@ import {
|
|
|
220
222
|
timeLimit,
|
|
221
223
|
typedQuery,
|
|
222
224
|
withQuery
|
|
223
|
-
} from "./chunk-
|
|
225
|
+
} from "./chunk-AHAW3TOS.js";
|
|
224
226
|
import {
|
|
225
227
|
readBoundedUtf8File,
|
|
226
228
|
writeFileAtomic
|
|
227
|
-
} from "./chunk-
|
|
229
|
+
} from "./chunk-6I4DOBSD.js";
|
|
230
|
+
import {
|
|
231
|
+
releaseLock,
|
|
232
|
+
servingProfiles,
|
|
233
|
+
takeLock
|
|
234
|
+
} from "./chunk-ZL63GL3Y.js";
|
|
235
|
+
import "./chunk-ZTZLAGZA.js";
|
|
228
236
|
import {
|
|
229
237
|
commandsText,
|
|
230
238
|
inSection,
|
|
231
239
|
installHelp
|
|
232
|
-
} from "./chunk-
|
|
240
|
+
} from "./chunk-WZHCQ4VZ.js";
|
|
233
241
|
import "./chunk-HTQTIKWP.js";
|
|
234
|
-
import "./chunk-
|
|
235
|
-
import {
|
|
236
|
-
Command,
|
|
237
|
-
DEFAULT_TEXT_MODEL,
|
|
238
|
-
FETCH,
|
|
239
|
-
InvalidArgumentError,
|
|
240
|
-
LOCAL_READ,
|
|
241
|
-
LOCAL_WRITE,
|
|
242
|
-
NO_EFFECTS,
|
|
243
|
-
Option,
|
|
244
|
-
REMOTE_READ,
|
|
245
|
-
annotate,
|
|
246
|
-
annotateOption,
|
|
247
|
-
answerEntity,
|
|
248
|
-
assertSharedContracts,
|
|
249
|
-
chosenTextModel,
|
|
250
|
-
commandWords,
|
|
251
|
-
commandsDocument,
|
|
252
|
-
customizeSharedCommand,
|
|
253
|
-
environmentOf,
|
|
254
|
-
flatten,
|
|
255
|
-
grantsAuthority,
|
|
256
|
-
hasSharedContract,
|
|
257
|
-
itemOf,
|
|
258
|
-
liftProfile,
|
|
259
|
-
metaOf,
|
|
260
|
-
outputFor,
|
|
261
|
-
overrideSharedContract,
|
|
262
|
-
parseDuration,
|
|
263
|
-
progressLine,
|
|
264
|
-
progressOf,
|
|
265
|
-
proposesOnly,
|
|
266
|
-
provide,
|
|
267
|
-
runGroup,
|
|
268
|
-
settingRows,
|
|
269
|
-
settingsFor,
|
|
270
|
-
snakeKeys,
|
|
271
|
-
textModels,
|
|
272
|
-
textModelsFile
|
|
273
|
-
} from "./chunk-MAGAWAPG.js";
|
|
274
|
-
import "./chunk-3ZSPTUG3.js";
|
|
275
|
-
import "./chunk-WT2P44YD.js";
|
|
242
|
+
import "./chunk-WBCY7WHV.js";
|
|
276
243
|
import {
|
|
277
244
|
isNewer
|
|
278
|
-
} from "./chunk-
|
|
279
|
-
import "./chunk-
|
|
280
|
-
import "./chunk-
|
|
281
|
-
import "./chunk-
|
|
282
|
-
import "./chunk-
|
|
283
|
-
import "./chunk-I4HWKPQR.js";
|
|
284
|
-
import {
|
|
285
|
-
releaseLock,
|
|
286
|
-
servingProfiles,
|
|
287
|
-
takeLock
|
|
288
|
-
} from "./chunk-ZM6J47GY.js";
|
|
289
|
-
import "./chunk-3LS76TFB.js";
|
|
245
|
+
} from "./chunk-KEBL3PY4.js";
|
|
246
|
+
import "./chunk-OYKQX4H3.js";
|
|
247
|
+
import "./chunk-GWNLLQBD.js";
|
|
248
|
+
import "./chunk-XPSXVUZG.js";
|
|
249
|
+
import "./chunk-E2PSOSTN.js";
|
|
290
250
|
import {
|
|
291
251
|
EVIDENCE_FINDINGS_KIND,
|
|
292
252
|
MAIL_FINDINGS_KIND,
|
|
@@ -318,12 +278,79 @@ import {
|
|
|
318
278
|
openOf,
|
|
319
279
|
openStore,
|
|
320
280
|
parseMergeId,
|
|
281
|
+
pickPerson,
|
|
321
282
|
plainQuery,
|
|
322
283
|
quoteKept,
|
|
323
284
|
refLabel,
|
|
324
285
|
storedProfilesFor,
|
|
325
286
|
writesWithOf
|
|
326
|
-
} from "./chunk-
|
|
287
|
+
} from "./chunk-OOKMABOJ.js";
|
|
288
|
+
import "./chunk-MPZBV5RL.js";
|
|
289
|
+
import "./chunk-XQ3RZU3J.js";
|
|
290
|
+
import "./chunk-SJD4KTK2.js";
|
|
291
|
+
import "./chunk-SIOPF2UG.js";
|
|
292
|
+
import {
|
|
293
|
+
provideTerminal,
|
|
294
|
+
terminalOf
|
|
295
|
+
} from "./chunk-BPGYTJNB.js";
|
|
296
|
+
import {
|
|
297
|
+
APP,
|
|
298
|
+
REASONS,
|
|
299
|
+
STORE_CLIENT,
|
|
300
|
+
VERSION
|
|
301
|
+
} from "./chunk-EML43XLJ.js";
|
|
302
|
+
import "./chunk-NT5IOEEK.js";
|
|
303
|
+
import "./chunk-D72URWJE.js";
|
|
304
|
+
import "./chunk-XPCTY6XV.js";
|
|
305
|
+
import "./chunk-6FTZ53TT.js";
|
|
306
|
+
import "./chunk-QYJJBE56.js";
|
|
307
|
+
import "./chunk-UIAGASGP.js";
|
|
308
|
+
import "./chunk-SCYHDYLI.js";
|
|
309
|
+
import "./chunk-G45BLLDR.js";
|
|
310
|
+
import {
|
|
311
|
+
Command,
|
|
312
|
+
DEFAULT_TEXT_MODEL,
|
|
313
|
+
FETCH,
|
|
314
|
+
InvalidArgumentError,
|
|
315
|
+
LOCAL_READ,
|
|
316
|
+
LOCAL_WRITE,
|
|
317
|
+
NO_EFFECTS,
|
|
318
|
+
Option,
|
|
319
|
+
REMOTE_READ,
|
|
320
|
+
annotate,
|
|
321
|
+
annotateOption,
|
|
322
|
+
answerEntity,
|
|
323
|
+
assertSharedContracts,
|
|
324
|
+
chosenTextModel,
|
|
325
|
+
commandWords,
|
|
326
|
+
commandsDocument,
|
|
327
|
+
customizeSharedCommand,
|
|
328
|
+
environmentOf,
|
|
329
|
+
flatten,
|
|
330
|
+
grantsAuthority,
|
|
331
|
+
hasSharedContract,
|
|
332
|
+
itemOf,
|
|
333
|
+
levelFor,
|
|
334
|
+
liftProfile,
|
|
335
|
+
metaOf,
|
|
336
|
+
outputFor,
|
|
337
|
+
overrideSharedContract,
|
|
338
|
+
parseDuration,
|
|
339
|
+
progressLine,
|
|
340
|
+
progressOf,
|
|
341
|
+
proposesOnly,
|
|
342
|
+
provide,
|
|
343
|
+
runGroup,
|
|
344
|
+
settingRows,
|
|
345
|
+
settingsFor,
|
|
346
|
+
snakeKeys,
|
|
347
|
+
textModels,
|
|
348
|
+
textModelsFile
|
|
349
|
+
} from "./chunk-XMHWGHID.js";
|
|
350
|
+
import "./chunk-UU3OAPGO.js";
|
|
351
|
+
import "./chunk-6AOPUQTC.js";
|
|
352
|
+
import "./chunk-XQHOMQNZ.js";
|
|
353
|
+
import "./chunk-KUFOM3SB.js";
|
|
327
354
|
import {
|
|
328
355
|
CATALOG_KINDS,
|
|
329
356
|
CATEGORIES,
|
|
@@ -396,36 +423,16 @@ import {
|
|
|
396
423
|
timezoneOf,
|
|
397
424
|
validateQuery,
|
|
398
425
|
walkQuery
|
|
399
|
-
} from "./chunk-
|
|
400
|
-
import "./chunk-
|
|
401
|
-
import "./chunk-
|
|
402
|
-
import "./chunk-SVVSGUMU.js";
|
|
403
|
-
import "./chunk-UCRR7R6Q.js";
|
|
404
|
-
import "./chunk-LIF2HXIQ.js";
|
|
405
|
-
import "./chunk-ESYCZ575.js";
|
|
406
|
-
import "./chunk-SR7C53CS.js";
|
|
407
|
-
import "./chunk-CLQXHFKG.js";
|
|
426
|
+
} from "./chunk-JINEHQ2T.js";
|
|
427
|
+
import "./chunk-VB4OLJHK.js";
|
|
428
|
+
import "./chunk-4QGUBKN5.js";
|
|
408
429
|
import {
|
|
409
430
|
sharedModelsDirectory
|
|
410
|
-
} from "./chunk-
|
|
431
|
+
} from "./chunk-SIQDO5DN.js";
|
|
411
432
|
import {
|
|
412
433
|
storePath
|
|
413
|
-
} from "./chunk-
|
|
414
|
-
import
|
|
415
|
-
provideTerminal,
|
|
416
|
-
terminalOf
|
|
417
|
-
} from "./chunk-BPGYTJNB.js";
|
|
418
|
-
import {
|
|
419
|
-
APP,
|
|
420
|
-
REASONS,
|
|
421
|
-
STORE_CLIENT,
|
|
422
|
-
VERSION
|
|
423
|
-
} from "./chunk-5XRCF57Z.js";
|
|
424
|
-
import "./chunk-DSU6UR2X.js";
|
|
425
|
-
import "./chunk-SYWHHQMC.js";
|
|
426
|
-
import "./chunk-D72URWJE.js";
|
|
427
|
-
import "./chunk-KH43CUE2.js";
|
|
428
|
-
import "./chunk-MSTWHRLN.js";
|
|
434
|
+
} from "./chunk-LPGE6ACC.js";
|
|
435
|
+
import "./chunk-G5GW3FFJ.js";
|
|
429
436
|
import {
|
|
430
437
|
Credentials,
|
|
431
438
|
configFilePath,
|
|
@@ -438,7 +445,7 @@ import {
|
|
|
438
445
|
projectFields,
|
|
439
446
|
readBatchInput,
|
|
440
447
|
resolvePaths
|
|
441
|
-
} from "./chunk-
|
|
448
|
+
} from "./chunk-W46O6RJ5.js";
|
|
442
449
|
import {
|
|
443
450
|
MAX_NEXT_STEPS,
|
|
444
451
|
array,
|
|
@@ -460,14 +467,13 @@ import {
|
|
|
460
467
|
trim,
|
|
461
468
|
union,
|
|
462
469
|
unknown
|
|
463
|
-
} from "./chunk-
|
|
470
|
+
} from "./chunk-VYCLOFPC.js";
|
|
464
471
|
import "./chunk-Y5E2WNWB.js";
|
|
465
472
|
import {
|
|
466
473
|
CliError,
|
|
467
474
|
errorCodes,
|
|
468
475
|
isCliError
|
|
469
|
-
} from "./chunk-
|
|
470
|
-
import "./chunk-CPUQC7UF.js";
|
|
476
|
+
} from "./chunk-2EZFUIL4.js";
|
|
471
477
|
import {
|
|
472
478
|
__name
|
|
473
479
|
} from "./chunk-ZVVMGPBJ.js";
|
|
@@ -584,13 +590,14 @@ var accountsByKind = /* @__PURE__ */ __name((scope, imports = []) => {
|
|
|
584
590
|
notes: [MEMO_ACCOUNT],
|
|
585
591
|
events: [],
|
|
586
592
|
crm: [],
|
|
587
|
-
business: [OWN_BUSINESS, ...imports.filter(scope.has)]
|
|
593
|
+
business: [OWN_BUSINESS, ...imports.filter(scope.has)],
|
|
594
|
+
meetings: []
|
|
588
595
|
};
|
|
589
596
|
for (const key of scope.accounts) {
|
|
590
597
|
const kind = kindIn(key.provider);
|
|
591
598
|
if (kind === "documents")
|
|
592
599
|
kinds2.notes.push(key);
|
|
593
|
-
else if (kind !== void 0 && kind
|
|
600
|
+
else if (kind !== void 0 && kind in kinds2)
|
|
594
601
|
kinds2[kind].push(key);
|
|
595
602
|
}
|
|
596
603
|
return kinds2;
|
|
@@ -846,7 +853,7 @@ var readScope = /* @__PURE__ */ __name((command, help = ONE_ACCOUNT_HELP) => sou
|
|
|
846
853
|
var writeScope = /* @__PURE__ */ __name((command, help) => writeOptions(command, help).option("--json", "print JSON; --json=id,title keeps only those fields"), "writeScope");
|
|
847
854
|
var jsonOption = /* @__PURE__ */ __name((command, fields = "ref,title") => command.option("--json", `print JSON; --json=${fields} keeps only those fields`), "jsonOption");
|
|
848
855
|
|
|
849
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
856
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/mail/sender-scores.js
|
|
850
857
|
var SCORED = "mail_sender_scores";
|
|
851
858
|
var DAY = 864e5;
|
|
852
859
|
var RECENT = 2 * 365 * DAY;
|
|
@@ -862,7 +869,7 @@ var demotedSenders = /* @__PURE__ */ __name(async (store) => {
|
|
|
862
869
|
return senders;
|
|
863
870
|
}, "demotedSenders");
|
|
864
871
|
|
|
865
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
872
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/mail/sync.js
|
|
866
873
|
var DAY2 = 864e5;
|
|
867
874
|
var EDGE = 2 * DAY2;
|
|
868
875
|
|
|
@@ -1983,14 +1990,15 @@ var groupScoped = /* @__PURE__ */ __name(async (store, env, only) => {
|
|
|
1983
1990
|
const scope = await groupScopeOf(store, env);
|
|
1984
1991
|
if (scope === void 0)
|
|
1985
1992
|
return void 0;
|
|
1986
|
-
const
|
|
1993
|
+
const byKind = accountsByKind(scope, await store.business.accounts());
|
|
1994
|
+
const kinds2 = /* @__PURE__ */ __name((kind) => byKind[kind] ?? [], "kinds");
|
|
1987
1995
|
const wanted = only ?? RESOURCES_SEARCHED;
|
|
1988
|
-
const kept = wanted.filter((kind) => kinds2
|
|
1996
|
+
const kept = wanted.filter((kind) => kinds2(kind).length > 0);
|
|
1989
1997
|
if (kept.length === 0)
|
|
1990
1998
|
throw new CliError("validation_error", `group ${scope.run.name} holds no account of ${wanted.join(", ")}`);
|
|
1991
1999
|
return {
|
|
1992
2000
|
only: kept,
|
|
1993
|
-
scope: Object.fromEntries(kept.map((kind) => [kind, kinds2
|
|
2001
|
+
scope: Object.fromEntries(kept.map((kind) => [kind, kinds2(kind)])),
|
|
1994
2002
|
skipped: wanted.filter((kind) => !kept.includes(kind)).map((resource) => ({
|
|
1995
2003
|
resource,
|
|
1996
2004
|
code: "not_found",
|
|
@@ -1998,10 +2006,11 @@ var groupScoped = /* @__PURE__ */ __name(async (store, env, only) => {
|
|
|
1998
2006
|
}))
|
|
1999
2007
|
};
|
|
2000
2008
|
}, "groupScoped");
|
|
2001
|
-
var searchEverywhere = /* @__PURE__ */ __name(async (store, env, { text: text3, limit, only, crmKinds, exact, timezone, plainOrder, shows }) => {
|
|
2009
|
+
var searchEverywhere = /* @__PURE__ */ __name(async (store, env, { text: text3, limit, only, crmKinds, source, exact, timezone, plainOrder, shows, harder }) => {
|
|
2002
2010
|
const accounts = await scopedAccounts(store, env);
|
|
2003
2011
|
const group = await groupScoped(store, env, only);
|
|
2004
2012
|
const messenger2 = { app: { ...APP, command: "tg" }, hintCommand: "memo" };
|
|
2013
|
+
const harderSkipped = harder && shows !== void 0 ? "a permission hides some kinds here, so no hit was sent to the model" : void 0;
|
|
2005
2014
|
const ask = /* @__PURE__ */ __name((offset) => searchAll(store, MEMO, {
|
|
2006
2015
|
text: text3,
|
|
2007
2016
|
limit,
|
|
@@ -2009,8 +2018,13 @@ var searchEverywhere = /* @__PURE__ */ __name(async (store, env, { text: text3,
|
|
|
2009
2018
|
...offset === void 0 ? {} : { offset },
|
|
2010
2019
|
...group === void 0 ? only === void 0 ? {} : { only } : { only: group.only, scope: group.scope },
|
|
2011
2020
|
...crmKinds === void 0 ? {} : { crmKinds },
|
|
2021
|
+
...source === void 0 ? {} : { source },
|
|
2022
|
+
// memo is the owner's own view of every account, personal and work alike.
|
|
2023
|
+
meetingScopes: ["personal", "work"],
|
|
2024
|
+
...only?.includes("meetings") ? { meetingsAsked: true } : {},
|
|
2012
2025
|
...exact ? { exact: true } : {},
|
|
2013
|
-
...timezone === void 0 ? {} : { timezone }
|
|
2026
|
+
...timezone === void 0 ? {} : { timezone },
|
|
2027
|
+
...harder && harderSkipped === void 0 ? { harder: { app: APP } } : {}
|
|
2014
2028
|
}, messenger2, (query) => searchStore(store, MEMO, query, messenger2), meaningLane({ env, store: /* @__PURE__ */ __name(async () => store, "store"), messenger: { app: { command: "memo" } } })), "ask");
|
|
2015
2029
|
const searched = shows === void 0 ? await ask() : await allowedPage(ask, limit, shows);
|
|
2016
2030
|
const found = group === void 0 ? searched : { ...searched, skipped: [...group.skipped, ...searched.skipped] };
|
|
@@ -2027,7 +2041,8 @@ var searchEverywhere = /* @__PURE__ */ __name(async (store, env, { text: text3,
|
|
|
2027
2041
|
...found,
|
|
2028
2042
|
items: lowerSuspicious(found.items, (item) => suspicious.has(item.ref)),
|
|
2029
2043
|
tasks: tasks.slice(0, limit),
|
|
2030
|
-
tasksIncomplete: tasksIncomplete || tasks.length > limit
|
|
2044
|
+
tasksIncomplete: tasksIncomplete || tasks.length > limit,
|
|
2045
|
+
...harderSkipped === void 0 ? {} : { harderSkipped }
|
|
2031
2046
|
};
|
|
2032
2047
|
}, "searchEverywhere");
|
|
2033
2048
|
var suspiciousRefs = /* @__PURE__ */ __name(async (store, items) => {
|
|
@@ -2292,7 +2307,7 @@ import { createHash } from "node:crypto";
|
|
|
2292
2307
|
import { existsSync, readFileSync as readFileSync2, statSync } from "node:fs";
|
|
2293
2308
|
import { basename, extname, relative, sep } from "node:path";
|
|
2294
2309
|
|
|
2295
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
2310
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/services/documents/extraction.js
|
|
2296
2311
|
var Proposal = object({
|
|
2297
2312
|
kind: picklist(["summary", "digest", "fact", "preference"]),
|
|
2298
2313
|
body: pipe(string(), trim(), minLength(1), maxLength(15e3)),
|
|
@@ -2300,13 +2315,13 @@ var Proposal = object({
|
|
|
2300
2315
|
});
|
|
2301
2316
|
var Proposals = object({ items: pipe(array(Proposal), maxLength(20)) });
|
|
2302
2317
|
|
|
2303
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
2318
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/services/documents/mirrors.js
|
|
2304
2319
|
var ID = pipe(string(), regex(/^[A-Za-z0-9_-]{1,200}$/));
|
|
2305
2320
|
|
|
2306
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
2321
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/services/documents/sync.js
|
|
2307
2322
|
var MAX_PICTURE_BYTES = 25 * 1024 * 1024;
|
|
2308
2323
|
|
|
2309
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
2324
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/fetch/addresses.js
|
|
2310
2325
|
import { isIP } from "node:net";
|
|
2311
2326
|
var within3 = /* @__PURE__ */ __name((address, [prefix, bits]) => {
|
|
2312
2327
|
for (let bit = 0; bit < bits; bit++) {
|
|
@@ -2377,7 +2392,7 @@ var isPublicAddress = /* @__PURE__ */ __name((address) => {
|
|
|
2377
2392
|
return within3(bytes, [[32], 3]) && !V6_PRIVATE.some((prefix) => within3(bytes, prefix));
|
|
2378
2393
|
}, "isPublicAddress");
|
|
2379
2394
|
|
|
2380
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
2395
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/fetch/page.js
|
|
2381
2396
|
import { lookup as dnsLookup } from "node:dns/promises";
|
|
2382
2397
|
import { request as httpRequest } from "node:http";
|
|
2383
2398
|
import { request as httpsRequest } from "node:https";
|
|
@@ -3135,12 +3150,13 @@ var withNotesAndTasks = /* @__PURE__ */ __name(async (store, env, { messages, ev
|
|
|
3135
3150
|
notRead.push({ source: "events", reason: "no calendar in the store \u2014 gcal <profile> sync" });
|
|
3136
3151
|
const tasks = await personTasks(store, messages.person, accounts, limit);
|
|
3137
3152
|
const incoming = await store.notes.links({ to: person });
|
|
3138
|
-
const
|
|
3153
|
+
const listed2 = await store.knowledge.listRelations({
|
|
3139
3154
|
about: person,
|
|
3140
3155
|
...scope === void 0 ? {} : { accounts: scope },
|
|
3141
3156
|
...deniedKinds.length ? { deniedKinds: [...deniedKinds] } : {},
|
|
3142
3157
|
limit: 500
|
|
3143
|
-
})
|
|
3158
|
+
});
|
|
3159
|
+
const relationships = listed2.items.filter((one2) => isUsable(one2.standing) && !(one2.provenance && SOURCE_REPORTS.has(one2.provenance)));
|
|
3144
3160
|
const files = await reportedFiles(store, incoming, limit);
|
|
3145
3161
|
const { subject: _, name: __, ...notes2 } = linked2;
|
|
3146
3162
|
return {
|
|
@@ -4170,14 +4186,14 @@ var search = [
|
|
|
4170
4186
|
command: ["search", "all"],
|
|
4171
4187
|
field: "summary",
|
|
4172
4188
|
before: "search stored messages, notes, calendar events and selected meeting transcripts",
|
|
4173
|
-
after: "messages, mail, notes, events and
|
|
4189
|
+
after: "messages, mail, notes, events, deals and meetings ranked together",
|
|
4174
4190
|
reason: "Memo searches imported accounts, mail and native notes without a live messenger; its scope, ranking and output controls are explicit provider differences."
|
|
4175
4191
|
},
|
|
4176
4192
|
{
|
|
4177
4193
|
command: ["search", "all"],
|
|
4178
4194
|
field: "description",
|
|
4179
4195
|
before: "search messenger messages and notes in the local store, calendar events when the store holds a calendar, and a meeting account's transcripts when --source names one \u2014 best match first; not mail (the separate memo CLI searches it: memo search mail), tasks, people, memories or projects. Use it when you do not know where something was written; search messages or notes reads one kind with all its fields",
|
|
4180
|
-
after: "messages, mail, notes, calendar events, deals, leads
|
|
4196
|
+
after: "messages, mail, notes, calendar events, deals, leads, business data and meeting passages from every meeting account, ranked together; not people, memories, projects or decisions. A kind you know reads better with its own search, with all its fields",
|
|
4181
4197
|
reason: "Memo searches imported accounts, mail and native notes without a live messenger; its scope, ranking and output controls are explicit provider differences."
|
|
4182
4198
|
},
|
|
4183
4199
|
{
|
|
@@ -4296,7 +4312,13 @@ var search = [
|
|
|
4296
4312
|
},
|
|
4297
4313
|
{
|
|
4298
4314
|
flags: "--only <resources>",
|
|
4299
|
-
description: "messages,mail,notes,events,crm,business, separated by commas",
|
|
4315
|
+
description: "messages,mail,notes,events,crm,business,meetings, separated by commas",
|
|
4316
|
+
takes_value: true,
|
|
4317
|
+
mandatory: false
|
|
4318
|
+
},
|
|
4319
|
+
{
|
|
4320
|
+
flags: "--source <accounts>",
|
|
4321
|
+
description: "only these accounts, separated by commas: provider:account as a hit shows it, a provider, a kind or group:<name>; each resource reads the ones of its kind, and one it names none of is left out",
|
|
4300
4322
|
takes_value: true,
|
|
4301
4323
|
mandatory: false
|
|
4302
4324
|
},
|
|
@@ -4306,6 +4328,12 @@ var search = [
|
|
|
4306
4328
|
takes_value: false,
|
|
4307
4329
|
mandatory: false
|
|
4308
4330
|
},
|
|
4331
|
+
{
|
|
4332
|
+
flags: "--harder",
|
|
4333
|
+
description: "a hosted model reorders the first 30 hits; sends the question and those hits to the provider you chose with memo models search-consents set <provider> --yes, only after that",
|
|
4334
|
+
takes_value: false,
|
|
4335
|
+
mandatory: false
|
|
4336
|
+
},
|
|
4309
4337
|
{
|
|
4310
4338
|
flags: "--project <project>",
|
|
4311
4339
|
description: "rank the key documents of this project (id, project:<id>, key, exact name or alias) first; nothing is left out",
|
|
@@ -5480,11 +5508,11 @@ var digestCommand = /* @__PURE__ */ __name((program, streams, env) => {
|
|
|
5480
5508
|
const { print } = answers(program, streams, env);
|
|
5481
5509
|
const digest = program.command("digest").description("the morning digest: your brief on what it collects, and the digests of past days").summary("the morning digest: your brief, past days");
|
|
5482
5510
|
briefCommand(digest, print, env);
|
|
5483
|
-
fromAppOption(annotate(digest.command("backfill"), { effects: LOCAL_WRITE })).summary("build the morning digests of past days, without sending them").description("build the morning digest each past day would have had: the morning-digest schedule's agent runs as its timer does (the same skill, flags and cost caps), reading the agenda as of that day's run time, and the result is kept as that day's run, marked backfill, for WireCat Desktop's digests screen. It is never sent to Telegram or mail. A day that already has a digest is skipped. Without --yes it only prints what it would build and the estimate: the days times the last digest run's cost. Each day is a paid model call: it stops once today's runs cost the schedule's daily cap or a day fails, and only you run it, never an agent. The store keeps what holds now, so a chat answered since reads as answered").requiredOption("--
|
|
5484
|
-
const from = dateOf(given2.
|
|
5485
|
-
const to = dateOf(given2.
|
|
5511
|
+
fromAppOption(annotate(digest.command("backfill"), { effects: LOCAL_WRITE })).summary("build the morning digests of past days, without sending them").description("build the morning digest each past day would have had: the morning-digest schedule's agent runs as its timer does (the same skill, flags and cost caps), reading the agenda as of that day's run time, and the result is kept as that day's run, marked backfill, for WireCat Desktop's digests screen. It is never sent to Telegram or mail. A day that already has a digest is skipped. Without --yes it only prints what it would build and the estimate: the days times the last digest run's cost. Each day is a paid model call: it stops once today's runs cost the schedule's daily cap or a day fails, and only you run it, never an agent. The store keeps what holds now, so a chat answered since reads as answered").requiredOption("--since-time <time>", "the first day, YYYY-MM-DD").requiredOption("--until-time <time>", "the last day, YYYY-MM-DD; not a day whose run time is still ahead").option("--yes", "build them; without it, only the estimate is printed").option("--json", "print JSON").action(async (given2, command) => {
|
|
5512
|
+
const from = dateOf(given2.sinceTime, "--since-time");
|
|
5513
|
+
const to = dateOf(given2.untilTime, "--until-time");
|
|
5486
5514
|
if (from > to)
|
|
5487
|
-
throw new CliError("validation_error", "--
|
|
5515
|
+
throw new CliError("validation_error", "--since-time is after --until-time", { param: "--since-time" });
|
|
5488
5516
|
const { state, schedule } = digestSchedule(env);
|
|
5489
5517
|
if (!schedule)
|
|
5490
5518
|
throw new CliError("not_found", `no ${DIGEST_SCHEDULE} schedule to build from \u2014 memo skill show morning-digest says how to make one`, { reason: "backfill.no-schedule" });
|
|
@@ -5497,8 +5525,8 @@ var digestCommand = /* @__PURE__ */ __name((program, streams, env) => {
|
|
|
5497
5525
|
});
|
|
5498
5526
|
const all = daysOf(from, to, when.daily);
|
|
5499
5527
|
if ((all.at(-1)?.at ?? 0) > Date.now())
|
|
5500
|
-
throw new CliError("validation_error", `the ${given2.
|
|
5501
|
-
param: "--
|
|
5528
|
+
throw new CliError("validation_error", `the ${given2.untilTime} digest's time has not come yet; --until-time an earlier day`, {
|
|
5529
|
+
param: "--until-time"
|
|
5502
5530
|
});
|
|
5503
5531
|
const runs = join7(file, "..", "runs");
|
|
5504
5532
|
const done = new Set((existsSync7(runs) ? readdirSync4(runs) : []).filter((name2) => name2.endsWith(".report.json")).map((name2) => localDate(runTime(name2))));
|
|
@@ -5803,7 +5831,7 @@ var doctorCommand = /* @__PURE__ */ __name((...args) => {
|
|
|
5803
5831
|
}, SHELL_OVERRIDES.doctor);
|
|
5804
5832
|
}, "doctorCommand");
|
|
5805
5833
|
|
|
5806
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
5834
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/calendar/sync.js
|
|
5807
5835
|
var DAY6 = 864e5;
|
|
5808
5836
|
var SLOTS_EVERY = 7 * DAY6;
|
|
5809
5837
|
var isWindow = /* @__PURE__ */ __name((value) => typeof value?.from === "number" && typeof value.to === "number", "isWindow");
|
|
@@ -5883,10 +5911,10 @@ var calendarStatus = /* @__PURE__ */ __name(async (store, accountId, { profile,
|
|
|
5883
5911
|
return { items, page: 1, limit: Math.max(1, items.length), hasMore: false };
|
|
5884
5912
|
}, "calendarStatus");
|
|
5885
5913
|
|
|
5886
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
5914
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/calendar/feeds.js
|
|
5887
5915
|
var FEED_LIMITS = { maxBytes: 10 * 1024 * 1024, timeoutMs: 3e4, redirects: 5 };
|
|
5888
5916
|
|
|
5889
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
5917
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/calendar/reads.js
|
|
5890
5918
|
var LIST = "events list";
|
|
5891
5919
|
var EVENT_TYPES = [
|
|
5892
5920
|
"default",
|
|
@@ -5963,7 +5991,7 @@ var accountsMeta = /* @__PURE__ */ __name(async (store, accounts, skipped, now)
|
|
|
5963
5991
|
};
|
|
5964
5992
|
}, "accountsMeta");
|
|
5965
5993
|
|
|
5966
|
-
// node_modules/.pnpm/@wirecat+cli-core@0.
|
|
5994
|
+
// node_modules/.pnpm/@wirecat+cli-core@0.624.0_@wirecat+cli-base@0.95.0_commander@15.0.0_esbuild@0.28.2_type_845871b12d72ec55150c07203d8cbfbb/node_modules/@wirecat/cli-core/dist/calendar/writer.js
|
|
5967
5995
|
var EVENTS_NOTIFY_KEY = "events.notify";
|
|
5968
5996
|
var EVENTS_DELETE_SERIES_KEY = "events.delete.series";
|
|
5969
5997
|
var EVENTS_REMIND_HOOK_KEY = "events.remind.hook";
|
|
@@ -6291,6 +6319,12 @@ var EXAMPLES = {
|
|
|
6291
6319
|
"memo models consents set openai --model gpt-4o-mini --yes"
|
|
6292
6320
|
],
|
|
6293
6321
|
"models consents revoke": ["memo models consents revoke"],
|
|
6322
|
+
"models search-consents show": ["memo models search-consents show --json"],
|
|
6323
|
+
"models search-consents set": [
|
|
6324
|
+
"memo models search-consents set anthropic",
|
|
6325
|
+
"memo models search-consents set anthropic --yes"
|
|
6326
|
+
],
|
|
6327
|
+
"models search-consents revoke": ["memo models search-consents revoke"],
|
|
6294
6328
|
"models keys set": ["memo models keys set openai", "memo models keys set anthropic"],
|
|
6295
6329
|
"models keys remove": ["memo models keys remove openai"],
|
|
6296
6330
|
"models add": [
|
|
@@ -6641,8 +6675,8 @@ var EXAMPLES = {
|
|
|
6641
6675
|
"schedule list": ["memo schedule list", "memo schedule list kind:agent --json"],
|
|
6642
6676
|
"schedule run": ["memo schedule run digest"],
|
|
6643
6677
|
"digest backfill": [
|
|
6644
|
-
"memo digest backfill --
|
|
6645
|
-
"memo digest backfill --
|
|
6678
|
+
"memo digest backfill --since-time 2026-11-01 --until-time 2026-11-07",
|
|
6679
|
+
"memo digest backfill --since-time 2026-11-01 --until-time 2026-11-07 --yes --json"
|
|
6646
6680
|
],
|
|
6647
6681
|
"digest brief show": ["memo digest brief show", "memo digest brief show --json"],
|
|
6648
6682
|
"digest brief edit": [
|
|
@@ -6651,6 +6685,8 @@ var EXAMPLES = {
|
|
|
6651
6685
|
"memo digest brief edit --undo"
|
|
6652
6686
|
],
|
|
6653
6687
|
"digest brief reset": ["memo digest brief reset"],
|
|
6688
|
+
"schedule pause": ["memo schedule pause digest"],
|
|
6689
|
+
"schedule resume": ["memo schedule resume digest"],
|
|
6654
6690
|
"schedule remove": ["memo schedule remove digest"],
|
|
6655
6691
|
"schedule exec": ["memo schedule exec ~/.local/state/cli-memo/schedules/digest/schedule.json"],
|
|
6656
6692
|
"templates list": ["memo templates list", "memo templates list channel:telegram source:stored --json"],
|
|
@@ -6676,8 +6712,8 @@ var EXAMPLES = {
|
|
|
6676
6712
|
"mcp server stop": ["memo mcp server stop"],
|
|
6677
6713
|
"search all": [
|
|
6678
6714
|
"memo search all 'budget harbour'",
|
|
6679
|
-
"memo search all '
|
|
6680
|
-
"memo search all '
|
|
6715
|
+
"memo search all 'Rental agreement' --only business",
|
|
6716
|
+
"memo search all 'release date' --source zoom:work,notes --json"
|
|
6681
6717
|
],
|
|
6682
6718
|
"search messages": ["memo search messages 'friday meeting has:voice'"],
|
|
6683
6719
|
"search mail": ["memo search mail 'mailbox:important budget' --source email:me@example.com"],
|
|
@@ -10224,10 +10260,10 @@ var mcpCommandDefinition = /* @__PURE__ */ __name((program, streams, env, create
|
|
|
10224
10260
|
}).summary("serve this profile's commands to an AI agent").description("serve memo commands over MCP on stdio or authenticated HTTP, limited by saved permissions").option("--permission <key=level>", "tighten one saved permission for this server; repeat for more keys", (value, previous = []) => [...previous, value]).option("--http", "serve on 127.0.0.1 behind an HTTPS tunnel with an owner access-code login").option("--port <port>", `local HTTP port (default ${DEFAULT_PORT}); requires --http`).option("--public-url <url>", "tunnel's HTTPS address without /mcp, or a path of it such as https://<name>.ts.net/memo; requires --http").action(async (options) => {
|
|
10225
10261
|
if (!options.http && (options.port !== void 0 || options.publicUrl !== void 0))
|
|
10226
10262
|
throw new CliError("validation_error", "--port and --public-url require --http");
|
|
10227
|
-
const { createMemoServer } = await import("./server-
|
|
10263
|
+
const { createMemoServer } = await import("./server-FX7RKPL4.js");
|
|
10228
10264
|
const build = /* @__PURE__ */ __name(() => createMemoServer(env, createProgram2, options.permission), "build");
|
|
10229
10265
|
if (options.http) {
|
|
10230
|
-
const { httpLockFile, mcpUrlOf, portOf, publicUrlOf, serveOverHttp } = await import("./mcp-
|
|
10266
|
+
const { httpLockFile, mcpUrlOf, portOf, publicUrlOf, serveOverHttp } = await import("./mcp-UCDMODSA.js");
|
|
10231
10267
|
const publicUrl = publicUrlOf(options.publicUrl, {
|
|
10232
10268
|
missing: "--http",
|
|
10233
10269
|
reaches: "the browser apps reach memo",
|
|
@@ -10279,7 +10315,7 @@ var mcpCommandDefinition = /* @__PURE__ */ __name((program, streams, env, create
|
|
|
10279
10315
|
});
|
|
10280
10316
|
});
|
|
10281
10317
|
annotate(mcp2.command("revoke"), { effects: LOCAL_WRITE, mcp: false, examples: ["memo mcp revoke --json"] }).summary("forget every login given to a browser app").description("forget every login `memo mcp serve --http` gave a browser app; each app must log in again").option("--json", "print JSON").action(async function() {
|
|
10282
|
-
const { revokeAll } = await import("./mcp-
|
|
10318
|
+
const { revokeAll } = await import("./mcp-UCDMODSA.js");
|
|
10283
10319
|
revokeAll(httpTokenFile(env));
|
|
10284
10320
|
out.print(this.opts().json, itemAnswer({ revoked: true }));
|
|
10285
10321
|
});
|
|
@@ -12261,26 +12297,66 @@ var TASKS_OF_HIT = {
|
|
|
12261
12297
|
],
|
|
12262
12298
|
why: "{count} open tasks point at this result"
|
|
12263
12299
|
};
|
|
12264
|
-
var
|
|
12300
|
+
var MEETING_PASSAGE = {
|
|
12301
|
+
id: "hit.passage",
|
|
12302
|
+
kind: "command",
|
|
12303
|
+
command: "meetings passage",
|
|
12304
|
+
args: [
|
|
12305
|
+
{ name: "reference", required: true },
|
|
12306
|
+
{ name: "source", required: true }
|
|
12307
|
+
],
|
|
12308
|
+
why: "read the lines around this meeting hit before citing it"
|
|
12309
|
+
};
|
|
12310
|
+
var MEETINGS_INDEX = {
|
|
12311
|
+
id: "meetings.index",
|
|
12312
|
+
kind: "command",
|
|
12313
|
+
command: "search meetings",
|
|
12314
|
+
args: [
|
|
12315
|
+
{ name: "query", required: true },
|
|
12316
|
+
{ name: "source", required: true }
|
|
12317
|
+
],
|
|
12318
|
+
why: "builds {source}'s meeting search index, then finds what search all could not yet"
|
|
12319
|
+
};
|
|
12320
|
+
var pendingMeetings = /* @__PURE__ */ __name((found) => (found.meetings ?? []).filter(({ indexing }) => indexing === "pending"), "pendingMeetings");
|
|
12321
|
+
var meetingsMissed = /* @__PURE__ */ __name((found) => [
|
|
12322
|
+
...pendingMeetings(found).map(({ provider, account: account2 }) => ({
|
|
12323
|
+
field: "items",
|
|
12324
|
+
why: `${provider}:${account2}: meetings saved since its search index was last built are not found yet`,
|
|
12325
|
+
step: MEETINGS_INDEX.id
|
|
12326
|
+
})),
|
|
12327
|
+
// A kind `--source` named no account of was left out on purpose: `meta.issues` lists it, `missing` does not.
|
|
12328
|
+
...found.skipped.filter(({ resource, source, code }) => resource === void 0 ? kindIn(source.split(":")[0] ?? "") === "meetings" : resource === "meetings" && code !== "not_found").map(({ resource, source, reason }) => ({ field: "items", why: `${source ?? resource} not searched: ${reason}` }))
|
|
12329
|
+
], "meetingsMissed");
|
|
12330
|
+
var harderNote = /* @__PURE__ */ __name((found) => found.harderSkipped !== void 0 ? `not reordered by the model: ${found.harderSkipped}` : found.harder === void 0 ? void 0 : found.harder.applied ? `reordered by ${found.harder.provider} ${found.harder.model} (${found.harder.sent} hits sent, ${found.harder.cost_usd === null ? "cost unknown" : `$${found.harder.cost_usd}`}, ${found.harder.ms} ms)` : `not reordered by the model: ${found.harder.reason}`, "harderNote");
|
|
12331
|
+
var allAnswer = /* @__PURE__ */ __name((found, limit, exact = false, leftOut = []) => {
|
|
12265
12332
|
const archive = coverageGaps({ coverage: found.coverage }, found.items.length);
|
|
12266
12333
|
const next = found.items.flatMap((item) => {
|
|
12334
|
+
const passage = item.kind === "meeting" && item.cueRef !== void 0 ? [stepOf(MEETING_PASSAGE, { args: { reference: item.cueRef, source: `${item.provider}:${item.account}` } })] : [];
|
|
12267
12335
|
const tasks = found.tasks.filter((task) => task.source === item.ref);
|
|
12268
12336
|
const held = tasks[0]?.heldBy;
|
|
12269
12337
|
if (held === void 0)
|
|
12270
|
-
return
|
|
12338
|
+
return passage;
|
|
12271
12339
|
return [
|
|
12272
12340
|
stepOf(TASKS_OF_HIT, {
|
|
12273
12341
|
args: { query: `source:"${item.ref}"`, source: `${held.provider}:${held.account}` },
|
|
12274
12342
|
values: { count: tasks.length }
|
|
12275
|
-
})
|
|
12343
|
+
}),
|
|
12344
|
+
...passage
|
|
12276
12345
|
];
|
|
12277
12346
|
});
|
|
12347
|
+
const indexing = pendingMeetings(found).map(({ provider, account: account2 }) => stepOf(MEETINGS_INDEX, {
|
|
12348
|
+
args: { query: found.query, source: `${provider}:${account2}` },
|
|
12349
|
+
values: { source: `${provider}:${account2}` }
|
|
12350
|
+
}));
|
|
12351
|
+
const steps = [...archive.next, ...indexing, ...next].slice(0, MAX_NEXT_STEPS);
|
|
12278
12352
|
return listAnswer("search all", {
|
|
12279
12353
|
items: found.items.map(allHitItem),
|
|
12280
12354
|
limit,
|
|
12281
12355
|
has_more: found.hasMore,
|
|
12282
|
-
...
|
|
12356
|
+
...steps.length ? { next: steps } : {},
|
|
12283
12357
|
missing: [
|
|
12358
|
+
...meetingsMissed(found),
|
|
12359
|
+
...leftOut.map(({ why }) => ({ field: "items", why })),
|
|
12284
12360
|
...archive.missing,
|
|
12285
12361
|
...meaningMissed(found.notes?.meaningSkipped, exact),
|
|
12286
12362
|
...messagesMeaningMissed(found.messages?.meaningSkipped),
|
|
@@ -12290,9 +12366,13 @@ var allAnswer = /* @__PURE__ */ __name((found, limit, exact = false) => {
|
|
|
12290
12366
|
field: "items",
|
|
12291
12367
|
why: `every word must be in one record, and nothing in ${found.searched.join(", ")} holds ${found.unmatched.map((word) => `"${word}"`).join(", ")}`
|
|
12292
12368
|
}
|
|
12293
|
-
] : []
|
|
12369
|
+
] : [],
|
|
12370
|
+
...found.harder && !found.harder.applied || found.harderSkipped !== void 0 ? [{ field: "order", why: harderNote(found) }] : []
|
|
12294
12371
|
],
|
|
12295
|
-
meta:
|
|
12372
|
+
meta: {
|
|
12373
|
+
...metaOf2(found.accounts, found.skipped, archive.missing.length > 0),
|
|
12374
|
+
...found.harder ? { ranking: harderRanking(found.harder) } : {}
|
|
12375
|
+
}
|
|
12296
12376
|
});
|
|
12297
12377
|
}, "allAnswer");
|
|
12298
12378
|
var kindAnswer = /* @__PURE__ */ __name((kind, found, limit, level, query = "") => {
|
|
@@ -12399,13 +12479,24 @@ var groupMessengers = /* @__PURE__ */ __name(async (store, env, text3) => {
|
|
|
12399
12479
|
throw new CliError("not_found", `group ${scope.run.name} holds no messenger account`);
|
|
12400
12480
|
return messages;
|
|
12401
12481
|
}, "groupMessengers");
|
|
12402
|
-
var ONLY =
|
|
12482
|
+
var ONLY = RESOURCES_SEARCHED;
|
|
12403
12483
|
var onlyOf2 = /* @__PURE__ */ __name((value) => {
|
|
12404
12484
|
const selected = value.split(",").map((part) => part.trim());
|
|
12405
12485
|
if (!selected.length || selected.some((part) => !ONLY.includes(part)))
|
|
12406
12486
|
throw new InvalidArgumentError(`choose ${ONLY.join(",")}, separated by commas`);
|
|
12407
12487
|
return [...new Set(selected)];
|
|
12408
12488
|
}, "onlyOf");
|
|
12489
|
+
var MEETING_KEYS = ["search.meetings", "meetings.passage"];
|
|
12490
|
+
var READS2 = /* @__PURE__ */ new Set(["allow", "readonly"]);
|
|
12491
|
+
var meetingsDenied = /* @__PURE__ */ __name((command, env) => {
|
|
12492
|
+
const levels = memoLevels(env, environmentOf(command).agent?.overrides ?? []);
|
|
12493
|
+
for (const key of MEETING_KEYS) {
|
|
12494
|
+
const { level } = levelFor(levels, key);
|
|
12495
|
+
if (!READS2.has(level))
|
|
12496
|
+
return { why: `meetings left out: the permissions set ${key} to ${level}` };
|
|
12497
|
+
}
|
|
12498
|
+
return void 0;
|
|
12499
|
+
}, "meetingsDenied");
|
|
12409
12500
|
var levelOf = /* @__PURE__ */ __name(({ brief, full }) => {
|
|
12410
12501
|
if (brief && full)
|
|
12411
12502
|
throw new CliError("validation_error", "--brief and --full ask for opposite things \u2014 pick one");
|
|
@@ -12422,13 +12513,22 @@ var searchCommandDefinition = /* @__PURE__ */ __name((program, streams, env) =>
|
|
|
12422
12513
|
throw new InvalidArgumentError("at most 100");
|
|
12423
12514
|
return limit;
|
|
12424
12515
|
}, 20).option("--exact", "words as written; skip meaning search").option("--timezone <zone>", "IANA timezone for calendar date boundaries").option("--json", "print JSON; --json=id,title keeps only those fields"), "queryOptions");
|
|
12425
|
-
queryOptions(annotate(group.command("all"), { effects: LOCAL_READ, output: { entity: "hit" } }).description("messages, mail, notes, calendar events, deals, leads
|
|
12516
|
+
queryOptions(annotate(group.command("all"), { effects: LOCAL_READ, output: { entity: "hit" } }).description("messages, mail, notes, calendar events, deals, leads, business data and meeting passages from every meeting account, ranked together; not people, memories, projects or decisions. A kind you know reads better with its own search, with all its fields").summary("messages, mail, notes, events, deals and meetings ranked together")).option("--only <resources>", `${ONLY.join(",")}, separated by commas`, onlyOf2).option("--source <accounts>", "only these accounts, separated by commas: provider:account as a hit shows it, a provider, a kind or group:<name>; each resource reads the ones of its kind, and one it names none of is left out").option("--plain-order", "best first by the words alone, without moving mail from suspicious senders down").option("--harder", "a hosted model reorders the first 30 hits; sends the question and those hits to the provider you chose with memo models search-consents set <provider> --yes, only after that").option("--project <project>", PROJECT_ORDER_HELP).addHelpText("after", `
|
|
12426
12517
|
content: narrows a search to the text of files, transcript: to voice transcripts, filename: to file names \u2014 memo search all 'content:invoice'.
|
|
12427
12518
|
Calendar events come from every calendar gcal stored; an event's title, description and place are written by whoever sent the invitation.
|
|
12428
12519
|
crm finds deals and leads by the words of their title only.
|
|
12429
12520
|
business finds invoices, payments, orders, contracts, subscriptions, products and wallets by the words of their numbers and names.
|
|
12430
12521
|
--json: the list is items, each a hit as in tg search all: ref, kind, title, timestamp, excerpt.`).action(async (words, options, command) => {
|
|
12431
|
-
const
|
|
12522
|
+
const denied = meetingsDenied(command, env);
|
|
12523
|
+
const asked = options.only ?? [...RESOURCES_SEARCHED];
|
|
12524
|
+
const wanted = denied ? asked.filter((one2) => one2 !== "meetings") : options.only;
|
|
12525
|
+
if (wanted?.length === 0)
|
|
12526
|
+
throw new CliError("permission_error", `search all has nothing it may read: ${denied?.why}`, {
|
|
12527
|
+
reason: "search.all-denied"
|
|
12528
|
+
});
|
|
12529
|
+
const leftOut = denied ? [denied] : [];
|
|
12530
|
+
const owner = await whoRuns(command, env, { question: "search all" }) === "owner";
|
|
12531
|
+
const gate = lanesFor(command, wanted, owner ? [] : deniedCrm(command, env));
|
|
12432
12532
|
const answer = await withStore(env, async (store) => {
|
|
12433
12533
|
const found = await searchEverywhere(store, env, {
|
|
12434
12534
|
text: words.join(" "),
|
|
@@ -12436,8 +12536,10 @@ business finds invoices, payments, orders, contracts, subscriptions, products an
|
|
|
12436
12536
|
...gate.only === void 0 ? {} : { only: gate.only },
|
|
12437
12537
|
...gate.shows === void 0 ? {} : { shows: gate.shows },
|
|
12438
12538
|
...gate.crmKinds === void 0 ? {} : { crmKinds: gate.crmKinds },
|
|
12539
|
+
...options.source === void 0 ? {} : { source: options.source },
|
|
12439
12540
|
...options.exact ? { exact: true } : {},
|
|
12440
12541
|
...options.plainOrder ? { plainOrder: true } : {},
|
|
12542
|
+
...options.harder ? { harder: true } : {},
|
|
12441
12543
|
...options.timezone === void 0 ? {} : { timezone: options.timezone }
|
|
12442
12544
|
});
|
|
12443
12545
|
return {
|
|
@@ -12447,6 +12549,9 @@ business finds invoices, payments, orders, contracts, subscriptions, products an
|
|
|
12447
12549
|
};
|
|
12448
12550
|
});
|
|
12449
12551
|
if (!options.json) {
|
|
12552
|
+
for (const { why } of leftOut)
|
|
12553
|
+
streams.diagnostic(`${why}
|
|
12554
|
+
`);
|
|
12450
12555
|
streams.diagnostic(`searched: ${answer.accounts.map(({ provider, account: account2 }) => `${provider}:${account2}`).join(", ") || "nothing"}
|
|
12451
12556
|
`);
|
|
12452
12557
|
for (const skipped of answer.skipped)
|
|
@@ -12460,9 +12565,13 @@ business finds invoices, payments, orders, contracts, subscriptions, products an
|
|
|
12460
12565
|
`);
|
|
12461
12566
|
if (answer.messages?.meaningSkipped)
|
|
12462
12567
|
streams.diagnostic(`${messagesMeaningNote(answer.messages.meaningSkipped)}
|
|
12568
|
+
`);
|
|
12569
|
+
const harder = harderNote(answer);
|
|
12570
|
+
if (harder)
|
|
12571
|
+
streams.diagnostic(`${harder}
|
|
12463
12572
|
`);
|
|
12464
12573
|
}
|
|
12465
|
-
print(options.json, allAnswer(answer, options.limit, options.exact), [
|
|
12574
|
+
print(options.json, allAnswer(answer, options.limit, options.exact, leftOut), [
|
|
12466
12575
|
...answer.items.map((item) => `${"key" in item ? "key " : ""}${item.kind} ${item.ref}
|
|
12467
12576
|
${item.text}`),
|
|
12468
12577
|
...answer.tasks.map((task) => `task task:${task.id} ${task.kind} ${task.source}`)
|