chivgent 1.1.1 → 1.1.2

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.
@@ -0,0 +1,131 @@
1
+ import { fitLine, terminalText } from "./text.js";
2
+ import { EditorPainter } from "./editor.js";
3
+ /**
4
+ * Provider chooser for `/login`. It lists the same ids as `/provider` and is
5
+ * painted inline, so it works in the readline TUI and in the inline composer.
6
+ */
7
+ export function providerPickerFrame(providerIds, selected, active, width, height) {
8
+ const cellWidth = Math.max(1, width - 1);
9
+ const limit = Math.max(1, Math.min(providerIds.length, height - 3));
10
+ const safeSelected = Math.max(0, Math.min(selected, providerIds.length - 1));
11
+ const start = Math.max(0, Math.min(safeSelected - limit + 1, Math.max(0, providerIds.length - limit)));
12
+ const visible = providerIds.slice(start, start + limit);
13
+ const lines = [fitLine("┌─ Select a Provider for /login", cellWidth)];
14
+ if (visible.length === 0) {
15
+ lines.push(fitLine("│ No Providers are available.", cellWidth));
16
+ }
17
+ visible.forEach((id, index) => {
18
+ const itemIndex = start + index;
19
+ const marker = itemIndex === safeSelected ? "❯" : " ";
20
+ const current = id === active ? "●" : "○";
21
+ lines.push(fitLine(`│ ${marker} ${current} ${terminalText(id)}`, cellWidth));
22
+ });
23
+ lines.push(fitLine("└─ ↑/↓ choose · Enter select · Esc cancel", cellWidth));
24
+ return {
25
+ lines,
26
+ cursorRow: 1 + Math.max(0, Math.min(safeSelected - start, visible.length - 1)),
27
+ cursorColumn: 2,
28
+ };
29
+ }
30
+ /** Keyboard-only picker; Esc and Ctrl+C cancel without selecting. */
31
+ export class ProviderPickerController {
32
+ output;
33
+ providerIds;
34
+ active;
35
+ done;
36
+ selected;
37
+ completed = false;
38
+ pending = "";
39
+ escapeTimer;
40
+ painter;
41
+ constructor(output, providerIds, active, done) {
42
+ this.output = output;
43
+ this.providerIds = providerIds;
44
+ this.active = active;
45
+ this.done = done;
46
+ this.painter = new EditorPainter(output);
47
+ const current = providerIds.indexOf(active);
48
+ this.selected = current < 0 ? 0 : current;
49
+ }
50
+ get selection() { return this.providerIds[this.selected]; }
51
+ begin() {
52
+ if (this.providerIds.length === 0) {
53
+ this.finish(undefined);
54
+ return;
55
+ }
56
+ this.draw();
57
+ }
58
+ resized() { if (!this.completed)
59
+ this.draw(); }
60
+ receive(chunk) {
61
+ if (this.completed)
62
+ return;
63
+ if (this.escapeTimer !== undefined)
64
+ clearTimeout(this.escapeTimer);
65
+ this.escapeTimer = undefined;
66
+ this.pending += chunk.toString("utf8");
67
+ while (this.pending.length > 0 && !this.completed) {
68
+ if (this.pending.startsWith("\u001b[A") || this.pending.startsWith("\u001bOA")) {
69
+ this.move(-1);
70
+ this.pending = this.pending.slice(3);
71
+ }
72
+ else if (this.pending.startsWith("\u001b[B") || this.pending.startsWith("\u001bOB")) {
73
+ this.move(1);
74
+ this.pending = this.pending.slice(3);
75
+ }
76
+ else if (this.pending[0] === "\u001b") {
77
+ if (this.pending === "\u001b" || this.pending === "\u001b[" || this.pending === "\u001bO") {
78
+ this.escapeTimer = setTimeout(() => {
79
+ if (this.pending === "\u001b")
80
+ this.finish(undefined);
81
+ else {
82
+ this.pending = "";
83
+ this.draw();
84
+ }
85
+ }, 40);
86
+ break;
87
+ }
88
+ this.pending = "";
89
+ this.finish(undefined);
90
+ }
91
+ else {
92
+ const key = this.pending[0] ?? "";
93
+ this.pending = this.pending.slice(1);
94
+ if (key === "\r" || key === "\n") {
95
+ this.finish(this.selection);
96
+ return;
97
+ }
98
+ if (key === "\u0003" || key === "q" || key === "Q") {
99
+ this.finish(undefined);
100
+ return;
101
+ }
102
+ if (key === "k")
103
+ this.move(-1);
104
+ if (key === "j")
105
+ this.move(1);
106
+ }
107
+ }
108
+ if (!this.completed)
109
+ this.draw();
110
+ }
111
+ cancel() { this.finish(undefined); }
112
+ move(delta) {
113
+ if (this.providerIds.length === 0)
114
+ return;
115
+ this.selected = (this.selected + delta + this.providerIds.length) % this.providerIds.length;
116
+ }
117
+ draw() {
118
+ this.painter.render(providerPickerFrame(this.providerIds, this.selected, this.active, Math.max(8, this.output.columns ?? 80), Math.max(6, this.output.rows ?? 24)));
119
+ }
120
+ finish(provider) {
121
+ if (this.completed)
122
+ return;
123
+ this.completed = true;
124
+ if (this.escapeTimer !== undefined)
125
+ clearTimeout(this.escapeTimer);
126
+ this.escapeTimer = undefined;
127
+ this.painter.finish();
128
+ this.done(provider);
129
+ }
130
+ }
131
+ //# sourceMappingURL=provider-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-picker.js","sourceRoot":"","sources":["../../src/tui/provider-picker.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  export interface WelcomeOptions {
2
2
  readonly version: string;
