@iola_adm/iola-cli 0.1.39 → 0.1.40
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/package.json +1 -1
- package/src/cli.js +4 -13
package/package.json
CHANGED
package/src/cli.js
CHANGED
|
@@ -1182,9 +1182,10 @@ function renderAgentInput(state) {
|
|
|
1182
1182
|
clearAgentInputArea();
|
|
1183
1183
|
const prompt = "iola> ";
|
|
1184
1184
|
const lines = state.buffer.split("\n");
|
|
1185
|
-
output.write(`${prompt}${lines[0] || ""}
|
|
1185
|
+
output.write(`${prompt}${lines[0] || ""}`);
|
|
1186
1186
|
for (const line of lines.slice(1)) output.write(` ${line}\n`);
|
|
1187
1187
|
if (state.slashOpen) {
|
|
1188
|
+
output.write("\n");
|
|
1188
1189
|
const matches = currentSlashMatches(state);
|
|
1189
1190
|
if (matches.length === 0) {
|
|
1190
1191
|
output.write(" нет команд\n");
|
|
@@ -1196,7 +1197,6 @@ function renderAgentInput(state) {
|
|
|
1196
1197
|
output.write(" ↑/↓ выбрать • Enter вставить/выполнить • Esc закрыть\n");
|
|
1197
1198
|
}
|
|
1198
1199
|
}
|
|
1199
|
-
writePromptBottomPadding();
|
|
1200
1200
|
}
|
|
1201
1201
|
|
|
1202
1202
|
function clearAgentInputArea() {
|
|
@@ -1259,7 +1259,6 @@ function safePrompt(rl, closed = false) {
|
|
|
1259
1259
|
}
|
|
1260
1260
|
|
|
1261
1261
|
try {
|
|
1262
|
-
writePromptBottomPadding();
|
|
1263
1262
|
rl.prompt();
|
|
1264
1263
|
} catch {
|
|
1265
1264
|
// The input stream can close while an async slash-command is still running.
|
|
@@ -1282,7 +1281,6 @@ function attachSlashSuggestions(rl) {
|
|
|
1282
1281
|
lastFilter = filter;
|
|
1283
1282
|
output.write("\n");
|
|
1284
1283
|
printSlashMenu(filter, { compact: true, limit: 10 });
|
|
1285
|
-
writePromptBottomPadding();
|
|
1286
1284
|
rl.prompt(true);
|
|
1287
1285
|
}, 0);
|
|
1288
1286
|
};
|
|
@@ -1290,13 +1288,6 @@ function attachSlashSuggestions(rl) {
|
|
|
1290
1288
|
return () => input.off("keypress", onKeypress);
|
|
1291
1289
|
}
|
|
1292
1290
|
|
|
1293
|
-
function writePromptBottomPadding() {
|
|
1294
|
-
if (!output.isTTY) return;
|
|
1295
|
-
const padding = Math.max(0, Math.min(5, Number(process.env.IOLA_PROMPT_BOTTOM_PADDING || 2)));
|
|
1296
|
-
if (padding === 0) return;
|
|
1297
|
-
output.write(`${"\n".repeat(padding)}\x1b[${padding}A`);
|
|
1298
|
-
}
|
|
1299
|
-
|
|
1300
1291
|
async function showBanner(options = {}) {
|
|
1301
1292
|
const version = getPackageVersion();
|
|
1302
1293
|
const latest = options.skipUpdate ? null : await getLatestNpmVersion("@iola_adm/iola-cli");
|
|
@@ -1312,7 +1303,7 @@ async function showBanner(options = {}) {
|
|
|
1312
1303
|
}
|
|
1313
1304
|
|
|
1314
1305
|
console.log(`CLI-Йошкар-Ола ${updateAvailable ? `v${version} -> v${latest}` : `v${version}`}`);
|
|
1315
|
-
console.log("
|
|
1306
|
+
console.log("Йошкар-Ола • MCP • локальный AI");
|
|
1316
1307
|
if (updateAvailable) console.log("Обновить: npm install -g @iola_adm/iola-cli@latest");
|
|
1317
1308
|
}
|
|
1318
1309
|
|
|
@@ -1333,7 +1324,7 @@ function renderBanner(versionLine, color = false) {
|
|
|
1333
1324
|
line(),
|
|
1334
1325
|
line("CLI-Йошкар-Ола", c.title),
|
|
1335
1326
|
line(),
|
|
1336
|
-
line("
|
|
1327
|
+
line("Йошкар-Ола • MCP • локальный AI", c.muted),
|
|
1337
1328
|
line(),
|
|
1338
1329
|
line(versionLine, c.version),
|
|
1339
1330
|
`${c.border}└${"─".repeat(BANNER_WIDTH)}┘${c.reset}`,
|