savvy-web/Silk Sync Action
Synchronize repository labels, settings, and GitHub Projects V2 across an organization
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| app-client-id | GitHub App client ID for authentication | yes | — |
| app-private-key | GitHub App private key (PEM format) | yes | — |
| config-file | Path to JSON config file (labels + settings) | yes | .github/silk.config.json |
| custom-properties | Multiline key=value pairs for org custom property matching (AND logic). Example: workflow=standard team=platform | no | — |
| repos | Multiline list of explicit repository names (one per line). Supports bare names or owner/repo format. | no | — |
| dry-run | Preview changes without applying them | no | false |
| remove-custom-labels | Remove labels not in config defaults | no | false |
| sync-settings | Sync repository settings | no | true |
| sync-projects | Sync project linking and backfill | no | true |
| skip-backfill | Link repos to projects only, skip adding items | no | false |
Outputs
| name | description |
|---|---|
| results | JSON string with sync results (repo counts, label/settings/project stats, per-repo errors). Parse with fromJSON(). |
| success | true when all repos synced without errors |
| repos-total | Total repositories processed |
| repos-succeeded | Repositories synced without errors |
| repos-failed | Repositories with at least one error |