chutes-build 2.0.2 → 2.0.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 (2) hide show
  1. package/CHANGELOG.md +98 -0
  2. package/package.json +7 -7
package/CHANGELOG.md CHANGED
@@ -4,6 +4,104 @@ All notable changes to Chutes Build will be documented in this file. The format
4
4
  is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this
5
5
  project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [2.0.4] - 2026-10-25
8
+
9
+ ### Added
10
+
11
+ - **A native `chutes-build-harness` skill explains the CLI to the model.** It
12
+ covers the tool inventory, permission modes, slash commands, configuration
13
+ and session locations, diagnostic commands, and a troubleshooting matrix for
14
+ missing tools, denied calls, 401/403/429, chute-id and media payload errors,
15
+ document/media capacity failures, missing skills, npm updates, output limits,
16
+ and loops. The system prompt points at it only when a tool, command,
17
+ permission, session, or capability fails, or when harness detail is needed.
18
+
19
+ ### Changed
20
+
21
+ - **New sessions default to Chutes Auto in API-key builds.** The live catalog
22
+ replaces the bundled model list, which dropped the compiled Auto entry, so the
23
+ default silently fell back to the first listed model. Chutes Build now rebuilds
24
+ Auto from the visible chat models as a latency-routed inline pool
25
+ (`modelA,modelB,...:latency`), because the saved `default` alias needs a
26
+ dashboard pool that API-key-only accounts do not have. The pool includes every
27
+ visible chat model that explicitly advertises tool support in
28
+ `supported_features` and has at least a 32k context, so Auto cannot route an
29
+ agent turn to a model that cannot call the harness tools. Entries that omit the
30
+ feature list are excluded rather than assumed capable.
31
+ `models` and the picker show `model-router` / Chutes Auto again, and a concrete
32
+ model still bypasses routing.
33
+
34
+ ### Fixed
35
+
36
+ - **`update --check` follows the npm registry, and self-update explains the npm
37
+ path.** This fork ships through npm and GitHub releases, so the upstream GCS
38
+ release-channel pointer is absent and the old check failed with HTTP 404 (or a
39
+ missing npm executable on Windows). `--check` now reads the `latest` dist-tag
40
+ over the registry HTTPS API and prints the npm update command; a non-check
41
+ `update` reports that self-update is disabled in this build and points at
42
+ `npm install -g chutes-build@latest`. The upstream installer path remains behind
43
+ the maintainer-only `CHUTES_BUILD_LEGACY_SELF_UPDATE` escape hatch.
44
+ - **`ocr_page` is advertised again.** The tool was registered but never added to
45
+ the ecosystem toolsets, so models could not call it even though the guide
46
+ documented it. Every toolset that offers `extract_document` now offers it too.
47
+ - **Document, embedding, and speech tools resolve public slugs to chute ids.**
48
+ `extract_document`, `embed_texts`, and `transcribe_audio` passed the catalog
49
+ slug to the account describe API, which only accepts the chute id, so they
50
+ failed with "Chute not found" even when the model was live. They now resolve
51
+ through the live catalog first, like `generate_media`.
52
+ - **Media calls place the prompt inside v2 `args` wrappers.** Cords whose schema
53
+ requires a single `args`/`input_args` object without resolvable nested
54
+ properties now receive `{args: {prompt}}` instead of failing with "nothing to
55
+ send". Published schemas that reference missing definitions no longer block
56
+ the call: local validation is best-effort and the server stays authoritative.
57
+ - **The tool catalog budget reflects the restored `ocr_page` schema** (30 tools,
58
+ 10,517 estimated tokens, ceiling 10,600).
59
+
60
+ ## [2.0.3] - 2026-10-24
61
+
62
+ ### Added
63
+
64
+ - **The tool catalog is 11.5% lighter.** `browser`, `extract_document`,
65
+ `generate_media`, and `scheduler_create` now export a compact model-facing
66
+ schema: nested `description` and `examples` fields are dropped while every
67
+ parameter name, type, enum, required entry, and union member survives.
68
+ Dispatch keeps validating against the canonical schema, so behavior is
69
+ unchanged. The default catalog drops from 11,573 to 10,239 estimated tokens
70
+ across 29 tools.
71
+ - **Latency benchmark.** `scripts/bench_chutes.py` measures TTFT, inter-token
72
+ latency, and total stream time against the same Chutes streaming contract
73
+ the CLI uses, for a model id or a routing string such as `default:latency`.
74
+ `docs/performance.md` explains how to compare routing strategies, read the
75
+ result, and account for prompt caching.
76
+
77
+ ### Added
78
+
79
+ - **Chutes platform knowledge is available on demand.** The fixed prompt now
80
+ carries a compact map of the two Chutes hosts, API-key auth, the live model
81
+ catalog as the source of truth, and saved/inline `:latency`/`:throughput`
82
+ routing, and points at a new bundled `chutes-platform` skill for the full
83
+ platform reference: chat/vision/tool features, media chutes, OCR/PDF,
84
+ embeddings, quotas and billing, TEE attestation, error handling, and the
85
+ CLI mapping. The skill ships in the binary, is listed by the `skill` tool,
86
+ and can be shadowed by a user or repository skill.
87
+ - **Independent tool calls batch in one response.** The prompt now tells the
88
+ model to issue non-dependent calls together, which the parallel dispatch
89
+ path already runs concurrently, cutting a round trip on multi-tool work.
90
+
91
+ ### Removed
92
+
93
+ - **The dormant legacy Imagine media tools are gone.** `image_gen`,
94
+ `image_edit`, `image_to_video`, and `reference_to_video` targeted the xAI
95
+ Imagine API, which Chutes does not serve; `ImageGenTool`, `ImageEditTool`,
96
+ `ImageToVideoTool`, `ReferenceToVideoTool`, `ImageGenClient`,
97
+ `VideoGenClient`, their config plumbing, and the upstream Imagine model ids
98
+ and legacy video storage prefix are deleted. `/imagine` and
99
+ `/imagine-video` are unchanged and use the Chutes-native `generate_media`
100
+ tool. The related configuration keys (`features.image_gen`,
101
+ `features.video_gen`, the model overrides, `zdr_video_output_s3`, and the
102
+ `imagine_tools_disabled` remote setting) are still parsed so existing
103
+ configuration files keep loading, but they are inert.
104
+
7
105
  ## [2.0.2] - 2026-10-23
