pm-brief 2026.9.26 → 2026.10.8

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 2026.10.8 - 2026-10-08
4
+
5
+ ### Added
6
+
7
+ - Enforce the chosen rendered brief token ceiling ([pm-brief-k8no](https://github.com/unbraind/pm-brief/blob/main/.agents/pm/features/pm-brief-k8no.toon))
8
+
9
+ ## 2026.10.5 - 2026-10-05
10
+
11
+ ### Other
12
+
13
+ - Auto-merge green Dependabot updates and group the pm toolchain into one daily PR ([pm-brief-hgo4](https://github.com/unbraind/pm-brief/blob/main/.agents/pm/tasks/pm-brief-hgo4.toon))
14
+
3
15
  ## 2026.9.26 - 2026-09-26
4
16
 
5
17
  ### Other
package/README.md CHANGED
@@ -50,7 +50,7 @@ pm brief since 2026-07-20T00:00:00Z --until 2026-07-22 --author alice
50
50
 
51
51
  ### Ranking and Budget Flags
52
52
 
53
- - `--max-tokens` is an alias for `--token-budget`.
53
+ - `--max-tokens` is an alias for `--token-budget`: a ceiling on the chosen rendered brief, estimated as `ceil(characters / 4)` (not a model tokenizer).
54
54
  - `--dependency-order` prefers prerequisite items before dependent work in next-work ranking.
55
55
  - `--focus` highlights specific item ids, or `type:Type` to highlight every item of a type (repeatable or comma-separated).
56
56
  - `--include-history` adds a Recent Activity section sourced from `pm activity` to briefs and prompts; `--history-limit` controls the entry count (default 10).
@@ -60,6 +60,37 @@ pm brief since 2026-07-20T00:00:00Z --until 2026-07-22 --author alice
60
60
  - `--explain` on `pm brief next` includes compact ranking evidence such as unblockability, stale age, dependency fanout, release/deadline proximity, and linked docs/files.
61
61
  - `--confidence` on `pm brief next` includes the confidence score behind each recommendation.
62
62
 
63
+ For `pm brief` (default 4000) and `pm brief prompt` (default 2500), the ceiling
64
+ includes headings, pretty JSON whitespace, the final newline, merge receipts,
65
+ and omission/disclosure lines. Compaction caps ancillary sections, shortens
66
+ display fields with `…`, then drops lower-priority entries. Retained items keep
67
+ their IDs and the highest-ranked next item remains available. `omissions` in
68
+ JSON, or the rendered omission notice, gives per-section entry counts and
69
+ `pm list --all` / `pm get <id>` retrieval hints. Counts are section entries, so
70
+ an item appearing in both focus and next can be counted twice. Merge compromise
71
+ IDs and pending totals remain complete; `pm merge report` retrieves hidden receipts.
72
+
73
+ If the smallest actionable brief cannot fit, the command fails before writing
74
+ an output file. The error states the minimum required budget and a command to
75
+ retry. The API throws `CommandError` with `EXIT_CODE.USAGE` (2), matching existing
76
+ usage failures; the host CLI controls process error rendering and exit handling.
77
+
78
+ API callers can choose the rendering before building:
79
+
80
+ ```ts
81
+ import { buildBrief, renderBrief } from "pm-brief";
82
+ const brief = buildBrief(items, { tokenBudget: 1000, format: "markdown" });
83
+ const output = renderBrief(brief, "markdown");
84
+ ```
85
+
86
+ `buildBrief` defaults to budgeting pretty JSON. `renderBrief`,
87
+ `renderMarkdownBrief`, `renderSlackBrief` and `renderAgentPrompt` enforce the
88
+ selected rendering again if callers change format or modify the returned object.
89
+ `budget.estimatedTokens` measures the rendering chosen at build time, including
90
+ its own digit count. An unchanged ordinary tracker that already fits keeps its
91
+ sections and fields; only the estimate disclosure can differ from older versions.
92
+ See [budget evidence and recovery](docs/brief-budget.md) for the regression matrix.
93
+
63
94
  ## Agent Brief Contents
64
95
 
65
96
  - workspace and item counts
package/dist/index.d.ts CHANGED
@@ -80,7 +80,12 @@ export interface PmItem {
80
80
  files?: unknown;
81
81
  [key: string]: unknown;
82
82
  }
83
+ /** Renderings whose complete character estimate can be budgeted by buildBrief. */
84
+ export type BriefFormat = "json" | "markdown" | "prompt" | "slack";
85
+ /** Selection and rendering controls for a brief whose output must fit the requested ceiling. */
83
86
  export interface BriefOptions {
87
+ /** Rendering to budget, including whitespace and disclosure (default: json). */
88
+ format?: BriefFormat;
84
89
  tokenBudget?: number;
85
90
  dependencyOrder?: boolean;
86
91
  focusIds?: string[];
@@ -208,7 +213,15 @@ export interface BriefInsight {
208
213
  message: string;
209
214
  suggestion?: string;
210
215
  }
216
+ /** Counts removed from each selected section, with commands to recover full context. */
217
+ export interface BriefOmissions {
218
+ sections: Record<string, number>;
219
+ shortenedFields: boolean;
220
+ retrieve: string;
221
+ }
211
222
  export interface AgentBrief {
223
+ /** Present after budget compaction; counts refer to section entries, not unique items. */
224
+ omissions?: BriefOmissions;
212
225
  generatedAt: string;
213
226
  workspace: {
214
227
  root: string;
@@ -499,9 +512,18 @@ export interface GovernanceScanOptions {
499
512
  export declare function collectGovernanceSignals(items: readonly PmItem[], options?: GovernanceScanOptions): Promise<GovernanceSummary>;
500
513
  /** True when every governance section is empty (nothing to surface). */
501
514
  export declare function governanceIsEmpty(g: GovernanceSummary | undefined): boolean;
515
+ /**
516
+ * Render exactly the bytes emitted by the brief commands, including JSON indentation
517
+ * and the trailing newline. Select the same format when calling buildBrief.
518
+ */
519
+ export declare function renderBrief(brief: AgentBrief, format: BriefFormat): string;
520
+ /** Build a ranked brief, enforcing the full chosen rendering or throwing a recoverable usage error. */
502
521
  export declare function buildBrief(items: PmItem[], options?: BriefOptions): AgentBrief;
522
+ /** Render the markdown brief, rechecking its ceiling when the format or input changes. */
503
523
  export declare function renderMarkdownBrief(brief: AgentBrief): string;
524
+ /** Render the slack brief, rechecking its ceiling when the format or input changes. */
504
525
  export declare function renderSlackBrief(brief: AgentBrief): string;
526
+ /** Render the prompt brief, rechecking its ceiling when the format or input changes. */
505
527
  export declare function renderAgentPrompt(brief: AgentBrief): string;
506
528
  /**
507
529
  * Read every tracker item through the current canonical CLI contract.
@@ -552,6 +574,7 @@ export declare function readNextOrderedIds(pmRoot: string, options?: {
552
574
  }): string[];
553
575
  /** Normalize the canonical `pm next --json` envelope into a stable, deduplicated id order. */
554
576
  export declare function parseNextOrderedIdsOutput(output: string): string[];
577
+ /** Read bounded activity from the canonical CLI, degrading unavailable history to an empty section. */
555
578
  export declare function readRecentActivity(pmRoot: string, limit?: number): BriefActivity[];
556
579
  /** Parse compact `pm activity --json` output while dropping malformed advisory rows. */
557
580
  export declare function parseRecentActivityOutput(output: string, limit?: number): BriefActivity[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1026,42 +1026,159 @@ export function governanceIsEmpty(g) {
1026
1026
  g.storageFindings.length === 0 &&
1027
1027
  g.secretFindings.length === 0);
1028
1028
  }
1029
- function compactToBudget(brief) {
1029
+ /**
1030
+ * Render exactly the bytes emitted by the brief commands, including JSON indentation
1031
+ * and the trailing newline. Select the same format when calling buildBrief.
1032
+ */
1033
+ export function renderBrief(brief, format) {
1034
+ return renderBriefContent(compactToBudget(brief, format), format);
1035
+ }
1036
+ /** Render without re-entering compaction so measurement sees the exact output bytes. */
1037
+ function renderBriefContent(brief, format) {
1038
+ switch (format) {
1039
+ case "json": return `${JSON.stringify(brief, null, 2)}\n`;
1040
+ case "markdown": return renderMarkdownBriefContent(brief);
1041
+ case "prompt": return renderAgentPromptContent(brief);
1042
+ case "slack": return renderSlackBriefContent(brief);
1043
+ }
1044
+ }
1045
+ /**
1046
+ * Settle the estimate's own digit count before measuring the complete rendering.
1047
+ * Increasing from zero reaches a fixed point after at most the number of digits
1048
+ * in a JavaScript string length; disclosure can never create a silent overrun.
1049
+ */
1050
+ function measureRenderedBrief(brief, format) {
1051
+ const measured = { ...brief, budget: { ...brief.budget, estimatedTokens: 0 } };
1052
+ let estimate = Math.ceil(renderBriefContent(measured, format).length / 4);
1053
+ while (estimate !== measured.budget.estimatedTokens) {
1054
+ measured.budget.estimatedTokens = estimate;
1055
+ estimate = Math.ceil(renderBriefContent(measured, format).length / 4);
1056
+ }
1057
+ return measured;
1058
+ }
1059
+ const BRIEF_DISPLAY_FIELDS = new Set(["title", "whyNow", "reason", "message", "discarded", "detail", "root", "pmVersion", "assignee", "type", "status", "tags", "rankingReasons", "requiredContext"]);
1060
+ /**
1061
+ * Shorten display fields recursively, retaining identifiers, relationship IDs,
1062
+ * timestamps and executable commands verbatim. Display labels can shorten. The
1063
+ * whitelist avoids turning a truncated command or identity into misleading data.
1064
+ */
1065
+ function shortenBriefFields(value, cap, key = "") {
1066
+ if (typeof value === "string") {
1067
+ return BRIEF_DISPLAY_FIELDS.has(key) && value.length > cap ? `${value.slice(0, cap - 1)}…` : value;
1068
+ }
1069
+ if (Array.isArray(value))
1070
+ return value.map((entry) => shortenBriefFields(entry, cap, key));
1071
+ if (value !== null && typeof value === "object") {
1072
+ return Object.fromEntries(Object.entries(value).map(([field, entry]) => [field, shortenBriefFields(entry, cap, field)]));
1073
+ }
1074
+ return value;
1075
+ }
1076
+ /**
1077
+ * Enforce the chosen rendering in bounded steps: cap ancillary sections, shorten
1078
+ * display fields, then remove entries from the least urgent sections first.
1079
+ * Retained items keep their IDs; merge identity/warning sets remain complete.
1080
+ * Each step accounts for its receipt before testing the ceiling. Failure uses
1081
+ * the existing usage-error contract, with a minimum that also budgets recovery.
1082
+ */
1083
+ function compactToBudget(brief, format) {
1030
1084
  const budget = brief.budget.requestedTokens;
1031
- let estimated = estimateTokens(brief);
1032
- if (estimated <= budget)
1033
- return { ...brief, budget: { ...brief.budget, estimatedTokens: estimated, truncated: false } };
1034
- const next = {
1035
- ...brief,
1036
- insights: brief.insights?.slice(0, 4),
1037
- recommendedPmUpdates: brief.recommendedPmUpdates.slice(0, 5),
1038
- staleContext: brief.staleContext.slice(0, 5),
1039
- risks: brief.risks.slice(0, 8),
1040
- momentum: { ...brief.momentum, recent: brief.momentum.recent.slice(0, 3) },
1041
- recentActivity: brief.recentActivity?.slice(0, 8),
1042
- // Trim governance from the default caps (3/5/5/5) to the tight caps (2/3/3/3)
1043
- // at the first compaction step so it competes fairly with the other sections.
1044
- governance: brief.governance ? compactGovernance(brief.governance, 2, 3, 3, 3) : undefined,
1045
- };
1046
- estimated = estimateTokens(next);
1047
- if (estimated <= budget)
1048
- return { ...next, budget: { ...next.budget, estimatedTokens: estimated, truncated: true } };
1049
- const tighter = {
1050
- ...next,
1051
- insights: next.insights?.slice(0, 2),
1052
- next: next.next.slice(0, 3),
1053
- blockers: next.blockers.slice(0, 6),
1054
- focus: next.focus.slice(0, 3),
1055
- decisionsNeeded: next.decisionsNeeded.slice(0, 3),
1056
- momentum: { ...next.momentum, recent: next.momentum.recent.slice(0, 2) },
1057
- recentActivity: next.recentActivity?.slice(0, 5),
1058
- // At the tightest level, drop governance to 1/2/2/2 — the Total fields keep
1059
- // the real finding count visible so an agent still knows there is more.
1060
- governance: next.governance ? compactGovernance(next.governance, 1, 2, 2, 2) : undefined,
1085
+ if (!Number.isSafeInteger(budget) || budget < 1) {
1086
+ throw new CommandError("tokenBudget must be a positive safe integer", EXIT_CODE.USAGE);
1087
+ }
1088
+ let candidate = measureRenderedBrief(brief, format);
1089
+ if (candidate.budget.estimatedTokens <= budget)
1090
+ return candidate;
1091
+ const sections = ["insights", "recommendedPmUpdates", "recentActivity", "risks", "staleContext", "blockers", "decisionsNeeded", "focus", "next"];
1092
+ const counts = Object.fromEntries(sections.map((key) => [key, brief[key]?.length ?? 0]));
1093
+ counts.momentum = brief.momentum.recent.length;
1094
+ for (const key of Object.keys(counts))
1095
+ counts[key] += brief.omissions?.sections[key] ?? 0;
1096
+ if (brief.governance) {
1097
+ counts.duplicateClusters = brief.governance.duplicateClustersTotal;
1098
+ counts.staleInProgress = brief.governance.staleInProgressTotal;
1099
+ counts.storageFindings = brief.governance.storageFindingsTotal;
1100
+ counts.secretFindings = brief.governance.secretFindingsTotal;
1101
+ }
1102
+ if (brief.mergeDecisions)
1103
+ counts.mergeReceipts = brief.mergeDecisions.pendingCount;
1104
+ candidate = { ...candidate, budget: { ...candidate.budget, truncated: true }, omissions: {
1105
+ sections: {}, shortenedFields: brief.omissions?.shortenedFields ?? false,
1106
+ retrieve: "pm list --all; pm get <id>" + (brief.mergeDecisions ? "; pm merge report" : ""),
1107
+ } };
1108
+ /** Refresh counts from the original selection and include the receipt in the estimate. */
1109
+ const measure = () => {
1110
+ const remaining = Object.fromEntries(sections.map((key) => [key, candidate[key]?.length ?? 0]));
1111
+ remaining.momentum = candidate.momentum.recent.length;
1112
+ if (candidate.governance) {
1113
+ remaining.duplicateClusters = candidate.governance.duplicateClusters.length;
1114
+ remaining.staleInProgress = candidate.governance.staleInProgress.length;
1115
+ remaining.storageFindings = candidate.governance.storageFindings.length;
1116
+ remaining.secretFindings = candidate.governance.secretFindings.length;
1117
+ }
1118
+ if (candidate.mergeDecisions)
1119
+ remaining.mergeReceipts = candidate.mergeDecisions.receipts.length;
1120
+ candidate.omissions.sections = Object.fromEntries(Object.entries(counts)
1121
+ .map(([key, count]) => [key, count - remaining[key]])
1122
+ .filter(([, count]) => Number(count) > 0));
1123
+ candidate = measureRenderedBrief(candidate, format);
1124
+ return candidate;
1061
1125
  };
1062
- estimated = estimateTokens(tighter);
1063
- return { ...tighter, budget: { ...tighter.budget, estimatedTokens: estimated, truncated: true } };
1064
- }
1126
+ for (const cap of [8, 4, 2]) {
1127
+ candidate = { ...candidate,
1128
+ insights: candidate.insights?.slice(0, cap),
1129
+ recommendedPmUpdates: candidate.recommendedPmUpdates.slice(0, cap),
1130
+ staleContext: candidate.staleContext.slice(0, cap),
1131
+ risks: candidate.risks.slice(0, cap),
1132
+ blockers: candidate.blockers.slice(0, cap),
1133
+ momentum: { ...candidate.momentum, recent: candidate.momentum.recent.slice(0, cap) },
1134
+ recentActivity: candidate.recentActivity?.slice(0, cap),
1135
+ governance: candidate.governance ? compactGovernance(candidate.governance, cap, cap, cap, cap) : undefined,
1136
+ };
1137
+ if (measure().budget.estimatedTokens <= budget)
1138
+ return candidate;
1139
+ }
1140
+ for (const cap of [160, 80, 40, 20]) {
1141
+ const shortened = shortenBriefFields(candidate, cap);
1142
+ shortened.omissions.shortenedFields = candidate.omissions.shortenedFields || JSON.stringify(shortened) !== JSON.stringify(candidate);
1143
+ candidate = shortened;
1144
+ if (measure().budget.estimatedTokens <= budget)
1145
+ return candidate;
1146
+ }
1147
+ // Every selected array is now bounded except nextCount supplied by an API
1148
+ // caller. Halving it keeps the number of iterations logarithmic in that count.
1149
+ const dropOrder = ["insights", "recommendedPmUpdates", "recentActivity", "momentum", "risks", "staleContext", "governance", "mergeDecisions", "blockers", "decisionsNeeded", "focus", "next"];
1150
+ for (const section of dropOrder) {
1151
+ if (section === "momentum")
1152
+ candidate.momentum = { ...candidate.momentum, recent: [] };
1153
+ else if (section === "governance" && candidate.governance)
1154
+ candidate.governance = compactGovernance(candidate.governance, 0, 0, 0, 0);
1155
+ else if (section === "mergeDecisions" && candidate.mergeDecisions)
1156
+ candidate.mergeDecisions = { ...candidate.mergeDecisions, receipts: [] };
1157
+ else if (section !== "governance" && section !== "mergeDecisions") {
1158
+ let entries = candidate[section];
1159
+ const keep = section === "next" || (section === "focus" && brief.next.length === 0) ? 1 : 0;
1160
+ while (entries && entries.length > keep) {
1161
+ entries = entries.slice(0, Math.max(keep, Math.floor(entries.length / 2)));
1162
+ Object.assign(candidate, { [section]: entries });
1163
+ if (measure().budget.estimatedTokens <= budget)
1164
+ return candidate;
1165
+ }
1166
+ }
1167
+ if (measure().budget.estimatedTokens <= budget)
1168
+ return candidate;
1169
+ }
1170
+ // Account for the recovery budget's digit count as well as estimatedTokens.
1171
+ let minimum = candidate.budget.estimatedTokens;
1172
+ do {
1173
+ candidate.budget.requestedTokens = minimum;
1174
+ minimum = measure().budget.estimatedTokens;
1175
+ } while (minimum !== candidate.budget.requestedTokens);
1176
+ const recovery = format === "prompt"
1177
+ ? `pm brief prompt --max-tokens ${minimum}`
1178
+ : `pm brief --format ${format} --max-tokens ${minimum}`;
1179
+ throw new CommandError(`Brief cannot fit: minimum budget ${minimum} required; run ${recovery}`, EXIT_CODE.USAGE);
1180
+ }
1181
+ /** Build a ranked brief, enforcing the full chosen rendering or throwing a recoverable usage error. */
1065
1182
  export function buildBrief(items, options = {}) {
1066
1183
  const generatedAt = options.generatedAt ?? new Date().toISOString();
1067
1184
  const now = new Date(generatedAt);
@@ -1130,7 +1247,7 @@ export function buildBrief(items, options = {}) {
1130
1247
  insights,
1131
1248
  governance: governanceIsEmpty(options.governance) ? undefined : options.governance,
1132
1249
  mergeDecisions: mergeDecisionsIsEmpty(options.mergeDecisions) ? undefined : options.mergeDecisions,
1133
- });
1250
+ }, options.format ?? "json");
1134
1251
  }
1135
1252
  function escapeLine(value) {
1136
1253
  return String(value ?? "").replace(/\r?\n/g, " ").trim();
@@ -1327,6 +1444,7 @@ function mergeDecisionKeptPhrase(entry) {
1327
1444
  return "kept by latest document update";
1328
1445
  return entry.preferred === undefined ? "kept side unrecorded" : `kept ${entry.preferred}`;
1329
1446
  }
1447
+ /** Render pending receipt metadata and discarded values with explicit hidden-receipt totals. */
1330
1448
  function renderMergeDecisionsMarkdown(m) {
1331
1449
  if (mergeDecisionsIsEmpty(m))
1332
1450
  return [];
@@ -1383,6 +1501,7 @@ function mergeDecisionOmittedLines(m) {
1383
1501
  return [];
1384
1502
  return [`- \u26a0 ${omitted} further pending decision(s) not shown — run \`pm merge report\` for the full list`];
1385
1503
  }
1504
+ /** Render actionable merge warnings and retrieval hints for receipts omitted from an agent prompt. */
1386
1505
  function renderMergeDecisionsAgentPrompt(m) {
1387
1506
  if (mergeDecisionsIsEmpty(m))
1388
1507
  return [];
@@ -1408,7 +1527,23 @@ function mergeDecisionEntryText(entry) {
1408
1527
  function mergeMarker(item) {
1409
1528
  return item.mergeCompromised ? "\u26a0 merge " : "";
1410
1529
  }
1530
+ /** Render budget omissions consistently without implying dropped sections are complete. */
1531
+ function renderBriefOmissions(brief) {
1532
+ if (!brief.omissions)
1533
+ return [];
1534
+ const counts = Object.entries(brief.omissions.sections).map(([section, count]) => `${section}=${count}`).join(", ");
1535
+ return [
1536
+ `Omitted section entries: ${counts || "0"}.${brief.omissions.shortenedFields ? " Display fields shortened (…)." : ""}`,
1537
+ `Retrieve full context: ${brief.omissions.retrieve}`,
1538
+ "",
1539
+ ];
1540
+ }
1541
+ /** Render the markdown brief, rechecking its ceiling when the format or input changes. */
1411
1542
  export function renderMarkdownBrief(brief) {
1543
+ return renderBrief(brief, "markdown");
1544
+ }
1545
+ /** Assemble the markdown sections and disclosure for the budget measurement pass. */
1546
+ function renderMarkdownBriefContent(brief) {
1412
1547
  const lines = [
1413
1548
  "# pm brief",
1414
1549
  "",
@@ -1490,9 +1625,15 @@ export function renderMarkdownBrief(brief) {
1490
1625
  for (const update of brief.recommendedPmUpdates)
1491
1626
  lines.push(`- ${update.itemId}: \`${update.command}\` - ${update.reason}`);
1492
1627
  lines.push("");
1628
+ lines.push(...renderBriefOmissions(brief));
1493
1629
  return `${lines.join("\n")}\n`;
1494
1630
  }
1631
+ /** Render the slack brief, rechecking its ceiling when the format or input changes. */
1495
1632
  export function renderSlackBrief(brief) {
1633
+ return renderBrief(brief, "slack");
1634
+ }
1635
+ /** Assemble the slack sections and disclosure for the budget measurement pass. */
1636
+ function renderSlackBriefContent(brief) {
1496
1637
  const header = `*pm brief* — ${brief.generatedAt}`;
1497
1638
  const meta = `_${brief.workspace.root} | pm ${brief.workspace.pmVersion} | items ${brief.workspace.itemCount}_ (budget ${brief.budget.requestedTokens} ≈ ${brief.budget.estimatedTokens}${brief.budget.truncated ? ", trimmed" : ""})`;
1498
1639
  const lines = [header, meta, ""];
@@ -1569,9 +1710,15 @@ export function renderSlackBrief(brief) {
1569
1710
  for (const update of brief.recommendedPmUpdates)
1570
1711
  lines.push(`• \`${update.itemId}\` \`${update.command}\` — ${update.reason}`);
1571
1712
  lines.push("");
1713
+ lines.push(...renderBriefOmissions(brief));
1572
1714
  return `${lines.join("\n")}\n`;
1573
1715
  }
1716
+ /** Render the prompt brief, rechecking its ceiling when the format or input changes. */
1574
1717
  export function renderAgentPrompt(brief) {
1718
+ return renderBrief(brief, "prompt");
1719
+ }
1720
+ /** Assemble the prompt sections and disclosure for the budget measurement pass. */
1721
+ function renderAgentPromptContent(brief) {
1575
1722
  const lines = [
1576
1723
  "You are continuing work in a pm-managed project.",
1577
1724
  "",
@@ -1640,6 +1787,7 @@ export function renderAgentPrompt(brief) {
1640
1787
  lines.push("- Do not assume context outside pm items and linked files.");
1641
1788
  lines.push("- Prefer the highest-ranked unblocked prerequisite before dependent work.");
1642
1789
  lines.push("- Record meaningful decisions, tests, and blockers in pm before handing off.");
1790
+ lines.push(...renderBriefOmissions(brief));
1643
1791
  return `${lines.join("\n")}\n`;
1644
1792
  }
1645
1793
  /**
@@ -1876,6 +2024,7 @@ export function parseNextOrderedIdsOutput(output) {
1876
2024
  }
1877
2025
  return uniqueStrings(ordered);
1878
2026
  }
2027
+ /** Read bounded activity from the canonical CLI, degrading unavailable history to an empty section. */
1879
2028
  export function readRecentActivity(pmRoot, limit = 10) {
1880
2029
  const safeLimit = Math.max(1, Math.min(limit, 100));
1881
2030
  const result = spawnPm([PM_PATH_OPTION, pmRoot, "activity", "--json", "--compact", "--limit", String(safeLimit)]);
@@ -3710,6 +3859,7 @@ function registerCommands(api) {
3710
3859
  // ok: true and never mentions receipts (unbraind/pm-cli#770).
3711
3860
  const mergeDecisions = await collectPendingMergeDecisions(ctx.pm_root);
3712
3861
  const brief = buildBrief(items, {
3862
+ format,
3713
3863
  tokenBudget: readInt(options, ["token-budget", "tokenBudget", "max-tokens", "maxTokens"], 4000),
3714
3864
  dependencyOrder: briefDependencyOrder,
3715
3865
  focusIds,
@@ -3730,7 +3880,7 @@ function registerCommands(api) {
3730
3880
  // Skipped under `--dependency-order` so the explicit prerequisite-first sort wins.
3731
3881
  nextOrder: briefDependencyOrder ? undefined : readNextOrderedIds(ctx.pm_root, { limit: 200, assignee: readString(options, "assignee") }),
3732
3882
  });
3733
- const output = format === "json" ? `${JSON.stringify(brief, null, 2)}\n` : format === "slack" ? renderSlackBrief(brief) : renderMarkdownBrief(brief);
3883
+ const output = renderBrief(brief, format);
3734
3884
  const outputPath = readString(options, "output");
3735
3885
  if (outputPath) {
3736
3886
  writeFileSync(outputPath, output, "utf-8");
@@ -3761,6 +3911,7 @@ function registerCommands(api) {
3761
3911
  });
3762
3912
  const mergeDecisions = await collectPendingMergeDecisions(ctx.pm_root);
3763
3913
  const brief = buildBrief(items, {
3914
+ format: "prompt",
3764
3915
  tokenBudget: readInt(options, ["token-budget", "tokenBudget", "max-tokens", "maxTokens"], 2500),
3765
3916
  dependencyOrder: readBool(options, "dependency-order", "dependencyOrder"),
3766
3917
  focusIds,
@@ -4269,7 +4420,7 @@ function classifyPaths(paths, pmRootRel, historyIds, toonIds) {
4269
4420
  }
4270
4421
  export default defineExtension({
4271
4422
  name: "pm-brief",
4272
- version: "2026.9.26",
4423
+ version: "2026.10.8",
4273
4424
  description: "Token-budgeted agent briefs and next-work plans for pm workspaces",
4274
4425
  activate(api) {
4275
4426
  registerCommands(api);