Commit Graph

10 Commits

Author SHA1 Message Date
Levi Neely 35b3ff338e Fix 9p-read-inbox to strip .json extension when marking messages complete 2026-02-17 14:37:46 +01:00
Levi Neely 873f839278 Implement layered sandbox configuration system
- Add global.yaml base config (renamed from sandbox.yaml)
- Add backend-specific configs (claude.yaml, kiro-cli.yaml)
- Add role configs (developer, reviewer, tester, architect, etc.)
- Add task configs (git, docker, go, rust, python, nodejs, etc.)
- Implement config merging: global + backend + role + tasks
- Update workflows to use roles and tasks
- Create tester role with read-only source, execute-only bins
- Fix reviewer role to use rox for bin directories
- Auto-create RW directories that don't exist
- Make backend configs required (fail if missing)
- Update mkfile to install cfg files to ~/.config/anvillm
- Remove Role-Based Sessions from IDEAS.md (now implemented)
2026-02-15 18:57:55 +01:00
Levi Neely b47f6ba97d Add Log command to Acme interface
Opens streaming log window that displays session chat history.
Window is named /AnviLLM/Log.{session-id-or-alias} and streams
log data continuously, marking window as clean after each write.
2026-02-15 12:09:14 +01:00
Levi Neely 57007b2fbc Add streaming log viewer to Emacs and TUI
TUI changes:
- Press 'l' to view session log in scrollable pane
- Manual refresh with 'r' key
- Non-blocking read prevents hang on streaming log file
- Log window scales to 80% of terminal width
- Auto-scrolls to bottom on open

Emacs changes:
- Press 'l' to view session log in dedicated buffer
- Streams log continuously in real-time
- Auto-scrolls when at bottom of buffer
- Process automatically killed when buffer closed
- Refresh with 'r' restarts stream from beginning
- Fixed pre-existing bug in anvillm-compose-prompt

Both interfaces now support log viewing with appropriate
streaming/refresh strategies for their execution models.
2026-02-15 11:22:45 +01:00
Levi Neely f6d8ef50bc remove kiro crap, update gitignore 2026-02-14 21:14:55 +01:00
Levi Neely 38f3a8e765 Add web interface (anvilweb)
- Minimal Go web server with REST API for session management
- Single-page UI using Pico CSS (12KB, classless framework)
- Features: create sessions, send prompts, edit context/alias, control sessions
- Security: input validation, XSS prevention, path validation
- Auto-refresh every 5 seconds
- Documented security model (no authentication, localhost/SSH tunneling recommended)
2026-02-14 17:02:43 +01:00
Levi Neely 14e3c8d9a4 feat: add curses-based TUI (anvillm)
Add terminal UI as an alternative to the Acme interface. Both UIs
interact with anvilsrv via the same 9P filesystem interface.

Implementation:
- cmd/anvillm/main.go: Full-featured TUI using tview/tcell
- Session list with color-coded states
- Keyboard-driven interface (no mouse required)
- Auto-refresh every 2 seconds
- Modal dialogs for creating sessions, sending prompts, setting aliases

Features:
- Create Kiro/Claude sessions (k/c keys)
- Send prompts to selected session (p key)
- Stop/Restart/Kill sessions (s/R/K keys)
- Set session aliases (a key)
- Refresh session list (r key)
- Help dialog (? key)
- Quit (q key)

UI Components:
- Session table with columns: ID, Alias, Backend, State, PID, Cwd
- Status bar showing keyboard shortcuts
- Modal forms for user input
- Color-coded session states (green=running, aqua=idle, etc.)

Dependencies:
- github.com/rivo/tview: TUI framework
- github.com/gdamore/tcell/v2: Terminal cell library

Build:
- Updated mkfile to build anvillm binary
- Fixed .gitignore to allow cmd/anvillm/ directory

Documentation:
- Added Terminal UI section to README
- Lists all keyboard shortcuts
- Notes that TUI uses same 9P interface as Assist

This provides a lightweight alternative for users without Acme.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-14 12:01:02 +01:00
Levi Neely 27e836dcfb cleanup 2026-02-10 22:30:57 +01:00
Levi Neely a7adb2427f update gitignore 2026-02-10 22:30:24 +01:00
Levi Neely d8dccd94b3 initial commit 2026-02-09 17:57:42 +01:00