@redplanethq/corebrain 2.8.30 → 2.8.31

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.
Files changed (104) hide show
  1. package/dist/commands/gateway/register.js +1 -1
  2. package/dist/commands/gateway/register.js.map +1 -1
  3. package/dist/server/api/server.d.ts.map +1 -1
  4. package/dist/server/api/server.js +5 -0
  5. package/dist/server/api/server.js.map +1 -1
  6. package/dist/server/api/skills/index.d.ts +9 -0
  7. package/dist/server/api/skills/index.d.ts.map +1 -0
  8. package/dist/server/api/skills/index.js +12 -0
  9. package/dist/server/api/skills/index.js.map +1 -0
  10. package/dist/server/skills/install.d.ts +35 -0
  11. package/dist/server/skills/install.d.ts.map +1 -0
  12. package/dist/server/skills/install.js +182 -0
  13. package/dist/server/skills/install.js.map +1 -0
  14. package/dist/server/skills/skill-store.d.ts +12 -0
  15. package/dist/server/skills/skill-store.d.ts.map +1 -0
  16. package/dist/server/skills/skill-store.js +76 -0
  17. package/dist/server/skills/skill-store.js.map +1 -0
  18. package/dist/server/tools/skills-tools.d.ts +14 -0
  19. package/dist/server/tools/skills-tools.d.ts.map +1 -0
  20. package/dist/server/tools/skills-tools.js +100 -0
  21. package/dist/server/tools/skills-tools.js.map +1 -0
  22. package/dist/tui/chat.d.ts.map +1 -1
  23. package/dist/tui/chat.js +390 -57
  24. package/dist/tui/chat.js.map +1 -1
  25. package/dist/tui/components/approval-bar.d.ts +1 -1
  26. package/dist/tui/components/approval-bar.d.ts.map +1 -1
  27. package/dist/tui/components/approval-bar.js +1 -1
  28. package/dist/tui/components/approval-bar.js.map +1 -1
  29. package/dist/tui/components/approval-panel.d.ts +1 -1
  30. package/dist/tui/components/approval-panel.d.ts.map +1 -1
  31. package/dist/tui/components/approval-panel.js +1 -1
  32. package/dist/tui/components/approval-panel.js.map +1 -1
  33. package/dist/tui/components/context-bar.d.ts +26 -0
  34. package/dist/tui/components/context-bar.d.ts.map +1 -0
  35. package/dist/tui/components/context-bar.js +45 -0
  36. package/dist/tui/components/context-bar.js.map +1 -0
  37. package/dist/tui/components/conversation-selector.d.ts +24 -6
  38. package/dist/tui/components/conversation-selector.d.ts.map +1 -1
  39. package/dist/tui/components/conversation-selector.js +187 -117
  40. package/dist/tui/components/conversation-selector.js.map +1 -1
  41. package/dist/tui/components/integrations-view.d.ts +1 -1
  42. package/dist/tui/components/integrations-view.d.ts.map +1 -1
  43. package/dist/tui/components/integrations-view.js +1 -1
  44. package/dist/tui/components/integrations-view.js.map +1 -1
  45. package/dist/tui/components/scratchpad-panel.d.ts +28 -0
  46. package/dist/tui/components/scratchpad-panel.d.ts.map +1 -0
  47. package/dist/tui/components/scratchpad-panel.js +117 -0
  48. package/dist/tui/components/scratchpad-panel.js.map +1 -0
  49. package/dist/tui/components/split-pane.d.ts +23 -0
  50. package/dist/tui/components/split-pane.d.ts.map +1 -0
  51. package/dist/tui/components/split-pane.js +59 -0
  52. package/dist/tui/components/split-pane.js.map +1 -0
  53. package/dist/tui/components/status-line.d.ts +35 -6
  54. package/dist/tui/components/status-line.d.ts.map +1 -1
  55. package/dist/tui/components/status-line.js +149 -19
  56. package/dist/tui/components/status-line.js.map +1 -1
  57. package/dist/tui/components/task-detail.d.ts +1 -1
  58. package/dist/tui/components/task-detail.d.ts.map +1 -1
  59. package/dist/tui/components/task-detail.js +1 -1
  60. package/dist/tui/components/task-detail.js.map +1 -1
  61. package/dist/tui/components/task-list.d.ts +1 -1
  62. package/dist/tui/components/task-list.d.ts.map +1 -1
  63. package/dist/tui/components/task-list.js +5 -6
  64. package/dist/tui/components/task-list.js.map +1 -1
  65. package/dist/tui/components/task-runs.d.ts +32 -0
  66. package/dist/tui/components/task-runs.d.ts.map +1 -0
  67. package/dist/tui/components/task-runs.js +146 -0
  68. package/dist/tui/components/task-runs.js.map +1 -0
  69. package/dist/tui/components/tool-call-item.d.ts +1 -1
  70. package/dist/tui/components/tool-call-item.d.ts.map +1 -1
  71. package/dist/tui/components/tool-call-item.js +44 -13
  72. package/dist/tui/components/tool-call-item.js.map +1 -1
  73. package/dist/tui/components/widgets-view.d.ts +1 -1
  74. package/dist/tui/components/widgets-view.d.ts.map +1 -1
  75. package/dist/tui/components/widgets-view.js +1 -1
  76. package/dist/tui/components/widgets-view.js.map +1 -1
  77. package/dist/tui/utils/avatar.d.ts +1 -1
  78. package/dist/tui/utils/avatar.d.ts.map +1 -1
  79. package/dist/tui/utils/avatar.js +1 -1
  80. package/dist/tui/utils/avatar.js.map +1 -1
  81. package/dist/tui/utils/bundle-loader.d.ts.map +1 -1
  82. package/dist/tui/utils/bundle-loader.js +8 -1
  83. package/dist/tui/utils/bundle-loader.js.map +1 -1
  84. package/dist/tui/utils/integration-loader.d.ts +1 -1
  85. package/dist/tui/utils/integration-loader.d.ts.map +1 -1
  86. package/dist/tui/utils/stream.d.ts +75 -13
  87. package/dist/tui/utils/stream.d.ts.map +1 -1
  88. package/dist/tui/utils/stream.js +148 -13
  89. package/dist/tui/utils/stream.js.map +1 -1
  90. package/dist/utils/env-bootstrap.js +1 -1
  91. package/dist/utils/env-bootstrap.js.map +1 -1
  92. package/dist/utils/setup/docker.js +1 -1
  93. package/dist/utils/setup/docker.js.map +1 -1
  94. package/dist/utils/setup/railway.js +1 -1
  95. package/dist/utils/setup/railway.js.map +1 -1
  96. package/package.json +5 -4
  97. package/dist/tui/components/dashboard-view.d.ts +0 -20
  98. package/dist/tui/components/dashboard-view.d.ts.map +0 -1
  99. package/dist/tui/components/dashboard-view.js +0 -147
  100. package/dist/tui/components/dashboard-view.js.map +0 -1
  101. package/dist/tui/components/reminder-list.d.ts +0 -28
  102. package/dist/tui/components/reminder-list.d.ts.map +0 -1
  103. package/dist/tui/components/reminder-list.js +0 -261
  104. package/dist/tui/components/reminder-list.js.map +0 -1
