Repository navigation
v1.3.8 — Safe Command Execution
What's New
Directory Validation Before Execution
When running pm build, pm run, or pm test, ProjectManager now validates that the project directory exists before executing any command. If the directory has been moved or deleted:
❌ Project directory not found: /home/user/old-project
The directory may have been moved, renamed, or deleted.
To update the path, run:
pm rename my-project --path /new/path
This replaces confusing shell errors like "The directory name is invalid" (Windows) or "No such file or directory" (Linux) with a clear, actionable message.
Shell Metacharacter Warning
When adding custom commands with pm commands add, ProjectManager now warns if the command contains shell special characters (&, |, ;, $, etc.):
⚠️ Command contains shell special characters: '&', '|'
This is fine if intentional (e.g., chaining commands with '&&').
If your command includes file paths with special characters,
make sure they are properly quoted.
This is a non-blocking warning — commands like npm build && npm serve work perfectly fine.
Architecture Note
Default commands (gradle build, npm start, etc.) are static strings that never embed project paths. The working directory is set via Java's ProcessBuilder.directory() API, not interpolated into shell strings. This means the command execution architecture is inherently safe from path injection for all auto-detected commands.
Installation
📖 For complete installation instructions, troubleshooting, and build-from-source guide, read
INSTALL.md
Quick install (first-time users)
-
Download both assets from this release:
Source code (zip)— contains the install scriptsprojectmanager-1.3.8.jar— the pre-built application
-
Extract the ZIP and place the JAR next to the
scripts/folder:
ProjectManager/
├── scripts/
│ ├── install.ps1 ← Windows installer
│ ├── install.sh ← Linux/Mac installer
│ └── INSTALL.md ← 📖 Full installation guide
└── projectmanager-1.3.8.jar ← place here
-
Run the installer:
- Linux/Mac:
bash scripts/install.sh - Windows (PowerShell):
powershell -ExecutionPolicy Bypass -File .\scripts\install.ps1
- Linux/Mac:
-
Restart your terminal, then verify:
pm help
⚠️ Having issues? Check the full installation guide for troubleshooting
Existing users
pm update
Tests
288 tests, 0 failures (14 new tests for directory validation and metacharacter detection)