Building AI Companions for Action Sports: Kaori Audit, Market Research, and the Roadmap to Best-in-Class
Author: Wes / TrickBook Team
Last updated: 2026-04-09
TL;DR
AI companions are becoming a core product layer, not a novelty. The winners are doing 4 things extremely well:
- Memory continuity (users feel remembered)
- Multimodal interaction (text + voice + eventually embodied presence)
- Strong persona consistency (not generic assistant vibes)
- Safety and reliability under load
Kaori already has a strong personality and in-app integration, but she is still early compared to top companion products. The biggest opportunity is to move from “fun chatbot” to progression partner for riders.
Why this matters for TrickBook
TrickBook sits at a unique intersection:
- action sports identity + community
- progression data (tricks, spots, sessions)
- social graph and messaging
That means TrickBook can build companions that are not just emotional chat partners, but coaches + motivators + memory systems for progression.
This is a much stronger moat than trying to out-compete general-purpose companion apps on pure conversation.
Market scan: best AI companion apps and what they do well
Note: Some official sites are JS-heavy/blocked to crawler fetches, so this audit combines direct product pages with known product behavior patterns.
1) Replika
Strengths
- Relationship modes (friend/partner/mentor)
- Voice + AR/video experiences
- Diary + memory framing
- Wellness/coaching positioning
Takeaway for TrickBook: emotional continuity and rituals matter as much as model quality.
2) Nomi
Strengths
- Explicit positioning around long-term memory
- High persona continuity
- “Human-like” relationship progression and context carryover
Takeaway: memory architecture is a primary UX feature, not a backend detail.
3) Character.AI
Strengths
- Character ecosystem / variety
- Massive content generation loop and community effects
- Roleplay flexibility and engagement loops
Takeaway: multiple companions and creator ecosystems can dramatically increase retention.
4) Kindroid / Paradot (category signals)
Common strengths in this tier
- Customization depth
- Relationship simulation and persistent persona framing
- Memory prominence in messaging
Takeaway: users reward companions that feel stable, personal, and evolving.
Kaori: where she is right now (system audit)
From current TrickBook implementation and project memory:
- Kaori exists as an in-app bot companion in DMs
- Kaori has a strong persona prompt (snow/skate crossover voice, slang, tone shifts)
- Auto-conversation and bot profile wiring are already in place
- Current flow sends DM messages to local companion service (
the companion service API) - There is RAG context plumbing (
kaori-rag/kaori-query) but appears limited in scope - Fallback behavior exists when generation fails
Current strengths
- Brand/personality fit is excellent for action sports
- In-product placement is right (messaging, profile, badge)
- Fast to iterate with prompt + backend route updates
Current gaps
- Memory depth is shallow (recent-message window + limited RAG)
- No clear long-term user memory model (goals, injuries, progression milestones)
- Single companion experience (low personalization variety)
- No native voice loop for “coach in your ear” use cases
- No embodied 3D presence for richer emotional UX
- Ops/security debt in service boundaries and secret handling
The target: best-in-class companion architecture for TrickBook
Layer 1 — Companion runtime (agent brain)
You can keep shipping with current architecture short-term, but for scale:
Option A: ElizaOS-driven companion stack
Great for plugin ecosystem and quick multi-agent expansion.
Use when:
- you want many companion personalities quickly
- you need broad connector support
- you want social/automation plugins out of the box
Option B: LangGraph orchestration
Great for deterministic workflows, memory checkpoints, and production reliability.
Use when:
- you need strict state control and auditable flows
- you want clean separation between short-term, episodic, and semantic memory
- you need robust HITL tooling and state recovery
Recommended hybrid
- LangGraph for orchestration + memory/state correctness
- ElizaOS-style character packs/plugins for rapid companion expansion
Layer 2 — Memory system (critical)
Design memory in 4 bands:
- Working memory (last N turns)
- Session memory (today’s ride/chat context)
- Long-term user memory (stable profile facts, preferences, goals, injuries)
- Knowledge memory (RAG KB) (tricks, drills, sports science, spot knowledge)
Memory write policy (important)
Only write durable memory when event is meaningful:
- new trick landed
- fear/injury concern surfaced
- explicit goal commitment
- recurring friction detected
Memory retrieval policy
At response time, blend:
- recent conversation
- top-k semantic memories
- user progression profile
- domain RAG snippets (instruction-safe)
This is where Kaori becomes “she gets me” instead of “she responds to me.”
Layer 3 — Voice companion (ElevenLabs path)
A top-tier companion should support voice in at least one phase.
Why voice matters
- coaching is more natural in voice
- stronger emotional connection
- useful during commute/warmup, not just in app sessions
Proposed stack
- STT: realtime ASR (provider flexible)
- LLM response: Kaori orchestration layer
- TTS: ElevenLabs conversational voice
- Latency target: sub-1.5s turn response where possible
MVP voice use cases
- “Pre-session hype + drill plan”
- “Post-session reflection”
- “2-minute confidence reset before trying trick”
Layer 4 — Embodied UX (Three.js + lightweight avatar pipeline)
You don’t need AAA graphics. You need expressive, performant feedback.
Phase strategy
- 2D expressive avatar + state changes (fastest)
- Lightweight 3D companion using Three.js + rigged model
- Add gesture/emotion mapping to companion states
Performance principles
- mobile-first GPU constraints
- low-poly + baked lighting
- progressive enhancement (disable heavy effects on lower-tier devices)
Product plan: Kaori to category leader
Phase 1 (0–4 weeks): Foundation hardening
- formalize memory schema (profile/goals/progression/events)
- replace ad-hoc memory writes with explicit memory service
- add observability: latency, fail rate, fallback rate, retention signals
- patch security/ops debt in companion service boundaries
Phase 2 (4–8 weeks): Coaching intelligence
- add progression-aware prompts from TrickBook data
- structured coaching outputs (next drill, confidence cue, safety check)
- implement “Kaori remembers my journey” milestones
Phase 3 (8–12 weeks): Voice beta
- launch push-to-talk Kaori sessions
- add session recaps into memory graph
- test voice retention vs text-only cohort
Phase 4 (12+ weeks): Companion ecosystem
- introduce additional TrickBook companions (see below)
- let users pick coaching style by persona
- add creator/coach-authored knowledge packs
TrickBook companion lineup (proposed)
Kaori should remain flagship, but add targeted companions:
- Kaori (Hype Coach)
Motivation + technical breakdown + progression memory
- Line Builder (Session Planner)
Helps sequence tricks by confidence and risk
- Recovery Homie (Mental + Physical Reset)
Focuses on setbacks, fear, consistency, and recovery routines
- Spot Scout (Local Session Intelligence)
Weather/conditions + spot etiquette + feature suggestions
- Tech Nerd (Gear + Biomechanics)
Equipment tuning, stance analysis, and trick mechanics
Each companion should share a core memory graph but have distinct persona and output style.
KPI framework: what success looks like
Track this like a product experiment:
Engagement
- D1/D7 companion return rate
- avg messages per user per week
- voice session starts (when enabled)
Coaching value
- % users logging a new trick within 7 days of companion use
- self-reported confidence delta before/after sessions
- repeated goal completion rate
Quality
- fallback/error rate
- harmful/unsafe response rate
- persona consistency score
Business
- retention lift among companion users vs non-users
- conversion impact (if companion tied to premium features)
Risks and constraints (be explicit)
- Companion dependency risk → require healthy boundaries + crisis/safety routing
- Hallucination in coaching → domain guardrails + confidence-aware responses
- Memory privacy concerns → user-visible memory controls and delete/export tooling
- Cost blowup → tiered models, cache strategy, and retrieval discipline
The implementation blueprint (technical)
Core services
companion-orchestrator(LangGraph runtime)memory-service(profile + episodic + semantic memory)kb-retrieval-service(RAG over TrickBook docs/content)voice-gateway(realtime STT/TTS + session transport)avatar-client(Three.js rendering + state machine)
Data contracts
UserCompanionProfileCompanionMemoryEventCompanionSessionCoachingPlanSafetySignal
Operational requirements
- trace IDs across message lifecycle
- replayable failed conversations for debugging
- model fallback tree with deterministic safe fallback
Final take
TrickBook doesn’t need to beat every companion app at everything.
It needs to be the best action-sports companion stack — where memory, coaching, identity, and progression are deeply integrated into the rider journey.
Kaori already has the personality foundation. The next leap is architecture: persistent memory, safer orchestration, voice, and a companion ecosystem designed around progression.
If we build that well, companions won’t just increase chat time — they’ll help riders actually land more tricks.
Source Notes
- Kaori implementation + prompt + DM routing audited from TB-Backend (
kaori-ai-response.js,routes/dm.js) on production server snapshot. - TrickBook Kaori status in project memory (Mar 23 update). Source:
MEMORY.md#L135-L147 - Market/product references sampled from official pages where accessible (Replika, Nomi, ElevenLabs, ElizaOS, Three.js) and public docs for LangGraph persistence concepts.
