
1. 起因一篇关于磁盘爆满的深度解析最近读到一篇关于 AtomCode 磁盘爆满的深度解析文章文中描述的极端案例令人印象深刻~/.atomcode 目录总占用高达 118G其中 rewind 子目录占 105G单个会话仓库膨胀到 100G包含两个同名 42G 的 pack 文件和 15.5G 的 tmp_pack 中断残留。受此文启发我检查了自己 Mac 上的 ~/.atomcode 目录。环境参数macOSAtomCode 日常使用约两个月主要在具体项目目录中打开偶尔在 Code.localized 顶层目录打开过。2. 实测结果占用分布与文章差异巨大实测结果总占用 5.1G远低于文章中的 118G但仍然占用了可观的 SSD 空间。进一步拆解发现占比最大的不是文章重点描述的 rewind而是 datalog 目录达到 4.5G。rewind 目录在本机根本不存在。本机实测的实际占用分布与文章描述的差异目录文章描述本机实测rewind105G不存在datalog13G4.5Gsessions未提及498Mimage-cache未提及99M3. 谬误溯源rewind 机制的适用范围参考文章将 rewind 机制作为磁盘爆满的核心原因来分析并给出了 rm -rf ~/.atomcode/rewind 的清理方案。这种说法存在一个适用范围问题rewind 膨胀是在顶层目录打开 AtomCode 且会话被异常中断时才会发生的极端情况。对于大多数正常使用的用户rewind 目录可能根本不存在或者体积很小。此时照搬文章的清理命令要么报错目录不存在要么清理效果微乎其微。4. 文章遗漏的两个占用来源文章没有提到的两个占用来源在本机同样占了空间sessions 目录保存了 101 个历史会话其中 86 个是两周前的旧会话image-cache 目录缓存了 108 张 PNG 图片占用 99M。如果只按文章的清理列表操作这两部分空间会被遗漏。5. 结论先检测再清理因此正确的做法不是照搬任何文章的清理命令而是先检测自己的实际占用分布再针对性清理。6. 源码验证检测命令与清理执行下面给出完整的检测命令与实测输出以及针对实际检测结果执行的清理步骤。6.1 检测命令与实测输出第一步总占用和子目录拆解du -sh ~/.atomcode du -sh ~/.atomcode/* | sort -rh | head -10实测输出5.1G /Users/user2/.atomcode 4.5G /Users/user2/.atomcode/datalog 498M /Users/user2/.atomcode/sessions 99M /Users/user2/.atomcode/image-cache 13M /Users/user2/.atomcode/history-v2 3.0M /Users/user2/.atomcode/logs 2.1M /Users/user2/.atomcode/plugins 1.1M /Users/user2/.atomcode/skills第二步检查超大文件和 rewind 残留find ~/.atomcode -type f -size 1G -exec ls -lh {} \; find ~/.atomcode/rewind -name tmp_pack* -exec ls -lh {} \;实测结果无 1G 以上文件rewind 目录不存在无 tmp_pack 残留。这与参考文章描述的极端情况完全不同。第三步分析 sessions 日期分布ls -d ~/.atomcode/sessions/*/ | wc -l find ~/.atomcode/sessions -maxdepth 1 -type d -newermt 2026-08-16 ! -path ~/.atomcode/sessions | wc -l实测共 101 个会话最近两周8月16日后仅 15 个两周前的旧会话 86 个。旧会话中最大的单个目录达 51M。6.2 清理执行针对实际检测结果执行三步清理# 1. 删除 datalog 会话转录日志4.5G rm -rf ~/.atomcode/datalog 2. 删除图片缓存99M rm -rf ~/.atomcode/image-cache 3. 删除两周前的旧会话86个保留最近15个 find ~/.atomcode/sessions -maxdepth 1 -type d ! -newermt 2026-08-16 ! -path ~/.atomcode/sessions -exec rm -rf {} 6.3 清理前后对比项目清理前清理后~/.atomcode 总计5.1G203Mdatalog4.5G已删除image-cache99M已删除sessions498M101个183M15个释放空间-约 4.9G保留未动的目录和文件memory.md长期记忆、config.toml配置、auth.toml认证、skills/自定义技能、history-v2/、logs/、plugins/以及最近两周的 15 个活跃会话。7. 落地结论可复用清理脚本与速查清单下面把本次排查沉淀为可直接复用的清理脚本以及面向不同使用者的速查清单。7.1 可复用清理脚本先检测再清理不照搬任何固定列表#!/bin/bash # AtomCode 磁盘占用检测与清理脚本 echo 当前占用 du -sh ~/.atomcode du -sh ~/.atomcode/* 2/dev/null | sort -rh | head -10 echo echo 超大文件(1G) find ~/.atomcode -type f -size 1G -exec ls -lh {} ; 2/dev/null echo echo rewind 残留检查 if [ -d ~/.atomcode/rewind ]; then du -sh ~/.atomcode/rewind find ~/.atomcode/rewind -name tmp_pack* -exec ls -lh {} ; else echo rewind 目录不存在无需清理 fi echo read -p 是否执行清理(y/n) confirm if [ $confirm y ]; then # 安全删除项 rm -rf ~/.atomcode/datalog # 会话转录日志 rm -rf ~/.atomcode/image-cache # 图片缓存 # 保留最近两周会话删除更早的 find ~/.atomcode/sessions -maxdepth 1 -type d \ ! -newermt $(date -v-14d %Y-%m-%d) ! -path ~/.atomcode/sessions \ -exec rm -rf {} 2/dev/null echo 清理完成 du -sh ~/.atomcode fi7.2 安全删除与禁止删除清单安全删除不影响当前会话和代码datalog/会话转录日志删除后旧会话 recall 检索失效。image-cache/图片缓存可自动重建。sessions/ 中的旧会话按时间阈值删除保留近期会话。rewind/如存在且体积异常可删除会话快照。禁止删除会丢失配置或认证memory.md长期记忆。config.toml配置文件。auth.toml认证信息。skills/自定义技能目录。7.3 人类开发者速查第一步永远是检测du -sh ~/.atomcode/* | sort -rh。不要直接 rm -rf先看清楚自己的占用分布。参考文章说 rewind 是大头但你的机器上可能根本没有 rewind。datalog 超过 1G 就可以考虑清理。sessions 超过 50 个旧会话就可以按时间筛选删除。清理后用 du -sh 验证释放效果。7.4 对话式 AI 速查问法示例帮我看看 ~/.atomcode 占了多少空间哪些可以安全删除回答要点先执行 du 检测实际占用分布区分安全删除项datalog、image-cache、旧 sessions、rewind和禁止删除项memory.md、config.toml、auth.toml、skills根据检测结果针对性清理不要照搬固定命令。提醒用户 datalog 删除后旧会话检索会失效。7.5 代码 Agent 速查可直接执行的检测加清理组合# 检测 du -sh ~/.atomcode/* 2/dev/null | sort -rh | head -10 find ~/.atomcode -type f -size 1G -exec ls -lh {} \; 2/dev/null 清理确认后执行 rm -rf ~/.atomcode/datalog ~/.atomcode/image-cache find ~/.atomcode/sessions -maxdepth 1 -type d ! -newermt 2026-08-16 ! -path ~/.atomcode/sessions -exec rm -rf {} 验证 du -sh ~/.atomcode预防措施始终在具体项目目录打开 AtomCode不要在 ~、Documents、Code.localized 等顶层目录打开否则 datalog 和 rewind 会无边界膨胀。