pm-ts-starter 2026.6.3 → 2026.6.7
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/CHANGELOG.md +17 -0
- package/README.md +42 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +101 -27
- package/dist/index.js.map +1 -1
- package/manifest.json +2 -2
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026.6.7 - 2026-06-07
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Align TypeScript starter version and SDK smoke coverage ([pm-ts-starter-m5qd](https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm/features/pm-ts-starter-m5qd.toon))
|
|
8
|
+
|
|
9
|
+
### Other
|
|
10
|
+
|
|
11
|
+
- Harden release readiness checks ([pm-ts-starter-5op0](https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm/chores/pm-ts-starter-5op0.toon))
|
|
12
|
+
- Align package dependencies to pm CLI/SDK 2026.6.6 ([pm-ts-starter-6abl](https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm/chores/pm-ts-starter-6abl.toon))
|
|
13
|
+
|
|
14
|
+
## 2026.06.04 - 2026-06-04
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- Fix version mismatch + complete 9-capability demo, test mock, README ([pm-ts-starter-ol9y](https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm/chores/pm-ts-starter-ol9y.toon))
|
|
19
|
+
|
|
3
20
|
## 2026.06.02 - 2026-06-02
|
|
4
21
|
|
|
5
22
|
### Fixed
|
package/README.md
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
# pm-ts-starter
|
|
2
2
|
|
|
3
|
-
TypeScript reference extension for [pm-cli](https://github.com/unbraind/pm-cli) covering all
|
|
3
|
+
TypeScript reference extension for [pm-cli](https://github.com/unbraind/pm-cli) covering **all 9 SDK capability types** in one fully-typed `index.ts`.
|
|
4
|
+
|
|
5
|
+
Each capability is a small, SAFE, inert demo with teaching comments. Copy the
|
|
6
|
+
ones you need into your own extension and delete the rest.
|
|
4
7
|
|
|
5
8
|
---
|
|
6
9
|
|
|
@@ -12,16 +15,20 @@ pm install github.com/unbraind/pm-ts-starter --global
|
|
|
12
15
|
|
|
13
16
|
## Capabilities Demonstrated
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
|
19
|
-
|
|
20
|
-
| **
|
|
21
|
-
| **
|
|
22
|
-
| **
|
|
23
|
-
| **
|
|
24
|
-
| **
|
|
18
|
+
Every capability declared in `manifest.json` is demonstrated in `index.ts`. Each
|
|
19
|
+
maps to one or more `register*`/`hooks.*` calls on the typed `ExtensionApi`.
|
|
20
|
+
|
|
21
|
+
| # | Capability | `ExtensionApi` call(s) | What the demo registers |
|
|
22
|
+
|---|---|---|---|
|
|
23
|
+
| 1 | **commands** | `registerCommand`, `registerFlags` | `pm hello`, `pm ts-starter info`; plus an inert `--ts-starter-tag` flag added to native `list` |
|
|
24
|
+
| 2 | **renderers** | `registerRenderer` | `json` renderer override that reshapes only the `ts_starter`-tagged payload, passing everything else through |
|
|
25
|
+
| 3 | **hooks** | `hooks.beforeCommand`, `hooks.afterCommand`, `hooks.onWrite`, `hooks.onRead`, `hooks.onIndex` | All five lifecycle hooks (observe-only; opt-in logging via `PM_TS_STARTER_VERBOSE`) |
|
|
26
|
+
| 4 | **schema** | `registerItemFields`, `registerItemTypes`, `registerMigration` | Optional field `ts_starter_ref`, a `Spike` item type, and a no-op migration `ts-starter-noop` |
|
|
27
|
+
| 5 | **importers** | `registerImporter`, `registerExporter` | `pm ts-starter-demo import` / `pm ts-starter-demo export` (both inert) |
|
|
28
|
+
| 6 | **search** | `registerSearchProvider`, `registerVectorStoreAdapter` | Search provider `ts-starter-prefix` (ID-prefix match) and in-memory vector store adapter `ts-starter-memory` |
|
|
29
|
+
| 7 | **parser** | `registerParser` | Pass-through parser override for the native `list` command |
|
|
30
|
+
| 8 | **preflight** | `registerPreflight` | Pass-through preflight decision override (no behavior change) |
|
|
31
|
+
| 9 | **services** | `registerService` | Pass-through override of the `output_format` core service |
|
|
25
32
|
|
|
26
33
|
## Commands
|
|
27
34
|
|
|
@@ -36,13 +43,36 @@ pm hello --name World --loud
|
|
|
36
43
|
pm ts-starter info
|
|
37
44
|
```
|
|
38
45
|
|
|
46
|
+
### Importer / exporter command paths
|
|
47
|
+
|
|
48
|
+
`registerImporter("ts-starter-demo")` and `registerExporter("ts-starter-demo")`
|
|
49
|
+
auto-create:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
pm ts-starter-demo import
|
|
53
|
+
pm ts-starter-demo export
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## The `defineExtension` helper + zero-runtime-coupling pattern
|
|
57
|
+
|
|
58
|
+
`defineExtension` is the SDK's **typed identity helper** — it returns its argument
|
|
59
|
+
unchanged but constrains it to the `ExtensionModule` shape so TypeScript can
|
|
60
|
+
type-check `activate(api)` and the metadata fields against the real SDK.
|
|
61
|
+
|
|
62
|
+
It is imported as a **type only** (`import type`). A standalone-installed
|
|
63
|
+
extension loads only its own `dist/` at runtime, so `@unbrained/pm-cli` is not
|
|
64
|
+
resolvable as a runtime value; importing the real function would crash at
|
|
65
|
+
activation. We provide a trivial identity implementation and rely on the type
|
|
66
|
+
import for full compile-time checking with **zero runtime coupling** to the CLI
|
|
67
|
+
package. The real CLI supplies the live `api` object when it calls `activate`.
|
|
68
|
+
|
|
39
69
|
## Using as a Template
|
|
40
70
|
|
|
41
71
|
1. Clone this repo
|
|
42
72
|
2. Edit `index.ts` — remove capabilities you don't need
|
|
43
73
|
3. Update `manifest.json` name and capabilities
|
|
44
74
|
4. `npm install && npm run build`
|
|
45
|
-
5. `pm install ./path/to/dir`
|
|
75
|
+
5. `pm install ./path/to/dir --project`
|
|
46
76
|
|
|
47
77
|
## License
|
|
48
78
|
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;kBA+TgB,GAAG;;AAJnB,wBAsBG"}
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Demonstrates all 9 SDK capability types in one file (commands, schema,
|
|
3
3
|
// hooks, importers/exporters, renderers, search, parser, preflight, services).
|
|
4
4
|
const defineExtension = ((extension) => extension);
|
|
5
|
+
const VERSION = "2026.6.4";
|
|
5
6
|
// Opt-in verbose logging so the reference extension is silent by default.
|
|
6
7
|
const VERBOSE = !!process.env.PM_TS_STARTER_VERBOSE;
|
|
7
8
|
// ---------------------------------------------------------------------------
|
|
@@ -34,7 +35,7 @@ function registerDemoCommands(api) {
|
|
|
34
35
|
async run() {
|
|
35
36
|
const info = {
|
|
36
37
|
name: "pm-ts-starter",
|
|
37
|
-
version:
|
|
38
|
+
version: VERSION,
|
|
38
39
|
capabilities: [
|
|
39
40
|
"commands", "schema", "hooks", "importers",
|
|
40
41
|
"renderers", "search", "parser", "preflight", "services",
|
|
@@ -77,21 +78,38 @@ function registerSchema(api) {
|
|
|
77
78
|
// 3. HOOKS — react to lifecycle events
|
|
78
79
|
// ---------------------------------------------------------------------------
|
|
79
80
|
function registerHooks(api) {
|
|
80
|
-
// The real ExtensionApi exposes lifecycle hooks under `api.hooks.*`
|
|
81
|
+
// The real ExtensionApi exposes ALL FIVE lifecycle hooks under `api.hooks.*`
|
|
81
82
|
// (beforeCommand/afterCommand/onWrite/onRead/onIndex) — there is no
|
|
82
|
-
// `registerHook`.
|
|
83
|
-
//
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
83
|
+
// `registerHook`. All hooks here are observe-only and log only when
|
|
84
|
+
// PM_TS_STARTER_VERBOSE is set, so installing this reference extension never
|
|
85
|
+
// adds noise to an unrelated workspace.
|
|
86
|
+
if (!api.hooks)
|
|
87
|
+
return;
|
|
88
|
+
// beforeCommand — runs before any command handler.
|
|
89
|
+
api.hooks.beforeCommand((ctx) => {
|
|
90
|
+
if (VERBOSE)
|
|
91
|
+
console.error(`[ts-starter] beforeCommand: ${ctx.command}`);
|
|
92
|
+
});
|
|
93
|
+
// afterCommand — runs after a command, with { command, ok, error, ... }.
|
|
94
|
+
api.hooks.afterCommand((ctx) => {
|
|
95
|
+
if (VERBOSE)
|
|
96
|
+
console.error(`[ts-starter] afterCommand: ${ctx.command} (ok=${ctx.ok})`);
|
|
97
|
+
});
|
|
98
|
+
// onWrite — fires when pm writes an item file to disk.
|
|
99
|
+
api.hooks.onWrite((ctx) => {
|
|
100
|
+
if (VERBOSE)
|
|
101
|
+
console.error(`[ts-starter] onWrite: ${ctx?.op ?? ""} ${ctx?.path ?? ""}`.trimEnd());
|
|
102
|
+
});
|
|
103
|
+
// onRead — fires when pm reads an item file.
|
|
104
|
+
api.hooks.onRead((ctx) => {
|
|
105
|
+
if (VERBOSE)
|
|
106
|
+
console.error(`[ts-starter] onRead: ${ctx?.path ?? "(item)"}`);
|
|
107
|
+
});
|
|
108
|
+
// onIndex — fires when pm (re)indexes items for search.
|
|
109
|
+
api.hooks.onIndex((ctx) => {
|
|
110
|
+
if (VERBOSE)
|
|
111
|
+
console.error(`[ts-starter] onIndex: ${(ctx && (ctx.count ?? ctx.path)) ?? "(index event)"}`);
|
|
112
|
+
});
|
|
95
113
|
}
|
|
96
114
|
// ---------------------------------------------------------------------------
|
|
97
115
|
// 4. IMPORTERS — programmatic data import
|
|
@@ -157,9 +175,42 @@ function registerSearch(api) {
|
|
|
157
175
|
},
|
|
158
176
|
});
|
|
159
177
|
}
|
|
178
|
+
// registerVectorStoreAdapter — the second half of the "search" capability.
|
|
179
|
+
// This is an in-memory, deterministic adapter so authors can see the
|
|
180
|
+
// vector-store contract (upsert + query) without an external service. It
|
|
181
|
+
// produces a tiny hashed pseudo-embedding (NOT a real model) and keeps vectors
|
|
182
|
+
// in a Map for the lifetime of the process.
|
|
183
|
+
if (typeof api.registerVectorStoreAdapter === "function") {
|
|
184
|
+
const store = new Map();
|
|
185
|
+
const pseudoEmbed = (text, dims = 8) => {
|
|
186
|
+
const vec = new Array(dims).fill(0);
|
|
187
|
+
for (let i = 0; i < text.length; i++)
|
|
188
|
+
vec[i % dims] += text.charCodeAt(i) % 17;
|
|
189
|
+
return vec;
|
|
190
|
+
};
|
|
191
|
+
api.registerVectorStoreAdapter({
|
|
192
|
+
name: "ts-starter-memory",
|
|
193
|
+
async upsert(ctx) {
|
|
194
|
+
const id = String(ctx?.id ?? "");
|
|
195
|
+
const text = String(ctx?.text ?? ctx?.title ?? "");
|
|
196
|
+
if (id)
|
|
197
|
+
store.set(id, pseudoEmbed(text));
|
|
198
|
+
return { upserted: id ? 1 : 0 };
|
|
199
|
+
},
|
|
200
|
+
async query(ctx) {
|
|
201
|
+
const qVec = pseudoEmbed(String(ctx?.query ?? ""));
|
|
202
|
+
const scored = [...store.entries()].map(([id, v]) => ({
|
|
203
|
+
id,
|
|
204
|
+
score: v.reduce((s, x, i) => s + x * (qVec[i] ?? 0), 0),
|
|
205
|
+
}));
|
|
206
|
+
scored.sort((a, b) => b.score - a.score);
|
|
207
|
+
return { results: scored.slice(0, ctx?.limit ?? 5) };
|
|
208
|
+
},
|
|
209
|
+
});
|
|
210
|
+
}
|
|
160
211
|
}
|
|
161
212
|
// ---------------------------------------------------------------------------
|
|
162
|
-
// 7.
|
|
213
|
+
// 7. PARSER — pre-normalize a command's args/options before its handler runs
|
|
163
214
|
// ---------------------------------------------------------------------------
|
|
164
215
|
function registerParser(api) {
|
|
165
216
|
// A parser override can adjust how a specific command's args/options are
|
|
@@ -171,6 +222,9 @@ function registerParser(api) {
|
|
|
171
222
|
});
|
|
172
223
|
}
|
|
173
224
|
}
|
|
225
|
+
// ---------------------------------------------------------------------------
|
|
226
|
+
// 8. PREFLIGHT — adjust gate decisions the CLI makes before a command runs
|
|
227
|
+
// ---------------------------------------------------------------------------
|
|
174
228
|
function registerPreflight(api) {
|
|
175
229
|
if (typeof api.registerPreflight === "function") {
|
|
176
230
|
// Preflight override — can modify preflight decisions before a command runs
|
|
@@ -188,7 +242,7 @@ function registerPreflight(api) {
|
|
|
188
242
|
}
|
|
189
243
|
}
|
|
190
244
|
// ---------------------------------------------------------------------------
|
|
191
|
-
//
|
|
245
|
+
// 9. SERVICES — override a named core service for the whole CLI
|
|
192
246
|
// ---------------------------------------------------------------------------
|
|
193
247
|
function registerServices(api) {
|
|
194
248
|
if (typeof api.registerService === "function") {
|
|
@@ -205,23 +259,43 @@ function registerServices(api) {
|
|
|
205
259
|
// ---------------------------------------------------------------------------
|
|
206
260
|
// Extension entry point
|
|
207
261
|
// ---------------------------------------------------------------------------
|
|
262
|
+
// ---------------------------------------------------------------------------
|
|
263
|
+
// FLAGS — augment an EXISTING native command (part of the "commands" capability)
|
|
264
|
+
// ---------------------------------------------------------------------------
|
|
265
|
+
function registerExtraFlags(api) {
|
|
266
|
+
// registerFlags adds extra flags to an existing native command (here, `list`).
|
|
267
|
+
// The flag is observe-only: native `list` ignores unknown options, so this
|
|
268
|
+
// exists purely to show the wiring. registerFlags is covered by the
|
|
269
|
+
// "commands" capability and needs no separate manifest entry.
|
|
270
|
+
if (typeof api.registerFlags === "function") {
|
|
271
|
+
api.registerFlags("list", [
|
|
272
|
+
{
|
|
273
|
+
long: "--ts-starter-tag",
|
|
274
|
+
value_name: "tag",
|
|
275
|
+
description: "DEMO flag added by pm-ts-starter (inert; illustrates registerFlags).",
|
|
276
|
+
type: "string",
|
|
277
|
+
},
|
|
278
|
+
]);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
208
281
|
export default defineExtension({
|
|
209
282
|
name: "pm-ts-starter",
|
|
210
|
-
version:
|
|
283
|
+
version: VERSION,
|
|
211
284
|
activate(api) {
|
|
212
285
|
// Incidental logging is opt-in (PM_TS_STARTER_VERBOSE) so installing this
|
|
213
286
|
// reference extension never pollutes other commands' stderr.
|
|
214
287
|
if (VERBOSE)
|
|
215
288
|
console.error("[pm-ts-starter] Activating…");
|
|
216
|
-
registerDemoCommands(api);
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
289
|
+
registerDemoCommands(api); // registerCommand (with typed flags)
|
|
290
|
+
registerExtraFlags(api); // registerFlags (augments native `list`)
|
|
291
|
+
registerSchema(api); // registerItemFields/registerItemTypes/registerMigration
|
|
292
|
+
registerHooks(api); // hooks.before/after/onWrite/onRead/onIndex
|
|
293
|
+
registerImporters(api); // registerImporter/registerExporter
|
|
294
|
+
registerRenderers(api); // registerRenderer
|
|
295
|
+
registerSearch(api); // registerSearchProvider/registerVectorStoreAdapter
|
|
296
|
+
registerParser(api); // registerParser
|
|
297
|
+
registerPreflight(api); // registerPreflight
|
|
298
|
+
registerServices(api); // registerService
|
|
225
299
|
if (VERBOSE)
|
|
226
300
|
console.error("[pm-ts-starter] All capabilities registered.");
|
|
227
301
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,yEAAyE;AACzE,+EAA+E;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pm-ts-starter",
|
|
3
|
-
"version": "2026.6.
|
|
4
|
-
"description": "TypeScript reference extension covering all
|
|
3
|
+
"version": "2026.6.7",
|
|
4
|
+
"description": "TypeScript reference extension covering all 9 SDK capability types: commands, renderers, hooks, schema, importers, search, parser, preflight, services. Demonstrates defineExtension plus registerCommand/registerFlags, registerItemFields/registerItemTypes/registerMigration, the five api.hooks.* lifecycle hooks, registerImporter/registerExporter, registerRenderer, registerSearchProvider/registerVectorStoreAdapter, registerParser, registerPreflight, and registerService - all fully typed.",
|
|
5
5
|
"author": "@unbraind",
|
|
6
6
|
"entry": "./dist/index.js",
|
|
7
7
|
"priority": 90,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pm-ts-starter",
|
|
3
|
-
"version": "2026.6.
|
|
3
|
+
"version": "2026.6.7",
|
|
4
4
|
"description": "TypeScript reference extension for pm-cli covering all capability types",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -31,15 +31,15 @@
|
|
|
31
31
|
"changelog": "pm-changelog --pm-root .agents/pm --mode prepend --output CHANGELOG.md --release-version-from-package --since-previous-tag --until-release-tag --item-url-base https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm",
|
|
32
32
|
"changelog:full": "pm-changelog --pm-root .agents/pm --mode replace --output CHANGELOG.md --all-release-tags --release-version-from-package --item-url-base https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm",
|
|
33
33
|
"changelog:check": "pm-changelog --pm-root .agents/pm --mode replace --output CHANGELOG.md --all-release-tags --release-version-from-package --item-url-base https://github.com/unbraind/pm-ts-starter/blob/main/.agents/pm --check",
|
|
34
|
-
"release:check": "npm run typecheck && npm run build && npm run audit:prod && npm run pack:dry-run && npm run changelog:check"
|
|
34
|
+
"release:check": "npm run typecheck && npm run build && npm test && npm run audit:prod && npm run pack:dry-run && npm run changelog:check"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"@unbrained/pm-cli": ">=2026.5.31"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@types/node": "^25.9.
|
|
41
|
-
"@unbrained/pm-cli": "^2026.
|
|
42
|
-
"pm-changelog": "^2026.6.
|
|
40
|
+
"@types/node": "^25.9.2",
|
|
41
|
+
"@unbrained/pm-cli": "^2026.6.6",
|
|
42
|
+
"pm-changelog": "^2026.6.6",
|
|
43
43
|
"typescript": "^6.0.3"
|
|
44
44
|
},
|
|
45
45
|
"keywords": [
|