İlk personanı yarat
Tek satırlık intent'ten denetlenmiş, dört katmanlı, voice fingerprint'i çıkarılmış bir personaya — beş dakikada.
Bu tutorial POST /v1/personas çağrısının ucundan ucuna nasıl çalıştığını
gösterir: API anahtarı al, bir intent gönder, response'u oku, personayı
sonra geri bul. Docs'taki her şey bu döngünün üzerine kurulu.
1. API anahtarı al
Workspace'ine giriş yap, Settings → API keys → New key'i aç. İki prefix konvansiyonu var:
sk_test_*— test workspace'ine bağlı; production verilerinden izole.sk_live_*— production. Buna database parolası gibi davran.
Anahtarı bir environment variable'a koy ki shell history'sinde takılmasın:
export MOONBORN_API_KEY=sk_live_xxxxxxxxxxxxxxxx2. Persona üret
Tek bir POST çağrısı intent'i altı adımlı
generation pipeline'a verir.
workspaceId tek diğer zorunlu alan; geri kalan her şeyin savunulabilir
bir default'u var.
curl -X POST https://api.moonborn.co/v1/personas \
-H "Authorization: Bearer $MOONBORN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"intent": "İstanbul'\''dan 34 yaşında bir kurucu. Parlak ama huzursuz. Imposter sendromunu durmak bilmeyen momentum'\''un arkasına saklıyor.",
"workspaceId": "ws_..."
}'import Moonborn from '@moonborn/sdk';
const client = new Moonborn({ apiKey: process.env.MOONBORN_API_KEY });
const persona = await client.personas.createPersona({
intent:
"İstanbul'dan 34 yaşında bir kurucu. Parlak ama huzursuz. Imposter sendromunu durmak bilmeyen momentum'un arkasına saklıyor.",
workspaceId: 'ws_...',
});
console.log(persona.id, persona.status, persona.pipelineRunId);import os
from moonborn import Moonborn
client = Moonborn(api_key=os.environ["MOONBORN_API_KEY"])
persona = client.personas.create_persona(
intent="İstanbul'dan 34 yaşında bir kurucu. Parlak ama huzursuz.",
workspace_id="ws_...",
)
print(persona.id, persona.status, persona.pipeline_run_id)Response bilinçli olarak yalın:
{
"id": "persona_01H...",
"status": "active",
"pipelineRunId": "run_01H..."
}Persona'nın kendisi — Soul, Self, Mask, Surface — artık workspace'inde.
pipelineRunId adım başı gecikmeleri ve provider route'larını görmek
istersen audit izine giden kırıntı.
3. Personayı geri oku
const detail = await client.personas.getPersona({ id: persona.id });
console.log(detail.surface.name.display);
console.log(detail.mask.signaturePhrases);
console.log(detail.voiceFingerprintId);Geri aldığın şey tam dört katmanlı doküman artı runtime ipuçları
(voice fingerprint ID, distinctiveness skoru, audit verdict'i). Şema
için GET /v1/personas/{id}
endpoint'ine bak.
4. Pipeline'ı stream et (opsiyonel)
Pipeline ilerlemesini gösteren bir UX için stream: true geç. Response
step.started / step.completed / pipeline.completed event'lerinin
SSE stream'i olur. Okuma döngüsü için
Streaming patterns guide'a bak.
Yapmana gerek olmayanlar
- Model seçimi. Moonborn Soul draft için
claude-opus-4-7, geri kalan içinclaude-sonnet-4-6seçti; ikisi de org/workspace scope'unda configurable. - Audit'i çalıştırma. Otomatik çalıştı; 4.2/5'lik verdict personayla birlikte saklandı.
- Voice fingerprint hesaplama. Üretim sonrası elli kısa-senaryo completion'ı çalıştı; embedding sorgulanabilir.
Sonraki
- Yeni personana karşı bir chat oturumu aç: Set up a chat session.
- Uzun konuşmalarda drift'i izle: Handle voice drift.
- Tam Personas API'ya göz at.