我来为您提供 AI小龙虾OpenClaw 的 GitHub 集成详细教程,OpenClaw 是一个 AI 辅助的代码分析和安全检测工具,与 GitHub 集成可以实现自动化代码审查。

📋 先决条件准备
系统要求确认
# 检查 Git git --version # 检查 OpenClaw 已安装 openclaw --version
GitHub 账户准备
- 拥有 GitHub 账户
- 确保有仓库的管理员权限
- 准备 GitHub Personal Access Token (PAT)
🔑 第一步:创建 GitHub Token
生成访问令牌
- 登录 GitHub → Settings → Developer settings
- 选择 Personal access tokens → Tokens (classic)
- 点击 Generate new token → Generate new token (classic)
配置权限
勾选以下权限范围:
repo: Full control of private repositories
workflow: Update GitHub Action workflows
security_events: Read and write security events
pull_requests: Read and write pull requests
admin:org: Read and write org projects
read:org: Read org and team membership
read:user: Read user profile data
保存 Token
# 将 token 保存到环境变量 export GITHUB_TOKEN="你的token_这里" echo "export GITHUB_TOKEN='你的token_这里'" >> ~/.bashrc
📦 第二步:安装 GitHub 集成组件
安装 GitHub App(推荐方式)
# 使用 OpenClaw 的 GitHub App 安装 openclaw github install-app # 或访问 GitHub App 页面 # https://github.com/apps/openclaw-bot
或使用 CLI 配置
# 安装 GitHub CLI 集成插件 pip install openclaw-github # 配置 OpenClaw 连接 GitHub openclaw config set github.token $GITHUB_TOKEN openclaw config set github.enabled true
🔧 第三步:仓库集成配置
创建配置文件
在项目根目录创建 .openclaw/config.yaml:
# OpenClaw GitHub 集成配置
github:
# 基础设置
enabled: true
repo: "你的用户名/仓库名"
# 触发条件
triggers:
on_push: true
on_pull_request: true
on_issue: false
on_schedule: "0 2 * * *" # 每天凌晨2点
# 审查设置
review:
auto_comment: true
require_approval: false
block_on_high_risk: true
# 安全检查
security:
secrets_detection: true
dependency_scanning: true
code_quality: true
# 忽略规则
exclude:
paths:
- "tests/*"
- "docs/*"
- "*.md"
patterns:
- "*.min.js"
- "*.bundle.js"
创建 GitHub Workflow
在 .github/workflows/openclaw.yml:
name: OpenClaw Security Scan
on:
push:
branches: [ main, master, develop ]
pull_request:
branches: [ main, master ]
schedule:
- cron: '0 2 * * *' # 每日扫描
jobs:
security-scan:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install OpenClaw
run: |
pip install openclaw
- name: Run OpenClaw Scan
env:
GITHUB_TOKEN: ${{ secrets.OPENCLAW_TOKEN }}
OPENCLAW_CONFIG: .openclaw/config.yaml
run: |
openclaw scan . --github --output report.json
- name: Upload SARIF report
uses: github/codeql-action/upload-sarif@v2
if: always()
with:
sarif_file: report.json
🚀 第四步:配置仓库 Secrets
在 GitHub 仓库中设置:
- Settings → Secrets and variables → Actions
- 点击 New repository secret
- 添加:
- Name:
OPENCLAW_TOKEN - Value: 你的 GitHub Token
- Name:
📝 第五步:配置 Pull Request 集成
创建 PR 模板
在 .github/pull_request_template.md:
## 安全扫描要求 请确保已通过 OpenClaw 安全扫描: - [ ] 代码无高危漏洞 - [ ] 依赖包安全检查通过 - [ ] 敏感信息未泄露 ### OpenClaw 扫描结果 <!-- OpenClaw 将自动在此处添加扫描结果 -->
配置 PR 检查(可选)
在仓库 Settings → Branches → Branch protection rules:
- 添加规则:
main分支 - 勾选:Require status checks to pass before merging
- 添加状态检查:
OpenClaw Security Scan
🔍 第六步:测试集成
本地测试
# 模拟 GitHub webhook 触发 openclaw github test-webhook --event push # 测试 PR 扫描 openclaw github test-pr --repo owner/repo --pr-number 1 # 运行完整集成测试 openclaw github integration-test
验证配置
# 检查配置 openclaw config list --section github # 验证 GitHub 连接 openclaw github verify # 查看已配置的仓库 openclaw github list-repos
⚙️ 第七步:高级配置
自定义检查规则
创建 .openclaw/rules.yaml:
rules:
# 代码安全规则
security:
- id: "no-hardcoded-secrets"
severity: "high"
pattern: "(password|token|secret|key)\s*=\s*['\"][^'\"]+['\"]"
- id: "sql-injection-risk"
severity: "medium"
pattern: "execute.*%.*%"
# 代码质量规则
quality:
- id: "function-too-long"
severity: "low"
condition: "function_lines > 50"
# 依赖安全规则
dependencies:
- id: "outdated-dependency"
severity: "medium"
condition: "days_since_update > 365"
通知配置
# .openclaw/notifications.yaml
notifications:
slack:
enabled: true
webhook_url: "https://hooks.slack.com/..."
channels:
- "#security-alerts"
email:
enabled: true
recipients:
- "security-team@company.com"
github:
issue_creation: true
pr_comment: true
status_check: true
🐛 第八步:故障排除
常见问题解决
-
权限错误
# 检查 token 权限 curl -H "Authorization: token $GITHUB_TOKEN" \ https://api.github.com/user
-
Webhook 失败
# 查看 GitHub 日志 openclaw logs --component github
重新注册 webhook
openclaw github reinstall-webhooks
3. **扫描不触发**
```bash
# 手动触发扫描
openclaw github trigger-scan --repo owner/repo --ref main
# 检查 workflow 状态
gh run list --workflow=openclaw.yml
调试命令
# 详细日志模式 openclaw --debug github scan # 查看配置 openclaw config validate # 重置 GitHub 集成 openclaw github reset --reinstall
📊 第九步:监控和报告
查看扫描结果
# 查看最近扫描 openclaw github list-scans # 导出报告 openclaw report generate --format html --output security-report.html # 统计数据 openclaw stats --period 30d
集成到 GitHub Dashboard
使用 GitHub 的 Security → Code scanning alerts 查看 OpenClaw 结果。
🎯 最佳实践建议
-
分阶段部署
- 先在测试仓库试用
- 然后应用到非核心项目
- 最后部署到生产仓库
-
配置团队通知
# 配置团队审查 teams: security_team: "your-org/security" backend_team: "your-org/backend"
-
定期审计规则
# 更新安全规则 openclaw rules update # 查看规则统计 openclaw rules stats
📞 支持资源
-
官方文档
https://openclaw.ai/docs/github-integration -
社区支持
- GitHub Discussions
- Discord 社区
- Slack 频道
-
紧急问题
# 获取诊断信息 openclaw diagnostics --include-github # 联系支持 openclaw support --issue github-integration
这样就完成了 OpenClaw 与 GitHub 的完整集成!这个配置会自动在每次代码变更时进行安全扫描,并在 PR 中提供审查反馈。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。