Forge
72c0d4fb
1# Hybrid Codebase Index settings (default, embedded).
2#
3# This file is embedded into the MCP binary so the server has stable defaults
4# even when no workspace override exists.
5#
6# To override per-workspace, create:
7# <workspace>/.hybrid-codebase-index/settings.toml
8#
9# Preferred format: sectioned tables. Old flat keys are still supported for back-compat.
10
11[scope]
12# Optional extra roots (relative to workspace root) to include in indexing.
13extra_include_roots = []
14
15# Optional roots (relative to workspace root) to exclude from indexing (fast directory-skip).
16exclude_roots = []
17
18# Built-in path denylist (applied before gitignore). List of directory names (path segments).
19exclude_path_segments = ["bin", "obj", ".git", "node_modules", ".vs", ".idea", ".cache", ".cascade-ide"]
20
21# Which gitignore-like files are applied (relative to workspace root).
22# Add env-specific ignores (e.g. ".cursorignore") in workspace override settings.toml.
23ignore_files = [".gitignore", ".git/info/exclude", ".cascadeideignore"]
24
25[fts]
26# Include *.cs as plain text documents in FTS (Roslyn truth still handles semantics).
27include_cs_in_fts = true
28
29# Default indexed extensions (strings without dot are accepted).
30include_extensions = ["md", "mdx", "csproj", "slnx", "props", "targets", "toml", "editorconfig", "json", "yml", "yaml", "razor", "css", "scss", "html", "axaml", "cs"]
31
32# Optional: subtract from the effective set.
33# exclude_extensions = ["cs"]
34
35# Max file size indexed as a single document (bytes). Larger files are skipped as too_large.
36max_indexed_file_bytes = 524288
37
38# Chunking (line windows) for FTS documents.
39chunk_lines = 110
40chunk_overlap_lines = 15
41
42# Binary detection probe size (bytes); if the probe contains NUL, file is treated as binary.
43binary_probe_bytes = 8192
44
45[semantic]
46# Semantic / vec (opt-in)
47enabled = false# Embeddings settings: prefer nested table for clarity.
48[semantic.embeddings]
49# Provider id (v0: "dummy"; also supported: "onnx")
50provider = "dummy"# Provider/model-specific name (optional; ignored by dummy).
51model = ""# Explicit dimension; 0 = provider default.
52dim = 0
53
54# ONNX provider: path to the ONNX model file (relative to index dir or absolute).
55model_path = ""
56
57# ONNX provider: WordPiece vocab file (relative to index dir or absolute), usually vocab.txt.
58vocab_path = ""
59
60# ONNX provider: whether to lowercase in BasicTokenizer step.
61do_lower_case = true
62
63# sqlite-vec: optional loadable extension path (absolute, or relative to index dir, then to MCP app dir).
64# Default vec0.dll is copied next to HybridCodebaseIndex.Mcp on Windows builds when native/win-x64/vec0.dll is present.
65# If the file is missing (e.g. Linux), load is skipped without error.
66sqlite_vec_extension_path = "vec0.dll"
67
68# Extensions policy for vec (embeddings and KNN channel).
69# Default: inherit effective extensions from [fts], then apply add/remove.
70# - vec_extensions_mode = "inherit_fts" | "custom"
71# - vec_extensions: base list when mode="custom" (normalized with dots)
72# - vec_add_extensions / vec_remove_extensions: overrides (normalized with dots)
73vec_extensions_mode = "inherit_fts"
74vec_extensions = []
75vec_add_extensions = []
76vec_remove_extensions = []
77
78# For token-based models: sequence length (0 = provider default, typically 128..256).
79sequence_length = 0
80
81# Prefer GPU if available (ONNX Runtime CUDA EP).
82prefer_gpu = true
83
View only · write via MCP/CIDE