Recently Written · git

ai-config

One canonical AI agent config (rules, skills, MCP servers) rendered into Claude Code, Codex, Copilot CLI and Antigravity by acsync

git clone https://github.com/equwal/ai-config

Log | Files | Refs


commit fb1abd8e59edc3f871ebf93d259647680728d506
equwal <13551856+equwal@users.noreply.github.com>
2026-10-04 06:28:30 -0700

Drop PC turn-finished toasts: remove notify-done.ps1 and Windows Copilot agentStop hook

 acsync.toml                                   |  7 ++-----
 hooks/copilot-notification-hooks.windows.json | 12 ------------
 hooks/notify-done.ps1                         | 16 ----------------
 3 files changed, 2 insertions(+), 33 deletions(-)
diff --git a/acsync.toml b/acsync.toml
index 44e2880..9b97766 100644
--- a/acsync.toml
+++ b/acsync.toml
@@ -150,11 +150,8 @@ env = { MEMSTATE_DB = '${home}\.memstate\memstate.db' }
 
 # ---------- hooks ----------
 [files."${home}/.copilot/hooks/notification-hooks.json"]
-src = "hooks/copilot-notification-hooks.${os}.json"
-
-[files."${home}/.claude/hooks/notify-done.ps1"]
-src = "hooks/notify-done.ps1"
-machines = ["pc"]
+src = "hooks/copilot-notification-hooks.linux.json"
+machines = ["g"]
 
 [files."${home}/.claude/hooks/notify-done.sh"]
 src = "hooks/notify-done.sh"
diff --git a/hooks/copilot-notification-hooks.windows.json b/hooks/copilot-notification-hooks.windows.json
deleted file mode 100644
index 1e03d5d..0000000
--- a/hooks/copilot-notification-hooks.windows.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
-  "hooks": {
-    "agentStop": [
-      {
-        "timeoutSec": 15,
-        "powershell": "pwsh -NoProfile -File \"C:\\Users\\Administrator\\.claude\\hooks\\notify-done.ps1\" 'Copilot CLI' 'Turn finished'",
-        "type": "command"
-      }
-    ]
-  },
-  "version": 1
-}
diff --git a/hooks/notify-done.ps1 b/hooks/notify-done.ps1
deleted file mode 100644
index 2aebdac..0000000
--- a/hooks/notify-done.ps1
+++ /dev/null
@@ -1,16 +0,0 @@
-param([string]$Title='AI done',[string]$Msg='Turn finished')
-# Windows toast via WinRT (no module needed); falls back to a balloon.
-try {
-  [void][Windows.UI.Notifications.ToastNotificationManager,Windows.UI.Notifications,ContentType=WindowsRuntime]
-  [void][Windows.Data.Xml.Dom.XmlDocument,Windows.Data.Xml.Dom.XmlDocument,ContentType=WindowsRuntime]
-  $x=New-Object Windows.Data.Xml.Dom.XmlDocument
-  $x.LoadXml("<toast><visual><binding template='ToastGeneric'><text>$([Security.SecurityElement]::Escape($Title))</text><text>$([Security.SecurityElement]::Escape($Msg))</text></binding></visual></toast>")
-  $id='{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\WindowsPowerShell\v1.0\powershell.exe'
-  [Windows.UI.Notifications.ToastNotificationManager]::CreateToastNotifier($id).Show([Windows.UI.Notifications.ToastNotification]::new($x))
-} catch {
-  Add-Type -AssemblyName System.Windows.Forms,System.Drawing
-  $n=New-Object System.Windows.Forms.NotifyIcon
-  $n.Icon=[System.Drawing.SystemIcons]::Information; $n.Visible=$true
-  $n.ShowBalloonTip(5000,$Title,$Msg,'Info'); Start-Sleep 6; $n.Dispose()
-}
-exit 0