Skip to main content

Нишпорка

Нишпорка

Читає рукопис. Приносить знайдене.

PyPI CI Python Ліцензія

Нишпорка допомагає шукати предків в архівних документах — метричних книгах, сповідних розписах, ревізіях XVIII–XIX століть. Але працює вона не так, як звичайна програма.

Роботу робить ШІ-помічник, вирішуєте ви. Помічникові на кшталт Claude чи ChatGPT можна дозволити працювати на вашому комп'ютері: відкривати теки, запускати програми, записувати результат — і щоразу питати дозволу. Такого помічника називають агентом, і Нишпорка зроблена саме для нього. Ви пишете звичайними словами: «ось тека зі сканами метричних книг Чечельника — знайди всіх Ковальських». Помічник читає рукописні аркуші, шукає прізвище й приносить знайдені рядки просто на скані. Чи це ваш рід — вирішуєте ви.

Що Нишпорка дає помічникові. Сам по собі він архівів не знає й старого рукопису не прочитає. Нишпорка дає йому знання, де що лежить (довідники архівів, описи фондів, перелік сіл і парафій), уміння читати рукопис (три власні моделі, навчені на українських, молдовських і польських архівах), пам'ять про переглянуте й правила чесної роботи: «не знайшов» завжди з поясненням, скільки аркушів переглянуто.

Чому це інший підхід. Звичайна програма вміє рівно те, що в неї заклали: скільки кнопок — стільки й можливостей. Нишпорка дає помічникові окремі вміння — знайти справу, прочитати аркуш, знайти прізвище, записати знахідку, — а він складає з них потрібне саме під ваше питання: «зроби таблицю всіх шлюбів у цьому селі за 1820-ті», хоч окремої кнопки для цього ніхто не робив. І що розумнішими стають помічники, то більше вміє Нишпорка — навіть без оновлення.

Що потрібно: комп'ютер (Windows, macOS або Linux), сама Нишпорка — безкоштовно, і помічник, що вміє працювати на комп'ютері: Claude Desktop (підписка Claude Pro або Max), Claude Code чи Codex. Скани нікуди не йдуть — усе працює на вашій машині.

🎥 Подивитися наживо  ·  🤖 Поставити й підключити помічника  ·  ⬇ Завантажити для Windows  ·  як працювати

🎥 Як це працює, показано наживо — на стрімі «ШІ-агенти в генеалогії: дослідження майбутнього» («В гостях у Качки» №11). Перша частина — про те, навіщо генеалогові агент узагалі; сама Нишпорка в роботі — приблизно з 42-ї хвилини.

Що дістає агент

  • 122 операції з описом і схемою. nysh op <ім'я> --describe віддає аргументи й повний докстрінг, нічого не виконуючи; nysh op <ім'я> виконує. Через це MCP не обов'язковий — агентові з терміналом досить самої команди.
  • 18 MCP-tool'ів — nysh mcp install прописує сервер у .mcp.json проєкту. Перелік навмисно вужчий за реєстр операцій: у нього є стеля, за якою модель перестає читати описи й починає вгадувати.
  • 11 скілів — готових процедур під задачу (nysh skills install): як прочитати справу на слабкій машині, як шукати прізвище так, щоб нуль щось означав, куди копати далі, як прийняти куплену зйомку, як дотренувати модель на своєму почерку.
  • Правила, а не поради — AGENTS.md і для агентів: як читати нуль, чому «не наш рід» вирішує людина, і як агенти вже помилялися на цьому матеріалі, з цінами.
  • Три обличчя, одне ядро. Браузерна консоль, командний рядок і MCP — тонкі обгортки навколо одного реєстру операцій, тож вони не можуть розійтись у відповідях; це перевіряється тестом, а не домовленістю.

Ціна помилки тут інша, ніж у програмуванні, і середовище побудоване саме під неї: хибне «немає» закриває напрям пошуку назавжди, а хибне «є» йде в родовід і публікується як факт.

Що агент зробить вашими сканами

  • Знайде, де лежать документи вашого села — газетир ЦДІАК (4566 поселень, 348 408 справ), поаркушевий покажчик плівок, каталог ДАХмО, церкви ~1772.
  • Прочитає рукопис трьома рушіями: [П] Писар (кирилиця, головний голос), [Д] Дяк (кирилиця, другий голос — тримається пікселів там, де перший додумує), [С] Скриба (латинка: нотаріат і костельні книги).
  • Покаже, звідки взявся текст — вирізка рядка з рамкою, сторінка, два голоси поруч.
  • Шукатиме прізвище в прочитаному, у виписаних іменах і в учасниках записів.
  • Вестиме облік переглянутого оком, щоб наступна сесія не гортала ті самі аркуші вдруге.
  • Віддасть таблицею — розібрані акти в Ексель: фільтрувати роками, селом, станом і прізвищем.

Докладно, з межами кожного джерела — що вже працює.

Як це виглядає

Рішення лишається за оком, тож у Нишпорки є й власне обличчя в браузері: там людина дивиться те, що приніс агент. Без агента воно теж повне — просто всі кроки доводиться робити руками.

Видно, звідки взявся текст. Клацнувши рядок, ви бачите його вирізку з аркуша — у тому вигляді, у якому його бачив рушій.

Гортач: скан із рамками рядків, машинний текст і вирізка обраного рядка

Де взагалі метрики мого села. Газетир і покажчик плівок їдуть разом із пакетом і відповідають одразу після встановлення — без сканів, без відеокарти, без обходу чужих сайтів.

Газетир: пошук села по всіх фондах і конфесіях одразу

Видно, скільки перевірено. Пошук шукає нечітко, бо машина плутає літери всередині слова. А під знахідками написано, скільки справ і сторінок було переглянуто — щоб «нічого не знайшлось» не означало «просто ніде не шукали».

Пошук: нечіткі збіги з оцінкою, шифром справи й покриттям пошуку

Поставити

🤖 Ставить агент? Дайте йому одне посилання — AGENTS.md. Там і встановлення, і перші кроки, і межі, за якими вирішує людина.

👤 Ставите самі, без термінала? Покрокова інструкція — три програми в правильному порядку й один готовий запит — «Поставити й підключити помічника».

Windows. ⬇ Завантажити інсталятор — запустити, відповісти на два питання, натиснути «Встановити». Python, прав адміністратора й термінала не треба.

⚠ «Windows захистив ваш ПК» — «Докладніше» → «Виконати в будь-якому разі». Так Windows зустрічає кожну програму, яку ще мало хто завантажував.

Термінал, будь-яка система. На чистій машині, без Python і без прав адміністратора:

irm https://raw.githubusercontent.com/SERGIUSH-UA/nyshporka/main/install/windows.ps1 -OutFile "$env:TEMP\nysh-install.ps1"
powershell -ExecutionPolicy Bypass -File "$env:TEMP\nysh-install.ps1"
curl -LsSf https://raw.githubusercontent.com/SERGIUSH-UA/nyshporka/main/install/unix.sh | sh

🔴 Коли скрипт завершить роботу — закрийте вікно термінала й відкрийте нове: доти команда nysh у ньому не знайдеться. Якщо й у новому вікні не знаходиться — перезапустіть комп'ютер. (Тим, хто ставив інсталятором, це не потрібно: ярлики працюють одразу.)

Якщо Python або uv уже є:

uv tool install "nyshporka[app,archives,htr]"   # або: pip install …
nysh init                      # створити робочий простір
nysh doctor                    # перевірити те, що ламається тихо
nysh mcp install               # прописати сервер агентові
nysh skills install            # покласти скіли туди, де їх бачить агент

🔴 Щоб читати рукопис — ще два разові кроки. Самі рушії й навчені моделі в пакет не входять навмисно: інакше кожен, хто прийшов лише подивитись каталог справ, платив би за них гігабайтами.

nysh htr install    # середовище рушіїв: kraken і PARSeq
nysh models get     # ваги трьох моделей, ~130 МБ

Каталогам, газетиру й пошуку по описах вони не потрібні — ті працюють одразу.

На робочій машині розробника інсталятор нічого не переставляє; --dry-run показує, що буде зроблено, а NYSH_NO_MODIFY_PATH=1 не чіпає PATH зовсім. Важелі, набори частин, деінсталяція й те, де живе дослідження, — встановлення докладно.

Стан: alpha

Каталоги, завантаження, читання рукопису, гортач, сховище прочитаного, пошук, браузерне обличчя й установлення працюють. Скани ви приносите самі; розбір актів у поля робить ваш агент і вашим коштом — пакет дає нарізку, контракт, валідацію й чексуми повноти, але сам не читає; а моделі читають добре той почерк, на якому вчились, — на іншому матеріалі якість не міряна. Повний перелік того, чого ще немає, без замовчувань — межі.

Далі

поставити й підключити помічника, без термінала Поставити й підключити помічника
що просити й як перевіряти знайдене Як працювати
питання першого тижня і чого ще немає Часті питання
дотренувати модель на своєму почерку Дотренувати модель
прочитати справу на орендованій машині Орендована машина
перша сесія агента, приймачі кроків Для помічника й розробника
що змінилось у версіях Що нового

Приватність, ліцензія, участь

Телеметрії немає, облікових записів немає, дослідження нікуди не вивантажується, а в мережу застосунок ходить лише тоді, коли його про це попросили командою — PRIVACY.md.

Код — AGPL-3.0-or-later, ваги моделей — окремо, під CC BY-SA 4.0. Чому саме так, як підписується інсталятор і що звіряти при завантаженні — підписування й ліцензії.

Знайшли ваду або хочете допомогти — CONTRIBUTING.md і Issues.

Release files for nyshporka 0.18.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nyshporka 0.18.0
File Size Uploaded
nyshporka-0.18.0.tar.gz 12.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for nyshporka 0.18.0
File Interpreter ABI Platform
nyshporka-0.18.0-py3-none-any.whl Python 3 none any Details

Total release size: 23.2 MB

Release files / nyshporka-0.18.0.tar.gz

Download URL nyshporka-0.18.0.tar.gz
Size 12.9 MB
Tags Source
SHA-256 checksum
How to use checksums
f023107818878808a29a4fb574907100353fb81ff0ab4a4600607eda012a094e
BLAKE2b-256 checksum
How to use checksums
07612c978d7f26b8c6cec402998f6e7822d039118ee1c33446415e8e7d83b2d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release files / nyshporka-0.18.0-py3-none-any.whl

Download URL nyshporka-0.18.0-py3-none-any.whl
Size 10.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6c3ced72aa5d555819b2899feb24c61e8b33b9b4b5363b65f7fc4e0156d06755
BLAKE2b-256 checksum
How to use checksums
93a4776ded76f803743f370e47cf3dba7ab77e6ebf72869ffa87aef28beb2221
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

0.18.1

2 release files

This release

0.18.0 This release

2 release files

0.17.1

2 release files

0.17.0

2 release files

0.16.1

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.1

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.12.3

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page