๐Ÿค Contributing to Gem Team

August 15, 2026 ยท View on GitHub

๐Ÿ“ Commits (Conventional Commits)

<type>(<scope>): <description>

[optional body]
TypeRelease Impact
feat๐Ÿš€ Minor
fix / perf๐Ÿ› ๏ธ Patch
BREAKING CHANGE๐Ÿ”ฅ Major
docs/refactor/test/chore๐Ÿ“ No release

Rules: imperative mood ยท lowercase ยท โ‰ค72 chars ยท specific scope (e.g., gem-implementer)

๐Ÿš€ Release Automation

Release Please (Manifest Strategy) runs on main. PR titles become squash-merge commits, so keep them conventional. The release PR bumps apm.yml and version.txt; merging it creates the gem-team-v<version> tag. The release workflow then validates the package and attaches the generated ZIP plus SHA-256 checksum to the GitHub Release.

If automatic asset upload fails after the release is created, run the Publish Release Assets workflow manually with that release tag.

Generated marketplace metadata is committed, while build/ remains ignored. After changing apm.yml or publishable package metadata, run:

apm pack
apm run check
git add .claude-plugin/marketplace.json

๐Ÿ—๏ธ Agent Changes

  • Edit .apm/agents/<agent-name>.agent.md

  • Structure:

    ---                    # Frontmatter: name, description, args
    # Role / # Expertise   # Identity & core competencies
    # Knowledge Sources    # Prioritized references
    # Workflow             # Init -> Analyze -> Self-Critique -> Handle Failure -> Output
    # Output Format        # Return JSON schema
    # Rules                # Execution, Constitutional, Anti-Patterns, Directives
    

โœ… Quick Checklist

  1. Run apm run check for package, agent, or skill changes
  2. Run the documentation lint, typecheck, and build when docs change
  3. Use a conventional commit and PR title
  4. Commit regenerated .claude-plugin/marketplace.json when it changes
  5. Merge; Release Please creates the release PR and publishes after that PR merges

Happy Contributing! ๐ŸŽ‰