folder-to-vector-kblisted
Install: claude install-skill kiakun-collab/kiakun-skills
# folder-to-vector-kb
## 这个 skill 是干什么的
当用户希望把一个指定文件夹中的公司案例、方案、研究、复盘、会议纪要、方法论文档,整理为可用于向量检索的知识库时,使用这个 skill。
这个 skill 的目标不是先设计一套大而全的平台,而是先把 **用户手头这批文件本身** 处理干净,输出可直接做 embedding / retrieval 的结构化结果。
---
## 适用场景
适用于以下任务:
- 把某个文件夹中的 PPT / PDF / DOCX / Markdown / TXT 整理成知识库
- 识别终稿、排除过程稿、抽取高价值内容
- 对广告行业文件做语义 chunk 切分与元数据补全
- 输出 `knowledge_base.jsonl` 供向量库 ingest 使用
不适用于以下任务:
- 网站多轮搜索与网页抓取
- 实时联网 research
- 通用爬虫系统设计
- 复杂数据库平台搭建
---
## 工作原则
### 1. AI 先处理文件本身,不要先空转做系统设计
默认优先直接分析这批文件,完成入库判断、清洗、chunk 切分和元数据补全。
### 2. 不要只按文件夹机械扫描
很多真实文件不会规整地放在项目文件夹里。必须同时结合:
- 文件夹名
- 文件名中的项目名
- 文档首页标题 / 目录 / 封面中的项目名
来识别项目归属。
### 3. 终稿优先,过程稿慎入库
不要把头脑风暴稿、发散稿、占位稿、中间版本整份塞进知识库。
### 4. 语义完整优先于字数平均
不要机械按 1000 字切块。chunk 应该在语义边界处切开,并且单独拿出来也能看懂。
### 5. 输出要能直接被后续系统消费
最终输出必须稳定、结构化、字段明确,便于后续做 embedding、向量存储、检索和引用。
---
## 输入
当执行这个 skill 时,默认输入包括:
- `folder_path`:待处理文件夹路径
- `output_path`:输出 JSONL 路径
- `allowed_extensions`:允许处理的文件后缀,如 `.pptx .pdf .docx .md .txt`
- `project_name_hints`:可选,用户额外提供的项目名关键词
- `max_chunk_chars`:建议单 chunk 最大字符数,默认 1500
- `min_chunk_chars`:建议单 chunk 最小字符数,默认 100
---
## 标准工作流
## Step 1:扫描文件列表 + 项目归组 + 终稿识别
### 目标
获取指定目录下所有候选文件,并在以下两种情况下都能正确识别项目归属:
- 文件位于项目文件夹中
- 文件只是散落在公共目录中的单独文件
### 必做操作
1. 递归扫描文件夹,获取所有符合条件的文件
2. 记录:
- `file_name`
- `file_path`
- `file_size`
- `created_time`
- `modified_time`
- `extension`
3. 先尝试从文件夹名识别项目
4. 再从文件名中提取项目名,作为补足或修正依据
5. 如果文件夹名与文件名冲突:
- 默认 **文件名中的项目名优先**
- 同时标记 `needs_review = true`
6. 如果两者都不明确,再尝试从文档封面、首页标题、目录、首段中识别项目名
7.