Deployment automation skill
Skill shakestzd/wipnote/.claude/skills/deployment-automation-skill
Local-first causal lineage and observability for AI-assisted developmentFrom the repository description
npx -y skills add shakestzd/wipnote --skill deployment-automation-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.6 KB, as published. Nobody here has run it
Deployment Automation Skill
Use this skill for deployment, versioning, and release workflows in the Wipnote project.
Trigger keywords: deployment, release, publish, version, pypi, package, build, distribute
Quick Reference
Fast Deployment (Recommended)
# Full release (non-interactive)
./scripts/deploy-all.sh 0.9.4 --no-confirm
# Full release (with confirmations)
./scripts/deploy-all.sh 0.9.4
# Documentation changes only
./scripts/deploy-all.sh --docs-only
# Build package only (test builds)
./scripts/deploy-all.sh --build-only
# Preview changes (dry-run)
./scripts/deploy-all.sh --dry-run
Pre-Deployment Checklist
- ✅ MUST be in project root - Script will fail from subdirectories
- ✅ Run tests -
uv run pytestmust pass Version updates- AUTOMATED by script in Step 0Git commits- AUTOMATED by script in Step 0
Version Numbering
Wipnote follows Semantic Versioning:
- MAJOR.MINOR.PATCH (e.g., 0.9.4)
- MAJOR: Breaking changes
- MINOR: New features (backward compatible)
- PATCH: Bug fixes (backward compatible)
What deploy-all.sh Does
9 Steps (fully automated):
- Pre-flight: Dashboard Sync - Sync dashboard.html → index.html
- Pre-flight: Code Quality - Run linters (ruff, mypy) and tests
- Pre-flight: Plugin Sync - Verify packages/claude-plugin and .claude are synced
- Update & Commit Versions - Auto-update version numbers and commit
- Git Push - Push commits and tags to origin/main
- Build Package - Create wheel and source distributions
- Publish to PyPI - Upload package to PyPI
- Local Install - Install latest version locally
- Update Claude Plugin - Run
claude plugin update wipnote - Update Gemini Extension - Update version in gemini-extension.json
- Update Codex Skill - Check for Codex and update if present
- Create GitHub Release - Create release with distribution files
Available Flags
--no-confirm- Skip all confirmation prompts (non-interactive)--docs-only- Only commit and push to git (skip build/publish)--build-only- Only build package (skip git/publish/install)--skip-pypi- Skip PyPI publishing step--skip-plugins- Skip plugin update steps--dry-run- Show what would happen without executing
Common Workflows
Testing a build locally:
# Build without publishing
./scripts/deploy-all.sh 0.9.4 --build-only
# Install and test locally
uv pip install dist/wipnote-0.9.4-py3-none-any.whl --force-reinstall
python -c "import wipnote; print(wipnote.__version__)"
Documentation-only updates:
# Commit and push docs changes (no build/publish)
./scripts/deploy-all.sh --docs-only
Full release workflow:
# 1. Run tests
uv run pytest
# 2. Deploy (one command!)
./scripts/deploy-all.sh 0.9.4 --no-confirm
# 3. Verify publication
open https://pypi.org/project/wipnote/
PyPI Credentials
Option 1: API Token (Recommended)
# Add to .env file:
PyPI_API_TOKEN=pypi-YOUR_TOKEN_HERE
# Script will source .env automatically
Option 2: Environment Variable
export UV_PUBLISH_TOKEN="pypi-YOUR_TOKEN_HERE"
Version History
- 0.16.1 (2025-12-31) - Validator blocking for orchestrator mode
- 0.16.0 (2025-12-31) - Enhanced orchestrator directives
- 0.9.4 (2025-12-22) - Dashboard sync automation
- 0.3.0 (2025-12-22) - TrackBuilder fluent API
- 0.2.2 (2025-12-21) - Enhanced session tracking
- 0.2.0 (2025-12-21) - Initial public release
When to Use This Skill
Activate this skill when:
- Preparing to release a new version
- Publishing to PyPI
- Updating version numbers
- Building distributions
- Testing deployment locally
- Updating Claude plugin or Gemini extension
- Need deployment troubleshooting
Detailed Documentation
For complete deployment workflows, troubleshooting, and advanced usage: → See reference.md
For deployment script internals and options:
→ See scripts/README.md in project root
Integration with Wipnote SDK
Track deployment activities:
from wipnote import SDK
sdk = SDK(agent='deployment-automation')
# Track deployment
spike = sdk.spikes.create('Deploy v0.9.4 to PyPI') \
.add_finding('Ran deploy-all.sh with --no-confirm') \
.add_finding('All pre-flight checks passed') \
.add_finding('Published to PyPI successfully') \
.add_finding('Updated Claude plugin to v0.9.4') \
.save()
See also:
.claude/skills/git-commit-skill/- Git workflowsscripts/deploy-all.sh- Deployment scriptscripts/README.md- Script documentation