Vibeleaderboard
Index / agent
Visit github.com
Category
AI Agents
Rank
No. 1810Tools index

Previous survey · No. 1744 ·

Pricing
Open Source
Type
AGENT
Use case
Workflow Automation
Interfaces
Desktop
GitHub
3 stars
Latest release
v26.10.25
Date

About

Emailclaw is a local-first AI agent that treats email as its primary interface, using the subject line of each email thread to create an isolated project/task boundary with its own sandboxed workspace. It supports scheduled automation, tool/MCP/plugin composition, and high-risk action approval via email confirmation codes.

What it does

A desktop and headless Java program that turns a mailbox into the control surface for an AI assistant. It polls an inbox over IMAP, and every fresh subject line opens a separate task with its own folder, conversation history and reply thread. The first message only registers the task and returns an ID; work starts when you reply in that thread. Results, attachments and requests for permission come back by mail through SMTP. You bring the model: any service reachable with a base URL, key and model name.

Why it's ranked here

The idea is specific and well carried through. Mail threads map one to one onto tasks, risky tool calls pause for a four-digit code you reply with, and silence, a wrong code or a reply from another thread all count as refusal. It ships as installers for Windows, macOS and two Linux formats from a tagged release pipeline, under MIT. Against that, the release build skips tests, the hosted relay carries no service guarantee, and the loosest permission mode is one setting away. A thoughtful design worth trying on a spare mailbox, not yet something to trust with a primary account.

What's good

The approval flow is the strongest part. A pending approval shows the tool, a parameter summary, the risk level and a countdown, and the reply code is intercepted before it reaches the model, so it never pollutes the task context. A failed delivery of the approval message rejects the call rather than letting it through. Sender allowlisting limits who can start work. The same startup code powers the desktop app and a systemd background service, and both share one data folder, so moving to a server needs no config migration. Plugins dropped into a folder are picked up within about five seconds without a restart.

Tradeoffs

Building from source needs JDK 25, and the tagged release job packages with tests skipped even though test libraries are declared. The optional hosted mail relay is offered with no quality guarantee, can change terms without notice, deletes messages after 15 minutes and drops accounts idle for 100 days. Attachments are capped at a single 10 MB file per message. Permission modes run up to a full bypass, and the sample coding plugin accepts arbitrary extra flags, including one that disables its own sandbox. The local API admits unauthenticated calls from the loopback addresses by default.

How to use it well

Give it a dedicated mailbox with an app password, never your main account, and keep the allowed senders list to addresses you control. Start agents in the read-only or routine-confirmation mode, as the manual advises, and test the model connection in the desktop chat before wiring up mail. It suits people who already live in their inbox and want recurring research digests or document tasks kept apart by thread. It is not a team inbox tool, and it does not replace a coding agent: the coding plugins only shell out to external command-line tools.

Technical notes+

Launcher.java routes --service or -s to ServiceApp.java, otherwise to the JavaFX FxApp; both call ApplicationBootstrap.initialize(), a hand-wired composition root that builds SQLite repositories (sessions, token usage, cron history, memory) and every service with constructor injection. ServiceApp.java blocks the main thread and registers a shutdown hook for SIGTERM. emailclaw/pom.xml targets maven.compiler.release 25 and pulls agentscope and agentscope-harness 2.0.3, jakarta.mail 2.0.5, sqlite-jdbc, Playwright 1.61.0 and JavaFX 25; jpackage produces the installers. SecuritySettings.java defaults allowNoAuthHosts to 127.0.0.1 and ::1; ToolGuardSettings.java has the guard enabled by default with guardedTools, deniedTools and shellEvasionChecks. .github/workflows/release.yml runs mvn package -DskipTests on ubuntu, macos and windows runners.

Observed

License
MIT (LICENSE)
Language
Java, built with Maven, compiler release 25 (emailclaw/pom.xml)
Agent framework
AgentScope Java with its harness module (emailclaw/pom.xml)
Packaging
Windows .exe, macOS .dmg, Linux .deb and .tar.gz built by jpackage (.github/workflows/release.yml)
Interfaces
JavaFX desktop app plus headless service mode via --service flag (emailclaw/src/main/java/ai/emailclaw/emailclaw/Launcher.java)
Mail transport
IMAP polling, minimum 5 second interval, SMTP replies (docs/Emailclaw-User-Manual.md)
Extension surface
Java SPI and external JAR plugins for tools, providers, hooks, channels and UI (plugin-samples/PLUGIN-DEVELOPER-GUIDE.md)
Release build
Packages with -DskipTests (.github/workflows/release.yml)
Unauthenticated API hosts
Loopback addresses 127.0.0.1 and ::1 by default (emailclaw/src/main/java/ai/emailclaw/emailclaw/model/SecuritySettings.java)

Read from README.md, LICENSE, emailclaw/pom.xml, docs/Emailclaw-User-Manual.md, plugin-samples/PLUGIN-DEVELOPER-GUIDE.md, emailclaw/src/main/java/ai/emailclaw/emailclaw/Launcher.java, emailclaw/src/main/java/ai/emailclaw/emailclaw/ApplicationBootstrap.java, emailclaw/src/main/java/ai/emailclaw/emailclaw/ServiceApp.java, emailclaw/src/main/java/ai/emailclaw/emailclaw/model/SecuritySettings.java, emailclaw/src/main/java/ai/emailclaw/emailclaw/model/ToolGuardSettings.java, emailclaw/src/main/java/ai/emailclaw/emailclaw/market/MarketProvider.java, plugin-samples/invokeCodexCli/README.md, .github/workflows/release.yml.

What it can do

  • Create an isolated sandboxed project workspace for each email subject thread

    Email subject line → Isolated project workspace

  • Schedule recurring automated tasks via email

    Email instructions → Scheduled automated task

  • Require email confirmation codes to approve high-risk actions

    Confirmation code reply → Approved action execution

  • Process email messages as commands to an AI agent

    Email message → Agent response/action

Tags

email-agentai-agentsautomationlocal-firstjavamcptask-automationdesktop-app

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.