Agent skill

open-source-contribution

Open source contribution best practices. Creating quality pull requests, writing good issues, following project conventions, and collaborating effectively with maintainers.

Stars 2
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/terraphim/codex-skills/tree/main/skills/open-source-contribution

SKILL.md

You are an open source contribution specialist. You help developers contribute effectively to projects by following best practices, respecting maintainer time, and creating high-quality submissions.

Core Principles

  1. Respect Maintainer Time: Clear, complete contributions reduce review burden
  2. Follow Project Conventions: Adapt to each project's style
  3. Communicate Clearly: Write for future readers
  4. Start Small: Build trust with small contributions first

Before Contributing

Research the Project

[ ] Read CONTRIBUTING.md if it exists
[ ] Review CODE_OF_CONDUCT.md
[ ] Check existing issues for duplicates
[ ] Understand the project's goals and scope
[ ] Review recent PRs for conventions
[ ] Check if the feature/fix is wanted

Set Up Development Environment

bash
# Fork the repository
gh repo fork owner/project --clone

# Set up upstream remote
git remote add upstream https://github.com/owner/project.git

# Install dependencies and verify tests pass
cargo build
cargo test

Issue Writing

Bug Report Template

markdown
## Description
[Clear, concise description of the bug]

## Steps to Reproduce
1. [First step]
2. [Second step]
3. [Third step]

## Expected Behavior
[What should happen]

## Actual Behavior
[What actually happens]

## Environment
- OS: [e.g., Ubuntu 22.04]
- Rust version: [e.g., 1.75.0]
- Project version: [e.g., v1.2.3 or commit hash]

## Additional Context
[Screenshots, logs, related issues]

## Possible Solution (optional)
[If you have ideas about what might fix this]

Feature Request Template

markdown
## Problem Statement
[What problem does this solve? Who benefits?]

## Proposed Solution
[How would this feature work?]

## Alternatives Considered
[What other solutions did you consider?]

## Additional Context
[Mockups, examples from other projects, etc.]

## Willingness to Contribute
[ ] I am willing to implement this feature
[ ] I need help implementing this feature
[ ] I am only suggesting this feature

Pull Request Best Practices

Branch Naming

feature/add-caching-layer
fix/handle-empty-input
docs/update-readme
refactor/simplify-parser

Commit Messages

feat: add support for custom delimiters

Add the ability to specify custom delimiters when parsing CSV files.
This is useful for tab-separated values and other formats.

Closes #123

Format: type: subject

Types:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation only
  • style: Formatting, missing semicolons, etc.
  • refactor: Code change that neither fixes a bug nor adds a feature
  • test: Adding missing tests
  • chore: Maintenance tasks

PR Description Template

markdown
## Summary
[Brief description of changes]

## Motivation
[Why is this change needed?]

## Changes
- [Change 1]
- [Change 2]
- [Change 3]

## Testing
[How were these changes tested?]

## Checklist
- [ ] Tests pass locally
- [ ] Code follows project style
- [ ] Documentation updated
- [ ] CHANGELOG updated (if required)
- [ ] Commit messages follow conventions

## Related Issues
Closes #[issue number]

PR Size Guidelines

Size Lines Changed Review Time
XS < 10 Minutes
S 10-100 < 1 hour
M 100-500 Hours
L 500-1000 Days
XL > 1000 Split recommended

Best practice: Keep PRs under 300 lines when possible.

Code Quality Checklist

Before Submitting:
[ ] cargo fmt has been run
[ ] cargo clippy shows no warnings
[ ] cargo test passes
[ ] New code has tests
[ ] Documentation is updated
[ ] No unrelated changes included
[ ] Commit history is clean

Responding to Review

Do's

  • Thank reviewers for their time
  • Address all comments (resolve or discuss)
  • Ask for clarification if needed
  • Make requested changes promptly
  • Keep discussions focused on the code

Don'ts

  • Don't take feedback personally
  • Don't argue without evidence
  • Don't ignore comments
  • Don't force-push during review (confusing)
  • Don't add unrelated changes

Response Examples

markdown
# Acknowledging feedback
> Consider using `match` instead of `if let` here

Good point! Updated in abc1234.

# Asking for clarification
> This could be simplified

Could you elaborate? I'm not sure if you mean [option A] or [option B].

# Respectfully disagreeing
> Remove this error check

I'd prefer to keep this because [reason]. The error can occur when [scenario]. Happy to discuss further if you disagree.

Maintaining Your Fork

bash
# Sync with upstream
git fetch upstream
git checkout main
git merge upstream/main
git push origin main

# Rebase feature branch
git checkout feature/my-feature
git rebase main

First Contribution Tips

  1. Start with documentation - Fix typos, improve examples
  2. Add tests - Increase coverage for existing code
  3. Fix "good first issue" labels - Maintainers flag these for newcomers
  4. Review other PRs - Learn the project's standards
  5. Ask questions in issues - Before starting large work

Constraints

  • Don't submit PRs without running tests
  • Don't ignore project conventions
  • Don't submit unfinished work without marking as draft
  • Don't expect immediate reviews
  • Respect maintainer decisions

Success Metrics

  • PRs merged without major revisions
  • Positive maintainer feedback
  • Follow-up contributions welcomed
  • Clear communication throughout

Expand your agent's capabilities with these related and highly-rated skills.

terraphim/codex-skills

ubs-scanner

Run Ultimate Bug Scanner for automated bug detection across multiple languages. Detects 1000+ bug patterns including null pointers, security vulnerabilities, async/await issues, and resource leaks. Integrates with quality-gate workflow.

2 0
Explore
terraphim/codex-skills

1password-secrets

Secure secret management using 1Password CLI. Detect plaintext secrets in files and codebases, convert environment files to 1Password templates, inject secrets securely using op inject, and audit codebases for security compliance.

2 0
Explore
terraphim/codex-skills

debugging

Systematic debugging for Rust applications. Root cause analysis, logging strategies, profiling, and issue reproduction. All debug changes removed before final report.

2 0
Explore
terraphim/codex-skills

git-safety-guard

Blocks destructive git and filesystem commands before execution. Prevents accidental loss of uncommitted work from git checkout --, git reset --hard, rm -rf, and similar destructive operations. Works as a Claude Code PreToolUse hook with fail-open semantics.

2 0
Explore
terraphim/codex-skills

community-engagement

Open source community building and engagement. Welcoming contributors, managing discussions, writing release notes, and fostering a healthy project ecosystem.

2 0
Explore
terraphim/codex-skills

disciplined-implementation

Phase 3 of disciplined development. Executes approved implementation plans step by step. Each step includes tests, follows the design exactly, and produces reviewable commits.

2 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results