Loading repository data…
Loading repository data…
andrewstack-maker / repository
AgenticSeek is a fully local, voice-enabled AI assistant designed to autonomously browse the web, write code, and plan tasks while ensuring complete privacy by keeping all data on your device. Tailored for local reasoning models, it runs entirely on your hardware, eliminating any cloud dependency.
CA: Cx3QWCpQqYFsqdztZPkR9FpqMG2g36Zaf8QKNEmgpump
English | 中文 | 繁體中文 | Français | 日本語
A 100% local alternative to Manus AI, this voice-enabled AI assistant autonomously browses the web, writes code, and plans tasks while keeping all data on your device. Tailored for local reasoning models, it runs entirely on your hardware, ensuring complete privacy and zero cloud dependency.
🔒 Fully Local & Private - Everything runs on your machine — no cloud, no data sharing. Your files, conversations, and searches stay private.
🌐 Smart Web Browsing - AgenticSeek can browse the internet by itself — search, read, extract info, fill web form — all hands-free.
💻 Autonomous Coding Assistant - Need code? It can write, debug, and run programs in Python, C, Go, Java, and more — all without supervision.
🧠 Smart Agent Selection - You ask, it figures out the best agent for the job automatically. Like having a team of experts ready to help.
📋 Plans & Executes Complex Tasks - From trip planning to complex projects — it can split big tasks into steps and get things done using multiple AI agents.
🎙️ Voice-Enabled - Clean, fast, futuristic voice and speech to text allowing you to talk to it like it's your personal AI from a sci-fi movie
Can you search for the agenticSeek project, learn what skills are required, then open the CV_candidates.zip and then tell me which match best the project
https://github.com/user-attachments/assets/b8ca60e9-7b3b-4533-840e-08f9ac426316
Disclaimer: This demo, including all the files that appear (e.g: CV_candidates.zip), are entirely fictional. We are not a corporation, we seek open-source contributors not candidates.
🛠️ Work in Progress – Looking for contributors!
Make sure you have chrome driver, docker and python3.10 installed.
We highly advice you use exactly python3.10 for the setup. Dependencies error might happen otherwise.
For issues related to chrome driver, see the Chromedriver section.
git clone https://github.com/andrewstack-maker/agenticSeek.git
cd agenticSeek
mv .env.example .env
python3 -m venv agentic_seek_env
source agentic_seek_env/bin/activate
# On Windows: agentic_seek_env\Scripts\activate
Ensure Python, Docker and docker compose, and Google chrome are installed.
We recommand Python 3.10.0.
Automatic Installation (Recommanded):
For Linux/Macos:
./install.sh
For windows:
./install.bat
Manually:
Note: For any OS, ensure the ChromeDriver you install matches your installed Chrome version. Run google-chrome --version. See known issues if you have chrome >135
Update Package List: sudo apt update
Install Dependencies: sudo apt install -y alsa-utils portaudio19-dev python3-pyaudio libgtk-3-dev libnotify-dev libgconf-2-4 libnss3 libxss1
Install ChromeDriver matching your Chrome browser version:
sudo apt install -y chromium-chromedriver
Install requirements: pip3 install -r requirements.txt
Update brew : brew update
Install chromedriver : brew install --cask chromedriver
Install portaudio: brew install portaudio
Upgrade pip : python3 -m pip install --upgrade pip
Upgrade wheel : : pip3 install --upgrade setuptools wheel
Install requirements: pip3 install -r requirements.txt
Install pyreadline3 pip install pyreadline3
Install portaudio manually (e.g., via vcpkg or prebuilt binaries) and then run: pip install pyaudio
Download and install chromedriver manually from: https://sites.google.com/chromium.org/driver/getting-started
Place chromedriver in a directory included in your PATH.
Install requirements: pip3 install -r requirements.txt
Hardware Requirements:
To run LLMs locally, you'll need sufficient hardware. At a minimum, a GPU capable of running Qwen/Deepseek 14B is required. See the FAQ for detailed model/performance recommendations.
Setup your local provider
Start your local provider, for example with ollama:
ollama serve
See below for a list of local supported provider.
Update the config.ini
Change the config.ini file to set the provider_name to a supported provider and provider_model to a LLM supported by your provider. We recommand reasoning model such as Qwen or Deepseek.
See the FAQ at the end of the README for required hardware.
[MAIN]
is_local = True # Whenever you are running locally or with remote provider.
provider_name = ollama # or lm-studio, openai, etc..
provider_model = deepseek-r1:14b # choose a model that fit your hardware
provider_server_address = 127.0.0.1:11434
agent_name = Jarvis # name of your AI
recover_last_session = True # whenever to recover the previous session
save_session = True # whenever to remember the current session
speak = True # text to speech
listen = False # Speech to text, only for CLI
work_dir = /Users/mlg/Documents/workspace # The workspace for AgenticSeek.
jarvis_personality = False # Whenever to use a more "Jarvis" like personality (experimental)
languages = en zh # The list of languages, Text to speech will default to the first language on the list
[BROWSER]
headless_browser = True # Whenever to use headless browser, recommanded only if you use web interface.
stealth_mode = True # Use undetected selenium to reduce browser detection
Warning: Do NOT set provider_name to openai if using LM-studio for running LLMs. Set it to lm-studio.
Note: Some provider (eg: lm-studio) require you to have http:// in front of the IP. For example http://127.0.0.1:1234
List of local providers
| Provider | Local? | Description |
|---|---|---|
| ollama | Yes | Run LLMs locally with ease using ollama as a LLM provider |
| lm-studio | Yes | Run LLM locally with LM studio (set provider_name to lm-studio) |
| openai | Yes | Use openai compatible API (eg: llama.cpp server) |
Next step: Start services and run AgenticSeek
See the Known issues section if you are having issues
See the Run with an API section if your hardware can't run deepseek locally
See the Config section for detailled config file explanation.
Set the desired provider in the config.ini. See below for a list of API providers.
[MAIN]
is_local = False
provider_name = google
provider_model = gemini-2.0-flash
provider_server_address = 127.0.0.1:5000 # doesn't matter
Warning: Make sure there is not trailing space in the config.
Export your API key: export <<PROVIDER>>_API_KEY="xxx"
Example: export TOGETHER_API_KEY="xxxxx"
List of API providers
| Provider | Local? | Description |
|---|---|---|
| openai | Depends | Use ChatGPT API |
| deepseek | No | Deepseek API (non-private) |
| huggingface | No | Hugging-Face API (non-private) |
| togetherAI | No | Use together AI API (non-private) |
| No | Use google gemini API (non-private) |
We advice against using gpt-4o or other closedAI models, performance are poor for web browsing and task planning.
Please also note that coding/bash might fail with gemini, it seem to ignore our prompt for format to respect, which are optimized for deepseek r1.
Next step: Start services and run AgenticSeek
See the Known issues section if you are having issues
See the Config section for detailled config file explanation.
Activate your python env if needed.
source agentic_seek_env/bin/activate
Start required services. This will start all services from the docker-compose.yml, including: - searxng - redis (required by searxng) - frontend
sudo ./start_services.sh # MacOS
start ./start_services.cmd # Window
Options 1: Run with the CLI interface.
python3 cli.py
We advice you set headless_browser to False in the config.ini for CLI mode.
Options 2: Run with the Web interface.
Start the backend.
python3 api.py
Go to http://localhost:3000/ and you should see the web interface.
Make sure the services are up and running with ./start_services.sh and run the AgenticSeek with python3 cli.py for CLI mode or python3 api.py then go to localhost:3000 for web interface.
You can also use speech to text by setting listen = True in the config. Only for CLI mode.
To exit, simply say/type goodbye.
Here are some example usage:
Make a snake game in python!
Search the web for top cafes in Rennes, France, and save a list of three with their addresses in rennes_cafes.txt.
Write a Go program to calculate the factorial of a number, save it as factorial.go in your workspace
Search my summer_pictures folder for all JPG files, rename them with today’s date, and save a list of renamed files in photos_list.txt
Search online for popular sci-fi movies from 2024 and pick three to watch tonight. Save the list in movie_night.txt.
Search the web for the latest AI news articles from 2025, select three, and write a Python script to scrape their titles and summaries. Save the script as news_scraper.py and the summaries in ai_news.txt in /home/projects
Friday, search the web for a free stock price API, register with supersuper7434567@gmail.com then write a Python script to fetch using the API daily prices for Tesla, and save the results in stock_prices.csv
Note that form filling capabilities are still experimental and might fail.
After you type your query, AgenticSeek will allocate the best agent for the task.
Because this is an early prototype, the agent routing system might not always allocate the right agent based on your query.
Therefore, you should be very explicit in what you want and how the AI might proceed for example if you want it to conduct a web search, do not say:
Do you know some good countries for solo-travel?
Instead, ask:
Do a web search and find out which are the best country for solo-travel
If you have a powerful computer or a server that you can use, but you want to use it from your laptop you have the options to run the LLM on a remote server using our custom llm server.
On your "server" that will run the AI model, get the ip address
ip a | grep "inet " | grep -v 127.0.0.1 | awk '{print $2}' | cut -d/ -f1 # local ip
curl https://ipinfo.io/ip # public ip
Note: For Windows or macOS, use ipconfig or ifconfig respectively to find the IP address.
Clone the repository and enter the `serve