Skip to content

v0.2.0

Choose a tag to compare

@pi0 pi0 released this 27 May 12:28
· 2 commits to main since this release

Overview

This release adds stream inspection and lifecycle ergonomics on top of v0.1.6:

  • OSC decoder + Inspector API — attach a decoder to any PTY to parse OSC escape sequences and track live terminal state (title, CWD via OSC 7, hyperlinks, etc.) without consuming the data stream.
  • IdleDetector (renamed from ActivityDetector) — fires when the PTY output goes quiet, useful for AI agents waiting on interactive programs to settle.
  • using / await using support — IPty is now AsyncDisposable (await using pty = spawn(...) closes the PTY and awaits exit), and Terminal is Disposable for synchronous cleanup.
  • Zig 0.16 migration — Zig sources updated to the 0.16 toolchain.
  • Fix: pty.exited now resolves correctly when the PTY is the only async work in flight (exit tsfn was being unref'd too early, letting Node shut down before the callback fired).

compare changes

🚀 Enhancements

  • Support attaching inspectors and osc decoder (#6)
  • osc: Track terminal state on OSCInspector (f1bfce4)
  • Activity detector (a9db5f7)
  • Support using/await using for Terminal and spawn (dc981ad)

🩹 Fixes

  • pty: Keep exit tsfn ref'd so pty.exited resolves when idle (#4)

💅 Refactors

🏡 Chore

❤️ Contributors