zidane 6.4.2 → 6.4.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 (114) hide show
  1. package/README.md +7 -5
  2. package/dist/{acp-Ba4OzG71.js → acp-BLO58K3F.js} +5 -5
  3. package/dist/{acp-Ba4OzG71.js.map → acp-BLO58K3F.js.map} +1 -1
  4. package/dist/acp-cli.js +6 -6
  5. package/dist/acp.d.ts +1 -1
  6. package/dist/acp.js +1 -1
  7. package/dist/{agent-BMJKrD84.js → agent-8sUadp5M.js} +72 -9
  8. package/dist/{agent-BMJKrD84.js.map → agent-8sUadp5M.js.map} +1 -1
  9. package/dist/agent.d.ts +1 -1
  10. package/dist/agent.js +2 -2
  11. package/dist/{anthropic-BJhMEi7x.js → anthropic-D3lkw5mv.js} +3 -3
  12. package/dist/{anthropic-BJhMEi7x.js.map → anthropic-D3lkw5mv.js.map} +1 -1
  13. package/dist/{auth-C2Hmb0tt.js → auth-BzYbbdN_.js} +95 -5
  14. package/dist/auth-BzYbbdN_.js.map +1 -0
  15. package/dist/chat/pure.d.ts +3 -3
  16. package/dist/chat/pure.js +1 -1
  17. package/dist/chat.d.ts +4 -4
  18. package/dist/chat.js +4 -4
  19. package/dist/{context-transport-CwJZxs56.js → context-transport-D29WvHcm.js} +3 -3
  20. package/dist/{context-transport-CwJZxs56.js.map → context-transport-D29WvHcm.js.map} +1 -1
  21. package/dist/contexts/daytona.d.ts +1 -1
  22. package/dist/contexts/e2b.d.ts +1 -1
  23. package/dist/eval.d.ts +1 -1
  24. package/dist/eval.js +1 -1
  25. package/dist/extensions.d.ts +1 -1
  26. package/dist/extensions.js +1 -1
  27. package/dist/headless.d.ts +1 -1
  28. package/dist/headless.js +3 -3
  29. package/dist/{index-Gy9wi80M.d.ts → index-C-Nd2ZbV.d.ts} +343 -2
  30. package/dist/index-C-Nd2ZbV.d.ts.map +1 -0
  31. package/dist/index.d.ts +2 -2
  32. package/dist/index.js +11 -10
  33. package/dist/index.js.map +1 -1
  34. package/dist/{login-llWTV13a.js → login-CMVVnAHS.js} +2 -2
  35. package/dist/{login-llWTV13a.js.map → login-CMVVnAHS.js.map} +1 -1
  36. package/dist/{mcp-IaEpSauj.js → mcp-3GXUBwur.js} +3 -3
  37. package/dist/{mcp-IaEpSauj.js.map → mcp-3GXUBwur.js.map} +1 -1
  38. package/dist/mcp.d.ts +1 -1
  39. package/dist/mcp.js +1 -1
  40. package/dist/{messages-D1EryrDs.js → messages-C01kKGj0.js} +2 -2
  41. package/dist/{messages-D1EryrDs.js.map → messages-C01kKGj0.js.map} +1 -1
  42. package/dist/{openai-compat-0MJq4-g9.js → openai-compat-B3c_hzwf.js} +42 -2
  43. package/dist/openai-compat-B3c_hzwf.js.map +1 -0
  44. package/dist/output/stream-json.d.ts +1 -1
  45. package/dist/output/terminal.d.ts +1 -1
  46. package/dist/presets.d.ts +1 -1
  47. package/dist/presets.js +1 -1
  48. package/dist/providers/anthropic.d.ts +1 -1
  49. package/dist/providers/anthropic.js +1 -1
  50. package/dist/providers/arcee.d.ts +1 -1
  51. package/dist/providers/arcee.js +1 -1
  52. package/dist/providers/baseten.d.ts +1 -1
  53. package/dist/providers/baseten.js +1 -1
  54. package/dist/providers/cerebras.d.ts +1 -1
  55. package/dist/providers/cerebras.js +1 -1
  56. package/dist/providers/local.d.ts +1 -1
  57. package/dist/providers/local.js +1 -1
  58. package/dist/providers/openai-compat.d.ts +1 -1
  59. package/dist/providers/openai-compat.js +1 -1
  60. package/dist/providers/openai.d.ts +1 -1
  61. package/dist/providers/openai.js +2 -2
  62. package/dist/providers/openrouter.d.ts +1 -1
  63. package/dist/providers/openrouter.js +1 -1
  64. package/dist/providers/xai.d.ts +1 -1
  65. package/dist/providers/xai.js +1 -1
  66. package/dist/{providers-BSrJx0Tn.js → providers-z1vU0b2Q.js} +100 -4
  67. package/dist/providers-z1vU0b2Q.js.map +1 -0
  68. package/dist/providers.d.ts +2 -2
  69. package/dist/providers.js +5 -5
  70. package/dist/restate.d.ts +52 -2
  71. package/dist/restate.d.ts.map +1 -1
  72. package/dist/restate.js +151 -33
  73. package/dist/restate.js.map +1 -1
  74. package/dist/session/sqlite.d.ts +1 -1
  75. package/dist/{session-B40flcj7.js → session-cr9VdoEO.js} +2 -2
  76. package/dist/{session-B40flcj7.js.map → session-cr9VdoEO.js.map} +1 -1
  77. package/dist/session.d.ts +1 -1
  78. package/dist/session.js +2 -2
  79. package/dist/skills.d.ts +1 -1
  80. package/dist/{stdio-D-02FOVT.js → stdio-BvL8HGYW.js} +2 -2
  81. package/dist/{stdio-D-02FOVT.js.map → stdio-BvL8HGYW.js.map} +1 -1
  82. package/dist/{stdio-loader-Byqw5KjJ.js → stdio-loader-CjfoqBle.js} +2 -2
  83. package/dist/{stdio-loader-Byqw5KjJ.js.map → stdio-loader-CjfoqBle.js.map} +1 -1
  84. package/dist/{tool-formatters-CU0memLh.d.ts → tool-formatters-DPQjso_C.d.ts} +2 -2
  85. package/dist/{tool-formatters-CU0memLh.d.ts.map → tool-formatters-DPQjso_C.d.ts.map} +1 -1
  86. package/dist/{read-state-Dt7UbVsd.js → tool-state-DTs-3ZHH.js} +218 -2
  87. package/dist/tool-state-DTs-3ZHH.js.map +1 -0
  88. package/dist/tools/fetch-url.d.ts +1 -1
  89. package/dist/tools/web-search.d.ts +1 -1
  90. package/dist/tools.d.ts +1 -1
  91. package/dist/tools.js +2 -2
  92. package/dist/{transcript-anchors-4IdT10xC.d.ts → transcript-anchors-BCUpbNxc.d.ts} +2 -2
  93. package/dist/{transcript-anchors-4IdT10xC.d.ts.map → transcript-anchors-BCUpbNxc.d.ts.map} +1 -1
  94. package/dist/{transcript-anchors-CJ4gJn1T.js → transcript-anchors-CgDzYin1.js} +5 -5
  95. package/dist/{transcript-anchors-CJ4gJn1T.js.map → transcript-anchors-CgDzYin1.js.map} +1 -1
  96. package/dist/tui.d.ts +19 -3
  97. package/dist/tui.d.ts.map +1 -1
  98. package/dist/tui.js +90 -54
  99. package/dist/tui.js.map +1 -1
  100. package/dist/{turn-operations-B08dE8kH.d.ts → turn-operations-Bu2Hkinw.d.ts} +3 -3
  101. package/dist/{turn-operations-B08dE8kH.d.ts.map → turn-operations-Bu2Hkinw.d.ts.map} +1 -1
  102. package/dist/{turn-operations-CBdrdYiF.js → turn-operations-CAvi8NYt.js} +67 -2
  103. package/dist/{turn-operations-CBdrdYiF.js.map → turn-operations-CAvi8NYt.js.map} +1 -1
  104. package/dist/types.d.ts +2 -2
  105. package/dist/{xai-CpPbCGWO.js → xai-BPwMQSuF.js} +2 -2
  106. package/dist/{xai-CpPbCGWO.js.map → xai-BPwMQSuF.js.map} +1 -1
  107. package/docs/ARCHITECTURE.md +2 -0
  108. package/docs/RESTATE.md +66 -2
  109. package/package.json +8 -8
  110. package/dist/auth-C2Hmb0tt.js.map +0 -1
  111. package/dist/index-Gy9wi80M.d.ts.map +0 -1
  112. package/dist/openai-compat-0MJq4-g9.js.map +0 -1
  113. package/dist/providers-BSrJx0Tn.js.map +0 -1
  114. package/dist/read-state-Dt7UbVsd.js.map +0 -1
