Commit Graph
998 Commits
Author SHA1 Message Date
GabrielandCan Celik 4eceb75d8a fix: kitty graphics streams freeze on partial updates and leak host images (#948)
* fix: request a render on kitty graphics writes

pty output containing a kitty graphics sequence only scheduled the
deferred settle render. that render's wake-up notifies the render loop
only when the dirty flag was not already set, so under a continuous
stream of image updates the notify can be dropped and the pane keeps
showing an old frame until something else forces a full render.

request an immediate render like any other output. the dirty flag and
the minimum render interval still coalesce chunked writes, and the
settle render stays as a backstop.

refs #947

* fix: fingerprint kitty images exactly across retransmissions

the image fingerprint hashed only the first, middle, and last 4096
bytes of pixel data. a program that streams updates by retransmitting
one image id keeps the length and dimensions constant, so a frame whose
changed pixels all fall outside those three windows gets the same
fingerprint as the frame before it. the encoder then treats the image
as already uploaded, emits no graphics bytes, and the frame is dropped
as identical to the previous render. the pane stays stuck on the last
uploaded image until a resize resets the graphics surface.

hash the full payload instead. to keep that off the render hot path,
cache the fingerprint per image id and recompute it only when the
image's transmit time changes. libghostty-vt already refreshes the
transmit time on every transmission; vendor patch 0002 exposes it
through a new GHOSTTY_KITTY_IMAGE_DATA_TRANSMIT_TIME_NS accessor. a
static image costs one map lookup per render and a streaming image one
hash per transmitted frame.

refs #947

* fix: delete superseded host kitty images

host image ids derive from image content, so a pane image whose pixels
change maps to a new host id on every update. nothing deleted the host
image it replaced, and a streaming pane left one full-size image behind
in the host terminal per changed frame until the graphics surface was
reset. track which host image backs each pane image and delete the
replaced one once no source references it.

refs #947

* fix: prune stale kitty graphics source entries

a source entry whose pane closed or whose placement disappeared stayed
in the cache forever. through the shared-reference check it could keep
an old host image alive that nothing visible used anymore, and the
entries themselves accumulated without bound. prune sources against
the visible set at the start of every encode pass.

refs #947

* docs: link issue and upstream discussion for vendor patch 0002

the transmit time accessor now has a removal path: the ghostty
discussion proposing it upstream is linked in the patch ledger.

refs #947

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-04 02:49:15 +03:00
Ogulcan Celik 5abdae1ac7 fix: restore windows recent pane reads
refs #962
2026-07-04 02:15:23 +03:00
kangal-bot 96c485653b chore: approve contributor arunoruto 2026-07-03 22:43:51 +00:00
Ogulcan Celik b91b084dbe docs: add mastracode integration docs and website agent grid card
refs #337
2026-07-04 01:42:12 +03:00
d0e333451b feat: add mastracode integration (#788)
* feat: add mastracode integration

refs #337

Co-authored-by: Mastra Code (openai/gpt-5.5) <noreply@mastra.ai>
Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-07-04 01:29:42 +03:00
Dillon Mulroy d5521e3d25 fix: preserve pi and omp working status across reloads (#984) 2026-07-03 22:47:31 +03:00
Ogulcan Celik 6f148588dd fix: scope empty image paste bridge to remote
refs #986
2026-07-03 22:19:47 +03:00
Ogulcan Celik 6ea68f9af2 fix: forward page keys to primary-screen pagers
refs #953
2026-07-03 21:50:34 +03:00
Ogulcan Celik 045f506ec8 fix: keep windows wait connections open
refs #963
2026-07-03 20:38:05 +03:00
Ogulcan Celik ef67a97047 perf(linux): cache foreground process group scans
refs #936
2026-07-03 04:02:45 +03:00
Ogulcan Celik aa0768b734 fix: stop sgr mouse sequences leaking into panes
refs #939
2026-07-03 02:49:27 +03:00
Ogulcan Celik e1bbc252e2 feat: paginate plugins page with show more button 2026-07-02 22:26:53 +03:00
Ogulcan Celik 974a48172d fix: leave context menu after closing tab
refs #945
2026-07-02 22:08:13 +03:00
Ogulcan Celik d1471e6483 fix: draw host cursor on windows
refs #930
2026-07-02 21:59:06 +03:00
Ogulcan Celik 848554517a fix: keep copy feedback above retained pane updates
refs #555
2026-07-02 21:54:05 +03:00
Ogulcan Celik 32146f19d8 fix: allow windows arm64 installer fallback
refs #897
2026-07-02 20:44:20 +03:00
Ogulcan Celik 74a771d126 fix: replace stale agent session from foreground reports
refs #943
2026-07-02 17:21:10 +03:00
Ogulcan Celik f4d216b63d fix: preserve windows backspace input
refs #907

refs #920
2026-07-02 16:22:11 +03:00
Ogulcan Celik 885dbcd19e docs: add trendshift badge 2026-07-02 14:46:07 +03:00
Ogulcan Celik cf3769feb9 feat: follow focused pane cwd for new workspaces
refs #919
2026-07-02 13:58:26 +03:00
Ogulcan Celik 2c422e60f1 feat: inject powershell prompt shell integration for cwd reporting on windows
refs #919
2026-07-02 13:58:25 +03:00
Ogulcan Celik 48d58648ae fix: follow cached cwd for new tabs
refs #912
2026-07-02 02:20:40 +03:00
Ogulcan Celik a9111cbab2 fix: open scrollback editor on windows without sh
refs #914
2026-07-02 01:16:21 +03:00
Ogulcan Celik 6a5b431e39 docs: clarify agent instruction scope 2026-07-02 00:18:10 +03:00
kangal-bot 659c3f51ec docs: update preview manifest 2026-06-30 18:15:32 +00:00
Ogulcan Celik 3459798b60 fix: extend local server startup wait preview-2026-06-30-3459798b606d 2026-06-30 20:47:28 +03:00
Ogulcan Celik 0bab01573a refactor: route headless workspace tab mutations through runtime dispatch 2026-06-30 20:29:57 +03:00
Ogulcan Celik 9a91a2ac41 refactor: route tui mutations through runtime dispatch 2026-06-30 19:57:02 +03:00
Ogulcan Celik 26db26e416 fix: keep remote sessions alive across disconnects 2026-06-30 19:49:55 +03:00
Ogulcan Celik c71c6c1082 fix: resolve split current from caller pane
refs #902
2026-06-30 19:38:03 +03:00
kangal-bot 2548acea15 chore: approve merged contributor soar 2026-06-30 14:58:53 +00:00
Aleksey @soar Smyrnov be901fead2 fix: opencode — report subagent permission prompts as blocked + handle session.status object form (#838)
refs #838
2026-06-30 17:58:40 +03:00
Ogulcan Celik 13cb5d9ae6 feat: add shell completions
refs #435
2026-06-30 17:49:37 +03:00
Ogulcan Celik b7015f17a4 fix: render ansi undercurl styles
refs #895
2026-06-30 15:55:13 +03:00
Ogulcan Celik e9bcea9c0d fix: reuse remote ssh connection
refs #888
2026-06-30 14:21:11 +03:00
Ogulcan Celik 2a1a8d64de feat: hide single-tab tab row
refs #448
2026-06-30 14:10:12 +03:00
Ogulcan Celik f54d8e8c0a feat: add hidden collapsed sidebar mode
refs #842
2026-06-30 04:00:33 +03:00
Ogulcan Celik 5e2dc40691 fix: add copy mode ctrl page navigation
refs #885
2026-06-30 02:58:41 +03:00
Ogulcan Celik 0fa6440d41 feat: add terminal session control stream 2026-06-30 02:48:02 +03:00
Ogulcan Celik f3da280ccc fix: preserve windows win32 bracketed paste
refs #670
2026-06-30 02:17:20 +03:00
Ogulcan Celik 3cd2e7b6b7 fix: discover package-managed remote herdr installs
refs #840
2026-06-30 01:35:15 +03:00
Ogulcan Celik bffc4a82c8 feat: add terminal session observe stream 2026-06-30 01:10:28 +03:00
Ogulcan Celik 86857c903c ci: accept non-empty issue update channels 2026-06-30 01:04:12 +03:00
Ogulcan Celik c5c307597f fix: recover omp resume and blocked states
refs #879
2026-06-30 00:35:53 +03:00
Ogulcan Celik 8b1d77acf6 fix: keep powershell panes alive after agent ctrl-c
refs #860
2026-06-30 00:19:36 +03:00
Ogulcan Celik 1db9695eec fix: include api schema in nix source 2026-06-29 23:32:24 +03:00
Ogulcan Celik 6703413fc7 feat: expose api schema from cli 2026-06-29 22:58:34 +03:00
Ogulcan Celik 09bac7f274 docs: add skills cli install guidance 2026-06-29 22:49:03 +03:00
Ogulcan Celik 25aeaa46f6 feat: generate socket protocol schema 2026-06-29 22:27:19 +03:00
Ogulcan Celik 9150ed6268 feat: add session snapshot api 2026-06-29 21:36:48 +03:00