MCPcopy
hub / github.com/Fosowl/agenticSeek

github.com/Fosowl/agenticSeek @main sqlite

repository ↗ · DeepWiki ↗
598 symbols 2,130 edges 67 files 339 documented · 57%
README

AgenticSeek : Une Alternative Privée et Locale à Manus

Agentic Seek Logo

English | 中文 | 繁體中文 | Français | 日本語 | Português (Brasil) | Español | Türkçe

Un assistant IA avec reconnaissance vocale qui est une alternative 100% locale à Manus AI, navigue de manière autonome sur le web, écrit du code et planifie des tâches tout en gardant toutes les données sur votre appareil. Conçu pour des modèles de raisonnement locaux, il fonctionne entièrement sur votre matériel, garantissant une confidentialité totale et zéro dépendance au cloud.

Visiter AgenticSeek License Discord Twitter GitHub stars

Pourquoi choisir AgenticSeek ?

  • 🔒 Totalement Local & Privé - Tout fonctionne sur votre machine, sans cloud, sans partage de données. Vos fichiers, conversations et recherches restent privés.

  • 🌐 Navigation Web Intelligente - AgenticSeek peut naviguer sur Internet de manière autonome : rechercher, lire, extraire des informations, remplir des formulaires web, le tout sans intervention manuelle.

  • 💻 Assistant de Programmation Autonome - Besoin de code ? Il peut écrire, déboguer et exécuter des programmes en Python, C, Go, Java et plus encore, sans supervision.

  • 🧠 Sélection Intelligente d'Agents - Vous demandez, il choisit automatiquement le meilleur agent pour la tâche. Comme avoir une équipe d'experts toujours disponible.

  • 📋 Planifie et Exécute des Tâches Complexes - De la planification de voyage aux projets complexes, il peut décomposer de grandes tâches en étapes et les compléter en utilisant plusieurs agents IA.

  • 🎙️ Prise en Charge Vocale - Voix claire, rapide et futuriste avec reconnaissance vocale, vous permettant de converser comme avec votre IA personnelle de film de science-fiction. (En développement)

Démo

Peux-tu rechercher le projet agenticSeek, apprendre quelles compétences sont nécessaires, puis ouvrir CV_candidates.zip et me dire lesquels correspondent le mieux au projet ?

https://github.com/user-attachments/assets/b8ca60e9-7b3b-4533-840e-08f9ac426316

Avertissement : Cette démonstration et tous les fichiers qui apparaissent (ex: CV_candidates.zip) sont entièrement fictifs. Nous ne sommes pas une entreprise, nous recherchons des contributeurs open source, pas des candidats.

🛠⚠️️ Travail Actif en Cours

🙏 Ce projet a commencé comme un projet parallèle et n'a ni feuille de route ni financement. Il a grandi bien au-delà des attentes en apparaissant dans GitHub Trending. Les contributions, commentaires et de la patience sont profondément appréciés.

Prérequis

Avant de commencer, assurez-vous d'avoir installé :

  • Git: Pour cloner le dépôt. Télécharger Git
  • Python 3.10.x: Python 3.10.x est fortement recommandé. D'autres versions peuvent causer des erreurs de dépendance. Télécharger Python 3.10 (sélectionnez la version 3.10.x).
  • Docker Engine & Docker Compose: Pour exécuter des services empaquetés comme SearxNG.
    • Installer Docker Desktop (inclut Docker Compose V2): Windows | Mac | Linux
    • Ou installer Docker Engine et Docker Compose séparément sur Linux: Docker Engine | Docker Compose (assurez-vous d'installer Compose V2, par exemple sudo apt-get install docker-compose-plugin).

1. Cloner le dépôt et configurer

git clone https://github.com/Fosowl/agenticSeek.git
cd agenticSeek
mv .env.example .env

2. Modifier le contenu du fichier .env

SEARXNG_BASE_URL="http://searxng:8080" # Si vous exécutez en mode CLI sur l'hôte, utilisez http://127.0.0.1:8080
REDIS_BASE_URL="redis://redis:6379/0"
WORK_DIR="/Users/mlg/Documents/workspace_for_ai"
OLLAMA_PORT="11434"
LM_STUDIO_PORT="1234"
CUSTOM_ADDITIONAL_LLM_PORT="11435"
OPENAI_API_KEY='optional'
DEEPSEEK_API_KEY='optional'
OPENROUTER_API_KEY='optional'
TOGETHER_API_KEY='optional'
GOOGLE_API_KEY='optional'
ANTHROPIC_API_KEY='optional'

Mettez à jour le fichier .env selon vos besoins :

  • SEARXNG_BASE_URL: Gardez inchangé sauf si vous exécutez en mode CLI sur l'hôte.

    Note sur SEARXNG_PORT vs SEARXNG_BASE_URL : SEARXNG_PORT change uniquement le port hôte sur lequel Docker se lie (par exemple, 8001). Le conteneur searxng écoute toujours en interne sur le port 8080. Par conséquent, lors d'une exécution complète dans Docker, SEARXNG_BASE_URL doit toujours rester http://searxng:8080 (l'adresse réseau Docker interne). Ne modifiez SEARXNG_BASE_URL que si vous exécutez le mode CLI sur l'hôte.

  • REDIS_BASE_URL: Gardez inchangé
  • WORK_DIR: Chemin vers le répertoire de travail local. AgenticSeek pourra lire et interagir avec ces fichiers.
  • OLLAMA_PORT: Numéro de port pour le service Ollama.
  • LM_STUDIO_PORT: Numéro de port pour le service LM Studio.
  • CUSTOM_ADDITIONAL_LLM_PORT: Port pour tout service LLM personnalisé supplémentaire.

