A hardened, optimized, security-focused shell environment for advanced users, researchers, and security professionals, featuring intelligent context-aware assistance, comprehensive autocomplete, environment management, and cybersecurity capabilities.
- Comprehensive Security: HMAC verification for module integrity, permission hardening, and execution sandboxing.
- Intelligent Command Prediction: Context-aware suggestions based on history analysis, project context, and statistical modeling.
- Enhanced Autocomplete: A hybrid system providing robust autocompletion for commands, arguments, and file paths.
- Virtual Environment Management: Automatic Python virtual environment detection, switching, and dependency tracking.
- Performance Optimization: Lazy loading, dependency-based module system, and caching to maintain a responsive terminal.
# Clone the repository
git clone https://github.com/yourusername/sentinel.git
cd sentinel
# Run the installer
bash install.sh
# Restart your shell or source the configuration
source ~/.bashrc
The installer will guide you through the installation process. It will check for dependencies, create the necessary directory structure, and patch your ~/.bashrc
file.
SENTINEL is configured using a YAML file. By default, it will look for a config.yaml
file in the root of the repository. If it doesn't find one, it will use the config.yaml.dist
file as a fallback.
To customize your installation, you can copy config.yaml.dist
to config.yaml
and modify it to your needs.
The configuration file allows you to:
- Enable or disable modules.
- Configure Python environment settings.
- Set security verification options.
- Configure logging levels and locations.
For more information on the available configuration options, please see the config.yaml.dist
file.
Type a partial command and press Tab to see context-aware suggestions:
$ git ch<TAB>
checkout cherry-pick cherry check-ignore check-mailmap check-ref-format
With deep completion for arguments and options:
$ git checkout <TAB>
main feature/auth hotfix/ssl-fix v2.3.0-RC1 remotes/origin/main
The system learns from your workflow patterns:
$ cd project/
Suggestions based on context:
npm run dev
git status
code .
- Check the logs in
~/logs/
for any errors. - Run the installer again with the
--non-interactive
flag to see the full output. - If you are having issues with a specific module, you can disable it in your
config.yaml
file.
Contributions are welcome! Please see the CONTRIBUTING.md
file for more information on how to contribute to the project.
This project is licensed under the MIT License - see the LICENSE file for details.
This shell environment is highly customized for a specific system and workflow. While it can serve as a template or inspiration, you will likely need to modify the configuration files, scripts, and paths to suit your own needs.