Pipe an API response into jid to explore its structure and find the exact path to a nested field using tab completion.
Use jid to interactively build a JMESPath query for filtering an array before piping the result to another tool.
Explore an unfamiliar JSON config or API payload in real time without reading documentation to learn its structure.
Extract a specific value from deeply nested JSON by typing a dot-path query and seeing the result update instantly.
jid stands for JSON Incremental Digger. It is a small command-line tool that lets you explore JSON data interactively without knowing the exact path you want ahead of time. You pipe JSON into it from another command or a file, and then you type a query while the matching portion of the data appears on screen in real time. When you find what you were looking for, you press Enter and the result is printed to your terminal. The tool supports two query styles. The first is a simple dot-path notation where you write things like .users[0].name to navigate into nested objects and arrays. The second is JMESPath, which is a more expressive query language that supports wildcards, filters, sorting, and function calls. jid detects which style you are using automatically based on what you type. Tab completion is a central feature. While you type a query, pressing Tab shows available field names at the current level and fills them in. You can cycle through candidates forward and backward. When using JMESPath functions, the tool shows usage hints and fills in argument templates for you. This makes it practical for exploring JSON structures you have never seen before. Installation is available through Homebrew on macOS, MacPorts, Scoop on Windows, pkg on FreeBSD, and a number of other package managers. You can also install directly with a single Go command or download a prebuilt binary from the releases page. A TOML configuration file lets you change keybindings, set a custom history file path, control how many past queries are remembered, and adjust whether pressing Enter exits the tool or just confirms a selection. The default behavior is to exit on Enter, but this can be turned off for users who find themselves accidentally closing the tool.
← simeji on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.