# Morning OS You write everything down. Tasks, goals, rules, wins — it's all in your vault. But every morning you still open Obsidian and spend ten minutes figuring out where to start. Morning OS reads your vault and builds a focused dashboard before you touch anything else. One screen. Everything that matters today. --- ## What you see | Section | What it does | |---|---| | **Identity strip** | Your own rules about who you're trying to be — before you see a single task | | **Goals bar** | Top short and long-term goals, so the daily grind stays connected to the bigger picture | | **Red alert tasks** | Urgent tasks from today's note, with a badge showing how many days each has been carried | | **Regular tasks** | Normal tasks, same carry tracking — chronic avoidance becomes visible | | **Rules for today** | The AI picks the rules from your rules file most relevant to today's tasks | | **Suggestions** | The one thing the AI writes: a short nudge based on your patterns and what's been sitting undone | | **Pending backlog** | Your technical task backlog with a count — you see if it's growing without reading the whole list | | **Hobby tasks** | Non-work items in their own section so they don't get buried | | **Wins** | A prompt at the bottom. What you write here goes straight into your daily note | The AI picks which of your items to surface — it never rewrites or edits your vault. The only new text it generates is the suggestion. --- ## Works on mobile No terminal, no Python, no desktop-only dependencies. The plugin runs entirely inside Obsidian — tap the sun icon on your phone, your note is scaffolded and your brief is generated. The only requirement is that your vault is in sync across devices. > **Recommended:** [Remotely Save](https://github.com/remotely-save/remotely-save) with Dropbox. Make sure your sync settings include folders with underscores — some tools exclude them by default, and Morning OS writes its briefs and feedback to `_generated/`. With sync in place, you can review your brief and check off tasks from anywhere. The daily note and brief JSON stay consistent across all your devices. --- ## Setup 1. Copy `main.js`, `manifest.json`, and `styles.css` to `.obsidian/plugins/morning-os/` 2. Enable in **Settings → Community Plugins** 3. **Settings → Morning OS** — pick a provider, enter your API key 4. Click **Run agent now** 5. Open the Morning OS panel from the sidebar (sun icon) Runs automatically at your configured time after the first run. **Supported AI providers:** OpenAI · Google Gemini · Groq · AWS Bedrock ---
Vault structure The plugin reads files you already maintain. All paths are configurable in settings. ``` Essential/ Daily/YYYY-MM-DD.md ← daily note State of Mind/ Tactical Rules.md Emotional Rules.md Long-term and Short-term.md Pending Tasks/ Technical Tasks.md Hobby Tasks.md _generated/ ← plugin writes here briefs/ feedback/ ``` Daily note format: ```markdown ## Red alert - [ ] urgent task ## Regular - [ ] normal task ## Wins - something good ``` Heading names are configurable.
How it works 1. Reads today's daily note and your source files 2. Fuzzy-matches incomplete tasks against previous briefs to detect carries (looks back up to 7 days across skipped days) 3. Single LLM call picks relevant rules, goals, hobby tasks, and writes a suggestion 4. Brief saved to `_generated/briefs/YYYY-MM-DD.json` 5. Dashboard renders from the brief Suggestion reactions (👍/👎) are stored per-day and feed into the next run.
Configuration **Settings → Morning OS:** - **Briefing agent** — run time, carry lookback days, manual trigger - **AI provider** — provider, model, credentials - **Vault paths** — all source and output paths - **Section headings** — heading names in your daily note and goals file - **How many items to show** — per-field counts - **AI vs direct mode** — per-field toggle; "direct" = verbatim from vault, "AI" = LLM picks
Development ```bash npm install npm run dev # watch + copy to vault on save npm run build # production build npm run deploy # build + copy to vault ``` Set `OBSIDIAN_PLUGIN_DIR` to your vault's plugin folder path.