pub struct KimetsuSection {
pub project_id: String,
pub schema_version: i64,
pub use_user_brain: bool,
pub mcp_write_tools: bool,
pub tier: Option<Tier>,
}Fields§
§project_id: String§schema_version: i64§use_user_brain: boolW3.3: per-project opt-out of the global cross-project user brain
(~/.kimetsu/brain.db). When false, GlobalUser writes fall back to
the project DB and retrieval skips the user-brain merge — identical
to KIMETSU_USER_BRAIN=0 but durable and scoped to this project.
Precedence: KIMETSU_USER_BRAIN env > this field > default (true).
#[serde(default)] keeps all pre-W3 project.toml files loading
unchanged (they get use_user_brain = true).
mcp_write_tools: boolv1.0.0: allow the LOCAL stdio MCP server to expose privileged write
tools (kimetsu_brain_record, memory_add/accept/reject, …).
Default true: the local plugin install on your own machine is the
“trusted session” the gate exists for, and the brain’s own workflow
(CLAUDE.md guidance, the Stop-hook harvest cue) instructs the agent
to record lessons — a default-deny gate contradicted that at every
session end. Personalize via kimetsu config set kimetsu.mcp_write_tools false. Precedence:
KIMETSU_MCP_ENABLE_WRITE_TOOLS env (set = wins, truthy/falsy) >
this field > default (true). The REMOTE server ignores this field
entirely (a cloned repo’s project.toml is untrusted there) and
stays env-only, default-deny.
tier: Option<Tier>v2.6: which product tier this brain runs as.
"free" (default) is the headline claim — zero LLM calls anywhere in
the memory pipeline. Ingest, store, retrieve and rerank are FTS5 +
local embeddings + a local cross-encoder, and every capability has a
deterministic or statistical implementation.
"deep" opts into a local small model in the loop for the handful of
features that are genuinely better with one (see Tier). Every Deep
feature has a Free fallback that is the Free behaviour, so flipping
the tier can add quality but can never remove a capability.
Absent (the default) means auto: a brain with a cheap model
configured is already making model calls, so it reads as Deep; a brain
without one reads as Free. That keeps every pre-v2.6 project.toml
behaving exactly as it did while making the label honest. Set it
explicitly to force the tier — "free" is a durable opt-out of model
calls even when credentials are present.
Precedence: KIMETSU_TIER env > this field > auto.
Resolve it with ProjectConfig::tier, never by reading this field —
the resolver also downgrades deep to free when no model is actually
reachable, which would otherwise be a label over a no-op.
Trait Implementations§
Source§impl Clone for KimetsuSection
impl Clone for KimetsuSection
Source§fn clone(&self) -> KimetsuSection
fn clone(&self) -> KimetsuSection
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more