chutes-build 0.3.0 → 0.4.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/PRIVACY.md +39 -12
- package/README.md +63 -8
- package/package.json +7 -7
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
|
|
@@ -34,22 +39,38 @@ remote preview, thumbnail, codec, waveform, or playback service is used.
|
|
|
34
39
|
|
|
35
40
|
## Outbound connections
|
|
36
41
|
|
|
37
|
-
Connections occur
|
|
42
|
+
Connections occur when required by startup model/account discovery or an
|
|
43
|
+
explicit hosted feature:
|
|
38
44
|
|
|
39
45
|
| Destination | Purpose | Data sent |
|
|
40
46
|
| --- | --- | --- |
|
|
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 |
|
|
47
|
+
| `model-router-ten.vercel.app` | default Chutes-compatible model routing | prompts, selected context/tool schemas, model inputs, Chutes API credential |
|
|
48
|
+
| `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 |
|
|
49
|
+
| `api.chutes.ai` | Chutes account and media APIs | account requests, media parameters and user-selected media assets; Chutes API credential |
|
|
50
|
+
| `api.chutes.ai/idp` | OAuth sign-in and refresh | authorization code or refresh token, PKCE verifier, public/custom client ID, and a custom client secret only when configured |
|
|
44
51
|
| `chutes.ai/docs`, `chutes.ai/news` | mandatory primary-source verification for Chutes topics | requested official page URLs; no Chutes API credential |
|
|
45
52
|
| `context7.com` | current library documentation | library names and documentation queries; credentials and known secrets are rejected |
|
|
46
53
|
| DuckDuckGo or Brave Search | web search | search query; Brave receives only its dedicated key |
|
|
47
54
|
| User-selected web pages | web fetch/browser automation | normal HTTP/browser traffic required by the requested action |
|
|
48
55
|
| User-configured MCP servers/plugins | external tools | data required by the selected tool and its own configuration |
|
|
49
56
|
|
|
50
|
-
The Chutes API credential
|
|
51
|
-
hosts.
|
|
52
|
-
servers, or
|
|
57
|
+
The ambient Chutes API credential and cached Chutes session token are accepted
|
|
58
|
+
only for allowlisted HTTPS Chutes and router hosts. They are never reused for a
|
|
59
|
+
custom endpoint, web search, Context7, arbitrary websites, MCP servers, or
|
|
60
|
+
browser automation. Custom inference models must declare a dedicated
|
|
61
|
+
`api_key`/`env_key`; a custom model-catalog endpoint uses
|
|
62
|
+
`CHUTES_MODELS_API_KEY`.
|
|
63
|
+
|
|
64
|
+
Model catalog and account usage requests may run during startup after
|
|
65
|
+
authentication. Prompts and repository content are not sent by those discovery
|
|
66
|
+
requests. They leave the machine only in a model/tool request that needs them.
|
|
67
|
+
|
|
68
|
+
Semantic memory is local at rest, but hybrid recall uses a Chutes-hosted
|
|
69
|
+
embedding model and therefore sends the selected memory text chunks to Chutes.
|
|
70
|
+
Use `--no-memory` to disable both memory recall and writes for that session.
|
|
71
|
+
Voice capture is manual and sends the recorded audio only after activation.
|
|
72
|
+
OCR, vision, video analysis, and media generation send only the inputs selected
|
|
73
|
+
for that operation.
|
|
53
74
|
|
|
54
75
|
For Chutes research, the agent prefers direct official pages and indexes over a
|
|
55
76
|
broad search query. Search and page requests must not include credentials,
|
|
@@ -67,6 +88,12 @@ Browser actions can still disclose data to websites the user asks the agent to
|
|
|
67
88
|
visit. Review navigation, form submissions, uploads, and authenticated actions
|
|
68
89
|
before approval.
|
|
69
90
|
|
|
91
|
+
`chutes-build mcp list --json` intentionally reports configuration structure,
|
|
92
|
+
not credential material: environment/header values and URL credentials, query,
|
|
93
|
+
and fragment components are redacted. MCP servers and plugins still receive
|
|
94
|
+
the data required by tools the user enables, so their own privacy policies
|
|
95
|
+
apply.
|
|
96
|
+
|
|
70
97
|
## Disabling stateful features
|
|
71
98
|
|
|
72
99
|
- Start with `--no-memory` to disable agent memory for a session.
|
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
One CLI, no compromises: an interactive terminal UI, a full coding agent
|
|
12
12
|
runtime, native Chutes model routing, parallel subagents, multimodal
|
|
13
13
|
generation, web research, browser automation, and local memory — with
|
|
14
|
-
telemetry, remote trace upload, and phone-home update checks
|
|
14
|
+
telemetry, remote trace upload, and phone-home update checks disabled.
|
|
15
15
|
|
|
16
16
|

|
|
17
17
|
|
|
@@ -24,6 +24,7 @@ telemetry, remote trace upload, and phone-home update checks off by default.
|
|
|
24
24
|
- [Quick start](#quick-start)
|
|
25
25
|
- [Features](#features)
|
|
26
26
|
- [Configuration](#configuration)
|
|
27
|
+
- [CLI reference](#cli-reference)
|
|
27
28
|
- [Privacy & security](#privacy--security)
|
|
28
29
|
- [Project](#project)
|
|
29
30
|
|
|
@@ -31,7 +32,7 @@ telemetry, remote trace upload, and phone-home update checks off by default.
|
|
|
31
32
|
|
|
32
33
|
- 🔒 **Privacy by construction** — telemetry, remote error reporting, automatic
|
|
33
34
|
update checks, remote trace upload, and upstream session sharing are all
|
|
34
|
-
disabled
|
|
35
|
+
disabled at the product-policy level.
|
|
35
36
|
- ⚡ **Chutes-native inference** — live model discovery, `Auto (Chutes Router)`
|
|
36
37
|
as the default, and automatic fallback when a model is temporarily
|
|
37
38
|
unavailable.
|
|
@@ -111,7 +112,7 @@ chutes-build
|
|
|
111
112
|
`Auto (Chutes Router)` is the first entry in the model picker and the default
|
|
112
113
|
when no preference has been saved. Select a concrete model with `/model` or
|
|
113
114
|
`chutes-build --model <model-id>`. Inspect the resolved catalog with
|
|
114
|
-
`chutes-build models`.
|
|
115
|
+
`chutes-build models` or machine-readable `chutes-build models --json`.
|
|
115
116
|
|
|
116
117
|
## Features
|
|
117
118
|
|
|
@@ -120,6 +121,10 @@ when no preference has been saved. Select a concrete model with `/model` or
|
|
|
120
121
|
- **Coding agent runtime:** repository inspection, edits, shell commands,
|
|
121
122
|
planning, goals, MCP servers, skills, sessions, worktrees, and permission
|
|
122
123
|
controls inherited from the mature upstream runtime.
|
|
124
|
+
- **Local session lifecycle:** list, search, resume, fork, export, trace, and
|
|
125
|
+
delete sessions without a remote registry. Machine-readable list/search
|
|
126
|
+
output is available with `--json`; destructive commands require confirmation
|
|
127
|
+
unless `--yes` is supplied.
|
|
123
128
|
- **Advisor:** a read-only, on-demand reasoning agent that reviews plans,
|
|
124
129
|
difficult decisions, blockers, and completion claims without taking over the
|
|
125
130
|
executor loop. Reasons at maximum effort by default. `/advisor on|off`
|
|
@@ -165,14 +170,17 @@ when no preference has been saved. Select a concrete model with `/model` or
|
|
|
165
170
|
treating directly relevant official pages as primary authority.
|
|
166
171
|
- **Research and browser tools:** native web search (DuckDuckGo by default,
|
|
167
172
|
optionally Brave) plus agentic Chrome/Edge control through a local DevTools
|
|
168
|
-
connection and an isolated temporary browser profile.
|
|
173
|
+
connection and an isolated temporary browser profile. Browser actions accept
|
|
174
|
+
either CSS selectors or the numeric element indices shown by snapshots.
|
|
169
175
|
|
|
170
176
|
### Memory & voice
|
|
171
177
|
|
|
172
178
|
- **Local memory:** Chutes Build maintains a secret-filtered `memories.md` file
|
|
173
179
|
and can be launched with `--no-memory` when a stateless session is preferred.
|
|
174
180
|
Recall is hybrid by default — full-text search combined with semantic vector
|
|
175
|
-
search against a built-in Chutes-hosted embedding model.
|
|
181
|
+
search against a built-in Chutes-hosted embedding model. Semantic recall
|
|
182
|
+
sends the selected memory chunks to that Chutes embedding endpoint; use
|
|
183
|
+
`--no-memory` when this is not appropriate.
|
|
176
184
|
- **Voice input:** hold-to-record dictation transcribes speech into the prompt
|
|
177
185
|
box. Enabled by default; activation is always manual (mic icon, `/voice`, or
|
|
178
186
|
Ctrl+Space) — Chutes Build never records without an explicit press.
|
|
@@ -182,11 +190,23 @@ when no preference has been saved. Select a concrete model with `/model` or
|
|
|
182
190
|
### Privacy by construction
|
|
183
191
|
|
|
184
192
|
Telemetry, remote error reporting, automatic update checks, remote trace
|
|
185
|
-
upload,
|
|
193
|
+
upload, upstream session sharing, and remote workspace exposure are disabled.
|
|
194
|
+
Updates are installed manually from npm or a release artifact. See
|
|
186
195
|
[Privacy & security](#privacy--security) below for the full data boundary.
|
|
187
196
|
|
|
188
197
|
## Configuration
|
|
189
198
|
|
|
199
|
+
### State root
|
|
200
|
+
|
|
201
|
+
User state defaults to `~/.chutes-build`. Set `CHUTES_BUILD_HOME` to relocate
|
|
202
|
+
the complete state tree, including configuration, credentials, sessions, logs,
|
|
203
|
+
trace exports, plugins, user roles/personas, and the managed bundled-agent
|
|
204
|
+
cache. Chutes Build does not combine roles or bundle data from the default home
|
|
205
|
+
with a custom state root.
|
|
206
|
+
|
|
207
|
+
Project-scoped `.chutes-build` directories remain inside their repositories and
|
|
208
|
+
continue to take precedence over user and bundled agent definitions.
|
|
209
|
+
|
|
190
210
|
### Model selection, reasoning, and routing
|
|
191
211
|
|
|
192
212
|
Auto sends `model-router` requests to the Chutes router endpoint, allowing the
|
|
@@ -216,6 +236,12 @@ Fallback happens only for transient availability/capability responses and only
|
|
|
216
236
|
before response streaming begins. Chutes Build does not redirect requests or
|
|
217
237
|
credentials to a non-Chutes inference endpoint.
|
|
218
238
|
|
|
239
|
+
Ambient Chutes credentials are attached only to official Chutes/router
|
|
240
|
+
endpoints. Custom inference models must declare their own `api_key` or
|
|
241
|
+
`env_key`; a custom model-catalog endpoint uses the dedicated
|
|
242
|
+
`CHUTES_MODELS_API_KEY`. Neither receives `CHUTES_API_KEY` or a cached Chutes
|
|
243
|
+
session token implicitly.
|
|
244
|
+
|
|
219
245
|
The inference client shares pooled HTTP connections, enables TCP no-delay, and
|
|
220
246
|
forwards parsed SSE events without an application-level streaming buffer. Cold
|
|
221
247
|
starts and model-side generation can still dominate latency. Auto is the
|
|
@@ -235,6 +261,25 @@ run `/usage` for every active window, percentage, and reset time. If aggregate
|
|
|
235
261
|
quota usage is unavailable, the client falls back concurrently to the
|
|
236
262
|
documented per-chute quota endpoints.
|
|
237
263
|
|
|
264
|
+
### OAuth login (Sign in with Chutes)
|
|
265
|
+
|
|
266
|
+
Pressing `l` at the welcome screen (or `/login`) runs a standard OAuth 2.0 +
|
|
267
|
+
PKCE flow against Chutes' own identity provider. The built-in app is a public
|
|
268
|
+
client and does not bundle or require a client secret. Custom confidential
|
|
269
|
+
clients can be configured under
|
|
270
|
+
[Chutes' developer settings](https://chutes.ai/app/api):
|
|
271
|
+
|
|
272
|
+
```powershell
|
|
273
|
+
$env:CHUTES_BUILD_OAUTH2_CLIENT_ID = "cid_..."
|
|
274
|
+
$env:CHUTES_BUILD_OAUTH2_CLIENT_SECRET = "csc_..." # only if your app has one
|
|
275
|
+
chutes-build
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
Both variables are read from the environment and are never written to
|
|
279
|
+
`config.toml` or any other file on disk. The custom secret is included in both
|
|
280
|
+
the initial token exchange and refresh requests. `k` / `/apikey` (pasting a
|
|
281
|
+
Chutes API key directly) needs no app registration.
|
|
282
|
+
|
|
238
283
|
### Optional web and browser configuration
|
|
239
284
|
|
|
240
285
|
Web search uses DuckDuckGo without a dedicated key. For Brave Search:
|
|
@@ -267,14 +312,24 @@ limited to 512 MiB by default (`CHUTES_MAX_MEDIA_BYTES`, hard ceiling 2 GiB),
|
|
|
267
312
|
while workspace inputs are limited to 64 MiB by default
|
|
268
313
|
(`CHUTES_MAX_INPUT_ASSET_BYTES`, hard ceiling 512 MiB).
|
|
269
314
|
|
|
315
|
+
## CLI reference
|
|
316
|
+
|
|
317
|
+
The complete command and option reference is in
|
|
318
|
+
[docs/cli-reference.md](docs/cli-reference.md). Interactive slash commands are
|
|
319
|
+
documented in [docs/slash-commands.md](docs/slash-commands.md). Installed
|
|
320
|
+
binaries remain authoritative for the exact version: use
|
|
321
|
+
`chutes-build --help` and `chutes-build <command> --help`.
|
|
322
|
+
|
|
270
323
|
## Privacy & security
|
|
271
324
|
|
|
272
325
|
### Local data
|
|
273
326
|
|
|
274
327
|
User-level state defaults to `~/.chutes-build` or the directory set in
|
|
275
328
|
`CHUTES_BUILD_HOME`. Project memory is stored in `memories.md`. Configuration,
|
|
276
|
-
sessions, logs, exports,
|
|
277
|
-
|
|
329
|
+
sessions, logs, exports, credentials, plugins, user roles/personas, and bundled
|
|
330
|
+
agent definitions remain local. Prompts, selected repository content, memory
|
|
331
|
+
embeddings, voice recordings, OCR/media inputs, and browser traffic leave the
|
|
332
|
+
machine only when their corresponding hosted feature is invoked.
|
|
278
333
|
|
|
279
334
|
See [PRIVACY.md](PRIVACY.md) for the exact network and data boundaries.
|
|
280
335
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chutes-build",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.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.4.0",
|
|
38
|
+
"chutes-build-darwin-x64": "0.4.0",
|
|
39
|
+
"chutes-build-linux-arm64-gnu": "0.4.0",
|
|
40
|
+
"chutes-build-linux-x64-gnu": "0.4.0",
|
|
41
|
+
"chutes-build-win32-arm64": "0.4.0",
|
|
42
|
+
"chutes-build-win32-x64": "0.4.0"
|
|
43
43
|
},
|
|
44
44
|
"keywords": [
|
|
45
45
|
"ai",
|