Skip to content

Add 'Send to Terminal' button in VS Code extension#9

Merged
rwoll merged 3 commits into
mainfrom
add-send-to-terminal-button
Apr 17, 2026
Merged

Add 'Send to Terminal' button in VS Code extension#9
rwoll merged 3 commits into
mainfrom
add-send-to-terminal-button

Conversation

@rwoll

@rwoll rwoll commented Apr 17, 2026

Copy link
Copy Markdown
Owner

Summary

When using the Markdown Review extension in VS Code, users can now send feedback to the terminal in addition to VS Code Copilot chat. This is useful when running Copilot CLI or other terminal-based agents.

Changes

  • Core: Added onTerminal callback option and onTerminalCallback signal
  • Core (NotesPanel): Added terminal icon and "Send to Terminal" button in both the panel header and footer (visible only in vscode feedbackMode)
  • Core (styles): Added .panel-terminal and .panel-dl-terminal CSS classes
  • Extension: Wires up terminal-feedback message handling — writes feedback text directly to the active VS Code terminal via sendText
  • All modes: Clears annotations, general notes, and question answers after a successful send

Notes

  • Screenshot snapshot tests will need updating in CI (the new button slightly changes page height)

When in VS Code feedbackMode, the Notes panel now shows a 'Send to Terminal'
button alongside the existing 'Send to Copilot' button. Clicking it copies
the feedback markdown to the clipboard and reveals the active terminal.

Also clears annotations, general notes, and question answers after any
successful send (Copilot, terminal, post, or download).

Changes:
- core/state: add onTerminalCallback signal
- core/index: accept onTerminal option in PlanReviewOptions
- core/NotesPanel: add terminal icon, sendToTerminal fn, clearFeedback fn,
  and terminal buttons in header + footer
- core/styles: add .panel-terminal and .panel-dl-terminal CSS
- vscode/extension: wire terminal-feedback message, sendFeedbackToTerminal
  copies to clipboard and shows active terminal

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@rwoll

rwoll commented Apr 17, 2026

Copy link
Copy Markdown
Owner Author

@copilot - the tests are failing. please rebasline the snapshots (--update-snapshots) and commit.

Copilot AI commented Apr 17, 2026

Copy link
Copy Markdown
Contributor

@copilot - the tests are failing. please rebasline the snapshots (--update-snapshots) and commit.

Ran --update-snapshots and confirmed all 63 tests pass with the existing snapshots — no snapshot files changed. The snapshot tests only cover download feedbackMode (not vscode), so the new "Send to Terminal" button doesn't appear in any of the captured screenshots and the snapshots were already up to date.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • example.com
    • Triggering command: /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell --disable-field-trial-config --disable-REDACTED-networking --disable-REDACTED-timer-throttling --disable-REDACTEDing-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-REDACTED-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=AvoidUnnecessaryBeforeUnloadCheckSync,BoundaryEventDispatchTracksNodeRemoval,DestroyProfileOnBrowserClose,DialMediaRouteProvider,GlobalMediaControls,HttpsUpgrades,LensOverlay,MediaRouter,PaintHolding,ThirdPartyStoragePartitioning,Transl e/node_modules/.bin/sh (dns block)
    • Triggering command: /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell --disable-field-trial-config --disable-REDACTED-networking --disable-REDACTED-timer-throttling --disable-REDACTEDing-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-REDACTED-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=AvoidUnnecessaryBeforeUnloadCheckSync,BoundaryEventDispatchTracksNodeRemoval,DestroyProfileOnBrowserClose,DialMediaRouteProvider,GlobalMediaControls,HttpsUpgrades,LensOverlay,MediaRouter,PaintHolding,ThirdPartyStoragePartitioning,Transl it (dns block)
    • Triggering command: /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell /home/REDACTED/.cache/ms-playwright/chromium_headless_shell-1208/chrome-headless-shell-linux64/chrome-headless-shell --disable-field-trial-config --disable-REDACTED-networking --disable-REDACTED-timer-throttling --disable-REDACTEDing-occluded-windows --disable-back-forward-cache --disable-breakpad --disable-client-side-phishing-detection --disable-component-extensions-with-REDACTED-pages --disable-component-update --no-default-browser-check --disable-default-apps --disable-dev-shm-usage --disable-extensions --disable-features=AvoidUnnecessaryBeforeUnloadCheckSync,BoundaryEventDispatchTracksNodeRemoval,DestroyProfileOnBrowserClose,DialMediaRouteProvider,GlobalMediaControls,HttpsUpgrades,LensOverlay,MediaRouter,PaintHolding,ThirdPartyStoragePartitioning,Transl de/node/bin/sh (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@rwoll rwoll merged commit 280ad76 into main Apr 17, 2026
1 check passed
@rwoll rwoll deleted the add-send-to-terminal-button branch April 17, 2026 18:14
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.

2 participants