Skip to content

feat: customizable validator prompt with sensitivity presets#12

Merged
blackaxgit merged 1 commit intomainfrom
feat/customizable-validator-prompt
Mar 21, 2026
Merged

feat: customizable validator prompt with sensitivity presets#12
blackaxgit merged 1 commit intomainfrom
feat/customizable-validator-prompt

Conversation

@blackaxgit
Copy link
Copy Markdown
Owner

Summary

Add customizable LLM validator prompts with 3 sensitivity presets and per-project override support.

How It Works

Prompt Resolution (highest priority wins):

  1. Per-project:  <project>/.clx/prompts/validator.txt
  2. Global:       ~/.clx/prompts/validator.txt
  3. Built-in:     Preset based on config (high/standard/low)

Sensitivity Presets

Preset Behavior Best For
high Flags network access, env vars, file writes outside project, package installs Production, corporate compliance
standard Balanced risk assessment (current default) General development
low Trusts common dev tools (npm, cargo, docker, git), only flags destructive ops Personal projects, rapid prototyping

Config

validator:
  prompt_sensitivity: standard  # high | standard | low | custom

Per-Project Override

mkdir -p .clx/prompts
cp ~/.clx/prompts/validator-high.txt .clx/prompts/validator.txt

Files Changed

File Change
crates/clx-core/src/policy/prompts/ NEW: 3 template files (high, standard, low)
crates/clx-core/src/policy/prompts.rs NEW: module embedding templates via include_str!
crates/clx-core/src/policy/llm.rs 3-tier prompt loading (per-project > global > built-in)
crates/clx-core/src/config.rs PromptSensitivity enum + config field
crates/clx-hook/src/hooks/pre_tool_use.rs Pass sensitivity to evaluate_with_llm
crates/clx/src/commands/install.rs Write all 3 templates + active prompt during install

Test Plan

  • All workspace tests pass
  • 0 clippy warnings
  • Prompt loading precedence tested (per-project > global > built-in)
  • Sensitivity deserialization tested
  • Existing validation (injection detection) still applies to all prompts
  • Backward compatible -- standard preset matches previous behavior

Add 3 built-in prompt sensitivity presets (high/standard/low) with
3-tier prompt resolution: per-project > global > built-in.

- High: strict security scanning (flags network, env vars, file writes)
- Standard: balanced (current default, unchanged behavior)
- Low: relaxed (trusts common dev tools, fewer interruptions)

Templates written to ~/.clx/prompts/ during install. Per-project
override via .clx/prompts/validator.txt in project root.

Config: validator.prompt_sensitivity (high|standard|low|custom)
@blackaxgit blackaxgit merged commit 074d4b1 into main Mar 21, 2026
7 checks passed
@blackaxgit blackaxgit deleted the feat/customizable-validator-prompt branch March 21, 2026 01:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant