🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx @anthropic-ai/skills install supercent-io/skills-template/technical-writing
💡 提示:需要 Node.js 和 NPM
技术文档撰写
何时使用此技能
- 撰写技术规格说明
- 创建架构文档
- 记录系统设计
- 编写运行手册和操作指南
- 创建设开发者文档
- API 文档
- 用户手册和指南
- 发布说明和更新日志
指示
步骤 1:了解您的受众
开发者受众:
- 专注于实现细节
- 包含代码示例
- 可以使用技术术语
- 展示如何做,而不仅仅是做什么
运维/运营受众:
- 专注于部署和维护
- 包含配置示例
- 强调监控和故障排除
- 提供运行手册
经理/利益相关者受众:
- 高层次概述
- 业务影响
- 尽量减少技术术语
- 关注成果
最终用户受众:
- 简单清晰的语言
- 分步说明
- 视觉辅助(截图、视频)
- 常见问题解答部分
步骤 2:选择合适的文档类型
技术规格说明:
# [功能名称] 技术规格说明
## 概述
简要描述此规格说明涵盖的内容
## 问题陈述
我们要解决什么问题?
## 目标和排除项
### 目标
- 目标 1
- 目标 2
### 排除项
- 我们明确不做的内容
## 解决方案设计
### 高层架构
### 数据模型
### API 契约
### 用户界面
## 实施计划
### 阶段 1
### 阶段 2
## 测试策略
## 安全考量
## 性能考量
## 监控与告警
## 发布计划
## 回滚计划
## 未决问题
## 参考资料
架构文档:
# 系统架构
## 概述
高层系统描述
## 架构图
[插入图表]
## 组件
### 组件 1
- 职责
- 技术栈
- 接口
### 组件 2
...
## 数据流
数据如何在系统中流动
## 关键设计决策
### 决策 1
- 背景
- 考虑的选项
- 做出的决策
- 理由
## 技术栈
- 前端:React, TypeScript
- 后端:Python, FastAPI
- 数据库:PostgreSQL
- 基础设施:AWS, Docker, Kubernetes
## 可扩展性
系统如何扩展
## 安全性
认证、授权、数据保护
## 监控与可观测性
指标、日志、追踪
## 灾难恢复
备份和恢复程序
## 未来考量
运行手册:
# [服务名称] 运行手册
## 服务概述
此服务的功能
## 依赖项
- 服务 A
- 服务 B
- 数据库 X
## 部署
### 如何部署
```bash
./deploy.sh production
回滚
./rollback.sh
监控
关键指标
- 请求率
- 错误率
- 延迟
仪表板
常见问题
问题 1:高延迟
症状:响应时间 > 1秒
诊断:检查数据库连接池
解决方法:重启服务或扩容
问题 2:内存泄漏
症状:内存使用量随时间增长
诊断:检查堆转储
解决方法:重启服务,在预发布环境调查
故障排除
如何查看日志
kubectl logs -f deployment/service-name
如何访问指标
curl https://api/metrics
紧急联系人
- 值班:PagerDuty
- 团队 Slack:#团队名称
**API 文档**:
```markdown
# API 文档
## 认证
所有请求都需要认证:
```bash
curl -H "Authorization: Bearer 您的令牌" \
https://api.example.com/endpoint
端点
获取用户列表
GET /api/v1/users
参数:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| page | integer | 否 | 页码 (默认: 1) |
| limit | integer | 否 | 每页条目数 (默认: 20) |
示例请求:
curl -X GET "https://api.example.com/api/v1/users?page=1&limit=20" \
-H "Authorization: Bearer 您的令牌"
示例响应:
{
"data": [
{
"id": 1,
"name": "张三",
"email": "zhangsan@example.com"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 100
}
}
错误响应:
| 状态码 | 描述 |
|---|---|
| 400 | 错误请求 |
| 401 | 未授权 |
| 500 | 服务器错误 |
### 步骤 3:撰写指南
**清晰度**:
- 使用简单直接的语言
- 每句表达一个想法
- 段落简短(3-5 句)
- 定义技术术语
- 尽可能避免使用术语
**结构**:
- 使用层级标题(H1, H2, H3)
- 将内容分成多个部分
- 对于多项内容使用列表
- 对于结构化数据使用表格
- 为长文档添加目录
**示例**:
- 包含代码示例
- 提供图表
- 展示前后对比
- 真实场景
**完整性**:
- 涵盖前提条件
- 包含错误处理
- 记录边缘情况
- 解释为什么,而不仅仅是怎么样
- 链接到相关文档
**一致性**:
- 术语一致
- 格式一致
- 代码风格一致
- 结构一致
### 步骤 4:视觉辅助
**架构图** (Mermaid):
```mermaid
graph TB
A[客户端] -->|HTTP| B[负载均衡器]
B --> C[Web 服务器 1]
B --> D[Web 服务器 2]
C --> E[数据库]
D --> E
时序图:
sequenceDiagram
客户端->>+服务器: 请求
服务器->>+数据库: 查询
数据库-->>-服务器: 数据
服务器-->>-客户端: 响应
流程图:
flowchart TD
A[开始] --> B{是否有效?}
B -->|是| C[处理]
B -->|否| D[错误]
C --> E[结束]
D --> E
代码块 带语法高亮:
def calculate_total(items: List[Item]) -> Decimal:
"""计算商品总价。"""
return sum(item.price for item in items)
截图:
- 用于界面文档
- 标注重要部分
- 随界面变更保持更新
表格:
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| timeout | 整数 | 30 | 请求超时时间(秒) |
| retries | 整数 | 3 | 重试次数 |
步骤 5:审阅与完善
自我审阅清单:
- 开头阐明清晰目的
- 信息逻辑流畅
- 所有术语均已定义
- 代码示例经过测试
- 链接有效
- 图表清晰
- 无拼写或语法错误
- 格式一致
- 有目录(如需要)
- 包含最后更新日期
获取反馈:
- 请目标受众中的某人审阅
- 测试说明(他们能照着做吗?)
- 检查是否有信息遗漏
- 验证准确性
维护文档:
- 随代码变更而更新
- 对文档进行版本控制
- 归档过时文档
- 定期审阅
文档模板
技术规格说明模板
# [功能名称] 技术规格说明
**作者**:[您的姓名]
**日期**:[日期]
**状态**:[草稿/审阅中/已批准]
## 概述
[1-2 段描述本文档涵盖的内容]
## 背景
[背景和动机]
## 目标
- 目标 1
- 目标 2
## 排除项
- 我们不做的内容
## 详细设计
[技术细节]
## 考虑过的替代方案
[其他方法及未选择的原因]
## 时间线
- 第 1 周:...
- 第 2 周:...
## 未决问题
- 问题 1
- 问题 2
## 功能特性
- 特性 1
- 特性 2
## 安装
### 前提条件
- Node.js >= 14
- npm >= 6
### 设置
```bash
git clone https://github.com/user/project.git
cd project
npm install
使用方法
npm start
配置
环境变量:
API_KEY:您的 API 密钥PORT:服务器端口 (默认: 3000)
开发
npm run dev
npm test
部署
[部署说明]
贡献指南
[贡献指南]
许可证
MIT
### 更新日志模板
```markdown
# 更新日志
## [1.2.0] - 2024-01-15
### 新增
- 新功能 X
- 支持 Y
### 变更
- 提升了 Z 的性能
- 将依赖 A 更新至 v2.0
### 修复
- 修复了用户无法登录的错误
- 修复了后台任务中的内存泄漏
### 弃用
- 旧的 API 端点 /v1/users(请使用 /v2/users)
### 移除
- 移除了旧的认证方法
### 安全
- 修复了评论中的 XSS 漏洞
## [1.1.0] - 2024-01-01
...
撰写技巧
使用主动语态
✅ 好: "系统发送通知"
❌ 差: "通知被系统发送"
简洁明了
✅ 好: "点击保存以保存更改"
❌ 差: "为了保存您的更改,您应该点击保存按钮"
使用示例
✅ 好:
"设置超时时间(秒):
```yaml
timeout: 30
❌ 差:
“请适当配置超时参数”
### 分解复杂性
✅ 好:
“部署步骤:
- 构建镜像
- 推送到仓库
- 更新部署
- 验证上线”
❌ 差:
“通过构建并推送镜像到仓库,然后更新部署并验证上线成功来完成部署”
## 需避免的常见错误
1. **预设知识**:定义术语,解释背景
2. **文档过时**:与代码保持同步
3. **缺少示例**:始终包含示例
4. **无视觉辅助**:对复杂概念使用图表
5. **结构混乱**:使用标题和章节
6. **被动语态**:使用主动语态
7. **术语过多**:为受众写作
8. **无版本信息**:标注文档日期和版本
9. **遗漏错误情况**:记录可能出错的地方
10. **不维护**:定期更新
## 最佳实践
1. **为受众写作**:符合他们的知识水平
2. **从为什么开始**:解释目的
3. **展示,而不仅仅是说明**:使用示例
4. **保持一致**:术语、风格、结构
5. **测试您的文档**:别人能照着做吗?
6. **对文档进行版本控制**:与代码版本同步
7. **使用模板**:保持文档间一致性
8. **链接相关文档**:帮助读者找到更多信息
9. **随代码更新**:文档是代码的一部分
10. **定期审阅**:每季度进行文档审阅
## 工具
**图表工具**:
- Mermaid (基于 Markdown)
- Draw.io
- Lucidchart
- PlantUML
**文档平台**:
- GitBook
- Docusaurus
- MkDocs
- Sphinx
**风格检查器**:
- Grammarly
- 赫敏·阿不思·平心而论编辑器 (Hemingway Editor)
- Vale
**截图工具**:
- Snagit
- CloudApp
- Loom (用于视频)
## 示例
### 示例 1:基本用法
<!-- 在此处添加示例内容 -->
### 示例 2:高级用法
<!-- 在此处添高级示例内容 -->
📄 原始文档
完整文档(英文):
https://skills.sh/supercent-io/skills-template/technical-writing
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)