@felan-ai/ext-background-bash 0.4.3 → 0.4.5

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/README.md CHANGED
@@ -41,9 +41,10 @@ flavor.
41
41
  - `read_background_bash` reads trailing process output.
42
42
  - `wait_background_bash` waits for terminal status without returning log output.
43
43
  - `stop_background_bash` sends `SIGTERM` or `SIGKILL`.
44
- - `/background-bash` and `Ctrl+Shift+J` open the interactive process/log overlay in the TUI.
44
+ - `/background-bash` and `Ctrl+Shift+J` open the interactive process/log view inline in the TUI.
45
45
 
46
- The process/log overlay uses a complete four-edge frame.
46
+ The process/log view uses an inline frame. Automatic completion messages use a
47
+ compact one-line summary; `Alt+A` reveals bounded details.
47
48
 
48
49
  The footer status shows the number of running processes. Foreground `bash` continues
49
50
  to use the active `AgentRuntime`. Processes started by the active session deliver a
@@ -78,7 +79,7 @@ import backgroundBashExtension from '@felan-ai/ext-background-bash';
78
79
  const extension = backgroundBashExtension;
79
80
  ```
80
81
 
81
- Hosts provide the `AgentRuntime`; the local TUI owns the process overlay,
82
+ Hosts provide the `AgentRuntime`; the local TUI owns the process view,
82
83
  shortcut, status polling, and dependency onboarding. Compatible runtimes need
83
84
  the POSIX shell/process facilities listed in
84
85
  [runtime dependencies](../../docs/reference/runtime-dependencies.md). Felan
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,GAAG,EAER,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,sBAAsB,CAAC;AA+D9B,UAAU,qBAAqB;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,OAAO,CAElF;AAED,QAAA,MAAM,uBAAuB,EAAE,cAwa9B,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAiFxE,YAAY,EAAE,qBAAqB,EAAE,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,GAAG,EAER,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,sBAAsB,CAAC;AAkE9B,UAAU,qBAAqB;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,OAAO,CAElF;AAED,QAAA,MAAM,uBAAuB,EAAE,cAma9B,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAiFxE,YAAY,EAAE,qBAAqB,EAAE,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,eAAe,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -5,11 +5,11 @@ import { normalizeBackgroundCommand } from './command-normalizer.js';
5
5
  import { isTerminalStatus, } from './job-store.js';
6
6
  import { BackgroundBashManager } from './process-manager.js';
7
7
  import { inspectBackgroundBashRuntime } from './runtime-support.js';
8
- import { BackgroundBashOverlay } from './ui/background-bash-overlay.js';
8
+ import { BackgroundBashView } from './ui/background-bash-view.js';
9
+ import { BACKGROUND_BASH_COMPLETION_MESSAGE_TYPE, registerBackgroundBashCompletionRenderer, } from './ui/completion-message.js';
9
10
  const STATUS_VALUES = ['running', 'completed', 'failed', 'killed', 'unknown', 'all'];
10
11
  const SIGNAL_VALUES = ['SIGTERM', 'SIGKILL'];
11
12
  const OPENAI_PROVIDER_IDS = new Set(['openai', 'openai-codex']);
12
- const COMPLETION_MESSAGE_TYPE = 'felan-background-bash-completion';
13
13
  const COMPLETION_POLL_MS = 500;
14
14
  const BACKGROUND_TOOL_NAMES = [
15
15
  'list_background_bash',
@@ -47,6 +47,7 @@ export function supportsBackgroundBashModel(model) {
47
47
  return model !== undefined && !OPENAI_PROVIDER_IDS.has(model.provider);
48
48
  }
49
49
  const backgroundBashExtension = (pi) => {
50
+ registerBackgroundBashCompletionRenderer(pi);
50
51
  const manager = new BackgroundBashManager(pi.runtime);
51
52
  const foregroundBash = createRuntimeCodingTools(pi.runtime, { shellFlavor: 'posix' })
52
53
  .find((tool) => tool.name === 'bash');
@@ -77,14 +78,13 @@ const backgroundBashExtension = (pi) => {
77
78
  const running = await manager.list('running');
78
79
  if (target.generation !== statusGeneration)
79
80
  return;
80
- const count = running.length;
81
- const label = count === 1 ? '1 process' : `${count} processes`;
82
- const icon = count > 0
83
- ? target.ui.theme.fg('accent', '●')
84
- : target.ui.theme.fg('dim', '○');
85
- const text = count > 0
86
- ? target.ui.theme.fg('accent', label)
87
- : target.ui.theme.fg('dim', label);
81
+ if (running.length === 0) {
82
+ target.ui.setStatus('background-bash', undefined);
83
+ return;
84
+ }
85
+ const label = running.length === 1 ? '1 process' : `${running.length} processes`;
86
+ const icon = target.ui.theme.fg('accent', '●');
87
+ const text = target.ui.theme.fg('accent', label);
88
88
  target.ui.setStatus('background-bash', `${icon} ${text}`);
89
89
  }
90
90
  catch {
@@ -122,7 +122,7 @@ const backgroundBashExtension = (pi) => {
122
122
  };
123
123
  const deliverCompletion = (job) => {
124
124
  pi.sendMessage({
125
- customType: COMPLETION_MESSAGE_TYPE,
125
+ customType: BACKGROUND_BASH_COMPLETION_MESSAGE_TYPE,
126
126
  content: formatCompletionNotice(job),
127
127
  display: true,
128
128
  details: { job: completionDetails(job) },
@@ -196,24 +196,21 @@ const backgroundBashExtension = (pi) => {
196
196
  pauseCompletionPolling();
197
197
  watchedJobIds.clear();
198
198
  };
199
- const openOverlay = async (ctx) => {
199
+ const openProcessView = async (ctx) => {
200
200
  if (!supportsBackgroundBashModel(ctx.model)) {
201
201
  if (ctx.mode === 'tui')
202
202
  ctx.ui.notify('Background Bash is unavailable for this model.', 'info');
203
203
  return;
204
204
  }
205
+ if (!backgroundBashActive) {
206
+ if (ctx.mode === 'tui')
207
+ ctx.ui.notify('Background Bash is unavailable in this runtime.', 'info');
208
+ return;
209
+ }
205
210
  const target = createStatusTarget(ctx);
206
211
  if (!target)
207
212
  return;
208
- await target.ui.custom((tui, theme, _keybindings, done) => new BackgroundBashOverlay(manager, theme, () => done(undefined), () => tui.requestRender()), {
209
- overlay: true,
210
- overlayOptions: {
211
- width: '85%',
212
- minWidth: 72,
213
- maxHeight: '90%',
214
- margin: 2,
215
- },
216
- });
213
+ await target.ui.custom((tui, theme, _keybindings, done) => new BackgroundBashView(manager, theme, () => done(undefined), () => tui.requestRender()));
217
214
  await updateStatus(target);
218
215
  };
219
216
  const assertSupportedModel = (ctx) => {
@@ -387,11 +384,11 @@ const backgroundBashExtension = (pi) => {
387
384
  controlsRegistered = true;
388
385
  pi.registerCommand('background-bash', {
389
386
  description: 'View Background Bash processes and logs',
390
- handler: async (_args, ctx) => openOverlay(ctx),
387
+ handler: async (_args, ctx) => openProcessView(ctx),
391
388
  });
392
389
  pi.registerShortcut(Key.ctrlShift('j'), {
393
390
  description: 'View Background Bash processes and logs',
394
- handler: openOverlay,
391
+ handler: openProcessView,
395
392
  });
396
393
  };
397
394
  const activateRegisteredTools = () => {
@@ -426,10 +423,8 @@ const backgroundBashExtension = (pi) => {
426
423
  registerHelperTools();
427
424
  activateRegisteredTools();
428
425
  resumeCompletionPolling();
429
- if (ctx.mode === 'tui') {
430
- registerControls();
426
+ if (ctx.mode === 'tui')
431
427
  startStatusPolling(ctx);
432
- }
433
428
  };
434
429
  const disableExtension = () => {
435
430
  stopStatusPolling();
@@ -446,7 +441,11 @@ const backgroundBashExtension = (pi) => {
446
441
  ]),
447
442
  ]);
448
443
  };
449
- pi.on('session_start', (_event, ctx) => enableExtension(ctx));
444
+ pi.on('session_start', async (_event, ctx) => {
445
+ if (ctx.mode === 'tui')
446
+ registerControls();
447
+ await enableExtension(ctx);
448
+ });
450
449
  pi.on('model_select', async (event, ctx) => {
451
450
  if (supportsBackgroundBashModel(event.model))
452
451
  await enableExtension(ctx);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { ExtensionContext } from '@felan-ai/agent-core';
2
2
  import type { BackgroundBashManager } from '../process-manager.js';
3
3
  type Theme = ExtensionContext['ui']['theme'];
4
- export declare class BackgroundBashOverlay {
4
+ export declare class BackgroundBashView {
5
5
  private readonly manager;
6
6
  private readonly theme;
7
7
  private readonly done;
@@ -14,6 +14,7 @@ export declare class BackgroundBashOverlay {
14
14
  private loading;
15
15
  private message;
16
16
  private view;
17
+ private closed;
17
18
  constructor(manager: BackgroundBashManager, theme: Theme, done: () => void, requestRender: () => void);
18
19
  handleInput(data: string): void;
19
20
  render(width: number): string[];
@@ -34,6 +35,7 @@ export declare class BackgroundBashOverlay {
34
35
  private stopSelected;
35
36
  private killSelected;
36
37
  private signalSelected;
38
+ private requestViewRender;
37
39
  }
38
40
  export {};
39
- //# sourceMappingURL=background-bash-overlay.d.ts.map
41
+ //# sourceMappingURL=background-bash-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-bash-view.d.ts","sourceRoot":"","sources":["../../src/ui/background-bash-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AASnE,KAAK,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAG7C,qBAAa,kBAAkB;IAY3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAdhC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,MAAM,CAAS;gBAGJ,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,IAAI,EAChB,aAAa,EAAE,MAAM,IAAI;IAK5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAe/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAU/B,UAAU,IAAI,IAAI;IAElB,OAAO,CAAC,eAAe;IA4CvB,OAAO,CAAC,iBAAiB;IA2CzB,OAAO,CAAC,UAAU;IAmClB,OAAO,CAAC,YAAY;YA4BN,OAAO;YAuBP,aAAa;YAKb,UAAU;IAoBxB,OAAO,CAAC,aAAa;YAOP,UAAU;IAMxB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,cAAc;YAOR,YAAY;YAIZ,YAAY;YAIZ,cAAc;IAuB5B,OAAO,CAAC,iBAAiB;CAG1B"}
@@ -1,10 +1,11 @@
1
- import { matchesKey, truncateToWidth } from '@earendil-works/pi-tui';
1
+ import { matchesKey, stripTerminalSequences, truncateToWidth } from '@earendil-works/pi-tui';
2
2
  const LOG_SCROLLBACK_LINES = 2_000;
3
3
  const LOG_VISIBLE_LINES = 28;
4
4
  const JOB_LIST_VISIBLE_ROWS = 18;
5
5
  const PADDING_X = 2;
6
6
  const PADDING_Y = 1;
7
- export class BackgroundBashOverlay {
7
+ const CONTROL_CHARACTERS = /[\u0000-\u001F\u007F-\u009F]/gu;
8
+ export class BackgroundBashView {
8
9
  manager;
9
10
  theme;
10
11
  done;
@@ -17,6 +18,7 @@ export class BackgroundBashOverlay {
17
18
  loading = false;
18
19
  message = '';
19
20
  view = 'list';
21
+ closed = false;
20
22
  constructor(manager, theme, done, requestRender) {
21
23
  this.manager = manager;
22
24
  this.theme = theme;
@@ -25,7 +27,10 @@ export class BackgroundBashOverlay {
25
27
  void this.refresh();
26
28
  }
27
29
  handleInput(data) {
30
+ if (this.closed)
31
+ return;
28
32
  if (matchesKey(data, 'escape') || data === 'q') {
33
+ this.closed = true;
29
34
  this.done();
30
35
  return;
31
36
  }
@@ -37,12 +42,12 @@ export class BackgroundBashOverlay {
37
42
  }
38
43
  render(width) {
39
44
  const renderWidth = Math.max(1, Math.floor(width));
40
- const contentWidth = Math.max(1, renderWidth - 2);
41
45
  const lines = this.view === 'list' ? this.renderList() : this.renderDetail();
42
- const innerWidth = Math.max(1, contentWidth - PADDING_X * 2);
43
- const prefix = ' '.repeat(PADDING_X);
46
+ const padding = Math.min(PADDING_X, Math.max(0, Math.floor((renderWidth - 1) / 2)));
47
+ const innerWidth = Math.max(1, renderWidth - padding * 2);
48
+ const prefix = ' '.repeat(padding);
44
49
  const padded = lines.map((line) => `${prefix}${truncateToWidth(line, innerWidth, '…')}${prefix}`);
45
- return frameOverlayLines([...Array(PADDING_Y).fill(''), ...padded, ...Array(PADDING_Y).fill('')], renderWidth, this.theme);
50
+ return frameInlineLines([...Array(PADDING_Y).fill(''), ...padded, ...Array(PADDING_Y).fill('')], renderWidth, this.theme);
46
51
  }
47
52
  invalidate() { }
48
53
  handleListInput(data) {
@@ -65,13 +70,13 @@ export class BackgroundBashOverlay {
65
70
  if (matchesKey(data, 'home') || data === 'g') {
66
71
  this.selected = 0;
67
72
  this.clampListScroll();
68
- this.requestRender();
73
+ this.requestViewRender();
69
74
  return;
70
75
  }
71
76
  if (matchesKey(data, 'end') || data === 'G') {
72
77
  this.selected = Math.max(0, this.jobs.length - 1);
73
78
  this.clampListScroll();
74
- this.requestRender();
79
+ this.requestViewRender();
75
80
  return;
76
81
  }
77
82
  if (matchesKey(data, 'return') || matchesKey(data, 'right')) {
@@ -92,7 +97,7 @@ export class BackgroundBashOverlay {
92
97
  handleDetailInput(data) {
93
98
  if (matchesKey(data, 'backspace') || matchesKey(data, 'left')) {
94
99
  this.view = 'list';
95
- this.requestRender();
100
+ this.requestViewRender();
96
101
  return;
97
102
  }
98
103
  if (matchesKey(data, 'up')) {
@@ -113,12 +118,12 @@ export class BackgroundBashOverlay {
113
118
  }
114
119
  if (matchesKey(data, 'home') || data === 'g') {
115
120
  this.logScroll = 0;
116
- this.requestRender();
121
+ this.requestViewRender();
117
122
  return;
118
123
  }
119
124
  if (matchesKey(data, 'end') || data === 'G') {
120
125
  this.scrollLogToBottom();
121
- this.requestRender();
126
+ this.requestViewRender();
122
127
  return;
123
128
  }
124
129
  if (data === 'r') {
@@ -145,7 +150,7 @@ export class BackgroundBashOverlay {
145
150
  if (this.loading)
146
151
  lines.push(this.theme.fg('warning', 'Refreshing...'));
147
152
  if (this.message)
148
- lines.push(this.theme.fg('muted', this.message));
153
+ lines.push(this.theme.fg('muted', singleLine(this.message)));
149
154
  lines.push('');
150
155
  if (this.jobs.length === 0) {
151
156
  lines.push(this.theme.fg('dim', 'No Background Bash processes found for this workspace.'));
@@ -157,7 +162,7 @@ export class BackgroundBashOverlay {
157
162
  for (let index = start; index < end; index += 1) {
158
163
  const job = this.jobs[index];
159
164
  const marker = index === this.selected ? this.theme.fg('accent', '▶') : ' ';
160
- lines.push(`${marker} ${job.meta.id} ${colorStatus(job, this.theme)} ${formatDuration(job)} ${oneLine(job.meta.command, 90)}`);
165
+ lines.push(`${marker} ${singleLine(job.meta.id)} ${colorStatus(job, this.theme)} ${formatDuration(job)} ${oneLine(job.meta.command, 90)}`);
161
166
  }
162
167
  return lines;
163
168
  }
@@ -166,15 +171,15 @@ export class BackgroundBashOverlay {
166
171
  const current = this.jobs[this.selected];
167
172
  if (!current)
168
173
  return [this.theme.fg('dim', 'No process selected.')];
169
- lines.push(this.theme.fg('accent', this.theme.bold(current.meta.id))
174
+ lines.push(this.theme.fg('accent', this.theme.bold(singleLine(current.meta.id)))
170
175
  + this.theme.fg('dim', ' backspace/← processes • ↑↓ scroll • ctrl+u/d page • g/G top/bottom • r refresh • s stop • k kill • q/esc close'));
171
176
  if (this.loading)
172
177
  lines.push(this.theme.fg('warning', 'Refreshing...'));
173
178
  if (this.message)
174
- lines.push(this.theme.fg('muted', this.message));
179
+ lines.push(this.theme.fg('muted', singleLine(this.message)));
175
180
  lines.push('');
176
181
  lines.push(`status=${colorStatus(current, this.theme)} duration=${formatDuration(current)}`);
177
- lines.push(`command=${current.meta.command}`);
182
+ lines.push(`command=${singleLine(current.meta.command)}`);
178
183
  lines.push('');
179
184
  const totalLines = this.logLines.length;
180
185
  const start = Math.min(this.logScroll, Math.max(0, totalLines - 1));
@@ -183,13 +188,13 @@ export class BackgroundBashOverlay {
183
188
  lines.push(this.theme.fg('accent', this.theme.bold('Log')) + this.theme.fg('dim', ` ${range}`));
184
189
  const visible = this.logLines.slice(start, end);
185
190
  for (const line of visible.length > 0 ? visible : ['(log is empty)']) {
186
- lines.push(this.theme.fg('toolOutput', line));
191
+ lines.push(this.theme.fg('toolOutput', sanitizeTerminalText(line)));
187
192
  }
188
193
  return lines;
189
194
  }
190
195
  async refresh() {
191
196
  this.loading = true;
192
- this.requestRender();
197
+ this.requestViewRender();
193
198
  try {
194
199
  const selectedId = this.jobs[this.selected]?.meta.id;
195
200
  this.jobs = await this.manager.list('all');
@@ -209,7 +214,7 @@ export class BackgroundBashOverlay {
209
214
  }
210
215
  finally {
211
216
  this.loading = false;
212
- this.requestRender();
217
+ this.requestViewRender();
213
218
  }
214
219
  }
215
220
  async refreshDetail() {
@@ -222,7 +227,7 @@ export class BackgroundBashOverlay {
222
227
  this.logLines = [];
223
228
  this.logScroll = 0;
224
229
  if (render)
225
- this.requestRender();
230
+ this.requestViewRender();
226
231
  return;
227
232
  }
228
233
  try {
@@ -237,14 +242,14 @@ export class BackgroundBashOverlay {
237
242
  else
238
243
  this.clampLogScroll();
239
244
  if (render)
240
- this.requestRender();
245
+ this.requestViewRender();
241
246
  }
242
247
  selectListJob(delta) {
243
248
  if (this.jobs.length === 0)
244
249
  return;
245
250
  this.selected = Math.max(0, Math.min(this.jobs.length - 1, this.selected + delta));
246
251
  this.clampListScroll();
247
- this.requestRender();
252
+ this.requestViewRender();
248
253
  }
249
254
  async openDetail() {
250
255
  if (this.jobs.length === 0)
@@ -263,7 +268,7 @@ export class BackgroundBashOverlay {
263
268
  scrollLog(delta) {
264
269
  this.logScroll += delta;
265
270
  this.clampLogScroll();
266
- this.requestRender();
271
+ this.requestViewRender();
267
272
  }
268
273
  scrollLogToBottom() {
269
274
  this.logScroll = Math.max(0, this.logLines.length - LOG_VISIBLE_LINES);
@@ -283,7 +288,7 @@ export class BackgroundBashOverlay {
283
288
  return;
284
289
  this.loading = true;
285
290
  this.message = `${action} ${current.meta.id}...`;
286
- this.requestRender();
291
+ this.requestViewRender();
287
292
  try {
288
293
  await this.manager.stop(current.meta.id, signal);
289
294
  await this.refresh();
@@ -296,17 +301,20 @@ export class BackgroundBashOverlay {
296
301
  }
297
302
  finally {
298
303
  this.loading = false;
299
- this.requestRender();
304
+ this.requestViewRender();
300
305
  }
301
306
  }
307
+ requestViewRender() {
308
+ if (!this.closed)
309
+ this.requestRender();
310
+ }
302
311
  }
303
- function frameOverlayLines(lines, width, theme) {
312
+ function frameInlineLines(lines, width, theme) {
304
313
  const border = (text) => theme.fg('border', text);
305
- const innerWidth = Math.max(1, width - 2);
306
314
  return [
307
- border(`╭${'─'.repeat(innerWidth)}╮`),
308
- ...lines.map((line) => `${border('│')}${truncateToWidth(line, innerWidth, '', true)}${border('│')}`),
309
- border(`╰${'─'.repeat(innerWidth)}╯`),
315
+ border('─'.repeat(width)),
316
+ ...lines,
317
+ border('─'.repeat(width)),
310
318
  ];
311
319
  }
312
320
  function getProcessOutputLines(log) {
@@ -346,9 +354,15 @@ function colorStatus(job, theme) {
346
354
  return theme.fg(color, job.status.status);
347
355
  }
348
356
  function oneLine(value, max) {
349
- const compact = value.replace(/\s+/gu, ' ').trim();
357
+ const compact = singleLine(value);
350
358
  return compact.length > max ? `${compact.slice(0, max - 1)}…` : compact;
351
359
  }
360
+ function singleLine(value) {
361
+ return sanitizeTerminalText(value).replace(/\s+/gu, ' ').trim();
362
+ }
363
+ function sanitizeTerminalText(value) {
364
+ return stripTerminalSequences(value).replace(CONTROL_CHARACTERS, ' ');
365
+ }
352
366
  function formatDuration(job) {
353
367
  const end = job.status.completedAt ?? Date.now();
354
368
  const seconds = Math.max(0, Math.round((end - job.meta.startedAt) / 1_000));
@@ -360,4 +374,4 @@ function formatDuration(job) {
360
374
  function errorMessage(error) {
361
375
  return error instanceof Error ? error.message : String(error);
362
376
  }
363
- //# sourceMappingURL=background-bash-overlay.js.map
377
+ //# sourceMappingURL=background-bash-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-bash-view.js","sourceRoot":"","sources":["../../src/ui/background-bash-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { ExtensionContext, FelanExtensionAPI } from '@felan-ai/agent-core';
2
+ import { type Component } from '@earendil-works/pi-tui';
3
+ import type { BackgroundBashStatus } from '../job-store.js';
4
+ export declare const BACKGROUND_BASH_COMPLETION_MESSAGE_TYPE = "felan-background-bash-completion";
5
+ type Theme = ExtensionContext['ui']['theme'];
6
+ type TerminalStatus = Exclude<BackgroundBashStatus, 'running'>;
7
+ interface CompletionJobDetails {
8
+ readonly id: string;
9
+ readonly status: TerminalStatus;
10
+ readonly command: string;
11
+ readonly exitCode?: number | null;
12
+ readonly signal?: string | null;
13
+ readonly error?: string;
14
+ }
15
+ export declare function registerBackgroundBashCompletionRenderer(pi: Pick<FelanExtensionAPI, 'registerMessageRenderer'>): void;
16
+ export declare class BackgroundBashCompletionComponent implements Component {
17
+ #private;
18
+ private readonly job;
19
+ private readonly expanded;
20
+ private readonly outputPad;
21
+ private readonly theme;
22
+ constructor(job: CompletionJobDetails | undefined, fallbackText: string, expanded: boolean, outputPad: number, theme: Theme);
23
+ render(width: number): string[];
24
+ invalidate(): void;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=completion-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-message.d.ts","sourceRoot":"","sources":["../../src/ui/completion-message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,eAAO,MAAM,uCAAuC,qCAAqC,CAAC;AAM1F,KAAK,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7C,KAAK,cAAc,GAAG,OAAO,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;AAE/D,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAMD,wBAAgB,wCAAwC,CACtD,EAAE,EAAE,IAAI,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,GACrD,IAAI,CAWN;AAED,qBAAa,iCAAkC,YAAW,SAAS;;IAI/D,OAAO,CAAC,QAAQ,CAAC,GAAG;IAEpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAJL,GAAG,EAAE,oBAAoB,GAAG,SAAS,EACtD,YAAY,EAAE,MAAM,EACH,QAAQ,EAAE,OAAO,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK;IAK/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAsB/B,UAAU,IAAI,IAAI;CAgBnB"}
@@ -0,0 +1,130 @@
1
+ import { stripTerminalSequences, truncateToWidth, } from '@earendil-works/pi-tui';
2
+ export const BACKGROUND_BASH_COMPLETION_MESSAGE_TYPE = 'felan-background-bash-completion';
3
+ const MAX_DETAIL_LINES = 3;
4
+ const MAX_INLINE_CHARACTERS = 240;
5
+ const INLINE_CONTROL_CHARACTERS = /[\u0000-\u001F\u007F-\u009F]/gu;
6
+ export function registerBackgroundBashCompletionRenderer(pi) {
7
+ pi.registerMessageRenderer(BACKGROUND_BASH_COMPLETION_MESSAGE_TYPE, (message, options, theme) => new BackgroundBashCompletionComponent(completionJob(message.details), messageText(message.content), options.expanded, options.outputPad, theme));
8
+ }
9
+ export class BackgroundBashCompletionComponent {
10
+ job;
11
+ expanded;
12
+ outputPad;
13
+ theme;
14
+ #detailLines;
15
+ constructor(job, fallbackText, expanded, outputPad, theme) {
16
+ this.job = job;
17
+ this.expanded = expanded;
18
+ this.outputPad = outputPad;
19
+ this.theme = theme;
20
+ this.#detailLines = job ? jobDetailLines(job) : summaryLines(fallbackText);
21
+ }
22
+ render(width) {
23
+ if (width <= 0)
24
+ return [];
25
+ const padding = Math.min(Math.max(0, this.outputPad), Math.max(0, width - 1));
26
+ const availableWidth = Math.max(1, width - padding * 2);
27
+ const leftPadding = ' '.repeat(padding);
28
+ const lines = [this.#header()];
29
+ if (this.expanded) {
30
+ for (const line of this.#detailLines.slice(0, MAX_DETAIL_LINES)) {
31
+ lines.push(this.theme.fg('dim', ` ${line}`));
32
+ }
33
+ if (this.#detailLines.length > MAX_DETAIL_LINES) {
34
+ lines.push(this.theme.fg('dim', ` … ${this.#detailLines.length - MAX_DETAIL_LINES} more lines · Alt+A full details`));
35
+ }
36
+ }
37
+ return lines.map((line) => leftPadding + truncateToWidth(line, availableWidth, '…'));
38
+ }
39
+ invalidate() { }
40
+ #header() {
41
+ if (!this.job) {
42
+ const summary = this.#detailLines[0];
43
+ return `${this.theme.fg('warning', '?')} ${this.theme.bold('Background Bash finished')}`
44
+ + (summary ? this.theme.fg('muted', ` · ${summary}`) : '')
45
+ + this.theme.fg('muted', ' · Alt+A details');
46
+ }
47
+ const metadata = [shortJobId(this.job.id)];
48
+ if (!this.expanded && this.job.command)
49
+ metadata.push(`$ ${inlineText(this.job.command)}`);
50
+ metadata.push('Alt+A details');
51
+ return `${statusIcon(this.job.status, this.theme)} ${this.theme.bold(statusTitle(this.job.status))}`
52
+ + this.theme.fg('muted', ` · ${metadata.join(' · ')}`);
53
+ }
54
+ }
55
+ function completionJob(details) {
56
+ const job = details?.job;
57
+ if (!isRecord(job))
58
+ return undefined;
59
+ if (typeof job.id !== 'string'
60
+ || !isTerminalStatus(job.status)
61
+ || typeof job.command !== 'string'
62
+ || (job.exitCode !== undefined && job.exitCode !== null && typeof job.exitCode !== 'number')
63
+ || (job.signal !== undefined && job.signal !== null && typeof job.signal !== 'string')
64
+ || (job.error !== undefined && typeof job.error !== 'string'))
65
+ return undefined;
66
+ return job;
67
+ }
68
+ function jobDetailLines(job) {
69
+ const outcome = [
70
+ inlineText(job.id),
71
+ ...(job.exitCode === undefined || job.exitCode === null ? [] : [`exit ${job.exitCode}`]),
72
+ ...(job.signal ? [`signal ${inlineText(job.signal)}`] : []),
73
+ ...(job.error ? [inlineText(job.error)] : []),
74
+ ].join(' · ');
75
+ return [
76
+ `$ ${inlineText(job.command)}`,
77
+ outcome,
78
+ `Use read_background_bash with id "${inlineText(job.id)}" for output.`,
79
+ ];
80
+ }
81
+ function statusIcon(status, theme) {
82
+ if (status === 'completed')
83
+ return theme.fg('success', '✓');
84
+ if (status === 'failed')
85
+ return theme.fg('error', '✗');
86
+ if (status === 'killed')
87
+ return theme.fg('dim', '■');
88
+ return theme.fg('warning', '?');
89
+ }
90
+ function statusTitle(status) {
91
+ return status === 'unknown' ? 'Background Bash status unknown' : `Background Bash ${status}`;
92
+ }
93
+ function shortJobId(id) {
94
+ const normalized = inlineText(id);
95
+ return normalized.match(/-([a-f0-9]{6})$/u)?.[1] ?? normalized.slice(0, 12);
96
+ }
97
+ function summaryLines(value) {
98
+ return stripTerminalSequences(value)
99
+ .replace(/\r/g, '')
100
+ .split('\n')
101
+ .map((line) => inlineText(line).replace(/^(?:#{1,6}|[-*+])\s+/u, ''))
102
+ .filter(Boolean);
103
+ }
104
+ function inlineText(value) {
105
+ const normalized = stripTerminalSequences(value)
106
+ .replace(INLINE_CONTROL_CHARACTERS, ' ')
107
+ .replace(/\s+/g, ' ')
108
+ .trim();
109
+ return normalized.length <= MAX_INLINE_CHARACTERS
110
+ ? normalized
111
+ : `${normalized.slice(0, MAX_INLINE_CHARACTERS - 1)}…`;
112
+ }
113
+ function messageText(content) {
114
+ if (typeof content === 'string')
115
+ return content;
116
+ return content
117
+ .filter((entry) => entry.type === 'text' && typeof entry.text === 'string')
118
+ .map((entry) => entry.text)
119
+ .join('\n');
120
+ }
121
+ function isTerminalStatus(value) {
122
+ return value === 'completed'
123
+ || value === 'failed'
124
+ || value === 'killed'
125
+ || value === 'unknown';
126
+ }
127
+ function isRecord(value) {
128
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
129
+ }
130
+ //# sourceMappingURL=completion-message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-message.js","sourceRoot":"","sources":["../../src/ui/completion-message.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@felan-ai/ext-background-bash",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "description": "Runtime-portable detached Bash processes for Felan",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -32,7 +32,7 @@
32
32
  "@felan-ai/agent-core": "^0.5.0"
33
33
  },
34
34
  "devDependencies": {
35
- "@felan-ai/agent-core": "0.5.6"
35
+ "@felan-ai/agent-core": "0.5.7"
36
36
  },
37
37
  "publishConfig": {
38
38
  "access": "public",
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-bash-overlay.d.ts","sourceRoot":"","sources":["../../src/ui/background-bash-overlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAQnE,KAAK,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAG7C,qBAAa,qBAAqB;IAW9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAbhC,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,IAAI,CAAuB;gBAGhB,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,IAAI,EAChB,aAAa,EAAE,MAAM,IAAI;IAK5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAa/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAU/B,UAAU,IAAI,IAAI;IAElB,OAAO,CAAC,eAAe;IA4CvB,OAAO,CAAC,iBAAiB;IA2CzB,OAAO,CAAC,UAAU;IAmClB,OAAO,CAAC,YAAY;YA4BN,OAAO;YAuBP,aAAa;YAKb,UAAU;IAoBxB,OAAO,CAAC,aAAa;YAOP,UAAU;IAMxB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,cAAc;YAOR,YAAY;YAIZ,YAAY;YAIZ,cAAc;CAsB7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"background-bash-overlay.js","sourceRoot":"","sources":["../../src/ui/background-bash-overlay.ts"],"names":[],"mappings":"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"}