Open Source · Desktop App

AI Accountable
Executive Assistant

Local session monitoring and accountability platform — tracks apps, browser domains, and facial expressions in real time, enforces focus policies, and delivers AI-powered productivity insights.

⊞ Download for Windows ⌘ Download for macOS 🐧 Download for Linux

Loading…

What it does

Everything you need to stay accountable

AEA bundles monitoring, enforcement, and AI insight into a single self-contained desktop app.

📊

Session Monitoring

Tracks active app, browser domain, and webcam feed simultaneously throughout every focus session.

🛡️

Policy Enforcement

Configurable allow/deny lists per session type — set up distinct "study mode" or "work mode" profiles.

📷

Facial Recognition

Detects emotions and presence via webcam using DeepFace, so absence and distraction are caught automatically.

🔔

Real-time Alerts

Native desktop notifications fire the moment a policy violation is detected — no lag, no missed events.

🤖

AI Query

Ask natural-language questions about your sessions. Powered by Groq (primary) with an Ollama offline fallback.

📈

Dashboard

Visualize session stats, focus score, timelines, and full historical data — all rendered locally in your browser.

How it works

Architecture

Four services communicate over HTTP. The Electron installer bundles them all — no manual setup required.

┌──────────────────────────────────────────────────┐
│        Dashboard  (React · port 5173 / 80)       │
└──────────────────────┬───────────────────────────┘
                       │ HTTP /api/*
                       ▼
┌──────────────────────────────────────────────────┐
│          API Server  (Node.js · port 12039)      │
│  sessions / apps / web / camera / AI query       │
└───────────┬──────────────────────────────────────┘
            │                     │ proxy
            ▼                     ▼
       MongoDB                Processing Engine
      (port 27017)            (Python · port 12040)
                              ├─ AppEngine
                              ├─ WebsiteEngine
                              └─ FacialEngine
                                       │
                               Groq API (primary)
                               Ollama  (fallback)
    
Get started

Installation

The Electron installer bundles MongoDB, the Node API server, and the Python processing engine — no external setup required.

1

Download the installer

Get AEA-Setup-1.0.0.exe from the button above or the GitHub Releases page.

2

Run the installer

Double-click the .exe and follow the setup wizard.

3

Launch AEA

Open AEA from the desktop shortcut. On first launch, the app copies the bundled default configuration to %APPDATA%\electron\.env and starts all services automatically.

1

Download the disk image

Get AEA-1.0.0.dmg from the button above or the GitHub Releases page.

2

Open and install

Double-click the .dmg, then drag AEA into your Applications folder.

3

Launch AEA

Open AEA from Applications. All bundled services start automatically on first launch.

1

Download the AppImage

Get AEA-1.0.0.AppImage from the button above or the GitHub Releases page.

2

Make it executable and run

chmod +x AEA-1.0.0.AppImage
./AEA-1.0.0.AppImage
Linux note: The AppImage bundles the Electron shell only. MongoDB, Node.js, and Python must be installed on the host system. Install xdotool for active window detection. Facial recognition requires a webcam.
Containers

Quick Start — Docker

Spin up the full stack in three commands. Requires Docker Desktop.

git clone https://github.com/UsaidMalik/AEA.git
cd AEA
docker compose up --build

On first run Docker builds all images, starts MongoDB and Ollama, and pulls qwen2.5:latest + nomic-embed-text (~4 GB).

ServiceURL
Dashboardhttp://localhost
API Serverhttp://localhost:12039
MongoDB Adminhttp://localhost:8081
Ollamahttp://localhost:11434
docker compose down      # stop, keep data volumes
docker compose down -v   # stop and wipe all data
API Reference

REST API

The Node.js API server runs on port 12039 and exposes the following endpoints.

Session Control

MethodEndpointDescription
POST/api/session/startStart a monitoring session
POST/api/session/stopStop the current session
GET/api/session/statusCheck if a session is active

Data

MethodEndpointDescription
GET/api/sessionsList all sessions with stats
GET/api/appsApplication events
GET/api/webWebsite visit events
GET/api/camera-eventsEmotion / presence events
GET/api/configsSaved session configurations
POST/api/configsCreate a new configuration
DELETE/api/configs/:idDelete a configuration

AI

MethodEndpointDescription
POST/api/queryNatural language query about your sessions
GET/api/rag/statusRAG index status
POST/api/rag/reindexRebuild the RAG index
Tech Stack

Built with

LayerTechnology
FrontendReact 19, TypeScript, Vite, Material-UI, Recharts
APINode.js 20, Express 5
ProcessingPython 3.11, Flask, OpenCV, DeepFace, TensorFlow
DatabaseMongoDB 7
LLM (primary)Groq API — llama-3.1-8b-instant (free tier)
LLM (fallback)Ollama — qwen2.5 + nomic-embed-text
DesktopElectron, electron-builder
ContainerDocker, Docker Compose, Nginx
CIGitHub Actions