8
106
 
9
107
  ### Fixed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chutes-build",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "Privacy-first, open-source coding agent for the Chutes ecosystem",
5
5
  "license": "Apache-2.0",
6
6
  "author": { "name": "Michael Gasperini", "email": "michael@mikesoft.it", "url": "https://mikesoft.it" },
@@ -37,12 +37,12 @@
37
37
  "check": "npm test && npm run verify:release && npm pack --dry-run"
38
38
  },
39
39
  "optionalDependencies": {
40
- "chutes-build-darwin-arm64": "2.0.2",
41
- "chutes-build-darwin-x64": "2.0.2",
42
- "chutes-build-linux-arm64-gnu": "2.0.2",
43
- "chutes-build-linux-x64-gnu": "2.0.2",
44
- "chutes-build-win32-arm64": "2.0.2",
45
- "chutes-build-win32-x64": "2.0.2"
40
+ "chutes-build-darwin-arm64": "2.0.4",
41
+ "chutes-build-darwin-x64": "2.0.4",
42
+ "chutes-build-linux-arm64-gnu": "2.0.4",
43
+ "chutes-build-linux-x64-gnu": "2.0.4",
44
+ "chutes-build-win32-arm64": "2.0.4",
45
+ "chutes-build-win32-x64": "2.0.4"
46
46
  },
47
47
  "keywords": [
48
48
  "ai",