OpenClaw 社区贡献指南:如何参与开源

1 阅读1分钟

每个人都可以成为贡献者

为什么贡献?

  • 🌟 提升技术能力
  • 🌟 建立个人品牌
  • 🌟 结交志同道合的朋友
  • 🌟 获得社区认可

贡献方式

1. 贡献代码

适合:开发者

步骤

  1. Fork 仓库
  2. 创建分支
  3. 编写代码
  4. 提交 PR

2. 贡献文档

适合:所有人

步骤

  1. 发现文档问题
  2. 修复或改进
  3. 提交 PR

3. 贡献 Skills

适合:有创意的人

步骤

  1. 创建 Skill
  2. 测试
  3. 发布到 ClawHub

4. 帮助他人

适合:所有人

方式

  • Discord 答疑
  • GitHub 回答 Issue
  • 撰写教程

代码贡献

准备工作

# Fork 仓库
git clone https://github.com/your-username/openclaw

# 安装依赖
cd openclaw
npm install

# 运行测试
npm test

开发流程

# 创建分支
git checkout -b feature/my-feature

# 编写代码
# ...

# 运行测试
npm test

# 提交
git commit -m "Add: my feature"

# 推送
git push origin feature/my-feature

# 创建 PR

代码规范

// ✅ 好的代码
/**
 * 获取天气信息
 * @param {string} city - 城市名
 * @returns {Promise<Weather>} 天气信息
 */
async function getWeather(city) {
  if (!city) {
    throw new Error('城市名不能为空');
  }
  // ...
}

// ❌ 差的代码
function getWeather(c) {
  // ...
}

文档贡献

文档类型

  1. 教程:教用户如何使用
  2. API 文档:详细说明接口
  3. 最佳实践:经验分享
  4. FAQ:常见问题

文档规范

# 标题

> 一句话描述

## 快速开始

### 步骤 1:...

```bash
命令

步骤 2:...

常见问题

Q: ...? A: ...


💬 评论区留言!


---

## Skills 贡献

### Skill 结构

my-skill/ ├── SKILL.md # 必需 ├── script.js # 可选 ├── config.yaml # 可选 └── README.md # 推荐


### SKILL.md 模板

```markdown
# Skill 名称

## 触发
用户说"XXX"时激活

## 功能
1. 功能 1
2. 功能 2

## 配置
```yaml
参数说明

示例

用户: XXX
助手: YYY

### 发布流程

```bash
# 1. 测试
openclaw skill test my-skill

# 2. 发布
openclaw skill publish my-skill

# 3. 等待审核
# 通常 1-3 天

社区帮助

Discord 答疑

  1. 加入 Discord:discord.com/invite/claw…
  2. 选择帮助频道
  3. 回答问题
  4. 积累声望

GitHub Issue

  1. 查看新 Issue
  2. 确认问题
  3. 提供解决方案
  4. 关闭 Issue

撰写教程

  1. 选择主题
  2. 撰写教程
  3. 发布到掘金/知乎
  4. 分享到社区

贡献者等级

Newcomer(新手)

  • ✅ 提交 1 个 PR
  • ✅ 帮助 5 个人

Contributor(贡献者)

  • ✅ 提交 5 个 PR
  • ✅ 发布 3 个 Skills
  • ✅ 帮助 20 个人

Core Contributor(核心贡献者)

  • ✅ 提交 20 个 PR
  • ✅ 发布 10 个 Skills
  • ✅ 帮助 100 个人
  • ✅ 参与核心开发

贡献者权益

Newcomer

  • 🏅 Discord 新手徽章
  • 📛 个人主页展示

Contributor

  • 🏅 Discord 贡献者徽章
  • 📛 个人主页展示
  • 🎁 优先获得新功能

Core Contributor

  • 🏅 Discord 核心徽章
  • 📛 个人主页展示
  • 🎁 免费使用企业版
  • 💰 项目收入分成(如有)

贡献案例

案例 1:修复 Bug

# 发现问题
openclaw chat "test"  # 报错

# 定位问题
# 查看源码

# 修复
# 修改代码

# 测试
npm test

# 提交 PR

案例 2:新增功能

# 提出想法
# GitHub Discussion

# 讨论方案
# 社区讨论

# 实现
# 编写代码

# 测试
npm test

# 提交 PR

案例 3:编写文档

# 发现文档缺失

# 编写教程
## 标题
> 描述
...

# 提交 PR

开发环境设置

# 克隆仓库
git clone https://github.com/openclaw/openclaw

# 安装依赖
npm install

# 配置开发环境
cp .env.example .env
# 编辑 .env

# 启动开发服务器
npm run dev

# 运行测试
npm test

# 代码格式化
npm run format

常见问题

Q: 我不会写代码,可以贡献吗? A: 可以!贡献文档、帮助他人、提建议都是贡献。

Q: PR 多久会被合并? A: 通常 1-7 天,取决于复杂度。

Q: 如何成为核心贡献者? A: 持续贡献,积累信任,被邀请加入核心团队。


资源链接


💬 你想贡献什么?评论区留言!

🎯 中文支持:微信 yang1002378395