›wib

CHANGELOG

What changed, version by version

New features and fixes in each release of wib, newest first. To upgrade, run brew upgrade wib or download the new binary from Install.

Unreleased

on master

Install and upgrade with Homebrew.

Added

  • A Homebrew tap: brew install duylongpro99/tap/wib, then brew upgrade wib for each new version. The release workflow updates the formula on every tag.
  • Upgrade steps in the README and on the landing page.

v0.2.0

Fix a typo, reuse a template, keep secrets out.

Added

  • Secret guard. Commands holding a token, a password flag, an Authorization: header or user:pass@ in a URL are never saved or suggested. The shell that ran one is told once. Set WIB_SECRET_GUARD=0 to turn it off.
  • wib audit [--fix] lists secrets already in your history with the values masked, and --fix removes them from wib's own files. It never edits ~/.zsh_history.
  • Templates with Ctrl-]. Jump between the parts of a command that changed across earlier runs, like a port or an image tag, and type to replace them.
  • Did you mean? After "command not found", the next prompt offers the command with the program name corrected (gti push becomes git push).
  • wib unforget brings back a command hidden with wib forget.
  • wib doctor checks your zsh version, key bindings, plugin load order and data folder, and says how to fix what's wrong.

Security

  • Commands reach wib on stdin or through the environment, never in argv.
  • The log is never written through a symlink.
  • Control characters in text output are shown instead of being sent to the terminal.
  • The release workflow uses a least-privilege token and SHA-pinned actions, and the install steps verify the checksum before unpacking.

Site

  • The landing page was redrawn in a paper-and-pencil style, with a live terminal you can type in.

v0.1.0

The first release: your zsh history, under the prompt, as you type.

Added

  • Suggestions under the prompt. Prefix matches first, then fuzzy matching on word starts (dcup finds docker compose up). Duplicates collapse to one line, ranked by how often and how recently you ran them. Your existing ~/.zsh_history works from day one.
  • Keyword search. wib pull,master lists commands that contain every keyword, in any order. At the prompt, a line starting with wib switches the list to keyword search.
  • Project-aware ranking. Among equal matches, commands you ran in the current git project come first, and commands that never succeeded sink below ones that did.
  • wib forget <command> removes a command from every suggestion.
  • Prebuilt binaries for macOS (arm64, x86_64) and Linux (x86_64, arm64), with sha256 checksums.

Performance

  • Query cost is bounded by WIB_PERIOD instead of history size: p95 on 500k commands over 7 years dropped from 40.8 ms to 6.2 ms.