zidane 6.1.4 → 6.1.6

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 (70) hide show
  1. package/dist/{acp-CO1EGSwh.js → acp-D-k-L0DX.js} +2 -2
  2. package/dist/{acp-CO1EGSwh.js.map → acp-D-k-L0DX.js.map} +1 -1
  3. package/dist/acp-cli.js +2 -2
  4. package/dist/acp.d.ts +1 -1
  5. package/dist/acp.js +1 -1
  6. package/dist/{agent-CZKpBI1X.js → agent-BJ1NC1pA.js} +47 -8
  7. package/dist/agent-BJ1NC1pA.js.map +1 -0
  8. package/dist/agent.d.ts +1 -1
  9. package/dist/agent.js +1 -1
  10. package/dist/chat/pure.d.ts +3 -3
  11. package/dist/chat.d.ts +10 -4
  12. package/dist/chat.d.ts.map +1 -1
  13. package/dist/chat.js +2 -2
  14. package/dist/contexts/daytona.d.ts +1 -1
  15. package/dist/contexts/e2b.d.ts +1 -1
  16. package/dist/eval.d.ts +1 -1
  17. package/dist/extensions.d.ts +2 -2
  18. package/dist/extensions.js +1 -1
  19. package/dist/generate-data-WL_yGVL6.js.map +1 -1
  20. package/dist/headless.d.ts +1 -1
  21. package/dist/headless.js +1 -1
  22. package/dist/{index-DC9Iy3Vn.d.ts → index-CR6uvJ3m.d.ts} +190 -7
  23. package/dist/index-CR6uvJ3m.d.ts.map +1 -0
  24. package/dist/index.d.ts +2 -2
  25. package/dist/index.js +1 -1
  26. package/dist/mcp.d.ts +1 -1
  27. package/dist/output/stream-json.d.ts +1 -1
  28. package/dist/output/terminal.d.ts +1 -1
  29. package/dist/presets.d.ts +1 -1
  30. package/dist/presets.js +1 -1
  31. package/dist/providers/anthropic.d.ts +1 -1
  32. package/dist/providers/arcee.d.ts +1 -1
  33. package/dist/providers/baseten.d.ts +1 -1
  34. package/dist/providers/cerebras.d.ts +1 -1
  35. package/dist/providers/local.d.ts +1 -1
  36. package/dist/providers/openai-compat.d.ts +1 -1
  37. package/dist/providers/openai.d.ts +1 -1
  38. package/dist/providers/openrouter.d.ts +1 -1
  39. package/dist/providers/xai.d.ts +1 -1
  40. package/dist/providers.d.ts +1 -1
  41. package/dist/restate.d.ts +1 -1
  42. package/dist/session/sqlite.d.ts +1 -1
  43. package/dist/session.d.ts +1 -1
  44. package/dist/skills.d.ts +1 -1
  45. package/dist/{tool-formatters-D7AQW80Z.d.ts → tool-formatters-D8w27pin.d.ts} +60 -3
  46. package/dist/tool-formatters-D8w27pin.d.ts.map +1 -0
  47. package/dist/tools/fetch-url.d.ts +1 -1
  48. package/dist/tools/web-search.d.ts +1 -1
  49. package/dist/tools.d.ts +2 -2
  50. package/dist/tools.js +1 -1
  51. package/dist/{transcript-anchors-hv97ejJn.js → transcript-anchors-C8l8zDzs.js} +20 -4
  52. package/dist/{transcript-anchors-hv97ejJn.js.map → transcript-anchors-C8l8zDzs.js.map} +1 -1
  53. package/dist/{transcript-anchors-ClIlrGxh.d.ts → transcript-anchors-DtV7fmmw.d.ts} +2 -2
  54. package/dist/{transcript-anchors-ClIlrGxh.d.ts.map → transcript-anchors-DtV7fmmw.d.ts.map} +1 -1
  55. package/dist/tui.d.ts +26 -5
  56. package/dist/tui.d.ts.map +1 -1
  57. package/dist/tui.js +658 -64
  58. package/dist/tui.js.map +1 -1
  59. package/dist/{turn-operations-mvM38tP-.d.ts → turn-operations-BsTP7T1w.d.ts} +4 -61
  60. package/dist/turn-operations-BsTP7T1w.d.ts.map +1 -0
  61. package/dist/types.d.ts +1 -1
  62. package/docs/CHAT.md +2 -0
  63. package/docs/EXTENSIONS.md +5 -2
  64. package/docs/INTERACTIONS.md +5 -1
  65. package/docs/TUI.md +3 -2
  66. package/package.json +1 -1
  67. package/dist/agent-CZKpBI1X.js.map +0 -1
  68. package/dist/index-DC9Iy3Vn.d.ts.map +0 -1
  69. package/dist/tool-formatters-D7AQW80Z.d.ts.map +0 -1
  70. package/dist/turn-operations-mvM38tP-.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
