View Source API Reference fnord v0.4.25

Modules

AI

AI is a behavior module that defines the interface for interacting with OpenAI's API. It provides a common interface for the various OpenAI-powered operations used by the application.

This module provides an agent that answers questions by searching a database of information about the user's project. It uses a search tool to find matching files and their contents in order to generate a complete and concise answer for the user.

This module provides an agent that generates embeddings for text data.

This module provides an agent that summarizes files' contents in order to generate embeddings for the database and summaries for the user.

This module is used to split a string into chunks by the number of tokens, while accounting for other data that might be going with it to the API endpoint with the limited token count.

This module provides the functionality for the index sub-command.

This module provides the functionality for the search sub-command.

This module provides the functionality for the summary sub-command.

Fnord is a code search tool that uses OpenAI's embeddings API to index and search code files.

Git

Module for interacting with git.

A module that implements a process pool using a GenServer.

The Scanner module traverses a directory recursively, skipping hidden files and files that should be ignored based on a .gitignore file. It also skips binary files and files with a size of 0 bytes.

This module provides the functionality for storing and retrieving embeddings and metadata for files.

Tui

Please don't judge me on how convoluted this is. Owl is so mediocre and elixir's logger is so complicated to configure dynamically in newer versions that I had to bolt together this monstrosity and now I'm watching helplessly as it lurches down to the village to wreak havoc on the townsfolk.