@spinabot/brigade 1.19.2 → 1.19.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/agents/agent-loop.d.ts.map +1 -1
  2. package/dist/agents/agent-loop.js +12 -1
  3. package/dist/agents/agent-loop.js.map +1 -1
  4. package/dist/agents/content-quality-retry.d.ts.map +1 -1
  5. package/dist/agents/content-quality-retry.js +22 -3
  6. package/dist/agents/content-quality-retry.js.map +1 -1
  7. package/dist/agents/memory/extract.d.ts.map +1 -1
  8. package/dist/agents/memory/extract.js +44 -2
  9. package/dist/agents/memory/extract.js.map +1 -1
  10. package/dist/agents/payload-mutators.d.ts +21 -0
  11. package/dist/agents/payload-mutators.d.ts.map +1 -1
  12. package/dist/agents/payload-mutators.js +58 -0
  13. package/dist/agents/payload-mutators.js.map +1 -1
  14. package/dist/agents/tool-name-repair.d.ts +28 -0
  15. package/dist/agents/tool-name-repair.d.ts.map +1 -0
  16. package/dist/agents/tool-name-repair.js +168 -0
  17. package/dist/agents/tool-name-repair.js.map +1 -0
  18. package/dist/buildstamp.json +1 -1
  19. package/dist/cli/commands/connect.d.ts.map +1 -1
  20. package/dist/cli/commands/connect.js +61 -24
  21. package/dist/cli/commands/connect.js.map +1 -1
  22. package/dist/cli/commands/update.d.ts +6 -0
  23. package/dist/cli/commands/update.d.ts.map +1 -1
  24. package/dist/cli/commands/update.js +124 -9
  25. package/dist/cli/commands/update.js.map +1 -1
  26. package/dist/cli/program/build-program.d.ts.map +1 -1
  27. package/dist/cli/program/build-program.js +5 -1
  28. package/dist/cli/program/build-program.js.map +1 -1
  29. package/dist/core/server.js +24 -5
  30. package/dist/core/server.js.map +1 -1
  31. package/dist/integrations/ollama.d.ts +23 -3
  32. package/dist/integrations/ollama.d.ts.map +1 -1
  33. package/dist/integrations/ollama.js +74 -10
  34. package/dist/integrations/ollama.js.map +1 -1
  35. package/dist/shared/reasoning-tags.d.ts +14 -0
  36. package/dist/shared/reasoning-tags.d.ts.map +1 -0
  37. package/dist/shared/reasoning-tags.js +71 -0
  38. package/dist/shared/reasoning-tags.js.map +1 -0
  39. package/dist/system-prompt/guidance.d.ts.map +1 -1
  40. package/dist/system-prompt/guidance.js +9 -2
  41. package/dist/system-prompt/guidance.js.map +1 -1
  42. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"payload-mutators.d.ts","sourceRoot":"","sources":["../../src/agents/payload-mutators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payload-mutators.d.ts","sourceRoot":"","sources":["../../src/agents/payload-mutators.ts"],"names":[],"mappings":"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"}
@@ -927,6 +927,63 @@ export function isMinimaxAnthropicModel(model) {
927
927
  const provider = (model.provider ?? "").toLowerCase();
928
928
  return provider === "minimax" || provider === "minimax-portal";
929
929
  }
