agenticSeek README

The project's README from github.com/Fosowl/agenticSeek. As one markdown file: README.md.

AgenticSeek: Private, Local Manus Alternative.

Agentic Seek Logo

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

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.

Visit AgenticSeek License Discord Twitter GitHub stars

Why AgenticSeek ?

Demo

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.

🙏 This project started as a side-project and has zero roadmap and zero funding. It's grown way beyond what I expected by ending in GitHub Trending. Contributions, feedback, and patience are deeply appreciated.

Prerequisites

Before you begin, ensure you have the following software installed:

1. Clone the repository and setup

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

2. Change the .env file content

SEARXNG_BASE_URL="http://searxng:8080" # value depends on where the backend runs — see the SEARXNG note below
SEARXNG_PORT=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'

Update the .env file with your own values as needed:

How you run AgenticSeek SEARXNG_BASE_URL
Web interface — backend in Docker (./start_services.sh full) http://searxng:8080 — always port 8080, even if you changed SEARXNG_PORT
CLI mode — backend on host (uv run cli.py) http://localhost:8080 — if you changed SEARXNG_PORT, use that port instead (e.g. http://localhost:8001). http://searxng:... does not work here: that hostname only exists inside Docker

To check SearXNG in a browser, always use the host port: http://localhost:<SEARXNG_PORT>. After changing .env, restart the backend — the file is only read at process start.

API Key are totally optional for user who choose to run LLM locally. Which is the primary purpose of this project. Leave empty if you have sufficient hardware

3. Start Docker

Make sure Docker is installed and running on your system. You can start Docker using the following commands:

You can verify Docker is running by executing:

docker info

If you see information about your Docker installation, it is running correctly.

See the table of Local Providers below for a summary.

Next step: Run AgenticSeek locally

See the Troubleshooting section if you are having issues. If your hardware can't run LLMs locally, see Setup to run with an API. For detailed config.ini explanations, see Config Section.


Setup for running LLM locally on your machine

Hardware Requirements:

To run LLMs locally, you'll need sufficient hardware. At a minimum, a GPU capable of running Magistral, Qwen or Deepseek 14B is required. See the FAQ for detailed model/performance recommendations.

Setup your local provider

Start your local provider (for example with ollama):

Unless you wish to to run AgenticSeek on host (CLI mode), export or set the provider listen address:

export OLLAMA_HOST=0.0.0.0:11434

Then, start you provider:

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 recommend reasoning model such as Magistral 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 = False # text to speech
listen = False # Speech to text, only for CLI, experimental
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 # leave unchanged unless using CLI on host.
stealth_mode = True # Use undetected selenium to reduce browser detection

Warning:

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 Troubleshooting section if you are having issues. If your hardware can't run LLMs locally, see Setup to run with an API. For detailed config.ini explanations, see Config Section.

Setup to run with an API

This setup uses external, cloud-based LLM providers. You'll need an API key from your chosen service.

1. Choose an API Provider and Get an API Key:

Refer to the List of API Providers below. Visit their websites to sign up and obtain an API key.

2. Set Your API Key as an Environment Variable:

3. Update config.ini:

[MAIN]
is_local = False
provider_name = openai # Or google, deepseek, togetherAI, huggingface
provider_model = gpt-3.5-turbo # Or gemini-1.5-flash, deepseek-chat, mistralai/Mixtral-8x7B-Instruct-v0.1 etc.
provider_server_address = # Typically ignored or can be left blank when is_local = False for most APIs
# ... other settings ...

Warning: Make sure there are no trailing spaces in the config.ini values.

List of API Providers

Provider provider_name Local? Description API Key Link (Examples)
OpenAI openai No Use ChatGPT models via OpenAI's API. platform.openai.com/signup
Google Gemini google No Use Google Gemini models via Google AI Studio. aistudio.google.com/keys
Deepseek deepseek No Use Deepseek models via their API. platform.deepseek.com
Hugging Face huggingface No Use models from Hugging Face Inference API. huggingface.co/settings/tokens
TogetherAI togetherAI No Use various open-source models via TogetherAI API. api.together.ai/settings/api-keys
OpenRouter openrouter No Use OpenRouter Models https://openrouter.ai/
MiniMax minimax No Use MiniMax models (e.g., MiniMax-M3, MiniMax-M2.7). platform.minimax.io

Note:

Next step: Start services and run AgenticSeek

See the Known issues section if you are having issues

See the Config section for detailed config file explanation.


Start services and Run

By default AgenticSeek is run fully in docker.

Option 1: Run in Docker, use web interface:

Start required services. This will start all services from the docker-compose.yml, including: - searxng - redis (required by searxng) - frontend - backend (if using full when using the web interface)

./start_services.sh full # MacOS
start start_services.cmd full # Window

Warning: This step will download and load all Docker images, which may take up to 30 minutes. After starting the services, please wait until the backend service is fully running (you should see backend: "GET /health HTTP/1.1" 200 OK in the log) before sending any messages. The backend services might take 5 minute to start on first run.

Go to http://localhost:3000/ and you should see the web interface.

Troubleshooting service start: If these scripts fail, ensure Docker Engine is running and Docker Compose (V2, docker compose) is correctly installed. Check the output in the terminal for error messages. See FAQ: Help! I get an error when running AgenticSeek or its scripts.

Option 2: CLI mode:

To run with CLI interface you would have to install package on host:

