Dev.to AI πŸ€– Ai πŸ‘ 0 πŸ“– 4 min read

ARC-AI: I built an autonomous, AI agent workspace Using MERN stack (RAG memory, live web research, WhatsApp automation, and more)

πŸ€– What is ARC-AI? ARC-AI (Autonomous Real-time Conversational Agent) is a full-stack, voice-activated AI assistant I've been building that goes beyond the typical "chatbot with a system prompt." It's a persistent, AI w

ARC-AI: I built an autonomous, AI agent workspace Using MERN stack (RAG memory, live web research, WhatsApp automation, and more)

πŸ€– What is ARC-AI?

ARC-AI (Autonomous Real-time Conversational Agent) is a full-stack, voice-activated AI assistant I've been building that goes beyond the typical "chatbot with a system prompt." It's a persistent, AI workspace with long-term memory, live web research, proactive scheduled routines, and the ability to actually act β€” sending WhatsApp messages, emails, and controlling its own UI.

Think of it as sitting somewhere between ChatGPT, Claude, and Cursor β€” but self-hosted, MERN-based, and fully yours.

πŸ”— Live demo: https://arc-ai-project.vercel.app/
πŸ”— Source code: https://github.com/Aashutosh31/arc-ai-project
πŸ“½οΈ Latest Video:https://www.instagram.com/aashutosh_bairagi.31/reel/DYmluEPxOhf/
πŸŽ₯ Full walkthrough: https://www.youtube.com/watch?v=jt7q8v5KsrU

ARC-AI

Why I built it

Most "AI assistants" are reactive β€” you ask, it answers, and it forgets everything the moment the tab closes. I wanted something that behaves more like an actual agent: it remembers what matters, researches things on its own, runs scheduled tasks in the background, and can reach across into the real world (browser, WhatsApp, email) instead of being boxed into a chat window.

That meant building real infrastructure, not just wiring up an LLM API call β€” a provider-agnostic runtime, workspace isolation, vector memory, sandboxed code execution, and production-grade lifecycle management.

🧠 Core Features

Infinite Memory (RAG)

ARC-AI doesn't just keep a chat log β€” it separates memory into four distinct layers to avoid contamination and keep retrieval sharp:

  1. Conversation History
  2. Working Context
  3. Semantic Memory
  4. Long-Term User Facts Retrieval runs through relevance scoring, recency weighting, and duplicate suppression using Pinecone vector search, so the assistant pulls in prioritized, low-noise context instead of dumping everything it knows into the prompt.

Command Pallete

πŸŽ₯ Live Vision & Multimodal Routing

ARC-AI can see. When you speak while your webcam is active, it captures the current frame and pipes it straight into the same real-time socket payload as your voice input, routing visual context to a vision-capable model (Pixtral) with guardrails to prevent silent attachment loss on fallback.

🌐 Live Web Research

Real-time DOM scraping (Cheerio) plus API-based search, weather, and news retrieval β€” so answers aren't capped at a training cutoff.

⏰ Proactive Routine Engine

Ask it in plain English and it turns that into a scheduled cron job β€” recurring reminders, deferred tasks, background routines β€” no manual cron syntax required.

πŸ’¬ WhatsApp Automation

Full autonomous message composition and delivery through an integrated WhatsApp workflow, so the agent can actually reach you (or others) outside the app.

πŸ–₯️ UI Actuation

The assistant can act on its own interface β€” switching themes, opening websites, playing media, copying to clipboard β€” driven directly by conversational context.

Isolated-WorkSpaces

πŸ—οΈ Under the Hood: Provider-Agnostic, Workspace-Isolated Runtime

The architecture went through several major evolutions to get here:

  • Provider-orchestrated runtime β€” an LLMRouter dynamically selects between Gemini (reasoning, multimodal, planning, long-context) and Mistral (fast, cheap, summarization, fallback), while preserving streaming continuity and tool-call consistency across providers.
  • Multi-workspace runtime β€” every workspace behaves as its own isolated environment. Conversations, memories, executions, and even Pinecone vector namespaces are fully scoped per workspace, with zero cross-workspace leakage.
  • Execution isolation β€” the TaskPlanner/TaskExecutor system keeps retries, recovery, and replanning strictly bound to their originating workspace.

- Realtime Socket.IO pipeline β€” voice or text input flows through ai:stt:final, gets routed for generation, streams token-by-token, and guarantees clean finalization even on interruption.

πŸ”₯ What's new in v1.0.0 (first stable release)

The latest release was all about turning ARC-AI from "cool demo" into something you can actually self-host in production:

Security hardening

  • Replaced the deprecated, vulnerable vm2 executor with QuickJS WebAssembly sandboxing (quickjs-emscripten) for any code the LLM executes β€” closing an RCE vulnerability.
  • GOOGLE_TOKEN_ENCRYPTION_KEY is now a mandatory env var β€” the server fails fast on startup if it's missing, instead of silently falling back to something insecure.
  • Replaced wildcard CORS with a dynamic origin resolver, fixing credentialed-request validation issues. Runtime reliability
  • An activity-aware idle reaper kills headless Chromium (WhatsApp) sessions after 5 minutes of inactivity, so it stops eating RAM/CPU.
  • Graceful shutdown on SIGINT/SIGTERM β€” HTTP servers, MongoDB connections, and Puppeteer/WhatsApp processes all tear down cleanly and in parallel.
  • Fixed race conditions between client destruction and recovery hooks. Onboarding & deployment
  • Docker Compose now uses portable relative bind mounts instead of hardcoded host paths.

- Full .env.example templates for both root and server, documenting every LLM routing/model/timeout option.

πŸ’» Tech Stack

Layer Technology
Frontend React, Vite, Tailwind CSS, Web Speech API
Backend Node.js, Express.js, Socket.IO, node-cron
Database MongoDB Atlas, Pinecone (vector RAG)
AI / ML Gemini, Mistral AI, Pixtral
Infra Docker Compose, Google Apps Script (webhook email)

βš™οΈ Try it yourself

git clone https://github.com/Aashutosh31/arc-ai-project.git
cd arc-ai-project/server
npm install
cp .env.example .env   # fill in your keys β€” GOOGLE_TOKEN_ENCRYPTION_KEY is mandatory
npm run dev

Or spin it up with Docker:

cd server
cp .env.example .env
docker compose up --build

Full setup instructions (frontend, Docker, persistent WhatsApp sessions) are in the README.

What's next

I'm continuing to harden the multi-workspace runtime and expand the autonomous tool ecosystem. If you try it out, run into issues, or have ideas, I'd genuinely love the feedback β€” issues and PRs are open on the repo.

If this is interesting to you, a ⭐ on the repo goes a long way.

πŸ”— GitHub: github.com/Aashutosh31
πŸ”— LinkedIn: https://in.linkedin.com/in/aashutosh-bairagi-559aa530b
🐦 X/Twitter: @Aashutosh_dev31
🌐 Portfolio: aashutoshbairagi.vercel.app

πŸ“° Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes β€” full credit and traffic to the original publisher.