Skip to content

feat(desktop): xterm.js terminal embed in Chat screen#63

Merged
oratis merged 1 commit into
mainfrom
feat/desktop-terminal
May 28, 2026
Merged

feat(desktop): xterm.js terminal embed in Chat screen#63
oratis merged 1 commit into
mainfrom
feat/desktop-terminal

Conversation

@oratis

@oratis oratis commented May 28, 2026

Copy link
Copy Markdown
Owner

xterm 5.5 + fit + web-links. Top-right toggle button. Line-based input through tool_bash. cd / clear specially handled. +90KB gzipped.

Bottom-right toggle button reveals a 50% width terminal panel.

  · apps/desktop/src/components/Terminal.tsx (NEW)
    - xterm 5.5 + addon-fit + addon-web-links
    - DeepCode brand theme (lime accent, slate background)
    - Line-based input: type command + Enter → tool_bash → output streams
      back into the xterm. clear/cls clears; cd <dir> updates the
      session cwd persistently.
    - 60s timeout per command (with red "(timed out)" marker).
  · apps/desktop/src/screens/Chat.tsx
    - Split layout: REPL on left, optional Terminal on right (50/50
      when toggled). Top-right corner button toggles.
  · apps/desktop/package.json — added @xterm/xterm + addon-fit +
    addon-web-links.

Tests: 549 unchanged. Bundle 322KB → 660KB (xterm + addons add 340KB
gzipped to 178KB — about 90KB more than baseline).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@oratis oratis merged commit 806bc73 into main May 28, 2026
1 of 3 checks passed
@oratis oratis deleted the feat/desktop-terminal branch May 28, 2026 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant