v0.4.1 03674e0

2026-08-26

03674e0Merge pull request #6 from bnema/fix/kitty-icat-detection merge GPG Unverifiedtag v0.4.1bnema
a67301cfix(graphics): validate placement scrolling GPG Verifiedbrice
47ca903fix(graphics): address wrap-up review findings GPG Verifiedbrice
2519bf3test(graphics): cover chunked compressed image stream GPG Verifiedbrice
3fd4793fix(graphics): scroll placements with terminal rows GPG Verifiedbrice
3d6f103fix(graphics): advance cursor by image cell span GPG Verifiedbrice
b0cc038feat(graphics): decode zlib-compressed image data GPG Verifiedbrice
49ed8a6fix(query): accept Kitty primary attributes response GPG Verifiedbrice
16f5a24fix(vt): report modern primary device attributes GPG Verifiedbrice
6ace063fix(graphics): answer kitten icat transport probes GPG Verifiedbrice
0b9cfdaMerge pull request #5 from bnema/feat/kitty-image-protocol-support merge GPG Unverifiedtag v0.4.0bnema

2026-08-24

df3b2f3fix(graphics): harden harness image validation GPG Verifiedbrice
6ac336afeat(graphics): add headless snapshot harness GPG Verifiedbrice

2026-08-23

251cbdfrefactor(graphics): share rectangle arithmetic GPG Verifiedbrice
78f404dfix(graphics): address protocol review findings GPG Verifiedbrice
52577cdfix(graphics): correct Kitty placement semantics GPG Verifiedbrice
c929822fix(lint): address staticcheck findings GPG Verifiedbrice

2026-08-20

b4be9dbfix(graphics): close final review findings GPG Verifiedbrice
d7da5a2docs: describe Kitty graphics subset GPG Verifiedbrice
024b0eafeat(protocol): add bounded terminal capability probe parser GPG Verifiedbrice
0780e0dfix(graphics): close phase2 review findings GPG Verifiedbrice
28b9123fix(graphics): address kitty protocol review findings GPG Verifiedbrice
a67ed12feat(graphics): expose immutable screen snapshot capture GPG Verifiedbrice
35da577feat(vt): integrate kitty graphics state GPG Verifiedbrice
383f6acfeat(protocol): add strict kitty graphics adapter GPG Verifiedbrice
65370d5feat(graphics): add generic graphics scene GPG Verifiedbrice
b222670test(vt): cover pixel report truncation GPG Verifiedbrice
a044fe2feat(vt): add pixel geometry reports GPG Verifiedbrice
a667323test(perf): expand VT baseline coverage GPG Verifiedbrice

2026-08-18

52147d7Merge pull request #4 from bnema/feat/ansi-color-profiles merge GPG Unverifiedtag v0.3.0bnema
d75221dfeat(ansi): add constrained color profiles GPG Verifiedbrice
711511amerge(core): integrate v0.2.0 and v0.2.1 merge GPG Verifiedbrice

2026-08-14

d5196ebMerge pull request #2 from bnema/dependabot/github_actions/actions/checkout-7 merge GPG Unverifiedbnema
154afa0docs(license): adopt GPL-3.0 GPG Verifiedbrice

2026-08-09

7bd1a3cfix(core): re-export damage kinds from root GPG Verifiedtag v0.2.1brice
4859eb8refactor(core): align package name and add fuzz coverage GPG Verifiedtag v0.2.0brice
8d55ef4chore(deps): bump actions/checkout from 6 to 7 GPG Unverifieddependabot[bot]
af61ae3docs(vt): clarify core ownership GPG Verifiedtag v0.1.0brice
6db0cd7ci(vt): add standalone compatibility checks GPG Verifiedbrice
80c3c4afeat(vt): create standalone module GPG Verifiedbrice
2981612refactor(vt): isolate core model and ANSI package GPG Verifiedbrice

2026-08-08

e4fd2d1chore: gitignore worktrees GPG Verifiedbrice

2026-08-07

6707942Merge pull request #186 from bnema/feat/unified-remote-picker-ownership merge GPG Unverifiedbnema
08ce113test(daemon): wait for detached notifications GPG Verifiedbrice
56985fdfix(remote): address picker review findings GPG Verifiedbrice
17667bdfix(remote): fence remote picker transitions GPG Verifiedbrice
76c6a00fix(remote): close remote transition races GPG Verifiedbrice
1626715fix(remote): harden remote view lifecycle GPG Verifiedbrice
de8bb89fix(picker): refresh remote-owned picker views GPG Verifiedbrice
01fd03brefactor(session): rename lifecycle states GPG Verifiedbrice

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 2

Tags 13

↑↓ moveenter openesc close