summaryrefslogtreecommitdiff
path: root/makima/src/server/state.rs
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2026-01-22 01:26:53 +0000
committerGitHub <noreply@github.com>2026-01-22 01:26:53 +0000
commitb61a907bac09a7649ca3f6d850e771b3b75c7015 (patch)
treea7794d5b29bc165b6d76596d6e53cf75158d3a64 /makima/src/server/state.rs
parentb84b3f782d3a3d6bf7ed8040fd72907ca19db8c6 (diff)
downloadsoryu-b61a907bac09a7649ca3f6d850e771b3b75c7015.tar.gz
soryu-b61a907bac09a7649ca3f6d850e771b3b75c7015.zip
Add daemon restart feature from settings (#18)
* Add daemon restart feature from settings This adds the ability to restart a connected daemon from the settings page. The feature includes: - Backend: RestartDaemon command added to DaemonCommand enum - Backend: New POST /api/v1/mesh/daemons/{id}/restart endpoint - Backend: Daemon gracefully shuts down tasks and exits with code 42 (can be used by process managers like systemd to detect restart requests) - Frontend: restartDaemon() API function - Frontend: Restart button in Connected Daemons section of settings - Frontend: Confirmation dialog before restart to prevent accidental restarts When a daemon receives the restart command, it: 1. Gracefully shuts down all running Claude processes (5s timeout) 2. Exits with code 42 to signal restart requested 3. The daemon can be restarted by a process manager or manually Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Diffstat (limited to 'makima/src/server/state.rs')
-rw-r--r--makima/src/server/state.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/makima/src/server/state.rs b/makima/src/server/state.rs
index 38aadf5..28d65d0 100644
--- a/makima/src/server/state.rs
+++ b/makima/src/server/state.rs
@@ -435,6 +435,9 @@ pub enum DaemonCommand {
/// Error response
Error { code: String, message: String },
+
+ /// Restart the daemon process
+ RestartDaemon,
}
/// Active daemon connection info stored in state.