package/README.md CHANGED
@@ -18,7 +18,7 @@ Small, hookable core with sensible defaults. Three principles guide the design:
18
18
 
19
19
  Everything below is in service of those:
20
20
 
21
- - 🧠 **Providers** — Anthropic, OpenAI Codex, OpenRouter, Cerebras, xAI Grok, Arcee, local LLMs, plus `openaiCompat` (Baseten, Fireworks, Groq). OAuth + API key with auto-refresh. Model metadata (output ceiling, pricing, context window) is overridable for every provider via `behavior.modelCatalog` or `setModelCatalog()` — for gateway aliases, private deployments, and models newer than the bundled registry.
21
+ - 🧠 **Providers** — Anthropic, OpenAI Codex, OpenRouter, Cerebras, xAI Grok, Arcee, Z.ai, local LLMs, plus `openaiCompat` (Baseten, Fireworks, Groq). OAuth + API key with auto-refresh. Model metadata (output ceiling, pricing, context window) is overridable for every provider via `behavior.modelCatalog` or `setModelCatalog()` — for gateway aliases, private deployments, and models newer than the bundled registry.
22
22
  - 🪝 **Hookable turn loop** — every text/thinking delta, tool call, MCP, session, skill, spawn, OAuth, validation, and budget event is observable and (mostly) mutable.
