This change adds custom Tab key handling on top of the existing rustyline completer to track consecutive Tab presses and surface multiple matches more like a real shell. Single matches still complete directly, while ambiguous input now beeps on the first Tab and prints the available built-in commands and executable names from PATH on the second. The result is a much more usable interactive experience when discovering or disambiguating commands.

Implemented double-Tab completion so the shell can list matching built-ins and executables from PATH when a single completion isn’t enough. - zhengqunkoo/codecrafters-shell-rust