@wirecat/cli-memo 0.31.0 → 0.33.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 +3 -2
- package/dist/actions/command.d.ts.map +1 -1
- package/dist/actions/command.js +7 -7
- package/dist/actions/command.js.map +1 -1
- package/dist/agents/command.js +3 -3
- package/dist/agents/command.js.map +1 -1
- package/dist/answer.d.ts +23 -0
- package/dist/answer.d.ts.map +1 -0
- package/dist/answer.js +56 -0
- package/dist/answer.js.map +1 -0
- package/dist/answers/command.d.ts.map +1 -1
- package/dist/answers/command.js +6 -14
- package/dist/answers/command.js.map +1 -1
- package/dist/bin/memo.js +8 -2
- package/dist/bin/memo.js.map +1 -1
- package/dist/context/command.d.ts +1 -1
- package/dist/context/command.d.ts.map +1 -1
- package/dist/context/command.js +6 -15
- package/dist/context/command.js.map +1 -1
- package/dist/doctor/command.d.ts +2 -1
- package/dist/doctor/command.d.ts.map +1 -1
- package/dist/doctor/command.js +10 -12
- package/dist/doctor/command.js.map +1 -1
- package/dist/effects.d.ts +6 -1
- package/dist/effects.d.ts.map +1 -1
- package/dist/effects.js +27 -9
- package/dist/effects.js.map +1 -1
- package/dist/examples.d.ts.map +1 -1
- package/dist/examples.js +24 -9
- package/dist/examples.js.map +1 -1
- package/dist/facts/command.d.ts.map +1 -1
- package/dist/facts/command.js +14 -22
- package/dist/facts/command.js.map +1 -1
- package/dist/facts/fact.d.ts +36 -0
- package/dist/facts/fact.d.ts.map +1 -0
- package/dist/facts/fact.js +47 -0
- package/dist/facts/fact.js.map +1 -0
- package/dist/failure.d.ts +5 -7
- package/dist/failure.d.ts.map +1 -1
- package/dist/failure.js +8 -27
- package/dist/failure.js.map +1 -1
- package/dist/knowledge/command.d.ts.map +1 -1
- package/dist/knowledge/command.js +46 -33
- package/dist/knowledge/command.js.map +1 -1
- package/dist/knowledge/meeting-projects-command.d.ts.map +1 -1
- package/dist/knowledge/meeting-projects-command.js +22 -12
- package/dist/knowledge/meeting-projects-command.js.map +1 -1
- package/dist/list-query.d.ts +21 -0
- package/dist/list-query.d.ts.map +1 -0
- package/dist/list-query.js +69 -0
- package/dist/list-query.js.map +1 -0
- package/dist/mail/apply.d.ts.map +1 -1
- package/dist/mail/apply.js +1 -0
- package/dist/mail/apply.js.map +1 -1
- package/dist/mail/command.d.ts.map +1 -1
- package/dist/mail/command.js +103 -97
- package/dist/mail/command.js.map +1 -1
- package/dist/mail/import.d.ts.map +1 -1
- package/dist/mail/import.js +2 -0
- package/dist/mail/import.js.map +1 -1
- package/dist/mail/messages-command.d.ts.map +1 -1
- package/dist/mail/messages-command.js +7 -14
- package/dist/mail/messages-command.js.map +1 -1
- package/dist/mail/rule-store.d.ts +33 -0
- package/dist/mail/rule-store.d.ts.map +1 -0
- package/dist/mail/rule-store.js +129 -0
- package/dist/mail/rule-store.js.map +1 -0
- package/dist/mail/rules.d.ts +4 -0
- package/dist/mail/rules.d.ts.map +1 -1
- package/dist/mail/rules.js.map +1 -1
- package/dist/mcp/knowledge.d.ts.map +1 -1
- package/dist/mcp/knowledge.js +15 -9
- package/dist/mcp/knowledge.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +30 -36
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/task-relations.d.ts.map +1 -1
- package/dist/mcp/task-relations.js +9 -7
- package/dist/mcp/task-relations.js.map +1 -1
- package/dist/mcp/tool.d.ts +3 -2
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tool.js.map +1 -1
- package/dist/mcp/vocabulary.d.ts.map +1 -1
- package/dist/mcp/vocabulary.js +7 -6
- package/dist/mcp/vocabulary.js.map +1 -1
- package/dist/memories/command.d.ts.map +1 -1
- package/dist/memories/command.js +15 -19
- package/dist/memories/command.js.map +1 -1
- package/dist/memories/memory.d.ts +31 -0
- package/dist/memories/memory.d.ts.map +1 -0
- package/dist/memories/memory.js +43 -0
- package/dist/memories/memory.js.map +1 -0
- package/dist/notes/command.d.ts.map +1 -1
- package/dist/notes/command.js +71 -53
- package/dist/notes/command.js.map +1 -1
- package/dist/notes/embed.d.ts +2 -0
- package/dist/notes/embed.d.ts.map +1 -1
- package/dist/notes/embed.js +8 -0
- package/dist/notes/embed.js.map +1 -1
- package/dist/notes/folders-command.d.ts.map +1 -1
- package/dist/notes/folders-command.js +19 -28
- package/dist/notes/folders-command.js.map +1 -1
- package/dist/notes/list.d.ts +9 -5
- package/dist/notes/list.d.ts.map +1 -1
- package/dist/notes/list.js +7 -8
- package/dist/notes/list.js.map +1 -1
- package/dist/notes/search.d.ts.map +1 -1
- package/dist/notes/search.js +2 -8
- package/dist/notes/search.js.map +1 -1
- package/dist/output.d.ts +4 -14
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +9 -56
- package/dist/output.js.map +1 -1
- package/dist/page.d.ts +2 -5
- package/dist/page.d.ts.map +1 -1
- package/dist/page.js +7 -2
- package/dist/page.js.map +1 -1
- package/dist/people/command.d.ts.map +1 -1
- package/dist/people/command.js +3 -7
- package/dist/people/command.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +2 -0
- 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/run/auto.d.ts.map +1 -1
- package/dist/run/auto.js +10 -14
- package/dist/run/auto.js.map +1 -1
- package/dist/run/import.d.ts.map +1 -1
- package/dist/run/import.js +12 -14
- package/dist/run/import.js.map +1 -1
- package/dist/search/answers.d.ts +9 -55
- package/dist/search/answers.d.ts.map +1 -1
- package/dist/search/answers.js +62 -34
- package/dist/search/answers.js.map +1 -1
- package/dist/search/command.d.ts +3 -1
- package/dist/search/command.d.ts.map +1 -1
- package/dist/search/command.js +37 -48
- package/dist/search/command.js.map +1 -1
- package/dist/search/hits.d.ts +3 -0
- package/dist/search/hits.d.ts.map +1 -0
- package/dist/search/hits.js +4 -0
- package/dist/search/hits.js.map +1 -0
- package/dist/store/scope.d.ts.map +1 -1
- package/dist/store/scope.js +6 -4
- package/dist/store/scope.js.map +1 -1
- package/dist/tags/command.d.ts +1 -1
- package/dist/tags/command.d.ts.map +1 -1
- package/dist/tags/command.js +34 -44
- package/dist/tags/command.js.map +1 -1
- package/dist/tasks/command.d.ts.map +1 -1
- package/dist/tasks/command.js +65 -52
- package/dist/tasks/command.js.map +1 -1
- package/dist/tasks/relations-command.d.ts.map +1 -1
- package/dist/tasks/relations-command.js +6 -8
- package/dist/tasks/relations-command.js.map +1 -1
- package/dist/tasks/shared.d.ts +8 -0
- package/dist/tasks/shared.d.ts.map +1 -0
- package/dist/tasks/shared.js +78 -0
- package/dist/tasks/shared.js.map +1 -0
- package/dist/terminal.d.ts +4 -0
- package/dist/terminal.d.ts.map +1 -0
- package/dist/terminal.js +8 -0
- package/dist/terminal.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/vocabulary/command.d.ts.map +1 -1
- package/dist/vocabulary/command.js +3 -3
- package/dist/vocabulary/command.js.map +1 -1
- package/package.json +2 -2
- package/skills/cli-memo/SKILL.md +7 -3
- package/dist/records/run.d.ts +0 -7
- package/dist/records/run.d.ts.map +0 -1
- package/dist/records/run.js +0 -24
- package/dist/records/run.js.map +0 -1
package/README.md
CHANGED
|
@@ -166,7 +166,7 @@ More: [notes](https://github.com/WireCatLabs/cli-memo/blob/main/docs/notes.md)
|
|
|
166
166
|
| Project and topic aliases | `memo vocabulary list` / `resolve` / `preflight` · `vocabulary aliases add` / `remove` · `vocabulary create` |
|
|
167
167
|
| Relationships | `memo relationships add` / `list` / `remove` / `confirm` / `suggest` |
|
|
168
168
|
| Labels | `memo tags add` · `tags remove` · `tags list` |
|
|
169
|
-
| Open work | `memo tasks add` · `tasks list` · `tasks update` · `tasks assign` · `tasks close` |
|
|
169
|
+
| Open work | `memo tasks add` · `tasks list` · `tasks agenda` · `tasks plan` · `tasks show` · `tasks update` · `tasks assign` · `tasks close` · `stats tasks show` |
|
|
170
170
|
| Task dependencies | `memo tasks link` / `unlink` / `relations` · `tasks status` · `tasks list --ready` |
|
|
171
171
|
| Reminders | `memo reminders add` / `list` / `poll` / `ack` / `update` / `cancel` |
|
|
172
172
|
| Agents | `memo memories …` · `facts …` · `actions …` · `agents log` · `memo mcp` |
|
|
@@ -274,7 +274,8 @@ More: [mail](https://github.com/WireCatLabs/cli-memo/blob/main/docs/mail.md) ·
|
|
|
274
274
|
Tags are your labels on a note, an email, a message, a chat, a person, an organization, a project, a task,
|
|
275
275
|
a meeting, or every note under a folder. They live in the store; files, Gmail labels and mailbox flags are
|
|
276
276
|
never changed. A task points at the message or note it came from, or is your own in a
|
|
277
|
-
project (`--project RES --title …`), and can be blocked by another until it is done.
|
|
277
|
+
project (`--project RES --title …`), and can be blocked by another until it is done. `memo tasks agenda`
|
|
278
|
+
says what needs a look today, across every messenger account the store holds. Reminders are local:
|
|
278
279
|
a caller you choose polls for them, and nothing is delivered to a messenger or mailbox.
|
|
279
280
|
|
|
280
281
|
```sh
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/actions/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOxC,eAAO,MAAM,cAAc,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/actions/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOxC,eAAO,MAAM,cAAc,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IA+D3F,CAAA"}
|
package/dist/actions/command.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { approveAsTask } from "@wirecat/cli-core/services";
|
|
2
2
|
import { PROPOSAL_STATUSES } from "@wirecat/cli-core/store";
|
|
3
|
+
import { answers, itemAnswer } from "../answer.js";
|
|
3
4
|
import { authorOf, byOption } from "../author.js";
|
|
4
5
|
import { oneOf, positive } from "../options.js";
|
|
5
6
|
import { pageOf } from "../page.js";
|
|
6
|
-
import { answering } from "../records/run.js";
|
|
7
7
|
import { propose } from "./actions.js";
|
|
8
8
|
export const actionsCommand = (program, streams, env) => {
|
|
9
|
-
const run =
|
|
9
|
+
const { run } = answers(program, streams, env);
|
|
10
10
|
const actions = program
|
|
11
11
|
.command("actions")
|
|
12
12
|
.description("what an agent proposes to do; confirming one makes it your task, nothing is sent");
|
|
@@ -18,31 +18,31 @@ export const actionsCommand = (program, streams, env) => {
|
|
|
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
20
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
21
|
-
.action((kind, { asOwner, ...options }) => run(options.json, (store) => propose(store, { ...options, kind }, authorOf(env, asOwner))));
|
|
21
|
+
.action((kind, { asOwner, ...options }) => run(options.json, async (store) => itemAnswer(await 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
27
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
28
|
-
.action((options) => run(options.json, (store) => pageOf(options.limit, (limit) => store.proposedActions.list({ limit, ...(options.status === undefined ? {} : { status: options.status }) }))));
|
|
28
|
+
.action((options) => run(options.json, (store) => pageOf("actions list", 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
33
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
34
|
-
.action((id, options) => run(options.json, (store) => store.proposedActions.get(id)));
|
|
34
|
+
.action((id, options) => run(options.json, async (store) => itemAnswer(await 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
39
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
40
|
-
.action((id, options) => run(options.json, (store) => approveAsTask(store, id)));
|
|
40
|
+
.action((id, options) => run(options.json, async (store) => itemAnswer(await 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
45
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
46
|
-
.action((id, options) => run(options.json, (store) => store.proposedActions.reject(id)));
|
|
46
|
+
.action((id, options) => run(options.json, async (store) => itemAnswer(await 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,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/actions/command.ts"],"names":[],"mappings":"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"}
|
package/dist/agents/command.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { answers } from "../answer.js";
|
|
1
2
|
import { positive } from "../options.js";
|
|
2
3
|
import { pageOf } from "../page.js";
|
|
3
|
-
import { answering } from "../records/run.js";
|
|
4
4
|
export const agentsCommand = (program, streams, env) => {
|
|
5
|
-
const run =
|
|
5
|
+
const { run } = answers(program, streams, env);
|
|
6
6
|
program
|
|
7
7
|
.command("agents")
|
|
8
8
|
.description("what agents did through the MCP servers that share the store")
|
|
@@ -13,7 +13,7 @@ export const agentsCommand = (program, streams, env) => {
|
|
|
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
15
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
16
|
-
.action((options) => run(options.json, (store) => pageOf(options.limit, (limit) => store.agentActions.list({
|
|
16
|
+
.action((options) => run(options.json, (store) => pageOf("agents log", options.limit, (limit) => store.agentActions.list({
|
|
17
17
|
...(options.tool === undefined ? {} : { tool: options.tool }),
|
|
18
18
|
...(options.agent === undefined ? {} : { agent: options.agent }),
|
|
19
19
|
limit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/agents/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/agents/command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IAChG,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAC9C,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,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAC5C,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"}
|
package/dist/answer.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type Streams } from "@wirecat/cli-base";
|
|
2
|
+
import { type Body, itemOf, type ListInput } from "@wirecat/cli-core/cli";
|
|
3
|
+
import { type MessageStore } from "@wirecat/cli-core/store";
|
|
4
|
+
import type { Command } from "commander";
|
|
5
|
+
export declare const itemAnswer: <T>(value: T, extra?: Parameters<typeof itemOf>[1]) => import("@wirecat/cli-core/cli").ItemBody<unknown>;
|
|
6
|
+
/**
|
|
7
|
+
* A list. One that takes neither `--cursor` nor `--page` shows more only by a higher `--limit`, so it names no
|
|
8
|
+
* next page and no `page.next` step: both would point at a flag the command does not have.
|
|
9
|
+
*/
|
|
10
|
+
export declare const listAnswer: <T>(command: string, input: ListInput<T>) => import("@wirecat/cli-core/cli").ListBody<unknown>;
|
|
11
|
+
export declare const wholeList: (command: string, items: unknown[]) => import("@wirecat/cli-core/cli").ListBody<unknown>;
|
|
12
|
+
export declare const withStore: <T>(env: NodeJS.ProcessEnv, work: (store: MessageStore) => Promise<T>) => Promise<T>;
|
|
13
|
+
/** The answer is judged by the command that ran — whether it may be partial — so the root remembers it. */
|
|
14
|
+
export declare const trackAnswers: (program: Command) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Prints answers through cli-core's renderer: the whole envelope for `--json`, otherwise `text`, or the item or
|
|
17
|
+
* items as indented JSON where a command has no text view.
|
|
18
|
+
*/
|
|
19
|
+
export declare const answers: (program: Command, streams: Streams, env: NodeJS.ProcessEnv) => {
|
|
20
|
+
print: (json: boolean | undefined, body: Body, text?: string) => void;
|
|
21
|
+
run: (json: boolean | undefined, work: (store: MessageStore) => Promise<Body>) => Promise<void>;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=answer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"answer.d.ts","sourceRoot":"","sources":["../src/answer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,EAAE,KAAK,SAAS,EAAgC,MAAM,uBAAuB,CAAA;AACnH,OAAO,EAAE,KAAK,YAAY,EAAa,MAAM,yBAAyB,CAAA;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,CAAC,UAAU,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,sDAAoC,CAAA;AAEhH;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,WAAW,MAAM,SAAS,SAAS,CAAC,CAAC,CAAC,sDAQjE,CAAA;AAED,eAAO,MAAM,SAAS,YAAa,MAAM,SAAS,OAAO,EAAE,sDACwB,CAAA;AAEnF,eAAO,MAAM,SAAS,GAAU,CAAC,OAAO,MAAM,CAAC,UAAU,QAAQ,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,CAAC,CAO/G,CAAA;AAID,2GAA2G;AAC3G,eAAO,MAAM,YAAY,YAAa,OAAO,KAAG,IAK/C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU;kBAC3D,OAAO,GAAG,SAAS,QAAQ,IAAI,SAAS,MAAM,KAAG,IAAI;gBAYtD,OAAO,GAAG,SAAS,QAAQ,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC;CAGtF,CAAA"}
|
package/dist/answer.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { createRenderer } from "@wirecat/cli-base";
|
|
2
|
+
import { currentRun, itemOf, listOf, renderAnswer, rootOf } from "@wirecat/cli-core/cli";
|
|
3
|
+
import { openStore } from "@wirecat/cli-core/store";
|
|
4
|
+
import { snakeKeys } from "./output.js";
|
|
5
|
+
export const itemAnswer = (value, extra) => itemOf(snakeKeys(value), extra);
|
|
6
|
+
/**
|
|
7
|
+
* A list. One that takes neither `--cursor` nor `--page` shows more only by a higher `--limit`, so it names no
|
|
8
|
+
* next page and no `page.next` step: both would point at a flag the command does not have.
|
|
9
|
+
*/
|
|
10
|
+
export const listAnswer = (command, input) => {
|
|
11
|
+
const body = listOf(command, { ...input, items: snakeKeys(input.items) });
|
|
12
|
+
if (input.cursor !== undefined || input.page !== undefined)
|
|
13
|
+
return body;
|
|
14
|
+
if (body.page.mode === "page")
|
|
15
|
+
delete body.page.next_page;
|
|
16
|
+
const next = body.next?.filter(({ step }) => step !== "page.next") ?? [];
|
|
17
|
+
if (next.length > 0)
|
|
18
|
+
body.next = next;
|
|
19
|
+
else
|
|
20
|
+
delete body.next;
|
|
21
|
+
return body;
|
|
22
|
+
};
|
|
23
|
+
export const wholeList = (command, items) => listAnswer(command, { items, limit: Math.max(1, items.length), has_more: false });
|
|
24
|
+
export const withStore = async (env, work) => {
|
|
25
|
+
const store = await openStore({ env });
|
|
26
|
+
try {
|
|
27
|
+
return await work(store);
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
await store.close();
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const running = new WeakMap();
|
|
34
|
+
/** The answer is judged by the command that ran — whether it may be partial — so the root remembers it. */
|
|
35
|
+
export const trackAnswers = (program) => {
|
|
36
|
+
currentRun();
|
|
37
|
+
program.hook("preAction", (root, leaf) => {
|
|
38
|
+
running.set(root, leaf);
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Prints answers through cli-core's renderer: the whole envelope for `--json`, otherwise `text`, or the item or
|
|
43
|
+
* items as indented JSON where a command has no text view.
|
|
44
|
+
*/
|
|
45
|
+
export const answers = (program, streams, env) => {
|
|
46
|
+
const print = (json, body, text) => {
|
|
47
|
+
const format = json ? "json" : "pretty";
|
|
48
|
+
const root = rootOf(program);
|
|
49
|
+
renderAnswer(running.get(root) ?? root, { renderer: createRenderer({ format, color: false, streams }), format, streams }, body, () => `${text ?? JSON.stringify("items" in body ? body.items : body.item, null, 2)}\n`);
|
|
50
|
+
};
|
|
51
|
+
return {
|
|
52
|
+
print,
|
|
53
|
+
run: async (json, work) => print(json, await withStore(env, work)),
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=answer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"answer.js","sourceRoot":"","sources":["../src/answer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAgB,MAAM,0BAA0B,CAAA;AAC5F,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,SAuEpF,CAAA"}
|
package/dist/answers/command.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { CliError
|
|
1
|
+
import { CliError } from "@wirecat/cli-base";
|
|
2
2
|
import { modelGateway } from "@wirecat/cli-core/models";
|
|
3
|
-
import {
|
|
3
|
+
import { answers, itemAnswer, withStore } from "../answer.js";
|
|
4
4
|
import { positive } from "../options.js";
|
|
5
|
-
import { answerOf, snakeKeys } from "../output.js";
|
|
6
5
|
import { searchAccounts, unifiedSearch } from "../search/command.js";
|
|
7
6
|
export const answerEvidence = async (question, evidence, options) => {
|
|
8
7
|
const result = await modelGateway({
|
|
@@ -56,6 +55,7 @@ export const answerEvidence = async (question, evidence, options) => {
|
|
|
56
55
|
};
|
|
57
56
|
};
|
|
58
57
|
export const askCommand = (program, streams, env) => {
|
|
58
|
+
const { print } = answers(program, streams, env);
|
|
59
59
|
program
|
|
60
60
|
.command("ask")
|
|
61
61
|
.description("prepare cited evidence for your agent, or explicitly call a configured model")
|
|
@@ -69,9 +69,7 @@ export const askCommand = (program, streams, env) => {
|
|
|
69
69
|
.option("--allow-remote", "explicitly consent to sending this evidence to the configured model")
|
|
70
70
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
71
71
|
.action(async (question, options) => {
|
|
72
|
-
|
|
73
|
-
const store = await openStore({ env });
|
|
74
|
-
try {
|
|
72
|
+
await withStore(env, async (store) => {
|
|
75
73
|
const found = await unifiedSearch(store, options.query ?? question, {
|
|
76
74
|
...(await searchAccounts(store, options)),
|
|
77
75
|
limit: options.limit,
|
|
@@ -106,14 +104,8 @@ export const askCommand = (program, streams, env) => {
|
|
|
106
104
|
})),
|
|
107
105
|
};
|
|
108
106
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
else
|
|
112
|
-
streams.data(`${JSON.stringify(snakeKeys(answer), null, 2)}\n`);
|
|
113
|
-
}
|
|
114
|
-
finally {
|
|
115
|
-
await store.close();
|
|
116
|
-
}
|
|
107
|
+
print(options.json, itemAnswer(answer));
|
|
108
|
+
});
|
|
117
109
|
});
|
|
118
110
|
};
|
|
119
111
|
//# sourceMappingURL=command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/answers/command.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/memo.js
CHANGED
|
@@ -4,7 +4,7 @@ import { migrateFolders } from "@wirecat/cli-core/background";
|
|
|
4
4
|
import { ensureSqlite } from "@wirecat/cli-core/sqlite-runtime";
|
|
5
5
|
import { CommanderError } from "commander";
|
|
6
6
|
import { APP } from "../app.js";
|
|
7
|
-
import { interactiveOf
|
|
7
|
+
import { interactiveOf } from "../terminal.js";
|
|
8
8
|
const args = process.argv.slice(2);
|
|
9
9
|
const tty = process.stdout.isTTY === true;
|
|
10
10
|
const release = catchCrashes({ cli: APP.command, interactive: interactiveOf(args, tty), reasons: APP.errors.reasons });
|
|
@@ -15,6 +15,7 @@ try {
|
|
|
15
15
|
await ensureSqlite();
|
|
16
16
|
// A static import would load the store's SQLite before ensureSqlite could swap it.
|
|
17
17
|
const { createProgram, refuseJoinedPath } = await import("../program.js");
|
|
18
|
+
const { throwParseFailures } = await import("../failure.js");
|
|
18
19
|
// `memo auto status` says it in full; everywhere else one line, until a timer run passes again.
|
|
19
20
|
if (args[0] !== "auto") {
|
|
20
21
|
const notice = (await import("../run/auto.js")).autoNotice(process.env);
|
|
@@ -39,7 +40,12 @@ catch (error) {
|
|
|
39
40
|
if (error instanceof CommanderError && (error.exitCode === 0 || error.code.startsWith("commander.help")))
|
|
40
41
|
process.exitCode = error.exitCode;
|
|
41
42
|
else
|
|
42
|
-
process.exitCode = await reportFailure(error, {
|
|
43
|
+
process.exitCode = (await import("../failure.js")).reportFailure(error, {
|
|
44
|
+
args,
|
|
45
|
+
program,
|
|
46
|
+
streams: processStreams,
|
|
47
|
+
tty,
|
|
48
|
+
});
|
|
43
49
|
}
|
|
44
50
|
finally {
|
|
45
51
|
release();
|
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,
|
|
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,MAAM,gBAAgB,CAAA;AAE9C,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,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;IAC5D,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;;QAEjC,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE;YACtE,IAAI;YACJ,OAAO;YACP,OAAO,EAAE,cAAc;YACvB,GAAG;SACJ,CAAC,CAAA;AACN,CAAC;QAAS,CAAC;IACT,OAAO,EAAE,CAAA;AACX,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Streams } from "@wirecat/cli-base";
|
|
2
2
|
import type { Command } from "commander";
|
|
3
3
|
import { type MemoContext } from "./context.js";
|
|
4
4
|
export declare const contextText: ({ messages, notes, notRead, tasks, yourNotes }: MemoContext) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEhD,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,IAsB3F,CAAA"}
|
package/dist/context/command.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { openStore } from "@wirecat/cli-core/store";
|
|
1
|
+
import { answers, itemAnswer, withStore } from "../answer.js";
|
|
3
2
|
import { boundFolders } from "../notes/bound.js";
|
|
4
3
|
import { positive } from "../options.js";
|
|
5
|
-
import { answerOf } from "../output.js";
|
|
6
4
|
import { importNotesMap } from "../people/notes-map.js";
|
|
7
5
|
import { memoContext } from "./context.js";
|
|
8
6
|
const MAX_TEXT = 160;
|
|
@@ -52,6 +50,7 @@ export const contextText = ({ messages, notes, notRead, tasks, yourNotes }) => {
|
|
|
52
50
|
].join("\n");
|
|
53
51
|
};
|
|
54
52
|
export const contextCommand = (program, streams, env) => {
|
|
53
|
+
const { print } = answers(program, streams, env);
|
|
55
54
|
program
|
|
56
55
|
.command("context")
|
|
57
56
|
.description("messages, mail and notes about a person, each with a link to its source")
|
|
@@ -60,22 +59,14 @@ export const contextCommand = (program, streams, env) => {
|
|
|
60
59
|
.option("--json", "print JSON; --json=id,title keeps only those fields")
|
|
61
60
|
.option("--account <account>", "the stored account to read; required when the store holds several of that messenger")
|
|
62
61
|
.action(async (person, options) => {
|
|
63
|
-
const
|
|
64
|
-
const store = await openStore({ env });
|
|
65
|
-
try {
|
|
62
|
+
const answer = await withStore(env, async (store) => {
|
|
66
63
|
await importNotesMap(store, env, await boundFolders(store, env, { strict: false }));
|
|
67
|
-
|
|
64
|
+
return memoContext(store, person, {
|
|
68
65
|
limit: options.limit,
|
|
69
66
|
...(options.account === undefined ? {} : { account: options.account }),
|
|
70
67
|
});
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
else
|
|
74
|
-
streams.data(`${contextText(answer)}\n`);
|
|
75
|
-
}
|
|
76
|
-
finally {
|
|
77
|
-
await store.close();
|
|
78
|
-
}
|
|
68
|
+
});
|
|
69
|
+
print(options.json, itemAnswer(answer), contextText(answer));
|
|
79
70
|
});
|
|
80
71
|
};
|
|
81
72
|
//# sourceMappingURL=command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/context/command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAoB,WAAW,EAAE,MAAM,cAAc,CAAA;AAE5D,MAAM,QAAQ,GAAG,GAAG,CAAA;AAEpB,MAAM,GAAG,GAAG,CAAC,OAA8B,EAAU,EAAE,CACrD,OAAO,KAAK,IAAI;IACd,CAAC,CAAC,GAAG;IACL,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI;QACpH,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,CAAA;AAEnF,oEAAoE;AACpE,MAAM,QAAQ,GAAG,CAAC,IAAiE,EAAE,EAAE,CACrF,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AAEnF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAe,EAAU,EAAE;IACjG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IACjD,OAAO;QACL,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,GAAG,YAAY,MAAM,CAAC,GAAG,EAAE;QACpD,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,KAAK,QAAQ,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,EAAE,CAAC;QAC1F,EAAE;QACF,oBAAoB,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE;QACjE,oBAAoB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;QACtC,oBAAoB,MAAM,CAAC,MAAM,QAAQ;QACzC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5G,EAAE;QACF,EAAE;QACF,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAC1B,CAAC,CAAC,CAAC,qDAAqD,CAAC;YACzD,CAAC,CAAC,CAAC,kBAAkB,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7F,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YACjC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,iCAAiC,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7E,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,qBAAqB,QAAQ,CAAC,OAAO,CAAC,MAAM,+BAA+B,CAAC,CAAC;QAC/G,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,aAAa,MAAM,MAAM,MAAM,EAAE,CAAC;QACzE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;YACpB,CAAC,CAAC;gBACE,EAAE;gBACF,YAAY;gBACZ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAChB,CAAC,IAAI,EAAE,EAAE,CACP,UAAU,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,oBAAoB,EAAE,CACtH;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,SAAS,CAAC,MAAM;YAClB,CAAC,CAAC;gBACE,EAAE;gBACF,YAAY;gBACZ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;aAClG;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IACjG,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAChD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,yEAAyE,CAAC;SACtF,QAAQ,CAAC,UAAU,EAAE,sEAAsE,CAAC;SAC5F,MAAM,CAAC,aAAa,EAAE,sCAAsC,EAAE,QAAQ,EAAE,EAAE,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CACL,qBAAqB,EACrB,qFAAqF,CACtF;SACA,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAA4D,EAAE,EAAE;QAC7F,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAClD,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;YACnF,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE;gBAChC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;aACvE,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
|
package/dist/doctor/command.d.ts
CHANGED
|
@@ -47,7 +47,8 @@ export declare const diagnose: (env: NodeJS.ProcessEnv) => Promise<{
|
|
|
47
47
|
mode: "gmail" | "imap" | "mbox";
|
|
48
48
|
path?: string | null | undefined;
|
|
49
49
|
exists?: boolean | undefined;
|
|
50
|
-
|
|
50
|
+
/** Rules still in config.json; the next mail command moves them into the store. */
|
|
51
|
+
rules_in_config: number;
|
|
51
52
|
}[];
|
|
52
53
|
himalaya: string | null;
|
|
53
54
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/doctor/command.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/doctor/command.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAI9D,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;;;;;;;QA4EvC,IAAI;QAAmB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA9CvC,mFAAmF;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyDtF,CAAA;AAED,KAAK,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAA;AAIrD,eAAO,MAAM,UAAU,MAAO,SAAS,KAAG,MA6B5B,CAAA;AAEd,eAAO,MAAM,aAAa,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IAgB1F,CAAA"}
|
package/dist/doctor/command.js
CHANGED
|
@@ -2,14 +2,14 @@ import { execFile } from "node:child_process";
|
|
|
2
2
|
import { existsSync, readdirSync, readFileSync } from "node:fs";
|
|
3
3
|
import { homedir } from "node:os";
|
|
4
4
|
import { join } from "node:path";
|
|
5
|
-
import {
|
|
5
|
+
import { resolvePaths } from "@wirecat/cli-base";
|
|
6
6
|
import { SKILL_TARGETS, skillPath, skillVersion } from "@wirecat/cli-base/skill";
|
|
7
7
|
import { storeSummary } from "@wirecat/cli-core/cli";
|
|
8
8
|
import { sharedModelsDirectory } from "@wirecat/cli-core/speech";
|
|
9
|
+
import { answers, itemAnswer } from "../answer.js";
|
|
9
10
|
import { APP } from "../app.js";
|
|
10
11
|
import { configPath, loadConfig } from "../config.js";
|
|
11
12
|
import { noteFolders } from "../notes/folders.js";
|
|
12
|
-
import { metaOf, snakeKeys } from "../output.js";
|
|
13
13
|
import { autoState, lastAutoRun } from "../run/auto.js";
|
|
14
14
|
import { installer } from "../update.js";
|
|
15
15
|
import { VERSION } from "../version.js";
|
|
@@ -57,7 +57,8 @@ export const diagnose = async (env) => {
|
|
|
57
57
|
address,
|
|
58
58
|
mode: mode ?? "gmail",
|
|
59
59
|
...(mode === "mbox" ? { path: path ?? null, exists: path !== undefined && existsSync(path) } : {}),
|
|
60
|
-
|
|
60
|
+
/** Rules still in config.json; the next mail command moves them into the store. */
|
|
61
|
+
rules_in_config: rules?.length ?? 0,
|
|
61
62
|
}));
|
|
62
63
|
const imap = accounts.some(({ mode }) => mode !== "mbox");
|
|
63
64
|
const himalaya = imap ? await himalayaVersion(env) : null;
|
|
@@ -116,7 +117,10 @@ export const doctorText = (d) => [
|
|
|
116
117
|
? ` (schema ${d.store.schema}, memo speaks ${d.store.speaks})`
|
|
117
118
|
: ""}`,
|
|
118
119
|
...d.notes.map((f) => `notes ${f.path} — exists ${yes(f.exists)}, folder id ${yes(f.bound)}`),
|
|
119
|
-
...d.mail.accounts.map((a) => `mail ${a.name} <${a.address}> ${a.mode}
|
|
120
|
+
...d.mail.accounts.map((a) => `mail ${a.name} <${a.address}> ${a.mode}` +
|
|
121
|
+
(a.rules_in_config
|
|
122
|
+
? `, ${a.rules_in_config} rules in the config, moved into the store by the next mail command`
|
|
123
|
+
: "")),
|
|
120
124
|
...(d.mail.accounts.some(({ mode }) => mode !== "mbox") ? [`himalaya ${d.mail.himalaya ?? "not found"}`] : []),
|
|
121
125
|
`search ${d.search_model.name} ${d.search_model.present ? "present" : "not downloaded — search is by words"}`,
|
|
122
126
|
`timer ${d.timer.enabled ? `on, every ${d.timer.every}` : "off"}`,
|
|
@@ -127,6 +131,7 @@ export const doctorText = (d) => [
|
|
|
127
131
|
: d.problems.map(({ what, fix }) => `! ${what}${fix ? ` — ${fix}` : ""}`)),
|
|
128
132
|
].join("\n");
|
|
129
133
|
export const doctorCommand = (program, streams, env) => {
|
|
134
|
+
const { print } = answers(program, streams, env);
|
|
130
135
|
program
|
|
131
136
|
.command("doctor")
|
|
132
137
|
.description("where memo keeps its files and what needs attention; connects to nothing")
|
|
@@ -134,15 +139,8 @@ export const doctorCommand = (program, streams, env) => {
|
|
|
134
139
|
.addHelpText("after", "\nReads this computer only: the config, the store, the notes folders, Himalaya, the search model, the timer " +
|
|
135
140
|
"and the agent skill. Exits 1 when something needs attention, each with the command that fixes it.")
|
|
136
141
|
.action(async (options) => {
|
|
137
|
-
const startedAt = Date.now();
|
|
138
142
|
const diagnosis = await diagnose(env);
|
|
139
|
-
|
|
140
|
-
createRenderer({ format: "json", color: false, streams }).result({
|
|
141
|
-
item: snakeKeys(diagnosis),
|
|
142
|
-
meta: metaOf(startedAt),
|
|
143
|
-
});
|
|
144
|
-
else
|
|
145
|
-
streams.data(`${doctorText(diagnosis)}\n`);
|
|
143
|
+
print(options.json, itemAnswer(diagnosis), doctorText(diagnosis));
|
|
146
144
|
if (diagnosis.problems.length > 0)
|
|
147
145
|
process.exitCode = 1;
|
|
148
146
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/doctor/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/doctor/command.ts"],"names":[],"mappings":"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"}
|
package/dist/effects.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
+
import { type CommandOutput } from "@wirecat/cli-base/commands";
|
|
1
2
|
import type { Effects } from "@wirecat/cli-base/standards";
|
|
2
3
|
import type { Command } from "commander";
|
|
3
4
|
export declare const EFFECTS: Readonly<Record<string, Effects>>;
|
|
4
|
-
/**
|
|
5
|
+
/** The cli-core entity each answer's items are, so `--json=<field>` is checked and the CLIs compare. */
|
|
6
|
+
export declare const OUTPUTS: Readonly<Record<string, CommandOutput>>;
|
|
7
|
+
/**
|
|
8
|
+
* Puts each leaf's effects and answer in `commands --json`, where retries, steps and MCP hints are judged from them.
|
|
9
|
+
*/
|
|
5
10
|
export declare const addEffects: (program: Command) => void;
|
|
6
11
|
//# sourceMappingURL=effects.d.ts.map
|
package/dist/effects.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effects.d.ts","sourceRoot":"","sources":["../src/effects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"effects.d.ts","sourceRoot":"","sources":["../src/effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AACzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6FrD,CAAA;AAED,wGAAwG;AACxG,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAiB3D,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,YAAa,OAAO,KAAG,IAM7C,CAAA"}
|