# Contributing to InvestSkill

Thank you for your interest in contributing! We welcome contributions of all kindsβ€”bug reports, feature requests, documentation, and code improvements.

# Code of Conduct

Be respectful, inclusive, and professional. We’re building a community for investment research enthusiasts and professionals.


# Ways to Contribute

# 1. πŸ› Report Bugs

Found an issue? Help us fix it.

Open a Bug Report β†’

Include:

# 2. πŸ’‘ Suggest Features

Have an idea for a new skill or improvement?

Start a Discussion β†’

Describe:

# 3. πŸ“š Improve Documentation

Documentation improvements are always welcome:

Improvements to:

# 4. 🎯 Add a New Skill

Want to create a new analysis framework?

See ADDING-NEW-SKILLS.md for:

# 5. πŸ§ͺ Fix Bugs

Found and fixed a bug? We’d love your PR!

# 6. ✨ Enhance Existing Skills

Improvements to existing frameworks:


# Development Setup

# Prerequisites

# Local Setup

# Clone repository
git clone https://github.com/yennanliu/InvestSkill.git
cd InvestSkill

# Install dependencies (if any)
npm install

# Run test suite
npm test

# Run validation
npm run pre-release

# Verify setup
npm run verify

# Test Before Submitting

# All checks
npm run pre-release

# Or individually
npm test                          # Unit tests
npm run validate                  # Prompt quality
npm run verify                    # Setup verification
npm run integration-tests         # Platform artifacts

All tests must pass before submitting a PR.


# Submitting Changes

# Before You Start

  1. Check if your idea is already discussed in Issues or Discussions
  2. For new skills: read ADDING-NEW-SKILLS.md
  3. For bugs: confirm it’s reproducible locally

# Creating a Pull Request

  1. Fork the repository

    git clone https://github.com/YOUR-USERNAME/InvestSkill.git
    cd InvestSkill
    
  2. Create a feature branch

    git checkout -b feature/your-feature-name
    # or: git checkout -b fix/issue-name
    
  3. Make your changes

    • Keep commits focused (one feature/fix per commit)
    • Write clear commit messages
    • Reference issues: fixes #123
  4. Test your changes

    npm test                    # Unit tests
    npm run integration-tests   # Platform tests
    npm run pre-release         # Full validation
    
  5. Push to your fork

    git push origin feature/your-feature-name
    
  6. Open a Pull Request

    • Reference the issue being fixed: fixes #123
    • Describe what your change does
    • Explain why it’s needed
    • Include test results (screenshots, output, etc.)

# PR Checklist


# Code Standards

# Naming Conventions

# JavaScript Style

# Markdown Style

# Comments


# Adding a New Skill

See ADDING-NEW-SKILLS.md for the comprehensive guide.

Quick summary:

  1. Create skill directory: plugins/us-stock-analysis/skills/skill-name/
  2. Write SKILL.md (Claude Code skill definition)
  3. Copy to prompts/skill-name.md (universal prompt, no frontmatter)
  4. Register in plugin.json
  5. Update .cursor/rules/, GEMINI.md, .github/copilot-instructions.md
  6. Update README files & CHANGELOG
  7. Run full test suite
  8. Submit PR with all changes

# Review Process

# What We Look For

βœ… Good PRs have:

❌ Issues that delay approval:

# Timeline

Reviewers will provide feedback, or approve and merge.


# Questions?


# Resources

Resource Purpose
README.md Project overview
ADDING-NEW-SKILLS.md Complete contributor guide
FAQ.md Common questions & answers
CHANGELOG.md Version history
DEPLOYMENT-STATUS.md Current platform status

# Thank you for making InvestSkill better! πŸ™Œ

Your contributions help build professional investment analysis tools for everyone.