AI-помощник, который читает мелкий шрифт за вас — для тех, кто не может позволить юриста.
Загрузите PDF любого договора → AI найдёт подводные камни за 30 секунд.
| Тип | Паттернов | Примеры |
|---|---|---|
| Любой документ | универсальный | AI определит тип сам |
| Трудовой договор | 6 | ТК РФ, NDA, неконкурент, матответственность |
| Кредит / Займ | 6 | Банк, МФО, ипотека, скрытые комиссии |
| Купля-продажа | 3 | Недвижимость, авто, обременения |
| Услуги / Подряд | 6 | SaaS, подряд, автопродление, штрафы |
| Страхование | 4 | ОСАГО, КАСКО, ДМС, исключения, франшиза |
| Аренда | 40 | Офис, магазин, ресторан, склад |
| Дом престарелых | 34 | Договор на уход, повышение стоимости |
| Мед. счёт | 24 | Больничные счета, дублирование, upcoding |
Итого: 126 паттернов подводных камней в src/signsafe/knowledge/predatory_patterns.json
- Backend: FastAPI + pydantic-ai (бесплатная LLM через z.ai) + PyMuPDF + Tesseract OCR
- Frontend: Next.js 16 + React 19 + Tailwind v4 + TypeScript, PWA
- Приватность: stateless. PDF анализируется в памяти и удаляется. Результаты только в браузере.
- Язык: только RU. Перевода нет — путь через Google Translate удалён вместе с публичным
эндпоинтом
/api/translate(см.tests/test_translate_removed.py), поэтому ни текст договора, ни результат разбора не попадают в переводческие сервисы. - Опционально: E2E зашифрованная облачная синхронизация (AES-GCM)
make install
ZAI_API_KEY=... make devBackend: :8894 · Frontend: :3004
LLM настраивается через окружение: ZAI_API_KEY (или LLM_API_KEY), LLM_MODEL,
LLM_FALLBACK_MODELS (через запятую), LLM_BASE_URL. LLM_BASE_URL принимает только
хост из ALLOWED_LLM_HOSTS (src/signsafe/core/config.py): текст договора уходит лишь
тому провайдеру, который назван в политике конфиденциальности. По умолчанию используется
одна модель — glm-4.5-flash (единственная стабильно бесплатная на этом аккаунте);
устойчивость обеспечивает retry с backoff на 429, а не каскад из платных моделей.
- ГК РФ: ст.310 (односторонний отказ), ст.782 (расторжение услуг), ст.810 (досрочное погашение), ст.475 (дефекты товара), ст.381 (задаток), гл.30/39/48
- ТК РФ: ст.70 (испытательный срок), ст.119 (допотпуск), ст.152 (сверхурочные), ст.241/243 (матответственность), ст.249 (обучение)
- ЗоЗПП: навязывание услуг, одностороннее изменение цен, арбитражные оговорки
- ФЗ о потребительском кредите: ст.29 (изменение ставки), период охлаждения, ПСК
- No Surprises Act, FDCPA, Medicare rates, state balance billing laws
/— главная (выбор типа документа + загрузка)/analyze/[id]— результат анализа/history— локальная история/sync— облачная синхронизация/shared— публичный просмотр
src/signsafe/
├── api/ # FastAPI (documents, translate, sync, negotiate)
├── services/ # бизнес-логика (pdf, analysis, agents, translate, sync)
├── schemas/ # Pydantic DTOs (document, clause, industry, sync)
├── knowledge/ # predatory_patterns.json (126)
├── core/ # config, database, deps
└── main.py
frontend/
├── app/ # /, /analyze/[id], /history, /sync, /shared
├── components/ # analysis-view, clause-card, risk-score, etc.
├── lib/ # api, storage, crypto, sync, translate, i18n, industry
└── public/ # manifest, sw.js, icons
Образовательный инструмент — не юридическая и не медицинская консультация. Для важных решений обратитесь к лицензированному специалисту.