# Руководство пользователя Morix
<!-- no toc -->
- [Руководство пользователя Morix](#руководство-пользователя-morix)
- [TL;DR](#tldr)
- [Примеры](#примеры)
- [Общее введение](#общее-введение)
- [Установка и настройка](#установка-и-настройка)
- [Предварительные требования](#предварительные-требования)
- [Установка](#установка)
- [Начальные настройки](#начальные-настройки)
- [Функциональные возможности](#функциональные-возможности)
- [Примеры использования](#примеры-использования)
- [Основные команды](#основные-команды)
- [Советы по использованию](#советы-по-использованию)
- [Ограничения и рекомендации](#ограничения-и-рекомендации)
- Остальная документация
- [О токенах](docs/about_tokens.md)
- [Документация по конфигурации](docs/config_documentation.md)
- [Руководство по игнорированию файлов](docs/ignore_pattern_guide.md)
- [Руководство по разработке плагинов](docs/plugin_development_guide.md)
- [Примеры промптов](docs/prompts_examples.md)
## TL;DR
Для тех кому надоело копипастить из чата с chatgpt при разработке, а так же хочеться посмотреть на что способна модель если ей дать доступ к консоли 😀
### Примеры
- Откройте терминал и перейдите в целевую директорию.
- Введите команду:
```shell
morix -c ./
```
- Введите промт:
```text
Проведи анализ проекта, и расскажи о чем проект.
```
или
```text
Вот проект на haskell 3хлетней давностии, твоя задача - перевести код на последнюю версию хаскеля и получить компилирующееся приложение.
```
или
```text
Твоя здача - получить покрытие кода тестами, поднять его до 80%, запустить тесты и починить тесты или код если тесты завершаются не успешно.
```
или
```text
Запусти приложение в docker-compose (с флагом up -d) и проверь работоспособность методов rest и grpc. Твоя задача - работоспособное приложение.
```
Еще примеры промтов можно посмотреть [тут](prompts_examples).
## Общее введение
Morix — это инструмент для сканирования, анализа и автоматизированного изменения файлов в заданной директории с использованием возможностей OpenAI GPT. Он также позволяет модели запускать консольные команды и получать их результаты.
Основное предназначение Morix — упростить рутинные задачи, связанные с обработкой файлов.
## Установка и настройка
### Предварительные требования
- Убедитесь, что у вас установлен Python версии 3.10 или выше.
- Настройте переменную окружения `OPENAI_API_KEY` для взаимодействия с моделями OpenAI.
- Пожалуйста ознакомтьесь с [информацией о токенах](docs/about_tokens.md)
### Установка
```shell
pip install morix
```
### Начальные настройки
После установки используйте команду `morix`, чтобы начать работу с программой. Вы также можете открыть конфигурационный файл для настройки программы под свои нужды:
```shell
morix --config
```
> Примечание: Открытие файла конфигурации работает только на macOS, в остальных системах программа лишь выведет путь до файла конфигурации.
[Подробное описания файла конфигурации](docs/config_documentation.md)
## Функциональные возможности
Morix предоставляет следующие функции:
- **Сканирование и анализ структуры директорий и содержания файлов**: позволяет быстро получить информацию о файлах и каталогах.
- **Запуск утилит моделью и написанию плагинов (plugin_development_guide.md) для их запуска**:
- по умолчанию реализованы следующие функции:
- получение файлов и их содержимого
- получение структуры рабочей папки
- отображнение текущего статуса задания выполняемого моделью
- запуск консольных команд (только для *nix систем и wsl для windows)
- вы же можете реализовать свою утилиту, например дать доступ модели к вашей базе данных. [Подробнее тут](docs/plugin_development_guide.md)
>Примечание: В случае, если в рабочей директории нет `.git`, приложение выдаёт предупреждение.
## Примеры использования
### Основные команды
- **Запуск приложения в текущей директории без сканирования**:
```shell
morix
```
- **Сканирование содержания файлов в директории**:
```shell
morix -c <path_to_directory>
```
- **Сканирование только структуры директории**:
```shell
morix -s <path_to_directory>
```
Может быть использовано если при полном сканировании выходите за лимит токенов. При таком использовании можно говорить модели самой начитать нужные файлы.
## Советы по использованию
>Напоминание: Состояние файлов в git `No changes → Changed (Modified) → Staged → Committed`
Флоу работы с morix предлагается следующий.
1. В vscode открывается папка с проектом над которым будет вестись рабта.
2. Проверяется наличие git в этой папке или родительской, если нет - то стоит выполнить `git init`
3. Запускается morix, модель делает задание и вносит измеенения в файлы (`Changed (Modified)`)
4. Проверяется корректность выполнение задания, в vscode просматриваются файлы в состоянии `Changed (Modified)` и дифф измеений, те что удовлетворяют переводятся в состояние `Staged`
5. Если заданий несколько, то 3-5 пункт повторяется.
6. По окончанию изменения комитятся (`Committed`)
## Ограничения и рекомендации
- Morix может испытывать ограничения производительности при работе с большими объемами данных.
- Выполнение консольных команд несет потенциальные риски безопасности. Убедитесь, что разрешаете выполнение только тех команд, в которых уверены.
Raw data
{
"_id": null,
"home_page": "https://gitlab.com/good-day-inc/morix/",
"name": "morix",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Enemchy",
"author_email": "dzenkir@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/a3/99/7f83d65bf3181adcf88003173f419eca80eb1bce03dcca5e375920163178/morix-0.6.10.tar.gz",
"platform": null,
"description": "# \u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f Morix\n\n<!-- no toc -->\n- [\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f Morix](#\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e-\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f-morix)\n - [TL;DR](#tldr)\n - [\u041f\u0440\u0438\u043c\u0435\u0440\u044b](#\u043f\u0440\u0438\u043c\u0435\u0440\u044b)\n - [\u041e\u0431\u0449\u0435\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435](#\u043e\u0431\u0449\u0435\u0435-\u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435)\n - [\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430](#\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430-\u0438-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430)\n - [\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f](#\u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435-\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f)\n - [\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430](#\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430)\n - [\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438](#\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435-\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438)\n - [\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438](#\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435-\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438)\n - [\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f](#\u043f\u0440\u0438\u043c\u0435\u0440\u044b-\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f)\n - [\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b](#\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435-\u043a\u043e\u043c\u0430\u043d\u0434\u044b)\n - [\u0421\u043e\u0432\u0435\u0442\u044b \u043f\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e](#\u0441\u043e\u0432\u0435\u0442\u044b-\u043f\u043e-\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e)\n - [\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438](#\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f-\u0438-\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438)\n- \u041e\u0441\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\n - [\u041e \u0442\u043e\u043a\u0435\u043d\u0430\u0445](docs/about_tokens.md)\n - [\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438](docs/config_documentation.md)\n - [\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0444\u0430\u0439\u043b\u043e\u0432](docs/ignore_pattern_guide.md)\n - [\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432](docs/plugin_development_guide.md)\n - [\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0440\u043e\u043c\u043f\u0442\u043e\u0432](docs/prompts_examples.md)\n\n## TL;DR\n\n\u0414\u043b\u044f \u0442\u0435\u0445 \u043a\u043e\u043c\u0443 \u043d\u0430\u0434\u043e\u0435\u043b\u043e \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u0438\u0442\u044c \u0438\u0437 \u0447\u0430\u0442\u0430 \u0441 chatgpt \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435, \u0430 \u0442\u0430\u043a \u0436\u0435 \u0445\u043e\u0447\u0435\u0442\u044c\u0441\u044f \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0447\u0442\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c \u0435\u0441\u043b\u0438 \u0435\u0439 \u0434\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \ud83d\ude00\n\n### \u041f\u0440\u0438\u043c\u0435\u0440\u044b\n\n- \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b \u0438 \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e.\n- \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443:\n\n ```shell\n morix -c ./\n ```\n\n- \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0440\u043e\u043c\u0442:\n\n```text\n\u041f\u0440\u043e\u0432\u0435\u0434\u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0438 \u043e \u0447\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442.\n```\n\n\u0438\u043b\u0438\n\n```text\n\u0412\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430 haskell 3\u0445\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438\u0438, \u0442\u0432\u043e\u044f \u0437\u0430\u0434\u0430\u0447\u0430 - \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u0434 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0445\u0430\u0441\u043a\u0435\u043b\u044f \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u044e\u0449\u0435\u0435\u0441\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.\n```\n\n\u0438\u043b\u0438\n\n```text\n\u0422\u0432\u043e\u044f \u0437\u0434\u0430\u0447\u0430 - \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u043a\u0440\u044b\u0442\u0438\u0435 \u043a\u043e\u0434\u0430 \u0442\u0435\u0441\u0442\u0430\u043c\u0438, \u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0435\u0433\u043e \u0434\u043e 80%, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0442\u0435\u0441\u0442\u044b \u0438 \u043f\u043e\u0447\u0438\u043d\u0438\u0442\u044c \u0442\u0435\u0441\u0442\u044b \u0438\u043b\u0438 \u043a\u043e\u0434 \u0435\u0441\u043b\u0438 \u0442\u0435\u0441\u0442\u044b \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u044e\u0442\u0441\u044f \u043d\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e.\n```\n\n\u0438\u043b\u0438\n\n```text\n\u0417\u0430\u043f\u0443\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 docker-compose (\u0441 \u0444\u043b\u0430\u0433\u043e\u043c up -d) \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u043e\u0432 rest \u0438 grpc. \u0422\u0432\u043e\u044f \u0437\u0430\u0434\u0430\u0447\u0430 - \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.\n```\n\n\u0415\u0449\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0440\u043e\u043c\u0442\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c [\u0442\u0443\u0442](prompts_examples).\n\n## \u041e\u0431\u0449\u0435\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435\n\nMorix \u2014 \u044d\u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 OpenAI GPT. \u041e\u043d \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0438\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.\n\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Morix \u2014 \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c \u0440\u0443\u0442\u0438\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0444\u0430\u0439\u043b\u043e\u0432.\n\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\n\n### \u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\n\n- \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d Python \u0432\u0435\u0440\u0441\u0438\u0438 3.10 \u0438\u043b\u0438 \u0432\u044b\u0448\u0435.\n- \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f `OPENAI_API_KEY` \u0434\u043b\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438 OpenAI.\n- \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0442\u044c\u0435\u0441\u044c \u0441 [\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u0442\u043e\u043a\u0435\u043d\u0430\u0445](docs/about_tokens.md)\n\n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n```shell\npip install morix\n```\n\n### \u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\n\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 `morix`, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0447\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439. \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u0434 \u0441\u0432\u043e\u0438 \u043d\u0443\u0436\u0434\u044b:\n\n```shell\nmorix --config\n```\n\n> \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u041e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 macOS, \u0432 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043b\u0438\u0448\u044c \u0432\u044b\u0432\u0435\u0434\u0435\u0442 \u043f\u0443\u0442\u044c \u0434\u043e \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438.\n\n[\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438](docs/config_documentation.md)\n\n## \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438\n\nMorix \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:\n\n- **\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432**: \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0444\u0430\u0439\u043b\u0430\u0445 \u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u0445.\n- **\u0417\u0430\u043f\u0443\u0441\u043a \u0443\u0442\u0438\u043b\u0438\u0442 \u043c\u043e\u0434\u0435\u043b\u044c\u044e \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 (plugin_development_guide.md) \u0434\u043b\u044f \u0438\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430**:\n - \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:\n - \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u0438\u0445 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e\n - \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043f\u0430\u043f\u043a\u0438\n - \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u044c\u044e\n - \u0437\u0430\u043f\u0443\u0441\u043a \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434 (\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f *nix \u0441\u0438\u0441\u0442\u0435\u043c \u0438 wsl \u0434\u043b\u044f windows)\n - \u0432\u044b \u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043c\u043e\u0434\u0435\u043b\u0438 \u043a \u0432\u0430\u0448\u0435\u0439 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. [\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0442\u0443\u0442](docs/plugin_development_guide.md)\n\n>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u043d\u0435\u0442 `.git`, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u044b\u0434\u0430\u0451\u0442 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435.\n\n## \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\n\n### \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\n\n- **\u0417\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0431\u0435\u0437 \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f**:\n\n ```shell\n morix\n ```\n\n- **\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438**:\n\n ```shell\n morix -c <path_to_directory>\n ```\n\n- **\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438**:\n\n ```shell\n morix -s <path_to_directory>\n ```\n\n \u041c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e \u0435\u0441\u043b\u0438 \u043f\u0440\u0438 \u043f\u043e\u043b\u043d\u043e\u043c \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u0442\u0435 \u0437\u0430 \u043b\u0438\u043c\u0438\u0442 \u0442\u043e\u043a\u0435\u043d\u043e\u0432. \u041f\u0440\u0438 \u0442\u0430\u043a\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u0430\u043c\u043e\u0439 \u043d\u0430\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b.\n\n## \u0421\u043e\u0432\u0435\u0442\u044b \u043f\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e\n\n>\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435: \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 git `No changes \u2192 Changed (Modified) \u2192 Staged \u2192 Committed`\n\n\u0424\u043b\u043e\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 morix \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439.\n\n1. \u0412 vscode \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u043f\u043a\u0430 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c \u043d\u0430\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u0442\u0438\u0441\u044c \u0440\u0430\u0431\u0442\u0430.\n2. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 git \u0432 \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0435 \u0438\u043b\u0438 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 - \u0442\u043e \u0441\u0442\u043e\u0438\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c `git init`\n3. \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f morix, \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0438 \u0432\u043d\u043e\u0441\u0438\u0442 \u0438\u0437\u043c\u0435\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u0444\u0430\u0439\u043b\u044b (`Changed (Modified)`)\n4. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u0432 vscode \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0444\u0430\u0439\u043b\u044b \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 `Changed (Modified)` \u0438 \u0434\u0438\u0444\u0444 \u0438\u0437\u043c\u0435\u0435\u043d\u0438\u0439, \u0442\u0435 \u0447\u0442\u043e \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u044e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 `Staged`\n5. \u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e, \u0442\u043e 3-5 \u043f\u0443\u043d\u043a\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u0442\u0441\u044f.\n6. \u041f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0438\u0442\u044f\u0442\u0441\u044f (`Committed`)\n\n\n## \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438\n\n- Morix \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u044b\u0442\u044b\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u043e\u0431\u044a\u0435\u043c\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n- \u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434 \u043d\u0435\u0441\u0435\u0442 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0438\u0441\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0445 \u043a\u043e\u043c\u0430\u043d\u0434, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0432\u0435\u0440\u0435\u043d\u044b.\n",
"bugtrack_url": null,
"license": null,
"summary": null,
"version": "0.6.10",
"project_urls": {
"Homepage": "https://gitlab.com/good-day-inc/morix/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a84dc87b181067840ba56ca41ede10fd5dd0ab073e63ff222e12fa976c85aad5",
"md5": "51019ab8b60a77bc8feec9dc38337e70",
"sha256": "51f1b4dfca22f51a2bc8a4d99f2b34f4c94d124a0593491d142f2c70c431bc40"
},
"downloads": -1,
"filename": "morix-0.6.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "51019ab8b60a77bc8feec9dc38337e70",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 22202,
"upload_time": "2024-09-22T19:02:01",
"upload_time_iso_8601": "2024-09-22T19:02:01.814756Z",
"url": "https://files.pythonhosted.org/packages/a8/4d/c87b181067840ba56ca41ede10fd5dd0ab073e63ff222e12fa976c85aad5/morix-0.6.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a3997f83d65bf3181adcf88003173f419eca80eb1bce03dcca5e375920163178",
"md5": "c1c5c9bb48c24a7ba330b7d2d48d5b9d",
"sha256": "f8044d4dd8202901e2ba894e8125d00dd1f01d3cb20780bca6879f06e1b3db79"
},
"downloads": -1,
"filename": "morix-0.6.10.tar.gz",
"has_sig": false,
"md5_digest": "c1c5c9bb48c24a7ba330b7d2d48d5b9d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 24770,
"upload_time": "2024-09-22T19:02:03",
"upload_time_iso_8601": "2024-09-22T19:02:03.061397Z",
"url": "https://files.pythonhosted.org/packages/a3/99/7f83d65bf3181adcf88003173f419eca80eb1bce03dcca5e375920163178/morix-0.6.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-22 19:02:03",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "good-day-inc",
"gitlab_project": "morix",
"lcname": "morix"
}