Cron Job Khusus Skrip: Otomatisasi Tanpa Menghabiskan Token
Script-Only Cron Jobs — easy-to-understand guide based on official docs
Cron Job Khusus Skrip: Otomatisasi Tanpa Menghabiskan Token
Kalau kamu sudah bermain-main dengan cron job Hermes, kamu pasti tahu seberapa canggih fitur ini. Tapi ada satu pertanyaan: bagaimana kalau kamu tidak butuh LLM untuk berpikir—kamu cuma butuh sesuatu yang berjalan sesuai jadwal dan memberi tahu kamu apa yang terjadi?
Di sinilah cron job khusus skrip berperan. Anggap saja ini sebagai lapisan otomatisasi tanpa basa-basi: penjadwal yang sama, pengiriman yang sama, nol token LLM yang terpakai.
Kapan Harus Menggunakan Cron Job Khusus Skrip?
Cron job khusus skrip paling berguna ketika skripnya sendiri sudah menghasilkan pesan persis seperti yang kamu ingin lihat. Tidak perlu penalaran, tidak perlu ringkasan. Hanya output murni yang deterministik.
Berikut kasus penggunaan klasiknya:
- Peringatan memori – skripmu memeriksa penggunaan RAM dan mengeluarkan output “Memori di 92%”
- Peringatan kapasitas disk – idenya sama, metriknya beda
- Heartbeat – layananmu masih hidup, ini buktinya
- Pemantauan apa pun yang skripnya sudah tahu jawabannya – kalau rusak, bilang saja; kalau aman, diam saja
Keunggulannya? Kamu mendapatkan keandalan skrip dengan kekuatan pengiriman Hermes. Tanpa biaya token, tanpa latensi, tanpa penundaan “biar aku pikirkan dulu”.
Cara Membuatnya
Cara termudah? Cukup minta Hermes di chat. Tool cronjob cukup pintar untuk tahu kapan harus menggunakan no_agent=True. Dia akan menuliskan skripnya untukmu dan mengatur semuanya.
Tapi kalau kamu mau melakukannya manual, ini polanya:
/cron add "setiap 1 jam" "Prompt ini tidak akan dipakai" --script ~/.hermes/scripts/my-check.py --name "Monitor saya" --deliver telegram
Tunggu, prompt itu kelihatan aneh. Biar aku jelaskan.
Skripnya yang Berbicara
Dengan cron job khusus skrip, stdout dari skrip menjadi pesannya. Tidak ada LLM di tengah-tengah. Jadi skripmu perlu mengeluarkan output persis seperti yang kamu ingin kirimkan.
Ini contoh sederhananya:
#!/usr/bin/env python3
import shutil
total, used, free = shutil.disk_usage("/")
percent = used / total * 100
if percent > 90:
print(f"⚠️ Disk di {percent:.1f}% — bersihkan sekarang!")
else:
print("[SILENT]")
Lihat [SILENT] di bagian akhir? Itulah penanda diam yang ajaib. Ketika Hermes melihat [SILENT] di output, dia tidak mengirim apa pun. Skripmu yang memutuskan hal apa yang layak mengganggumu.
Trik [SILENT]
Ini fitur andalan untuk skrip pemantauan. Alih-alih mendapat notifikasi setiap jam dengan “semua baik-baik saja,” kamu hanya mendengar kabar dari Hermes ketika ada sesuatu yang benar-benar perlu perhatian.
Logika skripmu:
- Ada masalah? Cetak pesan peringatan
- Semua aman? Cetak
[SILENT]
Hermes yang mengurus sisanya. Tidak ada notifikasi di jam-jam sepi, tidak ada kelelahan notifikasi, tidak ada “kenapa HP-ku bergetar jam 3 pagi untuk server yang sehat?”
Khusus Skrip vs. hermes send
Ada opsi nol-token lain yang perlu kamu tahu: hermes send. Gunakan ini ketika kamu punya skrip yang sudah berjalan di suatu tempat—langkah CI, hook post-commit, skrip deploy—dan kamu cuma ingin mengalirkan outputnya ke Telegram atau Discord.
./my-deploy-script.sh | hermes send --channel telegram
Bedanya? Cron job khusus skrip untuk pemeriksaan berulang dan terjadwal. hermes send untuk momen sekali jalan ketika skripmu memutuskan sudah waktunya bicara.
Contoh Dunia Nyata: Monitor Perubahan Website
Mari kita rangkai semuanya. Ini skrip yang memantau halaman web dan hanya angkat bicara ketika ada yang berubah:
import hashlib, json, os, urllib.request
URL = "https://example.com/pricing"
STATE_FILE = os.path.expanduser("~/.hermes/scripts/.watch-state.json")
content = urllib.request.urlopen(URL, timeout=30).read().decode()
current_hash = hashlib.sha256(content.encode()).hexdigest()
prev_hash = None
if os.path.exists(STATE_FILE):
with open(STATE_FILE) as f:
prev_hash = json.load(f).get("hash")
with open(STATE_FILE, "w") as f:
json.dump({"hash": current_hash}, f)
if prev_hash and prev_hash != current_hash:
print(f"PERUBAHAN TERDETEKSI di {URL}")
print(f"Hash sebelumnya: {prev_hash}")
print(f"Hash saat ini: {current_hash}")
print(f"\n2000 karakter pertama:\n{content[:2000]}")
else:
print("[SILENT]")
Atur dengan:
/cron add "setiap 1 jam" "tidak dipakai" --script ~/.hermes/scripts/watch-site.py --name "Monitor harga" --deliver telegram
Skripnya mengambil halaman, membandingkan hash, dan hanya bicara ketika ada yang berbeda. Tanpa token LLM, tanpa kebisingan, murni otomatisasi.
Kesimpulannya
Cron job khusus skrip adalah kuda kerja otomatisasi nol-tokenmu. Ini sempurna untuk:
- Pemeriksaan deterministik di mana jawabannya biner
- Pemantauan frekuensi tinggi di mana biaya LLM akan menumpuk
- Apa pun yang kamu lebih percaya penilaian skripnya daripada interpretasi LLM
Dan bagian terbaiknya? Kamu tidak harus memilih antara khusus skrip atau bertenaga LLM. Campur keduanya dalam alur kerja yang sama. Gunakan skrip untuk pemeriksaan mekanis, dan biarkan LLM menangani hal-hal menarik—seperti merangkum mengapa perubahan website itu penting.
Mau lebih dalam? Lihat dokumentasi cron lengkap atau tutorial bot briefing harian untuk melihat sisi bertenaga LLM.
📖 Dokumentasi resmi
この記事は Hermes Agent のDokumentasi resmiに基づいています:Dokumentasi resmi › guides/automate-with-cron