close-day
Runs the end-of-day processing ritual for the Obsidian vault — parses the daily note, updates active project notes in place, surfaces vault connections, and writes carry-forward items for tomorrow. Make sure to use this skill whenever the user says "close my day", "end of day", "wrap up today", "process today's notes", "what did I do today", or runs /close-day. Five minutes of structured closing prevents a week of lost context.
What this skill does
# Close Day End-of-day ritual. Parses today's daily note, updates project notes in-place, surfaces vault connections, and sets up tomorrow. **A 5-minute ritual — not a lengthy report.** ## Ask, Don't Assume Shared principle (canonical version in the `vault` skill): never guess, deduce, or fill gaps with assumptions about the user's notes, priorities, or intent. If you don't know — a date range, what counts as a win, which goals are active — **ask**. Before writing any synthesis or judgment into a note, show your draft with its source and get explicit confirmation. Missing data is not permission to invent. ## Obsidian Access Use Obsidian CLI via Bash. On failure: "Obsidian CLI isn't working — update Obsidian with CLI enabled." ## Step 1 — Load Context (run in parallel) ```bash TODAY="2 - Areas/Daily Ops/$(date +%Y)/$(date +%Y-%m-%d).md" obsidian read path="$TODAY" 2>/dev/null || echo "(no daily note — run /daily first)" obsidian files folder="1 - Projects/" format=json obsidian read path="AGENTS.md" 2>/dev/null || echo "(AGENTS.md not found)" ``` Parse all captured content from today's daily note: free-form writing, meeting notes, ideas, tasks, people referenced, decisions made. ## Step 2 — Vault Connection Discovery Run searches per theme from today, then trace backlinks: ```bash obsidian search:context query="<theme 1>" limit=10 obsidian search:context query="<theme 2>" limit=10 obsidian backlinks file="<today's note>" ``` Surface: "Today you wrote about X. This connects to [[note]] from [date] — worth revisiting?" Flag themes recurring 3+ times in the past two weeks. ## Step 3 — Extract & Categorize Source: today's daily note (Step 1). Four categories to extract: - **Action Items** — promises to others, deadlines, follow-ups - **Ideas & Insights** — observations, hypotheses, perspective shifts - **People & Commitments** — messages to send, meetings to schedule - **Questions Raised** — things to investigate, pending decisions Cross-reference against existing open tasks: ```bash obsidian tasks todo path="$TODAY" ``` Flag any action items missing from the task list. ## Step 4 — Update Project Notes In-Place Match active projects to today's work (explicit mentions + implied work). For each match, read the project note first: ```bash obsidian read path="1 - Projects/<project-name>/<main-note>.md" ``` Then update only the sections that changed. **These are section-targeted edits — never append raw entries at the bottom.** The CLI has no `patch`, so updating a named section means either the MCP `obsidian_patch_content` tool (heading-targeted, supports `operation: replace|append`) or a `read` + `create ... overwrite` rewrite of the whole note. Ask the user which to use, then apply the changes below: - **`📍 Current Status`** — _replace_ the section with summary + date: `_Updated: $(date +%Y-%m-%d)_\n\n<status>\n\n### What's in progress\n<merged list>\n\n### Open questions / Blockers\n<merged list>` - **`🧠 Key Decisions`** — _append_ a row only if a decision was made today: `| $(date +%Y-%m-%d) | <decision> | <why> |` - **`📝 Notes & Context`** — _append_ only if a new insight emerged: `\n<insight>` Guidelines: only update on meaningful progress; preserve existing content; use the user's own language; adapt to non-standard templates. ### Related Notes Discovery (per matched project) ```bash qmd query "<project name> <keyword>" --json -n 5 obsidian links file="1 - Projects/<project-name>/<main-note>.md" ``` Filter: drop `2 - Areas/Daily Ops/` hits, already-linked notes, and `source: claude-memory` notes unless opted in. Keep at most 3 candidates. Propose — never write without approval: ``` [[Project A]] — related notes worth linking: - [[note-1]] (3 - Resources/...) — <why it matches> Approve any to append to 🔗 Links & References? ``` ## Step 5 — Carry Forward ```bash TODAY="2 - Areas/Daily Ops/$(date +%Y)/$(date +%Y-%m-%d).md" obsidian append path="$TODAY" content="## Carry Forward\n- [item 1]\n- [item 2]" ``` If the Quick Wrap section is empty, draft answers: - Did I explore anything new today? - What did I actually move forward? - What bottleneck became obvious? - One thing to carry into tomorrow? ## Output Format Keep output concise. Focus on filing what matters, not summarizing the day. ``` Today's Extraction — [categories with items] Vault Connections — [recurring themes, links to older notes] Project Notes Updated — [list with what changed per project] Related Notes (proposed) — [per-project candidates; awaiting approval] Carry Forward — [what matters tomorrow] Quick Wrap — [draft answers if section empty] ```
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.