Profile
Back to NewsBack
GitHub Trending 5 min
Reader Mode
cheney-plus/happy-friday-lite: 一个私人专属的集笔记、日程、Agent、对话于一体的智能体桌面应用端

cheney-plus/happy-friday-lite: 一个私人专属的集笔记、日程、Agent、对话于一体的智能体桌面应用端

15 hours ago

Happy Friday Lite

中文

An Electron + Vue 3 desktop personal knowledge assistant that combines an AI agent, RAG knowledge retrieval, rich-text notes, and a calendar. All data is stored locally with privacy as a priority.

✨ Key Features

📑 Office

  • Integrated office suite with AI Docs, AI Sheets, AI Slides, and AI PDF
  • Rich document editing: headings, lists, links, tables, images, and formulas
  • Friday sidebar for AI writing, polishing, translation, and one-click slide generation
  • Create new files or open local .docx / .xlsx / .csv / .pptx / .pdf files
  • Recent files with filtering by type (documents / sheets / slides / PDF)

🤖 Friday AI Assistant

  • Built with DeepAgent SDK and LangChain
  • 12+ built-in tools: knowledge-base search, note and schedule management, file operations, shell execution, Python REPL, HTTP requests, web scraping, JSON processing, calculator, and more
  • Human-in-the-Loop (HITL) support for approval before sensitive operations
  • SKILL system that loads Markdown skill descriptions from the SKILL/ directory
  • Subagents and cross-session memory powered by SQLite and InMemoryStore

📚 Knowledge Base

  • Personal, local, and agent knowledge bases
  • Full RAG pipeline: document loading -> parent-child chunking -> embedding -> vector search
  • Unified Zvec vector storage, separated by kb_type
  • File watching, scheduled incremental indexing, and manual updates
  • PDF, Word, Excel, Markdown, HTML, EPUB, and plain-text support

📝 Notes

  • TipTap rich-text editor
  • Syntax-highlighted code blocks, tables, task lists, images, links, and more
  • AI Fill-in-the-Middle (FIM) completion
  • Version history and diff comparison

✏️ Drawing

  • Built-in shape libraries: general shapes, lines, mind maps, flowcharts, ER diagrams, UML diagrams, system architecture, sequence diagrams, timelines, and data-flow diagrams
  • One-click templates for mind maps and flowcharts, with canvas categories, search, and import
  • Customizable styles (fill, text, stroke width, font); connectors with orthogonal, polyline, and curved routing
  • Shape animations: pulse, breathe, bounce, and flow
  • Export to PNG / SVG / JSON, plus read-only share links

📅 Schedule

  • Custom-built calendar with month / week / year / list views
  • Lunar calendar support
  • Create and update schedules with natural language through Friday

🎨 More

  • Light, dark, and system themes
  • Simplified Chinese and English localization
  • Automatic data backups
  • Multi-tab interface

🖼️ Screenshots

Friday AI Assistant

!Friday assistant home

!Friday chat and code execution

Office

!Office home with AI Docs, Sheets, Slides, and PDF entries

!AI Docs editor with Friday sidebar

!AI Slides editor with Friday sidebar

!AI Sheets editor with Friday sidebar

Knowledge Base

!Knowledge base file cards

Notes

!Rich-text note editor

Drawing

!Drawing canvas

Schedule

!Schedule calendar

Automated Tasks

!Automated tasks

DeepSeek Harness

!DeepSeek Harness

Settings

!Settings and feature overview

🚀 Quick Start

Requirements

  • Node.js >= 20 (22 recommended)
  • npm >= 10
  • macOS, Windows, or Linux

Install Dependencies

npm install --legacy-peer-deps

Run in Development

# Frontend only
npm run dev

Electron + frontend (starts Electron automatically)

npm run electron:dev

Build a Release Package

# Build an installer for the current platform
npm run electron:build

Build for arm64

npm run electron:build:arm64

Build artifacts are written to release/.

Configure Python under Settings -> General -> Python Environment:
1. Use Auto Detect to find an installed interpreter, or select its executable manually.
2. Missing dependencies can be installed automatically by the AI assistant from python/requirements.txt using pip/pip3.

📦 Download

Download the installer for your platform from Releases:

| Platform | Artifact | | --- | --- | | macOS (Apple Silicon) | *-mac-arm64.dmg | | Windows | *-win-x64-setup.exe | | Linux | -linux-.AppImage |

🛠️ Tech Stack

| Layer | Technology | | --- | --- | | Desktop framework | Electron 42 | | Frontend framework | Vue 3 + Vite 6 | | State management | Pinia | | Routing | Vue Router | | Internationalization | Vue I18n | | Rich-text editor | TipTap | | Calendar | Custom Vue calendar component | | AI agent | DeepAgents + LangChain | | Vector database | Zvec | | Local database | SQLite (sql.js) | | Python runtime | Bundled portable Python for the Agent python_repl tool |

📂 Project Structure

happy-friday-lite/
├── main.js                  # Electron main-process entry
├── preload.cjs              # Preload script
├── src/                     # Vue frontend source
│   ├── components/          # Shared components (chat / layout)
│   ├── views/               # Page views
│   │   ├── friday/          # Friday assistant
│   │   ├── office/          # Office suite (Docs / Sheets / Slides / PDF)
│   │   ├── knowledge/       # Knowledge base
│   │   ├── note/            # Notes
│   │   ├── drawing/         # Drawing
│   │   ├── schedule/        # Schedule
│   │   ├── history/         # Version history
│   │   └── settings/        # Settings
│   ├── store/               # Pinia state modules
│   ├── i18n/                # Localization resources
│   └── router/              # Router configuration
├── src-electron/            # Electron backend
│   ├── agent/               # Agent core (tools / skills / subagents / permissions / memory)
│   ├── rag/                 # RAG pipeline (loading / chunking / embedding / retrieval)
│   ├── db.js                # SQLite database
│   ├── llm.js               # LLM adapter
│   └── python-env.js        # Python runtime environment
├── python/                  # Python runtime download scripts
├── scripts/                 # Build helper scripts
└── .github/workflows/       # CI build workflows

🔧 Configure an AI Model

On first use, go to Settings -> Model Configuration and enter an API Base URL (for example, https://api.openai.com/v1), API key, and model name.

Any OpenAI-compatible provider is supported, including OpenAI, DeepSeek, Qwen, Zhipu AI, Kimi, and Doubao.

🤝 Contributing

Issues and pull requests are welcome. Please ensure the project builds successfully, changes follow the existing code style, and documentation is updated with new features.

📄 License

This project is released under the PolyForm Noncommercial License 1.0.0.

  • ✅ Allowed: personal use, learning and research, modifying the code, and distributing the source code
  • ❌ Prohibited: commercial use in any form
  • ⚠️ Required: retain the original author's attribution and copyright notice when using or distributing the project
Read LICENSE for details.

🙏 Acknowledgments

📧 Contact

For questions or suggestions, open an Issue or email [email protected].

Chat with me