用户让助手整理下载目录,想得到分类和重命名建议。助手却删掉了几份“看起来重复”的原件,其中两份只是名字相似。与其继续加粗提示词里的“不要删除”,不如一开始就不给整理工具永久删除的动作。
一次整理用文件管理器预览、回收站和备份通常最好。脚本只输出建议也很实用。多位助手要共用同一套受限文件操作时,才值得通过 EasyNet 接入,避免每次重新开放通用终端。
文件服务可以先提供只读扫描,输入是用户选定的区域,输出原路径、内容比较依据和建议目标。另一个动作接受获批计划标识,执行其中明确的移动。删除要单独授权,不藏在“整理”内部。
计划应绑定当时文件版本,预览之后文件变化就暂停。执行方负责处理符号链接、共享盘和路径边界,调用方身份只能操作获准区域。Context 映射可以提供目录入口,但不会自动给出这套预览、批准和恢复服务。
输出应是一张实际变更表:成功移动到哪里、哪些失败、哪些尚未执行。原件恢复依靠事先准备的回收站或备份,不靠调用记录变出来;失败后也不能继续移动依赖于前一步的文件,留下更难判断的现场。
从带有同名不同内容文件的测试目录开始,先检查只读身份不能改名,再修改预览中的一个文件确认执行会停止。用户最后批准的是看得懂的一组动作,而不是给助手一个先做完再解释的磁盘权限。
- 01
只读扫描
比较内容,不凭名字判重复
- 02
预览并批准
显示原件、目标与版本
- 03
核对后移动
文件已变则停止
预览后文件变化就拒绝计划
只比较合成内容的指纹,不接触磁盘、不移动或删除文件。真实移动需要在执行侧处理并发和路径安全。
本地示例 · python
from hashlib import sha256
preview_hash = sha256(b"draft v1").hexdigest()
current_hash = sha256(b"draft v2").hexdigest()
status = "move-allowed" if current_hash == preview_hash else "preview-again"
assert status == "preview-again"
print(status)预期结果:输出 preview-again;旧预览不再允许移动。
接入时的检查项
- 只读身份是否无法执行删除或改名。
- 预览后变化的文件是否会暂停处理。
- 执行记录是否能说明每个原件移动到哪里。