Back to Skills

sharing-skills

lifangda
Updated Today
81 views
11
11
View on GitHub
Metadesign

About

This Claude Skill guides developers through contributing broadly useful skills back to the upstream repository via pull request. It provides the complete workflow from branching and committing to pushing and creating PRs, along with criteria for determining when a skill is appropriate for sharing versus keeping personal. The skill requires proper testing and documentation before submission.

Documentation

Sharing Skills

Overview

Contribute skills from your local branch back to the upstream repository.

Workflow: Branch → Edit/Create skill → Commit → Push → PR

When to Share

Share when:

  • Skill applies broadly (not project-specific)
  • Pattern/technique others would benefit from
  • Well-tested and documented
  • Follows writing-skills guidelines

Keep personal when:

  • Project-specific or organization-specific
  • Experimental or unstable
  • Contains sensitive information
  • Too narrow/niche for general use

Prerequisites

  • gh CLI installed and authenticated
  • Working directory is ~/.config/superpowers/skills/ (your local clone)
  • REQUIRED: Skill has been tested using writing-skills TDD process

Sharing Workflow

1. Ensure You're on Main and Synced

cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main  # Push to your fork

2. Create Feature Branch

# Branch name: add-skillname-skill
skill_name="your-skill-name"
git checkout -b "add-${skill_name}-skill"

3. Create or Edit Skill

# Work on your skill in skills/
# Create new skill or edit existing one
# Skill should be in skills/category/skill-name/SKILL.md

4. Commit Changes

# Add and commit
git add skills/your-skill-name/
git commit -m "Add ${skill_name} skill

$(cat <<'EOF'
Brief description of what this skill does and why it's useful.

Tested with: [describe testing approach]
EOF
)"

5. Push to Your Fork

git push -u origin "add-${skill_name}-skill"

6. Create Pull Request

# Create PR to upstream using gh CLI
gh pr create \
  --repo upstream-org/upstream-repo \
  --title "Add ${skill_name} skill" \
  --body "$(cat <<'EOF'
## Summary
Brief description of the skill and what problem it solves.

## Testing
Describe how you tested this skill (pressure scenarios, baseline tests, etc.).

## Context
Any additional context about why this skill is needed and how it should be used.
EOF
)"

Complete Example

Here's a complete example of sharing a skill called "async-patterns":

# 1. Sync with upstream
cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main

# 2. Create branch
git checkout -b "add-async-patterns-skill"

# 3. Create/edit the skill
# (Work on skills/async-patterns/SKILL.md)

# 4. Commit
git add skills/async-patterns/
git commit -m "Add async-patterns skill

Patterns for handling asynchronous operations in tests and application code.

Tested with: Multiple pressure scenarios testing agent compliance."

# 5. Push
git push -u origin "add-async-patterns-skill"

# 6. Create PR
gh pr create \
  --repo upstream-org/upstream-repo \
  --title "Add async-patterns skill" \
  --body "## Summary
Patterns for handling asynchronous operations correctly in tests and application code.

## Testing
Tested with multiple application scenarios. Agents successfully apply patterns to new code.

## Context
Addresses common async pitfalls like race conditions, improper error handling, and timing issues."

After PR is Merged

Once your PR is merged:

  1. Sync your local main branch:
cd ~/.config/superpowers/skills/
git checkout main
git pull upstream main
git push origin main
  1. Delete the feature branch:
git branch -d "add-${skill_name}-skill"
git push origin --delete "add-${skill_name}-skill"

Troubleshooting

"gh: command not found"

"Permission denied (publickey)"

"Skill already exists"

  • You're creating a modified version
  • Consider different skill name or coordinate with the skill's maintainer

PR merge conflicts

  • Rebase on latest upstream: git fetch upstream && git rebase upstream/main
  • Resolve conflicts
  • Force push: git push -f origin your-branch

Multi-Skill Contributions

Do NOT batch multiple skills in one PR.

Each skill should:

  • Have its own feature branch
  • Have its own PR
  • Be independently reviewable

Why? Individual skills can be reviewed, iterated, and merged independently.

Related Skills

  • writing-skills - REQUIRED: How to create well-tested skills before sharing

Quick Install

/plugin add https://github.com/lifangda/claude-plugins/tree/main/sharing-skills

Copy and paste this command in Claude Code to install this skill

GitHub 仓库

lifangda/claude-plugins
Path: cli-tool/skills-library/collaboration/sharing-skills

Related Skills

langchain

Meta

LangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.

View skill

llamaindex

Meta

LlamaIndex is a data framework for building RAG-powered LLM applications, specializing in document ingestion, indexing, and querying. It provides key features like vector indices, query engines, and agents, and supports over 300 data connectors. Use it for document Q&A, chatbots, and knowledge retrieval when building data-centric applications.

View skill

business-rule-documentation

Meta

This skill provides standardized templates for systematically documenting business logic and domain knowledge following Domain-Driven Design principles. It helps developers capture business rules, process flows, decision trees, and terminology glossaries to maintain consistency between requirements and implementation. Use it when documenting domain models, creating business rule repositories, or bridging communication between business and technical teams.

View skill

project-structure

Meta

This skill provides comprehensive project structure guidelines and best practices for organizing codebases across various project types. It offers standardized directory patterns for monorepos, web frameworks, backend services, and libraries to ensure scalable, maintainable architecture. Use it when designing new project structures, organizing monorepo workspaces, or establishing code organization conventions for teams.

View skill