← ClaudeAtlas

okr-progress-narratorlisted

Transform raw OKR data (metrics, percentages, notes) from files or pasted text into a readable narrative progress update for stakeholders. Use when preparing weekly or quarterly OKR reports, board updates, or team syncs. Triggers: 'okr update', 'narrate okr progress', 'stakeholder okr update', 'generate okr report', 'okr status update', 'окр апдейт', 'нарратив по OKR', 'прогресс-апдейт для стейкхолдеров', 'оформи OKR', 'прогресс по целям'.
KirKruglov/claude-skills-kit · ★ 9 · Data & Documents · score 82
Install: claude install-skill KirKruglov/claude-skills-kit
# OKR Progress Narrator This skill takes raw OKR data — tables, lists, or free-form notes with objectives, key results, current values, and targets — and converts them into a structured narrative progress update in `okr-update-YYYY-MM-DD.md`. The output is designed to be shared directly with stakeholders: executive summary, per-objective narrative, KR status table, risks, and next steps. **Input:** - OKR data as a file (`.md`, `.txt`, `.csv`) or pasted text in chat - Optional: period label (Q1 2026, Sprint 12), audience (CEO, board, team), tone **Output:** - `okr-update-YYYY-MM-DD.md` — narrative update with executive summary, per-objective sections, and risk block --- ## Language Detection Detect the user's language from their message and OKR data: - If Russian (or Cyrillic content): respond and write the output document in Russian, using the output template below with translated section headers (e.g., "Итоговая сводка", "Цели", "Ключевые риски", "Следующие шаги") - If English: respond and write the output document in English with standard headers - If ambiguous: use the language of the trigger phrase - Translate objective/KR names to the output language if the source is mixed-language --- ## Instructions ### Step 1: Validate and Parse Input 1. Identify the input source: - **File path provided:** Read the file. Supported formats: `.md`, `.txt`, `.csv` - **Text pasted in chat:** Use the message content directly - **No input provided:** Ask the user via AskU