Haftalık müşteri raporu, her pazartesi siz uyanmadan bir ajan tarafından yazılsın
Bir ajanın Shager'dan derlediği haftalık müşteri raporu: yayınlananlar, başarısız olanlar, hesap ve gönderi bazında tıklamalar ve CRM verisiyle eşleştirme.

Bir ajan, müşterinin haftalık dağıtım raporunu Shager'dan üç şey çekerek yazabilir: hafta içinde yayınlanan gönderiler ve her hesaptaki sonuçları, get_analytics ile hesap ve gönderi bazında tıklamalar ve başarısız olan her şeyin listesi. Sonra bu tıklamaları, her hesabı tanımlayan utm_content değeri üzerinden müşterinin CRM'indeki potansiyel müşterilerle eşleştirir. Bunu yalnızca okuma yetkili bir anahtarla zamanlanmış olarak çalıştırın; pazartesi sabahı rapor bir klasörde sizi bekliyor olsun.
Düşünmeyi gerektiren kısım kod değil. Müşterinin gerçekte neyi görmesi gerektiğine karar vermek ve rakamların neyi ölçtüğü konusunda dürüst olmak.
Haftalık bir dağıtım raporunda neler olmalı?
Dört bölüm yeter. Gerisi aylık değerlendirmeye aittir.
- Teslimat. Kaç gönderi çıktı, kaç hesaba gitti ve hangi hesaplar başarısız oldu. Müşteriler bir şey kaybolana kadar bunu nadiren sorar; kaybolduğunda da sordukları tek şey bu olur.
- Hesap bazında tıklamalar. Hangi sayfalar, şubeler ya da kanallar insanları siteye gönderdi. Bütçeleri değiştiren bölüm budur.
- Gönderi bazında tıklamalar. Tüm hesaplarda hangi içerik işe yaradı.
- Yapılacaklar. Müşterinin yapması gerekenler: bir hesabı yeniden bağlamak, gelecek haftanın taslaklarını onaylamak, eksik materyalleri göndermek.
Neyin eksik olduğuna dikkat edin: erişim, gösterim, beğeni. Shager, kendi takip linklerindeki tıklamaları hesap ve gönderi bazında ölçer. Bir sosyal medya analiz paketi olduğunu iddia etmez; rapor da öyleymiş gibi davranmamalıdır.

Veri çağrıları
Bir müşteri çalışma alanı için ajan şu sırayı çalıştırır. Araç adları gerçek MCP araçlarıdır; REST karşılıkları OpenAPI belgesinde.
- Müşterinin çalışma alanını adından bulmak için
list_workspaces. statusdeğeriPUBLISHEDolan birlist_posts, ardından aynısıPARTIALLY_PUBLISHEDveFAILEDiçin.limiten fazla 100 olabilir.- Hesap bazında durumu, yayındaki URL'leri ve hata mesajlarını almak için haftanın her gönderisi için
get_post. - Haftayı kapsayan
fromvetodeğerleriyleget_analytics. - Kanal kimliklerini okunabilir hesap adlarıyla eşlemek ve bağlantı durumu değişen hesapları fark etmek için
list_channels.
REST üzerinden analiz çağrısı:
curl -s "https://app.shager.ai/api/v1/workspaces/ws_example/analytics?from=2026-09-14T00:00:00%2B03:00&to=2026-09-20T23:59:59%2B03:00" \
-H "Authorization: Bearer $SHAGER_READ_KEY"
Bu URL'deki iki ayrıntı insanları sık sık yakar. Farktaki + işareti sorgu dizesinde %2B olarak kodlanmalıdır; yoksa sunucu onu boşluk olarak okur. Hafta sınırları da sunucunun değil, müşterinin saat dilimine göre hesaplanmalıdır. from verilmezse get_analytics varsayılan olarak son 30 günü alır; haftalık bir raporun istediği bu değildir.
Tıklamalar potansiyel müşteri değildir, o yüzden eşleştirin
Shager her hesaba kendi kısa linkini ve UTM etiketlerini verir; utm_content hesabı tanımlar. Eşleştirmeyi mümkün kılan da budur. CRM, potansiyel müşterileri açılış sayfasındaki formda yakalanan UTM değerleriyle kaydeder; ajan da onları aynı utm_content üzerinden Shager'ın hesap başına tıklama sayılarıyla eşleştirir.
Ortaya çıkan tablo raporun kalbidir:
| Hesap | Gönderi | Tıklama (Shager) | Potansiyel müşteri (CRM) | Not |
|---|---|---|---|---|
| Aurora Downtown | 4 | ... | ... | |
| Aurora Northside | 4 | ... | ... | yeniden bağlanmalı |
Sütunlar arasındaki farklar bilgidir. Çok tıklama ve hiç potansiyel müşteri olmaması bir dağıtım sorunu değil, açılış sayfası ya da teklif sorunudur. Hesap bazında potansiyel müşteri ilişkilendirmesi hakkındaki önceki rehberimiz, potansiyel müşteri sütununu güvenilir kılan form alanlarını ve CRM eşlemesini anlatıyor; ajan içeriğinden gelen potansiyel müşterileri ölçmek ise ajan tarafını ele alıyor.
CRM erişiminiz yoksa rapor yalnızca tıklamalarla da işe yarar. Bunu raporun başlığında belirtin. Tıklamaları "sonuç" olarak etiketleyen bir rapor, ajansların bir çeyrek sonra güven kaybetmesinin yoludur.
Claude Code ile gözetimsiz çalıştırmak
Claude Code, arayüzsüz mod belgelerinde anlatıldığı gibi claude -p ile etkileşimsiz çalışabilir. Bu da haftalık raporu bir cron işine dönüştürür.
Önce, anahtarı ortamdan okuyan bir .mcp.json dosyasına sahip bir rapor proje klasörü. Claude Code'un MCP belgeleri başlıklarda ${VAR} genişletmeyi destekliyor:
{
"mcpServers": {
"shager": {
"type": "http",
"url": "https://app.shager.ai/api/mcp",
"headers": { "Authorization": "Bearer ${SHAGER_READ_KEY}" }
}
}
}
Sonra talimatlar; mantık bir crontab satırında değil tek bir dosyada dursun diye beceri (skill) olarak kaydedilir. Beceri belgelerine göre Claude Code, proje becerilerini .claude/skills/<name>/SKILL.md konumundan yükler:
---
name: weekly-report
description: Compile the weekly distribution report for one client workspace from Shager. Use when asked for a weekly client report.
---
The argument is the client workspace name: $ARGUMENTS
1. Resolve the workspace with list_workspaces. Read its timezone.
2. Compute last Monday 00:00 to Sunday 23:59:59 in that timezone, with offsets.
3. Collect posts with list_posts (PUBLISHED, PARTIALLY_PUBLISHED, FAILED) and
keep those published in the window. Call get_post for each.
4. Call get_analytics for the window. Map channel ids to names with list_channels.
5. If crm/<workspace>.csv exists, join leads on utm_content.
6. Write reports/<workspace>/<YYYY-MM-DD>.md with four sections: Delivery,
Clicks by account, Clicks by post, Actions. Use tables. No adjectives about
performance; numbers and one plain sentence per section.
7. Never call any tool that creates, schedules or cancels anything.
Ve yalnızca okuma araçlarını ve dosya yazmayı önceden onaylayan zamanlanmış komut:
cd ~/agency-reports && claude -p "/weekly-report Aurora" \
--allowedTools "mcp__shager__list_*,mcp__shager__get_*,mcp__shager__whoami,Write" \
--output-format json > logs/aurora-$(date +%F).json
mcp__<server>__ önekli ve sonunda joker karakter bulunan izin kuralı sözdizimi, Claude Code'un izin başvuru belgesinde anlatılıyor. Bu listede olmayan hiçbir şey gözetimsiz bir çalıştırmada otomatik olarak onaylanmaz.

