file-sorter SKILL.md skillA
This file is byte-identical to the first copy the registry indexed. Same content hash, so the same checks give both the same grade.
file-sorter from skyzhao1223/zspace-cli is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add skyzhao1223/zspace-cli/file-sorter@git:20261008.f01b099Pins git:20261008.f01b099 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- skyzhao1223/zspace-cli
- Path
skills/file-sorter/SKILL.md- Versions recorded
- 5
- Latest version
- git:20261008.f01b099, committed Oct 8, 2026
- First version recorded
- Oct 8, 2026
- Size
- 29,105 bytes
- Repository stars
- 27
- License
- MIT
Use when 用户想给 NAS 上一个「什么都往里丢」的乱目录做分类归档 — "帮我把文件分个类"、"图纸和文档混在一起"、"根目录一堆散文件"、"按类型建目录归档"、"dwg/pdf/图片全堆在一层"、"外置盘拷进来一堆东西没整理"。只读扫描按扩展名归类(文档/图纸CAD/设计源文件/图片/视频/音频/电子书/压缩包/安装包/字体/代码/备份镜像/待分类),算出每个文件的 old → new 目标路径;默认不动已在类别目录里的文件、不动疑似项目目录;LLM 出整理计划,用户确认后由 Agent 执行 mv。.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# File Sorter — 通用文件分类归档
## 概述
**跨 NAS 通用**:扫描脚本跑在**本地挂载路径**上(SMB/NFS 挂载的 NAS 共享、
外置硬盘、本地同步目录都行),纯 stdlib 零依赖,不绑定任何品牌 API。
专治「什么都往里丢」的目录:照片、视频、文档、压缩包、安装包、图纸平铺在一层,
或散落在几个无意义的子目录里。本 skill 做**正向合规扫描**:定义合规结构
(每个文件待在与它类别匹配的目录里)→ 不匹配即给出 `old → new` 目标路径。
**写操作不在脚本里** — 脚本只算目标路径,LLM 汇总成整理计划,
经用户确认后由 Agent 执行(挂载盘 `mkdir -p` + `mv -n`,极空间也可走
`zs mv` / MCP `move`)。
**默认保守**:两类文件不会被提议搬家 —
1. 已在某个类别目录里的(哪怕类别不符,如 `图纸/` 里的效果图)
2. 疑似项目目录里的(命名子目录内多类混合,如 `2024_官网改版/`)
要动它们必须显式加 `--strict` / `--split-project-dirs`。
## Prerequisites
```bash
open smb://<NAS_IP>/data # 极空间/群晖/威联通/绿联等均支持 SMB
python3 --version # ≥3.9,无第三方依赖
```
## 快速验证
```bash
python3 file_sorter.py scan --root /Volumes/nas/data --sample 500
```
## 命令
| 命令 | 用途 |
|------|------|
| `scan --root PATH` | 分类归档扫描(只读),给出每个文件的 `target` |
| `scan --root PATH --json --output F` | JSON 输出 |
| `--layout {type,type-year,year-type}` | 目标结构:`图纸/` · `图纸/2024/` · `2024/图纸/`(默认 `type`) |
| `--naming {zh,en}` | 目标目录中文名(`图纸`)或英文名(`Drawings`),默认 zh |
| `--dest DIR` | 归档到子目录前缀下(如 `--dest 整理后` → `整理后/图纸/`),默认就地归档 |
…Read the whole file at its exact version.
How to install
mdr add skyzhao1223/zspace-cli/file-sorter@sha256:6bce6ca234669520The line at the top of this page pins the label git:20261008.f01b099, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_w5o73xhjqdxv527e)
2 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 5 versions of this file, all committed on Oct 8, 2026.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20261008.f01b099 latest | 2026-10-08 | f01b099 | 29,105 B | A | view · diff |
| git:20261008.c2f4f35 | 2026-10-08 | c2f4f35 | 20,492 B | A | view · diff |
| git:20261008.340ccbf | 2026-10-08 | 340ccbf | 20,121 B | A | view · diff |
| git:20261008.4665db0 | 2026-10-08 | 4665db0 | 18,379 B | A | view · diff |
| git:20261008.feeee6e | 2026-10-08 | feeee6e | 17,121 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (29105 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
skyzhao1223/zspace-cli · 27 stars · license MIT · pushed 2026-10-09 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_w5o73xhjqdxv527e GET https://markdownregistry.com/api/v1/resolve?ref=skyzhao1223/zspace-cli/file-sorter GET https://markdownregistry.com/api/v1/blob/6bce6ca23466952036798f89fde7011fd213973e4cdda290dd92227ce1261737
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from skyzhao1223/zspace-cli
Every file in skyzhao1223/zspace-cli