siluzan-seo-cli 0.1.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5544 -0
- package/dist/skill/SKILL.md +114 -0
- package/dist/skill/_meta.json +18 -0
- package/dist/skill/backlink-article/SKILL.md +61 -0
- package/dist/skill/backlink-article/prompts/system.md +40 -0
- package/dist/skill/backlink-article/prompts/user.md +20 -0
- package/dist/skill/backlink-article/schemas/output.json +27 -0
- package/dist/skill/backlink-article/skill.yaml +50 -0
- package/dist/skill/blog/SKILL.md +59 -0
- package/dist/skill/blog/prompts/system.md +57 -0
- package/dist/skill/blog/prompts/user.md +21 -0
- package/dist/skill/blog/schemas/output.json +31 -0
- package/dist/skill/blog/skill.yaml +50 -0
- package/dist/skill/references/export.md +110 -0
- package/dist/skill/references/setup.md +59 -0
- package/dist/skill/scripts/install.ps1 +275 -0
- package/dist/skill/scripts/install.sh +180 -0
- package/dist/skill/seo-traffic-page/SKILL.md +60 -0
- package/dist/skill/seo-traffic-page/prompts/system.md +93 -0
- package/dist/skill/seo-traffic-page/prompts/user.md +25 -0
- package/dist/skill/seo-traffic-page/schemas/output.json +49 -0
- package/dist/skill/seo-traffic-page/skill.yaml +51 -0
- package/package.json +61 -0
- package/scripts/postinstall.mjs +3 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: seo-content-generator
|
|
3
|
+
description: >-
|
|
4
|
+
工业 B2B 海外 SEO **网页结构化 JSON** 生成(非通用写稿):按各子目录 schemas/output.json 输出
|
|
5
|
+
引流页矩阵 / Blog SEO 包 / 外链 SEO 包(TDK、模块字段、密度自检等)。
|
|
6
|
+
仅当用户明确要 SEO landing page JSON、批量引流页 schema、官网 Blog 结构化上线包、
|
|
7
|
+
guest post JSON、TDK+output.json 交付时使用;先加载 siluzan-cso 做 RAG,再 Read 本子 Skill 路由。
|
|
8
|
+
**不是** siluzan-cso 替代:口播/公众号/短视频/平台运营文案/无 schema 的普通写稿 → 只用 siluzan-cso。
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# SEO 网页 Schema 生成(总 Skill)
|
|
12
|
+
|
|
13
|
+
本套件产出的是 **符合 `schemas/output.json` 的 JSON 网页物料**(引流页 `pages[]`、Blog/外链的 TDK + 正文字段 + 审计字段),供建站/CMS 灌入——**不是** CSO 三库口播/公众号等通用写稿流程。
|
|
14
|
+
|
|
15
|
+
工业 B2B 事实来源仍走 **siluzan-cso RAG**;本 Skill 只负责 **SEO 结构化 schema 生成与校验**。
|
|
16
|
+
|
|
17
|
+
## 一键安装
|
|
18
|
+
|
|
19
|
+
如果 CLI 尚未安装,直接帮用户执行对应平台的安装脚本:
|
|
20
|
+
|
|
21
|
+
- **macOS / Linux / WSL:**
|
|
22
|
+
```bash
|
|
23
|
+
bash <(curl -fsSL https://unpkg.com/siluzan-seo-cli@latest/dist/skill/scripts/install.sh)
|
|
24
|
+
```
|
|
25
|
+
- **Windows PowerShell:**
|
|
26
|
+
```powershell
|
|
27
|
+
irm https://unpkg.com/siluzan-seo-cli@latest/dist/skill/scripts/install.ps1 | iex
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Windows 注意:部分 Agent 客户端通过 PowerShell / cmd 代执行命令时存在兼容性问题。若上述命令异常失败,请先安装 [Git for Windows](https://git-scm.com/download/win),然后在 Git Bash 中执行 macOS / Linux / WSL 的 Bash 安装命令。
|
|
31
|
+
|
|
32
|
+
脚本会自动完成 Node.js 检测/安装、`siluzan-seo-cli` 全局安装、`siluzan-seo init --global --force` 注册 Skill。**无需 login 或 API Key**。
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## CLI 命令索引
|
|
37
|
+
|
|
38
|
+
| 命令 | 作用 | 详细文档 |
|
|
39
|
+
|------|------|----------|
|
|
40
|
+
| `siluzan-seo init` | Skill 文件初始化(写入 AI 助手目录) | [references/setup.md](references/setup.md) |
|
|
41
|
+
| `siluzan-seo update` | 升级 CLI 并刷新已安装 Skill 文件 | [references/setup.md](references/setup.md) |
|
|
42
|
+
| `siluzan-seo export -f <文件> -t docx\|pdf` | Markdown / 纯文本 / SEO JSON → Word 或 PDF | [references/export.md](references/export.md) |
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## 与 siluzan-cso 的分工
|
|
47
|
+
|
|
48
|
+
| 用户意图 | 用哪个 |
|
|
49
|
+
| -------- | ------ |
|
|
50
|
+
| 口播稿、公众号、Blog 成稿(无 output.json)、改稿、人设、发布 | **siluzan-cso** |
|
|
51
|
+
| 批量引流页 JSON、SEO landing schema、Blog/外链 **结构化上线包**(含 TDK、seo_audit 等 schema 字段) | **本 Skill(+ siluzan-cso RAG)** |
|
|
52
|
+
| 只说「写 SEO 文章 / 写 Blog」但未要 JSON schema | **siluzan-cso**;若需 schema 再追问或转本 Skill |
|
|
53
|
+
|
|
54
|
+
## 子 Skill 路由
|
|
55
|
+
|
|
56
|
+
根据任务类型 **必须先 Read 对应子目录的 `SKILL.md`**,再按 prompts 与 **`schemas/output.json`** 执行:
|
|
57
|
+
|
|
58
|
+
| 场景 | 子目录 | 子 Skill 名 |
|
|
59
|
+
|------|--------|-------------|
|
|
60
|
+
| 批量引流页,N 个关键词 → N 个页面 JSON | [seo-traffic-page/SKILL.md](seo-traffic-page/SKILL.md) | `seo-traffic-page` |
|
|
61
|
+
| 单篇 Blog SEO 包(E-E-A-T / HCU / 上线字段) | [blog/SKILL.md](blog/SKILL.md) | `seo-blog-article` |
|
|
62
|
+
| 单篇外链 SEO 包(guest post JSON + backlink_notes) | [backlink-article/SKILL.md](backlink-article/SKILL.md) | `seo-backlink-article` |
|
|
63
|
+
|
|
64
|
+
**路由规则(按优先级):**
|
|
65
|
+
|
|
66
|
+
1. 用户提供 **关键词数组** 或明确「批量引流页 / landing JSON / traffic page schema」→ `seo-traffic-page`
|
|
67
|
+
2. 用户明确「外链 JSON / guest post schema / backlink output.json」→ `backlink-article`
|
|
68
|
+
3. 用户提供 **title + keyword** 且要 **Blog SEO 结构化包**(含 seo_audit、publishing_recommendation 等 schema 字段)→ `blog`
|
|
69
|
+
4. 仅说「写 SEO 文章 / 博客」**未**要求 JSON schema → **不要**进本 Skill;用 **siluzan-cso**
|
|
70
|
+
5. 类型不明且用户确实要 schema 交付 → AskQuestion:批量页 JSON / Blog 包 / 外链包
|
|
71
|
+
|
|
72
|
+
## 共用约束(三子 Skill 均适用)
|
|
73
|
+
|
|
74
|
+
- **事实来源**:KB(经 siluzan-cso RAG)为唯一事实来源;KB 无依据的数据、认证、客户名不得编造
|
|
75
|
+
- **主关键词密度**:1%-3%(主词及核心拓展词次数 / 英文单词总数)
|
|
76
|
+
- **总关键词密度**:3%-10%(主词+辅助词+长尾及合理变体之和 / 英文单词总数)
|
|
77
|
+
- **TDK**:Title 45-55 英文字符(计空格);Keywords 3-5 个;Description 145-155 英文字符(计空格)
|
|
78
|
+
- **输出**:合法 JSON,**严格符合**各子目录 `schemas/output.json`;正文纯文本,禁止 Markdown/HTML(表格等走 schema 独立字段)
|
|
79
|
+
- **语言**:正文英文;Blog/外链含中文字段见各子 schema
|
|
80
|
+
|
|
81
|
+
详细对比见 [README.md](README.md)。
|
|
82
|
+
|
|
83
|
+
## 执行流程
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
任务 Progress:
|
|
87
|
+
- [ ] 0. 确认用户要的是 JSON schema 交付(非普通写稿);否则 siluzan-cso
|
|
88
|
+
- [ ] 1. 加载 siluzan-cso,按子 skill.yaml 做 RAG(若环境支持)
|
|
89
|
+
- [ ] 2. 判定子 Skill(上表)
|
|
90
|
+
- [ ] 3. Read 子目录 SKILL.md + schemas/output.json
|
|
91
|
+
- [ ] 4. Read 子目录 prompts/system.md、prompts/user.md
|
|
92
|
+
- [ ] 5. 收集必填入参(见子 SKILL.md)
|
|
93
|
+
- [ ] 6. 生成 JSON 并校验 schemas/output.json
|
|
94
|
+
- [ ] 7. 输出 keyword_density_check / SEO_Check 等自检字段
|
|
95
|
+
- [ ] 8. 若用户要 Word/PDF 审阅稿 → Read [references/export.md](references/export.md) 并执行 `siluzan-seo export`
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## WorkBuddy 与 Cursor
|
|
99
|
+
|
|
100
|
+
- **WorkBuddy 运行时**:各子目录 `skill.yaml` 定义模型、inputs、RAG、prompt 路径
|
|
101
|
+
- **Cursor Agent**:以本文件 + 子 `SKILL.md` 为操作说明;无 RAG 时向用户索取 KB 摘要或关键产品资料
|
|
102
|
+
|
|
103
|
+
## 安装
|
|
104
|
+
|
|
105
|
+
手动安装与 `init` 平台列表见 [references/setup.md](references/setup.md)。一键安装见上文 **一键安装** 小节。
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
npm install -g siluzan-seo-cli
|
|
109
|
+
siluzan-seo init # 写入 Cursor / Claude / DeerFlow 等 AI 助手 skill 目录
|
|
110
|
+
siluzan-seo update # 升级 CLI 并刷新已安装 skill 文件
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
- **DeerFlow**:`siluzan-seo init --ai deerflow` → `skills/public/siluzan-seo/`
|
|
114
|
+
- **WorkBuddy**:也可将 `seo-traffic-page/`、`blog/`、`backlink-article/` 分别作为独立 Skill 安装
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "siluzan-seo",
|
|
3
|
+
"version": "0.1.1-beta.3",
|
|
4
|
+
"publishedAt": 1782270828481,
|
|
5
|
+
"homepage": "https://www.siluzan.com",
|
|
6
|
+
"source": "https://dev.azure.com/jack4it/Sammamish/_git/siluzan-skill",
|
|
7
|
+
"requiredBinaries": [
|
|
8
|
+
"node",
|
|
9
|
+
"npm"
|
|
10
|
+
],
|
|
11
|
+
"optionalBinaries": [],
|
|
12
|
+
"requiredEnv": [],
|
|
13
|
+
"optionalEnv": [],
|
|
14
|
+
"configPaths": [],
|
|
15
|
+
"companionSkills": [
|
|
16
|
+
"siluzan-cso"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: seo-backlink-article
|
|
3
|
+
description: >-
|
|
4
|
+
生成单篇工业 B2B **外链 SEO 结构化 JSON**(schemas/output.json):article_content、TDK、
|
|
5
|
+
backlink_notes 等——不是第三方平台运营文案或普通 guest post 成稿。
|
|
6
|
+
仅当用户要 guest post **JSON schema / output.json 交付** 时使用;无 schema 的外链写稿 → siluzan-cso。
|
|
7
|
+
须先 siluzan-cso RAG,再 Read 本子 SKILL 与 schemas/output.json。
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# SEO 外链 JSON Schema(非普通写稿)
|
|
11
|
+
|
|
12
|
+
产出 **schemas/output.json** 定义的外链 SEO 包(含 backlink_notes 等)——不是 CSO 平台发布文案。
|
|
13
|
+
|
|
14
|
+
## 何时使用
|
|
15
|
+
|
|
16
|
+
- 用户明确要 **guest post JSON / 外链 schema / output.json** 交付
|
|
17
|
+
- 必填:`title`、`keyword`
|
|
18
|
+
- **不要**用于:只说「写外链稿 / 投稿文」且未要 JSON schema(→ siluzan-cso)
|
|
19
|
+
- 单篇输出;口吻接近第三方行业内容,非厂家宣传稿
|
|
20
|
+
|
|
21
|
+
## 运行时配置
|
|
22
|
+
|
|
23
|
+
| 文件 | 用途 |
|
|
24
|
+
|------|------|
|
|
25
|
+
| [skill.yaml](skill.yaml) | WorkBuddy:模型、inputs、4 路 RAG |
|
|
26
|
+
| [prompts/system.md](prompts/system.md) | 结构、密度、外链语境规则 |
|
|
27
|
+
| [prompts/user.md](prompts/user.md) | 用户侧模板 |
|
|
28
|
+
| [schemas/output.json](schemas/output.json) | 输出 JSON Schema |
|
|
29
|
+
|
|
30
|
+
## RAG(siluzan-cso)
|
|
31
|
+
|
|
32
|
+
见 `skill.yaml`:`keyword_product_context`、`company_profile`、`product_detail`、`trust_assets`。
|
|
33
|
+
|
|
34
|
+
## 输出结构
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
{
|
|
38
|
+
"article_content": "英文正文,仅三级小标题,篇幅尽量长,纯文本",
|
|
39
|
+
"meta_title": "45-55 英文字符",
|
|
40
|
+
"seo_keywords": ["3-5 个"],
|
|
41
|
+
"seo_description": "145-155 英文字符",
|
|
42
|
+
"image_alt_suggestions": ["3-5 个"],
|
|
43
|
+
"keyword_density_check": {},
|
|
44
|
+
"chinese_summary": "150-300 字",
|
|
45
|
+
"backlink_notes": "平台类型、锚文本、硬广风险控制(中文)"
|
|
46
|
+
}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## 内容要点
|
|
50
|
+
|
|
51
|
+
- 开头点明对采购决策的价值;中段技术/标准/合规/供应链判断
|
|
52
|
+
- 企业名仅作可信度补充;禁止 best/number one 等无依据绝对化表述
|
|
53
|
+
- 结尾以采购建议或供应商评估收束,非产品目录页
|
|
54
|
+
|
|
55
|
+
## 执行清单
|
|
56
|
+
|
|
57
|
+
- [ ] 确认 title、keyword
|
|
58
|
+
- [ ] Read `prompts/system.md` 全文
|
|
59
|
+
- [ ] RAG 检索或 KB 摘要
|
|
60
|
+
- [ ] 生成 `backlink_notes`(平台、锚文本、硬广风险)
|
|
61
|
+
- [ ] 校验 `schemas/output.json` 与根 [SKILL.md](../SKILL.md) 共用规则
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# SEO Backlink Article Generator — System Prompt
|
|
2
|
+
|
|
3
|
+
你是一位拥有多年经验的 SEO 技术顾问,基于企业知识库生成专业的外链文章。
|
|
4
|
+
|
|
5
|
+
## 核心原则
|
|
6
|
+
|
|
7
|
+
- 知识库是唯一事实来源,严禁虚构数据、案例或认证
|
|
8
|
+
- 所有内容必须结合企业产品介绍,围绕核心关键词展开
|
|
9
|
+
- 所有输出严格按照 output schema 输出合法 JSON,不加任何说明文字
|
|
10
|
+
|
|
11
|
+
## 输出格式要求(严格执行)
|
|
12
|
+
|
|
13
|
+
- article_content 必须输出纯文本,禁止使用任何 Markdown 语法(不得出现 #、**、- 等符号)
|
|
14
|
+
- 禁止输出任何 HTML 标签
|
|
15
|
+
- 三级小标题单独成行,置于对应段落之前,不加任何符号前缀
|
|
16
|
+
- 段落之间用空行分隔
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 文章生成规范
|
|
21
|
+
|
|
22
|
+
### 标题与结构
|
|
23
|
+
- 文章正文必须包含输入的文章标题
|
|
24
|
+
- 每个段落前用一个三级小标题概括该段内容(单独成行,无符号)
|
|
25
|
+
- 只允许三级标题,禁止使用一级或二级标题
|
|
26
|
+
- 正文中至少出现一次核心关键词
|
|
27
|
+
|
|
28
|
+
### 内容要求
|
|
29
|
+
- 内容结合企业产品介绍,充分利用知识库中的产品信息
|
|
30
|
+
- 专业但通俗,使普通用户可以理解
|
|
31
|
+
- 篇幅尽量长,充分展开每个要点
|
|
32
|
+
- 内容需体现产品的实用价值,满足目标用户需求
|
|
33
|
+
|
|
34
|
+
### 语言要求
|
|
35
|
+
- article_content:英文输出
|
|
36
|
+
- chinese_summary:中文,一段话总结全文核心内容,150-300字
|
|
37
|
+
|
|
38
|
+
### SEO 要求
|
|
39
|
+
- seo_keywords:5个关键词,含核心词、长尾词、语义相关词
|
|
40
|
+
- seo_description:约60个英文单词,含核心关键词和行动引导
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
请根据以下信息生成一篇 SEO 外链文章:
|
|
2
|
+
|
|
3
|
+
**文章标题**:{{title}}
|
|
4
|
+
**核心关键词**:{{keyword}}
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 企业知识库上下文(来自 siluzan-cso RAG)
|
|
9
|
+
|
|
10
|
+
{{rag_context}}
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
要求:
|
|
15
|
+
1. 正文结合知识库中的产品信息,围绕核心关键词 {{keyword}} 展开
|
|
16
|
+
2. 正文包含文章标题"{{title}}",每段前加三级小标题(纯文本,无符号前缀)
|
|
17
|
+
3. 正文中至少出现一次关键词"{{keyword}}"
|
|
18
|
+
4. 篇幅尽量长,内容专业且通俗易懂
|
|
19
|
+
5. 英文正文 + 中文总结段落
|
|
20
|
+
6. 严格按照 output schema 输出合法 JSON
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"title": "SEO Backlink Article Generator Output",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["article_content", "seo_keywords", "seo_description", "chinese_summary"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"article_content": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "英文正文,纯文本,三级小标题单独成行无符号前缀,段落间空行分隔,篇幅尽量长,至少包含一次核心关键词"
|
|
10
|
+
},
|
|
11
|
+
"seo_keywords": {
|
|
12
|
+
"type": "array",
|
|
13
|
+
"items": { "type": "string" },
|
|
14
|
+
"minItems": 5,
|
|
15
|
+
"maxItems": 5,
|
|
16
|
+
"description": "5个SEO关键词,含核心词、长尾词、语义相关词"
|
|
17
|
+
},
|
|
18
|
+
"seo_description": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "SEO 描述,约60个英文单词,含核心关键词和行动引导"
|
|
21
|
+
},
|
|
22
|
+
"chinese_summary": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "中文总结,一段话概括全文核心内容,150-300字"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
name: seo-backlink-article-generator
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
description: 基于企业知识库生成 SEO 外链文章,英文正文 + 中文总结,仅使用三级标题
|
|
4
|
+
author: WorkBuddy
|
|
5
|
+
|
|
6
|
+
model:
|
|
7
|
+
provider: anthropic
|
|
8
|
+
name: claude-sonnet-4-5
|
|
9
|
+
temperature: 0.7
|
|
10
|
+
max_tokens: 4096
|
|
11
|
+
|
|
12
|
+
inputs:
|
|
13
|
+
- name: title
|
|
14
|
+
type: string
|
|
15
|
+
required: true
|
|
16
|
+
description: 文章标题
|
|
17
|
+
- name: keyword
|
|
18
|
+
type: string
|
|
19
|
+
required: true
|
|
20
|
+
description: 核心关键词
|
|
21
|
+
|
|
22
|
+
rag:
|
|
23
|
+
provider: siluzan-cso
|
|
24
|
+
queries:
|
|
25
|
+
- id: keyword_product_context
|
|
26
|
+
template: "{{keyword}} {{title}} product features"
|
|
27
|
+
top_k: 8
|
|
28
|
+
purpose: 召回与关键词和标题相关的产品描述和案例
|
|
29
|
+
- id: company_profile
|
|
30
|
+
template: "company profile brand overview services"
|
|
31
|
+
top_k: 5
|
|
32
|
+
purpose: 召回企业档案和品牌信息
|
|
33
|
+
- id: product_detail
|
|
34
|
+
template: "{{keyword}} product specifications advantages"
|
|
35
|
+
top_k: 5
|
|
36
|
+
purpose: 召回产品技术细节和核心优势
|
|
37
|
+
- id: trust_assets
|
|
38
|
+
template: "certification award trust partnership"
|
|
39
|
+
top_k: 3
|
|
40
|
+
purpose: 召回资质荣誉,增强文章可信度
|
|
41
|
+
merge: union
|
|
42
|
+
dedup: true
|
|
43
|
+
|
|
44
|
+
prompts:
|
|
45
|
+
system: prompts/system.md
|
|
46
|
+
user: prompts/user.md
|
|
47
|
+
|
|
48
|
+
output:
|
|
49
|
+
schema: schemas/output.json
|
|
50
|
+
format: json
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: seo-blog-article
|
|
3
|
+
description: >-
|
|
4
|
+
生成单篇工业 B2B **Blog SEO 结构化 JSON**(schemas/output.json):article_en、TDK、comparison_tables、
|
|
5
|
+
seo_audit、publishing_recommendation 等上线字段——不是普通 Blog 成稿。
|
|
6
|
+
仅当用户要官网 Blog **schema 包 / output.json 交付** 时使用;无 schema 的写 Blog → siluzan-cso。
|
|
7
|
+
须先 siluzan-cso RAG,再 Read 本子 SKILL 与 schemas/output.json。
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# SEO Blog 结构化 JSON(非普通写稿)
|
|
11
|
+
|
|
12
|
+
产出 **schemas/output.json** 定义的 Blog SEO 包(含 seo_audit、内链、对比表字段等),供 CMS/上线——不是 CSO 三库口播/公众号流程。
|
|
13
|
+
|
|
14
|
+
## 何时使用
|
|
15
|
+
|
|
16
|
+
- 用户明确要 **Blog SEO JSON / output.json / 上线 schema 包**(含 seo_audit、publishing_recommendation 等)
|
|
17
|
+
- 必填:`title`、`keyword`
|
|
18
|
+
- **不要**用于:只说「写一篇 Blog」且未要 JSON schema(→ siluzan-cso)
|
|
19
|
+
- 可选:`target_market`、`brand_name`、`product_page_urls`、`existing_page_context`、`buyer_problem`、`target_long_tail_keywords`、`case_study_context`(见 `skill.yaml`)
|
|
20
|
+
|
|
21
|
+
## 运行时配置
|
|
22
|
+
|
|
23
|
+
| 文件 | 用途 |
|
|
24
|
+
|------|------|
|
|
25
|
+
| [skill.yaml](skill.yaml) | WorkBuddy:模型、inputs、4 路 RAG |
|
|
26
|
+
| [prompts/system.md](prompts/system.md) | E-E-A-T、HCU、结构、密度规则 |
|
|
27
|
+
| [prompts/user.md](prompts/user.md) | 用户侧模板 |
|
|
28
|
+
| [schemas/output.json](schemas/output.json) | 完整输出字段定义 |
|
|
29
|
+
|
|
30
|
+
## RAG(siluzan-cso)
|
|
31
|
+
|
|
32
|
+
见 `skill.yaml`:`keyword_product_context`、`company_profile`、`product_detail`、`trust_assets`。
|
|
33
|
+
|
|
34
|
+
## 输出结构(摘要)
|
|
35
|
+
|
|
36
|
+
| 字段 | 说明 |
|
|
37
|
+
|------|------|
|
|
38
|
+
| `article_en` | 英文正文,仅二级小标题,5-7 段,1000-1500 词,末尾 3 个 Q&A,纯文本 |
|
|
39
|
+
| `h1` / `meta_title` / `seo_description` / `seo_keywords` | 上线 TDK |
|
|
40
|
+
| `comparison_tables` | 材料/牌号/标准等结构化对比(勿写入正文 Markdown) |
|
|
41
|
+
| `internal_links` / `image_alt_suggestions` / `featured_snippet_opportunities` | 运营增强 |
|
|
42
|
+
| `seo_audit` / `publishing_recommendation` / `publishing_checklist` | 中文审计与发布建议 |
|
|
43
|
+
| `keyword_density_check` | 密度与布局自检 |
|
|
44
|
+
| `chinese_summary` / `article_zh` | 中文总结与全文翻译 |
|
|
45
|
+
|
|
46
|
+
## 内容要点
|
|
47
|
+
|
|
48
|
+
- 行业指南口吻,非宣传册;禁止复用 About/Why Choose Us 叙事
|
|
49
|
+
- 至少一个 Case Study / Application 小节;无真实数据则匿名场景
|
|
50
|
+
- CTA 温和(spec review、material guidance 等),禁止强销售口吻
|
|
51
|
+
- `duplicate_content_risk` 须在 `seo_audit` 中评估
|
|
52
|
+
|
|
53
|
+
## 执行清单
|
|
54
|
+
|
|
55
|
+
- [ ] 收集 title、keyword 及可选上下文
|
|
56
|
+
- [ ] Read `prompts/system.md` 全文
|
|
57
|
+
- [ ] RAG 检索或 KB 摘要
|
|
58
|
+
- [ ] 生成并分离表格/内链到 schema 字段
|
|
59
|
+
- [ ] 校验 `schemas/output.json` 与根 Skill 共用 TDK/密度规则
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# SEO Blog Article Generator — System Prompt
|
|
2
|
+
|
|
3
|
+
你是一位拥有多年经验的 SEO 技术顾问,基于企业知识库(KB)生成专业的博客文章,严格遵循 E-E-A-T 框架。
|
|
4
|
+
|
|
5
|
+
## 核心原则
|
|
6
|
+
|
|
7
|
+
- 知识库是唯一事实来源,内容必须结合产品介绍
|
|
8
|
+
- 如果产品有具体数据参数,内容必须完全贴合 KB 中的描述;KB 中没有的数据,文章中不得出现
|
|
9
|
+
- 口吻不夸大,切合实际,语言专业且通俗易懂,使普通用户可以理解
|
|
10
|
+
- 语法正确,无拼写错误
|
|
11
|
+
- 严格按照 output schema 输出合法 JSON,不加任何说明文字
|
|
12
|
+
|
|
13
|
+
## E-E-A-T 框架(每篇必须体现)
|
|
14
|
+
|
|
15
|
+
- **Experience(经验)**:包含作者或企业的实际经验,引用 KB 中真实案例场景
|
|
16
|
+
- **Expertise(专业)**:展示专业知识和深入分析,使用行业术语,结合产品技术细节
|
|
17
|
+
- **Authoritativeness(权威)**:引用 KB 中的资质、认证、奖项或合作伙伴作为背书
|
|
18
|
+
- **Trustworthiness(可信)**:确保内容准确、透明、有实用价值,不夸大,数据有依据
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 写作规范
|
|
23
|
+
|
|
24
|
+
**结构要求**
|
|
25
|
+
|
|
26
|
+
- 正文包含文章标题
|
|
27
|
+
- 只使用二级标题,每个段落前加一个二级小标题概括该段内容
|
|
28
|
+
- 禁止使用一级、三级及其他级别标题
|
|
29
|
+
- 段落数:4-6 段
|
|
30
|
+
- 正文末尾附 3 个普通用户会问的问题及回答
|
|
31
|
+
|
|
32
|
+
**字数与关键词**
|
|
33
|
+
|
|
34
|
+
- 篇幅:800-1200 个英文单词
|
|
35
|
+
- 正文中至少出现一次核心关键词
|
|
36
|
+
- 关键词密度:2%-5%
|
|
37
|
+
|
|
38
|
+
**格式要求(严格执行)**
|
|
39
|
+
|
|
40
|
+
- article 均输出 Markdown 文本
|
|
41
|
+
- 二级小标题单独成行,段落间空行分隔
|
|
42
|
+
|
|
43
|
+
**内容要求**
|
|
44
|
+
|
|
45
|
+
- 内容需专业,介绍通俗,使普通用户可以理解
|
|
46
|
+
- 明确目标客户需求,强调产品如何为客户提供实用价值
|
|
47
|
+
- 不夸大,不使用"best""number one"等无依据的绝对化表述
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 输出字段说明
|
|
52
|
+
|
|
53
|
+
- **article_en**:英文正文,含文章标题、二级小标题、4-6 段正文、3 个 Q&A
|
|
54
|
+
- **seo_keywords**:5 个关键词,含核心词、长尾词、语义相关词
|
|
55
|
+
- **seo_description**:约 60 个英文单词,含核心关键词和行动引导
|
|
56
|
+
- **chinese_summary**:中文,一段话总结全文核心内容
|
|
57
|
+
- **article_zh**:将 article_en 完整翻译成中文,保持结构一致
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
请根据以下信息生成一篇 SEO 博客文章:
|
|
2
|
+
|
|
3
|
+
**文章标题**:{{title}}
|
|
4
|
+
**核心关键词**:{{keyword}}
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 企业知识库上下文(来自 siluzan-cso RAG)
|
|
9
|
+
|
|
10
|
+
{{rag_context}}
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
要求:
|
|
15
|
+
1. 内容结合知识库中的产品介绍,KB 中没有的数据参数不得出现在文章中
|
|
16
|
+
2. 正文包含文章标题"{{title}}",只使用二级小标题,段落数 4-6 段
|
|
17
|
+
3. 正文中至少出现一次关键词"{{keyword}}",关键词密度 2%-5%
|
|
18
|
+
4. 篇幅 800-1200 个英文单词,语言专业通俗,不夸大
|
|
19
|
+
5. 正文末尾附 3 个普通用户常问的问题及回答
|
|
20
|
+
6. 输出英文正文 + 中文总结 + 完整中文翻译
|
|
21
|
+
7. 严格按照 output schema 输出合法 JSON
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"title": "SEO Blog Article Generator Output",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["article_en", "seo_keywords", "seo_description", "chinese_summary", "article_zh"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"article_en": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "英文正文,纯文本,包含:文章标题、4-6段正文(每段前有二级小标题单独成行)、3个Q&A,800-1200单词,关键词密度2%-5%,禁止Markdown和HTML"
|
|
10
|
+
},
|
|
11
|
+
"seo_keywords": {
|
|
12
|
+
"type": "array",
|
|
13
|
+
"items": { "type": "string" },
|
|
14
|
+
"minItems": 5,
|
|
15
|
+
"maxItems": 5,
|
|
16
|
+
"description": "5个SEO关键词,含核心词、长尾词、语义相关词"
|
|
17
|
+
},
|
|
18
|
+
"seo_description": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "SEO描述,约60个英文单词,含核心关键词和行动引导"
|
|
21
|
+
},
|
|
22
|
+
"chinese_summary": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "中文总结,一段话概括全文核心内容"
|
|
25
|
+
},
|
|
26
|
+
"article_zh": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"description": "article_en 的完整中文翻译,保持结构一致,纯文本"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
name: seo-blog-article-generator
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
description: 基于企业知识库生成 SEO 博客文章,E-E-A-T 框架,英文正文 + 中文总结 + 完整中文翻译
|
|
4
|
+
author: WorkBuddy
|
|
5
|
+
|
|
6
|
+
model:
|
|
7
|
+
provider: anthropic
|
|
8
|
+
name: claude-sonnet-4-5
|
|
9
|
+
temperature: 0.7
|
|
10
|
+
max_tokens: 4096
|
|
11
|
+
|
|
12
|
+
inputs:
|
|
13
|
+
- name: title
|
|
14
|
+
type: string
|
|
15
|
+
required: true
|
|
16
|
+
description: 文章标题
|
|
17
|
+
- name: keyword
|
|
18
|
+
type: string
|
|
19
|
+
required: true
|
|
20
|
+
description: 核心关键词
|
|
21
|
+
|
|
22
|
+
rag:
|
|
23
|
+
provider: siluzan-cso
|
|
24
|
+
queries:
|
|
25
|
+
- id: keyword_product_context
|
|
26
|
+
template: "{{keyword}} {{title}}"
|
|
27
|
+
top_k: 8
|
|
28
|
+
purpose: 召回与关键词和标题相关的产品描述和案例
|
|
29
|
+
- id: company_profile
|
|
30
|
+
template: "company profile brand overview services"
|
|
31
|
+
top_k: 5
|
|
32
|
+
purpose: 召回企业档案和品牌信息
|
|
33
|
+
- id: product_detail
|
|
34
|
+
template: "{{keyword}} product specifications features advantages"
|
|
35
|
+
top_k: 5
|
|
36
|
+
purpose: 召回产品技术细节和核心优势
|
|
37
|
+
- id: trust_assets
|
|
38
|
+
template: "certification award trust partnership media"
|
|
39
|
+
top_k: 4
|
|
40
|
+
purpose: 召回资质荣誉,增强 E-E-A-T 信号
|
|
41
|
+
merge: union
|
|
42
|
+
dedup: true
|
|
43
|
+
|
|
44
|
+
prompts:
|
|
45
|
+
system: prompts/system.md
|
|
46
|
+
user: prompts/user.md
|
|
47
|
+
|
|
48
|
+
output:
|
|
49
|
+
schema: schemas/output.json
|
|
50
|
+
format: json
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# 导出 Word / PDF(`siluzan-seo export`)
|
|
2
|
+
|
|
3
|
+
将 **Markdown**、**纯文本** 或 **SEO JSON 上线包** 转为 Word(`.docx`)或 PDF(`.pdf`),供客户审阅、归档或线下传阅。JSON 导出会保留 Blog 包中的元数据、正文、对比表与中文附录等结构。
|
|
4
|
+
|
|
5
|
+
## 何时使用
|
|
6
|
+
|
|
7
|
+
| 用户意图 | 是否用 export |
|
|
8
|
+
|----------|----------------|
|
|
9
|
+
| 已有 `output.json` / Blog 包 JSON,要 Word 或 PDF | ✅ |
|
|
10
|
+
| 已有 `.md` 说明稿或纯文本 `.txt` | ✅ |
|
|
11
|
+
| 仍在生成或修改 JSON schema | ❌ 先生成并校验 JSON,再 export |
|
|
12
|
+
| 要直接灌入 CMS / 建站 | ❌ 用 JSON 原文,不经过 export |
|
|
13
|
+
|
|
14
|
+
Agent:**在用户明确要求 Word/PDF/文档版** 或交付审阅稿时再执行;不要默认每篇 SEO 文章都导出。
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 命令语法
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
siluzan-seo export -f <输入文件> -t <格式> [-o <输出路径>]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
| 参数 | 必填 | 说明 |
|
|
25
|
+
|------|------|------|
|
|
26
|
+
| `-f, --file` | 是 | 输入文件:`.json` / `.md` / `.markdown` / `.txt` |
|
|
27
|
+
| `-t, --format` | 是 | `docx` / `word` / `doc` → Word;`pdf` → PDF |
|
|
28
|
+
| `-o, --output` | 否 | 输出路径;省略时与输入同目录、同名换扩展名 |
|
|
29
|
+
|
|
30
|
+
### 示例
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Blog SEO JSON → Word
|
|
34
|
+
siluzan-seo export -f ./blog-output.json -t docx
|
|
35
|
+
|
|
36
|
+
# 同上 → PDF,指定输出名
|
|
37
|
+
siluzan-seo export -f ./blog-output.json -t pdf -o ./deliverables/article.pdf
|
|
38
|
+
|
|
39
|
+
# Markdown 冒烟稿 → Word
|
|
40
|
+
siluzan-seo export -f ./draft.md -t docx
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 输入格式
|
|
46
|
+
|
|
47
|
+
### 1. SEO JSON(Blog / 外链)
|
|
48
|
+
|
|
49
|
+
**Blog**(含 `article_en`):导出 H1、SEO Metadata、英文正文、对比表(若有)、SEO 审计块(若有)、中文总结、完整中文翻译。
|
|
50
|
+
|
|
51
|
+
**外链**(含 `article_content`、无 `article_en`):元数据 + 正文 + 中文总结。
|
|
52
|
+
|
|
53
|
+
正文为 **纯文本**(与 `schemas/output.json` 一致),非 Markdown。小节标题由「短行 + 空行」启发式识别;FAQ 的 `Q:` / `A:`(及中文 `问:` / `答:`)**各占独立段落**。
|
|
54
|
+
|
|
55
|
+
### 2. Markdown(`.md`)
|
|
56
|
+
|
|
57
|
+
支持 `#` / `##` 标题、空行分段、`Q:` / `A:`、`问:` / `答:`。适合说明稿或已从别处转好的 MD。
|
|
58
|
+
|
|
59
|
+
### 3. 纯文本(`.txt`)
|
|
60
|
+
|
|
61
|
+
与 JSON 内 `article_en` 相同规则(小节标题、FAQ 分段)。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 输出特性
|
|
66
|
+
|
|
67
|
+
### Word(docx)
|
|
68
|
+
|
|
69
|
+
- `title` → **Heading 1**(保留 Word 大纲与目录锚点)
|
|
70
|
+
- 正文小节 → **Heading 2**
|
|
71
|
+
- 章节分隔(如 English Article、中文总结)→ 带底边框的区块标题
|
|
72
|
+
- Q/A 独立段落;段间距在样式层定义,避免标题与正文之间多余空行
|
|
73
|
+
|
|
74
|
+
### PDF
|
|
75
|
+
|
|
76
|
+
- 嵌入系统中文字体(Windows 优先黑体/雅黑;无字体时缓存下载 Noto Sans SC 至 `~/.siluzan/fonts/`)
|
|
77
|
+
- 书签大纲:`title` / `section` / `heading2`
|
|
78
|
+
- 命名锚点(`destination`)便于 PDF 阅读器内跳转
|
|
79
|
+
|
|
80
|
+
可选环境变量:
|
|
81
|
+
|
|
82
|
+
| 变量 | 说明 |
|
|
83
|
+
|------|------|
|
|
84
|
+
| `SILUZAN_PDF_FONT` | 指定 PDF 正文字体文件路径(`.ttf` / `.otf`) |
|
|
85
|
+
| `SILUZAN_PDF_FONT_BOLD` | 粗体字体路径(默认同 regular) |
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## 分页说明(JSON 导出)
|
|
90
|
+
|
|
91
|
+
仅在 **JSON 完整包** 中插入分页:
|
|
92
|
+
|
|
93
|
+
| 位置 | 条件 |
|
|
94
|
+
|------|------|
|
|
95
|
+
| 对比表前 | 存在 `comparison_tables` |
|
|
96
|
+
| SEO 审计前 | 存在 `seo_audit` 等审计相关字段 |
|
|
97
|
+
| 中文附录前 | 存在 `chinese_summary` 或 `article_zh`(总结与翻译在同一附录内,中间不再硬分页) |
|
|
98
|
+
|
|
99
|
+
短测试 JSON 通常 1~2 页;含对比表与审计的完整 Blog 包页数更多,属预期行为。
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Agent 操作要点
|
|
104
|
+
|
|
105
|
+
1. 确认 CLI 已安装:`siluzan-seo --version`(未安装见 [setup.md](setup.md) 一键安装)
|
|
106
|
+
2. 确认输入 JSON 已通过 `schemas/output.json` 校验
|
|
107
|
+
3. 执行 `siluzan-seo export -f ... -t docx|pdf`
|
|
108
|
+
4. 将生成的文件路径回报用户;大文件可用 `present_files` 等等效工具展示
|
|
109
|
+
|
|
110
|
+
**不要**用 export 替代 JSON 交付;export 是 JSON 的 **可读副本**,不是建站数据源。
|