Skip to content

v0.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 24 Jul 13:56
v0.1.0
9554f10

🚀 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