Skip to main content

load_rules

Function load_rules 

Source
pub fn load_rules(
    workspace: Option<&Path>,
    chat_root: Option<&Path>,
) -> Vec<PlanningRule>
Expand description

Load planning rules.

Resolution:

  1. Global ~/.skilllite/chat/prompts/rules.json (seed + evolved) — always loaded
  2. Workspace .skilllite/planning_rules.json (per-project skill rules) — merged on top
  3. Compiled-in seed data (fallback when no global file)

Merge semantics:

  • Workspace rule with same ID as an immutable (mutable=false) global rule → skipped
  • Workspace rule with same ID as a mutable global rule → overrides it
  • Workspace rule with a new ID → appended