23
23
  - 🛠️ **First-class tools** — `shell`, `read_file`, `write_file`, `edit`, `multi_edit`, `glob`, `grep`, `spawn`, human-in-the-loop, plus any [MCP](https://modelcontextprotocol.io) server. Per-call gates, arg auto-coerce, hallucinated-tool fallback, error rewriting. Lazy MCP disclosure via `tool_search`. Optional `todowrite` / `todoread` for persistent task checkpointing across prompts.
24
24
  - 🔌 **ACP v1 adapter** — run Zidane from ACP clients like Zed via `zidane-acp`, or embed the protocol server with `zidane/acp`.
@@ -214,10 +214,10 @@ Fallback: `params.apiKey` > `params.access` > `ANTHROPIC_API_KEY` env > `.creden
214
214
 
215
215
  `extraHeaders` merges request headers for proxies/gateways; reserved Anthropic headers still win on collision. `extraBodyParams` passes un-typed Messages API fields through (factory options win on collision). Use when Anthropic ships a beta before zidane has a knob. `openaiCompat` accepts the same field (e.g. `reasoning_effort`, `metadata`, OpenRouter `provider` routing).
216
216
 
217
- ### OpenRouter / OpenAI / Cerebras / xAI / Arcee / Baseten / Local
217
+ ### OpenRouter / OpenAI / Cerebras / xAI / Arcee / Z.ai / Mistral / Baseten / Local
218
218
 
219
219
  ```ts
220
- import { openrouter, openai, cerebras, xai, arcee, baseten, local } from 'zidane/providers'
220
+ import { openrouter, openai, cerebras, xai, arcee, zai, mistral, baseten, local } from 'zidane/providers'
221
221
 
222
222
  openrouter({ apiKey: 'sk-or-...', defaultModel: 'google/gemini-pro' })
223
223
  openai() // OpenAI Codex OAuth
@@ -225,6 +225,8 @@ openai({ access: 'eyJ...', refresh: '...', expires: Date.now() + 3600_000, accou
225
225
  cerebras({ apiKey: 'csk-...', defaultModel: 'zai-glm-4.7' })
226
226
  xai({ apiKey: 'xai-...' }) // or OAuth (SuperGrok / X Premium+) via the auth screen
227
227
  arcee({ apiKey: 'arcee-...', defaultModel: 'trinity-large-thinking' })
228
+ zai({ apiKey: '...', defaultModel: 'glm-4.7-flash' }) // Z.ai (Zhipu) GLM Open Platform — GLM-4.7-Flash is free
229
+ mistral({ apiKey: '...', defaultModel: 'mistral-medium-latest' }) // Mistral La Plateforme — thinking via `reasoning_effort` (small / medium-3.5 / magistral)
228
230
  baseten({ apiKey: '...', defaultModel: 'zai-org/GLM-5.1' }) // Baseten Model APIs
229
231
  local({ baseURL: 'http://localhost:8000/v1', defaultModel: 'qwen3-coder' })
230
232
  ```
@@ -260,7 +262,7 @@ openaiCompat({
260
262
  |---|---|
261
263
  | `anthropic` | Honored natively. |
262
264
  | `openrouter` | Forwarded; Anthropic + Gemini honor; OpenAI / DeepSeek / Grok / Groq / Moonshot cache automatically and ignore the markers. |
263
- | `arcee` / `local` / `openaiCompat` | Off by default for strict OpenAI-compatible schemas; use `openaiCompat({ cacheBreakpoints: true })` only for endpoints that honor `cache_control`. |
265
+ | `arcee` / `zai` / `mistral` / `local` / `openaiCompat` | Off by default for strict OpenAI-compatible schemas; use `openaiCompat({ cacheBreakpoints: true })` only for endpoints that honor `cache_control`. |
264
266
  | `baseten` | Markers off — Baseten Model APIs cache every request automatically server-side (discounted `cacheRead` tokens surface in usage). |
265
267
  | `cerebras` | Off. |
266
268
  | `openai` (Codex) | Not affected (pi-ai wire format). |
@@ -293,7 +295,7 @@ await agent.run({ prompt: 'just chat', tools: {} }) // no tools for one run
293
295
 
294
296
  ## Thinking
295
297
 
296
- Named levels or exact budgets. Traces persist as `{ type: 'thinking', text }` blocks and stream via `stream:thinking`. Supported by Anthropic (native) and OpenRouter/Arcee (`reasoning_content`/`reasoning` SSE fields).
298
+ Named levels or exact budgets. Traces persist as `{ type: 'thinking', text }` blocks and stream via `stream:thinking`. Supported by Anthropic (native) and OpenRouter/Arcee/Z.ai/Baseten (`reasoning_content`/`reasoning` SSE fields).
297
299
 
298
300
  | Level | Default budget |
299
301
  |---|---|
@@ -1,10 +1,10 @@
1
1
  import { l as toolResultToText } from "./types-BIarq1qE.js";
2
- import { c as readStateKey, l as resolveReadStateMap, r as hashContent } from "./read-state-Dt7UbVsd.js";
3
- import { ht as basic_default, t as createAgent } from "./agent-BMJKrD84.js";
2
+ import { f as readStateKey, p as resolveReadStateMap, s as hashContent } from "./tool-state-DTs-3ZHH.js";
3
+ import { ht as basic_default, t as createAgent } from "./agent-8sUadp5M.js";
4
4
  import { r as createProcessContext } from "./contexts-DWVt7MvF.js";
5
5
  import { u as errorMessage } from "./errors-BwBxu3zD.js";
6
- import { P as defaultPromptMessage } from "./openai-compat-0MJq4-g9.js";
7
- import { o as loadSession, t as createSession } from "./session-B40flcj7.js";
6
+ import { P as defaultPromptMessage } from "./openai-compat-B3c_hzwf.js";
7
+ import { o as loadSession, t as createSession } from "./session-cr9VdoEO.js";
8
8
  import { t as effectiveInputFromTurn } from "./stats-DAKBEKjc.js";
9
9
  import { r as fetchUrl } from "./fetch-url-B7aSg6Bp.js";
10
10
  import { webSearch } from "./tools/web-search.js";
@@ -1920,4 +1920,4 @@ function runAcpStdioServer(options) {
1920
1920
  //#endregion
1921
1921
  export { createJsonRpcConnection as _, wrapToolsForAcpClient as a, sessionBlocksToAcp as c, StartUsageError as d, buildStartLocalOptions as f, JsonRpcRemoteError as g, startProviderNames as h, withAcpDefaultTools as i, stopReasonFromRun as l, startLocalArgOptions as m, AcpProtocolError as n, acpMcpServersToZidane as o, parseStartArgValues as p, createAcpServer as r, acpPromptToPromptParts as s, runAcpStdioServer as t, toolResultToAcpContent as u };
1922
1922
 
1923
- //# sourceMappingURL=acp-Ba4OzG71.js.map
1923
+ //# sourceMappingURL=acp-BLO58K3F.js.map