Cross-platform Command Manager - Simplify your terminal with intuitive shortcuts
Project description
๐ง CCMD โ Custom Command Manager
Cross-platform command enhancer for humans. Replace long, repetitive terminal syntax with short, intuitive commands. Works on Linux, Windows PowerShell, and WSL โ safe, rollback-ready, and open source.
โจ New in v1.1.3: Bug Fix Release! Fixed command chaining directory persistence, interactive timeout issues, and pip install warnings.
๐ v1.1.2: Command Chaining & Composability! Chain commands with
>>>, enhanced security, and process management.
๐ v1.1.1: Enterprise-grade security! Master password protection, command injection prevention, SSH key validation, and intelligent auto-locator.
โ ๏ธ Important: CCMD is a powerful tool that sits between your shell and you. Like electricity or any powerful tool, it can be dangerous if used wrongly. Please read the Security Disclaimer before using CCMD. Use carefully, cautiously, and responsibly.
๐ Version Notice: We strongly recommend using v1.1.3 or later. Older versions (v1.0.x, v1.1.0-v1.1.2) may have bugs affecting command chaining and interactive commands. Upgrade now โ it's safe, fast, and backward compatible!
๐งฉ Overview
CCMD is an open-source project developed by De Catalyst (Wisyle).
It lets you define simple, natural shortcuts for everyday shell operations โ no more typing endless flags or remembering weird syntax.
Instead of typing:
cd ~/Downloads
git add .
git commit -m "update"
git push
You can just write:
go downloads
push
CCMD handles the rest. It safely installs into your shell profile, manages custom commands through YAML, and supports plugins, system monitoring, and SSH management.
โจ Features
๐ v1.1.3 Bug Fixes (LATEST!)
- ๐ง Fixed Directory Persistence โ Chained commands now correctly persist directory changes
- โฑ๏ธ Fixed Interactive Timeouts โ Interactive commands like
claudeno longer timeout - ๐ฆ Fixed Pip Install Warnings โ Automatic handling of externally-managed Python environments
- โ Enhanced Navigation โ Support for custom project directory paths in
gocommand - ๐ฏ 180s Timeout for Non-Interactive โ Non-interactive commands timeout after 3 minutes (prevents hangs)
Upgrade Recommendation: If you're using v1.1.2 command chaining, upgrade to v1.1.3 for critical bug fixes!
๐ v1.1.2 Features
- ๐ Command Chaining โ Chain commands with
>>>operator:go downloads >>> ls >>> echo "done" - ๐ Command Composability โ CCMD commands can call other CCMD commands
- ๐ฏ Smart Directory Chaining โ Directory changes persist through command chains
- ๐ก๏ธ Enhanced Security โ Context-aware validation, expanded pattern detection (40+ patterns)
- ๐ Process Management โ
kapkills all processes (with confirmation),kpkills by name - ๐ bcrypt Fallback โ PBKDF2-HMAC-SHA256 fallback if bcrypt unavailable
- ๐ Type Enforcement โ Custom commands cannot abuse privileged types
Example: ccmd add โ name: devwork โ command: go projects >>> ls >>> echo "Ready to code!"
๐ v1.1.1 Security Features
- ๐ Master Password System โ Protect sensitive commands with bcrypt-hashed passwords
- ๐ก๏ธ Command Injection Prevention โ Automatic blocking of dangerous command patterns
- ๐ SSH Key Validation โ Verify key permissions (0600) before use
- ๐ Sensitive Command Detection โ Auto-detect and protect sudo, ssh, AWS commands
- ๐ Atomic File Operations โ Safe, corruption-proof file writes
- ๐ฏ Intelligent Auto-Locator โ No more path issues, works anywhere
- ๐ Audit Logging โ Track all authentication attempts
- โก Security Cache โ 5-minute authentication window for convenience
New Commands: init, debug, sudo, change-password, reset-password, kap, kp
๐ v1.1.0 Features
- โจ Custom Commands โ Create your own commands with
add, manage withremove - ๐ Instant Reload โ
reloadcommand updates config without manual reinstall - ๐ฏ Interactive Push โ Full git workflow with file selection and auto-commit messages
- ๐ Command Manager โ Enable/disable commands with
list - ๐ก๏ธ Graceful Cancellation โ Press Ctrl+C anytime without ugly errors
- ๐ Better Windows Support โ Fully tested on PowerShell with proper encoding
Core Features
- Cross-Platform Support โ Linux, WSL, Windows PowerShell (macOS code exists but untested*)
- Natural Commands โ No prefixes; just type
go,push,cpu, etc. - Smart Directory Navigation โ Search and jump to directories anywhere
- Auto Git Integration โ Interactive add, commit, and push workflow
- System Insights โ Monitor CPU, memory, and processes
- Safe Rollback โ Backs up your shell configuration before any changes
- Persistent Customization โ Your custom commands survive CCMD updates
- Password Protection โ Mark custom commands as requiring authentication
*macOS users: We need your feedback! Please test and report issues.
๐ Documentation
For detailed guides and technical documentation, see:
- ๐ Security Disclaimer โ READ THIS FIRST! Important security information and responsible use guidelines
- ๐ Release Notes v1.1.3 โ Latest bug fixes and improvements
- ๐ Release Notes v1.1.1 โ Complete changelog and upgrade guide
- Features โ Complete feature list including security features
- Installation Guide โ Step-by-step installation for all platforms
- Usage Guide โ Complete command reference and usage examples
- Configuration Guide โ Customize and create your own commands
- Troubleshooting โ Common issues and solutions
- Architecture โ Technical architecture and development guide
๐งฑ Project Structure
ccmd/
โโโ cli/
โ โโโ main.py # CLI entrypoint
โ โโโ install.py # Installation and PATH setup
โ โโโ editor.py # Interactive command editor
โ โโโ ssh_manager.py # Manage SSH aliases and keys
โโโ core/
โ โโโ parser.py # Parse and map custom commands
โ โโโ executor.py # Execute commands securely
โ โโโ registry.py # Manage alias storage
โ โโโ rollback.py # Backup & restore shell configs
โ โโโ system_check.py # Detect OS and compatibility
โโโ commands.yaml # Default command definitions
โโโ run.py # Master entrypoint
โโโ setup.sh # Unix installer
โโโ setup.ps1 # Windows installer
โโโ LICENSE
โโโ README.md
๐ Installation
Prerequisites
- Python 3.7+
Method 1: Using Git (Recommended)
For users comfortable with Git:
# Clone the repository (ccmd branch)
git clone -b ccmd https://github.com/Wisyle/ccmd.git
cd ccmd
# Run the installer for your platform
# Linux/macOS/WSL:
bash setup.sh
# Windows PowerShell:
.\setup.ps1
# Reload your shell
source ~/.bashrc # or ~/.zshrc for Zsh, or restart terminal
Method 2: Download ZIP (For non-Git users)
If you're not familiar with Git, download the official release:
-
Download the latest release:
- Visit: https://github.com/Wisyle/ccmd/releases/latest
- Download Source code (zip) under Assets
- Or direct download: https://github.com/Wisyle/ccmd/archive/refs/tags/v1.1.3.zip
-
Extract the files:
- Extract the downloaded ZIP file
- Rename the folder to
ccmd(remove any version suffix)
-
Install CCMD:
On Linux/macOS/WSL:
cd /path/to/ccmd bash setup.sh source ~/.bashrc # or ~/.zshrc
On Windows PowerShell:
cd C:\path\to\ccmd .\setup.ps1 . $PROFILE
-
Test installation:
python3 run.py --check go home
Verify Installation
After installation, test that CCMD is working:
# Check system status
python3 run.py --check
# List available commands
python3 run.py --list
# Test a command
go home
Uninstall / Rollback
python3 run.py --restore
Update CCMD
If installed via Git:
cd /path/to/ccmd
git pull origin ccmd
python3 run.py --install
If installed via ZIP:
- Download the latest ZIP
- Extract and replace your existing ccmd folder
- Run the installer again (
bash setup.shor.\setup.ps1)
๐ง Default Commands
Navigation
| Command | Description | Example |
|---|---|---|
go <dir> |
Navigate to directory or search | go downloads |
Git Operations
| Command | Description | Notes |
|---|---|---|
push |
Interactive git add, commit, and push | Auto-generates commit messages ๐ |
System Monitoring
| Command | Description | Platform Support |
|---|---|---|
cpu |
Show CPU usage | Linux, macOS, Windows |
mem |
Show memory usage | Linux, macOS, Windows |
proc |
List running processes | Linux, macOS, Windows |
kap |
Kill process by PID | Linux, macOS, Windows |
Custom Commands ๐ v1.1.0
| Command | Description | Notes |
|---|---|---|
add |
Create a custom command | Interactive prompts |
remove |
Delete a custom command | Shows list to select from |
list |
Manage commands (enable/disable) | Toggle commands on/off |
CCMD Management
| Command | Description | Notes |
|---|---|---|
reload |
Reload config and update shell ๐ | No manual reinstall needed |
update |
Update CCMD from GitHub | Downloads latest version |
version |
Show current and latest version | Checks GitHub releases |
restore |
Restore shell config from backup | Rollback changes |
uninstall |
Remove CCMD completely | Cleans everything |
hi |
Show system dashboard | System overview |
โ๏ธ Configuration
Default Commands
CCMD default commands are defined in $CCMD_HOME/commands.yaml. These are managed by CCMD and updated when you upgrade.
Custom Commands (v1.1.0+)
Your custom commands are stored separately in:
~/.ccmd/custom_commands.yaml
Why separate? Your custom commands survive CCMD updates and never get overwritten.
Create custom commands:
add # Interactive command creation
Remove custom commands:
remove # Interactive command removal
Reload after manual edits:
reload # Reloads config and updates shell
Each command follows this format:
mycommand:
description: "What this command does"
action: "the shell command to execute"
type: custom
interactive: false # Set to true for commands needing user input
๐ Security & Safety
- Backups created automatically before modifying any shell files.
- Rollback available anytime with
--restore. - SSH keys are never stored or transmitted.
- Commands executed via safe subprocess calls, never
eval.
๐งช Testing Locally
Before global install, run:
python run.py --test
This simulates:
- Shell detection and rc edits
- Git and system command execution
- Rollback and uninstall checks
๐งฐ Example Usage
# Navigate fast
go downloads
# Push Git changes instantly
push
# Check system load
cpu
# Connect to your default server
ssh
๐ Contributing
Contributions are welcome!
Fork the repo, create a branch, make your edits, and open a pull request.
A contribution guide will soon be added in /docs/CONTRIBUTING.md.
๐ License
Released under the MIT License. Free to use, modify, and distribute.
๐งโ๐ป Developed By
De Catalyst GitHub: @Wisyle Email: Robert5560newton@gmail.com X (Twitter): @iamdecatalyst Instagram: @iamdecatalyst Telegram: @iamdecatalyst
For bug reports, updates, or collaboration inquiries, feel free to reach out.
๐ช Tagline
โStop remembering commands. Start commanding naturally.โ
Always check new releases before downloading
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ccmd-1.1.4.tar.gz.
File metadata
- Download URL: ccmd-1.1.4.tar.gz
- Upload date:
- Size: 59.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
460af10b47e3ef6fa7722db31fa8be93adb83efe9f8507253fb6f6862e628f39
|
|
| MD5 |
385881cbc755bcd5cc24d9304499c368
|
|
| BLAKE2b-256 |
74f1b464d98882bf44f1891e9f67d801cc95ff96bb29c90fd7fdfe804801ccad
|
File details
Details for the file ccmd-1.1.4-py3-none-any.whl.
File metadata
- Download URL: ccmd-1.1.4-py3-none-any.whl
- Upload date:
- Size: 57.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f7ca87387132ab36d7efe926552e5d85c021390094591b45c7848d1fcb6c0fd
|
|
| MD5 |
3ab5b8352366a499b296df2ffdfb6806
|
|
| BLAKE2b-256 |
9d61f3b9b287c58c0036f2a6c7d0984fed12d7a464b3bd02719e90faf64947b8
|