Contributing to Skill Porter banner
jduncan-rva jduncan-rva

Contributing to Skill Porter

AI community intermediate

Description

Thank you for considering contributing to Skill Porter! This project aims to make cross-platform AI tool development easier for everyone.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

Repository README

This is the README for jduncan-rva/skill-porter, shared by 3 entries in this directory. It describes the repository, not this entry specifically.

Contributing to Skill Porter

Thank you for considering contributing to Skill Porter! This project aims to make cross-platform AI tool development easier for everyone.

How to Contribute

Reporting Issues

  • Use the GitHub issue tracker
  • Describe the issue clearly with examples
  • Include version information and platform details
  • Provide sample code or skills/extensions that reproduce the issue

Suggesting Features

  • Open an issue with the "enhancement" label
  • Describe the feature and its use case
  • Explain how it would benefit the community

Submitting Pull Requests

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Test thoroughly (both Claude and Gemini conversions)
  5. Commit with clear messages (git commit -m 'Add amazing feature')
  6. Push to your fork (git push origin feature/amazing-feature)
  7. Open a Pull Request

Development Setup

# Clone your fork
git clone https://github.com/YOUR-USERNAME/skill-porter
cd skill-porter

# Install dependencies
npm install

# Run tests
npm test

# Test CLI locally
node src/cli.js analyze ../path/to/skill

Testing Guidelines

When adding features or fixing bugs:

  1. Test with Claude skills conversion to Gemini
  2. Test with Gemini extensions conversion to Claude
  3. Test with universal skills/extensions
  4. Verify validation passes for generated files
  5. Check that MCP server configurations are preserved

Code Style

  • Use ES modules (import/export)
  • Follow existing code structure
  • Add JSDoc comments for public APIs
  • Keep functions focused and single-purpose
  • Use meaningful variable names

Adding Platform Support

If you're adding support for a new platform or feature:

  1. Update the detector in src/analyzers/detector.js
  2. Add conversion logic in src/converters/
  3. Update validation in src/analyzers/validator.js
  4. Update documentation and README
  5. Add examples to examples/ directory

Questions?

Open an issue or start a discussion. We're here to help!

License

By contributing, you agree that your contributions will be licensed under the MIT License.