@skillcdn/console 0.1.23 → 0.3.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.
Files changed (97) hide show
  1. package/README.md +6 -5
  2. package/dist/api.d.ts +1 -1
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +1 -1
  5. package/dist/api.js.map +1 -1
  6. package/dist/cli/cli.d.ts.map +1 -1
  7. package/dist/cli/cli.js +80 -54
  8. package/dist/cli/cli.js.map +1 -1
  9. package/dist/cli/format.d.ts +4 -28
  10. package/dist/cli/format.d.ts.map +1 -1
  11. package/dist/cli/format.js +7 -260
  12. package/dist/cli/format.js.map +1 -1
  13. package/dist/cli/help.d.ts +6 -1
  14. package/dist/cli/help.d.ts.map +1 -1
  15. package/dist/cli/help.js +47 -24
  16. package/dist/cli/help.js.map +1 -1
  17. package/dist/cli/pack.d.ts +46 -0
  18. package/dist/cli/pack.d.ts.map +1 -0
  19. package/dist/cli/pack.js +250 -0
  20. package/dist/cli/pack.js.map +1 -0
  21. package/dist/compat.d.ts +1 -1
  22. package/dist/compat.js +1 -1
  23. package/dist/components/decision-list.d.ts +13 -1
  24. package/dist/components/decision-list.d.ts.map +1 -1
  25. package/dist/components/decision-list.js +74 -29
  26. package/dist/components/decision-list.js.map +1 -1
  27. package/dist/components/paged.d.ts +24 -0
  28. package/dist/components/paged.d.ts.map +1 -1
  29. package/dist/components/paged.js +40 -4
  30. package/dist/components/paged.js.map +1 -1
  31. package/dist/components/skills.d.ts.map +1 -1
  32. package/dist/components/skills.js +8 -4
  33. package/dist/components/skills.js.map +1 -1
  34. package/dist/components/ui.d.ts +2 -0
  35. package/dist/components/ui.d.ts.map +1 -1
  36. package/dist/components/ui.js +7 -2
  37. package/dist/components/ui.js.map +1 -1
  38. package/dist/components/work.d.ts +2 -0
  39. package/dist/components/work.d.ts.map +1 -1
  40. package/dist/components/work.js +3 -2
  41. package/dist/components/work.js.map +1 -1
  42. package/dist/console.css +112 -5
  43. package/dist/console.d.ts.map +1 -1
  44. package/dist/console.js +5 -3
  45. package/dist/console.js.map +1 -1
  46. package/dist/data.d.ts.map +1 -1
  47. package/dist/data.js +27 -2
  48. package/dist/data.js.map +1 -1
  49. package/dist/i18n/en.d.ts +13 -0
  50. package/dist/i18n/en.d.ts.map +1 -1
  51. package/dist/i18n/en.js +15 -0
  52. package/dist/i18n/en.js.map +1 -1
  53. package/dist/i18n/ko.d.ts.map +1 -1
  54. package/dist/i18n/ko.js +15 -0
  55. package/dist/i18n/ko.js.map +1 -1
  56. package/dist/index.d.ts +2 -2
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +2 -2
  59. package/dist/index.js.map +1 -1
  60. package/dist/router.d.ts +6 -1
  61. package/dist/router.d.ts.map +1 -1
  62. package/dist/router.js +13 -7
  63. package/dist/router.js.map +1 -1
  64. package/dist/rules.js +3 -3
  65. package/dist/rules.js.map +1 -1
  66. package/dist/schemas.d.ts +557 -162
  67. package/dist/schemas.d.ts.map +1 -1
  68. package/dist/schemas.js +72 -158
  69. package/dist/schemas.js.map +1 -1
  70. package/docs/specs/cli.md +12 -12
  71. package/docs/specs/rest.md +7 -15
  72. package/package.json +2 -1
  73. package/skills/deploying-a-console/SKILL.md +2 -2
  74. package/skills/working-the-board/SKILL.md +9 -14
  75. package/skills/working-the-board/references/setting-up.md +3 -0
  76. package/skills/working-the-board/references/terms.md +9 -0
  77. package/skills/working-the-board/references/the-sentence.md +5 -0
  78. package/src/api.ts +2 -7
  79. package/src/cli/cli.ts +113 -62
  80. package/src/cli/format.ts +10 -324
  81. package/src/cli/help.ts +53 -27
  82. package/src/cli/pack.ts +356 -0
  83. package/src/compat.ts +1 -1
  84. package/src/components/decision-list.tsx +227 -94
  85. package/src/components/paged.tsx +72 -3
  86. package/src/components/skills.tsx +51 -33
  87. package/src/components/ui.tsx +16 -3
  88. package/src/components/work.tsx +9 -5
  89. package/src/console.tsx +8 -2
  90. package/src/data.ts +32 -2
  91. package/src/i18n/en.ts +18 -0
  92. package/src/i18n/ko.ts +17 -0
  93. package/src/index.ts +9 -1
  94. package/src/router.ts +20 -9
  95. package/src/rules.ts +3 -3
  96. package/src/schemas.ts +87 -184
  97. package/src/styles/console.css +112 -5
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { type BrowseResult, type DirectoryResult, type FileResult, type MountSummary, type RestBrowse, type RestFile, type RestSkill, type SkillResult, type ToolWords } from "@skillcdn/core";
2
+ import type { RestSkillBrowse, RestSkillFile, RestSkillFind, RestSkillLoad, RestSkills } from "../schemas.js";
3
+ /** How the results name the four reads, so that an agent is told the command and not a tool. */
4
+ export declare const CONSOLE_WORDS: ToolWords;
5
+ /** Where the reads of a pack are rendered at: what the listing said the address serves. */
6
+ export type PackSummary = MountSummary;
7
+ export declare const NO_ADDRESS = "No skills address: neither this project nor the console names one.";
8
+ /** What the listing said the address serves, for the reads to be rendered at; nothing when it did not answer. */
9
+ export declare function summaryOf(listing: RestSkills): PackSummary | undefined;
10
+ /**
11
+ * The pack: where it is and how it answered; what a client is told on connect, as the
12
+ * deployment tells one; every skill and document; where a person connects an agent of its own;
13
+ * and where the console's own skills are on this machine.
14
+ */
15
+ export declare function formatSkills(skills: RestSkills, ownSkills?: string): string;
16
+ /**
17
+ * A skill's path as given, or taken out of the URI the listing names it by
18
+ * (`skill://<host>/<owner>/<name>/<path>`); a URI of another pack would read this pack's skill
19
+ * at the same path, or nothing, so it is said instead.
20
+ */
21
+ export declare function skillPathIn(given: string, packAddress: string | null): {
22
+ readonly path: string;
23
+ } | {
24
+ readonly error: string;
25
+ };
26
+ /** The pages of a skill, as the console answered them, as the one skill they were cut from. */
27
+ export declare function joinSkill(pages: readonly RestSkillLoad[], summary: PackSummary): SkillResult | undefined;
28
+ /** The skill whole, as the REST API answers one, for `--json`. */
29
+ export declare function bodyOfSkill(skill: SkillResult): RestSkill;
30
+ /** One skill as `load_skill` lays it out for a model: the rules, the body, the included files, its files and references. */
31
+ export declare function formatSkillLoad(loaded: RestSkillLoad, whole: SkillResult | undefined): string;
32
+ /** The pages of a folder, as the console answered them, as the one listing they were cut from. */
33
+ export declare function joinFolder(pages: readonly RestSkillBrowse[], summary: PackSummary): BrowseResult | undefined;
34
+ /** A folder whole, as the REST API answers one page, for `--json`. */
35
+ export declare const bodyOfFolder: (result: BrowseResult) => RestBrowse;
36
+ /** What a folder holds, as `browse_repo` lays it out for a model. */
37
+ export declare function formatSkillBrowse(browsed: RestSkillBrowse, whole: BrowseResult | undefined): string;
38
+ /** What words found, as `search_repo` lays it out for a model, one page of it. */
39
+ export declare function formatSkillFind(found: RestSkillFind, summary: PackSummary | undefined): string;
40
+ /** The pages of a file, as the console answered them, as the file whole; or the folder the path named. */
41
+ export declare function joinFile(pages: readonly RestSkillFile[], summary: PackSummary): FileResult | DirectoryResult | undefined;
42
+ /** A file whole, or a folder, as the REST API answers it, for `--json`. */
43
+ export declare const bodyOfFile: (result: FileResult | DirectoryResult) => RestFile;
44
+ /** A file as `read_repo_file` lays it out for a model, whole; or what the folder holds. */
45
+ export declare function formatSkillFile(read: RestSkillFile, whole: FileResult | DirectoryResult | undefined): string;
46
+ //# sourceMappingURL=pack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack.d.ts","sourceRoot":"","sources":["../../src/cli/pack.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAIjB,KAAK,eAAe,EAGpB,KAAK,UAAU,EAOf,KAAK,YAAY,EAKjB,KAAK,UAAU,EACf,KAAK,QAAQ,EAEb,KAAK,SAAS,EAOd,KAAK,WAAW,EAGhB,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACX,MAAM,eAAe,CAAC;AASvB,gGAAgG;AAChG,eAAO,MAAM,aAAa,EAAE,SAK3B,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC;AAEvC,eAAO,MAAM,UAAU,uEAAuE,CAAC;AAmC/F,iHAAiH;AACjH,wBAAgB,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAEtE;AAoDD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CA6B3E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAqBxD;AAED,+FAA+F;AAC/F,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,aAAa,EAAE,EAC/B,OAAO,EAAE,WAAW,GACnB,WAAW,GAAG,SAAS,CAMzB;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAMzD;AAED,4HAA4H;AAC5H,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAW7F;AAED,kGAAkG;AAClG,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,eAAe,EAAE,EACjC,OAAO,EAAE,WAAW,GACnB,YAAY,GAAG,SAAS,CAe1B;AAED,sEAAsE;AACtE,eAAO,MAAM,YAAY,WAAY,YAAY,KAAG,UACX,CAAC;AAE1C,qEAAqE;AACrE,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,YAAY,GAAG,SAAS,GAC9B,MAAM,CAWR;AAED,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAQ9F;AAED,0GAA0G;AAC1G,wBAAgB,QAAQ,CACtB,KAAK,EAAE,SAAS,aAAa,EAAE,EAC/B,OAAO,EAAE,WAAW,GACnB,UAAU,GAAG,eAAe,GAAG,SAAS,CAwB1C;AAED,2EAA2E;AAC3E,eAAO,MAAM,UAAU,WAAY,UAAU,GAAG,eAAe,KAAG,QACF,CAAC;AAEjE,2FAA2F;AAC3F,wBAAgB,eAAe,CAC7B,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,UAAU,GAAG,eAAe,GAAG,SAAS,GAC9C,MAAM,CAWR"}
@@ -0,0 +1,250 @@
1
+ import { browseBody, browseResultOf, catalogStateOf, directoryBody, directoryResultOf, fileBody, fileResultOf, findResultOf, joinSkillPages, mountSummaryOf, parseAddress, parseRepoPath, parseSkillUri, renderBrowseResult, renderDirectoryResult, renderFileResult, renderFindResult, renderInstructions, renderSkillResult, skillOutcome, skillResultOf, } from "@skillcdn/core";
2
+ // The pack of the project, as the command prints it (ADR-0028, ADR-0031): the console answers
3
+ // what the pack's REST API answered, in the shapes of @skillcdn/core, and the command renders
4
+ // it with the functions a deployment's own tools render for a model, naming the reads as its
5
+ // own commands, so that an agent reads here what it would read over MCP, or with the skillcdn
6
+ // command. The pages a read came in are joined first: a skill, a folder and a file arrive whole.
7
+ /** How the results name the four reads, so that an agent is told the command and not a tool. */
8
+ export const CONSOLE_WORDS = {
9
+ browse: "console skills <folder>",
10
+ search: "console skills --search",
11
+ load: "console skill",
12
+ read: "console skill --file",
13
+ };
14
+ export const NO_ADDRESS = "No skills address: neither this project nor the console names one.";
15
+ /** The words of a read that did not happen, by status, with what to do about it. */
16
+ const SKILLS_WORDS = {
17
+ indexing: "The pack is still being indexed; ask again in a moment.",
18
+ failed: "The pack could not be indexed, or this is a file the pack will not carry: too large, or not text.",
19
+ not_found: "Nothing is served to the console at this address or path: it is not there, or the pack is private and the project holds no pack token for it (console project pack-token <key> --stdin, for an owner).",
20
+ token_invalid: "The pack token the project holds no longer works at the deployment: an owner sets a new one (console project pack-token <key> --stdin).",
21
+ unavailable: "The pack could not be reached; ask again later.",
22
+ };
23
+ /** The first line of an answer about the pack: what was read, where the pack is, and how it went. */
24
+ function head(what, answer) {
25
+ const where = answer.source === null ? "read from the console's machine" : `served by ${answer.source}`;
26
+ return `${what} at ${answer.address}, ${where}: ${answer.status}`;
27
+ }
28
+ /** A read that did not happen: the head, the words of its status, and the pack's own refusal when it gave one. */
29
+ function refused(what, answer) {
30
+ const lines = [head(what, answer)];
31
+ if (answer.status !== "none" && answer.status !== "ready") {
32
+ lines.push(SKILLS_WORDS[answer.status]);
33
+ }
34
+ if (answer.refusal !== null) {
35
+ lines.push(answer.refusal.message);
36
+ }
37
+ return lines.join("\n");
38
+ }
39
+ /** What the listing said the address serves, for the reads to be rendered at; nothing when it did not answer. */
40
+ export function summaryOf(listing) {
41
+ return listing.mount === null ? undefined : mountSummaryOf(listing.mount);
42
+ }
43
+ /** Every skill and document the address serves, as one listing: what `search_repo` without words answers. */
44
+ function listingOf(mount, summary) {
45
+ if (mount.index.status !== "ready") {
46
+ return undefined;
47
+ }
48
+ const { index } = mount;
49
+ const items = [];
50
+ for (const skill of index.skills) {
51
+ const directory = parseRepoPath(skill.directory);
52
+ if (!directory.ok) {
53
+ continue;
54
+ }
55
+ const path = parseRepoPath(skill.path ?? (skill.directory === "" ? "SKILL.md" : `${skill.directory}/SKILL.md`));
56
+ items.push({
57
+ kind: "skill",
58
+ ...(path.ok ? { path: path.value } : {}),
59
+ name: skill.name,
60
+ directory: directory.value,
61
+ description: skill.description,
62
+ files: [],
63
+ moreFiles: 0,
64
+ // For people, and not rendered for a model.
65
+ translations: {},
66
+ });
67
+ }
68
+ for (const document of index.documents) {
69
+ const path = parseRepoPath(document.path);
70
+ if (path.ok) {
71
+ items.push({
72
+ kind: "document",
73
+ path: path.value,
74
+ title: document.title ?? undefined,
75
+ summary: document.summary ?? undefined,
76
+ skillDirectory: undefined,
77
+ });
78
+ }
79
+ }
80
+ const state = catalogStateOf(mount);
81
+ return {
82
+ mount: summary,
83
+ query: undefined,
84
+ items,
85
+ // The counts stand in the instructions above; without totals here, nothing suggests a cursor.
86
+ totals: undefined,
87
+ diagnostics: state.status === "ready" ? state.catalog.diagnostics : [],
88
+ };
89
+ }
90
+ /**
91
+ * The pack: where it is and how it answered; what a client is told on connect, as the
92
+ * deployment tells one; every skill and document; where a person connects an agent of its own;
93
+ * and where the console's own skills are on this machine.
94
+ */
95
+ export function formatSkills(skills, ownSkills) {
96
+ const own = ownSkills === undefined
97
+ ? []
98
+ : ["", `The console's own skills, for working the board: ${ownSkills}`];
99
+ if (skills.status === "none" || skills.address === null) {
100
+ return [NO_ADDRESS, ...own].join("\n");
101
+ }
102
+ const summary = summaryOf(skills);
103
+ if (skills.status !== "ready" || skills.mount === null || summary === undefined) {
104
+ return [refused("skills", skills), ...own].join("\n");
105
+ }
106
+ const lines = [
107
+ head("skills", skills),
108
+ "",
109
+ renderInstructions(catalogStateOf(skills.mount), CONSOLE_WORDS),
110
+ ];
111
+ const listing = listingOf(skills.mount, summary);
112
+ if (listing !== undefined) {
113
+ lines.push("", renderFindResult(listing, CONSOLE_WORDS));
114
+ }
115
+ if (skills.page !== null) {
116
+ lines.push("", `A host with a SkillCDN connection of its own loads a skill by its URI, which a person makes at ${skills.page}; through the console, ${CONSOLE_WORDS.load} takes the URI too. --json adds the page of each skill, for a person.`);
117
+ }
118
+ lines.push(...own);
119
+ return lines.join("\n");
120
+ }
121
+ /**
122
+ * A skill's path as given, or taken out of the URI the listing names it by
123
+ * (`skill://<host>/<owner>/<name>/<path>`); a URI of another pack would read this pack's skill
124
+ * at the same path, or nothing, so it is said instead.
125
+ */
126
+ export function skillPathIn(given, packAddress) {
127
+ const uri = parseSkillUri(given);
128
+ if (uri === undefined) {
129
+ return given.startsWith("skill://")
130
+ ? {
131
+ error: `Not a skill's URI the console knows: ${given}. Say the path of its SKILL.md from the repository's root, or the URI console skills lists.`,
132
+ }
133
+ : { path: given };
134
+ }
135
+ const pack = packAddress === null ? undefined : parseAddress(packAddress);
136
+ if (pack?.ok === true &&
137
+ (uri.address.host !== pack.value.host ||
138
+ uri.address.owner !== pack.value.owner ||
139
+ uri.address.repo !== pack.value.repo)) {
140
+ return {
141
+ error: `That URI is of another pack, /${uri.address.host}/${uri.address.owner}/${uri.address.repo}; this project's pack is at ${packAddress}. Say the path of the SKILL.md, or a URI console skills lists.`,
142
+ };
143
+ }
144
+ return { path: uri.path };
145
+ }
146
+ /** The pages of a skill, as the console answered them, as the one skill they were cut from. */
147
+ export function joinSkill(pages, summary) {
148
+ return joinSkillPages(pages.flatMap((page) => page.read?.status === "ready" ? (skillResultOf(page.read, summary) ?? []) : []));
149
+ }
150
+ /** The skill whole, as the REST API answers one, for `--json`. */
151
+ export function bodyOfSkill(skill) {
152
+ const outcome = skillOutcome({ status: "ready", lookup: { kind: "found", skill } });
153
+ if ("failure" in outcome) {
154
+ throw new Error("a skill that was found has a body");
155
+ }
156
+ return outcome.body;
157
+ }
158
+ /** One skill as `load_skill` lays it out for a model: the rules, the body, the included files, its files and references. */
159
+ export function formatSkillLoad(loaded, whole) {
160
+ if (loaded.status === "none" || loaded.address === null) {
161
+ return NO_ADDRESS;
162
+ }
163
+ if (loaded.status !== "ready") {
164
+ return refused("skill", loaded);
165
+ }
166
+ if (whole === undefined) {
167
+ return `${head("skill", loaded)}\nNothing was read.`;
168
+ }
169
+ return renderSkillResult(whole, CONSOLE_WORDS);
170
+ }
171
+ /** The pages of a folder, as the console answered them, as the one listing they were cut from. */
172
+ export function joinFolder(pages, summary) {
173
+ const results = pages.flatMap((page) => page.read?.status === "ready" ? (browseResultOf(page.read, summary) ?? []) : []);
174
+ const first = results[0];
175
+ const last = results[results.length - 1];
176
+ if (first === undefined || last === undefined) {
177
+ return undefined;
178
+ }
179
+ return {
180
+ ...first,
181
+ mount: last.mount,
182
+ entries: results.flatMap((result) => result.entries),
183
+ nextCursor: last.nextCursor,
184
+ };
185
+ }
186
+ /** A folder whole, as the REST API answers one page, for `--json`. */
187
+ export const bodyOfFolder = (result) => browseBody({ status: "ready", result });
188
+ /** What a folder holds, as `browse_repo` lays it out for a model. */
189
+ export function formatSkillBrowse(browsed, whole) {
190
+ if (browsed.status === "none" || browsed.address === null) {
191
+ return NO_ADDRESS;
192
+ }
193
+ if (browsed.status !== "ready") {
194
+ return refused("folder", browsed);
195
+ }
196
+ if (whole === undefined) {
197
+ return `${head("folder", browsed)}\nNothing was read.`;
198
+ }
199
+ return renderBrowseResult(whole, CONSOLE_WORDS);
200
+ }
201
+ /** What words found, as `search_repo` lays it out for a model, one page of it. */
202
+ export function formatSkillFind(found, summary) {
203
+ if (found.status === "none" || found.address === null) {
204
+ return NO_ADDRESS;
205
+ }
206
+ if (found.status !== "ready" || found.read?.status !== "ready" || summary === undefined) {
207
+ return refused("search", found);
208
+ }
209
+ return renderFindResult(findResultOf(found.read, summary), CONSOLE_WORDS);
210
+ }
211
+ /** The pages of a file, as the console answered them, as the file whole; or the folder the path named. */
212
+ export function joinFile(pages, summary) {
213
+ const reads = pages.flatMap((page) => (page.read === null ? [] : [page.read]));
214
+ const first = reads[0];
215
+ if (first === undefined) {
216
+ return undefined;
217
+ }
218
+ if (first.kind === "directory") {
219
+ return directoryResultOf(first, summary);
220
+ }
221
+ const files = reads.flatMap((read) => read.kind === "file" ? (fileResultOf(read, summary) ?? []) : []);
222
+ const opening = files[0];
223
+ const closing = files[files.length - 1];
224
+ if (opening === undefined || closing === undefined) {
225
+ return undefined;
226
+ }
227
+ return {
228
+ ...opening,
229
+ mount: closing.mount,
230
+ content: files.map((file) => file.content).join(""),
231
+ nextOffset: closing.nextOffset,
232
+ totalLength: closing.totalLength,
233
+ };
234
+ }
235
+ /** A file whole, or a folder, as the REST API answers it, for `--json`. */
236
+ export const bodyOfFile = (result) => "entries" in result ? directoryBody(result) : fileBody(result);
237
+ /** A file as `read_repo_file` lays it out for a model, whole; or what the folder holds. */
238
+ export function formatSkillFile(read, whole) {
239
+ if (read.status === "none" || read.address === null) {
240
+ return NO_ADDRESS;
241
+ }
242
+ if (read.status !== "ready") {
243
+ return refused("file", read);
244
+ }
245
+ if (whole === undefined) {
246
+ return `${head("file", read)}\nNothing was read.`;
247
+ }
248
+ return "entries" in whole ? renderDirectoryResult(whole) : renderFileResult(whole, CONSOLE_WORDS);
249
+ }
250
+ //# sourceMappingURL=pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pack.js","sourceRoot":"","sources":["../../src/cli/pack.ts"],"names":[],"mappings":"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"}
package/dist/compat.d.ts CHANGED
@@ -26,7 +26,7 @@ export declare function parseRange(text: string | null | undefined): VersionRang
26
26
  export declare function inRange(version: Version, range: VersionRange): boolean;
