@kodax-ai/kodax 0.7.94 → 0.7.96-alpha.1
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.
- package/CHANGELOG.md +228 -1
- package/LICENSE +158 -158
- package/README.md +176 -26
- package/README_CN.md +138 -24
- package/config-templates/config.example.jsonc +2 -1
- package/config-templates/integrations/a2a.example.jsonc +91 -91
- package/config-templates/integrations/extensions.example.jsonc +7 -7
- package/config-templates/integrations/mcp.example.jsonc +16 -16
- package/dist/builtin/code-review/SKILL.md +82 -82
- package/dist/builtin/git-workflow/SKILL.md +84 -84
- package/dist/builtin/skill-creator/SKILL.md +127 -127
- package/dist/builtin/skill-creator/agents/analyzer.md +12 -12
- package/dist/builtin/skill-creator/agents/comparator.md +13 -13
- package/dist/builtin/skill-creator/agents/grader.md +13 -13
- package/dist/builtin/skill-creator/references/schemas.md +227 -227
- package/dist/builtin/skill-creator/scripts/aggregate-benchmark.d.ts +46 -46
- package/dist/builtin/skill-creator/scripts/aggregate-benchmark.js +208 -208
- package/dist/builtin/skill-creator/scripts/analyze-benchmark.d.ts +46 -46
- package/dist/builtin/skill-creator/scripts/analyze-benchmark.js +286 -286
- package/dist/builtin/skill-creator/scripts/compare-runs.d.ts +62 -62
- package/dist/builtin/skill-creator/scripts/compare-runs.js +330 -330
- package/dist/builtin/skill-creator/scripts/generate-review.d.ts +33 -33
- package/dist/builtin/skill-creator/scripts/generate-review.js +414 -414
- package/dist/builtin/skill-creator/scripts/grade-evals.d.ts +73 -73
- package/dist/builtin/skill-creator/scripts/grade-evals.js +402 -402
- package/dist/builtin/skill-creator/scripts/improve-description.d.ts +23 -23
- package/dist/builtin/skill-creator/scripts/improve-description.js +160 -160
- package/dist/builtin/skill-creator/scripts/init-skill.d.ts +14 -14
- package/dist/builtin/skill-creator/scripts/init-skill.js +155 -155
- package/dist/builtin/skill-creator/scripts/install-skill.d.ts +29 -29
- package/dist/builtin/skill-creator/scripts/install-skill.js +173 -173
- package/dist/builtin/skill-creator/scripts/package-skill.d.ts +38 -38
- package/dist/builtin/skill-creator/scripts/package-skill.js +121 -121
- package/dist/builtin/skill-creator/scripts/quick-validate.d.ts +8 -8
- package/dist/builtin/skill-creator/scripts/quick-validate.js +163 -163
- package/dist/builtin/skill-creator/scripts/run-eval.d.ts +66 -66
- package/dist/builtin/skill-creator/scripts/run-eval.js +353 -353
- package/dist/builtin/skill-creator/scripts/run-loop.d.ts +49 -49
- package/dist/builtin/skill-creator/scripts/run-loop.js +242 -242
- package/dist/builtin/skill-creator/scripts/run-trigger-eval.d.ts +58 -58
- package/dist/builtin/skill-creator/scripts/run-trigger-eval.js +224 -224
- package/dist/builtin/tdd/SKILL.md +56 -56
- package/dist/chunks/{agent-Q3FB3GNZ.js → agent-DJGM4OJ5.js} +1 -1
- package/dist/chunks/argument-completer-AL2YS2BO.js +2 -0
- package/dist/chunks/{chunk-UNRHTOT5.js → chunk-6BVF3HZ7.js} +338 -141
- package/dist/chunks/chunk-7QE2N4KT.js +2 -0
- package/dist/chunks/chunk-AC7Z2OIY.js +2 -0
- package/dist/chunks/chunk-ATUTCE64.js +407 -0
- package/dist/chunks/{chunk-ZGZLSKN6.js → chunk-DGLQLN5D.js} +225 -230
- package/dist/chunks/chunk-EGGM64ET.js +501 -0
- package/dist/chunks/chunk-GEQL647P.js +418 -0
- package/dist/chunks/{chunk-ZKEXHAXA.js → chunk-GTI6MDD4.js} +219 -217
- package/dist/chunks/{chunk-YMNFQ7SQ.js → chunk-H24VHMYQ.js} +5 -4
- package/dist/chunks/{chunk-IIIAUDGW.js → chunk-HAX55GOQ.js} +1 -1
- package/dist/chunks/chunk-I4ECKOJH.js +2 -0
- package/dist/chunks/{chunk-NGOPE4KK.js → chunk-ID7PU5WV.js} +1 -1
- package/dist/chunks/chunk-JBXX4KY3.js +384 -0
- package/dist/chunks/chunk-L3WC5B3Y.js +251 -0
- package/dist/chunks/{chunk-BVV3IA5W.js → chunk-LTUZTQ6W.js} +1 -1
- package/dist/chunks/chunk-NGH6T4FD.js +92 -0
- package/dist/chunks/{chunk-N7HIJNJH.js → chunk-NVRWCSA5.js} +1 -1
- package/dist/chunks/chunk-PBHZIK6D.js +319 -0
- package/dist/chunks/chunk-POTW3O65.js +124 -0
- package/dist/chunks/{chunk-6BATYA47.js → chunk-VJLWGEQF.js} +2 -2
- package/dist/chunks/{client-4IOUU4U3.js → client-4C456K4O.js} +1 -1
- package/dist/chunks/compaction-config-3VQRDFF4.js +2 -0
- package/dist/chunks/{construction-bootstrap-BL56XTNW.js → construction-bootstrap-MHDVJHXN.js} +1 -1
- package/dist/chunks/dist-BCBQXAGI.js +2 -0
- package/dist/chunks/dist-CXJQCGCL.js +2 -0
- package/dist/chunks/host-CXUVSQP6.js +2 -0
- package/dist/chunks/run-manager-EMPT7N63.js +2 -0
- package/dist/chunks/{utils-CGGQLMJS.js → utils-MHONHOVU.js} +1 -1
- package/dist/index.d.ts +28 -27
- package/dist/index.js +7 -7
- package/dist/kodax_bootstrap.js +26 -26
- package/dist/kodax_cli.js +2150 -1889
- package/dist/kodax_resume.js +35 -35
- package/dist/native/darwin-arm64/LICENSE-APACHE.txt +13 -0
- package/dist/native/darwin-arm64/kodax-text-transaction.node +0 -0
- package/dist/native/darwin-arm64/manifest.json +16 -0
- package/dist/native/darwin-x64/LICENSE-APACHE.txt +13 -0
- package/dist/native/darwin-x64/kodax-text-transaction.node +0 -0
- package/dist/native/darwin-x64/manifest.json +16 -0
- package/dist/native/linux-arm64/LICENSE-APACHE.txt +13 -0
- package/dist/native/linux-arm64/kodax-text-transaction.node +0 -0
- package/dist/native/linux-arm64/manifest.json +16 -0
- package/dist/native/linux-x64/LICENSE-APACHE.txt +13 -0
- package/dist/native/linux-x64/kodax-text-transaction.node +0 -0
- package/dist/native/linux-x64/manifest.json +16 -0
- package/dist/native/win32-x64/LICENSE-APACHE.txt +13 -0
- package/dist/native/win32-x64/NOTICE-windows-sandbox.txt +8 -0
- package/dist/native/win32-x64/kodax-windows-sandbox.exe +0 -0
- package/dist/native/win32-x64/kodax-windows-text-transaction.node +0 -0
- package/dist/native/win32-x64/manifest.json +30 -0
- package/dist/provider-capabilities.json +108 -2
- package/dist/runtime-worker.js +1975 -1719
- package/dist/sandbox-network-broker.js +1715 -0
- package/dist/sdk-a2a.d.ts +19 -18
- package/dist/sdk-a2a.js +1 -1
- package/dist/sdk-agent.d.ts +45 -26
- package/dist/sdk-agent.js +1 -1
- package/dist/sdk-coding.d.ts +116 -69
- package/dist/sdk-coding.js +1 -1
- package/dist/sdk-experimental-memory.d.ts +6 -6
- package/dist/sdk-experimental-memory.js +1 -1
- package/dist/sdk-llm.d.ts +10 -11
- package/dist/sdk-llm.js +1 -1
- package/dist/sdk-mcp.d.ts +4 -4
- package/dist/sdk-mcp.js +1 -1
- package/dist/sdk-media.d.ts +1 -1
- package/dist/sdk-media.js +1 -1
- package/dist/sdk-repl.d.ts +30 -22
- package/dist/sdk-repl.js +1 -1
- package/dist/sdk-runtime.d.ts +54 -28
- package/dist/sdk-runtime.js +1 -1
- package/dist/sdk-sandbox.d.ts +19 -3
- package/dist/sdk-sandbox.js +1 -1
- package/dist/sdk-session.d.ts +11 -10
- package/dist/sdk-session.js +1 -1
- package/dist/sdk-skills.d.ts +2 -2
- package/dist/sdk-skills.js +1 -1
- package/dist/semantic-worker.js +278 -81
- package/dist/types-chunks/{base.d-JjF6aKsh.d.ts → base.d-COo8E2dk.d.ts} +18 -27
- package/dist/types-chunks/{bash-prefix-extractor.d-AOJdvO4r.d.ts → bash-prefix-extractor.d-DQOlA8cy.d.ts} +86 -55
- package/dist/types-chunks/{capability-learning.d-BAxy0mfx.d.ts → capability-learning.d-lRPgA3Or.d.ts} +1 -1
- package/dist/types-chunks/{capsule.d-nYbM4MNL.d.ts → capsule.d-0zxsgXg_.d.ts} +5 -5
- package/dist/types-chunks/{config.d-CTPaqsD-.d.ts → config.d-CJy1WENT.d.ts} +1 -1
- package/dist/types-chunks/{controller.d-CTvvOy_V.d.ts → controller.d-BTtyIIC1.d.ts} +1 -1
- package/dist/types-chunks/{controller.d-Bm1i9RVj.d.ts → controller.d-C7tXUcXo.d.ts} +4 -4
- package/dist/types-chunks/{cost-tracker.d-MTAt6N7b.d.ts → cost-tracker.d-BeaenODW.d.ts} +1 -1
- package/dist/types-chunks/{guardrail.d-D8RyuTrv.d.ts → guardrail.d-DKTyEHJa.d.ts} +9 -9
- package/dist/types-chunks/{history-retrieval.d-D0LNyBED.d.ts → history-retrieval.d-CHnL99S7.d.ts} +2 -2
- package/dist/types-chunks/{integration-config.d-BHoiz-WZ.d.ts → integration-config.d-BNowXE8k.d.ts} +3 -3
- package/dist/types-chunks/{manager.d-D_1fqveb.d.ts → manager.d-B67TmPO1.d.ts} +3 -3
- package/dist/types-chunks/{oauth-login.d-Cz9OpSmz.d.ts → oauth-login.d-6i-vidxv.d.ts} +3 -3
- package/dist/types-chunks/{public-api.d-BNmLxGnR.d.ts → public-api.d-Dx3L3W4Z.d.ts} +10 -6
- package/dist/types-chunks/{repl.d-Q6Z3lV2-.d.ts → repl.d-mO01olIa.d.ts} +8 -8
- package/dist/types-chunks/{resolver.d-DparsV6Y.d.ts → resolver.d-DlXPjeyx.d.ts} +38 -6
- package/dist/types-chunks/{review-inbox.d-dAtGH3g2.d.ts → review-inbox.d-WDSe1nze.d.ts} +3 -3
- package/dist/types-chunks/{run-manager.d-BeSEc2OL.d.ts → run-manager.d-DENbbzgR.d.ts} +2 -2
- package/dist/types-chunks/{sdk-session-BwC_i6JB.d.ts → sdk-session-DYHGXXH4.d.ts} +3 -3
- package/dist/types-chunks/{sdk-skills-Bg1yL4i4.d.ts → sdk-skills-DokfOoJF.d.ts} +1 -1
- package/dist/types-chunks/{shell-command-sets.d-hkYPr4Dy.d.ts → shell-command-sets.d-CjFqS4dp.d.ts} +1 -1
- package/dist/types-chunks/{side-query.d-DNes6rHA.d.ts → side-query.d-j8A3sFv_.d.ts} +3 -3
- package/dist/types-chunks/{types-D8OiIEwA.d.ts → types-PHjfwebT.d.ts} +1 -1
- package/dist/types-chunks/{types.d-EjZTEEVu.d.ts → types.d-BbZjR0Wr.d.ts} +6 -2
- package/dist/types-chunks/{types.d-Bdv2JoiC.d.ts → types.d-BkTIKdH6.d.ts} +3 -3
- package/dist/types-chunks/{types.d-ssh6zRaf.d.ts → types.d-Cb8RdrjU.d.ts} +1 -1
- package/dist/types-chunks/{types.d-CzrUifXB.d.ts → types.d-DncLrpu_.d.ts} +6 -6
- package/dist/types-chunks/{types.d-Cv09EdJR.d.ts → types.d-Xy0f3x4i.d.ts} +10 -1
- package/dist/types-chunks/{utils.d-Buv_Gxhi.d.ts → utils.d-CnxefMos.d.ts} +8 -8
- package/package.json +10 -4
- package/public_docs/README.md +130 -0
- package/public_docs/configuration/sandbox.md +289 -0
- package/public_docs/sdk/embedder-guide.md +6674 -0
- package/scripts/kodax-bin.cjs +28 -28
- package/scripts/production-env.cjs +25 -25
- package/dist/chunks/argument-completer-SS2Q2ZKT.js +0 -2
- package/dist/chunks/chunk-56CIZI5I.js +0 -418
- package/dist/chunks/chunk-77PNP27P.js +0 -92
- package/dist/chunks/chunk-7CKGNNTU.js +0 -383
- package/dist/chunks/chunk-7QBWHCIZ.js +0 -2
- package/dist/chunks/chunk-BHE66SP3.js +0 -123
- package/dist/chunks/chunk-EASGM7W7.js +0 -687
- package/dist/chunks/chunk-NK5AWGNW.js +0 -319
- package/dist/chunks/chunk-ZMGATMXN.js +0 -407
- package/dist/chunks/compaction-config-2DTN3OHT.js +0 -2
- package/dist/chunks/dist-B4CB7KHY.js +0 -2
- package/dist/chunks/dist-ITTXQHRJ.js +0 -2
- package/dist/chunks/host-7747QS3X.js +0 -2
- package/dist/chunks/run-manager-NLNMI3P2.js +0 -2
- package/dist/sandbox-workspace-session.js +0 -2031
package/CHANGELOG.md
CHANGED
|
@@ -4,7 +4,234 @@ 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
|
-
## [
|
|
7
|
+
## [0.7.96-alpha.1] - 2026-08-28
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- FEATURE_296 replaces the local tool-result capacity hard gate with
|
|
12
|
+
capacity-debt admission plus a bounded recovery ladder (ADR-067). Executed
|
|
13
|
+
`tool_use`/`tool_result` pairs always commit; an over-budget batch records
|
|
14
|
+
`capacityDebt` metadata with its artifact pointer instead of aborting the
|
|
15
|
+
Run. The next iteration's compaction relieves the debt (a still-over
|
|
16
|
+
compacted transcript commits best-effort with `stillOverCapacity`), the
|
|
17
|
+
output reserve shrinks floor-bounded (3000) while over capacity — both in
|
|
18
|
+
the post-compaction judgment and on the wire-level request — and an
|
|
19
|
+
irreducibly oversized fresh user input degrades to a preview head plus a
|
|
20
|
+
run-scoped volatile pointer the model pages in slices, on the request copy
|
|
21
|
+
only; the full input stays behind an unguessable in-memory capability that
|
|
22
|
+
is removed when the Run ends and leaves no filesystem residue. A
|
|
23
|
+
transient compaction-summarizer failure fails open until the existing
|
|
24
|
+
circuit breaker opens; repeated failures or reducible still-over-capacity
|
|
25
|
+
results then produce a typed capacity terminal instead of repeatedly
|
|
26
|
+
invoking the summarizer. An irreducibly oversized fresh input does not spend
|
|
27
|
+
that summary-failure budget, and paging its transient capability cannot be
|
|
28
|
+
re-spilled into the global tool-result store. Provider output-token and
|
|
29
|
+
reasoning self-heal state is likewise request-local, so concurrent Runs
|
|
30
|
+
sharing a cached provider cannot alter one another. Runner final recounts
|
|
31
|
+
stamp capacity debt even when only the final
|
|
32
|
+
assembled batch crosses the budget. Local capacity terminals now classify as
|
|
33
|
+
`failureKind: "context_capacity"` with structured `contextTokens`
|
|
34
|
+
(`required`/`available`) — never masked as a provider credential failure,
|
|
35
|
+
classified by isolated class identity rather than message text — and the
|
|
36
|
+
daemon schema plus resume round-trip preserve the new fields.
|
|
37
|
+
|
|
38
|
+
- Classified Runtime failures now expose one credential-safe `failureDetail`
|
|
39
|
+
across failure events (or settlement `run.updated`), Run result/status, and
|
|
40
|
+
Session diagnostics. The stable
|
|
41
|
+
KodaX `providerErrorCode` is kept separate from bounded upstream codes and
|
|
42
|
+
request metadata; KodaX-owned `safeMessage` templates never copy provider
|
|
43
|
+
response text, credentials, prompts, headers/bodies, URLs, local paths,
|
|
44
|
+
stacks, or raw errors.
|
|
45
|
+
|
|
46
|
+
- Unified text diffs now use budget-capped anchored LCS matching, grouping
|
|
47
|
+
replacement blocks as removals followed by additions without duplicating
|
|
48
|
+
shared context. REPL diff context stays legible, and add/remove backgrounds
|
|
49
|
+
span the full terminal row while preserving selection highlighting.
|
|
50
|
+
|
|
51
|
+
- FEATURE_295 separates cross-platform trusted text transactions from shell
|
|
52
|
+
containment. On Windows, Linux, and macOS, `write`, `edit`, `multi_edit`, `insert_after_anchor`, and
|
|
53
|
+
`undo` no longer enter ASRT/workspace-session/helper state; final identity,
|
|
54
|
+
per-slot kernel locking, revision CAS, flushed atomic replacement, and
|
|
55
|
+
stale-safe undo are enforced in the trusted Runtime; Unix uses a fixed
|
|
56
|
+
per-UID coordination root shared across Runtime config homes, a separate
|
|
57
|
+
protected addon cache, descriptor-bound loading, no-follow walking,
|
|
58
|
+
kernel `flock`, file/parent `fsync`, atomic rename, and ownership/mode/xattr/
|
|
59
|
+
Linux inode-flag and macOS extended-ACL/file-flag preservation.
|
|
60
|
+
Atomic replacement is now an explicit commit point: Windows performs no
|
|
61
|
+
fallible cleanup afterward, while Unix post-rename durability/rollback
|
|
62
|
+
uncertainty carries a complete receipt as `text_mutation_commit_uncertain`
|
|
63
|
+
and forbids blind retry. Windows preserves effective DACL entries; the
|
|
64
|
+
filesystem may canonicalize DACL inheritance/protection control during
|
|
65
|
+
replacement. Linux ZFS remains fail-closed until its case and
|
|
66
|
+
normalization semantics can be proven from a descriptor. Unix commits now
|
|
67
|
+
derive their namespace slot before locking without reading the target; all
|
|
68
|
+
target bytes and identity are observed under the slot lock, so a concurrent
|
|
69
|
+
atomic replace becomes the intended stale result instead of a false hard-link
|
|
70
|
+
rejection (Issue 320).
|
|
71
|
+
The Windows native
|
|
72
|
+
shell runner keeps framed stdin/process containment but drops the
|
|
73
|
+
command-lifetime filesystem-effect owner, uses a nonce-bound per-policy private desktop,
|
|
74
|
+
and suppresses final-target modal faults while preserving exit status, allowing independent policies,
|
|
75
|
+
Sessions, and Runtime processes to execute concurrently. `CloseStdin` no
|
|
76
|
+
longer closes the host control stream: cancellation and timeout send a
|
|
77
|
+
distinct `Terminate` frame over authenticated directional control/event
|
|
78
|
+
pipes, wait for the runner to prove the Job empty through a nonce-bound
|
|
79
|
+
terminal record, and preserve the original stop reason; generic PID-tree
|
|
80
|
+
cleanup is emergency-only. The incompatible native shell protocol advances
|
|
81
|
+
to v5. Request and terminal state now lives under a verified no-reparse,
|
|
82
|
+
protected host/SYSTEM-only control directory. SDK policy validation and the
|
|
83
|
+
native host independently reject overlapping allow roots and deny roots at or
|
|
84
|
+
below this boundary before ACL authorization or target creation. Doctor is
|
|
85
|
+
verify-only; explicit setup creates missing state or repairs only an empty,
|
|
86
|
+
no-reparse, host-owned direct child after proving the sandbox SID idle.
|
|
87
|
+
Packaged Electron Node targets consume and scrub `ELECTRON_RUN_AS_NODE` before
|
|
88
|
+
target or descendant code loads. The incompatible
|
|
89
|
+
authority split advances Windows `sandboxRuntime` to v6 so clients cannot
|
|
90
|
+
silently reuse a daemon that still implements the v5 graph. Existing
|
|
91
|
+
installations perform a one-time idle-account SID rotation through
|
|
92
|
+
`kodax sandbox setup`; native shell admission validates the resulting
|
|
93
|
+
machine protocol/SID generation before broker launch. Both native artifacts
|
|
94
|
+
are checked against an embedded manifest and loaded/executed only from a
|
|
95
|
+
protected content-addressed store whose immutable-image verification remains
|
|
96
|
+
shareable across concurrent Runtime processes. Packaged Electron hosts now
|
|
97
|
+
resolve only explicitly unpacked physical native files before applying those
|
|
98
|
+
checks; the release smoke asserts both KodaX native files and the Windows ASRT
|
|
99
|
+
runner are present under `app.asar.unpacked` (Issue 319). Linux/macOS shells remain
|
|
100
|
+
per-command ASRT bubblewrap/Seatbelt calls with no KodaX workspace-session
|
|
101
|
+
owner (Issues 304–306). Public POSIX sandbox calls now require target-start
|
|
102
|
+
attestation over a broker-only bounded control pipe. A proven pre-target exit
|
|
103
|
+
returns structured `backend_launch_failed`; a missing, malformed, or
|
|
104
|
+
mismatched control frame returns `execution_uncertain` and forbids blind
|
|
105
|
+
retry instead of misreporting that the command did not run. The ASRT-owned
|
|
106
|
+
runner's pre-main creation window is
|
|
107
|
+
recorded separately as Issue 307; final targets remain creation-time Job
|
|
108
|
+
contained. Runner loader/pre-main modal faults are part of that same upstream
|
|
109
|
+
bootstrap residual; it does not reach trusted text tools.
|
|
110
|
+
|
|
111
|
+
- Bundled Windows binaries (Bun `--compile`) no longer resolve the Windows
|
|
112
|
+
sandbox runtime binary onto Bun's virtual `B:\` drive: the build ships a
|
|
113
|
+
`vendor/srt-win/<arch>/srt-win.exe` sidecar next to the executable,
|
|
114
|
+
`resolveSrtWinSourcePath()` prefers it in bundled builds, and
|
|
115
|
+
`kodax sandbox setup` installs through the prepared runner's resolved
|
|
116
|
+
descriptor instead of the library's module-relative lookup (Issue 303).
|
|
117
|
+
|
|
118
|
+
- Windows ASRT import now accepts a package-store hardlink only in a bundled
|
|
119
|
+
build, after a handle-bound bounded read matches the embedded release
|
|
120
|
+
SHA-256. Development manifests and sources remain single-link. KodaX still
|
|
121
|
+
copies it into the protected content-addressed cache, whose executable must
|
|
122
|
+
remain single-link, ACL-protected, and hash-correct. Valid package layouts no
|
|
123
|
+
longer make model-issued Bash silently use the declared normal-permission
|
|
124
|
+
fallback (Issue 317). The repository now declares npm as its package manager;
|
|
125
|
+
alternate local package metadata remains outside the project contract.
|
|
126
|
+
|
|
127
|
+
- Windows native shell admission no longer writes traversal ACEs to every
|
|
128
|
+
allow-root ancestor. The restricted target's enabled traverse privilege
|
|
129
|
+
reaches an exact capability-protected root without directory-list/content
|
|
130
|
+
authority, while explicit deny-ancestor conflicts remain rejected. This
|
|
131
|
+
avoids unbounded profile-DACL propagation and restores cold `%TEMP%` shell
|
|
132
|
+
startup within the existing deadline (Issue 318).
|
|
133
|
+
|
|
134
|
+
### Added
|
|
135
|
+
|
|
136
|
+
- Custom providers can opt into image / vision input with a single
|
|
137
|
+
`"imageInput": true` field (typical for self-hosted multimodal models on
|
|
138
|
+
vLLM / SGLang OpenAI-compatible endpoints, e.g. Qwen-VL). The flag forces
|
|
139
|
+
`capabilityProfile.multimodalSupport: "image-input"` on every surface —
|
|
140
|
+
provider instance, keyless capability queries, media routing, and the
|
|
141
|
+
provider-policy gate — so image artifacts pass `MODEL_INPUT_UNSUPPORTED`
|
|
142
|
+
validation and are forwarded as standard `image_url` blocks. Leaving it
|
|
143
|
+
unset changes nothing; text-only models keep the pre-send rejection.
|
|
144
|
+
- DeepSeek vision model `deepseek-v4-flash-vision-exp` is registered on the
|
|
145
|
+
`deepseek` provider (selectable via `/model`). It reuses the existing
|
|
146
|
+
OpenAI-style `image_url` wire path, so pasted/read images are forwarded on
|
|
147
|
+
user turns, while `deepseek-v4-flash` / `deepseek-v4-pro` stay text-only via
|
|
148
|
+
per-model media routing (ark-coding mixed-capability convention). Cost
|
|
149
|
+
accounting uses flash pricing — images bill as size-derived tokens (≤384 per
|
|
150
|
+
image) at text-token rates.
|
|
151
|
+
- `glm-5.3-flash` (published 2026-08-26) is registered on `zhipu`,
|
|
152
|
+
`zhipu-coding`, and `zai-coding` (selectable via `/model`). It is the first
|
|
153
|
+
natively multimodal GLM: image input is routed and validated end-to-end
|
|
154
|
+
(Anthropic-compat image blocks on the coding routes, `image_url` on the
|
|
155
|
+
public route), video stays provider-native-unwired, and file input remains
|
|
156
|
+
unwired end-to-end. 1M context, 131K output, cannot disable thinking (same
|
|
157
|
+
`zai-glm-5.3` effort mapping as `glm-5.3`), and priced from the official
|
|
158
|
+
announcement at $0.15 input / $0.50 output / $0.03 cached input per million
|
|
159
|
+
tokens. Defaults stay on `glm-5.3`; `glm-5.3` / `glm-5.2` remain text-only
|
|
160
|
+
image-unsupported.
|
|
161
|
+
- Release publication now ships CI-built bytes. The npm package embeds
|
|
162
|
+
prebuilt native authorities for five platforms, which only the Release
|
|
163
|
+
workflow's cross-platform matrix can assemble, so the universal tarball is
|
|
164
|
+
built by its `npm-package` job and attached to the GitHub Release as
|
|
165
|
+
`kodax-ai-kodax-<version>.tgz` + `kodax-ai-kodax-npm.sha256`. `node
|
|
166
|
+
scripts/release.mjs` (no arguments) downloads those exact assets, verifies
|
|
167
|
+
the sha256 checksum and sidecar audit, and publishes them; on a local
|
|
168
|
+
machine `--pack-only` produces a host-only LOCAL TEST TARBALL that keeps
|
|
169
|
+
`private: true` (npm refuses to publish it) for `npm install <path>` SDK
|
|
170
|
+
consumer testing.
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## [0.7.95] - 2026-08-23
|
|
175
|
+
|
|
176
|
+
### Fixed
|
|
177
|
+
|
|
178
|
+
- KodaX-created linked worktrees now join the Session's exact sandbox policy
|
|
179
|
+
before the tool returns them to the model. The Runtime persists that bounded
|
|
180
|
+
root set, revalidates each Git common-directory backlink on later Runs, and
|
|
181
|
+
revokes it after worktree removal. A background Bash process in such a
|
|
182
|
+
worktree can therefore coexist with `write`/`edit` without authorizing
|
|
183
|
+
arbitrary sibling directories or weakening namespace fences. Atomic root
|
|
184
|
+
updates remain authoritative over stale full-Session snapshots, so an old
|
|
185
|
+
non-empty list cannot overwrite a newer registration or resurrect a revoked
|
|
186
|
+
root. Older Sessions migrate only retained successful `worktree_create`
|
|
187
|
+
evidence after the same Git relationship is revalidated. Session roots that
|
|
188
|
+
are real Git submodules use their byte-bounded `core.worktree` backlink as
|
|
189
|
+
the repository identity, so creating a linked worktree from a submodule does
|
|
190
|
+
not regress while forged `.git/modules` paths remain rejected.
|
|
191
|
+
- Windows sandbox cleanup now keeps every ACL-mutating helper and command owner
|
|
192
|
+
in a recoverable machine-global Job, persists only self-healing recovery
|
|
193
|
+
tickets, and retries process drain, ACL reset, and filesystem-effect fence
|
|
194
|
+
release in the background without blocking unrelated work. Runtime shutdown
|
|
195
|
+
also verifies exact daemon and supervisor process generations, so PID reuse or
|
|
196
|
+
an interrupted exit cannot strand a manual-recovery requirement. Same-boot
|
|
197
|
+
`unconfirmed-owner` tickets are retried automatically and cleared only after a
|
|
198
|
+
sandbox-user SID probe proves the account idle; probe failure remains
|
|
199
|
+
fail-closed and diagnosable without blocking non-sandbox work. Text cleanup
|
|
200
|
+
recovery records each completed phase and retains a consumed
|
|
201
|
+
sandbox attestation across retries. Transient workspace cleanup, policy-reset,
|
|
202
|
+
or outer lease-release failures therefore retry without losing evidence or
|
|
203
|
+
repeating already completed phases.
|
|
204
|
+
- Learning-store coordination now reclaims a stale zero-byte owner lock left by
|
|
205
|
+
a crash between exclusive creation and owner-record publication, plus stale
|
|
206
|
+
malformed or truncated owner records, using an unchanged-byte/stat compare
|
|
207
|
+
before deletion; valid live owners and successor records remain protected.
|
|
208
|
+
Fullscreen TUI
|
|
209
|
+
teardown also performs an exit-safe terminal restore from the renderer's
|
|
210
|
+
guaranteed unmount boundary, including when final rendering or React cleanup
|
|
211
|
+
throws; terminal write backpressure no longer disables cleanup (Issue 301).
|
|
212
|
+
- Explicit Skill execution now keeps the exact user query as the canonical
|
|
213
|
+
transcript/title input while carrying expanded instructions and host hook
|
|
214
|
+
context only in the execution overlay. Multiple known Skill references are
|
|
215
|
+
rejected consistently in Classic, Ink, immediate, and queued paths, and a
|
|
216
|
+
failed or malformed `PreToolUse` hook fails closed instead of authorizing the
|
|
217
|
+
guarded tool. The shared command-dispatch check also covers leading
|
|
218
|
+
`/<skill>` and legacy `/skill:<name>` forms before either Skill executes.
|
|
219
|
+
- Terminal Run persistence failure now converges to `unknown` before the public
|
|
220
|
+
result resolves. If neither status nor event journal can publish that state,
|
|
221
|
+
active `sessions.observe()` consumers are invalidated and must resnapshot,
|
|
222
|
+
preventing a stale terminal projection. The additive SDK contracts advance to
|
|
223
|
+
`runtimeExitSettlement:2` and Windows `sandboxRuntime:5`; release/version
|
|
224
|
+
assignment remains a maintainer step. If terminal status commits but its
|
|
225
|
+
status-lock cleanup reports failure, the exact committed proposal is reread
|
|
226
|
+
and its terminal event is still published once; a different authoritative
|
|
227
|
+
status is never overwritten or republished.
|
|
228
|
+
- The coding runtime now delays its public `onComplete` completion signal until
|
|
229
|
+
extension completion and asynchronous result finalization have produced the
|
|
230
|
+
authoritative `KodaXResult`. A2A responses and other completion subscribers
|
|
231
|
+
can no longer observe an empty successful answer before the coding result
|
|
232
|
+
settles, including the lost-executor-Promise fallback path (Issue 302). A
|
|
233
|
+
completion observer that throws after finalization is diagnosed without
|
|
234
|
+
rewriting the persisted terminal facts.
|
|
8
235
|
|
|
9
236
|
---
|
|
10
237
|
|
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>
|