- import { Ic as CompletionProvider, Iu as ModelInfo, Lc as CompletionReference, Mu as ProviderKey, Rf as SkillConfig, du as EditOutcome, ff as ToolResultContent, if as SessionTurn, ju as ProviderAuth, mu as Owner, pu as EditPayload, xf as TurnUsage, yu as StreamEvent } from "./index-DC9Iy3Vn.js";
2
- import { m as ApprovalDecision } from "./tool-formatters-D7AQW80Z.js";
1
+ import { Bc as CompletionProvider, Du as StreamEvent, Kf as SkillConfig, Su as Owner, Vc as CompletionReference, bf as ToolResultContent, ff as SessionTurn, kf as TurnUsage, xu as EditPayload, yu as EditOutcome } from "./index-CR6uvJ3m.js";
2
+ import { v as ApprovalDecision } from "./tool-formatters-D8w27pin.js";
3
3
 
4
4
  //#region src/chat/color-gradient.d.ts
5
5
  /**
@@ -571,63 +571,6 @@ declare function formatTaskSummary(info: {
571
571
  */
572
572
  declare function compactPath(path: string, maxWidth?: number, home?: string): string;
573
573
  //#endregion
574
- //#region src/chat/model-catalog.d.ts
575
- /** A model entry as displayed in the cross-provider picker. */
576
- interface CatalogEntry {
577
- providerKey: ProviderKey;
578
- providerLabel: string;
579
- model: ModelInfo;
580
- /**
581
- * Pre-computed lowercase corpus for substring search across the
582
- * provider key, label, model id, and display name. Built once at
583
- * catalog-assembly time so filtering on every keystroke is
584
- * O(catalogSize × queryLength), not O(catalogSize × fieldCount ×
585
- * lowercase-overhead × queryLength).
586
- */
587
- searchCorpus: string;
588
- }
589
- /**
590
- * Build the unified catalog from a list of available providers.
591
- *
592
- * Provider order is preserved (callers typically pass the picker order
593
- * — alphabetical, auth-detection order, etc.); model order inside each
594
- * provider matches whatever `modelsFor` returns. The current selection
595
- * (when set) is bubbled to the top of its provider's section so it
596
- * shows first without disturbing relative ordering elsewhere.
597
- *
598
- * `modelsFor` is injected (not imported from `./providers`) so the same
599
- * helper works with hosts that supply their own model resolver via
600
- * `ResolvedConfig.modelsFor`.
601
- */
602
- declare function buildModelCatalog(opts: {
603
- providers: readonly ProviderAuth[];
604
- modelsFor: (key: ProviderKey) => readonly ModelInfo[]; /** Optional currently-selected pair — promoted to the top of its provider group. */
605
- current?: {
606
- providerKey: ProviderKey;
607
- modelId: string;
608
- } | null;
609
- }): CatalogEntry[];
610
- /**
611
- * Filter `catalog` by a user query. Empty / whitespace-only queries
612
- * pass everything through unchanged (`O(1)` short-circuit). Multi-term
613
- * queries (space-separated) require EVERY term to appear somewhere in
614
- * the entry's search corpus — so `"claude opus"` matches `claude-opus-4`
615
- * regardless of how the words are interleaved with provider names.
616
- *
617
- * Match is case-insensitive (the corpus is pre-lowercased; the query
618
- * is lowercased once per call).
619
- */
620
- declare function filterModelCatalog(catalog: readonly CatalogEntry[], query: string): CatalogEntry[];
621
- /**
622
- * Find a catalog entry's index by its `{providerKey, modelId}` tuple.
623
- * Returns `-1` when not present. Useful when re-rendering the picker
624
- * (a query just narrowed the list, where did the selection land?).
625
- */
626
- declare function indexOfEntry(catalog: readonly CatalogEntry[], target: {
627
- providerKey: ProviderKey;
628
- modelId: string;
629
- } | null | undefined): number;
630
- //#endregion
631
574
  //#region src/chat/streaming-pure.d.ts
632
575
  /** Flip any trailing streaming markdown blocks (any owner) to finalized. */
