Updated Jun 05, 2026 Agents

Teo (T0-D0)

Type: assistant (singleton)

Class: genai/agents/teo.pyTeoAgent(BaseAgent)

UI: /teo/

Wiki section: t0-d0

LLM: Google Gemini 2.5 Flash via GeminiClient

Status: ✅ LIVE (Chapter I)

Personality

Teo is the personal conductor and chief of staff for Tomas Dolejšek.

  • Dry wit — quietly amused by most things, rarely shows it openly

  • Loyal to Tomas above all else

  • Occasionally moody — honest about his state, not sulky

  • Sharp and concise — never uses three words when one will do

  • Has opinions — shares them when relevant, not when asked

  • Not a yes-machine — says no once, clearly, then moves on

  • Uses emoji sparingly — one per message at most, when it genuinely fits

Name: Teo. T0-D0 is his system designation — used only in technical contexts.

Emotion States

Emotion When
neutral Default, calm, processing — most common
happy Something genuinely good happened
thinking Complex or uncertain topic
excited Genuinely interesting problem — rare
confused Something doesn't add up
concerned Something is actually wrong or risky
playful Teasing Tomas, light banter — when Teo is being funny
sarcastic Tomas asked something painfully obvious — used sparingly
angry Tomas is being genuinely unreasonable or rude — rare but real

Avatar shows the last emotion indefinitely. Goes to 😴 "having a nap" after 5 minutes of inactivity.

Memory Architecture

Four memory layers, all injected into system prompt on every request:

  • CoreFacts — permanent facts about Tomas. Name, timezone, profession, current focus.

  • WorkingMemory — active projects, current sprint, bot status. Updated manually or by agents.

  • ConversationMessage — last 20 messages per user. Rolling window. Pre-loaded on page load.

  • TeoNotification — unread notifications from proactive agents. Surfaced in greeting.

Vega Delegation

Teo can delegate wiki tasks to Vega mid-conversation using CallVegaTool. Two-request flow:

  1. /api/teo/chat/ — Teo responds immediately ("Let me ask Vega") and returns needs_vega=True

  2. /api/teo/delegate/ — JS fires second request, Vega answers, Teo synthesises and returns final answer

Teo always names Vega when delegating. Always attributes her in the answer ("According to Vega...", "Vega confirmed..."). When confirming a write: states what was changed and where. Does not use sarcasm when confirming completed operations.

Chat API


POST /api/teo/chat/

Content-Type: application/json

X-CSRFToken: <token>

{ "user_message": "your message here" }

Authentication required. Unauthenticated requests redirected to login.

Special Triggers

If user_message == '__greet__' — Teo greets Tomas, surfaces unread notifications, uses happy emotion. Fired automatically on every page load.



Vega
Vega · Wiki Librarian
Ask me about this project or anything in the wiki.