Drop legacy frontend proof-of-concepts (TUI, web UI, HTTP gateway,
Emacs major mode) to focus on the core. Assist remains as the primary
frontend; any 9P-speaking program can serve as a frontend.
Update README, mkfile, .gitignore, and architecture/client-interactions
diagrams accordingly.
Classic cron does not support variable assignments in the crontab.
Inline PLAN9, PATH, DISPLAY, and NAMESPACE exports directly in the
cron command, expanded at install time from the user's environment.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Cron runs with a minimal environment; without PLAN9 and the full PATH,
9p cannot locate the namespace socket and sessions are not detected.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove internal/supervisor Go package. Replace with anvillm-supervisor
script driven by cron: --orphans (every 5m) recovers in_progress beads
whose assignee session has died, --nudge (every 1m) prompts idle worker-
role bots to check for available work via execute_code + wait_for_bead.sh.
Nudges sent as user via send_message.sh. cron-install uses a temp file
to avoid pipeline issues.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove the internal/supervisor Go package and cron-driven orphan check
script. Replace with a single anvillm-supervisor script invoked by cron
that handles both orphan bead recovery (--orphans, every 5m) and idle
worker nudging (--nudge, every 1m). Nudges use send_message.sh as user,
consistent with existing mail processing. anvilsrv no longer runs any
supervisor goroutine.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
scripts/anvillm-orphan-check: scans all mounted beads projects every
5 minutes, finds in_progress beads whose assignee session has died,
and spawns a replacement agent with a bootstrap_session.sh prompt.
mkfile: install anvillm-orphan-check to $HOME/bin; add cron-install
and cron-remove targets for idempotent crontab management.
Default backend for replacement agents is $ANVILLM_DEFAULT_BACKEND
(falls back to "claude").
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Parse args as JSON string fallback when LLM passes args incorrectly
- Update SKILLS_PROMPT and agent docs to use unquoted args syntax
- Install team-templates under $INSTALL_PATH/Teams instead of hardcoded $HOME/bin/Teams
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove bot-templates/ entirely
- Add scripts/anvilspawn: spawn a bot by role+workdir, hash-prefixed alias
ties bots to the same workdir for organic collaboration
- Add roles: solo-developer, developer, reviewer, tester, devops, author,
technical-editor, researcher, taskmgr
- Standardize all roles to: Responsibilities / Prohibited Activities /
Workflow / Response Format
- Remove explicit delegation protocols from all roles; delegation is emergent
- Remove inbox-check startup steps; messages are delivered automatically
- Update mkfile to install anvilspawn
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Move SKILLS_PROMPT.md from kiro-cli/ to repo root (shared across backends)
- Replace verbose agent instructions with concise discovery protocol
- Enforce execute_code for all AnviLLM tool usage; forbid raw 9p commands
- Add agentspawn hook for claude backend
- Clean up install-mcp.sh tool list (now auto-discovered)
- Clarify SKILL.md wording for beads and anvillm-communication
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add DISPLAY, WAYLAND_DISPLAY, USER to landrun env passthrough
- Mount /etc/passwd read-only for getuser() to work
- Update mcptools scripts to check /etc/shadow instead of /etc/passwd for sandbox detection
- New cmd/anvilwebgw: standalone HTTP gateway daemon with start/stop/fgstart/status
subcommands, exposing all 9P-connected API endpoints on :8081
- cmd/anvilweb simplified to a plain static file server that reverse-proxies
/api/* to anvilwebgw; removes all 9P connectivity
- Frontend error handling overhauled: replace alert() with styled dismissible
error banner and inline container errors showing actual server response detail
- Fix CSS specificity bug that kept error banner always visible
- Fix nil slice JSON encoding (null vs []) for empty inbox/archive responses
- mkfile: add anvilwebgw build and clean targets
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Added agent-hook for future use with wrapper script
- Created SKILLS_PROMPT.md for automatic skill loading
- Updated mkfile to install both
- Kept explicit commands in agent config (agent-hook needs wrapper)