refactor: replace sleep-for vterm hack with process-send-string for Hermes launch

- Replaced sleep-for 0.5 + vterm-send-string timing hack with
  direct process-send-string (no timing race)
- Removed TUI chat command, SSH uses -t PTY for clean CLI mode
- Lines 947-957 in config.el
This commit is contained in:
Thierry Pouplier
2026-05-01 14:35:48 +00:00
parent 390ba2ef61
commit aa06568852

View File

@@ -946,16 +946,15 @@ Handles org-clock and context link capture for tasks."
(evil-local-set-key 'insert (kbd "C-j") #'vterm--self-insert))) (evil-local-set-key 'insert (kbd "C-j") #'vterm--self-insert)))
;; Quick launch Hermes Agent on lazyworkhorse server ;; Quick launch Hermes Agent on lazyworkhorse server
(defun gortium/hermes-vterm () (defun gortium/hermes-vterm ()
"Launch Hermes Agent in a vterm buffer via SSH to lazyworkhorse." "Launch Hermes Agent in vterm via SSH to lazyworkhorse (CLI mode)."
(interactive) (interactive)
(let ((buf (get-buffer-create "*hermes*"))) (let ((buf (get-buffer-create "*hermes*")))
(switch-to-buffer buf) (switch-to-buffer buf)
(unless (get-buffer-process buf) (unless (get-buffer-process buf)
(vterm buf) (vterm buf)
(sleep-for 0.5) (let ((proc (get-buffer-process buf)))
;; SSH to server, then exec into docker and run hermes from venv (when proc
(vterm-send-string "ssh lazyworkhorse 'docker exec -it hermes /opt/hermes/.venv/bin/hermes chat'") (process-send-string proc "ssh -t lazyworkhorse hermes\n")))))))
(vterm-send-return)))))
;; GPTel AI chat for emacs ;; GPTel AI chat for emacs
(use-package! gptel (use-package! gptel