@iola_adm/iola-cli 0.1.34 → 0.1.35
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/README.md +10 -1
- package/package.json +2 -2
- package/src/cli.js +35 -7
- package/wiki/Home.md +1 -1
- package/wiki//320/237/320/265/321/200/320/262/321/213/320/271-/320/267/320/260/320/277/321/203/321/201/320/272.md +9 -0
- package/wiki//320/237/320/273/320/260/321/202/321/204/320/276/321/200/320/274/320/260-/320/260/320/263/320/265/320/275/321/202/320/260.md +1 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# iola-cli
|
|
4
4
|
|
|
5
|
-
CLI и AI-агент
|
|
5
|
+
CLI и AI-агент городского округа "Город Йошкар-Ола".
|
|
6
6
|
|
|
7
7
|
Подробная документация: [GitHub Wiki](https://github.com/adm-iola/iola-cli/wiki).
|
|
8
8
|
|
|
@@ -37,6 +37,15 @@ npx -y @iola_adm/iola-cli
|
|
|
37
37
|
|
|
38
38
|
При первом запуске `iola` открывает мастер настройки, затем запускает интерактивный агент. Короткая справка: `iola help`, полный список команд: `iola commands`.
|
|
39
39
|
|
|
40
|
+
Повторный запуск мастера:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
iola wizard
|
|
44
|
+
iola setup wizard
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Мастер обновляет только выбранные разделы и не сбрасывает остальные настройки.
|
|
48
|
+
|
|
40
49
|
Основные команды:
|
|
41
50
|
|
|
42
51
|
```bash
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@iola_adm/iola-cli",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "CLI и AI-агент
|
|
3
|
+
"version": "0.1.35",
|
|
4
|
+
"description": "CLI и AI-агент городского округа Йошкар-Ола.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/adm-iola/iola-cli#readme",
|
|
7
7
|
"repository": {
|
package/src/cli.js
CHANGED
|
@@ -271,7 +271,7 @@ const BANNER = `\x1b[38;5;45m┌────────────────
|
|
|
271
271
|
│\x1b[38;5;51m | |___| |___ | |_____| __/| _ <| |_| | |___| . \\ | | \x1b[38;5;45m│
|
|
272
272
|
│\x1b[38;5;51m \\____|_____|___| |_| |_| \\_\\\\___/|_____|_|\\_\\ |_| \x1b[38;5;45m│
|
|
273
273
|
│ │
|
|
274
|
-
│\x1b[38;5;213m Й О Ш К А Р - О Л
|
|
274
|
+
│\x1b[38;5;213m C L I - Й О Ш К А Р - О Л А \x1b[38;5;45m│
|
|
275
275
|
│ │
|
|
276
276
|
│\x1b[38;5;250m открытые данные • MCP • локальный AI \x1b[38;5;45m│
|
|
277
277
|
│ │
|
|
@@ -353,6 +353,7 @@ const COMMANDS = new Map([
|
|
|
353
353
|
["mcp-info", showMcpInfo],
|
|
354
354
|
["setup", setupClient],
|
|
355
355
|
["onboard", onboard],
|
|
356
|
+
["wizard", onboard],
|
|
356
357
|
]);
|
|
357
358
|
|
|
358
359
|
export async function main(argv) {
|
|
@@ -405,11 +406,11 @@ export async function main(argv) {
|
|
|
405
406
|
|
|
406
407
|
async function showHelp() {
|
|
407
408
|
showBanner();
|
|
408
|
-
console.log(`iola -
|
|
409
|
+
console.log(`iola - CLI и AI-агент городского округа "Город Йошкар-Ола"
|
|
409
410
|
|
|
410
411
|
Запуск:
|
|
411
412
|
iola открыть интерактивный агент
|
|
412
|
-
iola
|
|
413
|
+
iola wizard мастер настройки
|
|
413
414
|
iola ask "найди школу 29" задать вопрос
|
|
414
415
|
iola search "Петрова" поиск по открытым данным
|
|
415
416
|
|
|
@@ -533,6 +534,7 @@ Usage:
|
|
|
533
534
|
iola mcp-info [--json]
|
|
534
535
|
iola setup codex
|
|
535
536
|
iola onboard
|
|
537
|
+
iola wizard
|
|
536
538
|
iola version
|
|
537
539
|
|
|
538
540
|
Environment:
|
|
@@ -960,6 +962,8 @@ async function handleAgentLine(line, state) {
|
|
|
960
962
|
search: ["search", args],
|
|
961
963
|
"mcp-info": ["mcp-info", args],
|
|
962
964
|
setup: ["setup", args],
|
|
965
|
+
wizard: ["wizard", args],
|
|
966
|
+
onboard: ["onboard", args],
|
|
963
967
|
}[command];
|
|
964
968
|
|
|
965
969
|
if (!mapped) {
|
|
@@ -978,6 +982,7 @@ function printAgentHelp() {
|
|
|
978
982
|
/help
|
|
979
983
|
/health
|
|
980
984
|
/doctor
|
|
985
|
+
/wizard
|
|
981
986
|
/db status
|
|
982
987
|
/sessions
|
|
983
988
|
/resume SESSION_ID
|
|
@@ -1097,12 +1102,13 @@ function safePrompt(rl, closed = false) {
|
|
|
1097
1102
|
}
|
|
1098
1103
|
|
|
1099
1104
|
function showBanner() {
|
|
1105
|
+
const version = getPackageVersion();
|
|
1100
1106
|
if (process.stdout.isTTY && process.env.NO_COLOR !== "1") {
|
|
1101
|
-
console.log(BANNER);
|
|
1107
|
+
console.log(BANNER.replace("> iola help", `v${version} • iola help`));
|
|
1102
1108
|
return;
|
|
1103
1109
|
}
|
|
1104
1110
|
|
|
1105
|
-
console.log(
|
|
1111
|
+
console.log(`CLI-ЙОШКАР-ОЛА v${version}`);
|
|
1106
1112
|
console.log("открытые данные • MCP • локальный AI");
|
|
1107
1113
|
}
|
|
1108
1114
|
|
|
@@ -6314,10 +6320,15 @@ async function searchAll(args) {
|
|
|
6314
6320
|
}
|
|
6315
6321
|
|
|
6316
6322
|
async function setupClient(args) {
|
|
6317
|
-
const [client] = args;
|
|
6323
|
+
const [client, ...rest] = args;
|
|
6324
|
+
|
|
6325
|
+
if (client === "wizard" || client === "onboard") {
|
|
6326
|
+
await onboard(rest);
|
|
6327
|
+
return;
|
|
6328
|
+
}
|
|
6318
6329
|
|
|
6319
6330
|
if (client !== "codex") {
|
|
6320
|
-
throw new Error('
|
|
6331
|
+
throw new Error('Доступно: iola setup codex, iola setup wizard.');
|
|
6321
6332
|
}
|
|
6322
6333
|
|
|
6323
6334
|
await runCommand("codex", ["mcp", "add", "yoshkarOlaPublicData", "--url", `${await getMcpBaseUrl()}/mcp`], { inherit: true });
|
|
@@ -6328,6 +6339,9 @@ async function setupClient(args) {
|
|
|
6328
6339
|
async function onboard(args = []) {
|
|
6329
6340
|
const options = parseOptions(args);
|
|
6330
6341
|
showBanner();
|
|
6342
|
+
console.log("Мастер настройки iola-cli.");
|
|
6343
|
+
console.log("Повторный запуск обновляет только выбранные разделы и не сбрасывает остальные настройки.");
|
|
6344
|
+
console.log("");
|
|
6331
6345
|
initDatabase();
|
|
6332
6346
|
await handleConfig(["validate"]);
|
|
6333
6347
|
await doctor(["--summary"]);
|
|
@@ -6360,6 +6374,16 @@ async function onboard(args = []) {
|
|
|
6360
6374
|
await aiSetup(["codex"]);
|
|
6361
6375
|
}
|
|
6362
6376
|
if (components.includes("codex-mcp")) await setupClient(["codex"]);
|
|
6377
|
+
if (components.includes("browser")) {
|
|
6378
|
+
const status = await getBrowserStatus();
|
|
6379
|
+
if (status.installed === "yes") console.log("Browser runtime уже установлен.");
|
|
6380
|
+
else await installBrowserRuntime();
|
|
6381
|
+
}
|
|
6382
|
+
if (components.includes("gosuslugi")) {
|
|
6383
|
+
await handleGosuslugi(["terms"]);
|
|
6384
|
+
if (process.stdin.isTTY) await handleGosuslugi(["consent"]);
|
|
6385
|
+
console.log("Параметры подключения можно указать командой: iola gosuslugi configure --auth-url URL --token-url URL --client-id ID --scope openid");
|
|
6386
|
+
}
|
|
6363
6387
|
if (components.includes("index")) {
|
|
6364
6388
|
await setFilesMode("read-only", await loadConfig());
|
|
6365
6389
|
console.log("Индекс документов можно запустить командой: iola index folder ./docs");
|
|
@@ -6380,6 +6404,8 @@ async function chooseOnboardComponents() {
|
|
|
6380
6404
|
console.log("6. Codex CLI");
|
|
6381
6405
|
console.log("7. MCP для Codex");
|
|
6382
6406
|
console.log("8. Индекс локальных документов");
|
|
6407
|
+
console.log("9. Browser runtime");
|
|
6408
|
+
console.log("10. Личное подключение Госуслуг");
|
|
6383
6409
|
console.log("");
|
|
6384
6410
|
const rl = readline.createInterface({ input, output });
|
|
6385
6411
|
try {
|
|
@@ -6394,6 +6420,8 @@ async function chooseOnboardComponents() {
|
|
|
6394
6420
|
6: "codex",
|
|
6395
6421
|
7: "codex-mcp",
|
|
6396
6422
|
8: "index",
|
|
6423
|
+
9: "browser",
|
|
6424
|
+
10: "gosuslugi",
|
|
6397
6425
|
};
|
|
6398
6426
|
return [...selected].map((item) => map[item] || item).filter(Boolean);
|
|
6399
6427
|
} finally {
|
package/wiki/Home.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Платформа агента
|
|
2
2
|
|
|
3
|
-
`iola-cli` можно использовать не только как набор команд, но и как локальную платформу
|
|
3
|
+
`iola-cli` можно использовать не только как набор команд, но и как локальную платформу AI-агента городского округа "Город Йошкар-Ола".
|
|
4
4
|
|
|
5
5
|
## MCP server
|
|
6
6
|
|
|
@@ -101,4 +101,3 @@ iola review data
|
|
|
101
101
|
iola review docs ./docs
|
|
102
102
|
iola review report report.docx
|
|
103
103
|
```
|
|
104
|
-
|