HabitualOS

An open-source agentic AI platform — built and used daily as a personal research environment and modular prototyping kit for shipping agentic apps fast.

What It Is

HabitualOS is an open-source agentic AI platform and the monorepo I build on. It functions as both a personal research environment — my own life as the test environment — and a modular prototyping kit for shipping agentic apps quickly. The shared infrastructure, auth patterns, and typed communication protocol mean each new app starts from a proven base rather than from scratch.

The core question driving it: how can AI agents handle operational work while preserving human judgment and agency? Not AI that does everything. Not AI as autocomplete. Specialized agents with constrained behavior, operating within defined contexts, handling the overhead that burns cognitive cycles so attention stays where it actually matters.

The finding so far: agents designed within narrow contexts are far more useful than ones that can do anything. Constraints aren't a limitation — they're what makes the behavior trustworthy enough to rely on.

Five apps test this across different dimensions of daily life — productivity, practice, relationship, professional networking, and semantic content infrastructure. Each was built rapidly on the same stack. Each has surfaced different design problems specific to its context. That variation is the research.

The Apps

Habitual

Habitual

Agentic daily productivity & executive function support

The orchestration layer. Specialized agents handle scheduling, task management, and daily check-ins, coordinating through a typed signal protocol. Conversational UX for creating and organizing work — no forms, no dashboards. Long-context memory means sessions pick up where the last one left off.

Built specifically for executive function support: the kind of operational overhead that burns cognitive cycles when done manually and can be reliably handled by a constrained AI agent.

Multi-agent orchestration Typed signal protocol Long-context memory Conversational UX
Daily Practice

Daily Practice

Habit & practice tracking with AI pattern insights

Built in a single day on New Year's Eve 2024. The simplest app in the suite — and the one I use most. Tracks daily practice streaks and generates AI-driven insights about patterns over time.

The insight that drove it: I'd been thinking about building a practice tracking layer for two years, always waiting until it was the "right time." Building it in one day with AI-assisted development was proof of concept for the whole HabitualOS approach. It's currently driving a 30-day consecutive daily practice streak.

Practice tracking AI pattern insights Claude API Firestore
Pidgerton

Pidgerton

Relationship support for two people

Built for my wife and me during the fog of new parenthood — low on sleep and curious whether AI could help two people who love each other actually hear each other better. A shared journal where we log moments through chat (good, bad, or hard) and get emotional support when we need it.

Over time, it finds patterns in what we share and helps us find our way back to each other. This is the highest-stakes AI context I work in — emotional, relational, real. It has taught me more about what "helpful AI" means in practice than anything else I've built.

High-stakes conversational AI in emotional context is a different discipline than productivity tooling. The failure modes are different. The trust bar is higher. The design constraints are harder.

Temporal pattern recognition Privacy-first User-partitioned data Emotional AI

The Stack

All five apps share the same infrastructure layer. The monorepo structure means shared utilities, shared auth patterns, and a common privacy model — every user's data lives in its own namespace. Building a new app means wiring up context and behavior, not rebuilding plumbing.

The typed signal protocol is the architectural decision I keep coming back to. Rather than letting agents produce and consume freeform text, inter-agent communication follows defined schemas. This makes agent behavior predictable enough to trust and debug — and it forces you to be explicit about what each agent is actually responsible for, which turns out to be most of the design work.

  • Claude API — tool use, structured outputs, streaming, prompt caching
  • Multi-agent orchestration — typed signal protocol, long-context memory
  • Google Firestore — user-partitioned, privacy-first data storage
  • Netlify Functions — serverless agent workflows and data pipelines
  • Node.js — orchestration and protocol implementation
  • 11ty + Markdown — semantic indexing and local-first content architecture