@trybullet/cli 1.3.18 → 1.3.20
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 +52 -0
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -137,6 +137,58 @@ npm run dist # local unsigned build (right-click → Open)
|
|
|
137
137
|
`npm run eval:classifier` additionally checks routing quality — plan intent and
|
|
138
138
|
plan-approval verdicts — against a live nano model, so it needs a provider key.
|
|
139
139
|
|
|
140
|
+
## Linux
|
|
141
|
+
|
|
142
|
+
Every host difference resolves in one place, `electron/platform.js`; nothing else
|
|
143
|
+
in `electron/` or `src/` may hardcode a path or read `process.platform`, and
|
|
144
|
+
`scripts/check-platform.sh` fails the build if it does. CI runs the suite on
|
|
145
|
+
macOS and Ubuntu both.
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
npm run dist:linux # AppImage + deb into release/
|
|
149
|
+
npm run release:publish linux # push to the linux update feed
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**Which package to hand a user**
|
|
153
|
+
|
|
154
|
+
| | `.deb` | AppImage |
|
|
155
|
+
|---|---|---|
|
|
156
|
+
| Ubuntu / Debian | **recommended** | needs setup, see below |
|
|
157
|
+
| Other distros | — | **recommended** |
|
|
158
|
+
| Updates itself | no | yes |
|
|
159
|
+
|
|
160
|
+
The split is not a preference, it is what works. Chromium's sandbox needs either
|
|
161
|
+
unprivileged user namespaces or a setuid helper. Ubuntu 24.04 blocks the former
|
|
162
|
+
(`kernel.apparmor_restrict_unprivileged_userns=1`) and an AppImage is mounted
|
|
163
|
+
`ro,nosuid`, so the helper can never be setuid there — the app aborts on launch
|
|
164
|
+
with "The SUID sandbox helper binary was found, but is not configured
|
|
165
|
+
correctly." A `.deb` can make the helper setuid, which `build/deb-postinst.sh`
|
|
166
|
+
does; read that file before touching it, because electron-builder's generated
|
|
167
|
+
postinst gets this wrong in a way that only breaks for the user, not the
|
|
168
|
+
packager. Ubuntu 24.04 also ships FUSE3, so an AppImage needs `libfuse2t64`
|
|
169
|
+
before it will even mount.
|
|
170
|
+
|
|
171
|
+
Running with `--no-sandbox` would paper over all of it and is deliberately not
|
|
172
|
+
done: the Preview panel renders pages the agent navigated to, which is exactly
|
|
173
|
+
what that sandbox is there to contain.
|
|
174
|
+
|
|
175
|
+
**Two Linux gaps to know about**
|
|
176
|
+
|
|
177
|
+
- **No on-device model.** node-llama-cpp kills the process while loading a model
|
|
178
|
+
inside Electron on Linux — SIGILL on Electron 32, SIGSEGV on 34 and 38 — while
|
|
179
|
+
the same model and binaries work under plain `node` on the same machine. A
|
|
180
|
+
native crash cannot be caught, so `platform.localEngine()` gates it off and
|
|
181
|
+
onboarding asks for a subscription or API key instead. Fixing it means running
|
|
182
|
+
the engine in a child node process and streaming over IPC.
|
|
183
|
+
- **`.deb` cannot self-update.** electron-updater only supports AppImage on
|
|
184
|
+
Linux, so Settings tells `.deb` users where to download from rather than
|
|
185
|
+
offering a button that cannot work. A real fix is an apt repository.
|
|
186
|
+
|
|
187
|
+
The AppImage ships CPU and Vulkan llama backends only; the CUDA ones are
|
|
188
|
+
excluded in `build.files` because they are 526 MB and load solely where the CUDA
|
|
189
|
+
runtime is already installed, which for most desktops means never. Vulkan
|
|
190
|
+
already covers NVIDIA, AMD, and Intel. Re-adding them is one glob.
|
|
191
|
+
|
|
140
192
|
## Releasing
|
|
141
193
|
|
|
142
194
|
Installed copies update themselves: the app checks
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trybullet/cli",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.20",
|
|
4
4
|
"description": "The fastest coding agent — terminal edition. Same router, tools and agent loop as the Bullet desktop app, in your shell.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"homepage": "https://usebullet.com",
|
|
@@ -24,11 +24,11 @@
|
|
|
24
24
|
"bin/bullet.js"
|
|
25
25
|
],
|
|
26
26
|
"optionalDependencies": {
|
|
27
|
-
"@trybullet/cli-darwin-arm64": "1.3.
|
|
28
|
-
"@trybullet/cli-darwin-x64": "1.3.
|
|
29
|
-
"@trybullet/cli-linux-x64": "1.3.
|
|
30
|
-
"@trybullet/cli-linux-arm64": "1.3.
|
|
31
|
-
"@trybullet/cli-win32-x64": "1.3.
|
|
27
|
+
"@trybullet/cli-darwin-arm64": "1.3.20",
|
|
28
|
+
"@trybullet/cli-darwin-x64": "1.3.20",
|
|
29
|
+
"@trybullet/cli-linux-x64": "1.3.20",
|
|
30
|
+
"@trybullet/cli-linux-arm64": "1.3.20",
|
|
31
|
+
"@trybullet/cli-win32-x64": "1.3.20"
|
|
32
32
|
},
|
|
33
33
|
"engines": {
|
|
34
34
|
"node": ">=18"
|