34 lines
2.0 KiB
Markdown
34 lines
2.0 KiB
Markdown
---
|
||
date: 2026-03-22
|
||
topic: telegram-onboarding
|
||
---
|
||
|
||
# Telegram Onboarding
|
||
|
||
## What We're Building
|
||
WiseClaw'a Telegram üzerinden `/tanışalım` komutu ile başlayan, 12 soruluk kalıcı bir onboarding sohbeti ekliyoruz. Bu akış kullanıcının adı, kullanım amacı, ton tercihi, dil tercihi, yanıt uzunluğu, çalışma biçimi ve sınırları gibi bilgileri toplar.
|
||
|
||
Toplanan veriler geçici hafızada değil, SQLite içinde yapılandırılmış bir kullanıcı profili olarak saklanır. Böylece sunucu yeniden başlasa bile WiseClaw aynı kullanıcıyla aynı üslupta konuşmaya devam eder.
|
||
|
||
## Why This Approach
|
||
Alternatif olarak cevapları yalnızca genel memory tablosuna yazmak mümkündü, ancak bu yaklaşım dağınık, kırılgan ve güncellemesi zor olurdu. Ayrı profil + onboarding state modeli daha güvenilir, sorgulanabilir ve kişiselleştirme için daha uygundur.
|
||
|
||
## Key Decisions
|
||
- `/tanışalım` Telegram komutu olacak: onboarding yalnızca istek üzerine veya ilk temas senaryosunda başlatılacak.
|
||
- 12 soru tek tek sorulacak: uzun form yerine sohbet hissi korunacak.
|
||
- Her cevap anında kaydedilecek: yarıda kalırsa kaldığı yerden devam edilebilecek.
|
||
- Veriler ayrı kullanıcı profili tablosunda tutulacak: kalıcı kişiselleştirme için.
|
||
- Prompt'a structured profile enjekte edilecek: ton, dil, uzunluk ve çalışma tercihi her cevapta uygulanacak.
|
||
- Kısa profil özeti ayrıca memory'ye yazılabilecek: ama asıl kaynak structured profile olacak.
|
||
|
||
## Open Questions
|
||
- İlk mesajda onboarding otomatik mi tetiklensin, yoksa sadece `/tanışalım` ile mi başlasın?
|
||
- Admin panelde profil düzenleme ilk sürüme dahil edilsin mi, yoksa yalnızca Telegram komutları yeterli mi?
|
||
|
||
## Next Steps
|
||
- Veri modelini ve onboarding state yapısını ekle
|
||
- Telegram command akışını oluştur
|
||
- Orchestrator içine onboarding interception ekle
|
||
- Prompt kişiselleştirme katmanını bağla
|
||
- `/profilim`, `/tercihlerim`, `/tanışalım_sifirla` yardımcı komutlarını ekle
|