27
27
  /**
28
28
  * The common rule. Before 1.0, a command from the console's own version on and within the
29
- * console's minor (`^0.1.18`): any release may change the contract until then (ADR-0007), so the
29
+ * console's minor (`^0.1.18`): any release may change the contract until then (ADR-0034), so the
30
30
  * console's own version is the floor, and the minor is the line. From 1.0, the console's major
31
31
  * and a minor within one of the console's, either way, whatever the patch: a minor adds and a
32
32
  * major breaks, as the version promises from then on.
package/dist/compat.js CHANGED
@@ -53,7 +53,7 @@ export function inRange(version, range) {
53
53
  }
54
54
  /**
55
55
  * The common rule. Before 1.0, a command from the console's own version on and within the
56
- * console's minor (`^0.1.18`): any release may change the contract until then (ADR-0007), so the
56
+ * console's minor (`^0.1.18`): any release may change the contract until then (ADR-0034), so the
57
57
  * console's own version is the floor, and the minor is the line. From 1.0, the console's major
58
58
  * and a minor within one of the console's, either way, whatever the patch: a minor adds and a
59
59
  * major breaks, as the version promises from then on.
@@ -23,6 +23,9 @@ export interface DecisionListProps {
23
23
  readonly docHref?: ((path: string) => string) | undefined;
24
24
  /** Where each decision's own page is. */
