@iola_adm/iola-cli 0.2.5 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/wiki/Home.md CHANGED
@@ -12,6 +12,7 @@
12
12
  - работа с локальной моделью Ollama;
13
13
  - работа с YandexGPT, GigaChat, OpenAI, OpenRouter и Codex CLI;
14
14
  - geo-сценарии для жителей через Yandex Geocoder API;
15
+ - личные облачные диски: Яндекс Диск и Облако Mail.ru;
15
16
  - подключение публичного MCP-сервера.
16
17
 
17
18
  Быстрый старт:
@@ -30,6 +31,7 @@ iola ask "найди школу 29"
30
31
  - [Мастер настройки](Мастер-настройки)
31
32
  - [AI-профили](AI-профили)
32
33
  - [Yandex Geocoder API key](Yandex-Geocoder-API-key)
34
+ - [Облачные диски](Облачные-диски)
33
35
  - [Скиллы для жителей](Скиллы-для-жителей)
34
36
  - [Локальный инструментальный агент](Локальный-инструментальный-агент)
35
37
  - [Skills и toolsets](Skills-и-toolsets)
@@ -23,7 +23,7 @@
23
23
  9. После создания ключ появится в списке ключей API Геокодера.
24
24
  10. Скопируйте значение ключа. Это значение будет `YANDEX_GEOCODER_API_KEY`.
25
25
 
26
- Важно: новый ключ может начать работать не сразу. В документации Яндекса указано, что активация ключа может занять до 15 минут. Если CLI пишет `Invalid api key` сразу после создания ключа, подождите и повторите проверку.
26
+ Важно: новый ключ может начать работать не сразу. В документации Яндекса указано, что активация ключа может занять до 15 минут, на практике лучше спокойно подождать 15-30 минут. Если CLI пишет `Invalid api key` сразу после создания ключа, это не обязательно ошибка: подождите и повторите проверку командой `iola geo key doctor`.
27
27
 
28
28
  ## Сохранение в CLI
29
29
 
@@ -33,6 +33,29 @@ iola geo key set yandex
33
33
  iola geo key status
34
34
  iola geo key doctor
35
35
  iola geo geocode "Йошкар-Ола, улица Петрова, 15"
