Fixed
Install-breaking issues (v0.1.0 could not be used from a clean npm install)
@deepseek-ai/dsh-agent,dsh-llm, anddsh-sessionare imported for values at runtime but were declared only asdevDependencies, so importing the package threwERR_MODULE_NOT_FOUND. They are now real dependencies.- The
@deepseek-ai/dsh-*pins mixed the0.0.1-rc.xand0.1.0-rc.xgenerations, which cannot satisfydsh-agent's peer requirements. All harness packages are aligned on^0.1.0-rc.6. - The invariant companion registered under the upstream vendor's name (
@deepseek-ai/dsh-tui-app) instead of@nexlineai/dsh-tui. - The
exportsmap declared./src/*, which is not published.
Rendering
- Tool results are correlated by
callId, so parallel tool calls no longer settle the wrong card while the real one spins forever. - Tool-card bottom borders are measured from the status text rather than a hardcoded width —
✖ errorand⠋ runningcards were 1 and 3 cells too wide. - Text is measured in terminal cells rather than code units, so CJK and emoji no longer break box alignment or wrapping.
- Overlong single words (long paths, URLs) are hard-broken instead of overflowing the pane.
- The on-screen log is capped at 2000 entries; long sessions no longer degrade the render loop.
Added
- CI on Node 20/22/24 with a packaging smoke test that installs the built tarball into a clean project and imports every entry point.
CONTRIBUTING.md,SECURITY.md, and issue templates.repository,bugs,homepage,author, andenginesmetadata.- Test suite expanded from 13 to 30 tests.
Full changelog: https://github.com/nexlineai/dsh-tui/blob/main/CHANGELOG.md