Docs › Getting Started › Overview

Mins Bot

A floating desktop AI assistant. A swirling orb sits on your desktop and expands into a full chat panel with voice, vision, browser automation, OS control, and 180+ skills that actually do things instead of just talking.

stable v1.0.0 Java 17 · Spring Boot 3.5 · JavaFX 21 Windows · macOS · Linux 180+ skills
TL;DR. Runs locally. Fully offline once a local LLM (Ollama) and the Piper voice models are installed. Cloud LLM calls go direct from your machine to the provider you pick — Mins operates no server, ships no telemetry, and bundles no API keys.

# Download

Grab the latest build for your machine. The Windows package is a portable ZIP — unzip and run, no installer needed. macOS and Linux builds are coming soon.

Latest · v1.0
Download for Windows
x86_64 · Windows 10 and up · ~300 MB · portable .zip
Get .zip
macOS
Coming soon · .dmg for Apple Silicon and Intel
Linux
Coming soon · .deb · .AppImage
After downloading: unzip anywhere on your drive, then double-click MinsBot\MinsBot.exe. The bundled JRE means you don't need a separate Java install.

# Installation

Download the package for your OS and run it. The bundled JRE means no separate Java install is required.

OSFileSteps
Windows latest MinsBot-1.0-windows-latest.zip · always points to the latest build Unzip → run MinsBot\MinsBot.exe
macOS soonComing soon
Linux soonComing soon
soon
macOS
arm64 · x86_64
latest · .zip
Windows
portable · always the newest build
soon
Linux
x86_64 · arm64

Run from source

$ git clone <repo> $ cd mins-bot $ mvn clean package -DskipTests $ mvn spring-boot:run # app: http://localhost:8765

# First run

On first launch a setup wizard prompts for the three primary LLM keys (OpenAI, Anthropic, Gemini). The rest is configurable from the Setup tab. Keys are written to a local application-secrets.properties file at the project root — gitignored, never bundled into installers, and rejected at build time if a populated key is detected on the classpath.

Offline-only mode. Leave every cloud key blank and the agent runs entirely against a local Ollama model plus Piper voices. Nothing leaves the machine.

# Try saying

Type any of these into the floating chat panel:

System
  • kill port 8080
  • how many files in my downloads folder
  • take a screenshot
  • zip C:\projects\mins-bot to D:\backup.zip
  • auto-start yourself on login
Media & voice
  • play music by radiohead
  • narrate me a bedtime story for my dog
  • use a jarvis voice
Browser — with Chrome open
  • explain this page
  • read the article aloud
  • extract all rows from this table
Marketing
  • audit a landing page
  • market the app and publish to bluesky
Want the full list? See every command grouped by how complex it is and roughly how long it takes — browse the full skill list →

# Capabilities

The agent picks the right tool from 180+ built-in skills the moment you say what you want — no command names to remember.

01 · Chat & agent

  • Multiple model providers — OpenAI, Anthropic, Gemini, Groq, plus a local model for fully offline use
  • Persistent memory and chat transcripts across restarts
  • Autonomous mode that works on standing instructions while you're away

02 · Voice (offline-capable)

  • Local text-to-speech with 11+ curated voices, including a “Jarvis” preset
  • Speeds up for status updates, slows down for narration
  • Optional cloud voices (ElevenLabs, Fish Audio, OpenAI) when you want them

03 · Browser — "AI guide for any website"

  • Drives your Chrome — click, fill, navigate, extract — under your own profile
  • Explain the current page out loud
  • Read articles aloud in your chosen voice
  • Walk you step-by-step through how to use a site you've never seen
  • Pull every matching row off a page into a clean spreadsheet
Note. Browser sessions run under your own Chrome profile. No traffic is routed through Mins infrastructure.

04 · Marketing automation

  • One-shot growth flow — find trends, study competitors, draft ad copy, schedule posts, line up outreach
  • Building blocks for lead lists, gigs, content research, landing-page audits, proposals, hashtag suggestions, and more
  • Publishes for you — Bluesky, Mastodon, webhooks, email — only when you ask

05 · System / OS control

  • Kill a stuck app, free a busy port, quit any program, control any window
  • Find big files, clean up temp clutter, hunt down duplicates, tidy your disk
  • Network, VPN, firewall, Docker, Git, build status
  • Lock the screen, sleep, schedule a shutdown — or auto-start the bot on login

06 · Daily ops

  • Multi-monitor screenshots, media keys, play music from your library or online
  • Zip and unzip folders, bulk-rename files, watch a log live
  • Soothing audio for pets — cat TV, dog calming music, bedtime stories for the dog

07 · Deliverables

  • Generate full PDF, Word, and PowerPoint decks straight from chat — "create a deck about top EVs of 2025"
  • Charts, tables, and images embedded; markdown tables become real slide tables

08 · File & text ops

  • Find files by name, search inside files, compare two files, peek at the start/end of a file
  • See file size, line count, and stats; open anything in its default app
  • Copy, paste, and recall recent clipboard items

# Data & privacy

In one line. Your data never leaves your device. We operate no server. Nothing of yours enters any training pipeline.
  • Chat memory, transcripts, voice prefs, and bot data live in ~/mins_bot_data/ and ./memory/ — local only
  • Cloud LLM calls go directly to the providers you configure; leave them blank to run fully offline via Ollama
  • No telemetry. No outbound calls beyond the providers you've configured and skill-supplied URLs
  • Installers bundle no API keys. A build-time guard fails the build if a populated key is found on the classpath

# Spec table

Quick reference of what is retained, where, and by whom.

ItemValueLocationNotes
data.at_reston_device~/mins_bot_data/ · ./memory/No copy elsewhere
credentialslocal_fileapplication-secrets.propertiesGitignored · never bundled
training_usenullNever
telemetrynullNone emitted
model.callsdirectDevice → providerOr fully offline via Ollama
default.port8765localhostConfigurable in application.properties
license.appproprietaryEULASee LICENSE
license.skills_sdkMITStandalone skillsRedistributable
Edit on GitHub