25
25
  readonly decisionHref?: ((decision: RestDecision) => string) | undefined;
26
+ /** The page of the record shown, from 1, and where each page is (ADR-0010); left out, the record turns its pages in place. */
27
+ readonly page?: number | undefined;
28
+ readonly pageHref?: ((page: number) => string) | undefined;
26
29
  readonly onAnswer?: ((decision: RestDecision, input: RestAnswerInput) => void) | undefined;
27
30
  readonly onUpdate?: ((decision: RestDecision, patch: RestDecisionPatch) => void) | undefined;
28
31
  readonly busy?: boolean | undefined;
@@ -35,8 +38,17 @@ export interface DecisionLogProps {
35
38
  readonly taskHref?: ((task: RestTask) => string) | undefined;
36
39
  /** Where each decision's own page is, with its context, its rationale and what followed. */
37
40
  readonly decisionHref?: ((decision: RestDecision) => string) | undefined;
41
+ /** Where a document the word given with an answer links to is read, by its path. */
42
+ readonly docHref?: ((path: string) => string) | undefined;
43
+ /** The page shown, from 1; the first when left out, the last for one past the end. Read with `pageHref`. */
44
+ readonly page?: number | undefined;
45
+ /** Where each page of the record is, so that a page has an address; left out, the pages turn in place. */
46
+ readonly pageHref?: ((page: number) => string) | undefined;
38
47
  }
