From dbdb3e32928de19d155e0e41cd977e1694e9086c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 16 Sep 2025 13:11:00 +0000 Subject: [PATCH 1/3] Initial plan From 9abba9b7a5f233dafa58803577ecb47573125b12 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 16 Sep 2025 13:25:43 +0000 Subject: [PATCH 2/3] Add GITHUB_HOST environment variable to GitHub MCP configuration across all engines Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- .github/workflows/ci-doctor.lock.yml | 5 +- .github/workflows/dev.lock.yml | 5 +- pkg/workflow/claude_engine.go | 5 +- pkg/workflow/codex_engine.go | 4 +- pkg/workflow/codex_engine_test.go | 4 +- pkg/workflow/custom_engine.go | 5 +- pkg/workflow/mcp_config_test.go | 94 ++++++++++++++++++++++++++++ 7 files changed, 116 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-doctor.lock.yml b/.github/workflows/ci-doctor.lock.yml index 6685f0465c..e6c5106e2b 100644 --- a/.github/workflows/ci-doctor.lock.yml +++ b/.github/workflows/ci-doctor.lock.yml @@ -521,10 +521,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } }, "safe_outputs": { diff --git a/.github/workflows/dev.lock.yml b/.github/workflows/dev.lock.yml index 93b1d8c261..bf3fef91a8 100644 --- a/.github/workflows/dev.lock.yml +++ b/.github/workflows/dev.lock.yml @@ -700,10 +700,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } }, "safe_outputs": { diff --git a/pkg/workflow/claude_engine.go b/pkg/workflow/claude_engine.go index 577f89dbf5..e6455095df 100644 --- a/pkg/workflow/claude_engine.go +++ b/pkg/workflow/claude_engine.go @@ -593,10 +593,13 @@ func (e *ClaudeEngine) renderGitHubClaudeMCPConfig(yaml *strings.Builder, github yaml.WriteString(" \"--rm\",\n") yaml.WriteString(" \"-e\",\n") yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\",\n") + yaml.WriteString(" \"-e\",\n") + yaml.WriteString(" \"GITHUB_HOST\",\n") yaml.WriteString(" \"ghcr.io/github/github-mcp-server:" + githubDockerImageVersion + "\"\n") yaml.WriteString(" ],\n") yaml.WriteString(" \"env\": {\n") - yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\": \"${{ secrets.GITHUB_TOKEN }}\"\n") + yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\": \"${{ secrets.GITHUB_TOKEN }}\",\n") + yaml.WriteString(" \"GITHUB_HOST\": \"${{ env.GITHUB_SERVER_URL }}\"\n") yaml.WriteString(" }\n") if isLast { diff --git a/pkg/workflow/codex_engine.go b/pkg/workflow/codex_engine.go index 844b76206c..3f5d49ecdf 100644 --- a/pkg/workflow/codex_engine.go +++ b/pkg/workflow/codex_engine.go @@ -452,9 +452,11 @@ func (e *CodexEngine) renderGitHubCodexMCPConfig(yaml *strings.Builder, githubTo yaml.WriteString(" \"--rm\",\n") yaml.WriteString(" \"-e\",\n") yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\",\n") + yaml.WriteString(" \"-e\",\n") + yaml.WriteString(" \"GITHUB_HOST\",\n") yaml.WriteString(" \"ghcr.io/github/github-mcp-server:" + githubDockerImageVersion + "\"\n") yaml.WriteString(" ]\n") - yaml.WriteString(" env = { \"GITHUB_PERSONAL_ACCESS_TOKEN\" = \"${{ secrets.GITHUB_TOKEN }}\" }\n") + yaml.WriteString(" env = { \"GITHUB_PERSONAL_ACCESS_TOKEN\" = \"${{ secrets.GITHUB_TOKEN }}\", \"GITHUB_HOST\" = \"${{ env.GITHUB_SERVER_URL }}\" }\n") } // renderPlaywrightCodexMCPConfig generates Playwright MCP server configuration for codex config.toml diff --git a/pkg/workflow/codex_engine_test.go b/pkg/workflow/codex_engine_test.go index 57224b2c48..3510183e97 100644 --- a/pkg/workflow/codex_engine_test.go +++ b/pkg/workflow/codex_engine_test.go @@ -285,9 +285,11 @@ func TestCodexEngineRenderMCPConfig(t *testing.T) { "\"--rm\",", "\"-e\",", "\"GITHUB_PERSONAL_ACCESS_TOKEN\",", + "\"-e\",", + "\"GITHUB_HOST\",", "\"ghcr.io/github/github-mcp-server:sha-09deac4\"", "]", - "env = { \"GITHUB_PERSONAL_ACCESS_TOKEN\" = \"${{ secrets.GITHUB_TOKEN }}\" }", + "env = { \"GITHUB_PERSONAL_ACCESS_TOKEN\" = \"${{ secrets.GITHUB_TOKEN }}\", \"GITHUB_HOST\" = \"${{ env.GITHUB_SERVER_URL }}\" }", "EOF", }, }, diff --git a/pkg/workflow/custom_engine.go b/pkg/workflow/custom_engine.go index 82bf621ef4..5c945fc994 100644 --- a/pkg/workflow/custom_engine.go +++ b/pkg/workflow/custom_engine.go @@ -183,10 +183,13 @@ func (e *CustomEngine) renderGitHubMCPConfig(yaml *strings.Builder, githubTool a yaml.WriteString(" \"--rm\",\n") yaml.WriteString(" \"-e\",\n") yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\",\n") + yaml.WriteString(" \"-e\",\n") + yaml.WriteString(" \"GITHUB_HOST\",\n") yaml.WriteString(" \"ghcr.io/github/github-mcp-server:" + githubDockerImageVersion + "\"\n") yaml.WriteString(" ],\n") yaml.WriteString(" \"env\": {\n") - yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\": \"${{ secrets.GITHUB_TOKEN }}\"\n") + yaml.WriteString(" \"GITHUB_PERSONAL_ACCESS_TOKEN\": \"${{ secrets.GITHUB_TOKEN }}\",\n") + yaml.WriteString(" \"GITHUB_HOST\": \"${{ env.GITHUB_SERVER_URL }}\"\n") yaml.WriteString(" }\n") if isLast { diff --git a/pkg/workflow/mcp_config_test.go b/pkg/workflow/mcp_config_test.go index 06571a189c..5d421d7933 100644 --- a/pkg/workflow/mcp_config_test.go +++ b/pkg/workflow/mcp_config_test.go @@ -258,6 +258,100 @@ func TestMCPConfigurationEdgeCases(t *testing.T) { } } +func TestGitHubHostEnvironmentVariable(t *testing.T) { + tests := []struct { + name string + engine string + expectedLines []string + }{ + { + name: "claude engine includes GITHUB_HOST", + engine: "claude", + expectedLines: []string{ + `"-e",`, + `"GITHUB_HOST",`, + `"GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}"`, + }, + }, + { + name: "custom engine includes GITHUB_HOST", + engine: "custom", + expectedLines: []string{ + `"-e",`, + `"GITHUB_HOST",`, + `"GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}"`, + }, + }, + { + name: "codex engine includes GITHUB_HOST", + engine: "codex", + expectedLines: []string{ + `"-e",`, + `"GITHUB_HOST",`, + `"GITHUB_HOST" = "${{ env.GITHUB_SERVER_URL }}"`, + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + tmpDir, err := os.MkdirTemp("", "github-host-test") + if err != nil { + t.Fatal(err) + } + defer os.RemoveAll(tmpDir) + + compiler := NewCompiler(false, "", "test") + + frontmatter := fmt.Sprintf(`--- +engine: %s +tools: + github: + allowed: [list_issues, create_issue] +---`, tt.engine) + + testContent := frontmatter + ` + +# Test GitHub Host Configuration + +This is a test workflow to verify GITHUB_HOST environment variable is included. +` + + testFile := filepath.Join(tmpDir, "github-host-test.md") + if err := os.WriteFile(testFile, []byte(testContent), 0644); err != nil { + t.Fatal(err) + } + + // Compile the workflow + err = compiler.CompileWorkflow(testFile) + if err != nil { + t.Fatalf("Unexpected error compiling workflow: %v", err) + } + + // Read the generated lock file + lockFile := strings.TrimSuffix(testFile, ".md") + ".lock.yml" + content, err := os.ReadFile(lockFile) + if err != nil { + t.Fatalf("Failed to read lock file: %v", err) + } + + lockContent := string(content) + + // Check that all expected lines are present + for _, expectedLine := range tt.expectedLines { + if !strings.Contains(lockContent, expectedLine) { + t.Errorf("Expected line '%s' not found in %s engine output:\n%s", expectedLine, tt.engine, lockContent) + } + } + + // Verify that GITHUB_HOST environment variable appears in docker args + if !strings.Contains(lockContent, "GITHUB_HOST") { + t.Errorf("GITHUB_HOST not found in %s engine output", tt.engine) + } + }) + } +} + func TestCustomDockerMCPConfiguration(t *testing.T) { // Create temporary directory for test files tmpDir, err := os.MkdirTemp("", "custom-docker-mcp-test") From c883855d341d7845e590b69ae10ce09a87387e3f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 16 Sep 2025 13:28:48 +0000 Subject: [PATCH 3/3] Final validation completed - GITHUB_HOST support successfully implemented Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- pkg/cli/workflows/test-ai-inference-github-models.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-add-issue-comment.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-add-issue-labels.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-cache-memory.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-command.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-create-issue.lock.yml | 5 ++++- .../test-claude-create-pull-request-review-comment.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-create-pull-request.lock.yml | 5 ++++- ...test-claude-create-repository-security-advisory.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-mcp.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-missing-tool.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-push-to-pr-branch.lock.yml | 5 ++++- pkg/cli/workflows/test-claude-update-issue.lock.yml | 5 ++++- pkg/cli/workflows/test-codex-add-issue-comment.lock.yml | 4 +++- pkg/cli/workflows/test-codex-add-issue-labels.lock.yml | 4 +++- pkg/cli/workflows/test-codex-command.lock.yml | 4 +++- .../test-playwright-accessibility-contrast.lock.yml | 5 ++++- pkg/workflow/mcp_config_test.go | 6 +++--- 18 files changed, 68 insertions(+), 20 deletions(-) diff --git a/pkg/cli/workflows/test-ai-inference-github-models.lock.yml b/pkg/cli/workflows/test-ai-inference-github-models.lock.yml index 92385c80bf..815bcd3f3d 100644 --- a/pkg/cli/workflows/test-ai-inference-github-models.lock.yml +++ b/pkg/cli/workflows/test-ai-inference-github-models.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-add-issue-comment.lock.yml b/pkg/cli/workflows/test-claude-add-issue-comment.lock.yml index 1c3d875c9a..6c9bd73667 100644 --- a/pkg/cli/workflows/test-claude-add-issue-comment.lock.yml +++ b/pkg/cli/workflows/test-claude-add-issue-comment.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-add-issue-labels.lock.yml b/pkg/cli/workflows/test-claude-add-issue-labels.lock.yml index c494021f70..bb004fdd40 100644 --- a/pkg/cli/workflows/test-claude-add-issue-labels.lock.yml +++ b/pkg/cli/workflows/test-claude-add-issue-labels.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-cache-memory.lock.yml b/pkg/cli/workflows/test-claude-cache-memory.lock.yml index bcf5c92e59..8bdd4302b2 100644 --- a/pkg/cli/workflows/test-claude-cache-memory.lock.yml +++ b/pkg/cli/workflows/test-claude-cache-memory.lock.yml @@ -173,10 +173,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-command.lock.yml b/pkg/cli/workflows/test-claude-command.lock.yml index c1ff16ef40..ee3c90714f 100644 --- a/pkg/cli/workflows/test-claude-command.lock.yml +++ b/pkg/cli/workflows/test-claude-command.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-create-issue.lock.yml b/pkg/cli/workflows/test-claude-create-issue.lock.yml index 3f93628263..6c8065ec9c 100644 --- a/pkg/cli/workflows/test-claude-create-issue.lock.yml +++ b/pkg/cli/workflows/test-claude-create-issue.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-create-pull-request-review-comment.lock.yml b/pkg/cli/workflows/test-claude-create-pull-request-review-comment.lock.yml index a73fbff777..4ca746cd86 100644 --- a/pkg/cli/workflows/test-claude-create-pull-request-review-comment.lock.yml +++ b/pkg/cli/workflows/test-claude-create-pull-request-review-comment.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-create-pull-request.lock.yml b/pkg/cli/workflows/test-claude-create-pull-request.lock.yml index 85c60fc26f..d71124f1d9 100644 --- a/pkg/cli/workflows/test-claude-create-pull-request.lock.yml +++ b/pkg/cli/workflows/test-claude-create-pull-request.lock.yml @@ -144,10 +144,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-create-repository-security-advisory.lock.yml b/pkg/cli/workflows/test-claude-create-repository-security-advisory.lock.yml index 64c353def0..bb2c77cb40 100644 --- a/pkg/cli/workflows/test-claude-create-repository-security-advisory.lock.yml +++ b/pkg/cli/workflows/test-claude-create-repository-security-advisory.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-mcp.lock.yml b/pkg/cli/workflows/test-claude-mcp.lock.yml index 931fe3860e..45d02ec234 100644 --- a/pkg/cli/workflows/test-claude-mcp.lock.yml +++ b/pkg/cli/workflows/test-claude-mcp.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-missing-tool.lock.yml b/pkg/cli/workflows/test-claude-missing-tool.lock.yml index 92d43c84d1..7cc282d141 100644 --- a/pkg/cli/workflows/test-claude-missing-tool.lock.yml +++ b/pkg/cli/workflows/test-claude-missing-tool.lock.yml @@ -627,10 +627,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } }, "safe_outputs": { diff --git a/pkg/cli/workflows/test-claude-push-to-pr-branch.lock.yml b/pkg/cli/workflows/test-claude-push-to-pr-branch.lock.yml index 93a2d97597..c839a8517e 100644 --- a/pkg/cli/workflows/test-claude-push-to-pr-branch.lock.yml +++ b/pkg/cli/workflows/test-claude-push-to-pr-branch.lock.yml @@ -144,10 +144,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-claude-update-issue.lock.yml b/pkg/cli/workflows/test-claude-update-issue.lock.yml index 238f5348dc..83e2567d27 100644 --- a/pkg/cli/workflows/test-claude-update-issue.lock.yml +++ b/pkg/cli/workflows/test-claude-update-issue.lock.yml @@ -143,10 +143,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } } } diff --git a/pkg/cli/workflows/test-codex-add-issue-comment.lock.yml b/pkg/cli/workflows/test-codex-add-issue-comment.lock.yml index 41da7e0c1d..491ea39c56 100644 --- a/pkg/cli/workflows/test-codex-add-issue-comment.lock.yml +++ b/pkg/cli/workflows/test-codex-add-issue-comment.lock.yml @@ -43,9 +43,11 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ] - env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}" } + env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}", "GITHUB_HOST" = "${{ env.GITHUB_SERVER_URL }}" } EOF - name: Create prompt env: diff --git a/pkg/cli/workflows/test-codex-add-issue-labels.lock.yml b/pkg/cli/workflows/test-codex-add-issue-labels.lock.yml index 2026098281..36cb886d77 100644 --- a/pkg/cli/workflows/test-codex-add-issue-labels.lock.yml +++ b/pkg/cli/workflows/test-codex-add-issue-labels.lock.yml @@ -43,9 +43,11 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ] - env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}" } + env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}", "GITHUB_HOST" = "${{ env.GITHUB_SERVER_URL }}" } EOF - name: Create prompt env: diff --git a/pkg/cli/workflows/test-codex-command.lock.yml b/pkg/cli/workflows/test-codex-command.lock.yml index ee392a2715..313c0c4d57 100644 --- a/pkg/cli/workflows/test-codex-command.lock.yml +++ b/pkg/cli/workflows/test-codex-command.lock.yml @@ -43,9 +43,11 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ] - env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}" } + env = { "GITHUB_PERSONAL_ACCESS_TOKEN" = "${{ secrets.GITHUB_TOKEN }}", "GITHUB_HOST" = "${{ env.GITHUB_SERVER_URL }}" } EOF - name: Create prompt env: diff --git a/pkg/cli/workflows/test-playwright-accessibility-contrast.lock.yml b/pkg/cli/workflows/test-playwright-accessibility-contrast.lock.yml index 245225fadf..2e8864df43 100644 --- a/pkg/cli/workflows/test-playwright-accessibility-contrast.lock.yml +++ b/pkg/cli/workflows/test-playwright-accessibility-contrast.lock.yml @@ -603,10 +603,13 @@ jobs: "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", + "-e", + "GITHUB_HOST", "ghcr.io/github/github-mcp-server:sha-09deac4" ], "env": { - "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}" + "GITHUB_PERSONAL_ACCESS_TOKEN": "${{ secrets.GITHUB_TOKEN }}", + "GITHUB_HOST": "${{ env.GITHUB_SERVER_URL }}" } }, "playwright": { diff --git a/pkg/workflow/mcp_config_test.go b/pkg/workflow/mcp_config_test.go index 5d421d7933..41af3ea8d1 100644 --- a/pkg/workflow/mcp_config_test.go +++ b/pkg/workflow/mcp_config_test.go @@ -260,9 +260,9 @@ func TestMCPConfigurationEdgeCases(t *testing.T) { func TestGitHubHostEnvironmentVariable(t *testing.T) { tests := []struct { - name string - engine string - expectedLines []string + name string + engine string + expectedLines []string }{ { name: "claude engine includes GITHUB_HOST",