diff --git a/.gitignore b/.gitignore
index 5237694..1b252a3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,6 @@ Q-Login
.kiro
*.elc
/Assist
-/anvilsrv
+/anvillm
*.test
bookmarks.html
diff --git a/docs/diagrams/architecture.mmd b/docs/diagrams/architecture.mmd
index 8cb0bd6..e606feb 100644
--- a/docs/diagrams/architecture.mmd
+++ b/docs/diagrams/architecture.mmd
@@ -7,7 +7,7 @@ graph TB
WebApp["Web App"]
subgraph Core["Core Services"]
- anvilsrv["anvilsrv
(9P daemon)"]
+ anvillm["anvillm
(9P daemon)"]
anvilmcp["anvilmcp
(MCP server)"]
anvilwebgw["anvilwebgw
(HTTP↔9P bridge)"]
end
@@ -19,13 +19,13 @@ graph TB
Ollama["Ollama"]
end
- Assist -->|9P| anvilsrv
- Custom -->|9P| anvilsrv
+ Assist -->|9P| anvillm
+ Custom -->|9P| anvillm
WebApp -->|HTTP| anvilwebgw
- anvilwebgw -->|9P| anvilsrv
+ anvilwebgw -->|9P| anvillm
- anvilsrv --> Claude
- anvilsrv --> Kiro
- anvilsrv --> ollie
+ anvillm --> Claude
+ anvillm --> Kiro
+ anvillm --> ollie
anvilmcp --> tmux
ollie --> Ollama
diff --git a/main.go b/main.go
index e3b1f78..0b9df8d 100644
--- a/main.go
+++ b/main.go
@@ -1,4 +1,4 @@
-// anvilsrv - AnviLLM backend server daemon
+// anvillm - AnviLLM backend server daemon
package main
import (
@@ -27,9 +27,9 @@ func getPidFilePath() string {
ns := client.Namespace()
if ns == "" {
// Fallback to /tmp if namespace not available
- return filepath.Join("/tmp", "anvilsrv.pid")
+ return filepath.Join("/tmp", "anvillm.pid")
}
- return filepath.Join(ns, "anvilsrv.pid")
+ return filepath.Join(ns, "anvillm.pid")
}
// getNamespaceSuffix extracts the display number from namespace (e.g., "0" from "/tmp/ns.user.:0")
@@ -73,7 +73,7 @@ func usage() {
fmt.Fprintf(os.Stderr, "Usage: %s {start|fgstart|stop|status}\n", os.Args[0])
fmt.Fprintf(os.Stderr, "\n")
fmt.Fprintf(os.Stderr, "Commands:\n")
- fmt.Fprintf(os.Stderr, " start - Start the anvilsrv daemon (daemonized)\n")
+ fmt.Fprintf(os.Stderr, " start - Start the anvillm daemon (daemonized)\n")
fmt.Fprintf(os.Stderr, " fgstart - Start in foreground (for debugging)\n")
fmt.Fprintf(os.Stderr, " stop - Stop the running daemon\n")
fmt.Fprintf(os.Stderr, " status - Check daemon status\n")
@@ -108,7 +108,7 @@ func start(daemonize bool) {
if daemonize {
// Check if we're already the daemon (via environment variable)
if os.Getenv("ANVILSRV_DAEMON") != "1" {
- logging.Logger().Info("daemonizing anvilsrv")
+ logging.Logger().Info("daemonizing anvillm")
// Fork the daemon process - use full path to executable
cmd, err := os.Executable()
if err != nil {
@@ -136,12 +136,12 @@ func start(daemonize bool) {
// Give daemon time to start
for i := 0; i < 10; i++ {
if readPidFile() != 0 {
- fmt.Fprintf(os.Stderr, "anvilsrv started successfully\n")
+ fmt.Fprintf(os.Stderr, "anvillm started successfully\n")
return
}
time.Sleep(100 * time.Millisecond)
}
- fmt.Fprintf(os.Stderr, "anvilsrv started (daemon mode)\n")
+ fmt.Fprintf(os.Stderr, "anvillm started (daemon mode)\n")
return
}
}
@@ -150,7 +150,7 @@ func start(daemonize bool) {
pid := os.Getpid()
pidContent := fmt.Sprintf("%d\n", pid)
- logging.Logger().Info("starting anvilsrv", zap.Int("pid", pid), zap.Bool("daemonized", daemonize))
+ logging.Logger().Info("starting anvillm", zap.Int("pid", pid), zap.Bool("daemonized", daemonize))
// Try to create PID file exclusively (fails if exists)
f, err := os.OpenFile(pidFile, os.O_CREATE|os.O_EXCL|os.O_WRONLY, 0644)
@@ -158,7 +158,7 @@ func start(daemonize bool) {
// File exists, check if process is still running
if existingPid := readPidFile(); existingPid != 0 {
if isProcessRunning(existingPid) {
- logging.Logger().Fatal("anvilsrv already running", zap.Int("pid", existingPid))
+ logging.Logger().Fatal("anvillm already running", zap.Int("pid", existingPid))
}
// Stale PID file, remove and retry
logging.Logger().Warn("removing stale PID file on startup", zap.Int("pid", existingPid))
@@ -226,7 +226,7 @@ func start(daemonize bool) {
mdWriter := maildir.New(mailDir, srv.Events())
defer mdWriter.Close()
- logging.Logger().Info("anvilsrv started successfully", zap.String("socket", srv.SocketPath()))
+ logging.Logger().Info("anvillm started successfully", zap.String("socket", srv.SocketPath()))
// Start background monitor for self-healing
stopMonitor := make(chan struct{})
@@ -264,12 +264,12 @@ func stop() {
pidFile := getPidFilePath()
pid := readPidFile()
if pid == 0 {
- fmt.Fprintf(os.Stderr, "anvilsrv is not running\n")
+ fmt.Fprintf(os.Stderr, "anvillm is not running\n")
os.Exit(1)
}
if !isProcessRunning(pid) {
- fmt.Fprintf(os.Stderr, "anvilsrv is not running (stale PID file)\n")
+ fmt.Fprintf(os.Stderr, "anvillm is not running (stale PID file)\n")
os.Remove(pidFile)
os.Exit(1)
}
@@ -286,24 +286,24 @@ func stop() {
os.Exit(1)
}
- logging.Logger().Info("stopping anvilsrv", zap.Int("pid", pid))
- fmt.Printf("Stopping anvilsrv (PID %d)\n", pid)
+ logging.Logger().Info("stopping anvillm", zap.Int("pid", pid))
+ fmt.Printf("Stopping anvillm (PID %d)\n", pid)
}
func status() {
pid := readPidFile()
if pid == 0 {
- fmt.Println("anvilsrv is not running")
+ fmt.Println("anvillm is not running")
os.Exit(1)
}
if !isProcessRunning(pid) {
- fmt.Println("anvilsrv is not running (stale PID file)")
+ fmt.Println("anvillm is not running (stale PID file)")
os.Exit(1)
}
- logging.Logger().Info("anvilsrv status check", zap.Int("pid", pid), zap.Bool("running", true))
- fmt.Printf("anvilsrv is running (PID %d)\n", pid)
+ logging.Logger().Info("anvillm status check", zap.Int("pid", pid), zap.Bool("running", true))
+ fmt.Printf("anvillm is running (PID %d)\n", pid)
}
// readPidFile reads the PID from the PID file, returns 0 if not found