constellationmap

a personal operating system

How I built a personal OS that runs my life across 10 pillars.

A live, public-readable system. Designed by hand, maintained daily, evolving in commits. This is the public surface of a private dashboard I run every day to track learning, adventures, relationships, health, building, and the rest of what makes a year.

 

The Problem

Twenty-three productivity apps and none of them held the whole picture.

Every tool I tried fragmented the thing it was supposed to organize. Tasks lived in one app, notes in another, goals in a third, relationships in a CRM, learning in a reading list, fitness in a wearable, finances in a spreadsheet. The seams between tools were where context died.

I wanted one place where the work I was doing on a given Tuesday connected to the goal it served, the season it lived in, the people it touched, and the tradeoffs it implied. None of the prebuilt tools modeled it that way, because every tool was trying to sell features, not coherence.

The Approach

One source of truth, file-first, hand-shaped.

Everything lives in a single JSON file. Pillars define the shape of my life (10 of them, fixed). Items live inside pillars. Roadmap items connect to initiatives. Visibility flags decide what is shared, what stays private. The dashboard reads the file. Every change is a commit.

The system is opinionated where opinions matter (taxonomy, status discipline, what gets surfaced when) and flexible where they do not (free-text fields, kitchen-voice descriptions, notes wherever they fit). The design rule throughout: every recommendation must trace back to something visible in the dashboard. No invisible work.

Architecture
Local-first JSON, Cloudflare KV mirror, plugin-based dash served from ~/.claude/plugins/dash
Discipline
Foundation Discipline Infrastructure (FDI): hooks block band-aid patterns at write time, rules versioned in code
Versioning
Every save snapshots to disk, hourly rollups for 7 days, full history in git
AI partner
Claude Code as long-running collaborator; skills + memory persist across sessions; cron-driven self-audits

Live Look

Ten pillars. One file. Updated today.

The pillars are not categories I imposed; they are the shape that emerged when I tried to draw the actual surface area of my life. Each pillar has its own items, rhythm, and relationship to the others.

๐ŸŒฑgrowth
๐Ÿงญadventurer
๐Ÿ’ชhealth
๐Ÿค“nerd
๐Ÿ toulouse
๐Ÿ‘ฅsocial
๐Ÿ€sports
๐Ÿณcooking
๐ŸŽตmusic
๐Ÿฆprivate

Tools

Single-purpose satellites that orbit the dash.

Rather than one mega-app, the system breaks into focused tools that each do one thing well. They share the data file but live as separate HTML pages, linked from the dash. Below is a curated subset.

claude-toolkitReference for getting the most out of Claude Code as a long-running creative partner.view
claude-referenceWorking notes, hooks, skills, and conventions for the AI collaboration layer.view
networkRelationship CRM with love-tier framing, connection types, and birthday calendar.view
plannerPrint-ready monthly planner spreads generated from the dashboard data.view
pnw road trip 2026Trip planner for a Pacific Northwest run; dates, venues, packing, route.view
forage statusWellness-weekend planning board with checklists and snapshots.view

Building in Public

Recent ships, latest first.

The system evolves in commits. Below is a hand-curated subset of recent ships from the discipline log. Full history lives in git, linked from inside the dash.

2026-04-28FDI v1.5.0 activation: 14 action validators live, 31 of 31 smoke pass.
2026-04-28Cloud KV sync 2-phase fix shipped. Auto-mirror to Cloudflare KV on every save.
2026-04-283-tier public surface scrubber: public, friend, employer view modes.
2026-04-28Layer 8 kanban claude-only validator: in-progress column locked to autonomous-Claude execution.
2026-04-27Roadmap taxonomy v4 locked: 5 domains, 21 initiatives, 200+ items in coherent tree.
2026-04-27Roadmap Studio canonical viz: 10-view SPA with hash-routed keyboard navigation.
2026-04-26Studio backup Phase 3 closed: 5 of 5 sentinels pass, 155 ms restore time.