930
+ /* ─────────────────────────── 9. Ollama context-window (num_ctx) ─────────────────────────── */
931
+ /** Whether the active model is served by a local Ollama daemon. */
932
+ export function isOllamaModel(model) {
933
+ if (!model)
934
+ return false;
935
+ const provider = (model.provider ?? "").toLowerCase();
936
+ if (provider === "ollama")
937
+ return true;
938
+ // Fallback: any openai-completions model pointed at Ollama's default port.
939
+ const baseUrl = model.baseUrl;
940
+ return typeof baseUrl === "string" && /:11434(?:\/|$)/.test(baseUrl);
941
+ }
942
+ /**
943
+ * Resolve the num_ctx to inject: `BRIGADE_OLLAMA_NUM_CTX` env override wins,
944
+ * else the model's own context window (models.json, seeded from `/api/show`).
945
+ * Returns undefined when nothing usable is known (leave Ollama's default).
946
+ */
947
+ export function resolveOllamaNumCtx(model) {
948
+ const envRaw = process.env.BRIGADE_OLLAMA_NUM_CTX;
949
+ if (envRaw) {
950
+ const n = Number.parseInt(envRaw, 10);
951
+ if (Number.isFinite(n) && n > 0)
952
+ return n;
953
+ }
954
+ const ctx = model.contextWindow;
955
+ if (typeof ctx === "number" && Number.isFinite(ctx) && ctx > 0)
956
+ return Math.floor(ctx);
957
+ return undefined;
958
+ }
959
+ /**
960
+ * Inject `options.num_ctx` for Ollama requests.
961
+ *
962
+ * Ollama's OpenAI-compatible endpoint defaults num_ctx to ~2048–4096 and
963
+ * SILENTLY truncates anything longer. That shreds Brigade's large system prompt
964
+ * (identity / tool guidance gets cut → the model leaks its base-model identity),
965
+ * cuts replies off mid-stream, and degrades tool discipline. Pi never sets
966
+ * num_ctx, so we set it from the model's real context window. Ollama clamps the
967
+ * value down to the model's true maximum, so an over-estimate is safe (it can
968
+ * only ever raise the ceiling above the tiny default, never below it). Never
969
+ * overrides an explicit caller/model value.
970
+ */
971
+ export function injectOllamaNumCtx(payload, model) {
972
+ if (!isOllamaModel(model))
973
+ return;
974
+ if (!payload || typeof payload !== "object")
975
+ return;
976
+ const ctx = resolveOllamaNumCtx(model);
977
+ if (!ctx)
978
+ return;
979
+ const p = payload;
980
+ const options = p.options && typeof p.options === "object"
981
+ ? p.options
982
+ : (p.options = {});
983
+ if (typeof options.num_ctx === "number" && options.num_ctx > 0)
984
+ return;
985
+ options.num_ctx = ctx;
986
+ }
930
987
  /* ─────────────────────────── composition ─────────────────────────── */
