diff --git a/.gitignore b/.gitignore
index 0a19790..1c63351 100644
--- a/.gitignore
+++ b/.gitignore
@@ -172,3 +172,8 @@ cython_debug/
# PyPI configuration file
.pypirc
+
+
+# AI agents
+.claude/settings.local.json
+.claude/docs/**
diff --git a/NRS/nodes_NRS.py b/NRS/nodes_NRS.py
index 734f451..0b643d8 100644
--- a/NRS/nodes_NRS.py
+++ b/NRS/nodes_NRS.py
@@ -24,16 +24,21 @@ _RAW_TO_ENUM = {
class NRS:
@classmethod
def INPUT_TYPES(s):
- return {"required": { "model": ("MODEL",),
- "skew": ("FLOAT", {"default": 2.00, "min": -30.0, "max": 30.0, "step": 0.01}),
- "stretch": ("FLOAT", {"default": 5.00, "min": -30.0, "max": 30.0, "step": 0.01}),
- "squash": ("FLOAT", {"default": 0.75, "min": 0.0, "max": 1.0, "step": 0.01}),
+ return {"required": { "model": ("MODEL", {"tooltip": "Input model to apply NRS to"}),
+ "skew": ("FLOAT", {"default": 2.00, "min": -30.0, "max": 30.0, "step": 0.01,
+ "tooltip": "Changes the 'direction' of generation, steering away from negative prompt elements. Start with CFG/2."}),
+ "stretch": ("FLOAT", {"default": 5.00, "min": -30.0, "max": 30.0, "step": 0.01,
+ "tooltip": "Intensifies positive prompt elements. Start with your normal CFG value."}),
+ "squash": ("FLOAT", {"default": 0.75, "min": 0.0, "max": 1.0, "step": 0.01,
+ "tooltip": "Softens Skew/Stretch effects, adding micro-detailing. Keep low initially."}),
}}
RETURN_TYPES = ("MODEL",)
FUNCTION = "patch"
CATEGORY = "advanced/model"
+ DESCRIPTION = "Negative Rejection Steering (NRS) replaces CFG with more nuanced guidance. IMPORTANT: Set your KSampler CFG to any value (it will be ignored). Connect your model through this node before sampling."
+
def _get_pred_type(self, model) -> PredictionType:
"""
In order to support Comfy, Forge, and possibly other models
diff --git a/README.md b/README.md
index d2b1b96..e9db01a 100644
--- a/README.md
+++ b/README.md
@@ -73,6 +73,48 @@ NRS seeks to replace the 'naive' linear interpolation of Classifier Free Guidanc
> [!WARNING]
> Don't set NRS values to negatives if there are things in your negative prompt you **actually** don't want to see.
+## Setup & Installation
+
+### ComfyUI
+
+ComfyUI Setup Instructions
+
+#### Installation
+Install via ComfyUI Manager or manually clone this repository into your `ComfyUI/custom_nodes/` directory.
+
+#### Usage
+1. **Important**: Ignore the CFG setting on your KSampler node - NRS replaces CFG entirely
+2. Connect your model through the **Negative Rejection Steering** node before sampling
+3. Configure NRS parameters (Skew/Stretch/Squash) instead of using CFG
+
+#### Basic Workflow
+```
+Model → NRS Node → KSampler
+```
+
+**Pro tip**: To verify NRS is working correctly, set CFG to an extremely high value (like 30). If your output looks normal, NRS is functioning properly. If the output appears "turbo fried," check your node connections.
+
+
+
+
+### Automatic1111 / Forge / reForge
+
+WebUI Setup Instructions
+
+#### Installation
+1. Install the extension through the Extensions tab in your WebUI
+2. Enable the extension and restart your WebUI
+
+#### Usage
+Once installed and enabled, the NRS settings panel will appear in your generation interface. When NRS is active:
+- **CFG Scale is ignored** - the WebUI may still show the CFG setting, but it has no effect
+- Use the NRS parameters (Skew/Stretch/Squash) to control generation instead
+- Follow the same parameter guidelines from the [Beginner How-To](#beginner-how-to) section
+
+
+### StabilityMatrix Integration
+NRS is available as a **natively supported module** in [StabilityMatrix](https://lykos.ai/), providing an easy installation and management option for users of that platform.
+
## Submitted User Examples
| User | CFG | NRS |
| --- | --- | --- |