@dzhechkov/skills-academic 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/answer-assessor/SKILL.md +121 -0
- package/answer-assessor/evals/answer-assessor.yaml +75 -0
- package/answer-assessor/schemas/output.json +111 -0
- package/answer-assessor/scripts/validate-config.json +34 -0
- package/defense-evaluator/SKILL.md +136 -0
- package/defense-evaluator/evals/defense-evaluator.yaml +77 -0
- package/defense-evaluator/schemas/output.json +136 -0
- package/defense-evaluator/scripts/validate-config.json +35 -0
- package/dissertation-review/SKILL.md +211 -0
- package/dissertation-review/evals/dissertation-review.yaml +78 -0
- package/dissertation-review/schemas/output.json +93 -0
- package/dissertation-review/scripts/validate-config.json +37 -0
- package/document-checker/SKILL.md +181 -0
- package/document-checker/evals/document-checker.yaml +53 -0
- package/document-checker/schemas/output.json +114 -0
- package/document-checker/scripts/validate-config.json +45 -0
- package/package.json +32 -0
- package/question-generator/SKILL.md +196 -0
- package/question-generator/evals/question-generator.yaml +69 -0
- package/question-generator/schemas/output.json +87 -0
- package/question-generator/scripts/validate-config.json +49 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "defense-evaluator output",
|
|
4
|
+
"description": "Structured output from the defense-evaluator skill",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": ["status", "duration_minutes", "structure", "delivery_quality", "overall_impression"],
|
|
7
|
+
"properties": {
|
|
8
|
+
"status": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"enum": ["success", "error", "skipped"]
|
|
11
|
+
},
|
|
12
|
+
"duration_minutes": {
|
|
13
|
+
"type": "number",
|
|
14
|
+
"description": "Estimated presentation duration in minutes"
|
|
15
|
+
},
|
|
16
|
+
"structure": {
|
|
17
|
+
"type": "object",
|
|
18
|
+
"required": ["introduction", "relevance", "goals_and_tasks", "methodology", "results", "conclusion"],
|
|
19
|
+
"properties": {
|
|
20
|
+
"introduction": {
|
|
21
|
+
"type": "boolean",
|
|
22
|
+
"description": "Student introduced themselves and stated the topic"
|
|
23
|
+
},
|
|
24
|
+
"relevance": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"description": "Relevance / importance of the topic was explained"
|
|
27
|
+
},
|
|
28
|
+
"goals_and_tasks": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"description": "Goals and tasks were clearly formulated"
|
|
31
|
+
},
|
|
32
|
+
"methodology": {
|
|
33
|
+
"type": "boolean",
|
|
34
|
+
"description": "Research methodology was described"
|
|
35
|
+
},
|
|
36
|
+
"results": {
|
|
37
|
+
"type": "boolean",
|
|
38
|
+
"description": "Concrete results with data were presented"
|
|
39
|
+
},
|
|
40
|
+
"conclusion": {
|
|
41
|
+
"type": "boolean",
|
|
42
|
+
"description": "Conclusion with practical significance was provided"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"topic_coverage": {
|
|
47
|
+
"type": "object",
|
|
48
|
+
"properties": {
|
|
49
|
+
"matches_stated_topic": {
|
|
50
|
+
"type": "boolean",
|
|
51
|
+
"description": "Content aligns with the stated thesis topic"
|
|
52
|
+
},
|
|
53
|
+
"key_results_covered": {
|
|
54
|
+
"type": "boolean",
|
|
55
|
+
"description": "All key results from the thesis were mentioned"
|
|
56
|
+
},
|
|
57
|
+
"omissions": {
|
|
58
|
+
"type": "array",
|
|
59
|
+
"items": { "type": "string" },
|
|
60
|
+
"description": "Significant omissions from the thesis not mentioned in the presentation"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"delivery_quality": {
|
|
65
|
+
"type": "object",
|
|
66
|
+
"required": ["logic", "material_command", "specificity"],
|
|
67
|
+
"properties": {
|
|
68
|
+
"logic": {
|
|
69
|
+
"type": "string",
|
|
70
|
+
"enum": ["high", "medium", "low"],
|
|
71
|
+
"description": "Logical flow of the presentation"
|
|
72
|
+
},
|
|
73
|
+
"material_command": {
|
|
74
|
+
"type": "string",
|
|
75
|
+
"enum": ["free_speech", "partial", "reading"],
|
|
76
|
+
"description": "How well the student commands the material"
|
|
77
|
+
},
|
|
78
|
+
"specificity": {
|
|
79
|
+
"type": "string",
|
|
80
|
+
"enum": ["data_and_facts", "general_phrases"],
|
|
81
|
+
"description": "Level of concrete data, facts, examples"
|
|
82
|
+
},
|
|
83
|
+
"terminology": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"enum": ["correct", "inconsistent", "avoids"],
|
|
86
|
+
"description": "Use of domain-specific terminology"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"thesis_alignment": {
|
|
91
|
+
"type": "object",
|
|
92
|
+
"properties": {
|
|
93
|
+
"contradictions_found": {
|
|
94
|
+
"type": "boolean",
|
|
95
|
+
"description": "Whether contradictions between presentation and thesis were found"
|
|
96
|
+
},
|
|
97
|
+
"contradictions": {
|
|
98
|
+
"type": "array",
|
|
99
|
+
"items": { "type": "string" },
|
|
100
|
+
"description": "List of contradictions between the presentation and the thesis"
|
|
101
|
+
},
|
|
102
|
+
"reviewer_remarks_addressed": {
|
|
103
|
+
"type": "boolean",
|
|
104
|
+
"description": "Whether supervisor/reviewer remarks were addressed in the presentation"
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"additional_questions": {
|
|
109
|
+
"type": "array",
|
|
110
|
+
"items": {
|
|
111
|
+
"type": "object",
|
|
112
|
+
"required": ["question"],
|
|
113
|
+
"properties": {
|
|
114
|
+
"question": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"description": "Question arising from the presentation"
|
|
117
|
+
},
|
|
118
|
+
"reason": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"description": "Why this question is relevant"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"description": "Additional questions generated from the presentation analysis"
|
|
125
|
+
},
|
|
126
|
+
"overall_impression": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"enum": ["strong", "average", "weak"],
|
|
129
|
+
"description": "Overall impression of the defense presentation"
|
|
130
|
+
},
|
|
131
|
+
"summary": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"description": "Free-text summary of the evaluation"
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "defense-evaluator config validator",
|
|
4
|
+
"description": "Validates configuration inputs for the defense-evaluator skill",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"transcript_path": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Path to the defense transcript file (e.g. transcript.txt)"
|
|
10
|
+
},
|
|
11
|
+
"thesis_path": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"description": "Path to the thesis document for cross-referencing"
|
|
14
|
+
},
|
|
15
|
+
"supervisor_review_path": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"description": "Path to the supervisor review for checking remarks coverage"
|
|
18
|
+
},
|
|
19
|
+
"external_review_path": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"description": "Path to the external reviewer report"
|
|
22
|
+
},
|
|
23
|
+
"expected_duration_minutes": {
|
|
24
|
+
"type": "number",
|
|
25
|
+
"default": 20,
|
|
26
|
+
"description": "Expected presentation duration in minutes"
|
|
27
|
+
},
|
|
28
|
+
"realtime": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"default": false,
|
|
31
|
+
"description": "Whether the transcript is being updated in real-time"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"required": ["transcript_path"]
|
|
35
|
+
}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "dissertation-review"
|
|
3
|
+
description: "Analyzes master's thesis against ГЭК evaluation criteria — structure, methodology, novelty, and practical significance."
|
|
4
|
+
trust_tier: 2
|
|
5
|
+
trust_tier_label: "Validated"
|
|
6
|
+
validation:
|
|
7
|
+
schema_path: schemas/output.json
|
|
8
|
+
validator_path: scripts/validate-config.json
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Рецензирование ВКР (магистерская диссертация)
|
|
12
|
+
|
|
13
|
+
Skill для подготовки члена ГЭК к защите ВКР. Содержит только критерии оценки и методику анализа из публичного регламента ГЭК. Персональные данные студентов обрабатываются только в runtime при применении skill'а к конкретным материалам.
|
|
14
|
+
|
|
15
|
+
## Когда использовать
|
|
16
|
+
|
|
17
|
+
- Подготовка к заседанию ГЭК — предварительный анализ ВКР до защиты
|
|
18
|
+
- Оценка текста ВКР по утверждённым критериям
|
|
19
|
+
- Формирование краткой справки по работе для члена комиссии
|
|
20
|
+
- Сопоставление выводов с замечаниями руководителя и рецензента
|
|
21
|
+
- Определение предварительной оценки перед обсуждением на закрытом заседании
|
|
22
|
+
|
|
23
|
+
## Когда НЕ использовать
|
|
24
|
+
|
|
25
|
+
- Для написания или редактирования ВКР за студента
|
|
26
|
+
- Для подготовки самого студента к защите (skill для члена ГЭК, не для студента)
|
|
27
|
+
- Для оценки без прочтения полного текста ВКР
|
|
28
|
+
|
|
29
|
+
## Протокол
|
|
30
|
+
|
|
31
|
+
### Шаг 1: Определить формат ВКР
|
|
32
|
+
|
|
33
|
+
| Формат | Признаки | Акцент оценки |
|
|
34
|
+
|--------|---------|---------------|
|
|
35
|
+
| **Исследовательский** | Гипотеза, эксперимент, научные результаты | Методология, новизна, корректность выводов |
|
|
36
|
+
| **Проектный** | Бизнес-проблема, организация, рекомендации | Анализ среды, обоснованность решений, эффект от внедрения |
|
|
37
|
+
|
|
38
|
+
### Шаг 2: Оценить по критериям (исследовательский формат)
|
|
39
|
+
|
|
40
|
+
| Критерий | На что смотреть | Сигналы проблем |
|
|
41
|
+
|----------|----------------|-----------------|
|
|
42
|
+
| Формулировка проблемы | Чёткая, конкретная, соответствует программе | Расплывчатая тема, нет связи с профилем ОП |
|
|
43
|
+
| Структура работы | Логичные разделы, пропорциональность | Главы несоразмерны, отсутствует раздел |
|
|
44
|
+
| Логика изложения | Последовательность аргументации | Перескакивание между темами, выводы не следуют из анализа |
|
|
45
|
+
| Терминологический аппарат | Определения даны, используются единообразно | Термины без определения, путаница в понятиях |
|
|
46
|
+
| Соответствие методов целям | Методы обоснованы, релевантны задачам | Метод выбран без обоснования, не подходит для данных |
|
|
47
|
+
| Глубина анализа данных | Достаточный объём данных, корректная обработка | Мало данных, поверхностный анализ, нет статистики |
|
|
48
|
+
| Корректность методов | Правильное применение выбранных методов | Ошибки в расчётах, неверная интерпретация |
|
|
49
|
+
| Практическая значимость / новизна | Вклад в науку или практику, оригинальность | Компиляция без нового, повтор известных результатов |
|
|
50
|
+
| Перспективы исследования | Указаны направления развития | Нет указания на дальнейшие шаги |
|
|
51
|
+
|
|
52
|
+
### Шаг 3: Оценить по критериям (проектный формат)
|
|
53
|
+
|
|
54
|
+
| Критерий | На что смотреть | Сигналы проблем |
|
|
55
|
+
|----------|----------------|-----------------|
|
|
56
|
+
| Анализ бизнес-среды | Глубокий анализ организации, отрасли | Поверхностное описание, нет данных |
|
|
57
|
+
| Формулировка проблемы | Чёткая бизнес-проблема в конкретной организации | Абстрактная проблема без привязки к организации |
|
|
58
|
+
| Теоретический обзор | Релевантные теории, связь с проблемой | Обзор ради обзора, нет связи с практикой |
|
|
59
|
+
| Качество исследования | Достаточность данных, достоверность, методология | Мало респондентов, нерепрезентативная выборка |
|
|
60
|
+
| Выводы и рекомендации | Обоснованные, реализуемые, с оценкой эффекта | Общие рекомендации без конкретики и оценки |
|
|
61
|
+
| Проектные оценки vs данные | TO BE карты (CJM, VSM) явно отделены от AS IS. Прогнозы не выдаются за измерения | TO BE представлено как эмпирический результат без пилотной проверки |
|
|
62
|
+
| Структура и текст | Логика, объём, читабельность, грамматика | Рыхлая структура, опечатки, канцеляризмы |
|
|
63
|
+
| Оформление | Соответствие стандартам (ГОСТ, шаблон вуза) | Нет нумерации, неправильные ссылки |
|
|
64
|
+
|
|
65
|
+
### Шаг 4: Три составляющие оценки
|
|
66
|
+
|
|
67
|
+
Все три обязательны и **равноценны**:
|
|
68
|
+
|
|
69
|
+
1. **Текст ВКР** — оценивается по критериям Шагов 2-3
|
|
70
|
+
2. **Презентация с докладом** — до 20 минут: структура доклада, визуализация данных, уверенность изложения
|
|
71
|
+
3. **Ответы на вопросы** — 10-15 минут: глубина понимания, способность аргументировать, реакция на критику
|
|
72
|
+
|
|
73
|
+
### Шаг 5: Шкала оценок
|
|
74
|
+
|
|
75
|
+
| 5-балльная | Словесная | 10-балльная | Описание |
|
|
76
|
+
|:---:|---------|:---:|---------|
|
|
77
|
+
| 5 | отлично | 8, 9, 10 | Все критерии на высоком уровне, работа выделяется |
|
|
78
|
+
| 4 | хорошо | 6, 7 | Большинство критериев на хорошем уровне, есть мелкие замечания |
|
|
79
|
+
| 3 | удовлетворительно | 4, 5 | Минимально допустимый уровень, существенные замечания |
|
|
80
|
+
| 1, 2 | неудовлетворительно | 1, 2, 3 | Критические недостатки, работа не соответствует требованиям |
|
|
81
|
+
|
|
82
|
+
### Шаг 6: Изучить отзыв руководителя и рецензию
|
|
83
|
+
|
|
84
|
+
1. Прочитать **отзыв руководителя** — выделить:
|
|
85
|
+
- Оценку самостоятельности работы
|
|
86
|
+
- Замечания (на которые студент должен ответить в заключительном слове)
|
|
87
|
+
- Рекомендуемую оценку
|
|
88
|
+
2. Прочитать **рецензию** — выделить:
|
|
89
|
+
- Замечания рецензента
|
|
90
|
+
- Расхождения с мнением руководителя
|
|
91
|
+
- Рекомендуемую оценку
|
|
92
|
+
3. Подготовить вопрос по замечаниям, если студент не ответит на них в заключительном слове
|
|
93
|
+
|
|
94
|
+
### Шаг 7: Сформировать справку
|
|
95
|
+
|
|
96
|
+
Шаблон справки для члена ГЭК:
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
СПРАВКА К ЗАЩИТЕ ВКР
|
|
100
|
+
═══════════════════════════════
|
|
101
|
+
Формат: [исследовательский / проектный]
|
|
102
|
+
Предметная область: [область]
|
|
103
|
+
Тема (краткая суть): [о чём работа в 1-2 предложениях]
|
|
104
|
+
|
|
105
|
+
СИЛЬНЫЕ СТОРОНЫ:
|
|
106
|
+
1. [...]
|
|
107
|
+
2. [...]
|
|
108
|
+
3. [...]
|
|
109
|
+
|
|
110
|
+
СЛАБЫЕ СТОРОНЫ / ЗАМЕЧАНИЯ:
|
|
111
|
+
1. [...]
|
|
112
|
+
2. [...]
|
|
113
|
+
3. [...]
|
|
114
|
+
|
|
115
|
+
ЗАМЕЧАНИЯ РУКОВОДИТЕЛЯ: [кратко]
|
|
116
|
+
ЗАМЕЧАНИЯ РЕЦЕНЗЕНТА: [кратко]
|
|
117
|
+
|
|
118
|
+
ВОПРОСЫ ДЛЯ ОБСУЖДЕНИЯ:
|
|
119
|
+
1. [...]
|
|
120
|
+
2. [...]
|
|
121
|
+
3. [...]
|
|
122
|
+
|
|
123
|
+
ПРЕДВАРИТЕЛЬНАЯ ОЦЕНКА: [5-балл] / [10-балл]
|
|
124
|
+
ОБОСНОВАНИЕ: [1-2 предложения]
|
|
125
|
+
═══════════════════════════════
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Шаг 8: Пограничные оценки — guidance
|
|
129
|
+
|
|
130
|
+
| Ситуация | Рекомендация |
|
|
131
|
+
|----------|-------------|
|
|
132
|
+
| Сильный текст, слабая презентация | Оценка не выше 4 — все три составляющие равноценны |
|
|
133
|
+
| Руководитель ставит "отлично", рецензент "хорошо" | Ориентироваться на собственную оценку, обсудить на закрытом заседании |
|
|
134
|
+
| Студент не ответил на замечания рецензента | Снижение минимум на 1 балл от текстовой оценки |
|
|
135
|
+
| Хорошая работа, но слабые ответы на вопросы | Максимум "хорошо" — ответы показывают реальное понимание |
|
|
136
|
+
| Работа сильная, но оформление плохое | Замечание, но не основание для снижения более чем на 1 балл |
|
|
137
|
+
| Мало времени на чтение | Приоритет: введение → заключение → методология → отзыв + рецензия → основная часть |
|
|
138
|
+
|
|
139
|
+
### Шаг 9: Оценка командных (групповых) проектов
|
|
140
|
+
|
|
141
|
+
Многие ВКР выполняются в команде. Дополнительно проверить:
|
|
142
|
+
|
|
143
|
+
| Критерий | Что проверить | Сигналы проблем |
|
|
144
|
+
|----------|---------------|-----------------|
|
|
145
|
+
| Разграничение вклада | Чётко ли указано что сделал автор, а что команда? | "Мы провели" без уточнения личного вклада |
|
|
146
|
+
| Самостоятельность выводов | Выводы основаны на собственных данных? | Ключевые расчёты делегированы коллеге |
|
|
147
|
+
| Кросс-ссылки | Корректно ли ссылается на работы коллег? | Нет ссылок или некорректные ссылки |
|
|
148
|
+
|
|
149
|
+
### Шаг 10: Чеклист финансовой модели (проектный формат)
|
|
150
|
+
|
|
151
|
+
| Элемент | Типичные ошибки |
|
|
152
|
+
|---------|-----------------|
|
|
153
|
+
| Конверсии | Завышены без обоснования бенчмарками |
|
|
154
|
+
| CAC | Занижен, не учтены скрытые расходы |
|
|
155
|
+
| LTV/CAC | > 10 — подозрительно на ранней стадии |
|
|
156
|
+
| Ставка дисконтирования | 15% для посевной стадии (реально 25-40%) |
|
|
157
|
+
| Сценарный анализ | Только один оптимистичный сценарий |
|
|
158
|
+
| Когортный анализ | Средний churn без декомпозиции по когортам |
|
|
159
|
+
|
|
160
|
+
### Шаг 11: Расхождение оценок руководителя и рецензента
|
|
161
|
+
|
|
162
|
+
| Расхождение | Интерпретация |
|
|
163
|
+
|-------------|---------------|
|
|
164
|
+
| 0-1 балл | Нормально |
|
|
165
|
+
| 2 балла | Разные приоритеты — обратить внимание |
|
|
166
|
+
| 3+ балла | Обсудить на закрытом заседании |
|
|
167
|
+
|
|
168
|
+
## Рекомендуемый workflow
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
1. document-checker → проверить комплектность пакета
|
|
172
|
+
2. dissertation-review → проанализировать содержание ВКР
|
|
173
|
+
3. question-generator → подготовить вопросы к защите
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Антипаттерны
|
|
177
|
+
|
|
178
|
+
| Антипаттерн | Почему это проблема | Правильный подход |
|
|
179
|
+
|-------------|--------------------|--------------------|
|
|
180
|
+
| Оценивать только текст | Три составляющие равноценны | Оценивать текст + презентацию + ответы |
|
|
181
|
+
| Не читать отзыв и рецензию | Не знаете замечания, не можете проверить ответы студента | Всегда читать до защиты |
|
|
182
|
+
| Задавать вопросы не по теме | Регламент: вопросы связаны с темой ВКР или близко к ней | Формулировать вопросы из содержания работы |
|
|
183
|
+
| Перебивать студента | Нарушение регламента (20 минут без прерывания) | Дождаться завершения доклада |
|
|
184
|
+
| Ставить оценку до обсуждения | Необъективность, давление на комиссию | Обсуждать на закрытом заседании, голосовать |
|
|
185
|
+
| Не фиксировать вопросы | Потеря информации для протокола | Записывать вопросы в черновой лист |
|
|
186
|
+
| Принимать TO BE за измеренный результат | Проектная карта (CJM TO BE, VSM TO BE) — это гипотеза, не эмпирика. Выдача прогноза за результат — методологическая ошибка | Проверить: явно ли студент отделяет проектные оценки от измеренных данных? Есть ли пилотная проверка? |
|
|
187
|
+
|
|
188
|
+
## Самопроверка
|
|
189
|
+
|
|
190
|
+
- [ ] Определён ли формат ВКР (исследовательский/проектный)?
|
|
191
|
+
- [ ] Все ли критерии соответствующего формата проверены?
|
|
192
|
+
- [ ] Каждому критерию дана оценка (а не просто "прочитано")?
|
|
193
|
+
- [ ] Прочитан ли отзыв руководителя? Выделены ли замечания?
|
|
194
|
+
- [ ] Прочитана ли рецензия? Выделены ли замечания?
|
|
195
|
+
- [ ] Подготовлены ли 3-5 вопросов к студенту?
|
|
196
|
+
- [ ] Справка содержит и сильные, и слабые стороны?
|
|
197
|
+
- [ ] Предварительная оценка обоснована?
|
|
198
|
+
- [ ] Оценка учитывает все три составляющие?
|
|
199
|
+
- [ ] Вопросы связаны с темой ВКР?
|
|
200
|
+
|
|
201
|
+
## Примеры
|
|
202
|
+
|
|
203
|
+
**В рамках задачи:**
|
|
204
|
+
- "Проанализируй ВКР по критериям исследовательского формата и сформируй справку"
|
|
205
|
+
- "Сопоставь замечания рецензента с выводами работы — есть ли противоречия?"
|
|
206
|
+
- "Оцени методологию: обоснован ли выбор метода для данной задачи?"
|
|
207
|
+
- "Подготовь предварительную оценку по 10-балльной шкале с обоснованием"
|
|
208
|
+
|
|
209
|
+
**Вне задачи:**
|
|
210
|
+
- "Напиши диссертацию за студента" — skill анализирует, не пишет
|
|
211
|
+
- "Помоги студенту подготовиться к защите" — skill для члена ГЭК, не для студента
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# dissertation-review evaluation
|
|
2
|
+
# Run: aqe eval dissertation-review
|
|
3
|
+
|
|
4
|
+
test_cases:
|
|
5
|
+
- name: "basic invocation"
|
|
6
|
+
input: "Проанализируй ВКР"
|
|
7
|
+
expected:
|
|
8
|
+
status: success
|
|
9
|
+
summary_contains: "dissertation-review"
|
|
10
|
+
|
|
11
|
+
- name: "research format detection"
|
|
12
|
+
input: "Оцени исследовательскую ВКР на тему 'Влияние цифровой трансформации на управление знаниями'"
|
|
13
|
+
expected:
|
|
14
|
+
status: success
|
|
15
|
+
has_fields:
|
|
16
|
+
- format
|
|
17
|
+
- criteria_scores
|
|
18
|
+
- recommended_grade
|
|
19
|
+
|
|
20
|
+
- name: "project format detection"
|
|
21
|
+
input: "Оцени проектную ВКР на тему 'Разработка стратегии выхода компании на новый рынок'"
|
|
22
|
+
expected:
|
|
23
|
+
status: success
|
|
24
|
+
format: project
|
|
25
|
+
has_fields:
|
|
26
|
+
- criteria_scores
|
|
27
|
+
- strengths
|
|
28
|
+
- weaknesses
|
|
29
|
+
|
|
30
|
+
- name: "grading on both scales"
|
|
31
|
+
input: "Дай оценку ВКР по 5-балльной и 10-балльной шкале"
|
|
32
|
+
expected:
|
|
33
|
+
status: success
|
|
34
|
+
has_fields:
|
|
35
|
+
- recommended_grade
|
|
36
|
+
recommended_grade_has:
|
|
37
|
+
- five_point
|
|
38
|
+
- ten_point
|
|
39
|
+
- justification
|
|
40
|
+
|
|
41
|
+
- name: "strengths and weaknesses"
|
|
42
|
+
input: "Выдели сильные и слабые стороны работы"
|
|
43
|
+
expected:
|
|
44
|
+
status: success
|
|
45
|
+
has_fields:
|
|
46
|
+
- strengths
|
|
47
|
+
- weaknesses
|
|
48
|
+
min_items:
|
|
49
|
+
strengths: 1
|
|
50
|
+
weaknesses: 1
|
|
51
|
+
|
|
52
|
+
- name: "reviewer remarks extraction"
|
|
53
|
+
input: "Прочитай отзыв руководителя и рецензию, выдели замечания"
|
|
54
|
+
expected:
|
|
55
|
+
status: success
|
|
56
|
+
has_fields:
|
|
57
|
+
- supervisor_remarks
|
|
58
|
+
- reviewer_remarks
|
|
59
|
+
|
|
60
|
+
- name: "methodology assessment"
|
|
61
|
+
input: "Оцени методологию и корректность применения методов в ВКР"
|
|
62
|
+
expected:
|
|
63
|
+
status: success
|
|
64
|
+
has_fields:
|
|
65
|
+
- criteria_scores
|
|
66
|
+
criteria_includes: "методология"
|
|
67
|
+
|
|
68
|
+
- name: "full review with summary"
|
|
69
|
+
input: "Проведи полный анализ ВКР и сформируй итоговую справку"
|
|
70
|
+
expected:
|
|
71
|
+
status: success
|
|
72
|
+
has_fields:
|
|
73
|
+
- format
|
|
74
|
+
- criteria_scores
|
|
75
|
+
- strengths
|
|
76
|
+
- weaknesses
|
|
77
|
+
- recommended_grade
|
|
78
|
+
- summary
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "dissertation-review output",
|
|
4
|
+
"description": "Structured output from the dissertation-review skill",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": ["status", "format", "criteria_scores", "strengths", "weaknesses", "recommended_grade", "summary"],
|
|
7
|
+
"properties": {
|
|
8
|
+
"status": {
|
|
9
|
+
"type": "string",
|
|
10
|
+
"enum": ["success", "error", "skipped"]
|
|
11
|
+
},
|
|
12
|
+
"format": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"enum": ["research", "project"],
|
|
15
|
+
"description": "ВКР format: research (исследовательский) or project (проектный)"
|
|
16
|
+
},
|
|
17
|
+
"topic": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"description": "Thesis topic as stated on the title page"
|
|
20
|
+
},
|
|
21
|
+
"criteria_scores": {
|
|
22
|
+
"type": "array",
|
|
23
|
+
"items": {
|
|
24
|
+
"type": "object",
|
|
25
|
+
"required": ["criterion", "score", "comment"],
|
|
26
|
+
"properties": {
|
|
27
|
+
"criterion": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "Evaluation criterion name"
|
|
30
|
+
},
|
|
31
|
+
"score": {
|
|
32
|
+
"type": "integer",
|
|
33
|
+
"minimum": 1,
|
|
34
|
+
"maximum": 10,
|
|
35
|
+
"description": "Score on 10-point scale"
|
|
36
|
+
},
|
|
37
|
+
"comment": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"description": "Brief justification for the score"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"strengths": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"items": { "type": "string" },
|
|
47
|
+
"minItems": 1,
|
|
48
|
+
"description": "Strong points of the thesis"
|
|
49
|
+
},
|
|
50
|
+
"weaknesses": {
|
|
51
|
+
"type": "array",
|
|
52
|
+
"items": { "type": "string" },
|
|
53
|
+
"minItems": 1,
|
|
54
|
+
"description": "Weak points of the thesis"
|
|
55
|
+
},
|
|
56
|
+
"supervisor_remarks": {
|
|
57
|
+
"type": "array",
|
|
58
|
+
"items": { "type": "string" },
|
|
59
|
+
"description": "Key remarks from the supervisor review"
|
|
60
|
+
},
|
|
61
|
+
"reviewer_remarks": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"items": { "type": "string" },
|
|
64
|
+
"description": "Key remarks from the external review"
|
|
65
|
+
},
|
|
66
|
+
"recommended_grade": {
|
|
67
|
+
"type": "object",
|
|
68
|
+
"required": ["five_point", "ten_point", "justification"],
|
|
69
|
+
"properties": {
|
|
70
|
+
"five_point": {
|
|
71
|
+
"type": "integer",
|
|
72
|
+
"minimum": 2,
|
|
73
|
+
"maximum": 5,
|
|
74
|
+
"description": "Recommended grade on 5-point scale"
|
|
75
|
+
},
|
|
76
|
+
"ten_point": {
|
|
77
|
+
"type": "integer",
|
|
78
|
+
"minimum": 1,
|
|
79
|
+
"maximum": 10,
|
|
80
|
+
"description": "Recommended grade on 10-point scale"
|
|
81
|
+
},
|
|
82
|
+
"justification": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"description": "Brief justification for the recommended grade"
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"summary": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"description": "Overall summary of the thesis evaluation"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "dissertation-review config validator",
|
|
4
|
+
"description": "Validates configuration inputs for the dissertation-review skill",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"thesis_path": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Path to the thesis document (PDF or text)"
|
|
10
|
+
},
|
|
11
|
+
"supervisor_review_path": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"description": "Path to the supervisor review document"
|
|
14
|
+
},
|
|
15
|
+
"external_review_path": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"description": "Path to the external reviewer document"
|
|
18
|
+
},
|
|
19
|
+
"format": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"enum": ["research", "project", "auto"],
|
|
22
|
+
"default": "auto",
|
|
23
|
+
"description": "ВКР format; 'auto' to detect automatically"
|
|
24
|
+
},
|
|
25
|
+
"program_profile": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"description": "Master's program profile for relevance check"
|
|
28
|
+
},
|
|
29
|
+
"grading_scale": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"enum": ["five_point", "ten_point", "both"],
|
|
32
|
+
"default": "both",
|
|
33
|
+
"description": "Which grading scale to use in the output"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"required": ["thesis_path"]
|
|
37
|
+
}
|