@wirecat/cli-memo 0.29.0 → 0.31.0
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/README.md +1 -1
- package/dist/actions/command.js +5 -5
- package/dist/actions/command.js.map +1 -1
- package/dist/agents/command.js +1 -1
- package/dist/agents/command.js.map +1 -1
- package/dist/answers/command.d.ts.map +1 -1
- package/dist/answers/command.js +4 -3
- package/dist/answers/command.js.map +1 -1
- package/dist/bin/memo.js +8 -0
- package/dist/bin/memo.js.map +1 -1
- package/dist/config.d.ts +8 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +15 -7
- package/dist/config.js.map +1 -1
- package/dist/context/command.d.ts.map +1 -1
- package/dist/context/command.js +4 -3
- package/dist/context/command.js.map +1 -1
- package/dist/discovery/command.d.ts +1 -1
- package/dist/discovery/command.js +2 -2
- package/dist/discovery/command.js.map +1 -1
- package/dist/doctor/command.d.ts +81 -0
- package/dist/doctor/command.d.ts.map +1 -0
- package/dist/doctor/command.js +150 -0
- package/dist/doctor/command.js.map +1 -0
- package/dist/effects.d.ts.map +1 -1
- package/dist/effects.js +3 -0
- package/dist/effects.js.map +1 -1
- package/dist/examples.d.ts.map +1 -1
- package/dist/examples.js +3 -0
- package/dist/examples.js.map +1 -1
- package/dist/facts/command.js +5 -5
- package/dist/facts/command.js.map +1 -1
- package/dist/json-fields.d.ts +16 -0
- package/dist/json-fields.d.ts.map +1 -0
- package/dist/json-fields.js +53 -0
- package/dist/json-fields.js.map +1 -0
- package/dist/knowledge/command.d.ts.map +1 -1
- package/dist/knowledge/command.js +17 -21
- package/dist/knowledge/command.js.map +1 -1
- package/dist/knowledge/meeting-projects-command.js +1 -1
- package/dist/knowledge/meeting-projects-command.js.map +1 -1
- package/dist/mail/command.d.ts.map +1 -1
- package/dist/mail/command.js +62 -17
- package/dist/mail/command.js.map +1 -1
- package/dist/mail/domain-age.d.ts +21 -0
- package/dist/mail/domain-age.d.ts.map +1 -0
- package/dist/mail/domain-age.js +99 -0
- package/dist/mail/domain-age.js.map +1 -0
- package/dist/mail/gmail.d.ts +12 -3
- package/dist/mail/gmail.d.ts.map +1 -1
- package/dist/mail/gmail.js +29 -18
- package/dist/mail/gmail.js.map +1 -1
- package/dist/mail/headers.d.ts +20 -1
- package/dist/mail/headers.d.ts.map +1 -1
- package/dist/mail/headers.js +49 -3
- package/dist/mail/headers.js.map +1 -1
- package/dist/mail/himalaya.d.ts +5 -0
- package/dist/mail/himalaya.d.ts.map +1 -1
- package/dist/mail/himalaya.js +34 -5
- package/dist/mail/himalaya.js.map +1 -1
- package/dist/mail/import.d.ts +7 -1
- package/dist/mail/import.d.ts.map +1 -1
- package/dist/mail/import.js +120 -3
- package/dist/mail/import.js.map +1 -1
- package/dist/mail/mbox.d.ts.map +1 -1
- package/dist/mail/mbox.js +5 -1
- package/dist/mail/mbox.js.map +1 -1
- package/dist/mail/messages-command.d.ts.map +1 -1
- package/dist/mail/messages-command.js +4 -3
- package/dist/mail/messages-command.js.map +1 -1
- package/dist/mail/probe.d.ts +7 -1
- package/dist/mail/probe.d.ts.map +1 -1
- package/dist/mail/probe.js +12 -1
- package/dist/mail/probe.js.map +1 -1
- package/dist/mail/resume.d.ts +46 -0
- package/dist/mail/resume.d.ts.map +1 -0
- package/dist/mail/resume.js +62 -0
- package/dist/mail/resume.js.map +1 -0
- package/dist/mail/rules.d.ts +2 -2
- package/dist/mail/rules.d.ts.map +1 -1
- package/dist/mail/rules.js +3 -3
- package/dist/mail/rules.js.map +1 -1
- package/dist/mail/score.d.ts +50 -0
- package/dist/mail/score.d.ts.map +1 -0
- package/dist/mail/score.js +118 -0
- package/dist/mail/score.js.map +1 -0
- package/dist/mail/source.d.ts +11 -2
- package/dist/mail/source.d.ts.map +1 -1
- package/dist/mail/source.js +7 -3
- package/dist/mail/source.js.map +1 -1
- package/dist/mail/status.d.ts +26 -0
- package/dist/mail/status.d.ts.map +1 -0
- package/dist/mail/status.js +59 -0
- package/dist/mail/status.js.map +1 -0
- package/dist/memories/command.js +6 -6
- package/dist/memories/command.js.map +1 -1
- package/dist/notes/command.js +6 -6
- package/dist/notes/command.js.map +1 -1
- package/dist/notes/folders-command.d.ts.map +1 -1
- package/dist/notes/folders-command.js +6 -4
- package/dist/notes/folders-command.js.map +1 -1
- package/dist/notes/search.js +1 -1
- package/dist/notes/search.js.map +1 -1
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +1 -1
- package/dist/options.js.map +1 -1
- package/dist/output.d.ts +9 -0
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +35 -3
- package/dist/output.js.map +1 -1
- package/dist/program.d.ts +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +9 -1
- package/dist/program.js.map +1 -1
- package/dist/reasons.d.ts.map +1 -1
- package/dist/reasons.js +6 -0
- package/dist/reasons.js.map +1 -1
- package/dist/records/run.d.ts +1 -1
- package/dist/records/run.d.ts.map +1 -1
- package/dist/records/run.js +3 -3
- package/dist/records/run.js.map +1 -1
- package/dist/run/auto.d.ts +11 -1
- package/dist/run/auto.d.ts.map +1 -1
- package/dist/run/auto.js +40 -8
- package/dist/run/auto.js.map +1 -1
- package/dist/run/import.d.ts.map +1 -1
- package/dist/run/import.js +12 -5
- package/dist/run/import.js.map +1 -1
- package/dist/search/answers.d.ts +61 -0
- package/dist/search/answers.d.ts.map +1 -0
- package/dist/search/answers.js +39 -0
- package/dist/search/answers.js.map +1 -0
- package/dist/search/command.d.ts.map +1 -1
- package/dist/search/command.js +10 -6
- package/dist/search/command.js.map +1 -1
- package/dist/tags/command.d.ts.map +1 -1
- package/dist/tags/command.js +11 -3
- package/dist/tags/command.js.map +1 -1
- package/dist/tasks/command.js +2 -2
- package/dist/tasks/command.js.map +1 -1
- package/dist/tasks/relations-command.js +3 -3
- package/dist/tasks/relations-command.js.map +1 -1
- package/dist/update.d.ts +26 -0
- package/dist/update.d.ts.map +1 -0
- package/dist/update.js +67 -0
- package/dist/update.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/vocabulary/command.js +4 -4
- package/dist/vocabulary/command.js.map +1 -1
- package/package.json +5 -3
- package/skills/cli-memo/SKILL.md +12 -5
package/README.md
CHANGED
|
@@ -346,7 +346,7 @@ More: [security](https://github.com/WireCatLabs/cli-memo/blob/main/docs/security
|
|
|
346
346
|
reported, not read.
|
|
347
347
|
- Search by meaning embeds at most 600 chunks a run; the next run continues.
|
|
348
348
|
- `memo sync --mail` reads 200 new messages per account a run by default (`--limit`) and keeps up to 1,000,000
|
|
349
|
-
characters of a body and 200,000 of an attachment's text (`mail.
|
|
349
|
+
characters of a body and 200,000 of an attachment's text (`mail.max_body_chars`, `mail.max_attachment_chars`).
|
|
350
350
|
- Searches return at most 100 results; `tags list` shows 100 labels unless `--limit` says more.
|
|
351
351
|
- Tags are 1–32 letters a–z, digits or hyphens.
|
|
352
352
|
|
package/dist/actions/command.js
CHANGED
|
@@ -17,32 +17,32 @@ export const actionsCommand = (program, streams, env) => {
|
|
|
17
17
|
.option("--account <account>", "the account that would act, when the provider has several")
|
|
18
18
|
.option("--target <ref>", "what it acts on: msg:, chat:, contact:, person:, task:, …")
|
|
19
19
|
.option("--payload <json>", "what to do, as JSON, such as the reply's text")
|
|
20
|
-
.option("--json", "print JSON")
|
|
20
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
21
21
|
.action((kind, { asOwner, ...options }) => run(options.json, (store) => propose(store, { ...options, kind }, authorOf(env, asOwner))));
|
|
22
22
|
actions
|
|
23
23
|
.command("list")
|
|
24
24
|
.description("proposed actions, newest first")
|
|
25
25
|
.option("--status <status>", PROPOSAL_STATUSES.join(", "), oneOf(PROPOSAL_STATUSES))
|
|
26
26
|
.option("--limit <n>", "most actions, up to 500", positive, 100)
|
|
27
|
-
.option("--json", "print JSON")
|
|
27
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
28
28
|
.action((options) => run(options.json, (store) => pageOf(options.limit, (limit) => store.proposedActions.list({ limit, ...(options.status === undefined ? {} : { status: options.status }) }))));
|
|
29
29
|
actions
|
|
30
30
|
.command("show")
|
|
31
31
|
.description("one proposed action, with its payload")
|
|
32
32
|
.argument("<id>", "the action's id, as actions list gives it")
|
|
33
|
-
.option("--json", "print JSON")
|
|
33
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
34
34
|
.action((id, options) => run(options.json, (store) => store.proposedActions.get(id)));
|
|
35
35
|
actions
|
|
36
36
|
.command("confirm")
|
|
37
37
|
.description("confirm it: it becomes a task in the account that would act; nothing is sent")
|
|
38
38
|
.argument("<id>", "the action's id, as actions list gives it")
|
|
39
|
-
.option("--json", "print JSON")
|
|
39
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
40
40
|
.action((id, options) => run(options.json, (store) => approveAsTask(store, id)));
|
|
41
41
|
actions
|
|
42
42
|
.command("reject")
|
|
43
43
|
.description("reject it; nothing is done")
|
|
44
44
|
.argument("<id>", "the action's id, as actions list gives it")
|
|
45
|
-
.option("--json", "print JSON")
|
|
45
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
46
46
|
.action((id, options) => run(options.json, (store) => store.proposedActions.reject(id)));
|
|
47
47
|
};
|
|
48
48
|
//# sourceMappingURL=command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/actions/command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAuB,MAAM,yBAAyB,CAAA;AAEhF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAoB,OAAO,EAAE,MAAM,cAAc,CAAA;AAExD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IACjG,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,kFAAkF,CAAC,CAAA;IAElG,QAAQ,CACN,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,4EAA4E,CAAC,CACjH;SACE,QAAQ,CAAC,QAAQ,EAAE,wEAAwE,CAAC;SAC5F,cAAc,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAC1D,cAAc,CAAC,uBAAuB,EAAE,4CAA4C,CAAC;SACrF,MAAM,CAAC,qBAAqB,EAAE,2DAA2D,CAAC;SAC1F,MAAM,CAAC,gBAAgB,EAAE,2DAA2D,CAAC;SACrF,MAAM,CAAC,kBAAkB,EAAE,+CAA+C,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/actions/command.ts"],"names":[],"mappings":"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"}
|
package/dist/agents/command.js
CHANGED
|
@@ -12,7 +12,7 @@ export const agentsCommand = (program, streams, env) => {
|
|
|
12
12
|
.option("--tool <name>", "only this tool")
|
|
13
13
|
.option("--agent <name>", "only this agent, such as tg-mcp or memo-mcp")
|
|
14
14
|
.option("--limit <n>", "most rows, up to 500", positive, 100)
|
|
15
|
-
.option("--json", "print JSON")
|
|
15
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
16
16
|
.action((options) => run(options.json, (store) => pageOf(options.limit, (limit) => store.agentActions.list({
|
|
17
17
|
...(options.tool === undefined ? {} : { tool: options.tool }),
|
|
18
18
|
...(options.agent === undefined ? {} : { agent: options.agent }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/agents/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IAChG,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACnC,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,8DAA8D,CAAC;SAC3E,OAAO,CAAC,KAAK,CAAC;SACd,OAAO,CAAC,qEAAqE,CAAC;SAC9E,WAAW,CAAC,gGAAgG,CAAC;SAC7G,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,gBAAgB,EAAE,6CAA6C,CAAC;SACvE,MAAM,CAAC,aAAa,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,CAAC;SAC5D,MAAM,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/agents/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IAChG,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACnC,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,8DAA8D,CAAC;SAC3E,OAAO,CAAC,KAAK,CAAC;SACd,OAAO,CAAC,qEAAqE,CAAC;SAC9E,WAAW,CAAC,gGAAgG,CAAC;SAC7G,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,gBAAgB,EAAE,6CAA6C,CAAC;SACvE,MAAM,CAAC,aAAa,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,CAAC;SAC5D,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,CAAC,OAAyE,EAAE,EAAE,CACpF,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAC1B,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9B,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;QACtB,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAChE,KAAK;KACN,CAAC,CACH,CACF,CACF,CAAA;AACL,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAgB,MAAM,0BAA0B,CAAA;AAE5F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,EAAE,KAAK,YAAY,EAAiC,MAAM,sBAAsB,CAAA;AAGvF,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,WAAW,CAAA;CAC/C;AACD,UAAU,aAAa;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;IACpD,MAAM,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,cAAc,aACf,MAAM,YACN,YAAY,EAAE,WACf;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAAE;;;;QAuD9F,QAAQ;QAAmB,IAAI;;;;;;;EAO3C,CAAA;AAED,eAAO,MAAM,UAAU,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAgB,MAAM,0BAA0B,CAAA;AAE5F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,EAAE,KAAK,YAAY,EAAiC,MAAM,sBAAsB,CAAA;AAGvF,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,WAAW,CAAA;CAC/C;AACD,UAAU,aAAa;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;IACpD,MAAM,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,cAAc,aACf,MAAM,YACN,YAAY,EAAE,WACf;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAAE;;;;QAuD9F,QAAQ;QAAmB,IAAI;;;;;;;EAO3C,CAAA;AAED,eAAO,MAAM,UAAU,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,SA4EpF,CAAA"}
|
package/dist/answers/command.js
CHANGED
|
@@ -2,7 +2,7 @@ import { CliError, createRenderer } from "@wirecat/cli-base";
|
|
|
2
2
|
import { modelGateway } from "@wirecat/cli-core/models";
|
|
3
3
|
import { openStore } from "@wirecat/cli-core/store";
|
|
4
4
|
import { positive } from "../options.js";
|
|
5
|
-
import { snakeKeys } from "../output.js";
|
|
5
|
+
import { answerOf, snakeKeys } from "../output.js";
|
|
6
6
|
import { searchAccounts, unifiedSearch } from "../search/command.js";
|
|
7
7
|
export const answerEvidence = async (question, evidence, options) => {
|
|
8
8
|
const result = await modelGateway({
|
|
@@ -67,8 +67,9 @@ export const askCommand = (program, streams, env) => {
|
|
|
67
67
|
.option("--limit <n>", "most evidence items, at most 100", positive, 20)
|
|
68
68
|
.option("--model", "call MEMO_MODELS_ANALYSIS_PROVIDER/MODEL instead of returning an evidence bundle")
|
|
69
69
|
.option("--allow-remote", "explicitly consent to sending this evidence to the configured model")
|
|
70
|
-
.option("--json", "print JSON")
|
|
70
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
71
71
|
.action(async (question, options) => {
|
|
72
|
+
const startedAt = Date.now();
|
|
72
73
|
const store = await openStore({ env });
|
|
73
74
|
try {
|
|
74
75
|
const found = await unifiedSearch(store, options.query ?? question, {
|
|
@@ -106,7 +107,7 @@ export const askCommand = (program, streams, env) => {
|
|
|
106
107
|
};
|
|
107
108
|
}
|
|
108
109
|
if (options.json)
|
|
109
|
-
createRenderer({ format: "json", color: false, streams }).result(
|
|
110
|
+
createRenderer({ format: "json", color: false, streams }).result(answerOf(answer, startedAt));
|
|
110
111
|
else
|
|
111
112
|
streams.data(`${JSON.stringify(snakeKeys(answer), null, 2)}\n`);
|
|
112
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAuC,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/memo.js
CHANGED
|
@@ -21,10 +21,18 @@ try {
|
|
|
21
21
|
if (notice)
|
|
22
22
|
processStreams.diagnostic(notice);
|
|
23
23
|
}
|
|
24
|
+
const { followInstall } = await import("../run/auto.js");
|
|
25
|
+
const { updateNotice } = await import("../update.js");
|
|
26
|
+
const notice = updateNotice(args);
|
|
24
27
|
program = createProgram();
|
|
25
28
|
throwParseFailures(program);
|
|
26
29
|
refuseJoinedPath(program, args);
|
|
27
30
|
await program.parseAsync(process.argv);
|
|
31
|
+
// After the command, so a broken systemctl never stands between the owner and the answer.
|
|
32
|
+
await followInstall(process.env).catch(() => undefined);
|
|
33
|
+
const line = await notice;
|
|
34
|
+
if (line && !process.exitCode)
|
|
35
|
+
processStreams.diagnostic(line);
|
|
28
36
|
}
|
|
29
37
|
catch (error) {
|
|
30
38
|
// Help and the version were printed already; only their exit code is left to give.
|
package/dist/bin/memo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memo.js","sourceRoot":"","sources":["../../src/bin/memo.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAgB,cAAc,EAAE,MAAM,WAAW,CAAA;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAEhF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAClC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAA;AACzC,MAAM,OAAO,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;AACtH,IAAI,OAA4B,CAAA;AAChC,IAAI,CAAC;IACH,6FAA6F;IAC7F,cAAc,CAAC,GAAG,CAAC,CAAA;IACnB,MAAM,YAAY,EAAE,CAAA;IACpB,mFAAmF;IACnF,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;IACzE,gGAAgG;IAChG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvE,IAAI,MAAM;YAAE,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,GAAG,aAAa,EAAE,CAAA;IACzB,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC3B,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC/B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"memo.js","sourceRoot":"","sources":["../../src/bin/memo.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAgB,cAAc,EAAE,MAAM,WAAW,CAAA;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAEhF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAClC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAA;AACzC,MAAM,OAAO,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;AACtH,IAAI,OAA4B,CAAA;AAChC,IAAI,CAAC;IACH,6FAA6F;IAC7F,cAAc,CAAC,GAAG,CAAC,CAAA;IACnB,MAAM,YAAY,EAAE,CAAA;IACpB,mFAAmF;IACnF,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;IACzE,gGAAgG;IAChG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACvE,IAAI,MAAM;YAAE,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAC/C,CAAC;IACD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACxD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACjC,OAAO,GAAG,aAAa,EAAE,CAAA;IACzB,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC3B,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC/B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,0FAA0F;IAC1F,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IACvD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAA;IACzB,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;QAAE,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,mFAAmF;IACnF,IAAI,KAAK,YAAY,cAAc,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACtG,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;;QAC9B,OAAO,CAAC,QAAQ,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAA;AACrG,CAAC;QAAS,CAAC;IACT,OAAO,EAAE,CAAA;AACX,CAAC"}
|
package/dist/config.d.ts
CHANGED
|
@@ -19,7 +19,11 @@ declare const ConfigSchema: v.ObjectSchema<{
|
|
|
19
19
|
readonly auto: v.OptionalSchema<v.ObjectSchema<{
|
|
20
20
|
readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
21
21
|
readonly every: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
22
|
+
/** MEMO_CONFIG_DIR, MESSAGING_STORE… as they were at `memo auto start`, passed to every timer run. */
|
|
23
|
+
readonly places: v.OptionalSchema<v.RecordSchema<v.StringSchema<undefined>, v.StringSchema<undefined>, undefined>, undefined>;
|
|
22
24
|
}, undefined>, undefined>;
|
|
25
|
+
/** `false` stops the once-a-day check for a newer memo. */
|
|
26
|
+
readonly update_check: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
23
27
|
readonly mail: v.OptionalSchema<v.ObjectSchema<{
|
|
24
28
|
readonly accounts: v.ArraySchema<v.ObjectSchema<{
|
|
25
29
|
readonly name: v.StringSchema<undefined>;
|
|
@@ -34,17 +38,17 @@ declare const ConfigSchema: v.ObjectSchema<{
|
|
|
34
38
|
readonly match: v.ObjectSchema<{
|
|
35
39
|
readonly from: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
36
40
|
readonly domain: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
37
|
-
readonly
|
|
41
|
+
readonly list_id: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
38
42
|
}, undefined>;
|
|
39
43
|
readonly action: v.PicklistSchema<["skip", "envelope", "keep"], undefined>;
|
|
40
44
|
readonly reason: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
41
|
-
readonly
|
|
45
|
+
readonly decided_at: v.StringSchema<undefined>;
|
|
42
46
|
}, undefined>, undefined>, undefined>;
|
|
43
47
|
}, undefined>, undefined>;
|
|
44
48
|
/** The most characters of an email body kept; 1,000,000 by default. */
|
|
45
|
-
readonly
|
|
49
|
+
readonly max_body_chars: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>, undefined>;
|
|
46
50
|
/** The most characters of one attachment's extracted text kept; 200,000 by default. */
|
|
47
|
-
readonly
|
|
51
|
+
readonly max_attachment_chars: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>, undefined>;
|
|
48
52
|
}, undefined>, undefined>;
|
|
49
53
|
}, undefined>;
|
|
50
54
|
export type Config = v.InferOutput<typeof ConfigSchema>;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAG5B,QAAA,MAAM,YAAY;;QAGZ,4FAA4F;;;;;;;QAY5F,qFAAqF;;QAErF,6FAA6F;;;;;;;;;QAU7F,sGAAsG;;;IAI1G,2DAA2D;;;;;;YAQnD,8GAA8G;;;;;YAK9G,8GAA8G;;;;;;;;;;;;QAiBlH,uEAAuE;;QAEvE,uFAAuF;;;aAI3F,CAAA;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,YAAY,CAAC,CAAA;AAEvD,eAAO,MAAM,UAAU,SAAS,MAAM,CAAC,UAAU,KAAiB,MACiB,CAAA;AAEnF,eAAO,MAAM,UAAU,SAAS,MAAM,CAAC,UAAU,KAAiB,MACF,CAAA;AAEhE,oEAAoE;AACpE,eAAO,MAAM,YAAY,WAAY,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,QAAO,MAAM,CAAC,UAAU,KAAiB,MAIvG,CAAA"}
|
package/dist/config.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { configFilePath,
|
|
1
|
+
import { configFilePath, resolvePaths, saveConfigFile } from "@wirecat/cli-base";
|
|
2
|
+
import { loadSnakeCaseConfig } from "@wirecat/cli-core/cli";
|
|
2
3
|
import * as v from "valibot";
|
|
3
4
|
import { DIALECTS } from "./notes/dialects/index.js";
|
|
4
5
|
const ConfigSchema = v.object({
|
|
@@ -18,7 +19,14 @@ const ConfigSchema = v.object({
|
|
|
18
19
|
/** Where `memo notes export` and `--export` write internal notes when no folder is given. */
|
|
19
20
|
export: v.optional(v.object({ dir: v.pipe(v.string(), v.minLength(1)), format: v.optional(v.picklist(DIALECTS)) })),
|
|
20
21
|
})),
|
|
21
|
-
auto: v.optional(v.object({
|
|
22
|
+
auto: v.optional(v.object({
|
|
23
|
+
enabled: v.optional(v.boolean()),
|
|
24
|
+
every: v.optional(v.string()),
|
|
25
|
+
/** MEMO_CONFIG_DIR, MESSAGING_STORE… as they were at `memo auto start`, passed to every timer run. */
|
|
26
|
+
places: v.optional(v.record(v.string(), v.string())),
|
|
27
|
+
})),
|
|
28
|
+
/** `false` stops the once-a-day check for a newer memo. */
|
|
29
|
+
update_check: v.optional(v.boolean()),
|
|
22
30
|
mail: v.optional(v.object({
|
|
23
31
|
accounts: v.array(v.object({
|
|
24
32
|
name: v.string(),
|
|
@@ -33,21 +41,21 @@ const ConfigSchema = v.object({
|
|
|
33
41
|
match: v.object({
|
|
34
42
|
from: v.optional(v.string()),
|
|
35
43
|
domain: v.optional(v.string()),
|
|
36
|
-
|
|
44
|
+
list_id: v.optional(v.string()),
|
|
37
45
|
}),
|
|
38
46
|
action: v.picklist(["skip", "envelope", "keep"]),
|
|
39
47
|
reason: v.optional(v.string()),
|
|
40
|
-
|
|
48
|
+
decided_at: v.string(),
|
|
41
49
|
}))),
|
|
42
50
|
})),
|
|
43
51
|
/** The most characters of an email body kept; 1,000,000 by default. */
|
|
44
|
-
|
|
52
|
+
max_body_chars: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1))),
|
|
45
53
|
/** The most characters of one attachment's extracted text kept; 200,000 by default. */
|
|
46
|
-
|
|
54
|
+
max_attachment_chars: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1))),
|
|
47
55
|
})),
|
|
48
56
|
});
|
|
49
57
|
export const configPath = (env = process.env) => configFilePath(resolvePaths({ appName: "cli-memo", prefix: "MEMO", env }).config);
|
|
50
|
-
export const loadConfig = (env = process.env) =>
|
|
58
|
+
export const loadConfig = (env = process.env) => loadSnakeCaseConfig(configPath(env), ConfigSchema, () => ({}));
|
|
51
59
|
/** Changes one part of the config and keeps the rest as written. */
|
|
52
60
|
export const updateConfig = (change, env = process.env) => {
|
|
53
61
|
const next = change(loadConfig(env));
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,cAAc,CAAA;AAc5D,eAAO,MAAM,WAAW,mDAAoD,WAAW,KAAG,MAyCzF,CAAA;AAED,eAAO,MAAM,cAAc,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,cAAc,CAAA;AAc5D,eAAO,MAAM,WAAW,mDAAoD,WAAW,KAAG,MAyCzF,CAAA;AAED,eAAO,MAAM,cAAc,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IA0B3F,CAAA"}
|
package/dist/context/command.js
CHANGED
|
@@ -2,7 +2,7 @@ import { createRenderer } from "@wirecat/cli-base";
|
|
|
2
2
|
import { openStore } from "@wirecat/cli-core/store";
|
|
3
3
|
import { boundFolders } from "../notes/bound.js";
|
|
4
4
|
import { positive } from "../options.js";
|
|
5
|
-
import {
|
|
5
|
+
import { answerOf } from "../output.js";
|
|
6
6
|
import { importNotesMap } from "../people/notes-map.js";
|
|
7
7
|
import { memoContext } from "./context.js";
|
|
8
8
|
const MAX_TEXT = 160;
|
|
@@ -57,9 +57,10 @@ export const contextCommand = (program, streams, env) => {
|
|
|
57
57
|
.description("messages, mail and notes about a person, each with a link to its source")
|
|
58
58
|
.argument("<person>", "<messenger>:<name or id>, e.g. telegram:Ana or email:ana@example.com")
|
|
59
59
|
.option("--limit <n>", "most messages and notes of each kind", positive, 20)
|
|
60
|
-
.option("--json", "print JSON")
|
|
60
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
61
61
|
.option("--account <account>", "the stored account to read; required when the store holds several of that messenger")
|
|
62
62
|
.action(async (person, options) => {
|
|
63
|
+
const startedAt = Date.now();
|
|
63
64
|
const store = await openStore({ env });
|
|
64
65
|
try {
|
|
65
66
|
await importNotesMap(store, env, await boundFolders(store, env, { strict: false }));
|
|
@@ -68,7 +69,7 @@ export const contextCommand = (program, streams, env) => {
|
|
|
68
69
|
...(options.account === undefined ? {} : { account: options.account }),
|
|
69
70
|
});
|
|
70
71
|
if (options.json)
|
|
71
|
-
createRenderer({ format: "json", color: false, streams }).result(
|
|
72
|
+
createRenderer({ format: "json", color: false, streams }).result(answerOf(answer, startedAt));
|
|
72
73
|
else
|
|
73
74
|
streams.data(`${contextText(answer)}\n`);
|
|
74
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Streams } from "@wirecat/cli-base";
|
|
2
2
|
import type { Command } from "commander";
|
|
3
3
|
/** The major version of the JSON memo's commands print; raise it when a field is removed or renamed. */
|
|
4
|
-
export declare const CONTRACT =
|
|
4
|
+
export declare const CONTRACT = 4;
|
|
5
5
|
export declare const commandsCommand: (program: Command, streams: Streams) => void;
|
|
6
6
|
//# sourceMappingURL=command.d.ts.map
|
|
@@ -2,13 +2,13 @@ import { CliError, createRenderer } from "@wirecat/cli-base";
|
|
|
2
2
|
import { commandsDocument, flatten } from "@wirecat/cli-base/commands";
|
|
3
3
|
import { VERSION } from "../version.js";
|
|
4
4
|
/** The major version of the JSON memo's commands print; raise it when a field is removed or renamed. */
|
|
5
|
-
export const CONTRACT =
|
|
5
|
+
export const CONTRACT = 4;
|
|
6
6
|
export const commandsCommand = (program, streams) => {
|
|
7
7
|
program
|
|
8
8
|
.command("commands")
|
|
9
9
|
.argument("[path...]", "one command, such as tags add")
|
|
10
10
|
.description("discover the command tree and options as shared registry data")
|
|
11
|
-
.option("--json", "print JSON")
|
|
11
|
+
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
12
12
|
.action((path, options) => {
|
|
13
13
|
const document = commandsDocument(program, { cli: "memo", version: VERSION, contract: CONTRACT });
|
|
14
14
|
const answer = path.length ? scoped(document, path) : document;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEtE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,wGAAwG;AACxG,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAQ,EAAE;IAC1E,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,WAAW,EAAE,+BAA+B,CAAC;SACtD,WAAW,CAAC,+DAA+D,CAAC;SAC5E,MAAM,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/discovery/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAC1E,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEtE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,wGAAwG;AACxG,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAQ,EAAE;IAC1E,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,WAAW,EAAE,+BAA+B,CAAC;SACtD,WAAW,CAAC,+DAA+D,CAAC;SAC5E,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,CAAC,IAAc,EAAE,OAA2B,EAAE,EAAE;QACtD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;QACjG,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;QAC9D,IAAI,OAAO,CAAC,IAAI;YAAE,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;;YACrF,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,QAA6C,EAAE,IAAc,EAAE,EAAE;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACxE,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,4BAA4B,CAAC,CAAA;IACzE,MAAM,gBAAgB,GAAG,GAAG;SACzB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SAC1G,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;SACzC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC9D,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,CAAA;AACnG,CAAC,CAAA"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { type Streams } from "@wirecat/cli-base";
|
|
2
|
+
import type { Command } from "commander";
|
|
3
|
+
/** Something a person should do, with the command that does it. */
|
|
4
|
+
interface Problem {
|
|
5
|
+
what: string;
|
|
6
|
+
fix: string;
|
|
7
|
+
}
|
|
8
|
+
/** Everything memo needs, read from this computer only: no mail server, no messenger, no npm. */
|
|
9
|
+
export declare const diagnose: (env: NodeJS.ProcessEnv) => Promise<{
|
|
10
|
+
memo: {
|
|
11
|
+
version: string;
|
|
12
|
+
node: string;
|
|
13
|
+
installed_by: import("@wirecat/cli-base/update").Installer;
|
|
14
|
+
};
|
|
15
|
+
config: {
|
|
16
|
+
path: string;
|
|
17
|
+
exists: boolean;
|
|
18
|
+
};
|
|
19
|
+
state: string;
|
|
20
|
+
cache: string;
|
|
21
|
+
store: {
|
|
22
|
+
path: string;
|
|
23
|
+
exists: boolean;
|
|
24
|
+
error?: undefined;
|
|
25
|
+
} | {
|
|
26
|
+
path: string;
|
|
27
|
+
exists: boolean;
|
|
28
|
+
schema: number;
|
|
29
|
+
speaks: number;
|
|
30
|
+
writable: boolean;
|
|
31
|
+
chats?: number | undefined;
|
|
32
|
+
messages?: number | undefined;
|
|
33
|
+
} | {
|
|
34
|
+
path: string;
|
|
35
|
+
exists: boolean;
|
|
36
|
+
error: string;
|
|
37
|
+
};
|
|
38
|
+
notes: {
|
|
39
|
+
path: string;
|
|
40
|
+
exists: boolean;
|
|
41
|
+
bound: boolean;
|
|
42
|
+
}[];
|
|
43
|
+
mail: {
|
|
44
|
+
accounts: {
|
|
45
|
+
name: string;
|
|
46
|
+
address: string;
|
|
47
|
+
mode: "gmail" | "imap" | "mbox";
|
|
48
|
+
path?: string | null | undefined;
|
|
49
|
+
exists?: boolean | undefined;
|
|
50
|
+
rules: number;
|
|
51
|
+
}[];
|
|
52
|
+
himalaya: string | null;
|
|
53
|
+
};
|
|
54
|
+
search_model: {
|
|
55
|
+
name: string;
|
|
56
|
+
path: string;
|
|
57
|
+
present: boolean;
|
|
58
|
+
};
|
|
59
|
+
timer: {
|
|
60
|
+
enabled: boolean;
|
|
61
|
+
every: string;
|
|
62
|
+
unit: string | null;
|
|
63
|
+
runs: string[];
|
|
64
|
+
failing: {
|
|
65
|
+
since: string;
|
|
66
|
+
runs: number;
|
|
67
|
+
reason: string | null;
|
|
68
|
+
} | null;
|
|
69
|
+
};
|
|
70
|
+
skills: {
|
|
71
|
+
target: "agents" | "claude";
|
|
72
|
+
path: string;
|
|
73
|
+
version: string | null;
|
|
74
|
+
}[];
|
|
75
|
+
problems: Problem[];
|
|
76
|
+
}>;
|
|
77
|
+
type Diagnosis = Awaited<ReturnType<typeof diagnose>>;
|
|
78
|
+
export declare const doctorText: (d: Diagnosis) => string;
|
|
79
|
+
export declare const doctorCommand: (program: Command, streams: Streams, env: NodeJS.ProcessEnv) => void;
|
|
80
|
+
export {};
|
|
81
|
+
//# sourceMappingURL=command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/doctor/command.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAI9E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAWxC,mEAAmE;AACnE,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAsBD,iGAAiG;AACjG,eAAO,MAAM,QAAQ,QAAe,MAAM,CAAC,UAAU;;;;;;;QA2EvC,IAAI;QAAmB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW1C,CAAA;AAED,KAAK,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAA;AAIrD,eAAO,MAAM,UAAU,MAAO,SAAS,KAAG,MAuB5B,CAAA;AAEd,eAAO,MAAM,aAAa,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IAqB1F,CAAA"}
|