@markbrutx/promptbook-cli 0.4.1 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/args.d.ts +7 -0
- package/dist/src/args.d.ts.map +1 -1
- package/dist/src/args.js +2 -0
- package/dist/src/args.js.map +1 -1
- package/dist/src/commands/bundle.d.ts +4 -0
- package/dist/src/commands/bundle.d.ts.map +1 -1
- package/dist/src/commands/bundle.js +7 -1
- package/dist/src/commands/bundle.js.map +1 -1
- package/package.json +4 -4
- package/src/args.ts +9 -0
- package/src/commands/bundle.ts +7 -1
package/dist/src/args.d.ts
CHANGED
|
@@ -13,6 +13,13 @@ export interface ParsedArgs {
|
|
|
13
13
|
out?: string;
|
|
14
14
|
/** bundle: emit a plain module without the type-only import/annotation. */
|
|
15
15
|
plain: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* bundle: module specifier for the `import type { PromptBook }` line in typed
|
|
18
|
+
* mode. Point it at a runtime-resolvable specifier (e.g.
|
|
19
|
+
* `npm:@markbrutx/promptbook-core@1.2.3`) so a Deno consumer keeps the typed
|
|
20
|
+
* annotation instead of falling back to `--plain`.
|
|
21
|
+
*/
|
|
22
|
+
importSpecifier?: string;
|
|
16
23
|
/** Repeated `--ctx key=value` pairs, parsed later by config. */
|
|
17
24
|
ctx: string[];
|
|
18
25
|
contextFile?: string;
|
package/dist/src/args.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,WAAW,UAAU;IACzB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,GAAG,EAAE,OAAO,CAAC;IACb,kGAAkG;IAClG,KAAK,EAAE,OAAO,CAAC;IACf,6EAA6E;IAC7E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,MAAM,EAAE,OAAO,CAAC;IAChB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,IAAI,EAAE,OAAO,CAAC;IACd,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,MAAM,EAAE,OAAO,CAAC;CACjB;AAgCD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,WAAW,UAAU;IACzB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,KAAK,EAAE,OAAO,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,GAAG,EAAE,OAAO,CAAC;IACb,kGAAkG;IAClG,KAAK,EAAE,OAAO,CAAC;IACf,6EAA6E;IAC7E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,MAAM,EAAE,OAAO,CAAC;IAChB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,IAAI,EAAE,OAAO,CAAC;IACd,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,MAAM,EAAE,OAAO,CAAC;CACjB;AAgCD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA8EvD"}
|
package/dist/src/args.js
CHANGED
|
@@ -34,6 +34,7 @@ export function parseCliArgs(argv) {
|
|
|
34
34
|
explain: { type: "boolean" },
|
|
35
35
|
out: { type: "string", short: "o" },
|
|
36
36
|
plain: { type: "boolean" },
|
|
37
|
+
"import-specifier": { type: "string" },
|
|
37
38
|
ctx: { type: "string", multiple: true },
|
|
38
39
|
"context-file": { type: "string" },
|
|
39
40
|
fragments: { type: "boolean" },
|
|
@@ -82,6 +83,7 @@ export function parseCliArgs(argv) {
|
|
|
82
83
|
explain: values.explain ?? false,
|
|
83
84
|
out: values.out,
|
|
84
85
|
plain: values.plain ?? false,
|
|
86
|
+
importSpecifier: values["import-specifier"],
|
|
85
87
|
ctx: values.ctx ?? [],
|
|
86
88
|
contextFile: values["context-file"],
|
|
87
89
|
fragments: values.fragments ?? false,
|
package/dist/src/args.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,10 @@ export declare function bundleOne(io: IO, args: ParsedArgs, promptsDir: string,
|
|
|
17
17
|
* Flags:
|
|
18
18
|
* - `--json` emits the structured dump instead of the TypeScript module.
|
|
19
19
|
* - `--plain` drops the type-only import (e.g. for Deno consumers).
|
|
20
|
+
* - `--import-specifier <spec>` sets the module the typed `import type
|
|
21
|
+
* { PromptBook }` line points at (default `@markbrutx/promptbook-core`). Use a
|
|
22
|
+
* runtime-resolvable specifier such as `npm:@markbrutx/promptbook-core@1.2.3`
|
|
23
|
+
* to keep the typed annotation in a Deno consumer instead of `--plain`.
|
|
20
24
|
* - `--exclude-code-prompts` serializes code-prompts as an empty map so the
|
|
21
25
|
* runtime bundle stays lean while `code-prompts/` keeps living on disk as
|
|
22
26
|
* metadata for `ls` / the viewer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAgB,KAAK,EAAE,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAgB,KAAK,EAAE,EAAE,MAAM,UAAU,CAAC;AAuHjD;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAeD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBzE"}
|
|
@@ -55,7 +55,9 @@ function firstDiffLine(actual, expected) {
|
|
|
55
55
|
}
|
|
56
56
|
/** Build the output text for one book (TypeScript module or JSON). */
|
|
57
57
|
function renderOutput(book, args) {
|
|
58
|
-
return args.json
|
|
58
|
+
return args.json
|
|
59
|
+
? serializeBookJson(book)
|
|
60
|
+
: serializeBook(book, { typed: !args.plain, importSpecifier: args.importSpecifier });
|
|
59
61
|
}
|
|
60
62
|
/** Pick the artifact path: explicit `--out`, else `book.generated.ts` next to the prompts folder. */
|
|
61
63
|
function targetPath(io, args, promptsDir) {
|
|
@@ -151,6 +153,10 @@ async function bundleAll(io, args, root) {
|
|
|
151
153
|
* Flags:
|
|
152
154
|
* - `--json` emits the structured dump instead of the TypeScript module.
|
|
153
155
|
* - `--plain` drops the type-only import (e.g. for Deno consumers).
|
|
156
|
+
* - `--import-specifier <spec>` sets the module the typed `import type
|
|
157
|
+
* { PromptBook }` line points at (default `@markbrutx/promptbook-core`). Use a
|
|
158
|
+
* runtime-resolvable specifier such as `npm:@markbrutx/promptbook-core@1.2.3`
|
|
159
|
+
* to keep the typed annotation in a Deno consumer instead of `--plain`.
|
|
154
160
|
* - `--exclude-code-prompts` serializes code-prompts as an empty map so the
|
|
155
161
|
* runtime bundle stays lean while `code-prompts/` keeps living on disk as
|
|
156
162
|
* metadata for `ls` / the viewer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/commands/bundle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/commands/bundle.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@markbrutx/promptbook-cli",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.3",
|
|
4
4
|
"description": "Thin terminal surface over @markbrutx/promptbook-core: resolve and ls for agents and CI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -48,12 +48,12 @@
|
|
|
48
48
|
"check": "biome check ."
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@markbrutx/promptbook-core": "^0.4.
|
|
52
|
-
"@markbrutx/promptbook-openrouter": "^0.4.
|
|
51
|
+
"@markbrutx/promptbook-core": "^0.4.3",
|
|
52
|
+
"@markbrutx/promptbook-openrouter": "^0.4.3",
|
|
53
53
|
"chokidar": "^4.0.3"
|
|
54
54
|
},
|
|
55
55
|
"optionalDependencies": {
|
|
56
|
-
"@markbrutx/promptbook-viewer": "^0.4.
|
|
56
|
+
"@markbrutx/promptbook-viewer": "^0.4.3"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@biomejs/biome": "latest",
|
package/src/args.ts
CHANGED
|
@@ -15,6 +15,13 @@ export interface ParsedArgs {
|
|
|
15
15
|
out?: string;
|
|
16
16
|
/** bundle: emit a plain module without the type-only import/annotation. */
|
|
17
17
|
plain: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* bundle: module specifier for the `import type { PromptBook }` line in typed
|
|
20
|
+
* mode. Point it at a runtime-resolvable specifier (e.g.
|
|
21
|
+
* `npm:@markbrutx/promptbook-core@1.2.3`) so a Deno consumer keeps the typed
|
|
22
|
+
* annotation instead of falling back to `--plain`.
|
|
23
|
+
*/
|
|
24
|
+
importSpecifier?: string;
|
|
18
25
|
/** Repeated `--ctx key=value` pairs, parsed later by config. */
|
|
19
26
|
ctx: string[];
|
|
20
27
|
contextFile?: string;
|
|
@@ -90,6 +97,7 @@ export function parseCliArgs(argv: string[]): ParsedArgs {
|
|
|
90
97
|
explain: { type: "boolean" },
|
|
91
98
|
out: { type: "string", short: "o" },
|
|
92
99
|
plain: { type: "boolean" },
|
|
100
|
+
"import-specifier": { type: "string" },
|
|
93
101
|
ctx: { type: "string", multiple: true },
|
|
94
102
|
"context-file": { type: "string" },
|
|
95
103
|
fragments: { type: "boolean" },
|
|
@@ -138,6 +146,7 @@ export function parseCliArgs(argv: string[]): ParsedArgs {
|
|
|
138
146
|
explain: values.explain ?? false,
|
|
139
147
|
out: values.out,
|
|
140
148
|
plain: values.plain ?? false,
|
|
149
|
+
importSpecifier: values["import-specifier"],
|
|
141
150
|
ctx: values.ctx ?? [],
|
|
142
151
|
contextFile: values["context-file"],
|
|
143
152
|
fragments: values.fragments ?? false,
|
package/src/commands/bundle.ts
CHANGED
|
@@ -67,7 +67,9 @@ function firstDiffLine(actual: string, expected: string): number | null {
|
|
|
67
67
|
|
|
68
68
|
/** Build the output text for one book (TypeScript module or JSON). */
|
|
69
69
|
function renderOutput(book: PromptBook, args: ParsedArgs): string {
|
|
70
|
-
return args.json
|
|
70
|
+
return args.json
|
|
71
|
+
? serializeBookJson(book)
|
|
72
|
+
: serializeBook(book, { typed: !args.plain, importSpecifier: args.importSpecifier });
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
/** Pick the artifact path: explicit `--out`, else `book.generated.ts` next to the prompts folder. */
|
|
@@ -186,6 +188,10 @@ async function bundleAll(io: IO, args: ParsedArgs, root: string): Promise<number
|
|
|
186
188
|
* Flags:
|
|
187
189
|
* - `--json` emits the structured dump instead of the TypeScript module.
|
|
188
190
|
* - `--plain` drops the type-only import (e.g. for Deno consumers).
|
|
191
|
+
* - `--import-specifier <spec>` sets the module the typed `import type
|
|
192
|
+
* { PromptBook }` line points at (default `@markbrutx/promptbook-core`). Use a
|
|
193
|
+
* runtime-resolvable specifier such as `npm:@markbrutx/promptbook-core@1.2.3`
|
|
194
|
+
* to keep the typed annotation in a Deno consumer instead of `--plain`.
|
|
189
195
|
* - `--exclude-code-prompts` serializes code-prompts as an empty map so the
|
|
190
196
|
* runtime bundle stays lean while `code-prompts/` keeps living on disk as
|
|
191
197
|
* metadata for `ls` / the viewer.
|