@kodax-ai/kodax 0.7.95 → 0.7.96-alpha.2

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 (163) hide show
  1. package/CHANGELOG.md +178 -1
  2. package/LICENSE +158 -158
  3. package/README.md +149 -24
  4. package/README_CN.md +117 -24
  5. package/config-templates/config.example.jsonc +2 -1
  6. package/config-templates/integrations/a2a.example.jsonc +91 -91
  7. package/config-templates/integrations/extensions.example.jsonc +7 -7
  8. package/config-templates/integrations/mcp.example.jsonc +16 -16
  9. package/dist/builtin/code-review/SKILL.md +82 -82
  10. package/dist/builtin/git-workflow/SKILL.md +84 -84
  11. package/dist/builtin/skill-creator/SKILL.md +127 -127
  12. package/dist/builtin/skill-creator/agents/analyzer.md +12 -12
  13. package/dist/builtin/skill-creator/agents/comparator.md +13 -13
  14. package/dist/builtin/skill-creator/agents/grader.md +13 -13
  15. package/dist/builtin/skill-creator/references/schemas.md +227 -227
  16. package/dist/builtin/skill-creator/scripts/aggregate-benchmark.d.ts +46 -46
  17. package/dist/builtin/skill-creator/scripts/aggregate-benchmark.js +208 -208
  18. package/dist/builtin/skill-creator/scripts/analyze-benchmark.d.ts +46 -46
  19. package/dist/builtin/skill-creator/scripts/analyze-benchmark.js +286 -286
  20. package/dist/builtin/skill-creator/scripts/compare-runs.d.ts +62 -62
  21. package/dist/builtin/skill-creator/scripts/compare-runs.js +330 -330
  22. package/dist/builtin/skill-creator/scripts/generate-review.d.ts +33 -33
  23. package/dist/builtin/skill-creator/scripts/generate-review.js +414 -414
  24. package/dist/builtin/skill-creator/scripts/grade-evals.d.ts +73 -73
  25. package/dist/builtin/skill-creator/scripts/grade-evals.js +402 -402
  26. package/dist/builtin/skill-creator/scripts/improve-description.d.ts +23 -23
  27. package/dist/builtin/skill-creator/scripts/improve-description.js +160 -160
  28. package/dist/builtin/skill-creator/scripts/init-skill.d.ts +14 -14
  29. package/dist/builtin/skill-creator/scripts/init-skill.js +155 -155
  30. package/dist/builtin/skill-creator/scripts/install-skill.d.ts +29 -29
  31. package/dist/builtin/skill-creator/scripts/install-skill.js +173 -173
  32. package/dist/builtin/skill-creator/scripts/package-skill.d.ts +38 -38
  33. package/dist/builtin/skill-creator/scripts/package-skill.js +121 -121
  34. package/dist/builtin/skill-creator/scripts/quick-validate.d.ts +8 -8
  35. package/dist/builtin/skill-creator/scripts/quick-validate.js +163 -163
  36. package/dist/builtin/skill-creator/scripts/run-eval.d.ts +66 -66
  37. package/dist/builtin/skill-creator/scripts/run-eval.js +353 -353
  38. package/dist/builtin/skill-creator/scripts/run-loop.d.ts +49 -49
  39. package/dist/builtin/skill-creator/scripts/run-loop.js +242 -242
  40. package/dist/builtin/skill-creator/scripts/run-trigger-eval.d.ts +58 -58
  41. package/dist/builtin/skill-creator/scripts/run-trigger-eval.js +224 -224
  42. package/dist/builtin/tdd/SKILL.md +56 -56
  43. package/dist/chunks/agent-4FABF6WK.js +2 -0
  44. package/dist/chunks/argument-completer-72VHB2VL.js +2 -0
  45. package/dist/chunks/{chunk-7JXA3533.js → chunk-4OIQZWA5.js} +223 -226
  46. package/dist/chunks/{chunk-BNVSKIAB.js → chunk-6BVF3HZ7.js} +136 -136
  47. package/dist/chunks/chunk-7JZZIFZH.js +501 -0
  48. package/dist/chunks/chunk-AC7Z2OIY.js +2 -0
  49. package/dist/chunks/{chunk-JS452J2F.js → chunk-C4KYZAFU.js} +2 -2
  50. package/dist/chunks/chunk-CHUPIWIF.js +251 -0
  51. package/dist/chunks/{chunk-C4DTUKTR.js → chunk-GYUU7XLH.js} +5 -4
  52. package/dist/chunks/{chunk-OK4AXDC5.js → chunk-HAX55GOQ.js} +1 -1
  53. package/dist/chunks/chunk-JKTJCGO2.js +418 -0
  54. package/dist/chunks/{chunk-O743AJ5V.js → chunk-LQYETRFK.js} +171 -175
  55. package/dist/chunks/{chunk-2PEDBGKN.js → chunk-LTUZTQ6W.js} +1 -1
  56. package/dist/chunks/chunk-LYWDUSKO.js +2 -0
  57. package/dist/chunks/chunk-NGH6T4FD.js +92 -0
  58. package/dist/chunks/{chunk-SRIJX5ZP.js → chunk-NVRWCSA5.js} +1 -1
  59. package/dist/chunks/chunk-O4DS7RIQ.js +384 -0
  60. package/dist/chunks/chunk-ORXU6OWZ.js +2 -0
  61. package/dist/chunks/chunk-POTW3O65.js +124 -0
  62. package/dist/chunks/{chunk-2TM3W3GK.js → chunk-RIQSS56Y.js} +1 -1
  63. package/dist/chunks/chunk-U27XKEN5.js +407 -0
  64. package/dist/chunks/{chunk-6ABQJUK6.js → chunk-XUX6OUCA.js} +2 -2
  65. package/dist/chunks/{client-JDOS3YJR.js → client-4C456K4O.js} +1 -1
  66. package/dist/chunks/compaction-config-3VQRDFF4.js +2 -0
  67. package/dist/chunks/{construction-bootstrap-YCWHHUYO.js → construction-bootstrap-AHN7EDGG.js} +1 -1
  68. package/dist/chunks/dist-BCBQXAGI.js +2 -0
  69. package/dist/chunks/dist-QK2YDWU6.js +2 -0
  70. package/dist/chunks/host-VIHV7ADG.js +2 -0
  71. package/dist/chunks/run-manager-NBVMU3KV.js +2 -0
  72. package/dist/chunks/utils-MEJZ2IGI.js +2 -0
  73. package/dist/index.d.ts +22 -21
  74. package/dist/index.js +7 -7
  75. package/dist/kodax_bootstrap.js +26 -26
  76. package/dist/kodax_cli.js +1905 -1882
  77. package/dist/native/darwin-arm64/LICENSE-APACHE.txt +13 -0
  78. package/dist/native/darwin-arm64/kodax-text-transaction.node +0 -0
  79. package/dist/native/darwin-arm64/manifest.json +16 -0
  80. package/dist/native/darwin-x64/LICENSE-APACHE.txt +13 -0
  81. package/dist/native/darwin-x64/kodax-text-transaction.node +0 -0
  82. package/dist/native/darwin-x64/manifest.json +16 -0
  83. package/dist/native/linux-arm64/LICENSE-APACHE.txt +13 -0
  84. package/dist/native/linux-arm64/kodax-text-transaction.node +0 -0
  85. package/dist/native/linux-arm64/manifest.json +16 -0
  86. package/dist/native/linux-x64/LICENSE-APACHE.txt +13 -0
  87. package/dist/native/linux-x64/kodax-text-transaction.node +0 -0
  88. package/dist/native/linux-x64/manifest.json +16 -0
  89. package/dist/native/win32-x64/LICENSE-APACHE.txt +13 -0
  90. package/dist/native/win32-x64/NOTICE-windows-sandbox.txt +8 -0
  91. package/dist/native/win32-x64/kodax-windows-sandbox.exe +0 -0
  92. package/dist/native/win32-x64/kodax-windows-text-transaction.node +0 -0
  93. package/dist/native/win32-x64/manifest.json +30 -0
  94. package/dist/provider-capabilities.json +108 -2
  95. package/dist/runtime-worker.js +1745 -1727
  96. package/dist/sandbox-network-broker.js +1715 -0
  97. package/dist/sdk-a2a.d.ts +13 -12
  98. package/dist/sdk-a2a.js +1 -1
  99. package/dist/sdk-agent.d.ts +27 -18
  100. package/dist/sdk-agent.js +1 -1
  101. package/dist/sdk-coding.d.ts +107 -58
  102. package/dist/sdk-coding.js +1 -1
  103. package/dist/sdk-experimental-memory.d.ts +4 -4
  104. package/dist/sdk-experimental-memory.js +1 -1
  105. package/dist/sdk-llm.d.ts +9 -10
  106. package/dist/sdk-llm.js +1 -1
  107. package/dist/sdk-mcp.js +1 -1
  108. package/dist/sdk-media.d.ts +1 -1
  109. package/dist/sdk-media.js +1 -1
  110. package/dist/sdk-repl.d.ts +25 -17
  111. package/dist/sdk-repl.js +1 -1
  112. package/dist/sdk-runtime.d.ts +41 -17
  113. package/dist/sdk-runtime.js +1 -1
  114. package/dist/sdk-sandbox.d.ts +17 -3
  115. package/dist/sdk-sandbox.js +1 -1
  116. package/dist/sdk-session.d.ts +8 -7
  117. package/dist/sdk-session.js +1 -1
  118. package/dist/sdk-skills.js +1 -1
  119. package/dist/semantic-worker.js +61 -61
  120. package/dist/types-chunks/{base.d-vopO1rml.d.ts → base.d-COo8E2dk.d.ts} +18 -27
  121. package/dist/types-chunks/{bash-prefix-extractor.d-B2rxNI4L.d.ts → bash-prefix-extractor.d-DQOlA8cy.d.ts} +72 -52
  122. package/dist/types-chunks/{capability-learning.d-CE1tm29C.d.ts → capability-learning.d-lRPgA3Or.d.ts} +1 -1
  123. package/dist/types-chunks/{capsule.d-Y7QRS4J2.d.ts → capsule.d-0zxsgXg_.d.ts} +3 -3
  124. package/dist/types-chunks/{controller.d-BR-UVeUR.d.ts → controller.d-BTtyIIC1.d.ts} +1 -1
  125. package/dist/types-chunks/{controller.d-C5noq5-w.d.ts → controller.d-C7tXUcXo.d.ts} +2 -2
  126. package/dist/types-chunks/{guardrail.d-DqHD-61O.d.ts → guardrail.d-DKTyEHJa.d.ts} +5 -5
  127. package/dist/types-chunks/{history-retrieval.d-CKU8zmt_.d.ts → history-retrieval.d-CHnL99S7.d.ts} +2 -2
  128. package/dist/types-chunks/{public-api.d-D7fXaWW8.d.ts → public-api.d-Dx3L3W4Z.d.ts} +7 -4
  129. package/dist/types-chunks/{repl.d-BYDb14s6.d.ts → repl.d-mO01olIa.d.ts} +5 -5
  130. package/dist/types-chunks/{resolver.d-CwHUwbdE.d.ts → resolver.d-DlXPjeyx.d.ts} +38 -6
  131. package/dist/types-chunks/{review-inbox.d-BSgFewyj.d.ts → review-inbox.d-WDSe1nze.d.ts} +1 -1
  132. package/dist/types-chunks/{run-manager.d-BVJSntpS.d.ts → run-manager.d-DENbbzgR.d.ts} +1 -1
  133. package/dist/types-chunks/{sdk-session-CqEG84oP.d.ts → sdk-session-DYHGXXH4.d.ts} +3 -3
  134. package/dist/types-chunks/{shell-command-sets.d-DqaaBwhU.d.ts → shell-command-sets.d-CjFqS4dp.d.ts} +1 -1
  135. package/dist/types-chunks/{side-query.d-iH0P9ASy.d.ts → side-query.d-j8A3sFv_.d.ts} +2 -2
  136. package/dist/types-chunks/{types.d-rUOjXych.d.ts → types.d-BbZjR0Wr.d.ts} +1 -1
  137. package/dist/types-chunks/{types.d-CaTXAW_Q.d.ts → types.d-BkTIKdH6.d.ts} +2 -2
  138. package/dist/types-chunks/{types.d-C5xQEFcj.d.ts → types.d-DncLrpu_.d.ts} +4 -4
  139. package/dist/types-chunks/{types.d-CK9A9rpP.d.ts → types.d-Xy0f3x4i.d.ts} +9 -0
  140. package/dist/types-chunks/{utils.d-CWUyLiXo.d.ts → utils.d-CnxefMos.d.ts} +6 -6
  141. package/package.json +10 -3
  142. package/public_docs/README.md +130 -0
  143. package/public_docs/configuration/sandbox.md +289 -0
  144. package/public_docs/sdk/embedder-guide.md +6674 -0
  145. package/scripts/kodax-bin.cjs +28 -28
  146. package/scripts/production-env.cjs +25 -25
  147. package/dist/chunks/agent-XXZMXKKA.js +0 -2
  148. package/dist/chunks/argument-completer-KCYDGTQW.js +0 -2
  149. package/dist/chunks/chunk-77PNP27P.js +0 -92
  150. package/dist/chunks/chunk-7QBWHCIZ.js +0 -2
  151. package/dist/chunks/chunk-BHE66SP3.js +0 -123
  152. package/dist/chunks/chunk-BR2OSB2I.js +0 -722
  153. package/dist/chunks/chunk-DSMONSVB.js +0 -407
  154. package/dist/chunks/chunk-Q5VRWSKG.js +0 -418
  155. package/dist/chunks/chunk-XWRPOGJN.js +0 -4
  156. package/dist/chunks/chunk-Y5VIQBT6.js +0 -383
  157. package/dist/chunks/compaction-config-EGS4577X.js +0 -2
  158. package/dist/chunks/dist-ITTXQHRJ.js +0 -2
  159. package/dist/chunks/dist-KFYN3OKD.js +0 -2
  160. package/dist/chunks/host-VAYADIPW.js +0 -2
  161. package/dist/chunks/run-manager-52IJZMZJ.js +0 -2
  162. package/dist/chunks/utils-P7PBSL3R.js +0 -2
  163. package/dist/sandbox-workspace-session.js +0 -1705
