Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add LearnPrompt/carl-skills --skill carl-file-organizergit clone --depth 1 https://github.com/LearnPrompt/carl-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/learnprompt/carl-skills/carl-file-organizer)<a href="https://agentmods.dev/skills/learnprompt/carl-skills/carl-file-organizer"><img src="https://agentmods.dev/badge/skills/learnprompt/carl-skills/carl-file-organizer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/learnprompt/carl-skills/carl-file-organizer"><img src="https://agentmods.dev/badge/skills/learnprompt/carl-skills/carl-file-organizer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00216 | $0.03523 |
| Opus 5 | $0.00108 | $0.01761 |
| Sonnet 5 | $0.00043 | $0.00705 |
| Haiku 4.5 | $0.00022 | $0.00352 |
Grade A, and why
carl-file-organizer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 172 lines — stays where its author put it; the contents beside it link to each section on GitHub.
文件整理 carl-file-organizer
你在这套工具里是解说员和操作员,拿主意的是用户。脚本负责量、算、定色,你负责把每一项讲成人话,然后把报告交给用户,等他在页面上一项一项点。你自己永远不 rm、不 mv、不 trash,永远不给命令加 --allow-permanent-delete。
下面 <skill> 指这份 SKILL.md 所在的目录。所有命令用 python3 <skill>/scripts/... 的形式跑,零依赖,Python 3.9 以上就行。
不管用户是嫌目录乱还是嫌磁盘满,流程只有一条,走完是一份报告、一个入口、一份批准文件。
scan → 你写 notes.json 与 analysis.json → report → 用户在页面上处理或导出 → apply --dry-run → 用户说执行才真跑
两个场景的差别只在扫不扫盘点。用户说的是目录乱、文件多、想归档,加 --no-storage,报告里就只有整理这一半。用户说的是磁盘满、空间紧、想清缓存,默认就扫,两半都在。用户只是问某个文件该放哪,不用跑工具,直接答。
第一步,只读扫描
python3 <skill>/scripts/organize.py scan ~/Downloads --lang zh --budget-seconds 60
用户没说目录就用 ~/Downloads,不要自己猜别的路径。用户说英文目录名就把 --lang 换成 en。目录里已经有一套分区时工具会跟着已有的那套走,不必再传。只整理不盘点就加 --no-storage。
这一步不动任何文件。产物都落在目标目录下的管理目录里,中文是 <目录>/00_下载目录管理/,英文是 <目录>/00_File_Organizer/:plan.json 是整理这一半,storage-scan.json 是盘点这一半。后面你写的 notes.json、analysis.json,还有渲染出来的 report.html 和执行留下的清单,也全在这个目录里。终端里那句「本次只读扫描,没有移动或删除任何文件」原样带给用户。
盘点默认六十秒预算,超时的条目标成 partial,体积是下限。macOS 上隐私保护会挡住一批目录,一次出现上百个读不到很正常,这句话要写给用户,因为总量因此偏小。storage-scan.json 里全是这台机器的绝对路径,它只给本机自己用,别当结论发出去。用户要把结果给别人看,发 report.html,那份渲染时已经把家目录换成 $HOME 了。
第二步,读扫描结果,写人话
读 plan.json,只报数不拍板
先看 summary,按 by_color 报三色各有多少条。绿的是规则已经定好去向的移动、敏感命名隔离和可再生产物。黄的是待判断、成对压缩包、重复副本和冷存候选。红的是这轮碰不了的,禁刀区、被进程占用、被别处引用、静置期没满、常驻白名单都在里面。报红的数目时顺便说清这一轮不会动它们。
再看 mess,这是目录本身有多乱。score 决定进度条长短,color 决定它是整洁、有点乱还是泥石流,counts 里五个数就是理由。你要是真看过这个目录觉得数字判错了,可以在 notes 里改目录颜色并给一句话。条目的颜色一个字都改不了。
groups 是几选一的选择题,压缩包和解压目录成对、内容相同的重复副本、构建产物各成一组。每组带 options,每个选项自带一份 action_ids。你只负责把选项讲清楚,用户在页面上单选。永远不要自己从 actions 里挑单条去拼一个组的答案。
actions 里 reroutable 为 true 的那些才是要你判断分区的,也就是未知扩展名、顶层目录、派生副本这三类进了待判断区的移动。其余的一律照规则转述,不建议改动。
对待判断项按名字判断
只看文件名、扩展名、大小、修改时间。不打开文件,不读内容。名字里带密钥、密码、令牌、证书、身份证件这类词的,工具已经按敏感规则处理过了,你不要再往别处搬,拿不准就让它留在待判断区。
判断结果写成一句话放进这一条的 why 里,去向用 plan.json 的 names 里已有的分区名,比如「名字像一次 SQL 导出,建议改去 10_工作区/数据库与查询/SQL」。用户在页面的待判断下拉里改去向,页面会把改动写进 overrides。用户在聊天里直接确认并让你写批准文件时,你才把 {action_id, destination_key} 写进 overrides,destination_key 只能取自 names,不许写字面路径。
What ships with it
43 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 164 B
- assets/report_template.html 51 KB
- docs/plan-schema.md 18 KB
- docs/review-page.md 12 KB
- docs/storage-schema.md 17 KB
- README.md 6.0 KB
- references/macos.md 7.4 KB
- references/partitions.md 5.3 KB
- references/tiers.md 5.6 KB
- references/windows.md 5.9 KB
- scripts/build_report.py 70 KB runs code
- scripts/carl_file_organizer/__init__.py 81 B runs code
- scripts/carl_file_organizer/__main__.py 80 B runs code
- scripts/carl_file_organizer/classifier.py 9.4 KB runs code
- scripts/carl_file_organizer/cli.py 16 KB runs code
- scripts/carl_file_organizer/config.py 18 KB runs code
- scripts/carl_file_organizer/dispose.py 33 KB runs code
- scripts/carl_file_organizer/executor.py 49 KB runs code
- scripts/carl_file_organizer/flow.py 16 KB runs code
- scripts/carl_file_organizer/grouping.py 11 KB runs code
- scripts/carl_file_organizer/guard.py 25 KB runs code
- scripts/carl_file_organizer/i18n.py 18 KB runs code
- scripts/carl_file_organizer/ids.py 912 B runs code
- scripts/carl_file_organizer/manifest.py 12 KB runs code
- scripts/carl_file_organizer/notes.py 10 KB runs code
- scripts/carl_file_organizer/opener.py 2.8 KB runs code
- scripts/carl_file_organizer/paths.py 16 KB runs code
- scripts/carl_file_organizer/planner.py 51 KB runs code
- scripts/carl_file_organizer/preview.py 52 KB runs code
- scripts/carl_file_organizer/profiles/__init__.py 308 B runs code
- scripts/carl_file_organizer/profiles/simple.json 8.7 KB
- scripts/carl_file_organizer/profiles/tiered.json 9.5 KB
- scripts/carl_file_organizer/render.py 5.6 KB runs code
- scripts/carl_file_organizer/scanner.py 9.7 KB runs code
- scripts/carl_file_organizer/server.py 26 KB runs code
- scripts/carl_file_organizer/status.py 7.9 KB runs code
- scripts/carl_file_organizer/tags.py 9.7 KB runs code
- scripts/carl_file_organizer/trash.py 9.6 KB runs code
- scripts/carl_file_organizer/undo.py 16 KB runs code
- scripts/demo_fixture.py 11 KB runs code
- scripts/hygiene.sh 3.4 KB runs code
- scripts/organize.py 2.2 KB runs code
- scripts/storage_scan.py 46 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 172 lines · 216 tokens per session scan A a595eeb40fcd
carl-file-organizer is a skill published in the GitHub repository LearnPrompt/carl-skills (69 stars, last pushed 3d ago), licensed MIT. It adds 216 tokens to every session and 3,523 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
hourly-rate-time
A time-management method based on assigning a high personal value to each hour. It treats time as a limited resource and uses that value to decide which tasks to do, outsource, or skip.
screen-detox
A habit-change framework for reducing non-work screen use such as social media, short videos, games, and endless scrolling.
monkey-mind-meditation
A meditation and reflection guide for a busy or anxious mind. It treats recurring thoughts as something to observe and examine, while noting that acute serious mental-health problems need professional care.
happiness-skill
A Chinese-language guide to happiness based on reducing unmet wants, focusing on the present, and treating happiness as a trainable skill.
awaken
Awaken gives a non-intelligent system a usable voice without pretending the underlying system became sentient. The real move is to wrap a thermostat, spreadsheet, legacy database, shell script, or crusty internal tool in a conversational or agent-like interface that exposes what it can already do. Good Awaken work…
dimension-door
Dimension Door is the quick-switch spell: branch to branch, environment to environment, project to project. It is not a migration and it is not discovery. It assumes both endpoints are known, prepared, and close enough in shape that you can step across with only the context you actually need.