AWS + Hermes Agent 7/24 Çalışan Kendi AI Ajanın
AWS'de sunucu açıldı, üstüne Hermes Agent kuruldu, her sabah 08.00 brief veriyor.
genel bakış
AWS + Hermes Agent — 7/24 Çalışan Kendi AI Ajanın
Videodaki bütün komutlar ve konsol adımları burada. Videoyu durdurup komut yazmana gerek yok — kopyala, yapıştır.
Ne kuruyoruz?
AWS'de bir sunucu açıyoruz, üzerine Hermes Agent'ı kuruyoruz, kendi bilgisayarımızdan SSH ile bağlanıyoruz ve her sabah saat 8'de brief veren bir görev tanımlıyoruz.
Video bittiğinde elinde 4 şey olacak:
- 7/24 çalışan bir bulut sunucusu (AWS EC2, Ubuntu 24.04)
- Bu sunucuda çalışan bir Hermes Agent
- Sunucudaki ajana SSH ile bağlanan bir masaüstü uygulaması (Hermes Desktop)
- Her sabah 08:00'de çalışan bir briefing görevi
Şema
┌──────────────────┐ ┌─────────────────────────────┐ ┌──────────────┐
│ Hermes Desktop │ SSH │ AWS EC2 (Ubuntu) │ API │ OpenRouter │
│ (senin laptop) │ ──────► │ │ ─────► │ DeepSeek V4 │
│ │ │ • Hermes Agent │ │ Flash │
│ her şeyi buradan│ │ • gateway servisi │ └──────────────┘
│ yönetiyorsun │ │ • cron zamanlayıcısı │
└──────────────────┘ │ • hafızalar & skill'ler │
└─────────────────────────────┘
▲ Elastic IP (sabit)
Neden sunucuda? Kendi bilgisayarımda çalıştırsam olmaz mı?
İki sebep:
1. Zamanlanmış görevler. Saat 8'de brief istiyorsan ve o saatte bilgisayarın kapalıysa görev çalışmaz. Sunucu her zaman açık olduğu için ajan da her zaman çalışabiliyor. Gece sen uyurken iş yaptırmak istediğinde bilgisayarının açık kalmasına gerek kalmıyor.
2. Güvenlik. Hermes Agent'ın kendi terminali var ve dosya sistemine erişebiliyor. Yanlış bir komut çalıştırdığında senin bilgisayarını değil, silip yeniden kurabileceğin bir sunucuyu etkiler.
Hermes Agent nedir?
Nous Research'ün açık kaynak ajanı. Bir "code assistant" değil.
- Ucuz bir VPS'te de çalışır, masaüstünde de
- Kendi terminali var, dosya sistemine erişebiliyor, web'de arama yapabiliyor
- Unutmuyor — turlar arasında hafızası var, bir problemi nasıl çözdüğünü hatırlıyor
- Yaptığı işten kendine tekrar kullanılabilir skill'ler çıkarıyor
- "Tek çekirdek, çok yüzey" — CLI'dan, masaüstü uygulamasından, gateway kurup WhatsApp / Discord / Telegram üzerinden aynı ajanı kullanabiliyorsun
Başlamadan önce gerekenler
| # | Ne | Not |
|---|---|---|
| 1 | AWS hesabı | Zorunlu değil — başka bir hosting firması da olur. AWS'i en bilinen seçenek olduğu için kullanıyoruz. |
| 2 | OpenRouter hesabı | İçinde biraz kredi. DeepSeek V4 Flash için çok bir şey gerekmiyor. ChatGPT / Anthropic aboneliğin varsa krediye gerek yok, onları da bağlayabilirsin. |
| 3 | Terminal | Windows'ta PowerShell, macOS'ta Terminal |
| 4 | Windows veya macOS | Masaüstü uygulaması için |
Dosyalar
| Dosya | İçerik |
|---|---|
| 01-aws-sunucu-kurulumu.md | AWS konsolu: bölge, EC2, key pair, security group, Elastic IP, bütçe alarmı |
| 02-terminal-ve-hermes-kurulumu.md | SSH bağlantısı, sunucu hazırlığı, Hermes kurulumu, OpenRouter, masaüstü uygulaması, zamanlanmış görev |
Sıra: önce 01, sonra 02.
Video bölümleri
| Zaman | Bölüm |
|---|---|
| 00:00 | Giriş — ne kuracağız |
| 00:53 | Hermes Agent nedir |
| 01:49 | Mimarinin şeması |
| 02:39 | Neden sunucuda host ediyoruz |
| 03:34 | Gerekenler ve maliyet |
| 05:37 | AWS konsolu — bölge seçimi |
| 05:54 | EC2 instance oluşturma |
| 07:15 | Elastic IP tanımlama |
| 07:56 | SSH ile sunucuya bağlanma |
| 08:26 | Sunucu ayarları ve güncellemeler |
| 09:21 | Hermes Agent kurulumu |
| 10:07 | OpenRouter ve model bağlama |
| 11:17 | Hermes Desktop kurulumu |
| 12:00 | Masaüstü uygulamasını SSH ile bağlama |
| 13:28 | Zamanlanmış görev — sabah briefi |
| 15:02 | Günlük kullanımda neye yarıyor |
| 16:27 | Bütçe alarmı kurma |
| 17:15 | Kapanış |
Maliyet
Yeni AWS hesaplarında 6 ay geçerli 200 dolarlık kredi veriliyor ve bu videoda kurduğumuz hizmetler (t3.small + 30 GB gp3 + Elastic IP) onun içinde kalıyor. Kredi bittikten sonra ücretlendirme başlar.
Bu yüzden bütçe alarmını mutlaka kur — hesap ilk kuruş harcadığı anda sana mail gelir.
OpenRouter tarafı ayrı: kullandığın token kadar ödüyorsun.
Denemeyi bitirince sunucuyu silmeyi unutma. Adımlar 01 numaralı dosyanın sonunda. Özellikle Elastic IP'yi release et — boşta duran IP ücretlendirilir.
Takıldığın bir yer olursa videonun altına yorum bırak.
01 — AWS sunucu kurulumu
1 — AWS Sunucu Kurulumu
Bu bölümde Hermes Agent'ın 7/24 çalışacağı EC2 sunucusunu açıyoruz. Buradaki adımların hepsi AWS konsolundan, tarayıcı üzerinden yapılıyor — terminal işleri 2. dosyada.
Videoda bu bölüm: 05:37 – 07:55 ve bütçe alarmı 16:27
1.1 — Bölgeyi seç (Frankfurt)
Konsola girdikten sonra sağ üstten bölge seçicisine tıkla ve Europe altından Europe (Frankfurt) eu-central-1 bölgesini seç.
Neden Frankfurt: EC2'yu destekliyor ve Türkiye'den en düşük gecikmeli bölge burası.
Bunu atlama. Yanlış bölgedeysen açtığın sunucuyu ve Elastic IP'yi sonradan listede bulamazsın — her bölgenin kaynak listesi ayrıdır.
1.2 — EC2 instance oluştur
Üstteki arama kutusuna EC2 yaz, çıkan servise tıkla → Launch instance.
| Alan | Değer |
|---|---|
| Name | Hermes-Agent |
| Application and OS Images | Ubuntu |
| Sürüm | Ubuntu Server 24.04 LTS (seçtikten sonra Confirm) |
| Instance type | t3.small |
| Key pair | Yeni oluştur → hermes-key (aşağıya bak) |
Neden t3.micro değil t3.small: t3.small 2 GB bellek veriyor. Hermes'i rahat çalıştırmak için buna ihtiyacımız var.
1.3 — Key pair (SSH anahtarı)
Key pair bölümünde Create new key pair de:
| Alan | Değer |
|---|---|
| Name | hermes-key |
| Key pair type | ED25519 |
| Private key file format | .pem |
Create key pair dediğin anda hermes-key.pem dosyası bilgisayarına inecek.
Bu dosyayı silme, kaybetme, kimseyle paylaşma. Sunucuya girmenin tek yolu bu. AWS bunu bir daha vermiyor — kaybedersen sunucuya bir daha SSH ile bağlanamazsın.
1.4 — Network settings
Network settings bölümünde sağdaki Edit'e tıkla ve şu satırın böyle olduğundan emin ol:
| Alan | Değer |
|---|---|
| Type | SSH |
| Port | 22 |
| Source type | My IP |
My IP, sunucuya sadece senin şu anki internet bağlantından girilebilmesini sağlıyor.
Not: Ev/mobil internetinin IP'si zamanla değişirse SSH bağlantın kesilir. Böyle bir durumda EC2 → Security Groups → ilgili grup → Edit inbound rules → Source type'ı tekrar
My IPyapıp kaydetmen yeterli.
1.5 — Depolama
Configure storage bölümünde:
| Alan | Değer |
|---|---|
| Boyut | 30 GiB |
| Tip | gp3 |
30 GB, Free Tier kapsamında zaten veriliyor.
1.6 — Başlat
Başka bir şey değiştirmiyoruz. Sağdaki Launch instance butonuna bas.
Oluşturulduktan sonra Instances listesine dön ve yenile — durumun Running olduğunu göreceksin.
1.7 — Elastic IP (sabit IP) tanımla
Varsayılan olarak makineyi her yeniden başlattığında public IP değişir. Bu da SSH oturumunun ve Hermes Desktop bağlantısının kopmasına yol açar. O yüzden sabit bir IP tanımlıyoruz.
- Sol menüde Network & Security → Elastic IPs
- Sağ üstten Allocate Elastic IP address
- Açılan sayfada tekrar sağ alttan Allocate
- IP geldi. Şimdi bu IP'yi makineye bağlayacağız:
- Listeden yeni IP'yi seç → Actions → Associate Elastic IP address
- Instance olarak
Hermes-Agent'ı seç - Associate
Bu IP'yi bir yere not et. Bundan sonraki bütün adımlarda <EIP> yazan yere bunu yazacaksın.
1.8 — Bütçe alarmı kur (zero spend)
Yeni AWS hesaplarında 6 ay geçerli 200 dolarlık kredi veriliyor ve bu videoda kurduğumuz hizmetler onun içinde kalıyor. Kredi bittiğinde para harcamaya başlarsın — o yüzden hesap ilk kuruş harcadığı anda sana mail atacak bir alarm kuruyoruz.
- Üstteki arama kutusuna
budgetyaz → Billing and Cost Management → Budgets - Create a budget
- Zero spend budget şablonunu seç (hiç para harcamak istemediğimiz için)
- Email recipients alanına kendi e-posta adresini yaz
- Create budget
Alternatif: "Aylık 10 doların üzerine çıkmayayım" demek istiyorsan Zero spend yerine Monthly cost budget seçip limiti kendin girebilirsin.
Kontrol listesi
Bir sonraki dosyaya geçmeden önce elinde şunlar olmalı:
- [ ] Frankfurt bölgesinde Running durumda bir
Hermes-Agentinstance'ı - [ ] İndirilenler klasöründe
hermes-key.pemdosyası - [ ] Instance'a associate edilmiş bir Elastic IP (
<EIP>) - [ ] Security group'ta SSH / port 22 / My IP kuralı
- [ ] Kurulmuş bütçe alarmı
Hepsi tamamsa → 2 — Terminal Kodları ve Hermes Kurulumu
Videoyu sildikten sonra: her şeyi kapatmak
Denemeyi bitirdiysen ve ücret ödemek istemiyorsan şu üçünü sırayla temizle:
- EC2 → Instances →
Hermes-Agent→ Instance state → Terminate instance - Elastic IPs → IP'yi seç → Actions → Release Elastic IP address
- Volumes → varsa "available" durumda kalan 30 GB diski sil
Boşta duran (hiçbir makineye bağlı olmayan) Elastic IP saatlik ücretlendirilir. Instance'ı silip IP'yi release etmeyi unutursan fatura oradan gelir.
02 — terminal ve Hermes kurulumu
2 — Terminal Kodları ve Hermes Kurulumu
1. dosyadaki AWS kurulumu bittiyse buradan devam. Bu bölümde önce kendi bilgisayarımızdan sunucuya SSH ile bağlanıyoruz, sonra sunucunun içine Hermes Agent'ı kuruyoruz.
Videoda bu bölüm: 07:56 – 13:27 (masaüstü uygulaması 11:17, zamanlanmış görev 13:28)
Aşağıdaki komutlarda geçen <EIP> yazan yerlere 1.7'de not ettiğin Elastic IP'yi yazacaksın. Örnek: ssh -i $HOME\.ssh\hermes-key.pem ubuntu@3.120.45.67
2.1 — Anahtar dosyasını yerleştir (kendi bilgisayarında)
hermes-key.pem şu an İndirilenler klasöründe duruyor. Onu kalıcı yerine taşıyıp izinlerini kısıtlıyoruz.
Windows — PowerShell
mkdir $HOME\.ssh -Force
Move-Item $HOME\Downloads\hermes-key.pem $HOME\.ssh\
icacls $HOME\.ssh\hermes-key.pem /inheritance:r
icacls $HOME\.ssh\hermes-key.pem /grant:r "${env:USERNAME}:R"
Sırayla ne yapıyor:
| Komut | Ne yapıyor |
|---|---|
mkdir $HOME\.ssh -Force |
.ssh klasörünü açar (zaten varsa hata vermez) |
Move-Item |
.pem dosyasını İndirilenler'den .ssh klasörüne taşır |
icacls ... /inheritance:r |
Dosyanın üst klasörden aldığı izinleri keser |
icacls ... /grant:r "${env:USERNAME}:R" |
Sadece senin kullanıcına okuma izni verir |
Son iki satır şart. SSH, herkesin okuyabildiği bir özel anahtarla bağlanmayı reddeder ve
UNPROTECTED PRIVATE KEY FILEhatası verir.
macOS / Linux — Terminal
mkdir -p ~/.ssh
mv ~/Downloads/hermes-key.pem ~/.ssh/
chmod 400 ~/.ssh/hermes-key.pem
2.2 — Sunucuya bağlan
ssh -i $HOME\.ssh\hermes-key.pem ubuntu@<EIP>
macOS / Linux:
ssh -i ~/.ssh/hermes-key.pem ubuntu@<EIP>
İlk bağlantıda şöyle bir soru gelecek:
The authenticity of host '...' can't be established.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
yes yazıp Enter'a bas. Bir sıkıntı yoksa sunucuya girmiş olacaksın — komut satırı ubuntu@ip-...:~$ şeklinde değişir.
Kullanıcı adı
ubuntu— çünkü Ubuntu imajı kullandık. Amazon Linux'ta buec2-userolur.
Bağlanamıyorsan sırayla kontrol et:
- <EIP> yerine gerçekten Elastic IP'yi yazdın mı?
- Security group'ta SSH kuralının Source'u hâlâ senin IP'n mi? (internet IP'n değişmiş olabilir)
- Instance Running durumda mı?
2.3 — Sunucuyu hazırla
Bundan sonraki komutların hepsi sunucunun içinde çalışıyor. Tek tek yapıştırıp çalıştır.
Saat dilimi
sudo timedatectl set-timezone Europe/Istanbul
Sunucular varsayılan olarak UTC saatiyle gelir. Bunu ayarlamazsan "her sabah 8'de brief ver" dediğinde görev Türkiye saatiyle 11'de çalışır.
Güncellemeler
sudo apt update && sudo apt upgrade -y
Bu adım biraz sürer. Bittikten sonra devam et.
Gerekli paketler
sudo apt install -y curl git build-essential
Swap alanı (2 GB)
sudo fallocate -l 2G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Makinede 2 GB RAM var. Swap, RAM dolduğunda diski yedek bellek olarak kullanmasını sağlıyor — kurulum sırasında işlemlerin bellek yetmediği için ölmesini engelliyor. İkinci satır bunu /etc/fstab'a yazıyor ki sunucu yeniden başladığında da aktif kalsın.
Kontrol etmek istersen:
free -h
Swap: satırında 2.0Gi görüyorsan tamamdır.
2.4 — Hermes Agent'ı kur
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Kurulumun bittiğini şöyle doğrula:
hermes --version
2.5 — İlk çalıştırma ve kurulum sihirbazı
hermes setup
İlk açılışta bir kurulum sihirbazı geliyor. Videodaki seçimler:
Sihirbaz bitince Hermes açılıyor.
2.6 — Model sağlayıcısını bağla (OpenRouter)
Hermes ilk mesajda "provider seçilmemiş" diyecek.
- Provider olarak OpenRouter'ı seç
- Senden bir API key isteyecek
- Yeni bir sekmede openrouter.ai → hesabına gir → Keys → yeni key oluştur
- İsim:
hermes-test(denemeden sonra silebilirsin) - Key'i kopyala, terminaldeki alana yapıştır
- Model listesinden DeepSeek V4 Flash 0731'ı seç
Tüm komutlar, tek blokta
Hızlı referans için.
Kendi bilgisayarında (PowerShell):
mkdir $HOME\.ssh -Force
Move-Item $HOME\Downloads\hermes-key.pem $HOME\.ssh\
icacls $HOME\.ssh\hermes-key.pem /inheritance:r
icacls $HOME\.ssh\hermes-key.pem /grant:r "${env:USERNAME}:R"
ssh -i $HOME\.ssh\hermes-key.pem ubuntu@<EIP>
Sunucunun içinde (Ubuntu):
sudo timedatectl set-timezone Europe/Istanbul
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git build-essential
sudo fallocate -l 2G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes model