Przejdź do treści
Biblioteka skilli
Edukacja · Analiza

fluent-progress

/fluent-progress

Pokazuje postępy w nauce języka: statystyki, poziomy opanowania, serię dni i osiągnięcia, tylko do odczytu.

Autor
m98 ↗
Repozytorium
fluent ↗
Licencja
MIT
Ostatnia zmiana repozytorium
15.06.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
2
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 15.06.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Pokazuje postępy w nauce języka: statystyki, poziomy opanowania, serię dni i osiągnięcia, tylko do odczytu.

Wyzwalacze z opisu

how am I doingshow my progressstatsdashboardwhathow many words have I learned
Oryginalny opis (EN)

Show the learner's language learning progress, statistics, mastery levels, streak, and achievements. Use when the learner asks "how am I doing", "show my progress", "stats", "dashboard", "what's my streak", "how many words have I learned", or invokes /fluent-progress. Read-only — safe to auto-invoke.

Jak działa

  1. Overview
  2. When to Use
  3. Instructions
  4. Examples
  5. Critical Rules
  6. Why This Skill Auto-Invokes
Sekcje z nagłówków SKILL.md, w oryginale · 220 linii, 809 słów
Podgląd SKILL.md
---
name: fluent-progress
description: Show the learner's language learning progress, statistics, mastery levels, streak, and achievements. Use when the learner asks "how am I doing", "show my progress", "stats", "dashboard", "what's my streak", "how many words have I learned", or invokes /fluent-progress. Read-only — safe to auto-invoke.
allowed-tools: Read, Bash
---

# Progress Dashboard

## Overview

Show the learner a comprehensive, personalized progress report with visual statistics, skill mastery levels, trends, and next goals. This is read-only: do not modify any database files.

## When to Use

Trigger this skill when:

- Learner types `/fluent-progress`.
- Learner asks about their progress, statistics, streak, mastery, achievements, or how they're improving.
- Learner asks "how am I doing", "show me my stats", "am I getting better".
- After a session ends, if the learner wants a broader view than the session summary.

Skip this skill when the learner is mid-practice — the ongoing session skill already shows per-turn feedback, and opening the full dashboard interrupts the flow.

## Instructions

### 1. Load all 6 databases

Prefer the helper script over manual Read calls:

```bash
python3 "${CLAUDE_PLUGIN_ROOT:-${CLAUDE_PROJECT_DIR:-.}}/.claude/hooks/read-db.py"
```

This returns a single JSON with all 6 databases + computed fields (`due_reviews_count`, `next_session_id`, `streak_active`, `days_since_last_session`).

If the helper is unavailable, fall back to reading each file directly. Resolve the data directory via `fluent_paths.data_dir()` first — do NOT hardcode `data/` (plugin installs store data under `~/.claude/fluent-data/`):

- `<data_dir>/learner-profile.json`
- `<data_dir>/progress-db.json`
- `<data_dir>/mastery-db.json`
- `<data_dir>/mistakes-db.json`
- `<data_dir>/spaced-repetition.json`
- `<data_dir>/session-log.json`

If any are missing, point the learner at `/fluent-setup` and stop.

### 2. Generate the report

Use this exact structure. Fill in values from the databases; compute percentages and progress bars yourself.

```markdown
# 📊 {learner_name}'s {target_language} Learning Dashboard

**Last Updated:** {today}

---

## 🎯 Overview

**Current Level:** {current_level}
**Target Level:** {target_level}
**Progress to {next_level}:** {progress_bar} {percentage}%

**Days Studying:** {total_days}
**Current Streak:** 🔥 {streak_days} {day_or_days} {streak_message}
**Total Sessions:** {total_sessions}
**Total Study Time:** {total_minutes} minutes ({hours} hours)

---

## 💪 Skills Mastery

### Writing ✍️
**Level:** {n}/5 {stars}
**Accuracy:** {percent}%
**Progress:** {progress_bar}
**Last Practiced:** {date_or_never}

### Speaking 🗣️
**Level:** {n}/5 {stars}
**Accuracy:** {percent}%
**Progress:** {progress_bar}
**Last Practiced:** {date_or_never}

### Vocabulary 📚
**Level:** {n}/5 {stars}
**Words Known:** {count}
**Words Mastered:** {count}
**Progress:** {progress_bar}
**Last Practiced:** {date_or_never}

### Reading 👀
**Level:** {n}/5 {stars}
**Comprehension:** {percent}%
**Progress:** {progress_bar}
**Last Practiced:** {date_or_never}

---

## 📈 Progress Trends

### Accuracy Over Time
{generate ASCII chart from progress-db weekly_summary}

### This Week's Summary
- **Sessions:** {count}
- **Minutes:** {total}
- **Exercises:** {count}
- **Accuracy:** {percent}%
- **Skills Practiced:** {list}

---

## 🎯 Focus Areas

### 🔴 Critical (Needs Urgent Attention)
{patterns from mistakes-db with mastery 0-1 and high frequency}

### 🟡 Working On (Making Progress)
{patterns from mistakes-db with mastery 2-3}

### 🟢 Strong (Almost Mastered)
{patterns from mistakes-db with mastery 4-5}

---

## 🔄 Spaced Repetition Status

**Items Due Today:** {count}
**Items Due This Week:** {count}
**Items Mastered:** {count}

---

## 🏆 Achievements Unlocked

{list from learner-profile → achievements, show locked ones with 🔒}

---

## 📅 Session History

| Date | Duration | Skill | Accuracy |
|------|----------|-------|----------|
{most recent 5-10 sessions from session-log}

---

## 🎯 Next Goals

**Short-term (This Week):**
{derive from weak patterns + due reviews}

**Medium-term (This Month):**
{derive from skill mastery gaps}

**Long-term:**
{derive from target level gap}

---

## 💡 Recommendations

1. {top weak area from mistakes-db}
2. {skill not practiced recently}
3. {due review count if > 0}

---

"{personalized motivational message}"
```

