AI Task Dashboard
unlistedby yawing-star
A center-workspace AI task workbench and proactive personal todo assistant.
AI Task Dashboard
一个 Obsidian 中央主工作区插件,用于把自然语言事项沉淀为本地 Markdown 任务库,并提供今日待办、已完成事项、任务状态更新和手动今日总结。
项目主要内容
AI Task Dashboard 是一个面向 Obsidian 的主动型个人代办工作台。它不是右侧聊天侧边栏,而是在 Obsidian 中央主工作区打开一个完整 Dashboard,用来承接每天的事项收集、任务解析、待办管理、历史回顾和日终总结。
插件的核心闭环是:
收集事项 → 解析任务 → 展示今日待办 → 更新完成状态 → 记录上下文 → 生成总结 → 提醒下一步关注
所有任务和上下文优先写入当前 Vault 的本地 Markdown 文件,不依赖云数据库。
具体做了什么
- 基于 Obsidian 官方插件结构初始化了 TypeScript 项目、构建脚本、manifest 和样式文件。
- 使用
ItemView实现中央主工作区视图,并通过左侧 ribbon 图标打开,不做右侧 sidebar 聊天窗口。 - 实现了任务工作台主界面:遗留任务汇总、今日任务状态、历史记录入口、任务输入和总结功能。
- 实现了本地 Markdown 任务库,自动创建
AI Assistant/目录并读写任务、每日记录和总结。 - 实现了自然语言任务输入,调用 LLM 解析为结构化 JSON,并在用户确认后写入任务库。
- 实现了 DeepSeek、MiniMax、智谱 / GLM 和 Custom OpenAI-Compatible Provider 的配置与调用抽象。
- 实现了任务状态更新:完成、处理中、阻塞,并对按钮做了明确的颜色区分。
- 增加了历史记录弹窗,可以按日期查看待办和已完成事项。
- 增加了 Vitest 单元测试,覆盖任务 Markdown 解析、状态更新、JSON 解析和任务分组逻辑。
已实现功能
- 左侧 ribbon 图标打开中央主工作区 View,不使用右侧 sidebar。
- 再次点击 ribbon 时 reveal 已打开的工作台。
- 顶部显示今天日期、标题和设置入口。
- 第一栏展示遗留任务汇总:过去遗留且尚未完成的待办。
- 今日任务状态展示今日待办和今日已完成事项,桌面端双栏并排。
- 历史记录作为顶部功能按钮打开,按日期查看待办和已完成事项。
- 支持手动将任务更新为完成、处理中、阻塞。
- 今日任务状态下方提供紧凑任务输入,点击确认后调用模型解析为 JSON。
- 解析结果确认后写入
AI Assistant/Tasks.md,并记录到AI Assistant/Daily/YYYY-MM-DD.md。 - 支持对
mark_done、progress_update、blocker尝试匹配已有任务,并在确认后更新。 - 支持手动生成今日总结,写入
AI Assistant/Reviews/YYYY-MM-DD.md。 - 设置页支持 DeepSeek、MiniMax、智谱 / GLM 和 Custom OpenAI-Compatible Provider。
技术结构
src/
main.ts
settings.ts
views/
AiTaskDashboardView.ts
components/
DateHeader.ts
ParsedResultPreview.ts
TaskHistoryModal.ts
TaskInputBox.ts
TaskItem.ts
TaskList.ts
llm/
LLMClient.ts
providers/
task/
TaskMatcher.ts
TaskParser.ts
TaskSelectors.ts
TaskStore.ts
TaskTypes.ts
prompts/
utils/
本地数据结构
插件会在 Vault 中创建:
AI Assistant/
Inbox.md
Tasks.md
Daily/
YYYY-MM-DD.md
Reviews/
Projects/
任务写入 AI Assistant/Tasks.md,格式示例:
- [ ] 看项目调研问卷
- id: task_xxx
- status: todo
- project: 示例项目
- due: 2026-06-14
- priority: medium
- created_at: 2026-06-13 10:30
- completed_at:
- source: 明天提醒我看一下项目调研问卷
模型配置
进入 Obsidian Settings → Community Plugins → AI Task Dashboard,配置:
- Provider
- API Key
- Base URL
- Model Name
- Temperature
- Max Tokens
- Enable Streaming
默认值:
| Provider | Base URL | Model |
|---|---|---|
| DeepSeek | https://api.deepseek.com | deepseek-chat |
| MiniMax | https://api.minimax.io/v1 | MiniMax-Text-01 |
| 智谱 / GLM | https://open.bigmodel.cn/api/paas/v4 | glm-4-flash |
| Custom | 手动填写 | 手动填写 |
第一版请求使用 OpenAI-Compatible /chat/completions 非流式格式,便于稳定解析 JSON。不同厂商若有接口路径或模型名变化,可直接在设置中调整 Base URL 和 Model。
安装和启用
- 运行构建:
npm install
npm run build
- 将以下文件复制到 Vault 的插件目录:
.obsidian/plugins/ai-task-dashboard/
main.js
manifest.json
styles.css
- 在 Obsidian 设置中关闭安全模式,启用 Community Plugins。
- 启用 AI Task Dashboard。
- 点击左侧 ribbon 的列表图标打开工作台。
当前限制
- 第一版不做定时提醒、手机推送、日历集成、向量数据库或多 Agent。
- Streaming 配置项已保留,但解析任务和总结请求暂时使用非流式。
- MiniMax 和智谱默认走 OpenAI-Compatible 请求格式;如账号 API 版本不同,需要在设置中改 Base URL 或改 provider 实现。
progress_update、mark_done默认只展示候选任务,需要用户确认后才更新。- Markdown 任务解析面向本插件写入的格式,不保证兼容任意 Tasks 插件格式。
下一阶段迭代
- 增加更完整的任务编辑、取消、等待状态操作。
- 为候选任务匹配加入更好的中文相似度。
- 支持项目视图和 Reviews 聚合视图。
- 增加定时日终总结和明日关注提醒。
- 增加真实流式总结显示。
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.