zidane 5.1.13 → 5.1.15

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 (65) hide show
  1. package/dist/{agent-skiQGYs2.d.ts → agent-a-mteIEP.d.ts} +19 -4
  2. package/dist/agent-a-mteIEP.d.ts.map +1 -0
  3. package/dist/chat.d.ts +172 -7
  4. package/dist/chat.d.ts.map +1 -1
  5. package/dist/chat.js +2 -2
  6. package/dist/{errors-D1lhd6mX.js → errors-COmsomd5.js} +13 -3
  7. package/dist/{errors-D1lhd6mX.js.map → errors-COmsomd5.js.map} +1 -1
  8. package/dist/{index-YM7SipFz.d.ts → index-CsdPEjlu.d.ts} +2 -2
  9. package/dist/{index-YM7SipFz.d.ts.map → index-CsdPEjlu.d.ts.map} +1 -1
  10. package/dist/{index-CjPh6CRE.d.ts → index-D5gCRi42.d.ts} +2 -2
  11. package/dist/{index-CjPh6CRE.d.ts.map → index-D5gCRi42.d.ts.map} +1 -1
  12. package/dist/index.d.ts +3 -3
  13. package/dist/index.js +10 -10
  14. package/dist/{interpolate-BI6ovwag.js → interpolate-BhmHKD6x.js} +3 -4
  15. package/dist/{interpolate-BI6ovwag.js.map → interpolate-BhmHKD6x.js.map} +1 -1
  16. package/dist/{login-Cc6Q-Fpu.js → login-DrnEZZVv.js} +4 -4
  17. package/dist/{login-Cc6Q-Fpu.js.map → login-DrnEZZVv.js.map} +1 -1
  18. package/dist/{mcp-CUt-N8zn.js → mcp-B1psg7jf.js} +4 -4
  19. package/dist/mcp-B1psg7jf.js.map +1 -0
  20. package/dist/mcp.d.ts +1 -1
  21. package/dist/mcp.js +1 -1
  22. package/dist/{messages-CIkO_aCH.js → messages-DsbMYNmt.js} +26 -34
  23. package/dist/messages-DsbMYNmt.js.map +1 -0
  24. package/dist/{presets-Ce79MK4J.js → presets-H8UYtz3b.js} +2 -2
  25. package/dist/{presets-Ce79MK4J.js.map → presets-H8UYtz3b.js.map} +1 -1
  26. package/dist/presets.d.ts +2 -2
  27. package/dist/presets.js +1 -1
  28. package/dist/{providers-CvriFHFU.js → providers-v1Rn2rqG.js} +40 -14
  29. package/dist/providers-v1Rn2rqG.js.map +1 -0
  30. package/dist/providers.d.ts +1 -1
  31. package/dist/providers.js +2 -2
  32. package/dist/session/sqlite.d.ts +1 -1
  33. package/dist/session/sqlite.d.ts.map +1 -1
  34. package/dist/session/sqlite.js +2 -2
  35. package/dist/session/sqlite.js.map +1 -1
  36. package/dist/{session-DtLD1Sl1.js → session-DOJgRXvF.js} +2 -2
  37. package/dist/{session-DtLD1Sl1.js.map → session-DOJgRXvF.js.map} +1 -1
  38. package/dist/session.d.ts +1 -1
  39. package/dist/session.js +2 -2
  40. package/dist/skills.d.ts +2 -2
  41. package/dist/skills.js +1 -1
  42. package/dist/{tools-BG2wMa3X.js → tools-Duptt9yy.js} +16 -20
  43. package/dist/tools-Duptt9yy.js.map +1 -0
  44. package/dist/tools.d.ts +2 -2
  45. package/dist/tools.js +1 -1
  46. package/dist/{tool-formatters-0aOMYbH-.d.ts → transcript-anchors-YFom211q.d.ts} +242 -97
  47. package/dist/transcript-anchors-YFom211q.d.ts.map +1 -0
  48. package/dist/tui.d.ts +55 -39
  49. package/dist/tui.d.ts.map +1 -1
  50. package/dist/tui.js +347 -326
  51. package/dist/tui.js.map +1 -1
  52. package/dist/{turn-operations-CDmQ2h-T.js → turn-operations-DNKpDGQi.js} +600 -158
  53. package/dist/turn-operations-DNKpDGQi.js.map +1 -0
  54. package/dist/{types-Bx_F8jet.js → types-IcokUOyC.js} +11 -4
  55. package/dist/{types-Bx_F8jet.js.map → types-IcokUOyC.js.map} +1 -1
  56. package/dist/types.d.ts +2 -2
  57. package/dist/types.js +2 -2
  58. package/package.json +1 -1
  59. package/dist/agent-skiQGYs2.d.ts.map +0 -1
  60. package/dist/mcp-CUt-N8zn.js.map +0 -1
  61. package/dist/messages-CIkO_aCH.js.map +0 -1
  62. package/dist/providers-CvriFHFU.js.map +0 -1
  63. package/dist/tool-formatters-0aOMYbH-.d.ts.map +0 -1
  64. package/dist/tools-BG2wMa3X.js.map +0 -1
  65. package/dist/turn-operations-CDmQ2h-T.js.map +0 -1
package/dist/tools.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { b as ToolMap, v as ToolContext, y as ToolDef } from "./agent-skiQGYs2.js";
2
- import { A as listFiles, C as SkillsRunScriptToolOptions, D as shell, E as createSkillsReadTool, F as edit, M as createInteractionTool, N as grep, O as readFile, P as glob, S as createSkillsUseTool, T as SkillsReadToolOptions, _ as ChildAgent, b as createSpawnTool, d as writeFile, f as ValidationResult, g as createToolSearchTool, h as ToolSearchToolOptions, j as InteractionToolOptions, k as multiEdit, m as LazyToolEntry, p as validateToolArgs, v as SpawnToolOptions, w as createSkillsRunScriptTool, x as SkillsUseToolOptions, y as SpawnToolState } from "./index-CjPh6CRE.js";
1
+ import { b as ToolMap, v as ToolContext, y as ToolDef } from "./agent-a-mteIEP.js";
2
+ import { A as listFiles, C as SkillsRunScriptToolOptions, D as shell, E as createSkillsReadTool, F as edit, M as createInteractionTool, N as grep, O as readFile, P as glob, S as createSkillsUseTool, T as SkillsReadToolOptions, _ as ChildAgent, b as createSpawnTool, d as writeFile, f as ValidationResult, g as createToolSearchTool, h as ToolSearchToolOptions, j as InteractionToolOptions, k as multiEdit, m as LazyToolEntry, p as validateToolArgs, v as SpawnToolOptions, w as createSkillsRunScriptTool, x as SkillsUseToolOptions, y as SpawnToolState } from "./index-D5gCRi42.js";
3
3
  export { ChildAgent, InteractionToolOptions, LazyToolEntry, SkillsReadToolOptions, SkillsRunScriptToolOptions, SkillsUseToolOptions, SpawnToolOptions, SpawnToolState, ToolContext, ToolDef, ToolMap, ToolSearchToolOptions, ValidationResult, createInteractionTool, createSkillsReadTool, createSkillsRunScriptTool, createSkillsUseTool, createSpawnTool, createToolSearchTool, edit, glob, grep, listFiles, multiEdit, readFile, shell, validateToolArgs, writeFile };