3
3
  readonly provider: string;
4
- readonly model: string;
4
+ readonly model?: string;
5
5
  readonly cwd: string;
6
6
  readonly resumed: boolean;
7
7
  readonly signedOut: boolean;
@@ -10,9 +10,10 @@ export interface WelcomeOptions {
10
10
  readonly color?: boolean;
11
11
  }
12
12
  /**
13
- * Compact first frame: identity, active model/workspace, and setup only when
14
- * the user needs to act. Full session detail stays available through commands.
15
- * It never takes the alternate screen or steals scrollback.
13
+ * Compact first frame: brand, workspace path, and one setup hint when the
14
+ * user must set a provider, model, or endpoint. The active provider and model
15
+ * are drawn under the composer. This frame never takes the alternate screen
16
+ * or steals scrollback.
16
17
  */
17
18
  export declare function welcome(options: WelcomeOptions): string;
18
19
  //# sourceMappingURL=welcome.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"welcome.d.ts","sourceRoot":"","sources":["../../src/tui/welcome.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAKD;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAwBvD"}
1
+ {"version":3,"file":"welcome.d.ts","sourceRoot":"","sources":["../../src/tui/welcome.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAKD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAsBvD"}
@@ -1,10 +1,11 @@
1
- import { displayWidth, fitLine, fitLineTail, terminalText } from "./text.js";
1
+ import { fitLine, fitLineTail } from "./text.js";
2
2
  const COLOR = "\u001b[1;36m";
3
3
  const RESET = "\u001b[0m";
4
4
  /**
5
- * Compact first frame: identity, active model/workspace, and setup only when
6
- * the user needs to act. Full session detail stays available through commands.
7
- * It never takes the alternate screen or steals scrollback.
5
+ * Compact first frame: brand, workspace path, and one setup hint when the
6
+ * user must set a provider, model, or endpoint. The active provider and model
7
+ * are drawn under the composer. This frame never takes the alternate screen
8
+ * or steals scrollback.
8
9
  */
9
10
  export function welcome(options) {
10
11
  const width = Math.max(1, options.width - 1);
@@ -15,13 +16,11 @@ export function welcome(options) {
15
16
  : options.signedOut
16
17
  ? "Set up a Provider with /provider"
17
18
  : undefined;
18
- const detailsWidth = Math.max(1, width - 2);
19
- const details = `${terminalText(options.provider)} · ${terminalText(options.model)} · `;
20
- const availablePathWidth = detailsWidth - Math.min(displayWidth(details), detailsWidth - 1);
21
- const pathWidth = Math.min(detailsWidth - 1, Math.max(9, availablePathWidth));
19
+ // The path uses the whole line: the full path when it fits, the tail when
20
+ // it does not. It is not shortened to ~.
22
21
  const lines = [
23
22
  `◆ chivgent v${options.version}${options.resumed ? " · resumed" : ""}`,
24
- `${fitLine(details, Math.max(1, detailsWidth - pathWidth))}${fitLineTail(options.cwd, pathWidth)}`,
23
+ fitLineTail(options.cwd, width),
25
24
  ...(setup === undefined ? [] : [setup]),
26
25
  ];
27
26
  return `\n${lines.map((line, index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"welcome.js","sourceRoot":"","sources":["../../src/tui/welcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAc7E,MAAM,KAAK,GAAG,cAAc,CAAC;AAC7B,MAAM,KAAK,GAAG,WAAW,CAAC;AAE1B;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,OAAuB;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,KAAK,OAAO;QAC1C,CAAC,CAAC,+BAA+B;QACjC,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,UAAU;YACjC,CAAC,CAAC,oCAAoC;YACtC,CAAC,CAAC,OAAO,CAAC,SAAS;gBACjB,CAAC,CAAC,kCAAkC;gBACpC,CAAC,CAAC,SAAS,CAAC;IAClB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;IACxF,MAAM,kBAAkB,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;IAC5F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG;QACZ,eAAe,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;QACtE,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE;QAClG,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KACxC,CAAC;IACF,OAAO,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;QACzD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"welcome.js","sourceRoot":"","sources":["../../src/tui/welcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAcjD,MAAM,KAAK,GAAG,cAAc,CAAC;AAC7B,MAAM,KAAK,GAAG,WAAW,CAAC;AAE1B;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,OAAuB;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,KAAK,OAAO;QAC1C,CAAC,CAAC,+BAA+B;QACjC,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,UAAU;YACjC,CAAC,CAAC,oCAAoC;YACtC,CAAC,CAAC,OAAO,CAAC,SAAS;gBACjB,CAAC,CAAC,kCAAkC;gBACpC,CAAC,CAAC,SAAS,CAAC;IAClB,0EAA0E;IAC1E,yCAAyC;IACzC,MAAM,KAAK,GAAG;QACZ,eAAe,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;QACtE,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC;QAC/B,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KACxC,CAAC;IACF,OAAO,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;QACzD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chivgent",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
4
4
  "description": "A terminal coding agent with a streaming TUI and configurable AI providers.",
5
5
  "license": "MIT",
6
6
  "repository": {