Les clés API sont complètement optionnelles pour ceux qui choisissent d'exécuter LLM localement, ce qui est l'objectif principal de ce projet. Laissez-les vides si vous avez du matériel suffisant.

3. Démarrer Docker

Assurez-vous que Docker est installé et fonctionne sur votre système. Vous pouvez démarrer Docker avec les commandes suivantes :

  • Linux/macOS:
    Ouvrez un terminal et exécutez : sh sudo systemctl start docker Ou démarrez Docker Desktop depuis le menu des applications, s'il est installé.

  • Windows:
    Démarrez Docker Desktop depuis le menu Démarrer.

Vous pouvez vérifier si Docker fonctionne en exécutant :

docker info

Si vous voyez des informations sur votre installation Docker, cela fonctionne correctement.

Consultez la Liste des fournisseurs locaux ci-dessous pour un résumé.

Prochaine étape: Exécuter AgenticSeek localement

Si vous rencontrez des problèmes, consultez la section Dépannage. Si votre matériel ne peut pas exécuter LLM localement, consultez Configuration pour exécuter avec une API. Pour des explications détaillées de config.ini, consultez la section Configuration.


Configuration pour exécuter LLM localement sur votre machine

Exigences matérielles:

Pour exécuter LLM localement, vous aurez besoin de matériel suffisant. Au minimum, une GPU capable d'exécuter Magistral, Qwen ou Deepseek 14B est requise. Consultez la FAQ pour des recommandations détaillées de modèle/performance.

Configurez votre fournisseur local

Démarrez votre fournisseur local, par exemple avec ollama:

ollama serve

Consultez la liste des fournisseurs locaux pris en charge ci-dessous.

Mettre à jour config.ini

Changez le fichier config.ini pour définir provider_name sur un fournisseur pris en charge et provider_model sur un LLM pris en charge par votre fournisseur. Nous recommandons des modèles de raisonnement comme Magistral ou Deepseek.

Consultez la FAQ à la fin du README pour le matériel nécessaire.

[MAIN]
is_local = True # Que vous exécutiez localement ou avec un fournisseur distant.
provider_name = ollama # ou lm-studio, openai, etc.
provider_model = deepseek-r1:14b # choisissez un modèle compatible avec votre matériel
provider_server_address = 127.0.0.1:11434
agent_name = Jarvis # le nom de votre IA
recover_last_session = True # récupérer la session précédente
save_session = True # mémoriser la session actuelle
speak = False # texte vers parole
listen = False # parole vers texte, uniquement pour CLI, expérimental
jarvis_personality = False # utiliser une personnalité plus "Jarvis" (expérimental)
languages = en zh # Liste des langues, TTS utilisera la première de la liste par défaut
[BROWSER]
headless_browser = True # garder inchangé sauf si vous utilisez CLI sur l'hôte.
stealth_mode = True # Utilise selenium indétectable pour réduire la détection du navigateur

Avertissement:

  • Le format du fichier config.ini ne prend pas en charge les commentaires. Ne copiez et collez pas directement la configuration d'exemple, car les commentaires causeront des erreurs. Modifiez plutôt manuellement le fichier config.ini avec votre configuration souhaitée, sans commentaires.

  • NE définissez PAS provider_name sur openai si vous utilisez LM-studio pour exécuter LLM. Utilisez lm-studio.

  • Certains fournisseurs (ex: lm-studio) nécessitent http:// avant l'IP. Exemple: http://127.0.0.1:1234

Liste des fournisseurs locaux

Fournisseur Local ? Description
ollama Oui Exécute LLM localement facilement en utilisant ollama
lm-studio Oui Exécute LLM localement avec LM studio (définir provider_name = lm-studio)
openai Oui Utilise une API compatible avec openai (ex: serveur llama.cpp)

Prochaine étape: Démarrer les services et exécuter AgenticSeek