package/dist/tools.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as multiEdit, c as grep, f as createToolSearchTool, g as validateToolArgs, h as createSkillsReadTool, i as readFile, l as glob, m as createSkillsRunScriptTool, n as createSpawnTool, o as listFiles, p as createSkillsUseTool, r as shell, s as createInteractionTool, t as writeFile, u as edit } from "./tools-BG2wMa3X.js";
1
+ import { a as multiEdit, c as grep, f as createToolSearchTool, g as validateToolArgs, h as createSkillsReadTool, i as readFile, l as glob, m as createSkillsRunScriptTool, n as createSpawnTool, o as listFiles, p as createSkillsUseTool, r as shell, s as createInteractionTool, t as writeFile, u as edit } from "./tools-Duptt9yy.js";
2
2
  export { createInteractionTool, createSkillsReadTool, createSkillsRunScriptTool, createSkillsUseTool, createSpawnTool, createToolSearchTool, edit, glob, grep, listFiles, multiEdit, readFile, shell, validateToolArgs, writeFile };
@@ -1,5 +1,5 @@
1
- import { A as SessionStore, Ft as ToolResultContent, Mt as ThinkingLevel, O as SessionData, W as Provider, gt as McpServerConfig, k as SessionRun, kt as SessionTurn, y as ToolDef } from "./agent-skiQGYs2.js";
2
- import { t as Preset } from "./index-CjPh6CRE.js";
1
+ import { A as SessionStore, Ft as ToolResultContent, Mt as ThinkingLevel, O as SessionData, W as Provider, gt as McpServerConfig, k as SessionRun, kt as SessionTurn, y as ToolDef } from "./agent-a-mteIEP.js";
2
+ import { t as Preset } from "./index-D5gCRi42.js";
3
3
  import { OAuthProviderInterface } from "@mariozechner/pi-ai/oauth";
4
4
  import { ReactNode } from "react";