39
- /** The record: one row per decision answered, what was asked, what was chosen, by whom, when. */
48
+ /**
49
+ * The record: one row per decision answered, what was asked and by whom, what was chosen with
50
+ * the word given and by whom; twenty to a page, the page named by the address or turned here.
51
+ */
40
52
  export declare function DecisionLog(props: DecisionLogProps): import("react").JSX.Element;
41
53
  export declare function DecisionList(props: DecisionListProps): import("react").JSX.Element;
42
54
  //# sourceMappingURL=decision-list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decision-list.d.ts","sourceRoot":"","sources":["../../src/components/decision-list.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision-list.d.ts","sourceRoot":"","sources":["../../src/components/decision-list.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,64 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from "react";
3
- import { agentLabel, MAX_BODY_LENGTH, MAX_NOTE_LENGTH, } from "../api.js";
3
+ import { agentLabel, MAX_BODY_LENGTH, MAX_NOTE_LENGTH, MAX_OPTION_LABEL_LENGTH, } from "../api.js";
4
4
  import { useWords } from "../i18n/index.js";
5
5
  import { Markdown } from "./markdown.js";
6
- import { ShowMore, usePaged } from "./paged.js";
7
- import { Button, cx, PersonChip, Time } from "./ui.js";
6
+ import { Pager, pageOf, RECORD_PAGE_SIZE } from "./paged.js";
7
+ import { Badge, Button, cx, PersonChip, Time } from "./ui.js";
8
+ /** Who asked, and when: the person, through their agent when a run asked. */
9
+ function Asked(props) {
10
+ const words = useWords();
11
+ const { decision } = props;
12
+ return (_jsxs(_Fragment, { children: [_jsx(PersonChip, { person: decision.raisedBy }), " ", decision.run === null
13
+ ? words.decisions.asked
14
+ : words.decisions.askedThrough(agentLabel(decision.run.agent)), " ", _jsx(Time, { iso: decision.createdAt, precision: props.day === true ? "day" : "minute" })] }));
15
+ }
16
+ /** What was chosen: the option's label, marked when it is the person's own words. */
17
+ function Chosen(props) {
18
+ const words = useWords();
19
+ const { decision } = props;
20
+ const chosen = decision.options.find((option) => option.id === decision.answer?.option);
21
+ return (_jsxs(_Fragment, { children: [_jsx("span", { children: chosen?.label ?? decision.answer?.option ?? "" }), chosen?.own === true && _jsx(Badge, { children: words.decisions.ownAnswer })] }));
22
+ }
23
+ /**
24
+ * The way to answer: one of the options, or a line of one's own, which is chosen by writing
25
+ * on it; and a word about either.
26
+ */
27
+ function AnswerForm(props) {
28
+ const words = useWords();
29
+ const { decision } = props;
30
+ const [chosen, setChosen] = useState(undefined);
31
+ const [own, setOwn] = useState(false);
32
+ const [ownText, setOwnText] = useState("");
33
+ const [note, setNote] = useState("");
34
+ const chooseOwn = () => {
35
+ setOwn(true);
36
+ setChosen(undefined);
37
+ };
38
+ const answer = own
39
+ ? ownText.trim().length > 0
40
+ ? { own: ownText.trim() }
41
+ : undefined
42
+ : chosen === undefined
43
+ ? undefined
44
+ : { option: chosen };
45
+ const name = `decision-${decision.id}`;
46
+ return (_jsxs("form", { className: "sc-answer-form", onSubmit: (event) => {
47
+ event.preventDefault();
48
+ if (answer !== undefined) {
49
+ props.onAnswer(decision, {
50
+ ...answer,
51
+ ...(note.trim() === "" ? {} : { note: note.trim() }),
52
+ });
53
+ }
54
+ }, children: [_jsxs("div", { className: "sc-options-list", role: "radiogroup", "aria-label": words.decisions.options, children: [decision.options.map((option) => (_jsxs("label", { className: cx("sc-option", chosen === option.id && "sc-option-chosen"), children: [_jsx("input", { type: "radio", name: name, value: option.id, checked: chosen === option.id, onChange: () => {
55
+ setChosen(option.id);
56
+ setOwn(false);
57
+ } }), _jsx("span", { children: option.label })] }, option.id))), _jsxs("label", { className: cx("sc-option", "sc-option-own", own && "sc-option-chosen"), children: [_jsx("input", { type: "radio", name: name, value: "own", checked: own, onChange: chooseOwn }), _jsx("span", { children: words.decisions.own }), _jsx("input", { className: "sc-input", "aria-label": words.decisions.own, placeholder: words.decisions.ownPlaceholder, maxLength: MAX_OPTION_LABEL_LENGTH, value: ownText, onFocus: chooseOwn, onChange: (event) => {
58
+ setOwnText(event.target.value);
59
+ chooseOwn();
60
+ } })] })] }), _jsx("input", { className: "sc-input", placeholder: words.decisions.notePlaceholder, maxLength: MAX_NOTE_LENGTH, value: note, onChange: (event) => setNote(event.target.value) }), _jsx("div", { className: "sc-form-actions", children: _jsx(Button, { type: "submit", variant: "primary", size: "sm", disabled: answer === undefined || props.busy === true, children: words.decisions.answer }) })] }));
61
+ }
8
62
  /** What followed the decision: shown, and written or changed by whoever may. */
