Skip to content

OpenLoaf/OpenLoaf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

1,416 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

OpenLoaf Logo

OpenLoaf

Open-Source AI Productivity Desktop โ€” Project-Centric, Multi-Agent, Local-First

Each project gets its own AI agent team, memory, and skills. Projects link to share knowledge. A Secretary Agent orchestrates everything. The agent runtime, memory system, skills loading, and tool routing are native OpenLoaf capabilities - not a thin wrapper around Claude Code. Your data never leaves your device.

๐Ÿ’ฌ AI Secretary ย |ย  ๐Ÿ“ Independent Projects ย |ย  ๐Ÿ”— Project Linking ย |ย  ๐Ÿค– Multi-Agent ย |ย  ๐ŸŽจ Canvas ย |ย  ๐Ÿ“ง Email ย |ย  ๐Ÿ“… Calendar ย |ย  ๐Ÿ“‹ Tasks

One app, multiple project windows. Each project has its own AI team. Link projects to share knowledge. A Secretary Agent ties it all together โ€” 100% local.

License Release Platform



๐Ÿ“ฅ Download for macOS / Windows / Linux

English | ็ฎ€ไฝ“ไธญๆ–‡ | ๆ—ฅๆœฌ่ชž


โš ๏ธ This project is in active development. Features and APIs may change โ€” use in production with caution. Encountered a bug or have an idea? Submit feedback via the app's built-in feedback button.


About

OpenLoaf is a local-first AI productivity desktop app built around projects as independent workspaces. Each project opens in its own dedicated window with a full-featured environment: AI assistant, file tree, terminal, task board, and canvas.

A Secretary Agent lives in the main window as your personal assistant โ€” it can answer questions, manage your calendar and email, and route complex tasks to the right project's AI agent. For cross-project work, projects link to each other to share memory and skills.

Built natively into OpenLoaf: the Secretary / Project / Worker agent system, project memory injection, skills discovery, runtime tool execution, and multi-window orchestration are all part of OpenLoaf's own product architecture - not a Claude Code reskin or thin wrapper.

How It Works

You (the Boss)
  โ”‚
  โ–ผ
Secretary Agent (Main Window โ€” your personal assistant)
  โ”‚
  โ”œโ”€โ”€ Simple tasks โ†’ handles directly
  โ”œโ”€โ”€ Single-project tasks โ†’ spawns a Project Agent
  โ””โ”€โ”€ Cross-project tasks โ†’ spawns multiple Project Agents in parallel
        โ”‚
        โ””โ”€โ”€ Project Agent (Project Window)
              โ”‚
              โ””โ”€โ”€ Worker Agents (explore, plan, code...)

Main Window โ€” your command center:

  • AI Secretary for global tasks (calendar, email, cross-project queries)
  • Activity timeline showing recent projects, conversations, and canvases
  • Project grid to browse and open projects

Project Window โ€” each project gets its own:

  • Dedicated AI assistant with project-specific memory and skills
  • File explorer, terminal, task board, canvas
  • Links to other projects (their memory and skills are auto-injected)
OpenLoaf Overview

Features

Multi-Agent Architecture

OpenLoaf's AI isn't a single chatbot โ€” it's a layered agent system modeled after how companies work and built specifically for OpenLoaf's project-centric workflow:

Agent Role Scope
Secretary Your personal assistant in the main window Global: calendar, email, project routing, cross-project queries
Project Agent Dedicated assistant per project Project: files, code, docs, terminal, tasks
Worker Agents Specialized sub-agents spawned on demand Focused: explore, plan, code, review

The Secretary decides the most efficient path โ€” simple questions get answered immediately, project-specific tasks get routed to the right Project Agent, and complex multi-project tasks spawn parallel agents. Agent roles, project routing, memory injection, skills loading, MCP access, and runtime tool execution are first-class OpenLoaf capabilities rather than a thin layer on top of Claude Code.

Independent Project Windows

Each project opens in its own window (Electron) or browser tab (web). No context switching โ€” work on multiple projects simultaneously with full isolation.

Projects are organized by user-defined type labels (e.g., "code", "docs", "knowledge base") which serve as visual groupings in the project grid. Types are just labels โ€” the system treats all projects equally.

Project Linking

Any project can link to any other project. When linked:

  • The linked project's memory is injected into the current project's AI context
  • The linked project's skills become available to the current project's agent
  • Perfect for sharing a knowledge base, design system docs, or coding standards across multiple projects

Memory & Skills System

Three-level memory hierarchy:

Level Path Purpose
User ~/.openloaf/memory/ Personal preferences, habits, global context
Project <projectPath>/.openloaf/memory/ Project-specific architecture decisions, conventions
Linked Projects Auto-loaded from linked projects Shared knowledge (e.g., coding standards, API docs)

