@wirecat/zoom-cli 0.41.0 → 0.43.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 +5 -4
- package/dist/agent-skill.d.ts +3 -1
- package/dist/agent-skill.d.ts.map +1 -1
- package/dist/agent-skill.js +15 -4
- package/dist/agent-skill.js.map +1 -1
- package/dist/answer-entities.d.ts +3 -7
- package/dist/answer-entities.d.ts.map +1 -1
- package/dist/answer-entities.js +1 -2
- package/dist/answer-entities.js.map +1 -1
- package/dist/archive-commands.d.ts.map +1 -1
- package/dist/archive-commands.js +62 -45
- package/dist/archive-commands.js.map +1 -1
- package/dist/commands.d.ts +3 -1
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +23 -7
- package/dist/commands.js.map +1 -1
- package/dist/contract-overrides.d.ts +8 -0
- package/dist/contract-overrides.d.ts.map +1 -0
- package/dist/contract-overrides.js +372 -0
- package/dist/contract-overrides.js.map +1 -0
- package/dist/ingestion-search-commands.d.ts +2 -1
- package/dist/ingestion-search-commands.d.ts.map +1 -1
- package/dist/ingestion-search-commands.js +12 -3
- package/dist/ingestion-search-commands.js.map +1 -1
- package/dist/mcp-command.d.ts +3 -1
- package/dist/mcp-command.d.ts.map +1 -1
- package/dist/mcp-command.js +12 -3
- package/dist/mcp-command.js.map +1 -1
- package/dist/mcp.d.ts +1 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +9 -3
- package/dist/mcp.js.map +1 -1
- package/dist/meeting-project-evidence-commands.d.ts.map +1 -1
- package/dist/meeting-project-evidence-commands.js +5 -3
- package/dist/meeting-project-evidence-commands.js.map +1 -1
- package/dist/meeting-review-commands.d.ts.map +1 -1
- package/dist/meeting-review-commands.js +7 -7
- package/dist/meeting-review-commands.js.map +1 -1
- package/dist/meeting-search-commands.d.ts.map +1 -1
- package/dist/meeting-search-commands.js +21 -17
- package/dist/meeting-search-commands.js.map +1 -1
- package/dist/meeting-selection-options.d.ts +4 -1
- package/dist/meeting-selection-options.d.ts.map +1 -1
- package/dist/meeting-selection-options.js +58 -9
- package/dist/meeting-selection-options.js.map +1 -1
- package/dist/models-commands.d.ts +0 -4
- package/dist/models-commands.d.ts.map +1 -1
- package/dist/models-commands.js +8 -62
- package/dist/models-commands.js.map +1 -1
- package/dist/permissions.d.ts +5 -0
- package/dist/permissions.d.ts.map +1 -1
- package/dist/permissions.js +22 -3
- package/dist/permissions.js.map +1 -1
- package/dist/program-bindings.d.ts.map +1 -1
- package/dist/program-bindings.js +2 -2
- package/dist/program-bindings.js.map +1 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +11 -1
- package/dist/run.js.map +1 -1
- package/dist/store-connection.d.ts.map +1 -1
- package/dist/store-connection.js +1 -0
- package/dist/store-connection.js.map +1 -1
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +5 -3
- package/dist/upgrade.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -3
- package/skills/zoom-cli/SKILL.md +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-project-evidence-commands.js","sourceRoot":"","sources":["../src/meeting-project-evidence-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"meeting-project-evidence-commands.js","sourceRoot":"","sources":["../src/meeting-project-evidence-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE1E,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAA;AAGjF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,OAAgB,EAChB,IAKC,EACD,EAAE;IACF,MAAM,OAAO,GAAG,gCAAgC,CAAC,OAAO,EAAE;QACxD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;YACzB,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAA;YAChC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACpC,CAAC;KACF,CAAC,CAAA;IACF,IAAI,OAAO,CAAC,MAAM;QAChB,sBAAsB,CACpB,OAAO,CAAC,MAAM,EACd,kFAAkF,EAClF,CAAC,GAAG,EAAE,EAAE;YACN,QAAQ,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;QACxC,CAAC,CACF,CAAA;IACH,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-review-commands.d.ts","sourceRoot":"","sources":["../src/meeting-review-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"meeting-review-commands.d.ts","sourceRoot":"","sources":["../src/meeting-review-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAA6C,MAAM,uBAAuB,CAAA;AAC5F,OAAO,EAAE,KAAK,aAAa,EAAsC,MAAM,4BAA4B,CAAA;AACnG,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACxG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUxC,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;AAC5G,MAAM,MAAM,gBAAgB,GAAG,CAC7B,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,KAC5C,OAAO,CAAC;IAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAM1E;;;GAGG;AACH,eAAO,MAAM,wBAAwB,YAC1B,OAAO,QACV;IACJ,MAAM,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;IACxC,KAAK,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACtC,MAAM,EAAE,MAAM,WAAW,GAAG,SAAS,CAAA;IACrC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;CAC7B,KACA,IAmFF,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { annotate } from "@wirecat/cli-base/commands";
|
|
2
|
-
import { LOCAL_READ, listOf, NO_EFFECTS } from "@wirecat/cli-core/cli";
|
|
2
|
+
import { LOCAL_READ, listOf, NO_EFFECTS, withQuery } from "@wirecat/cli-core/cli";
|
|
3
3
|
import { meetingLinkItem, meetingReviewItem } from "@wirecat/cli-core/meetings";
|
|
4
4
|
import { bytes } from "./execution.js";
|
|
5
|
-
import { selectionOf, selectionOptions } from "./meeting-selection-options.js";
|
|
5
|
+
import { linkSelection, MEETING_LINK_QUERY, selectionOf, selectionOptions, } from "./meeting-selection-options.js";
|
|
6
6
|
/** Fewer words than this is a transcript that holds next to nothing: a few lines before the recording stopped. */
|
|
7
7
|
const NEAR_EMPTY_WORDS = 50;
|
|
8
8
|
const REVIEW_SINCE = "7d";
|
|
@@ -51,16 +51,16 @@ export const addMeetingReviewCommands = (program, deps) => {
|
|
|
51
51
|
});
|
|
52
52
|
const mentions = program.commands.find((command) => command.name() === "mentions") ??
|
|
53
53
|
annotate(program.command("mentions"), { effects: NO_EFFECTS }).description("what the stored meetings point to: links shared in their chat");
|
|
54
|
-
annotate(selectionOptions(mentions.command("list")), {
|
|
54
|
+
withQuery(annotate(selectionOptions(mentions.command("list"), true), {
|
|
55
55
|
effects: LOCAL_READ,
|
|
56
56
|
output: { entity: "meeting_link" },
|
|
57
|
-
examples: ["zm personal mentions list --since-time 30d --json"],
|
|
58
|
-
})
|
|
57
|
+
examples: ["zm personal mentions list --since-time 30d --json", "zm personal mentions list project:RES --json"],
|
|
58
|
+
}), MEETING_LINK_QUERY)
|
|
59
59
|
.description("links shared in meeting chat, most shared first, by whom and where")
|
|
60
60
|
.option("--limit <n>", "how many links (default 100)", bytes)
|
|
61
61
|
.option("--max-messages <n>", "most chat messages to read (default and at most 100000)", bytes)
|
|
62
|
-
.action(async (flags) => {
|
|
63
|
-
const { request, meta } = selectionOf(flags, deps.signal());
|
|
62
|
+
.action(async (words, flags) => {
|
|
63
|
+
const { request, meta } = selectionOf(linkSelection(words, flags), deps.signal());
|
|
64
64
|
const limit = flags.limit ?? 100;
|
|
65
65
|
const found = await (await deps.links())({
|
|
66
66
|
...request,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-review-commands.js","sourceRoot":"","sources":["../src/meeting-review-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAa,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"meeting-review-commands.js","sourceRoot":"","sources":["../src/meeting-review-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-search-commands.d.ts","sourceRoot":"","sources":["../src/meeting-search-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"meeting-search-commands.d.ts","sourceRoot":"","sources":["../src/meeting-search-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAiE,MAAM,uBAAuB,CAAA;AAEhH,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAIxB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAGrE,OAAO,EAAE,KAAK,2BAA2B,EAA2B,MAAM,gCAAgC,CAAA;AAE1G,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,wBAAwB,GACzB,MAAM,gCAAgC,CAAA;AAEvC,UAAU,aAAc,SAAQ,kBAAkB;IAChD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAmGD,gHAAgH;AAChH,eAAO,MAAM,uBAAuB,QAAO;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAI9E,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAEvF,mGAAmG;AACnG,eAAO,MAAM,wBAAwB,YAC1B,OAAO,QACV;IACJ,KAAK,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACtC,OAAO,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACnD,OAAO,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAA;IAC3C,OAAO,EAAE,MAAM,OAAO,CAAA;IACtB,MAAM,EAAE,MAAM,WAAW,GAAG,SAAS,CAAA;IACrC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;CAC7B,KACA,gBA+EF,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
2
|
import { annotate } from "@wirecat/cli-base/commands";
|
|
3
|
-
import { FETCH, LOCAL_READ, listOf, NO_EFFECTS } from "@wirecat/cli-core/cli";
|
|
3
|
+
import { FETCH, LOCAL_READ, listOf, NO_EFFECTS, overrideSharedContract } from "@wirecat/cli-core/cli";
|
|
4
4
|
import { meetingHitsList } from "@wirecat/cli-core/meetings";
|
|
5
5
|
import { createMeetingSearchCommand, meetingHitSearchRequest, meetingSearchArguments, meetingSearchMeta, } from "@wirecat/cli-core/meetings/cli";
|
|
6
6
|
import { Command } from "commander";
|
|
@@ -15,7 +15,7 @@ const FLAG = {
|
|
|
15
15
|
seriesId: "--series-id",
|
|
16
16
|
project: "--project",
|
|
17
17
|
tag: "--tag",
|
|
18
|
-
|
|
18
|
+
topicName: "--topic-name",
|
|
19
19
|
sinceTime: "--since-time",
|
|
20
20
|
untilTime: "--until-time",
|
|
21
21
|
cursor: "--cursor",
|
|
@@ -81,14 +81,16 @@ const combinedList = (found, limit, args) => listOf("search meetings", {
|
|
|
81
81
|
],
|
|
82
82
|
});
|
|
83
83
|
/** zm's options beside the shared ones: by meaning, and the bounds of a search by meaning. */
|
|
84
|
-
const withMeaningOptions = (command) => command
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
84
|
+
const withMeaningOptions = (command) => overrideSharedContract(command, "Zoom explicitly extends meeting search with semantic ranking and bounded embedding-provider controls.", (one) => {
|
|
85
|
+
one
|
|
86
|
+
.description("find words in stored meetings, or by meaning with --model")
|
|
87
|
+
.option("--model <model>", "rank words and meaning together with this embedding model, building missing vectors first")
|
|
88
|
+
.option("--base-url <url>", "remote embedding service for --model; OpenAI reads OPENAI_API_KEY")
|
|
89
|
+
.option("--dims <n>", "vector size the remote service returns, in dimensions", bytes)
|
|
90
|
+
.option("--max-chunks <n>", "by meaning: most stored passages to compare (default 10000)", bytes)
|
|
91
|
+
.option("--max-rows <n>", "by meaning: most transcript lines to read, 1 through 100000", bytes)
|
|
92
|
+
.option("--max-text-bytes <bytes>", "by meaning: most transcript text to read (default 4 MiB)", bytes);
|
|
93
|
+
});
|
|
92
94
|
/** A fresh `search meetings` to read saved options with: the same flags, parsers and checks as the real one. */
|
|
93
95
|
export const meetingSearchDefinition = () => {
|
|
94
96
|
const program = new Command();
|
|
@@ -126,13 +128,15 @@ export const addMeetingSearchCommands = (program, deps) => {
|
|
|
126
128
|
const command = withMeaningOptions(createMeetingSearchCommand(program)).action(async (query, options) => {
|
|
127
129
|
deps.output(await execute(query, options));
|
|
128
130
|
});
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
131
|
+
overrideSharedContract(command, "Zoom meeting search may build missing embeddings, so its effects and examples include that explicit mode.", (one) => {
|
|
132
|
+
annotate(one, {
|
|
133
|
+
origin: "handwritten",
|
|
134
|
+
effects: FETCH,
|
|
135
|
+
examples: [
|
|
136
|
+
'zm personal search meetings "example plan" --since-time 2026-09-01 --json',
|
|
137
|
+
'zm personal search meetings "example plan" --model e5-small --json',
|
|
138
|
+
],
|
|
139
|
+
});
|
|
136
140
|
});
|
|
137
141
|
const search = program.commands.find((child) => child.name() === "search") ??
|
|
138
142
|
annotate(program.command("search"), { effects: NO_EFFECTS });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-search-commands.js","sourceRoot":"","sources":["../src/meeting-search-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAa,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"meeting-search-commands.js","sourceRoot":"","sources":["../src/meeting-search-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAa,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAChH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EACL,0BAA0B,EAG1B,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAoC,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AAE1G,OAAO,EAGL,wBAAwB,GACzB,MAAM,gCAAgC,CAAA;AAUvC,MAAM,IAAI,GAAG;IACX,SAAS,EAAE,cAAc;IACzB,UAAU,EAAE,eAAe;IAC3B,QAAQ,EAAE,aAAa;IACvB,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,aAAa;IACvB,OAAO,EAAE,WAAW;IACpB,GAAG,EAAE,OAAO;IACZ,SAAS,EAAE,cAAc;IACzB,SAAS,EAAE,cAAc;IACzB,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE,UAAU;IAClB,YAAY,EAAE,kBAAkB;IAChC,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,cAAc;IACzB,OAAO,EAAE,YAAY;IACrB,YAAY,EAAE,kBAAkB;CACsB,CAAA;AACxD,MAAM,MAAM,GAAG,CAAC,OAAsB,EAAE,IAAoC,EAAE,IAAY,EAAE,EAAE;IAC5F,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACtF,IAAI,KAAK,CAAC,MAAM;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAA;AACtG,CAAC,CAAA;AAED,6GAA6G;AAC7G,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,CAAC,KAA6B,EAAE,EAAE;IAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,UAAU,GAAG,YAAY,CAAA;IACtC,OAAO;QACL,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,aAAa,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE;QACpD,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;QAC1B,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;QACtF,OAAO,EAAE,KAAK,CAAC,IAAI;QACnB,WAAW,EAAE,KAAK,CAAC,OAAO;QAC1B,SAAS,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1E,CAAA;AACH,CAAC,CAAA;AAID,yGAAyG;AACzG,MAAM,YAAY,GAAG,CAAC,KAAmB,EAAE,KAAa,EAAE,IAA6B,EAAQ,EAAE,CAC/F,MAAM,CAAC,iBAAiB,EAAE;IACxB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/B,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACjD,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO,EAAE,GAAG,CAAC,IAAI;QACjB,SAAS,EAAE,GAAG,CAAC,OAAO;QACtB,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,EAAE;YACN,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK;YACvB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAC/F,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG;SACpB;KACF,CAAC,CAAC;IACH,KAAK;IACL,QAAQ,EAAE,KAAK,CAAC,OAAO;IACvB,MAAM,EAAE,QAAQ;IAChB,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,IAAI;IACJ,OAAO,EAAE;QACP,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB;YACpC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,yBAAyB,KAAK,CAAC,QAAQ,CAAC,OAAO,+BAA+B,EAAE,CAAC,CAAC;QAC9G,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,0BAA0B,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3G;CACF,CAAS,CAAA;AAEZ,8FAA8F;AAC9F,MAAM,kBAAkB,GAAG,CAAC,OAAgB,EAAW,EAAE,CACvD,sBAAsB,CACpB,OAAO,EACP,uGAAuG,EACvG,CAAC,GAAG,EAAE,EAAE;IACN,GAAG;SACA,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CACL,iBAAiB,EACjB,2FAA2F,CAC5F;SACA,MAAM,CAAC,kBAAkB,EAAE,mEAAmE,CAAC;SAC/F,MAAM,CAAC,YAAY,EAAE,uDAAuD,EAAE,KAAK,CAAC;SACpF,MAAM,CAAC,kBAAkB,EAAE,6DAA6D,EAAE,KAAK,CAAC;SAChG,MAAM,CAAC,gBAAgB,EAAE,6DAA6D,EAAE,KAAK,CAAC;SAC9F,MAAM,CAAC,0BAA0B,EAAE,0DAA0D,EAAE,KAAK,CAAC,CAAA;AAC1G,CAAC,CACF,CAAA;AAEH,gHAAgH;AAChH,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAA2C,EAAE;IAClF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;IAC7B,MAAM,OAAO,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAA;IACvE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC7B,CAAC,CAAA;AAID,mGAAmG;AACnG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAgB,EAChB,IAOC,EACiB,EAAE;IACpB,MAAM,OAAO,GAAG,KAAK,EAAE,KAAa,EAAE,OAAsB,EAAiB,EAAE;QAC7E,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACtE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,wBAAwB,CAAC,CAAA;YAC3D,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,OAAO,CAAA;YAC5E,MAAM,OAAO,GAAG;gBACd,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,KAAK,IAAI,EAAE;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK;gBACL,SAAS;gBACT,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,YAAY,EAAE,IAAI;gBAClB,MAAM;aACP,CAAA;YACD,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACvC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE;gBACjD,MAAM,IAAI,QAAQ,CAAC,qBAAqB,EAAE,4DAA4D,CAAC,CAAA;YACzG,OAAO,YAAY,CACjB,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAiB,EACrE,OAAO,CAAC,KAAK,EACb,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CACvC,CAAA;QACH,CAAC;QACD,MAAM,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,iBAAiB,CAAC,CAAA;QAC/F,OAAO,eAAe,CACpB,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAC1C,OAAO,CAAC,KAAK,IAAI,GAAG,EACpB,iBAAiB,EACjB,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,EACtC,iBAAiB,CAAC,OAAO,CAAC,CAC3B,CAAA;IACH,CAAC,CAAA;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC5E,KAAK,EAAE,KAAa,EAAE,OAAsB,EAAE,EAAE;QAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;IAC5C,CAAC,CACF,CAAA;IACD,sBAAsB,CACpB,OAAO,EACP,2GAA2G,EAC3G,CAAC,GAAG,EAAE,EAAE;QACN,QAAQ,CAAC,GAAG,EAAE;YACZ,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE;gBACR,2EAA2E;gBAC3E,oEAAoE;aACrE;SACF,CAAC,CAAA;IACJ,CAAC,CACF,CAAA;IACD,MAAM,MAAM,GACV,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,QAAQ,CAAC;QAC3D,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;IAC9D,MAAM,UAAU,GAAG,MAAM;SACtB,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,iFAAiF,CAAC;SAC9F,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;SACzC,QAAQ,CAAC,YAAY,EAAE,4CAA4C,CAAC;SACpE,MAAM,CAAC,aAAa,EAAE,6CAA6C,EAAE,KAAK,CAAC;SAC3E,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,KAAe,EAAE,OAA2B,EAAE,EAAE;QAChF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAC7G,IAAI,CAAC,MAAM,CAAC;YACV,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE;SACpE,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,UAAU,EAAE;QACnB,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,UAAU;QACnB,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;QACzB,QAAQ,EAAE,CAAC,0FAA0F,CAAC;KACvG,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
|
@@ -3,12 +3,15 @@ export interface SelectionFlags {
|
|
|
3
3
|
eventId?: number;
|
|
4
4
|
project?: string;
|
|
5
5
|
topic?: string;
|
|
6
|
+
topicName?: string;
|
|
6
7
|
sinceTime?: string;
|
|
7
8
|
untilTime?: string;
|
|
8
9
|
timezone?: string;
|
|
9
10
|
}
|
|
10
11
|
/** The meetings a stats, review or links answer covers: the options and the request they become. */
|
|
11
|
-
export declare const
|
|
12
|
+
export declare const MEETING_LINK_QUERY: import("@wirecat/cli-base/query").QueryRegistry;
|
|
13
|
+
export declare const selectionOptions: (command: Command, list?: boolean) => Command;
|
|
14
|
+
export declare const linkSelection: (words: string[], flags: SelectionFlags) => SelectionFlags;
|
|
12
15
|
export declare const selectionOf: (flags: SelectionFlags, signal?: AbortSignal, defaultSince?: string) => {
|
|
13
16
|
request: {
|
|
14
17
|
eventId?: number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-selection-options.d.ts","sourceRoot":"","sources":["../src/meeting-selection-options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"meeting-selection-options.d.ts","sourceRoot":"","sources":["../src/meeting-selection-options.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,oGAAoG;AACpG,eAAO,MAAM,kBAAkB,iDA6B7B,CAAA;AAEF,eAAO,MAAM,gBAAgB,YAAa,OAAO,qBAAiB,OAWjE,CAAA;AAED,eAAO,MAAM,aAAa,UAAW,MAAM,EAAE,SAAS,cAAc,KAAG,cAWtE,CAAA;AAED,eAAO,MAAM,WAAW,UAAW,cAAc,WAAW,WAAW,iBAAiB,MAAM;;;;;;;;;;;;;;;;;CAe7F,CAAA"}
|
|
@@ -1,13 +1,62 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CliError } from "@wirecat/cli-base";
|
|
2
|
+
import { defineQuery } from "@wirecat/cli-base/query";
|
|
3
|
+
import { dateWindow, queryTerms } from "@wirecat/cli-core/cli";
|
|
2
4
|
import { bytes } from "./execution.js";
|
|
3
5
|
/** The meetings a stats, review or links answer covers: the options and the request they become. */
|
|
4
|
-
export const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
export const MEETING_LINK_QUERY = defineQuery({
|
|
7
|
+
entity: "meeting_link",
|
|
8
|
+
backend: "native",
|
|
9
|
+
fields: [
|
|
10
|
+
{
|
|
11
|
+
name: "event_id",
|
|
12
|
+
native: true,
|
|
13
|
+
type: "num",
|
|
14
|
+
operators: ["term"],
|
|
15
|
+
example: "event_id:1",
|
|
16
|
+
relation: "meetings linked to this event",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: "project",
|
|
20
|
+
native: true,
|
|
21
|
+
type: "kw",
|
|
22
|
+
operators: ["term", "phrase"],
|
|
23
|
+
example: "project:RES",
|
|
24
|
+
relation: "meetings confirmed in this project",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: "topic",
|
|
28
|
+
native: true,
|
|
29
|
+
type: "kw",
|
|
30
|
+
operators: ["term", "phrase"],
|
|
31
|
+
example: "topic:planning",
|
|
32
|
+
relation: "meetings with this topic",
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
});
|
|
36
|
+
export const selectionOptions = (command, list = false) => {
|
|
37
|
+
command
|
|
38
|
+
.option("--since-time <time>", "meetings starting at or after this date or time (ISO 8601, or 30d ago)")
|
|
39
|
+
.option("--until-time <time>", "meetings starting at or before this date or time; a date alone is that whole day")
|
|
40
|
+
.option("--timezone <zone>", "the IANA zone dates and weeks are read in (default: this computer's)");
|
|
41
|
+
if (!list)
|
|
42
|
+
command
|
|
43
|
+
.option("--event-id <id>", "only meetings linked to this stored event", bytes)
|
|
44
|
+
.option("--project <project>", "meetings confirmed in this project, by name, key or alias")
|
|
45
|
+
.option("--topic-name <name>", "meetings with this topic label, by name or alias");
|
|
46
|
+
return command;
|
|
47
|
+
};
|
|
48
|
+
export const linkSelection = (words, flags) => {
|
|
49
|
+
const terms = queryTerms(words, MEETING_LINK_QUERY, "mentions list");
|
|
50
|
+
const event = terms.get("event_id");
|
|
51
|
+
if (event !== undefined && (!/^[1-9]\d*$/.test(event) || !Number.isSafeInteger(Number(event))))
|
|
52
|
+
throw new CliError("validation_error", "event_id must be a positive safe integer");
|
|
53
|
+
return {
|
|
54
|
+
...flags,
|
|
55
|
+
...(event === undefined ? {} : { eventId: Number(event) }),
|
|
56
|
+
...(terms.get("project") === undefined ? {} : { project: terms.get("project") }),
|
|
57
|
+
...(terms.get("topic") === undefined ? {} : { topicName: terms.get("topic") }),
|
|
58
|
+
};
|
|
59
|
+
};
|
|
11
60
|
export const selectionOf = (flags, signal, defaultSince) => {
|
|
12
61
|
const zone = flags.timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
13
62
|
const window = dateWindow({ sinceTime: flags.sinceTime ?? defaultSince, untilTime: flags.untilTime, zone });
|
|
@@ -15,7 +64,7 @@ export const selectionOf = (flags, signal, defaultSince) => {
|
|
|
15
64
|
request: {
|
|
16
65
|
...(flags.eventId === undefined ? {} : { eventId: flags.eventId }),
|
|
17
66
|
...(flags.project === undefined ? {} : { project: flags.project }),
|
|
18
|
-
...(flags.topic === undefined ? {} : { topic: flags.topic }),
|
|
67
|
+
...((flags.topicName ?? flags.topic) === undefined ? {} : { topic: flags.topicName ?? flags.topic }),
|
|
19
68
|
...(window.since === undefined ? {} : { since: window.since }),
|
|
20
69
|
...(window.until === undefined ? {} : { until: window.until }),
|
|
21
70
|
...(signal ? { signal } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-selection-options.js","sourceRoot":"","sources":["../src/meeting-selection-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"meeting-selection-options.js","sourceRoot":"","sources":["../src/meeting-selection-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { type Body } from "@wirecat/cli-core/cli";
|
|
2
2
|
import type { Command } from "commander";
|
|
3
|
-
/**
|
|
4
|
-
* `models list|download`: the speech models `meetings transcribe` runs, in the folder every WireCat CLI shares,
|
|
5
|
-
* so a model downloaded by tg serves zm too. Downloading is the owner's command; transcription never downloads.
|
|
6
|
-
*/
|
|
7
3
|
export declare const addModelsCommands: (program: Command, deps: {
|
|
8
4
|
env: () => NodeJS.ProcessEnv;
|
|
9
5
|
output: (body: Body) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models-commands.d.ts","sourceRoot":"","sources":["../src/models-commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"models-commands.d.ts","sourceRoot":"","sources":["../src/models-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAyB,MAAM,uBAAuB,CAAA;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,eAAO,MAAM,iBAAiB,YACnB,OAAO,QACV;IAAE,GAAG,EAAE,MAAM,MAAM,CAAC,UAAU,CAAC;IAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAAC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,KACvG,IAaF,CAAA"}
|
package/dist/models-commands.js
CHANGED
|
@@ -1,65 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { annotate } from "@wirecat/cli-base/commands";
|
|
3
|
-
import { defineQuery } from "@wirecat/cli-base/query";
|
|
4
|
-
import { FETCH, itemOf, LOCAL_READ, listOf, NO_EFFECTS, queryTerms, termField, typedQuery, withQuery, } from "@wirecat/cli-core/cli";
|
|
5
|
-
import { install, installedBytes, isInstalled, MODELS, modelsDirectory, speechModel, } from "@wirecat/cli-core/speech";
|
|
6
|
-
/** The shared `models list` fields; zm ships speech models only, so `kind:text` lists none. */
|
|
7
|
-
const MODELS_QUERY = defineQuery({
|
|
8
|
-
entity: "model",
|
|
9
|
-
backend: "native",
|
|
10
|
-
fields: [
|
|
11
|
-
termField("kind", "enum", "kind:audio", { values: ["audio", "text"] }),
|
|
12
|
-
termField("id", "kw", "id:parakeet-v3"),
|
|
13
|
-
termField("downloaded", "bool", "downloaded:true"),
|
|
14
|
-
],
|
|
15
|
-
});
|
|
16
|
-
const itemOfModel = (model, directory) => ({
|
|
17
|
-
id: model.id,
|
|
18
|
-
kind: "audio",
|
|
19
|
-
title: model.title,
|
|
20
|
-
languages: model.languages,
|
|
21
|
-
size_bytes: installedBytes(model),
|
|
22
|
-
downloaded: isInstalled(model, directory),
|
|
23
|
-
// `meetings transcribe` requires --model, so no speech model is the default
|
|
24
|
-
default: false,
|
|
25
|
-
path: join(directory, model.id),
|
|
26
|
-
});
|
|
27
|
-
/**
|
|
28
|
-
* `models list|download`: the speech models `meetings transcribe` runs, in the folder every WireCat CLI shares,
|
|
29
|
-
* so a model downloaded by tg serves zm too. Downloading is the owner's command; transcription never downloads.
|
|
30
|
-
*/
|
|
1
|
+
import { modelCatalogueCommand } from "@wirecat/cli-core/cli";
|
|
31
2
|
export const addModelsCommands = (program, deps) => {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
output:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
.action((words) => {
|
|
40
|
-
const terms = queryTerms(typedQuery(words), MODELS_QUERY, "models list");
|
|
41
|
-
const kind = terms.get("kind");
|
|
42
|
-
const id = terms.get("id");
|
|
43
|
-
const downloaded = terms.get("downloaded");
|
|
44
|
-
const directory = modelsDirectory(deps.env());
|
|
45
|
-
const items = MODELS.filter(() => kind === undefined || kind === "audio")
|
|
46
|
-
.filter((model) => id === undefined || model.id === id)
|
|
47
|
-
.map((model) => itemOfModel(model, directory))
|
|
48
|
-
.filter((item) => downloaded === undefined || item.downloaded === (downloaded === "true"));
|
|
49
|
-
deps.output(listOf("models list", { items, limit: Math.max(1, items.length), has_more: false }));
|
|
50
|
-
});
|
|
51
|
-
annotate(models.command("download"), {
|
|
52
|
-
effects: FETCH,
|
|
53
|
-
output: { entity: "model" },
|
|
54
|
-
examples: ["zm models download parakeet-v3 --json"],
|
|
55
|
-
})
|
|
56
|
-
.argument("<model>", "a model id from `models list`")
|
|
57
|
-
.description("download a speech model, or repair one, checking every file's sha256")
|
|
58
|
-
.action(async (id) => {
|
|
59
|
-
const model = speechModel(id);
|
|
60
|
-
const directory = modelsDirectory(deps.env());
|
|
61
|
-
await install(model, directory, { verifyExisting: true, progress: (line) => deps.diagnostic(`${line}\n`) });
|
|
62
|
-
deps.output(itemOf(itemOfModel(model, directory)));
|
|
63
|
-
});
|
|
3
|
+
program.addCommand(modelCatalogueCommand({ command: "zm", appName: "zoom-cli", envPrefix: "ZM", description: "Zoom meetings", version: "" }, {
|
|
4
|
+
kinds: ["audio"],
|
|
5
|
+
env: deps.env,
|
|
6
|
+
output: deps.output,
|
|
7
|
+
diagnostic: deps.diagnostic,
|
|
8
|
+
offline: () => program.opts().offline === true,
|
|
9
|
+
}));
|
|
64
10
|
};
|
|
65
11
|
//# sourceMappingURL=models-commands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models-commands.js","sourceRoot":"","sources":["../src/models-commands.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"models-commands.js","sourceRoot":"","sources":["../src/models-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAGxE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAAgB,EAChB,IAAwG,EAClG,EAAE;IACR,OAAO,CAAC,UAAU,CAChB,qBAAqB,CACnB,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,EAClG;QACE,KAAK,EAAE,CAAC,OAAO,CAAC;QAChB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI;KAC/C,CACF,CACF,CAAA;AACH,CAAC,CAAA"}
|
package/dist/permissions.d.ts
CHANGED
|
@@ -3,6 +3,11 @@ import type { Command } from "commander";
|
|
|
3
3
|
import type { ZoomConfig } from "./config.js";
|
|
4
4
|
/** A change to Zoom asks first. A built-in default only tightens what the owner set (WC-PERM-7). */
|
|
5
5
|
export declare const DEFAULT_PERMISSIONS: Readonly<Record<string, Level>>;
|
|
6
|
+
/** A saved denial must be reviewed when the two recording download paths become one. */
|
|
7
|
+
export declare const recordingPermissions: (levels: Readonly<Record<string, Level>>) => Readonly<Record<string, Level>>;
|
|
8
|
+
export declare const discoveryLevels: (own: Readonly<Record<string, Level>>, env: NodeJS.ProcessEnv) => {
|
|
9
|
+
"*"?: "allow" | "ask" | "deny" | "readonly" | undefined;
|
|
10
|
+
};
|
|
6
11
|
export declare const pathOf: (command: Command) => string[];
|
|
7
12
|
/** The command's path, dotted — `remote-meetings.cancel` — or null for housekeeping. */
|
|
8
13
|
export declare const permissionKeyForPath: (path: readonly string[]) => string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,KAAK,EAGX,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG7C,oGAAoG;AACpG,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAG/D,CAAA;AAKD,eAAO,MAAM,MAAM,YAAa,OAAO,KAAG,MAAM,EAI/C,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,oBAAoB,SAAU,SAAS,MAAM,EAAE,KAAG,MAAM,GAAG,IAC4C,CAAA;AACpH,eAAO,MAAM,eAAe,YAAa,OAAO,KAAG,MAAM,GAAG,IAA6C,CAAA;AAEzG,qFAAqF;AACrF,eAAO,MAAM,cAAc,YAAa,OAAO,KAAG,GAAG,CAAC,MAAM,CAY3D,CAAA;AAED,eAAO,MAAM,gBAAgB,UAAW,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAkBhG,CAAA;AAED,MAAM,WAAW,iBAAiB;IAChC,kHAAkH;IAClH,OAAO,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAC7C,2EAA2E;IAC3E,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAChD,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAA;CAChB;AASD;;;;GAIG;AACH,eAAO,MAAM,eAAe,YAAa,OAAO,WAAW,iBAAiB,KAAG,OAAO,CAAC,IAAI,CAAC,GAAG,SAoC9F,CAAA;AAED,yGAAyG;AACzG,eAAO,MAAM,YAAY,YACd,OAAO,OACX,MAAM,CAAC,UAAU,WACb,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,YACjC,iBAAiB,CAAC,SAAS,CAAC,KACrC,OAAO,CAAC,IAAI,CAAC,GAAG,SAIlB,CAAA"}
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,KAAK,EAGX,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG7C,oGAAoG;AACpG,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAG/D,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,oBAAoB,WAAY,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAY5G,CAAA;AAED,eAAO,MAAM,eAAe,QAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,OAAO,MAAM,CAAC,UAAU;;CAQ3F,CAAA;AAKD,eAAO,MAAM,MAAM,YAAa,OAAO,KAAG,MAAM,EAI/C,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,oBAAoB,SAAU,SAAS,MAAM,EAAE,KAAG,MAAM,GAAG,IAC4C,CAAA;AACpH,eAAO,MAAM,eAAe,YAAa,OAAO,KAAG,MAAM,GAAG,IAA6C,CAAA;AAEzG,qFAAqF;AACrF,eAAO,MAAM,cAAc,YAAa,OAAO,KAAG,GAAG,CAAC,MAAM,CAY3D,CAAA;AAED,eAAO,MAAM,gBAAgB,UAAW,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAkBhG,CAAA;AAED,MAAM,WAAW,iBAAiB;IAChC,kHAAkH;IAClH,OAAO,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;IAC7C,2EAA2E;IAC3E,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAChD,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAA;CAChB;AASD;;;;GAIG;AACH,eAAO,MAAM,eAAe,YAAa,OAAO,WAAW,iBAAiB,KAAG,OAAO,CAAC,IAAI,CAAC,GAAG,SAoC9F,CAAA;AAED,yGAAyG;AACzG,eAAO,MAAM,YAAY,YACd,OAAO,OACX,MAAM,CAAC,UAAU,WACb,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,YACjC,iBAAiB,CAAC,SAAS,CAAC,KACrC,OAAO,CAAC,IAAI,CAAC,GAAG,SAIlB,CAAA"}
|
package/dist/permissions.js
CHANGED
|
@@ -1,14 +1,33 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
2
|
import { metaOf } from "@wirecat/cli-base/commands";
|
|
3
|
-
import { setupPermissionCeiling } from "@wirecat/cli-core/cli";
|
|
3
|
+
import { readOnlyLockOf, setupPermissionCeiling } from "@wirecat/cli-core/cli";
|
|
4
4
|
import { CEILING_KEY, keyForCommand, LEVELS, levelFor, DEFAULT_PERMISSIONS as SHARED_DEFAULT_PERMISSIONS, } from "@wirecat/cli-core/sends";
|
|
5
5
|
import { PROFILE_FREE } from "./commands.js";
|
|
6
|
-
import { refusalOf, refuseChangeWhenReadOnly } from "./read-only.js";
|
|
6
|
+
import { refusalOf, refuseChangeWhenReadOnly, ZM } from "./read-only.js";
|
|
7
7
|
/** A change to Zoom asks first. A built-in default only tightens what the owner set (WC-PERM-7). */
|
|
8
8
|
export const DEFAULT_PERMISSIONS = {
|
|
9
9
|
...SHARED_DEFAULT_PERMISSIONS,
|
|
10
10
|
"remote-meetings": "ask",
|
|
11
11
|
};
|
|
12
|
+
/** A saved denial must be reviewed when the two recording download paths become one. */
|
|
13
|
+
export const recordingPermissions = (levels) => {
|
|
14
|
+
if (Object.hasOwn(levels, "recordings.sync"))
|
|
15
|
+
throw new CliError("configuration_error", "permission path moved — rename permissions.recordings.sync to permissions.recordings.download", {
|
|
16
|
+
permission: "recordings.sync",
|
|
17
|
+
replacement: "recordings.download",
|
|
18
|
+
retryable: false,
|
|
19
|
+
});
|
|
20
|
+
return levels;
|
|
21
|
+
};
|
|
22
|
+
export const discoveryLevels = (own, env) => {
|
|
23
|
+
const ceiling = setupPermissionCeiling(env);
|
|
24
|
+
return {
|
|
25
|
+
...DEFAULT_PERMISSIONS,
|
|
26
|
+
...own,
|
|
27
|
+
...(ceiling ? { [CEILING_KEY]: ceiling } : {}),
|
|
28
|
+
...(readOnlyLockOf(ZM, env) ? { [CEILING_KEY]: "readonly" } : {}),
|
|
29
|
+
};
|
|
30
|
+
};
|
|
12
31
|
/** Looking after the tool — its settings, its login, its help — is never gated (WC-PERM-5). */
|
|
13
32
|
const HOUSEKEEPING = new Set([...PROFILE_FREE, "session", "serve", "mcp"]);
|
|
14
33
|
export const pathOf = (command) => {
|
|
@@ -68,7 +87,7 @@ export const checkPermission = (command, context) => {
|
|
|
68
87
|
return;
|
|
69
88
|
const named = context.profile();
|
|
70
89
|
const profile = named ?? "<profile>";
|
|
71
|
-
const own = named === undefined ? {} : (context.config().permissions[named] ?? {});
|
|
90
|
+
const own = recordingPermissions(named === undefined ? {} : (context.config().permissions[named] ?? {}));
|
|
72
91
|
const levels = context.ceiling ? { ...own, [CEILING_KEY]: context.ceiling } : own;
|
|
73
92
|
const { level, key: by } = levelFor(levels, key, DEFAULT_PERMISSIONS);
|
|
74
93
|
const at = by ?? key;
|
package/dist/permissions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program-bindings.d.ts","sourceRoot":"","sources":["../src/program-bindings.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAqBxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAa/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAgB7C,eAAO,MAAM,eAAe,YACjB,OAAO,SACT,WAAW,aACP,aAAa,WACf,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,KAC9D,
|
|
1
|
+
{"version":3,"file":"program-bindings.d.ts","sourceRoot":"","sources":["../src/program-bindings.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAqBxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAa/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAgB7C,eAAO,MAAM,eAAe,YACjB,OAAO,SACT,WAAW,aACP,aAAa,WACf,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,KAC9D,IAmYF,CAAA"}
|
package/dist/program-bindings.js
CHANGED
|
@@ -16,7 +16,7 @@ import { addZoomMeetingCommands } from "./meeting-commands.js";
|
|
|
16
16
|
import { captureContextSources } from "./meeting-communications-binding.js";
|
|
17
17
|
import { addZoomInventoryCommand } from "./meeting-inventory.js";
|
|
18
18
|
import { configuredMeetingSource } from "./meeting-source.js";
|
|
19
|
-
import { guardCommand } from "./permissions.js";
|
|
19
|
+
import { discoveryLevels, guardCommand } from "./permissions.js";
|
|
20
20
|
import { chooseProfile } from "./profile.js";
|
|
21
21
|
import { PROFILE_HELP, recordProfile } from "./profile-word.js";
|
|
22
22
|
import { addProgressCommands } from "./progress-commands.js";
|
|
@@ -378,7 +378,7 @@ export const bindZoomProgram = (program, given, lifecycle, execute) => {
|
|
|
378
378
|
});
|
|
379
379
|
addMcpCommands(program, {
|
|
380
380
|
profile,
|
|
381
|
-
permissions: (name) => readConfig(deps.configPath).permissions[name] ?? {},
|
|
381
|
+
permissions: (name) => discoveryLevels(readConfig(deps.configPath).permissions[name] ?? {}, deps.env ?? process.env),
|
|
382
382
|
run: (argv, environment) => runForAgent(execute, argv, given, environment),
|
|
383
383
|
signal,
|
|
384
384
|
serve: deps.serveMcp,
|