İçeriğe geç / Skip to content / Zum Inhalt
Ahmet Balaman LogoAhmet Balaman

Hermes Agent ile Telegram, Zamanlanmış Görev ve Güvenlik

Ahmet Balaman

5 dk okuma

Vibe CodingHermes AgentTelegram BotAI AgentOtomasyonGüvenlik
Hermes Agent ile Telegram, Zamanlanmış Görev ve Güvenlik

Hermes Agent'ı bir kez kurduktan sonra asıl işe yararlığı üç şeyle başlıyor: telefondan konuşabilmek, işi zamanlayabilmek ve ajanın neye dokunabileceğini sınırlayabilmek. Bu yazı serinin ikinci bölümü. Kurulumu Hermes Agent nedir ve nasıl kurulur yazısında anlattım; burada Telegram geçidini, zamanlanmış görevleri ve güvenlik ayarlarını adım adım kuruyoruz.

Bu yazı resmî dokümantasyona dayanır; bu ayarları kendi sunucumda denemedim. Komutlar ve anahtar adları dokümantasyondan aktarıldı, kaynaklar sonda.

1. Telegram'a bağlamak

Geçit (gateway), aynı ajanı mesajlaşma uygulamalarına açan bölüm. Telegram için adımlar:

  1. Telegram'da @BotFather ile konuşun, /newbot gönderin, bir ad ve bot ile biten benzersiz bir kullanıcı adı seçin. Size bir API belirteci (token) verecek.
  2. Kendi sayısal kullanıcı kimliğinizi öğrenin (dokümantasyon ve rehberler bunun için @userinfobot gibi botları anıyor).
  3. Hermes'te sihirbazı çalıştırın:
hermes gateway setup

Telegram'ı seçip belirteci ve kullanıcı kimliğinizi girin. Elle yapmak isterseniz ~/.hermes/.env dosyasına şu iki satırı ekleyin:

TELEGRAM_BOT_TOKEN=botfather_tokeni
TELEGRAM_ALLOWED_USERS=sizin_kullanici_kimliginiz
  1. Geçidi başlatın:
hermes gateway

Artık bota yazdığınızda ajan yanıt veriyor. Terminalde başlattığınız bir oturumu Telegram'dan sürdürmek de mümkün; oturumlar platformlar arasında kalıcı.

Telegram içinde işe yarayan komutlar: /model (model seçici), /sethome (bu sohbeti zamanlanmış görev çıktılarının varsayılan adresi yapar) ve /topic (özel mesajlarda çoklu oturum).

Gruplarda dikkat

Bot gruplarda yanıt vermiyorsa BotFather'da /setprivacy ile gizlilik modunu kapatmanız ya da botu yönetici yapmanız gerekiyor. Ayar değişince botu gruptan çıkarıp yeniden eklemelisiniz. Her mesaja değil, yalnızca anıldığında yanıt vermesi için require_mention: true var.

2. Zamanlanmış görevler (cron)

Hermes'in kendi zamanlayıcısı var ve çıktıyı istediğiniz platforma gönderebiliyor. Üç yolla oluşturabilirsiniz:

Sohbetten:

/cron add "every 2h" "Check server status"

Komut satırından:

hermes cron create "every 1h" "Yeni haberleri özetle" --skill blogwatcher --deliver telegram

Doğal dille: "Her sabah 9'da Hacker News'te yapay zekâ haberlerine bak ve Telegram'dan özet gönder" demeniz yeterli; ajan bunu kendi zamanlama aracıyla kuruyor.

Desteklenen zaman biçimleri:

Biçim Örnek
Tek seferlik gecikme in 30m, in 2h
Aralık every 30m, every 2h
Doğal zaman every day at 9am, weekdays at 9am
Cron ifadesi 0 9 * * *
Tarih 2026-03-15T09:00:00

Çıktı adresi deliver ile seçiliyor: origin (oluşturulduğu sohbet), local (~/.hermes/cron/output/ altına dosya), telegram, discord, slack, email ve diğerleri, birden çoksa virgülle.

Yönetim komutları: hermes cron list, /cron pause <id>, /cron resume <id>, /cron run <id> (hemen çalıştır), /cron remove <id>. Her şeyi durdurmak için hermes pause.

Zamanlanmış görevlerin sınırları

Dokümantasyonun açıkça belirttiği dört sınır var ve hepsi sizi yanlış tasarımdan koruyor:

  • Her çalıştırma izole bir oturum. Önceki çalıştırmayı hatırlamaz; komut istemi ajanın ihtiyacı olan her şeyi içermeli.
  • Özyinelemeli zamanlama yok. Zamanlanmış bir görev başka bir zamanlanmış görev oluşturamaz.
  • Teslim tek yönlü. Ajan, gönderdiği mesaja verdiğiniz yanıtı görmez.
  • İşi LLM'e vermeyebilirsiniz. --no-agent --script betik.sh ile yalnızca betik çalıştırıp model maliyetinden kaçınabilirsiniz.