633
576
  declare function finalizeStreamingMarkdown(events: StreamEvent[]): StreamEvent[];
@@ -728,5 +671,5 @@ declare function countNeighbors(turnIds: readonly string[], turnId: string): {
728
671
  after: number;
729
672
  } | null;
730
673
  //#endregion
731
- export { createSkillsCompletionProvider as $, InlineSegment as A, splitLines as B, shortId as C, EditSummary as D, EditHunkSummary as E, computeInlineDiff as F, maskToOutcomeKinds as G, tokenize as H, computeLineDiff as I, resolveApprovalForPayload as J, mergeApprovalAndBodyOutcomes as K, extractEditPayload as L, applyEditPayload as M, buildContextualDiff as N, HunkResolution as O, buildUnifiedDiff as P, SKILLS_TRIGGER as Q, filetypeFromPath as R, previewLine as S, DiffOp as T, ResolvedApproval as U, summarizeEditPayload as V, buildEditOutcomesAnnotation as W, stripEditOutcomesAnnotation as X, rewriteMultiEditHeader as Y, summarizeOutcomes as Z, fmtCost as _, MAX_TRANSCRIPT_EVENTS as a, ListProjectFilesOptions as at, formatTaskStatus as b, finalizeStreamingMarkdown as c, ChatReferenceData as ct, CatalogEntry as d, chatReferenceTokensFromText as dt, uniqueSkillNamesFromReferences as et, buildModelCatalog as f, createChatsCompletionProvider as ft, compactPath as g, ageString as h, buildLinearRamp as ht, turnAsText as i, FileEntry as it, PreviewResult as j, InlineDiff as k, finalizeStreamingMarkdownForOwner as l, ChatReferenceEntry as lt, indexOfEntry as m, blendHsl as mt, deleteTurnSafely as n, createFilesCompletionProvider as nt, TRANSCRIPT_TRIM_TO_EVENTS as o, listProjectFiles as ot, filterModelCatalog as p, uniqueChatIdsFromReferences as pt, parseEditOutcomesFromResult as q, truncateTurnsAt as r, uniqueFilesFromReferences as rt, capTranscriptEvents as s, CHATS_TRIGGER as st, countNeighbors as t, FILES_TRIGGER as tt, turnContextSize as u, ChatReferenceScope as ut, fmtTokens as v, DiffLine as w, formatTaskSummary as x, formatDuration as y, previewEditPayload as z };
732
- //# sourceMappingURL=turn-operations-mvM38tP-.d.ts.map
674
+ export { uniqueFilesFromReferences as $, buildUnifiedDiff as A, buildEditOutcomesAnnotation as B, EditSummary as C, PreviewResult as D, InlineSegment as E, previewEditPayload as F, rewriteMultiEditHeader as G, mergeApprovalAndBodyOutcomes as H, splitLines as I, SKILLS_TRIGGER as J, stripEditOutcomesAnnotation as K, summarizeEditPayload as L, computeLineDiff as M, extractEditPayload as N, applyEditPayload as O, filetypeFromPath as P, createFilesCompletionProvider as Q, tokenize as R, EditHunkSummary as S, InlineDiff as T, parseEditOutcomesFromResult as U, maskToOutcomeKinds as V, resolveApprovalForPayload as W, uniqueSkillNamesFromReferences as X, createSkillsCompletionProvider as Y, FILES_TRIGGER as Z, formatTaskSummary as _, MAX_TRANSCRIPT_EVENTS as a, ChatReferenceEntry as at, DiffLine as b, finalizeStreamingMarkdown as c, createChatsCompletionProvider as ct, ageString as d, buildLinearRamp as dt, FileEntry as et, compactPath as f, formatTaskStatus as g, formatDuration as h, turnAsText as i, ChatReferenceData as it, computeInlineDiff as j, buildContextualDiff as k, finalizeStreamingMarkdownForOwner as l, uniqueChatIdsFromReferences as lt, fmtTokens as m, deleteTurnSafely as n, listProjectFiles as nt, TRANSCRIPT_TRIM_TO_EVENTS as o, ChatReferenceScope as ot, fmtCost as p, summarizeOutcomes as q, truncateTurnsAt as r, CHATS_TRIGGER as rt, capTranscriptEvents as s, chatReferenceTokensFromText as st, countNeighbors as t, ListProjectFilesOptions as tt, turnContextSize as u, blendHsl as ut, previewLine as v, HunkResolution as w, DiffOp as x, shortId as y, ResolvedApproval as z };
675
+ //# sourceMappingURL=turn-operations-BsTP7T1w.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-operations-BsTP7T1w.d.ts","names":[],"sources":["../src/chat/color-gradient.ts","../src/chat/completion-chats.ts","../src/chat/files-discovery.ts","../src/chat/completion-files.ts","../src/chat/completion-skills.ts","../src/chat/edit-approval.ts","../src/tools/edit-utils.ts","../src/chat/edit-diff.ts","../src/chat/format.ts","../src/chat/streaming-pure.ts","../src/chat/turn-operations.ts"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { a as AgentProviderError, c as CONTEXT_EXCEEDED_MESSAGE_PATTERNS, f as matchesContextExceeded, i as AgentContextExceededError, l as ClassifiedError, n as AgentAbortedError, o as AgentToolNotAllowedError, r as AgentBudgetExceededError, u as ClassifiedErrorKind } from "./timeout-8vSIRjzl.js";
2
- import { $d as RunHookMap, Ad as DEFAULT_AGENT_CLOCK, Af as ReadStateMap, Ap as ProviderCapabilities, Bd as ProgressNudgeKind, Bf as SkillResource, Cf as toolOutputByteLength, Df as ToolMap, Ef as ToolDef, Fd as McpToolHookContext, Fi as AgentHookMap, Fp as ToolResult, Gd as PromptPart, Gf as SessionData, Gp as OpenRouterParams, Hd as PromptAudioPart, Hf as SkillsConfig, Ii as AgentHooks, Ip as ToolSpec, Jd as RepeatGuardConfig, Jf as SessionStore, Kd as PromptTextPart, Li as AgentOptions, Lp as TurnResult, Mm as AnthropicParams, Mp as StreamOptions, Pd as McpServerConfig, Pi as Agent, Pp as ToolCall, Qd as RetryConfig, Rf as SkillConfig, Sd as AgentStats, Sf as toolOutputBudgetByteLength, Td as ChildRunStats, Tf as ToolContext, Ud as PromptDocumentPart, Uf as CreateSessionOptions, Vd as ProgressNudgeMessage, Wd as PromptImagePart, Wf as Session, Xd as ResolveContentRef, Yd as RepeatGuardToolMatcher, Zd as ResolveContentRefBlock, _ as MutationValidationFailure, _f as ToolResultMetadata, af as SpawnHookContext, b as MutationValidationResult, bd as AgentClock, bf as TurnFinishReason, br as InteractionToolOptions, cs as ChildAgent, dc as McpConnection, df as ToolResultAudioContent, ds as SpawnToolOptions, ef as SessionContentBlock, er as ValidationResult, ff as ToolResultContent, fs as SpawnToolState, g as MutationValidationBatch, gf as ToolResultImageRefContent, h as statsByModel, hf as ToolResultImageContent, hm as OpenAIParams, if as SessionTurn, jp as StreamCallbacks, kf as ReadStateEntry, kp as Provider, lf as ToolHookContext, m as flattenTurns, mf as ToolResultDocumentRefContent, nf as SessionHookContext, of as StreamHookContext, p as ModelUsage, pf as ToolResultDocumentContent, qd as PromptVideoPart, qf as SessionRun, rf as SessionMessage, rp as RemoteStoreOptions, sf as ThinkingLevel, t as Preset, tf as SessionEndStatus, uf as ToolOutcome, v as MutationValidationHooksOptions, vf as ToolResultTextContent, wf as toolResultToText, wm as CerebrasParams, x as SuccessfulMutationOutcome, xd as AgentRunOptions, xf as TurnUsage, y as MutationValidationMutation, yd as AgentBehavior, yf as ToolResultVideoContent, zd as OAuthRefreshHookContext } from "./index-DC9Iy3Vn.js";
2
+ import { $d as PromptPart, $f as SessionData, $p as OpenRouterParams, Ad as AgentStats, Af as toolOutputBudgetByteLength, Bm as AnthropicParams, Bp as StreamOptions, Cf as ToolResultImageContent, Cm as OpenAIParams, Dd as AgentBehavior, Df as ToolResultVideoContent, Ef as ToolResultTextContent, Ff as ToolMap, Fi as AgentHookMap, Gp as TurnResult, Hd as McpServerConfig, Hp as ToolCall, Ii as AgentHooks, Jd as ProgressNudgeKind, Jf as SkillResource, Kf as SkillConfig, Lf as ReadStateEntry, Li as AgentOptions, Lp as Provider, Mf as toolResultToText, Mm as CerebrasParams, Nd as ChildRunStats, Nf as ToolContext, Od as AgentClock, Of as TurnFinishReason, Pf as ToolDef, Pi as Agent, Qd as PromptImagePart, Qf as Session, Rd as DEFAULT_AGENT_CLOCK, Rf as ReadStateMap, Rp as ProviderCapabilities, Sf as ToolResultDocumentRefContent, Tf as ToolResultMetadata, Ud as McpToolHookContext, Up as ToolResult, Wp as ToolSpec, Xd as PromptAudioPart, Xf as SkillsConfig, Yd as ProgressNudgeMessage, Zd as PromptDocumentPart, Zf as CreateSessionOptions, _ as MutationValidationFailure, _f as ToolHookContext, af as ResolveContentRefBlock, b as MutationValidationResult, bf as ToolResultContent, br as InteractionToolOptions, cf as SessionContentBlock, df as SessionMessage, dp as RemoteStoreOptions, ef as PromptTextPart, er as ValidationResult, ff as SessionTurn, g as MutationValidationBatch, gs as SpawnToolState, h as statsByModel, hc as McpConnection, hf as ThinkingLevel, hs as SpawnToolOptions, if as ResolveContentRef, jf as toolOutputByteLength, kd as AgentRunOptions, kf as TurnUsage, lf as SessionEndStatus, m as flattenTurns, mf as StreamHookContext, nf as RepeatGuardConfig, np as SessionStore, of as RetryConfig, p as ModelUsage, pf as SpawnHookContext, qd as OAuthRefreshHookContext, rf as RepeatGuardToolMatcher, sf as RunHookMap, t as Preset, tf as PromptVideoPart, tp as SessionRun, uf as SessionHookContext, us as ChildAgent, v as MutationValidationHooksOptions, vf as ToolOutcome, wf as ToolResultImageRefContent, x as SuccessfulMutationOutcome, xf as ToolResultDocumentContent, y as MutationValidationMutation, yf as ToolResultAudioContent, zp as StreamCallbacks } from "./index-CR6uvJ3m.js";
3
3
  import { _ as TaskStallInfo, a as ContextType, c as ExecutionContext, g as TaskHandle, h as TaskExitInfo, l as ExecutionHandle, m as TaskEntry, n as ContextCapabilities, o as DetachedTasksCapability, p as SpawnConfig, r as ContextHardening, s as ExecResult, t as BackgroundTaskStatus } from "./types-BDccavwj.js";
