public-repo-creation skill
Create production-ready public GitHub repositories with comprehensive documentation, automated setup, and quality assurance
Is the public-repo-creation skill safe?
Read the findings before you install it. We read 5 files in the folder on 2026-09-28.
- medium
SKILL.md:226Edits shell startup files, cron or launch agents, so something runs again after the skill is done.
echo "export TOKEN='xxx'" >> ~/.bashrc - medium
references/critical-bugs-mnemosyne-obsidian.md:16Edits shell startup files, cron or launch agents, so something runs again after the skill is done.
echo "export GH_TOKEN='$GITHUB_TOKEN'" >> ~/.bashrc - medium
references/setup-script-patterns.md:106Edits shell startup files, cron or launch agents, so something runs again after the skill is done.
echo "export GH_TOKEN='$GITHUB_TOKEN'" >> ~/.bashrc
Install the public-repo-creation skill
A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.
git clone --depth 1 https://github.com/kevinnft/ai-agent-skills.git /tmp/ai-agent-skills mkdir -p ~/.claude/skills cp -r /tmp/ai-agent-skills/skills/github/public-repo-creation ~/.claude/skills/public-repo-creation
In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub
The instructions your agent would load
SKILL.md as published, without the frontmatter. Read it on GitHub
Public Repository Creation
Create production-ready public GitHub repositories with comprehensive documentation, automated setup scripts, templates, and quality assurance processes.
When to Use
- Creating new open-source projects
- Publishing tools, libraries, or frameworks
- Building educational resources or examples
- Sharing integrations or automation scripts
- Any public-facing repository that needs professional polish
Core Components
1. Documentation Files (Required)
README.md (comprehensive):
- Clear title with emoji
- Badges (license, stars, build status)
- "What is This?" section
- Features (with subsections)
- Quick start (5-10 minutes)
- Manual setup (step-by-step)
- Example workflows
- Architecture diagram (ASCII or image)
- Folder structure
- Use cases
- Advanced features
- Performance metrics (if applicable)
LICENSE (required):
- MIT recommended for maximum adoption
- Include copyright year and author
CONTRIBUTING.md:
- Quick start for contributors
- Code style guidelines
- Commit message format
- PR process
- Bug report template
- Feature request template
TROUBLESHOOTING.md:
- Installation issues (5+ solutions)
- Runtime issues (4+ solutions)
- Common errors with fixes
- Verification checklist
CHECKLIST.md (optional but recommended):
- Pre-installation checks
- Post-installation verification (10+ steps)
- Functional tests
- Success criteria
2. Automated Setup Script
setup.sh (or equivalent):
- Shebang (#!/bin/bash)
- Error handling (set -e)
- Prerequisites check
- Interactive prompts (with defaults)
- Conditional logic (skip if already installed)
- Fallback mechanisms
- Progress indicators
- Summary output
- Comments for each section
Critical Patterns:
# Prevent duplicate entries in config files
if ! grep -q "PATTERN" ~/.config 2>/dev/null; then
echo "NEW_LINE" >> ~/.config
else
sed -i "s|OLD_PATTERN|NEW_PATTERN|" ~/.config
fi
# Variable expansion in heredocs
cat > file.txt << EOF # NO quotes for expansion
date: $(date +%Y-%m-%d)
EOF
# Fallback mechanism
if command_from_internet; then
echo "✅ Installed from source"
else
echo "⚠️ Source failed, using bundled copy..."
cp -r bundled/ destination/
fi3. Templates
templates/ directory:
- Getting started template
- Daily/project note templates (if applicable)
- Configuration file templates
- .gitignore template
4. Examples
EXAMPLE.md or examples/ directory:
- Real-world use case
- Step-by-step breakdown
- Code examples with syntax highlighting
- Expected output
- Benefits explanation
5. Quality Assurance
Pre-commit checks:
# Syntax validation
bash -n setup.sh
# Link validation
grep -o '\[.*\](.*\.md)' *.md | while read link; do
file=$(echo "$link" | sed 's/.*(\\(.*\\))/\\1/')
[ -f "$file" ] && echo "✅ $link" || echo "❌ Broken: $link"
done
# TODO/FIXME check
grep -ri "TODO\|FIXME\|XXX\|HACK" . --include="*.md" --include="*.sh"
# File permissions
ls -la setup.sh # Should be executableAUDIT.md (optional but professional):
- File inventory
- Quality checks performed
- Security analysis
- Performance metrics
- Recommendations
Workflow
Phase 1: Planning (5 minutes)
- Define repository purpose (one sentence)
- Identify target audience
- List core features (3-5 main features)
- Choose license (MIT recommended)
- Plan folder structure
Phase 2: Core Setup (15 minutes)
- Create GitHub repo (public)
- Clone locally
- Create README.md with title, description, badges
- Create LICENSE file
- Create .gitignore
- Initial commit + push
Phase 3: Documentation (30 minutes)
- Expand README.md:
- Features section
- Quick start
- Manual setup
- Examples
- Architecture
- Create CONTRIBUTING.md
- Create TROUBLESHOOTING.md
- Create EXAMPLE.md
Phase 4: Automation (30 minutes)
- Create setup.sh:
- Prerequisites check
- Interactive prompts
- Installation steps
- Configuration
- Summary output
- Test setup.sh syntax: bash -n setup.sh
- Make executable: chmod +x setup.sh
- Test dry-run simulation
Phase 5: Templates & Examples (15 minutes)
- Create templates/ directory
- Add starter templates
- Add example files
- Document template usage in README
Phase 6: Quality Assurance (20 minutes)
- Run syntax checks
- Validate all links
- Check file permissions
- Test setup script (if possible)
- Create CHECKLIST.md
- Optional: Create AUDIT.md
Phase 7: Polish (10 minutes)
- Add badges to README
- Add architecture diagram
- Add performance metrics (if applicable)
- Add star history chart
- Final commit + push
Total Time: ~2 hours for production-ready repo
Critical Pitfalls
1. Token/Config Duplication
Problem: Appending to config files without checking for duplicates.
Wrong:
echo "export TOKEN='xxx'" >> ~/.bashrc
# Run twice → duplicate entries!Right:
if ! grep -q "export TOKEN=" ~/.bashrc 2>/dev/null; then
echo "export TOKEN='xxx'" >> ~/.bashrc
else
sed -i "s|export TOKEN=.*|export TOKEN='xxx'|" ~/.bashrc
fi2. Heredoc Variable Expansion
More skills from kevinnft/ai-agent-skills
- Aaddyosmani-tddDrives development with tests. Use when implementing any logic, fixing any bug, or changing any behavior. Use when you need to prove that code works, when a bug report arrives, or when you're about to modify existing functionality.
- AairtableAirtable REST API via curl. Records CRUD, filters, upserts.
- Aapi-and-interface-designGuides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints, defining type contracts between modules, or establishing boundaries between frontend and backend.
- Aapi-monitoring-botsBuild monitoring bots that poll APIs and send notifications on state changes (new listings, price alerts, status updates)
- Aapple-notesManage Apple Notes via memo CLI: create, search, edit.
- Aapple-remindersApple Reminders via remindctl: add, list, complete.
- Aarchitecture-diagramDark-themed SVG architecture/cloud/infra diagrams as HTML.
- AarxivSearch arXiv papers by keyword, author, category, or ID.
- Aascii-artASCII art: pyfiglet, cowsay, boxes, image-to-ascii.
- Aascii-videoASCII video: convert video/audio to colored ASCII MP4/GIF.
- AaudiocraftAudioCraft: MusicGen text-to-music, AudioGen text-to-sound.
- CaxolotlAxolotl: YAML LLM fine-tuning (LoRA, DPO, GRPO).