Langue : français (French)
Donnez au shell la capacité de penser. Faites évoluer les opérations.
Un véritable shell IA : PTY complet + sécurité et contrôle des risques configurables
- Pourquoi choisir AISH
- Démarrage rapide
- Installation
- Désinstallation
- Configuration
- Utilisation
- Sécurité et contrôle des risques
- Skills (Plugins)
- Données et confidentialité
- Documentation
- Communauté et support
- Développement et tests
- Contribuer
- Licence
- Véritable shell interactif : prise en charge PTY complète, exécute des programmes interactifs comme
vim/ssh/top - Intégration IA native : décrire les tâches en langage naturel, générer, expliquer et exécuter des commandes
- Sûr et contrôlable : les commandes IA ont un niveau de risque et un flux de confirmation ; bac à sable optionnel avant exécution pour évaluer les changements
- Extensible : système de plugins Skills avec chargement à chaud et priorité
- Faible coût de migration : compatible avec les commandes et workflows habituels, tout reste dans le terminal par défaut
| Fonctionnalité | AISH | Claude Code |
|---|---|---|
| 🎯 Positionnement principal | CLI d'exploitation / dépannage système | Assistant de développement |
| 🤖 Prise en charge multi‑modèles | ✅ Entièrement ouvert | |
| 🔧 Système de sous‑agents | ✅ Agent de diagnostic ReAct | ✅ Plusieurs types d’agents |
| 🧩 Prise en charge des Skills | ✅ Chargement à chaud | ✅ |
| 🖥️ Intégration native au terminal | ✅ Prise en charge PTY complète | |
| 🛡️ Évaluation des risques de sécurité | ✅ Confirmation de sécurité | ✅ Confirmation de sécurité |
| 🌐 Prise en charge des modèles locaux | ✅ Entièrement pris en charge | ✅ Entièrement pris en charge |
| 📁 Outils d’opérations sur fichiers | ✅ Prise en charge minimale essentielle | ✅ Prise en charge complète |
| 💰 Entièrement gratuit | ✅ Open source | ❌ Service payant |
| 📊 Observabilité | ✅ Langfuse optionnel | |
| 🌍 Sortie multilingue | ✅ Détection automatique | ✅ |
curl -fsSL https://www.aishell.ai/repo/install.sh | bashTéléchargez le bundle correspondant aish-<version>-linux-<arch>.tar.gz depuis le répertoire officiel des releases, puis exécutez :
tar -xzf aish-<version>-linux-<arch>.tar.gz
cd aish-<version>-linux-<arch>
sudo ./install.shPuis lancez :
aishRemarque : aish sans sous‑commandes équivaut à aish run.
aish> ls -la
aish> cd /etc
aish> vim hostsCommencer par ; ou ; active le mode IA :
aish> ;trouve les fichiers plus grands que 100M dans le répertoire courant et trie par taille
aish> ;explique cette commande : tar -czf a.tgz ./dircurl -fsSL https://www.aishell.ai/repo/install.sh | bashL’installeur détermine la dernière version stable, télécharge le bundle correspondant à votre architecture et installe aish, aish-sandbox et aish-uninstall dans /usr/local/bin.
uv sync
uv run aish
# ou
python -m aishDésinstaller (conserver les fichiers de configuration) :
sudo aish-uninstallDésinstallation complète (supprime aussi les politiques de sécurité système) :
sudo aish-uninstall --purge-configOptionnel : nettoyer la configuration utilisateur (efface les clés modèle/API, etc.) :
rm -rf ~/.config/aish- Par défaut :
~/.config/aish/config.yaml(ou$XDG_CONFIG_HOME/aish/config.yamlsiXDG_CONFIG_HOMEest défini)
- Arguments de ligne de commande
- Variables d’environnement
- Fichier de configuration
# ~/.config/aish/config.yaml
model: openai/deepseek-chat
api_base: https://openrouter.ai/api/v1
api_key: your_api_keyOu via les variables d’environnement (plus adapté aux secrets) :
export AISH_MODEL="openai/deepseek-chat"
export AISH_API_BASE="https://openrouter.ai/api/v1"
export AISH_API_KEY="your_api_key"
Astuce : LiteLLM prend aussi en charge la lecture des variables d’environnement spécifiques aux fournisseurs (p. ex.
OPENAI_API_KEY,ANTHROPIC_API_KEY).
Configuration interactive (optionnelle) :
aish setupVérification de compatibilité avec les tool calls (confirme que le modèle/le canal sélectionné prend en charge les tool calls) :
aish check-tool-support --model openai/deepseek-chat --api-base https://openrouter.ai/api/v1 --api-key your_api_keyLangfuse (observabilité optionnelle) :
- Activer dans la configuration :
enable_langfuse: true- Définir les variables d’environnement :
export LANGFUSE_PUBLIC_KEY="..."
export LANGFUSE_SECRET_KEY="..."
export LANGFUSE_HOST="https://cloud.langfuse.com"aish check-langfuse exécute des vérifications lorsque check_langfuse.py existe à la racine du projet.
| Type | Exemple | Description |
|---|---|---|
| Commandes shell | ls -la, cd /path, git status |
Exécuter directement les commandes classiques |
| Requêtes IA | ;comment vérifier l’utilisation des ports, ;trouve les fichiers plus grands que 100M |
Entrer en mode IA avec le préfixe ;/; |
| Commandes intégrées | help, clear, exit, quit |
Commandes de contrôle intégrées du shell |
| Changement de modèle | /model gpt-4 |
Voir ou changer de modèle |
aish> ssh user@host
aish> top
aish> vim /etc/hostsAI Shell effectue l’évaluation de sécurité uniquement sur les commandes générées par l’IA et prêtes à être exécutées.
- LOW : Autorisé par défaut
- MEDIUM : Confirmation avant exécution
- HIGH : Bloqué par défaut
Les fichiers de politique sont résolus dans l’ordre suivant :
/etc/aish/security_policy.yaml(niveau système)~/.config/aish/security_policy.yaml(niveau utilisateur ; modèle généré automatiquement si absent)
La politique par défaut a l’exécution préalable en bac à sable désactivée. Pour l’activer :
- Définir dans la politique de sécurité :
global:
enable_sandbox: true- Démarrer le service de bac à sable privilégié (systemd) :
sudo systemctl enable --now aish-sandbox.socketSocket par défaut : /run/aish/sandbox.sock.
Lorsque le bac à sable est indisponible, le comportement suit sandbox_off_action (BLOCK/CONFIRM/ALLOW) dans la politique.
Les Skills étendent les connaissances et workflows de l’IA, avec chargement à chaud et priorité configurable.
Répertoires analysés par défaut et priorité :
~/.config/aish/skills/(ou$AISH_CONFIG_DIR/skills)~/.claude/skills/
Les versions packagées tentent de copier les skills système dans le répertoire utilisateur au premier lancement (p. ex. /usr/share/aish/skills).
Pour plus de détails : docs/skills-guide.md
Ce projet stocke localement les données suivantes (pour le dépannage et la traçabilité) :
- Logs : par défaut
~/.config/aish/logs/aish.log - Sessions/Historique : par défaut
~/.local/share/aish/sessions.db(SQLite) - Déport des grandes sorties : par défaut
~/.local/share/aish/offload/
Recommandations :
- Ne commitez pas de vraies clés API dans le dépôt ; préférez les variables d’environnement ou un gestionnaire de secrets.
- En production, combinez les politiques de sécurité pour limiter la portée des répertoires accessibles à l’IA.
- Guide de configuration :
CONFIGURATION.md - Démarrage rapide :
QUICKSTART.md - Utilisation des Skills :
docs/skills-guide.md - Mécanisme de correction de commandes :
docs/command-interaction-correction.md
| Lien | Description |
|---|---|
| Official Website | Page du projet et plus d’informations |
| GitHub Repository | Code source et suivi des issues |
| GitHub Issues | Rapports de bugs |
| GitHub Discussions | Discussions de la communauté |
| Discord | Rejoindre la communauté |
uv sync
uv run aish
uv run pytestVoir CONTRIBUTING.md pour les directives.
LICENSE (Apache 2.0)
