How DailyVox
actually works.
A deep technical breakdown of the on-device AI pipeline behind the Twin. Nine Apple frameworks. Zero third-party SDKs. No cloud calls. Every layer — capture, transcription, NLP, personality modeling, storage — runs on your phone.
Architecture overview.
pipelineEvery piece of data in DailyVox flows through a pipeline that runs entirely on the device. There are zero network calls for AI processing. Here is the full system architecture.
The key constraint: data never leaves the device for processing. Transcription runs on the Neural Engine. NLP runs locally. The Twin is computed and stored in Core Data. The only optional network path is Apple's encrypted iCloud sync — which the user can disable.
The on-device stack.
apple.frameworks[]DailyVox uses nine Apple frameworks to build a full AI pipeline without any third-party dependencies or server-side processing.
SFSpeechRecognizer
The primary transcription engine in v1.0 – 1.x. Converts spoken audio to text entirely on-device.
requiresOnDeviceRecognition = trueensures zero network transmission- Input: AAC audio at 44.1 kHz via AVAudioEngine
- 60+ languages with on-device models
- Real-time partial results for live feedback
- Runs on Apple Neural Engine
SpeechAnalyzer
Apple's next-generation speech recognition framework — transcribes entries on iOS 26+ since v1.6, with the on-device recognizer as the fallback on earlier iOS.
- Significantly faster recognition, lower latency
- Native long-form audio without session timeouts
- No user setup required (no permission prompts for on-device)
- Volatile results for instant partial feedback
- Built for sustained recording — ideal for journaling
NLTagger
The core NLP engine that extracts meaning from transcribed text. Runs multiple analysis passes per entry.
- Sentiment scoring — sentence-level valence −1.0 → +1.0
- Named Entity Recognition — people, places, organisations, dates
- Part-of-Speech tagging — verb density, adjective richness
- Language ID — auto-detect entry language
- All tag schemes use on-device CoreML models
NLEmbedding
Dense vector representations of journal entries, powering on-device semantic search since v1.6.
- 512-dim sentence embeddings per entry
- Cosine similarity for search by meaning, with a measured abstention threshold
- Device-local index, excluded from backups, rebuildable from entries
- The grounding layer the v1.7 Twin chat retrieves from
Foundation Models
Apple's on-device large language model — the v1.7 Twin chat: free-text questions, answers grounded in and citing your own entries, audited before they render.
LanguageModelSession— multi-turn conversation with transcript memory- Tool calling — Twin autonomously queries Core Data via custom Tool protocol
@Generable— type-safe structured outputs (mood reports as Swift structs)streamResponse()— real-time streaming chat UI- Dynamic instructions from TwinEngine for tone matching
- Requires iPhone 15 Pro+. Entire pipeline on-device.
Core Data + CloudKit
Local-first persistence with optional encrypted cloud sync across devices.
- SQLite wrapped by NSPersistentCloudKitContainer
- Local-first: app works fully offline
- AIState entity stores the Twin as Codable JSON
- iCloud sync uses Apple's encrypted infrastructure
- Sync is optional — user can disable entirely
CryptoKit
Military-grade encryption for backup exports and sensitive data at rest.
- AES-256-GCM authenticated encryption for backups
- User passphrase for key derivation
- Encrypted JSON export for device migration
LocalAuthentication
Biometric authentication gating access to journal entries.
- Face ID and Touch ID via LAContext
- Biometric keys held in the Secure Enclave
- App lock with configurable auto-lock timeout
- Falls back to device passcode
WidgetKit + AppIntents
Home & Lock-screen widgets. AppIntents-powered Siri Shortcuts for hands-free entries.
- Mood and streak widgets
- Hands-free voice entry via Siri
- AppIntents make Siri aware of DailyVox operations
The Twin Engine.
model cardThe TwinEngine is a custom personality-modeling system that builds a multi-dimensional profile of the user from their voice journal entries. It uses no external models or APIs. The entire model is computed from NLTagger output and stored as serialized JSON in Core Data's AIState entity.
The engine consists of four interconnected sub-models.
CommunicationStyle
STYLEHow the user expresses themselves. Updated with each entry.
- Type-Token Ratio (vocabulary richness)
- Expressiveness score (0 – 1)
- Directness score (0 – 1)
- Formality score (0 – 1)
- Signature words + frequency map
- Average sentence length
- Pronoun patterns (I vs we)
EmotionalSignature
EMOTIONThe user's emotional baseline and patterns over time.
- Valence baseline (positive / negative)
- Arousal baseline (energy level)
- Dominance baseline (control feeling)
- Morning vs evening mood patterns
- Weekday vs weekend patterns
- Trigger topics with correlation scores
- Emotional volatility index
PersonalKnowledgeGraph
GRAPHA network of people, places, and topics with emotional weights.
- NER-extracted entities (person, place, org)
- Emotional weight per entity (−1 → +1)
- Mention frequency over time
- Co-occurrence relationships
- Entity–mood correlation tracking
- Topic clusters from entity groupings
TwinPredictions
PREDICTForecasts based on temporal pattern analysis.
- Day-of-week mood forecasting
- Time-of-day emotional patterns
- Trend direction (improving / declining)
- Seasonal pattern detection
- Trigger anticipation from schedule
- Confidence scores per prediction
Codable structs serialized to JSON and stored in a single Core Data entity (AIState). The entire personality model can be loaded in one fetch, updated incrementally, and synced across devices as a single atomic object. No external database. No vector store until v1.5. Just Core Data.
Privacy architecture.
zero cloudPrivacy is not a feature of DailyVox. It is the architectural constraint every technical decision is built around. The system is designed so that private data physically cannot leave the device for processing.
Zero network processing
Every AI operation runs on the device's Neural Engine. Transcription uses requiresOnDeviceRecognition = true. NLTagger runs locally. The Twin is computed and stored in Core Data. There are no API calls, no cloud functions, no telemetry on journal content.
No third-party SDKs
DailyVox contains zero third-party dependencies for core functionality. No analytics SDKs. No crash reporting that sends journal content. No ad networks. The only external code is Google Analytics on this website (not in the app) and Apple's own frameworks.
Apple's "Data Not Collected"
DailyVox carries Apple's "Data Not Collected" privacy label on the App Store. This is the strictest category — the app collects no data, linked or unlinked to the user's identity.
Cloud AI journal vs DailyVox
| typical cloud AI journal | DailyVox | |
|---|---|---|
| audio processing | sent to cloud servers | on-device Neural Engine |
| AI model location | remote API (OpenAI etc) | Apple on-device models |
| text analysis | cloud NLP service | NLTagger (local) |
| data storage | company servers | Core Data · SQLite on device |
| account required | yes (email, password) | no |
| third-party SDKs | analytics, crash, ads | none |
| privacy label | "Data Linked to You" | "Data Not Collected" |
| works offline | no | yes, fully |
| subscription | $5–15 / month | free |
| who can read your journal | company, employees, sub-processors | only you |
Technical roadmap.
build logWhere DailyVox has been, what's being built now, and where it's going. Each version adds a layer to the on-device AI stack.
Voice journaling + on-device AI
Core voice journaling with fully on-device transcription, NLP, encrypted storage, biometric lock, widgets, Siri Shortcuts.
Twin + personality model
Custom TwinEngine with communication style, emotional signature, knowledge graph, and temporal mood forecasting.
Ask Your Twin + social sharing
TwinChatView with pattern-matched query system. ShareablePersonalityCardView renders at 3× for Instagram Stories and X. Review prompts via SKStoreReviewController at milestone entries.
The warm redesign
A complete visual rework to a warm, calm palette — sage, gold, and terracotta on ivory — applied app-wide across light and dark themes, with the Digital Twin moved to the center of the app. The unused HealthKit entitlement was removed; it returns with Body Twin in v1.5.
Body Twin — HealthKit + Apple Watch
The Twin gains a body. HealthKit reads sleep, HRV, resting heart rate, steps, and mindful minutes as background context for every entry. Apple Watch companion records from the wrist and samples heart rate during the recording — but only when at rest, so a workout isn't mistaken for emotional stress. Activity context tag (at_rest / active / post_workout) tells the Twin how to interpret each entry. HR stored as delta from your personal hour-of-day baseline. "Data Not Collected" privacy label preserved.
The Twin learns from your day, not just your words
On-device Photos/Vision scene analysis turns the day's camera roll into context (derived labels only — never the photos, nothing leaves the device), plus on-device music-library listening patterns as a mood signal. Both flow through a review-and-discard queue. Off by default; "Data Not Collected" label preserved. Pulled forward from v2.3.
Find entries by meaning, not keywords
NLEmbedding for 512-dim sentence embeddings. Cosine similarity vector search. Z-score anomaly detection. K-means clustering. Foundation for v1.7 RAG. Embodied search builds on v1.5 — "show me entries where I was stressed but didn't say so."
Foundation Models + tool calling + SpeechAnalyzer
On-device 3B Foundation Model replaces template-based Twin chat. Tool calling lets the Twin autonomously query Core Data. @Generable for structured output. streamResponse() for streaming. RAG-grounded answers cite the entries they drew from. SpeechAnalyzer replaces SFSpeechRecognizer. Requires iPhone 15 Pro+. Zero network calls.
The Twin speaks your language
String Catalogs for multi-language UI (Tamil, Kannada, Hindi, Spanish, Japanese, German first). Speech framework already supports 60+ transcription languages on-device — the UI catches up to the pipeline. iPhone-only by conviction: no macOS or visionOS targets. Depth on one platform, breadth in languages.
The Twin joins the system assistant — on your terms
Siri AI integration via App Intents: ask the system assistant and it consults your Twin. Cross-app context adoption as iOS 27 APIs open to third parties — context flows in, nothing flows out. Next-generation Foundation Models for deeper reasoning. Twin replies in your voice via Personal Voice.
Persona conditioning — Twin learns to think like you
Validated Big Five personality scoring from journal narratives (language-based personality modeling). Multi-tier persona conditioning: the measured profile plus retrieved style exemplars — your actual phrasings — steer every reply. Monthly personality snapshots power identity-evolution diffs and "talk to your past self." Fully on-device; no desktop training step.
The most accurate mirror of yourself
After years of daily entries: a Twin that talks like you, sounds like you (Personal Voice), predicts your reactions, explains causality from past entries, and shows personality evolution over time. Full RAG, persona conditioning grounded in your measured personality, autonomous tool calling. Not a clone — it knows your narrated self, not your complete self. Thoughts you don't journal are invisible to it. Entirely on-device, exportable only by you.
Research context.
related workDailyVox exists at the intersection of on-device LLMs, personal AI, and mental-health technology. Several recent research papers explore adjacent ideas.
-
[1]
2026
Memory-Efficient Structured Backpropagation for On-Device LLM Fine-TuningEfficient fine-tuning under mobile memory constraints — the path back to weight-level personalization if on-device adapter training becomes practical.
-
[2]
2025
MoPHES: On-Device LLMs for Mobile Psychological HealthUsing on-device LLMs for psychological health applications — parallel to the Twin's emotional modelling.
-
[3]
2024
PocketLLM: On-Device Fine-Tuning for Personalized LLMsPersonal model adaptation on mobile hardware — foundational for v2.1's personal adapter.
-
[4]
2023
PLMM: Personal Large Language Models on Mobile DevicesEarly architecture proposal for personal LLMs running on phones — the direction DailyVox pursues.
Open source.
auditableThe DailyVox app is open source under the MIT License — the SwiftUI interface, recording and transcription pipeline, Core Data stack, and all app-side processing are on GitHub. The Digital Twin engine is a separate proprietary Swift Package; the app’s zero-network behavior is verifiable regardless: run it in airplane mode or packet-capture it.
Privacy-critical software should be auditable. If you claim data never leaves the device, people should be able to verify that claim by reading the code.
Build with us.
The DailyVox app is open source and contributions to the app are welcome — UI polish, accessibility, language support, app-side integrations. The Digital Twin engine itself is a separate proprietary Swift Package.
Try DailyVox.
Free. Private. No account needed. All AI runs on your device.
Download free on the App Store →