Agent Skillstddworks/ClaudeBar › github-actions

github-actions

GitHub

管理GitHub Actions CI/CD流水线,涵盖构建、测试及发布工作流。支持配置CI密钥、创建版本标签或手动触发发布流程,以及调试签名和 notarization 等发布失败问题。

.claude/skills/github-actions/SKILL.md tddworks/ClaudeBar

Trigger Scenarios

设置CI/CD密钥 创建新版本发布 触发或解释构建/测试工作流 调试发布失败(如签名、公证) 管理Sparkle自动更新通道

Install

npx skills add tddworks/ClaudeBar --skill github-actions -g -y
More Options

Non-standard path

npx skills add https://github.com/tddworks/ClaudeBar/tree/main/.claude/skills/github-actions -g -y

Use without installing

npx skills use tddworks/ClaudeBar@github-actions

指定 Agent (Claude Code)

npx skills add tddworks/ClaudeBar --skill github-actions -a claude-code -g -y

安装 repo 全部 skill

npx skills add tddworks/ClaudeBar --all -g -y

预览 repo 内 skill

npx skills add tddworks/ClaudeBar --list

SKILL.md

Frontmatter
{
    "name": "github-actions",
    "description": "Manage ClaudeBar's GitHub Actions CI\/CD pipelines: build, test, and release workflows.\nUse this skill when:\n(1) Setting up secrets for CI\/CD (certificate, API key, Sparkle key, Codecov)\n(2) Creating a new release — tag-based or manual workflow_dispatch\n(3) Triggering or explaining the build.yml, tests.yml, or release.yml workflows\n(4) Debugging release failures (signing, notarization, appcast)\n(5) Managing beta vs stable channels for Sparkle auto-updates\n(6) User says \"release a new version\", \"push a tag\", \"set up CI secrets\", \"why did the release fail\""
}

ClaudeBar GitHub Actions

Three workflows live in .github/workflows/. See reference files for setup and troubleshooting.

Workflows at a Glance

Workflow Trigger Runner Purpose
build.yml push/PR to main, develop macos-15 Debug + release build verification
tests.yml push/PR to main, develop macos-26 Unit tests + Codecov coverage upload
release.yml v* tag push OR manual macos-15 Sign → notarize → DMG → GitHub release → appcast

Create a Release

Option A — Tag (recommended):

# 1. Update CHANGELOG.md with release notes for this version
# 2. Commit and push
git add CHANGELOG.md
git commit -m "docs: add release notes for v1.2.0"
git push origin main

# 3. Tag and push — this triggers release.yml automatically
git tag v1.2.0 && git push origin v1.2.0

# Beta / pre-release (automatically flagged on GitHub)
git tag v1.2.0-beta.1 && git push origin v1.2.0-beta.1

Option B — Manual dispatch:

  1. Go to Actions → Release → Run workflow
  2. Enter version (e.g. 1.2.0 or 1.2.0-beta.1)
  3. Optionally toggle publish_appcast and debug

Supported version formats: X.Y.Z, X.Y.Z-beta, X.Y.Z-beta.N, X.Y.Z-alpha.N, X.Y.Z-rc.N

Secrets Required

Secret Required For See
APPLE_CERTIFICATE_P12 Code signing secrets-setup.md
APPLE_CERTIFICATE_PASSWORD Code signing secrets-setup.md
APP_STORE_CONNECT_API_KEY_P8 Notarization secrets-setup.md
APP_STORE_CONNECT_KEY_ID Notarization secrets-setup.md
APP_STORE_CONNECT_ISSUER_ID Notarization secrets-setup.md
SPARKLE_EDDSA_PRIVATE_KEY In-app auto-updates secrets-setup.md
CODECOV_TOKEN Coverage upload secrets-setup.md
APP_IDENTITY Optional signing override secrets-setup.md

What the Release Pipeline Does

git tag v1.2.0
      │
      ▼
release.yml
  1. Extract + validate version (SemVer)
  2. Update Info.plist (CFBundleShortVersionString + CFBundleVersion = run_number)
  3. tuist install → tuist generate
  4. xcodebuild archive (arm64 + x86_64, unsigned)
  5. Import Developer ID cert into temp keychain
  6. codesign with entitlements
  7. notarytool submit + staple
  8. Create ZIP + DMG (signed), SHA256 checksums
  9. Extract release notes from CHANGELOG.md
 10. Publish GitHub Release (draft: false)
 11. Generate Sparkle appcast with EdDSA signature
 12. Deploy appcast to GitHub Pages

Debugging Failures

Enable verbose output via manual dispatch → debug: true. This prints:

  • P12 certificate details and contents
  • All identities in the signing keychain
  • Certificate subject and expiry dates

For detailed troubleshooting: troubleshooting.md

Beta Channel

Pre-release tags (v1.2.0-beta.1) automatically:

  • Set GitHub release as prerelease: true
  • Add <sparkle:channel>beta</sparkle:channel> to the appcast entry
  • Are only offered to users with Beta Updates enabled in Settings

Stable releases always win over betas of the same version (stable gets higher build number).

See release-workflow.md for the full beta channel matrix.

Version History

  • f7c9fc1 Current 2026-08-20 13:39

Same Skill Collection

.claude/skills/add-provider/SKILL.md
.claude/skills/add-report/SKILL.md
.claude/skills/fix-bug/SKILL.md
.claude/skills/implement-feature/SKILL.md
.claude/skills/improvement/SKILL.md

Metadata

Files
0
Version
f7c9fc1
Hash
21820800
Indexed
2026-08-20 13:39

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 12:16
浙ICP备14020137号-1 $방문자$