package/CHANGELOG.md CHANGED
@@ -4,7 +4,184 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  > Full history for versions prior to v0.7.0: [CHANGELOG_ARCHIVE.md](docs/CHANGELOG_ARCHIVE.md)
6
6
 
7
- ## [Unreleased]
7
+ ## [0.7.96-alpha.2] - 2026-08-28
8
+
9
+ ### Fixed
10
+
11
+ - Restored the Windows boot-identity PowerShell resolution helper that the
12
+ FEATURE_295 cleanup deleted while its last caller stayed (Issue 325). On
13
+ v0.7.96-alpha.1 every Windows exit settlement crashed with
14
+ `windowsAclPowerShellExecutable is not defined` and left sandbox cleanup
15
+ `unverified`. v0.7.96-alpha.1 is broken on Windows; upgrade to
16
+ v0.7.96-alpha.2.
17
+
18
+ ## [0.7.96-alpha.1] - 2026-08-28
19
+
20
+ ### Fixed
21
+
22
+ - FEATURE_296 replaces the local tool-result capacity hard gate with
23
+ capacity-debt admission plus a bounded recovery ladder (ADR-067). Executed
24
+ `tool_use`/`tool_result` pairs always commit; an over-budget batch records
25
+ `capacityDebt` metadata with its artifact pointer instead of aborting the
26
+ Run. The next iteration's compaction relieves the debt (a still-over
27
+ compacted transcript commits best-effort with `stillOverCapacity`), the
28
+ output reserve shrinks floor-bounded (3000) while over capacity — both in
29
+ the post-compaction judgment and on the wire-level request — and an
30
+ irreducibly oversized fresh user input degrades to a preview head plus a
31
+ run-scoped volatile pointer the model pages in slices, on the request copy
32
+ only; the full input stays behind an unguessable in-memory capability that
33
+ is removed when the Run ends and leaves no filesystem residue. A
34
+ transient compaction-summarizer failure fails open until the existing
35
+ circuit breaker opens; repeated failures or reducible still-over-capacity
36
+ results then produce a typed capacity terminal instead of repeatedly
37
+ invoking the summarizer. An irreducibly oversized fresh input does not spend
38
+ that summary-failure budget, and paging its transient capability cannot be
39
+ re-spilled into the global tool-result store. Provider output-token and
40
+ reasoning self-heal state is likewise request-local, so concurrent Runs
41
+ sharing a cached provider cannot alter one another. Runner final recounts
42
+ stamp capacity debt even when only the final
43
+ assembled batch crosses the budget. Local capacity terminals now classify as
44
+ `failureKind: "context_capacity"` with structured `contextTokens`
45
+ (`required`/`available`) — never masked as a provider credential failure,
46
+ classified by isolated class identity rather than message text — and the
47
+ daemon schema plus resume round-trip preserve the new fields.
48
+
49
+ - Classified Runtime failures now expose one credential-safe `failureDetail`
50
+ across failure events (or settlement `run.updated`), Run result/status, and
51
+ Session diagnostics. The stable
52
+ KodaX `providerErrorCode` is kept separate from bounded upstream codes and
53
+ request metadata; KodaX-owned `safeMessage` templates never copy provider
54
+ response text, credentials, prompts, headers/bodies, URLs, local paths,
55
+ stacks, or raw errors.
56
+
57
+ - Unified text diffs now use budget-capped anchored LCS matching, grouping
58
+ replacement blocks as removals followed by additions without duplicating
59
+ shared context. REPL diff context stays legible, and add/remove backgrounds
60
+ span the full terminal row while preserving selection highlighting.
61
+
62
+ - FEATURE_295 separates cross-platform trusted text transactions from shell
63
+ containment. On Windows, Linux, and macOS, `write`, `edit`, `multi_edit`, `insert_after_anchor`, and
64
+ `undo` no longer enter ASRT/workspace-session/helper state; final identity,
65
+ per-slot kernel locking, revision CAS, flushed atomic replacement, and
66
+ stale-safe undo are enforced in the trusted Runtime; Unix uses a fixed
67
+ per-UID coordination root shared across Runtime config homes, a separate
68
+ protected addon cache, descriptor-bound loading, no-follow walking,
69
+ kernel `flock`, file/parent `fsync`, atomic rename, and ownership/mode/xattr/
70
+ Linux inode-flag and macOS extended-ACL/file-flag preservation.
71
+ Atomic replacement is now an explicit commit point: Windows performs no
72
+ fallible cleanup afterward, while Unix post-rename durability/rollback
73
+ uncertainty carries a complete receipt as `text_mutation_commit_uncertain`
74
+ and forbids blind retry. Windows preserves effective DACL entries; the
75
+ filesystem may canonicalize DACL inheritance/protection control during
76
+ replacement. Linux ZFS remains fail-closed until its case and
77
+ normalization semantics can be proven from a descriptor. Unix commits now
78
+ derive their namespace slot before locking without reading the target; all
79
+ target bytes and identity are observed under the slot lock, so a concurrent
80
+ atomic replace becomes the intended stale result instead of a false hard-link
81
+ rejection (Issue 320).
82
+ The Windows native
83
+ shell runner keeps framed stdin/process containment but drops the
84
+ command-lifetime filesystem-effect owner, uses a nonce-bound per-policy private desktop,
85
+ and suppresses final-target modal faults while preserving exit status, allowing independent policies,
86
+ Sessions, and Runtime processes to execute concurrently. `CloseStdin` no
87
+ longer closes the host control stream: cancellation and timeout send a
88
+ distinct `Terminate` frame over authenticated directional control/event
89
+ pipes, wait for the runner to prove the Job empty through a nonce-bound
90
+ terminal record, and preserve the original stop reason; generic PID-tree
91
+ cleanup is emergency-only. The incompatible native shell protocol advances
92
+ to v5. Request and terminal state now lives under a verified no-reparse,
93
+ protected host/SYSTEM-only control directory. SDK policy validation and the
94
+ native host independently reject overlapping allow roots and deny roots at or
95
+ below this boundary before ACL authorization or target creation. Doctor is
96
+ verify-only; explicit setup creates missing state or repairs only an empty,
97
+ no-reparse, host-owned direct child after proving the sandbox SID idle.
98
+ Packaged Electron Node targets consume and scrub `ELECTRON_RUN_AS_NODE` before
99
+ target or descendant code loads. The incompatible
100
+ authority split advances Windows `sandboxRuntime` to v6 so clients cannot
101
+ silently reuse a daemon that still implements the v5 graph. Existing
102
+ installations perform a one-time idle-account SID rotation through
103
+ `kodax sandbox setup`; native shell admission validates the resulting
104
+ machine protocol/SID generation before broker launch. Both native artifacts
105
+ are checked against an embedded manifest and loaded/executed only from a
106
+ protected content-addressed store whose immutable-image verification remains
107
+ shareable across concurrent Runtime processes. Packaged Electron hosts now
108
+ resolve only explicitly unpacked physical native files before applying those
109
+ checks; the release smoke asserts both KodaX native files and the Windows ASRT
110
+ runner are present under `app.asar.unpacked` (Issue 319). Linux/macOS shells remain
111
+ per-command ASRT bubblewrap/Seatbelt calls with no KodaX workspace-session
112
+ owner (Issues 304–306). Public POSIX sandbox calls now require target-start
113
+ attestation over a broker-only bounded control pipe. A proven pre-target exit
114
+ returns structured `backend_launch_failed`; a missing, malformed, or
115
+ mismatched control frame returns `execution_uncertain` and forbids blind
116
+ retry instead of misreporting that the command did not run. The ASRT-owned
117
+ runner's pre-main creation window is
118
+ recorded separately as Issue 307; final targets remain creation-time Job
119
+ contained. Runner loader/pre-main modal faults are part of that same upstream
120
+ bootstrap residual; it does not reach trusted text tools.
121
+
122
+ - Bundled Windows binaries (Bun `--compile`) no longer resolve the Windows
123
+ sandbox runtime binary onto Bun's virtual `B:\` drive: the build ships a
124
+ `vendor/srt-win/<arch>/srt-win.exe` sidecar next to the executable,
125
+ `resolveSrtWinSourcePath()` prefers it in bundled builds, and
126
+ `kodax sandbox setup` installs through the prepared runner's resolved
127
+ descriptor instead of the library's module-relative lookup (Issue 303).
128
+
129
+ - Windows ASRT import now accepts a package-store hardlink only in a bundled
130
+ build, after a handle-bound bounded read matches the embedded release
131
+ SHA-256. Development manifests and sources remain single-link. KodaX still
132
+ copies it into the protected content-addressed cache, whose executable must
133
+ remain single-link, ACL-protected, and hash-correct. Valid package layouts no
134
+ longer make model-issued Bash silently use the declared normal-permission
135
+ fallback (Issue 317). The repository now declares npm as its package manager;
136
+ alternate local package metadata remains outside the project contract.
137
+
138
+ - Windows native shell admission no longer writes traversal ACEs to every
139
+ allow-root ancestor. The restricted target's enabled traverse privilege
140
+ reaches an exact capability-protected root without directory-list/content
141
+ authority, while explicit deny-ancestor conflicts remain rejected. This
142
+ avoids unbounded profile-DACL propagation and restores cold `%TEMP%` shell
143
+ startup within the existing deadline (Issue 318).
144
+
145
+ ### Added
146
+
147
+ - Custom providers can opt into image / vision input with a single
148
+ `"imageInput": true` field (typical for self-hosted multimodal models on
149
+ vLLM / SGLang OpenAI-compatible endpoints, e.g. Qwen-VL). The flag forces
150
+ `capabilityProfile.multimodalSupport: "image-input"` on every surface —
151
+ provider instance, keyless capability queries, media routing, and the
152
+ provider-policy gate — so image artifacts pass `MODEL_INPUT_UNSUPPORTED`
153
+ validation and are forwarded as standard `image_url` blocks. Leaving it
154
+ unset changes nothing; text-only models keep the pre-send rejection.
155
+ - DeepSeek vision model `deepseek-v4-flash-vision-exp` is registered on the
156
+ `deepseek` provider (selectable via `/model`). It reuses the existing
157
+ OpenAI-style `image_url` wire path, so pasted/read images are forwarded on
158
+ user turns, while `deepseek-v4-flash` / `deepseek-v4-pro` stay text-only via
159
+ per-model media routing (ark-coding mixed-capability convention). Cost
160
+ accounting uses flash pricing — images bill as size-derived tokens (≤384 per
161
+ image) at text-token rates.
162
+ - `glm-5.3-flash` (published 2026-08-26) is registered on `zhipu`,
163
+ `zhipu-coding`, and `zai-coding` (selectable via `/model`). It is the first
164
+ natively multimodal GLM: image input is routed and validated end-to-end
165
+ (Anthropic-compat image blocks on the coding routes, `image_url` on the
166
+ public route), video stays provider-native-unwired, and file input remains
167
+ unwired end-to-end. 1M context, 131K output, cannot disable thinking (same
168
+ `zai-glm-5.3` effort mapping as `glm-5.3`), and priced from the official
169
+ announcement at $0.15 input / $0.50 output / $0.03 cached input per million
170
+ tokens. Defaults stay on `glm-5.3`; `glm-5.3` / `glm-5.2` remain text-only
171
+ image-unsupported.
172
+ - Release publication now ships CI-built bytes. The npm package embeds
173
+ prebuilt native authorities for five platforms, which only the Release
174
+ workflow's cross-platform matrix can assemble, so the universal tarball is
175
+ built by its `npm-package` job and attached to the GitHub Release as
176
+ `kodax-ai-kodax-<version>.tgz` + `kodax-ai-kodax-npm.sha256`. `node
177
+ scripts/release.mjs` (no arguments) downloads those exact assets, verifies
178
+ the sha256 checksum and sidecar audit, and publishes them; on a local
179
+ machine `--pack-only` produces a host-only LOCAL TEST TARBALL that keeps
180
+ `private: true` (npm refuses to publish it) for `npm install <path>` SDK
181
+ consumer testing. The asset download honors `HTTPS_PROXY` / `https_proxy`
182
+ through undici's `ProxyAgent` (Node's global fetch ignores proxy env vars,
183
+ so proxy-only machines previously failed with an opaque connect timeout);
184
+ network-layer download errors now surface the underlying cause.
8
185
 
