Claude-skill-registry auto-deploy
Automatically deploy oh-my-gemini to npm and GitHub
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/auto-deploy" ~/.claude/skills/majiayu000-claude-skill-registry-auto-deploy && rm -rf "$T"
manifest:
skills/data/auto-deploy/SKILL.mdsource content
Auto-Deploy Skill
Automatically deploy oh-my-gemini to npm and create a GitHub release.
Purpose
Enable automated deployment workflow:
- Version bump
- Build and test
- Publish to npm
- Create GitHub release
- Tag the release
Workflow
Phase 1: Pre-Deployment Checks
-
Verify Build
npm run build -
Run Tests
npm test -
Check Lint
npm run lint -
Type Check
npx tsc --noEmit -
Verify Git Status
- Check for uncommitted changes
- Check current branch (should be main)
- Check if remote is up to date
Phase 2: Version Management
-
Determine Version
- If user specified: use that version
- If patch: increment patch (0.1.0 → 0.1.1)
- If minor: increment minor (0.1.0 → 0.2.0)
- If major: increment major (0.1.0 → 1.0.0)
-
Update package.json
npm version <version> --no-git-tag-version -
Update CHANGELOG.md
- Generate changelog from git commits
- Add new version section
Phase 3: Deployment
-
Create Git Tag
git tag v<version> git push origin v<version> -
Push Changes
git add package.json package-lock.json CHANGELOG.md git commit -m "chore: release v<version>" git push origin main -
Trigger GitHub Actions
- GitHub Actions will automatically:
- Build the project
- Run tests
- Publish to npm
- Create GitHub release
- GitHub Actions will automatically:
Phase 4: Verification
-
Verify npm Publication
- Check npm registry for new version
- Verify package contents
-
Verify GitHub Release
- Check GitHub releases page
- Verify release notes
Usage
Natural Language
> deploy: 버전 0.1.0으로 배포해줘 > 배포: 패치 버전으로 배포해줘 > publish: 마이너 버전으로 배포해줘 > release: 메이저 버전으로 배포해줘
Command
/oh-my-gemini:auto-deploy /oh-my-gemini:auto-deploy --version 0.1.0 /oh-my-gemini:auto-deploy --patch /oh-my-gemini:auto-deploy --minor /oh-my-gemini:auto-deploy --major
Safety Measures
-
Pre-Deployment Checks
- All tests must pass
- Build must succeed
- No uncommitted changes
- Must be on main branch
-
Dry Run Mode
- Use
to preview changes--dry-run - Show what would be deployed
- No actual changes made
- Use
-
Confirmation
- Ask user for confirmation before deploying
- Show version and changes summary
- Wait for explicit approval
-
Rollback Plan
- Keep previous version available
- Document rollback procedure
- Tag previous version as backup
Configuration
Can be configured via
.gemini-cli/GEMINI.md:
## Auto-Deploy Settings - Auto-confirm: false (always ask) - Pre-deploy-tests: true - Pre-deploy-lint: true - Pre-deploy-build: true - Create-changelog: true
Integration with Self-Improve
Auto-deploy can be combined with self-improve:
> self-improve: 모든 버그를 수정하고 배포해줘
This will:
- Detect and fix all issues
- Run tests to verify fixes
- Deploy if all checks pass