FoxhoundReferenceConfiguration

Configuration

Foxhound is configured via config.yaml (copy from config.example.yaml). The config file is gitignored to protect local paths and API keys.

Setup

cp config.example.yaml config.yaml

Source Configuration

Email Sources

deduplication:
  source_paths:
    - "~/path/to/exported-emails"
    - "~/another/email-folder"

Other Sources

ingestion:
  sources:
    - type: diary
      path: "~/path/to/diary"
      entry_separator: "## "
    - type: meeting_note
      path: "~/path/to/meeting-notes"
    - type: document
      path: "~/path/to/documents"

Source Types

Typetype valueFormats
Email(configured under deduplication).eml
Diary/logsdiaryMarkdown (.md)
Meeting notesmeeting_noteWord (.docx), Markdown
DocumentsdocumentPDF, Word, plain text

Cost Controls

analysis:
  confirm_before_api_call: true   # Always ask before spending
  max_cost_per_query: 1.00        # Hard block above $1.00
  warn_above: 0.10                # Extra warning above $0.10

Embedding

SettingValue
Modelall-MiniLM-L6-v2
Chunk size1000 characters
Chunk overlap200 characters
Collection nameall_sources

Environment Variables

VariableRequiredDescription
OPENROUTER_API_KEYOnly for paid analysisOpenRouter API key (sk-or-...)

Set with:

export OPENROUTER_API_KEY=sk-or-your-key-here

Data Directories

DirectoryContentsGitignored
data/rag_ready/Deduplicated thread filesYes
data/chroma_db/ChromaDB vector databaseYes
data/alias_map.jsonPseudonymisation mappingsYes
evidence/Search result filesYes

MIT 2026 © Docs Hub