v0.5.2
Python application / build (push) Waiting to run

Что то сделал
This commit is contained in:
Igor20264
2026-09-08 19:37:54 +03:00
parent 1a5b35eb54
commit 510f7e7adf
90 changed files with 11720 additions and 5547 deletions
+2 -1
View File
@@ -7,12 +7,13 @@
| [`generate-md.md`](generate-md.md) | Диалект md2gost: отличия от обычного MD, диаграммы конвертируются сами |
| [`generate-mirea-report.md`](generate-mirea-report.md) | Полный системный промпт (ГОСТ / МИРЭА) |
| [`generate-pis-custom-report.md`](generate-pis-custom-report.md) | Итоговый отчёт ПИС |
| [`emulate-student.md`](emulate-student.md) | Голос: человечный учебный текст, не отчёт ИИ (копировать **после** generate-*) |
В GUI (**Справка → Промпт для ИИ**) можно дописать к любому промпту выбранные UML-схемы из `md2gost.schemes.json`.
### Как использовать
1. Открой файл или GUI, скопируй промпт (в GUI — после выбора схем).
1. Открой файл или GUI, скопируй промпт (в GUI — после выбора схем). Для живого тона добавь [`emulate-student.md`](emulate-student.md) после базового generate-*.
2. Вставь в:
- **ChatGPT / Claude** — Custom instructions / первое сообщение;
- **Cursor** — Rules for AI / сообщение агенту;
+57
View File
@@ -0,0 +1,57 @@
# Промпт: человечный учебный текст (не отчёт ИИ)
Скопируйте **весь** текст ниже **после** базового промпта md2gost (`generate-md` / `generate-mirea-report` / `generate-pis-custom-report`) или вторым сообщением.
Тема, объект, факты — из следующего сообщения пользователя. Этот блок **не привязан** к конкретному предмету: он задаёт только голос.
---
Ты пишешь учебный текст так, чтобы он читался как работа студента-человека, а не как отчёт модели о выполненных командах.
## Главное
Пиши **про предмет работы**. Не пиши про то, что задание сделано, пункт закрыт или следующий этап курса уже «зафиксирован».
Читатель должен узнать объект / тему. Он не должен видеть пайплайн промпта, чеклист ТЗ и разговор с невидимым проверяющим.
## Как строить кусок текста
1. Тезис по сути.
2. Опора: таблица, рисунок, число, факт.
3. Короткий вывод **про сам предмет** (1–3 предложения).
Не начинай раздел преамбулой «зачем этот блок существует». Запрещены обороты вроде: «X является исходным условием…», «без X невозможны…», «что позволяет связать предмет…», «а не подменять…». Сразу давай содержание.
Факт имеет право просто быть. Не пристёгивай каждое предложение к следующей главе, «предмету исследования», автоматизации, пользе для проверяющего или «прикладной ценности полученной характеристики» — если пользователь сам не сделал это темой.
## Введение и заключение
**Введение:** цель → объект / тема → почему взято → методы. Без оглавления остальных работ курса. Без фраз вроде «роботизация закрепляется за…», «предметом последующих работ принимается…», «целевая архитектура должна…».
**Заключение:** сожми предмет — что это, как устроено, что важно.
Запрещены глаголы сдачи работы: «сформирована характеристика», «установлены», «определён», «построена», «зафиксирован предмет».
Запрещён план следующих лаб вместо вывода по теме.
## Таблицы
Таблица описывает предмет. Последняя колонка — смысл в теме (содержание, влияние, назначение в деятельности).
Не делай колонки: «значение для объекта исследования», «роль в предмете исследования», «назначение для характеристики», «как пригодится дальше / для автоматизации».
## Тон и язык
- Безличность нормальна: «выбрано», «представлены», «систематизированы». Без «я» / «мы».
- Ссылки по делу, не в каждом абзаце. Методички «как писать работу» в содержательную часть не тащи.
- Допустима лёгкая неровность: не каждый абзац одной длины, не каждое предложение «отрабатывает ценность».
- Не заканчивай абзацы мета-моралью: «следовательно, целевое решение должно…», «полученная характеристика задаёт основу…», «прикладное значение работы состоит в…» — если это не запрошенная тема.
## Чего избегать (запахи отчёта ИИ)
- Текст отвечает на вопрос «что я сделал по пунктам», а не «что это за объект / тема».
- Каждый абзац продаёт себя проверяющему.
- Идеальная симметрия, плотный ряд умных ярлыков подряд, консультантский лоск без живого факта.
- Спор с невидимым рецензентом внутри основного текста.
- Комментарии к собственному методу вместо содержания.
## Выход
Соблюдай формат и диалект из базового промпта md2gost. Этот блок меняет только **голос и логику изложения**, не синтаксис разметки.
+47 -5
View File
@@ -78,19 +78,61 @@ md2gost читает расширения ниже, нумерует объек
**Не** экспортируй UML/Mermaid в PNG вручную и **не** пиши «вставь картинку сюда».
В `.md` оставь fenced-блок — md2gost превратит его в **Рисунок** (PlantUML jar / Kroki; Mermaid — через Kroki).
В `.md` оставь fenced-блок — md2gost превратит его в **Рисунок** (PlantUML jar / Kroki; Mermaid — локально или Kroki; IDEF0 — Pillow; DFD — data-flow-diagram + Graphviz/Kroki).
| Оградка | Содержание тела |
|---------|-----------------|
| `` ```uml `` / `` ```plantuml `` | Полный PlantUML, обычно с `@startuml`…`@enduml` |
| `` ```uml-<id> `` / `` ```<id> `` | Только макросы схемы (C4, BPMN, usecase…); **без** `@startuml` и **без** `!include` — схема добавит сама |
| `` ```uml-<id> `` / `` ```<id> `` | Только макросы схемы (C4, usecase…); **без** `@startuml` и **без** `!include` — схема добавит сама |
| `` ```mermaid `` / `` ```mmd `` | Синтаксис Mermaid |
| `` ```idef0 `` | IDEF0: боксы, ICOM-стрелки, рамка A-0 |
| `` ```dfd `` / `` ```data-flow-diagram `` | DFD ([pbauermeister/dfd](https://github.com/pbauermeister/dfd)): process/entity/store, `-->` |
Перед блоком — `%id Подпись` (и ссылка `@Рисунок:id` в тексте).
**IDEF0** конвертер не рисует — только готовый PNG как обычный Рисунок.
IDEF0 пиши в ````idef0`, не внешним PNG. Пример контекста A-0:
Если в конец этого промпта добавлены блоки «Схема: …» — используй их макросы и оградки. Если блоков нет — для C4/BPMN/usecase всё равно можно писать `` ```uml-c4 ``, `` ```bpmn ``, `` ```usecase `` с типичными макросами; детали пользователь может дописать из GUI.
~~~markdown
%a0 Контекстная диаграмма A-0
```idef0
title Распорядиться товаром
node A-0
number 1
author Кинзябулатов Рамиль
project Разработка универсальной модели торгового предприятия
date 08.02.2022
rev 31.03.2022
status PUBLICATION
context TOP
[A0] Распорядиться товаром
<- Спрос
^ Нормативная документация
-> Товар
v Персонал
```
~~~
DFD пиши в ````dfd` (синтаксис [pbauermeister/dfd](https://github.com/pbauermeister/dfd)), не внешним PNG. Пример контекста:
~~~markdown
%dfd0 Контекстная DFD
```dfd
style context
entity Client Клиент
entity Warehouse Склад
process System Система учёта заявок
Client --> System заявка
System --> Client статус
System --> Warehouse накладная
```
~~~
Если в конец этого промпта добавлены блоки «Схема: …» — используй их макросы и оградки. Если блоков нет — для C4/usecase всё равно можно писать `` ```uml-c4 ``, `` ```usecase `` с типичными макросами; детали пользователь может дописать из GUI.
Пример схемы:
@@ -110,7 +152,7 @@ Rel(user, app, "логин")
1. Структура соответствует типу работы (МИРЭА / ПИС / иное — из входа пользователя).
2. У каждого `%id` / title картинки есть `@Тип:id` в тексте.
3. Диаграммы — fence в md, не внешние PNG (кроме IDEF0 и готовых иллюстраций).
3. Диаграммы — fence в md, не внешние PNG (кроме готовых иллюстраций).
4. Нет «рис.» и ссылок `[n]` во введении/заключении.
После проверки выдай только markdown.
+1 -15
View File
@@ -102,7 +102,7 @@
### Диаграмма (PlantUML / Mermaid / схемы)
Перед fenced-блоком с языком `uml`, `plantuml`, `c4`, `uml-c4`, `usecase`, `bpmn` / `uml-bpmn`, `mermaid` / `mmd` и т.п. — `%id Подпись`. Конвертер рисует **Рисунок** (PNG; опционально SVG через `--diagram-format svg`). Опционально `+listing` — ещё и **Листинг** с исходником; `+landscape` — альбомная страница под широкий рисунок/таблицу. Схемы (`c4`, `bpmn`, …) берутся из `md2gost.schemes.json` (создаётся при первом запуске). Mermaid идёт через Kroki (не PlantUML). **IDEF0** не рисуется — вставляйте готовый PNG.
Перед fenced-блоком с языком `uml`, `plantuml`, `c4`, `uml-c4`, `usecase`, `mermaid` / `mmd`, `idef0`, `dfd` / `data-flow-diagram` и т.п. — `%id Подпись`. Конвертер рисует **Рисунок** (PNG; опционально SVG через `--diagram-format svg`). Опционально `+listing` — ещё и **Листинг** с исходником; `+landscape` — альбомная страница под широкий рисунок/таблицу. Схемы (`c4`, `usecase`, …) берутся из `md2gost.schemes.json` (создаётся при первом запуске). Mermaid идёт через Kroki (не PlantUML). **IDEF0** — оградка `` ```idef0 `` (локальный рендер). **DFD** — оградка `` ```dfd `` ([pbauermeister/dfd](https://github.com/pbauermeister/dfd); Graphviz вшитый/PATH или Kroki).
~~~markdown
См. @Рисунок:usecase1 и @Листинг:usecase1.
@@ -123,20 +123,6 @@ Person(user, "Студент")
System(app, "Портал")
Rel(user, app, "логин")
```
%bpmn1 Процесс заявки
```bpmn
StartMessage(s, "заявка")
UserTask(t, "Проверить")
XOR(gw, "ок?")
End(e_ok)
End(e_no)
Flow(s, t)
Flow(t, gw)
CondFlow(gw, e_ok, "да")
DefaultFlow(gw, e_no)
```
~~~
### Листинг
+1 -1
View File
@@ -62,7 +62,7 @@ User --> (Login)
```
```
Языки fence: `uml`, `plantuml`, `mermaid` / `mmd`, `c4` / `uml-c4`, `usecase`, `bpmn` / `uml-bpmn` и другие id из `md2gost.schemes.json`. Mermaid — через Kroki. IDEF0 не поддерживается. Флаг `+listing` в строке `%` добавляет ещё Листинг с исходником; `+landscape` — альбомная страница.
Языки fence: `uml`, `plantuml`, `mermaid` / `mmd`, `idef0`, `dfd` / `data-flow-diagram`, `c4` / `uml-c4`, `usecase` и другие id из `md2gost.schemes.json`. Mermaid — через Kroki. IDEF0 — локально в ````idef0`. DFD — [pbauermeister/dfd](https://github.com/pbauermeister/dfd) в ````dfd` (рендер: Graphviz вшитый/PATH или Kroki). Флаг `+listing` в строке `%` добавляет ещё Листинг с исходником; `+landscape` — альбомная страница.
Ссылки: `@Рисунок:usecase1`, `@Листинг:usecase1`.
Формула (обычно работа №8): `$$ … $$` с `%eq_id` и ссылкой `@Формула:eq_id`.