NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2715 most downloaded on npm
Portable Unix shell commands for Node.js
Last release 1 years ago
09 May 2025
Ships unpredictably
gaps range from 8 days to 3.2 years
Most releases are documented
notes for 43 of 48 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
57 releases · first in 2012
Deprecate the shjs binary by @nfischer in #1225
Full Changelog: v0.9.2...v0.10.0
One column per quarter.
test: add tests for shelljs glob expansion by @nfischer in #1198
fix: add global.js and plugin.js to exports list by @nfischer in #1196
Full Changelog: v0.9.0...v0.9.1
deprecate config.globOptions by @nfischer in #1152
sed with newlines in #949fatal option to exec() function by @WesCossick in #961Full Changelog: v0.8.5...v0.9.0
This was a small security fix for #1058 .
This was a small security fix for #1058.
Small patch release to fix a circular dependency warning in node v14. See #973 .
Small patch release to fix a circular dependency warning in node v14. See #973.
Small patch release to fix a circular dependency warning in node v14. See #973.
Shelljs print stderr to console even if exec-only "silent" is true #905
Closed issues:
.to\(file\) does not mute STDIO output #146Merged pull requests:
High severity vulnerability in shelljs 0.8.1 #842
Closed issues:
Merged pull requests:
Exec failing with internal error when piping large output #818
Snyk vulnerability DB reporting command injection vulnerability in ShellJS #810
Closed issues:
ls regular-file.txt #732Merged pull requests:
-q (quiet) option to push, popd, dirs functions. #777 (alexreg)Buffer constructor is deprecated \#694
Closed issues:
open? #692Merged pull requests:
Error output should be consistent across all platforms. \#681
Closed issues:
Merged pull requests:
options argument #663 (gkalpak)test: remove tests for make (deprecated) #624 (nfischer)
Closed issues:
common.error\(\) to optionally not insert a prefix and optionally not print to console #523\1 for match groups #507exec gets stuck on my Debian box #51Merged pull requests:
Inadvertent breaking change to shell.test() #529
Closed issues:
plugin.error\(\) to take an options parameter #522cp is different between 0.6.0 and 0.7.4 #517Merged pull requests:
fix: echo -e should not print "-e" #510
Closed issues:
Merged pull requests:
Add a way to create commands that can receive from a pipe without being standalone commands #487
Closed issues:
Merged pull requests:
shelljs should not kill process if node call throws exception #473
Closed issues:
cp work incorrectly when folder name contains '@' #463Merged pull requests:
cp -n doesn't work correctly #465
Closed issues:
Merged pull requests:
npm run gendocs command #455 (nfischer)shell option #449 (nfischer)Changelog from v0.6.0...v0.7.0:
Changelog from v0.6.0...v0.7.0:
Closed issues:
shjs #388cp does not overwrite files by default #210exec\(...\).to\(file\) should work #154exec #92exec\(\) to use bash by default #281Merged pull requests:
stat once #367 (ariporad)Nothing published for this version
v0.6.0! Mine and @nfischer's first release!
v0.6.0! Mine and @nfischer's first release!
We're really exited to be a part of the shelljs team.
Changelog:
<a name="0.6.0"></a>
sed and grep (1ee696d)-n option, make -f default behavior (8377b92)-n option, make -f default behavior (2d1ee4d)shjs tests for windows (985ac20)PATHEXT on Windows (eaa7710), closes #301.console.log.apply(this, ...) (9e9b500), closes #255.expand() (b3f2664)cd() (no args) changes to home directory (dfaa78a)-d flag to ls() (c6da9e7)-l option (e918c75)set() command (ca045ea)cd('-') now returns you to the previous directory, as in bash (1979d07)X for directories (766c2dd)exec(...).stdout (8a7f7ce)child_process.exec (c0d9cf7)touch -r for an example) (f9c8fc0)Closed issues:
ls #323link -s is broken for files on Windows #301common.error doesn't throw #199-- as stdin #55mv fails on block, character, fifo #25Merged pull requests:
sudo and do not test 0.11 #307 (TimothyGu)exec docs to match implemented behaviour #289 (vise890)console.log.apply\(this, ...\). #274 (ariporad)os.tmpdir bug #240 (BYK)Manually closing streams \#222 (JulianLaval)
write after end: internal error \#206
Closed issues:
Merged pull requests:
Fix issue \#49: Retry rmdirSync on Windows for up to 1 second if files still exist. \#179 (andreialecu)
Closed issues:
Merged pull requests:
Find which shell is being used \#195
Closed issues:
Merged pull requests:
Nothing published for this version
grep\(\) should fully support globing \#118
Closed issues:
Merged pull requests:
Versions 0.2.4 and 0.2.3 keep throwing strange errors \#82
Closed issues:
shelljs.exec stalls on Red Hat when script is invoked with 'sudo -u username' \#72
Closed issues:
Full Changelog
Make shell.exec\(\) treat process error return codes as shelljs errors \#80 (nilsbunger)
Merged pull requests:
cannot install with nodejs 0.10.2 \#57
Closed issues:
Merged pull requests:
.npmignore file #70 (stephenmathieson)os.tmpDir when possible #67 (stephenmathieson)Nothing published for this version
Nothing published for this version
removing extra fs calls \#62 (stephenmathieson)
Merged pull requests:
test\('-L', badlink\) should return true \#56 (lge88)
Implemented chmod command. Github issue 35 \#48 (brandonramirez)
Closed issues:
Merged pull requests:
Work in progress: pushd/popd/dirs \#47 (mstade)
Inconsistent behaviour of cp command with directories. \#44
Passed process arguments to executable script \#36 (Zanisimo)
Closed issues:
Merged pull requests:
exec with callback should automatically be async \#31
gh-pages: clicking 'fork me' just reloads the page \#26
Fixed a global variable leak \#16 (dallonf)
Nothing published for this version
Nothing published for this version
global.key assigned value 'async' as a result of shell.exec\(...\) \#12
Closed issues:
Merged pull requests:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
"For convenient iteration via for in, ..."? \#4
Nothing published for this version
Full Changelog
Full Changelog
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →