Generates a weekly review block in the weekly note: completed tasks, hot themes from daily notes, active project progress, unresolved threads, and 2 reflection questions. Creates the weekly note if it doesn't exist. INVOKE when the user wants a weekly review or week summary. Triggers: 'weekly review', 'week summary', 'итоги недели', 'недельный обзор', 'обзор недели', 'что за неделю'.
Generates a weekly review without asking questions. Scans vault data and writes a [!weekly-review]- block into the weekly note, then appends a minimal space for the user's own reflections.
Before generating any content, detect the user's writing language. Read the 5 most recent daily notes (periodic/daily/YYYY-MM-DD.md). In non-frontmatter, non-wikilink, non-tag text, count Cyrillic vs Latin characters. If Cyrillic > 30% → write the entire review in Russian. Otherwise → English.
Apply to ALL section headers, metric labels, inference lines (→), and participation prompts. Callout types ([!weekly-review]) and wikilinks remain unchanged regardless of detected language.
Path: periodic/weekly/YYYY-WWW.md
Compute week and parent month (cross-platform, using obsidian eval):
# Current ISO 8601 week e.g. 2026-W08
obsidian eval code="(function(){const d=new Date();const dt=new Date(Date.UTC(d.getFullYear(),d.getMonth(),d.getDate()));const day=dt.getUTCDay()||7;dt.setUTCDate(dt.getUTCDate()+4-day);const y=dt.getUTCFullYear();const ys=new Date(Date.UTC(y,0,1));const w=Math.ceil(((dt-ys)/86400000+1)/7);return y+'-W'+String(w).padStart(2,'0')})()"
# Parent month e.g. 2026-02
obsidian eval code="const d=new Date();d.getFullYear()+'-'+String(d.getMonth()+1).padStart(2,'0')"
Frontmatter (exact from template):
---