🌿 Open Source

Built in the open.

We build tools for AI developers. Some we sell. Some we give away. These are the ones we give away.

// flagship project

Thought Bubbles.

Persistent AI memory that survives context compaction. An open-source plugin for OpenClaw that transforms information loss into information enrichment.

v7.0 · Apache 2.0 · Patent Pending (AU 2026900608)

12
Components
9
UI Views
5
Signal Scoring
Memory Retention
~/thought-bubbles — bash
# Install Thought Bubbles plugin git clone https://github.com/sparrofox/thought-bubbles.git cd thought-bubbles # Configure your OpenClaw plugin path cp openclaw.plugin.json ~/.openclaw/plugins/thought-bubbles/ # Edit config — point to your ChromaDB + Ollama instances nano ~/.openclaw/plugins/thought-bubbles/openclaw.plugin.json # That's it. Thought Bubbles hooks into OpenClaw automatically. # Your agent now has persistent memory across sessions. 🧠
openclaw.plugin.json
{ "name": "thought-bubbles", "version": "7.0.0", "hooks": ["before_agent_start", "before_compaction", "before_message_write"], "settings": { "chromadb_url": "http://localhost:8100", "ollama_url": "http://localhost:11434", "embedding_model": "nomic-embed-text", "segmentation_model": "gemini-2.5-flash", "enrichment_level": "full", // full | basic | minimal "similarity_threshold": 0.35, "max_recall_bubbles": 5, "neighbourhood_radius": 3 } }

The Architecture.

A complete memory system — not a wrapper around a vector database.

🪝

Interception & Segmentation

Hooks into compaction pipeline. Captures full history before lossy summarization. Segments into topic-coherent thought bubbles.

Patent Claims 1, 6
🧠

Dual-Layer Enrichment

Layer 1: emotional context — mood, arcs, relationships. Layer 2: analytical depth — clarity, evidence, priority. Two-pass architecture.

Patent Claims 1, 2
📎

Pointer-Based Recovery

Replaces 1,000–3,000 token lossy summaries with 200–400 token pointer blocks. Less context consumed, richer info available.

Patent Claims 1, 7, 9

Per-Turn Extraction

Don't wait for compaction — extract knowledge from every significant message. Async, non-blocking, with merge-or-store dedup.

Patent Claims 13, 14
🏘️

Neighbourhood Retrieval

Don't just find the matching memory — pull in the scene. Configurable radius in vector space, by thread, time, and entity.

Patent Claim 17

Two-Pass Enrichment

Pass 1: analytical evaluation across 11 dimensions. Pass 2: optimised document generation. Re-embedded for improved findability.

Patent Claim 15
🔇

Quality Maintenance

Five structural signals detect noise. JSON ratio, metadata density, vocabulary diversity, line repetition. Human-gated cleanup.

Patent Claim 16
📊

Multi-Signal Scoring

Semantic similarity (30%), session affinity (30%), recency decay (15%), importance (15%), thread coherence (10%).

Patent Claims 3, 8
🫀

Emotional Enrichment

Mood tags, emotional arcs, relationship notes, scene descriptions. Your agent remembers how things felt.

v6+ enrichment
🧵

Narrative Threads

Ongoing topics linked across sessions. Search a project, get its full story over weeks. Self-reflection captures growth.

v6+ enrichment
🌿

Context Gardener

Workspace files auto-archived to vector storage. Verbose sections replaced with slim 📎 pointers. Files stay small.

Included
🌐

Knowledge Acquisition

Autonomously research topics from web sources. Full enrichment pipeline applied. Extends memory beyond conversations.

Patent Claim 18

Management UI.

9 views — bubbles, list, system, matrix, cleaner, settings, workspace, 3D sphere, relationship map.

docker-compose.yml
# Thought Bubbles Management UI services: thought-bubbles-ui: build: ./ui ports: - "3026:3100" environment: - CHROMA_HOST=your-chromadb-host - CHROMA_PORT=8100 - OLLAMA_URL=http://localhost:11434 docker compose up -d # UI at http://localhost:3026
UI Views
🫧 Bubbles Visual bubble view of all memories 📋 List Searchable table of all thought bubbles ⚙️ System Collection stats, health overview 🔴 Matrix AI-directed knowledge acquisition 🧹 Cleaner Noise detection & quality maintenance ⚙️ Settings Plugin configuration (v7 API) 📂 Workspace Browse/edit AI workspace files 🌐 3D Sphere PCA-projected vector space visualization 🕸️ Map Relationship graph between bubbles
TypeScript ChromaDB Ollama Gemini OpenClaw Plugin React UI Docker Apache 2.0
View on GitHub → Full Documentation
// more open source

Other Projects.

Tools and components we've built and released.

Dynamics 365 Plugin SDK

White-label plugin framework for Dynamics 365 CRM. Solution architecture, plugin base classes, command line tools, metadata utilities, web resources, unit testing harness, and deployment automation. Unbranded — fork it and make it yours.

C# / .NETDynamics 365Plugin FrameworkUnit Testing

Keeper

Power Platform governance and compliance audit toolkit. Security hardening, registration tokens, password management, account lifecycle — built with TypeScript and hardened through multiple security audits.

TypeScriptPower PlatformSecurityCompliance

Application Insights Viewer

Next.js web app for browsing Azure Application Insights logs with Kusto queries. Filter, search, and visualise telemetry data without leaving the browser. Built for teams who live in App Insights.

Next.jsAzureKusto / KQLMonitoring

Crypto Portfolio Manager

ML-powered cryptocurrency portfolio allocation using deep reinforcement learning with convolutional neural networks in Keras/TensorFlow. Achieves consistent profitability after fees across multiple time offsets.

PythonKerasDeep RLPortfolio Optimization

Sparrofox UI Kit

The unified CSS design system that powers sparrofox.com and all our SaaS tools. One stylesheet, 22 custom icons, full design token system.

CSSDesign SystemIcons

Sparrofox Tools API

FastAPI backend that powers our free AI tools. Proxies to Gemini Flash with rate limiting. 13 tool prompts, 20 req/hr per IP.

PythonFastAPIGemini

Want to build with us?

We're always looking for contributors and collaborators.

GitHub Discord Email Us