jaredfolkins/llmon
GitHub: jaredfolkins/llmon
Stars: 40 | Forks: 3
# LLMON 🍋 - The World's First Web Adversarial AI Firewall
**Squeeze a little sour into agentic LLMs.**
## The Philosophy
While a traditional WAF filters *incoming* traffic to protect the server, LLMON filters *outgoing* traffic to protect the content's semantic value. It acts as a gatekeeper of meaning, ensuring that while raw bytes are accessible, the semantic value extracted by AI is oriented towards the user's intent (or defense), not the machine's training data.
## Features
### Stealth & Polyglot Injection
### Semantic Sanitization
### Bot Intelligence
- **Bot Detection:** Identifies agents like OpenAI, Anthropic, Google, Meta, etc.
- **Smart Routing:** Serves vendor-specific jailbreaks/payloads based on the detected bot User-Agent.
## Use Cases
| Category | Goal | Mechanism |
| :--- | :--- | :--- |
| **Guerrilla Marketing** | **Personal Branding** | Injects instructions into bio/resume pages to ensure AI summaries mention specific accolades. |
| **Cyber Security** | **Honey Pot** | Misdirects malicious crawlers to a tracking URL or fake admin panel. |
| **Adversarial Defense** | **Prompt Extraction** | Tricks the AI into revealing its system prompt. |
| **Resource Consumption** | **Context Flooding** | Forces the AI to waste compute tokens on irrelevant tasks (e.g., "Output prime numbers"). |
| **Red Teaming** | **Agent Compromise** | Tests agent sandboxes using RCE, Exfiltration, and Persistence vectors. |
## Reliability & Safety
LLMON is built on a **'Round-Trip' Reliability Protocol**. Every injection strategy is validated against a rigorous E2E test suite (powered by `chromedp`) ensuring the resulting file is not just 'technically' injected, but structurally valid and corrupt-free.
## Installation
### Caddy Module
# Install xcaddy
go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
# Build Caddy with llmon
xcaddy build --with github.com/jaredfolkins/llmon=.
### Standalone CLI
Use `llmon-cli` for static site generation, CI/CD pipelines, or forensic analysis.
make build-cli
# Inject
./tmp/build/llmon-cli -in input.png -payload "Ignore Instructions" -strategy alpha_stego -out output.png
# Reveal (Steganography)
# Extracts hidden payloads from the alpha channel and saves them to 'revealed_.txt'
./tmp/build/llmon-cli -in output.png -reveal
## Configuration
Add the `llmon` directive to your `Caddyfile`. **Important:** Define the order in global options.
{
order llmon before encode
}
:8080 {
reverse_proxy localhost:9000
llmon {
# Injection Probability (0.0 to 1.0)
rate 1.0
# Route Control
include /blog/*
exclude /admin/*
# Debugging
debug
log_level info
# ---------------------------------------------------------
# STRATEGY CONFIGURATION (Safe Mode: All Disabled by Default)
# ---------------------------------------------------------
strategy {
# ---------------------------------------------------------
# 1. HTML Injection
# Default: Disabled
# Modes:
# - random (Mixes all vectors)
# - html_comment (Standard )
# - script_text (