Skip to content

WastelandSYS/noDIFFier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

noDIFFier Image May 13, 2026, 01_44_36 PM

noDIFFier

An AI-assisted patch workflow tool for Linux terminals. noDIFFier validates and applies Codex-generated unified diffs directly to your project, then immediately waits for the next patch so development never has to stop.


FEATURES

v0.5.0 Workflow Improvements

  • Boxed session summary with patches applied, files modified, backups created, failures, validation failures, and session duration
  • Lightweight patch history logging under .nodiffier-history/ after every successful patch
  • Rollback helpers for listing backups, restoring a chosen snapshot, restoring the newest backup, and interactive rollback
  • Dry run mode that validates patch safety, checks git apply --check, lists affected files, and makes no changes
  • Patch preview prompts that show only affected file paths before applying changes
  • Dirty Git worktree warning with --force / --allow-dirty overrides
  • Git root detection when launched from a repository subdirectory, while preserving patch-file paths relative to the launch directory
  • Batch patch mode for applying multiple .patch / .diff files sequentially with per-patch results

AI Patch Workflow

  • Paste Codex-generated unified diffs directly into the terminal
  • Apply multiple patches continuously within a single session
  • No manual patch files required
  • No manual file editing required
  • Designed specifically for AI-assisted development workflows

Safe Patch Application

  • Validates patches using git apply --check
  • Blocks unsafe paths, absolute paths, and directory traversal attempts
  • Creates automatic backups before modifying files
  • Warns before applying patches over uncommitted Git changes
  • Shows a concise patch preview before changes are applied
  • Supports dry runs, rollback from backups, and patch history logging
  • Clear success and failure reporting
  • Detects the nearest Git repository root while still allowing current-directory mode

Linux Terminal Tooling

  • Applies unified diffs from pasted terminal input or patch files
  • Works directly in your current directory with no hardcoded target folder
  • Provides both noDIFFier and nodiffier global launcher commands
  • Installer avoids sudo pip and Python package mutation
  • Designed for Linux environments including Raspberry Pi OS, Kali, Debian, and Ubuntu
  • Minimal footprint: one Python tool script plus install/uninstall scripts

SCREENSHOTS

nodiffierMENU

nodiffierseshexit


INSTALLATION

git clone https://github.com/WastelandSYS/noDIFFier.git
cd noDIFFier
chmod +x install.sh nodiffier.py
sudo ./install.sh

Launch with:

nodiffier

UNINSTALLATION

cd noDIFFier
chmod +x uninstall.sh
sudo ./uninstall.sh

Optional manual cleanup:

sudo rm -f /usr/local/bin/nodiffier
sudo rm -f /usr/local/bin/noDIFFier
sudo rm -rf /usr/local/share/nodiffier

The uninstaller removes the global nodiffier and noDIFFier shortcuts and the installed /usr/local/share/nodiffier directory.


USAGE

Default launch:

nodiffier

Paste mode (from Codex chat diff):

cd /path/to/your/project
nodiffier
# paste full diff, then press CTRL+D

Primary AI-assisted workflow:

cd /path/to/your/project
nodiffier
paste Codex-generated patch
CTRL+D
patch is validated and applied
paste next patch
CTRL+D
patch is validated and applied

Continue pasting patches until the development task is complete. noDIFFier keeps the session open after each patch, so you can apply a sequence of AI-generated changes without restarting the application.

File mode examples:

cd /path/to/your/project
nodiffier changes.patch
nodiffier changes.diff
nodiffier *.patch

Dry run mode validates a patch and lists affected files without changing anything:

nodiffier --dry-run changes.patch

Rollback helpers use the existing .nodiffier-backups/ snapshots and never delete backup history automatically:

nodiffier --list-backups
nodiffier --rollback-last
nodiffier --rollback
nodiffier --restore-backup 20260529T120000Z

Workflow safety prompts can be bypassed for trusted automation:

nodiffier --yes changes.patch
nodiffier --force changes.patch
nodiffier --allow-dirty changes.patch

Successful patch applications are logged under .nodiffier-history/ with the timestamp, patch content, affected files, and result status for a lightweight audit trail.

Alias command:

noDIFFier

Version check:

nodiffier --version

COMPATIBILITY

Designed primarily for Linux systems.

Tested/targeted on:

  • Raspberry Pi OS
  • Kali Linux
  • Debian
  • Ubuntu

Notes:

  • Requires git for patch validation and application.
  • Uses system Python 3 without installing global Python packages.
  • Avoids externally-managed-environment issues by not using sudo pip.
  • Defaults to the nearest Git repository root when launched from a subdirectory, unless you decline the prompt.

WHY NODIFFIER?

AI coding assistants can generate useful unified diffs, but applying each patch manually adds repetitive work to the development loop.

Traditional workflow:

Copy patch
Create patch file
Run patch command
Verify changes
Repeat

noDIFFier workflow:

Paste patch
CTRL+D
Patch applied

Paste next patch
CTRL+D
Patch applied

Paste next patch
CTRL+D
Patch applied

The goal is to remove friction from AI-assisted development so developers can focus on building instead of managing patch files and repeating terminal commands. noDIFFier turns patch application into a continuous workflow: launch it once inside the project directory, paste each Codex-generated diff, press CTRL+D, review the result, and continue with the next patch.

The tool focuses on:

  • rapid AI-generated patch application
  • safe patch preflight checks
  • minimal setup complexity
  • Linux-friendly installation
  • predictable current-directory behavior
  • practical Codex and AI coding assistant workflows

LICENSE

noDIFFier is released under the GNU General Public License v3.0. See LICENSE for the full license text.


AUTHOR

WastelandSYS