Flomo AI
一个 AI 文本优化工具,支持 Android 原版和 Rust Windows 桌面版。
项目结构
├── flomo-ai/ # Android 原始项目 (Kotlin + Jetpack Compose)
│ ├── app/src/main/
│ │ ├── java/ # Kotlin 源代码
│ │ │ └── com/example/flomo_ai/
│ │ │ ├── MainActivity.kt # 主界面
│ │ │ ├── SecondActivity.kt # 设置页面
│ │ │ └── ui/theme/ # 主题管理
│ │ └── res/ # 布局、颜色、图标等资源
│ └── mumu-pytest/ # MuMu 模拟器自动化测试
│
└── flomo-ai-desktop/ # Rust Windows 桌面版 (egui + eframe)
├── src/
│ ├── main.rs # 入口,eframe 启动,无控制台窗口
│ ├── app.rs # 应用状态管理(页面路由、API 调用调度)
│ ├── config/
│ │ └── store.rs # 配置类型定义 + JSON 持久化
│ ├── api/
│ │ └── llm_client.rs # LLM API 调用(OpenAI 兼容格式)
│ ├── theme/
│ │ └── mod.rs # 明暗主题管理
│ └── pages/ # 页面组件
├── .cargo/config.toml # MinGW 工具链配置
└── Cargo.toml # 依赖声明
功能特性
核心功能
- 多模型并发:支持同时配置 3 个 LLM 模型,发送时并发调用所有启用的模型
- 独立测试:每个模型可单独测试连接状态
- LLM API 调用:兼容 OpenAI 格式的 API,支持自定义 Base URL、API Key、Model
- 自定义请求头:可添加额外的 HTTP Header
- 提示词管理:添加、删除、编辑系统提示词,主界面下拉选择
- 快速操作:错别字检查、总结、翻译、润色 四个快捷按钮
- 主题切换:浅色模式 / 深色模式 / 跟随系统
- 配置持久化:JSON 格式保存到用户配置目录
- 复制结果:一键复制优化结果到剪贴板
界面布局
- 主界面:
- 顶部标题栏 + 配置按钮
- 提示词选择器 + 快速操作按钮
- 输入区域 + 发送按钮
- 三栏结果显示:水平排列 3 个模型的结果卡片
- 配置页面:
- 3 个模型的独立配置(启用开关、名称、URL、Key、Model)
- 每个模型独立的测试按钮
- 主题设置
- 提示词管理
构建说明
环境要求
- Rust 工具链:
stable-x86_64-pc-windows-gnu - MinGW-w64:通过 MSYS2 安装 (
pacman -S mingw-w64-x86_64-gcc) - MSYS2:https://www.msys2.org/
安装 Rust GNU 工具链
rustup toolchain install stable-x86_64-pc-windows-gnu
rustup default stable-x86_64-pc-windows-gnu
编译
cd flomo-ai-desktop
cargo build --release
或使用 build.bat(需先安装 MSYS2 + MinGW)。
编译产物:target/release/flomo-ai.exe(~4MB,无控制台窗口)
编译配置
.cargo/config.toml:指定 MinGW 链接器和-mwindows参数Cargo.toml:release profile 启用 LTO、strip、opt-level=z 优化体积
依赖
| 依赖 | 用途 |
|---|---|
egui + eframe (glow) |
GUI 框架(纯 Rust,无 C 依赖) |
reqwest (blocking + native-tls) |
HTTP 客户端 |
serde + serde_json |
序列化 / 配置持久化 |
dirs |
获取用户配置目录路径 |
arboard |
剪贴板操作 |
配置文件
配置保存在 %APPDATA%\flomo-ai\settings.json,格式如下:
{
"llm_configs": {
"models": [
{
"enabled": true,
"name": "模型1",
"base_url": "https://api.openai.com/v1",
"api_key": "",
"model": "gpt-4o"
},
{
"enabled": false,
"name": "模型2",
"base_url": "",
"api_key": "",
"model": ""
},
{
"enabled": false,
"name": "模型3",
"base_url": "",
"api_key": "",
"model": ""
}
]
},
"header_configs": [],
"prompt_configs": [
{
"id": "default-1",
"title": "翻译助手",
"content": "将输入的文本翻译成指定语言"
}
],
"theme_config": {
"mode": "FollowSystem"
}
}
Android 版本
Android 版本使用 Gradle 构建,包含完整的 Kotlin 源代码和资源文件。详见 flomo-ai/ 目录下的 README.md。
Description
Languages
Kotlin
36.4%
Rust
31.7%
DM
16.2%
Python
12.8%
Batchfile
2.6%
Other
0.3%