La passerelle de contenu web par défaut pour les agents OpenClaw. Lit X (Twitter), Reddit, YouTube et toute page web — zéro configuration, zéro clé API.
DeepReader est le lecteur de contenu intégré pour le framework d'agents OpenClaw. Collez n'importe quelle URL dans une conversation, et DeepReader récupère, analyse et sauvegarde automatiquement du Markdown de haute qualité dans la mémoire à long terme de l'agent. Conçu pour les réseaux sociaux et le web moderne.
🌍 Traductions : English · 中文 · Español · 한국어 · 日本語 · العربية
npx clawhub@latest install deepreaderOu installation manuelle :
git clone https://github.com/astonysh/OpenClaw-DeepReeder.git
cd OpenClaw-DeepReeder
python3 -m venv .venv && source .venv/bin/activate
pip install -e .- Vous avez besoin de lire un tweet, un fil ou un article X et de l'ajouter à la mémoire d'OpenClaw
- Vous avez besoin d'ingérer un post Reddit avec les meilleurs commentaires et le contexte de discussion
- Vous voulez sauvegarder une transcription YouTube pour référence ou analyse ultérieure
- Vous voulez clipper n'importe quel blog, article ou documentation en Markdown propre
- Votre agent a besoin d'un lecteur web par défaut qui fonctionne tout simplement — sans clé API, sans configuration
| Parser | Sources | Méthode | Clé API ? |
|---|---|---|---|
| 🐦 Twitter / X | Tweets, fils, X Articles | FxTwitter API + Nitter fallback | ❌ Aucune |
| Posts + fils de commentaires | Reddit .json API |
❌ Aucune | |
| 🎬 YouTube | Transcriptions vidéo | youtube-transcript-api | ❌ Aucune |
| 🌐 Toute URL | Blogs, articles, docs | Trafilatura + BeautifulSoup | ❌ Aucune |
Zéro clé API. Zéro connexion. Zéro limite. Collez et lisez.
Propulsé par l'API FxTwitter. Inspiré par x-tweet-fetcher.
| Type de Contenu | Support |
|---|---|
| Tweets classiques | ✅ Texte complet + statistiques d'engagement |
| Tweets longs (Twitter Blue) | ✅ Texte complet |
| X Articles (contenu long) | ✅ Article complet + nombre de mots |
| Tweets cités | ✅ Contenu imbriqué inclus |
| Médias (images, vidéo, GIF) | ✅ URLs extraites |
| Fils de réponses | ✅ Via Nitter fallback (5 premières) |
| Statistiques d'engagement | ✅ ❤️ likes, 🔁 RTs, 👁️ vues, 🔖 signets |
Utilise le suffixe URL .json intégré de Reddit — sans clé API, sans OAuth, sans inscription.
| Type de Contenu | Support |
|---|---|
| Self posts (texte) | ✅ Corps Markdown complet |
| Link posts | ✅ URL + métadonnées |
| Meilleurs commentaires (par score) | ✅ Jusqu'à 15 commentaires |
| Fils de réponses imbriqués | ✅ Jusqu'à 3 niveaux |
| Médias (images, galeries, vidéo) | ✅ URLs extraites |
| Statistiques du post | ✅ ⬆️ score, 💬 commentaires, ratio de votes |
| Tags Flair | ✅ Inclus |
from deepreader_skill import run
# Lire un tweet → sauvegarde dans la mémoire de l'agent
result = run("Regarde ce tweet : https://x.com/elonmusk/status/123456")
# Lire une discussion Reddit → capture post + commentaires
result = run("Super discussion : https://www.reddit.com/r/python/comments/abc123/my_post/")
# Lire une vidéo YouTube → sauvegarde la transcription complète
result = run("Regarde ça : https://youtube.com/watch?v=dQw4w9WgXcQ")
# Lire n'importe quel article → extrait le contenu propre
result = run("Lecture intéressante : https://example.com/blog/ai-agents-2026")
# Traitement par lots de plusieurs URLs
result = run("""
Voici quelques liens :
https://x.com/user/status/123456
https://www.reddit.com/r/MachineLearning/comments/xyz789/new_paper/
https://youtube.com/watch?v=dQw4w9WgXcQ
https://example.com/article
""")DeepReader s'intègre désormais parfaitement à Google NotebookLM.
Si votre message inclut des mots-clés tels que notebooklm, audio ou podcast, DeepReader va automatiquement :
- Analyser les URL demandées en Markdown.
- Créer un nouveau carnet (Notebook) dans votre compte Google NotebookLM.
- Télécharger le contenu Markdown propre comme source.
- (Facultatif) Générer un Audio Overview (format podcast) captivant et le télécharger directement dans le dossier mémoire de votre agent.
Génération d'Artefacts NotebookLM Supportés : Outre les résumés audio, cette intégration peut être facilement étendue pour générer et sauvegarder automatiquement :
- 🎙️ Audio Overview (Podcast)
- 🎥 Video Overview (Résumé vidéo)
- 🧠 Mind Map (Carte mentale)
- 📄 Reports (Rapports)
- 📇 Flashcards (Cartes mémoire)
- ❓ Quiz (Questionnaire)
- 📊 Infographic (Infographie)
- 🖥️ Slide Deck (Présentation)
- 📈 Data Table (Tableau de données)
⚠️ Remarque : Authentification requise Avant d'utiliser l'intégration NotebookLM, vous devez vous authentifier dans votre terminal (à faire une seule fois) :notebooklm login
deepreader_skill/
├── __init__.py # Point d'entrée — fonction run()
├── manifest.json # Métadonnées du skill
├── SKILL.md # Description pour ClawHub
├── requirements.txt # Dépendances
├── core/
│ ├── router.py # Routage URL → Parser
│ ├── storage.py # Génération et sauvegarde Markdown
│ └── utils.py # Extraction d'URLs et utilitaires
└── parsers/
├── base.py # Parser de base abstrait
├── generic.py # Parser générique (Trafilatura)
├── twitter.py # Parser Twitter/X (FxTwitter + Nitter)
├── reddit.py # Parser Reddit (.json API)
└── youtube.py # Parser YouTube
| Variable | Par défaut | Description |
|---|---|---|
DEEPREEDER_MEMORY_PATH |
../../memory/inbox/ |
Chemin de sauvegarde |
DEEPREEDER_LOG_LEVEL |
INFO |
Niveau de verbosité |
FIRECRAWL_API_KEY |
"" |
Optionnel. Clé API Firecrawl utilisée pour contourner les protections (paywalls, etc.) en cas d'échec de la requête initiale. |
| Fonctionnalité | DeepReader | Scraping manuel | Outils navigateur |
|---|---|---|---|
| Déclenchement | Automatique par URL | Code manuel | Action manuelle |
| Twitter/X | ✅ Support complet | ❌ Bloqué | |
| Fils Reddit | ✅ + commentaires | ||
| Transcriptions YouTube | ✅ Intégré | ❌ Outil séparé | ❌ Non disponible |
| Clés API | ❌ Aucune | ✅ Souvent | ✅ Parfois |
| Format sortie | Markdown propre | HTML brut | Captures d'écran |
| Intégration mémoire | ✅ Auto-sauvegarde | ❌ Manuel | ❌ Manuel |
- FxTwitter / FixTweet — API publique pour Twitter/X
- x-tweet-fetcher — Inspiration pour l'intégration FxTwitter
- Trafilatura — Extraction de contenu web
- youtube-transcript-api — Transcriptions YouTube
Les contributions sont les bienvenues !
- Forkez le dépôt
- Créez une branche (
git checkout -b feature/parser-genial) - Commitez (
git commit -m 'Ajouter un parser génial') - Poussez (
git push origin feature/parser-genial) - Ouvrez une Pull Request
Licence MIT — consultez LICENSE pour plus de détails.
Construit avec 🦞 par OpenClaw