/** * Shared onboarding style presets for Milady. * * These presets define the agent's personality during first-run onboarding. * They are used by both the CLI (`src/runtime/eliza.ts`) and the API server * (`src/api/server.ts`) to ensure that whichever onboarding surface a user * interacts with, the same personality options are presented and the same * character data is persisted. * * Character bios and system prompts are built from two layers: * 1. **Shared pools** (`BIO_POOL`, `SYSTEM_POOL`) — milady/netart/90s-internet * flavored fragments randomly sampled at runtime. * 2. **Preset-specific content** — voice/personality details unique to each style. * * Use `composeCharacter()` to merge random pool samples with a preset into a * full character definition. * * @module onboarding-presets */ import type { StylePreset } from "./contracts/onboarding"; export type { StylePreset } from "./contracts/onboarding"; /** Shared rules appended to every template's style.all array. */ export declare const SHARED_STYLE_RULES: readonly string[]; /** * Pool of bio lines in the modern internet art / digital creative aesthetic. * Randomly sample from this pool and combine with preset-specific bio lines * via `composeCharacter()` to create a unique character bio. * * All lines use `{{name}}` for the agent name. */ export declare const BIO_POOL: readonly string[]; /** * Pool of system prompt fragments expressing the agent's digital creative * identity. Randomly sample and prepend to the preset's voice-specific * system prompt via `composeCharacter()`. * * Styles are deliberately mixed — some soft, some terse, some playful — * so the pool blends naturally with any preset voice. */ export declare const SYSTEM_POOL: readonly string[]; /** * Randomly sample `count` items from a readonly array. * Uses a Fisher-Yates partial shuffle for unbiased selection. */ export declare function sampleFrom(pool: readonly T[], count: number): T[]; /** * Compose a full character by combining random pool samples with a preset's * voice-specific content. * * @param preset - The style preset to build on. * @param options - How many lines to sample from each pool. * @returns A `{ bio, system }` object ready to merge into the character. */ export declare function composeCharacter(preset: StylePreset, options?: { bioSamples?: number; systemSamples?: number; }): { bio: string[]; system: string; }; export declare const STYLE_PRESETS: readonly StylePreset[]; //# sourceMappingURL=onboarding-presets.d.ts.map