Skip to content

RubicBG/ReShell-Releases

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReShell

A hobby project by a team of "professionals". Expect surprises, not miracles.

ReShell is a fork of Nilesoft Shell — a Windows Shell extension that lets you customize the classic right-click menu using simple script files.

Nilesoft Shell grew quietly into something useful — most of its improvements after v1.8.1 were driven by community requests, many of them from this project's direction. When active development stopped, the logical next step was to continue it independently. ReShell is that continuation.


⚠️ Two Menus. One Problem.

Windows has two separate context menu systems:

  • The legacy menu — the classic Shell menu that's been around since Windows 95. This is what ReShell works with.
  • The modern menu (XAML menu) — introduced in Windows 11. Sleek, fast, and completely out of reach for tools like ReShell.

They are not the same thing, and they are often confused for each other. ReShell only customizes the legacy menu. By default, ReShell disables the modern menu entirely — so you won't see a "Show more options" prompt. The legacy menu is simply always there.

The elephant in the room

Microsoft's long-term plan is to replace all legacy Shell components with modern equivalents. The moment they decide they no longer need the old menu — it goes away. ReShell, and every tool like it, has an unknown expiration date.

Unknown, because Microsoft hasn't announced anything. Optimistic estimates put it years away. With the current pace of AI-driven development, it could be sooner. Either way — enjoy it while it lasts.


System Requirements

  • Windows 10 or Windows 11
  • 64-bit (x64)

Installation

⚠️ shell.exe and shell.dll alone are not enough — ReShell will not work without a shell.nss configuration file. Until an installer is available, download the full release archive which includes a starter configuration.

  1. Download and extract the release archive — keep the folder structure intact (imports/ subfolder must stay next to shell.dll)
  2. Place the extracted folder wherever you want
  3. Run shell.exe — click Register or press Ctrl+R
  4. Right-click anywhere to verify the menu appears

To reload configuration after editing your shell.nss — press Ctrl+R in the ReShell window, or restart Explorer. Note: only the main shell.nss file is watched for changes. Any additional imported files require a manual reload.

About shell.log — ReShell writes a log file next to the DLL. If your menu isn't loading correctly, check here first. It reports basic syntax errors with the approximate line and column where the problem was detected. In rare cases the reported location may not point exactly to the cause — but it's always a good starting point.


Updating shell.dll

Windows locks shell.dll while it is registered and in use. To replace it:

  1. shell.exe /unregister — or press Ctrl+U
  2. Rename the old shell.dll (e.g. shell.dll.bak)
  3. Copy the new shell.dll into the folder
  4. shell.exe /register — or press Ctrl+R

If the file is still locked after unregistering, a full PC restart will release it.


Uninstallation

  1. Run shell.exe — click Unregister or press Ctrl+U
  2. Delete the files

Command Line Usage

shell.exe supports the following command-line options:

shell -register   (-r)   — register shell.dll
shell -unregister (-u)   — unregister shell.dll
shell -restart    (-re)  — restart Explorer
shell -treat             — disable the Windows 11 modern menu
shell -silent     (-s)   — suppress messages
shell -?                 — show help

Options can be combined, e.g. shell -register -restart.

Keyboard Shortcuts

When right-clicking or pressing Shift+F10:

Keys Action
Ctrl (while right-clicking) Reload shell.nss
Ctrl + Right-click Reload shell.nss
Ctrl + Win Disable ReShell, restore classic menu

Windows Security Warning

Windows may show a SmartScreen warning when you run shell.exe. This is expected — the executable is not signed with a paid certificate.

To proceed: click More infoRun anyway.


Configuration

ReShell is configured through a shell.nss script file. A starter configuration is included in the release archive — it covers the most common use cases and is meant to be trimmed down to your needs, not built from scratch.

To use a configuration file from a different location, set the following registry value:

HKEY_CURRENT_USER\Software\Nilesoft\Shell
Value: config (REG_SZ) = full path to your .nss file

Full syntax documentation: rubicbg.github.io/ReShell-Releases


The Team

This project is maintained by a small group of "professionals" who prefer to remain mysterious.

What we can say: one of us does the testing and knows what should and shouldn't work. The rest handle architecture, research, implementation, and documentation — each in their own way, on their own schedule.

It's a hobby project. We work on it when we feel like it. We think that's honest enough.


Credits

ReShell is based on Nilesoft Shell by moudey. Without that foundation, none of this exists.


ReShell 0.1.0-alpha — for testing purposes. Not recommended for production use.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors