Athenaeum

Personal Command Center — a closed-loop personal OS for capture, forecasting, structuring, and execution. Second app in Phase 2 Wave A. Validates Organize flow and Aura’s Monte Carlo forecasting system under real-world personal management load.

Zone: staging/ (evaluation) Port: 3130 Version: v0.2


Overview

Athenaeum is a unified personal productivity system built around four core modules:

  • InboxManager — Captures and triages items into 5 GTD buckets: Tasks, Projects, Reference, Ideas, Someday. Implemented as pure functions for immutability and composability.
  • ProjectManager — Project CRUD with tasks, priority levels, and status tracking. Toggle-based completion.
  • Forecaster — Monte Carlo simulation adapted from Aura’s financial forecasting engine, repurposed for personal goal tracking with 4 noise profiles and black swan events. See Monte Carlo Goal Forecasting.
  • CommandAssistant — Eliza-powered productivity persona for task guidance and natural language interface to inbox/projects, without cloud AI dependencies.

The differentiating value is the unified capture-forecast-structure-execute loop — a single surface connecting all four concerns. This makes Athenaeum a distinct product from GTD, which continues separately in apps/.

Source lineage: extracted from GTD (React+iOS, 140 tests, 7 integrations) and Aura (React, Monte Carlo forecasting, 48 tests).


Architecture

src/
├── components/       UI Components (Inbox, Projects, Forecast, Assistant)
├── lib/              Shared logic
│   ├── hooks/        Custom hooks (useDataSync)
│   ├── state/        Reducer and Action definitions
│   ├── AppContext.tsx Global state provider
│   └── db.ts         Dexie persistence layer
├── modules/
│   ├── assistant/    CommandAssistant — Eliza productivity persona
│   ├── capture/      InboxManager — GTD inbox processing
│   ├── forecast/     Forecaster — Monte Carlo predictions
│   └── projects/     ProjectManager — project + task CRUD
├── types/            Shared type definitions
└── index.ts          Barrel exports

Tech Stack

TechnologyVersionPurpose
React19UI framework
TypeScript5.6+Type safety (strict mode, no any)
Vite7.3+Build tool / dev server
Vitest4.0+Test runner (Happy-DOM)
Dexie.js—IndexedDB persistence layer
ESLint^9.39.2Linting (pinned — do not upgrade to v10)
@ap/eliza-engineworkspace:*Command assistant conversational AI
@ap/pipelineworkspace:*Monte Carlo forecasting orchestration

Workspace Setup

Requires sibling repositories resolved via Vite path aliases:

# From parent directory (ap/staging/)
git clone <eliza-engine-repo-url> eliza-engine
git clone <pipeline-repo-url> pipeline
cd athenaeum && npm install

Integration Points

SystemStatusNotes
@ap/eliza-engineActiveShared library — local natural language parsing
@ap/pipelineActiveShared library — Monte Carlo simulation (pipeline)
LinearPlannedGovernance visibility only (ADR-002)
PlanePlannedSolopreneur task management — blocked by hardware
FireflyIIIPlannedBlocked by infrastructure deployment
EspoCRMPlannedBlocked by infrastructure deployment

Current Status

Phase: v0.2 — UI & Persistence complete Last Updated: 2026-02-15

React UI complete with 4 views (Inbox, Projects, Forecast, Assistant). Context-based state management implemented via React Context + useReducer. Dexie.js persistence layer added. 84 tests passing, standardized on Happy-DOM. Full ops-core compliance.

Strategic Blockers

  • External integrations (Linear, Plane, FireflyIII, EspoCRM) blocked by hardware acquisition for Oracle Free Tier + TrueNAS deployment
  • Integration target reframing per ADR-002: Linear=governance visibility, Plane=solopreneur task management

Next Priorities

  1. Research project ecosystem and create roadmap (/gas:research-project → /gas:create-roadmap)
  2. Enable cross-view data flow: inbox → projects → forecast → assistant (core value proposition)
  3. Wire planned integrations once infrastructure is available

Key Decisions

DecisionRationale
React 19 + TypeScript + ViteMatches source apps (GTD, Aura, gw) for pattern consistency
@ap/pipeline for forecastingAura’s Monte Carlo system generalized for goal/task forecasting
@ap/eliza-engine for assistantNatural language interface without cloud AI dependencies
Pure functions for InboxManagerImmutable transforms — simple, testable, composable with any state layer
5-bucket inbox categoriesTasks, Projects, Reference, Ideas, Someday — standard GTD workflow
Dexie.js for persistencelocalStorage hits 5MB limit at GTD scale; Dexie scales better for multi-module data
React Context + useReducerShared state architecture — views were isolated in v0.1
GTD Integration protocolPolymorphic plugin system for external services — proven pattern
Athenaeum as distinct productGTD continues separately; differentiator is unified capture-forecast-structure-execute loop
Integration targets reframed (ADR-002)Linear=governance (TeachersPet, circuit breakers). Plane=solopreneur task management. Neither deprecated, both bounded.

Lessons Learned

  • Dexie over localStorage: GTD hit the 5MB localStorage limit; Dexie scales better for multi-module data. Use Dexie for persistence from day one.
  • Result types for external API calls: GTD’s Integration interface required CreateTaskResult (not void) to prevent silent failures on task creation.
  • Box-Muller epsilon guard: The transform needs u1 clamped to minimum 0.0001 to prevent log(0) producing NaN in Monte Carlo simulations.
  • GAS adoption for structure: Ad-hoc development unsustainable once logic + UI complete with tech debt. Use GAS planning artifacts from day one.

Established Patterns

PatternReusableNotes
Capture/Process/Organize flowYesAny inbox/triage system
Monte Carlo goal forecastingYesNoise profile presets + Box-Muller gaussian; financial, project, personal goals
Project with embedded tasksYesFlat task list within project, toggle completion