用途:跨 CMS 管理博客的标签、分类与主题聚类。命令形式为 /blog taxonomy suggest <file>(从内容提取候选标签与分类)、/blog taxonomy sync <cms>(经认证 API 推送分类)、/blog taxonomy audit [directory](检查薄标签、孤立标签、分类膨胀)。
标签建议流程:解析正文的 H2/H3 标题、加粗斜体短语与现有 frontmatter;做词频分析(单词≥4次、双词≥3次、三词≥2次,排除停用词);语义分组(合并单复数、连字符差异与同义词);去重排序(slug 的 Levenshtein 距离≤2 视为重复,得分=词频×2+标题出现×5+强调×1),返回前 5–10 个建议,并给出主/次分类。
CMS 适配:WordPress 走 REST,用 Application Passwords(base64 Basic 认证),标签是一等实体,支持 GET/POST /wp-json/wp/v2/tags 与 categories(支持 parent 层级),分页跟随 X-WP-TotalPages。Shopify 走 GraphQL Admin API,标签为 Article 上的字符串数组,认证头 X-Shopify-Access-Token,用 articleUpdate 更新。Ghost 走 Admin API(REST),认证头 Authorization: Ghost {jwt_token},JWT 由管理 API key 签名,iat=now、exp=5 分钟、audience=/admin/。Strapi 端点由内容类型自动生成,v4+ 使用 data 包装,Bearer 认证。Sanity 用 GROQ 查询、Mutations API 写入,Bearer 认证。
审计流程:盘点 tag_name→文章列表映射;检查薄标签归档(<5 篇建议 noindex 或合并)、孤立标签(0 篇建议删除)、标签膨胀(>50 个建议合并)、分类层级(>3 层建议扁平化)、未分类文章、重复 slug。建议按严重、高、中、低分级输出。
站点规范:每站 5–10 个主分类;标签至少 5 篇才建归档页;slug 统一小写连字符;每篇恰好 1 个主分类;每篇 3–8 个标签,不超过 15。
环境变量:CMS_TYPE(wordpress、shopify、ghost、strapi、sanity)、CMS_URL、CMS_API_KEY,须在 shell 环境设置,不得写入文件或提交到版本库。
错误处理:缺少环境变量时报出缺失项;401/403 报认证失败且不重试;10 秒超时报连接超时;标签已存在则跳过;429 等待并重试一次;不支持的 CMS_TYPE 列出有效选项并退出。