5
5
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
@@ -1401,6 +1401,106 @@ interface ResolvedConfig {
1401
1401
  /** Resolve user options into a fully-bound runtime config. Pure aside from disk reads. */
1402
1402
  declare function resolveConfig(options: ChatOptions): ResolvedConfig;
1403
1403
  //#endregion
1404
+ //#region src/chat/mcps-discovery.d.ts
1405
+ /**
1406
+ * One entry in the discovered list. `path` is the source file so a Settings
1407
+ * picker can show "Defined in ~/.zidane/mcps.json" tooltips.
1408
+ */
1409
+ interface DiscoveredMcp {
1410
+ config: McpServerConfig;
1411
+ source: 'project' | 'user';
1412
+ path: string;
1413
+ }
1414
+ /**
1415
+ * Search order for `mcps.json` — see {@link projectUserPaths}. Project
1416
+ * beats user; the first file found for each (name) wins. Non-existent
1417
+ * files are skipped without error.
1418
+ */
1419
+ declare function defaultMcpsConfigPaths(opts?: {
1420
+ cwd?: string;
1421
+ home?: string;
1422
+ prefix?: string;
1423
+ }): {
1424
+ path: string;
1425
+ source: 'project' | 'user';
1426
+ }[];
1427
+ /**
1428
+ * Parse one `mcps.json` file. Canonical zidane shape is a flat array; the
1429
+ * other shapes exist for copy-paste from neighboring tools:
1430
+ *
1431
+ * - `McpServerConfig[]` — flat array (recommended).
1432
+ * - `{ name: {...} }` — name-keyed map.
1433
+ * - `{ "mcpServers": { name: {...} } }` — Claude Desktop / Claude Code /
1434
+ * Cursor wrapper. Unwrapped before normalization (otherwise
1435
+ * `normalizeMcpServers` would treat the whole wrapper as a single server).
1436
+ *
1437
+ * Per-entry `enabled: false` (Cursor runtime state) drops the entry — same
1438
+ * intent as the source tool. Use the TUI toggle list for "show but disabled".
1439
+ *
1440
+ * Tolerant to common copy-paste artifacts: when strict `JSON.parse` fails,
1441
+ * retries after normalizing invisible whitespace that's valid Unicode but
1442
+ * not valid JSON whitespace (BOM, NBSP, zero-width spaces, line/paragraph
1443
+ * separators) — only OUTSIDE string literals, so user data isn't mutated.
1444
+ * If the sanitized version still fails, throws the original error with a
1445
+ * targeted hint when NBSPs are present.
1446
+ *
1447
+ * Validation flows through `normalizeMcpServers` so the result matches
1448
+ * what `createAgent` accepts. Throws on truly malformed JSON; the caller
1449
+ * decides whether to surface or swallow.
1450
+ */
1451
+ declare function parseMcpsFile(text: string): McpServerConfig[];
1452
+ /**
1453
+ * Per-file failure surfaced from {@link discoverProjectMcps}. The TUI shows
1454
+ * these in the MCP settings empty / preamble state so a malformed
1455
+ * `mcps.json` doesn't look identical to a missing one.
1456
+ */
1457
+ interface DiscoveryError {
1458
+ path: string;
1459
+ source: 'project' | 'user';
1460
+ message: string;
1461
+ }
1462
+ /**
1463
+ * Result of {@link discoverProjectMcps}. `servers` is the per-source-priority
1464
+ * merged list (project beats user, first-found wins on name collision).
1465
+ * `errors` is one entry per file that existed but failed to parse — empty
1466
+ * on the happy path.
1467
+ */
1468
+ interface DiscoveryResult {
1469
+ servers: DiscoveredMcp[];
1470
+ errors: DiscoveryError[];
1471
+ }
1472
+ /**
1473
+ * Walk the default config paths, parse every file that exists, and return
1474
+ * `{ servers, errors }` in source-priority order. Project entries appear
1475
+ * before user entries; first occurrence of a `name` wins (later
1476
+ * duplicates dropped).
1477
+ *
1478
+ * Parse failures are captured into `errors` rather than thrown — the picker
1479
+ * surfaces them while still showing whatever DID parse. A `ZIDANE_DEBUG`
1480
+ * log line is also emitted for ops visibility.
1481
+ */
1482
+ declare function discoverProjectMcps(opts?: {
1483
+ cwd?: string;
1484
+ home?: string;
1485
+ prefix?: string;
1486
+ }): DiscoveryResult;
1487
+ /**
1488
+ * Map a user-toggled enable list onto the `mcpServers` array the agent
1489
+ * receives. Conventions match `buildSkillsConfig`:
1490
+ *
1491
+ * - `enabled === undefined` → every discovered server enabled (default).
1492
+ * - `enabled === []` → no servers (the agent runs MCP-less).
1493
+ * - `enabled === [names]` → allowlist; servers not in the list are
1494
+ * dropped.
1495
+ *
1496
+ * Returns a fresh array — callers can mutate without affecting the
1497
+ * underlying discovery list.
1498
+ */
1499
+ declare function buildMcpServers(opts: {
1500
+ discovered: readonly DiscoveredMcp[];
1501
+ enabled?: readonly string[];
1502
+ }): McpServerConfig[];
1503
+ //#endregion
1404
1504
  //#region src/chat/enabled-toggle-set.d.ts
1405
1505
  /**
1406
1506
  * Renderer-agnostic state machine for an "enabled allowlist" — the shape
@@ -1444,6 +1544,68 @@ declare function useEnabledToggleSet<T>(opts: {
1444
1544
  settingKey: EnabledAllowlistKey;
1445
1545
  }): EnabledToggleSet;
1446
1546
  //#endregion
1547
+ //#region src/chat/hints.d.ts
1548
+ /**
1549
+ * Single hint entry — `<key> <label>`, optionally followed by an inline
1550
+ * secondary chord (`<key><extra.key> <label> <extra.label>`) for compound
1551
+ * shortcuts like `ctrl+m/n model effort`.
1552
+ *
1553
+ * Colour fields are advisory hex strings (resolved against the active
1554
+ * theme by the renderer); leaving them undefined lets the renderer pick
1555
+ * its conventional fallback (e.g. `warn` for keys, `dim` for labels,
1556
+ * `mute` for secondary).
1557
+ */
1558
+ interface Hint {
1559
+ key: string;
1560
+ label: string;
1561
+ /** Optional override for the key color. Renderer default: warn. */
1562
+ keyColor?: string;
1563
+ /** Optional override for the label color. Renderer default: dim. */
1564
+ labelColor?: string;
1565
+ /**
1566
+ * Optional secondary chord + value rendered inline after the primary
1567
+ * pair: `<key><extra.key> <label> <extra.label>`. Lets one hint advertise
1568
+ * a compound shortcut (e.g. `ctrl+m/n model effort`) without forcing
1569
+ * callers into a parallel struct or a custom renderer.
1570
+ */
1571
+ extra?: {
1572
+ key: string;
1573
+ label: string; /** Defaults to mute on the renderer side. */
1574
+ keyColor?: string; /** Defaults to dim on the renderer side. */
1575
+ labelColor?: string;
1576
+ };
1577
+ }
1578
+ /**
1579
+ * Truncate `text` to at most `max` characters, replacing the trailing
1580
+ * overflow with `…`. Edge cases:
1581
+ * - `max <= 0` → empty string (no room to render at all).
1582
+ * - `max === 1` → just the ellipsis glyph.
1583
+ * - `text.length <= max` → unchanged.
1584
+ *
1585
+ * Trailing-style truncation matches the natural read order of titles:
1586
+ * the prefix carries enough signal to identify the surface.
1587
+ */
1588
+ declare function truncateTrailing(text: string, max: number): string;
1589
+ /**
1590
+ * Plain-text width estimate for a list of {@link Hint}s rendered as
1591
+ * `<key> <label> · <key> <label> · …`. Exported so prompt-box overlays
1592
+ * can run the same responsive math as the bottom-bar footer when
1593
+ * deciding whether trigger hints fit. Pure / total.
1594
+ */
1595
+ declare function hintsLength(hints: readonly Hint[]): number;
1596
+ /**
1597
+ * Return the longest prefix of `hints` whose rendered width fits within
1598
+ * `budget`. Used to degrade hint rows gracefully at narrow terminal
1599
+ * widths instead of letting an absolutely-positioned hint row wrap
1600
+ * mid-segment (which paints the overflow over surrounding borders and
1601
+ * looks like garbled glyphs in a TUI).
1602
+ *
1603
+ * Prefix-only (no reordering, no last-hint priority) so the survivors
1604
+ * keep their authored order — the user's muscle memory for "leftmost
1605
+ * hint = primary action" stays intact as the terminal shrinks.
1606
+ */
1607
+ declare function clipHintsToWidth(hints: readonly Hint[], budget: number): readonly Hint[];
1608
+ //#endregion
1447
1609
  //#region src/chat/interactions.d.ts
1448
1610
  declare const PRESENT_PLAN_TOOL = "present_plan";
1449
1611
  declare const ASK_USER_TOOL = "ask_user";
@@ -1661,105 +1823,45 @@ declare function useInteractionsActions(): InteractionsActions;
1661
1823
  */
1662
1824
  declare function makeRequestInteraction(actions: InteractionsActions): CreateInteractionToolsOptions['requestInteraction'];
1663
1825
  //#endregion
1664
- //#region src/chat/mcps-discovery.d.ts
1665
- /**
1666
- * One entry in the discovered list. `path` is the source file so a Settings
1667
- * picker can show "Defined in ~/.zidane/mcps.json" tooltips.
1668
- */
1669
- interface DiscoveredMcp {
1670
- config: McpServerConfig;
1671
- source: 'project' | 'user';
1672
- path: string;
1673
- }
1674
- /**
1675
- * Search order for `mcps.json` — see {@link projectUserPaths}. Project
1676
- * beats user; the first file found for each (name) wins. Non-existent
1677
- * files are skipped without error.
1678
- */
1679
- declare function defaultMcpsConfigPaths(opts?: {
1680
- cwd?: string;
1681
- home?: string;
1682
- prefix?: string;
1683
- }): {
1684
- path: string;
1685
- source: 'project' | 'user';
1686
- }[];
1687
- /**
1688
- * Parse one `mcps.json` file. Canonical zidane shape is a flat array; the
1689
- * other shapes exist for copy-paste from neighboring tools:
1690
- *
1691
- * - `McpServerConfig[]` — flat array (recommended).
1692
- * - `{ name: {...} }` — name-keyed map.
1693
- * - `{ "mcpServers": { name: {...} } }` — Claude Desktop / Claude Code /
1694
- * Cursor wrapper. Unwrapped before normalization (otherwise
1695
- * `normalizeMcpServers` would treat the whole wrapper as a single server).
1696
- *
1697
- * Per-entry `enabled: false` (Cursor runtime state) drops the entry — same
1698
- * intent as the source tool. Use the TUI toggle list for "show but disabled".
1699
- *
1700
- * Tolerant to common copy-paste artifacts: when strict `JSON.parse` fails,
1701
- * retries after normalizing invisible whitespace that's valid Unicode but
1702
- * not valid JSON whitespace (BOM, NBSP, zero-width spaces, line/paragraph
1703
- * separators) — only OUTSIDE string literals, so user data isn't mutated.
1704
- * If the sanitized version still fails, throws the original error with a
1705
- * targeted hint when NBSPs are present.
1706
- *
1707
- * Validation flows through `normalizeMcpServers` so the result matches
1708
- * what `createAgent` accepts. Throws on truly malformed JSON; the caller
1709
- * decides whether to surface or swallow.
1710
- */
1711
- declare function parseMcpsFile(text: string): McpServerConfig[];
1712
- /**
1713
- * Per-file failure surfaced from {@link discoverProjectMcps}. The TUI shows
1714
- * these in the MCP settings empty / preamble state so a malformed
1715
- * `mcps.json` doesn't look identical to a missing one.
1716
- */
1717
- interface DiscoveryError {
1718
- path: string;
1719
- source: 'project' | 'user';
1720
- message: string;
1826
+ //#region src/chat/markdown-segments.d.ts
1827
+ /**
1828
+ * One block returned by {@link splitMarkdownCodeBlocks}. Prose segments
1829
+ * carry their original markdown (including blank lines that bracketed
1830
+ * the fence) so the surrounding paragraph spacing stays faithful to the
1831
+ * original input. Code segments carry the raw body — fence markers and
1832
+ * info-string stripped — so a "copy code" action lands what the user
1833
+ * actually sees, byte-for-byte.
1834
+ */
1835
+ interface MarkdownSegment {
1836
+ kind: 'prose' | 'code';
1837
+ content: string;
1838
+ /** Info-string (e.g. `ts`, `python`). Empty when the fence had none. */
1839
+ lang?: string;
1840
+ /**
1841
+ * `true` on a code segment whose closing fence hasn't arrived yet —
1842
+ * i.e. the trailing block during streaming. Consumers can render this
1843
+ * in "streaming" mode (no copy affordance, partial-highlight pipeline)
1844
+ * until the closer lands and it flips to a regular closed segment.
1845
+ */
1846
+ open?: boolean;
1721
1847
  }
1722
1848
  /**
1723
- * Result of {@link discoverProjectMcps}. `servers` is the per-source-priority
1724
- * merged list (project beats user, first-found wins on name collision).
1725
- * `errors` is one entry per file that existed but failed to parse — empty
1726
- * on the happy path.
1727
- */
1728
- interface DiscoveryResult {
1729
- servers: DiscoveredMcp[];
1730
- errors: DiscoveryError[];
1731
- }
1732
- /**
1733
- * Walk the default config paths, parse every file that exists, and return
1734
- * `{ servers, errors }` in source-priority order. Project entries appear
1735
- * before user entries; first occurrence of a `name` wins (later
1736
- * duplicates dropped).
1849
+ * Split markdown text into alternating prose / fenced-code segments.
1737
1850
  *
1738
- * Parse failures are captured into `errors` rather than thrown the picker
1739
- * surfaces them while still showing whatever DID parse. A `ZIDANE_DEBUG`
1740
- * log line is also emitted for ops visibility.
1741
- */
1742
- declare function discoverProjectMcps(opts?: {
1743
- cwd?: string;
1744
- home?: string;
1745
- prefix?: string;
1746
- }): DiscoveryResult;
1747
- /**
1748
- * Map a user-toggled enable list onto the `mcpServers` array the agent
1749
- * receives. Conventions match `buildSkillsConfig`:
1851
+ * Recognizes both ` ``` ` and `~~~` fences, with arbitrary length ≥ 3,
1852
+ * matching CommonMark's "fence indicator must be at least as long to
1853
+ * close" rule. Info-strings (the bit after the opening fence) are kept
1854
+ * as the `lang` hint; any trailing whitespace is trimmed. Closing
1855
+ * fences are detected on a line of their own (whitespace tolerated).
1750
1856
  *
1751
- * - `enabled === undefined` every discovered server enabled (default).
1752
- * - `enabled === []` → no servers (the agent runs MCP-less).
1753
- * - `enabled === [names]` → allowlist; servers not in the list are
1754
- * dropped.
1857
+ * Unclosed fences fall back to emitting the would-be-code body as a
1858
+ * trailing prose segment so no content is dropped finalized markdown
1859
+ * isn't expected to ship one, but the fallback keeps the renderer
1860
+ * truthful when the model produces malformed output.
1755
1861
  *
1756
- * Returns a fresh array — callers can mutate without affecting the
1757
- * underlying discovery list.
1862
+ * Exported for unit tests.
1758
1863
  */
1759
- declare function buildMcpServers(opts: {
1760
- discovered: readonly DiscoveredMcp[];
1761
- enabled?: readonly string[];
1762
- }): McpServerConfig[];
1864
+ declare function splitMarkdownCodeBlocks(text: string): MarkdownSegment[];
1763
1865
  //#endregion
1764
1866
  //#region src/chat/prompt-segments.d.ts
1765
1867
  /**
@@ -2193,5 +2295,48 @@ declare function displayNameFor(name: string): string;
2193
2295
  */
2194
2296
  declare function formatToolCall(name: string, input: Record<string, unknown>): ToolFormatLine | null;
2195
2297
  //#endregion
2196
- export { PlanRequest as $, resolveAgentId as $n, ToolCallDisplay as $t, useSafeModeQueue as A, ModelInfo as An, isEditErrorResult as At, parseMcpsFile as B, modelsForDescriptor as Bn, sumRunCosts as Bt, writeSessionExport as C, mergeReferences as Cn, ResolvedConfig as Ct, SafeModeActions as D, ProviderKey as Dn, createStateStore as Dt, RequestApproval as E, ProviderAuth as En, TuiState as Et, DiscoveryError as F, credKeyOf as Fn, loadState as Ft, InteractionRequest as G, AgentProfile as Gn, EditHunk as Gt, AnswerValue as H, openrouterDescriptor as Hn, toolCallPreview as Ht, DiscoveryResult as I, effectiveContextWindow as In, marginTopFor as It, InteractionsProvider as J, BUILTIN_AGENTS as Jn, Picked as Jt, InteractionResponse as K, AgentRegistry as Kn, EditPayload as Kt, buildMcpServers as L, getContextWindow as Ln, saveState as Lt, PromptSegmentRef as M, ProviderDescriptor as Mn, isVisible as Mt, splitPromptSegments as N, anthropicDescriptor as Nn, lastContextSizeFromTurns as Nt, SafeModeProvider as O, detectAuth as On, deriveSessionTitle as Ot, DiscoveredMcp as P, cerebrasDescriptor as Pn, listSessionMeta as Pt, PlanPayload as Q, accentColor as Qn, StreamEvent as Qt, defaultMcpsConfigPaths as R, getModelInfo as Rn, selectableTurnIds as Rt, resolveSessionExportTarget as S, findActiveTrigger as Sn, ProviderRegistry as St, ApprovalRequest as T, AuthMethod as Tn, StateStoreApi as Tt, ConfirmQuestion as U, piIdOf as Un, toolResultText as Ut, ASK_USER_TOOL as V, openaiDescriptor as Vn, titleFromTurns as Vt, CreateInteractionToolsOptions as W, AgentAccent as Wn, turnSelectionOwnership as Wt, PendingInteractionEntry as X, DEFAULT_PERSIST_EXCLUDE_TOOLS as Xn, SessionMeta as Xt, PRESENT_PLAN_TOOL as Y, DEFAULT_AGENT_ID as Yn, Screen as Yt, PlanDecision as Z, PLAN_AGENT as Zn, Settings as Zt, resolveTheme as _, CompletionProvider as _n, useInteractionsQueue as _t, formatToolCall as a, KeyBindings as an, QuestionRequest as at, SessionExportTarget as b, applyInsert as bn, useEnabledToggleSet as bt, ChipColorMap as c, keybindingsPath as cn, SelectQuestion as ct, SyntaxTokenStyle as d, parseBindingSpec as dn, createInteractionTools as dt, DEFAULT_KEYBINDINGS as en, singleAgentRegistry as er, PlanResponse as et, Theme as f, readKeybindings as fn, isInteractionTool as ft, resolveChipColor as g, CompletionItem as gn, useInteractionsActions as gt, ThemeSurfaces as h, CompletionContext as hn, serializeInteractionResponse as ht, displayNameFor as i, KeyBindingDef as in, QuestionPayload as it, PromptSegment as j, OUTPUT_RESERVE_TOKENS as jn, isTurnHighlighted as jt, useSafeModeActions as k, BUILTIN_PROVIDERS as kn, eventsFromTurns as kt, DEFAULT_THEME as l, matchesBinding as ln, TextQuestion as lt, ThemeSelect as m, ActiveTrigger as mn, pendingInteractionsFromTurns as mt, ToolDisplayMeta as n, KEYBINDING_DEF_BY_ACTION as nn, Question as nt, BUILTIN_THEMES as o, ParsedBinding as on, QuestionResponse as ot, ThemeColors as p, stripJsonComments as pn, makeRequestInteraction as pt, InteractionsActions as q, BUILD_AGENT as qn, Owner as qt, ToolFormatLine as r, KeyAction as rn, QuestionChoice as rt, ChipColor as s, ensureKeybindingsFile as sn, QuestionType as st, TOOL_DISPLAY as t, KEYBINDING_DEFS as tn, PlanStep as tt, SyntaxStyles as u, mergeKeybindings as un, buildResumedToolResultsTurn as ut, SessionExportAnchor as v, CompletionReference as vn, EnabledAllowlistKey as vt, ApprovalDecision as w, useCompletion as wn, resolveConfig as wt, renderSession as x, collectReferences as xn, ChatOptions as xt, SessionExportFormat as y, CompletionState as yn, EnabledToggleSet as yt, discoverProjectMcps as z, modelSupportsReasoning as zn, stripSpawnTokensLine as zt };
2197
- //# sourceMappingURL=tool-formatters-0aOMYbH-.d.ts.map
2298
+ //#region src/chat/transcript-anchors.d.ts
2299
+ /**
2300
+ * One entry in the partitioned transcript-row list. Single events
2301
+ * render as a normal row; `child-run`s group consecutive subagent
2302
+ * events into one bordered box (the TUI renders one outer container
2303
+ * for the whole run, hence the inner-events array).
2304
+ *
2305
+ * Currently produced by the TUI's `partitionTranscript`; a GUI shell
2306
+ * grouping subagent runs the same way can produce the same shape.
2307
+ */
2308
+ type TranscriptItem = {
2309
+ kind: 'event';
2310
+ event: StreamEvent;
2311
+ previous?: StreamEvent;
2312
+ } | {
2313
+ kind: 'child-run';
2314
+ events: StreamEvent[];
2315
+ previous?: StreamEvent;
2316
+ };
2317
+ /**
2318
+ * Per-item anchor ids for auto-scroll. Walks `items` in render order
2319
+ * and, for each event, returns either:
2320
+ * - `'turn-anchor-<turnId>'` — the first event of this turn (the
2321
+ * scroll target).
2322
+ * - `undefined` — later event of an already-tagged turn (or a
2323
+ * synthetic event with no `turnId`).
2324
+ *
2325
+ * `ids[i]` is a tuple per item: length 1 for plain events, length N
2326
+ * for subagent runs (one entry per inner event). `idByTurn` is the
2327
+ * inverse lookup used by the scroll effect. `lastTurnId` is the
2328
+ * most-recently-rendered turn — the scroll effect special-cases it to
2329
+ * snap to bottom rather than scroll the anchor into view (which would
2330
+ * stop short of the actual tail).
2331
+ *
2332
+ * Exported so the anchor-tagging matrix can be unit-tested without
2333
+ * rendering anything.
2334
+ */
2335
+ declare function computeTurnAnchors(items: readonly TranscriptItem[]): {
2336
+ idByTurn: ReadonlyMap<string, string>;
2337
+ ids: readonly (readonly (string | undefined)[])[];
2338
+ lastTurnId: string | undefined;
2339
+ };
2340
+ //#endregion
2341
+ export { Question as $, AgentProfile as $n, EditHunk as $t, SafeModeProvider as A, findActiveTrigger as An, ProviderRegistry as At, ConfirmQuestion as B, ProviderDescriptor as Bn, isVisible as Bt, renderSession as C, CompletionContext as Cn, DiscoveryError as Ct, ApprovalRequest as D, CompletionState as Dn, discoverProjectMcps as Dt, ApprovalDecision as E, CompletionReference as En, defaultMcpsConfigPaths as Et, splitPromptSegments as F, ProviderKey as Fn, createStateStore as Ft, InteractionsProvider as G, getContextWindow as Gn, saveState as Gt, InteractionRequest as H, cerebrasDescriptor as Hn, listSessionMeta as Ht, MarkdownSegment as I, detectAuth as In, deriveSessionTitle as It, PlanDecision as J, modelsForDescriptor as Jn, sumRunCosts as Jt, PRESENT_PLAN_TOOL as K, getModelInfo as Kn, selectableTurnIds as Kt, splitMarkdownCodeBlocks as L, BUILTIN_PROVIDERS as Ln, eventsFromTurns as Lt, useSafeModeQueue as M, useCompletion as Mn, resolveConfig as Mt, PromptSegment as N, AuthMethod as Nn, StateStoreApi as Nt, RequestApproval as O, applyInsert as On, parseMcpsFile as Ot, PromptSegmentRef as P, ProviderAuth as Pn, TuiState as Pt, PlanStep as Q, AgentAccent as Qn, turnSelectionOwnership as Qt, ASK_USER_TOOL as R, ModelInfo as Rn, isEditErrorResult as Rt, SessionExportTarget as S, ActiveTrigger as Sn, DiscoveredMcp as St, writeSessionExport as T, CompletionProvider as Tn, buildMcpServers as Tt, InteractionResponse as U, credKeyOf as Un, loadState as Ut, CreateInteractionToolsOptions as V, anthropicDescriptor as Vn, lastContextSizeFromTurns as Vt, InteractionsActions as W, effectiveContextWindow as Wn, marginTopFor as Wt, PlanRequest as X, openrouterDescriptor as Xn, toolCallPreview as Xt, PlanPayload as Y, openaiDescriptor as Yn, titleFromTurns as Yt, PlanResponse as Z, piIdOf as Zn, toolResultText as Zt, ThemeSurfaces as _, matchesBinding as _n, hintsLength as _t, ToolFormatLine as a, Settings as an, PLAN_AGENT as ar, SelectQuestion as at, SessionExportAnchor as b, readKeybindings as bn, EnabledToggleSet as bt, BUILTIN_THEMES as c, DEFAULT_KEYBINDINGS as cn, singleAgentRegistry as cr, createInteractionTools as ct, DEFAULT_THEME as d, KeyAction as dn, pendingInteractionsFromTurns as dt, EditPayload as en, AgentRegistry as er, QuestionChoice as et, SyntaxStyles as f, KeyBindingDef as fn, serializeInteractionResponse as ft, ThemeSelect as g, keybindingsPath as gn, clipHintsToWidth as gt, ThemeColors as h, ensureKeybindingsFile as hn, Hint as ht, ToolDisplayMeta as i, SessionMeta as in, DEFAULT_PERSIST_EXCLUDE_TOOLS as ir, QuestionType as it, useSafeModeActions as j, mergeReferences as jn, ResolvedConfig as jt, SafeModeActions as k, collectReferences as kn, ChatOptions as kt, ChipColor as l, KEYBINDING_DEFS as ln, isInteractionTool as lt, Theme as m, ParsedBinding as mn, useInteractionsQueue as mt, computeTurnAnchors as n, Picked as nn, BUILTIN_AGENTS as nr, QuestionRequest as nt, displayNameFor as o, StreamEvent as on, accentColor as or, TextQuestion as ot, SyntaxTokenStyle as p, KeyBindings as pn, useInteractionsActions as pt, PendingInteractionEntry as q, modelSupportsReasoning as qn, stripSpawnTokensLine as qt, TOOL_DISPLAY as r, Screen as rn, DEFAULT_AGENT_ID as rr, QuestionResponse as rt, formatToolCall as s, ToolCallDisplay as sn, resolveAgentId as sr, buildResumedToolResultsTurn as st, TranscriptItem as t, Owner as tn, BUILD_AGENT as tr, QuestionPayload as tt, ChipColorMap as u, KEYBINDING_DEF_BY_ACTION as un, makeRequestInteraction as ut, resolveChipColor as v, mergeKeybindings as vn, truncateTrailing as vt, resolveSessionExportTarget as w, CompletionItem as wn, DiscoveryResult as wt, SessionExportFormat as x, stripJsonComments as xn, useEnabledToggleSet as xt, resolveTheme as y, parseBindingSpec as yn, EnabledAllowlistKey as yt, AnswerValue as z, OUTPUT_RESERVE_TOKENS as zn, isTurnHighlighted as zt };
2342
+ //# sourceMappingURL=transcript-anchors-YFom211q.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript-anchors-YFom211q.d.ts","names":[],"sources":["../src/chat/agents.ts","../src/chat/providers.ts","../src/chat/auth.ts","../src/chat/completion.ts","../src/chat/keybindings.ts","../src/chat/types.ts","../src/chat/store.ts","../src/chat/config.ts","../src/chat/mcps-discovery.ts","../src/chat/enabled-toggle-set.ts","../src/chat/hints.ts","../src/chat/interactions.tsx","../src/chat/markdown-segments.ts","../src/chat/prompt-segments.ts","../src/chat/safe-mode-context.tsx","../src/chat/session-export.ts","../src/chat/theme.ts","../src/chat/tool-formatters.ts","../src/chat/transcript-anchors.ts"],"mappings":"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"}
package/dist/tui.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { Mt as ThinkingLevel, O as SessionData, kt as SessionTurn, x as SkillConfig } from "./agent-skiQGYs2.js";
2
- import { An as ModelInfo, At as isEditErrorResult, Ct as ResolvedConfig, Dn as ProviderKey, En as ProviderAuth, F as DiscoveryError, G as InteractionRequest, It as marginTopFor, K as InteractionResponse, Kn as AgentRegistry, M as PromptSegmentRef, Mt as isVisible, N as splitPromptSegments, P as DiscoveredMcp, Qn as accentColor, Qt as StreamEvent, Rt as selectableTurnIds, T as ApprovalRequest, Wt as turnSelectionOwnership, Xt as SessionMeta, Zt as Settings, _n as CompletionProvider, a as formatToolCall, an as KeyBindings, f as Theme, i as displayNameFor, j as PromptSegment, jt as isTurnHighlighted, n as ToolDisplayMeta, p as ThemeColors, r as ToolFormatLine, t as TOOL_DISPLAY, vn as CompletionReference, vt as EnabledAllowlistKey, w as ApprovalDecision, xt as ChatOptions, y as SessionExportFormat, yn as CompletionState } from "./tool-formatters-0aOMYbH-.js";
1
+ import { Mt as ThinkingLevel, O as SessionData, kt as SessionTurn, x as SkillConfig } from "./agent-a-mteIEP.js";
2
+ import { Bt as isVisible, Ct as DiscoveryError, D as ApprovalRequest, Dn as CompletionState, E as ApprovalDecision, En as CompletionReference, F as splitPromptSegments, Fn as ProviderKey, H as InteractionRequest, I as MarkdownSegment, Kt as selectableTurnIds, L as splitMarkdownCodeBlocks, N as PromptSegment, P as PromptSegmentRef, Pn as ProviderAuth, Qt as turnSelectionOwnership, Rn as ModelInfo, Rt as isEditErrorResult, St as DiscoveredMcp, Tn as CompletionProvider, U as InteractionResponse, Wt as marginTopFor, _t as hintsLength, a as ToolFormatLine, an as Settings, er as AgentRegistry, gt as clipHintsToWidth, h as ThemeColors, ht as Hint, i as ToolDisplayMeta, in as SessionMeta, jt as ResolvedConfig, kt as ChatOptions, m as Theme, n as computeTurnAnchors, o as displayNameFor, on as StreamEvent, or as accentColor, pn as KeyBindings, r as TOOL_DISPLAY, s as formatToolCall, t as TranscriptItem, vt as truncateTrailing, x as SessionExportFormat, yt as EnabledAllowlistKey, zt as isTurnHighlighted } from "./transcript-anchors-YFom211q.js";
3
3
  import * as _$react from "react";
4
4
  import { ReactNode } from "react";
5
5
  import { SyntaxStyle } from "@opentui/core";
@@ -84,26 +84,6 @@ declare function CompletionPopup({
84
84
  * the cast so each call site stays readable.
85
85
  */
86
86
  declare function onInputSubmit(handler: (value: string) => void): never;
87
- interface Hint {
88
- key: string;
89
- label: string;
90
- /** Optional override for the key color. Defaults to `COLOR.warn`. */
91
- keyColor?: string;
92
- /** Optional override for the label color. Defaults to `COLOR.dim`. */
93
- labelColor?: string;
94
- /**
95
- * Optional secondary chord + value rendered inline after the primary
96
- * pair: `<key><extra.key> <label> <extra.label>`. Lets one hint advertise
97
- * a compound shortcut (e.g. `ctrl+m/n model effort`) without forcing
98
- * callers into a parallel struct or a custom renderer.
99
- */
100
- extra?: {
101
- key: string;
102
- label: string; /** Defaults to `COLOR.mute` — the secondary key is rendered dimmer than the primary so the chord reads as one unit. */
103
- keyColor?: string; /** Defaults to `COLOR.dim`. */
104
- labelColor?: string;
105
- };
106
- }
107
87
  interface ContextUsage {
108
88
  used: number;
109
89
  max: number;
@@ -245,14 +225,6 @@ declare function TitleOverlay({
245
225
  */
246
226
  statusIconCells?: 1 | 2;
247
227
  }): ReactNode;
248
- /**
249
- * Plain-text width estimate for a list of {@link Hint}s rendered via
250
- * `renderHintSpans` — `<key> <label> · <key> <label> · …`. Exported so
251
- * the prompt-box overlay (in `screens.tsx`) can run the same responsive
252
- * math as the bottom-bar footer when deciding whether trigger hints
253
- * fit. Pure / total.
254
- */
255
- declare function hintsLength(hints: readonly Hint[]): number;
256
228
  declare function Spinner({
257
229
  label
258
230
  }: {
@@ -366,13 +338,22 @@ declare function McpsSettingsModal({
366
338
  errors,
367
339
  onLogin,
368
340
  onLogout,
369
- onCancelLogin
341
+ onCancelLogin,
342
+ onRefresh
370
343
  }: {
371
344
  catalog: readonly DiscoveredMcp[];
372
345
  errors?: readonly DiscoveryError[];
373
346
  onLogin: (name: string) => Promise<void> | void;
374
347
  onLogout: (name: string) => void;
375
348
  onCancelLogin: (name: string) => void;
349
+ /**
350
+ * Optional force-rescan hook bound to `r` on this standalone modal.
351
+ * Hosts wire it to `discoverProjectMcps` (or the future async
352
+ * registry-aware variant). Unlike `SettingsModal`, here we use
353
+ * plain `r` because there's no search input to swallow the key —
354
+ * matches the single-letter convention of `l` / `o`.
355
+ */
356
+ onRefresh?: () => Promise<void> | void;
376
357
  }): _$react.ReactNode;
377
358
  //#endregion
378
359
  //#region src/tui/modal.d.ts
@@ -798,15 +779,36 @@ interface SettingsActions {
798
779
  onLogoutMcp?: (name: string) => void;
799
780
  /** Abort an in-flight MCP OAuth flow. */
800
781
  onCancelLoginMcp?: (name: string) => void;
782
+ /**
783
+ * Force a fresh skills rescan, bypassing the background SWR throttle.
784
+ * Fired by `ctrl+R` on the Skills tab. When wired the host should
785
+ * call `discoverProjectSkills` directly and replace the catalog —
786
+ * an in-flight refresh promise resolves into the modal automatically
787
+ * via the catalog prop.
788
+ */
789
+ onRefreshSkills?: () => Promise<void> | void;
790
+ /**
791
+ * Re-parse the project's `mcps.json` files. Fired by `ctrl+R` on
792
+ * the MCPs tab. Sync-shaped under the hood but typed as async so
793
+ * future discovery paths (registry lookups, etc.) can stay
794
+ * non-blocking without changing the contract.
795
+ */
796
+ onRefreshMcps?: () => Promise<void> | void;
801
797
  }
802
798
  declare function SettingsModal({
803
- skillsCatalog,
804
- mcpsCatalog,
805
- mcpsErrors,
799
+ skillsCatalog: skillsCatalogProp,
800
+ mcpsCatalog: mcpsCatalogProp,
801
+ mcpsErrors: mcpsErrorsProp,
806
802
  actions
807
803
  }?: {
808
- /** Discovered skills — drives the Skills tab + persists through `enabledSkills`. */skillsCatalog?: readonly SkillConfig[]; /** Discovered MCP servers — drives the MCPs tab + persists through `enabledMcps`. */
809
- mcpsCatalog?: readonly DiscoveredMcp[]; /** Non-fatal `mcps.json` parse errors surface in a preamble on the MCP tab. */
804
+ /**
805
+ * Embedder fallbackdiscovered skills when no `<DiscoveryProvider>`
806
+ * is mounted. In the in-app flow this is ignored; the modal reads
807
+ * live state from `useDiscovery()` so a `ctrl+R` rescan surfaces
808
+ * immediately even with the modal already open.
809
+ */
810
+ skillsCatalog?: readonly SkillConfig[]; /** Embedder fallback — discovered MCP servers; superseded by context when present. */
811
+ mcpsCatalog?: readonly DiscoveredMcp[]; /** Embedder fallback — `mcps.json` parse errors; superseded by context when present. */
810
812
  mcpsErrors?: readonly DiscoveryError[];
811
813
  actions?: SettingsActions;
812
814
  }): ReactNode;
@@ -816,11 +818,18 @@ declare function SettingsModal({
816
818
  * List + toggle modal for discovered skills. State machine + keyboard +
817
819
  * row geometry live in `<ToggleListModal>`; this file just supplies the
818
820
  * skill-specific column (description) and the empty-state hint.
821
+ *
822
+ * Pass `onRefresh` to expose `ctrl+R` (force re-scan) on the list. The
823
+ * standalone modal is for embedders — the in-app flow goes through
824
+ * `<SettingsModal>` which exposes the same affordance via its own
825
+ * `SettingsActions.onRefreshSkills` plumbing.
819
826
  */
820
827
  declare function SkillsSettingsModal({
821
- catalog
828
+ catalog,
829
+ onRefresh
822
830
  }: {
823
831
  catalog: readonly SkillConfig[];
832
+ onRefresh?: () => Promise<void> | void;
824
833
  }): _$react.ReactNode;
825
834
  //#endregion
826
835
  //#region src/tui/theme.d.ts
@@ -867,7 +876,8 @@ declare function ToggleListModal<T>({
867
876
  title,
868
877
  renderDetail,
869
878
  emptyState,
870
- preamble
879
+ preamble,
880
+ onRefresh
871
881
  }: {
872
882
  catalog: readonly T[];
873
883
  keyOf: (entry: T) => string;
@@ -883,6 +893,12 @@ declare function ToggleListModal<T>({
883
893
  * renders even when the catalog has entries.
884
894
  */
885
895
  preamble?: ReactNode;
896
+ /**
897
+ * Optional force-rescan hook bound to `ctrl+R`. Hosts wire it to a
898
+ * discovery rerun (`discoverProjectSkills`, `discoverProjectMcps`,
899
+ * …); the modal just exposes the keybind and footer hint.
900
+ */
901
+ onRefresh?: () => Promise<void> | void;
886
902
  }): ReactNode;
887
903
  //#endregion
888
904
  //#region src/tui/turn-details-modal.d.ts
@@ -956,5 +972,5 @@ declare function TurnDetailsModal({
956
972
  */
957
973
  declare function runTui(options?: Partial<ChatOptions>): Promise<never>;
958
974
  //#endregion
959
- export { AgentPickerModal, App, AuthScreen, ChatScreen, CompletionPopup, type ContextUsage, EffortPickerModal, Footer, type Hint, InteractionBlock, McpsSettingsModal, type MetaSegment, Modal, type ModalProps, ModalRoot, ModelPickerModal, type PickedModel, type PromptSegment, type PromptSegmentRef, type QueueShortcuts, type QueuedPreview, type SessionCompactResult, SessionDetailsModal, type SessionDetailsModalActions, type SessionExportResult, SessionsScreen, type SettingsActions, SettingsModal, SkillsSettingsModal, Spinner, StatusSpinner, TOOL_DISPLAY, TitleOverlay, ToggleListModal, type ToolDisplayMeta, type ToolFormatLine, Transcript, TurnDetailsModal, type TurnDetailsModalActions, accentColor, buildMdStyle, displayNameFor, formatToolCall, hintsLength, isEditErrorResult, isTurnHighlighted, isVisible, marginTopFor, onInputSubmit, renderHintSpans, runTui, selectableTurnIds, splitPromptSegments, turnSelectionOwnership, useMdStyle, useModal, useModalAwareFocus };
975
+ export { AgentPickerModal, App, AuthScreen, ChatScreen, CompletionPopup, type ContextUsage, EffortPickerModal, Footer, type Hint, InteractionBlock, type MarkdownSegment, McpsSettingsModal, type MetaSegment, Modal, type ModalProps, ModalRoot, ModelPickerModal, type PickedModel, type PromptSegment, type PromptSegmentRef, type QueueShortcuts, type QueuedPreview, type SessionCompactResult, SessionDetailsModal, type SessionDetailsModalActions, type SessionExportResult, SessionsScreen, type SettingsActions, SettingsModal, SkillsSettingsModal, Spinner, StatusSpinner, TOOL_DISPLAY, TitleOverlay, ToggleListModal, type ToolDisplayMeta, type ToolFormatLine, Transcript, type TranscriptItem, TurnDetailsModal, type TurnDetailsModalActions, accentColor, buildMdStyle, clipHintsToWidth, computeTurnAnchors, displayNameFor, formatToolCall, hintsLength, isEditErrorResult, isTurnHighlighted, isVisible, marginTopFor, onInputSubmit, renderHintSpans, runTui, selectableTurnIds, splitMarkdownCodeBlocks, splitPromptSegments, truncateTrailing, turnSelectionOwnership, useMdStyle, useModal, useModalAwareFocus };
960
976
  //# sourceMappingURL=tui.d.ts.map