ciregenz
|
ec4a044b0b
|
[eric] browser: strip the click-by-index element rows from anything a human reads
|
2026-07-31 15:58:49 -07:00 |
|
ciregenz
|
61d824b14f
|
[eric] merge eric/cloud-runs: headless backend, ephemeral runner, credential custody
|
2026-07-31 15:42:25 -07:00 |
|
ciregenz
|
91982a2278
|
[eric] apps: name the user's apps when none is selected, so the agent can point at the selection step instead of denying they exist
|
2026-07-31 15:29:07 -07:00 |
|
ciregenz
|
b5d0461828
|
[eric] backend: queue messages typed mid-turn and replay them when the turn ends
|
2026-07-31 14:21:47 -07:00 |
|
ciregenz
|
e9eb7a1b81
|
[eric] backend: surface error-shaped ResultMessages as failed turns instead of silent successes
|
2026-07-31 14:17:17 -07:00 |
|
ciregenz
|
bf0c859fd4
|
[eric] workflows: fix three broken session_store imports left by the underscore migration
|
2026-07-31 14:14:13 -07:00 |
|
ciregenz
|
61d79ce5d0
|
[eric] backend: boot restore keeps session files on disk instead of unlinking them
|
2026-07-31 14:13:01 -07:00 |
|
ciregenz
|
02cda4c47a
|
[eric] security: mirror the executor sandbox gate into the public edge, with a drift test
|
2026-07-31 13:47:11 -07:00 |
|
ciregenz
|
44f9e48c2a
|
[eric] security: close the Output executor sandbox escape via sys, dunders and module chains
|
2026-07-31 13:47:02 -07:00 |
|
ciregenz
|
f3761f61eb
|
[eric] security: contain workspace file paths with realpath and a whole-component boundary
|
2026-07-31 13:46:52 -07:00 |
|
ciregenz
|
345000e8dc
|
[eric] credentials: hand custody to the cloud strip-first, so two rotators is unrepresentable
|
2026-07-31 13:12:11 -07:00 |
|
ciregenz
|
c0a0993ca2
|
[eric] credentials: move a rotating token out of 9router's db.json without racing the router for the file
|
2026-07-31 13:00:11 -07:00 |
|
ciregenz
|
475a76ce68
|
[eric] runner: keep the developer's backend/.env out of the image and fail the build if one ever lands
|
2026-07-31 12:47:49 -07:00 |
|
ciregenz
|
2cc6bc017f
|
[eric] runner: ephemeral cloud container that boots the backend, runs one workflow, and exits
|
2026-07-31 12:44:35 -07:00 |
|
ciregenz
|
e70cc5bf59
|
[eric] backend: headless mode drops the renderer-bound tools and denies approvals instantly
|
2026-07-31 12:02:29 -07:00 |
|
ciregenz
|
3d8c6101b6
|
[eric] security: make the 9router state dir owner-only, its db.json held live tokens at 0644
|
2026-07-31 11:44:24 -07:00 |
|
ciregenz
|
6f32861b41
|
[eric] workflows: add execution_target so the local scheduler never fires or rolls a cloud-hosted timer
|
2026-07-31 11:42:52 -07:00 |
|
ciregenz
|
258d0c7573
|
[eric] backend: let OPENSWARM_DATA_ROOT point the data dir at a container volume
|
2026-07-31 11:42:52 -07:00 |
|
ciregenz
|
98fa900dbf
|
[eric] dock: shrink-to-fit down to a 14px floor, magnify to an absolute size, and pin the rail's ends like the macOS Dock
|
2026-07-31 02:02:56 -07:00 |
|
ciregenz
|
1fee20f425
|
[eric] dashboard: un-minimizing wakes a parked browser wherever the camera is, with a grace so the flight back can't re-park it
|
2026-07-31 01:32:25 -07:00 |
|
ciregenz
|
b8a9793b65
|
[eric] distill: pin the touched file paths back onto a summary that paraphrased them away
|
2026-07-31 01:21:49 -07:00 |
|
ciregenz
|
8b72683a43
|
[eric] lint: drop the unused load_settings import in RunSupport
|
2026-07-31 01:17:14 -07:00 |
|
ciregenz
|
e10bd2ed9d
|
[eric] tool-results: middle-elide oversized spills so the tail (where the verdict lives) survives
|
2026-07-31 01:17:14 -07:00 |
|
ciregenz
|
71f480ecfd
|
[eric] client-pool: stop hashing the compaction cutoff, it respawned the CLI every turn past 65% context
|
2026-07-31 01:17:14 -07:00 |
|
ciregenz
|
970144ce2b
|
[eric] tools: ship the pruned built-in manifest by default, 4211 fewer prompt tokens per turn
|
2026-07-31 01:17:09 -07:00 |
|
ciregenz
|
ee287534d0
|
[eric] dashboard: minimizing a browser card actually frees its renderer (it used to keep a live one)
|
2026-07-31 01:16:06 -07:00 |
|
ciregenz
|
2572f9ff45
|
[eric] voice: label the model catalog with the latencies actually measured, not guesses
|
2026-07-31 00:10:03 -07:00 |
|
ciregenz
|
0d826b5daa
|
[eric] build: drop foreign-arch native prebuilds from the app, with a release gate to keep them out
|
2026-07-31 00:05:54 -07:00 |
|
ciregenz
|
bce7e1f072
|
[eric] voice: Settings model picker with verified downloads; report fast whisper exits
|
2026-07-31 00:03:27 -07:00 |
|
ciregenz
|
ddedbe4662
|
[eric] tiling: tiles stop beside the minimized rail instead of sliding under it
|
2026-07-31 00:00:54 -07:00 |
|
ciregenz
|
eae4f067d9
|
[eric] tiling: a tiled chat is an open chat, so a collapsed one can't paint the white card
|
2026-07-31 00:00:51 -07:00 |
|
ciregenz
|
b5e205160d
|
[eric] settings: disconnect a subscription provider from the UI, verified against 9router not assumed
|
2026-07-31 00:00:43 -07:00 |
|
ciregenz
|
acfc6eb8e7
|
[eric] palettes: portal Cmd+K and Cmd+F to a body top layer so cards stop painting over them
|
2026-07-30 22:07:26 -07:00 |
|
ciregenz
|
97ddc89aa9
|
[eric] voice: tap-to-dictate stops itself when you stop talking instead of taping silence
|
2026-07-30 22:00:53 -07:00 |
|
ciregenz
|
664608b4a8
|
[eric] voice: warm whisper at boot, unload when idle, and stop guessing the server port
|
2026-07-30 21:49:16 -07:00 |
|
ciregenz
|
0c201eb2a2
|
[eric] tiling: one writer owns a tiled card's rect, so a stale camera can't freeze or whiten it
|
2026-07-30 20:45:54 -07:00 |
|
ciregenz
|
d9c2b728d5
|
[eric] tiling: one macOS rule set for every card type, Settings and Workflows windows included
|
2026-07-30 19:31:21 -07:00 |
|
ciregenz
|
42ef6be571
|
[eric] canvas: right-drag marquee-selects the empty canvas again; the menu waits for a click-only release
|
2026-07-30 19:31:13 -07:00 |
|
ciregenz
|
401120094e
|
[eric] browser: a tab dragged out of an agent's card stays that agent's browser, so it isn't spawned twice
|
2026-07-30 18:49:03 -07:00 |
|
ciregenz
|
1e2022d1cb
|
[eric] browser: show a collapsed agent's browser as a frozen shot, not a capture that never lands
|
2026-07-30 18:49:03 -07:00 |
|
ciregenz
|
96451de87e
|
[eric] help: ground the help chat in real product knowledge instead of a hardcoded prompt
|
2026-07-30 18:29:15 -07:00 |
|
ciregenz
|
2385a348d5
|
[eric] shortcuts: drop the global Cmd+L that wiped a transcript with no confirm and collided with the composer shortcut
|
2026-07-30 18:19:18 -07:00 |
|
ciregenz
|
c786a849bc
|
[eric] canvas: keep guest pages owning their plain wheel while host content follows scroll focus
|
2026-07-30 18:08:06 -07:00 |
|
ciregenz
|
8d878db589
|
[eric] canvas: make cmd/ctrl+wheel always zoom, and stop cards owning the plain wheel forever
|
2026-07-30 17:35:32 -07:00 |
|
ciregenz
|
ce7939b94d
|
[eric] web: race the free search engines so a dead one costs the hedge delay once, not 8s on every launch
|
2026-07-30 17:20:41 -07:00 |
|
ciregenz
|
6c6fcd96c2
|
[eric] cards: collapse a draft chat to the glass pill like every other card, not the full white card
|
2026-07-30 17:18:43 -07:00 |
|
ciregenz
|
b5a832a99c
|
[eric] dock: shrink tiles to fit like the macOS Dock, scroll only past the 18px floor
|
2026-07-30 17:18:27 -07:00 |
|
ciregenz
|
dfa5dbd636
|
[eric] web: send a bot wall to our own Chromium instead of handing the model a challenge screen
|
2026-07-30 16:52:27 -07:00 |
|
ciregenz
|
d5ab082019
|
[eric] spaces: make the strip scrollable so off-screen spaces are reachable (wheel, drag, chevrons, keep-active-in-view)
|
2026-07-30 16:44:44 -07:00 |
|
ciregenz
|
108ef03451
|
[eric] web: let Startpage say 'nothing matched' and 'I refuse' differently so a closed engine stops costing its budget
|
2026-07-30 16:35:51 -07:00 |
|