pm-context 2026.7.7 → 2026.7.10
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 +38 -0
- package/dist/index.d.ts +24 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +236 -84
- package/dist/index.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -22,6 +22,9 @@ pm context-pack --ids pm-1234,pm-5678 --state blocked --format compact
|
|
|
22
22
|
pm context-pack --status in_progress --tag release --format json
|
|
23
23
|
pm context-pack --type Feature --include-closed --limit 20
|
|
24
24
|
pm context-pack --id pm-1234 --neighborhood-depth 2
|
|
25
|
+
pm context-pack --id pm-1234 --compress --format json
|
|
26
|
+
pm context-pack --id pm-1234 --include-deps --section focus --section blockers
|
|
27
|
+
pm context-pack --id pm-1234 --max-items 10
|
|
25
28
|
```
|
|
26
29
|
|
|
27
30
|
The command is read-only. It shells out to the active `pm` binary for
|
|
@@ -45,6 +48,34 @@ compact. They focus on the current work, visible blockers, next actions, recent
|
|
|
45
48
|
activity, linked files/docs, and the exact refresh command another agent should
|
|
46
49
|
run before continuing.
|
|
47
50
|
|
|
51
|
+
### Compress mode
|
|
52
|
+
|
|
53
|
+
`--compress` minimizes output tokens for token-sensitive agent contexts:
|
|
54
|
+
|
|
55
|
+
- JSON output is minified (no indentation)
|
|
56
|
+
- Markdown and agent output have all blank lines removed
|
|
57
|
+
|
|
58
|
+
### Section filtering
|
|
59
|
+
|
|
60
|
+
`--section <section>` selects only specific sections of the rendered output.
|
|
61
|
+
Repeat the flag for multiple sections. Available sections:
|
|
62
|
+
|
|
63
|
+
- Markdown: `summary`, `focus`, `neighborhood`, `neighbors`, `links`, `deps`
|
|
64
|
+
- Agent: `focus`, `blockers`, `next-actions` (alias: `actions`), `recent`
|
|
65
|
+
(alias: `activity`), `links`, `deps`, `refresh`
|
|
66
|
+
|
|
67
|
+
### Dependency info
|
|
68
|
+
|
|
69
|
+
`--include-deps` adds per-item dependency information (`dependsOn` and
|
|
70
|
+
`dependedBy` arrays) to the context pack and handoff output. A `## Dependencies`
|
|
71
|
+
section is rendered in markdown/agent output when present.
|
|
72
|
+
|
|
73
|
+
### Max items
|
|
74
|
+
|
|
75
|
+
`--max-items <n>` caps the total number of items (focus + neighbors) in the
|
|
76
|
+
pack. Focus items take priority; neighbors are trimmed to fit the remaining
|
|
77
|
+
budget.
|
|
78
|
+
|
|
48
79
|
## Command
|
|
49
80
|
|
|
50
81
|
`pm context-pack`
|
|
@@ -72,6 +103,13 @@ Options:
|
|
|
72
103
|
default and produces byte-identical packs to prior versions. Neighbors discovered
|
|
73
104
|
at deeper hops are still classified as neighbors (never focus), de-duplicated, and a
|
|
74
105
|
focus item is never listed as its own neighbor.
|
|
106
|
+
- `--compress` minimize output tokens (compact JSON, no blank lines)
|
|
107
|
+
- `--include-deps` include per-item dependency info in the context pack
|
|
108
|
+
- `--max-items <n>` maximum total items (focus + neighbors) in the pack
|
|
109
|
+
- `--section <section>` include only specific sections (repeatable):
|
|
110
|
+
`summary`, `focus`, `neighborhood`, `neighbors`, `links`, `deps`,
|
|
111
|
+
`blockers`, `next-actions` (alias: `actions`), `recent` (alias: `activity`),
|
|
112
|
+
`refresh`
|
|
75
113
|
|
|
76
114
|
## Philosophy
|
|
77
115
|
|
package/dist/index.d.ts
CHANGED
|
@@ -42,6 +42,17 @@ export interface ContextPackOptions {
|
|
|
42
42
|
neighborhood?: boolean;
|
|
43
43
|
neighborhoodDepth?: number;
|
|
44
44
|
generatedAt?: string;
|
|
45
|
+
includeDeps?: boolean;
|
|
46
|
+
maxItems?: number;
|
|
47
|
+
}
|
|
48
|
+
export interface ContextPackDepInfo {
|
|
49
|
+
itemId: string;
|
|
50
|
+
dependsOn: string[];
|
|
51
|
+
dependedBy: string[];
|
|
52
|
+
}
|
|
53
|
+
export interface RenderOptions {
|
|
54
|
+
sections?: string[];
|
|
55
|
+
compress?: boolean;
|
|
45
56
|
}
|
|
46
57
|
export interface ContextPack {
|
|
47
58
|
generatedAt: string;
|
|
@@ -52,6 +63,8 @@ export interface ContextPack {
|
|
|
52
63
|
tag?: string;
|
|
53
64
|
includeClosed: boolean;
|
|
54
65
|
neighborhood: boolean;
|
|
66
|
+
includeDeps: boolean;
|
|
67
|
+
maxItems?: number;
|
|
55
68
|
};
|
|
56
69
|
summary: {
|
|
57
70
|
totalItems: number;
|
|
@@ -72,6 +85,7 @@ export interface ContextPack {
|
|
|
72
85
|
to: string;
|
|
73
86
|
kind: string;
|
|
74
87
|
}>;
|
|
88
|
+
deps?: ContextPackDepInfo[];
|
|
75
89
|
}
|
|
76
90
|
export interface AgentHandoff {
|
|
77
91
|
generatedAt: string;
|
|
@@ -81,6 +95,7 @@ export interface AgentHandoff {
|
|
|
81
95
|
blockers: number;
|
|
82
96
|
links: number;
|
|
83
97
|
recent: number;
|
|
98
|
+
deps: number;
|
|
84
99
|
};
|
|
85
100
|
focus: Array<{
|
|
86
101
|
id: string;
|
|
@@ -113,6 +128,7 @@ export interface AgentHandoff {
|
|
|
113
128
|
kind: "doc" | "file";
|
|
114
129
|
value: string;
|
|
115
130
|
}>;
|
|
131
|
+
deps?: ContextPackDepInfo[];
|
|
116
132
|
suggestedCommand: string;
|
|
117
133
|
}
|
|
118
134
|
export interface SelectionOptions {
|
|
@@ -133,7 +149,12 @@ export interface SuggestedAgentCommandInput {
|
|
|
133
149
|
neighborhood: boolean;
|
|
134
150
|
neighborhoodDepth: number;
|
|
135
151
|
includeFormatFlag?: boolean;
|
|
152
|
+
compress?: boolean;
|
|
153
|
+
includeDeps?: boolean;
|
|
154
|
+
maxItems?: number;
|
|
155
|
+
sections?: string[];
|
|
136
156
|
}
|
|
157
|
+
export declare function validateSections(sections: string[], allowed: readonly string[]): string[];
|
|
137
158
|
export declare function resolveSelectionOptions(options: Record<string, unknown>, defaults?: {
|
|
138
159
|
fallbackStatus?: string;
|
|
139
160
|
}): SelectionOptions;
|
|
@@ -145,7 +166,7 @@ export declare function extractRelationships(item: PmItem): Array<{
|
|
|
145
166
|
kind: string;
|
|
146
167
|
}>;
|
|
147
168
|
export declare function buildContextPack(allItems: PmItem[], options?: ContextPackOptions): ContextPack;
|
|
148
|
-
export declare function renderMarkdown(pack: ContextPack): string;
|
|
169
|
+
export declare function renderMarkdown(pack: ContextPack, options?: RenderOptions): string;
|
|
149
170
|
export declare function buildAgentHandoff(pack: ContextPack, options?: {
|
|
150
171
|
recentLimit?: number;
|
|
151
172
|
suggestedCommand?: string;
|
|
@@ -153,6 +174,8 @@ export declare function buildAgentHandoff(pack: ContextPack, options?: {
|
|
|
153
174
|
export declare function renderAgentHandoff(pack: ContextPack, options?: {
|
|
154
175
|
recentLimit?: number;
|
|
155
176
|
suggestedCommand?: string;
|
|
177
|
+
sections?: string[];
|
|
178
|
+
compress?: boolean;
|
|
156
179
|
}): string;
|
|
157
180
|
export declare function readPmItems(pmRoot: string): PmItem[];
|
|
158
181
|
declare const _default: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,EAAE,MAAM,CAAC;gBACL,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAkC;CAK1E;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,MAAM,WAAW,kBAAkB;IACjC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,OAAO,CAAC;QACvB,YAAY,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -61,6 +61,14 @@ function intOptionMin0(options, keys, fallback) {
|
|
|
61
61
|
}
|
|
62
62
|
return fallback;
|
|
63
63
|
}
|
|
64
|
+
export function validateSections(sections, allowed) {
|
|
65
|
+
const normalized = sections.map((section) => section.toLowerCase());
|
|
66
|
+
const invalid = normalized.filter((section) => !allowed.includes(section));
|
|
67
|
+
if (invalid.length > 0) {
|
|
68
|
+
throw new CommandError(`--section must be one of: ${allowed.join(", ")} (received: ${Array.from(new Set(invalid)).join(", ")})`, EXIT_CODE.USAGE);
|
|
69
|
+
}
|
|
70
|
+
return normalized;
|
|
71
|
+
}
|
|
64
72
|
function shellQuote(value) {
|
|
65
73
|
if (/^[A-Za-z0-9._/:=,-]+$/.test(value))
|
|
66
74
|
return value;
|
|
@@ -106,6 +114,16 @@ export function buildSuggestedAgentCommand(input) {
|
|
|
106
114
|
args.push("--recent", String(input.recentLimit));
|
|
107
115
|
if (input.includeClosed)
|
|
108
116
|
args.push("--include-closed");
|
|
117
|
+
if (input.includeDeps)
|
|
118
|
+
args.push("--include-deps");
|
|
119
|
+
if (input.compress)
|
|
120
|
+
args.push("--compress");
|
|
121
|
+
if (typeof input.maxItems === "number" && input.maxItems > 0)
|
|
122
|
+
args.push("--max-items", String(input.maxItems));
|
|
123
|
+
if (input.sections && input.sections.length > 0) {
|
|
124
|
+
for (const section of input.sections)
|
|
125
|
+
args.push("--section", shellQuote(section));
|
|
126
|
+
}
|
|
109
127
|
if (!input.neighborhood) {
|
|
110
128
|
args.push("--without-neighborhood");
|
|
111
129
|
}
|
|
@@ -244,6 +262,7 @@ export function buildContextPack(allItems, options = {}) {
|
|
|
244
262
|
// focus items. Each hop expands the frontier by one degree of separation. The
|
|
245
263
|
// visited set is seeded with focus ids so a focus item is never a neighbor.
|
|
246
264
|
const neighborIds = new Set();
|
|
265
|
+
const neighborDepth = new Map();
|
|
247
266
|
const visited = new Set(selectedIds);
|
|
248
267
|
let frontier = new Set(selectedIds);
|
|
249
268
|
for (let hop = 0; hop < depth && frontier.size > 0; hop += 1) {
|
|
@@ -257,13 +276,29 @@ export function buildContextPack(allItems, options = {}) {
|
|
|
257
276
|
for (const id of next) {
|
|
258
277
|
visited.add(id);
|
|
259
278
|
neighborIds.add(id);
|
|
279
|
+
neighborDepth.set(id, hop + 1);
|
|
260
280
|
}
|
|
261
281
|
frontier = next;
|
|
262
282
|
}
|
|
263
283
|
for (const id of selectedIds)
|
|
264
284
|
neighborIds.delete(id);
|
|
265
|
-
|
|
266
|
-
|
|
285
|
+
let neighbors = sortContextItems([...neighborIds].map((id) => byId.get(id)).filter((item) => Boolean(item)))
|
|
286
|
+
.sort((a, b) => (neighborDepth.get(a.id) ?? 0) - (neighborDepth.get(b.id) ?? 0));
|
|
287
|
+
// --max-items caps the total item count (focus + neighbors). Focus items take
|
|
288
|
+
// priority; neighbors are trimmed to fit the remaining budget. If focus
|
|
289
|
+
// alone exceeds the cap, focus is also trimmed.
|
|
290
|
+
let focusItems = limited;
|
|
291
|
+
if (typeof options.maxItems === "number" && options.maxItems > 0) {
|
|
292
|
+
if (focusItems.length >= options.maxItems) {
|
|
293
|
+
focusItems = focusItems.slice(0, options.maxItems);
|
|
294
|
+
neighbors = [];
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
neighbors = neighbors.slice(0, options.maxItems - focusItems.length);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
const focusIdsFinal = new Set(focusItems.map((item) => item.id));
|
|
301
|
+
const packItems = focusItems.map((item) => options.includeBody ? item : { ...item, body: undefined, description: undefined });
|
|
267
302
|
const packNeighbors = neighbors.map((item) => options.includeBody ? item : { ...item, body: undefined, description: undefined });
|
|
268
303
|
const selectedAndNeighbors = [...packItems, ...packNeighbors];
|
|
269
304
|
const byStatus = {};
|
|
@@ -272,6 +307,23 @@ export function buildContextPack(allItems, options = {}) {
|
|
|
272
307
|
byStatus[itemStatus(item)] = (byStatus[itemStatus(item)] ?? 0) + 1;
|
|
273
308
|
byType[itemType(item)] = (byType[itemType(item)] ?? 0) + 1;
|
|
274
309
|
}
|
|
310
|
+
// --include-deps adds per-item dependency info (depends-on and depended-by)
|
|
311
|
+
// for every visible item in the pack.
|
|
312
|
+
let deps;
|
|
313
|
+
if (options.includeDeps) {
|
|
314
|
+
const dependsOn = new Map();
|
|
315
|
+
const dependedBy = new Map();
|
|
316
|
+
for (const rel of allRelationships) {
|
|
317
|
+
dependsOn.set(rel.from, [...(dependsOn.get(rel.from) ?? []), rel.to]);
|
|
318
|
+
dependedBy.set(rel.to, [...(dependedBy.get(rel.to) ?? []), rel.from]);
|
|
319
|
+
}
|
|
320
|
+
const visibleIds = [...packItems, ...packNeighbors].map((item) => item.id);
|
|
321
|
+
deps = visibleIds.map((itemId) => ({
|
|
322
|
+
itemId,
|
|
323
|
+
dependsOn: dependsOn.get(itemId) ?? [],
|
|
324
|
+
dependedBy: dependedBy.get(itemId) ?? [],
|
|
325
|
+
}));
|
|
326
|
+
}
|
|
275
327
|
return {
|
|
276
328
|
generatedAt: options.generatedAt ?? new Date().toISOString(),
|
|
277
329
|
filters: {
|
|
@@ -281,6 +333,8 @@ export function buildContextPack(allItems, options = {}) {
|
|
|
281
333
|
tag: options.tag,
|
|
282
334
|
includeClosed: options.includeClosed === true,
|
|
283
335
|
neighborhood: depth > 0,
|
|
336
|
+
includeDeps: options.includeDeps === true,
|
|
337
|
+
maxItems: options.maxItems,
|
|
284
338
|
},
|
|
285
339
|
summary: {
|
|
286
340
|
totalItems: allItems.length,
|
|
@@ -292,7 +346,8 @@ export function buildContextPack(allItems, options = {}) {
|
|
|
292
346
|
items: packItems,
|
|
293
347
|
neighbors: packNeighbors,
|
|
294
348
|
links: buildLinks(selectedAndNeighbors),
|
|
295
|
-
relationships: allRelationships.filter((rel) =>
|
|
349
|
+
relationships: allRelationships.filter((rel) => focusIdsFinal.has(rel.from) || focusIdsFinal.has(rel.to)),
|
|
350
|
+
deps,
|
|
296
351
|
};
|
|
297
352
|
}
|
|
298
353
|
function markdownEscape(value) {
|
|
@@ -322,44 +377,63 @@ function renderItemList(items, includeBody) {
|
|
|
322
377
|
}
|
|
323
378
|
return lines;
|
|
324
379
|
}
|
|
325
|
-
export function renderMarkdown(pack) {
|
|
380
|
+
export function renderMarkdown(pack, options = {}) {
|
|
381
|
+
const sectionFilter = options.sections?.map((s) => s.toLowerCase());
|
|
382
|
+
const compress = options.compress === true;
|
|
383
|
+
const include = (name) => !sectionFilter || sectionFilter.includes(name);
|
|
326
384
|
const lines = [
|
|
327
385
|
"# pm context pack",
|
|
328
386
|
"",
|
|
329
387
|
`Generated: ${pack.generatedAt}`,
|
|
330
|
-
"",
|
|
331
|
-
"## Summary",
|
|
332
|
-
"",
|
|
333
|
-
`- Total workspace items: ${pack.summary.totalItems}`,
|
|
334
|
-
`- Focus items: ${pack.summary.selectedItems}`,
|
|
335
|
-
`- Neighbor items: ${pack.summary.neighborItems}`,
|
|
336
|
-
`- Statuses: ${Object.entries(pack.summary.byStatus).map(([k, v]) => `${k}=${v}`).join(", ") || "none"}`,
|
|
337
|
-
`- Types: ${Object.entries(pack.summary.byType).map(([k, v]) => `${k}=${v}`).join(", ") || "none"}`,
|
|
338
|
-
"",
|
|
339
|
-
"## Focus Items",
|
|
340
|
-
"",
|
|
341
|
-
...renderItemList(pack.items, pack.items.some((item) => Boolean(item.body || item.description))),
|
|
342
|
-
"",
|
|
343
|
-
"## Dependency Neighborhood",
|
|
344
|
-
"",
|
|
345
388
|
];
|
|
346
|
-
if (
|
|
347
|
-
lines.push("
|
|
389
|
+
if (include("summary")) {
|
|
390
|
+
lines.push("", "## Summary", "");
|
|
391
|
+
lines.push(`- Total workspace items: ${pack.summary.totalItems}`);
|
|
392
|
+
lines.push(`- Focus items: ${pack.summary.selectedItems}`);
|
|
393
|
+
lines.push(`- Neighbor items: ${pack.summary.neighborItems}`);
|
|
394
|
+
lines.push(`- Statuses: ${Object.entries(pack.summary.byStatus).map(([k, v]) => `${k}=${v}`).join(", ") || "none"}`);
|
|
395
|
+
lines.push(`- Types: ${Object.entries(pack.summary.byType).map(([k, v]) => `${k}=${v}`).join(", ") || "none"}`);
|
|
396
|
+
}
|
|
397
|
+
if (include("focus")) {
|
|
398
|
+
lines.push("", "## Focus Items", "");
|
|
399
|
+
lines.push(...renderItemList(pack.items, pack.items.some((item) => Boolean(item.body || item.description))));
|
|
400
|
+
}
|
|
401
|
+
if (include("neighborhood")) {
|
|
402
|
+
lines.push("", "## Dependency Neighborhood", "");
|
|
403
|
+
if (pack.relationships.length === 0) {
|
|
404
|
+
lines.push("_No dependency relationships in focus._");
|
|
405
|
+
}
|
|
406
|
+
else {
|
|
407
|
+
for (const rel of pack.relationships)
|
|
408
|
+
lines.push(`- ${rel.from} --${rel.kind}--> ${rel.to}`);
|
|
409
|
+
}
|
|
348
410
|
}
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
411
|
+
if (include("neighbors")) {
|
|
412
|
+
lines.push("", "## Neighbor Items", "");
|
|
413
|
+
lines.push(...renderItemList(pack.neighbors, false));
|
|
352
414
|
}
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
415
|
+
if (include("links")) {
|
|
416
|
+
lines.push("", "## Linked Context", "");
|
|
417
|
+
if (pack.links.length === 0) {
|
|
418
|
+
lines.push("_No docs or files linked in selected context._");
|
|
419
|
+
}
|
|
420
|
+
else {
|
|
421
|
+
for (const link of pack.links)
|
|
422
|
+
lines.push(`- ${link.itemId} ${link.kind}: ${link.value}`);
|
|
423
|
+
}
|
|
356
424
|
}
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
425
|
+
if (include("deps") && pack.deps && pack.deps.length > 0) {
|
|
426
|
+
lines.push("", "## Dependencies", "");
|
|
427
|
+
for (const dep of pack.deps) {
|
|
428
|
+
lines.push(`- ${dep.itemId}: depends_on [${dep.dependsOn.join(", ")}] | depended_by [${dep.dependedBy.join(", ")}]`);
|
|
429
|
+
}
|
|
360
430
|
}
|
|
361
431
|
lines.push("");
|
|
362
|
-
|
|
432
|
+
let output = `${lines.join("\n")}\n`;
|
|
433
|
+
if (compress) {
|
|
434
|
+
output = `${output.split("\n").filter((line) => line.trim() !== "").join("\n")}\n`;
|
|
435
|
+
}
|
|
436
|
+
return output;
|
|
363
437
|
}
|
|
364
438
|
function titleFor(items, id) {
|
|
365
439
|
return items.find((item) => item.id === id)?.title;
|
|
@@ -420,6 +494,7 @@ export function buildAgentHandoff(pack, options = {}) {
|
|
|
420
494
|
blockers: blockers.length,
|
|
421
495
|
links: pack.links.length,
|
|
422
496
|
recent: recent.length,
|
|
497
|
+
deps: pack.deps?.length ?? 0,
|
|
423
498
|
},
|
|
424
499
|
focus: pack.items.map((item) => ({
|
|
425
500
|
id: item.id,
|
|
@@ -433,75 +508,99 @@ export function buildAgentHandoff(pack, options = {}) {
|
|
|
433
508
|
nextActions,
|
|
434
509
|
recent,
|
|
435
510
|
links: pack.links.slice(0, 12),
|
|
511
|
+
deps: pack.deps,
|
|
436
512
|
suggestedCommand,
|
|
437
513
|
};
|
|
438
514
|
}
|
|
439
515
|
export function renderAgentHandoff(pack, options = {}) {
|
|
440
516
|
const handoff = buildAgentHandoff(pack, options);
|
|
517
|
+
const sectionFilter = options.sections?.map((s) => s.toLowerCase());
|
|
518
|
+
const compress = options.compress === true;
|
|
519
|
+
const include = (name, aliases = []) => !sectionFilter || sectionFilter.includes(name) || aliases.some((a) => sectionFilter.includes(a));
|
|
441
520
|
const lines = [
|
|
442
521
|
"# pm agent handoff",
|
|
443
522
|
"",
|
|
444
523
|
`Generated: ${handoff.generatedAt}`,
|
|
445
|
-
`Focus: ${handoff.counts.focus} | Neighbors: ${handoff.counts.neighbors} | Blockers: ${handoff.counts.blockers} | Links: ${handoff.counts.links} | Recent: ${handoff.counts.recent}`,
|
|
446
|
-
"",
|
|
447
|
-
"## Focus",
|
|
448
|
-
"",
|
|
524
|
+
`Focus: ${handoff.counts.focus} | Neighbors: ${handoff.counts.neighbors} | Blockers: ${handoff.counts.blockers} | Links: ${handoff.counts.links} | Recent: ${handoff.counts.recent}${handoff.counts.deps > 0 ? ` | Deps: ${handoff.counts.deps}` : ""}`,
|
|
449
525
|
];
|
|
450
|
-
if (
|
|
451
|
-
lines.push("
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
526
|
+
if (include("focus")) {
|
|
527
|
+
lines.push("", "## Focus", "");
|
|
528
|
+
if (handoff.focus.length === 0) {
|
|
529
|
+
lines.push("_No focus items._");
|
|
530
|
+
}
|
|
531
|
+
else {
|
|
532
|
+
for (const item of handoff.focus) {
|
|
533
|
+
const meta = [
|
|
534
|
+
item.type,
|
|
535
|
+
item.status,
|
|
536
|
+
item.priority === undefined ? "" : `p${item.priority}`,
|
|
537
|
+
item.deadline ? `due ${item.deadline}` : "",
|
|
538
|
+
].filter(Boolean).join(" | ");
|
|
539
|
+
lines.push(`- ${item.id}: ${markdownEscape(item.title)} (${meta})`);
|
|
540
|
+
}
|
|
462
541
|
}
|
|
463
542
|
}
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
const
|
|
471
|
-
|
|
472
|
-
|
|
543
|
+
if (include("blockers")) {
|
|
544
|
+
lines.push("", "## Blockers", "");
|
|
545
|
+
if (handoff.blockers.length === 0) {
|
|
546
|
+
lines.push("_No visible blockers._");
|
|
547
|
+
}
|
|
548
|
+
else {
|
|
549
|
+
for (const blocker of handoff.blockers) {
|
|
550
|
+
const label = blocker.title ? `${blocker.blockedBy} ${markdownEscape(blocker.title)}` : blocker.blockedBy;
|
|
551
|
+
const status = blocker.status ? ` (${blocker.status})` : "";
|
|
552
|
+
lines.push(`- ${blocker.itemId} ${blocker.kind} ${label}${status}`);
|
|
553
|
+
}
|
|
473
554
|
}
|
|
474
555
|
}
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
556
|
+
if (include("next-actions", ["actions", "nextactions"])) {
|
|
557
|
+
lines.push("", "## Next Actions", "");
|
|
558
|
+
if (handoff.nextActions.length === 0) {
|
|
559
|
+
lines.push("_No open focus items._");
|
|
560
|
+
}
|
|
561
|
+
else {
|
|
562
|
+
for (const action of handoff.nextActions) {
|
|
563
|
+
lines.push(`- ${action.id}: ${markdownEscape(action.title)} - ${action.reason}`);
|
|
564
|
+
}
|
|
565
|
+
}
|
|
478
566
|
}
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
567
|
+
if (include("recent", ["activity"])) {
|
|
568
|
+
lines.push("", "## Recent Activity", "");
|
|
569
|
+
if (handoff.recent.length === 0) {
|
|
570
|
+
lines.push("_No recent open activity._");
|
|
571
|
+
}
|
|
572
|
+
else {
|
|
573
|
+
for (const item of handoff.recent) {
|
|
574
|
+
const updated = item.updatedAt ? ` - updated ${item.updatedAt}` : "";
|
|
575
|
+
lines.push(`- ${item.id}: ${markdownEscape(item.title)} (${item.status})${updated}`);
|
|
576
|
+
}
|
|
482
577
|
}
|
|
483
578
|
}
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
579
|
+
if (include("links")) {
|
|
580
|
+
lines.push("", "## Linked Context", "");
|
|
581
|
+
if (handoff.links.length === 0) {
|
|
582
|
+
lines.push("_No linked files or docs._");
|
|
583
|
+
}
|
|
584
|
+
else {
|
|
585
|
+
for (const link of handoff.links) {
|
|
586
|
+
lines.push(`- ${link.itemId} ${link.kind}: ${link.value}`);
|
|
587
|
+
}
|
|
588
|
+
}
|
|
487
589
|
}
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
lines.push(`- ${
|
|
590
|
+
if (include("deps") && handoff.deps && handoff.deps.length > 0) {
|
|
591
|
+
lines.push("", "## Dependencies", "");
|
|
592
|
+
for (const dep of handoff.deps) {
|
|
593
|
+
lines.push(`- ${dep.itemId}: depends_on [${dep.dependsOn.join(", ")}] | depended_by [${dep.dependedBy.join(", ")}]`);
|
|
492
594
|
}
|
|
493
595
|
}
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
lines.push("_No linked files or docs._");
|
|
596
|
+
if (include("refresh")) {
|
|
597
|
+
lines.push("", "## Refresh", "", `\`${handoff.suggestedCommand}\``, "");
|
|
497
598
|
}
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
}
|
|
599
|
+
let output = `${lines.join("\n")}\n`;
|
|
600
|
+
if (compress) {
|
|
601
|
+
output = `${output.split("\n").filter((line) => line.trim() !== "").join("\n")}\n`;
|
|
502
602
|
}
|
|
503
|
-
|
|
504
|
-
return `${lines.join("\n")}\n`;
|
|
603
|
+
return output;
|
|
505
604
|
}
|
|
506
605
|
export function readPmItems(pmRoot) {
|
|
507
606
|
const result = spawnSync("pm", ["--path", pmRoot, "list-all", "--json", "--include-body"], {
|
|
@@ -534,6 +633,9 @@ function setupCommands(api) {
|
|
|
534
633
|
"pm context-pack --ids pm-1234,pm-5678 --state blocked --format compact",
|
|
535
634
|
"pm context-pack --id pm-1234 --format compact --recent 8",
|
|
536
635
|
"pm context-pack --status in_progress --tag release --format json",
|
|
636
|
+
"pm context-pack --id pm-1234 --compress --format json",
|
|
637
|
+
"pm context-pack --id pm-1234 --include-deps --section focus --section blockers",
|
|
638
|
+
"pm context-pack --id pm-1234 --max-items 10",
|
|
537
639
|
],
|
|
538
640
|
flags: [
|
|
539
641
|
{ long: "--id", value_name: "id", description: "Focus item id (repeatable or comma-separated)", type: "string" },
|
|
@@ -551,6 +653,10 @@ function setupCommands(api) {
|
|
|
551
653
|
{ long: "--include-closed", description: "Include closed/canceled items in filtered packs", type: "boolean" },
|
|
552
654
|
{ long: "--without-neighborhood", description: "Omit dependency/dependent neighbors", type: "boolean" },
|
|
553
655
|
{ long: "--neighborhood-depth", value_name: "n", description: `Transitive neighbor hops via dependency graph (0-${MAX_NEIGHBORHOOD_DEPTH}, default: 1; 0 = none)`, type: "string" },
|
|
656
|
+
{ long: "--compress", description: "Minimize output tokens (compact JSON, no blank lines)", type: "boolean" },
|
|
657
|
+
{ long: "--include-deps", description: "Include per-item dependency info in the context pack", type: "boolean" },
|
|
658
|
+
{ long: "--max-items", value_name: "n", description: "Maximum total items (focus + neighbors) in the pack", type: "string" },
|
|
659
|
+
{ long: "--section", value_name: "section", description: "Include only specific sections (repeatable): summary, focus, neighborhood, neighbors, links, deps, blockers, next-actions, recent, refresh", type: "string" },
|
|
554
660
|
],
|
|
555
661
|
async run(ctx) {
|
|
556
662
|
const options = ctx.options;
|
|
@@ -566,6 +672,19 @@ function setupCommands(api) {
|
|
|
566
672
|
const neighborhood = !boolOption(options, "without-neighborhood", "withoutNeighborhood");
|
|
567
673
|
const neighborhoodDepth = intOptionMin0(options, ["neighborhood-depth", "neighborhoodDepth"], 1);
|
|
568
674
|
const recentLimit = intOptionMin0(options, ["recent", "recentLimit", "recent-limit"], defaultRecentLimit);
|
|
675
|
+
const compress = boolOption(options, "compress");
|
|
676
|
+
const includeDeps = boolOption(options, "include-deps", "includeDeps");
|
|
677
|
+
const maxItems = intOptionMin0(options, ["max-items", "maxItems"], 0) || undefined;
|
|
678
|
+
const requestedSections = [...asArray(options.section), ...asArray(options.sections)];
|
|
679
|
+
const allowedSections = format === "markdown"
|
|
680
|
+
? ["summary", "focus", "neighborhood", "neighbors", "links", "deps"]
|
|
681
|
+
: format === "agent"
|
|
682
|
+
? ["focus", "blockers", "next-actions", "actions", "recent", "activity", "links", "deps", "refresh"]
|
|
683
|
+
: [];
|
|
684
|
+
if (format === "json" && requestedSections.length > 0) {
|
|
685
|
+
throw new CommandError("--section is only supported with markdown, agent, or compact output", EXIT_CODE.USAGE);
|
|
686
|
+
}
|
|
687
|
+
const sections = validateSections(requestedSections, allowedSections);
|
|
569
688
|
const pack = buildContextPack(readPmItems(ctx.pm_root), {
|
|
570
689
|
ids: selection.ids,
|
|
571
690
|
status: selection.status,
|
|
@@ -576,6 +695,8 @@ function setupCommands(api) {
|
|
|
576
695
|
includeClosed,
|
|
577
696
|
neighborhood,
|
|
578
697
|
neighborhoodDepth,
|
|
698
|
+
includeDeps,
|
|
699
|
+
maxItems,
|
|
579
700
|
});
|
|
580
701
|
const suggestedCommand = buildSuggestedAgentCommand({
|
|
581
702
|
commandName: "context-pack",
|
|
@@ -588,12 +709,17 @@ function setupCommands(api) {
|
|
|
588
709
|
neighborhood,
|
|
589
710
|
neighborhoodDepth,
|
|
590
711
|
includeFormatFlag: true,
|
|
712
|
+
compress,
|
|
713
|
+
includeDeps,
|
|
714
|
+
maxItems,
|
|
715
|
+
sections: sections.length > 0 ? sections : undefined,
|
|
591
716
|
});
|
|
717
|
+
const renderOpts = { recentLimit, suggestedCommand, compress, sections: sections.length > 0 ? sections : undefined };
|
|
592
718
|
const output = format === "json"
|
|
593
|
-
? `${JSON.stringify(pack, null, 2)}\n`
|
|
719
|
+
? `${JSON.stringify(pack, null, compress ? 0 : 2)}\n`
|
|
594
720
|
: format === "agent"
|
|
595
|
-
? renderAgentHandoff(pack,
|
|
596
|
-
: renderMarkdown(pack);
|
|
721
|
+
? renderAgentHandoff(pack, renderOpts)
|
|
722
|
+
: renderMarkdown(pack, renderOpts);
|
|
597
723
|
const outputPath = stringOption(options, "output");
|
|
598
724
|
if (outputPath) {
|
|
599
725
|
writeFileSync(outputPath, output, "utf-8");
|
|
@@ -615,6 +741,8 @@ function setupCommands(api) {
|
|
|
615
741
|
"pm context-handoff --ids pm-1234,pm-5678 --state blocked",
|
|
616
742
|
"pm context-handoff --status blocked --recent 8",
|
|
617
743
|
"pm context-handoff --tag release --without-neighborhood",
|
|
744
|
+
"pm context-handoff --id pm-1234 --format json",
|
|
745
|
+
"pm context-handoff --id pm-1234 --compress --include-deps",
|
|
618
746
|
],
|
|
619
747
|
flags: [
|
|
620
748
|
{ long: "--id", value_name: "id", description: "Focus item id (repeatable or comma-separated)", type: "string" },
|
|
@@ -625,20 +753,34 @@ function setupCommands(api) {
|
|
|
625
753
|
{ long: "--kind", value_name: "type", description: "Alias for --type", type: "string" },
|
|
626
754
|
{ long: "--tag", value_name: "tag", description: "Filter focus items by tag", type: "string" },
|
|
627
755
|
{ long: "--limit", value_name: "n", description: `Maximum focus item count (default: ${contextHandoffDefaultLimit})`, type: "string" },
|
|
756
|
+
{ long: "--format", value_name: "format", description: "Output format: agent, json, or compact (default: agent)", type: "string" },
|
|
628
757
|
{ long: "--recent", value_name: "n", description: `Recent activity items (default: ${defaultRecentLimit})`, type: "string" },
|
|
629
758
|
{ long: "--output", value_name: "file", description: "Write handoff output to a file", type: "string" },
|
|
630
759
|
{ long: "--include-closed", description: "Include closed/canceled items in filtered packs", type: "boolean" },
|
|
631
760
|
{ long: "--without-neighborhood", description: "Omit dependency/dependent neighbors", type: "boolean" },
|
|
632
761
|
{ long: "--neighborhood-depth", value_name: "n", description: `Transitive neighbor hops via dependency graph (0-${MAX_NEIGHBORHOOD_DEPTH}, default: 1; 0 = none)`, type: "string" },
|
|
762
|
+
{ long: "--compress", description: "Minimize output tokens (compact JSON, no blank lines)", type: "boolean" },
|
|
763
|
+
{ long: "--include-deps", description: "Include per-item dependency info in the handoff", type: "boolean" },
|
|
764
|
+
{ long: "--max-items", value_name: "n", description: "Maximum total items (focus + neighbors) in the handoff", type: "string" },
|
|
765
|
+
{ long: "--section", value_name: "section", description: "Include only specific sections (repeatable): focus, blockers, next-actions, recent, links, deps, refresh", type: "string" },
|
|
633
766
|
],
|
|
634
767
|
async run(ctx) {
|
|
635
768
|
const options = ctx.options;
|
|
769
|
+
const requestedFormat = (stringOption(options, "format") ?? "agent").toLowerCase();
|
|
770
|
+
const format = requestedFormat === "compact" ? "agent" : requestedFormat;
|
|
771
|
+
if (format !== "agent" && format !== "json") {
|
|
772
|
+
throw new CommandError("--format must be agent, json, or compact", EXIT_CODE.USAGE);
|
|
773
|
+
}
|
|
636
774
|
const selection = resolveSelectionOptions(options, { fallbackStatus: "in_progress" });
|
|
637
775
|
const limit = intOption(options, "limit", contextHandoffDefaultLimit);
|
|
638
776
|
const includeClosed = boolOption(options, "include-closed", "includeClosed");
|
|
639
777
|
const neighborhood = !boolOption(options, "without-neighborhood", "withoutNeighborhood");
|
|
640
778
|
const neighborhoodDepth = intOptionMin0(options, ["neighborhood-depth", "neighborhoodDepth"], 1);
|
|
641
779
|
const recentLimit = intOptionMin0(options, ["recent", "recentLimit", "recent-limit"], defaultRecentLimit);
|
|
780
|
+
const compress = boolOption(options, "compress");
|
|
781
|
+
const includeDeps = boolOption(options, "include-deps", "includeDeps");
|
|
782
|
+
const maxItems = intOptionMin0(options, ["max-items", "maxItems"], 0) || undefined;
|
|
783
|
+
const sections = validateSections([...asArray(options.section), ...asArray(options.sections)], ["focus", "blockers", "next-actions", "actions", "recent", "activity", "links", "deps", "refresh"]);
|
|
642
784
|
const pack = buildContextPack(readPmItems(ctx.pm_root), {
|
|
643
785
|
ids: selection.ids,
|
|
644
786
|
status: selection.status,
|
|
@@ -648,6 +790,8 @@ function setupCommands(api) {
|
|
|
648
790
|
includeClosed,
|
|
649
791
|
neighborhood,
|
|
650
792
|
neighborhoodDepth,
|
|
793
|
+
includeDeps,
|
|
794
|
+
maxItems,
|
|
651
795
|
});
|
|
652
796
|
const suggestedCommand = buildSuggestedAgentCommand({
|
|
653
797
|
commandName: "context-handoff",
|
|
@@ -659,8 +803,16 @@ function setupCommands(api) {
|
|
|
659
803
|
includeClosed,
|
|
660
804
|
neighborhood,
|
|
661
805
|
neighborhoodDepth,
|
|
806
|
+
compress,
|
|
807
|
+
includeDeps,
|
|
808
|
+
maxItems,
|
|
809
|
+
sections: sections.length > 0 ? sections : undefined,
|
|
662
810
|
});
|
|
663
|
-
const
|
|
811
|
+
const renderOpts = { recentLimit, suggestedCommand, compress, sections: sections.length > 0 ? sections : undefined };
|
|
812
|
+
const handoff = buildAgentHandoff(pack, { recentLimit, suggestedCommand });
|
|
813
|
+
const output = format === "json"
|
|
814
|
+
? `${JSON.stringify(handoff, null, compress ? 0 : 2)}\n`
|
|
815
|
+
: renderAgentHandoff(pack, renderOpts);
|
|
664
816
|
const outputPath = stringOption(options, "output");
|
|
665
817
|
if (outputPath) {
|
|
666
818
|
writeFileSync(outputPath, output, "utf-8");
|
|
@@ -671,7 +823,7 @@ function setupCommands(api) {
|
|
|
671
823
|
}
|
|
672
824
|
return {
|
|
673
825
|
ok: true,
|
|
674
|
-
format: "agent",
|
|
826
|
+
format: format === "json" ? "json" : "agent",
|
|
675
827
|
selected: pack.summary.selectedItems,
|
|
676
828
|
neighbors: pack.summary.neighborItems,
|
|
677
829
|
defaultedStatus: selection.inferredStatus ? selection.status : undefined,
|
|
@@ -681,7 +833,7 @@ function setupCommands(api) {
|
|
|
681
833
|
}
|
|
682
834
|
export default defineExtension({
|
|
683
835
|
name: "pm-context",
|
|
684
|
-
version: "2026.7.
|
|
836
|
+
version: "2026.7.10",
|
|
685
837
|
description: "Generate deterministic pm context packs for agent handoffs, reviews, and status briefs",
|
|
686
838
|
activate(api) {
|
|
687
839
|
setupCommands(api);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED