一键导入
batch-collector
批量文件清单采集器。扫描一个或多个本地文件/目录,或从任务列表加载路径, 按支持的扩展名生成文件元信息清单,供后续文本、表格、文档、图像等采集流程继续处理。 当用户需要批量盘点待采集文件、生成本地文件 manifest、统计输入文件类型或为后续采集算子准备文件清单时使用此 skill。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
批量文件清单采集器。扫描一个或多个本地文件/目录,或从任务列表加载路径, 按支持的扩展名生成文件元信息清单,供后续文本、表格、文档、图像等采集流程继续处理。 当用户需要批量盘点待采集文件、生成本地文件 manifest、统计输入文件类型或为后续采集算子准备文件清单时使用此 skill。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
PiFlow 技能生成器。当用户完成了一次完整并成功的数据处理任务时调用,根据当前 skills/generated 的本地约定和 references/piflow_skill_template.md 通用模板创建、更新或校验 PiFlow-compatible skill,包括 UTF-8 编码的 SKILL.md、DAG 可读的 input_params/output_params、version/category/tag 元数据、skill.json、scripts/references/assets 资源目录,以及本地校验脚本。仅在用户明确要求生成或保存 skill,或某次数据处理任务已经完成并需要把已验证成功的操作流程沉淀为 skill 时使用;默认不要因为“可能需要 skill”或“当前能力不足”而优先触发此 skill。
LLM 文件转换算子。用于读取一个文本文件,按照给定指令调用大模型进行内容转换,并输出新的文本文件。
领域缩略语展开 Skill:按内置或外部词典将独立缩略语替换为全称,可选在全称后保留原缩写。 适用于技术文本、论文摘要和业务记录中的缩写清洗;不负责模糊缩写消歧或大小写无关替换。
括号类型统一工具。读取结构化数据文件,执行中文/全角括号到 ASCII 半角括号的映射,输出括号已统一的结构化数据文件。 当用户提到括号统一、全角括号转半角、中文括号转换、括号规范化等需求时使用此skill。 即使用户没有明确说出"bracket_normalizer",只要任务涉及括号类符号统一,就应该使用此skill。 不负责全角字母数字转换、Unicode正规化或其他通用全半角处理。
跨字段比较校验工具。读取结构化数据文件(CSV、TSV、Excel等),检查两个字段之间的逻辑约束关系 是否满足(如 start < end、min ≤ max、price >= cost),支持六种比较运算符,多约束可组合使用。 当用户提到跨字段校验、字段间比较、逻辑约束检查、大小关系验证等需求时使用此skill。 即使用户没有明确说出"跨字段",只要任务涉及验证两个字段值之间的逻辑关系,就应该使用此skill。
结构化表格重复行检测工具。仅检查CSV/TSV/Excel等表格型数据中的完全重复记录或指定列子集重复, 标记后续重复行并保留首次出现;不处理文本片段清理、文档去重或其他字段质控。
| name | batch_collector |
| description | 批量文件清单采集器。扫描一个或多个本地文件/目录,或从任务列表加载路径, 按支持的扩展名生成文件元信息清单,供后续文本、表格、文档、图像等采集流程继续处理。 当用户需要批量盘点待采集文件、生成本地文件 manifest、统计输入文件类型或为后续采集算子准备文件清单时使用此 skill。 |
| name_zh | 批量文件清单采集器 |
| input_params | [{"name":"input","type":"string","required":false,"description":"输入文件或目录路径列表,与 task_list 二选一"},{"name":"task_list","type":"string","required":false,"description":"任务列表文件路径,支持 json 或 txt,与 input 二选一"},{"name":"output","type":"string","required":true,"description":"输出文件路径"},{"name":"recursive","type":"string","required":false,"default":"False"},{"name":"file_types","type":"string","required":false,"description":"指定允许采集的扩展名,如 txt csv pdf;不填时使用脚本默认支持类型"},{"name":"batch_size","type":"string","required":false,"default":"0","description":"进度报告间隔,0 表示不按批次报告"},{"name":"output_format","type":"string","required":false,"default":"jsonl","description":"输出格式:jsonl、json、csv 或 auto"}] |
| output_params | [{"name":"output","type":"jsonl_file","description":"文件元信息清单,每条记录包含 file_path、filename、extension、file_size、collected_at、task_index、total_tasks"},{"name":"total_files","type":"integer","description":"采集到的文件总数"},{"name":"type_counts","type":"object","description":"按扩展名统计的文件数量分布"}] |
| tag | 采集 |
本 skill 用于批量扫描本地文件或目录,生成“待采集文件清单”。它不会读取、清洗或解析文件正文,只记录文件路径、文件名、扩展名、大小、采集时间和任务序号等基础元信息。
它适合放在采集流程入口,用来把一批本地资源整理成统一 manifest,再交给 text_collector、table_collector、image_collector 等后续算子继续处理。
当用户提出以下需求时,应使用本 skill:
| 参数 | 说明 |
|---|---|
--output | 输出文件路径 |
| 参数 | 说明 |
|---|---|
--input | 一个或多个文件/目录路径,与 --task_list 二选一 |
--task_list | 任务列表文件,支持 json 或 txt,与 --input 二选一 |
| 参数 | 默认值 | 说明 |
|---|---|---|
--recursive | false | 是否递归扫描子目录 |
--file_types | 脚本默认支持类型 | 指定允许采集的扩展名,如 txt csv pdf |
--batch_size | 0 | 进度报告间隔,0 表示不按批次报告 |
--output_format | jsonl | 输出格式:jsonl、json、csv 或 auto |
input_dir/
alpha.txt
beta.csv
config.json
nested/
deep.md
skip.exe
workspace/data/a.txt
workspace/data/b.csv
workspace/data/docs
[
"workspace/data/a.txt",
"workspace/data/b.csv",
"workspace/data/docs"
]
默认输出 JSONL,每行代表一个被采集到的文件:
{"file_path": "workspace/data/a.txt", "filename": "a.txt", "extension": ".txt", "file_size": 123, "collected_at": "2026-06-10 10:00:00", "task_index": 1, "total_tasks": 2}
字段含义:
| 字段 | 说明 |
|---|---|
file_path | 相对输入根目录的文件路径 |
filename | 文件名 |
extension | 扩展名 |
file_size | 文件字节数 |
collected_at | 清单生成时间 |
task_index | 当前文件序号 |
total_tasks | 本次输出文件总数 |
python scripts/run_batch_collector.py \
--input ./data \
--output ./batch_result.jsonl \
--recursive true
python scripts/run_batch_collector.py \
--input ./papers ./tables ./images \
--output ./batch_result.jsonl \
--recursive true
python scripts/run_batch_collector.py \
--input ./data \
--output ./result.jsonl \
--file_types txt csv pdf
python scripts/run_batch_collector.py \
--task_list ./tasks.txt \
--output ./batch_result.jsonl
命令行输出:
[OK] Batch collection completed!
Input paths: 1
Total files collected: 5
File type distribution:
- .csv: 1
- .json: 1
- .md: 1
- .txt: 2
Output: ./batch_result.jsonl
JSONL输出:
{"file_path": ".../alpha.txt", "filename": "alpha.txt", "extension": ".txt", "file_size": 20, "collected_at": "2026-06-10 10:00:00", "task_index": 1, "total_tasks": 5}
{"file_path": ".../beta.csv", "filename": "beta.csv", "extension": ".csv", "file_size": 24, "collected_at": "2026-06-10 10:00:00", "task_index": 2, "total_tasks": 5}
本 skill 使用 Python 标准库实现,无需额外安装第三方依赖。请使用项目虚拟环境运行:
.\.venv\Scripts\python.exe scripts/run_batch_collector.py --help
--input 和 --task_list 至少提供一个。--recursive true 才会扫描子目录。--file_types 只控制扩展名筛选,不检查文件内容是否真实符合该格式。file_path 是后续算子可继续读取的文件路径。