Zamanlanmış görevlerin her seferinde model çağırdığını unutmayın: saatte bir çalışan bir görev ayda yaklaşık 720 model çağrısı demek. Bir üçüncü taraf rehber Telegram mesajı başına 15 ile 20 bin girdi tokenı gibi rakamlar veriyor; kaynak belirtmediği için kendi kullanımınızı ölçün.

3. Hafıza ve skill'ler: ne zaman işe yarar?

Hafıza oturumlar arası süreklilik sağlıyor; skill ise tekrar eden işin yordamı. Pratik kural: bir işi ajana üçüncü kez anlatıyorsanız, ona "bunu skill olarak kaydet" deyin. Skill'lerin nasıl yazılacağı ve kurmadan önce neden okunması gerektiği Agent Skill yazısında anlatılıyor. Aynı uyarı burada da geçerli: tanımadığınız kişinin skill'ini kurmadan önce içeriğini okuyun.

Dokümantasyonda iki değişmez kural da dikkat çekiyor: ajanın konuşma geçmişini oturum ortasında değiştirmeyin (istem önbelleğini bozar) ve sohbet rollerini sırayla tutun.

4. Güvenlik: ajanın neye dokunabileceği

Bir ajan komut çalıştırabiliyorsa güvenlik ayarı tercih değil, zorunluluk. Dokümantasyondaki katmanlar:

Komut onay modları

  • smart (varsayılan): Yardımcı bir model komutun riskini değerlendiriyor; düşük riskliyi kendisi onaylıyor, belirsizi size soruyor.
  • manual: Tehlikeli komutlarda her zaman size soruyor.
  • off: Bütün onay kontrollerini kapatıyor, --yolo ile aynı. Kendi makinenizde bile önermem.

Sorulan komutta "always" derseniz config.yaml içindeki command_allowlist listesine ekleniyor. approvals.deny ile desen bazlı yasak listesi tanımlayabilirsiniz; bu liste YOLO modunda bile geçerli. Ayrıca rm -rf /, fork bomba ve blok aygıtlara dd yazmak gibi komutlar hiçbir ayarla açılamayan sert bir engel listesinde.

Geçidi kimlerin kullanabileceği

  • TELEGRAM_ALLOWED_USERS her zaman dolu olsun. Dokümantasyon bunu özellikle vurguluyor; boş bırakırsanız botunuzu bulan herkes ajanınıza komut verebilir.
  • DM eşleştirme: Tanımadığı biri yazarsa 8 karakterlik, bir saat geçerli bir kod alıyor; siz hermes pairing approve <platform> <kod> ile onaylıyorsunuz. Hız sınırı ve beş hatadan sonra kilitleme var.

İzolasyon

  • Docker arka ucu: Kapsayıcı çoğu Linux yetkisinden arındırılmış, ayrıcalık yükseltme kapalı, süreç sayısı 256 ile sınırlı çalışıyor. Sunucuda kullanıyorsanız bu arka ucu seçin.
  • root olarak çalıştırmayın. DataCamp rehberi güvenlik önerileri arasında bunu sayıyor.
  • Gizli bilgiler dosya izinleriyle korunsun (.env yalnızca sizin okuyabileceğiniz şekilde).
  • Düzenli güncelleyin: hermes update.

Ajanın etrafındaki çerçevenin (harness) neden modelden en az onun kadar önemli olduğunu harness yazısında anlattım; onay modları ve izin listeleri tam olarak bu çerçevenin parçaları.

Sık Sorulan Sorular

Hermes Agent'ı telefonumdan nasıl kullanırım?

Telegram, Discord, Slack, WhatsApp ya da Signal geçidini kurun. Telegram için BotFather'da bot açıp hermes gateway setup çalıştırmanız yeterli.

Telegram botumu başkaları kullanabilir mi?

TELEGRAM_ALLOWED_USERS doluysa yalnızca listedeki kullanıcılar. Tanımadıkları bir kullanıcı yazarsa eşleştirme kodu gönderiliyor ve siz onaylamadıkça erişemiyor.

Zamanlanmış görev önceki çalışmayı hatırlar mı?

Hayır. Her çalıştırma izole bir oturum; gereken her bilgi komut isteminde olmalı.

Hermes Agent güvenli mi?

Varsayılan ayarlarda komut onayı ve sert engel listesi var. Güvenliği asıl belirleyen sizin ayarlarınız: izin listesi, Docker arka ucu, root olmayan kullanıcı ve onay modu.

YOLO modunu açmalı mıyım?

Onaylamak yorucu geldiğinde cazip ama kapatılan şey tam da koruma katmanı. smart mod çoğu iş için yeterli dengeyi veriyor.

Kaynak

Yorumlar