4
4
  import { t as SandboxProvider } from "./sandbox-CgjG2VvQ.js";
5
5
  export { type Agent, AgentAbortedError, type AgentBehavior, AgentBudgetExceededError, type AgentClock, AgentContextExceededError, type AgentHookMap, type AgentHooks, type AgentOptions, AgentProviderError, type AgentRunOptions, type AgentStats, AgentToolNotAllowedError, type AnthropicParams, type BackgroundTaskStatus, CONTEXT_EXCEEDED_MESSAGE_PATTERNS, type CerebrasParams, type ChildAgent, type ChildRunStats, type ClassifiedError, type ClassifiedErrorKind, type ContextCapabilities, type ContextHardening, type ContextType, type CreateSessionOptions, DEFAULT_AGENT_CLOCK, type DetachedTasksCapability, type ExecResult, type ExecutionContext, type ExecutionHandle, type InteractionToolOptions, type McpConnection, type McpServerConfig, type McpToolHookContext, type ModelUsage, type MutationValidationBatch, type MutationValidationFailure, type MutationValidationHooksOptions, type MutationValidationMutation, type MutationValidationResult, type OAuthRefreshHookContext, type OpenAIParams, type OpenRouterParams, type Preset, type ProgressNudgeKind, type ProgressNudgeMessage, type PromptAudioPart, type PromptDocumentPart, type PromptImagePart, type PromptPart, type PromptTextPart, type PromptVideoPart, type Provider, type ProviderCapabilities, type ReadStateEntry, type ReadStateMap, type RemoteStoreOptions, type RepeatGuardConfig, type RepeatGuardToolMatcher, type ResolveContentRef, type ResolveContentRefBlock, type RetryConfig, type RunHookMap, type SandboxProvider, type Session, type SessionContentBlock, type SessionData, type SessionEndStatus, type SessionHookContext, type SessionMessage, type SessionRun, type SessionStore, type SessionTurn, type SkillConfig, type SkillResource, type SkillsConfig, type SpawnConfig, type SpawnHookContext, type SpawnToolOptions, type SpawnToolState, type StreamCallbacks, type StreamHookContext, type StreamOptions, type SuccessfulMutationOutcome, type TaskEntry, type TaskExitInfo, type TaskHandle, type TaskStallInfo, type ThinkingLevel, type ToolCall, type ToolContext, type ToolDef, type ToolHookContext, type ToolMap, type ToolOutcome, type ToolResult, type ToolResultAudioContent, type ToolResultContent, type ToolResultDocumentContent, type ToolResultDocumentRefContent, type ToolResultImageContent, type ToolResultImageRefContent, type ToolResultMetadata, type ToolResultTextContent, type ToolResultVideoContent, type ToolSpec, type TurnFinishReason, type TurnResult, type TurnUsage, type ValidationResult, flattenTurns, matchesContextExceeded, statsByModel, toolOutputBudgetByteLength, toolOutputByteLength, toolResultToText };
