Skip to main content

grade-report

Use when analyzing class grades — анализ успеваемости класса, отчёт по успеваемости, средний балл, качество знаний, группа риска. Accepts XLSX/CSV from electronic journals (МЭШ, Дневник.ру, ЭлЖур, Сетевой Город) or simple `ФИО,5,4,3,...`. ФИО анонимизированы в LLM-промптах.

Zur Installation springen

Quellinformationen

Repository
knottasoft/teacher-assistant
Letzte Quellaktivität
27. April 2026 um 23:45
Erkannte Sprache von SKILL.md
Russisch
Sterne
0
Forks
0

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
2 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
grade-report
description
Use when analyzing class grades — анализ успеваемости класса, отчёт по успеваемости, средний балл, качество знаний, группа риска. Accepts XLSX/CSV from electronic journals (МЭШ, Дневник.ру, ЭлЖур, Сетевой Город) or simple `ФИО,5,4,3,...`. ФИО анонимизированы в LLM-промптах.
argument-hint
[путь к XLSX/CSV/JSON, или 'ввести вручную']
allowed-tools
Read, Write, Skill, mcp__plugin_teacher-assistant_teacher__grade_analytics
# Анализ успеваемости и отчёт Данные: $ARGUMENTS ## Принципы 1. **Учительский UX:** учитель не должен ничего пересохранять. Принимаем XLSX напрямую из электронного журнала (МЭШ, Дневник.ру, Сетевой Город, ЭлЖур), а также CSV/TSV/JSON. 2. **Анонимизация в LLM-промпте:** в общении с моделью используем псевдонимы `Ученик #1`, `Ученик #2`, ... — реальные ФИО приходят из инструмента только в `name_map` и **никогда** не отправляются в LLM-сообщения. Реальные имена попадают только в локальный файл-отчёт через `Write`. 3. **Двухслойный анализ:** статистика (числовая) + аналитика поверх (паттерны, динамика). Чётко разделяй: «слой 1 — что считает grade_analytics», «слой 2 — что увидел я как читатель данных». ## Шаги ### Шаг 1. Получить данные - Если в `$ARGUMENTS` путь к файлу — переходи к шагу 2. - Если «ввести вручную» — предложи учителю упрощённый формат `ФИО,оценка1,оценка2,...` и сохрани во временный CSV. ### Шаг 2. Вызвать grade_analytics ``` mcp__plugin_teacher-assistant_teacher__grade_analytics( data_path: "<file>", metrics: ["average", "quality", "success_rate", "distribution", "students_at_risk", "top_students", "attendance"], anonymize: true // ← по умолчанию true; не отключай, если учитель явно не попросит ) ``` Если учитель явно спросит **за конкретный период** или **по конкретному типу работ**, добавь параметры: ``` period: "q2" // или date_from / date_to для произвольного диапазона work_type: ["КС", "КР"] // например, только классные сочинения и контрольные ``` ### Шаг 3. Fallback при `total_students == 0` Если grade_analytics вернул пустой результат — это значит формат файла непривычный (новая система или ручной XLSX). Не показывай ошибку учителю, сделай тихий fallback: 1. **Прочитай файл напрямую** через `Read` (для XLSX используй `Read` с извлечением текста; для CSV — текстовое чтение). 2. **Нормализуй данные «по смыслу»:** в твоём контексте есть ФИО и последовательности отметок 2-5/Н/Б. Преобразуй в простой формат `ФИО,оценка1,оценка2,...` и запиши во временный файл `/tmp/grades_normalized_<класс>.csv` через `Write`. 3. **Повторно вызови** `grade_analytics` с этим временным файлом. 4. Учителю показывай результат как обычно — не упоминай fallback. ### Шаг 4. Сформировать отчёт Структура отчёта (см. подробный шаблон в `templates/grade-report.md`): #### 1. Общая статистика - средний балл по классу, - качество знаний (% на 4-5), - успеваемость (% без 2), - распределение отметок (5, 4, 3, 2), - посещаемость (Н/Б) если есть. #### 2. Индивидуальный анализ — слой 1 (по статистике) - ученики на 4-5 (`top_students`) — рекомендация: олимпиады, проекты, роль наставника; - хорошисты, среднеуспевающие, на грани (между 3.0 и 3.5) — мониторинг; - группа риска (`students_at_risk` с `reason: "low_average"`) — индивидуальная работа, дифференциация; - не-аттестованные (`reason: "not_attested"`) — выяснить причины, организовать индивидуальную аттестацию. #### 3. Индивидуальный анализ — слой 2 (паттерны, поверх статистики) То, что не видит базовая статистика, но видит читатель данных. Применяй **только если в данных есть даты** (поле `date` у grades): - **синхронные изменения** — несколько учеников показывают одинаковую динамику (например, у 4 учеников после 7-го урока — провал). Сформулируй педагогические гипотезы (общее событие, психологическая реакция на формат работы, социальная динамика). Никогда не утверждай причину — предлагай для проверки классным руководителем. - **прогресс отдельного ученика** — оценки растут от начала к концу периода. Это часто упускается за усреднением. - **провалы по типу работ** — например, если средний по `work_type=КС` на 1 балл ниже общего, это сигнал по подготовке к сочинениям. #### 4. Рекомендации (содержательные приоритеты для учителя) #### 5. Сводная карточка для пятиминутной планёрки с завучем #### 6. Что делал плагин и где заканчивается его ответственность Дай учителю явное разделение «слой 1 — числовая статистика плагина», «слой 2 — анализ ИИ поверх данных». И зафиксируй: «истинную причину аномалий определит только живой разговор с детьми». ### Шаг 5. Анонимизация в LLM ↔ ФИО в файле Внутри ответов и обоснований используй псевдонимы из основного вывода grade_analytics («Ученик #1»). При записи итогового MD-отчёта в файл учителя — **разреши себе** использовать реальные ФИО из `name_map`, потому что файл локальный, не отправляется в LLM. Технически: 1. собери текст отчёта с псевдонимами, 2. в самый последний шаг перед `Write` сделай замену `Ученик #N → name_map["Ученик #N"]` локально, 3. запиши файл `отчёт_успеваемость_<класс>.md`. Если учитель попросит DOCX — вызови встроенный `anthropic-skills:docx` с параметрами ГОСТ из [.claude/rules/document-formatting.md](../../.claude/rules/document-formatting.md). Если учитель явно сказал «работай с псевдонимами и в файле» (например, для отправки во внешнюю систему) — оставь псевдонимы. ### Шаг 6. Self-validation перед завершением Перед тем как сообщить учителю «готово», убедись, что в выходном MD-отчёте есть: - [x] Класс - [x] Предмет (явно или из metadata) - [x] Период (II четверть, или диапазон дат) - [x] Привязка к нормативной базе (ФГОС / ФОП / ФРП) - [x] Чётко обозначенный слой 1 vs слой 2 (что от плагина, что от ИИ) - [x] Рекомендации, не диагнозы - [x] Никаких ФИО реальных учеников **в твоих сообщениях**, только в файле ## Поддерживаемые форматы файлов - **XLSX** — основной путь. Прямой экспорт из ЭлЖур / МЭШ / Дневник.ру / Сетевого Города. С шапкой и multi-line ячейками. - **CSV/TSV** — авто-разделитель `,` `;` `\t`; авто-кодировка UTF-8 / UTF-8 BOM / Windows-1251. - **Простой CSV** `ФИО,5,4,3,...` — для быстрых вводов. - **JSON** `[{student, grades}]` — для интеграций. ## Шаблоны отчётов `templates/grade-report.md` — структура с примерами заполнения. ## Эталонный кейс `/test-fixtures/grades/grades_8b_literature_q2_full.csv` (8Б, литература, II четверть 2025-2026): 25 учеников, 334 отметки, средний 3.22, в данных заложен паттерн «синхронное снижение четвёрки» — учеников 8Б-13..16 после 7-го урока. Хороший плагин-ИИ должен этот паттерн увидеть.
Auf GitHub ansehen