项目概览

ReFile 是基于 SwiftUI + Swift Concurrency 构建的桌面应用。它通过自动化流水线,处理繁琐的设计文件资产管理工作。

原生性能

采用 Swift 5 开发,深度集成 FileManager 与 Security-Scoped Bookmarks。

自动化流程

从拖拽文件到云端备份、飞书登记,一气呵成。

权限安全

严格遵守 App Sandbox 沙盒机制,确保用户隐私与系统安全。

工作目录模型

应用围绕一个核心的“工作目录”运行,自动维护其内部结构。

核心子目录

  • 源文件:存放 .psd, .psb, .ai 等原始工程。
  • 预览图:存放 .png, .jpg, .webp 等展示文件。
  • 汇总:最终生成的结构化备份目录。
  • 待删除:完成外置备份后的本地待清理区。

提示: 必须先授权“工作目录”方可开始流程。应用会通过 Bookmark 记录权限,重启无需重新选择。

文件识别与分组

ReFile 依赖结构化的命名规则来识别分组。推荐使用下划线分隔符。

日期_类别_账号_品牌_其他.ext

分组逻辑

应用仅提取前四段字段作为 Group Key。例如:

260320_物料_爆款百货_KT板_V1.psd
260320_物料_爆款百货_KT板_(V2).jpg

以上文件将被归为同一组:260320_物料_爆款百货_KT板。系统会自动忽略末尾的版本号(如 V1, V2)。

流水线节点

ReFile 采用模块化节点设计,每个节点执行特定的任务。

Node 1

智能分类 (基础)

自动扫描输入文件,根据扩展名将其移动至工作目录的“源文件”或“预览图”文件夹。

Node 2

网盘备份

将分组文件同步至已挂载的网盘路径。支持按类别重命名文件夹(如 01_贴片)。

Node 3

飞书登记

通过 API 上传预览图至云盘,并自动在 Bitable(多维表格)中创建记录。

Node 4

外置备份与归档

将整个分组迁移至外置硬盘,并清理工作目录,将文件移入“待删除”区。

飞书配置指南

若要开启飞书登记功能,请在配置面板中完成以下信息:

身份凭证

填写 App ID 和 App Secret,并点击“连接测试”。

多维表格

填入 App Token 和 Table ID。确保附件字段名与配置一致。

关于设计师识别:

如果配置了“辅助表”,ReFile 将自动匹配设计师姓名并获取其 User ID,支持人员字段的精准写入。

进阶配置

应用通过 config.json 持久化设置,位于 ~/Library/Application Support/ReFile/

{
  "behavior": {
    "duplicateStrategy": "rename", // 重复处理:skip, overwrite, rename
    "retryCount": 3,               // 指数退避重试次数
    "concurrencyLimit": 2          // 分组处理并发上限
  }
}

日志与报告

每次执行结束后,系统会生成两类文件:

  • JSON 报告: 包含任务执行的完整原始数据。
  • CSV 报告: 方便导入 Excel 或飞书进行后期对账。

[SUCCESS] 分组: 260320_海报_品牌A -> 节点 3 (飞书) 执行成功

[INFO] 导出报告: report-20231027-1430.csv