Skills follow the same pattern โ€” global skills plus project-specific skills, all discoverable by AI agents at runtime.

Skills are reusable Markdown workflows defined by a SKILL.md file. Put them in ~/.agents/skills/ for global reuse or in <projectPath>/.agents/skills/ for project-specific behavior, and agents can load the instructions plus related tool dependencies on demand.

OpenLoaf also supports MCP (Model Context Protocol) servers. You can connect external tools over stdio, http, or sse, configure them globally in ~/.openloaf/mcp-servers.json or per project in <projectPath>/.openloaf/mcp-servers.json, and import JSON configs from clients like Claude Desktop, Cursor, VS Code, Cline, or Windsurf to expose GitHub, databases, filesystems, Slack, and more to your agents.

AI Chat

Multi-model AI chat supporting OpenAI, Anthropic Claude, Google Gemini, DeepSeek, Qwen, xAI Grok, and local models via Ollama. AI is aware of your project's full context โ€” file structure, document content, conversation history. Built-in memory lets AI retain knowledge across conversations.

AI Agents

Infinite Canvas

A ReactFlow-based infinite canvas for visual thinking. Supports sticky notes, images, videos, freehand drawing, AI image generation, AI video generation, and image content understanding. Mind maps, flowcharts, and inspiration boards on a single canvas.

Infinite Canvas

Built-in Productivity Tools

Everything in one app โ€” no more window-switching:

  • Terminal โ€” Full terminal emulator. AI agents can run commands with your approval.
  • Email โ€” Multi-account IMAP email with AI-powered drafting and summarization.
  • Calendar โ€” Native system calendar sync (macOS / Google Calendar). AI-powered scheduling.
  • File Manager โ€” Grid/list/column views, drag-and-drop, file preview (images, PDFs, Office, code).
  • Task Board โ€” Kanban board (To Do โ†’ In Progress โ†’ Review โ†’ Done) with priority labels and AI-powered task creation.
  • Rich Text Editor โ€” Block editor built on Plate.js with LaTeX, tables, code blocks, and bi-directional links.

Use Cases

  • Software Development โ€” Each repo is a project. Link a shared "coding standards" project for consistent AI behavior across all repos.
  • Research & Writing โ€” Create a "references" project as a knowledge base, link it to your paper projects. AI draws from your curated sources.
  • Content Creation โ€” Brainstorm on the canvas, generate images with AI, write in the editor, track deliverables on the task board.
  • Project Management โ€” One project per client. Secretary Agent gives you a cross-project overview. Calendar and email keep everything coordinated.
  • Personal Knowledge Base โ€” Accumulate notes, web clippings, and journal entries. Link to work projects so AI connects the dots.

Why OpenLoaf

The Problem

  • Fragmented AI workflows โ€” One thing done requires jumping between five windows.
  • No project context โ€” AI forgets everything between conversations. You re-explain your project every time.
  • Single-project silos โ€” Projects can't share knowledge. Your coding standards project can't help your code repos.
  • Cloud lock-in โ€” Your data lives on someone else's servers. You can't choose your own AI models.

OpenLoaf's Approach

  • Self-developed agent stack โ€” The Secretary / Project / Worker architecture, memory pipeline, skills system, MCP integration, and tool runtime are built natively in OpenLoaf instead of being a Claude Code reskin or wrapper.
  • Project-centric โ€” Each project is a self-contained environment with its own AI agent, memory, and skills.
  • Linked knowledge โ€” Projects share context through explicit links. A knowledge base enriches every project it's linked to.
  • Multi-agent routing โ€” The Secretary Agent handles the orchestration. Simple tasks are fast; complex tasks get the right specialist.
  • Local-first โ€” All data stored locally (~/.openloaf/). Bring your own API keys. No telemetry, no tracking.
  • Ready out of the box โ€” Download, install, go. No servers, databases, or Docker.

Loaf = Bread + Lounging

OpenLoaf's logo is a bread-shaped sofa. Loaf means both "bread" and "to lounge around" โ€” hand off tedious work to AI while you make the important decisions.


Privacy & Security

  • 100% Local Storage โ€” All data stored on your filesystem (~/.openloaf/). Nothing uploaded to cloud servers.
  • Bring Your Own Key (BYOK) โ€” Configure your own AI API keys. API calls go directly from your device to the model provider.
  • Works Offline โ€” Core features work fully offline. Use Ollama for a completely air-gapped AI experience.
  • No Telemetry โ€” No analytics, no usage data, no tracking. What happens on your device stays on your device.
  • Open-Source & Auditable โ€” Full codebase under AGPLv3. Inspect every line that touches your data.

Quick Start

Prerequisites

  • Node.js >= 20
  • pnpm >= 10 (corepack enable)

