Skip to content

Repository files navigation

Lemontea Desktop

English | 简体中文

Lemontea Desktop is a cross-platform AI desktop client for people who want a capable assistant on their own machine. It brings chat, model configuration, tool execution, plugins, skills, and long-term memory into one local workspace, so daily AI work can move beyond a single prompt box.

Product Vision

Lemontea is designed to be a personal AI workbench for desktop workflows. It helps users connect different model providers, keep conversations and context organized, run tasks with local tools, and extend the assistant with reusable capabilities.

The product focuses on three ideas:

  • Configurable: users can choose providers, models, language, display preferences, plugins, skills, and memory behavior.
  • Observable: conversations, tool calls, approvals, errors, and background tasks should be visible and understandable.
  • Extensible: the assistant can grow through CLI tools, plugins, MCP integrations, and Markdown-based skills.

Who It Is For

  • Individual users who want a desktop AI assistant for writing, translation, summarization, coding help, and research.
  • Developers who need local tools, terminal access, file attachments, custom model endpoints, and inspectable execution traces.
  • AI power users who want reusable skills, plugin integrations, long-term memory, and more structured workflows.
  • Users who prefer local-first control over their AI client configuration and conversation data.

Core Experience

Chat Workspace

Lemontea provides a focused chat interface with streaming responses, Markdown rendering, code highlighting, reasoning message display, file attachments, image preview, and conversation management.

Users can create, rename, favorite, delete, and revisit sessions. The app can also generate titles automatically, keeping long-running work easier to scan later.

Model Provider Setup

The first-run onboarding flow guides users through connecting their first model provider. Built-in provider presets include DeepSeek, Alibaba Cloud Bailian / Qwen-compatible endpoints, Ollama, and any OpenAI-compatible API.

After setup, users can manage providers in Settings: edit API keys and base URLs, fetch model lists, add custom models, enable or disable providers, and choose defaults.

Tools With Human Control

The assistant can call built-in tools such as date, time, file handling, command execution, QR code generation, web search, and web fetch. Riskier actions go through a confirmation flow, so users can allow, reject, or respond with custom guidance before execution continues.

Plugins, CLI Tools, MCP, and Skills

Lemontea is built to be extended:

  • Plugins and CLI tools add external capabilities.
  • MCP integrations connect compatible tool servers.
  • Skills package reusable instructions as Markdown files with YAML frontmatter.
  • Built-in and user-created skills can guide the assistant through repeated workflows.

This makes the app suitable for both everyday assistant use and specialized work processes.

Long-Term Memory

The memory system helps Lemontea preserve high-value information across conversations. Users can create, update, forget, restore, and inspect memories, while settings allow memory behavior to be managed explicitly.

The goal is not to store every message, but to retain durable context that improves future interactions.

Settings Center

Settings are organized around real product surfaces: general preferences, model providers, plugins and tools, skills, memory, and about information. Language and font size can be changed at runtime.

Typical Use Cases

  • Configure a local or remote model provider and start a desktop AI conversation.
  • Attach files or images to a chat and ask for analysis, rewriting, or implementation help.
  • Let the assistant run approved local commands while keeping the execution visible.
  • Install or configure plugin tools for specific workflows.
  • Create reusable skills for team conventions, writing styles, reports, or operational playbooks.
  • Save stable preferences and project context into memory for future conversations.

Platform Support

  • macOS
  • Windows
  • Linux
  • Experimental iOS and Android build scaffolding

Tech Stack

  • Desktop framework: Wails 3
  • Backend: Go 1.25
  • Frontend: React 18, TypeScript, Vite, Tailwind CSS
  • State management: Zustand
  • Storage: SQLite / GORM
  • Testing: Go test, Vitest, Testing Library
  • Build tooling: Wails 3 CLI

Requirements

Install the following tools first:

  • Go 1.25 or a compatible version
  • Node.js and npm
  • Wails 3 CLI

Check your environment:

go version
npm --version
wails3 version

Quick Start

Install frontend dependencies:

cd frontend
npm install
cd ..

Start development mode:

wails3 dev -config ./build/config.yml

To choose a specific frontend dev server port:

wails3 dev -config ./build/config.yml -port 9246

Common Commands

# Development mode
wails3 dev -config ./build/config.yml

# Build the desktop app for the current platform
wails3 build -config ./build/config.yml

# Package production artifacts for the current platform
wails3 package -config ./build/config.yml

# Generate frontend Wails bindings
wails3 generate bindings -clean=true -ts

Testing

Backend tests:

go test ./...

Frontend tests:

cd frontend
npx vitest run

Project Structure

.
├── backend/                 # Go backend services, packages, storage, and models
├── frontend/                # React + Vite frontend
├── build/                   # Wails build config and platform assets
├── docs/                    # Product notes, technical designs, and plans
├── main.go                  # App entry point and service registration
└── go.mod                   # Go module config

Documentation

License

MIT

About

a sample ai chat box

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages