Tactician
The hot-path agent inside every session. Picks the next question phase + concept based on what just happened — your last answer, your confidence, the time you took.
In
{ phase: 'WARMUP', lastConfidence: 3, msSinceStart: 12000 }Out
{ nextPhase: 'QUESTION', nextConceptId: 'recursion-base-case' }Wired: Phase 3
Strategist
Plans the week. Reads your mastery + the syllabus + nearby deadlines, then proposes a Mon→Sun schedule of concepts to cover. Refreshes every ~30 minutes or on demand.
In
{ courseId, currentWeek: 7, weakest: ['recursion'], examIn: 9 }Out
{ days: [ { date, concepts: [...] } ] }Wired: Phase 5
Diagnostician
Reads a wrong answer + your reasoning trace and names the misconception. Drives the in-session 'this is the gap' explanation and feeds the cohort intelligence layer.
In
{ questionId, answer: 'A', confidence: 4, transcript: '…' }Out
{ misconception: 'conflates iteration with recursion', evidence: [...] }Wired: Phase 2 / 13
Pedagogue
Composes the explanation you read. Picks examples grounded in your course materials and adapts the analogy to your learning style preference.
In
{ conceptId, learningStyle: 'visual', materialChunks: [...] }Out
{ markdown: '…', citations: [...] }Wired: Phase 2
Curator
Maintains your knowledge graph. Decides which course concepts roll up to which universal concepts and how strong each link is.
In
{ studentId, recentEvidence: [...] }Out
{ universalLinks: [{ universalId, courseConceptId, weight }] }Wired: Phase 5+
Coach
Writes the nudges that land in your inbox — review-due, deadline pressure, streak save, win celebration. Tunes density to your reaction history.
In
{ kind: 'FORGETTING_DUE', concepts: [...], lastActiveAt }Out
{ headline, body, urgency: 'MED' }Wired: Phase 6 / 35
Examiner
Generates new questions when the bank runs thin. Targets a specific misconception or BKT band and validates each candidate against the rubric before serving it.
In
{ conceptId, targetBKT: [0.55, 0.7], misconceptionId? }Out
{ question, options, correctIndex, rationale }Wired: Phase 7
Critic
Selective second-look agent. Reads upstream output (Examiner question, Pedagogue explanation) and either passes or flags with a one-sentence concern.
In
{ targetAgent: 'examiner', payload: { ... } }Out
{ verdict: 'PASS' | 'FLAG', concern? }Wired: Phase 26
Verifier
The shield. Re-checks high-stakes outputs — grades, credentials, mastery jumps — and refuses to forward anything it can't sign off on. You see the badge that proves it ran.
In
{ kind: 'CREDENTIAL', candidate: { ... }, evidence: [...] }Out
{ result: 'PASS', signature: '0x…', merkleRoot: '0x…' }Wired: Phase 26
Meta-Prompter
Nightly optimizer. Looks at agents whose evals dipped and proposes candidate replacement system prompts. The eval harness then A/B tests promotions.
In
{ targetAgent: 'pedagogue', recentScores: [0.71, 0.68] }Out
{ candidatePrompts: ['…', '…'] }Wired: Phase 12
Open-Response Grader
Grades free-text + code + math derivations against per-criterion rubrics. Each rubric line returns a score + a one-sentence reason; the Verifier double-checks before posting.
In
{ rubric, response: '…' }Out
{ score: 0.82, perCriterion: [...] }Wired: Phase 18
Class Strategist
Cohort-level reasoning. Reads aggregate confidence + mastery + misconception clusters and suggests in-lecture interventions for the professor.
In
{ courseId, snapshot: { ... } }Out
{ interventions: [{ kind, concept, why }] }Wired: Phase 13
Lecture Copilot
Real-time whisper cards during a live lecture. Triggers on pulse drops, silence, concept drift, or engagement spikes — surfaces a one-sentence cue to the podium.
In
{ recentChunks: [...], avgConfidence: 2.9 }Out
{ trigger: 'pulse_drop', cue: '…' }Wired: Phase 14
Synthetic Peer
Plays a curious peer student. Never lectures, never gives answers — asks questions, agrees, disagrees, and prompts you to teach back. The mascot acts as its avatar.
In
{ topic, studentLevel: 'mid-week', tone: 'curious' }Out
{ peerMessage: 'Wait — does that base case ever get hit?' }Wired: Phase 19