中文文档 | English
An AI-powered intelligent productivity assistant designed to boost workplace efficiency. With six core features - daily report management, intelligent weekly report generation, OKR goal planning, career asset accumulation, and skills radar analysis - it helps you say goodbye to tedious document organization and makes report writing and career development planning simple and efficient.
Core Value:
- 📝 Daily Management: Calendar-style daily report entry with holiday display, built-in TODO reminder panel
- 🤖 Smart Weekly Reports: One-click generation of standardized weekly reports from daily entries, auto-categorize, deduplicate, and extract risks
- 🎯 OKR Planning: Intelligently generate quarterly OKRs based on historical materials, with quantitative metrics and milestone nodes
- 💼 Career Assets: Auto-extract STAR-format work achievements, accumulate career assets
- 📊 Skills Radar: Track skill growth, AI-powered categorization, visualize capability distribution
- 📤 Multi-format Export: Support export to CSV, Markdown, TXT formats
- 💾 Local Storage: All data stored in local SQLite database, secure and reliable
- 🚀 One-Click Deployment: Support Docker or local deployment, Windows users can use batch scripts for one-click start
Calendar View + Holiday Display + TODO Tips Panel + Quick Template + Multi-format Export
Import from Daily Reports + Smart Categorization + Risk Analysis
History Query + Edit/Delete Functions + Multi-format Export
Smart Generation + Quantitative Metrics + Milestone Planning + Multi-format Export
STAR Format Extraction + Project Timeline + Career Asset Management
Skills Distribution Visualization + AI Categorization + Skill Details View
Support LLM DIY,support models switching, support custom models
- Calendar View: Large calendar interface, click on a date to directly enter daily report
- Holiday Display: Calendar shows Chinese traditional holidays and international holidays (Spring Festival, Mid-Autumn, National Day, Christmas, etc.)
- Weekend Indicator: Saturdays and Sundays displayed in red text
- Data Persistence: Daily reports automatically saved to local SQLite database
- Quick Template: Support inserting daily report template for quick filling
- Status Indicator: Recorded dates marked in green for clear visibility
- Statistics: Display monthly and total entry counts
- TODO Tips: Left-side floating note panel, can add/check/delete TODO items
- Multi-format Export: Export current or all daily reports to CSV/Markdown/TXT format
- Automatic Generation: Generate standardized weekly report email format from text daily reports
- Import from Daily Reports: One-click select recorded daily reports, support custom date ranges
- Flexible Date Range: Generate reports using actual imported date ranges, not fixed current week range
- Smart Date Recognition: Automatically recognize date formats (
20251212 8hor2025-12-12 8h) - Smart Categorization: Auto-categorize into projects, capability building, research, and other administrative work
- Deduplication & Merging: Auto deduplicate and merge similar items
- Risk Analysis: Extract risk points and provide response suggestions
- Save Report: Generated reports can be saved to database
- History Query: Query historical weekly reports by date range
- Edit Function: Can edit saved weekly reports
- Delete Function: Can delete unwanted weekly report records
- Multi-format Export: Export to CSV/Markdown/TXT format
- Smart Generation: Generate next quarter OKR based on historical materials
- Clear Date Node: Each KR contains clear date node (
YYYY-MM-DD before) - Quantitative Metrics: Each KR contains quantitative expression (threshold/ratio/quantity etc.)
- Milestone Planning: Key KRs contain phase milestones (M1/M2/M3)
- Goal Management: Generate 2-3 reasonable objectives
- Save OKR: Generated OKRs can be saved to database
- Multi-format Export: Export to CSV/Markdown/TXT format
- STAR Format Extraction: Intelligently extract Situation-Task-Action-Result format achievements from daily/weekly reports
- Project Classification: Auto-identify and categorize projects
- Timeline View: Display career achievements in chronological order
- Achievement Editing: Support editing STAR summaries to improve career assets
- Data Cleanup: Support merging similar projects and cleaning invalid data
- Skills Distribution Visualization: Radar chart showing skill usage frequency
- AI Smart Categorization: Use LLM to intelligently identify skill categories (Technical/Soft/Domain)
- Category Filtering: Filter and view by skill category
- Skill Details: Click on skills to view related work items
- Growth Tracking: Record first and last use time for each skill
- Use SQLite lightweight database
- Database file location:
backend/data/reports.db - Tables: daily_reports, weekly_reports, okr_reports, todo_items, work_items, projects, skills, etc.
- Frontend: React + TypeScript
- Backend: Flask + Python
- LLM: OpenAI-like chat completions API
- Deployment: Docker / Local / Batch Scripts
The easiest way to use - no development environment required, just double-click to run!
-
Download Installer
- Download the latest
WorkPilot-Setup-x.x.x.exefrom the Releases page
- Download the latest
-
Run Installer
- Double-click
WorkPilot-Setup-x.x.x.exe - Choose installation directory (default:
C:\Program Files\WorkPilot) - Follow the wizard to complete installation
- Double-click
-
Launch Application
- Double-click the desktop shortcut "WorkPilot Productivity Assistant"
- Or launch from Start Menu
- The app will automatically start backend services and frontend interface
- Browser will automatically open the application page
-
First-time LLM Configuration
- Click the "⚙️ Settings" tab in the top navigation bar
- Fill in LLM API configuration:
- API URL: e.g.,
https://api.deepseek.com/v1 - API Key: Your API key
- Model Name: e.g.,
deepseek-chat
- API URL: e.g.,
- Click "Test Connection" to verify configuration
- Click "Save Configuration"
- The status at the top of the page will automatically update to "LLM Configured"
-
Minimize to System Tray
- Click the minimize button, the app will automatically minimize to system tray
- Right-click the tray icon to open main interface or exit the app
- Services continue running in the background
- ✅ Double-click install, no development environment needed
- ✅ Automatically start backend and frontend services
- ✅ Support minimize to system tray
- ✅ Auto-start on boot (optional)
- ✅ Complete uninstall support
Simplest way for Windows users:
- Clone project and install dependencies
git clone https://github.com/steven140811/WorkPilot.git
cd WorkPilot
# Install backend dependencies
cd backend
pip install -r requirements.txt
# Install frontend dependencies
cd ../frontend
npm install
cd ..- Configure environment variables
# Edit backend\.env file, fill in LLM API configuration
# If not configured, will use mock mode- One-click launch all services
# Double-click to run or execute in command line
start_services.bat
# Stop services
stop_services.batFeatures:
- ✅ Auto-detect and release port conflicts
- ✅ Backend runs completely in background with
pythonw.exe(no window) - ✅ Frontend runs in background
- ✅ Auto-open browser
- ✅ Log output to files:
backend\backend.logandfrontend\frontend.log - ✅ Services continue running after script exits
- Access application
- Frontend: http://localhost:5002
- Backend API: http://localhost:5001
# Build Docker images
docker-compose up -d
# Access application
# Frontend: http://localhost:3000
# Backend API: http://localhost:5000cd backend
pip install -r requirements.txt
python app.pycd frontend
npm install
npm startWorkPilot/
├── backend/ # Flask backend application
│ ├── app.py # Main application entry
│ ├── config.py # Configuration management
│ ├── generator.py # Report generation logic
│ ├── llm_client.py # LLM client
│ ├── parser.py # Text parser
│ ├── prompts.py # AI prompt templates
│ ├── database.py # SQLite database module
│ ├── requirements.txt # Python dependencies
│ ├── data/ # Data directory
│ │ └── reports.db # SQLite database file
│ └── tests/ # Test files
├── frontend/ # React frontend application
│ ├── src/
│ │ ├── components/
│ │ │ ├── DailyReportEntry.tsx # Daily report entry component
│ │ │ ├── WeeklyReportGenerator.tsx # Weekly report generator component
│ │ │ ├── WeeklyReportQuery.tsx # Weekly report query component
│ │ │ ├── OKRGenerator.tsx # OKR generator component
│ │ │ ├── CareerAssets.tsx # Career assets component
│ │ │ ├── SkillsRadar.tsx # Skills radar component
│ │ │ └── ExportButton.tsx # Export button component
│ │ ├── services/
│ │ │ └── api.ts # API service layer
│ │ ├── utils/
│ │ │ ├── holidays.ts # Holiday data
│ │ │ └── export.ts # Export utility functions
│ │ └── App.tsx # Main application component
│ └── package.json
├── docker-compose.yml # Docker compose file
├── start_services.bat # Windows one-click start script
├── stop_services.bat # Windows one-click stop script
└── README.md # Project documentation
POST /api/generate/weekly-report- Generate weekly report
POST /api/generate/okr- Generate OKR
GET /api/daily-reports?start_date=YYYY-MM-DD&end_date=YYYY-MM-DD- Query daily reportsGET /api/daily-report/<date>- Get daily report for specific datePOST /api/daily-report- Save daily reportPUT /api/daily-report/<date>- Update daily reportDELETE /api/daily-report/<date>- Delete daily report
GET /api/weekly-reports?start_date=YYYY-MM-DD&end_date=YYYY-MM-DD- Query weekly reportsGET /api/weekly-report/<id>- Get specific weekly reportPOST /api/weekly-report- Save weekly reportPUT /api/weekly-report/<id>- Update weekly reportDELETE /api/weekly-report/<id>- Delete weekly report
GET /api/okr-reports?quarter=YYYY-QN- Query OKRsGET /api/okr-report/<id>- Get specific OKRPOST /api/okr-report- Save OKRPUT /api/okr-report/<id>- Update OKRDELETE /api/okr-report/<id>- Delete OKR
GET /api/todo-items- Get all TODO itemsPOST /api/todo-items- Create TODO itemPUT /api/todo-items/<id>- Update TODO item (content/completion status)DELETE /api/todo-items/<id>- Delete TODO item
Configure LLM-related parameters in the backend/.env file. You can refer to the .env.example file in the project root directory for configuration.
Configuration Example:
# LLM Configuration (Required for real LLM calls)
# If not configured, the application will use mock mode
LLM_API_URL=https://api.deepseek.com/v1 # LLM API URL
LLM_API_KEY=sk-your-api-key-here # Your API key
LLM_MODEL=deepseek-chat # Model name
# Optional: LLM timeout and retry settings
LLM_TIMEOUT=30 # Timeout in seconds, default 30
LLM_RETRY=2 # Retry count, default 2
# Flask Configuration
PORT=5001 # Backend service port
FLASK_DEBUG=false # Debug mode switchConfiguration Steps:
-
Copy the example configuration file:
cp .env.example backend/.env
-
Edit the
backend/.envfile and fill in your LLM API configurationLLM_API_URL: API address of the LLM serviceLLM_API_KEY: Your API key (required)LLM_MODEL: Model name to use
-
If LLM is not configured, the application will run in mock mode (returning test data)
Supported LLM Providers:
- DeepSeek:
https://api.deepseek.com/v1 - OpenAI:
https://api.openai.com/v1 - Azure OpenAI:
https://your-resource.openai.azure.com/ - Other services compatible with OpenAI API format
MIT License
When you need to migrate WorkPilot data to a new environment (e.g., new computer, system reinstall, migrate from development to installed version), follow these steps.
| Environment Type | Database Path |
|---|---|
| Development | project_directory/backend/data/reports.db |
| Installed Version | installation_directory/backend/_internal/data/reports.db |
⚠️ Note: The installed version's database is in the_internal/data/directory, NOT thedata/directory!
Ensure both source and target environments have WorkPilot completely closed.
- Development Source:
E:\your_project_path\WorkPilot\backend\data\reports.db - Installed Source:
C:\Program Files\WorkPilot\backend\_internal\data\reports.db
Method 1: Manual Copy
Directly copy the reports.db file to the target location, overwriting the existing file.
Method 2: Command Line (PowerShell)
# From development to installed version
Copy-Item "E:\your_project_path\WorkPilot\backend\data\reports.db" "C:\Program Files\WorkPilot\backend\_internal\data\reports.db" -Force
# From installed version to development
Copy-Item "C:\Program Files\WorkPilot\backend\_internal\data\reports.db" "E:\your_project_path\WorkPilot\backend\data\reports.db" -Force
# From old installation to new installation
Copy-Item "D:\old_location\WorkPilot\backend\_internal\data\reports.db" "E:\new_location\WorkPilot\backend\_internal\data\reports.db" -ForceStart WorkPilot in the target environment and verify data was migrated correctly.
- 💾 Regularly backup
reports.dbfile to a safe location - 📁 Consider using cloud storage services for synchronized backups
- 🗓️ Recommend weekly backups of important data
Q: Data not showing after migration?
A: Make sure you copied to the correct directory. Installed version uses _internal/data/ directory, not data/.
Q: Can I use development and installed versions simultaneously?
A: Yes, but data is independent. Manual database file copying is required to sync data.
Q: How to completely reset data?
A: Delete the reports.db file, restart the app and a new empty database will be created automatically.