中文 | English
Cockpit Dashboard 是一个本地优先的 Obsidian 驾驶舱首页:待办、日历、搜索、统计、收藏和专注计时放在一处,也支持布局编辑与静默刷新。
Cockpit Dashboard is a local-first Obsidian dashboard for tasks, calendar, search, stats, bookmarks, and focus tracking, with persistent layout customization and silent refresh.
这个插件的目标不是只做一个“漂亮主页”,而是把你每天会用到的知识库操作集中在一个面板里:
| 功能 | 说明 |
|---|---|
| 👋 欢迎区 | 根据时间显示问候语,支持直接修改昵称,并展示临期待办提醒 |
| 🔄 静默刷新 | 按分钟刷新问候语,按周期局部刷新待办 / 日历 / 最近更新 / 收藏,尽量避开输入与编辑态 |
| 💡 每日一语 | 内置提示每天轮换;编辑模式下可按当前语言维护、排序并选择轮询方式 |
| 🧰 工具栏 | 新建笔记、全局搜索、标签、图谱、命令、Hermes、驾驶舱 H5、工作日志、番茄钟;编辑模式支持拖拽排序、显示/隐藏和自定义按钮,保存时局部更新工具栏 |
| 🔍 全局搜索 | Spotlight 风格悬浮搜索,支持文件名、路径和笔记正文,带输入防抖、键盘选择和可拖动窗口;也可通过 Obsidian 命令快捷呼出 |
| 🧩 编辑模式 | 所有仪表盘模块统一支持上下拖动排序、显示/隐藏、折叠状态持久化与情景布局;也可单独隐藏 Toolbar 按钮 |
| 🖱️ 右键菜单 | 在首页空白区域弹出快捷菜单,支持刷新页面、新建笔记、搜索、命令面板、图谱、番茄钟、最近更新记录、进入编辑模式 |
| 📅 日历看板 | 紧凑月视图、月份切换动画、日期选中、待办点位提示、日详情面板、快捷新增/编辑和勾选同步;支持多源 RSS、日期总数、未读角标与已读/未读文章状态 |
| 📰 RSS 阅读器 | 可在日常模式打开的双栏订阅阅读器,支持来源筛选、文章卡片、结构化正文、链接/图片、全局朗读播放器、右键快捷操作,以及公共/单源正文过滤词 |
| ✅ 待办管理 | 下拉状态筛选、动态标签页签、优先处理(高优先级或明天到期)、优先级、截止日期、一键延期、编辑和删除 |
| 📊 统计卡片 | 笔记总数、待办总数、已完成、完成率、今日专注时长 |
| 🍅 专注趋势 | 默认隐藏、可在编辑模式启用;从 _data/focus.md 汇总近 7 / 30 天专注时长,并支持平滑折线与柱状图切换 |
| 📂 分类卡片 | 展示顶层目录,优先打开概览/MOC 类文件;没有概览时打开分类中的第一篇笔记,空目录会明确提示 |
| ✏️ 最近更新 | 按最近修改时间展示笔记,支持一键打开 |
| 📝 更新记录 | 内置本地版本记录弹窗,可在右键菜单中查看最近版本、日期和更新内容 |
| ⭐ 收藏文件 | 收藏/取消收藏重要笔记,与最近更新区联动;支持折叠、固定排序、上下调整及一键在分栏打开 |
| ⚡ 闪念胶囊 | 快速记录想法到 _daily/YYYY-MM-DD.md |
| 📈 编辑热力图 | 展示近 30 天编辑频率 |
| 🍅 番茄钟 | 可拖拽的全局单例,支持 25+5 循环与深浅色;编辑模式可关闭“自动显示”。进行中或暂停中的计时会在刷新后恢复,并会跟随 Obsidian 自动切换深浅主题;专注历史写入 _data/focus.md |
| 🔔 消息推送 | 可选集成 Server酱³、Bark 与 MEOW。可同时启用多个渠道,支持每天、指定星期或指定月日的秒级定时推送,以及今日到期 / 逾期待办汇总或自定义正文 |
| 🌐 多语言界面 | 支持 中文 / EN 一键切换,覆盖首页主要文案并持久化语言设置,且语言开关会适配深浅色模式 |
| ✨ 交互动效 | 语言切换、工具栏、筛选和卡片增加 hover / press 反馈,让点击更有层次 |
| 🧭 首次引导 | 首次打开显示分步引导,可跳过并记住状态 |
| 📦 折叠面板 | 分类、统计、待办、专注趋势、最近更新、收藏、闪念、热力图等区块支持折叠状态持久化 |
Cockpit Dashboard 已上架 Obsidian 社区插件市场:
main.jsmanifest.jsonstyles.css.obsidian/plugins/cockpit-dashboard/
Cockpit Dashboard你的数据归你:插件不收集或上传 Vault 数据,也没有遥测。数据迁移、清理和本地命令都需要你主动操作;插件产生的数据尽量使用 Markdown 和 JSON,便于查看、备份与删除。第三方推送或自定义命令仅在你自行启用时才会访问外部服务。
插件运行时会使用或生成这些文件:
| 文件 | 作用 |
|---|---|
_data/todos.md |
待办数据 |
data.json |
Storage V2 设置、自定义按钮、收藏、排序、Toolbar 命令与 RSS 订阅/过滤配置(不含正文缓存) |
| IndexedDB | 当前设备的 RSS 正文摘要、已读状态和受限缓存;不参与 Obsidian Sync,可随时在 RSS 菜单清除 |
_data/bookmarks.md |
未完成数据迁移时的收藏存储;迁移后停止写入,可由用户主动清理 |
_data/focus.md |
按日期累计的专注历史记录 |
_data/toolbar.md |
未完成数据迁移时的 Toolbar 命令配置;迁移后停止读取和写入 |
.obsidian/plugins/cockpit-dashboard/logs/toolbar-runs.jsonl |
最近 100 次自定义脚本运行日志,最大约 1 MB,不记录脚本文本 |
_daily/YYYY-MM-DD.md |
闪念胶囊写入位置 |
_data 文件。data.json;旧文件会保留,直到你主动清理。在 _data/todos.md 中可以使用:
- [ ] 普通待办
- [x] 已完成待办 | created: 2026-06-01 | done: 2026-06-02
- [ ] 高优先级待办 p:high
- [ ] 带截止日期 due:2026-07-10
- [ ] 带标签 #work #urgent
- [ ] 组合写法 #project due:2026-07-10 p:low
说明:
#tag 用于标签due:YYYY-MM-DD 用于截止日期p:high | p:mid | p:low 用于优先级created: 与 done: 由插件保存时自动维护在 设置 → Cockpit Dashboard → 消息推送 中启用。可分别开启 Server酱³、Bark 和 MEOW,并用各渠道自己的“发送测试”按钮验证配置。
cockpit 分类标签。https://api.day.app)、Device Key 和可选分组。支持官方服务及 HTTPS 自建服务。cd ~/Downloads/cockpit-dashboard
node build.js
bash deploy.sh
# 或部署压缩版入口
bash deploy.sh --min
构建逻辑:
build.js 会拼接 src/ 下模块并生成 main.js 与 main.min.jsdeploy.sh 默认部署可读版 main.js,deploy.sh --min 会把 main.min.js 部署为插件入口data.json 为用户配置文件,部署时不会覆盖1.1.42026-07-27如果这个插件确实帮你省了时间,欢迎请作者喝一杯:
也可以直接访问:
Cockpit Dashboard is designed to be more than a visual landing page. It centralizes the actions you actually use every day in your Obsidian vault:
| Feature | Description |
|---|---|
| 👋 Greeting Hero | Time-based greeting, inline editable name, and due-task reminders |
| 🔄 Silent Refresh | Minute-level greeting refresh plus periodic partial refresh for todos, calendar, recent files, and bookmarks while avoiding active input/edit states |
| 💡 Daily Note | Built-in tips rotate daily; Edit Mode supports per-language editing, sorting, and rotation modes |
| 🧰 Toolbar | New note, global search, tags, graph, command palette, Hermes, Cockpit H5, work log, and Pomodoro; Edit Mode supports sorting, visibility controls, custom buttons, and local Toolbar updates on save |
| 🔍 Global Search | Draggable Spotlight-style search across note names, paths, and content, with input debouncing, keyboard navigation, and an Obsidian command entry point |
| 🧩 Edit Mode | All dashboard modules share drag reordering, visibility controls, persistent collapsed state, and layout-scene support; individual toolbar buttons can also be hidden |
| 🖱️ Context Menu | Right-click in blank dashboard space for refresh, new note, search, command palette, graph, Pomodoro, recent updates, and Edit Mode |
| 📅 Calendar Board | Compact monthly view, month-switch animation, date selection, todo markers, detail panel, quick create/edit, and task-state sync; supports multi-source RSS, daily totals, unread badges, and read/unread articles |
| 📰 RSS Reader | Daily-access two-pane subscription reader with source filters, article cards, structured text, links/images, a global text-to-speech player, context-menu actions, and shared/per-source content filters |
| ✅ Todo Manager | Compact status dropdown, dynamic tag tabs, Next filtering for high-priority or tomorrow-due tasks, priority, due dates, one-click deferral, edit/delete, and completion sync |
| 📊 Stats Cards | Note count, todo count, completed count, completion rate, and today’s focus minutes |
| 🍅 Focus Trend | Hidden by default and enabled from Edit Mode; summarizes 7/30-day focus history from _data/focus.md with smooth line and bar chart views |
| 📂 Category Cards | Top-level folder cards that prefer overview/MOC notes, fall back to the first note, and clearly report empty folders |
| ✏️ Recent Files | Recently modified notes with one-click open |
| 📝 Release Notes | Built-in local update-history modal with versions, dates, and highlights |
| ⭐ Bookmarks | Bookmark important files, keep them synced with recent files, collapse the section, persist ordering, move items, and open a note in a split pane |
| ⚡ Flash Notes | Quick capture into _daily/YYYY-MM-DD.md |
| 📈 Heatmap | 30-day edit activity heatmap |
| 🍅 Pomodoro | Draggable global timer with a 25/5 cycle and light/dark support. Edit Mode can disable auto-show; active or paused sessions return after refresh and follow Obsidian’s automatic light/dark theme changes, while focus history is saved by date |
| 🔔 Message Notifications | Optional ServerChan³, Bark, and MEOW delivery. Enable multiple channels at once with second-level daily, weekday, or monthly schedules, task summaries, or a custom body |
| 🌐 Multi-language UI | One-tap 中文 / EN switching with persisted preference and better light/dark readability |
| ✨ Interaction Polish | Hover and press feedback for language toggle, toolbar actions, filters, and cards |
| 🧭 Onboarding | First-run guided tour with persistent completion state |
| 📦 Collapsible Sections | Persistent collapsed state for categories, stats, todos, Focus Trend, recent files, bookmarks, flash notes, heatmap, and other registered modules |
Cockpit Dashboard is available in the Obsidian Community Plugins marketplace:
main.jsmanifest.jsonstyles.css.obsidian/plugins/cockpit-dashboard/
Cockpit DashboardYour data stays yours: the plugin does not collect or upload Vault data and includes no telemetry. Migration, cleanup, and local commands require your action. Plugin data uses readable Markdown and JSON where possible, and third-party services are contacted only when you enable them.
| File | Purpose |
|---|---|
_data/todos.md |
Todo storage |
data.json |
Storage V2 settings, custom buttons, bookmarks, ordering, Toolbar commands, and RSS subscription/filter configuration (not article cache) |
| IndexedDB | Device-local RSS summaries, read states, and bounded cache; excluded from Obsidian Sync and removable from the RSS menu |
_data/bookmarks.md |
Bookmark storage before migration; no longer written after migration and removable by the user |
_data/focus.md |
Focus history accumulated by date |
_data/toolbar.md |
Toolbar command configuration before migration; no longer read or written after migration |
.obsidian/plugins/cockpit-dashboard/logs/toolbar-runs.jsonl |
Last 100 custom-script runs, capped near 1 MB; script source is not logged |
_daily/YYYY-MM-DD.md |
Flash note destination |
_data files.data.json; old files remain until you explicitly clean them.- [ ] Normal task
- [x] Completed task | created: 2026-06-01 | done: 2026-06-02
- [ ] High priority p:high
- [ ] Due soon due:2026-07-10
- [ ] Tagged task #work #urgent
- [ ] Combined syntax #project due:2026-07-10 p:low
Notes:
#tag adds tagsdue:YYYY-MM-DD sets a due datep:high | p:mid | p:low sets prioritycreated: and done: are maintained automatically by the pluginEnable this under Settings → Cockpit Dashboard → Message notifications. ServerChan³, Bark, and MEOW can be enabled independently and each has its own test button.
cockpit category tag.https://api.day.app), Device Key, and optional group. Official and HTTPS self-hosted servers are supported.cd ~/Downloads/cockpit-dashboard
node build.js
bash deploy.sh
# Or deploy the minified entry
bash deploy.sh --min
Build notes:
build.js bundles modules from src/ into main.js and main.min.jsdeploy.sh ships the readable main.js by default, while deploy.sh --min deploys main.min.js as the plugin entrydata.json stores user configuration and is not overwritten during deploy1.1.42026-07-27If this plugin saves you time, you can support the author here:
Direct link: