Moonborn — Developers
TypeScript SDK
Type-safe SDK for Node.js and browser applications
Installation
npm install @moonborn/sdk
# or
pnpm add @moonborn/sdkSetup
import Moonborn from '@moonborn/sdk';
const client = new Moonborn({
apiKey: process.env.MOONBORN_API_KEY,
// Optional: override base URL for self-hosted
baseURL: 'https://api.moonborn.co',
});Auto-generated from OpenAPI
The TypeScript SDK is auto-generated from the Moonborn OpenAPI 3.1 spec. It is updated automatically on every API release.
Source: packages/sdk-ts/ in the Moonborn monorepo.
Usage examples
Create a persona
const persona = await client.personas.create({
intent: 'A retired surgeon from Boston who gardens obsessively.',
options: {
pipeline: {
audit: { enabled: true },
voiceFingerprint: { enabled: true },
},
},
});Stream generation
const stream = await client.personas.createStream({
intent: 'A market trader in Lagos, street-smart and fiercely loyal.',
});
for await (const event of stream) {
if (event.type === 'step.completed') {
console.log(event.step, event.output);
}
if (event.type === 'persona.created') {
console.log('Done:', event.persona.id);
}
}Chat with a persona
const session = await client.chat.sessions.create({ personaId: persona.id });
const response = await client.chat.messages.create({
sessionId: session.id,
content: 'What is your greatest fear?',
});
console.log(response.content);
console.log('Drift score:', response.metadata.driftScore);