1.2.0 — May 20, 2026
Multi-hop agent navigation. Asking the agent to log on, browse a dataset, switch to CICS, or log off now runs as a singlenavigate_to call that plans the route, validates each step, and recovers from unfamiliar screens on its own.
Agent navigation
- Single
navigate_tocall replaces 3–6 manual tool calls per layer change. - Plan-mode UI on every navigation card — see the planned hops and which one is running.
- Recovers to login, ISPF, SDSF, or CICS from any starting state, including unrecognised screens.
- CICS sign-in, CICS sign-off, and TSO/E re-login each compose end-to-end in one call.
Tool-card icons
- Read-only tools, key-press primitives, field writes, and navigation each get their own glyph in the chat panel. You can see at a glance whether a tool call had side effects.
1.1.6 — May 15, 2026
Bug fixes and improvements
- Fixed a misleading “Not Found” error under Host when the installed app’s chat-history database had been touched by a newer dev build.
1.1.5 — May 12, 2026
Bug fixes and improvements
- Added a Request credentials link in the Connect to Mainframe form, Edit Connection modal, and Settings → FTP so trial users can request mainframe access without leaving the app.
1.1.4 — May 11, 2026
Bug fixes and improvements
- Fixed the ”···” actions menu in Settings → API keys hiding behind the table.
- Removed the duplicate Check for updates row from Settings → Updates.
1.1.3 — May 11, 2026
Bug fixes and improvements
- Fixed a data-loss bug where ISPF Edit + SAVE wiped untouched characters on the edited row.
- Restored live token-streaming and auto-scroll in the chat panel.
- Investigating a failed job now uses one direct FTP fetch instead of driving SDSF — faster and immune to screen-settle timeouts.
- First-login ISPF “Licensed Materials” banner clears automatically.
- More reliable ISPF / SDSF navigation on TLS-wrapped TN3270 sessions.
- The Planning next moves… loader hides as soon as the assistant starts writing.
Diagnostics
- TN3270 wire-trace can be enabled with
HOPPER_TN3270_TRACE=HOST(orALL); output lands indev-logs/tnz.log.
1.1.2 — May 7, 2026
Bug fixes and improvements
- Quitting Hopper is ~5 seconds faster.
- Fixed title-bar icon alignment on macOS.
1.1.1 — May 7, 2026
Bug fixes and improvements
- Removed the stale
v1.0.0pill from the nav header. The current version stays visible in Help → About.
1.1.0 — May 7, 2026
In-app auto-update. A pill in the title bar surfaces new releases, walks you through the download, and offers a Restart to apply. No more native dialog boxes.Auto-update
- Update pill in the title bar (macOS) or top-right corner (Windows / Linux), with a popover for version diff and release notes.
- Settings → Updates section with current version, last-checked time, and an Update mode preference (Automatic / On startup only / Manual / Off).
- Session toast when an update is detected, suppressed for the first 5 days after a fresh install.
Settings
- Cmd+, (macOS) / File → Preferences… now opens the unified Settings surface instead of a raw-YAML editor. API keys, mainframe / FTP connection, privacy, and updates all live in one place.
- Update errors surface in Settings instead of as native dialogs.
Stability
- Single-instance lock — opening Hopper from the Dock or Spotlight focuses the existing window instead of spawning a duplicate.
- The Python sidecar is drained explicitly on quit and on Restart-to-update.