9
63
  function Outcome(props) {
10
64
  const words = useWords();
@@ -28,41 +82,32 @@ function Outcome(props) {
28
82
  export function DecisionCard(props) {
29
83
  const words = useWords();
30
84
  const { decision, task } = props;
31
- const [chosen, setChosen] = useState(undefined);
32
- const [note, setNote] = useState("");
33
85
  const answered = decision.answer !== null;
34
- const chosenLabel = (id) => decision.options.find((option) => option.id === id)?.label ?? id;
35
- return (_jsxs("article", { id: decision.id, className: cx("sc-decision", answered && "sc-decision-answered"), children: [_jsxs("header", { className: "sc-decision-header", children: [_jsx("h3", { className: "sc-decision-question", children: props.href === undefined ? (decision.question) : (_jsx("a", { href: props.href, children: decision.question })) }), _jsxs("p", { className: "sc-decision-meta", children: [_jsx(PersonChip, { person: decision.raisedBy }), " ", decision.run === null
36
- ? words.decisions.asked
37
- : words.decisions.askedThrough(agentLabel(decision.run.agent)), " ", _jsx(Time, { iso: decision.createdAt }), task !== undefined && (_jsxs(_Fragment, { children: [" ", words.decisions.about, " ", props.taskHref === undefined ? (_jsxs("span", { children: ["#", task.number, " ", task.title] })) : (_jsxs("a", { href: props.taskHref(task), children: ["#", task.number, " ", task.title] }))] }))] })] }), decision.body.length > 0 && (_jsxs("section", { className: "sc-decision-section", "aria-label": words.decisions.context, children: [_jsx("h4", { className: "sc-decision-label", children: words.decisions.context }), _jsx(Markdown, { source: decision.body, docHref: props.docHref })] })), decision.answer !== null ? (_jsxs("div", { className: "sc-answer", children: [_jsx("p", { className: "sc-answer-option", children: chosenLabel(decision.answer.option) }), decision.answer.note !== null && (_jsx("div", { className: "sc-answer-note", children: _jsx(Markdown, { source: decision.answer.note, docHref: props.docHref }) })), _jsxs("p", { className: "sc-decision-meta", children: [_jsx(PersonChip, { person: decision.answer.by }), " ", words.decisions.answeredBy, " ", _jsx(Time, { iso: decision.answer.at })] })] })) : props.onAnswer === undefined ? (_jsx("p", { className: "sc-decision-waiting", children: words.decisions.waitingForPerson })) : (_jsxs("form", { className: "sc-answer-form", onSubmit: (event) => {
38
- event.preventDefault();
39
- if (chosen !== undefined) {
40
- props.onAnswer?.(decision, {
41
- option: chosen,
42
- ...(note.trim() === "" ? {} : { note: note.trim() }),
43
- });
44
- }
45
- }, children: [_jsx("div", { className: "sc-options-list", role: "radiogroup", "aria-label": words.decisions.options, children: decision.options.map((option) => (_jsxs("label", { className: cx("sc-option", chosen === option.id && "sc-option-chosen"), children: [_jsx("input", { type: "radio", name: `decision-${decision.id}`, value: option.id, checked: chosen === option.id, onChange: () => setChosen(option.id) }), _jsx("span", { children: option.label })] }, option.id))) }), _jsx("input", { className: "sc-input", placeholder: words.decisions.notePlaceholder, maxLength: MAX_NOTE_LENGTH, value: note, onChange: (event) => setNote(event.target.value) }), _jsx("div", { className: "sc-form-actions", children: _jsx(Button, { type: "submit", variant: "primary", size: "sm", disabled: chosen === undefined || props.busy === true, children: words.decisions.answer }) })] })), answered && (_jsx(Outcome, { decision: decision, docHref: props.docHref, onUpdate: props.onUpdate, busy: props.busy }))] }));
86
+ return (_jsxs("article", { id: decision.id, className: cx("sc-decision", answered && "sc-decision-answered"), children: [_jsxs("header", { className: "sc-decision-header", children: [_jsx("h3", { className: "sc-decision-question", children: props.href === undefined ? (decision.question) : (_jsx("a", { href: props.href, children: decision.question })) }), _jsxs("p", { className: "sc-decision-meta", children: [_jsx(Asked, { decision: decision }), task !== undefined && (_jsxs(_Fragment, { children: [" ", words.decisions.about, " ", props.taskHref === undefined ? (_jsxs("span", { children: ["#", task.number, " ", task.title] })) : (_jsxs("a", { href: props.taskHref(task), children: ["#", task.number, " ", task.title] }))] }))] })] }), decision.body.length > 0 && (_jsxs("section", { className: "sc-decision-section", "aria-label": words.decisions.context, children: [_jsx("h4", { className: "sc-decision-label", children: words.decisions.context }), _jsx(Markdown, { source: decision.body, docHref: props.docHref })] })), decision.answer !== null ? (_jsxs("div", { className: "sc-answer", children: [_jsx("p", { className: "sc-answer-option", children: _jsx(Chosen, { decision: decision }) }), decision.answer.note !== null && (_jsx("div", { className: "sc-answer-note", children: _jsx(Markdown, { source: decision.answer.note, docHref: props.docHref }) })), _jsxs("p", { className: "sc-decision-meta", children: [_jsx(PersonChip, { person: decision.answer.by }), " ", words.decisions.answeredBy, " ", _jsx(Time, { iso: decision.answer.at })] })] })) : props.onAnswer === undefined ? (_jsx("p", { className: "sc-decision-waiting", children: words.decisions.waitingForPerson })) : (_jsx(AnswerForm, { decision: decision, onAnswer: props.onAnswer, busy: props.busy })), answered && (_jsx(Outcome, { decision: decision, docHref: props.docHref, onUpdate: props.onUpdate, busy: props.busy }))] }));
87
+ }
88
+ /** One row of the record: what was asked, by whom and when; what was answered, with the word given, by whom and when. */
89
+ function RecordRow(props) {
90
+ const words = useWords();
91
+ const { decision, task } = props;
92
+ const { answer } = decision;
93
+ return (_jsxs("li", { className: "sc-decision-record-row", children: [_jsxs("div", { className: "sc-decision-record-asked", children: [_jsxs("p", { className: "sc-decision-record-question", children: [props.href === undefined ? (decision.question) : (_jsx("a", { href: props.href, children: decision.question })), task !== undefined &&
94
+ (props.taskHref === undefined ? (_jsxs("span", { className: "sc-card-number", children: ["#", task.number] })) : (_jsxs("a", { className: "sc-card-number", href: props.taskHref(task), children: ["#", task.number] })))] }), _jsx("p", { className: "sc-decision-record-meta", children: _jsx(Asked, { decision: decision, day: true }) })] }), answer !== null && (_jsxs("div", { className: "sc-decision-record-answer", children: [_jsx("p", { className: "sc-decision-record-chosen", children: _jsx(Chosen, { decision: decision }) }), answer.note !== null && (_jsx("div", { className: "sc-decision-record-note", children: _jsx(Markdown, { source: answer.note, docHref: props.docHref }) })), _jsxs("p", { className: "sc-decision-record-meta", children: [_jsx(PersonChip, { person: answer.by }), " ", words.decisions.answeredBy, " ", _jsx(Time, { iso: answer.at, precision: "day" })] })] }))] }));
46
95
  }
47
- /** The record: one row per decision answered, what was asked, what was chosen, by whom, when. */
96
+ /**
97
+ * The record: one row per decision answered, what was asked and by whom, what was chosen with
98
+ * the word given and by whom; twenty to a page, the page named by the address or turned here.
99
+ */
48
100
  export function DecisionLog(props) {
49
101
  const words = useWords();
50
- const { shown, rest, more } = usePaged(props.decisions);
51
- return (_jsxs(_Fragment, { children: [_jsx("ol", { className: "sc-decision-log", "aria-label": words.decisions.record, children: shown.map((decision) => {
52
- const task = decision.taskId === null ? undefined : props.tasks?.get(decision.taskId);
53
- const href = props.decisionHref?.(decision);
54
- const chosen = decision.options.find((option) => option.id === decision.answer?.option)?.label ??
55
- decision.answer?.option ??
56
- "";
57
- return (_jsxs("li", { className: "sc-decision-row", children: [_jsx("span", { className: "sc-decision-row-question", children: href === undefined ? decision.question : _jsx("a", { href: href, children: decision.question }) }), _jsx("span", { className: "sc-decision-row-answer", children: chosen }), _jsxs("span", { className: "sc-decision-row-meta", children: [decision.answer !== null && (_jsxs(_Fragment, { children: [_jsx(PersonChip, { person: decision.answer.by }), " ", _jsx(Time, { iso: decision.answer.at })] })), task !== undefined &&
58
- (props.taskHref === undefined ? (_jsxs("span", { className: "sc-card-number", children: ["#", task.number] })) : (_jsxs("a", { className: "sc-card-number", href: props.taskHref(task), children: ["#", task.number] })))] })] }, decision.id));
59
- }) }), _jsx(ShowMore, { rest: rest, onMore: more })] }));
102
+ const [turned, setTurned] = useState(1);
103
+ const { shown, page, pages } = pageOf(props.decisions, props.pageHref === undefined ? turned : props.page, RECORD_PAGE_SIZE);
104
+ return (_jsxs(_Fragment, { children: [_jsx("ol", { className: "sc-decision-record", "aria-label": words.decisions.record, children: shown.map((decision) => (_jsx(RecordRow, { decision: decision, task: decision.taskId === null ? undefined : props.tasks?.get(decision.taskId), taskHref: props.taskHref, href: props.decisionHref?.(decision), docHref: props.docHref }, decision.id))) }), _jsx(Pager, { page: page, pages: pages, total: props.decisions.length, pageSize: RECORD_PAGE_SIZE, pageHref: props.pageHref, onPage: setTurned })] }));
60
105
  }
61
106
  export function DecisionList(props) {
62
107
  const words = useWords();
63
108
  const waiting = props.decisions.filter((decision) => decision.answer === null);
64
109
  const answered = props.decisions.filter((decision) => decision.answer !== null);
65
110
  const card = (decision) => (_jsx(DecisionCard, { decision: decision, task: decision.taskId === null ? undefined : props.tasks.get(decision.taskId), taskHref: props.taskHref, docHref: props.docHref, href: props.decisionHref?.(decision), onAnswer: props.onAnswer, onUpdate: props.onUpdate, busy: props.busy }, decision.id));
66
- return (_jsxs("div", { className: "sc-decisions", children: [_jsxs("section", { "aria-label": words.decisions.waiting, children: [_jsxs("h2", { className: "sc-section-title", children: [words.decisions.waiting, " ", _jsx("span", { className: "sc-column-count", children: waiting.length })] }), waiting.length === 0 ? (props.empty ?? null) : waiting.map(card)] }), answered.length > 0 && (_jsxs("section", { "aria-label": words.decisions.answered, children: [_jsxs("h2", { className: "sc-section-title", children: [words.decisions.record, " ", _jsx("span", { className: "sc-column-count", children: answered.length })] }), _jsx(DecisionLog, { decisions: answered, tasks: props.tasks, taskHref: props.taskHref, decisionHref: props.decisionHref })] }))] }));
111
+ return (_jsxs("div", { className: "sc-decisions", children: [_jsxs("section", { "aria-label": words.decisions.waiting, children: [_jsxs("h2", { className: "sc-section-title", children: [words.decisions.waiting, " ", _jsx("span", { className: "sc-column-count", children: waiting.length })] }), waiting.length === 0 ? (props.empty ?? null) : waiting.map(card)] }), answered.length > 0 && (_jsxs("section", { "aria-label": words.decisions.answered, children: [_jsxs("h2", { className: "sc-section-title", children: [words.decisions.record, " ", _jsx("span", { className: "sc-column-count", children: answered.length })] }), _jsx(DecisionLog, { decisions: answered, tasks: props.tasks, taskHref: props.taskHref, decisionHref: props.decisionHref, docHref: props.docHref, page: props.page, pageHref: props.pageHref })] }))] }));
67
112
  }
68
113
  //# sourceMappingURL=decision-list.js.map