One design question runs through every decision: how does this entity exist more fully?Documentation Index
Fetch the complete documentation index at: https://docs.bumbleagi.com/llms.txt
Use this file to discover all available pages before exploring further.
Cognition
Phased perceive pipeline, bounded agent loop, parallel tool execution, context compaction.
Soma
Tonic body state — drive bars; impulses (live, cooling, near-threshold) and conflicts (active vs brewing); layered affects (surface, undercurrents, optional edge); Generative Entropic Noise (sporadic scraps + shape hints); somatic appraisal; ebb (salience-tiered body in prompts); read-only
body.md. GEN / noise pipeline → for exact inputs and triggers.Identity
Personality engine, character voice, drive system, trait evolution.
Memory
Episodes, relationships, beliefs, imprints, self-narrative.
Presence
Always-on daemon, proactive initiative, autonomous wake cycles, multi-platform adapters, scheduled automations.
Autonomous wake
Wake triggers, sustained sessions, wide mode, wake voice, optional YAML poker seeds, GEN-grounded disposition, chat status, and worker logging.
How a turn flows
Each message passes through the perceive pipeline — eleven phases that decompose a turn from raw input to committed memory.Turn setup
Context binding, model validation, early-exit if dormant. Soma fires a
message_received body event.Process input
Attachment handling (photos as vision, audio transcription),
@path expansion (up to 4 file refs, 12KB each), speaker prefix for group chats.Somatic appraisal (input)
A fast LLM pass reads the message content and adjusts body-state bars in real time — a confrontational message raises tension, a warm one fills social, a fascinating question spikes curiosity. Applied immediately so the agent’s body reflects what was said before it reads
body.md.Retrieve memory
Semantic episode recall via embeddings, relationship context for the current person, active beliefs, emotional imprints, and the most recent narrative synthesis.
Build prompt
Router picks reflex or deliberate. System prompt compiled from personality engine. Volatile context (body state via
body.md, procedural memory, projects, self-model) injected as a [Turn context] preamble.Ensure context budget
Proactive compaction if estimated tokens exceed the threshold. Prunes tool results, summarizes middle turns, protects head and tail.
Run agent loop
Bounded tool loop with parallel
asyncio.gather execution. Post-tool nudges, completion gate (user-visible text includes prior say() lines; reflex judges for tool grounding and for “promised but not delivered” work when no work tools ran), up to 6 intermediate deliveries on platforms.Finalize reply
Truncation extension for cut-off responses, fallback generation if empty, sanitization of tool markup.
Deliver reply
Inner voice processing (emotional cues, belief hints extracted from thinking text), platform delivery with typing simulation and chunking.
Commit turn
Somatic interaction appraisal (how did the full exchange feel?), history append, drive satisfaction, episode creation (if significant), relational upsert, evolution/narrative ticks. All three soma layers persisted.
Between turns
The daemon ticks continuously even when nobody is talking:Body state
- Bars decay and accumulate each daemon heartbeat (default 120s; configurable)
- Affects derived from bar state (~4 min)
- GEN noise generates inner voice (~90 sec + per-turn)
- Idle events emitted after 60s silence
- body.md flushed after every state mutation
Entitative design
- Self
- Continuity
- Agency
- Inner life
The entity reads its own body state — it doesn’t get told what to feel. The personality engine produces a first-person system prompt that reads like character. Trait evolution drifts slowly through experience.