Si vous rencontrez des problèmes, consultez la section Dépannage. Si votre matériel ne peut pas exécuter LLM localement, consultez Configuration pour exécuter avec une API. Pour des explications détaillées de config.ini, consultez la section Configuration.

Configuration pour exécuter avec une API

Cette configuration utilise des fournisseurs de LLM externes basés sur le cloud. Vous devrez obtenir des clés API du service choisi.

1. Choisissez un fournisseur d'API et obtenez une clé API:

Consultez la Liste des fournisseurs d'API ci-dessous. Visitez leurs sites web pour vous inscrire et obtenir des clés API.

2. Définissez votre clé API comme variable d'environnement:

  • Linux/macOS: Ouvrez un terminal et utilisez la commande export. Il est préférable de l'ajouter au fichier de configuration de votre shell (ex: ~/.bashrc, ~/.zshrc) pour qu'elle soit persistante. sh export PROVIDER_API_KEY="your_api_key_here" # Remplacez PROVIDER_API_KEY par le nom de variable spécifique, ex: OPENAI_API_KEY, GOOGLE_API_KEY Exemple TogetherAI: sh export TOGETHER_API_KEY="xxxxxxxxxxxxxxxxxxxxxx"
  • Windows:

    • Invite de commandes (temporaire pour la session actuelle): cmd set PROVIDER_API_KEY=your_api_key_here
    • PowerShell (temporaire pour la session actuelle): powershell $env:PROVIDER_API_KEY="your_api_key_here"
    • Permanent: Recherchez "variables d'environnement" dans la barre de recherche Windows, cliquez sur "Modifier les variables d'environnement système", puis sur le bouton "Variables d'environnement...". Ajoutez une nouvelle variable utilisateur avec le nom approprié (ex: OPENAI_API_KEY) et votre clé comme valeur.

    (Pour plus de détails, consultez la FAQ: Comment configurer une clé API ?).

3. Mettez à jour config.ini:

[MAIN]
is_local = False
provider_name = openai # ou google, deepseek, togetherAI, huggingface
provider_model = gpt-3.5-turbo # ou gemini-1.5-flash, deepseek-chat, mistralai/Mixtral-8x7B-Instruct-v0.1, etc.
provider_server_address = # Lorsque is_local = False, généralement ignoré ou peut être laissé vide pour la plupart des API
# ... autres configurations ...

Avertissement: Assurez-vous qu'il n'y a pas d'espaces à la fin des valeurs dans config.

Liste des fournisseurs d'API

Fournisseur provider_name Local ? Description Lien de clé API (exemple)
OpenAI openai Non Utilise les modèles ChatGPT via l'API OpenAI. platform.openai.com/signup
Google Gemini google Non Utilise les modèles Google Gemini via Google AI Studio. aistudio.google.com/keys
Deepseek deepseek Non Utilise les modèles Deepseek via leur API. platform.deepseek.com
Hugging Face huggingface Non Utilise les modèles du Hugging Face Inference API. huggingface.co/settings/tokens
TogetherAI togetherAI Non Utilise divers modèles open source via l'API TogetherAI. api.together.ai/settings/api-keys

Note: * Nous ne recommandons pas d'utiliser gpt-4o ou d'autres modèles O

Core symbols most depended-on inside this repo

info
called by 98
sources/logger.py
pretty_print
called by 89
sources/utility.py
get
called by 51
sources/memory.py
warning
called by 37
sources/logger.py
error
called by 33
sources/logger.py
push
called by 31
sources/memory.py
log
called by 21
sources/logger.py
animate_thinking
called by 20
sources/utility.py

Shape

Method 455
Function 56
Class 54
Route 33

Languages

Python97%
TypeScript3%

Modules by API surface

sources/browser.py42 symbols
sources/interaction.py29 symbols
sources/agents/agent.py29 symbols
tests/test_minimax_provider.py25 symbols
sources/speech_to_text.py24 symbols
sources/agents/browser_agent.py23 symbols
tests/test_browser_agent_parsing.py22 symbols
sources/memory.py21 symbols
sources/llm_provider.py21 symbols
tests/test_tools_parsing.py19 symbols
tests/test_litellm_provider.py19 symbols
tests/test_safety.py15 symbols

Dependencies from manifests, versioned

@testing-library/dom10.4.0 · 1×
@testing-library/jest-dom6.6.3 · 1×
@testing-library/react16.3.0 · 1×
@testing-library/user-event13.5.0 · 1×
axios1.8.4 · 1×
react19.1.0 · 1×
react-dom19.1.0 · 1×
react-markdown10.1.0 · 1×
react-scripts5.0.1 · 1×
web-vitals2.1.4 · 1×
adaptive-classifier0.0.10 · 1×
aiofiles24.1.0 · 1×

For agents

$ claude mcp add agenticSeek \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact