Nanocode : Un Assistant IA Python Minuscule, Sans Dépendance

Nanocode – L'assistant IA Python minuscule, sans dépendance

Dans un monde où les outils IA sont souvent livrés sous forme de gros paquets ou nécessitent des configurations complexes, Nanocode se démarque comme une solution élégante et minimaliste. C’est un script Python en un seul fichier (≈250 lignes) qui recrée une boucle d’agents à la Claude Code, propose une poignée d’utilitaires puissants pour fichiers et shell, et fonctionne sans dépendances externes au-delà d'un environnement Python standard.

Pourquoi Nanocode ? – Le problème qu'il résout

  • Rapidité d’itération : Ajoutez un nouvel outil ou ajustez le comportement en millisecondes sans réinstaller de bibliothèque.
  • Portabilité : Déposez le fichier où vous voulez, exécutez-le sur n’importe quel ordinateur avec Python 3.8+.
  • Transparence : Contrairement aux solutions en boîte noire, tout le code est visible, idéal pour l’apprentissage ou le débogage.
  • Aucune librairie externe : Pas besoin de pip install de gros paquets, ce qui le rend parfait pour les environnements CI ou les appareils à mémoire limitée.

Fonctionnalités clés en bref

Fonctionnalité Description
Boucle d'agents Cycle prompt‑réponse continu avec appel d’outils
Outils intégrés read, write, edit, glob, grep, et bash – toutes les actions natives que votre agent peut appeler
Sortie colorée Visualisation riche du terminal des invites, réponses et résultats d’outils
Flexibilité du modèle Fonctionne avec Claude d’Anthropic « out‑of‑the‑box » ; passez à n’importe quel modèle OpenRouter simplement via des variables d’environnement
Raccourcis de commande /c pour effacer l’historique, /q ou exit pour quitter

Démarrage rapide

# Clonez le dépôt ou téléchargez le fichier unique `nanocode.py`
git clone https://github.com/1rgs/nanocode.git
cd nanocode

# Définissez votre clé API Anthropic
export ANTHROPIC_API_KEY="votre-clé"

# Ou, définissez une clé OpenRouter pour une liste de modèles plus large
export OPENROUTER_API_KEY="votre-clé"

# Facultatif – choisissez un modèle spécifique (le défaut est Claude 3.5 Sonnet)
export MODEL="openai/gpt-5.2"

# Lancez-le
python nanocode.py

Une fois dans le REPL, vous pouvez commencer à demander à l’IA de lire des fichiers, les éditer, ou même exécuter des commandes shell ! Par exemple :

> what files are here?

─────────────────────────────────
❯ glob(**/*.py)

L’outil répond, appelle la fonction glob, et le script affiche les noms de fichiers correspondants — illustrant comment l’agent invoque directement les utilitaires.

Étendre Nanocode

Ajouter un nouvel outil personnalisé est simple : 1. Définissez une fonction qui réalise l’action désirée. Par exemple, un outil compress. 2. Enregistrez‑le dans le dictionnaire tool_registry. 3. L’agent pourra désormais appeler compress par son nom.

# Exemple : un outil de compression simple
from zipfile import ZipFile

def compress(src, dst):
    with ZipFile(dst, 'w') as z:
        for root, _, files in os.walk(src):
            for f in files:
                z.write(os.path.join(root, f), arcname=f)

# Enregistrer
tool_registry['compress'] = compress

Après cela, vous pouvez demander à l’agent :

> create a zip of the src folder

et il exécutera automatiquement votre outil compress.

Communauté et contributions

Le projet maintient une base de code très simple, ce qui en fait un terrain de jeu idéal pour les contributeurs. N’hésitez pas à : - Ouvrir une issue pour signaler un bug ou demander une fonctionnalité. - Forker et soumettre une pull request avec un nouvel outil ou une amélioration de performance. - Ajouter de la documentation ou mettre à jour le README avec vos propres exemples.

Avec plus de 1 500 étoiles et un intérêt croissant pour les utilitaires AI minimalistes, Nanocode constitue une base solide pour la prochaine vague d’assistants AI légers.

Dernières réflexions

Nanocode montre que l’interaction IA puissante ne nécessite pas de cadres monolithiques. Que vous prototypez un pipeline de données personnalisé, testiez un assistant IA embarqué, ou cherchiez simplement à voir comment fonctionnent les boucles Claude, ce petit script réduit le bruit. Prenez-le, lancez‑le, et laissez votre imagination – et votre terminal – faire le reste.

Original Article: Voir l’original

Partager cet article