Tek ajan, on iki müşteri: markaları, hesapları ve linkleri birbirinden nasıl ayrı tutarsınız

Bir ajans tek bir yapay zekâ ajanını Shager'da birçok müşteri için nasıl çalıştırır: müşteri başına çalışma alanı, bağlam klasörü ve çapraz paylaşım önlemleri.

Tek bir ajan birçok müşteriye güvenle hizmet verebilir. Bunun şartı şu: her müşteri Shager'da kendi çalışma alanında durur, her görev çalışma alanını bulup adını açıkça söyleyerek başlar ve müşterinin üslubu, bilgileri ve kuralları, ajanın her oturumda yüklediği ayrı bir bağlam klasöründe tutulur. Tehlike ajanın beceriksiz olması değildir. Asıl mesele, tek bir anahtarın kuruluştaki tüm çalışma alanlarını görebilmesidir. Bu yüzden ayrımı yapı ve alışkanlık sağlamak zorundadır.

Herkesin korktuğu hata belli: A müşterisinin kampanyasını B müşterisinin sayfalarında yayınlamak. Bu hata ajanlara özgü değil, insan operatörler de yapıyor. Aşağıdaki önlemler, hatayı kim yaparsa yapsın yakalar.

Neden her müşteriye ayrı çalışma alanı?

Shager'da bir çalışma alanı, bir müşteri ya da bir markadır. Bağlı her hesap, hesap grubu, gönderi ve takip linki tam olarak bir çalışma alanına aittir. Hiçbir şey kazara bir çalışma alanından diğerine geçmez: bir create_post çağrısı tek bir workspace_id belirtir ve hedeflediği kanallarla gruplar o çalışma alanının kendi listelerinden gelir.

Yeni bir çalışma alanı tek bir çağrıyla oluşturulur. Alanlar şunlardır: name, bir IANA timezone (varsayılan Asia/Jerusalem) ve approval_required. Sonuncusu, o çalışma alanında herhangi bir şey planlanmadan önce müşteri onayını zorunlu kılar.

{
  "tool": "create_workspace",
  "arguments": {
    "name": "Aurora Furniture",
    "timezone": "Europe/London",
    "approval_required": true
  }
}

approval_required ayarını müşteri bazında yapmak doğru ölçüdür. Bazı müşteriler her gönderiyi görmek ister. Diğerleri içerik planını zaten onaylamıştır ve haftada yirmi onay e-postası almak istemez. Ajanın hangisinin hangisi olduğunu hatırlaması gerekmez, çünkü bunu çalışma alanı zorunlu kılar.

Sahiplenilmemiş bir test ortamındaki ajan en fazla beş çalışma alanı oluşturabilir. Bu, bir insan kuruluşu sahiplenmeden önce birkaç müşteriyle pilot kurmaya yeter. Akışın tamamı ajanın kendi kendine kaydolması ve sahiplenme yazısında.

Diyagram: Ajans bir link oluşturur, müşteri kendi Facebook ya da Google hesabına giriş yapıp sayfaları seçer ve hesaplar hiçbir şifre olmadan ajansın çalışma alanında görünür.
Şifre yok, Shager hesabı yok. Müşteri bağlar, ajans yayınlar.

Her müşterinin hesaplarını şifresiz bağlamak

Ajan her çalışma alanı için, kimin için olduğunu belirten bir label ile create_connect_link çağırır. Müşteri linki açar, platforma (Facebook, Instagram, YouTube, X, LinkedIn veya TikTok) kendisi giriş yapar, hesapları seçer ve bu hesaplar yalnızca o çalışma alanının list_channels listesinde görünür. Müşterinin Shager hesabı açmasına gerek yoktur, kimseyle şifre paylaşılmaz.

curl -s https://app.shager.ai/api/v1/workspaces/ws_aurora/connect-links \
  -H "Authorization: Bearer $SHAGER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"label":"Aurora marketing manager"}'

Bağlantı linkleri için kuruluşun sahiplenilmiş olması gerekir. Müşterinin ne gördüğünü ve linkle birlikte ona ne göndermeniz gerektiğini müşteri bağlantı linkleri yazısında bulabilirsiniz.

Bağlam klasörü: her müşterinin hafızası

Çalışma alanı verileri ayırır, bilgiyi ayırmaz. Ajanın Aurora'nın tonu, fiyatları ve yasaklı ifadeleri hakkında bildikleri bir yerde durmalı. Bu bilgi on iki müşterinin bir arada olduğu uzun tek bir talimat dosyasındaysa, er geç birinden diğerine sızar.

Claude Code veya Codex için kullandığım yapı şu:

agency/
  CLAUDE.md                 # agency-wide hard rules, no client facts
  clients/
    aurora/
      CLAUDE.md             # workspace name, voice, facts, do-not-say list
      brief-2026-w40.md
      crm/leads.csv
    beacon-dental/
      CLAUDE.md
      ...

Claude Code, CLAUDE.md dosyalarını hiyerarşik olarak yükler. Bellek belgelerinde anlatıldığı gibi, alt klasörlerdeki dosyalar Claude o klasörlerde çalıştığında yüklenir. clients/aurora/ içinde başlatılan bir oturum ajana ajansın kurallarını ve Aurora'nın dosyasını verir; Beacon Dental hakkında hiçbir şey vermez. Codex'te de AGENTS.md ile benzer bir hiyerarşi vardır: dosyalar proje kökünden çalışma klasörüne kadar birleştirilir.

Her müşteri dosyasının en önemli satırı ilk satırıdır:

Shager workspace: "Aurora Furniture". Act on this workspace only. If any tool
call would use a different workspace_id, stop and ask.

Çapraz paylaşım hatasını yakalayan önlemler

Yapı riski azaltır. Kalan açığı şu alışkanlıklar kapatır.

  1. Bul ve adını açıkça yaz. Her görev list_workspaces ile başlar, müşteriyi adından bulur ve ilk yazma işleminden önce adı ve kimliği ekrana yazar. Kaydı göz ucuyla takip eden bir insan "Aurora Furniture (ws_aurora)" ifadesini görür ve gerekirse durdurur.
  2. Oturum başına tek müşteri. Ajandan "Aurora ve Beacon için bu haftayı hallet" diye istemeyin. İki oturum, iki klasör. Ek maliyeti sıfırdır ve bağlam temiz kalır.
  3. Müşteri adını içeren etiketler. Her create_post çağrısı "Aurora w40 sofa sale" gibi bir label taşır. list_posts çıktısında ve panelde, yanlış çalışma alanındaki yanlış bir etiket hemen göze çarpar.
  4. Her müşteriye ayrı kampanya. campaign alanı utm_campaign olur. Başına müşterinin kısa adını ekleyin (aurora-sofa-sale); böylece yanlış yere düşen bir gönderi, müşterinin analizlerinde de tuhaf bir satır olarak ortaya çıkar.
  5. Ayrı bir kontrol turu. Yalnızca okuma araçlarına sahip bir kontrol oturumu, hiçbir şey onaylanmadan önce taslakları müşterinin yasaklı ifadeler listesine göre denetler. Komut istemi içerik ajanı için komut istemleri yazısında.
Diyagram: Bir ajan anahtarı için üç yetki düzeyi (read, write ve publish); her işlem denetim günlüğüne kaydedilir.
Ajana yalnızca ihtiyacı olanı verin ve yaptığı her şeyi görün.

Her müşterinin kendi API anahtarı olmalı mı?

Shager'da anahtarlar kuruluşa aittir ve yetki kapsamları taşır: read, write ve publish. Bir anahtar, erişebileceği çalışma alanlarını sınırlamaz. Yani müşteri başına anahtar kesin bir duvar örmez, ama yine de iki açıdan işe yarar. Bir anahtarı iptal etmek diğerlerindeki işi durdurmaz. Ayrıca her müşterinin oturumları kendi anahtarıyla çalıştığında, ajan panelindeki ajan çağrıları denetim kaydı çok daha kolay okunur.

Benim yapmayacağım şey, her müşteri oturumuna varsayılan olarak publish yetkili bir anahtar vermek. Oturumların çoğu taslak hazırlar. Planlama adımı, bir insanın kontrol ettiği başka bir anahtarla çalışabilir. Yetki modeli API anahtarları, yetki kapsamları ve denetim yazısında anlatılıyor.

Müşteri içinde gruplar

Bir çalışma alanının içinde hesap grupları, ajanın tek bir alanla birden fazla hesabı hedeflemesini sağlar. Bir franchise müşterisinin bölgeye, dile ya da mağaza formatına göre grupları olabilir. create_group bir name ve channel_ids alır; create_post ise group_ids kabul eder ve bu gruplardaki tüm aktif kanalları ekler. Gruplar da her şey gibi bir çalışma alanına aittir. Bu yüzden ajan, kimlikleri hafızadan kullanmak yerine grupları her seferinde müşterinin çalışma alanı içinde listelemelidir.

Kapasite ve planlar

Shager planları, kuruluş genelindeki bağlı hesap sayısına göre fiyatlandırılır; API, MCP erişimi ve sınırsız kullanıcı her planda vardır. Bir düzine müşteriyle çalışan bir ajans için izlenmesi gereken sayı ajan ya da koltuk sayısı değil, hesap sayısıdır. Paketler fiyatlandırma sayfasında.

Sık sorulan sorular

İki ajan aynı müşteri üzerinde aynı anda çalışabilir mi?

Teknik olarak evet. İkisi de aynı çalışma alanını görür ve ikisi de taslak oluşturabilir. Pratikte ise her birine net bir şerit verin: biri taslak hazırlasın, diğeri kontrol etsin; ya da biri videoyla, diğeri metin gönderileriyle ilgilensin. Aynı haftanın taslaklarını hazırlayan iki ajan tekrar eden içerik üretir.

Müşteri kendi gönderilerini de Shager'da yönetiyorsa ne olur?

Her planda sınırsız kullanıcı olduğu için müşteriyi kuruluşunuza kullanıcı olarak ekleyebilirsiniz. Ajanın taslak hazırlamadan önce list_posts çağırdığından emin olun; böylece müşterinin önceden planladıklarını görür ve aynı güne gönderi yığmaz.

Bir müşteriyle çalışmayı nasıl sonlandırırım?

Ajanın o çalışma alanındaki işini durdurun, planlanmış gönderileri cancel_post ile iptal edin ve müşteriden hesaplarının bağlantısını kesmesini isteyin. Bağlam klasörünü ajanın çalışma klasörünün dışına arşivleyin ki ileride yanlışlıkla yüklenmesin.

Bundan sonra

Klasör yapısını, iki müşteriniz olsa bile, en başta kurun. On iki müşterinin bilgisini sonradan ayırmak, baştan temiz başlamaktan çok daha zordur. İhtiyacınız olacak her müşterinin bağlantı ayrıntıları ajan giriş noktasında.

Kendi hesaplarınızda deneyin.

Lansman döneminde ücretsiz, kart gerekmez. Bağlayın, bir kez yazın; Shager yayınlasın ve ölçsün.