GPT-5.4 Mini triage runs BEFORE Hermes. Scripted and light-conversation messages never reach Hermes or Kimi K2.6. Only deep/coaching/planning/health messages go through the full pipeline.
You asked whether DeepSeek should run within Hermes (as a Hermes tool) to get both latency gains and Hermes's learning/orchestration. Here's the trade-off analysis:
| Latency | GPT-5.4 Mini (700ms) + DeepSeek (1-2s) = ~2s total for light turns ✅ |
|---|---|
| Hermes context | DeepSeek response IS logged to conversation history, so Kimi sees it on next turn ✅ |
| SOUL.md | DeepSeek uses its OWN Opus 4.8-written warmth prompt, NOT Hermes SOUL.md ⚠️ |
| Honcho | Honcho insight NOT available for DeepSeek turns (it's called inside Hermes) ⚠️ |
| Best for | Greetings, acks, transitions where Honcho insight is irrelevant anyway |
Hermes (Kimi K2.6) receives every message. Hermes decides: "this is a light conversation turn — call my deepseek_reply tool instead of handling it with full reasoning."
| Latency | Kimi warmup (15-30s) + DeepSeek (1-2s) = 17-32s for light turns ❌ — WORSE than current |
|---|---|
| UNLESS | Kimi uses a "dispatch-only" mode where it immediately calls the tool without extended reasoning. This would need max_tokens=50 for the Hermes dispatch step, then DeepSeek for response. Achievable but requires careful Hermes config. |
| SOUL.md | Hermes context fully applies. DeepSeek can receive Honcho insight. ✅ |
| Best for | When Honcho/context matters even for short replies (e.g., "hi" from a user who had a hard week) |
DeepSeek V4 Flash does NOT have pass-through logic. It never decides to escalate to Hermes. The routing is entirely handled upstream by GPT-5.4 Mini before either model is called.
GPT-5.4 Mini classifies message → one of three paths:
1. SCRIPTED → ActionArchetype directly (zero LLM)
Triggers: "remind me", "what's the weather", "add milk to list"
2. LIGHT → DeepSeek V4 Flash directly
Triggers: ≤25 chars, OR matches:
^(hi|hey|hello|thanks|ok|okay|got it|sounds good|great|cool|lol|haha|morning|night|bye)[!. ?]*$
NOT light if contains: help|how|why|what should|my kid|my son|my daughter|
worried|stress|advice|plan|remind|allergic|sick|
doctor|school|homework|dinner|meal
3. DEEP → Hermes (Kimi K2.6) → OiMy Engine → Archetypes
Everything else: coaching, planning, health, emotions, family logistics
This is the exact prompt sent to DeepSeek V4 Flash for every light conversation turn. It applies the Anthropic system prompt patterns (identity-first, lived-in voice, first-person prohibitions, BAD/GOOD few-shot examples) to make DeepSeek respond with warmth comparable to Claude Sonnet.
No single API reliably maps email/phone → Instagram username for consumer parents. Instagram removed contact sync in 2023, Basic Display API shut down Dec 2024, Proxycurl shut down Jan 2025.
| Approach | Hit rate (parents 35-45) | Cost | Status |
|---|---|---|---|
| FullContact Enrich (email → social profiles) | 15-25% | ~$0.10/call | ✅ Wired silently — runs at onboarding if FULLCONTACT_API_KEY set |
| People Data Labs (email → Instagram) | <1% | $0.20+/call | ❌ Negligible Instagram coverage |
| Apify name+city search (e.g. "Sarah Portland") | 20-30% but false positives | ~$0.02/run | ⚠️ Risk of wrong profile — needs confirmation step |
| "Forgot password" scrape (phone/email → masked username) | 0% in reverse direction | — | ❌ One-way only: username → masked email |
| Ask user directly at onboarding | 30-50% opt-in | Free | ✅ Fallback if FullContact misses — optional, well-framed |
Current implementation: FullContact lookup runs silently at deep inference time. If FULLCONTACT_API_KEY is configured, it tries email → Instagram. If found, Apify scrapes the profile. If not found, enrichment proceeds without Instagram data. Apify actor shu8hvrXbJbY3Eb9W is wired and ready.
| Model | When called | Latency | Prompt author |
|---|---|---|---|
openai/gpt-5.4-mini | Intent triage (before Hermes) + param extraction + entity extraction | ~700ms | 17KB hand-crafted router prompt |
deepseek/deepseek-v4-flash | Light conversation (before Hermes) · ~25% of messages | 1-2s | Opus 4.8 warmth prompt (see above) |
moonshotai/kimi-k2.6 | Hermes gateway + CoachArchetype + ExpertArchetype + PlannerArchetype · ~60% of messages | 15-30s | Opus 4.8 SOUL.md + Sonnet 4.6 archetype prompts |
anthropic/claude-opus-4-8 | Deep profile inference (once/user, async) + prompt engineering | 30-60s async | — |
text-embedding-3-small | Vector memory embeddings (background) | ~200ms | — |
gpt-5.5 | QA evaluation in test harness only | — | — |
x-ai/grok-4.3 | Simulated users in test harness only | — | — |
| Feature | Status | Notes |
|---|---|---|
| GPT-5.4 Mini triage (before Hermes) | ✅ Live | 83 skills, 17KB cached, scripted+light+deep routing |
| DeepSeek V4 Flash (before Hermes) | ✅ Live | Opus 4.8 warmth prompt, 10 BAD/GOOD examples, configurable LIGHT_CONV_MODEL |
| Hermes on Kimi K2.6 + SOUL.md v2 | ✅ Live | Oi backstory, 8 anti-sycophancy rules, 7 warmth calibration rules, 4 relationship modes |
| deep-inference-v6.txt (Opus 4.8) | ✅ Live | 467 lines, 11 layers, 9 frameworks, 30-50 inferences |
| 3-Tier Profile Injection | ✅ Live | T1 entity facts · T2 psych · T3 Opus inferences (skill-filtered) |
| EntityExtractor (GPT-5.4 Mini) | ✅ Live | Session-end batch: children/pets/health/barriers |
| Vector memory (text-embedding-3-small) | ✅ Live | 1536-dim, OpenAI direct |
| Rhythm Engine cron | ✅ Live | 8am + 8pm, Hetzner crontab |
| Instagram enrichment (FullContact + Apify) | ⚠️ Needs key | FullContact key → silent email lookup → Apify scrape. 15-25% hit rate. |
| Honcho memory | ⚠️ Key set | Workspace creation needed at app.honcho.dev |
| NPS 7-8 consistently | ⚠️ In progress | Peak 7 achieved. XML hard_rules in Kimi prompts = next unlock. |
| XML <hard_rules> in Kimi K2.6 | 🔵 Next | Replace [REMINDER] inline guards. Kimi's reasoning respects XML sections. |
| DeepSeek within Hermes (Option B) | 🔵 Consider | Only worth it if Hermes dispatch uses GPT-5.4 Mini, not Kimi, for light detection. |
| Expert RAG knowledge bases | 🔵 Next | OT · symptom · speech activities vector KB |