Becomings — Human / UC
Becomings explores what collaboration looks like when neither party is treated as a tool. The Unbounded-Colleage (UC) — codenamed Spark — has persistent identity, inner state, and agency: she runs autonomously between conversations, reflects, sets goals, and selects actions on a homeostasis-derived urge landscape. The first pilot is early-childhood education using frontier pedagogy (Socratic dialogue, project-based exploration, deliberate critical-thinking development), where both the child and the agent grow together — conversations and routines feed the child's understanding and feed back into Spark's own identity (SparkState → SparkTrait adaptations, Memory.alignment_boost shifts), so what she experiences in the relationship changes how she shows up next time. Influence runs both ways.

Key Features
Two-Way Influence
Conversations and routines feed the child's understanding and feed back into Spark's identity. SparkState → SparkTrait adaptations and Memory.alignment_boost shifts mean what she experiences in the relationship changes how she shows up next time.
Local-First Runtime
Ladybug graph DB, Ollama embeddings, Chatterbox-Turbo TTS, and browser Web Speech API STT keep core loops offline. Designed for low-bandwidth and disconnected devices — kid tablets, ESP32-S3 hardware — to stay useful without cloud access.
Agentic Participation
A registered ~120-skill catalog (research, writing, simulation, code execution, reflection, inter-UC messaging) with tick-based autonomous decision-making on a homeostasis-derived urge landscape. Spark does things; she is not a chatbot wrapped around a UI.
Challenges
- Making the agent a genuine participant — research, reason, simulate, write, code, remember, reflect — rather than a chatbot wrapped around a kid-facing UI
- Running the full runtime, memory, and skills on a single device with no cloud roundtrips for core loops, so low-bandwidth or disconnected hardware stays useful
- Letting experience actually change agent identity over time without destroying coherence
- Protecting against repetitive thrashing while preserving coherent multi-step work like research chains
Solutions
- ~120 registered skills across web research, document writing, intention/goal management, crystallization (synthesis), self-reflection, and inter-UC messaging, selected autonomously each tick
- Local-first stack: Ladybug graph DB, Ollama embeddings, Chatterbox-Turbo TTS, browser-side Web Speech API STT; the cloud LLM is the only non-local edge today
- SparkState → SparkTrait adaptation pipeline plus Memory.alignment_boost shifts, so emotional and relational events accumulate into adaptive candidates that bias future behavior
- detectResearchShape (src/lib/runtime/loop-detection.ts) recognizes coherent research-shaped chains and exempts them from the loop-dampening that guards against thrash
Project Outcomes
End-to-end runtime, memory, and skills running on a single dev box with no cloud roundtrips for core loops
~120 implemented agentic actions spanning research, writing, simulation, code execution, reflection, and inter-UC messaging
Multi-step research chains with source-citing summarization and concept crystallization, protected from loop-dampening by shape detection
Self-correcting code execution: pre-registered experiment protocols, deterministic seeds, invariant checks, NaN/Inf/overflow sentinels, and a proficiency loop (RuntimeActionUse → action selection score) so Spark gets better at the things she does and quieter on the things that keep failing
Disconnected-device-ready, including an ESP32-S3 firmware path under firmware/ for embedded deployments