chutes-build 0.3.0 → 0.4.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/PRIVACY.md +48 -13
- package/README.md +125 -236
- package/npm/README.md +4 -1
- package/package.json +17 -9
package/PRIVACY.md
CHANGED
|
@@ -8,13 +8,18 @@ sessions. There is no hidden opt-in or installation identifier.
|
|
|
8
8
|
|
|
9
9
|
The CLI may store configuration, an encrypted or OS-protected credential entry
|
|
10
10
|
where supported, sessions, logs, local exports, and user memory under
|
|
11
|
-
`~/.chutes-build` (or `CHUTES_BUILD_HOME`).
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
`~/.chutes-build` (or `CHUTES_BUILD_HOME`). Plugins, user roles/personas, and
|
|
12
|
+
managed bundled-agent definitions use that same root; setting
|
|
13
|
+
`CHUTES_BUILD_HOME` does not fall back to those resources in the default home.
|
|
14
|
+
Project memory is maintained in `memories.md`. Known secret formats are filtered
|
|
15
|
+
before memory writes, but users should still avoid entering secrets into
|
|
16
|
+
prompts.
|
|
14
17
|
|
|
15
18
|
`chutes-build trace` always creates a local archive. Remote session sharing and
|
|
16
|
-
upstream managed configuration commands
|
|
17
|
-
are disabled.
|
|
19
|
+
search, remote workspace exposure, upstream managed configuration commands, and
|
|
20
|
+
automatic update checks are disabled. Session storage is forced to local mode
|
|
21
|
+
even if inherited write-back settings are present. Updates are installed
|
|
22
|
+
manually.
|
|
18
23
|
|
|
19
24
|
Sampling diagnostics are disabled by default. When explicitly enabled with
|
|
20
25
|
`--log-sampling` or `CHUTES_BUILD_LOG_SAMPLING=1`, the local
|
|
@@ -31,25 +36,49 @@ image/video decoding uses local image codecs and FFmpeg tools when installed,
|
|
|
31
36
|
and audio uses `ffplay` or the operating system's default player. Preview work
|
|
32
37
|
is bounded, off-thread, serialized, and deferred while inference is active. No
|
|
33
38
|
remote preview, thumbnail, codec, waveform, or playback service is used.
|
|
39
|
+
Non-JSON media downloads stream through local temporary files and are removed
|
|
40
|
+
after persistence or failure; error and JSON bodies remain memory-bounded.
|
|
34
41
|
|
|
35
42
|
## Outbound connections
|
|
36
43
|
|
|
37
|
-
Connections occur
|
|
44
|
+
Connections occur when required by startup model/account discovery or an
|
|
45
|
+
explicit hosted feature:
|
|
38
46
|
|
|
39
47
|
| Destination | Purpose | Data sent |
|
|
40
48
|
| --- | --- | --- |
|
|
41
|
-
| `model-router-ten.vercel.app` | default Chutes-compatible model routing | prompts, selected tool schemas, model
|
|
42
|
-
| `llm.chutes.ai` | Chutes inference
|
|
43
|
-
| `api.chutes.ai` | Chutes account and media APIs |
|
|
49
|
+
| `model-router-ten.vercel.app` | default Chutes-compatible model routing | prompts, selected context/tool schemas, model inputs, Chutes API credential |
|
|
50
|
+
| `llm.chutes.ai` | Chutes inference, model catalog, semantic memory, voice transcription, OCR, and vision | model requests and the selected inputs: prompts/context, memory chunks, audio, images, PDF pages, or sampled video frames; Chutes API credential |
|
|
51
|
+
| `api.chutes.ai` | Chutes account and media APIs | account requests, media parameters and user-selected media assets; Chutes API credential |
|
|
52
|
+
| `api.chutes.ai/idp` | OAuth sign-in and refresh | authorization code or refresh token, PKCE verifier, registered client ID, and a client secret only when configured |
|
|
44
53
|
| `chutes.ai/docs`, `chutes.ai/news` | mandatory primary-source verification for Chutes topics | requested official page URLs; no Chutes API credential |
|
|
45
|
-
| `context7.com` | current library documentation | library names and documentation queries;
|
|
54
|
+
| `context7.com` | current library documentation | library names and documentation queries; known secrets are rejected and an optional Context7 key is sent only to the official HTTPS service |
|
|
46
55
|
| DuckDuckGo or Brave Search | web search | search query; Brave receives only its dedicated key |
|
|
47
56
|
| User-selected web pages | web fetch/browser automation | normal HTTP/browser traffic required by the requested action |
|
|
48
57
|
| User-configured MCP servers/plugins | external tools | data required by the selected tool and its own configuration |
|
|
49
58
|
|
|
50
|
-
The Chutes API credential
|
|
51
|
-
hosts.
|
|
52
|
-
servers, or
|
|
59
|
+
The ambient Chutes API credential and cached Chutes session token are accepted
|
|
60
|
+
only for allowlisted HTTPS Chutes and router hosts. They are never reused for a
|
|
61
|
+
custom endpoint, web search, Context7, arbitrary websites, MCP servers, or
|
|
62
|
+
browser automation. Custom inference models must declare a dedicated
|
|
63
|
+
`api_key`/`env_key`; a custom model-catalog endpoint uses
|
|
64
|
+
`CHUTES_MODELS_API_KEY`.
|
|
65
|
+
|
|
66
|
+
Local endpoint overrides are rejected unless they pass the official-host HTTPS
|
|
67
|
+
policy or the operator explicitly enables the development-only insecure
|
|
68
|
+
endpoint opt-in. That opt-in relaxes URL/DNS trust for a controlled local fork;
|
|
69
|
+
it does not attach ambient Chutes credentials to arbitrary custom models.
|
|
70
|
+
Likewise, a custom Context7 endpoint never receives `CONTEXT7_API_KEY`.
|
|
71
|
+
|
|
72
|
+
Model catalog and account usage requests may run during startup after
|
|
73
|
+
authentication. Prompts and repository content are not sent by those discovery
|
|
74
|
+
requests. They leave the machine only in a model/tool request that needs them.
|
|
75
|
+
|
|
76
|
+
Semantic memory is local at rest, but hybrid recall uses a Chutes-hosted
|
|
77
|
+
embedding model and therefore sends the selected memory text chunks to Chutes.
|
|
78
|
+
Use `--no-memory` to disable both memory recall and writes for that session.
|
|
79
|
+
Voice capture is manual and sends the recorded audio only after activation.
|
|
80
|
+
OCR, vision, video analysis, and media generation send only the inputs selected
|
|
81
|
+
for that operation.
|
|
53
82
|
|
|
54
83
|
For Chutes research, the agent prefers direct official pages and indexes over a
|
|
55
84
|
broad search query. Search and page requests must not include credentials,
|
|
@@ -67,6 +96,12 @@ Browser actions can still disclose data to websites the user asks the agent to
|
|
|
67
96
|
visit. Review navigation, form submissions, uploads, and authenticated actions
|
|
68
97
|
before approval.
|
|
69
98
|
|
|
99
|
+
`chutes-build mcp list --json` intentionally reports configuration structure,
|
|
100
|
+
not credential material: environment/header values and URL credentials, query,
|
|
101
|
+
and fragment components are redacted. MCP servers and plugins still receive
|
|
102
|
+
the data required by tools the user enables, so their own privacy policies
|
|
103
|
+
apply.
|
|
104
|
+
|
|
70
105
|
## Disabling stateful features
|
|
71
106
|
|
|
72
107
|
- Start with `--no-memory` to disable agent memory for a session.
|
package/README.md
CHANGED
|
@@ -1,56 +1,38 @@
|
|
|
1
1
|
# Chutes Build
|
|
2
2
|
|
|
3
|
-
**A privacy-first, open-source coding agent built for the
|
|
3
|
+
**A privacy-first, open-source coding agent built for the
|
|
4
|
+
[Chutes](https://chutes.ai) ecosystem.**
|
|
4
5
|
|
|
5
6
|
[](https://github.com/TheStreamCode/chutes-build/actions/workflows/ci.yml)
|
|
6
7
|
[](https://www.npmjs.com/package/chutes-build)
|
|
7
8
|
[](LICENSE)
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
Chutes Build combines a polished terminal interface, a production-grade agent
|
|
11
|
+
runtime, Chutes-native model routing, subagents, local memory, multimodal tools,
|
|
12
|
+
web research, and browser automation. Telemetry, remote trace upload, upstream
|
|
13
|
+
session sharing, and phone-home updates are disabled by product policy.
|
|
10
14
|
|
|
11
|
-
|
|
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.
|
|
15
|
+

|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
> **Development preview:** Chutes Build is under active development. Review
|
|
18
|
+
> commands and file changes before approving them, especially in unfamiliar
|
|
19
|
+
> repositories.
|
|
17
20
|
|
|
18
|
-
|
|
19
|
-
> from source and review agent actions before approving changes.
|
|
21
|
+
## Why Chutes Build
|
|
20
22
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
-
|
|
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.
|
|
23
|
+
| Principle | What it means |
|
|
24
|
+
| --- | --- |
|
|
25
|
+
| **Chutes-native** | Live model discovery, `Auto (Chutes Router)`, model-aware reasoning controls, account usage, OCR, voice, and media generation are integrated directly into the Rust runtime. |
|
|
26
|
+
| **Private by default** | Sessions, memory, traces, logs, configuration, and exports stay local. Cloud features run only when their documented provider call is needed. |
|
|
27
|
+
| **Built for real repositories** | Planning, permission controls, worktrees, MCP, skills, background tasks, advisor review, and parallel subagents share one coherent session model. |
|
|
28
|
+
| **Transparent fork** | Chutes-specific product code is separated from retained `grok-build` infrastructure, with documented upstream review and Apache-2.0 attribution. |
|
|
48
29
|
|
|
49
30
|
## Quick start
|
|
50
31
|
|
|
51
|
-
### Install
|
|
32
|
+
### Install
|
|
52
33
|
|
|
53
|
-
|
|
34
|
+
The npm package selects the native binary for Windows, macOS, or Linux. A Rust
|
|
35
|
+
toolchain is not required.
|
|
54
36
|
|
|
55
37
|
```powershell
|
|
56
38
|
npm install -g chutes-build
|
|
@@ -63,251 +45,158 @@ For one-off use:
|
|
|
63
45
|
npx chutes-build
|
|
64
46
|
```
|
|
65
47
|
|
|
66
|
-
The
|
|
67
|
-
not collect telemetry and does not download executables from an install script.
|
|
68
|
-
|
|
69
|
-
### Build from source
|
|
48
|
+
The launcher does not download executables from a lifecycle script.
|
|
70
49
|
|
|
71
|
-
|
|
50
|
+
### Authenticate
|
|
72
51
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
Protocol Buffer tooling is vendored for normal builds; a separate `protoc`
|
|
78
|
-
installation is not required.
|
|
52
|
+
An API key is the most reliable way to start. Create one in the Chutes
|
|
53
|
+
dashboard, then press `k` on the welcome screen, run `/apikey`, or store it
|
|
54
|
+
through the hidden-input CLI flow:
|
|
79
55
|
|
|
80
56
|
```powershell
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
cargo build -p chutes-build --release
|
|
57
|
+
chutes-build login
|
|
58
|
+
chutes-build
|
|
84
59
|
```
|
|
85
60
|
|
|
86
|
-
|
|
87
|
-
Linux it is `target/release/chutes-build`.
|
|
88
|
-
|
|
89
|
-
### First run
|
|
90
|
-
|
|
91
|
-
Run `chutes-build` with no prior setup and log in from the welcome screen:
|
|
92
|
-
press `l` for "Login with Chutes" (opens your browser) or `k` to paste a
|
|
93
|
-
Chutes API key directly. `/login` reopens this choice at any time and
|
|
94
|
-
`/apikey` jumps straight to the API-key prompt.
|
|
95
|
-
|
|
96
|
-
To provide a key non-interactively instead, create one in Chutes and either
|
|
97
|
-
expose it only to the current process:
|
|
61
|
+
For a process-local credential:
|
|
98
62
|
|
|
99
63
|
```powershell
|
|
100
64
|
$env:CHUTES_API_KEY = "your-api-key"
|
|
101
65
|
chutes-build
|
|
102
66
|
```
|
|
103
67
|
|
|
104
|
-
|
|
68
|
+
Browser-based OAuth with PKCE is available through `l` or `/login`. Chutes
|
|
69
|
+
OAuth applications may require registered client credentials; see
|
|
70
|
+
[Authentication](docs/getting-started.md#authentication) for the supported
|
|
71
|
+
fallbacks and environment variables.
|
|
72
|
+
|
|
73
|
+
### Choose a model
|
|
74
|
+
|
|
75
|
+
`Auto (Chutes Router)` is the default when no model preference has been saved.
|
|
76
|
+
Use `/model` interactively or inspect the live catalog from the CLI:
|
|
105
77
|
|
|
106
78
|
```powershell
|
|
107
|
-
chutes-build
|
|
108
|
-
chutes-build
|
|
79
|
+
chutes-build models
|
|
80
|
+
chutes-build models --json
|
|
81
|
+
chutes-build --model model-router
|
|
109
82
|
```
|
|
110
83
|
|
|
111
|
-
|
|
112
|
-
when no preference has been saved. Select a concrete model with `/model` or
|
|
113
|
-
`chutes-build --model <model-id>`. Inspect the resolved catalog with
|
|
114
|
-
`chutes-build models`.
|
|
115
|
-
|
|
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
|
|
191
|
-
|
|
192
|
-
Auto sends `model-router` requests to the Chutes router endpoint, allowing the
|
|
193
|
-
service to select a model for the task and handle cold or unavailable capacity.
|
|
194
|
-
A concrete model remains pinned unless a qualifying pre-stream failure advances
|
|
195
|
-
the explicit fallback chain.
|
|
196
|
-
|
|
197
|
-
Reasoning is model-specific. The model picker exposes only the controls
|
|
198
|
-
supported by the exact deployed generation: binary `Instant`/`Thinking` modes,
|
|
199
|
-
GLM-5.2's three modes, or no selector for fixed and non-reasoning models. Use
|
|
200
|
-
`/effort` interactively or `--effort <option-id>` in headless invocations. The
|
|
201
|
-
published model default is preserved unless the user explicitly changes it.
|
|
202
|
-
|
|
203
|
-
See [Model reasoning compatibility](docs/model-reasoning-compatibility.md) for
|
|
204
|
-
the current model matrix and forward-compatibility rules.
|
|
84
|
+
## What is included
|
|
205
85
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
86
|
+
| Area | Capabilities |
|
|
87
|
+
| --- | --- |
|
|
88
|
+
| **Agent runtime** | Repository inspection, edits, shell commands, plans, goals, permissions, sandbox profiles, local sessions, worktrees, and structured headless output. |
|
|
89
|
+
| **Model routing** | Live Chutes catalog, automatic routing, explicit fallback chains, exact-generation reasoning controls, and vision-capability delegation. |
|
|
90
|
+
| **Orchestration** | Read-only advisor, foreground/background subagents, concurrent fan-out, bounded nesting, grouped waits, and isolated worktrees. |
|
|
91
|
+
| **Knowledge** | Context7 library documentation, official Chutes source checks, web search, local full-text memory, and Chutes-hosted semantic recall. |
|
|
92
|
+
| **Multimodal** | Image and PDF OCR, image/video understanding, voice dictation, and typed image, video, music, and speech generation artifacts. |
|
|
93
|
+
| **Automation** | MCP servers, plugins, skills, background tasks, and isolated Chrome/Edge control through local DevTools. |
|
|
210
94
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
95
|
+
Generated media is streamed to bounded temporary storage and persisted with
|
|
96
|
+
create-new semantics. Inline previews remain local; unsupported terminals use
|
|
97
|
+
safe text cards and native-player fallbacks.
|
|
214
98
|
|
|
215
|
-
|
|
216
|
-
before response streaming begins. Chutes Build does not redirect requests or
|
|
217
|
-
credentials to a non-Chutes inference endpoint.
|
|
99
|
+
## Privacy contract
|
|
218
100
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
the model's reasoning behavior and is never enabled silently.
|
|
101
|
+
| Boundary | Policy |
|
|
102
|
+
| --- | --- |
|
|
103
|
+
| **Local state** | Configuration, credentials, sessions, memory, logs, traces, exports, plugins, and agent definitions live under `~/.chutes-build` or `CHUTES_BUILD_HOME`. |
|
|
104
|
+
| **Hosted inference** | Prompts and selected context leave the machine only for the Chutes model request that needs them. Semantic memory sends selected memory chunks to the configured Chutes embedding route. |
|
|
105
|
+
| **Explicit tools** | OCR, voice, media, web, browser, MCP, and plugin actions send only the inputs required by the selected operation and provider. |
|
|
106
|
+
| **Disabled surfaces** | Product telemetry, remote error reporting, automatic trace upload, upstream session sharing/search, remote workspace exposure, and automatic updates cannot be enabled through normal configuration. |
|
|
107
|
+
| **Credentials** | Ambient Chutes credentials are restricted to allowlisted official HTTPS hosts. Custom endpoints require dedicated credentials and explicit trust configuration. |
|
|
227
108
|
|
|
228
|
-
|
|
109
|
+
Read [Privacy](PRIVACY.md) for the complete data-flow inventory and
|
|
110
|
+
[Security](SECURITY.md) for the threat boundaries and reporting process.
|
|
229
111
|
|
|
230
|
-
|
|
231
|
-
quota data concurrently. The TUI status bar shows the plan plus the rolling
|
|
232
|
-
four-hour and monthly percentages when available; its color follows the most
|
|
233
|
-
constrained active window and changes at 80% and 100%. Click the indicator or
|
|
234
|
-
run `/usage` for every active window, percentage, and reset time. If aggregate
|
|
235
|
-
quota usage is unavailable, the client falls back concurrently to the
|
|
236
|
-
documented per-chute quota endpoints.
|
|
112
|
+
## Common workflows
|
|
237
113
|
|
|
238
|
-
|
|
114
|
+
Start an interactive session in the current repository:
|
|
239
115
|
|
|
240
|
-
|
|
116
|
+
```powershell
|
|
117
|
+
chutes-build
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Run one headless task:
|
|
241
121
|
|
|
242
122
|
```powershell
|
|
243
|
-
|
|
244
|
-
$env:CHUTES_WEB_SEARCH_PROVIDER = "brave"
|
|
123
|
+
chutes-build -p "Review this repository and report only actionable findings"
|
|
245
124
|
```
|
|
246
125
|
|
|
247
|
-
|
|
126
|
+
Create an isolated worktree session:
|
|
248
127
|
|
|
249
128
|
```powershell
|
|
250
|
-
|
|
251
|
-
$env:CHUTES_BROWSER_HEADFUL = "1" # optional; default is headless
|
|
129
|
+
chutes-build --worktree feature-auth
|
|
252
130
|
```
|
|
253
131
|
|
|
254
|
-
|
|
255
|
-
automation profile is temporary, isolated from the user's normal browser
|
|
256
|
-
profile, and launched with sync and background-update features disabled.
|
|
132
|
+
Resume the latest session for the current directory:
|
|
257
133
|
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
changing FFmpeg so the per-process capability cache is refreshed.
|
|
134
|
+
```powershell
|
|
135
|
+
chutes-build --continue
|
|
136
|
+
```
|
|
262
137
|
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
limited to 512 MiB by default (`CHUTES_MAX_MEDIA_BYTES`, hard ceiling 2 GiB),
|
|
267
|
-
while workspace inputs are limited to 64 MiB by default
|
|
268
|
-
(`CHUTES_MAX_INPUT_ASSET_BYTES`, hard ceiling 512 MiB).
|
|
138
|
+
Use `chutes-build --help` for the installed version's authoritative option
|
|
139
|
+
set. See the [CLI reference](docs/cli-reference.md) and
|
|
140
|
+
[slash-command reference](docs/slash-commands.md) for the maintained overview.
|
|
269
141
|
|
|
270
|
-
##
|
|
142
|
+
## Documentation
|
|
271
143
|
|
|
272
|
-
|
|
144
|
+
- [Getting started](docs/getting-started.md) — installation, authentication,
|
|
145
|
+
first session, models, and troubleshooting.
|
|
146
|
+
- [Configuration](docs/configuration.md) — state paths, routing, credentials,
|
|
147
|
+
web/browser options, media limits, and development-only endpoint overrides.
|
|
148
|
+
- [CLI reference](docs/cli-reference.md) and
|
|
149
|
+
[slash commands](docs/slash-commands.md) — public command surfaces.
|
|
150
|
+
- [Architecture](docs/ARCHITECTURE.md) — runtime layers and ownership map.
|
|
151
|
+
- [Privacy](PRIVACY.md), [security policy](SECURITY.md), and
|
|
152
|
+
[security review](docs/security-review.md) — operational trust boundaries.
|
|
153
|
+
- [Documentation index](docs/README.md) — complete user, maintainer, and design
|
|
154
|
+
reference map.
|
|
273
155
|
|
|
274
|
-
|
|
275
|
-
`
|
|
276
|
-
sessions, logs, exports, and credentials remain local unless a tool action
|
|
277
|
-
explicitly calls an external service.
|
|
156
|
+
The concise guides available through `/docs` are embedded from
|
|
157
|
+
`crates/codegen/xai-grok-pager/docs/user-guide/`.
|
|
278
158
|
|
|
279
|
-
|
|
159
|
+
## Build from source
|
|
280
160
|
|
|
281
|
-
|
|
161
|
+
Prerequisites are Rust stable, Git, and the native C/C++ toolchain required by
|
|
162
|
+
Rust on your platform. Protocol Buffer tooling is vendored for normal builds.
|
|
282
163
|
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
controls, trust boundaries, and tracked dependency exceptions.
|
|
164
|
+
```powershell
|
|
165
|
+
git clone https://github.com/TheStreamCode/chutes-build.git
|
|
166
|
+
cd chutes-build
|
|
167
|
+
cargo build -p chutes-build --release
|
|
168
|
+
```
|
|
289
169
|
|
|
290
|
-
|
|
170
|
+
The executable is `target\release\chutes-build.exe` on Windows and
|
|
171
|
+
`target/release/chutes-build` on macOS/Linux.
|
|
291
172
|
|
|
292
|
-
###
|
|
173
|
+
### Repository map
|
|
293
174
|
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
175
|
+
| Path | Ownership |
|
|
176
|
+
| --- | --- |
|
|
177
|
+
| `crates/chutes-build-core/` | Chutes routing, endpoint policy, catalog, reasoning, account, media, privacy, and product policy. |
|
|
178
|
+
| `crates/codegen/` | Retained and adapted upstream runtime crates. Keep crate names stable to make upstream review practical. |
|
|
179
|
+
| `npm/` | Native launcher, platform-package assembly, and npm verification. |
|
|
180
|
+
| `docs/` | Public technical references, maintainer procedures, and design records. |
|
|
181
|
+
| `.github/workflows/` | CI, dependency review, upstream monitoring, and release packaging. |
|
|
182
|
+
| `prod/` and `third_party/` | Shared protocol sources and retained attribution/material from upstream. |
|
|
298
183
|
|
|
299
|
-
|
|
300
|
-
|
|
184
|
+
The root `Cargo.toml` is generated and treated as read-only. Make dependency
|
|
185
|
+
changes in the owning crate manifest or generator source instead of manually
|
|
186
|
+
reorganizing the generated workspace.
|
|
301
187
|
|
|
302
|
-
|
|
303
|
-
and reviewed through the documented [upstream synchronization
|
|
304
|
-
procedure](docs/upstream-sync.md); upstream changes are never merged or released
|
|
305
|
-
automatically.
|
|
188
|
+
## Project
|
|
306
189
|
|
|
307
|
-
|
|
190
|
+
Chutes Build is a substantially modified fork of
|
|
191
|
+
[`xai-org/grok-build`](https://github.com/xai-org/grok-build). Upstream changes
|
|
192
|
+
are reviewed and ported selectively; they are never merged or released
|
|
193
|
+
automatically. See [Upstream synchronization](docs/upstream-sync.md).
|
|
308
194
|
|
|
309
195
|
Issues and focused pull requests are welcome. Read
|
|
310
|
-
[CONTRIBUTING.md](CONTRIBUTING.md), [
|
|
311
|
-
[
|
|
196
|
+
[CONTRIBUTING.md](CONTRIBUTING.md), [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md),
|
|
197
|
+
and [SECURITY.md](SECURITY.md) before contributing.
|
|
198
|
+
|
|
199
|
+
Apache-2.0 licensing and attribution are documented in [LICENSE](LICENSE),
|
|
200
|
+
[NOTICE](NOTICE), and [THIRD-PARTY-NOTICES](THIRD-PARTY-NOTICES).
|
|
312
201
|
|
|
313
202
|
Copyright 2026 Michael Gasperini (Mikesoft).
|
package/npm/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# npm distribution
|
|
1
|
+
# npm distribution and native packages
|
|
2
2
|
|
|
3
3
|
The public `chutes-build` package is a dependency-free Node.js launcher. Its
|
|
4
4
|
optional dependencies contain the native Rust executable for each supported
|
|
@@ -11,6 +11,9 @@ Supported release targets:
|
|
|
11
11
|
- macOS x64 and ARM64
|
|
12
12
|
- Linux glibc x64 and ARM64
|
|
13
13
|
|
|
14
|
+
For installation and first-run instructions, see the repository
|
|
15
|
+
[`README`](../README.md) and [getting-started guide](../docs/getting-started.md).
|
|
16
|
+
|
|
14
17
|
## Prepare a platform package
|
|
15
18
|
|
|
16
19
|
Build the release executable for the target first, then stage its npm package:
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chutes-build",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Privacy-first coding agent
|
|
3
|
+
"version": "0.4.1",
|
|
4
|
+
"description": "Privacy-first, open-source coding agent for the Chutes ecosystem",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Michael Gasperini (Mikesoft)",
|
|
7
7
|
"homepage": "https://github.com/TheStreamCode/chutes-build#readme",
|
|
@@ -34,17 +34,25 @@
|
|
|
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.4.1",
|
|
38
|
+
"chutes-build-darwin-x64": "0.4.1",
|
|
39
|
+
"chutes-build-linux-arm64-gnu": "0.4.1",
|
|
40
|
+
"chutes-build-linux-x64-gnu": "0.4.1",
|
|
41
|
+
"chutes-build-win32-arm64": "0.4.1",
|
|
42
|
+
"chutes-build-win32-x64": "0.4.1"
|
|
43
43
|
},
|
|
44
44
|
"keywords": [
|
|
45
45
|
"ai",
|
|
46
|
+
"ai-agents",
|
|
46
47
|
"chutes",
|
|
47
48
|
"cli",
|
|
48
|
-
"coding-agent"
|
|
49
|
+
"coding-agent",
|
|
50
|
+
"developer-tools",
|
|
51
|
+
"mcp",
|
|
52
|
+
"multimodal",
|
|
53
|
+
"privacy",
|
|
54
|
+
"rust",
|
|
55
|
+
"terminal",
|
|
56
|
+
"tui"
|
|
49
57
|
]
|
|
50
58
|
}
|