发布日期: 2026-04-03 版本: v3.2.0
命令:pnpm scan --inject
功能:
支持的注入字段:
title:从内容提取或使用文件名date:生成当前时间tags:从缓存匹配或关键词提取categories:从路径提取或推断description:从第一段提取示例:
# 扫描并注入缺失字段
pnpm scan --inject
# 指定目录
pnpm scan --dir content/posts --inject
命令:pnpm post:clean <postId>
功能:
--dry-run)清理内容:
archived保留数据:
示例:
# 预演模式
pnpm post:clean hello-world --dry-run
# 实际清理
pnpm post:clean hello-world
| 表 | 字段 | 类型 | 说明 |
|---|---|---|---|
Post |
tags |
String? |
JSON 数组,存储文章标签 |
Post |
cleanedAt |
DateTime? |
清理时间戳 |
迁移:20260403081511_add_post_clean_fields
--inject 选项说明post:clean 命令src/parser.ts:
injectMode 参数src/scanner.ts:
inject 选项parsePostprisma/schema.prisma:
tags 和 cleanedAt 字段src/dal/post.ts:
cleanPost() 方法getCleanedPosts() 方法isCleaned() 方法src/workflow/post-cleaner.ts (新建):
src/api.ts:
POST /api/posts/:id/clean 端点tags 字段post-clean.ts (新建):
scan.ts:
--inject 选项所有新功能均已测试通过,包括:
无
cd packages/database
pnpm prisma migrate dev --name add_post_clean_fields
pnpm build
# 测试扫描功能
pnpm scan --help
# 测试清理功能
pnpm post:clean --help
--inject 处理所有缺失 frontmatter 的文章
pnpm scan --inject
pnpm scan --dir content/new-posts --inject
--inject,预览生成结果发布后等待:建议发布 1-2 周后再清理,确保无需修改
--dry-run 预览
pnpm post:clean <postId> --dry-run
mkdir -p content/archived
cp content/done/<postId>.md content/archived/
发布者: PostWaver Team 发布日期: 2026-04-03 下个版本: v3.3.0 (计划中)