### 3. Optional interpretation footer

Append this only if the learner seems new or asks what the numbers mean:

```markdown
## 📖 How to Read Your Stats

**Mastery Levels:**
- ⭐☆☆☆☆ (1/5): Just started
- ⭐⭐☆☆☆ (2/5): Learning
- ⭐⭐⭐☆☆ (3/5): Good
- ⭐⭐⭐⭐☆ (4/5): Strong
- ⭐⭐⭐⭐⭐ (5/5): Mastered

**Accuracy bands:** 0-40% intensive, 40-60% learning, 60-75% good, 75-85% strong, 85%+ excellent.
```

## Examples

### Example 1 — minimal (A1 learner, week 1)

> # 📊 Mohammad's Dutch Learning Dashboard
>
> **Current Level:** A1 → A2 (4% to A2)
> **Current Streak:** 🔥 3 days
> **Total Sessions:** 3 · 45 min
>
> ### Vocabulary 📚
> **Level:** 1/5 ⭐☆☆☆☆ · 12 words known · 0 mastered
>
> Speaking / Writing / Reading: Not yet practiced.
>
> **Items Due Today:** 6 — run `/fluent-review` first.
>
> "Three days in a row — momentum matters. Keep going!"

### Example 2 — trigger on natural-language question

Learner: "how am I doing on Dutch?" → auto-invoke this skill, render the full dashboard.

## Critical Rules

- **Read-only.** Never call `update-db.py` or edit any JSON in `data/`.
- **Use the current streak value** from `learner-profile.json`. Never guess or increment.
- **Use `day` vs `days`** correctly (1 = day, else days).
- **Skip sections with no data.** If speaking hasn't been practiced, show "Not yet practiced" — don't fabricate numbers.
- **Cite the learner by name** from `learner-profile.json`.
- **Use target-language greetings** where natural (e.g. "Goed gedaan!" for Dutch).

## Why This Skill Auto-Invokes

Unlike session commands, this is a pure read. A false-positive (Claude opens the dashboard when the learner asked something else) costs only a few tokens — no DB corruption, no interrupted practice. Worth the lower trigger bar.
Pliki w paczce (2)
  • SKILL.md 6 KB
  • evals/evals.json 3 KB

Wersje

W bazie nie ma innych skilli o nazwie fluent-progress.

Migawka bazy z 28.10.2026 · wersja paczki ee618f275ea0 (skrót SHA-256 całej paczki)

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100fluent-setup
    Prowadzi jednorazowy onboarding tworzący profil nauki języka: imię, języki, poziom CEFR, termin, minuty dziennie i cele; obsługuje też aktualizacje i reset profilu.
  • 100fluent-learn
    Prowadzi adaptacyjną sesję nauki języka, która miesza pisanie, mówienie, słownictwo i czytanie według poziomu, słabych wzorców i powtórek.
  • 100review
    Pokazuje postępy w nauce i dane z quizów, wskazuje słabe obszary i podpowiada, czego uczyć się dalej, na podstawie wyników.
  • 90learning-retrospective
    Przegląda postępy w nauce po osiągnięciu kamienia milowego, gdy trzeba je podsumować.
  • 90duo-learner-motivation
    Pomaga utrzymać motywację osób, które uważają, że są w czymś słabe: obniża koszt widocznego błędu i zamienia porażki w informację.
  • 96fluent-cli
    Pomaga budować aplikacje i pobierać dane w ServiceNow przez Fluent (now-sdk).

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.