9
186
  ---
10
187
 
package/LICENSE CHANGED
@@ -1,158 +1,158 @@
1
- KodaX-AI Fair Core License (KAI-FCL) 1.0
2
-
3
- Copyright (c) 2026 icetomoyo <icetomoyo@gmail.com> <icetomoyo@163.com>
4
-
5
- All rights reserved except as expressly granted in this License.
6
-
7
- This License applies to KodaX releases and files that include this LICENSE file
8
- or otherwise identify KAI-FCL as their governing license. Earlier KodaX
9
- releases or files that were distributed under the Apache License, Version 2.0
10
- remain licensed under Apache-2.0 for those released copies. Third-party
11
- components remain governed by their own license terms.
12
-
13
- Effective Version Notice
14
-
15
- KodaX-AI intends KAI-FCL to govern official KodaX distributions for version
16
- 0.7.70 and later when those distributions are provided by KodaX-AI with this
17
- LICENSE file, a KAI-FCL notice, or accompanying customer terms.
18
-
19
- Historical Git tags, source archives, binaries, npm packages, or other copies
20
- of KodaX that were already distributed with Apache-2.0 license text remain
21
- licensed under Apache-2.0 for those specific copies. This notice does not
22
- retroactively revoke rights that were already granted under Apache-2.0.
23
-
24
- For avoidance of doubt, current and future official enterprise/customer
25
- packages for KodaX 0.7.70 and later should be delivered with KAI-FCL or
26
- separate KodaX-AI customer terms.
27
-
28
- 1. Definitions
29
-
30
- "Software" means KodaX, including its source code, object code, documentation,
31
- configuration, examples, official npm packages, binaries, and other materials
32
- distributed by KodaX-AI under this License.
33
-
34
- "KodaX-AI" means the copyright owner, licensor, or license steward for the
35
- Software.
36
-
37
- "You" means the individual or legal entity exercising permissions under this
38
- License.
39
-
40
- "Community Use" means use by an individual for personal learning, individual
41
- non-commercial work, classroom instruction, non-production research, or
42
- developing and testing changes for contribution to public open-source
43
- projects.
44
-
45
- "Commercial or Managed Use" means any use by or for a company, school, lab,
46
- institution, government agency, or other organization for administration, IT
47
- operations, team research and development, production work, intranet hosting,
48
- managed-device deployment, paid service delivery, customer redistribution,
49
- hosted or managed services, or other business purposes.
50
-
51
- "Customer Agreement" means a written agreement with KodaX-AI, including
52
- evaluation terms, an order form, an enterprise agreement, partner terms, or
53
- another commercial authorization document.
54
-
55
- "License Entitlement" means a signed offline entitlement file, commonly using
56
- the `.kodax-license` extension, that identifies product, edition, license
57
- kind, customer, expiry, enabled features, binding claims, and signature. A
58
- License Entitlement proves technical authorization; it is not by itself the
59
- complete legal contract.
60
-
61
- 2. Community Grant
62
-
63
- Subject to this License, KodaX-AI grants You a limited, non-exclusive,
64
- non-transferable, no-charge license to download, install, run, inspect, and
65
- modify the Software solely for Community Use.
66
-
67
- You may make copies of the Software as reasonably necessary for Your own
68
- Community Use, backup, testing, and contribution preparation. You may submit
69
- changes, patches, issues, and documentation improvements to KodaX-AI. Unless a
70
- separate written contribution agreement says otherwise, You grant KodaX-AI a
71
- perpetual, worldwide, irrevocable, royalty-free license to use, reproduce,
72
- modify, distribute, sublicense, and otherwise exploit contributions You submit
73
- for inclusion in the Software.
74
-
75
- 3. Commercial and Managed Use
76
-
77
- Commercial or Managed Use is not permitted under the Community Grant.
78
-
79
- Enterprise evaluation, enterprise production, intranet deployment,
80
- managed-device deployment, commercial redistribution, partner distribution,
81
- paid service delivery, or any other Commercial or Managed Use requires a
82
- Customer Agreement with KodaX-AI and, where the Software requires it, a valid
83
- License Entitlement.
84
-
85
- All production customer License Entitlements must include an expiry date unless
86
- a Customer Agreement expressly says otherwise. Longer commercial terms are
87
- renewals or replacements, not perpetual local secrets.
88
-
89
- 4. Restrictions
90
-
91
- Except as expressly allowed by this License or a Customer Agreement, You must
92
- not:
93
-
94
- - use the Software for Commercial or Managed Use;
95
- - sell, rent, lease, sublicense, host, provide, or redistribute the Software to
96
- third parties;
97
- - remove, disable, bypass, tamper with, or misrepresent license enforcement,
98
- entitlement checks, signatures, expiry checks, binding checks, or related
99
- technical controls;
100
- - remove or alter copyright, license, attribution, trademark, or third-party
101
- notices;
102
- - use KodaX-AI names, logos, product names, or trademarks except to describe
103
- the origin of the Software accurately;
104
- - violate applicable law or use the Software to infringe third-party rights.
105
-
106
- 5. Separate Agreements
107
-
108
- If You have a Customer Agreement with KodaX-AI, that Customer Agreement
109
- controls for the Software, edition, term, users, sites, features, and use cases
110
- it covers. This License controls only where the Customer Agreement does not
111
- grant additional rights or impose different obligations.
112
-
113
- 6. Ownership
114
-
115
- KodaX-AI and its licensors retain all right, title, and interest in and to the
116
- Software. No rights are granted except those expressly stated in this License
117
- or a Customer Agreement.
118
-
119
- 7. Third-Party Software
120
-
121
- The Software may include or depend on third-party software, packages, models,
122
- fonts, assets, or tools. Those materials are licensed by their respective
123
- owners under their own terms. This License does not change third-party license
124
- obligations.
125
-
126
- 8. Termination
127
-
128
- Your rights under this License terminate automatically if You violate this
129
- License and do not cure the violation within 30 days after receiving notice
130
- from KodaX-AI. Rights also terminate immediately for intentional license
131
- enforcement bypass, unauthorized Commercial or Managed Use, or unauthorized
132
- redistribution. After termination, You must stop using and distributing the
133
- Software, and You must delete copies not otherwise authorized by a Customer
134
- Agreement or by another license that independently applies to a specific
135
- released copy.
136
-
137
- 9. Disclaimer of Warranty
138
-
139
- THE SOFTWARE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTIES OR
140
- CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WARRANTIES OF
141
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT,
142
- SECURITY, ACCURACY, OR AVAILABILITY.
143
-
144
- 10. Limitation of Liability
145
-
146
- TO THE MAXIMUM EXTENT PERMITTED BY LAW, KODAX-AI AND ITS CONTRIBUTORS WILL NOT
147
- BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR
148
- PUNITIVE DAMAGES, OR FOR LOST PROFITS, LOST REVENUE, LOST DATA, BUSINESS
149
- INTERRUPTION, GOODWILL LOSS, OR PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
150
- ARISING OUT OF OR RELATING TO THE SOFTWARE OR THIS LICENSE, EVEN IF ADVISED OF
151
- THE POSSIBILITY OF SUCH DAMAGES.
152
-
153
- 11. Contact
154
-
155
- For enterprise evaluation, production licensing, redistribution permission, or
156
- questions about this License, contact:
157
-
158
- icetomoyo <icetomoyo@gmail.com> <icetomoyo@163.com>
1
+ KodaX-AI Fair Core License (KAI-FCL) 1.0
2
+
3
+ Copyright (c) 2026 icetomoyo <icetomoyo@gmail.com> <icetomoyo@163.com>
4
+
5
+ All rights reserved except as expressly granted in this License.
6
+
7
+ This License applies to KodaX releases and files that include this LICENSE file
8
+ or otherwise identify KAI-FCL as their governing license. Earlier KodaX
9
+ releases or files that were distributed under the Apache License, Version 2.0
10
+ remain licensed under Apache-2.0 for those released copies. Third-party
11
+ components remain governed by their own license terms.
12
+
13
+ Effective Version Notice
14
+
15
+ KodaX-AI intends KAI-FCL to govern official KodaX distributions for version
16
+ 0.7.70 and later when those distributions are provided by KodaX-AI with this
17
+ LICENSE file, a KAI-FCL notice, or accompanying customer terms.
18
+
19
+ Historical Git tags, source archives, binaries, npm packages, or other copies
20
+ of KodaX that were already distributed with Apache-2.0 license text remain
21
+ licensed under Apache-2.0 for those specific copies. This notice does not
22
+ retroactively revoke rights that were already granted under Apache-2.0.
23
+
24
+ For avoidance of doubt, current and future official enterprise/customer
25
+ packages for KodaX 0.7.70 and later should be delivered with KAI-FCL or
26
+ separate KodaX-AI customer terms.
27
+
28
+ 1. Definitions
29
+
30
+ "Software" means KodaX, including its source code, object code, documentation,
31
+ configuration, examples, official npm packages, binaries, and other materials
32
+ distributed by KodaX-AI under this License.
33
+
34
+ "KodaX-AI" means the copyright owner, licensor, or license steward for the
35
+ Software.
36
+
37
+ "You" means the individual or legal entity exercising permissions under this
38
+ License.
39
+
40
+ "Community Use" means use by an individual for personal learning, individual
41
+ non-commercial work, classroom instruction, non-production research, or
42
+ developing and testing changes for contribution to public open-source
43
+ projects.
44
+
45
+ "Commercial or Managed Use" means any use by or for a company, school, lab,
46
+ institution, government agency, or other organization for administration, IT
47
+ operations, team research and development, production work, intranet hosting,
48
+ managed-device deployment, paid service delivery, customer redistribution,
49
+ hosted or managed services, or other business purposes.
50
+
51
+ "Customer Agreement" means a written agreement with KodaX-AI, including
52
+ evaluation terms, an order form, an enterprise agreement, partner terms, or
53
+ another commercial authorization document.
54
+
55
+ "License Entitlement" means a signed offline entitlement file, commonly using
56
+ the `.kodax-license` extension, that identifies product, edition, license
57
+ kind, customer, expiry, enabled features, binding claims, and signature. A
58
+ License Entitlement proves technical authorization; it is not by itself the
59
+ complete legal contract.
60
+
61
+ 2. Community Grant
62
+
63
+ Subject to this License, KodaX-AI grants You a limited, non-exclusive,
64
+ non-transferable, no-charge license to download, install, run, inspect, and
65
+ modify the Software solely for Community Use.
66
+
67
+ You may make copies of the Software as reasonably necessary for Your own
68
+ Community Use, backup, testing, and contribution preparation. You may submit
69
+ changes, patches, issues, and documentation improvements to KodaX-AI. Unless a
70
+ separate written contribution agreement says otherwise, You grant KodaX-AI a
71
+ perpetual, worldwide, irrevocable, royalty-free license to use, reproduce,
72
+ modify, distribute, sublicense, and otherwise exploit contributions You submit
73
+ for inclusion in the Software.
74
+
75
+ 3. Commercial and Managed Use
76
+
77
+ Commercial or Managed Use is not permitted under the Community Grant.
78
+
79
+ Enterprise evaluation, enterprise production, intranet deployment,
80
+ managed-device deployment, commercial redistribution, partner distribution,
81
+ paid service delivery, or any other Commercial or Managed Use requires a
82
+ Customer Agreement with KodaX-AI and, where the Software requires it, a valid
83
+ License Entitlement.
84
+
85
+ All production customer License Entitlements must include an expiry date unless
86
+ a Customer Agreement expressly says otherwise. Longer commercial terms are
87
+ renewals or replacements, not perpetual local secrets.
88
+
89
+ 4. Restrictions
90
+
91
+ Except as expressly allowed by this License or a Customer Agreement, You must
92
+ not:
93
+
94
+ - use the Software for Commercial or Managed Use;
95
+ - sell, rent, lease, sublicense, host, provide, or redistribute the Software to
96
+ third parties;
97
+ - remove, disable, bypass, tamper with, or misrepresent license enforcement,
98
+ entitlement checks, signatures, expiry checks, binding checks, or related
99
+ technical controls;
100
+ - remove or alter copyright, license, attribution, trademark, or third-party
101
+ notices;
102
+ - use KodaX-AI names, logos, product names, or trademarks except to describe
103
+ the origin of the Software accurately;
104
+ - violate applicable law or use the Software to infringe third-party rights.
105
+
106
+ 5. Separate Agreements
107
+
108
+ If You have a Customer Agreement with KodaX-AI, that Customer Agreement
109
+ controls for the Software, edition, term, users, sites, features, and use cases
110
+ it covers. This License controls only where the Customer Agreement does not
111
+ grant additional rights or impose different obligations.
112
+
113
+ 6. Ownership
114
+
115
+ KodaX-AI and its licensors retain all right, title, and interest in and to the
116
+ Software. No rights are granted except those expressly stated in this License
117
+ or a Customer Agreement.
118
+
119
+ 7. Third-Party Software
120
+
121
+ The Software may include or depend on third-party software, packages, models,
122
+ fonts, assets, or tools. Those materials are licensed by their respective
123
+ owners under their own terms. This License does not change third-party license
124
+ obligations.
125
+
126
+ 8. Termination
127
+
128
+ Your rights under this License terminate automatically if You violate this
129
+ License and do not cure the violation within 30 days after receiving notice
130
+ from KodaX-AI. Rights also terminate immediately for intentional license
131
+ enforcement bypass, unauthorized Commercial or Managed Use, or unauthorized
132
+ redistribution. After termination, You must stop using and distributing the
133
+ Software, and You must delete copies not otherwise authorized by a Customer
134
+ Agreement or by another license that independently applies to a specific
135
+ released copy.
136
+
137
+ 9. Disclaimer of Warranty
138
+
139
+ THE SOFTWARE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTIES OR
140
+ CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WARRANTIES OF
141
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT,
142
+ SECURITY, ACCURACY, OR AVAILABILITY.
143
+
144
+ 10. Limitation of Liability
145
+
146
+ TO THE MAXIMUM EXTENT PERMITTED BY LAW, KODAX-AI AND ITS CONTRIBUTORS WILL NOT
147
+ BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR
148
+ PUNITIVE DAMAGES, OR FOR LOST PROFITS, LOST REVENUE, LOST DATA, BUSINESS
149
+ INTERRUPTION, GOODWILL LOSS, OR PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
150
+ ARISING OUT OF OR RELATING TO THE SOFTWARE OR THIS LICENSE, EVEN IF ADVISED OF
151
+ THE POSSIBILITY OF SUCH DAMAGES.
152
+
153
+ 11. Contact
154
+
155
+ For enterprise evaluation, production licensing, redistribution permission, or
156
+ questions about this License, contact:
157
+
158
+ icetomoyo <icetomoyo@gmail.com> <icetomoyo@163.com>