Skip to content

feat(web): run shell code blocks in terminal - #97

Merged
incognitojam merged 1 commit into
mainfrom
t3code/add-run-command-button
Aug 12, 2026
Merged

incognitojam merged 1 commit into
mainfrom
t3code/add-run-command-button

Conversation

@incognitojam

@incognitojam incognitojam commented Aug 12, 2026 •

Copy link
Copy Markdown
Owner

Agent replies can contain ready-to-run shell commands, but fenced code blocks only exposed line-wrap and copy actions. Running one meant copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in completed assistant replies. It uses the existing project-script terminal launcher, so commands run in the correct workspace, reuse an idle terminal, and get a new terminal when the current one has a running process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing documentation.

Screenshots

Before:

Shell code block before the run action

After:

Shell code block with the Run in terminal action

Verification

  • 18 focused web tests
  • Web typecheck
  • Targeted lint and formatting checks
  • Integrated web-client fixture confirming the action is visible and enabled on a completed sh fence

Written by an agent (T3 Code, gpt-5.6-sol).

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Aug 12, 2026
@incognitojam
incognitojam force-pushed the t3code/add-run-command-button branch from 3b23281 to bacb611 Compare August 12, 2026 11:58
@github-actions github-actions Bot added size:M and removed size:L labels Aug 12, 2026
@incognitojam
incognitojam force-pushed the t3code/add-run-command-button branch from bacb611 to 7663781 Compare August 12, 2026 12:00
@incognitojam
incognitojam enabled auto-merge (squash) August 12, 2026 12:01
@incognitojam
incognitojam merged commit 04fd642 into main Aug 12, 2026
11 checks passed
@incognitojam
incognitojam deleted the t3code/add-run-command-button branch August 12, 2026 12:05
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 12, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 12, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 13, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 13, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 13, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 13, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 14, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

## Screenshots

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

## Verification

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
incognitojam added a commit that referenced this pull request Aug 15, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 18, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 18, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 18, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
incognitojam added a commit that referenced this pull request Aug 19, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 20, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
yngatech-nightly Bot pushed a commit that referenced this pull request Aug 21, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
incognitojam added a commit that referenced this pull request Aug 27, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
incognitojam added a commit that referenced this pull request Aug 28, 2026
Agent replies can contain ready-to-run shell commands, but fenced code
blocks only exposed line-wrap and copy actions. Running one meant
copying it, opening a terminal, and pasting it manually.

This adds a Run in terminal action for recognized shell fences in
completed assistant replies. It uses the existing project-script
terminal launcher, so commands run in the correct workspace, reuse an
idle terminal, and get a new terminal when the current one has a running
process. Source-code and streaming fences stay copy-only.

The change includes focused rendering coverage and user-facing
documentation.

Before:

![Shell code block before the run
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-before.png)

After:

![Shell code block with the Run in terminal
action](https://raw.githubusercontent.com/yngatech/t3code/7663781bf1a660ac11f49ca53b8b84f16d1f05ee/docs/user/images/run-command-code-block-after.png)

- 18 focused web tests
- Web typecheck
- Targeted lint and formatting checks
- Integrated web-client fixture confirming the action is visible and
enabled on a completed sh fence

---
Written by an agent (T3 Code, gpt-5.6-sol).
incognitojam pushed a commit that referenced this pull request Oct 6, 2026
…otgg#13060)

Co-authored-by: Julius Marminge <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
(cherry picked from commit 66129c6)

Fork adaptation: Replaces the fork's own Run in terminal action (fork #97) with this one rather than keeping both. The fork's version also offered bat, cmd, nu, ps1 and shellscript fences and showed the action on an unclosed fence; neither had a recorded reason. Its run-shell-code-blocks ledger entry, MessagesTimeline test and terminal icon go with it, and the terminal guide's screenshot shows the new play icon.

Upstream-PR: 13060
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant