This guide explains how GitHub Actions workflows behave for external contributors (fork PRs).
When you submit a PR from a fork, workflows run but cannot auto-commit fixes due to GitHub security restrictions.
✅ Registry Validation
registry.json matches actual files✅ Agent Tests
If the validation workflow reports issues, you'll need to fix them locally:
If new components are detected:
# Run auto-detect locally
./scripts/auto-detect-components.sh --auto-add
# Commit the updated registry
git add registry.json
git commit -m "chore: update registry with new components"
git push
If prompts don't match defaults:
# Restore default prompts
./scripts/prompts/use-prompt.sh <agent-name> default
# Commit the changes
git add .opencode/agent/
git commit -m "chore: restore default prompts"
git push
If registry paths are invalid:
# Validate and see suggestions
./scripts/validate-registry.sh --fix
# Manually fix paths in registry.json
# Then commit
git add registry.json
git commit -m "fix: correct registry paths"
git push
External PRs run normally but cannot auto-commit due to GitHub security (can't push to fork branches).
If you need to override checks:
Skip Validation:
Skip Tests:
| PR Type | Registry Validation | Auto-Commit | Agent Tests |
|---|---|---|---|
| Internal PR (branch) | ✅ Yes | ✅ Yes | ✅ Yes |
| External PR (fork) | ✅ Yes | ❌ No* | ✅ Yes |
*Cannot push to fork branches - contributor must fix locally
If you want to test an external PR locally:
# Fetch the PR
gh pr checkout <PR_NUMBER>
# Run validation
./scripts/validate-registry.sh -v
./scripts/prompts/validate-pr.sh
# Auto-fix registry if needed
./scripts/auto-detect-components.sh --auto-add
# Run tests
npm run test:ci
# If everything passes, approve and merge
gh pr review <PR_NUMBER> --approve
gh pr merge <PR_NUMBER>
.github/workflows/validate-registry.yml: Registry validation with override.github/workflows/test-agents.yml: Agent tests with override