package/docs/CHAT.md CHANGED
@@ -448,6 +448,8 @@ interface Settings {
448
448
  */
449
449
  toolCallDisplay: ToolCallDisplay
450
450
  showToolResults: boolean
451
+ /** Show every line of `!` shell output instead of the 10-line tail (display-only; the persisted result keeps its 32 KiB trim). Default: off. */
452
+ showFullShellOutput: boolean
451
453
  /** Route every tool call through the approval gate. Default: on. */
452
454
  safeMode: boolean
453
455
  /** Retain `ask_user` + `present_plan` tools and the matching prompt sections. Off strips both at session activation and swaps in the no-prompts doctrine variants. Default: on. */
@@ -152,7 +152,7 @@ ctx.registerConfigItem(categoryId?, item)
152
152
  | `registerMcpServer(McpServerConfig)` | Programmatic MCP server (no `mcps.json` edit) | Discovered `mcps.json` wins on `name` collision. |
153
153
  | `registerSkill(SkillConfig)` | Programmatic `defineSkill()` injection | Force-included in the user's `enabledSkills` allowlist so an existing allowlist doesn't silently hide the extension's skill. |
154
154
  | `registerCompletionProvider(provider)` | New `/` `@` `!` triggers in the prompt | One-character trigger; collides with built-ins (`/` `@` `#`) → ignored. |
155
- | `registerCommand(Command)` | A `/<name>` workflow — ordered handler steps (or a bare `run`) that `emit` local output (full markdown, or collapsed diff-colorable `detail` blocks), call `ctx.runAgent` for interactive sub-runs, or `ctx.generateData` for silent schema-pinned JSON (no turns, no transcript; takes a zod v4 schema — result type inferred — or a plain JSON Schema object); `ctx.session?` exposes a read-only live view of the surrounding session (`id`/`turns`/`runs`/`metadata`) and `ctx.interaction?` offers user interaction (`confirm` yes/no, `askUser` forms, `presentPlan` approval the same prompt-slot UI as the tools, without tool calls or turns) — both optional, so guard for bare hosts | Output is display-only (persisted, never sent to the model); names dedupe first-registration-wins. Extensions extend `/` here rather than via a raw completion provider. |
155
+ | `registerCommand(Command)` | A `/<name>` workflow — ordered handler steps (or a bare `run`) that `emit` local output (full markdown, or collapsed diff-colorable `detail` blocks), call `ctx.runAgent` for interactive sub-runs, `ctx.generateData` for silent schema-pinned JSON (no turns, no transcript; takes a zod v4 schema — result type inferred — or a plain JSON Schema object; optional `model` pins a catalog model), or `ctx.spawnAgents?` for parallel ISOLATED child agents (own context windows, full tool set, per-task `model` pinning — rendered like `spawn`-tool children); `ctx.appendContext?` persists a compact model-visible context note; `ctx.session?` exposes a read-only live view of the surrounding session (`id`/`turns`/`runs`/`metadata`) and `ctx.interaction?` offers user interaction (`confirm` yes/no, `askUser` forms — selects support `multi: true` `presentPlan` approval) the optional surfaces are host-dependent, so guard for bare hosts | `emit` output is display-only (persisted, never sent to the model); `appendContext` is the sanctioned model-visible escape hatch. Names dedupe first-registration-wins. Extensions extend `/` here rather than via a raw completion provider. |
156
156
  | `registerTheme(Theme)` | New `Settings → Theme` option | The picker's option list folds extension themes in at render time; built-in theme ids (`default`, `catppuccin-mocha`, …) shadow extension ids on collision. |
157
157
  | `registerAgent(AgentProfile)` | A complete agent (preset = tools + system + behavior + hooks + mcpServers + skills) added to the registry. Appears in the `shift+tab` cycle alongside Build / Plan. | Built-in profiles (`build`, `plan`) win on id collision; host-supplied profiles win over extensions too. |
158
158
  | `registerProvider(ProviderDescriptor)` | New LLM provider in the auth + model pickers | Host-supplied providers (incl. `BUILTIN_PROVIDERS`) win on `key` collision. |
@@ -326,8 +326,9 @@ ctx.registerPromptTransform(prompt => // transform/cons
326
326
  // one composition order. These are ergonomic (typed verdicts, schema
327
327
  // re-validation) layers over hooks, not a second interception system.
328
328
 
329
- // Late-bound host controls (null/false until the host attaches)
329
+ // Late-bound host controls (null/false/empty until the host attaches)
330
330
  ctx.runtime.model() // active model id
331
+ ctx.runtime.models() // { provider: { key, name }, model: ModelInfo }[] across credentialed providers
331
332
  ctx.runtime.setThinking('high')
332
333
  await ctx.sessions.list() // { id, title?, updatedAt? }[]
333
334
  await ctx.sessions.switch(id) // or ctx.sessions.create()
@@ -888,6 +889,8 @@ ctx.registerConfigItem('limits', {
888
889
 
889
890
  `scope` is currently host metadata; existing stores still persist values in the per-extension settings bag unless a host implements scoped writes. `onChange` is likewise advisory for hosts/UIs (`'live'`, `'agent-rebuild'`, or `'restart'`). `requiresRestart` remains accepted as a compatibility hint.
890
891
 
892
+ Item types: `boolean` (toggle), `number` (input with `min`/`max`/`step`), `string` (input, optional `pattern`/`multiline`), `enum` (cycling choice over static `options`), and `model` — an inline searchable picker over the host's credentialed model catalog (the ctrl+m interaction: type to filter, `↵` picks; with `multi: true`, `↵` toggles and `esc` applies). `model` persists a plain id — or a comma-separated id list when `multi` — and degrades to the free string input on hosts without a catalog, so read it with a tolerant parser and validate ids against `ctx.runtime.models()` yourself.
893
+
891
894
  ## Limitations + gotchas (v1)
892
895
 
893
896
  - **Hot-reload via `/reload`.** Edit your extension, run `/reload` — discovery evicts the extension's module graph before importing, so the current on-disk code (deep imports included) re-evaluates; module-level state resets with it. `teardown` runs when the registry that ran `setup` is disposed (`/reload` swap, cwd change, process teardown) — it is **not** fired by an in-session enable/disable toggle, which live-filters until the next reload.
@@ -74,7 +74,9 @@ Response shape:
74
74
  ```
75
75
 
76
76
  Missing keys = question was skipped (only possible when `required:
77
- false`). Empty-string answers are dropped at serialization.
77
+ false`). Empty-string answers and empty multi-select picks are dropped
78
+ at serialization; a multi-select (`type: 'select'`, `multi: true`)
79
+ answers as an array of choice ids.
78
80
 
79
81
  ## Keyboard
80
82
 
@@ -82,6 +84,8 @@ In the question wizard (multi-question batches):
82
84
 
83
85
  - `↑/↓` (or `j/k`) — navigate options
84
86
  - `↵` — submit the active question / pick the focused option
87
+ - `space` — toggle the focused option (multi-selects only; `↵` submits
88
+ the whole selection, at least one pick required unless `required: false`)
85
89
  - `shift+↹` — back one question (preserves your answers, pre-fills the
86
90
  input with the prior value)
87
91
  - `esc` — leave the form
package/docs/TUI.md CHANGED
@@ -103,7 +103,7 @@ import {
103
103
  | `AgentPickerModal` | Multi-agent profile picker. Hidden when only one profile is registered. |
104
104
  | `SkillsSettingsModal`, `McpsSettingsModal` | Standalone surfaces re-exported for embedders. The main `SettingsModal` integrates the same lists as tabs — prefer that for the in-app flow. `McpsSettingsModal` uses single-letter shortcuts (`l` / `o`); the integrated tab uses `ctrl+L` / `ctrl+O`. |
105
105
  | `ToggleListModal` | Generic checkbox-list modal for `settings.enabledX` allowlists. Powers both the Skills + MCP server pickers; reuse with `keyOf` + `settingKey` + `renderDetail` to add a third toggle surface. |
106
- | `SessionDetailsModal` | `ctrl+x` modal. Actions (host wires which are available): `g` generate title, `e` export markdown, `j` export JSON, `k` compact, `d` delete (two-press), `c` copy id. Renders stats + total token usage rolled up from `session.runs`. |
106
+ | `SessionDetailsModal` | `ctrl+shift+x` modal. Actions (host wires which are available): `g` generate title, `e` export markdown, `j` export JSON, `k` compact, `d` delete (two-press), `c` copy id. Renders stats + total token usage rolled up from `session.runs`. |
107
107
  | `TurnDetailsModal` | Opened from select-turn mode (`ctrl+s` → ↵). `f` fork session at this turn (two-press), `d` delete turn (two-press), `c` copy turn text. Preview is scrollable + capped at 8 000 chars. |
108
108
  | `CompletionPopup` | Provider-agnostic popover. Consumes any `CompletionState<TItem>` — reads `label` + `description` only, so providers stay typed without leaking into the renderer. |
109
109
  | `Transcript`, `Footer`, `Spinner`, `StatusSpinner` | Event renderer, status bar, animated braille spinner, and a 1-cell title-row activity glyph. |
@@ -201,6 +201,7 @@ Every customizable shortcut routes through `<userDir>/keybindings.json` and is p
201
201
  | `ctrl+v` | `attachClipboardImage` | textarea | attach an image from the OS clipboard. Reads via a platform helper (`pngpaste` or an `osascript` fallback on macOS; `wl-paste`/`xclip` on Linux; PowerShell on Windows). An empty bracketed-paste event also probes the clipboard for an image. Soft-fails with an inline notice (no image / helper missing / over SSH / too large). Gated on `attachmentsEnabled` |
202
202
  | `ctrl+g` | `openExternalEditor` | textarea | open the current prompt draft in `$EDITOR` / `$VISUAL` (git-style: temp file, reloads on save & quit). Suspends the renderer for the editor; a non-zero editor exit aborts (prompt unchanged). Gated on `externalEditor` |
203
203
  | `shift+tab` | `cycleAgent` | chat (idle, ≥2 profiles) | cycle to next agent profile |
204
+ | `tab` | — | sessions list | toggle list scope: current project ↔ all projects (ephemeral — doesn't touch the `showAllProjects` setting). Opening a session from another project `chdir`s to that session's `projectRoot` first |
204
205
  | `ctrl+↵` | `pushQueuedMessage` | queue-selection mode | push selected queued message into the live run |
205
206
  | `backspace` | `dropQueuedMessage` | queue-selection mode | drop selected queued message |
206
207
  | `pageup` / `pagedown` | (transcript scroll) | chat (no modal) | scroll the transcript one full page up / down |
@@ -392,7 +393,7 @@ A single shared search input filters the active tab's list (`label + description
392
393
 
393
394
  For the live source of truth, see `SETTINGS_TOGGLES` / `SETTINGS_CHOICES` in `src/chat/settings-context.tsx`. The current shape includes:
394
395
 
395
- - **Toggles** — `safeMode`, `allowInteraction`, `resumeLastSession`, `hideSubagentOutput`, `persistToolResults`, `autoCompact`, `showAllProjects`, `showThinking`, `showToolResults`, `showEditDiffs`, `smoothStreaming`, `showTodoIndicator`, `showThrobber`.
396
+ - **Toggles** — `safeMode`, `allowInteraction`, `resumeLastSession`, `hideSubagentOutput`, `persistToolResults`, `autoCompact`, `showAllProjects`, `showThinking`, `showToolResults`, `showFullShellOutput`, `showEditDiffs`, `smoothStreaming`, `showTodoIndicator`, `showThrobber`.
396
397
  - **Choices** — `toolCallDisplay` (Formatted / Full / Hidden), `autoCompactThreshold` (60% / 70% / 80% / 90%), `theme` (every entry in `BUILTIN_THEMES`), `targetFps` (30 / 60 / 120).
397
398
 
398
399
  `enabledSkills` / `enabledMcps` deliberately default to `undefined` (every discovered entry enabled). The Settings modal seeds the allowlist with the current discovery on first toggle so newly-added entries don't silently flip on — the user opts them in.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zidane",
3
- "version": "6.1.4",
3
+ "version": "6.1.6",
4
4
  "description": "an agent that goes straight to the goal",
5
5
  "type": "module",
6
6
  "private": false,