Repository navigation
Releases: terror/kotomori
Releases · terror/kotomori
Release list
0.4.1
Added
Misc
- Borrow request inputs until provider conversion (#334 by terror)
- Simplify
Transcriptsurface area (#333 by terror) - Remove unit tests covered by integration tests (#330 by terror)
- Port corrupt transcript test to integration (#329 by terror)
- Port database migration test to integration (#328 by terror)
- Port tool output preview test to integration (#326 by terror)
- Extract tool result predicate into
Messagehelper (#325 by terror) - Port transcript wrapping tests to integration (#324 by terror)
- Port approval escaping test to integration (#323 by terror)
- Port unknown tool error test to integration (#322 by terror)
- Simplify agent instruction loading (#321 by terror)
- Share directory formatting between production and tests (#319 by terror)
0.4.0
Added
- Add
forkcommand (#302 by terror) - Add
copycommand (#299 by terror) - Add
renamecommand (#296 by terror)
Fixed
- Recover pending tool calls when resuming sessions (#315 by terror)
- Handle bracketed paste as a single edit (#289 by terror)
- Preserve whitespace in submitted prompts (#288 by terror)
Misc
- Extract tool result predicate into
UserMessageContenthelper (#317 by terror) - Extract agent entry predicate into
TranscriptEntryhelper (#316 by terror) - Port tool entry spacing test to integration (#310 by terror)
- Port draft reasoning tests to integration (#311 by terror)
- Port failed tool rendering test to integration (#314 by terror)
- Port database schema error test to integration (#313 by terror)
- Port command screen tests to integration (#312 by terror)
- Port queued input rendering test to integration (#309 by terror)
- Port model argument tests to integration (#308 by terror)
- Port reasoning spacing test to integration (#304 by terror)
- Port error rendering tests to integration (#306 by terror)
- Port startup screen tests to integration (#305 by terror)
- Port empty reasoning test to integration (#303 by terror)
- Port reasoning content test to integration (#301 by terror)
- Wrap system prompt to 80 columns (#300 by terror)
- Port reasoning toggle test to integration (#298 by terror)
- Port approval interruption test to integration (#297 by terror)
- Extract composer history (#295 by terror)
- Port unknown command test to integration (#294 by terror)
- Port command submission variants to integration (#293 by terror)
- Port streaming clear test to integration (#292 by terror)
- Use
keyfor integration test input (#291 by terror) - Port streaming quit test to integration (#290 by terror)
- Port multiline input tests to integration (#287 by terror)
- Port immediate submission tests to integration (#286 by terror)
- Port queue interruption test to integration (#285 by terror)
- Port queue tests to integration (#284 by terror)
- Port interruption tests to integration (#283 by terror)
- Port command completion test to integration (#282 by terror)
- Port clear command tests to integration (#281 by terror)
- Port remaining prompt history tests to integration (#280 by terror)
- Simplify integration screen expectations (#279 by terror)
- Port prompt history tests to integration (#278 by terror)
- Port approval tests to integration (#277 by terror)
- Consolidate config override tests (#276 by terror)
- Simplify config loading and rename parsing test (#275 by terror)
0.3.1
Fixed
Misc
- Port missing config test to integration (#273 by terror)
- Port startup error tests to integration (#272 by terror)
- Port idle quit tests to integration (#271 by terror)
- Add declarative test input helpers and validation (#270 by terror)
- Remove redundant
ResumePickertest (#269 by terror) - Remove redundant
Statetest (#268 by terror) - Remove redundant
LineComponenttests (#267 by terror) - Remove redundant
TranscriptComponenttests (#266 by terror) - Remove redundant
Runtest (#265 by terror) - Remove redundant
Messagetest (#264 by terror) - Remove redundant
Settingstest (#263 by terror) - Remove redundant
Renderertests (#262 by terror) - Remove redundant
RenderPlantests (#261 by terror) - Remove redundant
WriteExttests (#260 by terror)
0.3.0
Added
- Collapse thinking traces by default (#242 by terror)
- Add support for markdown rendering (#237 by terror)
- Add support for queued steering (#201 by terror)
Fixed
- Complete interrupted tool calls during transcript finalization (#256 by terror)
- Keep resume picker controls and selection visible (#239 by terror)
- Kill command descendants on cancellation (#238 by terror)
- Preserve streamed provider metadata (#226 by terror)
- Escape terminal control characters (#208 by terror)
- Abort agent task on drop (#200 by terror)
- Validate tool rounds before emitting events (#199 by terror)
- Make
/quitinterrupt active runs (#198 by terror) - Preserve partial output on errors (#197 by terror)
Misc
- Simplify provider construction (#255 by terror)
- Inline
ToolResult::is_error(#254 by terror) - Separate tool definitions from execution (#253 by terror)
- Move transcript interpretation out of layout (#252 by terror)
- Extract
SessionComponentfromViewComponent(#251 by terror) - Borrow
Markdowncomponent text (#250 by terror) - Add component wrapper methods (#249 by terror)
- Centralize text layout in
LineComponent(#248 by terror) - Give parents ownership of component spacing (#247 by terror)
- Separate scrolling from resume picker layout (#246 by terror)
- Make
Statefieldspub(crate)and remove getters (#245 by terror) - Separate session persistence from state transitions (#244 by terror)
- Construct components with struct literals (#243 by terror)
- Remove
homedependency (#241 by terror) - Replace lexiclean with
PathExt(#240 by terror) - Centralize terminal layout in composable components (#236 by terror)
- Introduce session summaries (#235 by terror)
- Remove redundant provider message accumulator (#234 by terror)
- Unify command execution lifetime and deadline (#229 by terror)
- Consolidate session settings and construction (#228 by terror)
- Make
Statefields private (#227 by terror) - Use rusqlite checked integer conversions (#225 by terror)
- Let
Appown its event channel directly (#222 by terror) - Read mock provider user text directly (#221 by terror)
- Expose tool invocation titles by tense (#223 by terror)
- Centralize command execution error conversion (#216 by terror)
- Remove redundant intermediate representations (#215 by terror)
- Share provider construction (#214 by terror)
- Make approval requests single-use values (#213 by terror)
- Consolidate run lifecycle bookkeeping (#212 by terror)
- Make conversation history canonical (#211 by terror)
- Unify submission handling (#210 by terror)
- Inline
Stateevent handlers (#209 by terror) - Scaffold
kotomori-wasmcrate (#207 by terror) - Rename
promptsdirectory toetc(#206 by terror) - Remove broken WSL bash workaround (#205 by terror)
- Move system prompt to prompts directory (#203 by terror)
- Add queued steering integration test (#202 by terror)
- Sort derive attributes alphabetically (#196 by terror)
0.2.0
Added
Fixed
- Avoid leading transcript blank lines (#188 by terror)
- Keep unknown commands out of model context (#187 by terror)
- Fix clear racing active agent (#186 by terror)
Misc
- Move
assert_matchesinto crate root (#194 by terror) - Refactor tool invocation architecture (#193 by terror)
- Tag persisted tool calls (#192 by terror)
- Move output decoding into executor (#191 by terror)
- Collapse presented frame into frame (#190 by terror)
- Separate composer from command menu (#189 by terror)
- Move selection handling into composer (#183 by terror)
- Inline request construction (#182 by terror)
- Use
Defaultfor provider sink (#181 by terror) - Inline tool invocation helper (#180 by terror)
Changelog
0.1.1
Added
Fixed
- Run command tool through shell (#168)
- Fix stderr result semantics (#165)
- Limit agent tool loop (#164)
- Enforce tool approval in agent (#162)
- Isolate agent events by run identifier (#158)
Misc
- Update demo image in readme (#178)
- Add spacing before agent activity (#177)
- Add horizontal component padding (#176)
- Add spacing above footer (#175)
- Replace message rails with left gutter (#174)
- Standardize key labels (#173)
- Simplify approval choices (#172)
- Use semantic style roles (#171)
- Remove
ToolResultmessage helper (#170) - Remove
ToolResultconstructors (#169) - Centralize transcript spacing (#167)
- Extract resume picker component (#166)
- Remove tool invocation indirection (#163)
- Inject executor from agent (#161)
- Enforce consistent field ordering (#160)
- Add
assert_matchestest helper (#159) - Fix Japanese translation in readme (#157)
- Run integration tests on Windows (#153)
- Test resume picker cancellation (#152)
- Test resume with no saved sessions (#151)
- Test two-stage Ctrl-C behavior (#150)
- Test resume restores persisted model (#149)
- Test session tool and interruption round trips (#148)
- Test agent provider error recovery (#147)
- Add integration test step context (#145)
- Return errors for unexpected test exits (#144)
- Make mock provider instant by default (#143)
- Avoid graceful quit in integration tests (#142)
- Parallelize integration tests (#141)
- Refactor agent tests (#140)
- Consolidate event channel (#139)
- Factor out trailing blank line check (#138)
- Inline frame helper (#137)
- Move patch calculations into render plan (#136)
- Collapse row movement helpers (#135)
- Derive viewport state (#134)
- Simplify viewport initialization (#133)
- Inline full renderer (#132)
- Remove unreachable viewport catch-up (#131)
- Centralize full render viewport state (#130)
- Centralize logical row movement (#129)
- Simplify render planning (#128)
- Remove unused message component (#127)
- Consolidate line replacement (#126)
- Make
draw_frameown render transactions (#125) - Collapse
DiffintoChangedRange(#124) - Store only viewport top (#123)
- Simplify renderer cursor state (#122)
- Pass frames by ownership consistently (#121)
- Simplify cursor tracking (#120)
- Unify tail deletion with patch rendering (#119)
- Move concrete renderer impl before generic impl (#118)
- Move terminal ownership into renderer (#117)
- Collapse resize checks (#116)
- Simplify writable line iteration (#115)
- Remove redundant viewport arguments (#114)
- Remove redundant append condition (#113)
- Make line feed update cursor atomically (#112)
- Return early for unchanged frames (#111)
- Collapse
RenderPlannerintoRenderPlan(#110) - Remove previous viewport (#109)
- Remove max lines rendered state (#108)
- Simplify render plans (#107)
- Remove
PatchPlanenum (#106) - Profile time to first draw (#105)
0.1.0
Added
- Stream conversations with reasoning and tool calls in a responsive terminal interface
- Run shell commands with explicit approval for privileged operations
- Persist sessions and resume previous conversations
- Configure models from a broad range of hosted and local providers
- Load project instructions and working directory context automatically
- Render incremental updates efficiently with frame-based differential output