@llmist/cli 15.6.0 → 15.7.0
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/dist/cli.js +31 -7
- package/dist/cli.js.map +1 -1
- package/package.json +3 -3
package/dist/cli.js
CHANGED
|
@@ -98,7 +98,7 @@ import { Command, InvalidArgumentError as InvalidArgumentError2 } from "commande
|
|
|
98
98
|
// package.json
|
|
99
99
|
var package_default = {
|
|
100
100
|
name: "@llmist/cli",
|
|
101
|
-
version: "15.
|
|
101
|
+
version: "15.7.0",
|
|
102
102
|
description: "CLI for llmist - run LLM agents from the command line",
|
|
103
103
|
type: "module",
|
|
104
104
|
main: "dist/cli.js",
|
|
@@ -154,7 +154,7 @@ var package_default = {
|
|
|
154
154
|
node: ">=22.0.0"
|
|
155
155
|
},
|
|
156
156
|
dependencies: {
|
|
157
|
-
llmist: "^15.
|
|
157
|
+
llmist: "^15.7.0",
|
|
158
158
|
"@unblessed/node": "^1.0.0-alpha.23",
|
|
159
159
|
chalk: "^5.6.2",
|
|
160
160
|
commander: "^12.1.0",
|
|
@@ -168,7 +168,7 @@ var package_default = {
|
|
|
168
168
|
zod: "^4.1.12"
|
|
169
169
|
},
|
|
170
170
|
devDependencies: {
|
|
171
|
-
"@llmist/testing": "^15.
|
|
171
|
+
"@llmist/testing": "^15.7.0",
|
|
172
172
|
"@types/diff": "^8.0.0",
|
|
173
173
|
"@types/js-yaml": "^4.0.9",
|
|
174
174
|
"@types/marked-terminal": "^6.1.1",
|
|
@@ -5187,16 +5187,16 @@ var BlockRenderer = class _BlockRenderer {
|
|
|
5187
5187
|
}
|
|
5188
5188
|
/**
|
|
5189
5189
|
* Check if a gadget should render as plain text in focused mode.
|
|
5190
|
-
* TellUser and
|
|
5190
|
+
* TellUser, AskUser, and Finish render as text for a chat-like experience.
|
|
5191
5191
|
*/
|
|
5192
5192
|
shouldRenderAsText(node) {
|
|
5193
5193
|
if (this.contentFilterMode !== "focused") return false;
|
|
5194
5194
|
if (node.type !== "gadget") return false;
|
|
5195
5195
|
const name = node.name;
|
|
5196
|
-
return name === "TellUser" || name === "AskUser";
|
|
5196
|
+
return name === "TellUser" || name === "AskUser" || name === "Finish";
|
|
5197
5197
|
}
|
|
5198
5198
|
/**
|
|
5199
|
-
* Create a text-like block for TellUser/AskUser gadgets in focused mode.
|
|
5199
|
+
* Create a text-like block for TellUser/AskUser/Finish gadgets in focused mode.
|
|
5200
5200
|
* Renders just the content without the gadget header.
|
|
5201
5201
|
*/
|
|
5202
5202
|
createTextLikeBlock(node, top) {
|
|
@@ -5213,6 +5213,13 @@ ${renderMarkdown(message)}
|
|
|
5213
5213
|
if (typeof question === "string") {
|
|
5214
5214
|
content = `
|
|
5215
5215
|
? ${question}
|
|
5216
|
+
`;
|
|
5217
|
+
}
|
|
5218
|
+
} else if (node.name === "Finish") {
|
|
5219
|
+
const message = node.parameters?.message;
|
|
5220
|
+
if (typeof message === "string" && message.trim()) {
|
|
5221
|
+
content = `
|
|
5222
|
+
\x1B[32m\u2713\x1B[0m ${renderMarkdown(message)}
|
|
5216
5223
|
`;
|
|
5217
5224
|
}
|
|
5218
5225
|
}
|
|
@@ -5635,7 +5642,7 @@ ${indicator}`;
|
|
|
5635
5642
|
return false;
|
|
5636
5643
|
case "gadget": {
|
|
5637
5644
|
const name = node.name;
|
|
5638
|
-
return name === "TellUser" || name === "AskUser";
|
|
5645
|
+
return name === "TellUser" || name === "AskUser" || name === "Finish";
|
|
5639
5646
|
}
|
|
5640
5647
|
default:
|
|
5641
5648
|
return false;
|
|
@@ -6674,10 +6681,18 @@ var KeyboardManager = class {
|
|
|
6674
6681
|
onAction({ type: "scroll_page", direction: 1 });
|
|
6675
6682
|
});
|
|
6676
6683
|
screen.key(["up", "k"], () => {
|
|
6684
|
+
if (this.config.getContentFilterMode() === "focused") {
|
|
6685
|
+
onAction({ type: "scroll_line", direction: -1 });
|
|
6686
|
+
return;
|
|
6687
|
+
}
|
|
6677
6688
|
if (this.config.getFocusMode() !== "browse") return;
|
|
6678
6689
|
onAction({ type: "navigation", action: "select_previous" });
|
|
6679
6690
|
});
|
|
6680
6691
|
screen.key(["down", "j"], () => {
|
|
6692
|
+
if (this.config.getContentFilterMode() === "focused") {
|
|
6693
|
+
onAction({ type: "scroll_line", direction: 1 });
|
|
6694
|
+
return;
|
|
6695
|
+
}
|
|
6681
6696
|
if (this.config.getFocusMode() !== "browse") return;
|
|
6682
6697
|
onAction({ type: "navigation", action: "select_next" });
|
|
6683
6698
|
});
|
|
@@ -7917,6 +7932,7 @@ var TUIApp = class _TUIApp {
|
|
|
7917
7932
|
const keyboardManager = new KeyboardManager({
|
|
7918
7933
|
screen,
|
|
7919
7934
|
getFocusMode: () => controller.getFocusMode(),
|
|
7935
|
+
getContentFilterMode: () => controller.getContentFilterMode(),
|
|
7920
7936
|
isWaitingForREPLPrompt: () => inputHandler.isWaitingForREPLPrompt(),
|
|
7921
7937
|
hasPendingInput: () => inputHandler.hasPendingInput(),
|
|
7922
7938
|
isBlockExpanded: () => blockRenderer.getSelectedBlock()?.expanded ?? false,
|
|
@@ -8338,6 +8354,14 @@ function handleKeyAction(action, controller, blockRenderer, statusBar, screenCtx
|
|
|
8338
8354
|
screenCtx.renderNow();
|
|
8339
8355
|
break;
|
|
8340
8356
|
}
|
|
8357
|
+
case "scroll_line": {
|
|
8358
|
+
const body = layout.body;
|
|
8359
|
+
if (!body.scroll) return;
|
|
8360
|
+
body.scroll(action.direction);
|
|
8361
|
+
blockRenderer.handleUserScroll();
|
|
8362
|
+
screenCtx.renderNow();
|
|
8363
|
+
break;
|
|
8364
|
+
}
|
|
8341
8365
|
case "navigation":
|
|
8342
8366
|
switch (action.action) {
|
|
8343
8367
|
case "select_next":
|