Commit Graph

28 Commits

Author SHA1 Message Date
Ollie Agent 68082ad2a6 front-ends: transparent FUSE remount on I/O errors
All front-ends (sh, b, ls, kill, cleanup, ellie.el, ollie-acme, Kmpl)
now retry file operations after running ollie-remount on failure.
contrib target added to 'all' so ollie-remount is always installed.
2026-05-21 09:00:13 +02:00
Levi Neely 767a6ab64f sh: simplify sigint handler - just send stop, let rc resume 2026-05-08 14:59:21 +02:00
Levi Neely 2a98363b99 sh: fix signal handler name: sigint not sigintr 2026-05-08 14:58:20 +02:00
Levi Neely 2c4d8a0782 sh: remove statewait read before poll loop 2026-05-08 14:56:45 +02:00
Levi Neely b07fcec765 sh: read state file directly instead of parsing cfg 2026-05-08 14:55:35 +02:00
Levi Neely 284f1969d8 sh: on Ctrl-C during turn, send stop and re-exec to resume 2026-05-08 14:53:27 +02:00
Levi Neely 7265c8202d sh: redefine sigintr during agent turn to interrupt without exiting 2026-05-08 14:46:41 +02:00
Levi Neely dd4e5a677a sh: Ctrl-C interrupts running turn instead of exiting 2026-05-08 14:45:02 +02:00
Levi Neely fb29487a1f revert chatwait changes in sh and acme frontends 2026-05-08 12:45:05 +02:00
Levi Neely ecbb9e240c use chatwait for responsive streaming in sh and acme frontends 2026-05-08 12:08:54 +02:00
Levi Neely ba8f7948bb s/sh: fix case patterns for argument-taking commands
Quoted '*' in rc switch cases is a literal character, not a wildcard.
Replace '/cmd *' patterns with /cmd?* so rc treats them as globs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 08:18:15 +02:00
Levi Neely 3186bb12f2 s/sh: replace readmulti with inline bash readline; fix /model feedback
Replace the Python raw-mode multiline hack (readmulti) with an inline
bash read -e loop using backslash continuation. Add show_new to display
the server response after /model, /agent, /backend cfg writes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 22:47:20 +02:00
Levi Neely dfabeab4a8 sh: fix is_idle for multi-word state values 2026-04-24 15:39:42 +02:00
Levi Neely a232925745 sh: multi-line input with C-j/C-m via readmulti 2026-04-24 15:38:38 +02:00
Levi Neely 963210ea6e scripts/s/sh: replace line with awk; remove sh.rc 2026-04-24 15:29:42 +02:00
Levi Neely 57d164310c remove batch jobs; rename spec -> cfg; s/job -> s/b, s/q -> s/bfg, s/sched -> s/bbg
Batch jobs were a front-end concern. All one-shot query workflows now
compose session primitives via s/b (engine), s/bfg (foreground), and
s/bbg (background). Parallel execution is a shell loop.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 08:42:38 +02:00
Levi Neely 127e518dae frontends: update to spec file; remove individual session file reads
tui/session: IsIdle reads spec and parses state= key.
scripts/s/sh, sh.rc: add spec_get helper; is_idle, /cwd, /model,
/agent, /backend read via spec_get; writes go to spec as key=value.
el/ellie.el: ellie--state reads spec with string-match on state=.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 07:43:10 +02:00
Levi Neely 5457e3ba43 scripts/s/sh: port from bash to rc shell
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 20:29:30 +02:00
Levi Neely 2a741f50eb Fix s/sh display synchronization issue
Simplify the script to fix the timing/display problem where LLM responses
weren't shown in real-time and user typing wasn't echoed properly.

The fix:
1. Block on statewait file until agent leaves idle state
2. Stream chat output in loop while agent is not idle
3. Use simple tail -c +offset to read new chat content
4. Remove complex buffering logic and background processes

This resolves the issue where assistant responses would appear one prompt
late and user typing wasn't visible during LLM response generation.
2026-04-19 21:55:06 +02:00
Levi Neely 748337571f scripts/s/sh: statewait, stdin pipe, startup tail; bump tui
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 17:20:20 +02:00
Levi Neely e23c79c713 docs,prompts,scripts,tui,el: rename enqueue/dequeue to fifo.in/fifo.out; add *wait docs; bump submodules
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 16:11:19 +02:00
Levi Neely 4202505704 elevation: add elevate_superpowers tool; remove frontend env injection from s/sh and submodules
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 20:07:10 +02:00
Levi Neely c06fed4503 env: inject session env via s/{id}/env; works on new and resumed sessions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 19:20:03 +02:00
Levi Neely ed2316c2d0 env: session-scoped env via -e flag; remove daemon-global env export
- s/sh: add -e VAR1,VAR2 flag to inject named vars from frontend env
  into session spec as env.NAME=VALUE lines
- s/sh: remove $MOUNT/env export loop (global env file removed)
- Bump core and 9p submodules

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 19:02:35 +02:00
Levi Neely 72eeff473a env: centralize daemon env management; add /mcp slash command to s/sh
- Bump core and 9p submodules for env refactor
- s/sh: export daemon env from $MOUNT/env on startup
- s/sh: add /mcp command

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 15:44:31 +02:00
Levi Neely 179a157c8b scripts/s/sh: implement all supported slash commands
Add explicit handlers for all session ctl commands (/stop, /kill,
/compact, /clear, /rn, /cwd) and session file r/w commands (/agent,
/model, /backend) and read-only queries (/models, /backends, /usage,
/ctxsz). Ctl commands now continue past the drain loop. /rn updates
local $id/$S after rename. Unknown slash commands print an error
instead of writing garbage to ctl.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 14:53:42 +02:00
Levi Neely 718fabf500 scripts: use $0 for cmd name in q, sched, sh
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 12:12:00 +02:00
Levi Neely a4ba0f9f9f scripts: organize by hosted namespace (scripts/s/)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 11:56:35 +02:00