109 lines
2.4 KiB
Markdown
109 lines
2.4 KiB
Markdown
---
|
|
name: github
|
|
description: "查询和管理GitHub仓库——列出仓库、检查CI状态、创建问题、搜索仓库和查看最近活动。"
|
|
metadata:
|
|
openclaw:
|
|
emoji: "🐙"
|
|
requires:
|
|
env:
|
|
- GITHUB_TOKEN
|
|
- GITHUB_USERNAME
|
|
config:
|
|
- github.token
|
|
- github.username
|
|
---
|
|
|
|
# GitHub Integration Skill
|
|
|
|
Query and manage GitHub repositories directly from your AI assistant.
|
|
|
|
## Capabilities
|
|
|
|
| Capability | Description |
|
|
|------------|-------------|
|
|
| `list_repos` | List your repositories with filters |
|
|
| `get_repo` | Get detailed info about a specific repo |
|
|
| `check_ci_status` | Check CI/CD pipeline status |
|
|
| `create_issue` | Create a new issue in a repo |
|
|
| `create_repo` | Create a new repository |
|
|
| `search_repos` | Search your repositories |
|
|
| `get_recent_activity` | Get recent commits |
|
|
|
|
## Usage
|
|
|
|
```
|
|
You: List my Python repos
|
|
Bot: [lists your Python repositories]
|
|
|
|
You: Check CI status on my main project
|
|
Bot: [shows CI/CD status]
|
|
|
|
You: Create an issue about the bug
|
|
Bot: [creates the issue]
|
|
```
|
|
|
|
## Setup
|
|
|
|
### 1. Generate GitHub Personal Access Token
|
|
|
|
1. Go to https://github.com/settings/tokens
|
|
2. Click "Generate new token (classic)"
|
|
3. Name: `openclaw-github-skill`
|
|
4. Scopes: `repo` (required), `read:user` (optional)
|
|
5. Copy the token
|
|
|
|
### 2. Configure Credentials
|
|
|
|
**Option A: Environment Variables (Recommended)**
|
|
|
|
Set environment variables before starting OpenClaw:
|
|
|
|
```bash
|
|
export GITHUB_TOKEN="ghp_your_token_here"
|
|
export GITHUB_USERNAME="your_github_username"
|
|
```
|
|
|
|
**Option B: OpenClaw Config**
|
|
|
|
Add to `~/.openclaw/openclaw.json`:
|
|
|
|
```json
|
|
{
|
|
"github": {
|
|
"token": "ghp_your_token_here",
|
|
"username": "your_username"
|
|
}
|
|
}
|
|
```
|
|
|
|
### 3. Restart OpenClaw
|
|
|
|
```bash
|
|
openclaw gateway restart
|
|
```
|
|
|
|
## Security Notes
|
|
|
|
⚠️ **Protect Your Token:**
|
|
|
|
- Never commit your token to git or share it publicly
|
|
- Use the minimal required scopes (`repo` for private repos, `public_repo` for public-only)
|
|
- Rotate your token if you suspect it was compromised
|
|
- Consider using a secrets manager for production use
|
|
|
|
⚠️ **Best Practices:**
|
|
|
|
- Don't store tokens in shell profiles (~/.zshrc) on shared machines
|
|
- For local development, environment variables are acceptable
|
|
- For production, use your platform's secret/credential store
|
|
|
|
## Rate Limits
|
|
|
|
- Unauthenticated requests: 60/hour
|
|
- Authenticated requests: 5,000/hour
|
|
|
|
## Requirements
|
|
|
|
- OpenClaw gateway running
|
|
- GitHub Personal Access Token with appropriate scopes
|