Resources
14Install
npx skillscat add fracknavy/planmanage Install via the SkillsCat registry.
SKILL.md
PlanManage Skill 文档
📌 项目定位
智能计划与时间表管理 Web 应用,核心功能:
- 任务管理(CRUD、子任务、重复任务)
- 智能排程(权重、优先级、截止时间)
- 时间表(拖拽排序、冲突检测)
- 链接解析(自动提取网页信息)
🎯 当前状态
已完成
- ✅ 基础架构(Next.js + Prisma + shadcn/ui)
- ✅ 认证系统(登录、注册、路由保护)
- ✅ 任务 CRUD
- ✅ 时间表基础功能
- ✅ 链接解析
- ✅ 自动排程算法
- ✅ 拖拽排序
未完成
- ❌ 子任务功能
- ❌ 重复任务
- ❌ 休息时间管理(跳过、倒计时)
- ❌ 冲突检测 UI
- ❌ Dashboard 统计图表
- ❌ 数据导出
- ❌ 暗色模式
- ❌ 通知系统
⚠️ 开发限制
| 类别 | 限制 |
|---|---|
| Node.js | >= 18.0.0 |
| PostgreSQL | >= 14.0 |
| 任务层级 | 仅一级子任务 |
| 重复任务 | 简单 RRULE(每日、每周、每月) |
| 排程范围 | 仅当天 |
| 链接解析 | 仅公开网页 |
| 并发用户 | < 100 |
🚀 快速命令
# 安装
npm install
# 数据库
npx prisma generate && npx prisma db push
# 开发
npm run dev
# 构建
npm run build
# 类型检查
npx tsc --noEmit📁 关键路径
| 功能 | 路径 |
|---|---|
| 排程算法 | src/lib/scheduler.ts |
| 认证 | src/app/api/auth/[...nextauth]/route.ts |
| 任务 API | src/app/api/tasks/ |
| 时间表 API | src/app/api/schedule/ |
| 链接解析 | src/app/api/links/parse/route.ts |
| UI 组件 | src/components/ui/ |
🎨 技术栈
| 用途 | 技术 |
|---|---|
| 框架 | Next.js 14 (App Router) |
| 语言 | TypeScript |
| 样式 | Tailwind CSS + shadcn/ui |
| 拖拽 | dnd-kit |
| 数据库 | PostgreSQL + Prisma |
| 认证 | NextAuth.js |
| 验证 | Zod |
📋 开发优先级
P0 - 核心功能
- 子任务功能
- 重复任务
- 休息时间管理
P1 - 用户体验
- 权重可视化
- 统计图表
- 冲突检测 UI
P2 - 功能扩展
- 数据导出
- 暗色模式
- 通知系统
P3 - 高级功能
- 协作功能
- 国际化
- PWA
🔧 代码规范
- 组件: PascalCase (
TaskCard) - 函数: camelCase (
fetchTasks) - 文件: kebab-case (
use-tasks.ts) - 常量: UPPER_SNAKE_CASE (
MAX_TASKS)
📖 详细文档
🔨 修复记录
2024-06-12
修复 1: 缺失依赖
- 问题:
Module not found: Can't resolve 'next-auth/react' - 原因: package.json 缺少
next-auth和bcrypt依赖 - 解决: 添加依赖并安装
npm install next-auth bcrypt @types/bcrypt --save
修复 2: TypeScript 类型错误
- 问题:
session.user.id类型不存在 - 原因: NextAuth 默认 session 类型不包含
id字段 - 解决: 创建
src/types/next-auth.d.ts扩展类型
修复 3: Next.js 路由导出限制
- 问题:
authOptions导出导致类型错误 - 原因: Next.js 路由文件只能导出 HTTP 方法
- 解决: 将
authOptions移至src/lib/auth-options.ts
修复 4: 缺失导入
- 问题:
RefreshCw和ListTodo未导入 - 原因: 组件使用但未导入
- 解决: 添加缺失的导入语句
版本: v0.1.1 | 更新: 2024-06-12