Skip to content

Terminal: graphics protocols (kitty / sixel / inline images) intentionally unsupported #372

Description

@Tryanks

Status (2026-09-20)

Remains unsupported by decision. Tcode's terminal drawer is Tcode's own terminal, not the agent's TUI; Principle 1 puts native harness capabilities first, and image protocols inside that drawer add nothing to what the agent can do. Revisit only on a concrete need. The technical shape of an implementation is preserved below.

Earlier status and implementation notes

Current status — terminal graphics remain unsupported

The host-authoritative terminal projection (TerminalFrame/TerminalDelta, no client-side emulator) does not render kitty, sixel or iTerm2 image protocols, including in-grid images from stored command output. This was a deliberate scope cut in PR #347.

Related image support already shipped

PR #406, merged as 1c90a907e056, fixes remote image viewing and improves image previews in conversation content:

  • Images stored on the machine running the thread are read from that machine, with relative paths resolved against the thread working folder.
  • Markdown images fit the available space and open in a larger viewer; image-file links offer a lazy-loaded preview action.
  • The image viewer supports keyboard navigation and focus restoration.

This provides a way to view image files from a remote thread, but does not decode or display image escape sequences inside the terminal grid. #406 did not add an image layer to the terminal projection.

Remaining scope

Revisit terminal graphics if a concrete need appears. Implementation would need host-owned decoded image storage, image placement/lifecycle data in the replicated terminal projection, and client rendering for live terminals and stored command output.

Checked against main at ce7c5fd0752b: TerminalFrame / TerminalDelta still have no image projection, and the documented limits explicitly retain this restriction. Keeping this issue open; the related conversation-image work is complete.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions