Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Janus

Prompt injection detector for documents and communications. Built by TanukiSoftworks.

Janus looks into the entrains of the files, looking for possible hidden instructions that can be used to make a LLM to act against the best interest of its creator/administrator/organization

We've built janus with the intent to not let anything go to the LLM or any server before it's analyzed. Everything is local and doesnt reach internet before a clean scan. If janus detects anything, it'll show a warning to the user, if its clean, it'll show the user that the file has passed.


Features

  • Core Pipeline: Analyzes raw text, HTML, JSON, and more for prompt injections and jailbreaks.
  • Robust Rule Engine: Powered by 16+ base rules targeting AutoJack, Role Impersonation, Social Engineering, Hidden CSS, and Context Overflow.
  • Desktop UI: Beautiful, intuitive Flet-based GUI for batch scanning files and folders visually.
  • CLI Interface: Command-line tools (main.py) for automated batch processing and CI/CD pipelines.
  • Intel Reporting: Generate comprehensive JSON and text reports summarizing security findings.
  • Hardened Engine: Memory-safe extraction limits (25MB caps) and ReDoS protected native regex processing.
  • Adversarial Normalization: Automatically de-obfuscates Unicode homoglyphs and zero-width character injections.

Installation

Ensure you have Python 3.10+ installed.

git clone https://github.com/TanukiSoftworks/Janus.git
cd Janus
pip install -r requirements.txt

(Note: Flet is required for the Desktop UI)

Usage

Desktop Application

To launch the visual interface for easy drag-and-drop batch scanning:

python janus_app.py

Command Line Interface

To scan files or folders directly from the terminal:

python main.py <path/to/file_or_folder>

To read directly from standard input (useful for piping logs):

cat payload.txt | python main.py

License

This project is licensed under the GNU General Public License v3.0 (GPL-3.0). See the LICENSE file for full details.

As a GPLv3 project, you are free to use, modify, and distribute Janus. However, any derivative works or modifications distributed must also be open-sourced under the exact same license.

Releases

Packages

Contributors

Languages