koneck 2.128.28 → 2.128.30
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/config-store.d.ts +18 -0
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +24 -0
- package/dist/config-store.js.map +1 -1
- package/dist/ink-chat.d.ts +28 -0
- package/dist/ink-chat.d.ts.map +1 -1
- package/dist/ink-chat.js +223 -32
- package/dist/ink-chat.js.map +1 -1
- package/package.json +1 -1
package/dist/config-store.d.ts
CHANGED
|
@@ -118,4 +118,22 @@ export declare function configField(key: string): ConfigField | undefined;
|
|
|
118
118
|
export declare function stepValue(field: ConfigField, current: unknown, direction: 1 | -1): unknown;
|
|
119
119
|
/** How a value reads in the editor. Unset is named rather than shown as an empty gap. */
|
|
120
120
|
export declare function displayValue(value: unknown): string;
|
|
121
|
+
/**
|
|
122
|
+
* Which settings rows to draw, when there are more of them than the terminal has room for.
|
|
123
|
+
*
|
|
124
|
+
* The pane listed all seventeen unconditionally. With the tabs, the heading, the footer and the
|
|
125
|
+
* border that is past twenty-four rows before the composer is reached, so on an ordinary
|
|
126
|
+
* terminal the top simply scrolled away and what was left looked like a four-row panel with its
|
|
127
|
+
* lid cut off — reported as "/config is bad, just messy and minimal". It was neither minimal nor
|
|
128
|
+
* messy by design; it was a fragment.
|
|
129
|
+
*
|
|
130
|
+
* A window around the selected row, with the selection kept inside it, is what makes a long list
|
|
131
|
+
* usable in a short space. Height matters for a second reason here: this pane is drawn in the
|
|
132
|
+
* repainting region, and a region as tall as the window is what makes Ink wipe the whole terminal
|
|
133
|
+
* on every render.
|
|
134
|
+
*/
|
|
135
|
+
export declare function settingsWindow(total: number, selected: number, capacity: number): {
|
|
136
|
+
start: number;
|
|
137
|
+
end: number;
|
|
138
|
+
};
|
|
121
139
|
//# sourceMappingURL=config-store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../src/config-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../src/config-store.ts"],"names":[],"mappings":"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"}
|
package/dist/config-store.js
CHANGED
|
@@ -286,4 +286,28 @@ export function displayValue(value) {
|
|
|
286
286
|
return value ? 'on' : 'off';
|
|
287
287
|
return String(value);
|
|
288
288
|
}
|
|
289
|
+
/**
|
|
290
|
+
* Which settings rows to draw, when there are more of them than the terminal has room for.
|
|
291
|
+
*
|
|
292
|
+
* The pane listed all seventeen unconditionally. With the tabs, the heading, the footer and the
|
|
293
|
+
* border that is past twenty-four rows before the composer is reached, so on an ordinary
|
|
294
|
+
* terminal the top simply scrolled away and what was left looked like a four-row panel with its
|
|
295
|
+
* lid cut off — reported as "/config is bad, just messy and minimal". It was neither minimal nor
|
|
296
|
+
* messy by design; it was a fragment.
|
|
297
|
+
*
|
|
298
|
+
* A window around the selected row, with the selection kept inside it, is what makes a long list
|
|
299
|
+
* usable in a short space. Height matters for a second reason here: this pane is drawn in the
|
|
300
|
+
* repainting region, and a region as tall as the window is what makes Ink wipe the whole terminal
|
|
301
|
+
* on every render.
|
|
302
|
+
*/
|
|
303
|
+
export function settingsWindow(total, selected, capacity) {
|
|
304
|
+
const room = Math.max(1, Math.min(capacity, total));
|
|
305
|
+
if (room >= total)
|
|
306
|
+
return { start: 0, end: total };
|
|
307
|
+
// Centred on the selection, then pushed back inside the list at either end, so moving through
|
|
308
|
+
// the list scrolls rather than clamping the cursor to the middle.
|
|
309
|
+
let start = Math.max(0, Math.min(selected - Math.floor(room / 2), total - room));
|
|
310
|
+
start = Math.max(0, start);
|
|
311
|
+
return { start, end: start + room };
|
|
312
|
+
}
|
|
289
313
|
//# sourceMappingURL=config-store.js.map
|
package/dist/config-store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-store.js","sourceRoot":"","sources":["../src/config-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-store.js","sourceRoot":"","sources":["../src/config-store.ts"],"names":[],"mappings":"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"}
|
package/dist/ink-chat.d.ts
CHANGED
|
@@ -469,6 +469,34 @@ export declare function DiffPanel({ files, width, height, activity, activityRows
|
|
|
469
469
|
* Typechecking passes on that code and no test could reach it, because nothing in the suite mounted
|
|
470
470
|
* an Ink app. Something does now.
|
|
471
471
|
*/
|
|
472
|
+
/**
|
|
473
|
+
* Where each visual row of the composer begins and ends, as offsets into the draft.
|
|
474
|
+
*
|
|
475
|
+
* Not `wrapToWidth`, which normalises runs of whitespace and so cannot be mapped back to the
|
|
476
|
+
* text it was given. Moving a caret between rows needs the opposite property: every character
|
|
477
|
+
* accounted for, in its original position, so that row-and-column can be converted to an index
|
|
478
|
+
* and back without drifting.
|
|
479
|
+
*
|
|
480
|
+
* Greedy word wrap, breaking at the last space that fits and hard-splitting a word too long for
|
|
481
|
+
* a row — the same rule the composer is drawn with, so the rows here are the rows on screen.
|
|
482
|
+
*/
|
|
483
|
+
export declare function composerRows(text: string, width: number): {
|
|
484
|
+
start: number;
|
|
485
|
+
end: number;
|
|
486
|
+
}[];
|
|
487
|
+
/**
|
|
488
|
+
* The caret one visual row up or down, or null when there is no such row.
|
|
489
|
+
*
|
|
490
|
+
* Null is the useful half: with nothing above, Up is free to mean "the previous prompt", which
|
|
491
|
+
* is what it has always meant and what a shell does. So a one-line draft keeps its history
|
|
492
|
+
* recall and a wrapped or multi-line one becomes editable in the middle, which is what was asked
|
|
493
|
+
* for — "must be able to move in lines/rows for easy editing/correcting when need to write in
|
|
494
|
+
* between".
|
|
495
|
+
*
|
|
496
|
+
* The column is kept where it can be and clamped to the end of a shorter row, as every editor
|
|
497
|
+
* does.
|
|
498
|
+
*/
|
|
499
|
+
export declare function caretRowMove(text: string, caret: number, width: number, direction: -1 | 1): number | null;
|
|
472
500
|
/**
|
|
473
501
|
* The selected span of the composer, or null when nothing is selected.
|
|
474
502
|
*
|
package/dist/ink-chat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ink-chat.d.ts","sourceRoot":"","sources":["../src/ink-chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AA4B3D,OAAO,EAAyB,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAuCtE,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAiB5D,OAAO,EAA6C,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3F,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,YAAY,CAAC;AAoD7D,KAAK,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;AAGhD,mFAAmF;AACnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI9D;AAyED,6FAA6F;AAC7F,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAM7C;AA0BD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA+BpE;AAED,qFAAqF;AACrF;;;;;GAKG;AASH,eAAO,MAAM,YAAY,mBAAuB,CAAC;AAEjD,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,SAAS,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAchG;AAED,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,SAAiB,GAAG,MAAM,CAM9E;AA6CD;;;;;;;;;;;GAWG;AACH,2EAA2E;AAC3E,eAAO,MAAM,eAAe,IAAI,CAAC;AAejC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,UAAO,EACjB,KAAK,SAAkB,GACtB,MAAM,CAqBR;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGnE;AAoBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,QAAQ,KAAK,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,YAAY,QAAS,CAAC;AAEnC;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,OAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"ink-chat.d.ts","sourceRoot":"","sources":["../src/ink-chat.tsx"],"names":[],"mappings":"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"}
|
package/dist/ink-chat.js
CHANGED
|
@@ -8,7 +8,7 @@ import { pacedInterval, startingInterval, floorFor, shouldDrawFrame } from './fr
|
|
|
8
8
|
import { estimateCost, formatCost, rateText } from './pricing.js';
|
|
9
9
|
import { generateSessionId, saveSession, listSessions, loadSession, relativeAge, renameSession, forkSession, archiveSession, findSession, } from './session.js';
|
|
10
10
|
import { loadMemory } from './memory.js';
|
|
11
|
-
import { loadKoneckConfig, saveKoneckConfig, setConfigKey, configKeyDescriptions, CONFIG_FILE, CONFIG_SCHEMA, stepValue, displayValue } from './config-store.js';
|
|
11
|
+
import { loadKoneckConfig, saveKoneckConfig, setConfigKey, configKeyDescriptions, CONFIG_FILE, CONFIG_SCHEMA, stepValue, displayValue, settingsWindow } from './config-store.js';
|
|
12
12
|
import { PROVIDERS, resolveProvider, getApiKey, addUserProvider, removeUserProvider, userProvidersPath, keyEnvFor, BUILT_INS as BUILT_IN_PROVIDERS, servesLocally, servesOwnWeights, endpointForProvider } from './providers.js';
|
|
13
13
|
import { normaliseEndpoint, withEndpoint, savedEndpoints, shortSource, resolveModelChoice, withModel } from './endpoints.js';
|
|
14
14
|
import { loadProjectConfig, loadGlobalConfig, saveGlobalConfig, withoutStoredApiKey } from './config.js';
|
|
@@ -502,6 +502,22 @@ export const WORD_HOLD_MS = 60_000;
|
|
|
502
502
|
* appears frozen for seven seconds is worse than either.
|
|
503
503
|
*/
|
|
504
504
|
export const HEARTBEAT_MS = 1_000;
|
|
505
|
+
/**
|
|
506
|
+
* The cursor, drawn as a painted cell rather than as a character.
|
|
507
|
+
*
|
|
508
|
+
* It was a literal U+2588 FULL BLOCK. Every other glyph in the interface goes through the glyph
|
|
509
|
+
* set, which drops to ASCII on Windows precisely because the console there cannot be relied on
|
|
510
|
+
* for them — and this one bypassed it, so on Windows the cursor was a character the font had no
|
|
511
|
+
* picture for and simply did not appear. Reported as exactly that: visible on Linux, absent on
|
|
512
|
+
* Windows.
|
|
513
|
+
*
|
|
514
|
+
* A space with a background colour needs no glyph from any font, and it is already how the
|
|
515
|
+
* cursor is drawn when it sits on a character mid-string. Now both cases are the same thing: a
|
|
516
|
+
* painted cell, in the same place, whatever the terminal has to draw with.
|
|
517
|
+
*/
|
|
518
|
+
function Cursor() {
|
|
519
|
+
return _jsx(Text, { backgroundColor: CYAN, children: " " });
|
|
520
|
+
}
|
|
505
521
|
/**
|
|
506
522
|
* Whether the terminal should report the wheel to KONECK, when nothing has been saved either way.
|
|
507
523
|
*
|
|
@@ -715,6 +731,14 @@ const PANEL_DIFF_LINES = 400;
|
|
|
715
731
|
const USAGE_TABS = ['settings', 'session', 'context', 'models', 'limits'];
|
|
716
732
|
const MIN_REPLY_WIDTH = 24; // below this a table cannot render legibly anyway
|
|
717
733
|
const PICKER_MAX_ROWS = 16;
|
|
734
|
+
/**
|
|
735
|
+
* Rows kept for everything around a picker in ordinary scrollback.
|
|
736
|
+
*
|
|
737
|
+
* The composer with its border, the status bar, the footer, the picker's own border and hint
|
|
738
|
+
* row, and the blanks between them. Found by measurement rather than by adding those up: at
|
|
739
|
+
* 80x24, nine and twelve both still wiped the terminal and fourteen did not.
|
|
740
|
+
*/
|
|
741
|
+
const DEFAULT_PICKER_RESERVE = 14;
|
|
718
742
|
/**
|
|
719
743
|
* Number of choices to keep visible in a palette.
|
|
720
744
|
*
|
|
@@ -723,13 +747,24 @@ const PICKER_MAX_ROWS = 16;
|
|
|
723
747
|
* the composer and the rest remains available through search and paging.
|
|
724
748
|
*/
|
|
725
749
|
export function pickerRowLimit(kind, itemCount, terminalRows, reservedRows) {
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
750
|
+
/*
|
|
751
|
+
* The window bounds this on every screen, and it used not to.
|
|
752
|
+
*
|
|
753
|
+
* The reasoning here was that ordinary scrollback is not a fixed frame, so a picker may run as
|
|
754
|
+
* long as it likes and let the terminal scroll — and that only the alternate screen needed a
|
|
755
|
+
* reservation, because overflow there makes Ink clear and repaint everything.
|
|
756
|
+
*
|
|
757
|
+
* Ink does not make that distinction. It compares the height of what it is about to draw
|
|
758
|
+
* against `stdout.rows` and wipes the terminal when it does not fit, whichever screen is in
|
|
759
|
+
* use, because it cannot erase lines that have scrolled away. The picker is part of the
|
|
760
|
+
* repainting region in both. Measured at 80x24: typing "/config" wiped the screen three times
|
|
761
|
+
* before the command had even been chosen, so every slash command flashed the whole terminal.
|
|
762
|
+
*
|
|
763
|
+
* The reservation differs — the alternate screen has a transcript above the picker to leave
|
|
764
|
+
* room for — but there is always one.
|
|
765
|
+
*/
|
|
766
|
+
const reserved = reservedRows ?? DEFAULT_PICKER_RESERVE;
|
|
767
|
+
const terminalBudget = Math.max(1, (terminalRows && terminalRows > 0 ? terminalRows : 24) - reserved);
|
|
733
768
|
// Keep kind in the signature: it documents that this is the common policy for *every* picker
|
|
734
769
|
// and lets a future picker opt into a different policy without duplicating this calculation.
|
|
735
770
|
void kind;
|
|
@@ -1487,6 +1522,63 @@ export function DiffPanel({ files, width, height, activity, activityRows = 0 })
|
|
|
1487
1522
|
* Typechecking passes on that code and no test could reach it, because nothing in the suite mounted
|
|
1488
1523
|
* an Ink app. Something does now.
|
|
1489
1524
|
*/
|
|
1525
|
+
/**
|
|
1526
|
+
* Where each visual row of the composer begins and ends, as offsets into the draft.
|
|
1527
|
+
*
|
|
1528
|
+
* Not `wrapToWidth`, which normalises runs of whitespace and so cannot be mapped back to the
|
|
1529
|
+
* text it was given. Moving a caret between rows needs the opposite property: every character
|
|
1530
|
+
* accounted for, in its original position, so that row-and-column can be converted to an index
|
|
1531
|
+
* and back without drifting.
|
|
1532
|
+
*
|
|
1533
|
+
* Greedy word wrap, breaking at the last space that fits and hard-splitting a word too long for
|
|
1534
|
+
* a row — the same rule the composer is drawn with, so the rows here are the rows on screen.
|
|
1535
|
+
*/
|
|
1536
|
+
export function composerRows(text, width) {
|
|
1537
|
+
const w = Math.max(1, width);
|
|
1538
|
+
const rows = [];
|
|
1539
|
+
let lineStart = 0;
|
|
1540
|
+
for (const line of text.split('\n')) {
|
|
1541
|
+
let from = 0;
|
|
1542
|
+
while (from <= line.length) {
|
|
1543
|
+
if (line.length - from <= w) {
|
|
1544
|
+
rows.push({ start: lineStart + from, end: lineStart + line.length });
|
|
1545
|
+
break;
|
|
1546
|
+
}
|
|
1547
|
+
// The last space that still fits, so a word is not split when it need not be.
|
|
1548
|
+
const slice = line.slice(from, from + w + 1);
|
|
1549
|
+
const space = slice.lastIndexOf(' ');
|
|
1550
|
+
const take = space > 0 ? space : w;
|
|
1551
|
+
rows.push({ start: lineStart + from, end: lineStart + from + take });
|
|
1552
|
+
from += space > 0 ? take + 1 : take; // the break space belongs to neither row
|
|
1553
|
+
}
|
|
1554
|
+
lineStart += line.length + 1; // + the newline
|
|
1555
|
+
}
|
|
1556
|
+
return rows;
|
|
1557
|
+
}
|
|
1558
|
+
/**
|
|
1559
|
+
* The caret one visual row up or down, or null when there is no such row.
|
|
1560
|
+
*
|
|
1561
|
+
* Null is the useful half: with nothing above, Up is free to mean "the previous prompt", which
|
|
1562
|
+
* is what it has always meant and what a shell does. So a one-line draft keeps its history
|
|
1563
|
+
* recall and a wrapped or multi-line one becomes editable in the middle, which is what was asked
|
|
1564
|
+
* for — "must be able to move in lines/rows for easy editing/correcting when need to write in
|
|
1565
|
+
* between".
|
|
1566
|
+
*
|
|
1567
|
+
* The column is kept where it can be and clamped to the end of a shorter row, as every editor
|
|
1568
|
+
* does.
|
|
1569
|
+
*/
|
|
1570
|
+
export function caretRowMove(text, caret, width, direction) {
|
|
1571
|
+
const rows = composerRows(text, width);
|
|
1572
|
+
if (rows.length < 2)
|
|
1573
|
+
return null;
|
|
1574
|
+
const here = rows.findIndex((r, i) => caret <= r.end || i === rows.length - 1);
|
|
1575
|
+
const target = here + direction;
|
|
1576
|
+
if (target < 0 || target >= rows.length)
|
|
1577
|
+
return null;
|
|
1578
|
+
const column = caret - rows[here].start;
|
|
1579
|
+
const to = rows[target];
|
|
1580
|
+
return Math.min(to.start + column, to.end);
|
|
1581
|
+
}
|
|
1490
1582
|
/**
|
|
1491
1583
|
* The selected span of the composer, or null when nothing is selected.
|
|
1492
1584
|
*
|
|
@@ -4396,18 +4488,38 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
4396
4488
|
addSystem('Usage: `/diff` opens the live panel; `/diff off` closes it.');
|
|
4397
4489
|
return;
|
|
4398
4490
|
}
|
|
4399
|
-
|
|
4400
|
-
|
|
4401
|
-
|
|
4491
|
+
/*
|
|
4492
|
+
* Bare `/diff` toggles, as every other switch in here does.
|
|
4493
|
+
*
|
|
4494
|
+
* It used to mean "open", always — so pressing it a second time to put the panel away
|
|
4495
|
+
* did nothing at all, and the only way to close it was to know the word `off`. Reported
|
|
4496
|
+
* as "/diff does open side panel but does not close it", which was precisely true.
|
|
4497
|
+
* `/altscreen`, `/thinking`, `/animate` and `/mouse` have all toggled on a bare call
|
|
4498
|
+
* since they were written; this was the odd one out.
|
|
4499
|
+
*/
|
|
4402
4500
|
/*
|
|
4403
4501
|
* The side panel needs a fixed frame, and `altScreen: false` is a decision.
|
|
4404
4502
|
*
|
|
4405
|
-
* This used to switch the alternate screen on regardless, which is the same override
|
|
4406
|
-
*
|
|
4407
|
-
* turned it off had already said so. Where it is off,
|
|
4503
|
+
* This used to switch the alternate screen on regardless, which is the same override
|
|
4504
|
+
* removed from startup for the same reason: it is the expensive path, and somebody who
|
|
4505
|
+
* turned it off had already said so. Where it is off, changes are drawn inline in the
|
|
4408
4506
|
* conversation instead — which is where they were before the panel existed.
|
|
4409
4507
|
*/
|
|
4410
4508
|
const canPin = cfg.altScreen !== false;
|
|
4509
|
+
/*
|
|
4510
|
+
* A bare `/diff` toggles what is on screen, not the flag behind it.
|
|
4511
|
+
*
|
|
4512
|
+
* It used to mean "open", always, so pressing it again to put the panel away did nothing
|
|
4513
|
+
* — reported as "/diff does open side panel but does not close it". Toggling the flag
|
|
4514
|
+
* was not enough either: `showDiffPanel` is true by default while the panel is not
|
|
4515
|
+
* visible at all, so the first press would have closed something that was never open.
|
|
4516
|
+
* What has to flip is what can actually be seen — the panel where there is a frame for
|
|
4517
|
+
* one, the inline changes where there is not.
|
|
4518
|
+
*/
|
|
4519
|
+
const showingNow = canPin ? diffPanelOpen : showDiffPanel;
|
|
4520
|
+
const want = panel === 'on' ? true : panel === 'off' ? false : !showingNow;
|
|
4521
|
+
setShowDiffPanel(want);
|
|
4522
|
+
diffPanelTouchedRef.current = true;
|
|
4411
4523
|
if (want && canPin && !altScreen)
|
|
4412
4524
|
setAltScreen(true);
|
|
4413
4525
|
if (!want && !(cfg.altScreen ?? false)
|
|
@@ -4821,6 +4933,12 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
4821
4933
|
setCfg(c => ({ ...c, autoCopy: ['true', '1', 'yes'].includes(val.toLowerCase()) }));
|
|
4822
4934
|
if (key === 'animate')
|
|
4823
4935
|
setAnimate(['true', '1', 'yes'].includes(val.toLowerCase()));
|
|
4936
|
+
// Applied to the live session, not only written to the file. Every other switch here
|
|
4937
|
+
// takes effect at once, and one that quietly waited for a restart was a setting you
|
|
4938
|
+
// could not tell you had changed.
|
|
4939
|
+
if (key === 'autoUpdate') {
|
|
4940
|
+
setCfg(c => ({ ...c, autoUpdate: ['true', '1', 'yes'].includes(val.toLowerCase()) }));
|
|
4941
|
+
}
|
|
4824
4942
|
if (key === 'mouse') {
|
|
4825
4943
|
setMouse(['true', '1', 'yes'].includes(val.toLowerCase()));
|
|
4826
4944
|
}
|
|
@@ -5434,12 +5552,12 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
5434
5552
|
return;
|
|
5435
5553
|
}
|
|
5436
5554
|
if (key.pageDown) {
|
|
5437
|
-
const jump = pickerRowLimit(picker.kind, list.length,
|
|
5555
|
+
const jump = pickerRowLimit(picker.kind, list.length, termRows, altScreen ? 13 : undefined);
|
|
5438
5556
|
setPickIndex(i => Math.min(i + jump, Math.max(0, list.length - 1)));
|
|
5439
5557
|
return;
|
|
5440
5558
|
}
|
|
5441
5559
|
if (key.pageUp) {
|
|
5442
|
-
const jump = pickerRowLimit(picker.kind, list.length,
|
|
5560
|
+
const jump = pickerRowLimit(picker.kind, list.length, termRows, altScreen ? 13 : undefined);
|
|
5443
5561
|
setPickIndex(i => Math.max(0, i - jump));
|
|
5444
5562
|
return;
|
|
5445
5563
|
}
|
|
@@ -5708,11 +5826,45 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
5708
5826
|
// The composer used to be append-and-backspace only, so fixing a typo near the start of a
|
|
5709
5827
|
// long prompt meant deleting everything after it. Everything below is the readline set a
|
|
5710
5828
|
// shell gives you, so an edit costs one keystroke rather than a retype.
|
|
5829
|
+
/*
|
|
5830
|
+
* Up and down move between the rows of the draft before they reach for history.
|
|
5831
|
+
*
|
|
5832
|
+
* A one-line draft has no row above or below, so `caretRowMove` returns null and Up still
|
|
5833
|
+
* means "the previous prompt" — which is what it has always meant and what a shell does.
|
|
5834
|
+
* Once the draft wraps or contains a newline, the same keys become what they are in every
|
|
5835
|
+
* text box, which is the only way to correct something in the middle of a long prompt
|
|
5836
|
+
* without deleting back to it.
|
|
5837
|
+
*/
|
|
5711
5838
|
const historyDirection = draftHistoryDirection(input, key);
|
|
5712
5839
|
if (historyDirection) {
|
|
5713
5840
|
recallDraft(historyDirection);
|
|
5714
5841
|
return;
|
|
5715
5842
|
}
|
|
5843
|
+
/*
|
|
5844
|
+
* Up and down move the caret between the rows of the draft.
|
|
5845
|
+
*
|
|
5846
|
+
* They did nothing at all before — history is on Ctrl+P and Ctrl+N, as in a shell — so a
|
|
5847
|
+
* long prompt could only be corrected by deleting back to the mistake. Asked for directly:
|
|
5848
|
+
* "must be able to move in lines/rows for easy editing/correcting when need to write in
|
|
5849
|
+
* between".
|
|
5850
|
+
*
|
|
5851
|
+
* Rows here are visual rows, wrapped exactly as the composer draws them, so the caret goes
|
|
5852
|
+
* where the eye expects rather than to the next newline. With Shift held they extend the
|
|
5853
|
+
* selection instead, which is the same bargain the left and right arrows already make.
|
|
5854
|
+
*/
|
|
5855
|
+
if (key.upArrow || key.downArrow) {
|
|
5856
|
+
const moved = caretRowMove(draft, caret, composerTextWidth, key.upArrow ? -1 : 1);
|
|
5857
|
+
if (moved === null)
|
|
5858
|
+
return; // one row: nothing above or below to go to
|
|
5859
|
+
if (key.shift) {
|
|
5860
|
+
if (selAnchor === null)
|
|
5861
|
+
setSelAnchor(caret);
|
|
5862
|
+
}
|
|
5863
|
+
else
|
|
5864
|
+
setSelAnchor(null);
|
|
5865
|
+
setCaret(moved);
|
|
5866
|
+
return;
|
|
5867
|
+
}
|
|
5716
5868
|
/*
|
|
5717
5869
|
* Shift with an arrow selects, the way it does in every other text box.
|
|
5718
5870
|
*
|
|
@@ -6078,6 +6230,14 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6078
6230
|
// window empty. A cap is still available through `maxWidth` in config for anyone who
|
|
6079
6231
|
// prefers a narrow measure on a very wide screen, but nothing is capped by default.
|
|
6080
6232
|
const uiWidth = computeUiWidth(termCols, configMaxWidth);
|
|
6233
|
+
/**
|
|
6234
|
+
* The width the draft actually wraps at inside the composer.
|
|
6235
|
+
*
|
|
6236
|
+
* The box is `uiWidth - 5` wide, one cell of padding each side, and the "> " marker takes two
|
|
6237
|
+
* more. Caret movement between rows has to use the same number the text is drawn with, or the
|
|
6238
|
+
* caret lands a column or two away from where the eye says it should.
|
|
6239
|
+
*/
|
|
6240
|
+
const composerTextWidth = Math.max(10, uiWidth - 9);
|
|
6081
6241
|
// uiWidth minus the container's paddingX={2} on both sides, and then one column of slack.
|
|
6082
6242
|
//
|
|
6083
6243
|
// Without the slack a full-width box draws a line exactly as wide as the terminal. Ink counts
|
|
@@ -6397,13 +6557,40 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6397
6557
|
const meter = (fraction, label) => [`${bar(fraction, BAR_W)} ${Math.round(fraction * 100)}%`, `${label}`, ''];
|
|
6398
6558
|
const lines = [tabs, '---'];
|
|
6399
6559
|
if (usagePane === 'settings') {
|
|
6400
|
-
|
|
6560
|
+
const compact = termRows < 30;
|
|
6561
|
+
const chrome = compact ? 21 : 21;
|
|
6562
|
+
if (!compact)
|
|
6563
|
+
lines.push('**Settings** — written to disk and applied now', '');
|
|
6401
6564
|
// What is actually in force, not just what this file happens to hold. provider and
|
|
6402
6565
|
// baseURL commonly come from ~/.koneckrc, and showing those as "(not set)" made a
|
|
6403
6566
|
// configured session look unconfigured.
|
|
6404
6567
|
const endpoint = endpointFor(cfg.provider);
|
|
6405
6568
|
const labelW = Math.max(...CONFIG_SCHEMA.map(f => f.label.length));
|
|
6569
|
+
/*
|
|
6570
|
+
* Only as many rows as there is room for.
|
|
6571
|
+
*
|
|
6572
|
+
* Everything else in this pane costs rows too — the tabs, the heading, the two footer
|
|
6573
|
+
* lines, the panel's own border — and below it sit the composer and the status bar. Drawn
|
|
6574
|
+
* in full on a twenty-four-row terminal the list ran off the top, leaving what looked
|
|
6575
|
+
* like a stunted four-row panel. It also made the repainting region as tall as the
|
|
6576
|
+
* window, which is what makes Ink wipe the terminal on every render.
|
|
6577
|
+
*/
|
|
6578
|
+
/*
|
|
6579
|
+
* How many rows there is room for, and what gets dropped when there is not.
|
|
6580
|
+
*
|
|
6581
|
+
* Measured, not estimated. At 80x24 the pane came to twenty-five lines with the list
|
|
6582
|
+
* already cut to its minimum of three, and twenty-five lines in a twenty-four-row
|
|
6583
|
+
* window is what makes Ink wipe the whole terminal on every render. Shrinking the list
|
|
6584
|
+
* further could not have fixed that — the fixed parts were the problem — so on a short
|
|
6585
|
+
* terminal the pane drops its own furniture first: the heading, the blank beneath it,
|
|
6586
|
+
* and the line naming the config file. They are the three that say least.
|
|
6587
|
+
*/
|
|
6588
|
+
const { start, end } = settingsWindow(CONFIG_SCHEMA.length, settingRow, Math.max(3, termRows - chrome));
|
|
6589
|
+
if (start > 0)
|
|
6590
|
+
lines.push(` ${G.caret} ${start} more above`);
|
|
6406
6591
|
for (const [i, f] of CONFIG_SCHEMA.entries()) {
|
|
6592
|
+
if (i < start || i >= end)
|
|
6593
|
+
continue;
|
|
6407
6594
|
const selected = i === settingRow;
|
|
6408
6595
|
const beingTyped = editing?.key === String(f.key);
|
|
6409
6596
|
// An endpoint always has a source worth naming, so it never reads as unset or as
|
|
@@ -6430,11 +6617,15 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6430
6617
|
: ` enter to edit${f.clearable ? ', x clears' : ''}`;
|
|
6431
6618
|
lines.push(`${mark} ${f.label.padEnd(labelW)} ${selected ? '**' + shown + '**' : shown}${hint}`);
|
|
6432
6619
|
}
|
|
6620
|
+
if (end < CONFIG_SCHEMA.length) {
|
|
6621
|
+
lines.push(` ${G.caret} ${CONFIG_SCHEMA.length - end} more below`);
|
|
6622
|
+
}
|
|
6433
6623
|
lines.push('');
|
|
6434
6624
|
lines.push(editing
|
|
6435
6625
|
? 'Typing. **enter** saves, **ctrl+u** empties the field, **esc** abandons.'
|
|
6436
6626
|
: 'Up/down choose · enter change · x clear · left/right tabs');
|
|
6437
|
-
|
|
6627
|
+
if (!compact)
|
|
6628
|
+
lines.push(`Saved to ${CONFIG_FILE}`);
|
|
6438
6629
|
}
|
|
6439
6630
|
if (usagePane === 'session') {
|
|
6440
6631
|
const wall = Date.now() - sessionStartRef.current;
|
|
@@ -6616,7 +6807,7 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6616
6807
|
// footer. They consume six rows and the picker itself has six non-choice rows (margin,
|
|
6617
6808
|
// border, title/search and pager), so reserve thirteen in total. Letting 16 choices into
|
|
6618
6809
|
// a 24-row frame made Ink reflow the live region and visibly blink on every keypress.
|
|
6619
|
-
const pickerRows = pickerRowLimit(picker.kind, list.length,
|
|
6810
|
+
const pickerRows = pickerRowLimit(picker.kind, list.length, termRows, altScreen ? 13 : undefined);
|
|
6620
6811
|
// Keep the highlighted row inside the visible window as the selection moves.
|
|
6621
6812
|
const start = Math.max(0, Math.min(pickIndex - Math.floor(pickerRows / 2), list.length - pickerRows));
|
|
6622
6813
|
const shown = list.slice(Math.max(0, start), Math.max(0, start) + pickerRows);
|
|
@@ -6660,8 +6851,8 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6660
6851
|
: addProv.step === 'model' ? { label: 'default model', hint: 'optional — enter to skip' }
|
|
6661
6852
|
: { label: 'repoint ' + addProv.name + '? (y/n)',
|
|
6662
6853
|
hint: `it ships with KONECK, pointing at ${shadowed?.baseURL}` };
|
|
6663
|
-
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: CYAN, paddingX: 1, marginTop: 1, width: barWidth, children: [_jsx(Text, { color: CYAN, bold: true, children: "Declare a provider" }), _jsxs(Text, { color: MUTED, children: [ask.hint, " \u00B7 esc to cancel"] }), addProv.name !== '' && (_jsxs(Text, { color: DIM, children: [addProv.name, addProv.url ? ' ' + addProv.url : ''] })), addProv.error && _jsx(Text, { color: CRIMSON, children: addProv.error }), _jsxs(Box, { marginTop: 1, children: [_jsxs(Text, { color: MUTED, children: [ask.label, ": "] }), _jsx(Text, { color: INK, children: addProv.value }), _jsx(
|
|
6664
|
-
})(), keyPrompt && (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: AMBER, paddingX: 1, marginTop: 1, width: barWidth, children: [_jsxs(Text, { color: AMBER, bold: true, children: ["API key for ", keyPrompt.provider] }), _jsx(Text, { color: MUTED, children: "Paste it and press enter, or ctrl+v to read the clipboard. Held in memory for this session only; esc to cancel." }), keyPrompt.note && _jsx(Text, { color: CYAN, children: keyPrompt.note }), _jsxs(Box, { marginTop: 1, children: [_jsxs(Text, { color: MUTED, children: [keyPrompt.env, ": "] }), _jsx(Text, { color: INK, children: '*'.repeat(Math.min(keyPrompt.value.length, 48)) }), _jsx(
|
|
6854
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: CYAN, paddingX: 1, marginTop: 1, width: barWidth, children: [_jsx(Text, { color: CYAN, bold: true, children: "Declare a provider" }), _jsxs(Text, { color: MUTED, children: [ask.hint, " \u00B7 esc to cancel"] }), addProv.name !== '' && (_jsxs(Text, { color: DIM, children: [addProv.name, addProv.url ? ' ' + addProv.url : ''] })), addProv.error && _jsx(Text, { color: CRIMSON, children: addProv.error }), _jsxs(Box, { marginTop: 1, children: [_jsxs(Text, { color: MUTED, children: [ask.label, ": "] }), _jsx(Text, { color: INK, children: addProv.value }), _jsx(Cursor, {})] })] }));
|
|
6855
|
+
})(), keyPrompt && (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: AMBER, paddingX: 1, marginTop: 1, width: barWidth, children: [_jsxs(Text, { color: AMBER, bold: true, children: ["API key for ", keyPrompt.provider] }), _jsx(Text, { color: MUTED, children: "Paste it and press enter, or ctrl+v to read the clipboard. Held in memory for this session only; esc to cancel." }), keyPrompt.note && _jsx(Text, { color: CYAN, children: keyPrompt.note }), _jsxs(Box, { marginTop: 1, children: [_jsxs(Text, { color: MUTED, children: [keyPrompt.env, ": "] }), _jsx(Text, { color: INK, children: '*'.repeat(Math.min(keyPrompt.value.length, 48)) }), _jsx(Cursor, {}), keyPrompt.value.length > 0 && (_jsxs(Text, { color: DIM, children: [" ", keyPrompt.value.length, " characters"] }))] })] })), ask && (() => {
|
|
6665
6856
|
let detail = '';
|
|
6666
6857
|
let isCommand = false;
|
|
6667
6858
|
try {
|
|
@@ -6708,17 +6899,17 @@ export function App({ config: initialConfig, clearFrame, synchronizedFrames = fa
|
|
|
6708
6899
|
return (_jsx(Box, { marginTop: 1, children: _jsx(Panel, { width: panelWidth(lines, barWidth, 46), color: AMBER, title: `Permission — ${modeSpec(mode).label} mode`, children: lines }) }));
|
|
6709
6900
|
})()] }), sidePanelOpen && (_jsx(Box, { flexDirection: "column", width: diffPanelWidth, flexShrink: 0, children: diffPanelOpen && _jsx(DiffPanel, { files: liveDiffs, width: diffPanelWidth, height: Math.max(6, frameRows - 6), activityRows: activityPanelOpen ? 4 : 0, activity: activityPanelOpen ? _jsxs(_Fragment, { children: [_jsxs(Text, { color: CYAN, bold: true, children: ["Activity \u00B7 ", fmtElapsed(busyStart.current ? Date.now() - busyStart.current : 0)] }), _jsx(Text, { color: AMBER, wrap: "truncate", children: ask ? 'Waiting for your approval' : liveToolRef.current
|
|
6710
6901
|
? 'Running ' + liveToolRef.current.name : thinkingRef.current.chars > 0
|
|
6711
|
-
? 'Waiting for model · reasoning received' : 'Waiting for model' }), _jsx(Text, { color: MUTED, wrap: "truncate", children: liveToolRef.current?.detail || plan?.steps.find(s => s.state !== 'done')?.text || 'esc to interrupt' })] }) : undefined }) }))] }),
|
|
6712
|
-
|
|
6713
|
-
|
|
6714
|
-
|
|
6715
|
-
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
|
|
6719
|
-
|
|
6720
|
-
|
|
6721
|
-
|
|
6902
|
+
? 'Waiting for model · reasoning received' : 'Waiting for model' }), _jsx(Text, { color: MUTED, wrap: "truncate", children: liveToolRef.current?.detail || plan?.steps.find(s => s.state !== 'done')?.text || 'esc to interrupt' })] }) : undefined }) }))] }), _jsx(Box, { marginTop: 1, borderStyle: "round", borderColor: busy ? DIM : CYAN, paddingX: 1, width: uiWidth - 5, flexShrink: 0, children: _jsxs(Text, { wrap: "wrap", children: [_jsxs(Text, { color: CYAN, bold: true, children: [G.caret, " "] }), (() => {
|
|
6903
|
+
const sel = selectionRange(selAnchor, caret, draft.length);
|
|
6904
|
+
if (sel) {
|
|
6905
|
+
return (_jsxs(_Fragment, { children: [_jsx(Text, { color: INK, children: draft.slice(0, sel[0]) }), _jsx(Text, { backgroundColor: CYAN, color: "#10222A", children: draft.slice(sel[0], sel[1]) }), _jsx(Text, { color: INK, children: draft.slice(sel[1]) })] }));
|
|
6906
|
+
}
|
|
6907
|
+
return (_jsxs(_Fragment, { children: [_jsx(Text, { color: INK, children: draft.slice(0, caret) }), busy
|
|
6908
|
+
? _jsx(Text, { color: INK, children: draft.slice(caret) })
|
|
6909
|
+
: caret < draft.length
|
|
6910
|
+
? _jsxs(_Fragment, { children: [_jsx(Text, { backgroundColor: CYAN, color: "#10222A", children: draft[caret] }), _jsx(Text, { color: INK, children: draft.slice(caret + 1) })] })
|
|
6911
|
+
: _jsx(Cursor, {})] }));
|
|
6912
|
+
})()] }) }), copyNotice && _jsx(Text, { color: CYAN, children: copyNotice }), _jsx(Box, { marginTop: 1, paddingX: 1, width: uiWidth - 4, flexShrink: 0, children: _jsxs(Text, { wrap: "truncate", backgroundColor: "#24343B", children: [repaint % 2 === 1 ? '\u200b' : '', _jsx(Text, { color: MUTED, children: "TAB " }), _jsx(Text, { color: INK, children: "Analytics" }), _jsx(Text, { color: MUTED, children: " / " }), _jsx(Text, { color: CYAN, children: "/HELP" }), _jsx(Text, { color: INK, children: " Commands" }), _jsx(Text, { color: MUTED, children: " / SHIFT+TAB " }), _jsx(Text, { color: INK, children: "Mode" }), _jsx(Text, { color: MUTED, children: " / " }), _jsx(Text, { color: statusColor, children: statusLabel.toLowerCase() }), plan && planSummary(plan) && (_jsxs(_Fragment, { children: [_jsx(Text, { color: MUTED, children: " / PLAN: " }), _jsx(Text, { color: CYAN, children: planSummary(plan) })] })), _jsx(Text, { color: MUTED, children: " / MODE: " }), _jsx(Text, { color: mode === 'auto' ? INK : AMBER, children: modeSpec(mode).label }), _jsx(Text, { color: MUTED, children: " / EFFORT: " }), _jsx(Text, { color: effort === 'medium' ? INK : AMBER, children: effort }), autoUpdated && (_jsxs(_Fragment, { children: [_jsx(Text, { color: MUTED, children: " / " }), _jsxs(Text, { color: GREEN, children: [G.ok, " Update installed \u00B7 restart to use it"] })] })), mouse && (_jsxs(_Fragment, { children: [_jsx(Text, { color: MUTED, children: " / " }), _jsx(Text, { color: AMBER, children: "WHEEL: on \u2014 shift to select \u00B7 /mouse off" })] })), _jsx(Text, { color: MUTED, children: " / MODEL: " }), _jsx(Text, { color: INK, children: modelShort }), _jsx(Text, { color: MUTED, children: " / v" }), _jsx(Text, { color: updatePane?.behind ? AMBER : INK, children: VERSION }), updatePane?.behind && _jsx(Text, { color: AMBER, children: " \u2191" }), pasteCount > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { color: MUTED, children: " / " }), _jsxs(Text, { color: AMBER, children: [pasteCount, " paste", pasteCount === 1 ? '' : 's', " held, sent in full"] })] })), ' '.repeat(uiWidth)] }) })] }));
|
|
6722
6913
|
}
|
|
6723
6914
|
export async function runInkChatMode(config) {
|
|
6724
6915
|
// Nothing is written before the first frame. Filling the screen to push the prompt to the foot
|