# Mengshi Cockpit > An all-in-one Obsidian workbench plugin โ€” **Calendar**, **Projects**, **Todos**, **Gantt**, **Feishu (Lark)**, and **Claude Code Sessions** in a single interactive dashboard. > > A Chinese translation is available at [README.zh-CN.md](README.zh-CN.md). [![Obsidian Plugin](https://img.shields.io/badge/Obsidian-%20Plugin-7C3AED)](https://obsidian.md) [![GitHub release](https://img.shields.io/github/v/release/Spenf710/obsidian-mengshi-cockpit.svg)](https://github.com/Spenf710/obsidian-mengshi-cockpit/releases) [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) --- ## Features | Tab | Name | What it does | Highlights | |------|------|--------------|------------| | ๐Ÿ“… | Calendar | **Two views**: ๆ—ฅๆ–ฐ (monthly grid, daily summary + status) and ๆœˆๅผ‚ (quarter month-cards + weekly cards with weekly-report tags & busy lights; month โ†’ daily view) | One-click daily note, inline status editing, weekly/monthly report **skeleton generation** from diary draft | | ๐Ÿ“‚ | Projects | Auto-scan project folders, two-dimensional categorization, card view | Auto-discovers projects, editable tags/categories, maintainable links | | โœ… | Todos | Aggregates `- [ ]` tasks from multiple sources; checking a box writes back to the source file | Groups by project, collapses completed items, skips template noise | | ๐Ÿ“Š | Gantt | Gantt timeline, drag scheduling, multi-phase, milestones | Today line, phase bars, two-way README sync | | ๐Ÿ“ก | Feishu | Feishu Wiki / Drive browsing, project categorization, link checks, smart meeting notes | Deep scan, auto-categorization, access stats, file moves | | ๐Ÿ’ฌ | Sessions | Visualize Claude Code **and CodeM** sessions, group by project, archive & harvest status | Turn details, session archiving (out of 30-day cleanup scope), one-click resume, harvest marker | > ๐Ÿ–Š **Quick capture**: a bottom FAB offers "Diary / Todo / Project" quick entry (not a separate panel). --- ## Reports & Skills - **One-click weekly / monthly report skeleton** from the calendar: pick ยซ๐Ÿ“ extract draft from diaryยป (auto-aggregate project tags + daily one-liners + status stats into `ai_summary`) or ยซ๐Ÿงฑ empty skeleton (fill by hand)ยป. - **Bundled skills, one-click install** from Settings โ†’ Sessions: - `session-harvest` โ€” summarize a conversation into vault notes - `work-report` โ€” keep local diary โ†’ generate weekly / monthly reports (fully local, no personal info bundled) - Installs to `~/.claude/skills/` or `~/.agents/skills/`; existing files are backed up to `.bak`. --- ## Demo Calendar | Gantt :---:|:---: ![Calendar](assets/demo/ๆ—ฅๅކ็œ‹ๆฟๅฑ•็คบ.gif) | ![Gantt](assets/demo/ๆŽ’ๆœŸ่ง†ๅ›พๅฑ•็คบ.gif) > Installation demo: see `assets/demo/ๆ’ไปถๅฎ‰่ฃ….gif`. --- ## Installation ### From Obsidian Community Plugins (recommended) 1. Open Obsidian โ†’ **Settings โ†’ Community plugins โ†’ turn off Restricted mode** 2. Community plugins โ†’ Browse โ†’ search **Mengshi Cockpit** โ†’ Install and enable 3. A shield-shaped icon appears in the ribbon; click it to open the workbench ### Manual install (Release) 1. Download the latest `main.js`, `manifest.json`, `styles.css` from [Releases](https://github.com/Spenf710/obsidian-mengshi-cockpit/releases) 2. Put them into `.obsidian/plugins/mengshi-workbench/` in your vault 3. Settings โ†’ Community plugins โ†’ Enable ### Build from source ```bash git clone https://github.com/Spenf710/obsidian-mengshi-cockpit.git cd obsidian-mengshi-cockpit npm install # Build directly into your vault's plugin folder (recommended): OBSIDIAN_VAULT="C:/path/to/your/vault" npm run build # Or build to ./dist and copy manually: npm run build ``` Output directory priority: `OBSIDIAN_VAULT` env var โ†’ local `.obsidian` โ†’ `./dist`. --- ## Setup The plugin works **out of the box**, but configure it under **Settings โ†’ Mengshi Cockpit** for the best experience: | Setting | Description | Default | |---------|-------------|---------| | Work log folder | Folder for daily notes | Empty โ†’ "ๅทฅไฝœๆ—ฅๅฟ—" | | Diary template | Template used for new notes | `templates/ๅทฅไฝœๆ—ฅๅฟ—.md` | | Project roots | Project-type folders (multiple allowed) | Empty โ†’ add manually | | Default categories / tags | Vocabulary for project classification | `้€š็”จ / ๅ…ถไป–` | | Tabs | Toggle the 6 tabs independently | All on | ### Feishu (optional) The Feishu panel relies on the external **lark-cli** tool (install and log in yourself): ```bash npm install -g @larksuite/cli lark-cli auth login ``` The plugin auto-detects `lark-cli` (with a `npx` fallback); a guide is shown when it is missing. ### Sessions (optional) The Sessions panel reads local **Claude Code** session records (`~/.claude/projects/`) โ€” no setup needed. "Loop / Open in Claude" requires the Claude Code CLI; buttons show a hint when it is absent. --- ## Privacy & Data - Everything is processed locally: it reads your vault's `.md` files, optionally reads `~/.claude/projects` session JSONL, and calls Feishu cloud APIs (via `lark-cli` using your own credentials) only when you open the Feishu panel. - **Nothing is uploaded to third parties**: Feishu calls only happen when you perform a panel action (browse / search / stats). - Settings (including personal overrides) are stored in `.obsidian/plugins/mengshi-workbench/data.json`. --- ## Development ```bash npm run dev # watch mode + static file sync npm run build # production build ``` - Source: `src/main.ts` (plugin shell) + `src/data/*` (data layer) + `src/views/*` (view layer) - Build: esbuild bundle โ†’ `main.js`; standalone `styles.css`; `manifest.json` version aligned with the release tag ### Platform | Item | Details | |------|---------| | Minimum version | Obsidian โ‰ฅ 1.7.2 | | Desktop | โœ… (requires Node runtime; Loop / Sessions / Feishu CLI / Gantt are desktop-first) | | Mobile | Not published (`isDesktopOnly: true`) | --- ## Credits & License - The logo is an original military-style creation with no third-party copyright dependencies. - Released under the [MIT License](LICENSE).