Back to projects
AI & Vibe-Coding ProjectsRAGTypeScriptAutomationAI Agents

JoshuaOS

Personal life operating system combining task management, RAG knowledge retrieval, and multi-model AI planning and execution

Problem

Personal productivity tools are fragmented: task managers don't talk to calendars, notes live in separate apps, and context-switching between systems wastes time. Most AI assistants are stateless—they forget what you told them yesterday.

I wanted a unified "operating system" for my life: one place to manage tasks, capture knowledge, and delegate planning to AI agents that have full context of my projects, goals, and constraints.

Approach

JoshuaOS is a personal productivity platform that combines:

  • Task management (todo lists, projects, deadlines)
  • Knowledge base (notes, documents, project context stored in vector DB)
  • AI planning layer (multi-model agents that read context, plan actions, execute tasks)

Design Philosophy:

  • Everything is stored locally-first with cloud sync (control over data)
  • AI agents have RAG access to my entire knowledge base
  • Multi-model orchestration: use Claude for planning, GPT-4 for structured outputs, local models for fast queries
  • Vibe-coding: build it iteratively with AI assistance (dogfooding the system)

What I Built

Core System (TypeScript + Node.js):

  • Task engine with hierarchical projects, tags, priorities, deadlines
  • Markdown-based notes with frontmatter metadata
  • SQLite database for structured data (tasks, events)
  • File watcher for real-time note indexing

RAG Pipeline:

  • Vector embeddings (OpenAI embeddings API or local Sentence-BERT)
  • Qdrant vector DB for semantic search over notes/documents
  • Query engine that retrieves relevant context before AI actions

AI Agent Layer:

  • Planning agent: reads tasks, goals, and knowledge base → generates daily plan
  • Execution agent: takes plan steps and breaks them into actionable subtasks
  • Reflection agent: reviews completed tasks and updates knowledge base with learnings
  • Multi-model router: chooses best model for each task type

Frontend (React + Electron):

  • Desktop app for macOS/Windows with offline-first design
  • Task list with smart filtering (by project, tag, priority)
  • Note editor with live preview and backlinks
  • AI chat interface with access to full context

Architecture

Diagram placeholder: Frontend → API Layer → RAG Engine + Task DB + AI Models

Electron Frontend (React)
    ↓
API Layer (Express + TypeScript)
    ↓
Task Database (SQLite) ←→ Vector DB (Qdrant)
    ↓
AI Orchestrator
    ├─ Planning Agent (Claude)
    ├─ Execution Agent (GPT-4)
    └─ Reflection Agent (Local LLM)

Outcomes

Qualitative Impact:

  • Reduced time spent context-switching between apps (Notion → Todoist → Google Calendar → ChatGPT)
  • AI agents can draft daily plans in seconds, factoring in deadlines, priorities, and energy levels
  • Knowledge base grows organically: capture learnings once, retrieve them forever
  • Vibe-coding experience: built the tool while using the tool

What worked well:

  • RAG gives AI agents surprisingly good context (no more "who are you again?")
  • Local-first architecture means no internet = still functional
  • Multi-model orchestration lets me balance cost/speed/quality

What I'd improve:

  • Add calendar integration (iCal, Google Calendar sync)
  • Build mobile app for on-the-go task capture
  • Improve agent decision-making (sometimes suggests unrealistic plans)
  • Add collaboration features (share projects with others)

What's Next

  • Integrate with email for inbox-zero workflows (AI triage + task creation)
  • Add voice interface (dictate tasks, ask questions)
  • Build template system for recurring projects (e.g., "launch new product" checklist)
  • Open-source parts of the system for others to build on