crixin voice · archetype

The kind of caller your AI actually is.

A deterministic classifier — no LLM, no telemetry — reads your local Twilio data + Deepgram transcripts and labels your AI's calling style. Eight archetypes. One label. The rationale always cites real numbers from your data, never vibes.

crixin voice archetype Install in 30 seconds See Voice Wrapped

The eight.

Each label is triggered by a specific signal in your call data. Tie-break order favors the most actionable label — if your AI both ducks AND closes hard, it gets Ducker because that's the one worth fixing.

Quick Pitcher
≥40% of calls under 30s · avg call < 60s

The pitch is short and the line clears fast. Great for transactional confirmation calls. Worth checking that you're not hanging up before the prospect can respond.

Patient Listener
≥30% of calls over 3 minutes

Your AI lets the prospect talk. Strongest archetype for discovery + relationship-building inbound flows. Inbound receptionists usually land here.

Ducker
≥15% of transcripts contain a dodge phrase

"Let me get back to you." "I'll have my team follow up." "I'm not authorized." Your AI deflects when pressed. Worth tightening the system prompt with explicit answers to your top FAQs.

Hard Closer
≥20% of transcripts contain a close-attempt phrase

"Would you like to book?" "What time works?" "Can I confirm?" Your AI is going for the booking on every call. High intent, sometimes too aggressive — TCPA-watch.

Discovery Caller
≥4 questions per call avg

Your AI runs discovery before pitching. Usually a good sign — leads feel heard. Make sure you're acting on what gets said, not just collecting it.

Voicemail Whisperer
≥50% of dials hit no-answer or busy

Most of your AI's work is leaving messages. Could mean stale list, wrong call windows, or a real lead-quality problem. Run crixin voice ducked to see whether the messages actually trigger callbacks.

Lead Burner
<40% completion rate, >5 calls

Most dials don't complete. Worth checking your list quality before scaling — burning a list across an AI agent is just as expensive as burning it across a human SDR.

Steady Operator
no extreme signals

Your AI just shows up and does the job. Nothing extreme — moderate call length, average completion, balanced ask/listen. The default fallback when no other archetype triggers.

What it looks like.

Three real-shape rationales from three different operators running crixin voice archetype on three different call corpora. Same algorithm, three completely different reads.

$ crixin voice archetype
Patient Listener

31.2% of your calls run past 3 minutes — your AI lets the prospect talk. Sage-ish caller behavior; if you wanted more closes, this is the dial to turn.

Top signals (corpus: 1,247 calls)
longCallRate0.312
questionRate5.4
completedRate0.78
Acme PLG · B2B SaaS activation calls
$ crixin voice archetype
Hard Closer

22.7% of transcripts contain a close-attempt phrase ("can I schedule", "shall we get you on the calendar"). Your AI is going for the booking on every call. High intent. TCPA-watch: are these all consented?

Top signals (corpus: 832 calls)
closeRate0.227
avgCallSeconds72
completedRate0.61
Apex Sales · outbound B2B discovery
$ crixin voice archetype
Ducker

18.4% of transcripts contain a dodge phrase ("let me get back to you", "I'll have my team follow up", "I'm not authorized"). Your AI deflects when pressed. Tighten the system prompt with explicit answers to your top FAQs.

Top signals (corpus: 442 calls)
dodgeRate0.184
avgCallSeconds58
closeRate0.041
Maria's Pizza · AI receptionist (needs more menu RAG)

Run it locally.

npm i -g crixin
crixin voice ingest                # pull recent Twilio calls + Deepgram transcripts
crixin voice archetype             # prints one of the above cards, computed from YOUR corpus

No LLM. No prompt fragility. Same input → same label, every time. The 9 signals (shortCallRate, longCallRate, dodgeRate, closeRate, noAnswerRate, questionRate, completedRate, etc.) are computed in SQL against your local DB. You can audit the math in src/voice/analyze.ts.