Fnord
Fnord is a command line tool the builds a searchable database of your files, using AI-generated embeddings to index and search your code base, notes, and other (non-binary) files.
Installation
# Elixir is required (obviously)
brew install elixir
# Install the script
mix escript.install github sysread/fnord
Use the same command to reinstall. It will offer to overwrite the existing installation.
Usage
Indexing
The first time you run this, especially on a large codebase, it will take a while to index everything. Subsequent runs will be faster, re-indexing only those files which have changed since they were last indexed.
fnord index --project foo --dir /path/to/foo
You can reindex the project, forcing it to reindex all files:
fnord index --project foo --dir /path/to/foo --reindex
Searching
fnord search --project foo --query "some search query"
If you want more detail about each file matched:
fnord search --project foo --query "some search query" --detail
Miscellaneous
- List projects:
fnord projects
- List files in a project:
fnord files --project foo
- Delete a project:
fnord delete --project foo
Note that deleting a project only deletes from the index, not the actual files.