Burada yalnızca okuma yetkili anahtar neden önemli
Beceri, modele yazmamasını söyler. Anahtar ise yazmayı imkânsız kılar. Raporlama için ajan panelinden yalnızca read yetkisi olan ayrı bir anahtar oluşturun ve başka hiçbir yerde kullanmayın. Bu anahtar bir gün sızarsa, olabilecek en kötü şey birinin tıklama sayılarını okumasıdır. Yetki modelinin tamamını API anahtarları, yetki kapsamları ve denetim yazısında anlatıyoruz.
Raporlama ajanının yaptığı her çağrı o paneldeki denetim kaydında da görünür. İlk birkaç pazartesi, beklediğiniz şeyleri çağırdığını ve fazlasını çağırmadığını doğrulamanın iyi bir yolu budur.
Anlatı kısmını yazmak
Ajanın her bölüm için bir iki cümle yazmasına izin verin, ama onu sınırlayın. Kurallar olmadan modeller yüzde 4'lük bir değişimi "kayda değer bir artış" olarak anlatır. Benim talimatım dolaysız: rakamı söyle, varsa önceki haftayla karşılaştır ve veri göstermedikçe neden hakkında hiçbir şey söyleme. Bir şube sayfası bağlantısı salı günü sona erdiği için sıfır tıklama aldıysa, bu verinin gösterdiği bir nedendir. "Kitle yorgunluğu" değildir.
Sık sorulan sorular
Ajan raporu doğrudan müşteriye gönderebilir mi?
Ona bir e-posta aracı verirseniz gönderebilir, ama ilk gün bunu yapmazdım. Önce dosyayı yazdırın, birkaç haftalık çıktıyı kontrol edin, sonra teslimatı otomatikleştirin. Rapor, müşterinin sizin işinize baktığı penceredir; otomatik gönderilen yanlış bir rakam, kazanılan zamandan daha pahalıya patlar.
get_analytics potansiyel müşterileri de içeriyor mu?
Hayır. Shager'ın takip linklerindeki tıklamaları, hesap ve gönderi bazında, bir tarih aralığında döndürür. Potansiyel müşteriler müşterinin CRM'inden ya da form aracından gelir ve utm_content üzerinden eşleştirilir. Rapor bu iki kaynağı görünür biçimde ayrı tutmalıdır.
Rapor ne kadar geriye bakabilir?
get_analytics gönderdiğiniz her from ve to değerini kabul eder; from verilmediğinde varsayılan son 30 gündür. Aydan aya karşılaştırmalar için geçmiş raporları doğruluk kaynağı olarak saklamak yerine aynı beceriyi farklı bir aralıkla çalıştırın.
Bundan sonra
Henüz bir anahtarınız yoksa, ajan giriş noktası nasıl oluşturacağınızı ya da bir ajanın kendi kendine nasıl kaydolacağını gösteriyor. Tek bir müşteriyle başlayın, üç pazartesinin raporlarını kendiniz okuyun ve ancak ondan sonra diğerlerini ekleyin.


