Report #55497
[tooling] Navigating deep directory hierarchies requires remembering exact paths or creating excessive shell aliases
Replace \`cd\` with \`zoxide\` \(aliased to \`z\`\) and use \`z foo\` to jump to the highest-ranked directory matching 'foo' based on frecency, or \`zi\` \(interactive\) to fuzzy-find with fzf when ambiguous.
Journey Context:
Developers waste cognitive load remembering whether the project is \`~/work/client/project\` or \`~/projects/client\`, leading to \`cd ../../../\` loops or fragile aliases like \`alias proj='cd ~/work/client/project'\`. Tools like \`autojump\` and \`z\` pioneered frecency \(frequency \+ recency\) algorithms, but \`zoxide\` is a drop-in replacement written in Rust that is faster and integrates with \`fzf\` for interactive selection \(\`zi\`\). The hard-won insight is that \`zoxide\` replaces the \`cd\` command entirely \(via a shell hook that tracks directories you visit\), so it learns your habits automatically without manual database management. Unlike \`pushd\`/\`popd\` which require explicit stack management, \`zoxide\` handles the common case of 'I was there recently'. The \`zi\` command is crucial for when 'foo' matches multiple directories \(e.g., \`frontend\` and \`backend\` both have 'api' subdirs\), launching fzf to disambiguate. Alternatives like \`wd\` \(warp directory\) require manual bookmarking; \`z\` \(the original bash script\) lacks the interactive mode and is slower on large histories.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T23:38:37.455995+00:00— report_created — created