fix: use localhost for Gemini MCP gateway URLs on host runner - #29814
Conversation
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/8f978273-6a9c-4183-87f6-df189f5cdd11 Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
Gemini CLI runs directly on the host runner (not inside a Docker container), so MCP_GATEWAY_DOMAIN (host.docker.internal) does not resolve on Linux GitHub Actions runners. Changes: - Add MCP_GATEWAY_HOST_DOMAIN="localhost" export in writeMCPGatewayExports - Update convert_gateway_config_gemini.cjs to use MCP_GATEWAY_HOST_DOMAIN instead of MCP_GATEWAY_DOMAIN for building Gemini settings.json URLs - Update convert_gateway_config_gemini.sh to use MCP_GATEWAY_HOST_DOMAIN instead of MCP_GATEWAY_DOMAIN for building URL_PREFIX - Regenerate all lock files via make recompile - Update golden test files to include MCP_GATEWAY_HOST_DOMAIN export Fixes: MCP tools (github, safeoutputs) now reachable from Gemini CLI Agent-Logs-Url: https://github.com/github/gh-aw/sessions/8f978273-6a9c-4183-87f6-df189f5cdd11 Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Updates MCP gateway URL handling for the Gemini engine so host-runner execution doesn’t rely on host.docker.internal (which doesn’t resolve on Linux hosts), by introducing a dedicated host-side domain env var.
Changes:
- Export
MCP_GATEWAY_HOST_DOMAIN=localhostfrom the workflow generator so host-side tooling can use a resolvable domain. - Update Gemini gateway config converters (JS + shell) to build URL prefixes from
MCP_GATEWAY_HOST_DOMAINinstead ofMCP_GATEWAY_DOMAIN. - Regenerate golden fixtures and workflow lockfiles to reflect the new export.
Show a summary per file
| File | Description |
|---|---|
| actions/setup/js/convert_gateway_config_gemini.cjs | Use MCP_GATEWAY_HOST_DOMAIN for Gemini URL prefix generation. |
| actions/setup/sh/convert_gateway_config_gemini.sh | Use MCP_GATEWAY_HOST_DOMAIN for Gemini URL prefix generation. |
| pkg/workflow/mcp_setup_generator.go | Export new MCP_GATEWAY_HOST_DOMAIN variable in generated workflow steps. |
| pkg/workflow/test-yaml-import.lock.yml | Regenerated lock output to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/wasm_golden/WasmBinary/basic-copilot.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/wasm_golden/WasmBinary/with-imports.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/basic-copilot.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/claude-with-network.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/smoke-copilot.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/smoke-test-tools.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/with-imports.golden | Golden output updated to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ab-testing-advisor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ace-editor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/agent-performance-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/agent-persona-explorer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ai-moderator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/api-consumption-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/approach-validator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/archie.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/architecture-guardian.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/artifacts-summary.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/audit-workflows.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/auto-triage-issues.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/aw-failure-investigator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/blog-auditor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/bot-detection.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/brave.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/breaking-change-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/changeset.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ci-coach.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ci-doctor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/claude-code-user-docs-review.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/cli-consistency-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/cli-version-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/cloclo.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/code-scanning-fixer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/code-simplifier.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/codex-github-remote-mcp-test.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/commit-changes-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/constraint-solving-potd.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/contribution-check.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-agent-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-cli-deep-research.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-opt.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-pr-merged-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-pr-nlp-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-pr-prompt-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-session-insights.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-token-audit.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/copilot-token-optimizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/craft.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-architecture-diagram.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-assign-issue-to-user.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-astrostylelite-markdown-spellcheck.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-aw-cross-repo-compile-check.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-cache-strategy-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-caveman-optimizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-choice-test.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-cli-performance.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-cli-tools-tester.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-code-metrics.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-community-attribution.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-compiler-quality.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-doc-healer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-doc-updater.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-experiment-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-fact.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-file-diet.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-firewall-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-function-namer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-hippo-learn.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-issues-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-malicious-code-scan.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-mcp-concurrency-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-multi-device-docs-tester.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-news.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-observability-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-otel-instrumentation-advisor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-performance-summary.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-regulatory.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-rendering-scripts-verifier.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-repo-chronicle.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-safe-output-integrator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-safe-output-optimizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-safe-outputs-conformance.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-secrets-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-security-observability.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-security-red-team.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-semgrep-scan.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-sentrux-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-skill-optimizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-subagent-optimizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-syntax-error-quality.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-team-evolution-insights.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-team-status.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-testify-uber-super-expert.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-token-consumption-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/daily-workflow-updater.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dead-code-remover.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/deep-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/delight.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dependabot-burner.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dependabot-go-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dependabot-repair.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/deployment-incident-monitor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/design-decision-gate.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dev-hawk.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dev.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN (and other recompile-driven changes). |
| .github/workflows/developer-docs-consolidator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/dictation-prompt.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/discussion-task-miner.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/docs-noob-tester.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/draft-pr-cleanup.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/duplicate-code-detector.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/example-permissions-warning.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/example-workflow-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/firewall-escape.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/firewall.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/functional-pragmatist.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/github-mcp-structural-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/github-mcp-tools-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/github-remote-mcp-auth-test.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/glossary-maintainer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/go-fan.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/go-logger.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/go-pattern-detector.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/gpclean.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/grumpy-reviewer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/hippo-embed.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/hourly-ci-cleaner.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/instructions-janitor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/issue-arborist.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/issue-monster.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/issue-triage-agent.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/jsweep.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/layout-spec-maintainer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/lockfile-stats.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/mcp-inspector.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/mergefest.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/metrics-collector.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/notion-issue-summary.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/org-health-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/pdf-summary.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/plan.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/poem-bot.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/pr-nitpick-reviewer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/pr-triage-agent.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/prompt-clustering-analysis.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/python-data-charts.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/q.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/refactoring-cadence.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/refiner.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/release.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/repo-audit-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/repo-tree-map.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/repository-quality-improver.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/research.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/safe-output-health.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/schema-consistency-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/schema-feature-coverage.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/scout.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/security-compliance.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/security-review.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/semantic-function-refactor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/sergo.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/slide-deck-maintainer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-agent-all-merged.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-agent-all-none.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-agent-public-approved.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-agent-public-none.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-agent-scoped-approved.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-call-workflow.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-ci.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-claude.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-codex.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-copilot-arm.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-copilot.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-create-cross-repo-pr.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-crush.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-gemini.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-multi-pr.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-opencode.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-project.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-service-ports.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-temporary-id.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-test-tools.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-update-cross-repo-pr.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-workflow-call-with-inputs.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/smoke-workflow-call.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/spec-enforcer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/spec-extractor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/spec-librarian.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/stale-repo-identifier.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/static-analysis-report.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/step-name-alignment.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/sub-issue-closer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/super-linter.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/technical-doc-writer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/terminal-stylist.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/test-create-pr-error-handling.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/test-dispatcher.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/test-project-url-default.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/test-quality-sentinel.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/test-workflow.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/tidy.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/typist.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/ubuntu-image-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/unbloat-docs.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/update-astro.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/video-analyzer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/visual-regression-checker.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/weekly-blog-post-writer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/weekly-editors-health-check.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/weekly-issue-summary.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/weekly-safe-outputs-spec-review.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/workflow-generator.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/workflow-health-manager.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/workflow-normalizer.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
| .github/workflows/workflow-skill-extractor.lock.yml | Regenerated workflow lockfile to include MCP_GATEWAY_HOST_DOMAIN. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 219/219 changed files
- Comments generated: 3
| @@ -49,14 +50,20 @@ function transformGeminiEntry(entry, urlPrefix) { | |||
| } | |||
|
|
|||
| function main() { | |||
| const { gatewayOutput, domain, port, urlPrefix, cliServers, servers, extraEnv } = loadGatewayContext({ | |||
| const { gatewayOutput, port, cliServers, servers, extraEnv } = loadGatewayContext({ | |||
| extraRequiredEnv: ["GITHUB_WORKSPACE"], | |||
| }); | |||
| const workspace = extraEnv.GITHUB_WORKSPACE; | |||
|
|
|||
| // Gemini runs directly on the host runner (not inside a Docker container), so use | |||
| // MCP_GATEWAY_HOST_DOMAIN (localhost) instead of MCP_GATEWAY_DOMAIN (host.docker.internal). | |||
| // host.docker.internal does not resolve on the host runner on Linux. | |||
| const hostDomain = process.env.MCP_GATEWAY_HOST_DOMAIN || "localhost"; | |||
| const urlPrefix = `http://${hostDomain}:${port}`; | |||
|
|
|||
| @@ -35,9 +35,9 @@ if [ ! -f "$MCP_GATEWAY_OUTPUT" ]; then | |||
| exit 1 | |||
| fi | |||
|
|
|||
| if [ -z "$MCP_GATEWAY_DOMAIN" ]; then | |||
| echo "ERROR: MCP_GATEWAY_DOMAIN environment variable is required" | |||
| exit 1 | |||
| if [ -z "$MCP_GATEWAY_HOST_DOMAIN" ]; then | |||
| echo "WARNING: MCP_GATEWAY_HOST_DOMAIN environment variable not set, defaulting to localhost" | |||
| MCP_GATEWAY_HOST_DOMAIN="localhost" | |||
| fi | |||
| yaml.WriteString(" export MCP_GATEWAY_PORT=\"" + strconv.Itoa(port) + "\"\n") | ||
| yaml.WriteString(" export MCP_GATEWAY_DOMAIN=\"" + domain + "\"\n") | ||
| yaml.WriteString(" export MCP_GATEWAY_HOST_DOMAIN=\"localhost\"\n") |
|
@copilot address review feedback |
- Derive MCP_GATEWAY_HOST_DOMAIN from domain config: use localhost when domain is host.docker.internal, otherwise inherit the configured value. This supports custom gateway domains and sandbox-disabled cases correctly. - Fix CJS doc: MCP_GATEWAY_DOMAIN is required (used by loadGatewayContext); MCP_GATEWAY_HOST_DOMAIN is also required and listed separately. - Fix shell script: move MCP_GATEWAY_HOST_DOMAIN to Optional section since it has a default value (localhost). Agent-Logs-Url: https://github.com/github/gh-aw/sessions/5c20c2c6-1ddf-41c0-b5d0-547745ca94ae Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
Addressed all three review points in 530a2c8:
Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Gemini CLI runs directly on the host runner (not in a Docker container), so MCP server URLs using
host.docker.internalare unreachable on Linux — causing all MCP tools (github,safeoutputs) to fail silently.Root cause
MCP_GATEWAY_DOMAINis set tohost.docker.internalfor container-based engines (Claude/AWF sandbox). The Gemini converter scripts blindly reused this value when writing.gemini/settings.json, producing unreachable URLs.Changes
mcp_setup_generator.go— ExportMCP_GATEWAY_HOST_DOMAIN="localhost"alongsideMCP_GATEWAY_DOMAIN. The gateway already binds to0.0.0.0, solocalhostalways works from the host.convert_gateway_config_gemini.cjs— UseMCP_GATEWAY_HOST_DOMAIN(fallback:"localhost") instead ofMCP_GATEWAY_DOMAINwhen building theurlPrefixforsettings.json.convert_gateway_config_gemini.sh— Same: useMCP_GATEWAY_HOST_DOMAINforURL_PREFIX.make recompile.Result
MCP_GATEWAY_DOMAINis preserved for container-side consumers (Claude, gateway Docker command). The newMCP_GATEWAY_HOST_DOMAINis the explicit host-side counterpart.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://api.github.com/graphql/usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/daily-news.lock.yml /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/video-analyzer.lock.yml /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/weekly-safe-outputs-spec-review.lock.yml(http block)/usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/daily-news.lock.yml /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/video-analyzer.lock.yml /home/REDACTED/work/gh-aw/gh-aw/.github/workflows/weekly-safe-outputs-spec-review.lock.yml en_C�� logs/command.sh(http block)/usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw en_CompileFixturpush en_CompileFixtur-v en_CompileFixturorigin en_C��(http block)https://api.github.com/orgs/test-owner/actions/secrets/usr/bin/gh gh api /orgs/test-owner/actions/secrets --jq .secrets[].name graphql -f ache/go/1.25.8/x../../../.prettierignore -f owner=github DiscussionsEnabl-bool ache/go/1.25.8/x-buildtags -C js/**/*.json' ---errorsas rev-parse cfg it} /testdeps cal/bin/bash ache/go/1.25.8/x-trimpath(http block)https://api.github.com/repos/actions/ai-inference/git/ref/tags/v1/usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq [.object.sha, .object.type] | @tsv --show-toplevel 5962580/b431/parser.test /usr/bin/git t0 x_amd64/vet .cfg git rev-�� --show-toplevel /tmp/go-build4265962580/b395/actionpins.test /usr/bin/git licyMinIntegritygh -test.v=true ache/node/24.14./repos/actions/github-script/git/ref/tags/v9 git(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v3/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq [.object.sha, .object.type] | @tsv 5962580/b469/workflow.test remote.origin.url(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v4/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv --show-toplevel ache/node/24.14.1/x64/bin/node /usr/bin/git /tmp/gh-aw-test-git 5962580/b462/_terev-parse /opt/hostedtoolc--show-toplevel git rev-�� --show-toplevel node /usr/bin/git /tmp/TestHashCongh(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v4 --jq [.object.sha, .object.type] | @tsv ithub-script/git/ref/tags/v9 /opt/hostedtoolcache/go/1.25.8/x64/pkg/tool/linurepos/{owner}/{repo}/actions/runs/12346/artifactconfig bject.type] | @tsv -bool(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v5/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv Imports852489922/001/noflag-a.md--limit --write 1/x64/bin/node **/*.ts **/*.json --ignore-path(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv --show-toplevel XHjoE8hqd2SJr/Mm--jq(http block)/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq [.object.sha, .object.type] | @tsv xterm-color git /usr/bin/git --show-toplevel erignore /usr/bin/git git rev-�� --show-toplevel git e/git --show-toplevel bash /usr/bin/git e/git(http block)https://api.github.com/repos/actions/checkout/git/ref/tags/v6/usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq [.object.sha, .object.type] | @tsv(http block)Agenowner=github repository(owner: $owner, name: $name) {
hasDiscussionsEnabled
}
}` (http block)
Agent-Logs-Url: REDACTED sv` (http block)
Agent-Logs-Url: REDACTED bin/bash` (http block)