931
988
  /**
932
989
  * Run every applicable mutator against the payload. Each mutator self-gates
@@ -950,6 +1007,7 @@ export function applyAllPayloadMutations(payload, model) {
950
1007
  sanitizeGeminiThinkingPayload(payload, model);
951
1008
  normalizeSiliconFlowThinking(payload, model);
952
1009
  disableMinimaxThinking(payload, model);
1010
+ injectOllamaNumCtx(payload, model);
953
1011
  }
954
1012
  /**
955
1013
  * Wrap `session.agent.streamFn` so every request gets `applyAllPayloadMutations`
@@ -1 +1 @@
1
- {"version":3,"file":"payload-mutators.js","sourceRoot":"","sources":["../../src/agents/payload-mutators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payload-mutators.js","sourceRoot":"","sources":["../../src/agents/payload-mutators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { BrigadeStreamFn } from "./stream-wrappers.js";
2
+ export interface ResolvedToolName {
3
+ /** The real registered tool name to dispatch. */
4
+ name: string;
5
+ /** When the raw name was a multiplexed-tool ACTION value, the action to inject into args. */
6
+ action?: string;
7
+ }
8
+ /**
9
+ * Resolve a model-emitted tool name to a REAL registered tool. Returns null
10
+ * when no change is needed (already valid) or nothing plausibly matches (leave
11
+ * it for Pi to reject). Order: exact → trim → case-insensitive-unique → static
12
+ * alias → browser-action-value → segmented/prefixed name.
13
+ */
14
+ export declare function resolveToolName(rawName: unknown, allowed: ReadonlySet<string>): ResolvedToolName | null;
15
+ /** Rewrite one `toolCall` content block; returns null when unchanged. */
16
+ export declare function rewriteToolCallBlock(block: unknown, allowed: ReadonlySet<string>): unknown | null;
17
+ /** Rewrite every `toolCall` block in an assistant message. Same ref if unchanged. */
18
+ export declare function rewriteMessageToolNames<M>(message: M, allowed: ReadonlySet<string>): M;
19
+ /**
20
+ * Wrap Pi's streamFn to reconcile misnamed tool calls against the live
21
+ * allowed-tool set — rewriting the name on BOTH the final assistant message
22
+ * (`.result()`, which Pi dispatches from) and the streamed toolcall events (so
23
+ * the TUI shows the corrected name). `getAllowedNames` is read per call so
24
+ * per-turn tool changes are honoured. Composes on top of Pi's auth-aware
25
+ * streamFn — never replaces it.
26
+ */
27
+ export declare function wrapStreamFnWithToolNameRepair<F extends BrigadeStreamFn>(base: F, getAllowedNames: () => Iterable<string> | undefined): F;
28
+ //# sourceMappingURL=tool-name-repair.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-name-repair.d.ts","sourceRoot":"","sources":["../../src/agents/tool-name-repair.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAa5D,MAAM,WAAW,gBAAgB;IAChC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAuCvG;AASD,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAejG;AAED,qFAAqF;AACrF,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAatF;AAqCD;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,eAAe,EACvE,IAAI,EAAE,CAAC,EACP,eAAe,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,GACjD,CAAC,CAgBH"}
@@ -0,0 +1,168 @@
1
+ // Tool-name reconciliation for misnamed tool calls.
2
+ //
3
+ // Pi's agent-loop dispatches tool calls by EXACT string match
4
+ // (`tools.find(t => t.name === toolCall.name)`) and, on a miss, hard-returns a
5
+ // `Tool <name> not found` error tool-result BEFORE any Brigade guard / hook can
6
+ // run. Weak local models (Ollama forks) routinely misname a call:
7
+ // • wrong case / stray whitespace (`Browser`, `" read "`),
8
+ // • a provider/namespace prefix (`functions.browser`, `browser.navigate`),
9
+ // • — most commonly — the `browser` tool's `action` DISCRIMINATOR used AS the
10
+ // tool name: it emits a tool literally named `action` (with
11
+ // `{action:"navigate", url}`), or names the tool after an action VALUE like
12
+ // `navigate`. There is no tool called `action`/`navigate`, so dispatch
13
+ // fails and the turn stalls.
14
+ //
15
+ // This module reconciles the emitted name against the LIVE allowed-tool set and
16
+ // rewrites it (on both the streamed events and the final assistant message Pi
17
+ // dispatches from) so a recoverable call lands instead of erroring. Nothing is
18
+ // invented: if no real tool plausibly matches, the name is left for Pi to
19
+ // reject as before.
20
+ import { BROWSER_ACTIONS } from "./tools/browser.js";
21
+ const BROWSER_ACTION_SET = new Set(BROWSER_ACTIONS.map((a) => a.toLowerCase()));
22
+ // Unknown-name → real-tool aliases. Seeded from the observed failure: the
23
+ // browser tool multiplexes on an `action` param, and models mistake that
24
+ // discriminator (or the verbs "browse"/"web") for the tool name.
25
+ const STATIC_ALIASES = {
26
+ action: "browser",
27
+ browse: "browser",
28
+ web: "browser",
29
+ };
30
+ /**
31
+ * Resolve a model-emitted tool name to a REAL registered tool. Returns null
32
+ * when no change is needed (already valid) or nothing plausibly matches (leave
33
+ * it for Pi to reject). Order: exact → trim → case-insensitive-unique → static
34
+ * alias → browser-action-value → segmented/prefixed name.
35
+ */
36
+ export function resolveToolName(rawName, allowed) {
37
+ if (typeof rawName !== "string" || rawName.length === 0)
38
+ return null;
39
+ if (allowed.has(rawName))
40
+ return null; // already a valid tool name
41
+ const trimmed = rawName.trim();
42
+ if (trimmed !== rawName && allowed.has(trimmed))
43
+ return { name: trimmed };
44
+ const lower = trimmed.toLowerCase();
45
+ // Case-insensitive UNIQUE match (`Browser`/`READ` → the real name).
46
+ const ciMatches = [...allowed].filter((n) => n.toLowerCase() === lower);
47
+ if (ciMatches.length === 1)
48
+ return { name: ciMatches[0] };
49
+ // Static alias (action/browse/web → browser).
50
+ const alias = STATIC_ALIASES[lower];
51
+ if (alias && allowed.has(alias))
52
+ return { name: alias };
53
+ // A browser ACTION value used as the tool name (navigate/click/…) → route to
54
+ // `browser` and carry the action along.
55
+ if (BROWSER_ACTION_SET.has(lower) && allowed.has("browser")) {
56
+ return { name: "browser", action: lower };
57
+ }
58
+ // Provider-prefixed / segmented name: `functions.browser`, `browser.navigate`.
59
+ const segments = trimmed.split(/[.:/]+/).filter(Boolean);
60
+ if (segments.length > 1) {
61
+ for (const seg of segments) {
62
+ if (allowed.has(seg))
63
+ return { name: seg };
64
+ const s = seg.toLowerCase();
65
+ if (allowed.has(s))
66
+ return { name: s };
67
+ }
68
+ for (const seg of segments) {
69
+ if (BROWSER_ACTION_SET.has(seg.toLowerCase()) && allowed.has("browser")) {
70
+ return { name: "browser", action: seg.toLowerCase() };
71
+ }
72
+ }
73
+ }
74
+ return null;
75
+ }
76
+ /** Rewrite one `toolCall` content block; returns null when unchanged. */
77
+ export function rewriteToolCallBlock(block, allowed) {
78
+ if (!block || typeof block !== "object")
79
+ return null;
80
+ const b = block;
81
+ if (b.type !== "toolCall" || typeof b.name !== "string")
82
+ return null;
83
+ const res = resolveToolName(b.name, allowed);
84
+ if (!res)
85
+ return null;
86
+ let args = b.arguments;
87
+ if (res.action) {
88
+ const obj = args && typeof args === "object" && !Array.isArray(args)
89
+ ? args
90
+ : {};
91
+ if (obj.action === undefined)
92
+ args = { ...obj, action: res.action };
93
+ }
94
+ return { ...b, name: res.name, arguments: args };
95
+ }
96
+ /** Rewrite every `toolCall` block in an assistant message. Same ref if unchanged. */
97
+ export function rewriteMessageToolNames(message, allowed) {
98
+ const m = message;
99
+ if (!m || !Array.isArray(m.content))
100
+ return message;
101
+ let changed = false;
102
+ const content = m.content.map((block) => {
103
+ const rewritten = rewriteToolCallBlock(block, allowed);
104
+ if (rewritten) {
105
+ changed = true;
106
+ return rewritten;
107
+ }
108
+ return block;
109
+ });
110
+ return changed ? { ...m, content } : message;
111
+ }
112
+ function isEventStreamLike(v) {
113
+ if (!v || (typeof v !== "object" && typeof v !== "function"))
114
+ return false;
115
+ const s = v;
116
+ return typeof s[Symbol.asyncIterator] === "function" && typeof s.result === "function";
117
+ }
118
+ function rewriteEventToolNames(ev, allowed) {
119
+ if (!ev || typeof ev !== "object")
120
+ return ev;
121
+ const e = ev;
122
+ let next = ev;
123
+ if (e.type === "toolcall_end" && e.toolCall) {
124
+ const rewritten = rewriteToolCallBlock(e.toolCall, allowed);
125
+ if (rewritten)
126
+ next = { ...next, toolCall: rewritten };
127
+ }
128
+ if (e.partial && typeof e.partial === "object") {
129
+ const rewrittenPartial = rewriteMessageToolNames(e.partial, allowed);
130
+ if (rewrittenPartial !== e.partial)
131
+ next = { ...next, partial: rewrittenPartial };
132
+ }
133
+ return next;
134
+ }
135
+ async function* toolNameIterator(inner, allowed) {
136
+ for await (const ev of inner) {
137
+ yield rewriteEventToolNames(ev, allowed);
138
+ }
139
+ }
140
+ /**
141
+ * Wrap Pi's streamFn to reconcile misnamed tool calls against the live
142
+ * allowed-tool set — rewriting the name on BOTH the final assistant message
143
+ * (`.result()`, which Pi dispatches from) and the streamed toolcall events (so
144
+ * the TUI shows the corrected name). `getAllowedNames` is read per call so
145
+ * per-turn tool changes are honoured. Composes on top of Pi's auth-aware
146
+ * streamFn — never replaces it.
147
+ */
148
+ export function wrapStreamFnWithToolNameRepair(base, getAllowedNames) {
149
+ const wrapped = async function (...args) {
150
+ const stream = await Promise.resolve(base.apply(this, args));
151
+ if (!isEventStreamLike(stream))
152
+ return stream;
153
+ const allowed = new Set();
154
+ for (const n of getAllowedNames() ?? []) {
155
+ if (typeof n === "string" && n)
156
+ allowed.add(n);
157
+ }
158
+ if (allowed.size === 0)
159
+ return stream;
160
+ const inner = stream;
161
+ return {
162
+ [Symbol.asyncIterator]: () => toolNameIterator(inner, allowed),
163
+ result: async () => rewriteMessageToolNames(await inner.result(), allowed),
164
+ };
165
+ };
166
+ return wrapped;
167
+ }
168
+ //# sourceMappingURL=tool-name-repair.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-name-repair.js","sourceRoot":"","sources":["../../src/agents/tool-name-repair.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"builtAt":1782839702100,"head":"bf0cf11c33cd966aa90ba86cba22e25101140246","version":"1.19.2"}
1
+ {"builtAt":1782962734040,"head":"a8a51b2e7aa32a458a07608f6109176c9174587f","version":"1.19.4"}
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAMN,GAAG,EACH,MAAM,wBAAwB,CAAC;AAgBhC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAuBpD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,WAAW,EAAE,OAAO,GAAG,IAAI,CAejF;AAED,MAAM,WAAW,qBAAqB;IACrC,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC7B,iFAAiF;IACjF,KAAK,IAAI,OAAO,CAAC;IACjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACtC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAGT;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,GAAE,qBAA0B,GAAG,OAAO,CAAC,aAAa,CAAC,CAsHhG;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAClC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC,CAo7ExB"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/connect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAMN,GAAG,EACH,MAAM,wBAAwB,CAAC;AAiBhC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAuBpD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,WAAW,EAAE,OAAO,GAAG,IAAI,CAejF;AAED,MAAM,WAAW,qBAAqB;IACrC,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC7B,iFAAiF;IACjF,KAAK,IAAI,OAAO,CAAC;IACjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACtC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAGT;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,GAAE,qBAA0B,GAAG,OAAO,CAAC,aAAa,CAAC,CAsHhG;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAClC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,aAAa,EACrB,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC,CAm+ExB"}
@@ -24,6 +24,7 @@ import { CancellableLoader, CombinedAutocompleteProvider, ProcessTerminal, Text,
24
24
  import { BrigadeEditor } from "../../ui/editor.js";
25
25
  import { PROVIDERS, findProvider } from "../../providers/catalog.js";
26
26
  import { sanitizeTerminalInput } from "../../security/terminal-input-sanitizer.js";
27
+ import { splitReasoning } from "../../shared/reasoning-tags.js";
27
28
  import chalk from "chalk";
28
29
  // Brigade's `Markdown` is a thin Pi-TUI subclass that normalizes `_text_`
29
30
  // italic spans to `*text*` so the renderer applies italic styling instead
@@ -580,8 +581,8 @@ export async function wireConnectUi(tui, client, initialAgentId) {
580
581
  },
581
582
  {
582
583
  name: "model",
583
- description: "switch to another configured model (no arg = picker)",
584
- argumentHint: "[<model-id>]",
584
+ description: "switch model (no arg = current provider's models · --all = every provider)",
585
+ argumentHint: "[<model-id>|--all]",
585
586
  },
586
587
  {
587
588
  name: "provider",
@@ -762,16 +763,16 @@ export async function wireConnectUi(tui, client, initialAgentId) {
762
763
  continue;
763
764
  }
764
765
  if (b.type === "text" && typeof b.text === "string") {
765
- const inlineThinking = [];
766
- const stripped = b.text.replace(/<think>([\s\S]*?)<\/think>\s*/g, (_m, inner) => {
767
- const t = inner.trim();
768
- if (t)
769
- inlineThinking.push(t);
770
- return "";
771
- });
772
- thinkingParts.push(...inlineThinking);
773
- if (stripped.trim())
774
- contentParts.push(stripped);
766
+ // Local models (e.g. Ollama reasoning forks) emit <think>/<thinking>/
767
+ // <thought>/<final> INLINE as text rather than as typed thinking
768
+ // blocks. Split reasoning out via the shared util so the raw tags
769
+ // never leak into the transcript and /show-thinking can still surface
770
+ // the trace.
771
+ const { visible, reasoning } = splitReasoning(b.text);
772
+ if (reasoning)
773
+ thinkingParts.push(reasoning);
774
+ if (visible.trim())
775
+ contentParts.push(visible);
775
776
  }
776
777
  }
777
778
  const thinkingText = thinkingParts.join("\n").trim();
@@ -795,16 +796,24 @@ export async function wireConnectUi(tui, client, initialAgentId) {
795
796
  // `extractUserText`, `joinToolResultText`, `clipOneLine` are imported from
796
797
  // `connect-transcript.js` (pure + unit-tested).
797
798
  /** Remove the rendered transcript (everything between the header+divider
798
- * chrome at indices 0/1 and the editor); the editor + trailing chrome stay.
799
- * Resets the streaming maps so the rebuild starts clean. */
799
+ * chrome and the editor); the editor + trailing chrome stay. Resets the
800
+ * streaming maps so the rebuild starts clean.
801
+ *
802
+ * The header chrome is NOT a fixed 0/1 pair: `renderBrandHeader` prepends
803
+ * padTop + splash block + padBottom (3 children) and only THEN does connect
804
+ * add the status `header` line and the `divider`. Anchor on the divider's
805
+ * live index so the splash + status line + divider always survive a clear
806
+ * (a hardcoded `slice(2, …)` deleted the status line and divider, leaving
807
+ * the splash butting straight into the conversation with no separator). */
800
808
  const clearTranscriptRegion = () => {
801
809
  const children = tui.children;
802
810
  const editorIdx = children.indexOf(editor);
803
- if (editorIdx <= 2) {
804
- // Nothing rendered between the chrome and the editor yet.
805
- }
806
- else {
807
- for (const c of children.slice(2, editorIdx))
811
+ const dividerIdx = children.indexOf(divider);
812
+ // Start clearing just past the divider (the last chrome element). Fall
813
+ // back to index 2 only if the divider somehow isn't in the tree.
814
+ const start = dividerIdx >= 0 ? dividerIdx + 1 : 2;
815
+ if (editorIdx > start) {
816
+ for (const c of children.slice(start, editorIdx))
808
817
  removeChild(c);
809
818
  }
810
819
  activeAssistants.clear();
@@ -2190,11 +2199,39 @@ export async function wireConnectUi(tui, client, initialAgentId) {
2190
2199
  return;
2191
2200
  }
2192
2201
  const arg = trimmed === "/model" ? "" : trimmed.slice("/model ".length).trim();
2193
- if (!arg) {
2194
- const list = models
2195
- .map((m) => ` ${brand.dim(m.provider)} ${brand.white(m.id)}`)
2196
- .join("\n");
2197
- insertBeforeEditor(new Markdown(`${brand.dim("configured models on the gateway:")}\n${list}\n\n${brand.dim("usage: /model <id>")}`, 1, 0, markdownTheme));
2202
+ const wantAllModels = arg === "--all" || arg === "-a";
2203
+ if (!arg || wantAllModels) {
2204
+ const current = lastSnapshot?.provider;
2205
+ const byProvider = new Map();
2206
+ for (const m of models) {
2207
+ const arr = byProvider.get(m.provider) ?? [];
2208
+ arr.push(m);
2209
+ byProvider.set(m.provider, arr);
2210
+ }
2211
+ // DEFAULT: show ONLY the current provider and its FULL model list —
2212
+ // that's what you switch within day to day. No cap, no other
2213
+ // providers. `/model --all` lists every provider.
2214
+ if (!wantAllModels && current && byProvider.has(current)) {
2215
+ const rows = byProvider.get(current) ?? [];
2216
+ const body = rows.map((m) => ` ${brand.white(m.id)}`).join("\n");
2217
+ const others = [...byProvider.keys()].filter((p) => p !== current);
2218
+ const otherCount = others.reduce((n, p) => n + (byProvider.get(p)?.length ?? 0), 0);
2219
+ const footer = otherCount > 0
2220
+ ? `\n\n${brand.dim(`${otherCount} model${otherCount === 1 ? "" : "s"} on ${others.length} other provider${others.length === 1 ? "" : "s"} — /model --all to list · /provider to switch`)}`
2221
+ : "";
2222
+ insertBeforeEditor(new Markdown(`${brand.amber(current)} ${brand.dim(`(current) · ${rows.length} model${rows.length === 1 ? "" : "s"}`)}\n${body}${footer}\n\n${brand.dim("usage: /model <id>")}`, 1, 0, markdownTheme));
2223
+ return;
2224
+ }
2225
+ // `--all` (or no current provider resolved yet): every provider, the
2226
+ // current one first, full lists.
2227
+ const order = [...byProvider.keys()].sort((a, b) => a === current ? -1 : b === current ? 1 : a.localeCompare(b));
2228
+ const sections = order.map((prov) => {
2229
+ const rows = byProvider.get(prov) ?? [];
2230
+ const head = prov === current ? `${brand.amber(prov)} ${brand.dim("(current)")}` : brand.dim(prov);
2231
+ const body = rows.map((m) => ` ${brand.white(m.id)}`).join("\n");
2232
+ return `${head}\n${body}`;
2233
+ });
2234
+ insertBeforeEditor(new Markdown(`${brand.dim("all configured models:")}\n\n${sections.join("\n\n")}\n\n${brand.dim("usage: /model <id>")}`, 1, 0, markdownTheme));
2198
2235
  return;
2199
2236
  }
2200
2237
  // Prefer current provider on tie.