Skip to content

skyiron/neuralagentAI

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NeuralAgent

NeuralAgent is your AI personal assistant that actually gets things done. It lives on your desktop, types, clicks, navigates the browser, fills out forms, sends emails, and performs tasks automatically using modern large language models all powered by a fast, extensible, and open architecture. NeuralAgent uses your computer both in the foreground and the background.

Real productivity. Not just conversation.


Star NeuralAgent

⭐️ If NeuralAgent inspires or helps you, give it a star!


In this demo, NeuralAgent was given the following prompt:

"Find me 5 trending GitHub repos, then write about them on Notepad and save it to my desktop!"

It took care of the rest!

Demo


🌐 Website & Community


🚀 Features

  • ✅ Desktop automation with pyautogui
  • ✅ Background automation (Windows Only For Now) via WSL (browser-only).
  • ✅ Supports Claude, GPT-4, Azure OpenAI, and Bedrock
  • ✅ Modular agents: Planner, Classifier, Suggestor, Title, and more
  • ✅ Multimodal (text + vision)
  • ✅ FastAPI backend + Electron + React frontend

🖥️ Project Structure

neuralagent/
├── backend/              # FastAPI + Postgres backend
├── desktop/              # ElectronJS desktop app
│   └── neuralagent-app/  # React frontend inside Electron
│   └── aiagent/          # Python code (pyautogui)
└── README.md

⚙️ Setup Instructions

🧪 Open two terminal windows - one for backend and one for desktop.


🐍 Backend Setup

  1. Create and activate a virtual environment (optional but recommended):
cd backend
python -m venv venv
# Activate:
source venv/bin/activate  # macOS/Linux
venv\Scripts\activate     # Windows
  1. Install requirements:
pip install -r requirements.txt
  1. Create a local Postgres database.

  2. Copy .env.example to .env and fill in:

DB_HOST=
DB_PORT=
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=

# Not Needed, Just keep empty
DB_CONNECTION_STRING=

JWT_ISS=NeuralAgentBackend
# Generate a Random String for the JWT_SECRET
JWT_SECRET=

# Keep Empty, for now!
REDIS_CONNECTION=

# Optional: For Bedrock
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
BEDROCK_REGION=us-west-2

# Optional: For Azure OpenAI
AZURE_OPENAI_ENDPOINT=
AZURE_OPENAI_API_KEY=
OPENAI_API_VERSION=2024-12-01-preview

# Optional: OpenAI/Anthropic
OPENAI_API_KEY=
ANTHROPIC_API_KEY=

# Model config per agent
CLASSIFIER_AGENT_MODEL_TYPE=openai|azure_openai|anthropic|bedrock
CLASSIFIER_AGENT_MODEL_ID=gpt-4.1

TITLE_AGENT_MODEL_TYPE=openai|azure_openai|anthropic|bedrock
TITLE_AGENT_MODEL_ID=gpt-4.1-nano

SUGGESTOR_AGENT_MODEL_TYPE=openai|azure_openai|anthropic|bedrock
SUGGESTOR_AGENT_MODEL_ID=gpt-4.1-mini

PLANNER_AGENT_MODEL_TYPE=openai|azure_openai|anthropic|bedrock
PLANNER_AGENT_MODEL_ID=gpt-4.1

COMPUTER_USE_AGENT_MODEL_TYPE=openai|azure_openai|anthropic|bedrock
COMPUTER_USE_AGENT_MODEL_ID=us.anthropic.claude-sonnet-4-20250514-v1:0

# Internal use only by Neural for optional screenshot logging during training (off by default).
# This is not used by the open-source app or contributors.
ENABLE_SCREENSHOT_LOGGING_FOR_TRAINING=false
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

# For Tracing, Keep false if you don't need langsmith tracing.
LANGCHAIN_TRACING_V2=false
LANGCHAIN_ENDPOINT=
LANGCHAIN_API_KEY=
LANGCHAIN_PROJECT=

# Optional for Google Login
GOOGLE_LOGIN_CLIENT_ID=
GOOGLE_LOGIN_CLIENT_SECRET=
GOOGLE_LOGIN_DESKTOP_REDIRECT_URI=http://127.0.0.1:36478
  1. Run database migrations:
alembic upgrade head
  1. Start the backend server:
uvicorn main:app --reload --host 0.0.0.0 --port 8000

🖥️ Frontend (Desktop + Electron) Setup

  1. Install dependencies in the Electron root:
cd desktop
npm install
  1. Navigate to the React app:
cd neuralagent-app
npm install
  1. Copy .env.example to .env and fill in:
REACT_APP_PROTOCOL=http
REACT_APP_WEBSOCKET_PROTOCOL=ws
REACT_APP_DNS=127.0.0.1:8000
REACT_APP_API_KEY=
  1. Go back to the desktop root:
cd ..
  1. Set up the local AI agent daemon (Python service):
cd aiagent
python -m venv venv
source venv/bin/activate  # Or use `venv\Scripts\activate` on Windows
pip install -r requirements.txt
deactivate
  1. Start the Electron desktop app:
cd ..
npm start

🤖 Agents & Model Providers

You can configure different model providers (OpenAI, Azure OpenAI, Anthropic, Bedrock) per agent in .env.
Agent types include:

  • PLANNER_AGENT
  • CLASSIFIER_AGENT
  • TITLE_AGENT
  • SUGGESTOR_AGENT
  • COMPUTER_USE_AGENT

📣 Contributing

We welcome pull requests and community contributions!


🛡️ License

MIT License.
Use at your own risk. This tool moves your mouse and types on your behalf, test responsibly!


💬 Questions?

Feel free to open an issue or start a discussion.

About

The AI Agent That Lives On Your Desktop And Uses It Like You Do!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 46.9%
  • JavaScript 44.8%
  • HTML 5.5%
  • Shell 2.3%
  • CSS 0.2%
  • Mako 0.2%
  • Dockerfile 0.1%