Skip to content

BeanDesk v0.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 15:16

What's Changed

BeanDesk v0.2.0 introduces a bundled Fava engine, local Git snapshots, encrypted restic archiving, a local stdio MCP server, and an offline handbook.

Bundled Fava Engine

  • Standalone Runtime: Ships beandesk-engine (onedir frozen Python/Fava). Launch a local ledger by choosing a directory—no Python or CLI configuration required.
  • Initialize Ledger: Generates a standard Beancount skeleton (main.bean, config/, data/, documents/) in empty folders.
  • Cross-Platform: Native builds for macOS (Apple Silicon & Intel x86_64), Windows, and Linux. Custom shell commands and direct URL connections remain fully supported.

Backup & Archiving

  • Automatic Git Snapshots: Watches the ledger folder with a 5-second debounce. Credentials and keys are ignored via .gitignore and never committed or pushed.
  • Encrypted Archives via restic: Bundles restic 0.19.1. Incremental encrypted backups to local folders or S3-compatible buckets (Cloudflare R2, MinIO, AWS S3).
  • Protection for External Ledgers: Disables backup operations for existing directories lacking a .beandesk marker.

Local stdio MCP Server

  • Run the desktop binary with mcp to start a Model Context Protocol server over stdio.
  • Provides read-only ledger queries (BQL, financial statements, journal entries) and handbook access for local AI agents (Cursor, Claude Desktop).

Offline Handbook

  • Dedicated secondary desktop window loading the bundled Fumadocs documentation site offline.

Compliance Calendar

  • Import local .ics files or subscribe to HTTPS calendar feeds (Google Calendar, Outlook / Microsoft 365).
  • Caches feed locally; sends desktop notifications within 7 days of due dates.

Desktop Improvements

  • Closes to system tray without terminating background Fava sessions.
  • Single-instance guard prevents duplicate launches and port conflicts.
  • Pre-warmed window prevents theme flashing on startup.
  • Full CSV statement exports and an updated About page.

更新内容

BeanDesk v0.2.0 带来了内置 Fava 运行引擎、本地 Git 快照、restic 加密归档、本地 stdio MCP 服务与离线手册。

内置 Fava 引擎

  • 独立运行环境:随包携带 beandesk-engine 冻结运行时。选择目录即可启动账本,无需安装 Python 或配置命令行。
  • 账本初始化:支持在空目录中一键生成标准 Beancount 账本骨架(main.bean、config/、data/ 与 documents/)。
  • 多平台原生支持:覆盖 Apple Silicon、Intel Mac (x86_64)、Windows 与 Linux 原生平台;保留自定义命令启动与网络地址直连。

数据备份与加密归档

  • Git 本地自动快照:5 秒防抖监听工作目录改动并自动提交本地 Git。敏感凭据受 .gitignore 保护,永不上云。
  • restic 增量加密归档:随包集成 restic 0.19.1。支持增量加密备份至本地目录或 S3 兼容对象存储(Cloudflare R2、MinIO、AWS S3 等),仅传输变动数据块。
  • 外部既有账本保护:未包含 .beandesk 标记的外部账本自动禁用备份与恢复面板,防止误改原文件。

本地 stdio MCP 服务

  • 桌面端直接传入 mcp 参数即可作为标准 stdio MCP 服务运行。
  • 为本地 AI 客户端(Cursor、Claude Desktop 等)提供只读报表查询(BQL、法定报表、明细分录)与离线手册检索,不开放写盘权限。

随包离线用户手册

  • 桌面端专属第二窗口,随包附带完整的离线使用手册,随时查阅 Beancount 规范与操作指南。

征期日历订阅

  • 支持导入本地 .ics 文件或配置 HTTPS 日历订阅(Google、Outlook / Microsoft 365)。
  • 本地保存副本缓存;事项到期前 7 天触发桌面横幅与系统通知。

桌面端体验优化

  • 关闭窗口默认隐藏至系统托盘,保持后台服务运行。
  • 单实例守护运行,避免重复启动冲突;窗口在内存中完成主题预热后再显示,杜绝启动闪烁。
  • 报表支持完整 CSV 导出;设置中新增关于页面与作者链接。