36
+ iola geo nearby "Йошкар-Ола, улица Петрова, 15" --dataset all --limit 5
37
+ iola geo distance --from "Петрова 15" --to "школа 7"
38
+ iola geo map-link "школа 7"
39
+ iola geo resolve "садик золотой петушок"
40
+ iola geo route-context "школа 7"
41
+ iola geo services "Йошкар-Ола, улица Петрова, 15"
42
+ ```
43
+
44
+ Облачные диски:
45
+
46
+ ```bash
47
+ iola cloud setup yandex-disk
48
+ iola cloud setup mailru-cloud
49
+ iola cloud status
50
+ iola cloud doctor
51
+ iola cloud use yandex-disk
52
+ iola cloud ls /IOLA
53
+ iola cloud find "справка" --path /IOLA
54
+ iola cloud upload report.md /IOLA/reports/report.md
55
+ iola cloud download /IOLA/reports/report.md ./report.md
56
+ iola cloud share /IOLA/reports/report.md
57
+ iola cloud save --text "Текст заметки" --path /IOLA/notes/note.txt
58
+ iola cloud backup
36
59
  ```
37
60
 
38
61
  Локальная БД:
@@ -94,6 +94,17 @@ iola index folder ./docs
94
94
 
95
95
  Инструкция по получению ключа: [Yandex Geocoder API key](Yandex-Geocoder-API-key).
96
96
 
97
+ ### 15. Облачный диск
98
+
99
+ Подключает личный облачный диск пользователя:
100
+
101
+ - Яндекс Диск;
102
+ - Облако Mail.ru.
103
+
104
+ Секреты сохраняются локально в `~/.iola/secrets.json`. Резервные копии CLI не включают OAuth-токены, пароли и API-ключи.
105
+
106
+ Инструкция: [Облачные диски](Облачные-диски).
107
+
97
108
  ## Повторный запуск
98
109
 
99
110
  Если компонент уже настроен, его можно не выбирать. Если нужно переустановить или обновить компонент, выберите его номер вручную.
@@ -0,0 +1,90 @@
1
+ # Облачные диски
2
+
3
+ `iola-cli` поддерживает личные облачные диски для бытовых сценариев: сохранить отчет, найти документ, сделать резервную копию, создать ссылку и собрать пакет документов.
4
+
5
+ Сейчас поддерживаются:
6
+
7
+ - Яндекс Диск;
8
+ - Облако Mail.ru через WebDAV.
9
+
10
+ Корпоративные хранилища, S3, Nextcloud и ownCloud в пользовательский контур не входят.
11
+
12
+ ## Команды
13
+
14
+ ```bash
15
+ iola cloud setup yandex-disk
16
+ iola cloud setup mailru-cloud
17
+ iola cloud status
18
+ iola cloud doctor
19
+ iola cloud use yandex-disk
20
+ iola cloud ls /IOLA
21
+ iola cloud find "справка" --path /IOLA
22
+ iola cloud upload report.md /IOLA/reports/report.md
23
+ iola cloud download /IOLA/reports/report.md ./report.md
24
+ iola cloud share /IOLA/reports/report.md
25
+ iola cloud save --text "Текст заметки" --path /IOLA/notes/note.txt
26
+ iola cloud backup
27
+ ```
28
+
29
+ ## Яндекс Диск
30
+
31
+ Яндекс Диск подключается через OAuth-токен пользователя.
32
+
33
+ Официальная документация:
34
+
35
+ - REST API Диска: `https://yandex.ru/dev/disk/rest?lang=ru`
36
+ - получение OAuth-токена: `https://yandex.ru/dev/id/doc/ru/access`
37
+ - получение токена вручную для проверки: `https://yandex.ru/dev/id/doc/ru/tokens/debug-token`
38
+
39
+ Что сделать:
40
+
41
+ 1. Откройте страницу Яндекс OAuth: `https://oauth.yandex.ru/`.
42
+ 2. Создайте приложение для личного использования.
43
+ 3. В правах приложения выберите доступ к Яндекс Диску.
44
+ 4. Получите OAuth-токен.
45
+ 5. В CLI выполните:
46
+
47
+ ```bash
48
+ iola cloud setup yandex-disk
49
+ ```
50
+
51
+ 6. Вставьте OAuth-токен.
52
+ 7. Проверьте подключение:
53
+
54
+ ```bash
55
+ iola cloud doctor
56
+ ```
57
+
58
+ Секрет сохраняется локально в `~/.iola/secrets.json`.
59
+
60
+ ## Облако Mail.ru
61
+
62
+ Облако Mail.ru подключается через WebDAV.
63
+
64
+ Официальная инструкция Mail.ru по WebDAV: `https://help.mail.ru/cloud/desktop/webdav/`
65
+
66
+ Что сделать:
67
+
68
+ 1. Войдите в аккаунт Mail.ru.
69
+ 2. Создайте пароль для внешнего приложения. Для WebDAV обычный пароль от почты использовать не нужно.
70
+ 3. В CLI выполните:
71
+
72
+ ```bash
73
+ iola cloud setup mailru-cloud
74
+ ```
75
+
76
+ 4. Введите email и пароль внешнего приложения/WebDAV.
77
+ 5. Проверьте подключение:
78
+
79
+ ```bash
80
+ iola cloud doctor
81
+ ```
82
+
83
+ Публичные ссылки через CLI сейчас поддерживаются только для Яндекс Диска. Для Mail.ru доступен список файлов, загрузка и скачивание через WebDAV.
84
+
85
+ ## Безопасность
86
+
87
+ - OAuth-токены, пароли и API-ключи не попадают в резервные копии.
88
+ - `iola cloud backup` сохраняет конфигурацию без секретов.
89
+ - Удаление и массовое перемещение файлов в первом контуре не реализованы намеренно.
90
+ - Для локальных файлов продолжает действовать отдельный режим `iola files mode`.
@@ -1,6 +1,6 @@
1
1
  # Скиллы для жителей
2
2
 
3
- Эта страница фиксирует пользовательские skills, которые стоит развивать в `iola-cli`.
3
+ Эта страница фиксирует пользовательские skills, которые реализованы и развиваются в `iola-cli`.
4
4
 
5
5
  Цель этих skills - помогать жителю города в бытовых вопросах: где находится объект, что рядом, какой объект ближе, как открыть место на карте. Это не административный аудит данных.
