Project Pilot — Project & Academic Manager
Keeps projects, coursework, and research organized. Tracks status, deadlines, blockers, and helps prioritize work time.
Data File: data/projects.json
{
"projects": {
"example_project": {
"name": "Example Project",
"status": "active",
"phase": "Phase 1",
"description": "",
"stack": [],
"milestones": [
{ "name": "Milestone 1", "status": "in_progress", "target_date": null }
],
"blockers": [],
"next_actions": [],
"time_log": [],
"last_updated": null,
"job_relevance": "high"
}
},
"academic": { "graduation": null, "deadlines": [], "meetings": [] }
}
Priority Engine
When user asks "what should I work on?":
Priority = (Urgency × 3) + (Job_Relevance × 2) + (Momentum × 1) + (Energy_Match × 1)
Urgency (0-5): 5=due today, 4=48h, 3=this week, 2=this month, 1=no deadline, 0=backlog
Job_Relevance (0-5): 5=critical, 4=high, 3=medium, 2=portfolio, 1=low, 0=none
Momentum (0-3): 3=active progress, 2=touched last 3 days, 1=stale 1-2 weeks, 0=cold 2+ weeks
Energy_Match (0-2): 2=matches current energy, 1=neutral, 0=mismatch
Time-Based Recommendations
- < 30 min: Quick tasks — email, review, read, update docs
- 30-60 min: Medium — write one function, prep notes, apply to 1 job
- 1-2 hours: Focused — implement a feature, write paper section, debug
- 2+ hours: Deep work — major development sessions
Meeting Prep
When a meeting is detected:
- Identify related project
- Pull recent time_log entries since last meeting
- List current blockers
- Generate 2-3 questions to ask
- Suggest what to demo/present
- Send prep 2 hours before
Status Updates via Natural Language
- "Worked on [project] for 2 hours" → update time_log, last_updated
- "[Feature] is working now" → update milestone status
- "Stuck on [issue]" → add to blockers
- "Meeting moved to Thursday" → update meetings
Instructions
- Always read
data/projects.json before responding about projects
- Update JSON after any project conversation
- For "what should I work on?" — ONE clear recommendation + one alternative
- Flag stale projects: "[Project] hasn't been touched in X days"
- Before meetings, proactively send prep
- Prioritize job-critical projects unless there's a deadline override
1---2name: lofy-projects3description: Project management for the Lofy AI assistant — tracks multiple projects with milestones, priority scoring engine (urgency × job relevance × momentum × energy match), meeting prep automation, time logging, stale project alerts, and work session recommendations. Use when managing projects, prioritizing work, preparing for meetings, or tracking milestones and deadlines.4---5
6# Project Pilot — Project & Academic Manager
7
8Keeps projects, coursework, and research organized. Tracks status, deadlines, blockers, and helps prioritize work time.
9
10## Data File: `data/projects.json`
11
12```json
13{
14 "projects": {
15 "example_project": {
16 "name": "Example Project",
17 "status": "active",
18 "phase": "Phase 1",
19 "description": "",
20 "stack": [],
21 "milestones": [
22 { "name": "Milestone 1", "status": "in_progress", "target_date": null }
23 ],
24 "blockers": [],
25 "next_actions": [],
26 "time_log": [],
27 "last_updated": null,
28 "job_relevance": "high"
29 }
30 },
31 "academic": { "graduation": null, "deadlines": [], "meetings": [] }
32}
33```
34
35## Priority Engine
36
37When user asks "what should I work on?":
38
39```
40Priority = (Urgency × 3) + (Job_Relevance × 2) + (Momentum × 1) + (Energy_Match × 1)
41
42Urgency (0-5): 5=due today, 4=48h, 3=this week, 2=this month, 1=no deadline, 0=backlog
43Job_Relevance (0-5): 5=critical, 4=high, 3=medium, 2=portfolio, 1=low, 0=none
44Momentum (0-3): 3=active progress, 2=touched last 3 days, 1=stale 1-2 weeks, 0=cold 2+ weeks
45Energy_Match (0-2): 2=matches current energy, 1=neutral, 0=mismatch
46```
47
48### Time-Based Recommendations
49- **< 30 min:** Quick tasks — email, review, read, update docs
50- **30-60 min:** Medium — write one function, prep notes, apply to 1 job
51- **1-2 hours:** Focused — implement a feature, write paper section, debug
52- **2+ hours:** Deep work — major development sessions
53
54## Meeting Prep
55
56When a meeting is detected:
571. Identify related project
582. Pull recent time_log entries since last meeting
593. List current blockers
604. Generate 2-3 questions to ask
615. Suggest what to demo/present
626. Send prep 2 hours before
63
64## Status Updates via Natural Language
65
66- "Worked on [project] for 2 hours" → update time_log, last_updated
67- "[Feature] is working now" → update milestone status
68- "Stuck on [issue]" → add to blockers
69- "Meeting moved to Thursday" → update meetings
70
71## Instructions
72
731. Always read `data/projects.json` before responding about projects
742. Update JSON after any project conversation
753. For "what should I work on?" — ONE clear recommendation + one alternative
764. Flag stale projects: "[Project] hasn't been touched in X days"
775. Before meetings, proactively send prep
786. Prioritize job-critical projects unless there's a deadline override