explaingit

aasixh/devgrep

27GoAudience · developerComplexity · 2/5Setup · easy

TLDR

devgrep is a command-line tool that indexes your shell history, log files, and markdown notes into a local database so you can search them instantly from the terminal without anything leaving your machine.

Mindmap

mindmap
  root((devgrep))
    What it does
      Index shell history
      Index log files
      Index markdown notes
    Search Modes
      Interactive TUI
      Plain text output
    Features
      Vim key shortcuts
      Watch mode
      Doctor command
      Local only
    Tech Stack
      Go
      Pluggable indexers
    Audience
      Developers
      DevOps engineers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Search your full shell history by keyword using a local index, even after the history has rolled over or been cleared.

USE CASE 2

Find past debugging commands and log entries from the terminal using an interactive full-screen interface with vim-style shortcuts.

USE CASE 3

Run devgrep in watch mode to keep the search index updated automatically whenever your shell history or log files change.

USE CASE 4

Add devgrep to your workflow as a pipe-friendly search tool that outputs plain text results for use with other terminal commands.

Tech stack

Go

Getting it running

Difficulty · easy Time to first run · 5min
No license information is mentioned in the explanation.

In plain English

devgrep is a command-line search tool for developers that lets you find past shell commands, log file entries, and markdown notes without leaving the terminal. The core problem it addresses is that useful commands and debugging steps disappear from shell history over time, buried under newer entries or lost when log files rotate. devgrep builds a local search index so those breadcrumbs stay retrievable. When you run it, devgrep reads your shell history (both Bash and Zsh), any log files in directories you point it at, and markdown note files, then stores everything in a local database on your machine. Nothing is sent anywhere: there is no cloud sync, no account, and no analytics. Searching that index can be done from a full-screen interactive interface in the terminal or as plain text output suitable for piping into other tools. The interactive view uses vim-style keyboard shortcuts: move through results with j and k, jump to a history entry and re-run it with Enter, or copy it with y. Search results show the original command or log line, how long ago it was used, and the directory it came from. Log and note results include nearby context lines if the source file still exists on disk. Indexing can run once or in a continuous watch mode that updates the database when files change. You can preview what would be indexed before committing, and the tool includes a doctor command that reports on the health of the local setup. Installation is a single Go install command or a shell script that downloads a pre-built binary for Linux, macOS, or Windows. The project is written in Go and is organized around a pluggable indexer interface, meaning new data sources can be added without changing the existing command structure.

Copy-paste prompts

Prompt 1
Install devgrep and set it up to index my Bash history and the log files in /var/log. Show me the exact commands and config to get started.
Prompt 2
How do I use devgrep's interactive TUI to find a Docker run command I used two weeks ago and re-execute it directly?
Prompt 3
I want devgrep to index my Obsidian markdown notes folder at ~/Documents/notes. How do I point devgrep at a custom directory?
Prompt 4
Walk me through adding a new custom indexer to devgrep in Go so it can pull commands from a tmux scrollback buffer.
Open on GitHub → Explain another repo

← aasixh on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.