À propos du projet

Agent Reach (agent-reach) est une couche de capacités d'accès Internet destinée aux agents IA, dont l'objectif est de permettre à un agent d'accomplir en une seule instruction en langage naturel la sélection d'outils, l'installation, le diagnostic et la configuration du routage. Le projet est open source sous licence MIT et nécessite Python 3.10+. Idée centrale : Agent Reach n'encapsule pas directement la logique de lecture de chaque plateforme ; c'est l'agent qui appelle directement les outils en amont (comme yt-dlp, gh CLI, feedparser, Jina Reader, OpenCLI, twitter-cli, bili-cli, etc.). Agent Reach se charge de maintenir « le mode d'accès actuellement disponible pour chaque plateforme » et de générer SKILL.md à l'usage de l'agent. Chaque canal est conçu comme une liste ordonnée de backends « préféré + secours » ; lors de l'installation ou du diagnostic, la disponibilité est réellement testée, et si un backend prioritaire tombe en panne, le suivant est utilisé. L'utilisateur peut consulter via `agent-reach doctor` l'état de chaque canal et la route actuellement effective. Utilisation rapide : envoyer l'instruction d'installation (lire docs/install.md) à un agent capable d'exécuter des commandes shell (comme Claude Code, OpenClaw, Cursor, Windsurf) ; l'agent installera étape par étape le CLI agent-reach, vérifiera les dépendances de base telles que Node.js, gh CLI, mcporter, et, sous autorisation explicite, écrira dans le répertoire skills de l'agent. Sécurité par défaut : `agent-reach install` effectue uniquement une vérification en lecture seule de l'environnement, sans modifier automatiquement le système ni écrire de configuration ; ce n'est qu'avec `--system` explicitement passé que les dépendances système sont installées et la configuration écrite ; `--dry-run` permet en outre de prévisualiser toutes les opérations. La mise à jour peut également s'effectuer en une seule instruction. Les canaux déjà intégrés comprennent : lecture web (Jina Reader), extraction de sous-titres YouTube et recherche de vidéos (yt-dlp), lecture RSS/Atom (feedparser), recherche sémantique sur tout le web (Exa via mcporter), GitHub (gh CLI, incluant lecture de dépôts et recherche, avec prise en charge des dépôts privés et des Issue/PR après configuration), lecture et recherche de tweets Twitter/X, recherche et détails de vidéos Bilibili (bili-cli, etc.), recherche et lecture de posts Reddit, pages et Feed Facebook, utilisateurs et posts Instagram, recherche et lecture Xiaohongshu, profils et recherche d'emploi LinkedIn, V2EX, Xueqiu, podcasts Xiaoyuzhou (transcription Whisper), etc. Certains canaux sont utilisables sans configuration ; pour les canaux nécessitant une session connectée, l'agent guide l'utilisateur dans la configuration, par exemple en exportant manuellement les cookies via Cookie-Editor, ou en réutilisant la session de connexion existante du navigateur de bureau. Sécurité et confidentialité : les Cookie/Token sont conservés localement dans `~/.agent-reach/config.yaml` (permissions de fichier 600), ne sont ni téléversés ni transmis à l'extérieur ; le code et les outils dépendants sont open source et auditables. Le projet rappelle explicitement : les plateformes utilisant une connexion par Cookie présentent un risque de détection et de bannissement de compte ; il est recommandé d'utiliser un compte secondaire dédié plutôt que le compte principal. `agent-reach uninstall` permet d'effacer la configuration locale, les fichiers skill de chaque agent et la configuration MCP, avec prise en charge de `--dry-run` pour prévisualiser et de `--keep-config` pour conserver la configuration en vue d'une réinstallation. En termes de positionnement, Agent Reach est une « couche de capacités » et non un outil concret de plus : la lecture sous-jacente est effectuée par l'agent appelant directement les outils en amont, tandis qu'Agent Reach se charge de la sélection, de l'installation, du diagnostic et du routage, afin de faire face à l'évolution continue des interfaces des plateformes, des stratégies anti-scraping et des outils CLI.