@vincemakes/kiso-code 0.24.2 → 0.24.4
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/dispatch.js +23 -6
- package/dist/index.js +3 -6
- package/dist/trust-ui.js +1 -2
- package/package.json +14 -14
package/dist/dispatch.js
CHANGED
|
@@ -26,8 +26,11 @@ export function dispatch(line, ctx) {
|
|
|
26
26
|
ctx.chainRef.current = ctx.chainRef.current.then(async () => {
|
|
27
27
|
// TUI2-R1.5 9 (VD-10): /help is sentences for a human — the keys
|
|
28
28
|
// row in particular is one long line that hard-folded mid-word.
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
// DC-51: ONE call, because one call is ONE CELL. D1 puts a blank
|
|
30
|
+
// between any two elements, so a row-per-call group comes out
|
|
31
|
+
// double-spaced — which is what the owner photographed on the
|
|
32
|
+
// ctrl+o expansion.
|
|
33
|
+
bodyLog(helpRows().join("\n"), "words");
|
|
31
34
|
ctx.input.prompt();
|
|
32
35
|
});
|
|
33
36
|
return;
|
|
@@ -96,8 +99,23 @@ export function dispatch(line, ctx) {
|
|
|
96
99
|
}
|
|
97
100
|
const land = async () => {
|
|
98
101
|
if (r.kind === "appended") {
|
|
99
|
-
|
|
100
|
-
|
|
102
|
+
// DC-51 — ONE CALL, because one call is ONE CELL.
|
|
103
|
+
//
|
|
104
|
+
// This was a loop, one `bodyLog` per line, and each call
|
|
105
|
+
// makes its own raw cell — so D1 put a blank between every
|
|
106
|
+
// pair and the expansion came out laced with unpainted
|
|
107
|
+
// rows, twice the height of the card it is meant to be.
|
|
108
|
+
// The owner saw it as stripes.
|
|
109
|
+
//
|
|
110
|
+
// It only became wrong when the block became RENDERED ROWS
|
|
111
|
+
// (0.24.2 ③). Before that the lines were a header and two
|
|
112
|
+
// multi-line payloads — four cells, and the payloads' own
|
|
113
|
+
// newlines kept their rows inside one cell each.
|
|
114
|
+
//
|
|
115
|
+
// `bodyLog` splits on newlines, and a rendered row may not
|
|
116
|
+
// contain one (invariant ①b throws on it), so joining is
|
|
117
|
+
// exactly reversible here.
|
|
118
|
+
bodyLog(r.lines.join("\n"));
|
|
101
119
|
}
|
|
102
120
|
else if (r.kind === "none") {
|
|
103
121
|
// DC-35: "nothing to expand" was said in two situations and
|
|
@@ -126,8 +144,7 @@ export function dispatch(line, ctx) {
|
|
|
126
144
|
}
|
|
127
145
|
else {
|
|
128
146
|
bodyLog(`--- re-wrapped ${r.blocks} block${r.blocks === 1 ? "" : "s"} at the current width (appended — the history above is unchanged) ---`);
|
|
129
|
-
|
|
130
|
-
bodyLog(line);
|
|
147
|
+
bodyLog(r.lines.join("\n")); // DC-51: one call, one cell
|
|
131
148
|
if (r.skipped > 0)
|
|
132
149
|
bodyLog(`--- ${r.skipped} earlier block${r.skipped === 1 ? "" : "s"} not re-wrapped (bounded at two screens) ---`);
|
|
133
150
|
}
|
package/dist/index.js
CHANGED
|
@@ -712,8 +712,7 @@ async function chatLoop(agent, firstId, input, autoCompact) {
|
|
|
712
712
|
// prompt inside a conversation with thousands of events — the
|
|
713
713
|
// durable log was right there and none of it was shown. Empty for
|
|
714
714
|
// a fresh session, so `kiso chat` is byte-identical.
|
|
715
|
-
|
|
716
|
-
bodyLog(line);
|
|
715
|
+
bodyLog(resumeTail(session.log.all, process.stdout.columns ?? 80).join("\n")); // DC-51: one call, one cell
|
|
717
716
|
// R2 (owner, 2026-08-27): the resume list is NOT on the opening
|
|
718
717
|
// screen. `/resume` is where you go looking for a session; the
|
|
719
718
|
// opening's job is to say what THIS one is.
|
|
@@ -732,8 +731,7 @@ async function chatLoop(agent, firstId, input, autoCompact) {
|
|
|
732
731
|
}
|
|
733
732
|
else {
|
|
734
733
|
bodyLog(`session ${id} (switched — previous: ${prev}, /resume ${prev} returns)\n`);
|
|
735
|
-
|
|
736
|
-
bodyLog(line);
|
|
734
|
+
bodyLog(resumeTail(session.log.all, process.stdout.columns ?? 80).join("\n")); // DC-51: one call, one cell
|
|
737
735
|
if (currentFaux)
|
|
738
736
|
session.setAdapter(createFauxProvider(readFauxScript().slice(fauxSkip(id))));
|
|
739
737
|
}
|
|
@@ -1000,8 +998,7 @@ async function main() {
|
|
|
1000
998
|
session.setAdapter(createFauxProvider(readFauxScript().slice(fauxSkip(id))));
|
|
1001
999
|
// REL-0152-D5 — the same tail on the explicit-id form. NOT on
|
|
1002
1000
|
// the -p path above: that one's stdout is a machine's input.
|
|
1003
|
-
|
|
1004
|
-
bodyLog(line);
|
|
1001
|
+
bodyLog(resumeTail(session.log.all, process.stdout.columns ?? 80).join("\n")); // DC-51: one call, one cell
|
|
1005
1002
|
await resume(session, prompt, faux, input);
|
|
1006
1003
|
break;
|
|
1007
1004
|
}
|
package/dist/trust-ui.js
CHANGED
|
@@ -245,8 +245,7 @@ export async function resolveProjectTrust(input) {
|
|
|
245
245
|
// the bodyLog below records, verbatim — the listing still lands in
|
|
246
246
|
// the scrollback; the panel is a bounded block, the record is not).
|
|
247
247
|
bodyLog(`[project .kiso] ${artifacts.root}`);
|
|
248
|
-
|
|
249
|
-
bodyLog(row);
|
|
248
|
+
bodyLog(projectTrustRows(artifacts.files, " ").join("\n")); // DC-51: one call, one cell
|
|
250
249
|
const verdict = await askPanel(input, projectTrustView(artifacts.root, artifacts.files));
|
|
251
250
|
// A cancel is a "no" HERE — refused is sticky, the project does not
|
|
252
251
|
// load (re-evaluate by deleting the trust line or changing a file).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vincemakes/kiso-code",
|
|
3
|
-
"version": "0.24.
|
|
3
|
+
"version": "0.24.4",
|
|
4
4
|
"description": "kiso CLI — the durable coding agent that survives kill -9: kiso chat / kiso resume / kiso sessions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,19 +18,19 @@
|
|
|
18
18
|
"test": "vitest run"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@vincemakes/kiso-ask-ext": "0.24.
|
|
22
|
-
"@vincemakes/kiso-core": "0.24.
|
|
23
|
-
"@vincemakes/kiso-evals": "0.24.
|
|
24
|
-
"@vincemakes/kiso-mcp-ext": "0.24.
|
|
25
|
-
"@vincemakes/kiso-provider-anthropic": "0.24.
|
|
26
|
-
"@vincemakes/kiso-provider-openai": "0.24.
|
|
27
|
-
"@vincemakes/kiso-runtime": "0.24.
|
|
28
|
-
"@vincemakes/kiso-skills-ext": "0.24.
|
|
29
|
-
"@vincemakes/kiso-subagent-ext": "0.24.
|
|
30
|
-
"@vincemakes/kiso-task-ext": "0.24.
|
|
31
|
-
"@vincemakes/kiso-tools-node": "0.24.
|
|
32
|
-
"@vincemakes/kiso-tui": "0.24.
|
|
33
|
-
"@vincemakes/kiso-tui-cells": "0.24.
|
|
21
|
+
"@vincemakes/kiso-ask-ext": "0.24.4",
|
|
22
|
+
"@vincemakes/kiso-core": "0.24.4",
|
|
23
|
+
"@vincemakes/kiso-evals": "0.24.4",
|
|
24
|
+
"@vincemakes/kiso-mcp-ext": "0.24.4",
|
|
25
|
+
"@vincemakes/kiso-provider-anthropic": "0.24.4",
|
|
26
|
+
"@vincemakes/kiso-provider-openai": "0.24.4",
|
|
27
|
+
"@vincemakes/kiso-runtime": "0.24.4",
|
|
28
|
+
"@vincemakes/kiso-skills-ext": "0.24.4",
|
|
29
|
+
"@vincemakes/kiso-subagent-ext": "0.24.4",
|
|
30
|
+
"@vincemakes/kiso-task-ext": "0.24.4",
|
|
31
|
+
"@vincemakes/kiso-tools-node": "0.24.4",
|
|
32
|
+
"@vincemakes/kiso-tui": "0.24.4",
|
|
33
|
+
"@vincemakes/kiso-tui-cells": "0.24.4"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@types/node": "^26.1.2",
|