Downloads development
Summary
为 Downloads 目录构建了三步智能整理工作流(分类→AI重命名→项目归组)并抽取了统一 LLM 客户端模块
Outcomes
创建了 downloads_organizer.py(规则分类)、smart_rename.py(AI批量重命名)、project_sort.py(项目归组)三个脚本及配套 Raycast Command;将 API 调用抽成独立的 llm_client.py 模块,支持 MMKG 和智谱 GLM 自动 fallback,成功分析了 207 个文件并生成重命名建议表。
Learnings
- 批量 AI 分析时应在 batch 内用 1-N 编号而非全局编号,避免 AI 重新编号导致索引映射错位
- Claude API 响应可能包含 thinking 块,解析 content 时需跳过非 text 类型的块
- 统一 LLM 客户端模块应支持多 provider 和自动 fallback,解耦业务代码与具体 API 实现
Files Modified (16)
- /Users/tianli/.claude/plans/curried-bouncing-sphinx.md
- /Users/tianli/.claude/projects/-Users-tianli-Downloads/memory/MEMORY.md
- /Users/tianli/.claude/projects/-Users-tianli-Downloads/memory/handoff_smart_rename.md
- /Users/tianli/.claude/projects/-Users-tianli-Downloads/memory/project_downloads_organizer.md
- /Users/tianli/.claude/projects/-Users-tianli-Downloads/memory/reference_llm_client.md
- /Users/tianli/Dev/scripts/raycast/commands/file_organize-downloads.sh
- /Users/tianli/Dev/scripts/raycast/commands/file_project-sort.sh
- /Users/tianli/Dev/scripts/raycast/commands/file_smart-rename.sh
- /Users/tianli/Dev/scripts/scripts/file/downloads_organizer.py
- /Users/tianli/Dev/scripts/scripts/file/downloads_organizer.yaml
- /Users/tianli/Dev/scripts/scripts/file/project_sort.py
- /Users/tianli/Dev/scripts/scripts/file/smart_rename.py
- /Users/tianli/Dev/scripts/scripts/file/smart_rename_config.yaml
- /Users/tianli/Dev/scripts/scripts/tools/llm_client.py
- /Users/tianli/Dev/scripts/scripts/tools/llm_providers.yaml
- /Users/tianli/Library/LaunchAgents/com.tianli.downloads-organizer.plist