Releases: gohyuhan/koshi
Releases · gohyuhan/koshi
Release list
v0.1.0
🚀 Features
- Feat: declare typed ids (#4)
- Feat: geometry primitives (#5)
- Feat: killPolicy + spawnSpec enums in core (#6)
- Feat: canonical command enum shells (#7)
- Feat: canonical event enum shells (#8)
- Feat: command envelope + source metadata (#9)
- Feat: RejectReason + command result DTOs (#10)
- Feat: domain error categories + severity (#11)
- Feat: redaction utility (#12)
- Feat: miette diagnostics helpers (#13)
- Feat: logging (#14)
- Feat: terminal cleanup guard skeleton (#15)
- Feat: action vocabulary stub in core (#16)
- Feat: session model shell (#21)
- Feat: tab model (#22)
- Feat: pane metadata model (#23)
- Feat: pane lifecycle state machine (#24)
- Feat: close/exit/empty-tab policy types (#25)
- Feat: client model (#26)
- Feat: focus recovery function (#27)
- Feat: shell-exit policy decision (#28)
- Feat: tab operations state layer (#29)
- Feat: session lifecycle states (#30)
- Feat: session/layout consistency validator (#31)
- Feat: PTY backend trait (#34)
- Feat: portable-pty adapter (#35)
- Feat: process group / job object spawn (#36)
- Feat: blocking reader/writer tasks (#38)
- Feat: shell bootstrap env (#39)
- Feat: pty resize-on-geometry hook (#40)
- Feat: reserve border space in layout solve min-size (#41)
- Feat: terminal state structs (#42)
- Feat: vte performer print/control (#43)
- Feat: cursor + erase operations (#44)
- Feat: sgr colors + styles (#46)
- Feat: save/restore, insert/delete, scroll regions (#47)
- Feat: alternate screen, cursor visibility, window title (#48)
- Feat: unicode-display-width-cells (#49)
- Feat: wide-char-clipping-metadata (#50)
- Feat: bounded scrollback (#51)
- Feat: bracketed-paste-mouse-modes (#53)
- Feat: osc7-cwd-reporting (#54)
- Feat: cursor-ops-erase-char (#55)
- Feat: dec-charset-line-drawing (#56)
- Feat: autowrap-dec-mode-hygiene (#57)
- Feat: sgr-attribute-completeness (#58)
- Feat: renderer-read-api-coverage (#60)
- Feat: runtime event inbox (#63)
- Feat: runtime state container (#64)
- Feat: command dispatcher skeleton (#66)
- Feat: command validation framework (#67)
- Feat: command transaction scope (#68)
- Feat: command dispatcher skeleton (#69)
- Feat: new pane pty integration (#70)
- Feat: new pane stacked variant (#71)
- Feat: close pane handler (#72)
- Feat: pane resize handler (#74)
- Feat: pane focus handler (#75)
- Feat: tab ops handler (#76)
- Feat: pane toggle fullscreen (#77)
- Feat: pane rename handler (#78)
- Feat: move tab handler (#79)
- Feat: rename session handler (#80)
- Feat: lock mode handler (#81)
- Feat: make changes to be compatible for future plugin ecosystem (#82)
- Feat: write to pane handler (#83)
- Feat: run command handler (#84)
- Feat: copy mode command routing (#85)
- Feat: render snapshot data transfer object (#86)
- Feat: tabline and pane border ui (#87)
- Feat: draw stack headers UI (#88)
- Feat: render terminal cell (#89)
- Feat: render cursor placement (#90)
- Feat: insufficient space overlay rendering (#91)
- Feat: render client viewport layout and letterbox (#92)
- Feat: invalidation driven render scheduling (#93)
- Feat: pty output to terminal grid (#94)
- Feat: device control replies (#95)
- Feat: child exit handling hook (#96)
- Feat: render snapshot builder (#97)
- Feat: wire for interactive binary to be able to run (#98)
- Feat: scrollback view offset and scrolling (#100)
- Feat: multi client attach detach (#101)
- Feat: graceful shutdown teardown (#103)
- Feat: cli root attach detach flags (#105)
- Feat: cli action (#106)
- Feat: cli discovery inspect command (#107)
- Feat: cli action list & explain supported action only (#108)
- Feat: cli central exit code mapping and package rename (#109)
- Feat: kdl parser (#110)
- Feat: config schema default (#111)
- Feat: config layer merge (#112)
- Feat: action registry (#113)
- Feat: action command resolve (#114)
- Feat: default keybinding (#117)
- Feat: multi chord sequence parser (#118)
- Feat: conflict keybinding detection (#119)
- Feat: keymap layer merge (#121)
- Feat: platform path resolver (#123)
- Feat: config reload transaction (#125)
- Feat: layout kdl parser (#126)
- Feat: key config handling and cli functionality (#128)
- Feat: key decoder and cursor style improvement (#130)
- Feat: pending koshi keybinding until sequence done (#131)
- Feat: keybindings action revamp (#132)
- Feat: fullscreen zoom revamp and key input only reach viewable pane (#133)
- Feat: decode mouse event (#134)
- Feat: mouse click and scrollable tab section (#135)
- Feat: mouse decoder and drag to resize pane (#137)
- Feat: visual mode for mouse and drop search related structure [we decide to not support it natively in koshi] (#138)
- Feat: each pane keeps its own highlisht and hold its view (#139)
- Feat: mouse drag and double click for text highlight (#140)
- Feat: mouse scrolling support for each pane (#142)
- Feat: support clipboard osc52 only [for simplicity] (#144)
- Feat: atomic file write (#145)
- Feat: shift drag highlight over mouse mode app (#146)
- Feat: mouse select mode to copy from mouse grabbing app (#147)
- Feat: add self update, instllation script and wire in config kdl parser (#149)
- Feat: wire in user facing configuration for it to take effect (#151)
- Feat: koshi logging improvement (#153)
- Feat: new config to scroll to bottom on input (#154)
- Feat: koshi theme and status bar revamp and improvement (#156)
- Feat: koshi logging wiring (#159)
- Feat: koshi daemon (#160)
- Feat: socket request and messages (#161)
- Feat: local socket transport (#162)
- Feat: socket location checks and stale socket cleanup (#163)
- Feat: ipc socket hello check version and token (#164)
- Feat: ipc session token and endpoint file (#165)
- Feat: panes get koshi env vars (#166)
- Feat: cli pane env detection (#167)
- Feat: koshi cli command check before execution (#168)
- Feat: allow cli command to reach running session (#169)
- Feat: lock and focus pick the right window for the command (#170)
- Feat: trigger koshi cli command from external (#171)
- Feat: list and inspect koshi from shell (#172)
- Feat: remove rename functionality and new pane spawn in cwd (#173)
- Feat: new cli command to kill session (#174)
- Feat: config migrations feature and config related cli command (#176)
♻️ Optimization
- Opt: repo wide code simplification (#120)
- Opt: split command resolvers and group dec modes (#141)
- Opt: better file name handling (#152)
- Opt: koshi default keybinding revamp (#157)
- Opt: koshi theme config revamp (#158)
🐛 Bug Fixes
- Fix: add in more event and update test
Others
- Init
- Other: setup repo workspace
- Other: standard crate module skeletons (#3)
- Layout (#20)
- License: add MIT license
- Other: claude repo reaudit (#33)
- Other: config files changes (#52)
- Other: tile-terminal files folder reorganize (#65)
- Feat close pane survivor reflow (#73)
- Other: rename from tile -> koshi (#102)
- Other: code simplify (#104)
- Feat single chord key parser (#115)
- Mode keybinding hint bar and keybinding wiring (#122)
- Renderer theme palette wiring and logging config improvement (#124)
- Other: code restructure and docs update (#148)
- Other: update README
- Other: update koshi logo
- Other: update README