Resolv locates any command's executable across your entire PATH in milliseconds. Stop guessing which binary gets invoked. Start knowing.
From single-binary lookups to full multi-path traversal with alias awareness. Resolv gives you complete control over command resolution.
Pass any command name and receive the full executable path in sub-millisecond time. The same algorithm your shell uses β now as a first-class product.
resolv node β /usr/local/bin/node
The -a flag scans every directory in PATH and surfaces all matching executables, not
just the first. See your entire resolution landscape.
resolv -a python3
Pipe alias definitions via --read-alias and Resolv identifies which of your aliases
match. Debug alias collisions before they cause incidents.
alias | resolv --read-alias git
Shell functions can shadow binaries. Use --read-functions to feed function
definitions and get complete resolution context.
declare -f | resolv --read-functions
Eliminate untrusted dot-prefixed directories with --skip-dot. Harden your resolution
pipeline against path injection attacks.
resolv --skip-dot npm
The --show-tilde flag replaces HOME directory paths with ~ for clean,
portable output. Because readability compounds.
resolv --show-tilde cargo β ~/bin/cargo
Use --skip-tilde to exclude HOME-relative directories and user-space executables.
Enterprise-grade binary isolation for production environments.
resolv --skip-tilde node
Combine --skip-alias and --skip-functions to bypass all shell
abstractions and resolve strictly to filesystem executables.
resolv --skip-alias --skip-functions ls
Watch Resolv traverse each directory in your PATH, checking for the executable in real time. Full transparency into the resolution pipeline.
Our waterfall view shows how Resolv evaluates each PATH entry in order, so you can debug resolution conflicts at a glance.
$ resolv -a python3
Standard resolution stops at the first match. Resolv's -a flag reveals every instance of
a command hiding across your PATH β critical for debugging version conflicts.
-a (all matches)Pass any command name to Resolv. Our intake engine parses arguments, flags, and options with zero ambiguity.
Resolv walks every directory listed in your $PATH environment variable, in order, using the same algorithm as bash β no approximations.
Each directory is checked for an executable matching your query. With -a, every
match is collected. No directory is skipped unless you say so.
The complete, absolute filesystem path is returned to stdout. Exit code 0 on success, non-zero on failure. Deterministic. Reliable. Done.
Type a command below to see instant resolution in action.
From solo developers to enterprise fleets. Every plan includes our core PATH traversal engine.
For hobby developers who need basic resolution.
-a)For developers who need full resolution intelligence.
-a--read-alias)--show-tilde normalization--show-dot formattingShared resolution policies and audit trails for teams.
--skip-dot enforcement--skip-tilde guardrailsDedicated resolution infrastructure for mission-critical workloads.
--tty-only enforcement"We had three different versions of node across our PATH and didn't even know. Resolv's
-a flag literally saved our production deploy. This is 10x tooling."
"I was debugging a PATH issue for two hours before I found Resolv. The PATH Explorer showed me the conflict in seconds. Every developer needs this in their stack."
"The --skip-dot feature alone justified our Team plan. We enforce it across all CI
runners now. Zero path injection incidents since."
"Resolv is the kind of high-leverage tool that compounds. We integrated it into our onboarding β every new hire gets resolution clarity from day one. Absolute game-changer."
Resolv takes a command name and returns the full filesystem path of the executable that would be invoked. It searches every directory in your $PATH environment variable, in order, using the same algorithm as your shell. Think of it as complete transparency into command resolution.
By default, Resolv returns the first matching executable found in PATH order β exactly what your
shell would run. The -a flag continues searching through every PATH directory and
returns all matches, revealing shadow binaries and version conflicts.
Yes. With --read-alias, you can pipe your alias definitions and Resolv will factor
them into resolution. Similarly, --read-functions handles shell functions. Use
--skip-alias and --skip-functions to bypass them when needed.
Absolutely. Features like --skip-dot and --skip-tilde eliminate
untrusted PATH entries. Our Team and Enterprise plans add audit logging and policy enforcement
on top. SOC 2 compliance is in progress.
Resolv returns a non-zero exit code equal to the number of failed lookups. When no matching executable exists in any PATH directory, you get a clear, deterministic failure signal β no ambiguity.
Join thousands of developers who've stopped guessing and started knowing. Free tier available β no credit card required.