./install.sh
./install.bat # windows

Then you must change SEARXNG_BASE_URL in your .env file (not config.ini) to the host-mapped address, because in CLI mode the backend runs on your machine, outside Docker:

SEARXNG_BASE_URL="http://localhost:8080"

If you changed SEARXNG_PORT in .env, use that port here instead (e.g. http://localhost:8001). Restart cli.py after editing .env — the value is read at startup.

Start required services. This will start some services from the docker-compose.yml, including: - searxng - redis (required by searxng) - frontend

./start_services.sh # MacOS
start start_services.cmd # Window

Run: uv run: uv run python -m ensurepip to ensure uv has pip enabled.

Use the CLI: uv run cli.py


Usage

Make sure the services are up and running with ./start_services.sh full and 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 [email protected] 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


Setup to run the LLM on your own server

If you have a powerful computer or a server that you can use, but you want to use it from your laptop, you can run the LLM on the remote machine with a standard LLM server (Ollama, or any OpenAI-compatible server such as llama.cpp's llama-server) and point AgenticSeek at it over the network. No AgenticSeek-specific code needs to run on the 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.

Option 1: Ollama (recommended)

On the server, install Ollama, start it so it accepts connections from your network, and pull your model:

OLLAMA_HOST=0.0.0.0 ollama serve
ollama pull deepseek-r1:14b

On your personal computer, change config.ini:

[MAIN]
is_local = False
provider_name = ollama
provider_model = deepseek-r1:14b
provider_server_address = x.x.x.x:11434

is_local must be False here: with True, AgenticSeek looks for Ollama on the machine it runs on and ignores the address.

Option 2: llama.cpp or any other OpenAI-compatible server

On the server, start llama.cpp's llama-server with your GGUF model (LM-Studio, vLLM or any other server exposing an OpenAI-compatible API works the same way):

llama-server -m your-model.gguf --host 0.0.0.0 --port 8080

On your personal computer, use the lm-studio provider — it speaks the plain OpenAI-compatible /v1/chat/completions API without requiring an API key:

[MAIN]
is_local = False
provider_name = lm-studio
provider_model = your-model
provider_server_address = http://x.x.x.x:8080

**Legacy: custom A

agenticSeek (Fosowl/agenticSeek)

Searching Database…

Что это такое?AgenticSeek — это полностью локальная альтернатива Manus AI с поддержкой голоса: автономный агент, который умеет искать в интернете, писать код и планировать задачи, при этом все данные остаются на вашем железе.
Это веб-приложение, утилита для командной строки или библиотека, которую я подключаю к своему коду?Это самостоятельное приложение, которое вы запускаете на своём компьютере: по умолчанию — набор контейнеров Docker с веб-интерфейсом на localhost:3000, а есть ещё альтернативный режим командной строки, который запускается через uv run cli.py.
Как его запустить?Установите Git, Python 3.10.x и Docker, склонируйте репозиторий, обновите файл .env, затем запустите ./startservices.sh full и откройте localhost:3000, когда бэкенд сообщит о готовности; для режима командной строки используйте uv run cli.py.
Что должно быть установлено, чтобы всё заработало?Git, Python 3.10.x (другие версии могут вызвать ошибки зависимостей) и Docker с Compose V2. Для локальных моделей также нужен провайдер, например Ollama или LM Studio; API-ключи необязательны.
Есть ли подвох с железом при полностью локальной работе?Да: нужна видеокарта, способная запускать модели класса 14B, такие как Magistral, Qwen или Deepseek, иначе придётся перейти на вариант с API. Первое скачивание Docker-образа может занять до 30 минут, а заполнение веб-форм пока работает в экспериментальном режиме.
Мои данные куда-то уходят с компьютера?В локальном режиме — нет: файлы, переписка и поисковые запросы остаются на вашем устройстве, без какого-либо участия облака. Данные покидают компьютер, только если вы сами настроите облачный API-провайдер.
Что он вообще умеет, когда уже запущен?Он ищет и читает страницы в интернете, заполняет формы, а также пишет, отлаживает и запускает программы на Python, C, Go, Java и других языках. Большие задачи он разбивает на шаги, которые выполняют несколько агентов — например, сделать игру «змейка», собрать заголовки новостей про ИИ в скрипт или переименовать пачку фотографий по сегодняшней дате.
Какие локальные провайдеры могут обслуживать модель и какие модели рекомендуют?Ollama, LM Studio (поставьте providername в значение lm-studio, а не openai) или любой API, совместимый с OpenAI, например сервер llama.cpp. В README рекомендуются модели с рассуждениями, такие как Magistral или Deepseek, и предупреждают: комментарии в config.ini ломают разбор конфига.
А если мой компьютер слишком слабый для локальных моделей?Используйте вариант с API: OpenAI, Google Gemini, Deepseek, Hugging Face, TogetherAI, OpenRouter или MiniMax, а ключ задайте как переменную окружения. Промпты настроены под модели вроде Deepseek, поэтому gpt-4o не рекомендуется для поиска в интернете и планирования.
Голосовой режим работает?Есть распознавание речи, так что с ним можно разговаривать: включите listen = True в config.ini (только в режиме командной строки) и завершайте работу словом goodbye. В README голосовая функция помечена как находящаяся в разработке.
Creator
Fosowl
Size
26.8 MB
Stars
27.5K
Updated
CommitOct 15
Age
1y
Commits · 90 Days