From d448caf0808d3f699e04160b97947aaffac51633 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 7 Feb 2026 21:12:44 +0000 Subject: [PATCH 1/3] Initial plan From 3554fbac6a664239c024ea0821773c9ab9a6b71f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 7 Feb 2026 21:20:35 +0000 Subject: [PATCH 2/3] Fix plugin import format from marketplace URL to GitHub repository path Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- .github/workflows/smoke-claude.lock.yml | 6 +++--- .github/workflows/smoke-claude.md | 2 +- .github/workflows/smoke-codex.lock.yml | 6 +++--- .github/workflows/smoke-codex.md | 2 +- .github/workflows/smoke-copilot.lock.yml | 6 +++--- .github/workflows/smoke-copilot.md | 2 +- .github/workflows/smoke-project.lock.yml | 6 +++--- .github/workflows/smoke-project.md | 2 +- .github/workflows/smoke-test-tools.lock.yml | 6 +++--- .github/workflows/smoke-test-tools.md | 2 +- docs/src/content/docs/reference/frontmatter.md | 5 ++--- pkg/parser/schemas/main_workflow_schema.json | 9 ++++----- 12 files changed, 26 insertions(+), 28 deletions(-) diff --git a/.github/workflows/smoke-claude.lock.yml b/.github/workflows/smoke-claude.lock.yml index 77cd22e06e..54c29c2834 100644 --- a/.github/workflows/smoke-claude.lock.yml +++ b/.github/workflows/smoke-claude.lock.yml @@ -32,7 +32,7 @@ # - shared/mood.md # - shared/reporting.md # -# frontmatter-hash: 4b3fae7b2569ba8726058dda4de7f6810cd8a51da5a1d788ad92482df8d76f75 +# frontmatter-hash: 814364c13cedc40d83bd313a6a4fb190c33e8b2361c298259e94560c394117ec name: "Smoke Claude" "on": @@ -233,10 +233,10 @@ jobs: run: bash /opt/gh-aw/actions/install_awf_binary.sh v0.13.12 - name: Install Claude Code CLI run: npm install -g --silent @anthropic-ai/claude-code@2.1.34 - - name: 'Install plugin: explanatory-output-style@claude-plugins-official' + - name: 'Install plugin: anthropics/claude-code/plugins/explanatory-output-style' env: GITHUB_TOKEN: ${{ secrets.GH_AW_PLUGINS_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} - run: claude plugin install explanatory-output-style@claude-plugins-official + run: claude plugin install anthropics/claude-code/plugins/explanatory-output-style - name: Determine automatic lockdown mode for GitHub MCP server id: determine-automatic-lockdown env: diff --git a/.github/workflows/smoke-claude.md b/.github/workflows/smoke-claude.md index af1b4bc367..57597f066e 100644 --- a/.github/workflows/smoke-claude.md +++ b/.github/workflows/smoke-claude.md @@ -19,7 +19,7 @@ engine: id: claude max-turns: 15 plugins: - - explanatory-output-style@claude-plugins-official + - anthropics/claude-code/plugins/explanatory-output-style strict: true imports: - shared/mood.md diff --git a/.github/workflows/smoke-codex.lock.yml b/.github/workflows/smoke-codex.lock.yml index 9cdd424787..02ea7142a9 100644 --- a/.github/workflows/smoke-codex.lock.yml +++ b/.github/workflows/smoke-codex.lock.yml @@ -27,7 +27,7 @@ # - shared/mood.md # - shared/reporting.md # -# frontmatter-hash: acbcf393cf7928409b0f29bf6746c794a9991028c2155a64c2667bd45ef42b39 +# frontmatter-hash: f94bc20b93fbe2e3e1482c0def2e21b9a27e8d1fbdfaf3c2f77c03c604302864 name: "Smoke Codex" "on": @@ -196,10 +196,10 @@ jobs: run: npm install -g --silent @openai/codex@0.98.0 - name: Install awf binary run: bash /opt/gh-aw/actions/install_awf_binary.sh v0.13.12 - - name: 'Install plugin: explanatory-output-style@claude-plugins-official' + - name: 'Install plugin: anthropics/claude-code/plugins/explanatory-output-style' env: GITHUB_TOKEN: ${{ secrets.GH_AW_PLUGINS_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} - run: codex plugin install explanatory-output-style@claude-plugins-official + run: codex plugin install anthropics/claude-code/plugins/explanatory-output-style - name: Determine automatic lockdown mode for GitHub MCP server id: determine-automatic-lockdown env: diff --git a/.github/workflows/smoke-codex.md b/.github/workflows/smoke-codex.md index 07a9418005..c7bb3226da 100644 --- a/.github/workflows/smoke-codex.md +++ b/.github/workflows/smoke-codex.md @@ -14,7 +14,7 @@ permissions: name: Smoke Codex engine: codex plugins: - - explanatory-output-style@claude-plugins-official + - anthropics/claude-code/plugins/explanatory-output-style strict: true imports: - shared/mood.md diff --git a/.github/workflows/smoke-copilot.lock.yml b/.github/workflows/smoke-copilot.lock.yml index fb09629ff0..786300494d 100644 --- a/.github/workflows/smoke-copilot.lock.yml +++ b/.github/workflows/smoke-copilot.lock.yml @@ -28,7 +28,7 @@ # - shared/mood.md # - shared/reporting.md # -# frontmatter-hash: d4a80e7549cf82bfbc3ee9f85286bf574d9cd44fd192a866f55a1e39b48fe3a2 +# frontmatter-hash: 875717e5ae342cffe17b69a248ab1eacf41332cc6cb9e332995967f31013e6d8 name: "Smoke Copilot" "on": @@ -223,10 +223,10 @@ jobs: run: /opt/gh-aw/actions/install_copilot_cli.sh 0.0.405 - name: Install awf binary run: bash /opt/gh-aw/actions/install_awf_binary.sh v0.13.12 - - name: 'Install plugin: explanatory-output-style@claude-plugins-official' + - name: 'Install plugin: anthropics/claude-code/plugins/explanatory-output-style' env: GITHUB_TOKEN: ${{ secrets.GH_AW_PLUGINS_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} - run: copilot plugin install explanatory-output-style@claude-plugins-official + run: copilot plugin install anthropics/claude-code/plugins/explanatory-output-style - name: Determine automatic lockdown mode for GitHub MCP server id: determine-automatic-lockdown env: diff --git a/.github/workflows/smoke-copilot.md b/.github/workflows/smoke-copilot.md index 3b1e129231..5a47849920 100644 --- a/.github/workflows/smoke-copilot.md +++ b/.github/workflows/smoke-copilot.md @@ -16,7 +16,7 @@ permissions: name: Smoke Copilot engine: copilot plugins: - - explanatory-output-style@claude-plugins-official + - anthropics/claude-code/plugins/explanatory-output-style imports: - shared/mood.md - shared/gh.md diff --git a/.github/workflows/smoke-project.lock.yml b/.github/workflows/smoke-project.lock.yml index a49b47cb6b..20250fef3d 100644 --- a/.github/workflows/smoke-project.lock.yml +++ b/.github/workflows/smoke-project.lock.yml @@ -27,7 +27,7 @@ # - shared/mood.md # - shared/reporting.md # -# frontmatter-hash: 1a19cc6d450d2660aed67a43699e03d38308953660647e3c9ba2253071dd5935 +# frontmatter-hash: 6b156db0729a740b5637b61953f291f8439aebda05cd394904d7c4a5dfbd2c01 name: "Smoke Project" "on": @@ -153,10 +153,10 @@ jobs: run: npm install -g --silent @openai/codex@0.98.0 - name: Install awf binary run: bash /opt/gh-aw/actions/install_awf_binary.sh v0.13.12 - - name: 'Install plugin: explanatory-output-style@claude-plugins-official' + - name: 'Install plugin: anthropics/claude-code/plugins/explanatory-output-style' env: GITHUB_TOKEN: ${{ secrets.GH_AW_PLUGINS_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} - run: codex plugin install explanatory-output-style@claude-plugins-official + run: codex plugin install anthropics/claude-code/plugins/explanatory-output-style - name: Determine automatic lockdown mode for GitHub MCP server id: determine-automatic-lockdown env: diff --git a/.github/workflows/smoke-project.md b/.github/workflows/smoke-project.md index 9e92607bed..ae52e073bc 100644 --- a/.github/workflows/smoke-project.md +++ b/.github/workflows/smoke-project.md @@ -15,7 +15,7 @@ permissions: name: Smoke Project engine: codex plugins: - - explanatory-output-style@claude-plugins-official + - anthropics/claude-code/plugins/explanatory-output-style imports: - shared/mood.md - shared/gh.md diff --git a/.github/workflows/smoke-test-tools.lock.yml b/.github/workflows/smoke-test-tools.lock.yml index 82f4a10b6d..8576136c1e 100644 --- a/.github/workflows/smoke-test-tools.lock.yml +++ b/.github/workflows/smoke-test-tools.lock.yml @@ -25,7 +25,7 @@ # Imports: # - shared/mood.md # -# frontmatter-hash: 72ba32a133819f05b1e261c22ffb6b8b8f3ba8d20e79d38d48c22d128efc4d14 +# frontmatter-hash: 0897bff6c9f6cc36ba1c2bb267dfb3f5517ac7af6dfe29f6c1d95fe23a18cf9d name: "Agent Container Smoke Test" "on": @@ -179,10 +179,10 @@ jobs: run: /opt/gh-aw/actions/install_copilot_cli.sh 0.0.405 - name: Install awf binary run: bash /opt/gh-aw/actions/install_awf_binary.sh v0.13.12 - - name: 'Install plugin: explanatory-output-style@claude-plugins-official' + - name: 'Install plugin: anthropics/claude-code/plugins/explanatory-output-style' env: GITHUB_TOKEN: ${{ secrets.GH_AW_PLUGINS_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} - run: copilot plugin install explanatory-output-style@claude-plugins-official + run: copilot plugin install anthropics/claude-code/plugins/explanatory-output-style - name: Determine automatic lockdown mode for GitHub MCP server id: determine-automatic-lockdown env: diff --git a/.github/workflows/smoke-test-tools.md b/.github/workflows/smoke-test-tools.md index 61765ea19b..bc35489a9e 100644 --- a/.github/workflows/smoke-test-tools.md +++ b/.github/workflows/smoke-test-tools.md @@ -13,7 +13,7 @@ permissions: name: Agent Container Smoke Test engine: copilot plugins: - - explanatory-output-style@claude-plugins-official + - anthropics/claude-code/plugins/explanatory-output-style strict: true runtimes: node: diff --git a/docs/src/content/docs/reference/frontmatter.md b/docs/src/content/docs/reference/frontmatter.md index a06a89938a..b2c3d475c8 100644 --- a/docs/src/content/docs/reference/frontmatter.md +++ b/docs/src/content/docs/reference/frontmatter.md @@ -108,7 +108,6 @@ plugins: - github/test-plugin - acme/custom-tools - anthropics/claude-code/plugins/explanatory-output-style - - pyright-lsp@claude-plugins-official ``` **Object format** (with custom token): @@ -123,8 +122,8 @@ plugins: **Plugin identifier formats:** - **GitHub repository**: `org/repo` (e.g., `github/test-plugin`) - **Sub-plugin path**: `org/repo/path/to/plugin` (e.g., `anthropics/claude-code/plugins/explanatory-output-style`) -- **Marketplace reference**: `plugin-name@marketplace` (e.g., `pyright-lsp@claude-plugins-official`) -- **Repository with marketplace**: `org/repo@marketplace` (e.g., `anthropics/claude-code@anthropic-plugins`) + +**Note**: The plugin format must be compatible with the engine's CLI `plugin install` command. Currently, GitHub repository paths (with optional sub-paths) are the standard format supported across engines. **Token precedence** for plugin installation (highest to lowest): 1. Custom `plugins.github-token` from object format diff --git a/pkg/parser/schemas/main_workflow_schema.json b/pkg/parser/schemas/main_workflow_schema.json index ec4a3b9597..bcb9bf2e10 100644 --- a/pkg/parser/schemas/main_workflow_schema.json +++ b/pkg/parser/schemas/main_workflow_schema.json @@ -2483,11 +2483,10 @@ ] }, "plugins": { - "description": "Plugin configuration for installing plugins before workflow execution. Supports array format (list of repos/plugin configs) and object format (repos + custom token). Plugin paths can include sub-paths to specific plugins within a repository, or marketplace references using @marketplace syntax.", + "description": "Plugin configuration for installing plugins before workflow execution. Supports array format (list of repos/plugin configs) and object format (repos + custom token). Plugin paths can include sub-paths to specific plugins within a repository (e.g., 'anthropics/claude-code/plugins/explanatory-output-style').", "examples": [ ["github/copilot-plugin", "acme/custom-tools"], ["anthropics/claude-code/plugins/explanatory-output-style"], - ["pyright-lsp@claude-plugins-official"], [ "github/simple-plugin", { @@ -2513,7 +2512,7 @@ { "type": "string", "pattern": "^([a-zA-Z0-9_-]+(/[a-zA-Z0-9_-]+)+|[a-zA-Z0-9_-]+)(@[a-zA-Z0-9_-]+)?$", - "description": "Plugin identifier in one of these formats: 'org/repo', 'org/repo/path/to/plugin', 'plugin-name@marketplace', or 'org/repo@marketplace' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style', 'pyright-lsp@claude-plugins-official')" + "description": "Plugin identifier in GitHub repository format: 'org/repo' or 'org/repo/path/to/plugin' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style'). The pattern allows @marketplace syntax for potential future support, but current engines only support GitHub repository paths." }, { "type": "object", @@ -2523,7 +2522,7 @@ "id": { "type": "string", "pattern": "^([a-zA-Z0-9_-]+(/[a-zA-Z0-9_-]+)+|[a-zA-Z0-9_-]+)(@[a-zA-Z0-9_-]+)?$", - "description": "Plugin repository slug in the format 'org/repo', 'org/repo/path/to/plugin', 'plugin-name@marketplace', or 'org/repo@marketplace' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style')" + "description": "Plugin repository slug in GitHub repository format: 'org/repo' or 'org/repo/path/to/plugin' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style')" }, "mcp": { "type": "object", @@ -2564,7 +2563,7 @@ { "type": "string", "pattern": "^([a-zA-Z0-9_-]+(/[a-zA-Z0-9_-]+)+|[a-zA-Z0-9_-]+)(@[a-zA-Z0-9_-]+)?$", - "description": "Plugin identifier in one of these formats: 'org/repo', 'org/repo/path/to/plugin', 'plugin-name@marketplace', or 'org/repo@marketplace' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style', 'pyright-lsp@claude-plugins-official')" + "description": "Plugin identifier in GitHub repository format: 'org/repo' or 'org/repo/path/to/plugin' (e.g., 'github/example-plugin', 'anthropics/claude-code/plugins/explanatory-output-style'). The pattern allows @marketplace syntax for potential future support, but current engines only support GitHub repository paths." }, { "type": "object", From 7d5e2f7c0ef47baf64c635e59c82a9f4afb04b1d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 7 Feb 2026 21:22:17 +0000 Subject: [PATCH 3/3] Update changeset to reflect actual fix Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- .changeset/patch-add-explanatory-output-style-plugin.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/patch-add-explanatory-output-style-plugin.md b/.changeset/patch-add-explanatory-output-style-plugin.md index b59b455a55..14dc4eb852 100644 --- a/.changeset/patch-add-explanatory-output-style-plugin.md +++ b/.changeset/patch-add-explanatory-output-style-plugin.md @@ -2,4 +2,4 @@ "gh-aw": patch --- -Documented the explanatory-output-style plugin updates in the smoke workflows, including marketplace URL syntax, schema support, and MCP configuration guidance so the new plugin is tracked in the release notes. +Fixed plugin import format in smoke workflows from marketplace URL syntax (`explanatory-output-style@claude-plugins-official`) to GitHub repository path (`anthropics/claude-code/plugins/explanatory-output-style`). The marketplace URL format was not recognized by the Copilot CLI, causing smoke test failures. Updated documentation and schema to clarify that plugins must use GitHub repository paths.