diff --git a/home-manager/common/software/cli/fish/functions.nix b/home-manager/common/software/cli/fish/functions.nix
index 6dade8a3..6e360aa6 100644
--- a/home-manager/common/software/cli/fish/functions.nix
+++ b/home-manager/common/software/cli/fish/functions.nix
@@ -192,48 +192,59 @@
       end
     '';
     gotify-send = ''
+      # --- Argument Check ---
       if test (count $argv) -lt 1
           echo "Usage: <command> | gotify-send <subject>" >&2
-          cat > /dev/null
+          # Removed cat > /dev/null
           return 1
       end
 
-      set -l subject $argv[1]
+      set -l subject "$(hostname):  $argv[1]"
       set -l priority 3 # Default priority
       set -l gotify_url "https://gotify.sysctl.io"
       set -l token_file "/var/run/secrets/gotify_global_token"
 
-      # Read token from file
+      # --- Read Token ---
       set -l gotify_token
       if test -r "$token_file"
           set gotify_token (cat "$token_file" | string trim)
       else
           echo "Error: Cannot read token file '$token_file'" >&2
-          cat > /dev/null
+          # Removed cat > /dev/null
           return 1
       end
-
       if test -z "$gotify_token"
           echo "Error: Token file '$token_file' is empty or read failed." >&2
-          cat > /dev/null
+          # Removed cat > /dev/null
           return 1
       end
 
-      set -l message_body (string collect)
+      # --- Read Piped Input ---
+      set -l message_body "Command completed"
 
-      set -l escaped_subject (string escape --style=json "$subject")
-      set -l escaped_message (string escape --style=json "$message_body")
+      # --- Manual JSON Escaping ---
+      set -l escaped_subject (string replace -a '\\' '\\\\' "$subject" | string replace -a '"' '\\"')
+      set -l escaped_message (string replace -a '\\' '\\\\' "$message_body" | string replace -a '"' '\\"' | string replace -a \n '\\n')
 
+      # --- Construct Payload ---
       set -l json_payload (printf '{"title": "%s", "message": "%s", "priority": %d}' \
           "$escaped_subject" "$escaped_message" $priority)
 
-      # Assumes curl exists
-      echo $json_payload | curl -sS -X POST \
+      # --- Execute curl (Verbose, Foreground) ---
+      echo $json_payload | curl -v -X POST \
           -H "Content-Type: application/json" \
           -H "X-Gotify-Key: $gotify_token" \
           --data @- \
-          "$gotify_url/message" > /dev/null 2>&1 &
+          "$gotify_url/message"
 
+      # --- Check curl Status ---
+      set curl_status $status
+      echo "--- curl Exit Status: $curl_status ---" >&2
+
+      if test $curl_status -ne 0
+          echo "Error: curl command failed." >&2
+          return $curl_status
+      end
       return 0
     '';
   };