[2026-05-25] wiki curation, multi-agent patterns, psychologist app, xgimi setup, arr-stack updates
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
---
|
||||
title: AI Psychologist App (Nolvu)
|
||||
created: '2026-05-25'
|
||||
updated: '2026-05-25'
|
||||
type: entity
|
||||
namespace: personal
|
||||
tags: [project, psychology, reflect-app, ios, startup]
|
||||
sources:
|
||||
- personal/projects/psychologist-app/session-design.md
|
||||
- personal/projects/psychologist-app/analytics.md
|
||||
- personal/projects/psychologist-app/onboarding-archetypes.md
|
||||
confidence: medium
|
||||
related:
|
||||
- "[[personal-os-architecture]]"
|
||||
- "[[concepts/executor-orchestrator]]"
|
||||
---
|
||||
|
||||
# AI Psychologist App (Nolvu)
|
||||
|
||||
Mobile app providing AI-powered therapy sessions. Also referred to as
|
||||
"reflect app" or "nolvu" in vault. Status: active development (May 2026).
|
||||
|
||||
## Architecture — Dual-Agent Session Design
|
||||
|
||||
Two-bot system handling a single user session:
|
||||
|
||||
```
|
||||
Bot 1: Analyst ("Психолог")
|
||||
→ analyzes user in 3rd person ("user avoids...")
|
||||
→ generates 1-2 questions per batch
|
||||
↓
|
||||
Bot 2: Narrator ("Посредник" / Mediator)
|
||||
→ translates to 1st person ("you avoid?")
|
||||
→ produces structured question JSON for UI
|
||||
↓
|
||||
UI (deterministic algorithm)
|
||||
→ serves questions one at a time
|
||||
→ collects answers → passes numbered summary back to Analyst
|
||||
```
|
||||
|
||||
**Key principle:** question delivery is a deterministic algorithm, not an LLM
|
||||
call. Agent generates a batch once; UI manages sequencing.
|
||||
|
||||
## Session Flow
|
||||
|
||||
```
|
||||
OPEN: character animation → intro (1-2 sentences + max 2 history hooks)
|
||||
→ topic selection
|
||||
|
||||
DIALOGUE: Analyst generates questions (3rd person)
|
||||
→ Narrator translates (1st person JSON)
|
||||
→ UI queues → user answers → numbered summary → next batch
|
||||
|
||||
INSIGHT: Analyst crystallizes observation → Narrator reformulates for user
|
||||
|
||||
CLOSE: [backend] Analyst writes session summary + updates profile.md
|
||||
Narrator: warm closing phrase + next session date
|
||||
"One last thing" (optional open input) → close or reschedule flow
|
||||
```
|
||||
|
||||
## State Persistence
|
||||
|
||||
Session state saved at every step (not only on close):
|
||||
|
||||
```json
|
||||
{
|
||||
"session_id": "2026-05-19",
|
||||
"phase": "dialogue",
|
||||
"current_question_idx": 2,
|
||||
"answered": [...],
|
||||
"last_activity_ts": 1747612800
|
||||
}
|
||||
```
|
||||
|
||||
Abandoned sessions (last_activity_ts > 20h, not closed): backend cron forces
|
||||
partial close → Analyst writes partial summary → profile.md updated.
|
||||
|
||||
## Analytics — Privacy-First (GDPR)
|
||||
|
||||
- **No Google Analytics.** PostHog (self-hosted or EU Cloud, free tier).
|
||||
- **Split identity:** `user_id` ≠ `analytics_session_id` — no cross-table join.
|
||||
- Demographics stored as buckets (age: 25-34, country: ISO code) — not PII.
|
||||
- Never log: message text, questionnaire answers, full IP, timestamp+user_id pair.
|
||||
|
||||
Key funnel metric: **Session 1 completion rate** (target > 50%).
|
||||
|
||||
## Onboarding
|
||||
|
||||
"Resonance questionnaire" — cards with real audience voice phrases
|
||||
(e.g. "Устала быть сильной") that encode 5 variables in 4 words.
|
||||
User picks up to 2. Classification maps to archetype for session personalization.
|
||||
|
||||
## See Also
|
||||
|
||||
- [[concepts/executor-orchestrator]] — related multi-agent orchestration pattern
|
||||
- [[personal-os-architecture]] — system context in which this is developed
|
||||
Reference in New Issue
Block a user