104 lines
3.0 KiB
Markdown
104 lines
3.0 KiB
Markdown
|
|
---
|
|||
|
|
name: wiki
|
|||
|
|
description: |
|
|||
|
|
文档站管理 skill。用于向个人 MkDocs 文档站添加、更新或整理技术文档。
|
|||
|
|
当用户提到写文档、添加到文档站、整理笔记到 wiki、记录技术知识点、
|
|||
|
|
或者想把某段内容发布到文档站时,使用此 skill。
|
|||
|
|
支持用户提供主题(自动生成文档)或提供已有内容(整理后发布)。
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 文档站管理
|
|||
|
|
|
|||
|
|
管理 MkDocs Material 文档站,支持添加和更新技术文档。
|
|||
|
|
|
|||
|
|
## 工作流程
|
|||
|
|
|
|||
|
|
### 1. SSH 连通性检查
|
|||
|
|
|
|||
|
|
在操作仓库之前,先运行 SSH 检查脚本:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
bash <skill-path>/scripts/check_ssh.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
如果检查失败,告知用户需要配置 SSH 密钥,不要继续操作。
|
|||
|
|
|
|||
|
|
### 2. 克隆仓库
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
TMP_DIR=$(mktemp -d)
|
|||
|
|
git clone ssh://git@47.121.181.112:222/wonder/docs.git "$TMP_DIR"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
后续所有文件操作在 `$TMP_DIR` 中进行。
|
|||
|
|
|
|||
|
|
### 3. 理解用户意图
|
|||
|
|
|
|||
|
|
用户可能以不同方式使用此 skill:
|
|||
|
|
|
|||
|
|
**场景 A — 提供主题**:用户说"写一篇关于 XXX 的文章"
|
|||
|
|
- 根据主题判断应该放在哪个章节(algorithm/architecture/project/qiniu-cloud)
|
|||
|
|
- 如果章节不明确,询问用户
|
|||
|
|
- 按模板生成完整文档
|
|||
|
|
|
|||
|
|
**场景 B — 提供内容**:用户粘贴了一段文档或笔记
|
|||
|
|
- 分析内容主题,判断合适的章节
|
|||
|
|
- 整理成标准格式(参考 `references/article-template.md`)
|
|||
|
|
- 如果内容不完整,询问用户补充
|
|||
|
|
|
|||
|
|
**场景 C — 更新现有文档**:用户说"更新 XXX 文章"
|
|||
|
|
- 在仓库中找到对应文件
|
|||
|
|
- 根据用户要求更新内容
|
|||
|
|
|
|||
|
|
**场景 D — 章节不明确**:无法确定放在哪里
|
|||
|
|
- 列出当前仓库的章节结构供用户选择
|
|||
|
|
- 询问用户该内容属于哪个章节,或是否需要新建章节
|
|||
|
|
|
|||
|
|
### 4. 生成/更新文档
|
|||
|
|
|
|||
|
|
遵循 `references/article-template.md` 中的标准格式。关键要点:
|
|||
|
|
|
|||
|
|
- 使用中文撰写
|
|||
|
|
- 代码示例以 Go 为主
|
|||
|
|
- 包含 mermaid 图表辅助说明
|
|||
|
|
- 包含常见陷阱和练习题
|
|||
|
|
- 文件名使用 kebab-case
|
|||
|
|
|
|||
|
|
### 5. 更新导航
|
|||
|
|
|
|||
|
|
修改 `mkdocs.yml` 的 `nav` 字段,将新文档添加到正确位置,或根据用户指示修改已有条目。
|
|||
|
|
|
|||
|
|
参考 `references/mkdocs-nav.md` 了解当前导航结构和规范。
|
|||
|
|
|
|||
|
|
### 6. 提交并推送
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd "$TMP_DIR"
|
|||
|
|
git add .
|
|||
|
|
git commit -m "docs: 添加/更新 <文档标题>"
|
|||
|
|
git push origin main
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
提交信息遵循 Conventional Commits 格式(参考全局 CLAUDE.md 规范)。
|
|||
|
|
|
|||
|
|
### 7. 清理
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
rm -rf "$TMP_DIR"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
告知用户文档已推送,CI/CD 会自动部署。
|
|||
|
|
|
|||
|
|
## 交互原则
|
|||
|
|
|
|||
|
|
- **章节不确定时必须询问**:不要擅自决定文档位置
|
|||
|
|
- **内容不明确时必须询问**:不要编造技术内容
|
|||
|
|
- **确认用户意图**:在生成大量内容前,先确认主题和范围
|
|||
|
|
- **保持一致性**:新文档的风格应与现有文档一致
|
|||
|
|
|
|||
|
|
## 注意事项
|
|||
|
|
|
|||
|
|
- 根据用户指示可以修改已有的 nav 条目(重命名、移动位置、删除等)
|
|||
|
|
- 如果需要新建目录,同时创建该目录的 `index.md`
|
|||
|
|
- 推送后告知用户 CI/CD 部署通常需要 1-2 分钟
|