57 lines
1.5 KiB
Plaintext
57 lines
1.5 KiB
Plaintext
|
|
# Knowledge Base Core Configuration
|
||
|
|
#
|
||
|
|
# User customization layer - compose with mode overlays
|
||
|
|
# Pattern: defaults + mode + user_custom → final config
|
||
|
|
|
||
|
|
let contracts = import "../../schemas/kb/contracts.ncl" in
|
||
|
|
let defaults = import "../../schemas/kb/defaults.ncl" in
|
||
|
|
let helpers = import "../../schemas/kb/helpers.ncl" in
|
||
|
|
|
||
|
|
# Select mode overlay (dev, prod, or test)
|
||
|
|
let mode = import "../../schemas/kb/modes/dev.ncl" in
|
||
|
|
|
||
|
|
# User customizations (override defaults and mode)
|
||
|
|
let user_custom = {
|
||
|
|
graph = {
|
||
|
|
name = "knowledge-base",
|
||
|
|
version = "1.0.0",
|
||
|
|
description = "Personal knowledge base for the KB project",
|
||
|
|
},
|
||
|
|
|
||
|
|
# Example: Override inheritance base
|
||
|
|
# inheritance = {
|
||
|
|
# base = "/Users/Akasha/Tools/.kb-shared",
|
||
|
|
# guidelines = [
|
||
|
|
# "/Users/Akasha/Tools/.claude/guidelines/rust",
|
||
|
|
# ],
|
||
|
|
# priority = 100,
|
||
|
|
# },
|
||
|
|
|
||
|
|
# Example: Use different embedding provider
|
||
|
|
# embeddings = {
|
||
|
|
# provider = 'openai,
|
||
|
|
# model = "text-embedding-3-small",
|
||
|
|
# dimensions = 1536,
|
||
|
|
# },
|
||
|
|
|
||
|
|
# Example: Customize query behavior
|
||
|
|
# query = {
|
||
|
|
# similarity_threshold = 0.5,
|
||
|
|
# max_results = 15,
|
||
|
|
# },
|
||
|
|
|
||
|
|
# Example: Enable SurrealDB for larger projects
|
||
|
|
# storage = {
|
||
|
|
# secondary = {
|
||
|
|
# enabled = true,
|
||
|
|
# url = "ws://localhost:8000",
|
||
|
|
# namespace = "kb",
|
||
|
|
# database = "knowledge_base",
|
||
|
|
# },
|
||
|
|
# },
|
||
|
|
} in
|
||
|
|
|
||
|
|
# Compose configuration: defaults + mode + user customizations
|
||
|
|
helpers.compose_config defaults.base mode user_custom
|
||
|
|
| contracts.KbConfig
|