skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
fellowship-dev/dogfooded-skills149 installs

setup-github

Use when setting up a GitHub project board, labels, and Actions workflows for a new or existing repo.

How do I install this agent skill?

npx skills add https://github.com/fellowship-dev/dogfooded-skills --skill setup-github
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill automates the configuration of GitHub repositories, including labels, projects, and CI/CD workflows. While the skill's internal logic is benign, it facilitates the installation of AI-powered workflows that ingest untrusted data from pull requests and issues, creating a surface for indirect prompt injection attacks.

  • Socketwarn

    5 alerts: gptSecurity, gptAnomaly

  • Snykwarn

    Risk: MEDIUM · 1 issue

What does this agent skill do?

GitHub Setup Assistant

Set up a complete GitHub environment for a repository: project board, labels, and Actions workflows. Each phase is idempotent — existing configuration is detected and skipped.

Install via npx:

npx skills add fellowship-dev/dogfooded-skills/skills/ops/setup-github

IMPORTANT: Always verify the Claude GitHub App is installed (https://github.com/apps/claude) BEFORE installing Claude-powered workflows. Without the app, workflows will fail with authentication errors.

When to Use

  • Setting up a new repo's GitHub environment end-to-end
  • Adding the automated review pipeline (double-check → cto-review)
  • Creating standard labels for workflow tracking
  • Installing CI/CD workflows

The Review Pipeline

This skill sets up the automated 3-stage PR review pipeline:

1. PR opened
        ↓
2. GitHub Actions: claude-code-review.yml
   - Claude reviews the diff
   - Applies "reviewed" label
        ↓
3. event-rules.yml: review-pr-on-reviewed
   - /double-check PR_NUMBER org/repo dispatched
   - Curates CI findings, fixes must-fix items
   - Applies "double-checked" label
        ↓
4. event-rules.yml: cto-review-on-double-checked
   - /cto-review PR_NUMBER org/repo dispatched
   - Docs/deps/downstream checklist
   - Applies "approved" or "needs-work" label
   - Merges if approved

Skills powering stages 3-4: double-check and cto-review from fellowship-dev/dogfooded-skills.


Prerequisites: Claude GitHub App

Before using Claude-powered workflows, install the Claude GitHub App:

  1. Install: https://github.com/apps/claude — select your repository or org

  2. Authentication (choose ONE):

    Option A: OAuth Token via Claude CLI (Recommended)

    unset GH_TOKEN
    gh auth login
    claude
    /install-github-app
    # Select repo → "long-lived token" → auto-adds CLAUDE_CODE_OAUTH_TOKEN secret
    

    Option B: API Key


Instructions

1. Detection Phase

Analyze the repository:

# Repo identity
gh repo view --json nameWithOwner

# Existing labels
gh label list --repo $REPO --json name

# Existing workflows
ls .github/workflows/ 2>/dev/null || echo "No workflows"

# Project board
gh project list --owner $ORG --format json 2>/dev/null | head -20

Report a status table: what exists vs. what's missing.

2. Labels Phase

Skip labels that already exist (idempotent). Create via gh label create:

Workflow Labels (for PR pipeline):

LabelColorDescription
reviewed#3da46eCI/automated review complete
double-checked#0075caFull review + fixes complete
approved#0e8a16CTO approved — ready to merge
needs-work#d93f0bNeeds work before merge
ready-to-work#f6a80aReady for implementation
in-progress#97f157Actively being worked on

Type Labels:

LabelColorDescription
bug#d73a4aSomething isn't working
enhancement#54d9eeNew feature or improvement
documentation#0075caDocumentation only
groundwork#C5DEF5Infra/tooling/refactoring
# Create all labels (idempotent — 2>/dev/null suppresses "already exists" errors)
gh label create "reviewed" --repo $REPO --color "3da46e" --description "CI/automated review complete" 2>/dev/null || true
gh label create "double-checked" --repo $REPO --color "0075ca" --description "Full review + fixes complete" 2>/dev/null || true
gh label create "approved" --repo $REPO --color "0e8a16" --description "CTO approved — ready to merge" 2>/dev/null || true
gh label create "needs-work" --repo $REPO --color "d93f0b" --description "Needs work before merge" 2>/dev/null || true
gh label create "ready-to-work" --repo $REPO --color "f6a80a" --description "Ready for implementation" 2>/dev/null || true
gh label create "in-progress" --repo $REPO --color "97f157" --description "Actively being worked on" 2>/dev/null || true
gh label create "bug" --repo $REPO --color "d73a4a" --description "Something isn't working" 2>/dev/null || true
gh label create "enhancement" --repo $REPO --color "54d9ee" --description "New feature or improvement" 2>/dev/null || true
gh label create "documentation" --repo $REPO --color "0075ca" --description "Documentation only" 2>/dev/null || true
gh label create "groundwork" --repo $REPO --color "C5DEF5" --description "Infra/tooling/refactoring" 2>/dev/null || true

Report: "Created N labels, skipped N (already existed)."

3. Project Board Phase

Skip if a GitHub Project already exists for this repo.

# Create project
gh project create --owner $ORG --title "$REPO_NAME"

# Add Status field with standard columns
# (Use GitHub UI to configure Status options — API support is limited)
# Columns: Backlog → Ready → In Progress → In Review → Done

# Link repo to project
gh project link $PROJECT_NUMBER --owner $ORG --repo $REPO

Note: Configure auto-move automations in the GitHub Projects UI:

  • Auto-move to "In Review" when PR opened
  • Auto-move to "Done" when PR merged or issue closed

4. Workflow Installation Phase

Skip workflows that already exist in .github/workflows/.

Present available workflows and wait for confirmation:

AI-Powered Workflows (require Claude GitHub App)

  • claude-code-review.yml — Automated PR reviews. Adds reviewed label. Recommended — this triggers the full review pipeline.
  • claude-issue-triage.yml — Auto-label new issues
  • claude-prd-creation.yml — Generate PRDs from feature requests

Deployment Workflows

  • deploy-fly.yml — Deploy to Fly.io
  • deploy-ecs-production.yml — Deploy to AWS ECS (production)
  • deploy-ecs-staging.yml — Deploy to AWS ECS (staging)
  • deploy-mkdocs.yml — Build and deploy docs to GitHub Pages

Maintenance

  • dependabot.yml — Automated dependency updates (weekly)
  • sync-api-docs.yml — Sync docs to separate repository

After confirmation, install selected workflows:

mkdir -p .github/workflows
# Copy selected templates from this skill's templates/ directory
# Skip if file already exists

5. Summary Phase

## GitHub Setup Complete: $REPO

### Labels
- ✅ Created N labels, skipped N (already existed)

### Project Board
- ✅ Created "$REPO_NAME" project (or "Skipped — already exists")
  ⚠️ Configure automations manually in project settings

### Workflows
- ✅ Installed: claude-code-review.yml
- ⏭️ Skipped: dependabot.yml (already existed)
- ⚠️ Secrets needed: ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN

### Review Pipeline (after claude-code-review.yml is installed)
PR opened → reviewed label → double-check → double-checked label → cto-review → approved/needs-work

### Manual Next Steps
- [ ] Install Claude GitHub App: https://github.com/apps/claude
- [ ] Add ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN secret
- [ ] Configure project board automations (link above)
- [ ] Wire event-rules.yml with review-pr-on-reviewed + cto-review-on-double-checked rules

Workflow Catalog

All Claude workflows require ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN.

WorkflowTriggerOutputPipeline Role
claude-code-review.ymlPR opened/reopenedReview comment + reviewed labelStage 1
claude-issue-triage.ymlNew issueLabels + priorityStandalone
claude-prd-creation.ymlIssue label or @claudePRD documentStandalone
deploy-fly.ymlPush to mainFly.io deployCD
deploy-ecs-production.ymlPush to mainECS deploy (prod)CD
deploy-ecs-staging.ymlPush to developECS deploy (staging)CD
dependabot.ymlWeekly cronDep update PRsMaintenance

Required Secrets

SecretWhereNotes
ANTHROPIC_API_KEYhttps://console.anthropic.com/settings/keysRecommended. Starts sk-ant-
CLAUDE_CODE_OAUTH_TOKENRun claude /install-github-appAlternative to API key
FLY_API_TOKENflyctl auth tokenFor Fly.io deployment
AWS_ACCESS_KEY_IDAWS IAM ConsoleFor ECS deployment
AWS_SECRET_ACCESS_KEYAWS IAM ConsoleFor ECS deployment

Supporting Files

  • templates/claude-code-review.yml — Generic Claude PR review workflow
  • templates/claude-issue-triage.yml — Issue labeling workflow
  • templates/claude-prd-creation.yml — PRD generation workflow
  • templates/dependabot.yml — Dependabot config
  • templates/deploy-fly.yml — Fly.io deployment
  • templates/deploy-ecs-production.yml — AWS ECS production
  • templates/deploy-ecs-staging.yml — AWS ECS staging
  • templates/deploy-mkdocs.yml — MkDocs documentation

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/fellowship-dev/dogfooded-skills/setup-github">View setup-github on skillZs</a>