This commit is contained in:
264
PUBLISHING.md
Normal file
264
PUBLISHING.md
Normal file
@@ -0,0 +1,264 @@
|
||||
# Publishing Guide
|
||||
|
||||
This guide will walk you through publishing the pypict-claude-skill repository to GitHub.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Before you begin, make sure you have:
|
||||
- [ ] A GitHub account
|
||||
- [ ] Git installed on your computer
|
||||
- [ ] The pypict-claude-skill directory on your local machine
|
||||
|
||||
## Step-by-Step Publishing Process
|
||||
|
||||
### Step 1: Create a GitHub Repository
|
||||
|
||||
1. Go to [GitHub.com](https://github.com) and log in
|
||||
2. Click the "+" icon in the top-right corner
|
||||
3. Select "New repository"
|
||||
4. Configure your repository:
|
||||
- **Repository name:** `pypict-claude-skill`
|
||||
- **Description:** "A Claude skill for designing comprehensive test cases using PICT (Pairwise Independent Combinatorial Testing)"
|
||||
- **Visibility:** Public (so others can use it)
|
||||
- **Initialize:** DO NOT add README, .gitignore, or license (we already have these)
|
||||
5. Click "Create repository"
|
||||
|
||||
### Step 2: Initialize Local Git Repository
|
||||
|
||||
Open your terminal and navigate to the pypict-claude-skill directory:
|
||||
|
||||
```bash
|
||||
cd /path/to/pypict-claude-skill
|
||||
|
||||
# Initialize git repository
|
||||
git init
|
||||
|
||||
# Add all files
|
||||
git add .
|
||||
|
||||
# Create initial commit
|
||||
git commit -m "Initial commit: PICT Test Designer skill v1.0.0"
|
||||
```
|
||||
|
||||
### Step 3: Connect to GitHub
|
||||
|
||||
Replace `YOUR_USERNAME` with your actual GitHub username:
|
||||
|
||||
```bash
|
||||
# Add remote repository
|
||||
git remote add origin https://github.com/YOUR_USERNAME/pypict-claude-skill.git
|
||||
|
||||
# Verify remote is set correctly
|
||||
git remote -v
|
||||
```
|
||||
|
||||
### Step 4: Push to GitHub
|
||||
|
||||
```bash
|
||||
# Push to main branch (or master if using older git)
|
||||
git branch -M main
|
||||
git push -u origin main
|
||||
```
|
||||
|
||||
### Step 5: Verify on GitHub
|
||||
|
||||
1. Go to your repository: `https://github.com/YOUR_USERNAME/pypict-claude-skill`
|
||||
2. Verify all files are present:
|
||||
- README.md
|
||||
- SKILL.md
|
||||
- LICENSE
|
||||
- examples/
|
||||
- .github/
|
||||
- And all other files
|
||||
|
||||
### Step 6: Configure Repository Settings
|
||||
|
||||
#### Enable Issues
|
||||
1. Go to Settings → General
|
||||
2. Under "Features", ensure "Issues" is checked
|
||||
|
||||
#### Enable Discussions (Optional)
|
||||
1. Go to Settings → General
|
||||
2. Under "Features", check "Discussions"
|
||||
3. This allows users to ask questions and share experiences
|
||||
|
||||
#### Set Up Branch Protection (Optional but Recommended)
|
||||
1. Go to Settings → Branches
|
||||
2. Add branch protection rule for `main`
|
||||
3. Recommended settings:
|
||||
- Require pull request reviews before merging
|
||||
- Require status checks to pass
|
||||
|
||||
### Step 7: Create a Release
|
||||
|
||||
1. Go to your repository on GitHub
|
||||
2. Click "Releases" (right sidebar)
|
||||
3. Click "Create a new release"
|
||||
4. Configure the release:
|
||||
- **Tag:** `v1.0.0`
|
||||
- **Release title:** `v1.0.0 - Initial Release`
|
||||
- **Description:**
|
||||
```markdown
|
||||
## 🎉 Initial Release
|
||||
|
||||
First public release of the PICT Test Designer skill for Claude!
|
||||
|
||||
### Features
|
||||
- Complete PICT-based test case generation
|
||||
- Comprehensive ATM system example
|
||||
- Installation guides for Claude Code CLI and Desktop
|
||||
- Full documentation and examples
|
||||
|
||||
### Highlights
|
||||
- Reduces test cases by 99%+ while maintaining coverage
|
||||
- Easy integration with Claude Code
|
||||
- Real-world examples included
|
||||
|
||||
### Credits
|
||||
Built on Microsoft PICT and pypict by Kenichi Maehashi
|
||||
```
|
||||
5. Click "Publish release"
|
||||
|
||||
### Step 8: Update README URLs
|
||||
|
||||
Now that you know your GitHub username, update the placeholder URLs in README.md:
|
||||
|
||||
```bash
|
||||
# Edit README.md and replace all instances of:
|
||||
# "yourusername" with your actual GitHub username
|
||||
|
||||
# For example, change:
|
||||
# https://github.com/yourusername/pypict-claude-skill
|
||||
# to:
|
||||
# https://github.com/YOUR_ACTUAL_USERNAME/pypict-claude-skill
|
||||
```
|
||||
|
||||
Then commit and push:
|
||||
|
||||
```bash
|
||||
git add README.md
|
||||
git commit -m "Update URLs with actual GitHub username"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
### Step 9: Test the Installation
|
||||
|
||||
Test that others can install your skill:
|
||||
|
||||
#### For Claude Code CLI:
|
||||
```bash
|
||||
claude code config add-skill \
|
||||
--name pict-test-designer \
|
||||
--source github \
|
||||
--repo YOUR_USERNAME/pypict-claude-skill
|
||||
```
|
||||
|
||||
#### For Claude Code Desktop:
|
||||
1. Settings → Skills
|
||||
2. Add Skill from GitHub
|
||||
3. URL: `https://github.com/YOUR_USERNAME/pypict-claude-skill`
|
||||
|
||||
### Step 10: Share Your Skill!
|
||||
|
||||
Now that it's published, share it with:
|
||||
|
||||
1. **Social Media**
|
||||
- Post on Twitter/X with hashtags #ClaudeAI #Testing #PICT
|
||||
- Share on LinkedIn
|
||||
- Post in relevant Reddit communities (r/softwaredevelopment, r/QualityAssurance)
|
||||
|
||||
2. **Communities**
|
||||
- Claude AI Discord
|
||||
- Software testing forums
|
||||
- QA communities
|
||||
|
||||
3. **Your Team**
|
||||
- Share with colleagues
|
||||
- Add to team documentation
|
||||
- Include in onboarding materials
|
||||
|
||||
## Maintaining Your Repository
|
||||
|
||||
### When Making Updates
|
||||
|
||||
```bash
|
||||
# Make your changes
|
||||
git add .
|
||||
git commit -m "Description of changes"
|
||||
git push origin main
|
||||
|
||||
# For new releases
|
||||
git tag -a v1.1.0 -m "Version 1.1.0"
|
||||
git push origin v1.1.0
|
||||
```
|
||||
|
||||
### Update CHANGELOG.md
|
||||
|
||||
Keep track of changes in CHANGELOG.md for each release.
|
||||
|
||||
### Respond to Issues and PRs
|
||||
|
||||
- Check GitHub regularly for new issues
|
||||
- Review pull requests promptly
|
||||
- Thank contributors
|
||||
- Keep discussions friendly and helpful
|
||||
|
||||
## Promoting Your Skill
|
||||
|
||||
### 1. Add Topics to Your Repository
|
||||
|
||||
On GitHub, add relevant topics:
|
||||
- claude
|
||||
- claude-ai
|
||||
- pict
|
||||
- testing
|
||||
- test-automation
|
||||
- combinatorial-testing
|
||||
- pairwise-testing
|
||||
- qa
|
||||
- quality-assurance
|
||||
|
||||
### 2. Create a Blog Post
|
||||
|
||||
Write about:
|
||||
- Why you created this skill
|
||||
- How it helps with testing
|
||||
- Real-world use cases
|
||||
- Tutorial on using it
|
||||
|
||||
### 3. Make a Video Tutorial
|
||||
|
||||
Create a quick video showing:
|
||||
- Installation process
|
||||
- Basic usage
|
||||
- The ATM example
|
||||
- Tips and tricks
|
||||
|
||||
### 4. Submit to Directories
|
||||
|
||||
- Add to awesome lists (awesome-claude, awesome-testing)
|
||||
- Submit to skill directories
|
||||
- List on your portfolio
|
||||
|
||||
## Getting Help
|
||||
|
||||
If you encounter issues:
|
||||
|
||||
1. Check [GitHub's documentation](https://docs.github.com)
|
||||
2. Ask in GitHub Discussions (if enabled)
|
||||
3. Search for similar issues
|
||||
4. Ask in Claude AI community
|
||||
|
||||
## Congratulations! 🎉
|
||||
|
||||
Your skill is now public and ready to help the community!
|
||||
|
||||
Next steps:
|
||||
- Monitor for issues and feedback
|
||||
- Plan improvements based on user needs
|
||||
- Consider adding more examples
|
||||
- Keep documentation up to date
|
||||
|
||||
---
|
||||
|
||||
**Remember:** You're now maintaining an open-source project. Be patient, be kind, and enjoy helping others improve their testing!
|
||||
Reference in New Issue
Block a user