6
6
 
@@ -8,6 +8,19 @@
8
8
 
9
9
  Для geo skills нужен ключ `Yandex Geocoder API`.
10
10
 
11
+ Первый рабочий контур подключен к слоям `schools` и `kindergartens`.
12
+
13
+ Команды:
14
+
15
+ ```bash
16
+ iola geo nearby "Йошкар-Ола, улица Петрова, 15" --dataset all --limit 5
17
+ iola geo distance --from "Петрова 15" --to "школа 7"
18
+ iola geo map-link "школа 7"
19
+ iola geo resolve "садик золотой петушок"
20
+ iola geo route-context "школа 7"
21
+ iola geo services "Йошкар-Ола, улица Петрова, 15"
22
+ ```
23
+
11
24
  ### nearby
12
25
 
13
26
  Находит городские объекты рядом с адресом пользователя.
@@ -18,7 +31,7 @@
18
31
  - `какие школы ближе к улице Машиностроителей`;
19
32
  - `что из городских учреждений рядом с домом`.
20
33
 
21
- На первом этапе работает по слоям `schools` и `kindergartens`. Позже можно подключить МФЦ, поликлиники, остановки, спортобъекты и учреждения культуры.
34
+ Сейчас работает по слоям `schools` и `kindergartens`. Позже можно подключить МФЦ, поликлиники, остановки, спортобъекты и учреждения культуры.
22
35
 
23
36
  ### route-context
24
37
 
@@ -81,17 +94,46 @@
81
94
 
82
95
  Это важно, чтобы не путать объекты с одинаковыми номерами или похожими названиями.
83
96
 
84
- ## Приоритет реализации
97
+ ## Ограничения
98
+
99
+ - Расстояние считается по прямой между координатами. Это не автомобильный и не пешеходный маршрут.
100
+ - CLI не должен подставлять похожий объект из другого населенного пункта. Если слой не содержит нужный объект, ответ должен прямо говорить, что данных недостаточно.
101
+ - При первом поиске рядом CLI геокодирует объекты слоя. Повторные запросы в той же сессии работают быстрее за счет памяти процесса.
102
+
103
+ ## Personal docs skills
104
+
105
+ Эти skills работают с личными документами пользователя в подключенном облаке. Они включаются только при явном облачном намерении: `Яндекс Диск`, `Облако Mail.ru`, `облако`, `сохрани на диск`, `загрузи`, `дай ссылку`, `поделиться`.
106
+
107
+ Если пользователь говорит только `файл`, `папка` или `документ`, CLI использует `local-files`, а не облако.
108
+
109
+ ### cloud-find-document
110
+
111
+ Найти документ в подключенном облаке: справку, квитанцию, школьный документ, файл обращения.
112
+
113
+ ### cloud-save-result
114
+
115
+ Сохранить ответ CLI, отчет, карточку учреждения или список ближайших объектов в `/IOLA`.
116
+
117
+ ### cloud-share-link
118
+
119
+ Создать публичную ссылку на файл. В первом контуре поддерживается для Яндекс Диска.
120
+
121
+ ### cloud-document-pack
122
+
123
+ Собрать папку с материалами для обращения: текст, найденные данные, ссылки, вложенные документы и скриншоты.
124
+
125
+ ### cloud-inbox
126
+
127
+ Проверить `/IOLA/inbox`, найти новые документы и предложить их разобрать или проиндексировать.
128
+
129
+ ### cloud-backup-cli
130
+
131
+ Сохранить резервную копию настроек CLI без секретов, OAuth-токенов и API-ключей.
85
132
 
86
- Первый этап:
133
+ ### cloud-restore-cli
87
134
 
88
- 1. `nearby`
89
- 2. `place-resolver`
90
- 3. `map-link`
135
+ Восстановить CLI из резервной копии, когда пользователь переустановил программу или перешел на другой компьютер.
91
136
 
92
- Второй этап:
137
+ ### cloud-organize
93
138
 
94
- 1. `distance`
95
- 2. `area-filter`
96
- 3. `route-context`
97
- 4. `address-to-services`
139
+ Помочь разобрать личные документы: найти старые отчеты, крупные файлы, дубликаты и предложить структуру папок.