chutes-build 0.2.0 → 0.3.0
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/README.md +124 -69
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -1,77 +1,54 @@
|
|
|
1
1
|
# Chutes Build
|
|
2
2
|
|
|
3
|
+
**A privacy-first, open-source coding agent built for the [Chutes](https://chutes.ai) ecosystem.**
|
|
4
|
+
|
|
3
5
|
[](https://github.com/TheStreamCode/chutes-build/actions/workflows/ci.yml)
|
|
4
6
|
[](https://www.npmjs.com/package/chutes-build)
|
|
5
7
|
[](LICENSE)
|
|
6
8
|
|
|
7
|
-
Chutes Build
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
One CLI, no compromises: an interactive terminal UI, a full coding agent
|
|
12
|
+
runtime, native Chutes model routing, parallel subagents, multimodal
|
|
13
|
+
generation, web research, browser automation, and local memory — with
|
|
14
|
+
telemetry, remote trace upload, and phone-home update checks off by default.
|
|
11
15
|
|
|
12
16
|

|
|
13
17
|
|
|
14
18
|
> **Development preview:** the project is under active development. Build it
|
|
15
19
|
> from source and review agent actions before approving changes.
|
|
16
20
|
|
|
17
|
-
##
|
|
21
|
+
## Contents
|
|
22
|
+
|
|
23
|
+
- [Highlights](#highlights)
|
|
24
|
+
- [Quick start](#quick-start)
|
|
25
|
+
- [Features](#features)
|
|
26
|
+
- [Configuration](#configuration)
|
|
27
|
+
- [Privacy & security](#privacy--security)
|
|
28
|
+
- [Project](#project)
|
|
29
|
+
|
|
30
|
+
## Highlights
|
|
31
|
+
|
|
32
|
+
- 🔒 **Privacy by construction** — telemetry, remote error reporting, automatic
|
|
33
|
+
update checks, remote trace upload, and upstream session sharing are all
|
|
34
|
+
disabled by default.
|
|
35
|
+
- ⚡ **Chutes-native inference** — live model discovery, `Auto (Chutes Router)`
|
|
36
|
+
as the default, and automatic fallback when a model is temporarily
|
|
37
|
+
unavailable.
|
|
38
|
+
- 🧭 **Advisor** — an on-demand reasoning agent that reviews plans, blockers,
|
|
39
|
+
and completion claims without ever taking over the executor loop.
|
|
40
|
+
- 🧩 **Subagent orchestration** — concurrent fan-out with isolated worktrees
|
|
41
|
+
for real parallel decomposition, not just sequential delegation.
|
|
42
|
+
- 🎨 **Multimodal, natively** — image, video, music, speech, and on-demand OCR,
|
|
43
|
+
built directly into the Rust runtime instead of a bolted-on MCP process.
|
|
44
|
+
- 🧠 **Hybrid memory & voice** — full-text plus semantic vector recall, and
|
|
45
|
+
hold-to-record voice dictation, both on by default.
|
|
46
|
+
|
|
47
|
+
See [Features](#features) below for the complete list.
|
|
18
48
|
|
|
19
|
-
|
|
20
|
-
`Auto (Chutes Router)` as the first model choice, configurable fallback
|
|
21
|
-
chains, and automatic retry when a selected model is temporarily unavailable.
|
|
22
|
-
- **Coding agent runtime:** repository inspection, edits, shell commands,
|
|
23
|
-
planning, goals, MCP servers, skills, sessions, worktrees, and permission
|
|
24
|
-
controls inherited from the mature upstream runtime.
|
|
25
|
-
- **Advisor:** a read-only, on-demand reasoning agent that reviews plans,
|
|
26
|
-
difficult decisions, blockers, and completion claims without taking over the
|
|
27
|
-
executor loop. Reasons at maximum effort by default. `/advisor on|off`
|
|
28
|
-
toggles it; `/advisor <model>` pins a specific model (e.g. your largest or
|
|
29
|
-
highest-tier available one — Chutes' catalog carries no price/size metadata
|
|
30
|
-
to pick one automatically); `/advisor default` clears the pin.
|
|
31
|
-
- **Subagent orchestration:** foreground and background workers, concurrent
|
|
32
|
-
fan-out, multi-worker waits, bounded nesting, and isolated worktrees. The
|
|
33
|
-
`chutes-build-orchestrator` preset is tuned for parallel decomposition.
|
|
34
|
-
- **Chutes account:** read-only subscription, quota, and usage access through
|
|
35
|
-
`get_chutes_usage`, a compact plan/quota indicator in the TUI, and detailed
|
|
36
|
-
`/usage` output. Per-model statistics remain disabled unless requested.
|
|
37
|
-
- **Chutes media:** live discovery and invocation for image generation and
|
|
38
|
-
editing, video, music, speech, and other supported Chutes media models through
|
|
39
|
-
`list_media_models`, `describe_media_model`, and `generate_media`. This is the
|
|
40
|
-
native Rust integration of the `chutes-media-mcp` workflow, so Chutes Build
|
|
41
|
-
does not need to spawn a separate Node/MCP process for its core media tools.
|
|
42
|
-
Generated output crosses the tool/ACP/TUI boundary as a typed artifact:
|
|
43
|
-
images use bounded lazy previews, videos use a two-frame rolling decoder,
|
|
44
|
-
and music/speech expose local pause/resume, seek, volume, duration, and
|
|
45
|
-
waveform controls with native-player fallback. Media work starts only while
|
|
46
|
-
inference is idle, never autoplays, and stays off the TUI render thread.
|
|
47
|
-
- **Capability routing:** image inputs stay with the selected model when it
|
|
48
|
-
supports vision and are otherwise delegated to a vision-capable Chutes route.
|
|
49
|
-
- **On-demand OCR:** the `ocr_page` tool extracts text verbatim from a single
|
|
50
|
-
image or PDF page via a dedicated Chutes vision model, independent of the
|
|
51
|
-
active chat model's vision support. Returns extracted text only — the image
|
|
52
|
-
itself is never added to the conversation.
|
|
53
|
-
- **Current coding documentation:** Context7 search and documentation tools are
|
|
54
|
-
built in and avoid sending credentials or known secrets.
|
|
55
|
-
- **Official Chutes research:** before answering Chutes-specific questions, the
|
|
56
|
-
main agent and subagents consult both the official
|
|
57
|
-
[documentation](https://chutes.ai/docs) and [news](https://chutes.ai/news),
|
|
58
|
-
treating directly relevant official pages as primary authority.
|
|
59
|
-
- **Research and browser tools:** native web search (DuckDuckGo by default,
|
|
60
|
-
optionally Brave) plus agentic Chrome/Edge control through a local DevTools
|
|
61
|
-
connection and an isolated temporary browser profile.
|
|
62
|
-
- **Local memory:** Chutes Build maintains a secret-filtered `memories.md` file
|
|
63
|
-
and can be launched with `--no-memory` when a stateless session is preferred.
|
|
64
|
-
Recall is hybrid by default — full-text search combined with semantic vector
|
|
65
|
-
search against a built-in Chutes-hosted embedding model.
|
|
66
|
-
- **Voice input:** hold-to-record dictation transcribes speech into the prompt
|
|
67
|
-
box. Enabled by default; activation is always manual (mic icon, `/voice`, or
|
|
68
|
-
Ctrl+Space) — Chutes Build never records without an explicit press.
|
|
69
|
-
- **Time awareness and wellness:** the agent receives the local date, time, and
|
|
70
|
-
timezone and can suggest a break after long or late sessions.
|
|
71
|
-
- **Privacy by construction:** telemetry, remote error reporting, automatic
|
|
72
|
-
update checks, remote trace upload, and upstream session sharing are disabled.
|
|
49
|
+
## Quick start
|
|
73
50
|
|
|
74
|
-
|
|
51
|
+
### Install with npm
|
|
75
52
|
|
|
76
53
|
Release builds install without a Rust toolchain:
|
|
77
54
|
|
|
@@ -89,7 +66,7 @@ npx chutes-build
|
|
|
89
66
|
The npm launcher selects a native binary for Windows, macOS, or Linux. It does
|
|
90
67
|
not collect telemetry and does not download executables from an install script.
|
|
91
68
|
|
|
92
|
-
|
|
69
|
+
### Build from source
|
|
93
70
|
|
|
94
71
|
Prerequisites:
|
|
95
72
|
|
|
@@ -109,7 +86,7 @@ cargo build -p chutes-build --release
|
|
|
109
86
|
The Windows executable is `target\release\chutes-build.exe`; on macOS and
|
|
110
87
|
Linux it is `target/release/chutes-build`.
|
|
111
88
|
|
|
112
|
-
|
|
89
|
+
### First run
|
|
113
90
|
|
|
114
91
|
Run `chutes-build` with no prior setup and log in from the welcome screen:
|
|
115
92
|
press `l` for "Login with Chutes" (opens your browser) or `k` to paste a
|
|
@@ -136,7 +113,81 @@ when no preference has been saved. Select a concrete model with `/model` or
|
|
|
136
113
|
`chutes-build --model <model-id>`. Inspect the resolved catalog with
|
|
137
114
|
`chutes-build models`.
|
|
138
115
|
|
|
139
|
-
##
|
|
116
|
+
## Features
|
|
117
|
+
|
|
118
|
+
### Agent & coding
|
|
119
|
+
|
|
120
|
+
- **Coding agent runtime:** repository inspection, edits, shell commands,
|
|
121
|
+
planning, goals, MCP servers, skills, sessions, worktrees, and permission
|
|
122
|
+
controls inherited from the mature upstream runtime.
|
|
123
|
+
- **Advisor:** a read-only, on-demand reasoning agent that reviews plans,
|
|
124
|
+
difficult decisions, blockers, and completion claims without taking over the
|
|
125
|
+
executor loop. Reasons at maximum effort by default. `/advisor on|off`
|
|
126
|
+
toggles it; `/advisor <model>` pins a specific model (e.g. your largest or
|
|
127
|
+
highest-tier available one — Chutes' catalog carries no price/size metadata
|
|
128
|
+
to pick one automatically); `/advisor default` clears the pin.
|
|
129
|
+
- **Subagent orchestration:** foreground and background workers, concurrent
|
|
130
|
+
fan-out, multi-worker waits, bounded nesting, and isolated worktrees. The
|
|
131
|
+
`chutes-build-orchestrator` preset is tuned for parallel decomposition.
|
|
132
|
+
|
|
133
|
+
### Chutes integration
|
|
134
|
+
|
|
135
|
+
- **Chutes-native inference:** API-key authentication, live model discovery,
|
|
136
|
+
`Auto (Chutes Router)` as the first model choice, configurable fallback
|
|
137
|
+
chains, and automatic retry when a selected model is temporarily unavailable.
|
|
138
|
+
- **Chutes account:** read-only subscription, quota, and usage access through
|
|
139
|
+
`get_chutes_usage`, a compact plan/quota indicator in the TUI, and detailed
|
|
140
|
+
`/usage` output. Per-model statistics remain disabled unless requested.
|
|
141
|
+
- **Chutes media:** live discovery and invocation for image generation and
|
|
142
|
+
editing, video, music, speech, and other supported Chutes media models through
|
|
143
|
+
`list_media_models`, `describe_media_model`, and `generate_media`. This is the
|
|
144
|
+
native Rust integration of the `chutes-media-mcp` workflow, so Chutes Build
|
|
145
|
+
does not need to spawn a separate Node/MCP process for its core media tools.
|
|
146
|
+
Generated output crosses the tool/ACP/TUI boundary as a typed artifact:
|
|
147
|
+
images use bounded lazy previews, videos use a two-frame rolling decoder,
|
|
148
|
+
and music/speech expose local pause/resume, seek, volume, duration, and
|
|
149
|
+
waveform controls with native-player fallback. Media work starts only while
|
|
150
|
+
inference is idle, never autoplays, and stays off the TUI render thread.
|
|
151
|
+
- **Capability routing:** image inputs stay with the selected model when it
|
|
152
|
+
supports vision and are otherwise delegated to a vision-capable Chutes route.
|
|
153
|
+
- **On-demand OCR:** the `ocr_page` tool extracts text verbatim from a single
|
|
154
|
+
image or PDF page via a dedicated Chutes vision model, independent of the
|
|
155
|
+
active chat model's vision support. Returns extracted text only — the image
|
|
156
|
+
itself is never added to the conversation.
|
|
157
|
+
|
|
158
|
+
### Research & tools
|
|
159
|
+
|
|
160
|
+
- **Current coding documentation:** Context7 search and documentation tools are
|
|
161
|
+
built in and avoid sending credentials or known secrets.
|
|
162
|
+
- **Official Chutes research:** before answering Chutes-specific questions, the
|
|
163
|
+
main agent and subagents consult both the official
|
|
164
|
+
[documentation](https://chutes.ai/docs) and [news](https://chutes.ai/news),
|
|
165
|
+
treating directly relevant official pages as primary authority.
|
|
166
|
+
- **Research and browser tools:** native web search (DuckDuckGo by default,
|
|
167
|
+
optionally Brave) plus agentic Chrome/Edge control through a local DevTools
|
|
168
|
+
connection and an isolated temporary browser profile.
|
|
169
|
+
|
|
170
|
+
### Memory & voice
|
|
171
|
+
|
|
172
|
+
- **Local memory:** Chutes Build maintains a secret-filtered `memories.md` file
|
|
173
|
+
and can be launched with `--no-memory` when a stateless session is preferred.
|
|
174
|
+
Recall is hybrid by default — full-text search combined with semantic vector
|
|
175
|
+
search against a built-in Chutes-hosted embedding model.
|
|
176
|
+
- **Voice input:** hold-to-record dictation transcribes speech into the prompt
|
|
177
|
+
box. Enabled by default; activation is always manual (mic icon, `/voice`, or
|
|
178
|
+
Ctrl+Space) — Chutes Build never records without an explicit press.
|
|
179
|
+
- **Time awareness and wellness:** the agent receives the local date, time, and
|
|
180
|
+
timezone and can suggest a break after long or late sessions.
|
|
181
|
+
|
|
182
|
+
### Privacy by construction
|
|
183
|
+
|
|
184
|
+
Telemetry, remote error reporting, automatic update checks, remote trace
|
|
185
|
+
upload, and upstream session sharing are disabled. See
|
|
186
|
+
[Privacy & security](#privacy--security) below for the full data boundary.
|
|
187
|
+
|
|
188
|
+
## Configuration
|
|
189
|
+
|
|
190
|
+
### Model selection, reasoning, and routing
|
|
140
191
|
|
|
141
192
|
Auto sends `model-router` requests to the Chutes router endpoint, allowing the
|
|
142
193
|
service to select a model for the task and handle cold or unavailable capacity.
|
|
@@ -174,7 +225,7 @@ remain router decisions.
|
|
|
174
225
|
Selecting `Instant` can reduce reasoning latency, but it intentionally changes
|
|
175
226
|
the model's reasoning behavior and is never enabled silently.
|
|
176
227
|
|
|
177
|
-
|
|
228
|
+
### Account plan and quota
|
|
178
229
|
|
|
179
230
|
When authenticated, Chutes Build fetches subscription usage, plan metadata, and
|
|
180
231
|
quota data concurrently. The TUI status bar shows the plan plus the rolling
|
|
@@ -184,7 +235,7 @@ run `/usage` for every active window, percentage, and reset time. If aggregate
|
|
|
184
235
|
quota usage is unavailable, the client falls back concurrently to the
|
|
185
236
|
documented per-chute quota endpoints.
|
|
186
237
|
|
|
187
|
-
|
|
238
|
+
### Optional web and browser configuration
|
|
188
239
|
|
|
189
240
|
Web search uses DuckDuckGo without a dedicated key. For Brave Search:
|
|
190
241
|
|
|
@@ -216,7 +267,9 @@ limited to 512 MiB by default (`CHUTES_MAX_MEDIA_BYTES`, hard ceiling 2 GiB),
|
|
|
216
267
|
while workspace inputs are limited to 64 MiB by default
|
|
217
268
|
(`CHUTES_MAX_INPUT_ASSET_BYTES`, hard ceiling 512 MiB).
|
|
218
269
|
|
|
219
|
-
##
|
|
270
|
+
## Privacy & security
|
|
271
|
+
|
|
272
|
+
### Local data
|
|
220
273
|
|
|
221
274
|
User-level state defaults to `~/.chutes-build` or the directory set in
|
|
222
275
|
`CHUTES_BUILD_HOME`. Project memory is stored in `memories.md`. Configuration,
|
|
@@ -225,7 +278,7 @@ explicitly calls an external service.
|
|
|
225
278
|
|
|
226
279
|
See [PRIVACY.md](PRIVACY.md) for the exact network and data boundaries.
|
|
227
280
|
|
|
228
|
-
|
|
281
|
+
### Security model
|
|
229
282
|
|
|
230
283
|
Chutes Build is an agent capable of reading files, running commands, editing
|
|
231
284
|
code, and controlling an isolated browser. Use it only in repositories you
|
|
@@ -234,7 +287,9 @@ for sensitive work. Never place API keys in prompts, source files, or committed
|
|
|
234
287
|
configuration. See the [security review](docs/security-review.md) for release
|
|
235
288
|
controls, trust boundaries, and tracked dependency exceptions.
|
|
236
289
|
|
|
237
|
-
## Project
|
|
290
|
+
## Project
|
|
291
|
+
|
|
292
|
+
### Provenance
|
|
238
293
|
|
|
239
294
|
Chutes Build is a substantially modified fork of
|
|
240
295
|
[`xai-org/grok-build`](https://github.com/xai-org/grok-build). The upstream
|
|
@@ -249,7 +304,7 @@ and reviewed through the documented [upstream synchronization
|
|
|
249
304
|
procedure](docs/upstream-sync.md); upstream changes are never merged or released
|
|
250
305
|
automatically.
|
|
251
306
|
|
|
252
|
-
|
|
307
|
+
### Contributing
|
|
253
308
|
|
|
254
309
|
Issues and focused pull requests are welcome. Read
|
|
255
310
|
[CONTRIBUTING.md](CONTRIBUTING.md), [SECURITY.md](SECURITY.md), and
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chutes-build",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Privacy-first coding agent optimized for the Chutes ecosystem",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Michael Gasperini (Mikesoft)",
|
|
@@ -34,12 +34,12 @@
|
|
|
34
34
|
"verify:release": "node npm/scripts/verify-release.mjs"
|
|
35
35
|
},
|
|
36
36
|
"optionalDependencies": {
|
|
37
|
-
"chutes-build-darwin-arm64": "0.
|
|
38
|
-
"chutes-build-darwin-x64": "0.
|
|
39
|
-
"chutes-build-linux-arm64-gnu": "0.
|
|
40
|
-
"chutes-build-linux-x64-gnu": "0.
|
|
41
|
-
"chutes-build-win32-arm64": "0.
|
|
42
|
-
"chutes-build-win32-x64": "0.
|
|
37
|
+
"chutes-build-darwin-arm64": "0.3.0",
|
|
38
|
+
"chutes-build-darwin-x64": "0.3.0",
|
|
39
|
+
"chutes-build-linux-arm64-gnu": "0.3.0",
|
|
40
|
+
"chutes-build-linux-x64-gnu": "0.3.0",
|
|
41
|
+
"chutes-build-win32-arm64": "0.3.0",
|
|
42
|
+
"chutes-build-win32-x64": "0.3.0"
|
|
43
43
|
},
|
|
44
44
|
"keywords": [
|
|
45
45
|
"ai",
|