Bildirimler — Liu Terminal

Liu Terminal bildirimleri. Yapay zeka ajanları görevleri bitirdiğinde yapılandırılabilir kancalar ve ses uyarıları ile haberdar olun.

liu-notify isteğe bağlı bağımsız bir süreçtir; Liu arayüzü aynı sunucuyu işlem içinde de barındırabilir. Yerel soket üzerinden v1 24 baytlık veya isteğe bağlı meta verili güncel v2 28 baytlık başlık kabul eder, token-bucket ile hız sınırlar, aynı olayları tekilleştirir ve her (ajan, olay) çifti için ses (veya konuşma satırı) yönlendirir.

Çalıştırma

# Ana uygulama ile birlikte derleyin
cmake --build build --target liu-notify

# Arka plan programını başlat
./build/liu-notify daemon

# Tek seferlik bir olay gönder
./build/liu-notify send --tool=claude --event=stop

Yapılandırma ~/.config/liu/notify.conf (veya $XDG_CONFIG_HOME/liu/notify.conf) dosyasındadır — ana uygulamanın config.json dosyasından ayrıdır, böylece daemon Liu çalışmıyorken bile kullanılabilir.

Liu çalışırken bildirim sunucusunu arayüz kendi işlemi içinde barındırır; CLI'ın ikinci bir daemon başlatması gerekmez. Dinleyen sunucu yoksa send olayı teslim etmeden çıkar. Bağımsız daemon'ı yalnızca bildirimlerin Liu olmadan da çalışması gerektiğinde kullanın.

Desteklenen ajan hook'ları

Liu, uygulama çalışırken aşağıdaki ajanlar için yaşam döngüsü hook'larını kurup kaldırabilir. Hook, ajanın kendi yapılandırmasına yazılır; Liu sunucu instance'ı kapandığında yönettiği girdiyi kaldırır.

AjanHook yüzeyiSinyallerNotlar
Claude Code~/.claude/settings.jsonstart · notify · completeUserPromptSubmit çalışma durumunu başlatır; Notification ve Stop sizi uyarabilir.
Codex~/.codex/config.tomlcompleteStop hook'u tamamlanan turu bildirir. Güvenmek için Codex içinde bir kez /hooks çalıştırın.
Grok~/.grok/hooks/liu-notify.jsonnotify · completeNotification ve üst düzey Stop olayları işlenir; alt ajan tamamlanmaları sessiz kalır.
OpenCode~/.config/opencode/plugins/liu-notify.jscompleteYönetilen eklenti, üst düzey session.idle olaylarını dinler.
Antigravity~/.gemini/config/hooks.jsoncompleteAdlandırılmış Stop hook'u üst düzey çalıştırma döngüsü bittiğinde bildirim gönderir.
Command Code~/.commandcode/settings.jsoncompleteClaude uyumlu ayar şeması üst düzey Stop olayına bağlanır.

Copilot ve custom, düşük seviyeli bildirim protokolü ve ses matrisi tarafından kabul edilir; ancak Liu henüz bunlar için otomatik yaşam döngüsü hook'u kurmaz. Diğer ajanlar Liu sekmelerinde normal şekilde çalışır, yalnızca otomatik hook bildirimleri almaz.

Araç × Olay Matrisi

Herhangi bir kombinasyon için ses kuralı yapılandırın. Ayarlanmamış hücreler genel kurala düşer.

startstopnotifyerrorcomplete
claude·····
copilot·····
codex·····
custom·····

Çerçeve Biçimi

v1 başlığı 24 bayttır; güncel v2 başlığı meta_len alanını eklediği için 28 bayttır. Tam çerçeve 4096 bayt ile sınırlıdır. Doğrulama tests/fuzz_notify_validate.c ile fuzz testine tabi tutulur; bozuk çerçeveler sunucuyu çökertmeden güvenli biçimde reddedilir.

offset  size  field
0       4     magic      ('N','T','F','Y')
4       2     version    (1 or current 2)
6       2     flags      (speak=1, bell=2)
8       1     tool_id    (claude=1, copilot=2, codex=3, custom=255)
9       1     event_id   (start=1, stop=2, notify=3, error=4, complete=5)
10      1     priority   (reserved)
11      1     source     (cli=0, stdin=1, test=2)
12      4     seq        (client nonce — for dedup)
16      4     title_len  (<= 256)
20      4     body_len   (<= 3072)
24      4     meta_len   (v2 only, <= 512)
payload         title, body, then metadata key=value lines
                total frame <= 4096 bytes

v2 meta veri bölümü şu anda cwd=, session= ve agent= satırlarını taşır. Hook göndericileri olayı doğru bölmeyle eşleştirmek için bunları kullanır; ileriye dönük uyumluluk için bilinmeyen anahtarlar yok sayılır.

Platform Arka Uçları

Aynı çerçeve, farklı konuşmacı. macOS AVSpeechSynthesizer kullanır, Linux ise notify-send'e yönelir. Her arka uç kendi dosyasında (platform_notify_macos.m, platform_notify_linux.c) bulunur, böylece birini değiştirmek veya saplamak tek dosya değişikliğidir.

Sonraki Yapılandırma →

Belgeler

Başlarken

Rehberler

Referans

Diğer diller

English · 简体中文 · 한국어 · Español · Deutsch · Italiano · Français · 日本語 · العربية