Skip to main content
Glama
Kimberlying

ontime-workbench

by Kimberlying
README.md
# ๐ŸŽฏ OnTime (ๅฆ‚ๆœŸ) ยท Personal Workbench

<div align="center">

๐ŸŒ **Language**: **English** | [็ฎ€ไฝ“ไธญๆ–‡](README_zh.md)

[![Vue 3](https://img.shields.io/badge/Vue-3.5-42b883?style=flat-square&logo=vue.js)](https://vuejs.org/)
[![Vite](https://img.shields.io/badge/Vite-5.4-646cff?style=flat-square&logo=vite)](https://vitejs.dev/)
[![Tailwind CSS](https://img.shields.io/badge/TailwindCSS-3.4-38bdf8?style=flat-square&logo=tailwind-css)](https://tailwindcss.com/)
[![MCP Ready](https://img.shields.io/badge/MCP-Protocol_Ready-0d9488?style=flat-square)](https://modelcontextprotocol.io/)
[![License: Non-Commercial](https://img.shields.io/badge/License-Non--Commercial_Personal_Use-rose?style=flat-square)](LICENSE)
[![All Rights Reserved](https://img.shields.io/badge/Copyright-All_Rights_Reserved-slate?style=flat-square)](LICENSE)

**Set Your Deadline, Deliver Everything On Time ยท Intelligent Backward-Scheduling Personal Workbench**

*Overcome task anxiety, crush activation paralysis, and turn ambitious long-term goals into low-friction daily micro-actions.*

</div>

---

## ๐Ÿ“– Overview

**OnTime Personal Workbench (ๅฆ‚ๆœŸไธชไบบๅทฅไฝœๅฐ)** is a modern, cognitive-first personal productivity workbench built on the philosophy of **"Backward Scheduling" (ไปฅ็ปˆไธบๅง‹๏ผŒๅ€’ๆŽ’ๅทฅๆœŸ)**.

Traditional To-Do lists often cause paralysis and cognitive overload as unfinished tasks accumulate into a wall of guilt. OnTime shifts the paradigm:
1. **Start from the finish line**: You establish a target deadline, and the system intelligently schedules milestones backwards to the present.
2. **Dynamic Priority Push**: Instead of showing you 50 items at once, OnTime uses an urgency algorithm to surface the **single most critical task** right now, complete with its 5-minute starter action.
3. **Execution Timeline & Knowledge Retrospectives**: Every progress log is preserved on a chronological timeline, separating initial plans from post-execution insights.
4. **AI & MCP Connectivity**: Standard Model Context Protocol (MCP) server support allows Claude Desktop, Cursor, and autonomous agents to manage your workbench in real-time.

---

## ๐ŸŒŸ Core Features

### 1. โšก P0 Dynamic Push Bar (`PushBar.vue`)
- **Multi-Factor Decision Algorithm**: Dynamically calculates task priority using:
  $$\text{Urgency Rank}: \text{Overdue (0)} > \text{Due Today (1)} > \text{Due in 3 Days (2)} > \text{High Priority (3)} > \text{Oldest Touched}$$
- **Next Action Extraction**: Automatically extracts the task's "5-minute micro starter" or the first pending action step.
- **One-Click Action Loop**:
  - ใ€โšก 5-Min Sprintใ€‘Jump straight into an ADHD-friendly micro focus timer;
  - ใ€โœŽ Quick Logใ€‘Record progress instantly without opening heavy forms;
  - ใ€Cycle Nextใ€‘Switch between top candidate tasks to eliminate decision fatigue.

### 2. ๐ŸŽฏ SMART BACKWARD Goal Quotas (`GoalSection.vue`)
- **Daily Quota Formula**: Automatically calculates how many milestone nodes you need to complete each day:
  $$\text{Daily Quota} = \lceil \frac{\text{Remaining Nodes}}{\text{Remaining Days}} \rceil$$
- **Inline Checklist**: Directly check off milestone nodes on the goal card to advance progress.
- **Node Management Modal**: Full modal for adding, reordering, and maintaining milestone trees.

### 3. ๐Ÿ“š Knowledge Base & Retrospectives (`KnowledgeBaseView.vue`)
- **Dual-View Architecture**: Seamlessly switch between the execution dashboard (`Today`) and the knowledge repository (`Knowledge Base`).
- **Execution Timeline**: Chronological pipeline of all completed steps and logs, tagged with exact timestamps, projects, and task contexts.
- **Artifact Repository**:
  - **Plan Documents**: Record *"What you originally intended to build"*;
  - **Retrospective Notes**: Record *"What you discovered and refined in hindsight"*;
- **Universal Search**: Real-time filtering across tasks, goals, plans, notes, and timeline logs.
- **One-Click Markdown Export**: Generates a clean, structured offline `.md` file containing summary statistics, plans, timelines, and goal status.

### 4. ๐Ÿ“ฆ Unified Data Hub & MCP Integration (`SmartImportModal.vue`)
- **๐Ÿ“ฅ Smart Markdown Import**:
  - Paste Markdown outlines generated by ChatGPT, Claude, or Gemini;
  - Automatically parses projects, categories (short-term, long-term, daily habits), tasks, priorities, relative dates, and 5-minute starters;
  - Automatically archives the raw outline text as a permanent "Plan Document" in the Knowledge Base for future retrospective review;
  - Global drag-and-drop file upload for `.md`, `.txt`, and `.json`.
- **๐Ÿ“ค Comprehensive Multi-Format Export**:
  - **Structured Markdown**: Filter by all or specific projects, include/exclude completed tasks, goals, or notes. Live text preview with one-click copy and `.md` file download.
  - **Full JSON Backup**: Offline disaster recovery with real-time LocalStorage meter (`XX KB / ~5 MB`).
  - **UTF-8 BOM CSV**: Pre-formatted CSV with UTF-8 Byte Order Mark for clean import into Microsoft Excel and Apple Numbers.
- **๐Ÿ”Œ MCP (Model Context Protocol) Integration**:
  - Standard MCP endpoint: `http://localhost:8644/mcp`;
  - Built-in configuration snippets for **Claude Desktop** and **Cursor**;
  - Interactive Command Test Console: Send natural language commands (e.g. *"Create a sprint project due on Sep 20"*) to simulate external agent actions and watch the workbench update in real-time.
- **๐Ÿค– Programmatic Web API (`window.Workbench`)**: Full console API for headless browser scripts and extensions:
  ```javascript
  window.Workbench.getState();
  window.Workbench.getTasks();
  window.Workbench.log(taskId, "Finished core architectural validation");
  window.Workbench.exportMarkdown();
  ```

### 5. ๐Ÿงฉ ADHD-Friendly 5-Minute Activation Starter
- **The 5-Minute Commitment Rule**: *"I will only do this for 5 minutes. If I want to stop when the timer rings, I can freely walk away without guilt."*
- **Three Low-Friction Steps**:
  1. *Physical Setup* (30s) โ€” Put on headphones, open the software/document;
  2. *Micro Entry* (2m) โ€” Glanc at the title or top 3 lines without pressure to write;
  3. *Small-Range Focus* (2.5m) โ€” Draft 3 rough bullet points or place one initial block.
- Built-in zero-pressure countdown timer.

### 6. ๐Ÿ† Gamification & Daily Reset
- Positive milestone badge wall celebrating consistency and sprint finishes.
- **Midnight 00:00 Auto-Reset**: Daily recurring habit tasks automatically reset to pending at midnight, ensuring an uncluttered start each morning.

---

## ๐Ÿ› ๏ธ Architecture & Tech Stack

```
ontime-personal-workbench/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ components/         # UI Components (PushBar, GoalSection, DataHub, etc.)
โ”‚   โ”œโ”€โ”€ views/              # Views (WorkbenchApp, KnowledgeBaseView, LoginPage)
โ”‚   โ”œโ”€โ”€ stores/             # Pinia Stores (taskStore, projectStore, milestoneStore)
โ”‚   โ”œโ”€โ”€ utils/              # Parsers, Schedulers, Export Utilities & MCP Bridge
โ”‚   โ”œโ”€โ”€ locales/            # Full bilingual i18n dictionaries (zh.json, en.json)
โ”‚   โ””โ”€โ”€ styles/             # Tactile Neobrutalism CSS & Tailwind tokens
โ”œโ”€โ”€ scripts/
โ”‚   โ””โ”€โ”€ test-suite.mjs      # Automated unit test suite
โ”œโ”€โ”€ supabase/               # Backend database migrations & schemas
โ””โ”€โ”€ dist/                   # Production build output
```

| Layer | Technology | Description |
| :--- | :--- | :--- |
| **Core Framework** | Vue 3.5 (Composition API, `<script setup>`) | Reactive, component-driven UI |
| **Build Tooling** | Vite 5.4 | Sub-second HMR & Rollup production packaging |
| **State Management** | Pinia 2.2 | Modular, decoupled state stores |
| **Styling** | Tailwind CSS 3.4 | Tactile Neobrutalism high-contrast design system |
| **Internationalization** | Vue I18n 9.14 | Seamless real-time English & Chinese bilingual toggling |
| **Date Engine** | Day.js 1.11 | Lightweight backward date scheduling |
| **Storage & Sync** | Supabase + LocalStorage fallback | Offline-first smooth persistence |
| **Agent Gateway** | Model Context Protocol (MCP) | Industry standard protocol for AI tool-use |

---

## ๐Ÿš€ Getting Started

### Prerequisites
- Node.js 18.0 or higher
- npm 9.0 or higher

### 1. Clone the Repository
```bash
git clone https://github.com/Kimberlying/ontime-personal-workbench.git
cd ontime-personal-workbench
```

### 2. Install Dependencies
```bash
npm install
```

### 3. Start Local Development Server
```bash
npm run dev
```
Open your browser and navigate to: **`http://localhost:5189`**

### 4. Run Automated Test Suite
```bash
npm test
```
Executes comprehensive tests across the Markdown parser, export engine, push algorithm, and goal quota formula.

### 5. Build for Production
```bash
npm run build
```
Generates optimized static assets in the `dist/` folder ready for deployment on Vercel, Netlify, or Cloudflare Pages.

---

## ๐Ÿ”Œ MCP Client Configuration

Connect your favorite AI agent tools directly to OnTime:

### Claude Desktop (`claude_desktop_config.json`)
```json
{
  "mcpServers": {
    "ontime-workbench": {
      "url": "http://localhost:8644/mcp",
      "headers": {
        "Authorization": "Bearer ontime_live_sk_mcp_8888"
      }
    }
  }
}
```

### Cursor IDE (`.cursor/mcp.json`)
```json
{
  "mcpServers": {
    "ontime-workbench": {
      "url": "http://localhost:8644/mcp"
    }
  }
}
```

---

## ๐Ÿ“„ License & Terms of Use

Copyright (c) 2026 Kimberly Qian (Kimberlying). All Rights Reserved.

This project is licensed under a **Strict Non-Commercial Personal-Use License** ([LICENSE](LICENSE)):

- ๐ŸŸข **Permitted**: You are welcome to clone, inspect, and run this application strictly for your own personal, non-commercial daily productivity and learning.
- ๐Ÿ”ด **Commercial Use Prohibited**: Commercial use, resale, repackaging, SaaS hosting, or monetizing any portion of this codebase or its derived algorithms is **strictly prohibited**.
- ๐Ÿ”ด **No Derivative Redistribution**: You may not redistribute, relicense, or publish modified versions of this software under another brand without explicit prior written consent from the author.