Skip to content

feat(reusable-claude): add plugins, plugin_marketplaces, and additional_permissions inputs #6

Description

@laurigates

Summary

The reusable-claude.yml workflow only accepts runner, claude_args, and max_turns inputs. Repos that need plugins and custom tool permissions (like claude-plugins) cannot use it as a caller.

Missing inputs

Input Type Description
plugins string Claude Code plugins to load
plugin_marketplaces string Plugin marketplace URLs
additional_permissions string Additional tool permissions beyond the defaults

These already exist in reusable-claude-review.yml — the same pattern should be applied to reusable-claude.yml.

Context

The claude-plugins repo's claude.yml workflow loads 21 plugins and grants broad tool permissions (Read, Write, Edit, git operations, gh CLI). It cannot migrate to the reusable workflow until these inputs are available.

Example caller after fix

jobs:
  claude:
    uses: laurigates/.github/.github/workflows/reusable-claude.yml@main
    secrets:
      CLAUDE_CODE_OAUTH_TOKEN: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
    with:
      plugins: |
        code-quality-plugin@laurigates-claude-plugins
        testing-plugin@laurigates-claude-plugins
      plugin_marketplaces: |
        https://github.com/laurigates/claude-plugins.git
      additional_permissions: |
        Write
        Edit
        Bash(git add *)
        Bash(git commit *)
        Bash(git push *)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or improvement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions