# Mory Project
## Описание
Mory — это инструмент для сканирования, анализа и автоматизированного изменения файлов в заданной директории с использованием возможностей OpenAI GPT. Проект предоставляет возможность интеграции с git, создания конфигураций и выполнения команд через консоль.
## Установка
Установите пакет `mory` с помощью pip:
```shell
pip install mory
```
## Использование
После установки, вы можете использовать команду `mory` для запуска приложения.
### Основные команды
- **Сканирование директории**:
```shell
mory scan --path <path_to_directory>
```
Параметры:
- `-p, --path`: Указать путь к сканируемой директории.
- `-f, --save-to-file`: Сохранить результат сканирования во временную папку перед отправкой.
- `-s, --structure-only`: Составить только структуру проекта.
- **Открыть файл конфигурации**:
```shell
mory config
```
### Структура проекта
```plaintext
mory-project/
│
├── docs/
│ ├── roadmap.md
│ └── qa-gpt.md
│
├── templates/
│ └── config.yml
│
├── tests/
│ ├── __init__.py
│ ├── test_run.py
│ └── test_scan.py
│
├── mory/
│ ├── __init__.py
│ ├── chat.py
│ ├── config_loader.py
│ ├── conversation.py
│ ├── git_helpers.py
│ ├── helpers.py
│ ├── main.py
│ ├── scan.py
│ └── version.py
│
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
└── setup.py
```
## Тестирование
Тесты реализованы с использованием `pytest`. Для выполнения тестов используйте команду:
```shell
pytest tests
```
Это позволит запустить все тесты в директории `tests` и проверить корректность работы модулей проекта.
Raw data
{
"_id": null,
"home_page": "https://gitlab.com/good-day-inc/mory/",
"name": "mory",
"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/8d/d9/465df1d2d93fc8c1ee927ca15fdcda4b068c178ecd6427720e5e7fad59d6/mory-0.5.0.tar.gz",
"platform": null,
"description": "# Mory Project\n\n## \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\nMory \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. \u041f\u0440\u043e\u0435\u043a\u0442 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 git, \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c.\n\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\n\n\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043f\u0430\u043a\u0435\u0442 `mory` \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e pip:\n\n```shell\npip install mory\n```\n\n## \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\n\n\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 `mory` \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \n\n### \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\n- **\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438**:\n ```shell\n mory scan --path <path_to_directory>\n ```\n \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:\n - `-p, --path`: \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0443\u0442\u044c \u043a \u0441\u043a\u0430\u043d\u0438\u0440\u0443\u0435\u043c\u043e\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438.\n - `-f, --save-to-file`: \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u043f\u0435\u0440\u0435\u0434 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439.\n - `-s, --structure-only`: \u0421\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n\n- **\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438**:\n ```shell\n mory config\n ```\n\n### \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\n\n```plaintext\nmory-project/\n\u2502\n\u251c\u2500\u2500 docs/\n\u2502 \u251c\u2500\u2500 roadmap.md\n\u2502 \u2514\u2500\u2500 qa-gpt.md\n\u2502\n\u251c\u2500\u2500 templates/\n\u2502 \u2514\u2500\u2500 config.yml\n\u2502\n\u251c\u2500\u2500 tests/\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 test_run.py\n\u2502 \u2514\u2500\u2500 test_scan.py\n\u2502\n\u251c\u2500\u2500 mory/\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 chat.py\n\u2502 \u251c\u2500\u2500 config_loader.py\n\u2502 \u251c\u2500\u2500 conversation.py\n\u2502 \u251c\u2500\u2500 git_helpers.py\n\u2502 \u251c\u2500\u2500 helpers.py\n\u2502 \u251c\u2500\u2500 main.py\n\u2502 \u251c\u2500\u2500 scan.py\n\u2502 \u2514\u2500\u2500 version.py\n\u2502\n\u251c\u2500\u2500 .gitignore\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 requirements.txt\n\u2514\u2500\u2500 setup.py\n```\n\n## \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\n\n\u0422\u0435\u0441\u0442\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c `pytest`. \u0414\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u0441\u0442\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443:\n\n```shell\npytest tests\n```\n\n\u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0441\u0435 \u0442\u0435\u0441\u0442\u044b \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 `tests` \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n",
"bugtrack_url": null,
"license": null,
"summary": null,
"version": "0.5.0",
"project_urls": {
"Homepage": "https://gitlab.com/good-day-inc/mory/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5820ecf9ea7ba4e7f80054066c0e81287c838cea2fb06e0969674b1526bdd1f5",
"md5": "fbb08f6a5985cb0e0c960bea64df5291",
"sha256": "9ece7b688b61b516e5b6bfed2b4f629e4378d3556ebe54d12ebcbc820bc016ea"
},
"downloads": -1,
"filename": "mory-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fbb08f6a5985cb0e0c960bea64df5291",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 14824,
"upload_time": "2024-09-04T08:41:10",
"upload_time_iso_8601": "2024-09-04T08:41:10.082230Z",
"url": "https://files.pythonhosted.org/packages/58/20/ecf9ea7ba4e7f80054066c0e81287c838cea2fb06e0969674b1526bdd1f5/mory-0.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8dd9465df1d2d93fc8c1ee927ca15fdcda4b068c178ecd6427720e5e7fad59d6",
"md5": "f8043916de30944bbbe18edb1ba39ced",
"sha256": "814734736471694aefe6d25e6a2a3267192a5fca6bedb8f8fc29d5a622baec4e"
},
"downloads": -1,
"filename": "mory-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "f8043916de30944bbbe18edb1ba39ced",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 15528,
"upload_time": "2024-09-04T08:41:11",
"upload_time_iso_8601": "2024-09-04T08:41:11.496412Z",
"url": "https://files.pythonhosted.org/packages/8d/d9/465df1d2d93fc8c1ee927ca15fdcda4b068c178ecd6427720e5e7fad59d6/mory-0.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-04 08:41:11",
"github": false,
"gitlab": true,
"bitbucket": false,
"codeberg": false,
"gitlab_user": "good-day-inc",
"gitlab_project": "mory",
"lcname": "mory"
}