Je faisais quelques rangements dans ma chambre, Spotify tournait en fond, et soudain ce son m'a traversé. Une montée de cordes, une basse lourde, une voix qui semblait porter le poids du monde entier.
Power. Kanye West. My Beautiful Dark Twisted Fantasy.
J'aimais profondément ce que j'entendais. Le flow, l'énergie, la construction du son. Mais les paroles m'échappaient complètement. Je ne comprenais pas ce que Kanye voulait dire, ce qu'il vivait, ce qu'il transmettait.
Je suis quelqu'un qui a besoin de comprendre ce qu'il fait, pourquoi il le fait. Pas juste ressentir, mais saisir. C'est cette façon de fonctionner qui m'a naturellement amené à chercher une solution. Et avec les cours du Batch de 6h30 , les agents étaient déjà bien présents dans ma tête, l'idée d'en construire un est venue toute seule.
Écouter de la musique sans en comprendre le message, c'est comme lire un livre en ne regardant que les illustrations ou images. La beauté est là, mais la profondeur manque.
L'idée qui a tout changé
Je me suis dit : et si chaque fois qu'un nouveau son commençait à jouer, quelqu'un me racontait son histoire ? Pas une traduction froide. Une vraie narration. Le contexte, l'époque, l'artiste, ce qu'il voulait dire, le tout en français, livré en quelques secondes.
TuneZine AI est né de cette frustration.
Un agent qui transforme chaque écoute en apprentissage. Chaque morceau devient une histoire. Chaque changement de son devient une leçon de culture, d'émotion, et d'humanité.
Et le meilleur ? 100% gratuit à construire.
Tchoutzify ou TuneZine AI ? Les deux, chef.
Ce projet a deux noms, et ce n'est pas un hasard.
Après avoir filtré pas mal d'options, j'ai gardé TuneZine AI : iTunes fusionné avec Tchoutzine. C'est le nom du système entier, l'architecture, ce que tu déploies.
Et Tchoutzify pour l'agent lui-même : Tchoutzine croisé avec Spotify. C'est lui qui écoute, qui analyse, qui te parle.
TuneZine AI est le cerveau. Tchoutzify est la voix.
Ce que fait TuneZine AI
Concrètement, voici ce qui se passe chaque fois que tu changes de morceau sur Spotify :
- Un workflow n8n détecte le changement en 5 secondes
- Google Gemini génère une narration culturelle et musicale
- Henri, une voix masculine naturelle Microsoft Edge TTS, pause la musique, lit la narration, reprend
- Le message complet arrive sur ton bot Telegram
Tu peux aussi envoyer "analyse" à ton bot pour une analyse immédiate.
Un exemple concret
Imagine que tu écoutes Children de Robert Miles. En quelques secondes, Henri te dit :
"Nous sommes en 1996, et Robert Miles, un jeune DJ italien de 24 ans, vient de créer quelque chose d'inhabituel dans le monde de la techno. Children n'est pas seulement une mélodie envoûtante, c'est une réponse directe aux accidents de voiture qui survenaient après les nuits en boîte, quand des gens conduisaient épuisés après des heures de musique intense. Le message profond de ce morceau est aussi simple que bouleversant : la musique peut sauver des vies."
C'est ça, TuneZine AI.
La playlist d'humeur : le second super-pouvoir
L'analyse de morceaux c'est bien. Mais il y a un second use case que j'utilise encore plus souvent.
Tu envoies ton humeur au bot, un mot suffit. "Fatigué", "Motivé", "Nostalgique", "Concentration". En quelques secondes, Tchoutzify crée une playlist adaptée directement dans Spotify et la lance.
Un soir à 5h22 du matin, j'envoie "Fatigué 😴". Le bot me génère une playlist "Matinée Douce" avec Weightless de Marconi Union, Clair de Lune de Debussy, River Flows in You de Yiruma... et elle se lance automatiquement dans Spotify.
C'est ce genre de moment qui te fait réaliser que tu as construit quelque chose d'utile pour toi-même. Et c'est exactement là que doit naître un projet.
La stack technique, tout gratuit
Ce qui m'a le plus surpris en buildant ça, c'est qu'on peut construire quelque chose d'aussi puissant sans dépenser un centime sur les outils IA.
| Composant | Technologie | Rôle | Coût |
|---|---|---|---|
| Orchestration | n8n self-hosted | Coordonne tous les workflows | Gratuit |
| Intelligence | Google Gemini 2.5 Flash | Génère les narrations culturelles | Gratuit |
| Voix | Microsoft Edge TTS | Lit l'analyse à voix haute | Gratuit |
| Notifications | Telegram Bot API | Envoie les analyses, reçoit les humeurs | Gratuit |
| Musique | Spotify Web API | Détecte les morceaux, crée les playlists | Gratuit* |
*J'ai d'abord fait tourner le projet sans Spotify Premium, et ça marche très bien. L'essai gratuit que tout le monde peut activer suffit largement pour démarrer.
Comment j'ai conçu ça
J'ai commencé par définir le design complet avant d'écrire une seule ligne de code. Un spec détaillé, une architecture pensée, des décisions documentées.
Puis j'ai codé le serveur Python d'abord, la partie locale qui gère la pause/TTS/reprise. Avec des tests unitaires pour chaque composant.
class TTSEngine:
def __init__(self, voice: str = 'fr-FR-HenriNeural'):
self.voice = voice # Henri. Pas de discussion.
pygame.mixer.init() # On réveille les haut-parleurs
def speak(self, text: str):
tmp_path = tempfile.mktemp(suffix='.mp3')
asyncio.run(self._generate(text, tmp_path)) # Gemini a parlé, Henri suit
pygame.mixer.music.load(tmp_path)
pygame.mixer.music.play()
while pygame.mixer.music.get_busy():
pygame.time.wait(100) # On attend Henri, on ne le rush pas
pygame.mixer.music.unload()
os.unlink(tmp_path) # Propre. Pas de trace. Comme un pro.
En résumé, tout Tchoutzify tient en une ligne :
tchoutzify = n8n + gemini + edge_tts + telegram + spotify # gratuit. vraiment.
Et voici ce que Tchoutzify "voit" en coulisses à chaque changement de morceau :
[05:21:03] 🎵 Track changed → "Power" by Kanye West
[05:21:04] 🧠 Sending to Gemini 2.5 Flash...
[05:21:06] ✅ Narration ready (312 tokens)
[05:21:06] 🔇 Spotify paused
[05:21:06] 🗣️ Henri speaking...
[05:21:41] ▶️ Spotify resumed
[05:21:41] 📩 Message sent to Telegram
Ensuite les 4 workflows n8n, construits node par node, testés en direct avec Spotify.
spotify_watcher — détecte chaque changement de morceau en 5 secondes
llm_narrator — envoie le titre à Gemini, récupère la narration
mood_engine — lit ton humeur sur Telegram, génère et lance la playlist
tts_runner — déclenche Henri, pause Spotify, reprend après la lecture
Les galères (et ce que j'ai appris)
Ce projet m'a appris plus que je ne l'espérais. Pas seulement sur la technique, sur la persévérance.
Spotify et ses restrictions. L'API Spotify en mode développement bloque certaines opérations. J'ai dû contourner avec le titre de la fenêtre Windows pour détecter les morceaux, et trouver des endpoints alternatifs pour créer des playlists.
Les rate limits de Groq. À force de tester, j'ai épuisé les 100k tokens journaliers gratuits. J'ai migré vers Gemini en cours de route, et finalement les deux coexistent.
n8n et les expressions. Le moteur d'expressions de n8n est puissant mais demande de la précision. Chaque $('NomDuNode').first().json doit correspondre exactement au nom du node sur le canvas.
Chaque blocage a appris quelque chose. C'est ça le vrai enseignement.
Pour la communauté
Si tu veux construire ton propre TuneZine AI, tout le code est disponible sur GitHub :
github.com/zoom-BT/Tchoutzify-Agent
Le README contient toutes les instructions d'installation. Tu auras besoin de :
- Python 3.10+
- Node.js (pour n8n)
- Un compte Spotify Developer (gratuit)
- Un bot Telegram (@BotFather)
- Une clé Gemini (gratuite sur aistudio.google.com)
Ce projet est un point de départ. Tu peux l'adapter, l'améliorer, lui ajouter de nouvelles langues, de nouveaux canaux de notification, de nouvelles sources musicales.
Le code appartient à la communauté. Forkez, améliorez, partagez.
Ce que j'ai vraiment appris
Au-delà de la technique, ce projet m'a appris quelque chose d'important :
Les meilleures idées naissent d'une frustration personnelle.
Je n'ai pas cherché à construire "un agent IA". J'ai cherché à résoudre mon problème, comprendre la musique que j'aime. L'agent est venu naturellement.
Si tu as une frustration récurrente dans ta vie, quelque chose qui t'empêche d'aller plus loin, c'est probablement là que se cache ton prochain projet.
Et tu n'as pas besoin d'un budget conséquent. Tu n'as pas besoin d'une équipe. Tu as besoin de curiosité, de persévérance, et des bons outils.
Les outils sont là. Gratuits. Puissants. Accessibles.
"La musique peut changer le monde parce qu'elle peut changer les gens." Bono
TuneZine AI ne change pas le monde. Mais il change la façon dont je vis la musique, et peut-être qu'il changera la tienne aussi.
Le code source est disponible sur GitHub. N'hésite pas à ouvrir une issue, proposer une amélioration, ou simplement me dire ce que tu en penses.
