Skip to content
/ dokosa Public

A command-line semantic search tool that indexes and searches local Git repositories using vector embeddings

License

Notifications You must be signed in to change notification settings

sile/dokosa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dokosa

dokosa Actions Status License

A command-line semantic search tool that indexes and searches local Git repositories using vector embeddings.

"dokosa" (どこさ?) is Japanese for "where is it?".

Features

  • Semantic indexing: Uses OpenAI embeddings to create searchable vector representations of code
  • Git integration: Automatically tracks repository commits and file changes
  • Flexible filtering: Include/exclude files using glob patterns
  • Chunked processing: Splits large files into overlapping chunks for better search granularity
  • Similarity search: Find code snippets based on semantic meaning, not just keyword matching

Installation

$ cargo install dokosa

Quick Start

# Set your OpenAI API key
$ export OPENAI_API_KEY="your-api-key-here"

# Set the index file path
$ export DOKOSA_INDEX_FILE="$HOME/.dokosa"

# Add a repository to the index
$ dokosa add /path/to/your/repo

# Search for code semantically
$ echo "function to parse JSON" | dokosa search

# Sync repositories with latest commits
$ dokosa sync

Commands

  • add - Index a Git repository for semantic search
  • search - Find semantically similar code chunks
  • list - Show all indexed repositories
  • sync - Update repositories with latest changes
  • remove - Remove a repository from the index

Run dokosa <command> --help for detailed options.

About

A command-line semantic search tool that indexes and searches local Git repositories using vector embeddings

Topics

Resources

License

Stars

Watchers

Forks

Languages