@@ -1,15 +1,20 @@
1
- import { SelectList, Text, Spacer, Container, Loader, matchesKey, } from '@mariozechner/pi-tui';
1
+ import { Text, Spacer, Container, Loader, matchesKey, Key, truncateToWidth, visibleWidth, } from '@earendil-works/pi-tui';
2
2
  import chalk from 'chalk';
3
3
  import { fetchConversations } from '../utils/stream.js';
4
- const selectListTheme = {
5
- selectedPrefix: (s) => chalk.cyan(s),
6
- selectedText: (s) => chalk.white(s),
7
- description: (s) => chalk.gray(s),
8
- scrollInfo: (s) => chalk.gray(s),
9
- noMatch: (s) => chalk.gray(s),
10
- };
11
- const PAGE_SIZE = 20;
12
- const LOAD_MORE_THRESHOLD = 3;
4
+ const INITIAL_PAGE_SIZE = 20;
5
+ const APPEND_PAGE_SIZE = 10;
6
+ const LOAD_MORE_THRESHOLD = 3; // when cursor is within N of loaded end, prefetch more
7
+ /**
8
+ * Resume-a-conversation picker. Owns its own layout + input handling — no
9
+ * SelectList, so pi-tui's differential renderer has nothing to interfere
10
+ * with. Items render as a plain list of Text lines under a Container, with
11
+ * a single visible cursor row (`→`) that we manage directly.
12
+ *
13
+ * Pagination is transparent: we prefetch the next {@link APPEND_PAGE_SIZE}
14
+ * page as soon as the cursor gets within {@link LOAD_MORE_THRESHOLD} of the
15
+ * last loaded row. New items append silently — the cursor position stays
16
+ * on the row the user was looking at.
17
+ */
13
18
  export class ConversationSelector {
14
19
  baseUrl;
15
20
  apiKey;
@@ -17,13 +22,16 @@ export class ConversationSelector {
17
22
  onRender;
18
23
  container;
19
24
  headerText;
20
- listContainer;
21
- list = null;
25
+ hintText;
26
+ bodyContainer;
22
27
  conversations = [];
28
+ cursor = 0;
29
+ windowTop = 0;
23
30
  page = 1;
24
31
  hasNext = false;
25
32
  loading = false;
26
- sourceFilter = undefined;
33
+ sourceFilter;
34
+ didInitialLoad = false;
27
35
  onSelect;
28
36
  onCancel;
29
37
  constructor(baseUrl, apiKey, tui, onRender) {
@@ -32,139 +40,201 @@ export class ConversationSelector {
32
40
  this.tui = tui;
33
41
  this.onRender = onRender;
34
42
  this.container = new Container();
35
- this.listContainer = new Container();
36
- this.container.addChild(new Spacer(1));
37
43
  this.headerText = new Text('', 1, 0);
44
+ this.hintText = new Text('', 1, 0);
45
+ this.bodyContainer = new Container();
46
+ this.container.addChild(new Spacer(1));
38
47
  this.container.addChild(this.headerText);
48
+ this.container.addChild(this.hintText);
39
49
  this.container.addChild(new Spacer(1));
40
- this.container.addChild(this.listContainer);
41
- this.load(true);
50
+ this.container.addChild(this.bodyContainer);
51
+ this.updateHeader();
52
+ void this.initialLoad();
53
+ }
54
+ // ── Layout ────────────────────────────────────────────────────────────────
55
+ visibleRows() {
56
+ // Reserve rows for: spacer + header + hint + spacer + prompt area (~10)
57
+ return Math.max(4, this.tui.terminal.rows - 10);
42
58
  }
59
+ // ── Rendering ─────────────────────────────────────────────────────────────
43
60
  updateHeader() {
44
61
  const filter = this.sourceFilter === 'cli'
45
62
  ? chalk.cyan('[CLI only]')
46
63
  : chalk.dim('[All sources]');
47
- this.headerText.setText(chalk.bold.white('Resume a conversation') +
48
- ' ' +
49
- filter +
50
- chalk.dim(' ↑↓ navigate · Enter select · f filter · Esc cancel'));
64
+ this.headerText.setText(chalk.bold.white('Resume a conversation') + ' ' + filter);
65
+ this.hintText.setText(chalk.dim('↑↓ navigate · Enter select · f filter · Esc cancel'));
51
66
  }
52
- buildItems() {
53
- return this.conversations.map(c => ({
54
- value: c.id,
55
- label: c.title ?? chalk.italic('Untitled'),
56
- description: chalk.dim(c.source ?? 'unknown') +
57
- ' ' +
58
- new Date(c.updatedAt).toLocaleString(),
59
- }));
60
- }
61
- rebuildList() {
62
- // Remove old list
63
- if (this.list) {
64
- try {
65
- this.listContainer.removeChild(this.list);
66
- }
67
- catch {
68
- // ignore
69
- }
67
+ redrawBody() {
68
+ this.bodyContainer.clear();
69
+ if (this.loading && this.conversations.length === 0) {
70
+ const loader = new Loader(this.tui, (s) => chalk.cyan(s), (s) => chalk.dim(s), 'Loading conversations...');
71
+ loader.start();
72
+ this.bodyContainer.addChild(loader);
73
+ return;
70
74
  }
71
- const items = this.buildItems();
72
- if (items.length === 0) {
73
- const empty = new Text(chalk.gray('No conversations found.'), 1, 0);
74
- this.listContainer.addChild(empty);
75
- this.list = null;
75
+ if (this.conversations.length === 0) {
76
+ this.bodyContainer.addChild(new Text(chalk.dim('No conversations found.'), 1, 0));
76
77
  return;
77
78
  }
78
- this.list = new SelectList(items, 15, selectListTheme);
79
- this.list.onSelect = item => {
80
- const conv = this.conversations.find(c => c.id === item.value);
81
- if (conv)
82
- this.onSelect?.(conv);
83
- };
84
- this.list.onCancel = () => this.onCancel?.();
85
- this.list.onSelectionChange = item => {
86
- // Auto-load more when within LOAD_MORE_THRESHOLD of the end
87
- const idx = this.conversations.findIndex(c => c.id === item.value);
88
- if (this.hasNext &&
89
- !this.loading &&
90
- idx >= this.conversations.length - LOAD_MORE_THRESHOLD) {
91
- this.load(false);
92
- }
93
- };
94
- this.listContainer.addChild(this.list);
79
+ // Slide the window so the cursor stays visible.
80
+ const rows = this.visibleRows();
81
+ if (this.cursor < this.windowTop)
82
+ this.windowTop = this.cursor;
83
+ if (this.cursor >= this.windowTop + rows)
84
+ this.windowTop = this.cursor - rows + 1;
85
+ if (this.windowTop < 0)
86
+ this.windowTop = 0;
87
+ const end = Math.min(this.conversations.length, this.windowTop + rows);
88
+ for (let i = this.windowTop; i < end; i++) {
89
+ this.bodyContainer.addChild(this.renderRow(i));
90
+ }
91
+ // Footer: cursor position + optional loading hint for appended pages.
92
+ const total = this.conversations.length;
93
+ const hasMore = this.hasNext ? ' · more available' : '';
94
+ const loadingMore = this.loading ? chalk.cyan(' · loading…') : '';
95
+ this.bodyContainer.addChild(new Spacer(1));
96
+ this.bodyContainer.addChild(new Text(chalk.dim(`${this.cursor + 1}/${total}${hasMore}${loadingMore}`), 1, 0));
97
+ }
98
+ renderRow(index) {
99
+ const conv = this.conversations[index];
100
+ const isSelected = index === this.cursor;
101
+ const prefix = isSelected ? chalk.cyan('→ ') : ' ';
102
+ // Titles can arrive with HTML, embedded newlines, or bullet-list
103
+ // markers — collapse to a single-line summary so each conversation
104
+ // occupies exactly one row.
105
+ const rawTitle = (conv.title ?? '')
106
+ .replace(/<[^>]*>/g, ' ')
107
+ .replace(/\s+/g, ' ')
108
+ .trim() || 'Untitled';
109
+ const source = chalk.dim(conv.source ?? 'unknown');
110
+ const when = chalk.dim(new Date(conv.updatedAt).toLocaleString());
111
+ const meta = `${source} ${when}`;
112
+ // Fill the row across the terminal width: title on the left, meta on
113
+ // the right. Truncate title if the meta doesn't fit.
114
+ const cols = this.tui.terminal.columns ?? 80;
115
+ const usable = Math.max(20, cols - 4);
116
+ const metaWidth = visibleWidth(meta);
117
+ const titleBudget = Math.max(10, usable - metaWidth - visibleWidth(prefix) - 2);
118
+ const title = isSelected
119
+ ? chalk.bold.white(truncateToWidth(rawTitle, titleBudget))
120
+ : chalk.white(truncateToWidth(rawTitle, titleBudget));
121
+ const gap = ' '.repeat(Math.max(2, usable - visibleWidth(prefix) - visibleWidth(title) - metaWidth));
122
+ return new Text(prefix + title + gap + meta, 1, 0);
95
123
  }
96
- load(reset) {
97
- if (this.loading)
124
+ // ── Data ──────────────────────────────────────────────────────────────────
125
+ async initialLoad() {
126
+ this.loading = true;
127
+ this.conversations = [];
128
+ this.cursor = 0;
129
+ this.windowTop = 0;
130
+ this.page = 1;
131
+ this.redrawBody();
132
+ this.forceRender();
133
+ try {
134
+ const result = await fetchConversations(this.baseUrl, this.apiKey, 1, INITIAL_PAGE_SIZE, this.sourceFilter);
135
+ const seen = new Set();
136
+ this.conversations = result.conversations.filter(c => {
137
+ if (seen.has(c.id))
138
+ return false;
139
+ seen.add(c.id);
140
+ return true;
141
+ });
142
+ this.hasNext = result.hasNext;
143
+ this.page = 2;
144
+ this.didInitialLoad = true;
145
+ }
146
+ catch {
147
+ // swallow; empty state renders
148
+ }
149
+ finally {
150
+ this.loading = false;
151
+ this.redrawBody();
152
+ this.forceRender();
153
+ }
154
+ }
155
+ async loadMore() {
156
+ if (this.loading || !this.hasNext)
98
157
  return;
99
158
  this.loading = true;
100
- if (reset) {
101
- this.conversations = [];
102
- this.page = 1;
103
- // Show spinner in listContainer while initial load
104
- const loaderComp = new Loader(this.tui, (s) => chalk.cyan(s), (s) => chalk.gray(s), 'Loading conversations...');
105
- loaderComp.start();
106
- if (this.list) {
107
- try {
108
- this.listContainer.removeChild(this.list);
109
- }
110
- catch {
111
- // ignore
112
- }
113
- this.list = null;
114
- }
115
- this.listContainer.addChild(loaderComp);
116
- this.updateHeader();
159
+ this.redrawBody();
160
+ this.onRender();
161
+ try {
162
+ const result = await fetchConversations(this.baseUrl, this.apiKey, this.page, APPEND_PAGE_SIZE, this.sourceFilter);
163
+ const seen = new Set(this.conversations.map(c => c.id));
164
+ const fresh = result.conversations.filter(c => !seen.has(c.id));
165
+ this.conversations.push(...fresh);
166
+ this.hasNext = result.hasNext;
167
+ this.page++;
168
+ }
169
+ catch {
170
+ // swallow — keep what we have
171
+ }
172
+ finally {
173
+ this.loading = false;
174
+ this.redrawBody();
117
175
  this.onRender();
118
- fetchConversations(this.baseUrl, this.apiKey, 1, PAGE_SIZE, this.sourceFilter)
119
- .then(result => {
120
- loaderComp.stop();
121
- this.listContainer.removeChild(loaderComp);
122
- this.conversations = result.conversations;
123
- this.hasNext = result.hasNext;
124
- this.page = 2;
125
- this.loading = false;
126
- this.rebuildList();
127
- this.onRender();
128
- })
129
- .catch((err) => {
130
- loaderComp.stop();
131
- this.listContainer.removeChild(loaderComp);
132
- this.listContainer.addChild(new Text(chalk.red('Error: ') + chalk.gray(err.message), 1, 0));
133
- this.loading = false;
134
- this.onRender();
135
- });
136
176
  }
137
- else {
138
- // Append next page
139
- fetchConversations(this.baseUrl, this.apiKey, this.page, PAGE_SIZE, this.sourceFilter)
140
- .then(result => {
141
- this.conversations = [...this.conversations, ...result.conversations];
142
- this.hasNext = result.hasNext;
143
- this.page++;
144
- this.loading = false;
145
- this.rebuildList();
146
- this.onRender();
147
- })
148
- .catch(() => {
149
- this.loading = false;
150
- });
177
+ }
178
+ maybePrefetch() {
179
+ if (!this.didInitialLoad)
180
+ return;
181
+ if (this.loading || !this.hasNext)
182
+ return;
183
+ if (this.cursor >= this.conversations.length - LOAD_MORE_THRESHOLD) {
184
+ void this.loadMore();
151
185
  }
152
186
  }
187
+ // ── Input ─────────────────────────────────────────────────────────────────
153
188
  handleInput(data) {
154
- // Toggle source filter with 'f'
189
+ if (matchesKey(data, Key.escape)) {
190
+ this.onCancel?.();
191
+ return;
192
+ }
155
193
  if (matchesKey(data, 'f')) {
156
- this.sourceFilter =
157
- this.sourceFilter === 'cli' ? undefined : 'cli';
158
- this.load(true);
194
+ this.sourceFilter = this.sourceFilter === 'cli' ? undefined : 'cli';
195
+ this.updateHeader();
196
+ void this.initialLoad();
197
+ return;
198
+ }
199
+ if (matchesKey(data, Key.up)) {
200
+ if (this.conversations.length === 0)
201
+ return;
202
+ this.cursor = this.cursor === 0
203
+ ? this.conversations.length - 1
204
+ : this.cursor - 1;
205
+ this.redrawBody();
206
+ this.onRender();
207
+ return;
208
+ }
209
+ if (matchesKey(data, Key.down)) {
210
+ if (this.conversations.length === 0)
211
+ return;
212
+ this.cursor = this.cursor === this.conversations.length - 1
213
+ ? 0
214
+ : this.cursor + 1;
215
+ this.redrawBody();
216
+ this.onRender();
217
+ this.maybePrefetch();
218
+ return;
219
+ }
220
+ if (data === '\r' || data === '\n') {
221
+ const picked = this.conversations[this.cursor];
222
+ if (picked)
223
+ this.onSelect?.(picked);
159
224
  return;
160
225
  }
161
- this.list?.handleInput?.(data);
162
226
  }
227
+ // ── Component boilerplate ────────────────────────────────────────────────
163
228
  render(width) {
164
229
  return this.container.render(width);
165
230
  }
166
231
  invalidate() {
167
232
  this.container.invalidate?.();
168
233
  }
234
+ forceRender() {
235
+ // Full re-render clears any stale rows pi-tui's diff renderer might
236
+ // have left in the terminal buffer when the tree shape changes.
237
+ this.tui.requestRender(true);
238
+ }
169
239
  }
170
240
  //# sourceMappingURL=conversation-selector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-selector.js","sourceRoot":"","sources":["../../../src/tui/components/conversation-selector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation-selector.js","sourceRoot":"","sources":["../../../src/tui/components/conversation-selector.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Component, TUI } from '@mariozechner/pi-tui';
1
+ import type { Component, TUI } from '@earendil-works/pi-tui';
2
2
  export declare class IntegrationsView implements Component {
3
3
  private baseUrl;
4
4
  private apiKey;
@@ -1 +1 @@
1
- {"version":3,"file":"integrations-view.d.ts","sourceRoot":"","sources":["../../../src/tui/components/integrations-view.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAE,GAAG,EAAC,MAAM,sBAAsB,CAAC;AAqBzD,qBAAa,gBAAiB,YAAW,SAAS;IAehD,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,QAAQ;IAjBjB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,GAAG,CAAwB;IACnC,OAAO,CAAC,OAAO,CAAS;IAExB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;gBAGb,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,MAAM,IAAI;IAc7B,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,WAAW;IAsCnB,OAAO,CAAC,IAAI;IAiDZ,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAiB/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAI/B,UAAU,IAAI,IAAI;CAGlB"}
1
+ {"version":3,"file":"integrations-view.d.ts","sourceRoot":"","sources":["../../../src/tui/components/integrations-view.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAE,GAAG,EAAC,MAAM,wBAAwB,CAAC;AAqB3D,qBAAa,gBAAiB,YAAW,SAAS;IAehD,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,QAAQ;IAjBjB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,GAAG,CAAwB;IACnC,OAAO,CAAC,OAAO,CAAS;IAExB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;gBAGb,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,MAAM,IAAI;IAc7B,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,WAAW;IAsCnB,OAAO,CAAC,IAAI;IAiDZ,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAiB/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAI/B,UAAU,IAAI,IAAI;CAGlB"}
@@ -1,4 +1,4 @@
1
- import { SelectList, Text, Spacer, Container, Loader, matchesKey, Key } from '@mariozechner/pi-tui';
1
+ import { SelectList, Text, Spacer, Container, Loader, matchesKey, Key } from '@earendil-works/pi-tui';
2
2
  import chalk from 'chalk';
3
3
  import { fetchIntegrationDefinitions, fetchIntegrationAccounts, openBrowser, } from '../utils/stream.js';
4
4
  const DASHBOARD_URL = 'https://app.getcore.me';
@@ -1 +1 @@
1
- {"version":3,"file":"integrations-view.js","sourceRoot":"","sources":["../../../src/tui/components/integrations-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integrations-view.js","sourceRoot":"","sources":["../../../src/tui/components/integrations-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { Component } from '@earendil-works/pi-tui';
2
+ /**
3
+ * Side-panel view of a daily scratchpad. Renders the rendered-HTML content as
4
+ * markdown so it reads naturally in the terminal. Exposes {@link setDate} and
5
+ * {@link refresh} so callers can navigate days (Ctrl+[/Ctrl+]) or re-fetch
6
+ * after the agent runs an `update_scratchpad` tool.
7
+ */
8
+ export declare class ScratchpadPanel implements Component {
9
+ private baseUrl;
10
+ private apiKey;
11
+ private onRender;
12
+ private container;
13
+ private headerText;
14
+ private bodyContainer;
15
+ private date;
16
+ onDateChange?: (date: Date) => void;
17
+ constructor(baseUrl: string, apiKey: string, onRender: () => void, initialDate?: Date);
18
+ getDate(): Date;
19
+ setDate(date: Date): void;
20
+ shiftDays(delta: number): void;
21
+ refresh(): Promise<void>;
22
+ private updateHeader;
23
+ private load;
24
+ private renderBody;
25
+ render(width: number): string[];
26
+ invalidate(): void;
27
+ }
28
+ //# sourceMappingURL=scratchpad-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scratchpad-panel.d.ts","sourceRoot":"","sources":["../../../src/tui/components/scratchpad-panel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAqCtD;;;;;GAKG;AACH,qBAAa,eAAgB,YAAW,SAAS;IAS/C,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAVjB,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,IAAI,CAAO;IAEnB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;gBAG3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,IAAI,EAC5B,WAAW,CAAC,EAAE,IAAI;IASnB,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAMzB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMxB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,OAAO,CAAC,YAAY;YAWN,IAAI;IAwBlB,OAAO,CAAC,UAAU;IAmBlB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAI/B,UAAU,IAAI,IAAI;CAGlB"}
@@ -0,0 +1,117 @@
1
+ import { Text, Spacer, Container, Markdown } from '@earendil-works/pi-tui';
2
+ import chalk from 'chalk';
3
+ import { fetchPageByDate, fetchPageContent } from '../utils/stream.js';
4
+ import { htmlToMarkdown } from '../utils/html-to-md.js';
5
+ import { markdownTheme } from '../themes.js';
6
+ /** Format a Date as `YYYY-MM-DD` using UTC to match the webapp's `todayUTC`. */
7
+ function isoDate(d) {
8
+ const yyyy = d.getUTCFullYear();
9
+ const mm = String(d.getUTCMonth() + 1).padStart(2, '0');
10
+ const dd = String(d.getUTCDate()).padStart(2, '0');
11
+ return `${yyyy}-${mm}-${dd}`;
12
+ }
13
+ /** Human-readable label like `Wed, Mar 12 2026`. */
14
+ function humanDate(d) {
15
+ const weekday = d.toLocaleDateString('en-US', {
16
+ weekday: 'short',
17
+ timeZone: 'UTC',
18
+ });
19
+ const month = d.toLocaleDateString('en-US', {
20
+ month: 'short',
21
+ timeZone: 'UTC',
22
+ });
23
+ const day = d.getUTCDate();
24
+ const year = d.getUTCFullYear();
25
+ return `${weekday}, ${month} ${day} ${year}`;
26
+ }
27
+ function isSameUTCDay(a, b) {
28
+ return (a.getUTCFullYear() === b.getUTCFullYear() &&
29
+ a.getUTCMonth() === b.getUTCMonth() &&
30
+ a.getUTCDate() === b.getUTCDate());
31
+ }
32
+ /**
33
+ * Side-panel view of a daily scratchpad. Renders the rendered-HTML content as
34
+ * markdown so it reads naturally in the terminal. Exposes {@link setDate} and
35
+ * {@link refresh} so callers can navigate days (Ctrl+[/Ctrl+]) or re-fetch
36
+ * after the agent runs an `update_scratchpad` tool.
37
+ */
38
+ export class ScratchpadPanel {
39
+ baseUrl;
40
+ apiKey;
41
+ onRender;
42
+ container = new Container();
43
+ headerText = new Text('', 0, 0);
44
+ bodyContainer = new Container();
45
+ date;
46
+ onDateChange;
47
+ constructor(baseUrl, apiKey, onRender, initialDate) {
48
+ this.baseUrl = baseUrl;
49
+ this.apiKey = apiKey;
50
+ this.onRender = onRender;
51
+ this.date = initialDate ?? new Date();
52
+ this.container.addChild(this.headerText);
53
+ this.container.addChild(new Spacer(1));
54
+ this.container.addChild(this.bodyContainer);
55
+ void this.load();
56
+ }
57
+ getDate() {
58
+ return this.date;
59
+ }
60
+ setDate(date) {
61
+ this.date = date;
62
+ this.onDateChange?.(date);
63
+ void this.load();
64
+ }
65
+ shiftDays(delta) {
66
+ const next = new Date(this.date);
67
+ next.setUTCDate(next.getUTCDate() + delta);
68
+ this.setDate(next);
69
+ }
70
+ async refresh() {
71
+ await this.load();
72
+ }
73
+ updateHeader(state) {
74
+ const today = isSameUTCDay(this.date, new Date());
75
+ const marker = today ? chalk.yellow('◆') : chalk.dim('◇');
76
+ const dateLabel = humanDate(this.date);
77
+ const nav = chalk.dim(' · ctrl+p prev · ctrl+n next');
78
+ const stateLabel = state ? chalk.dim(` · ${state}`) : '';
79
+ this.headerText.setText(`${marker} ${chalk.bold.white('Scratchpad')} ${chalk.dim('—')} ${chalk.white(dateLabel)}${stateLabel}${nav}`);
80
+ }
81
+ async load() {
82
+ this.updateHeader('loading');
83
+ this.onRender();
84
+ try {
85
+ const page = await fetchPageByDate(this.baseUrl, this.apiKey, isoDate(this.date));
86
+ const html = await fetchPageContent(this.baseUrl, this.apiKey, page.id);
87
+ this.renderBody(html);
88
+ this.updateHeader();
89
+ this.onRender();
90
+ }
91
+ catch (err) {
92
+ this.updateHeader('error');
93
+ this.bodyContainer.clear();
94
+ this.bodyContainer.addChild(new Text(chalk.red('Failed to load: ') +
95
+ chalk.dim(err instanceof Error ? err.message : String(err)), 0, 0));
96
+ this.onRender();
97
+ }
98
+ }
99
+ renderBody(html) {
100
+ this.bodyContainer.clear();
101
+ const md = html ? htmlToMarkdown(html).trim() : '';
102
+ if (md.length === 0) {
103
+ this.bodyContainer.addChild(new Text(chalk.dim('(empty — ask ') +
104
+ chalk.white('"append X to my scratchpad"') +
105
+ chalk.dim(' to fill it)'), 0, 0));
106
+ return;
107
+ }
108
+ this.bodyContainer.addChild(new Markdown(md, 0, 0, markdownTheme));
109
+ }
110
+ render(width) {
111
+ return this.container.render(width);
112
+ }
113
+ invalidate() {
114
+ this.container.invalidate?.();
115
+ }
116
+ }
117
+ //# sourceMappingURL=scratchpad-panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scratchpad-panel.js","sourceRoot":"","sources":["../../../src/tui/components/scratchpad-panel.ts"],"names":[],"mappings":"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"}