Installation

# Clone the repository
git clone https://github.com/OpenLoaf/OpenLoaf.git
cd OpenLoaf

# Install dependencies
pnpm install

# Initialize the database
pnpm run db:migrate

# Start the development environment (Web + Server)
pnpm run dev

Open http://localhost:3001. For the desktop app: pnpm run desktop.


Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    OpenLoaf                          โ”‚
โ”‚                                                      โ”‚
โ”‚  Main Window                                         โ”‚
โ”‚  โ”œโ”€โ”€ Secretary Agent (global AI assistant)           โ”‚
โ”‚  โ”œโ”€โ”€ Activity Timeline (recent history)              โ”‚
โ”‚  โ”œโ”€โ”€ Project Grid (all projects by type)             โ”‚
โ”‚  โ”œโ”€โ”€ Calendar, Email, Canvas (global features)       โ”‚
โ”‚  โ””โ”€โ”€ Settings                                        โ”‚
โ”‚                                                      โ”‚
โ”‚  Project Window (one per project)                    โ”‚
โ”‚  โ”œโ”€โ”€ Project Agent (project-scoped AI)               โ”‚
โ”‚  โ”œโ”€โ”€ File Tree, Terminal, Search                     โ”‚
โ”‚  โ”œโ”€โ”€ Task Board, Canvas                              โ”‚
โ”‚  โ”œโ”€โ”€ Linked Projects (shared memory/skills)          โ”‚
โ”‚  โ””โ”€โ”€ Project Settings & Skills                       โ”‚
โ”‚                                                      โ”‚
โ”‚  Data Layer                                          โ”‚
โ”‚  โ”œโ”€โ”€ ~/.openloaf/memory/          (user memory)      โ”‚
โ”‚  โ”œโ”€โ”€ ~/.openloaf/config.json      (project registry) โ”‚
โ”‚  โ”œโ”€โ”€ ~/.openloaf/openloaf.db      (SQLite database)  โ”‚
โ”‚  โ”œโ”€โ”€ <project>/.openloaf/memory/  (project memory)   โ”‚
โ”‚  โ””โ”€โ”€ <project>/.agents/skills/    (project skills)   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Project Structure

apps/
  web/          โ€” Next.js 16 frontend (static export, React 19)
  server/       โ€” Hono backend, tRPC API
  desktop/      โ€” Electron 40 desktop shell
packages/
  api/          โ€” tRPC router types & shared API logic
  db/           โ€” Prisma 7 database schema (SQLite)
  ui/           โ€” shadcn/ui component library
  config/       โ€” Shared env utilities & path resolution

Tech Stack

Area Technology
Frontend Next.js 16 / React 19 / Tailwind CSS 4
Backend Hono + tRPC / Prisma + SQLite
Desktop Electron 40
Editor Plate.js
AI Vercel AI SDK (OpenAI / Claude / Gemini / DeepSeek / Qwen / Grok / Ollama)
Collaboration Yjs
Canvas ReactFlow
Tooling Turborepo + pnpm monorepo

Roadmap

  • Multi-agent architecture (Secretary โ†’ Project Agent โ†’ Workers)
  • Independent project windows
  • Project linking with shared memory/skills
  • User-defined project types with visual grouping
  • Activity timeline in main window
  • Full web browser access (without desktop app)
  • Internationalization (i18n) โ€” in progress
  • Project template marketplace
  • WPS / Microsoft Office integration
  • More features coming...

Contributing

  1. Fork this repository
  2. Create your feature branch: git checkout -b feature/my-feature
  3. Commit your changes (Conventional Commits):
    git commit -m "feat(web): add dark mode toggle"
  4. Push: git push origin feature/my-feature
  5. Open a Pull Request

Before submitting a PR, please read the Contributing Guide and Development Guide, and sign the CLA.


License

OpenLoaf uses dual licensing:

  • Open Source โ€” GNU AGPLv3: Free to use, modify, and distribute. Derivative works must remain open-source.
  • Commercial โ€” For closed-source commercial use, contact us for a commercial license.

Bug Reports & Feature Requests

OpenLoaf โ€” Your AI, your projects, your data, your device.

About

๐ŸžOpen-source, local-first AI workspace with Agents, multi-model chat (GPT/Claude/Gemini/DeepSeek), Notion-like docs, AI image & video generation, email, calendar & terminal. Your data never leaves your device. AI ๅทฅไฝœๅฐ๏ผšๆ™บ่ƒฝไปฃ็† + ๅคšๆจกๅž‹ๅฏน่ฏ + ๆ–‡ๆกฃ็ฎก็† + AI ็”Ÿๅ›พ/่ง†้ข‘ + ้‚ฎไปถ/ๆ—ฅๅކ/็ปˆ็ซฏ

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors