config

package
v2.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 7, 2026 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

Package config holds all configuration for notebrain-cli.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// ChromaPath is the local directory where ChromaDB stores its data.
	ChromaPath string
	// VaultName for Obsidian CLI targeting.
	VaultName string
	// Embedder type: "minilm" or "ollama"
	Embedder    string
	OllamaURL   string
	OllamaModel string
	// ChunkSize is the maximum number of runes per chunk passed to the parser.
	// MiniLM-L6-v2 is optimal at 128-256 tokens (~600-800 runes for English prose).
	ChunkSize int
	// ChunkOverlap is the number of runes repeated at the start of each sub-chunk
	// when a section is split. Provides sentence-level continuity across boundaries.
	ChunkOverlap int
	Limit        int
	// MinChunkWords filters out chunks with fewer words than this threshold before
	// embedding. Eliminates heading-only, code-placeholder, and link-only fragments.
	MinChunkWords int
	// MaxEmbedTokens is the maximum sequence length for embed text (model token budget).
	MaxEmbedTokens int
	// TopKPerNote limits the number of chunks returned per note in semantic search.
	TopKPerNote int
	Verbose     bool
	// LogFormat controls log output format: "auto", "json", or "text".
	LogFormat string
	// LogLevel controls minimum log severity: "info", "debug", "warn", or "error".
	LogLevel        string
	SkipAttachments bool
	SkipPhantom     bool
	HideTags        bool
}

Config holds all configuration for notebrain-cli.

func Default

func Default() *Config

Default returns a Config with sensible defaults.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL