LLM coder 'tools' for any model
Slupe is a file system orchestration tool that enables LLMs to execute file operations through a custom syntax language called NESL (No Escape Syntax Language). It provides a secure, configurable bridge between AI assistants and your local development environment.
- Universal LLM Compatibility: Works with any LLM that can generate text
- File System Operations: Read, write, move, delete files with configurable access controls
- Security Guards: Configurable path-based access control with glob pattern support
- Git Integration: Optional hooks for automated commits and version control
- Real-time Monitoring: Watch input files for action changes and execute NESL blocks automatically
- Clipboard Integration: Optionally copies outputs directly to clipboard and monitor clipboard for input NESL blocks
or just
Requirements:
- Node.js >= 20.0.0
- Git (optional, for version control hooks)
- Initialize Slupe in your project:
This creates:
- slupe.yml - Configuration file
- slupe_input.md - Input file for NESL commands
- NESL_INSTRUCTIONS.md - Instructions for LLMs
-
Share NESL_INSTRUCTIONS.md with an LLM along with any other relevant info from your file system, and ask it to make changes for you as nesl syntax.
-
Paste the whole output including NESL blocks into slupe_input.md and watch the execution results get prepended to the input file.
NESL was designed to provide LLMs with a robust and conflict-free way to communicate payloads with minimal errors. Tests have generally shown LLM-generated nesl to be more reliable that other compared formats including json (obviously), yaml, ruby heredocs, perl heredocs, and aider's git-conflict search/replace format.
- file_read - Read file contents
- file_write - Create or overwrite files
- file_delete - Delete files
- file_move - Move or rename files
- file_replace_text - Replace text in files (single occurrence)
- file_replace_all_text - Replace all occurrences of text
- files_replace_all_text - Replace text across multiple files
- files_read - Read multiple files at once
Start the listener and edit slupe_input.md:
Enable clipboard integration:
With clipboard mode enabled:
- Execution results are automatically copied to clipboard
- Slupe monitors your clipboard for NESL blocks
- When you copy two clipboard entries containing matching NESL delimiters (e.g., both containing #!end_abc), Slupe automatically executes the shorter entry
This enables a workflow where:
- Copy the entire LLM response that includes NESL blocks.
- Quickly (within 2 seconds) ctrl-a, ctrl-c the entire webpage to copy the whole thing including the recent response you just copied
- Slupe detects and executes them automatically
- Results are copied back to your clipboard
note: for reliable results, wait about half a second before doing the second copy. Especially for large content that take the OS a bit to register
Slupe includes a git squashing utility for cleaning up commit history:
Examples:
The squash tool:
- Finds commits matching your criteria
- Combines them into a single commit
- Preserves the complete file change history
- Can automatically push changes with lease protection
Slupe implements multiple security layers:
- Action Allowlist: Only explicitly allowed actions can be executed
- Path Guards: Fine-grained control over file system access
- No Shell Expansion: Commands are executed safely without shell interpretation
To use Slupe with your LLM:
- Include the generated NESL_INSTRUCTIONS.md in your LLM prompt
- Ask the LLM to generate NESL blocks for file operations
- Copy the LLM's response to slupe_input.md or use clipboard mode
Example prompt:
Slupe is built with a modular component architecture:
- Parser (nesl-action-parser): Parses NESL blocks into structured actions
- Orchestrator (orch): Coordinates execution and manages workflow
- Executors: Specialized handlers for different action types
- fs-ops: File system operations
- Guards (fs-guard): Security and access control
- Listener: File watching and real-time execution
- Squash: Git history management utility
Contributions are welcome! Please feel free to submit a Pull Request.
MIT © Stuart Robinson
.png)

