PMCLI 🚀 — Project Manager
PMCLI (Project Manager CLI) est un outil de productivité ultra-rapide conçu pour les développeurs qui vivent dans le terminal. Gérez vos projets, vos tâches et générez du code via l'IA en une seule ligne de commande.
🔥 Fonctionnalités Phares
- ⚡ Instant Init : Créez des dossiers de projet et initialisez Git automatiquement.
- 🔌 Plugin System : Architecture modulaire permettant d'ajouter des fonctionnalités via des extensions externes.
- 🤖 AI Scaffolding : Générez des boilerplates complets (HTML/CSS/JS) en décrivant votre projet (via Ollama & Kimi).
- 📦 Global Storage : Vos projets sont suivis globalement dans
~/.pmcli/. - 📊 Progress Tracking : Visualisez l'avancement de vos tâches avec des barres de progression stylisées.
- 🛡️ Security Hardened : Protections natives contre les injections de commandes et le Path Traversal (v1.6.0+).
🛡️ Sécurité & Robustesse
La version 1.1.1 apporte des améliorations majeures de sécurité :
- Isolation des commandes : Utilisation de
subprocess.runpour empêcher les injections de scripts via les noms de projets. - Validation des chemins : Protection contre le Path Traversal lors de la manipulation des plugins.
- Gestion des erreurs : Résistance aux entrées malformées (noms trop longs, octets nuls).
Lancer les tests de sécurité (Fuzzing)
Pour vérifier la robustesse de votre installation :
# Installer les outils de test
pip install -e ".[test]"
# Lancer la batterie de tests Hypothesis
pytest tests/test_security_hypothesis.py
🛠️ Installation
Via Pip (Recommandé)
# Clonez le repo
git clone https://github.com/Ilyan-Margueritte/ProjectManagerCLI.git
cd ProjectManagerCLI
# Installez
pip install .
[!TIP] Sur Windows : Si la commande
pmclin'est pas reconnue après l'installation, lancez une fois./install.ps1pour configurer automatiquement votre PATH Windows.
Via l'installeur natif
Sur Linux / macOS :
git clone https://github.com/Ilyan-Margueritte/ProjectManagerCLI.git
cd ProjectManagerCLI
./install.sh
Sur Windows :
- Téléchargez le dossier ou clonez-le.
- Ouvrez un terminal (PowerShell ou CMD) dans le dossier.
- Exécutez :
- PowerShell :
./install.ps1 - CMD :
setup.bat - Ou faites simplement un clic droit sur
install.ps1> "Exécuter avec PowerShell" ou double-cliquez sursetup.bat.
- PowerShell :
🔌 Gestion des Plugins
PMCLI est totalement extensible. Vous pouvez installer des plugins depuis un fichier local ou depuis le Store Officiel.
# Voir les plugins installés
pmcli plugin list
# Installer le générateur IA (depuis le repo)
pmcli plugin install extensions/ai_gen
# Supprimer une extension
pmcli plugin remove ai_gen
🤖 Utilisation de l'IA (Génération)
Une fois le plugin ai-gen installé, décrivez simplement votre projet :
pmcli generate mon_site_web
# ❓ Description : Une landing page sombre pour une agence de design
PMCLI appellera votre instance locale Ollama pour coder le projet à votre place !
📋 Commandes de base
| Commande | Usage | Description |
|---|---|---|
init |
pmcli init <nom> |
Crée un nouveau projet et init Git. |
list |
pmcli list |
Affiche tous vos projets et leur progression. |
add |
pmcli add <projet> <tâche> |
Ajoute une tâche à faire. |
done |
pmcli done <projet> <id> |
Marque une tâche comme terminée. |
open |
pmcli open <projet> |
Ouvre le dossier dans votre explorateur. |
🤝 Contribuer
Les contributions sont les bienvenues ! N'hésitez pas à proposer vos propres plugins dans le dossier extensions/.
Auteur : Ilyan Margueritte
Licence : MIT
Metadata
Release files for projectmcli 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| projectmcli-1.1.1.tar.gz | 15.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| projectmcli-1.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 34.4 kB
Release files / projectmcli-1.1.1.tar.gz
| Download URL | projectmcli-1.1.1.tar.gz |
|---|---|
| Size | 15.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
50e3cc9f99f00ff9a6e532355ae72c1299c09c837cea72a389be0b5deb80edfc
|
|
BLAKE2b-256 checksum How to use checksums |
4bb82283a5846bb13478f52a688295fe241e65efa2802886352fa66c48efe4eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / projectmcli-1.1.1-py3-none-any.whl
| Download URL | projectmcli-1.1.1-py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
62574f8ada7db2d845d6308e1b82de723683be1f8fa608f5963b4fd2d1168dee
|
|
BLAKE2b-256 checksum How to use checksums |
bcbefc6e35c5cc1d928d613604627d1448d60b0a08457725e4d40d7664c4b938
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|