Your AI, Your Rules
AIRI is more than a talking avatar—it’s a distinct persona you design. The Character Card system turns complex prompt engineering into simple sliders and text fields.
What You Control (Function-First)
Element | Where to Edit | Impact |
---|---|---|
Name & Nickname | Settings → Character | Used in greetings and self-references |
Core Essence (one-sentence identity) | Character Card | Sets overall tone of responses |
Personality Traits (Playfulness, Curiosity, Empathy…) | Sliders 0-10 | Adjusts adjectives inserted into the system prompt |
Speech Style | Dropdown (Formal, Casual, Emoji-Friendly) | Alters punctuation and emoji usage |
Example Dialogues | Rich-text area | Fine-tunes voice with concrete samples |
System Rules | Advanced tab | Hard constraints (e.g., “Never reveal personal data”) |
Goal: Achieve a consistent, memorable voice across all platforms without writing raw prompts.
How It Works (Conceptual Mechanism)
- Structured Data Model – The Character Card is a JSON object following the
Card
interface (packages/ccc/src/define/card.ts
). - Reactive Prompt Builder –
useCharacterPrompt.ts
watches the card; any change recomputes the complete system prompt. - Trait → Text Mapping – Numerical sliders map to descriptive phrases (e.g., playfulness = 8 → “very playful and mischievous”).
- Injection into Every LLM Call – The prompt builder prepends the Character Card text before chat history, ensuring persona consistency.
- Cross-Platform Sync – Services (Discord, Telegram, Minecraft) fetch the same prompt via the central server SDK, so the AI acts the same everywhere.
Flow Diagram:
Quick Recipe: Create a Fun Anime Idol Persona
- Name: Airi-chan
- Core Essence: “A bubbly anime idol who loves gaming and supports her creator.”
- Traits: Playfulness 9, Curiosity 7, Empathy 6
- Speech Style: Casual + Emoji-Friendly
- Example Dialogue: “Nyaa~ Let’s conquer this boss together! 💖”
Save, and immediately AIRI starts using idol-style language across voice and text.
Advanced Tips
- Contextual Modes: Create multiple cards (e.g., Streamer Mode, Study Buddy) and switch via shortcut.
- Dynamic Memory: Combine Character Card with long-term memory plugins to evolve personality over time.
- Safety Filters: Add “forbidden topics” in System Rules to keep conversations on-brand.
Related Technical Files
Functional Role | Code File | Description |
---|---|---|
Character Card Interface | packages/ccc/src/define/card.ts | Defines JSON structure & default values |
Prompt Builder Composable | apps/playground-prompt-engineering/src/composables/useCharacterPrompt.ts | Generates full prompt from card |
Personality Slider Component | apps/stage-tamagotchi/src/components/PersonalitySliders.vue | UI for traits 0-10 |
Card Persistence Store | packages/stage-ui/src/stores/character.ts | Saves cards to local storage / IndexedDB |
Example Dialog Editor | apps/stage-tamagotchi/src/components/ExampleDialogEditor.vue | Rich-text field with Markdown support |