368 lines
6.8 KiB
Markdown
368 lines
6.8 KiB
Markdown
# 贡献指南
|
||
|
||
感谢你对 Claude Code SEO Assistant 的关注!我们欢迎各种形式的贡献。
|
||
|
||
---
|
||
|
||
## 🤝 如何贡献
|
||
|
||
### 贡献方式
|
||
|
||
1. **报告 Bug** - 发现问题请提交 Issue
|
||
2. **提出建议** - 有新功能想法请告诉我们
|
||
3. **提交代码** - 修复 Bug 或添加新功能
|
||
4. **完善文档** - 改进文档质量和准确性
|
||
5. **分享经验** - 分享你的使用经验和最佳实践
|
||
|
||
---
|
||
|
||
## 🐛 报告 Bug
|
||
|
||
### 提交 Bug Issue
|
||
|
||
请包含以下信息:
|
||
|
||
**标题格式:** `[Bug] 简短描述问题`
|
||
|
||
**模板:**
|
||
|
||
```markdown
|
||
## Bug 描述
|
||
清晰地描述问题是什么
|
||
|
||
## 复现步骤
|
||
1. 运行命令 '...'
|
||
2. 点击 '....'
|
||
3. 滚动到 '....'
|
||
4. 看到错误
|
||
|
||
## 预期行为
|
||
描述应该发生什么
|
||
|
||
## 实际行为
|
||
描述实际发生了什么
|
||
|
||
## 环境信息
|
||
- OS: [例如 macOS 14.0]
|
||
- Node.js 版本: [例如 18.0.0]
|
||
- Next.js 版本: [例如 14.0.0]
|
||
- 插件版本: [例如 1.0.0]
|
||
|
||
## 截图
|
||
如果适用,添加截图说明问题
|
||
|
||
## 额外信息
|
||
其他相关信息
|
||
```
|
||
|
||
---
|
||
|
||
## 💡 功能建议
|
||
|
||
### 提交 Feature Issue
|
||
|
||
**标题格式:** `[Feature] 简短描述功能`
|
||
|
||
**模板:**
|
||
|
||
```markdown
|
||
## 功能描述
|
||
清晰简洁地描述你想要的功能
|
||
|
||
## 问题或需求
|
||
这个功能解决什么问题?
|
||
为什么需要这个功能?
|
||
|
||
## 解决方案
|
||
你希望这个功能如何实现?
|
||
是否有参考实现?
|
||
|
||
## 替代方案
|
||
是否考虑过其他解决方案?
|
||
|
||
## 优先级
|
||
- 高优先级
|
||
- 中优先级
|
||
- 低优先级
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 开发流程
|
||
|
||
### 1. Fork 项目
|
||
|
||
点击 GitHub 页面右上角的 Fork 按钮
|
||
|
||
### 2. 克隆仓库
|
||
|
||
```bash
|
||
# HTTPS 方式
|
||
git clone https://github.com/huifer/claude-code-seo.git
|
||
|
||
# SSH 方式
|
||
git clone git@github.com:huifer/claude-code-seo.git
|
||
|
||
# 进入项目目录
|
||
cd claude-code-seo
|
||
```
|
||
|
||
### 3. 创建分支
|
||
|
||
```bash
|
||
# 更新主分支
|
||
git checkout main
|
||
git pull origin main
|
||
|
||
# 创建功能分支
|
||
git checkout -b feature/your-feature-name
|
||
|
||
# 或修复分支
|
||
git checkout -b fix/your-bug-fix
|
||
```
|
||
|
||
### 4. 进行修改
|
||
|
||
**项目结构:**
|
||
|
||
```
|
||
claude-code-seo/
|
||
├── .claude-plugin/ # 插件配置
|
||
├── skills/ # Skills 文件
|
||
├── commands/ # 命令文件
|
||
├── agents/ # Agent 文件
|
||
├── templates/ # 模板文件
|
||
├── resources/ # 资源文件
|
||
├── docs/ # 文档
|
||
└── README.md # 主文档
|
||
```
|
||
|
||
**开发规范:**
|
||
|
||
1. **代码风格**
|
||
- 使用 Markdown 格式
|
||
- 遵循现有文件的结构
|
||
- 添加适当的注释
|
||
|
||
2. **文档编写**
|
||
- 使用清晰的语言
|
||
- 提供示例
|
||
- 包含必要的上下文
|
||
|
||
3. **命名规范**
|
||
- 文件名使用小写和连字符:`seo-check.md`
|
||
- 目录名使用复数形式:`commands/`, `skills/`
|
||
|
||
### 5. 测试修改
|
||
|
||
```bash
|
||
# 在 Claude Code 中测试你的修改
|
||
# 确保所有功能正常工作
|
||
```
|
||
|
||
### 6. 提交更改
|
||
|
||
```bash
|
||
# 添加修改的文件
|
||
git add .
|
||
|
||
# 提交更改
|
||
git commit -m "feat: add new SEO command"
|
||
|
||
# 或使用更详细的提交信息
|
||
git commit -m "feat(commands): add keyword density checker
|
||
|
||
- Calculate keyword density for content
|
||
- Provide optimization suggestions
|
||
- Support Chinese and English text
|
||
|
||
Closes #123"
|
||
```
|
||
|
||
**提交信息格式:**
|
||
|
||
使用 [Conventional Commits](https://www.conventionalcommits.org/) 格式:
|
||
|
||
```
|
||
<type>(<scope>): <subject>
|
||
|
||
<body>
|
||
|
||
<footer>
|
||
```
|
||
|
||
**类型(type):**
|
||
- `feat`: 新功能
|
||
- `fix`: Bug 修复
|
||
- `docs`: 文档更新
|
||
- `style`: 格式调整
|
||
- `refactor`: 代码重构
|
||
- `test`: 测试相关
|
||
- `chore`: 构建/工具相关
|
||
|
||
### 7. 推送到 GitHub
|
||
|
||
```bash
|
||
# 推送你的分支
|
||
git push origin feature/your-feature-name
|
||
```
|
||
|
||
### 8. 创建 Pull Request
|
||
|
||
1. 访问 GitHub 页面
|
||
2. 点击 "New Pull Request"
|
||
3. 选择你的分支
|
||
4. 填写 PR 模板
|
||
5. 等待审查
|
||
|
||
**PR 模板:**
|
||
|
||
```markdown
|
||
## 描述
|
||
简要描述你的更改
|
||
|
||
## 类型
|
||
- [ ] Bug 修复
|
||
- [ ] 新功能
|
||
- [ ] 文档更新
|
||
- [ ] 重构
|
||
- [ ] 其他
|
||
|
||
## 测试
|
||
描述你如何测试这些更改
|
||
|
||
## 截图(如果适用)
|
||
|
||
|
||
## 相关 Issue
|
||
Closes #(issue number)
|
||
|
||
## 检查清单
|
||
- [ ] 代码遵循项目风格
|
||
- [ ] 已进行自我审查
|
||
- [ ] 已添加必要的注释
|
||
- [ ] 更新了相关文档
|
||
- [ ] 更新了 README(如需要)
|
||
```
|
||
|
||
---
|
||
|
||
## 📝 文档贡献
|
||
|
||
### 改进文档
|
||
|
||
1. **修正错误** - 发现文档错误?直接修正
|
||
2. **添加示例** - 提供更多使用示例
|
||
3. **翻译** - 帮助翻译文档到其他语言
|
||
4. **改进说明** - 让说明更清晰易懂
|
||
|
||
### 文档规范
|
||
|
||
**格式:**
|
||
- 使用 Markdown
|
||
- 遵循现有结构
|
||
- 添加目录(长文档)
|
||
|
||
**内容:**
|
||
- 提供清晰的步骤
|
||
- 包含代码示例
|
||
- 添加必要的截图
|
||
- 链接相关文档
|
||
|
||
---
|
||
|
||
## 🎯 优先级标签
|
||
|
||
我们在 Issue 中使用以下标签:
|
||
|
||
- **priority: high** - 高优先级,急需处理
|
||
- **priority: medium** - 中优先级,重要但不紧急
|
||
- **priority: low** - 低优先级,改进和优化
|
||
- **good first issue** - 适合新手
|
||
- **help wanted** - 欢迎贡献
|
||
|
||
---
|
||
|
||
## 📋 代码审查
|
||
|
||
### 审查标准
|
||
|
||
我们的审查关注:
|
||
|
||
1. **功能性** - 是否解决了问题?
|
||
2. **代码质量** - 代码是否清晰易读?
|
||
3. **文档** - 文档是否完整准确?
|
||
4. **测试** - 是否充分测试?
|
||
5. **风格** - 是否符合项目规范?
|
||
|
||
### 反馈处理
|
||
|
||
- 保持开放心态
|
||
- 讨论技术决策
|
||
- 及时响应评论
|
||
- 愿意修改代码
|
||
|
||
---
|
||
|
||
## 🌟 成为贡献者
|
||
|
||
所有贡献者将被添加到项目的贡献者列表中。
|
||
|
||
**贡献者级别:**
|
||
|
||
- **贡献者** - 提交 1+ 个 PR
|
||
- **活跃贡献者** - 提交 5+ 个 PR
|
||
- **核心贡献者** - 提交 10+ 个 PR 或重大贡献
|
||
|
||
---
|
||
|
||
## 📧 联系我们
|
||
|
||
有疑问?欢迎联系我们:
|
||
|
||
- **GitHub Issues**: [提交问题](https://github.com/huifer/claude-code-seo/issues)
|
||
- **讨论区**: [GitHub Discussions](https://github.com/huifer/claude-code-seo/discussions)
|
||
|
||
---
|
||
|
||
## 📜 行为准则
|
||
|
||
### 我们的承诺
|
||
|
||
为了营造开放和友好的环境,我们承诺:
|
||
|
||
- 尊重不同的观点和经验
|
||
- 优雅地接受建设性批评
|
||
- 关注对社区最有利的事情
|
||
- 对其他社区成员表示同理心
|
||
|
||
### 不可接受的行为
|
||
|
||
- 使用性化的语言或图像
|
||
- 恶意攻击或侮辱性评论
|
||
- 骚扰
|
||
- 未经许可发布他人的私人信息
|
||
- 其他不道德或不专业的行为
|
||
|
||
---
|
||
|
||
## 🙏 致谢
|
||
|
||
感谢所有贡献者!你们的贡献让这个项目变得更好。
|
||
|
||
---
|
||
|
||
## 📚 相关资源
|
||
|
||
- [GitHub Flow](https://guides.github.com/introduction/flow/)
|
||
- [Conventional Commits](https://www.conventionalcommits.org/)
|
||
- [如何编写好的 Git 提交信息](https://chris.beams.io/posts/git-commit/)
|
||
|
||
---
|
||
|
||
**准备好贡献了吗?** 查看 [Good First Issues](https://github.com/huifer/claude-code-seo/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
|
||
|
||
**下一步:**
|
||
- [返回文档首页](../README.md)
|
||
- [查看快速开始](../getting-started.md)
|