Skip to main content

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.run pour 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 pmcli n'est pas reconnue après l'installation, lancez une fois ./install.ps1 pour 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 :

  1. Téléchargez le dossier ou clonez-le.
  2. Ouvrez un terminal (PowerShell ou CMD) dans le dossier.
  3. Exécutez :
    • PowerShell : ./install.ps1
    • CMD : setup.bat
    • Ou faites simplement un clic droit sur install.ps1 > "Exécuter avec PowerShell" ou double-cliquez sur setup.bat.

🔌 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)

Source distribution for projectmcli 1.1.1
File Size Uploaded
projectmcli-1.1.1.tar.gz 15.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for projectmcli 1.1.1
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

1.1.1 This release

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page