# Contributing to Claude Skills Library Thank you for your interest in contributing to the Claude Skills Library! This repository aims to democratize professional expertise through reusable, production-ready skill packages for Claude AI. ## ⚠️ Important: Always Target `dev` **All PRs must target the `dev` branch.** PRs targeting `main` will be automatically closed. ```bash # Fork the repo, then: git checkout -b feat/my-new-skill origin/dev # ... make your changes ... # Open PR → base: dev (NOT main) ``` The `main` branch is reserved for releases and is maintained by the project owner. ## 🎯 Ways to Contribute ### 1. Create New Skills Add domain expertise in your field: - Marketing, sales, customer success - Engineering specializations - Business functions (finance, HR, operations) - Industry-specific skills (FinTech, EdTech, etc.) ### 2. Enhance Existing Skills Improve current skills with: - Better frameworks and templates - Additional Python automation tools - Updated best practices - More reference materials - Real-world examples and case studies ### 3. Improve Documentation Help others use skills effectively: - Clearer how-to guides - Additional usage examples - Better README files - Translations to other languages ### 4. Fix Bugs Report or fix issues in: - Python scripts - Documentation errors - Broken links - Outdated information --- ## 🚀 Getting Started ### Prerequisites - Python 3.7+ (for running/testing scripts) - Git and GitHub account - Claude AI or Claude Code account (for testing skills) - Familiarity with the skill domain you're contributing to ### Fork and Clone ```bash # Fork the repository on GitHub first git clone https://github.com/YOUR_USERNAME/claude-skills.git cd claude-skills # Add upstream remote git remote add upstream https://github.com/alirezarezvani/claude-skills.git ``` ### Create a Branch ```bash # Create feature branch git checkout -b feature/my-new-skill # Or for improvements git checkout -b improvement/enhance-content-creator ``` --- ## 📝 Skill Creation Guidelines ### Following Anthropic's Official Spec All skills must follow [Anthropic's Agent Skills Specification](https://docs.anthropic.com/en/docs/agents-and-tools/agent-skills/overview). ### Required Structure ``` your-skill-name/ ├── SKILL.md (required) │ ├── YAML frontmatter (name, description, license, metadata) │ └── Markdown content (instructions, examples, workflows) ├── scripts/ (optional but recommended) │ ├── tool1.py │ ├── tool2.py │ └── tool3.py ├── references/ (optional but recommended) │ ├── framework.md │ ├── best-practices.md │ └── examples.md └── assets/ (optional) └── templates/ ``` ### SKILL.md Requirements **YAML Frontmatter (required):** ```yaml --- name: your-skill-name description: What it does and when to use it. Include specific triggers and keywords. license: MIT metadata: version: 1.0.0 author: Your Name category: domain-category updated: 2025-10-28 --- ``` **Markdown Content (required):** - Clear heading and overview - Keywords section for discovery - Quick start guide - Core workflows - Script documentation (if applicable) - Reference guide (if applicable) - Best practices - Examples **Target Length:** 100-200 lines for SKILL.md - Keep core instructions lean - Move detailed content to references/ - Follow progressive disclosure principle ### Python Script Standards **Quality Requirements:** - Production-ready code (not placeholders) - Standard library preferred (minimal dependencies) - CLI-first design with --help support - JSON output option for automation - Clear docstrings and comments - Error handling and validation **Example:** ```python #!/usr/bin/env python3 """ Tool Name - Brief description Usage: python tool.py input.txt [--output json] """ def main(): # Implementation pass if __name__ == "__main__": main() ``` ### Documentation Standards - Clear, actionable guidance - Real-world examples - Specific metrics and benchmarks - No generic advice - Professional tone - Proper formatting --- ## 🔄 Contribution Process ### Step 1: Discuss First (Recommended) For major contributions: 1. Open an issue describing your idea 2. Discuss approach with maintainers 3. Get feedback before investing time 4. Avoid duplicate efforts ### Step 2: Develop Your Contribution Follow the guidelines above for: - New skills - Python tools - Documentation - Bug fixes ### Step 3: Test Thoroughly **For New Skills:** - [ ] YAML frontmatter valid (no syntax errors) - [ ] Description triggers Claude correctly - [ ] All Python scripts work with --help - [ ] All reference links work - [ ] Skill activates when expected - [ ] Tested with Claude AI or Claude Code **For Python Tools:** - [ ] Runs without errors - [ ] Handles edge cases - [ ] Provides helpful error messages - [ ] JSON output works (if applicable) - [ ] Dependencies documented ### Step 4: Submit Pull Request ```bash # Commit your changes git add . git commit -m "feat(domain): add new-skill with [capabilities]" # Push to your fork git push origin feature/my-new-skill # Create pull request on GitHub ``` **PR Title Format:** - `feat(domain): add new skill for [purpose]` - `fix(skill-name): correct issue with [component]` - `docs(domain): improve documentation for [topic]` - `refactor(skill-name): optimize [component]` **PR Description Must Include:** - What: What does this add/change/fix? - Why: Why is this valuable? - Testing: How was it tested? - Documentation: What docs were updated? --- ## ✅ Quality Standards ### Skill Quality Checklist All new skills must meet these standards: **Documentation:** - [ ] Clear SKILL.md with all required sections - [ ] Enhanced description with triggers and keywords - [ ] Keywords section for discovery - [ ] Quick start guide with 2-3 examples - [ ] Professional metadata (license, version, author) - [ ] Domain-specific README updated (if applicable) **Python Tools (if included):** - [ ] Production-ready code (not placeholders) - [ ] CLI with --help support - [ ] Proper error handling - [ ] Clear docstrings - [ ] Dependencies minimal and documented **References (if included):** - [ ] Actionable frameworks and templates - [ ] Specific guidance (not generic advice) - [ ] Real-world benchmarks and examples - [ ] Properly linked from SKILL.md **Testing:** - [ ] Skill activates correctly with Claude - [ ] All scripts execute without errors - [ ] All links work - [ ] No broken references **ROI:** - [ ] Demonstrates measurable value - [ ] Time savings quantified - [ ] Quality improvements specified - [ ] Clear use cases documented --- ## 🎨 Style Guide ### Python Code **Follow PEP 8:** - 4 spaces for indentation - Max line length: 100 characters - Clear variable names - Docstrings for functions **Example:** ```python def analyze_content(text: str, keywords: list) -> dict: """ Analyze text content for keyword density and readability. Args: text: Content to analyze keywords: List of keywords to check Returns: dict: Analysis results with scores and recommendations """ pass ``` ### Markdown Documentation - Use headers consistently (H1 for title, H2 for sections) - Include code blocks with language specification - Use tables for comparisons - Add emojis sparingly for visual hierarchy - Keep paragraphs concise ### Commit Messages Follow [Conventional Commits](https://www.conventionalcommits.org/): - `feat(domain): add new capability` - `fix(skill): correct bug in script` - `docs(readme): update installation guide` - `refactor(skill): optimize SKILL.md length` - `test(tool): add test coverage` --- ## 🏆 Recognition ### Contributors All contributors will be: - Listed in CHANGELOG.md for their contributions - Mentioned in release notes - Credited in PR merge messages - Acknowledged in the community ### Significant Contributions Major contributions may result in: - Co-author credit in commits - Feature attribution in documentation - Highlighted in README - Social media recognition --- ## 📋 Domain-Specific Guidelines ### Marketing Skills - Include real benchmarks (CAC, conversion rates, etc.) - Platform-specific guidance (LinkedIn, Google, etc.) - B2B or B2C focus clearly stated - International market considerations ### Engineering Skills - Include tech stack in metadata - Provide architecture patterns - Add code quality standards - Performance benchmarks ### Product Skills - Include frameworks (RICE, OKR, etc.) - Real-world metrics and KPIs - Template-heavy with examples - Integration points with tools ### Regulatory/Quality Skills - Cite specific standards (ISO, FDA, EU MDR) - Compliance frameworks clear - Industry-specific (HealthTech, MedTech) - Regulatory jurisdiction specified --- ## 🚫 What NOT to Contribute **We will not accept:** - Generic advice without actionable frameworks - Placeholder scripts (must be production-ready) - Skills without clear use cases - Duplicate capabilities of existing skills - Proprietary or confidential information - Content that violates licenses - Skills promoting unethical practices --- ## 🤝 Code of Conduct By participating in this project, you agree to abide by our [Code of Conduct](CODE_OF_CONDUCT.md). Expected behavior: - Be respectful and inclusive - Provide constructive feedback - Focus on what's best for the community - Show empathy and kindness --- ## 📞 Questions? - **General Questions:** Open a [discussion](https://github.com/alirezarezvani/claude-skills/discussions) - **Bug Reports:** Use [bug report template](https://github.com/alirezarezvani/claude-skills/issues/new?template=bug_report.md) - **Feature Ideas:** Use [feature request template](https://github.com/alirezarezvani/claude-skills/issues/new?template=feature_request.md) - **Contact:** [alirezarezvani.com](https://alirezarezvani.com) or [medium.com/@alirezarezvani](https://medium.com/@alirezarezvani) --- ## 🙏 Thank You! Your contributions help make world-class expertise accessible to everyone through Claude AI. Every skill added, bug fixed, or documentation improved makes a difference. **Happy contributing!** 🚀