From a8db6bb3f88476679f8e7a1bd1cfd8c0e3e3caa7 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 7 Apr 2026 15:20:27 -0500 Subject: [PATCH 1/2] Fix BYOK CLI BASE_URL values for OpenAI and Anthropic (#60665) Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: RyanHecht <5344055+RyanHecht@users.noreply.github.com> --- .../how-tos/copilot-cli/customize-copilot/use-byok-models.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/content/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models.md b/content/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models.md index aa989e9f3214..5b780ea3071c 100644 --- a/content/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models.md +++ b/content/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models.md @@ -61,7 +61,7 @@ Use the following steps if you are connecting to OpenAI, Ollama, vLLM, Foundry L 1. For a remote OpenAI endpoint, also set your API key. ```shell - export COPILOT_PROVIDER_BASE_URL=https://api.openai.com + export COPILOT_PROVIDER_BASE_URL=https://api.openai.com/v1 export COPILOT_PROVIDER_API_KEY=YOUR-OPENAI-API-KEY export COPILOT_MODEL=YOUR-MODEL-NAME ``` @@ -95,6 +95,7 @@ Use the following steps if you are connecting to OpenAI, Ollama, vLLM, Foundry L ```shell export COPILOT_PROVIDER_TYPE=anthropic + export COPILOT_PROVIDER_BASE_URL=https://api.anthropic.com export COPILOT_PROVIDER_API_KEY=YOUR-ANTHROPIC-API-KEY export COPILOT_MODEL=YOUR-MODEL-NAME ``` From a31ee09ca842e9177e5be8b053dee2f4e8b29f8f Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 7 Apr 2026 15:43:55 -0700 Subject: [PATCH 2/2] =?UTF-8?q?Rename=20coding-agent=20=E2=86=92=20cloud-a?= =?UTF-8?q?gent:=20variable=20keys,=20paths,=20URLs,=20and=20redirects=20(?= =?UTF-8?q?#60601)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: am-stead <102995847+am-stead@users.noreply.github.com> Co-authored-by: sunbrye Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../cloud-agent/approve-and-run-workflows.png | Bin 0 -> 69941 bytes .../cloud-agent/assign-to-copilot-dialog.png | Bin 0 -> 103529 bytes .../copilot/cloud-agent/assign-to-copilot.png | Bin 0 -> 25260 bytes .../cloud-agent/comment-to-agent-on-pr.png | Bin 0 -> 82999 bytes .../copilot/cloud-agent/firewall-warning.png | Bin 0 -> 58205 bytes .../copilot/cloud-agent/log-stop-session.png | Bin 0 -> 32716 bytes .../cloud-agent/mobile-status-dropdown.png | Bin 0 -> 305338 bytes .../open-agent-session-in-copilot-cli.png | Bin 0 -> 171917 bytes .../personal-dashboard-quickstart.md | 2 +- .../reference/personal-dashboard.md | 4 +- .../enforcing-policies-for-code-governance.md | 4 +- ...d-restrictions-of-managed-user-accounts.md | 2 +- .../github-copilot-premium-requests.md | 16 +- content/billing/how-tos/set-up-budgets.md | 4 +- .../concepts/about-code-quality.md | 2 +- .../about-security-campaigns.md | 6 +- .../maintain-quality-code/unblock-your-pr.md | 6 +- .../resolving-code-scanning-alerts.md | 4 +- .../fixing-alerts-in-security-campaign.md | 6 +- .../fix-findings-in-prs.md | 10 +- .../improve-recent-merges.md | 22 +- ...or-participating-in-a-security-campaign.md | 4 +- .../concepts/agents/about-agent-skills.md | 6 +- .../agents/about-third-party-agents.md | 4 +- .../agents/cloud-agent/about-cloud-agent.md | 167 +++++++++++++++ .../about-custom-agents.md | 8 +- .../about-hooks.md | 8 +- .../agents/cloud-agent/access-management.md | 61 ++++++ .../agent-management.md | 17 +- .../concepts/agents/cloud-agent/index.md | 22 ++ .../mcp-and-cloud-agent.md} | 21 +- .../cloud-agent/risks-and-mitigations.md | 61 ++++++ .../copilot/concepts/agents/code-review.md | 2 +- .../agents/coding-agent/about-coding-agent.md | 166 --------------- .../agents/coding-agent/access-management.md | 60 ------ .../concepts/agents/coding-agent/index.md | 21 -- .../coding-agent/risks-and-mitigations.md | 59 ------ .../agents/copilot-cli/about-copilot-cli.md | 2 +- .../copilot/concepts/agents/copilot-memory.md | 4 +- .../concepts/agents/enterprise-management.md | 10 +- content/copilot/concepts/agents/index.md | 2 +- .../copilot/concepts/auto-model-selection.md | 12 +- .../concepts/billing/copilot-requests.md | 2 +- .../concepts/completions/code-referencing.md | 6 +- content/copilot/concepts/context/mcp.md | 10 +- .../concepts/context/repository-indexing.md | 8 +- content/copilot/concepts/mcp-management.md | 2 +- content/copilot/concepts/spark.md | 8 +- .../tools/about-copilot-integrations.md | 26 +-- content/copilot/concepts/tools/ai-tools.md | 8 +- .../get-started/choose-enterprise-plan.md | 4 +- content/copilot/get-started/features.md | 6 +- content/copilot/get-started/plans.md | 6 +- .../manage-agents/index.md | 2 +- .../manage-copilot-cloud-agent.md | 60 ++++++ .../manage-copilot-coding-agent.md | 59 ------ .../prepare-for-custom-agents.md | 2 +- .../add-copilot-cloud-agent.md | 66 ++++++ .../add-copilot-coding-agent.md | 65 ------ .../configure-runner-for-coding-agent.md | 24 +-- .../manage-for-organization/index.md | 2 +- .../manage-policies.md | 6 +- .../prepare-for-custom-agents.md | 4 +- .../how-tos/chat-with-copilot/chat-in-ide.md | 8 +- .../exclude-content-from-copilot.md | 2 +- .../add-repository-instructions.md | 8 +- ...inister-copilot-cli-for-your-enterprise.md | 4 +- .../how-tos/copilot-cli/cli-best-practices.md | 4 +- .../customize-copilot/add-mcp-servers.md | 6 +- .../customize-copilot/use-hooks.md | 10 +- .../authenticate-copilot-cli.md | 2 +- .../delegate-tasks-to-cca.md | 6 +- .../invoke-custom-agents.md | 4 +- .../use-copilot-cli-agents/overview.md | 6 +- .../find-matching-code.md | 4 +- .../manage-request-allowances.md | 2 +- .../manage-your-account/manage-policies.md | 18 +- .../use-mcp/configure-toolsets.md | 2 +- .../use-mcp/extend-copilot-chat-with-mcp.md | 2 +- .../use-mcp/use-the-github-mcp-server.md | 4 +- .../cloud-agent/changing-the-ai-model.md | 37 ++++ .../configuring-agent-settings.md | 12 +- .../create-a-pr.md | 63 +++--- .../create-custom-agents.md | 18 +- .../create-skills.md | 4 +- .../customize-the-agent-environment.md | 35 ++-- .../customize-the-agent-firewall.md | 20 +- .../extend-cloud-agent-with-mcp.md} | 39 ++-- .../{coding-agent => cloud-agent}/index.md | 19 +- ...ntegrate-cloud-agent-with-azure-boards.md} | 20 +- .../integrate-cloud-agent-with-jira.md} | 41 ++-- .../integrate-cloud-agent-with-linear.md} | 20 +- .../integrate-cloud-agent-with-slack.md} | 22 +- .../integrate-cloud-agent-with-teams.md} | 20 +- .../make-changes-to-an-existing-pr.md | 14 +- .../provide-visual-inputs.md | 18 +- .../research-plan-iterate.md | 18 +- .../review-copilot-prs.md | 21 +- .../test-custom-agents.md | 4 +- .../track-copilot-sessions.md | 31 +-- .../troubleshoot-cloud-agent.md} | 41 ++-- .../use-hooks.md | 12 +- .../coding-agent/changing-the-ai-model.md | 35 ---- .../use-copilot-agents/copilot-memory.md | 4 +- .../how-tos/use-copilot-agents/index.md | 2 +- .../use-copilot-agents/manage-agents.md | 12 +- .../configure-runners.md | 2 +- .../request-a-code-review/use-code-review.md | 4 +- .../use-copilot-to-create-or-update-issues.md | 2 +- .../reference/agent-session-filters.md | 2 +- .../reference/copilot-allowlist-reference.md | 6 +- .../reference/custom-agents-configuration.md | 26 +-- .../reference/custom-instructions-support.md | 10 +- .../reference/customization-cheat-sheet.md | 10 +- .../copilot/reference/hooks-configuration.md | 6 +- content/copilot/reference/metrics-data.md | 2 +- content/copilot/reference/policy-conflicts.md | 4 +- .../responsible-use/copilot-cloud-agent.md | 191 ++++++++++++++++++ .../responsible-use/copilot-coding-agent.md | 190 ----------------- content/copilot/responsible-use/index.md | 2 +- .../get-the-best-results.md | 31 +-- .../improve-a-project.md | 28 +-- .../{coding-agent => cloud-agent}/index.md | 6 +- .../pilot-cloud-agent.md} | 53 ++--- .../copilot/tutorials/copilot-cli-hooks.md | 2 +- .../custom-agents/bug-fix-teammate.md | 2 +- .../custom-agents/cleanup-specialist.md | 2 +- .../custom-agents/implementation-planner.md | 2 +- .../custom-agents/your-first-custom-agent.md | 6 +- content/copilot/tutorials/index.md | 2 +- .../tutorials/modernize-java-applications.md | 6 +- content/copilot/tutorials/plan-a-project.md | 6 +- .../tutorials/reduce-technical-debt.md | 44 ++-- .../increase-test-coverage.md | 2 +- .../enable-developers/integrate-ai-agents.md | 14 +- .../establish-ai-managers.md | 2 +- .../maintain-codebase-standards.md | 2 +- .../tutorials/spark/build-apps-with-spark.md | 2 +- content/copilot/tutorials/vibe-coding.md | 2 +- .../get-started/using-github/github-mobile.md | 2 +- content/index.md | 2 +- .../concepts/featured-github-integrations.md | 2 +- .../slack/integrate-github-with-slack.md | 2 +- .../how-tos/slack/use-github-in-slack.md | 4 +- .../teams/integrate-github-with-teams.md | 2 +- .../how-tos/teams/use-github-in-teams.md | 4 +- .../reference/slack-permissions.md | 4 +- .../reference/teams-permissions.md | 6 +- ...and-pull-requests-to-other-github-users.md | 4 +- ...erences-between-azure-devops-and-github.md | 2 +- .../commenting-on-a-pull-request.md | 2 +- ...wing-proposed-changes-in-a-pull-request.md | 2 +- .../creating-a-new-repository.md | 2 +- content/rest/agent-tasks/agent-tasks.md | 2 +- .../copilot-coding-agent-management.md | 2 +- data/llms-txt-config.yml | 4 +- .../billing/cost-center-allocation.md | 2 +- .../premium-request-analytics-start.md | 2 +- .../reusables/billing/pru-sku-split-notice.md | 2 +- ...nt.md => fix-findings-with-cloud-agent.md} | 10 +- ...hange-the-ai-model-copilot-cloud-agent.md} | 2 +- .../copilot/cloud-agent-emu-limitation.md | 3 + ...hosts.md => cloud-agent-required-hosts.md} | 6 +- ...nt-settings.md => cloud-agent-settings.md} | 2 +- .../cloud-agent-validation-tools-intro.md | 1 + ...ud-agent-workflow-run-approval-default.md} | 4 +- .../cloud-agent/agent-management-intro.md | 1 + .../create-hooks-instructions.md | 2 +- .../custom-allowlist-add-entries.md | 0 .../enabling-for-orgs-and-enterprises.md | 3 + .../hooks-intro.md | 2 +- .../mcp-brief-intro.md | 2 +- .../monitoring-progress-heading.md | 2 +- .../new-agent-task-form-instructions.md | 2 +- .../raycast-intro.md | 2 +- .../raycast-oauth-access-restrictions.md | 0 .../raycast-setup.md | 0 .../troubleshoot-hooks.md | 0 .../use-chat-participant-in-vsc.md | 0 .../use-latest-vscode.md | 0 data/reusables/copilot/cloud-agent/what-is.md | 1 + .../write-access-required.md | 0 .../code-review/custom-instructions-limit.md | 2 +- .../copilot/coding-agent-emu-limitation.md | 3 - .../coding-agent-validation-tools-intro.md | 1 - .../coding-agent/agent-management-intro.md | 1 - .../enabling-for-orgs-and-enterprises.md | 3 - .../reusables/copilot/coding-agent/what-is.md | 1 - ....md => copilot-cloud-agent-auto-models.md} | 0 ...=> copilot-cloud-agent-non-auto-models.md} | 0 .../copilot/custom-agents-further-reading.md | 4 +- .../custom-instructions-org-support.md | 2 +- .../copilot/custom-instructions-path.md | 6 +- .../copilot/differences-cfi-cfb-table.md | 2 +- .../copilot/mcp/cloud-agent-limitations.md | 3 + .../copilot/mcp/coding-agent-limitations.md | 3 - ...ional-select-copilot-cloud-agent-model.md} | 2 +- .../optional-select-custom-agent-dotcom.md | 2 +- .../optional-select-custom-agent-generic.md | 2 +- .../repository-custom-instructions-types.md | 2 +- data/reusables/copilot/setup-next-steps.md | 2 +- .../identify-role-requirements.md | 2 +- .../gated-features/copilot-cloud-agent.md | 1 + .../gated-features/copilot-coding-agent.md | 1 - .../repositories/rulesets-bypass-step.md | 2 +- data/variables/copilot.yml | 8 +- src/ai-tools/README.md | 2 +- src/ai-tools/prompts/intro.md | 8 +- 208 files changed, 1374 insertions(+), 1316 deletions(-) create mode 100644 assets/images/help/copilot/cloud-agent/approve-and-run-workflows.png create mode 100644 assets/images/help/copilot/cloud-agent/assign-to-copilot-dialog.png create mode 100644 assets/images/help/copilot/cloud-agent/assign-to-copilot.png create mode 100644 assets/images/help/copilot/cloud-agent/comment-to-agent-on-pr.png create mode 100644 assets/images/help/copilot/cloud-agent/firewall-warning.png create mode 100644 assets/images/help/copilot/cloud-agent/log-stop-session.png create mode 100644 assets/images/help/copilot/cloud-agent/mobile-status-dropdown.png create mode 100644 assets/images/help/copilot/cloud-agent/open-agent-session-in-copilot-cli.png create mode 100644 content/copilot/concepts/agents/cloud-agent/about-cloud-agent.md rename content/copilot/concepts/agents/{coding-agent => cloud-agent}/about-custom-agents.md (75%) rename content/copilot/concepts/agents/{coding-agent => cloud-agent}/about-hooks.md (92%) create mode 100644 content/copilot/concepts/agents/cloud-agent/access-management.md rename content/copilot/concepts/agents/{coding-agent => cloud-agent}/agent-management.md (75%) create mode 100644 content/copilot/concepts/agents/cloud-agent/index.md rename content/copilot/concepts/agents/{coding-agent/mcp-and-coding-agent.md => cloud-agent/mcp-and-cloud-agent.md} (77%) create mode 100644 content/copilot/concepts/agents/cloud-agent/risks-and-mitigations.md delete mode 100644 content/copilot/concepts/agents/coding-agent/about-coding-agent.md delete mode 100644 content/copilot/concepts/agents/coding-agent/access-management.md delete mode 100644 content/copilot/concepts/agents/coding-agent/index.md delete mode 100644 content/copilot/concepts/agents/coding-agent/risks-and-mitigations.md create mode 100644 content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent.md delete mode 100644 content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-coding-agent.md create mode 100644 content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent.md delete mode 100644 content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent.md create mode 100644 content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/configuring-agent-settings.md (83%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/create-a-pr.md (90%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/create-custom-agents.md (91%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/create-skills.md (77%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/customize-the-agent-environment.md (79%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/customize-the-agent-firewall.md (90%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/extend-coding-agent-with-mcp.md => cloud-agent/extend-cloud-agent-with-mcp.md} (91%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/index.md (65%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/integrate-coding-agent-with-azure-boards.md => cloud-agent/integrate-cloud-agent-with-azure-boards.md} (74%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/integrate-coding-agent-with-jira.md => cloud-agent/integrate-cloud-agent-with-jira.md} (78%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/integrate-coding-agent-with-linear.md => cloud-agent/integrate-cloud-agent-with-linear.md} (71%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/integrate-coding-agent-with-slack.md => cloud-agent/integrate-cloud-agent-with-slack.md} (66%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/integrate-coding-agent-with-teams.md => cloud-agent/integrate-cloud-agent-with-teams.md} (73%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/make-changes-to-an-existing-pr.md (71%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/provide-visual-inputs.md (63%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/research-plan-iterate.md (63%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/review-copilot-prs.md (76%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/test-custom-agents.md (95%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/track-copilot-sessions.md (86%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent/troubleshoot-coding-agent.md => cloud-agent/troubleshoot-cloud-agent.md} (69%) rename content/copilot/how-tos/use-copilot-agents/{coding-agent => cloud-agent}/use-hooks.md (64%) delete mode 100644 content/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model.md create mode 100644 content/copilot/responsible-use/copilot-cloud-agent.md delete mode 100644 content/copilot/responsible-use/copilot-coding-agent.md rename content/copilot/tutorials/{coding-agent => cloud-agent}/get-the-best-results.md (83%) rename content/copilot/tutorials/{coding-agent => cloud-agent}/improve-a-project.md (82%) rename content/copilot/tutorials/{coding-agent => cloud-agent}/index.md (72%) rename content/copilot/tutorials/{coding-agent/pilot-coding-agent.md => cloud-agent/pilot-cloud-agent.md} (61%) rename data/reusables/code-quality/{fix-findings-with-coding-agent.md => fix-findings-with-cloud-agent.md} (64%) rename data/reusables/copilot/{change-the-ai-model-copilot-coding-agent.md => change-the-ai-model-copilot-cloud-agent.md} (83%) create mode 100644 data/reusables/copilot/cloud-agent-emu-limitation.md rename data/reusables/copilot/{coding-agent-required-hosts.md => cloud-agent-required-hosts.md} (83%) rename data/reusables/copilot/{coding-agent-settings.md => cloud-agent-settings.md} (71%) create mode 100644 data/reusables/copilot/cloud-agent-validation-tools-intro.md rename data/reusables/copilot/{coding-agent-workflow-run-approval-default.md => cloud-agent-workflow-run-approval-default.md} (77%) create mode 100644 data/reusables/copilot/cloud-agent/agent-management-intro.md rename data/reusables/copilot/{coding-agent => cloud-agent}/create-hooks-instructions.md (91%) rename data/reusables/copilot/{coding-agent => cloud-agent}/custom-allowlist-add-entries.md (100%) create mode 100644 data/reusables/copilot/cloud-agent/enabling-for-orgs-and-enterprises.md rename data/reusables/copilot/{coding-agent => cloud-agent}/hooks-intro.md (75%) rename data/reusables/copilot/{coding-agent => cloud-agent}/mcp-brief-intro.md (81%) rename data/reusables/copilot/{coding-agent => cloud-agent}/monitoring-progress-heading.md (82%) rename data/reusables/copilot/{coding-agent => cloud-agent}/new-agent-task-form-instructions.md (94%) rename data/reusables/copilot/{coding-agent => cloud-agent}/raycast-intro.md (62%) rename data/reusables/copilot/{coding-agent => cloud-agent}/raycast-oauth-access-restrictions.md (100%) rename data/reusables/copilot/{coding-agent => cloud-agent}/raycast-setup.md (100%) rename data/reusables/copilot/{coding-agent => cloud-agent}/troubleshoot-hooks.md (100%) rename data/reusables/copilot/{coding-agent => cloud-agent}/use-chat-participant-in-vsc.md (100%) rename data/reusables/copilot/{coding-agent => cloud-agent}/use-latest-vscode.md (100%) create mode 100644 data/reusables/copilot/cloud-agent/what-is.md rename data/reusables/copilot/{coding-agent => cloud-agent}/write-access-required.md (100%) delete mode 100644 data/reusables/copilot/coding-agent-emu-limitation.md delete mode 100644 data/reusables/copilot/coding-agent-validation-tools-intro.md delete mode 100644 data/reusables/copilot/coding-agent/agent-management-intro.md delete mode 100644 data/reusables/copilot/coding-agent/enabling-for-orgs-and-enterprises.md delete mode 100644 data/reusables/copilot/coding-agent/what-is.md rename data/reusables/copilot/{copilot-coding-agent-auto-models.md => copilot-cloud-agent-auto-models.md} (100%) rename data/reusables/copilot/{copilot-coding-agent-non-auto-models.md => copilot-cloud-agent-non-auto-models.md} (100%) create mode 100644 data/reusables/copilot/mcp/cloud-agent-limitations.md delete mode 100644 data/reusables/copilot/mcp/coding-agent-limitations.md rename data/reusables/copilot/{optional-select-copilot-coding-agent-model.md => optional-select-copilot-cloud-agent-model.md} (72%) create mode 100644 data/reusables/gated-features/copilot-cloud-agent.md delete mode 100644 data/reusables/gated-features/copilot-coding-agent.md diff --git a/assets/images/help/copilot/cloud-agent/approve-and-run-workflows.png b/assets/images/help/copilot/cloud-agent/approve-and-run-workflows.png new file mode 100644 index 0000000000000000000000000000000000000000..db566bb3ad0ed1ae6bf004e896371d176d4f9022 GIT binary patch literal 69941 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 literal 0 HcmV?d00001 diff --git a/assets/images/help/copilot/cloud-agent/assign-to-copilot-dialog.png b/assets/images/help/copilot/cloud-agent/assign-to-copilot-dialog.png new file mode 100644 index 0000000000000000000000000000000000000000..8864e2e7a0c6c4a4c89336a5e635b9a243e3288e GIT binary patch literal 103529 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 duG)seh?S9vTzv}R)zJzDlVWqV%L38p84py-x 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 bpBj)0(2B(seA8I@^QWA&^6Qe9MxXu*?c5pk literal 0 HcmV?d00001 diff --git a/assets/images/help/copilot/cloud-agent/firewall-warning.png b/assets/images/help/copilot/cloud-agent/firewall-warning.png new file mode 100644 index 0000000000000000000000000000000000000000..285d93ee2e094b98b1a42c39051c19058425a130 GIT binary patch literal 58205 zcmce-WmH^Ev?h#OkS4g(jk^Z7Kx2X68r&hcTY^jD!5xAGOK^90cXt9LxI28!``($k z^JDJ1Ge5pwy=t9vx@uR|-c`?j>g?TNN(#~#XvAnRFfbUhGGG-L7{m$~7&sdgIOvnS z&9^)-Fx%9!;P+}Cu!pO`_A5j9$Qw6>LgxQ|nnp%OBF+A}-Yt+7IFV_~6lk7goV{vW zzVyjv9u&-SZNc9yH|*gh2p73qLUgXembd+65&57Fq%z&;kYp{967~1qKfL z_1Yf=TKu1?@BP<5|10hPC}HKSIeC@>6)OL~HIRWfuS5C29;b~yN9hU6dOFAL9N!c_ z);}V^C@MZB&O$h^6Gs5?V=z!Cv&W68L+|{=@^uO0x?{CO;>TqFxu>S1yfYdrk_n2Z zTb^enY&2ZS>yIIqf&MnZf&%{g5W?LolmB~RbBk|rZO*FW8(oiQ$@JQqn^%{%;fHnW z@cFBKM2gqy4%ax4gkcHdd}=&_7JHqxyT?kbLIE9((E*&g($x6BBNP`(Sq?iLWtZX+ zq|~D0ox(bAq0KUWBY=Kyz-Zu@C32Y`kNAo8{E+#F znZ5SqYPCT8)v^enDAgD(w&{FOY;4S9ZNtS^Uti~viygD<5yh)ZyzGyz$4>_&;Xm^z zUgou@z^1ER9CEax%a1fd(8iPiD+Ny(d@}X)%Wq5;Sd66{iy0q2MU$0yiqb_>$kHIY z*$*XajFV(Fp+jo}ATDeC@5Z(v^whr0qs1dYtqR0*Od%RJm>L@0(X$skO)L z!>h)LCg`wU?ux1J^YORe z&pqna=*E&BXJyk#M=bjA;*AvUMoID*0%=2Y3>CNb({*O?VAfx09# zoohD^z#ty0t1D|S+vuvP^M@*KS6nicf6x>KT*8Jm*eTsM1MP^P>SWYfCESpzJeGk+ zWiWlR$3vGz8t2N^>6YR7pyDerq(Ar+Som zgyEf;Bm}(~X*BHG%-LaxoRi4ZQ$bE7GkyL8bF zGUtI;O`9Z92O7p?QU7=if0=hWM_HaJDrT`VYKpiwD>cS{M}YNsdt9L_`gY^7$R-MQ zmC86OGcM$%%m5;n;R`IV@$zaJ0>~3q`BKI95qkBH<{6o={)7)jfJ4?^nzuqKpFXIm z;O;f^vJK<7+398+Fz4#$@liZ)WUCBr6ZqD&2p8W*$O5A}QNc>FR$PO5Qs zZy~?**sD4NCH*7+V^UYYfqI7-X?r_rzwh{*3@t{N3C~UqRHQ2r?ME~A+0)Q^6}UYg zPutX9G0090sN#bcyG^=MO@nuC-u;iSL;%eug}Mj>7~C~Ks(V}pU?r?e9g3t2ghyEo zb{A8pmF~)2$mxt9t~UaSf4Sv}QTJpsy-XFB-yVK@@JY8od-cBnh?)WU)LmTa zEi*F;bm7p3Ozy*J|fR&b>b`!S)pD#m5Ul`eyHa@VA5q2D!~Br`I!3tiXN1tp<7-) z|AE6Iof|6Svln`8_fZcSD$@(1=9B-I{d(}?Jfiic+#Uj;CXPk-JyrZ&R(ZzpkEk7a zf<`shol(mYaTl8?sS1oW&r6-rM5;YZXnO=uh2e@xjKSmNxfIvU)6=LjOV#J&2^Tx~ zf0)c9lj(fH50-w+f1M4q!GDid6_Y}1{y&m2wSRfdf6M#WwqF5A`RD6YSJHFTU$$`Z+d+q>TtU8{sgLF{{iRc{xyC+opK4~M@7#% z+hyo?*J7FY%RiTE>n+0eiiN^-)5{0mb7|-b#J{5Q|A^Q+-JWiKeYgq5G5d8o^<#Lf z`LrrtQLx$k$ZNI(Ro{C%bGWSKIJQ6QJmcvB>zl;=K{oMkdGo0qhPkWnof1rm3SC8j zsCTw=Qvxh|3%W5`t-sb6op&`PLk(&?29YVgdR@8las|mc?~Sr$5E<;R7G^Jg-LKf> ze}fWGVch#6eP`KqUoG?GO#mfIz;{2$_RsQmlQ2>R1D~f%yfV%9SPODNw_hcKoq;hz z{**!#USn&m-X8^KRK`rDqKR$ws+&sG1W@zDxv%Y`mgfGXy|W%xyBZpes0nllmD06B+#cTyK7nRO(zXY0@Y4VzE1! z8Dok2uYAV6qkI;fI*oZNy%ZtO679zKd9;;s{V^2ToMwM#tfrYz)d`8!`3g&^pyPZU zEmZ#c(`j{kbF4_|r&a+{fOfN+p6k0hI1n0yo^q=^)bg5b#1A3?i~YW+3t9jW-Yba( ziF%B;ZcG_VN-R7ChW~gASiGQ!CgtDaN5&$jwpefbdL2K_WImcUDo3;Ieh8Ueg|3~E z)ar&F5~jiVt2_8Tr6RR{iQ@_V znvVqus@-$oluKeI6Lb^uXYUy&1$0gfC$SW&@@&Wty`4+p(r$E`4GN3zQ%sRjJ?4k~ zWzg>bQppfA(2D{2KJ`UE=m$Qt7KFKl#f%3H=Eo-gcAugjs)aMI`{u#e;kn&<8<}$j z3kO=5C)}?FTp!17+xN0w(vl1qAKd$TQbZpfhp(qgQ}dfVFYs%ExGcD6mf6$ooBeDE zN8AFBYu1P#2tb&&UBDlFvLfG7MNDWj3oe;R-iz3D2NG`}eG6h-HDk@T16xoKh-{*h zh)kjD<(ZRlF`?_}g=uqB`BG4R^N))uFeUI`#CkQj29re$_ZaUx`51H^0--R@8XqDp zuJ1(T16BwngMv=?usYXVD%Ys6S1Q59v%`WCU|NAb8ch!*o7JX7sT74_|=~P4p;e6PRc{`>FFVX6;Q-0|IaX4Bn?ia`%=4qxEZ&i7KcNr9RE& zth+VjY%N;4bD#6YO{or)uw$b}Q%$I(*W#oHLs7yN^p`Sq6?xs^bZs#QsDGW#u;>*Pe@io_C`Lua@w}TjU>oq9}kB!*E4l8@J z+YzgVSdb)^;K!c2%^tv-m6%DJo6TBoqU_(W>_f9}_LakVvDl{wI6UpA3f-`=cNYYF zn?~JIU`3KEGH#*Phv)t~{d8gurx`N$RRWgBF>i`0Oa%(SnYwFy0gG1JcD6DGWdV!r z!HhKkXO5NT-D0kKdJ3&F?tw>H$YiPa_!qA3Xfi<)H6jDnTbBCu%+Un%00IM_OuDjU zgRfklerR7LCG2&=)5X+DCEjBY7iPm)<(M7Rafq;wyR#$gl{BCVeSJE@5)%APG6NaW z{#40oN%5RIWI-{>(2qFl{D}zX(HCFJe)vq0lIwy($dvvVn|wykc$JeM!@O%C$us z`(B-U!*E~jRG&sBq`z-`&|R9?;Nfa%#2swDb+O0uhihEG+tp&ts6R&L3KmvjXr!%d zwK{m2@yomIqnv$Zk#kLu{89ul1-=JjVR(sQ?mT z3~PaWDyP{HH5h5==)_}QL3}4cRdF332)AR)YZB}Aw!115cbxz1APt9KGSB6Y5e&R7 zf*bXk^-cM;Td%MgTms&H3^EonylpICQ1nr~+-FttE$F7@=E+$+U)3AUPaaGtO0hqu z2$2yljV=^ zLV`?Qxb}zo|_{VbLg{ zBxh2fKB)+l&cFBTFr_P|1IE?R%NC6#ri%!XbIa{9=b5a0U6JS-h%I4fi|mj@84L4B zfA8C~G{fHE;lg1yl)#`$3*=NeoxG|5VtFp)Jq{{~gB@V7Vf+MN0^X2di_H{eW%mmm zhXL>#3PmnAWBwR^StVK9$YWZOY z$vmFgVuLc5R6Ps@V_d;A9CIRbxXm^t@e1NSF0T3R!@xqbAY9^BU! zTOiX>$R&0ex%UbxrkP6yUm4@Jb-PNstYzRyFym)z(v;C*QzI~|hws$C+pZI9XSPD^ z3#D2uA{SijWO^ZX(c8WY`H4nS-dd^jAd12a5mO>{aMbW@$*HQM;I^!y=ly3t#*sHv z4wJsm7Zem%f5u7Wj36_7N0(f!cfYE~84Uf-_KjaxM}fS!X$zptGd2ii*MJThc@XuG%~(S7oLk%@mZ=iYAne9S zK7G-l18;>=WC9p0vA*T!RDJ4NZA-{Ly~_-OaL2=)UQOBiJS>Avq{y88D*5tYDA0?eD!a)k|oQ}rKZ9a_esmO0DBU; z9HyRX%yn}mde})-Evba|AMMym1>W5u^5sn+FVjfncRdA@udcJ5=a<9+7?LThC(g_J zw3_4(DQojfTqHuP<}hp-Kb5wy`aTyevCWt>3Mp~sBHH%KT{1YS?2x%VLewY#zp7GX z2EzSxBc?y5)K*JsB^dzK*fGyPCqCq?ZT(^as-zG|ZRAdm^I6v#)g78P-!Uk9o5R9K zN)td$07b^Ppzh#5r^);z=WqERFvY3K74|ZNWOR?v6*nb}F@j$Op$BwQJNIK#t(NK&o`5?0!L7LPeTAwU$*SMnJW`(1Z#oz2Ei zoMxN~2n%Fa3~YoH$JS0=%namxZdXb#ZqSl?3v`fhf>?!;iGpU45emC1L?#pMvLbOA z?b+yxZ592bBUbQ(6sRW&)o8$I7hNd22v}2Nfbc|Ld(r>wbwVN_n;(&}i8R~iuAWi# zSAam{r3<{3uw(Fc?(!@Fi_joT5?*Kwd5Rkrc8h8GhA#{RzW|5E&xsn0(z+%9>y~u1k*C0#iJO}2ij&?RG2Y8_OVLQ(Gt`0Beptt8Vm6@MNn6DcKzPqj&>`w;!Oe#WVh7>ct2zG~;3XQv@ z0?u%_jpO+vu!vM1;6HPvrbh;zn*MsXx6;xbO%eMSzN-(H?!;&Ofok(7fS#BiD&TP5 zdaELv{xS2!r#wjJtNsExtJCk~CxJzqHj4jkVfL1;K6`hQtb-~DS(?tb*OG8RX$?V% zeeed_bik@KO1(cUIbq4ObSgrD#d%=(S!^I$*9bTLp3M%n-mQB-Uk^IWbqv~ z*-Zx9XxdCvoFP@qq+w4ekaf3v=6MDSFZ%lCNca12L<0tg?Wae7hFy|M(}86m6JsW6 zc8@uj&Qk~IMNhD`sdf*aKaZ^J#o(p6FHBNR%^@QoD9}wBjhLk)2Y%DSXbRO%6u);y z#kL>Di+-ySBx9?;0AkI3*Cg_Z7mvZ5@Osp5ItJG5fAOA>H+QWd5~srEwP_M5I`xmV zKEp|*_n%joOdD+(i} z3~IkE#e+hZMVu@3QqO6_wKF&bFBHf=Zgo992@70DOa{s5`xJ+NIl&5DCkEywo!bp~ z39B+57GEE1JCo*}6ZLCj-J7=u4M0_JKrcEH8;epY=g78)2i(dG>lzIL{fliN2o^q5 zFPRbFc1e;CdWHA@VjsH4&h5zjT#aiU?LiQIlzQ=wbZjhROOoPF(i4!WQgnx= zGnwgze#>yhW?g3CGdC%54@}^57~k*l2s|L%n9Qp#K#!7EyCvLP^`hcIrdA~N%-ESX zV8}O1%CNVZ7aa_;QP2%G{G@St*@qGf_9tZ_-6dIn)W|CN=5)*?9z;$yjAgYjRvrBn z2B=arR2c->Jg)q@i_hk7PGV0vA)D?=4^%mrtTZ@G1{kes2ngNR2mnFr*cStRj#+HP zN)LITx%LECSm<|ImG>TKz;*nTK`62AEf=d{n4@&9%JgA99NX|=Whgq7pMt!SSHA%^ zcN<(4M!FgQLqD^_(#q((uAGxlWLltVN`bQB1crD35&iC3gk1TJ90c%_S=ey_vj~7|E2Q(||v}E{~_Tpo&=}ly568uA+kZ4p;j@ zDD9)oz@_R3tfD97TJ2$AfbF`S$9DR9oq@RN0ek?epzf0zPI3(ljAbqf(HB(gR^|l8 zIZikXx>rT?ZRQqz&V;Q{3+;tz{!h-Y7sGP2xY9rzJZ#`Q*_VNPm^19X$}IN99PIL7 z>yjKxlmCRJLy{uG0*jon!T~%#Q}p???$aZ|4^){Zzkylppsy541GM~z2l$JBz?a+h zmE%TAkk|cO5Qe?g{DNZdZgu~e7o&rq+g4kA;E~3@I9SOP5fD;qMew ztPcTlP^Fyrd}CfKcqC0xhewGOSI49S$B}WYn1vJs)K+kpS|PoctP_Z;_YacEktVng z4uae-vH}Apd`6b0BNfR`67uVg$^yea#ZlcZuRr74vWG=BAV+bwT}M>wbn#2s3-xxy z*=x4n{$M*v1}xtDeWRXG-?RM^UpeHSWh|?ytA~e*T~N|c-ZDzq1QyT#ht@}4j2z0> z#(vbHK|1dL-_-US%lC2ncezXL3w&(7m(xj*%*9&sfN}5#y)?P&=EOo}vBO+KY#6#$ zgsG@zB$#AaWJj}yXjJUY1|@kzScGxZ*tF}8?;JBL8>d-EGBaU<56o;v^&Vj;nP8K$ z>1ci3*)AhWZnT8TswP`>wIca-DRG3HtG}6j<>XI4nJYfsm3uU!e_AnrtEw7Y{|TP{ zBnz+^zbz*@2=37;{U7Qh4d8>^NB_1GPHWO3Lbvx^7Svd#pD6qC$5K3hF7M$%a->ss zneaWNgIl>B)8NGW1sS!pA5`mpi32)arKN<>YV2@+3KmHCz3hws+1JvRR@@=T-^R^U zBB%v{>UGr(!;2SD-JHE64KoL%M$^+}ekt)+`&rp_+|5k-GbDfo&(4?=HMXmT9gYB% z5E86ygsSR=$KG)~+4~OzP7NAxfNfsc*{wG>Zq~vE@tyhY!dcb?JI5 zd{2)-rcjI0gM>8~_FC@-LvsJb=zv&xJ-dR=D=G?7(u+R*8Bg-0m${Z5!;}I2U3FY; zRpUVe`m7YdjzdOu{Rn!nRm8#gA)@Mh&af0?1KUnQsIm7g6)d{A1u&LW0qFx(@;7Iw zm(6fUgkk^ly}>mdU4}>1OS`)`7?>tz`4(&U%9O19O$(LRHjG?t{Mce{5}pb&T@)=i z?$UQE2~*$5`Li{e+J`W`sfDPpzIr(brIM2q&QS+@fluwqIcBb}_d8u2`zjk2{itnE5gqlOj=hINpx^zcn)-!j`vx7bE{h2^68-an@9-ioHlIZt2abv=W7h-!c zlSGt^ynR$hExb5kOQcF!{$Ik(eG{IsEYbyp^^oiX?de+-67lG%N%IPXRkuiteuhSQ zc*j%j<|^FMf0!C#7=}5YUOJpy;ONh!Jg#9k)eIw^X2-t^t2vb}J;YBlX#NnWd-sV$ zbBRW1B#Ukmy(bh?p6it8oGiY@@Z5 z0ZB9Mmi$RYF#6U@+Cce0eK5j!+*JaD_gnaraKVSc?HyP9zm2_=q63UPs)13dZox4% z?W%d7rvdoKC&!alJ~`XThG>D5zfhW-b^j)V6}JK~Z< zQzJHsgDRHrKl-aWS1B!bz;iYU^&KVe~6m)yCrgibDPBZ*Uc6w6u+2mDM*KCk(->2GZ+l}}BY(t|3X zMt{NPbH`-E5*c(9F_2Qf3_*TgjA1Qe31ct zLD)W{DY*C}F-+$gcZgh%JJ#rUZx^J^V_+NT1;RNpK1>6q0M__KxHthhR9OOg*do8baLbZN9SA$Y0Hmyw z>cU&k2MQR3SZ)|fOpZRP&I*?E#?}&OWDH~lBc`jePg{Lu?%lW+U3kIyxLmbN!3YBr zAoCUmuom!iRSbmQpup_R+>|@=lA%jG?zpyTtx}Am!T3?a!89hSwACxX!T|maZ~c?B z^!_ymM(p3brvLJBtj23x>%U$7KMS`)gtq+uz0-eEp#IA#{pT@4BW?dLyO#3rzfUcw6nt12-_ubGi zlif;__xa`B%!~`Cl|#m_7phD6_W;)%CHkNq5<)`CL&A-QxT&h}@DG!t8=h@1IF}a_ zLve$Ini`s#_0eUW$6t|!g<5}P%HeX_8RGp=kp+yFSeh1vK$5B6vGehvII1%y(lWv5 zn1zUHN=TT<%37(a;yf|CWW-k=jIBOkM9Saa-{+U0j|hr?=>tInc0jmu;SR^k9P&H; zR=4f>^(T3X_NO}vj1RQPO^(2!IJ2LSCNaR@OVluFiq_UvaOBq+0qVHzmEhruz|73d?V9vZmsVPTyeRZp0Jc*; zYj}7#@c1IR{GB@N0+X}8Pv>=}cMitok8<)z2>km_4QM6%pB{WcG3GwrK z=5@tSHTClH0+N0;H8+zR1ib%-Q#dB>HEl!p_xHx83E+uKx|hcdvjY1*&kdqm!3&eXFv<9Vpp{CT!eEDKi_tyLtWqG{%a~E2{3tUD zJiw8^?>o*7g%Fy5!iOKb=-I?1>6A4}WAkO}=NDKBSwPO3;MsTY!0GQL5HPSMs8pfR zOMz`v3~X+&-D)FS5Yl#_0`}Mo3o~=TpDcY5Fx+?GYltuerGL=yj%C?BjO6(K_Fk~L z!PWf+;8zTMOOcHt_#@9+41fd~;NZz@Fq-B;$ycK1?gya0iSe6AE?)z%ZX)GdKqkoK z8&k=q6DFyEYkN)VVexpL>m!F#D ziWx#I`pMI<8gyQ1fX)c&YewlDeCAL1=e$%JB3~|dIy$?VG|QJ8JehzGI%#fWTgR;r zULI@Pg2D+V1H-LeM}1|h4?V**Q%--*6YJ8gsYA{S3ks%3x~470d2N=&Uj$-N{))tj z9D}yr6UTQYW3=;qlI%N>Ocw&p*Cmy7$fJb;O^Jz7d3j&Z`zzPmTcVDZf%{kAWX zCcih8WQNJkQ0whh9gW-Bf#QB@2)i=r)*?QSJv}1BVY7Y!gS?y82TX_g@b7|S4p%*2 zYY=has6WB>Xr0dfIu#8Oh8Y3cFSo_tz?Wu=`tp=gq*(PCssByDv)(OVZ@JoAxr+#h zO{Pmj=&Flp77CD~g_j)N<$1@;5J6b_2OSt3qvE`2@TON8mo#sVR4Il`6m?S`UNd3( z=9Y*!Ue(yH-Tfr`^CyckF;D*tIv3T%tw5!lZn<}9#9Raktr=wT>FVmTT7O`lb2K_R zsmDvyr{yHXb)q{`Q9fx~v%&^b{j)48I6%t)7@&;k`eV^cg|_H;MQ)lh_XN_ci8{ zbU61{Zl7@*&V%^&nkuu>v0c}<7DD8=op`YBSOB%=bDv#hn~gX z=JZRB2%_WiO8hQVgXHZ|5J~Aa_7V@fSuoE_x1Kyv^!%|CgpEZOzBSVPidzTK$^G#? zhNQ=BG5ckU;GsC`KCG>AZCn4Q_lj89bdTEk$KIdFtQ+5rz_Wv&1{Y0^E&J^s2gg{> z6{tSUUD@3<)CbbqOn>w0X4$^;zzy~I#Rcgat59B{G$io23Slj?8^n`#;g0KYKXxc= z{*go~w(lQ(etgq%0t(!$I*th?K8P?lud+lE+c-|GOA$=jz!1xSufI}w8`l1Wpy-Rf zj+;oiQwLxI|?n9ITG@P*1wxgSFY2cwf@;k!BKltlptckDcXIVqs zUGGgyBUWkqQO5O`PBSqC4#Js-*>ayFZ%0ILdC2-!R(j@lhjvFff)2whL=A~spK2Iv zTvCy#fi+ZJKU+?cpX?2?@Wdt`@!ETDnqVHJxEgv%%~ZrZxh!-;TO7&6jDTdGHWqKWoeB6{49jqy6{RTO)R?*|Ec6n$|=#z9+u zx4&(eT_i8SAt4PX4-ITgM+{a}!0$4c}uz4F(bB3R#y0?MKgcW=)(RHndz|uuU3R1bc^0NWFY#75fxsKU8Ekg%UUg4>=nQi` z{`jVI3pr%jX4>-?JrA4i0$u{}$LHxr#|UwBp(?7g_>brg@LaeQU7Xvfegh9{6cp(t z85hNV1Fd*fo8dGpZ+}0Dn9xjY?80IraYQYl3>s;>!N$VxNMiO#=6))3+Bp@nO-=1= zP=NtqB< zMR9IME(f1V={MS`Er&`vX~mD?*dXc(NrveArN!v|UfG}no#y14O6nR>8(!C6VBZ>= z4&4&smbESHD*C#5Q3^mYMz2Xi&AJ^5y2o&Rg_@gVC~>F8vgUjUS{#>Q`5!+>77r1? zO3Mx-=Lnz&(nzvs7-Foq(e^{(_@*V^SD~D$n*(Z=7T#-;HG&(%q1?hFq5LeG`XaJp z6jKA#ogmA#`Bml1v18>|zri-G&=R`%g0sx~>O*CF{~ckA8AB`G(6k;~Iy zGK=PyX-XA!io8Wx)^_gA%cB(GB!FZjvH$=>qJVi)AXfRV~ zjs&ccI8AaV-%gL7x7D+MlxjB)Vm$=mk%20sV->6u$(06V!e+;&V5}vy5+C%Q?b2 z7G$A*6G+K<FdB$}jCvYjwjiu>&mWt2@{yb*`UtKS8GsKq75ZD00)SCqeSI$$}v(7*#(8Xjp}xED*xWjOA7#fhiG>c&n6%-q1z`*y`Ay(=P*2zvvV6 zhxwIjaRJ}7-J%T!Bh56~<+Y}R+W)k`OMBOQaNyfH-WJ&!>yTq&8I96KF=L&v>)}ua zB$BSy4e>UZuZq3_$fgnuByF)Y$KJ4>{A~xJC#ogeiUrZpxz7t$AF@dFN%+YGwtSjT zBw_Hz?Yr<^^(8q*1z3&4p&JXzFicZ(TKEQ`oWq(X4Mi~sj5M2fy?r+agY;KN|LX6& zzDuYde;H?N4$EaDkW#!)WOc?=yq*5HZV*LXfSGTNqXdD6BOx-C-V+JyWK72x-mEyqF9GT|*W1+ ztU;>}j}b?3>`@S>JQfd& zO)*ewRw%XG!w1LW`5Z?t{o$fjQ<6WY2gtCVC|M7B&cMb=`zFQl{`x`h<}Bz98&*eZ zFyCiO3$br!{8=tJkRyF0Vx1k}hfnD&NMWvF0vsm1)EzD*ReE+kWT)ntND)l)XpjXZ z8`Zdg3krhwcVu#K7lfqp4~~bebUFmE!}KJHFm9>nkR5KZ3)t9@-){1ja=%kCUr`Yb zj8B<+dP@w5-CEc74AzXy9G`+bLrs!ird`PpkYpX-%Ta{Tn!GxA7D|nz*q&SXL`q2;4bd-?6N|+ZtkqQG@hyWa#iS?k@6&ed&!C+T} z2=KCe%Wd7y^OK2b`8J79c&(e?yIF**lg)SPC`hXF>a>u;Nw)j+_?*uGlwHQe@vDU2 ze!^l40i+9Xb2&}l;9CeMEc}9ctK-j{Iepe6=3UbXAs1TPA*_V%wJ9WFl5nn>h>#5% z+^+C(ej)&nu}3R07^c{5fqU~K!nM!QLWi0RjPCl`O0IIkd*`1*5$?LQ8)FzhN+LW{ z>InwxJj{X7#7n7Rsm7qc#y6byV8&WEJ#1ABRQBYOx`Y-vNO#3Z>pTWj(}&7aNPd&B z+;U=?*ze?X0ZecRCTU|1#Jgr6ww>T8L5rOKa1Uvk$JfOVRkH56)n{)QY&L@VS-VJz zuC9mMBq%Lp4PxU{cI|2UL5O~pg*(~9fU*p-Fp(l#a_;FVr>NM9{Be?nZamo{tF699 zf2GNr?y+(o#T+?7yzWZ3NkiohlO0G0E$qy z8$=R!m7q#R894FZR#pY!qMRd$fhW~j$76jec(YZJ+h2dVy z&ti9#E6H7V6GUDuoHnB{;6u~44N10Q_?CG1jBJzY@64Z82JTuDh!j5DFpDAlI4~ zY{8g*5p5C%yd>XnG}%$^+=fa=%D>c*^CqJMu^t(DoSL(|4mQ?UlnhlP)4&h`EOK8N zGf!Oc2C{?B7RihttB>J}@Y1n2X1smbmn27B5IkV-GrTM%))VZBw#>dBj4T_H@Z+tt z0(*X$x#P_An947FVqvi$tWXqfYbGIn4r~69c{GXk%im&0zJPC zmLe#G0#Kd;M%+_?aTCr-$26Zwc)WJ2vxlDr!K1cN2Gu}s)gkOB)9oZkS)-|KmZ*+T z834(EfehHivzCXmDA+@4G40?%B87edAsfb)bH?`3qI3kIOb0f4dqO63bRQyyj(_ho zI@)6sDt-!@hQU5;ubHo5Cf3d@O|SB{F^H0DiSH*49PmCM8zy9}i@SjbxeY=!AJ{A^ zC-Vj{nCEAu6~ty#O^yim+A$+q+&qq+bSRL|ZH^`EYTShfjr4OPti}1kETTddT8-iZ za_54dQ2>>d!&!I6yg{o#Obz-f!i~S&FtH5s12w(Q?2UxYQro}Yd_p|w8Vk87<%Yq2 zFqeeE1`;kyDs+TJP`+^mhr!04!6Y~FIa9ym`!-X^fXt{g>9JccQCY-LOm}Ps3(@)o zv<+an$@rt1?Q(qd100I?N_niz8*FtyEaGy!h-Y8}I=d>lB?#zArLd9%KP6-#q)4cn zMWKe6E~~A1II&Vreb0aMT`Q%^v4F6oM_XL@;}-{JZ1puPMD2_}hjnn^0VVw%XMY#y z8vvWej|r!*$N@bg5>YWO`$3%N+qW}M$e(=Y5Q@%lJ}?GoWn+OqP4l!iNE@r?KtS4QDBvkO(t?e{U* z$jl1Ok%Qfrn|WHmZu_pZB7(U0elqMShjeYiG!cvYvI(&GIwSxiiT6vmIKi>Cp&|UP zxB#p8d5eBNixQlNMPb^QCs!Cy>}TLElVHOb;zmVZqz3Ucb_-*PIzo6%&j%1mw+WojxL{{{H zFAATk7Waq$`avIiN;bS4!K;lNV{Az}{uWRlmnr6aIHo!N88ccn&M!h5D`;mCXkQ4O$g<9f-%PS6eR?1`%RZ-bpYNeEpZ`97v=Rz1JV4(t=_3bTk zv3#ROGMuIG*!-`giC>wL{{<+9{8SIUOAJddXd*mX3FwSxa=bkyWIK#8f7ZeKiyBD$ z4>Zdy$`BrOCH`@VBvKx0HPCjmFvsH-nqC{f=|;2NqjBmy!6bw%frC6HfQ9DmN)Kr) zMXGMG5AEci8ixh*1^4hsQwn~8xJylpNLztv)DcYjd5xRDe>@64-l<%pG~UXWw;{|U zJWH|G@(&FNI-1-7~OJiWigM$@=yj$r^pQH>|^o4aqwAHL3aze zClz~7UeXs2Xl@W#4B>@ctgPr53RD6%qa=!TN^E>e#W)vXDH9W01V3>Tz5&dLh8D@H zToqdTTaP19BWQ+}$Sx|O$I+CDQ&ucoH3B+8a7LFu)VgB2A$oJCTL5AL#prxdql0Fy zca+9;78bBr$o{iAk^$0)+&zxl^2m%MgY+?eGChe4C&pu(f!8)%L5q*_g_-A_W%?9u z2}#Jj_x6?@evo=RF=TtW8vO+`Cz@d%QdI!Hb@oH~@v4)JwEhr+&4Z2iZ7ELO#I_mA24*LM$L$whx zJa_N>AbEmO81Du6G6t|CeiOgGOOOt#i(!nXZmAvqhtp#JbdVe2q1-aroZ_;wQs1F5 zrn)x~MuYI(6vlUZuGW@mr4nu(tq%0PaYFFXCR_KxqzvGUo+b^nt#~_yCqKneQN0jJ zwyQ8|a`e83gkdUB@9;Y7v0<%c0tsB<63-;3xvJCb3kCLoJ>9QuLb=d$85J8?&UU5a zO-uBBDhkA-cGRu#Cl%*sv7kKt{uw+;mDx{qxX0hxL9@`hCSBABVhIi%Q#S#3Jj4`} zh;cuSxnST5a+XODJD8jihJa%EMQa72tf$Kn0<7S|4`o4B?u&RttL)Q@3dMOfkptaG zk}B$)479ZGTe=As$C-x}vXGq^dz5tq1wkWM-@O0u4`>C-5EFjrhE+6YSx<(!C}Qm8 z{?LBnbK_kPe8s!*12URx!b{WAO&O;2=r$)F%DC#aYkuha(RV>SxsC4kOlxVgZz0 zY61nN%w;%|2&a1)yi$ydPM@HV)2I{oGch65E+Oc#K2+K86iX(>u-JXPKZ-9`cnbQ_3|B2zrV;fYTV!OjF}FEDoR5~6*rJP# zLGk-Y<&N;kse-f-NzwDC75Ch8O%?US^+M06ir3|j^$srY&xH2PefD|apvl^n*PkL1 zC%Gkxvc!DHDbiqTt90Q=P z)#-sP^y(}Lmm46tHF|CiQOkbi@&ZlebOWPP)?nJ7Jp|vSpjvn$YV+tR+$Tg{`Yp2&3V3guxB zSRrldEt5H2XCOHE^-{ZdjC_a|Khq>BU=Bx37l#qKD<0Phj~1a`X2((cP(>$BetW}c zLy#0wm#1-_N+wx}Zj|J|MME>j%5_x@kp6lkpGBY)*%LL<88=Zl8!dw~p@P=RF)BR7 zAtB8D6_q`vj}j#`Ls=JlLn&AGBMM zTfa~5NxC6W=xev)hx3J&2VE@kb?_nTuKjs%l}NqtETHd(5n03AcRHlkg2wV`L`FQv zD}dGk4}vy~S+J~y&n*#V6Gw{5bq@FwO-9S}%N!RY`}o&9zpEMYfP>?apg8&x>^x5s zjMDW}2XAGBC`G!vre`e@N_aGh+s6_7_HGdiU!FPuk=jx#{7!<17yWvnMi20o>dGT{ zX_mZZyoHZz@Lp4br>-P{^e7iUYRWS4=%_MQTEfuVk`YG&8_kpD3Tc% zrRU(lPAdzhZ3VqEX>LC!8x;3}0+Ls)WMI!t=H{xZs!WiiL{LFU^;IX;y4G9b^Ki3M zFIhu(JD=~eOW>g{E>Q<0a3SJ)9UUD4O?X^>f$kSE9qoQxkLcM3OU_S@@-|oKkS_y=^x)1Wl1BfA0Ya z$*A5Pld=iTje6L0_YFPdHxP?nX39XrW7^F(mJsPUkFSZ!;Z{<*!2I#&#Tlv*wP5It z!3$IbGzF1;jzFRyvbX>8Ss*Yif4BerZs>n=INtx=Y5t3|eEmzz@?Y%#|E*)=-`scr zgngX% z+I$9P>r<~GD2#R(;BU>c_dd5s^TjY2AtME)qk+~VGP6$pVpgP~PaX6>Tk*2>ldt~y zT!QN0EBk$ds*(h8Dp}x}4?OEe0qrkl<#VaMwTUhQVuO~1fnQp6@C_(3PV%5f#-Kr6IhD(U-}P?v{s7lookov}cKy5&&d_VPM2!!Fl+lN?;k z?{RDOjv%eBs)QnB6YOh#DpFdBuVTeM{2!YSSHWloFchpGEZmnT~caxRm4qcDZ{5&xvmhk)V0LfSAi zR_t4QX4oE=-o#jmYyNi^>Tb8~y=q~jcqR9wxAUS>e#bx}bL;=k3`)B{16^}?5yqxEU&8)t%dd$|z+ zE?r@SOlUAaWBgb;AN5ZDMA6S{)aLmfEt!3W*FDUI6%6|&>21~Y?7q|Mi9Q>R?plu5 ziO)KRpG%EWDlN>3gAn4r$HD(lC49jyDH-tRGYbUxqqgRk# zt+z`V=9{P?QGy;f;)jPL%ZQd=Qx-BBSg-@oGph((@h>up7lJK`?*;>yx6Zl$vfXDQ*Q&6ZSF>T3=tE)>k}h{>>SEjsrgD_ z+hbr!sLh#=?Xv0opwxH*(KO=xzGu(rd&t^(M zJoi;JK``*_Nk}~xXtz)zt3x1Qd214IJ5NiG0IL1#h5#UK_&^@I-)nK_z8zIgnRZ&f z9@G2VE0*ot_zN=5Buhh zmi{J&Hdv@V1S1kuJoF}}W#8J`3a0X5-f2PWaKSjAN7&~u)>dZ>^N`gMVt4NyDmNJm zjCufl&i`OW&sNJ^_o;VW<%sRt&Xzkrzjdqn5jE14O*AU~=K^8KsqEZx zvJ^b^w9tQgBEmYw`&-Ov5rC2YbHk5`1XaIOE4o~uu=oB5Gggw`1KN$oM&AEYkn}~G z))o1{Lhiz?KXGb3PdxQZgpf5mjcDNL*d&^<1ri{nPJGxQ`;h;CZ{`}Jx;2VN11E(^5F{2qu4Sa?J@Aar zH{iba>n_^?=O($Xwa>IW2n!_np^TVbCLhI}lbwXw?b0L`jc#O==ot(F8l;Zuqv&y? zSrL76be(F)S7_WP%+3gQ`R}xF=m~8Gn6A~H+se6|;j}a9j`UAtV3UP`ExEC0O}04#KW)u^ zxp?6X`pqhVCNm&_9tLP)uABPUZ1cZ&z_5`DfuBYPKbm*;^wsKv%U*W8(pO&lGweyC z+NbE%ptzUQa^k4taAgvJ6Tf;HK{J5i%5+`pwT>)l*2Mc^Lho_PDEWRPstxDk^kU#? ztwZJ`_nY5BVOyzHj63Sc-L5xd0>82+3~NU&?W8Xn{V(Q@7fJT{c*S@54#E_KJed`+ z=m8Q5Q& zjdOejmOoiPcVA>kH&UB zJ@*@=qFbPW$sG~7QAoUr2W4g<xzeI@SNH)?pKIau`%on+K-hv;2xiJf3_SYVEiq z1ePd{thdVyQl9{H0=_vYr;It}pu&vT`17WaMGPuuDXmJJsh)0e%*~0&$w;)K zJEDl$veJaYuIc7mo;KJ;QC|-UMgz{PA21V&`rTe@7%2qn zzS1LB+7YOr((HY7GyQDq@d309eSSPV|H0PWFp?oX+y15;SarZ zF0jq-DY&gSl{&{*Lvd5`GH|g2by6pU1*xCFNS3ZhsZhzZp2dISm$yI&Lac|3LU%)KgLej3CABAHE28(G1KRmOHN* zh@VP~*@n2ZJRh*mSo_f4VdB_t{AOQvEOgj4~W?v@q{K84uk5&uuNeLUNiM62ij`a#2t`pJ79swuDyd z%TFRPd_|2fKT!}DM9K|KJs-^rhq9I$AtC%`B(E3HHs-(IoOlt?r#DlxCDAgzk^ba^f(aIsi>g#@Agmc7KAaGIPpmfo$`EjO%5(XL z-YfTKMY$og{F`s+Rb|VF|AW3bm+|b%%EW+$-D|$L1A55~F>EOY$tjvlDtXd=XJ-v4 zDa<_;0#w!$Ca$|nFBdrpg24b;$a>dP$?$4@n#1zi5%a6}#pzC>f4C2%jbG$6XTjFZ zf3LH5Lc!ednwj32tf4+NzxiZPv*q10(1!Ct&aO@`oBclmAuXbOIBgveW<08_- zM81Q~hsde>*YDHPRs$P;6M7M-cFENXw`T@VFCJW37$Ppm4U;l4F=@dCu{jtrkutv4 z#&#I5D?h!BAj3(S8uH%YsX0^`y zpkiofXpI~q=)77Qo*0IsP#!*}YD+j+%Zd7;q`5i%8I0xna+%<-!;cG^uK6}MXJ`Kt z8=g%6xK~!M5v<6{TE0cLu(U);OiWEp`0QAoiH9|dmpqTv6CLSANl`ua1JCHpu7lu> zyJP>}aebY<+>mwUyz|jV531(9z1soIG2_<>&rZyl-E-{-D~VJ(&vZ6&V< z#^rbWyPut3A_o7nyT8vbJCKFkrc6GQ0?P3AZ`=1-2im2qwD`M48$B+UDgCVBN0Q#D zTuLSMeaz}A^JIV*Vb>J}6Whzloc{=`r>D;A$$ax(P7KjdNns{NT5n@3J8V=O{dGfL z`-KMH-}dKQVk=dIelIRFW=KmCJ@`R6MiuPlaYrkFAKd~^E;p&vz9xcqsX z%Bz*N3Z z2p#VzXUo2;SUW!PPd40r>y?{Vex;OlnDo7wU9|dxD#3!*;%A?qpH}@onRJp0!nvZ& zaZL4F-t{Axs;Yu%cD2&FLRPv0aw@4sJy%51fshural>ZkVo9U%Pvj;L)9 zU5M|;(_v-JEc38-?{(z7)1Fku0KS z8S8t91LFtf$YbzyYf&J9n#4SA`MZ1WZGQ-1y?YYx?j#WVow*8fx+dDRSu8`fKLR=( zsd+AK@d9HCkI6vEFzBUp7ZXT+L${E$Qk~6p=T<;zS?aMryS^zX384wOfgXFF)gSO+u0#>t>_JN=o zP$~0PDrbWY5fu^8Rz=4n2;khGs9JRQn86}qz91>@rtb8=iGC1vot|E)0UAAT&G=&6 zUOc^Xbdf7`^No+o%CKnnXr;~YPI9G~@hiN1l0lZ~4_J26|<6?!Fbj`Cpwo10~Ci#g@Y_cN(q4{R0`YNFv0k0e1xcb-pi4i-Uz}FBrgP z10y`W1m`0&mIB>mm=G4)x@_bU1%Jjo-^Ux%C%%2YGaa~ej-N-+%y>-~=xtt1kt{JX zM1{@h)#1xOz(51>k*>wTza<#1d}Mmt(0y7-*Jw9|`MAqRH--$U={$?4IsRJB{3Iu3 z)%Gy@JO6>yKH31I(x{w?{Ow0^l%H6X8jnG-=OFY?H73aJ#W`PZ(;|(+1z4uZh&(k$O?b>5PD!j#MVi%Vcsh% zT!jct`w<7&=GG8Zgu$4xe%CKq$~T@~S`xVcMY*~@&2wT76#1r_vxK0*BK_vKGPt$rK(k6d_g+p&|?50V{nEQ;)+ zmSBjBo`HRb^=1*H_hRk4xo{M4(Z$F$$}x5aYI8&54H0V6pmMt1aa`YUx`Z9m^x-${ z;|1HxPhXpjhtYA!ws}L5WhvqNj(VQc=FLmBFV!BBOUE1b1`HG$(8B^S)vO1{5;n-} zO@Z){>yV#+4p#{ziQBOSra!*v=1*ZDP=Bb-n`~*jAl>lb4eW&w(&I?MLHk|&Z;f!$ z-rH29j4XvH4MoZ`kR%=jU5Y1oa=pH)bGpNC-l%61p0%044uWGdL1S^#7E@a6=6R5u zC{>y_YOD6xf@+aEK8l}I9GaUqA%T*@Z*a(nE|OUYNHc@tY$vuut@RdbpE2Y?lqd1u zw?8hLK2`^T%~?@G{nJ%+j&koSDaR1WSN1CN=O<5>+#j0wP`Nlw+muQ)+FPuTZwq)3 zIQ&2R)z>)w`zuYDX{B$;={_?2e#Vj?P{-8b)`4#(m68ZmJ zyGZtQB6+>7TFHYf?QWWk2%4y^H+Xd$fq4-T!A=)kGBxm>F+A!0b3uMw@y+QV=@*r) zO&o?TKPe7Cl@aID460TP-&_lA@&bje?Y~{HsOE{x)=KTPk(o40thBoEk-_zD5}tfB z?LdO0@4^~@i`SwlTzoj;cCV-h>}#))3@?HyMPXE;P$F4m&`XLV8!6y4WBs0A{<}Z2 z(%_7nF27KAlf)pbuaTPp5V-4p9NorKy=lkFp>XvzzF{5i20@e{D z_#Bt6*NsGcIL@Cvf4{$4;_qlh6d|D7sPC8=0fZ7#7~vbAjser#mrMV6BL$OSAa6kP zyR;?e0rqmpq)ijqLs?v_eprG-Y{H(YZ)~ML5+5mTeeY<0#)<-iYe>JGu+Zc9m`p8R z&yNvrwT!A6jS4zn{phxF7y5?PNuvw;Tlz?G+wzs5OV>jlamRI+nyNIxV&R;Jn}Gaq zTultYtJSI523=FpsAkCSx9T66IIxkBRHuZjx?7@-g#k_jJ*6KgAQARK8e(k*U~t69 z3_Ek&~Mm+yVp*7{ISQfXV<`PQB={L=M1&c;lZm-a3~;5>nPOm#<58*J|VRIfArXMLqOn-=-yZzMR%>*6&6Ro%JFM z6Ig6>Pz54s|7^!VgK%}7`!=UkN<8v=Z|U0uKSQ6j5uM`j`rle?S>W^~ENo z0H!uxF#IJ2AvL)NJkcDXvKQKmyrN>ar*e=WZ`0E2*Bh0Ra2nrVPcNUmE4YEQdM$pg zMwk@rG)u*`2Wez*k#*?4!%UuDo> z@wDPhHozua&m&ZD2&*)%8XAhq=(fz+Ac?Kvi7SSgjA%L{tH)Hd)E&|0KLpN zJt>$sXC0{Glukx>qoP&Z!IHJ0_b!Nb;uj;qCpmCPQ;5d9BS}|4Kd?&HQSoLi^4J1g zB*r?7Y-uw!nJcc!L}G@1oRu%(K8I~MN6iQ=v1hT<&4Bg3l~I;Hg4Jr9uN&gLtM))0 zKw2r}*^fkNt;4rumI?J+HUAPT8G|jZhzgqdSURrrM!orp!oD)~AtY8vDsTLoYL}o&?A@59?75C>C=<>k{l)c(?6m zq+s3c6FOL6h!+9Y$p@Og!&(z5Xp*;VE3&f*5bm1RN}%Rg*Ng@`)M|% zGHE++Llm|QXCbDhqa1?S&Sw&86PI#n5rp2Dl+{dkL#wBr4}HDgJg#Zww# zkjGXedccHIVGkIU<&BjkooH$bo)xkT?UjukeAbg7JZZdE2SZx2zXcP*>7GmqX;5wi zO4mF?fpJ6YC`l*UGWz8Oksx|bB_JePQeah7d%X*g4-Kji#2*mcA~FlmWlkgA#&RR$V&3Fr>YIP*kxL z!nPZe=p~0ke`W9i;8t`*vb1v2hXa0iu&)kKM=1+1p?rBGHz{IL^^a*8K5;z0nS;j#ry);&#FRvkc~t{b-*s@-{9O$Q%AhI*c+4$P${$7FEY8C1~$ zXPRVsFTZ!;3~~Zs3Xb_b*oWr0Fn&e5cL}oUS_&~tgL3IP2&EQ%n*wa3sx1BYASnYQ znqC74w~eA@hNrc}1i`h4WKk7uu}~ly)r7LmT>>be07g6*u@I{1){5Z<6br0jSF#q?=tK=nUc{6NK=V+F+6wjj8C*2df@$Q{jGv#AIktU%2Y zeBP&A;|5o#)IJRtGLnV(qMw070=%7OhNZ0f23U1Q1JGsD8SntGo$=y&?}Imd3+i#W zKw|SS`Yp`kk(q5oU3?a~g`mPA`mWX@L*EV2fS|NW8u-8y`froLC(zrw^X%S4rO68K zWg0k|zO@o6WS>g9Qzm^ZvJ?PJ3b2*2ONz3^h3ypfJMHDcW}Li3?iF{yvKk1jV)oTg z0{D;iMtD*B)?*lueHQHHJRKc07#y`oJ3u;vB1=7S28l1RAW?bh&~1?g6;7<@XDMii z1|Ok_Jnv7CEHjMuVmVP^ALyH2c+Lb=-ynFlNHy@0yoKpaFK{%Ww+aM5b!JAnTy6LG zX@UyU`0@j`LyxQ504PLS)WGMkbk9ENJT!NV ztK3LIdv8hJRLGkaW zOPd#TBz>B+iTZS|&tEbV1P`ewvK+L#kCGdjLBPv((j6H4tQ5MFUNO1PHKwA%h;1Z1 z@6FBB<#13y#~{|`KpFD>#!7sbn76|SyDdd0ZsZBDJg!C99Hwk;2^o^Ec_}oafDSY| zg=(eNNrZK77=MogYb1@4miY{4y{5L+!w zSfd!zdti*a+`;LL<<71XD<|K8;7e4HK8CEF#d$EGKPQIP0vr;T_St%eE0iyTGL`xT z%>1>%JGJk;!SKCsH3e)2Pg6vi4JL~=U1l*64=fYDyPQMLf2_hH&xOH`5J-KA-F&3X z=c8w#7482XtgTZ(BFx?>YJq&l_z@a^grFQnh8)oGdkBOEBbLxiJ3mT%#l)c`1*HK^ zYOEM{`G@z>q+!5_slw4%g8SxOdJ4AeyhfRFTuYnT`HWVp!bd@D7uZKMAwvV7Qgk9W z-y+&N{PqW%v~tMx+%MkZD?T!?C&YWQ6B)7vXol_ls=w^GI#M10s+VY!6ud|xhcuCW z(GiOPq~k}^C$n(Sz(20EKa`THy9T2H6`_;Ckb{}w00)0?kzOqpxKE7a8xatS0ZDtM z(6UVqA->KI2>(2&$IQCzA}ocroFX)h8&1v=M*t&cDe01ezG{Y$_a;jq!?yIPj%9d6 z(Q1gKVCI^ZrQyGiv!#fn&@LI0Dy*MWdAdi^90bCC*FRoxF-O_3dGcmvV-nEN+GNc% zvfu^hU!TwZ`i}%z3E;Il@^*=1yzly;6EOX%u|#btsOv*w9cm#D+d-(XB{a}EYkwvH%p#*c7WH|48BBno2^{{#uayRH%Ol2(BrP-^h_-~k4*6y&9C3ob*iCO2QwFWJu|KE?cIxS)+B z0lBF?k3QZkJ{*qk0GO3qF*zQaZU8QJ-D@8t*v|J-UtZ}s6xdE!AGXbUaOnLgZ>F{p zBm%x@R9n)5&i7N*AFYaa9#ytw0+VC3g0t0SVX>8^kQ7klb~~Z3o-8Cb5GZj9=Qw%I z6MQv{Ak4Rot1;;?Dd@+;hA};*=0%xB|6wPOJ0oJoEEIQl!!p{q`0ijw*FxVsquPy1 zgcvcIuhA{NaXFBJ(d&|HOcav~E^Xf@BSDBwxc#(8jx3){S$;lujGdZF*-eDh0t-Iy zgCR?@=@9pe&BIP&s-n8!kr8#v$E!1^B_mPb!K_PxwL6M^kZfk?)-{b9>K^Ns&n^l` zg70MyJ6ye@U`YdtjRNX@tMW?X$--m(5mn%hh)E-q28)2+5J1Q`~6O*&7TJ% z9Kq7@Ne&@jG(X$eiXjdrwO0I@GV@?SwBxi*995hHCggLAZ=lvr$SYMeScvkzxi%iG zv9GQ#d3o;5ROhJ@B2Ly9yH5yVxaIs&PP{2IsgOtUOCER%6)sBX(XYvuKALF}CeXSGHpsnLRR3yY2|_<1m>(19t5#a~Mp(o^E&Z5a(dyH$cj075Amb;n!zSKB9#*=(={ zN|8b4WgAa>-0$4cU=_ZuxzEowSej5lgKWE))t=y@Ow(s-jx^yfwZ=eYbcQdJq=ics<3cY4o>H!&?gq zph18+3WVk)^%YqYHLR@S?nOq!uA{8iWs*YG?frs+{%fhpp^xr7Pc4qp(x)(%?~QI& zw^>qRaATvMM~YFW@5`L$=-naBsesIc=R?`KRJvuE#YdeEjHW6JA}J>cxKdV0Y)L0r zq&#yfyNIv=0FSth3wTiVyU?sb%QP%v zu#K)WggOWnIEJfR22-ZphQ36bn%R%SMzp3Ar_ty89lj}>NQdLwIE3Q?a1=W;H_uXNRVt2;FoDNE!?iFi7l?6%)Wx{E2Wl51#H}clDuq<7Q zx%62)Pm6l~_WKC_;A7<*Q(hbhqq_&em&XQXrDLhEsO0izg1gmOVyAwYnWQ|ZQ4H^u zd8UcMy2O3O_2!94kcls|WmAokvP5dQC6*=Oc1vBd1XstBW-SFF1gxTHQ8fdFO{FMy z%n?`$>Mbbdp~2Pfk-~$#YaapkoNQSX*23}a&$cOlXIcNx=g#<(QQKH_D&$=fN%gY2 zP>GEGos@nO@9<;VW{}d7iRLUvb2SohJ>bgt=88=hrvpbiG01trcza6YK6i!EP-A83 zVAckfN*H3vM`Kpk+r0#FU=67|iy~sC7Yfn8BzZMn+q1Nzke_(c{UlNSo?+ep&bW7% z^cSkPoS8?yv9RVf5EXQnvhr!bMBDodWOrziX@x%(sdT8XJe5Nh4KpQCDbDM7QF)V% z@ono)h&GO3d?6+c$2EyFb^`gd;yp zhFLmV#`2C~c+dKcNJFTIrd36$IMLf<2G%()KkEM}IK9SR&d?a4X1K=I;O3+SvyI9# z;Ag+qfXDDagG8GoYm?BB@#DOBjBVQ$^GdxPW8 z-CakljL!RN)ZCGi6yr6%r*k1ALS~m&Ru}#9{r?WEkCV1VvglCU*z&~mxHdWseL%g_ zYs#RD3n|=+N2WmLVOar(uV%`1IW)(@#JR0|Co=cRp&J{aj-jRj57pKgIuNn5Cuan| zO#^WoDv&yOq#)n_7F|L@CyM!7z(E=r7h=K$x&&`SKdbSd{Cvvx%}C|+Id1}PEFKj$ zyw&WB-54seLjeE3bw;DN;)mEMJ2-L3ij>3ofp$-l94R<{LEh-pDgB{VnGGn`XFvfg z3_1<5C5|@t(X8Ve<1qOw^@7+cOhvrnitxIWDNL+YMRk{%#|^B(jR)LjkhJ)ZSgWN^ z4;Ygw{LLL*uw5uEGPQ59rRUECL7Lo}IJx<0%%x}H3J|N{%~uVedF~YYFAfdLl__-Z zK5N#5<88_)m{fvkuI68b2^FJa5-(}h>|1so-iafPY9=e9fCLIkl#KXl%^ zW&{^mPh?*hcHhYdp3Mi+g^#klXyw#prgXS?A`>K#eraL#82P>f!L}dW$KC$4YKGId zN{jfGq%UO;N1O)%SorVoec<3|JJh7JJ4SCN7yS$9?_EDl025aZjI#fbtVtZPt4?i-(@B$Md~mvcmv5u2=b; z+_w8HV&7~?aQlN>?8foQKby_)(j&M!_jdZ>BP{ehii)F82<;Pacice`>)a+w+vT~P zeqJ0X1%9wS*?^KeIqlpJvH@@%lhe{Tb_$A$wk8&F5Tt#@Sfj&Jrr}oH`0=l(1YL?v z&}-UdtM2!gM9&m@$pZo6foIv-v9EZs`$GT+G~Oh~iV7-4r`oiLX>J*=Ok+R%#O0iv z9N8;wT+Fo@?D2Nd?&Xi%u{;61CQz5WXwh!2x5i1FPzSHb_X)}&Z}MW zvJDMh#IXa+PA{{bEB9*!ql4P4otNaXBh<0zUr!|K0?qY+>aPeuv7UNB^M7uNjueKt zwPc!(KN>U7*x1k+=<4d+w4@QR571#PxQ|aT!d!X)$PWKq2M#G12t#ENX9yTX(|XP9 z;o*^5)gi0p;UVyN>_3B7-_OHhDjArIoRgdTb+vjsN%Z*%%PTgFO6%&N9GHd@BiRBG zIXN*QrH+9?Sr^CiU>_3`3BApoot=sjt+AM!;K&bT&Yv|j3@Y--*ZLnEl7yI;NSQ9* z8ZRxP+8rEllX!Zza#`!^3uDJX`o)g_c-dgRp&v&8{uLuOKXn?Ll+n`V2eG?aRHxtl zAt50#PYZuj9$`DIqAtRSs})3GP8-tD+PYw7QG$hoGyG+HYbz;9+LV!ru`nBf;^=Dd zB5hw=<|Yp8;Xz;|{#8<3e@kvy@gI5A9}hx%sfN`Eq7m~Sn`QI?aK?B{2zx!+d^h&@yP&pjDgH$dAh)m zyn>q;BFM!}#ecgBQ_zXcZfwKzs@)NpwtFb#JX%To^#RAw$ZZCL|mN58Eov? zLAu1q$Hza*Ck~?YG9S9Gx0J0)n=#1DMhqqS(fse&eNuKS@p0QPk{bKc|No`s2#eAak{Mg4f`~8pEna{BC zm6rcjMQ>TO#>(L}Nm_q`So)%4M&4LuzXMn2y;A&aejae<2xq|m_ZhRL)F88sC}v)T z%tM&N+Z#Glm(MpkWn$Vy8ssE@7T-W~cE6JkE4}@Ud^g>n;Cb-$a3$H516C4#bfliy z0gPw?*^>`Ma4iB%Vym8YpB5>13``sfM|MLb5H;MG{_vYi^UNqz{PK6h)(6wThid;^ z!4v4kL|8a&@50(0ExbeKszSYo0Rex;pStv?J&V>zPwvEh`qFVy*uu#3b0PD4NZ5$~ zBO`xozz5?i;KRmy`4I9_=63H8MGMW>KmGTLqlqtxYmhTi@1y)-LBem7f}@=Er*d36 zt4Y6`9>oW}i(`ht2i+838;&HV95XJD1vEa#znF-e7X=fYzV1ogEk*c;whCP-3rCofQ4rRF-TZ5dU5l#zWUGp{{wlyNpHBb^g5k5OA; zHX$V?%6d#_nJY9Bg_VR!>#rv@t0Sw5)k~79TYI^kAlY`0_!D%k9P7gIUE<|omf_}L zo*^~Uk}7AcsxnRe`=Gtww;m80d?q=WpCuC9_x+UTMf$LPWa$3-hej^bGu+UCUpHji zOp)Mp#M*;>%KG-&XN}YZGz8YC+N-2zy*@Gnd-{f54Q?fk>q^kfeT_b`V@_3g>;0^A z*dT8l2@zy~f;Wp)^;6fMTj$wtrWnQSAE>?hMme&cVb$YsezrnDo2m3FkJ_dlVRjCG zDM-_r&~>yNU;`Ri&R|a@&j*zHbn2zPZ=Ll?vtNWdlt)WGI#Tuy1;9E7f=%34@v;(y zecg|?`NQ`~S0-VTfj_Ig>Xp1p3=Xt0nt$F(mrR`AV9E2%wKLvxN7)|;)La;AyvxeV zwgh$XPelI+$BrMmrMUw2d|Xt3UoUK7@=b}|`O8I_Y2SDY*{g1{MG=4>$!}^5A;=h< zsMKAzV*O@mK;-=8vc(MwRX6sxeedbuxAb*Cw=l^Jx$EUdzgzbX!Sc~}$!~wp1k78$ za-&v|ilWu>a#wMwVuEF+)DFTS{cuTE)af4|K4RiIv`7)1>zH|+1Q4XAV5a*k+5jc6 z8C}|Uo10RB>hw{76<4CC5>HjmzMpTpana`2UHL|3_GDXacubw~(cHX^Y|*I`51uttQfV&#P(-o`9!XvIpM2EO~Ud-H+MGBX3 zx7EVZ4fld6?=;ZA+xa_LHg zr~BNg4^!93jqXR8jH#NJMNX5GQIk(8CBM!<&mOoMp!*H@12gJWtJVhXMILdW6{yP? z)mXPllm^^H+mN%18f@b$>n%RBNMnmq+IQLg*qAQM8;;J1q7>kj;>JuqMg+l_YKIy! zJ&$GJNIrvIS3qUZoL05OrzLL}h=7*7luf%>po}Mb^fY9~*#1@k$Qla!#y@`d8--!W zz~kw_CXYxwmbD8e8|;v-F|L%Tt$;hO5frn9E@Z2n$n+cF6pVV5IDe~6@{>yiUQ49p zBz`|)c{=3G{!PWH^M0&ym&xb%OUs9m;)MR^@8q#x47)k~1SRr(2bR?Wh@(Xf6xb~# zj`q)(^HBIeZ`$}Le_N*l&uCaA({K_dI(kfiR42q^ch2Mh(zhS-ag_cqgQ->WSpO0UC zgGu8?&UJnfyZelw1otxeXy#BgRKSAOqzw<(` z*|?=?pIP+nd-qr3KXN4wBGNC&a+}2~^aSiFgvgr8o;P`fs`*a+5m_RHLEH$Dutpxz znLiZ!M(Zh{pb}20zmj8MVo<1PARr+2WCIhT7fCDRc3j(}YneXW3NDsGV93ZjqC>AU-gS%nd4EM>!^ha4o`Li-U@z(}4+&L{`V*|oh}J~7+W}prJkPae6ZdWc{d?@F=);9?aw@L+rKhSOFytbE z9w2~|Ao^rLF}$cadLy}z9kV08Dh6%+UVebhIxsdKbdR&-SSt^c6Rc$Mz1@lh1Er^)z zYWVhiE$8MwIo9lYq{0sgrjdswGOvuqtCT?`)_JjTv49mp{jn*4+1?!p9KG?Hwz3=B z!bbuX$6*5zfVQ9cmkgU1+mkS@7{&&h$g+yE#8YPH`*y*~x>aaUP8WRn=>Be=o3 z3wS{al<+-zw~Z|u{D*sswN(c7o(e$tOKl(gG*d*QN$PpJPFQ}4FW!hMRk)_erg2rcXsQ_oT~(zC>PV18#_); z;~<0Ns{&IO2MKe3zLR-OkQZi0y_NZdhG}6Bvg?~80x;bw>&JS$MRI$M7u#mEmx+g` z`TK6tj z)dUQU$MIv>Atpztm8f9CGclsB>6aBn68C|V2nN~vH&W0a>(YFn6Cvr`9b%Q$Lps6p(Ak>;p8LI) zjFLf4MUh|S2nMXIfigN;gP@I3WN`9wx=<#CBHghFA0~{DeiToETV5DTP)}f+>7%T8 zTc0y3tX_(rAnFB~>1gt1?`Ol~aprDnV4r>S&Hl4paI;Yrvb18I8?&^0DU0VLo)o4Obl1l=-`RG{B#dv_OWps@ z?H~C!WGv%L4S+s*_LRH55uiEZ0xh1Pz_iRWkBiKJ>9(5De75k*fP$S zYQ20kxSF@HLXgcLp$!?BFY4d5Yu-y za&;TK*yB!np;e|j8GbTAJbcp+4?Hr@;-guqn)RMUP#~;R_Q=Y<0|}U0LdLaN@R9z; ziYr(eHBfk>J2b)sA!(H|4#VLkyh{V;IQ5U`=!440p#MSHTL!fqe(R#RO9I6$1b3%6 z0YcG2aa!E9Xp2jV1}`qfp;&P(6u08;MT=XDyWI4@_nCWU&YU~@@*!U$yz^VW-e)~4 z-_OGWpwS+5@|E?H6auB{^M-ugr2G*?em+$ar|j0&pXnI1W$5(T22zL>eQ_Q5Aje0J z6hHInchzp}2Phd8GLWf*(2Hy*d(HBTJuWuis#bfB4Qn?<0Iu1c4m~DL~vffi_uo zO@tFe4Fw7lwsC(L*mX&-FZK4{d8f0TJq&Z8J39J?3}$<_OWNcZqAbc8vEPhtmKy%( z+gAVNle<*z02WWtA(jBc&bL9n1S+B(qm|ltM*scjae+U-yCHP}X<4EyCBInvqGni#vk@xgF?FhGEe&GN9Le2U)jk6#InL&Q8P)a{87 zDk`S<#o{`0ud7cPj_>&6_iq>I88fWkuF^@h=yEs7YaBOiu`zgOS-$j$=2pHZHrCfNJG4l^tUezR!n{J<$KR@GPnqM(1aOgr z1^gXXCO+>|k9kIqMk=-HtFNi#TZAm2ptl~DYFz0WXW`qC3eF!&-MieSKndr>DBzz) zh)3)%2_g#cGDSXP!GtN=8|0hzOM50Jl&dZ!bz^{pp3g-<3Ajp*kRVYpHSI15-O-8N zS;M$Z9B~vd_Y#7G?VscJLG4VuP_POCDYY$T4%_ zi%Zy!_9o^{CCFtX)K**jcoX7|Y`_u=F}QXo*fzk=Z1Mkhu0TYe40Z4C^9jrN#n&De zagoT#xsF!tVDUtJpy4BdWgVVYJ~+W_xD8lTbn6wET6x*0%F!C72?G&beVZ zhc(7-^Q-F^!z%s(IyFeh8!vJ(rVVXKNZq#`O}{Wbzbik4Bv{a(jo%BGwM+=%jQ>3D z!@u~plp>f`v(HxT_Sf5+`k%`c26a)>utZl|(fCkw74_gm`Lp(b`G5kT1k8L_#n$1z zIy-H9c^fe*z@X$#0Avec*`?kCDg(UR)Iap`GMTLxOh}4mqg#?gx+rBk5#eoFEkYJ4 zc5PRda90YBa<`!Jc66T>9%&e>~+eg%}o?0q1TGeYqGCo4X@LbbgYbk9N? z?8XH$CmhgJ-=eym(n1E#XI7q;HBT?$a%L04w;n8EiU$dWo7rNR(4Bv&-$f59?q})$ zO8w9T$hVM%))kQB?ZhzD<8hTN|EZ`lJDEDFP0jcocj(7CF*q+O*bbBt)>|4Cw-n=$ zF?Xk!SrR#MR7V8as{T15SM zvUUGd))m_3^l0b)eqrO2Om?~BFZc9o`Ykl6)#x^lp%+B4)OBwfZ&buzfA6=rUDC3| z|L~%CPc4|GD9yo9D(9a7h-h@?)2{Q=q@VVAo)X{pc%Xnq$3qe@;Ey9K+|F34UCGg| zT-&owhAPO=U`2)~cixgs}G9>=M4APueV-EC|f;;kBA&A&SrA0vr zErrU>#be0vqS^yY!cPcqyroWn6u;bv))ieNIbDd8Dt_sC{z3bn7@Q!#MZ3c|uPHxf zy?oRfR${%B4gDz4!*EU`XOT?-P(qy)WQ;X@a2$G=3P7nR9|g(QjVmKOy9GgP&k5o8 z@D!J!6NK+bh-b-PbpN0~4UVUV^t20xWj}ZyqpKACykC^N3P_?5>i^vA?u!A+Z#r-L z!23yQwcC2WR>7lbD#Q$3Tah572fdpGlY4-XZZ*z*6TF0)ZcK6`@qmJ`;6RYuw^Zh(bl;4-uQUHR})Elp#uMgL7`J2OuA*^%jU*lfqVeQb) z=i^14sb{epP%DB`W(Lo!g^@%06&o2z(OQ3EmRpOV_Vzbfyk9g#Az1%ZSvf7sd3-<_lRWQPrmGUY+KcyH65^pH3|G3pzo{4k;8f??67wyq*ZZIG;V9Wd5=7nl4Dznh;gTu*Wj;LG`Y$!8xxu8|mi^%)FhyE;*uM%a zxPjI!behElg?ZXR0J?=u02aJ2e*uV)*jX1r%YNW!S-GV87pFT1-vXqv%#ErtFu57a z!%u3b54>UUj#QO5bp4Uu4ekLQf@p2mg{diH=lx?C2>%!Cq+{%VSYVuO_JC%$J`{>R za~D_a=rjBEqcqamuvf`Z$n&oB^W^CT?(>SlYSQooCUEp`eOr3`ooX{8*>sR{DZT$( zriEB7VJXq!eQs?B?a0JJibuY^48m`3LItCIhsK;AF+L#Nz9}!Z6o%ArcG)-hZ*xTy zo z5Eyw7UyWM7OMDy?>J|Y0m+U0Fsb?X9WlBCPJ6>$$p<`uJBZDK}V+T=ixqH{f%>uCX zN2WC-<+&Ntkq37NECnI?whi5nS`XiDoV68bkt`NRiDil~jl)GTmzb z`qAFEoZCo0TRrQEhn4j7i$UtL)URY$7P-R}@;@S`o5T)A^X0purp;4ft0{g*)SMo4 zMKt>kyprJ|#ghj#n}M-k7oygy{ABHNvBr)$46pDim=m;&su&$Er+kF|LgtWP!>Z6f#0&+OA-Z1R-yq;_@Q6&c6zb-NJ~Ut9;X3 zZzEV&5k{eoJ-XU*Ls$Q->Dkxl%o@DYIT$A=Zh%Y9AZ0TR4a!3l97*KvYs|<4mJTM z5vnV9jGjNy0>f60Tn9CkLs6k68~587Z_$Bn3E?sdFM>7Yes(T#o-h&2OupiI!$g`w zNm@K>f)#fw1Fu)EKd`f%x}+6mT4I$B ztI!<0U8t}4+kP#T_@~SiBt;zlv*&$-xV!8&7SUG`ns#DaQ^kZO4unLF)!D`srOcHy zMqJdDDxk9Pt7wfdkBh#*z>$9H6BK5k-lgjeYZ6(X!buCQ8F95lmDcwte~Uk?=dO1< zUnX6}@=l)Lruf<7^I!9}zKi~riB-_6)BP5`ldF9`NqxtsIa$=X=c2ifuFdfIZqt2vc$G}DZIV2x0W{Trv&!9J#k;9e z@5bIhvh9nbx8x1}GF(kcb^cMvmGrFj57afD@xUniQGz71)ztD-%n>L-_-RpWF?)?R zSni;?SBgVO=J#>87it*a&Uunrkp0Pa}jo5@O$72MG zpF;DB)3Dn-+tzQ1dcgJkP-f$Kl4BNl`~=lO$Da7hYk`w z5;{_O;H10sGOdYV=c2je4$i`@=zZ+qiFEF)n=Z$)lx5r_o-OoA0tO=|7JtOe`8iW69X>QvJxBWzWhqO z%Q8D2DQwbwWV-yyMtHXKncXimI|wuYpwGzovPqm^xGYg#evE<=jEfTmfu!g6_VzzM z9A^9e3Eb*8_!FXlH#a+L0Uhs5vlC04?moF$USG&$tu^X=`Stlp@~aE(IISgu>ga%( zQII-T$R#RD-E>*@;p|tt0&U<qe`du3qKmC30n=RrZCpX z6y3(0fG44`E(G_CX3N&l#u?7;T_oFBgTqpbCa*XPS@0yEtK;jL39WK21!cAc2j^DQ zj=-%rMC1sA|5ofi-5l>IFjRgyqioWFR0P-n#;f!PyIK&tvw^WtrVY{JCB45>(?r(S zYBZj=dNyLbyq;|kdj&wtbCSA0qmr0|sPtetc|RA7o3cpVjzm!%RTaA9`C{5MGJW`f ze?s=o;FosxIG6j?1Jg*JASRnp?UsvosQc)`0{IgU0!o??q%_DzjsVVBJLJY@o4*&; zRPLGxzq<<0L7Z>k5>^*QrM*S@azaZ!Ww!0&;EM=M@}3|pOnz&d%v6Fy9CNedShQ1+ zl2>LT8}>_M*qWI*^y8*F9Rkl`WI3*hezD&?E zeN9DqcmOdi(ernIKY2`cJhSa{T9ToW*05beRTj6r+xO~j9Va;Jn$~A}+0XR(B8Zii z35MOjnEiL-dc+S6u`gFPR!V6xnFcEAVy!-C zVs5?s_i2Rg%Y`5;AfALDy47Ncc}O_`SnQ%spwCD7&s%u$4L8>}fk#>BiAUeZIy$E4 zaE<>Fg@*mFRf;>3BND!8&TZ;OIrrMa%D%M+O5>p(%|%7TKWj(~QUX%87#fJr@epWA zY7MrY&iAg~ZSSR@A8=i4uO?oh+vJ~Btf{rEp1kmlFMKOEy{ zaI5l)VHs2DNi!4gOQEGYJL^|jWfI*h%!J#@xI~pnYwZ@8dU(@q{`XgUCccl`dd3YD z9;9Nq4=xU;znSc005=7DH7_L^@*d88Sw@|BS{zsY=t(c$JzyHl1gk zK9p&Db-(7gRbu||ZOFY@_9kJh-t631LLuAB_xzWM(>X~+y{E|!B4w%b)g3~zziG1r zR+}kpJOSUgN5`8^z1p^JgpL;PD|mE|3eCv-AWdqjk;=K6^kg469`l1oQ3}L#aL!Y3 ztaRTmpLd5F*me%#|CsJvG%#`W-3aD#5I&9=<8O_!2v)ui+%6d({?&B6oRb?yAK;(q z#A(=YxbOLL8fkUP#zpg{fJxlrc%RyMW%{##6b=W7(=a`Gq<5^_(SwgE{T`Q$TiN%v zE8bM?w7#F89`l!>m&=OSnI!sXdBG>57$TZJW7` zGz~<

a$4Lgi(LY0;xa-5s-ln?k!VR=>zCAT#|K?zpAWoP9e|rE{ z`nfIPh=(NhPG6WU))KqqRaqvCiL*D)tUxV`{8F$!a%^NVW# zhCNP#W>ptr3f>DH0h{RgyvLX^*xh~S1=p#=LV!CBhQLTQ=3vC**Rmbbl zUHb02>HD|M#A~30Fe^8Y!4F9`M%;$MGl)lqTLOlG0?lOeE;S9p6SkM+rI6yQI=P=) z1d{My8vESph%DS)Qr)3~_XoR`-iz4CAmged$FqUXRua;L-vw6ZYg;ezJe*afn)7a_ zs4nBp7lz|@y)j6Jr6v79`?2#}>zL+h+`-#+f+DqpZnC;hfMcud%}fpQ-ORnE>&n_iq+49z3ax^DP8JUw^#&2Zvf zA|+(>1sr@<7a#oi)aHtOzZRazsThSyeRz60{EzNPN z-mH%6jevhi-p))Hpinh<&5-CBzed~Bh1ljxU!>aNUrm;W9vC%Pg7hLxWbX(9M?% z=x;h9cMW#VIRTmav!kVk!;Ja7Mmi2PVvT{6S2&Zg5_ckZnq=?%>_Q$YTXw`c;)PDq z*$>dduZ6sE;~3g5y21{EUo!_U5Ys`+-SpTb7tA9s3O%Q^Fk{BL`cw0OJ57C_zJwiM3y%0uKHvWhgg6B)=BCvSrx`rZnEo)dVIuDEm7t_-VAwt!?khapU#&*KbWTRCC>T2kA&s zk*hb?2nJV{6X>n?kJ+M3Q)5WZz+(d@`OA z_};tyEFRVVd9bP6kwkZqTlq&L_6Gsdx&*NbBB4w#_aA1~sw$jU#F!sZ!MiKxLJ+hC zCSh!cC{)-$#W%1OOk2z$Y{1<3@&md~=udRr$hSjsRkO(P?K8ZOed&m`jVg48;s>)C z<01+2@67`)Myn2rovx9gYT}#a`XFKblk?g$@I^tMnCB5+N2Lxl{C{8 zy(Px@^?Wn_Ja^lFKGsn}NaNJHPrBW$_6mm?tUN^&=F%ysYtp+oYlib&+=cPA404r` z`-Mcw;EQ8qTsGOn5FXLyZZmmbYW`C4j|Z(vkZLLieExAhs5mEJE=uDaVgy@IDnLdPS--^*}#E{J;d_uX5P#75~rRxWX!Y&SU ztG+~nc1npIA~;dR7{O9m40Df-ZhHXmolN}1)TqjDvcA6xD7^m=N@+~bKjUiSHl#s@mOB>`< zfya}D0@i{s<^=pDd@2+w{LWwGOz+6LF-xdGTHN^uwf%X|LLFqj#QTyL9Xita6;y5* zqAr?qx&|!oD^aZ{w~WuREAP6a!xtR3unUcS@Q3T-oZ>p0 zy{?wec`n$z-{$nj`cIO}h(&gr2rp<%T9~!!eP@EXT}OSXrhyR73vSNGJ?1C%@&tG9 zO*!qKCq{3|p#!=$ zt(}cv3~v^hNnViUq^hU_#HQGJkIP= z;`LXT;{c1%iQLM=Ts(meOh`BS2J+A_^Ad$riFs+rSJ zAD|y#c&v^aPXaV4@(#esnHrV*8X!3e0N4mQ>})5){?W{JzObo&g$6AT$EUN!Z#gDS z7xp*Y;t-_x{$s*(&3%nkj$F!0Jr_qOl0?RWSeN7K-Nu2UTK}zXlisLSb-}hEp_4O{ zCFe(6RxMr{I4ORi{4JkW6%shPq0@;ySB|3+g5Narbm07yjhHo|8!l*hBkhhtB=7Ko zQSV};2yH~yFLvN+i97d~>0j)(0q0GDCcvBk5^!psQ)(WhxqHXst}uF2O+?iGjmBS1 zst^$_^ma>1zn@v21!|zLf}tPRqs2ho#qqzYH3-*WMuIUPs>kh1iN}};UTzye%)0Zv zX%vcm)((R!q(KQ(j>(LYUonDXqLG8}Q&0ye3Nb>u7ihEaVV%mKAGd1oNb*R96NlG7 z5wa{iO>`Uh*YAeWIpj3Bj(|PvX9fYk6EE>9^@Xdi?#6MK=#HQs%bnk#xs?olkBj8|3FE*EQ1SigFu(FAhiZM)({Sj$09YJe7&X? z>kSmthFDBtCi{uR(B(7ruBNYs&(qUnS9oO^s8DFZJ318+)TUIaQ>)+m1Dy~n-iPDn zs6!bY;u%|H#Aa4&Z`x~8K=eGlnmgl{UPCWl8f_gDiR<5BRQlkUITL!92{DT6Y~Q~; zb+irilG6?{I+#dMv{)5cf~yp~W)%2BsI_F8$blG8w&wPO5GGhrb zx!3>E8}&XdX6s58d*ZZtp_V{d=1N;ivC_yFIPeeLzg&#Dw%rhrft0&~i8$DpV~!jI z`j?hi%c$Tj&#PZ*Xh~9A^50%AhmkGn@sP!}dU)6I-k<;JjM5eSYfdZMzIhuX3b7o% z@_z@YZd+ql_ao*b+f*pID!AzP`u2{)3z*52E8M1;k5QrRB|*dpVP zFwLQ7>zAB;Vl*gw!dk~O0=~hm+Q0%LVq;G2k7HZ1ZUVgLiizMNdbC=fn%%=jS-xBO z@Kb+-OJlT0`-e`peAzPCFM_poCp_;yqe>4ce(4>o?8wRBh#6ItlVS2k*IQ42+xjcY zOZKDMSUfxMFNc)^Rn<%O2_~w^7sgSCWW_0l@`Ph!jMsfCo z{N*qT8iRp9k{Q@L;FgOf@k1C(Nrqr2IQle%q+U;{4zN<~ldt`2y)U#=m!c!4{7fMbKzK zR$#}LFR%(O^{U_f=o%&(Q)_QJ6Y%ebDRw3m{1P@gM24eXTdXuU5XYKyZA13iU7Q)+ zu918LTuB%cyWVP}=$!us=busN(aGD(%Y6#qw(qC@XW8q!y5up~b;_5Y4L7-}ip=tr zG>Z}oCB888w>A1v-?H1uA%VZA2-dLga=IWvwVXAkqv-Tv1ha{|q{{N#5%Tnx$=>(2 zwXzy7WpRiM=E8?>VHltTN;}KdJmk1?&r7IvLm-zYB_q3wPlX{(B1^J3`HyEo~E zAVeA3&oXo4-bi$!VorbzXDkd#3$v*flBQXX5`;t@!Ra;ZD!5gU0fW)VyA8aq>j(cy z&PS?3;n_xa)fZ|R>I#p&A)nHhTMn9uXvsqFxeu60`PR`p;f=qCIZ z3dLmaMbwTB;!#(j6XDoZImL$Ds#cz+C|n(90{PyEF`+{>5e*2n9;Y8^zrv8AY3qNu zsD9}A|1ecuu*DLUN4Qc@n#Nnvx>;hAi zWry3DvYHKHl7$q}%n?y*UoNOk6|;0`Y^D)1vGj!;slzm1jT;+T&=kG%o<&8$Ewk zFdp)hk!5qna58~A4786uBzW!zFvSc+0txhp2c04~F8V10n?5#9E~QJ_L3-IDIJc8E z;7W9vO#)BSZsbk}x9L(c5H#01V|q1eIaDyShq%stl zb)U6V9r4XwTl9kBE$ zp0;1@c)Aa?D?I-5_0E720Q_qjdTAcr4>srbhA_U~xFU*wG9gVH$UrWrsd6&& z1_hr4D1l`r&0SY&kfD4aB-UJEodBQQl^?gC;W6 z#kRtQh+kMYK6twy3H3X_j;NC}4jhrcx*kI#|KbI@H_~%csdhwi6k)&W)TXa1m}LpW zTD8jNmqfInu#bw6HLf?=POr2fz35am-+!wk_=`SK$h%6%zX_ftIn|MAa<&rE$9ws1 zLx8&_a1O_`;j3(YbeRo14?Kk)R3XY`G-NTa4S?2z}33Khq1OFxs15ou}WPm9QWNI~?$A zx+P*j;h#0H*9x`lQO>d8jBtq#7?w`~ zB-M}rUBS6TeoLRf#iB{}5e@kT9TS3D@d@DM1~OIWK9sZoB_ei7n~fOz`y)VavQ+|1 z(Foy=`0;exu;X)e$nEuzfXhkj6@7zW6aNXomzS1PXE8bFUkPscMC>@ARnCA(md3l< zU}g9jR#LFOy|G~0nTQNkgcN4?F?A}Tq*;djwD7cJSyu3Fb2mFAgy$Y;e<0t&BUoS= zZ>bA$mSxd4>*nbPB;PTR3!&=NohMQ7V$FBDr!#U|>vf^()V`}_D` zPflM}?v>Kk$x$Vb4=G_n6^PQaW?6%e7C)YHLM~H!RmlLSekndfHAUnD(@P75I;`o8 zAoKSntdsJs*$1w~HJTv01Q=i-6yM_wq>#vPvoKLT zaep=#pUS<^MXgv>d*|FSkf_^$`uKK(MIUlI2H?6$n_zr^D)we+5K7>u z6;E1pOtH<=r(Utr!1#ZC;C!ZlW;dI0enp{-80v?QDv_68t|N5;Q()S|s4znW7aQ_q zFU%$TbzqFNh__5N-99cH!MXnsBmyFJFqcG&J!X{84;xppjjK$nnn9KM%_i_FMv`+~ z!Di(n(q*S}iFcNT$=*6Eq!+@gT!=o6JUp>byes1U6wGDJxkvK%{ag46sR?^wazPj( zbkD*eT$3{UrJll6iVdL=hAwNATzS^$SebDP`u#mnA+#7DI~uGvq^VYRwcqZ_^i#6; z=M8=RqvzhLi_XnNtD4C&PURAYNhm>jrvXsQhgZpk>3I+d6q9J+H(!-^qti~IDRq{6 z6WJKh-&n4H)q-qkQA!bHnMwdrWcbZ~jcA;a1!ug@t=0HQ`%m(Frpp|8;6@2VM)2RV4?npT)W^l#(?yEklNiRj z;JCT{Pr$SB&n%<9KdwMTJap)ew5WyAa72A1YqVlaas!b|vktHHSB`YHCICklnb~w@ z!`KwUQ3a*)^-OYqKS}sbgsS+B9h5!g$~oGr>x%+DJrd-v$#uD8krEz=cSDuX7$_A$ zcDdk#zbR#Q3n45EATCL`0kY<^thQ?AZmFxAEbt$`@no_^XUTSnc0dQnyzGD3+qh9E zXNdjcUAgv$3Emy~ZrQEB<0ghf&qroCK)^+vmH6Ndnnn?Akf2@^cl-HJ(= z!I+w)w!RM6ly6;Xq5Dl7APm{$!*RS+s$_jif~Y-W^)ivbCkrpM)@?sTn%_S3r1EnOlP z#DH#~%4Y$7tp(-kW7Y8w?;N}-U!A{_7otiOy2UD|ia;A8Pg3&_NPuA}Z8V&iG2Kg9 z^DF92B?2ny>A--kHJtr*5&LY-QVP8*J_H_EyaVe6NR5$_!6=uZKU2;x(*#i%ZJ~kO zhU{$aE=7${QXrMi{|LJ%EQjikpi(Nu zCEc&_a1evgVxbH&P~d=KI=no)h);25%Z>^;A(vJauQjd4jOnA5RL@m7*}rz~%ZKV~ zAR|iUcCdLYz8+6}+>108Z1@&da(10I6C)ZiGn{QWk%yA#zuF7qrWEG{!k;~*(7r`8 zRHMM*f_#!)-0G5#s`f5s`J*HRDdec{9OEP2sMLLuEj<2Dw!2o5rZ^D!;d_HZ{X(t+ zpRdOfBQlWa&|&dVpiaMbw^NxK8Q5u!`vu=-0TWOPX9gyv>)^_|bF+h$-9{^Irn5Ei zbf#Zl&#&YVQY^^+z$PwpJZz2AfWd)$vyPiJ%qo(yLg;YQHZV0nVCX#HoS59HjI!;v@WCWc8;18L>~|uTs0PrE^?8{3;O+uhR@yK77}9o{g)-_!|{tN z_Vb{>26{UJj)7kP+CuI^11J6;2 z31!fbcEoplWKU~hPL`AF^PEV*UBVtlX;^+i`!BdnD8$l zf-+m7X$vd1hll}`A8BO~4O@@~ej-U9p=77)ij$u^so@i!mQc>|dvf za6TL5(CnEWYPQTF*VqFN;Tg*C-ouF244NB#S`6Be7-Gjjm;cf%_1)YORkzUd;DgbU zY2Mfq8Ek|*NSgoC2@@h;vGpPkuAV9_X;PT(XizwL7o#wpt*YtWE<-aPh!rC^AL5>EZeWx8Q8%mTUr9D-Dvz}YE9Ly^0!A9hZoyF$ zw${!GdhNM)xi;iWp0oWXqY!92dxYY*FVRxJQYlwp@V0(4 zOzLp!kvk90kuHbQM%_xtXx{n5X$PEYC1 zZT&X9N zUw+vev!aJL(L(K6Fo9(SwbyDEu}4Rq&Jx0grpJ-KBWPUz=(;5H<96~`_`Df+(t2Mv zPYeF$sEj3Bz?4CgVKfqs9$c>5K=HN`-=Z+{jw3>FT2*J&pT49M3h4nt0njPA%{pTD zOI*epV#}+AW=#yFpaJgBuWI^ZE7LwD?RNK13))G~O+xStV&cEKP6;lHMO5_EU3X~8 zgxqkE5mT6_nal<$j%1HSwV5(kx{NhSkRoWo7BR)L)JFa)sT2|*!_xj-ot&IFH*;>i zP1`*6lF9=hSjE{}X`Ye^HB36Cp5+|5u== zHr@Z%yZ_*i|LZ@UoZN^|#wcqcWj$GnajE=WD;QsMwPX5YjM+0;KZA?-oGNpoTGRd0 z&s8B_g=w^noU=s)_;JVKzm}8r4O0EG!MK*x$vS9p-l_d-6)bk4MI7zpQ*H2TeC$e} zGoWKFGbA%}xj5S&+pMolsHiM0{MRwP=q9r&4wM(IM121 z-)HaOP)c5zwf>>d7Wsr6{`(!@E0V`cb-bqWi%z`&~zbnt-rMR>#H0qW5g{gMB&ysOVs{Vxr^1<1u$q zwWA-bbXsw}t!^d|5C97e=xNm;c(z>3Wn}1?4mM`z*Y;ODJ2M&% zX$UY=_3ZJ<1qA_eHy2UP6Q#Q*K9T@;fTO6+>t0Mu#^9hmMeHgo-&gX@GciZ;zS-V_!-1_tDpZ#r1P7k*1*N1 zmF(P(*6gk(b&`~;1>e{4PfFD4A#eb=)24@?_4MF%YH3#4rM@1Ihx$IR0LySQV#rRa|Ekz^M(L`|8xU!{1W8vg#1${U()|=n@>;$e(KDkWcOom-r6PGkpe}*v3&&s8;GI0oEwJ@VALm7XKQNlb{>Y-c%bERB zT4{NC$mehKm2wop#z;rOb@k;(51|NJeWQL@NIA;3#_G0P4VwN;v3gFMD+6-DWSTQ# zTJ#lOWd0unAM}LKih+%*D|XT5R_Qc?G>vsm80W@MYD-ucN>1UZ8}u+UBRFD8obm}n zFf}WO45fdRAh+j4v89SjM9uD-TFit3B3>0=_4{K(U+*gMBaxuuj?OplYRMX!Lm8Ijld z4u35iSZF4b;CB(bB~algv9z&PqQq%3d~3vcNNV z_kPTqIJ?hw=P^@MZqAW0L?S%{9j7&wjo$o~Y!@pOk;J#Mw?E{u5g{~b&{>+f*9>jg z(G;t7RBCog8HDs*enVngS$J=Mpmi>3%kd5E=T<#8J<4saXsmJ5Cl%Qr zqbyJ_NHxu-WzZuuNU~s}=jRVr2Er^kr*oMU11igGnTKgc*^t!mRqAoz4$V@E?)_z) z)f?b0ar{UeW--GMG5ddM5LUb{n&V9vS#jMiVzb}mvs`$beYr$-N8t0hNz%s2lR{3{ z-s}Q?qRt0uF~1NFb{Q6^Y46kB{n`twVG8`vBs?nY3>PK-)$R{`ohciww^6h{7i?u? zbkI)EB26N5HnJT+v=VijjK=C;B&t`XQ>7||L!o)K?(?+N3o;si%AH~pn8}eBj85W) zLxW!zAbjWVV1hAoE$U1)2M(An>ku=AL7fZY0%fUFKePjHp~RrxlH%J?zG=7u3VpY@ zVXm1wR(wK2g7mXfaWrcGgmqoG#;*ruSm}tG4e;t%nw)?>$e56lU*d+}d$%p_>S$$t zp}!_@>7!%6Gx{z6R*1b|mS)gS{LU*|`oUN5<4A3;Q^qPtnyUl1(@-L(e zgCe3U-6=D;Z>2FctWO0la}|w0eov@9IaSfZ20E$H^PiB+ia$>4tBa*z6(8`{G~5S; z)+GV{mj}VJ=q@bfX}e>l)jy?rZi1`2&;j6(xF^e!9^N;`IcMTZ5@uT71P^IrN3Yz= z_C&n)T+%`m5v$)x5`*zER-Dm|r-Ye>M=W5I-06PwJ-td=!6v|}cWo(CWZdualOE#Q z>ek~K_2%~0d`Ct`@P-jDh(F(S*EHW9HT>x_tqz9JtCG3+V}s)$+{4d82ObI2`(^tg z6sMuVjMiHM?LRvn6db3n8zVGagaqPX$fCU7AyVq{N5pD;^T?fVe$StRfQp|Vz)fT( zK2`}$sEU5T+}l;f&eq6UIJBZ0Ra7x{QOE0D&AZ)X1+I>I$Eb~p=N%;w8{x0`}2hC(s7!36YchyVdc1vsg z;jrU5RW89vkS-wx;PeF9g%qgVB=1mJd{Pvg;W(Z4%8SH3rqT$DZ;P_E$#SQaBDAAv zHH=xDz%8R{u&~%=HIiAzY?lnEWpNEb0a8^C7sN?+iCcD4r1=>!h$b1A94AeWZ7~VN z3#A%*e5D1B8SenqZj$wkqFDMJp%{_wbf+&8B78Q1PFxCBZAVa1_)K8M#?MFt0Ewv(g`gDkR~EkI?_=P1?e>c z(m|Slp$Gw#YA6ag;VbjaS~Ig|=HKMUURihDyK}SG*=O%_pL3sw)o_;p<4~%}2CYi< zNwue&th2Q8>FSF+v^+G>445!v#}URV8fO70!YzaA{?^SuTmbqGs?9g=TQeFge^|TQ z%TEA+t!Z(nh&p&yCw(MIdaFL`Zd5W?mv&!|*B@%&ZV+D(5$thmPC7)hR{gsR9ZveM zCXdr2`YX>ykJ9#c23Jq<{orTe2KM8*C&xB5dAM4Bnf2xi5^{u_wTkJ^EG|A9>3u|g z>%s@`FC)A0B5^56CXPEVO*@)*^9h9;N;T<9_2Pj3KOBB-sdnzr;3E=AyBP52QI}ar zan;PhnIKY7o!X!^__xFMcM(wx?x~I&e|vYPEJd8;Yel_zGo}Q`;%CH_ullNvLNhJ$ z&S8G6bT9?KgHQA@m}Bk9g5oB$ojhLNMLVp0RSi@<)Z_&*s);N#&X>VZ1(Z0eKR-Q& zDIor&tmuWKgT=R7mMpDSd%e}uDJ##3iXKsJeU*_ZoQhJaAVt5QtdhQ)7Yd78__n6^ z`4#Zd+~zLKZ({wn=y-Y>f30F2KAr2XOp=G#MHF1lap&{b=MUkM%}3tZYwy2oqt`VO zTc$H)KrMst3O;(V(RjSZEAZ{&mjSaG%L^BdPa28Y9j5C~E_v!bs`=S<8GD1Z9)JHw zho$To3RYl>2Jv+aGRrSW5u>i3b*CI?qk9N(uGp%$;v1`XZ(hs0df?!PF<{7AmBFaN z!b7>Ejgrm3DgcZwDgPnR-^g}^5WkPco(MF5B>wpwdXkn41KFvsL;%XX(W;hsLsxzv zm?FF+J8i4djOtF@=j)81#b|W}ygvocN;i)O^T<_RGXZs{yEDN2ID^vkm(%B5gmFyz ziZP}4=A@$8`enQA8?w1jx4E4I)nV#qvkJcKL2O?&qk(*KO2fvK+H`N7CoDefzB*zm zpQ)GQz3?%$l37`V5{^dC*WL7N`&qC%_HmST=q>MAy*%_XTtJKd#*mm|2DBRz^1G6> zdwHuKA``_)uLxC-&7c5#8Mbqb`7o6wu-d{GrVwEa=$@=7*mPnTa4zyMZC`I2O;y;I zAp-R~akIWLrbNIbgAtT3=wpnX0hIa4ga#h3N|ew3Ybv-R<>Xx$nmPWf{IS)PDRTn+ z12l>XO89QSxUVBW3(Vlct?2VPFoS%b@>>7V0`e~%tFH_vegnPZ4DrmSl$4+bFA4uV zkzH_iNrXz)nW(O{{^omH^HgQbqNzbYnKw39@XzJHd;$(&&Lvbsr=X8N^tDDlry`Iubz6H@< zm7)Fkui`_8@m0QH zkm{5QWVv$Y!{L>lA}&0j z7xr7H4)MYT(#}*U0&LW0->1;p>D9l|LW-$IHkWlFf8VUx2Ks!gJ;nSt?2GKwJZ#?e zhNBWJocaZDMMA%*eqiU#T4lwn?J38di+A$?sG+tUd*!&PiGc3``Kc#R0ool$Cf;kD zKNI*YcA`3c6*7h)%z028LFw5Yu<}>$FVGZm>OH7^N*O37PWRsGMHC`lOiG-b@1UNm z)dhO7+ATTrT? z;p)yK>$uS&f7?CaSH_xIz$A}{h2BtRm_U|{mw2&t|DEV$fCd3uTA7iiI6(V1X*{GeC^I(vl%v; zT%b940|EpQ9HAO0N}qV=JxKtz)!^0sr* zB2pr9ypwByFM}QwMmc{tYwZOrfivOn%Tj|s%hP>2?7Wt(UvYsO$f9a&M^Di`oSl(t z?7rv{TFjCp;!X$0Z=cL)au<#p!FX9~ZuFKt{%6Z@Dj23S1v38hc1-6R?&YXQrK6#3 z?~(35qJ0Ab8s#gMe_R2K;YPEMno+{pBi{HJp?h{HTSii8I9h%Qs&qEtIiMNnPCh_{waMo3OFfcWMDL%+*(R(pbMx_JKlZRHYy`4 zO7L6=BkqA7j76kQ`%`x}Z&DB3D1^WNRn<94TP@?zLB3w^|#oU-m6rOwyzR3!ti7SCyJ)=6W+1zs5c*pbhxh zT6)lbIiNt30LA1mf$Zvk#o1eb*@!apMowJE=uP-XhM2$Xg_)PFO>C@|==Ct1fs`-B zJS5>ArOjT>;AJ~IBx*s;Kd<90xc5a&On7Zj2B`EKSJD*&2GsMTZ_9ltP@vdSwyU%} zbuxA)M;>InmTH)7i)1wp%#c9;PnJqjCQcvCeqizr~#b+`J`tdAeGkajOQ7Eq;JN zu4Ma2mg+DPRX3tG*4VUYEw=+$csm3?o;`K+qEHHJNMojUrG`(2=C9T?LGWz|n7W~! zs_V71;wW3h@XdB(HEu16Qw_bXpz)+HXqcG*24z zIDL@l!G65oR7zI3ho|%)pFyaTWqKQ4TzXEHR66g+Jm!@^mPzZk&CZw(X&bhp7u?U9 zX1ro-`NrZ`H4qMRJPvv=lQhqwF`DY@Ra?2lzQW)nhu@cxH1U9k7<|R|>DXsFba2$X zxry9Jc-cM!)WBGMsQjwQvV7?8LvFee0IFU0*N$S68qCCo?h#4vW)j|E@GwX1X|_+sVsv3A7`>I~Ua%^!ZaO2N31kyL)^*6B3V1 ztSST^^8WH`mTnGULv~WHeTCCSBHo_2(jPFF9@Mf{k1F1Q!GmUk^8gJBTdNNSk&!ET z)64{^cAp!}VTzkM#X(Pyxwg9K6fqgg-j{0g5qv|fPu#G`NB|V`ye;8vB4>>91(Z0; z+&@~UO{Al>vzlqFltC+y#6_}T@~0g?D&`)HM)xN)+&DAg291{Cbxn=l>rjtY3=|1W zEsfrtdhhwwZZ3olE-Xv5z}l?&sbpCb37bwo!QR%$m)d?)iagX1^Ojo@6IU_LWI@$s zLH}b#5pp?)%g#k|{51k1V*6n!%j$LBw-M0h!+nVcKkqsRhUs@W-t|J>)~@Q!KMgj&VZwwdBD{A&ju?OJK{$~AmXoWp%XWsz*p2tw5D-R_p5{N$&c|915Q2{XRY#=$125aw|I zIiIOBKeSbmH+*x_WJ$zJ6c$Qi|O&Gd0ByiQL zJBZijQ_AV64CXN`yrOR?LWG`@0VQln_e$!v2S~6+CByP|eXWks@ZBmdhLEOcWzNKM z`FFm^>~8@ei5eH%raxN%3|pZ z71&Yl^KVhEpdx0RYns-QzK8H9K#6e1ed%lol$gD82@TwuLv1D%s~6^IXEt3W`7}28 z#ea;_(eLX$Dfh)>VTuPwf|Eid@+NtHNzP^Sh0R8vE`E|x=t4z>lGLg&V%w?r8 zC*apiY8~fS|HHTqNv0UTrlvpbVc+_`heh*(41n>N-5&d2&;41284k2)Z6Ho>x0 za%*`UdNi>dCfVm zDrnH|7y0Y}$uy@D&8Nh5Ge9gB>U`F!75Mq;D=F;ZsqvCYOVmp)xjm*=*(ULMJBUNg z<`{sGS=m?PZjbJbM+jnuQJ#4Qi-;aahWM=y*! zZ7EVqNo#TVzFtP_uR)E+T${$0*B!%8PE)fkxTNREeu?H^y_9$=daxMnt*%}xQ>2lS zd?lQ3$c+28Tk^3WuU)h4pdX%oiEBAs;IRNa!e&#ej&_!(HYZ73$RAbUdph1U57|v1 zqU4IDFuSwY!k@Z+e@uS7mMUy{Rn2NZFT575W}P$O*ZPpbaL%CEB%^pY9je!-fL;p= zbTO6C(ipgyRPoO?@ka?4&bMp3v!Vp-IToPP1h&B_m#5pmT^GKFu-@70ulsuj4dP+C5iiV(DT8Xp;-E|WHw`A}xHK*@0T_?D{^Dn1%jDP09 z6-j)Fm1j2ncBX;=f#da(e^B%ApLJtxyu%a5K~Ev^1q)l08~;g18>xYJJKWz^4w0)i zMfVA7cuE+AYj>ibl6fN_ifd~zCqIYZL&8IdAxqe;b!;&Z$-+>!#67&No}DejL!<3G zzjp6xf~Tj_dzZ(JoV9dyas*SEqC3Z=l9^K0ldcEbugQ(7BCop}m*3MxB{EmXpxGyIXvR~L$h#w%&3`;RV=C8*4HASi4jZ*qPp zg)Owk+dHVy;cFum83b-u31>*EeqOtM*kCp(Q5OH2mXdsw%(HXy?mc3RJ#Q0zj`xB> z_aQg>@E<(tmBxg164L}pxHC$2s&F0gQR~?k2r}JH?<~ceXlP)yP1Vl1TMCNAwN2jz zp0$r63x2Yc=a4ZOrzYF~7IyxRz%uze1}1e*3 zxX7RX;_x{T{(q$k(mDU7|H1FMTbg7mvL#27Z2zx+ThW{Ia;eDh4 literal 0 HcmV?d00001 diff --git a/assets/images/help/copilot/cloud-agent/log-stop-session.png b/assets/images/help/copilot/cloud-agent/log-stop-session.png new file mode 100644 index 0000000000000000000000000000000000000000..4c3dc631305e982bea12566ecfddd980a9241f78 GIT binary patch literal 32716 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 XRMoVejK16Fu{b#?Wy$h4?*jf0EH7AM literal 0 HcmV?d00001 diff --git a/assets/images/help/copilot/cloud-agent/mobile-status-dropdown.png b/assets/images/help/copilot/cloud-agent/mobile-status-dropdown.png new file mode 100644 index 0000000000000000000000000000000000000000..308a3b5dded8956680cabbb04f0d5aad2751f1ae GIT binary patch literal 305338 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

X< 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 z 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


x^K^*}eCwS51vBGo*V+oA*tA)JFAjk-d8lz`0r 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
    {% data reusables.copilot.ci-support-repository %} @@ -80,7 +80,7 @@ WRITING NOTE: The following tables have been written using HTML rather than Mark - {% data variables.copilot.copilot_coding_agent %} + {% data variables.copilot.copilot_cloud_agent %}
      {% data reusables.copilot.ci-support-repository %} @@ -152,7 +152,7 @@ WRITING NOTE: The following tables have been written using HTML rather than Mark - {% data variables.copilot.copilot_coding_agent %} + {% data variables.copilot.copilot_cloud_agent %}
        {% data reusables.copilot.ci-support-repository %} @@ -192,7 +192,7 @@ WRITING NOTE: The following tables have been written using HTML rather than Mark - {% data variables.copilot.copilot_coding_agent %} + {% data variables.copilot.copilot_cloud_agent %}
          {% data reusables.copilot.ci-support-repository %} @@ -232,7 +232,7 @@ WRITING NOTE: The following tables have been written using HTML rather than Mark - {% data variables.copilot.copilot_coding_agent %} + {% data variables.copilot.copilot_cloud_agent %}
            {% data reusables.copilot.ci-support-repository %} diff --git a/content/copilot/reference/customization-cheat-sheet.md b/content/copilot/reference/customization-cheat-sheet.md index 23a07d57a871..5fc9445a25e9 100644 --- a/content/copilot/reference/customization-cheat-sheet.md +++ b/content/copilot/reference/customization-cheat-sheet.md @@ -19,11 +19,11 @@ This table shows what each customization feature is and where it lives. |---------|-----------|-------------------| | [Custom instructions](/copilot/concepts/prompting/response-customization) | Always-on context that automatically applies to every interaction within its defined scope | `.github/copilot-instructions.md` (repo-wide), `.github/instructions/*.instructions.md` (path-specific), `AGENTS.md` (third-party agents), or personal/org settings via UI on {% data variables.product.github %} | | [Prompt files](/copilot/concepts/prompting/response-customization?tool=vscode#about-prompt-files) | Reusable, standalone prompt template with input variables | `.github/prompts/*.prompt.md` | -| [{% data variables.copilot.custom_agents_caps_short %}](/copilot/concepts/agents/coding-agent/about-custom-agents) | Specialist persona with its own instructions, tool restrictions, and context | `.github/agents/AGENT-NAME.md` (repo), `agents/AGENT-NAME.md` in `.github-private` repo (org/enterprise), or user profile | +| [{% data variables.copilot.custom_agents_caps_short %}](/copilot/concepts/agents/cloud-agent/about-custom-agents) | Specialist persona with its own instructions, tool restrictions, and context | `.github/agents/AGENT-NAME.md` (repo), `agents/AGENT-NAME.md` in `.github-private` repo (org/enterprise), or user profile | | [{% data variables.copilot.subagents_caps_short %}](/copilot/how-tos/chat-with-copilot/chat-in-ide#using-subagents) | Separate agent spawned by the main agent to handle delegated work in an isolated context | N/A (runtime process, not a user-configured file) | | [Agent skills](/copilot/concepts/agents/about-agent-skills) | Folder of instructions, scripts, and resources that {% data variables.product.prodname_copilot_short %} loads when relevant to a task | `.github/skills//SKILL.md`, `.claude/skills//SKILL.md`, or `.agents/skills//SKILL.md` (project); `~/.copilot/skills//SKILL.md`, `~/.claude/skills//SKILL.md`, or `~/.agents/skills//SKILL.md` (personal) | -| [Hooks](/copilot/concepts/agents/coding-agent/about-hooks) | Custom shell commands that execute deterministically at specific points in an agent's workflow | `.github/hooks/*.json` | -| [MCP servers](/copilot/concepts/context/mcp) | Connection to external systems, APIs, and databases | `mcp.json` (path varies by IDE), repo settings on {% data variables.product.github %} ({% data variables.copilot.copilot_coding_agent_short %}), or `mcp-servers` property in {% data variables.copilot.copilot_custom_agent_short %} configurations | +| [Hooks](/copilot/concepts/agents/cloud-agent/about-hooks) | Custom shell commands that execute deterministically at specific points in an agent's workflow | `.github/hooks/*.json` | +| [MCP servers](/copilot/concepts/context/mcp) | Connection to external systems, APIs, and databases | `mcp.json` (path varies by IDE), repo settings on {% data variables.product.github %} ({% data variables.copilot.copilot_cloud_agent_short %}), or `mcp-servers` property in {% data variables.copilot.copilot_custom_agent_short %} configurations | ## Usage comparison @@ -33,10 +33,10 @@ This table helps you decide which customization feature to use. |---------|---------------|-------------|-------------------| | [Custom instructions](/copilot/concepts/prompting/response-customization) | Automatic | Standards, guidelines, or expectations that apply broadly across a context | Enforce coding standards, accessibility rules, review checklists | | [Prompt files](/copilot/concepts/prompting/response-customization?tool=vscode#about-prompt-files) | Manual: reference directly in chat or use the prompt file picker | Focused single tasks you run once with different inputs each time | Generate unit tests, run a code review checklist | -| [{% data variables.copilot.custom_agents_caps_short %}](/copilot/concepts/agents/coding-agent/about-custom-agents) | Manual: select from the agent dropdown in your IDE, on {% data variables.product.github %}, or in {% data variables.copilot.copilot_cli_short %} | Projects or processes with distinct stages that need specialized capabilities or strict handoffs | React reviewer agent, read-only auditing agent | +| [{% data variables.copilot.custom_agents_caps_short %}](/copilot/concepts/agents/cloud-agent/about-custom-agents) | Manual: select from the agent dropdown in your IDE, on {% data variables.product.github %}, or in {% data variables.copilot.copilot_cli_short %} | Projects or processes with distinct stages that need specialized capabilities or strict handoffs | React reviewer agent, read-only auditing agent | | [{% data variables.copilot.subagents_caps_short %}](/copilot/how-tos/chat-with-copilot/chat-in-ide#using-subagents) | Automatic, or reference a {% data variables.copilot.subagent_short %} directly in your prompt | Complex subtasks that should run in isolation from the main agent | Codebase research, running test suites | | [Agent skills](/copilot/concepts/agents/about-agent-skills) | Automatic: chosen by {% data variables.product.prodname_copilot_short %} when relevant to your prompt | Multi-step workflows with bundled assets that should be loaded as needed | {% data variables.product.prodname_actions %} failure debugging, deployment procedures, release note drafting | -| [Hooks](/copilot/concepts/agents/coding-agent/about-hooks) | Automatic: at configured lifecycle events | Tasks that need to run at a specific point in the agent lifecycle, with guaranteed execution | Run a formatter after every file edit, approve or deny tool executions, prevent credential leaks with {% data variables.product.prodname_secret_scanning %} | +| [Hooks](/copilot/concepts/agents/cloud-agent/about-hooks) | Automatic: at configured lifecycle events | Tasks that need to run at a specific point in the agent lifecycle, with guaranteed execution | Run a formatter after every file edit, approve or deny tool executions, prevent credential leaks with {% data variables.product.prodname_secret_scanning %} | | [MCP servers](/copilot/concepts/context/mcp) | Automatic, or ask for a specific tool by name | Tasks that require access to external tools or real-time data | Manage issues and PRs ({% data variables.product.github %} MCP server), automate browser testing (Playwright MCP server) | ## IDE and surface support diff --git a/content/copilot/reference/hooks-configuration.md b/content/copilot/reference/hooks-configuration.md index 6621bf88d326..01f92494d5ef 100644 --- a/content/copilot/reference/hooks-configuration.md +++ b/content/copilot/reference/hooks-configuration.md @@ -1,7 +1,7 @@ --- title: Hooks configuration shortTitle: Hooks configuration -intro: 'Find information about configuring hooks for use with {% data variables.copilot.copilot_cli %} and {% data variables.copilot.copilot_coding_agent %}.' +intro: 'Find information about configuring hooks for use with {% data variables.copilot.copilot_cli %} and {% data variables.copilot.copilot_cloud_agent %}.' versions: feature: copilot contentType: reference @@ -10,7 +10,7 @@ category: - Configure Copilot CLI --- -This reference article describes the available hook types with examples, including their input and output formats, script best practices, and advanced patterns for logging, security enforcement, and external integrations. For general information about creating hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks). For a tutorial on creating hooks for the CLI, see [AUTOTITLE](/copilot/tutorials/copilot-cli-hooks). +This reference article describes the available hook types with examples, including their input and output formats, script best practices, and advanced patterns for logging, security enforcement, and external integrations. For general information about creating hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks). For a tutorial on creating hooks for the CLI, see [AUTOTITLE](/copilot/tutorials/copilot-cli-hooks). ## Hook types @@ -552,6 +552,6 @@ fi ## Further reading -* [AUTOTITLE](/copilot/concepts/agents/coding-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent) * [AUTOTITLE](/copilot/how-tos/copilot-cli) * [AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-command-reference) diff --git a/content/copilot/reference/metrics-data.md b/content/copilot/reference/metrics-data.md index d044176b851d..9943a3b092f7 100644 --- a/content/copilot/reference/metrics-data.md +++ b/content/copilot/reference/metrics-data.md @@ -80,7 +80,7 @@ The activity report provides visibility into usage of all generally available (G #### GitHub features * {% data variables.copilot.copilot_chat_short %} -* {% data variables.copilot.copilot_coding_agent %} +* {% data variables.copilot.copilot_cloud_agent %} * Copilot for Docs * {% data variables.copilot.copilot_for_prs %} * {% data variables.copilot.copilot_code-review_short %} diff --git a/content/copilot/reference/policy-conflicts.md b/content/copilot/reference/policy-conflicts.md index 5f865334a317..17d43bde1234 100644 --- a/content/copilot/reference/policy-conflicts.md +++ b/content/copilot/reference/policy-conflicts.md @@ -42,14 +42,14 @@ Feature, model, and privacy settings for users are set according to the **least | {% data variables.copilot.copilot_chat_short %} in the IDE | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/chat-in-your-ide) | | {% data variables.copilot.copilot_chat_short %} agent mode in the IDE | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/chat-in-your-ide) | | {% data variables.copilot.copilot_code-review_short %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/code-review) | -| {% data variables.copilot.copilot_coding_agent %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use-of-github-copilot-features/responsible-use-of-copilot-coding-agent-on-githubcom) | +| {% data variables.copilot.copilot_cloud_agent %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent) | | {% data variables.product.prodname_spark_short %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/spark) | | {% data variables.product.prodname_copilot_short %} in {% data variables.product.prodname_dotcom_the_website %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/chat-in-github) | | {% data variables.copilot.copilot_desktop_short %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/copilot-in-github-desktop) | | {% data variables.copilot.copilot_cli_short %} | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/copilot-cli) | | Editor preview features | Least restrictive organization | [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-pre-release-license-terms) | | {% data variables.product.prodname_github_models %}, one policy per model | Least restrictive organization | [AUTOTITLE](/github-models/github-models-at-scale/manage-models-at-scale) | -| MCP servers in {% data variables.product.prodname_copilot_short %} | Least restrictive organization | [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) | +| MCP servers in {% data variables.product.prodname_copilot_short %} | Least restrictive organization | [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) | | {% data variables.product.prodname_copilot_short %}-generated commit messages | Least restrictive organization | [AUTOTITLE](/copilot/responsible-use/copilot-commit-message-generation) | ## Next steps diff --git a/content/copilot/responsible-use/copilot-cloud-agent.md b/content/copilot/responsible-use/copilot-cloud-agent.md new file mode 100644 index 000000000000..bb2704861cf1 --- /dev/null +++ b/content/copilot/responsible-use/copilot-cloud-agent.md @@ -0,0 +1,191 @@ +--- +title: Responsible use of GitHub Copilot cloud agent on GitHub.com +shortTitle: Copilot cloud agent +allowTitleToDifferFromFilename: true +intro: 'Learn how to use {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %} responsibly by understanding its purposes, capabilities, and limitations.' +versions: + feature: copilot +redirect_from: + - /copilot/responsible-use/copilot-coding-agent + - /early-access/copilot/coding-agent/responsible-use-of-copilot-coding-agent + - /copilot/responsible-use-of-github-copilot-features/responsible-use-of-copilot-coding-agent-on-githubcom + - /copilot/responsible-use-of-github-copilot-features/copilot-coding-agent +contentType: rai +category: + - Responsible use +--- + +## About {% data variables.copilot.copilot_cloud_agent_tmp %} on {% data variables.product.prodname_dotcom_the_website %} + +{% data variables.copilot.copilot_cloud_agent %} is an autonomous and asynchronous software development agent integrated into {% data variables.product.github %}. The agent can pick up a task from an issue or from {% data variables.copilot.copilot_chat_short %}, research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate with the agent, and create a pull request when you're ready. + +{% data variables.copilot.copilot_cloud_agent %} can generate tailored changes based on your description and configurations, including tasks like researching a codebase, planning an approach, bug fixes, implementing incremental new features, prototyping, documentation, and codebase maintenance. The agent can iterate with you based on your feedback, whether that's through follow-up prompts during a session or comments on a pull request. + +While working on your task, the agent has access to its own ephemeral development environment where it can make changes to your code, execute automated tests, and run linters. + +The agent has been evaluated across a variety of programming languages, with English as the primary supported language. + +The agent works by using a combination of natural language processing and machine learning to understand your task and make changes in a codebase to complete your task. This process can be broken down into a number of steps. + +> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_cloud_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. + +### Prompt processing + +The task provided to {% data variables.product.prodname_copilot_short %} through an issue, pull request comment or {% data variables.copilot.copilot_chat_short %} message is combined with other relevant, contextual information to form a prompt. That prompt is sent to a large language model for processing. Inputs can take the form of plain natural language, code snippets, or images. + +### Language model analysis + +The prompt is then passed through a large language model, which is a neural network that has been trained on a large body of data. The language model analyzes the input prompt to help the agent reason on the task and leverage necessary tools. + +### Response generation + +The language model generates a response based on its analysis of the prompt. This response can take the form of natural language suggestions and code suggestions. + +### Output formatting + +Once the agent completes its first run, it will provide a summary of the changes it made. If a pull request was created, the agent updates the pull request description. The agent may include supplemental information about resources it could not access and provide suggestions on the steps to resolve. + +You may provide feedback to the agent by sending follow-up prompts during a session, commenting within a pull request, or explicitly mentioning the agent (`@copilot`) on the pull request. The agent will then resubmit that feedback to the language model for further analysis. Once the agent completes changes based on feedback, it will respond with updated changes. + +Copilot is intended to provide you with the most relevant solution for task resolution. However, it may not always provide the answer you are looking for. You are responsible for reviewing and validating responses generated by {% data variables.product.prodname_copilot_short %} to ensure they are accurate and appropriate. + +Additionally, as part of our product development process, {% data variables.product.github %} undertakes red teaming (testing) to understand and improve the safety of the agent. + +For information on how to improve performance, see [Improving performance for {% data variables.copilot.copilot_cloud_agent %}](#improving-performance-for-copilot-cloud-agent) below. + +## Use cases for {% data variables.copilot.copilot_cloud_agent %} + +You can delegate a task to {% data variables.product.prodname_copilot_short %} in a variety of scenarios, including, but not limited to: + +* **Deep research:** Understanding how a codebase works, identifying where to make a change, or confirming assumptions. +* **Planning:** Creating an implementation plan before making changes. +* **Codebase maintenance:** Tackling security-related fixes, dependency upgrades, and targeted refactoring. +* **Documentation:** Updating and creating new documentation. +* **Feature development:** Implementing incremental feature requests. +* **Improving test coverage:** Developing additional test suites for quality management. +* **Prototyping new projects:** Greenfielding new concepts. + +## Improving performance for {% data variables.copilot.copilot_cloud_agent %} + +{% data variables.copilot.copilot_cloud_agent %} can support a wide range of tasks. To enhance the performance and address some of the limitations of the agent, there are various measures that you can adopt. + +For more information about limitations, see [Limitations of {% data variables.copilot.copilot_cloud_agent %}](#limitations-of-copilot-cloud-agent) (below). + +### Ensure your tasks are well-scoped + +{% data variables.copilot.copilot_cloud_agent %} leverages your prompt as key context when working on a task. The more clear and well-scoped the prompt you assign to the agent, the better the results you will get. An ideal task includes: + +* A clear description of the problem to be solved or the work required. +* Complete acceptance criteria on what a good solution looks like (for example, should there be unit tests?). +* Hints or pointers on what files need to be changed. + +### Customize your experience with additional context + +{% data variables.copilot.copilot_cloud_agent %} leverages your prompt, comments and the repository’s code as context when generating suggested changes. The agent also has access to semantic code search, which helps it find relevant code based on meaning rather than just exact text matches, allowing it to complete tasks faster. + +To enhance {% data variables.product.prodname_copilot_short %}’s performance, consider implementing custom {% data variables.product.prodname_copilot_short %} instructions to help the agent better understand your project and how to build, test and validate its changes. For more information, see "Add custom instructions to your repository" in [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results#adding-custom-instructions-to-your-repository). + +For information about other customizations for {% data variables.copilot.copilot_cloud_agent %}, see: + +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) + +### Use {% data variables.copilot.copilot_cloud_agent %} as a tool, not a replacement + +While {% data variables.copilot.copilot_cloud_agent %} can be a powerful tool for generating code and documentation, it is important to use it as a tool, rather than a replacement for human programming. You should always review and test the content generated by the agent to ensure that it meets your requirements and is free of errors or security concerns prior to merging. + +### Use secure coding and code review practices + +Although {% data variables.copilot.copilot_cloud_agent %} can generate syntactically correct code, it may not always be secure. You should always follow best practices for secure coding, such as avoiding hard-coded passwords or SQL injection vulnerabilities, as well as following code review best practices, to address the agent’s limitations. You should always take the same precautions as you would with any code you write that uses material you did not independently originate, including precautions to ensure its suitability. These include rigorous testing, IP scanning, and checking for security vulnerabilities. + +### Provide feedback + +If you encounter any issues or limitations with {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}, we recommend that you provide feedback by clicking the thumbs down icon below each agent response. This can help the developers to improve the tool and address any concerns or limitations. Additionally, you can provide feedback in the community discussion forum. + +### Stay up to date + +{% data variables.copilot.copilot_cloud_agent %} is a new technology and is likely to evolve over time. You should stay up to date with any new security risks or best practices that may emerge. + +## Security measures for {% data variables.copilot.copilot_cloud_agent %} + +By design, {% data variables.copilot.copilot_cloud_agent %} is built with several mitigations to help ensure your data and codebase is secure. Although mitigations exist, be sure to continue implementing security best practices while understanding the agent’s limitations and how they may impact your code. + +### Avoiding privileged escalation + +{% data variables.copilot.copilot_cloud_agent %} will only respond to interactions (for example, assigning the agent or commenting) from users with repository write access. + +{% data variables.product.prodname_actions %} workflows triggered in response to pull requests raised by {% data variables.copilot.copilot_cloud_agent %} require approval from a user with repository write access before they will run. + +The agent filters hidden characters, that are not displayed on {% data variables.product.prodname_dotcom_the_website %}, which might otherwise allow users to hide harmful instructions in comments or issue body contents. This protects against risks like jailbreaks. + +### Constraining Copilot’s permissions + +Copilot only has access to the repository where it is working, and cannot access other repositories. + +Its permissions are limited, allowing it to push code and read other resources. Built-in protections mean that Copilot can only push to a single branch: the existing pull request branch when triggered via `@copilot`, or otherwise to a new `copilot/` branch. This means that Copilot cannot push directly to your default branch (for example, `main`). + +{% data variables.copilot.copilot_cloud_agent %} does not have access to Actions organization or repository secrets or variables during runtime. Only secrets and variables specifically added to the `copilot` environment are passed to the agent. + +### Ensuring traceability + +{% data variables.copilot.copilot_cloud_agent %}'s commits are authored by {% data variables.product.prodname_copilot_short %}, with the human who started the task marked as the co-author. This makes it easier to identify code generated by the agent and who initiated the task. + +{% data variables.copilot.copilot_cloud_agent %}'s commits are signed, so they appear as "Verified" on {% data variables.product.github %}. This provides confidence that the commits were made by {% data variables.copilot.copilot_cloud_agent %} and have not been altered. + +Each commit message includes a link to the agent session logs. This gives you a permanent link from any agent-authored commit to the full session logs, so you can understand why {% data variables.product.prodname_copilot_short %} made a change during code review or trace it later for auditing purposes. + +### Preventing data exfiltration + +By default, {% data variables.copilot.copilot_cloud_agent %} has a firewall enabled to prevent exfiltration of code or other sensitive data, either accidentally or due to malicious user input. + +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). + +### Preventing security vulnerabilities in generated code + +During the code generation process, {% data variables.copilot.copilot_cloud_agent %} automatically analyzes the newly generated code for security vulnerabilities and attempts to resolve them, to prevent any discovered issues from being introduced. Analysis is performed using the following tools and processes: + +* **{% data variables.product.prodname_codeql %}**: will run to identify potential vulnerabilities and errors. +* **{% data variables.product.prodname_secret_scanning_caps %}**: will scan for known types of secrets, to ensure secrets aren't introduced in the response. +* **Dependency analysis**: dependencies referenced by new code will be checked for known vulnerabilities in the {% data variables.product.prodname_advisory_database %}. + +## Limitations of {% data variables.copilot.copilot_cloud_agent %} + +Depending on factors such as your codebase and input data, you may experience different levels of performance when using {% data variables.copilot.copilot_cloud_agent %}. The following information is designed to help you understand system limitations and key concepts about performance as they apply to {% data variables.copilot.copilot_cloud_agent %}. + +### Limited scope + +The language model used by {% data variables.copilot.copilot_cloud_agent %} has been trained on a large body of code but still has a limited scope and may not be able to handle certain code structures or obscure programming languages. For each language, the quality of suggestions you receive may depend on the volume and diversity of training data for that language. + +### Potential biases + +The language model used by {% data variables.copilot.copilot_cloud_agent %}’s training data and context gathered by the large language model may contain biases and errors that can be perpetuated by the tool. Additionally, {% data variables.copilot.copilot_cloud_agent %} may be biased towards certain programming languages or coding styles, which can lead to suboptimal or incomplete suggestions. + +### Security risks + +{% data variables.copilot.copilot_cloud_agent %} generates code and natural language based on the context of an issue or comment within a repository, which can potentially expose sensitive information or vulnerabilities if not used carefully. You should be careful to review all outputs generated by the agent thoroughly prior to merging. + +### Inaccurate code + +{% data variables.copilot.copilot_cloud_agent %} may generate code that appears to be valid but may not actually be semantically or syntactically correct or may not accurately reflect the intent of the developer. + +To mitigate the risk of inaccurate code, you should carefully review and test the generated code, particularly when dealing with critical or sensitive applications. You should also ensure that the generated code adheres to best practices and design patterns and fits within the overall architecture and style of the codebase. + +### Public code + +{% data variables.copilot.copilot_cloud_agent %} may generate code that is a match or near match of publicly available code, even if the "Suggestions matching public code" policy is set to "Block." See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-suggestions-matching-public-code). + +If this happens, {% data variables.product.prodname_copilot_short %} will show matches in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). + +### Legal and regulatory considerations + +Users need to evaluate potential specific legal and regulatory obligations when using any AI services and solutions, which may not be appropriate for use in every industry or scenario. Additionally, AI services or solutions are not designed for and may not be used in ways prohibited in applicable terms of service and relevant codes of conduct. + +## External integrations with Copilot cloud agent + +{% data variables.copilot.copilot_cloud_agent %} can receive information and context from external applications like Microsoft Teams, Linear, Slack, and Jira. When you mention the external application in these platforms or assign a task to the cloud agent via a connected workflow, it can access relevant context, such as conversation history in threads where it’s mentioned or issue details and activity timelines. This allows the cloud agent to better understand your development needs and provide more relevant assistance. These integrations enable teams to collaborate on code, assign tasks, and track progress directly within their existing workflows, without switching tools. Ensure your team understands what information is being shared and configure integrations according to your organization’s privacy and data handling policies. + +For more information about external integrations with {% data variables.copilot.copilot_cloud_agent %}, see: +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-linear) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack) diff --git a/content/copilot/responsible-use/copilot-coding-agent.md b/content/copilot/responsible-use/copilot-coding-agent.md deleted file mode 100644 index 917fe5445e9d..000000000000 --- a/content/copilot/responsible-use/copilot-coding-agent.md +++ /dev/null @@ -1,190 +0,0 @@ ---- -title: Responsible use of GitHub Copilot cloud agent on GitHub.com -shortTitle: Copilot cloud agent -allowTitleToDifferFromFilename: true -intro: 'Learn how to use {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %} responsibly by understanding its purposes, capabilities, and limitations.' -versions: - feature: copilot -redirect_from: - - /early-access/copilot/coding-agent/responsible-use-of-copilot-coding-agent - - /copilot/responsible-use-of-github-copilot-features/responsible-use-of-copilot-coding-agent-on-githubcom - - /copilot/responsible-use-of-github-copilot-features/copilot-coding-agent -contentType: rai -category: - - Responsible use ---- - -## About {% data variables.copilot.copilot_cloud_agent_tmp %} on {% data variables.product.prodname_dotcom_the_website %} - -{% data variables.copilot.copilot_coding_agent %} is an autonomous and asynchronous software development agent integrated into {% data variables.product.github %}. The agent can pick up a task from an issue or from {% data variables.copilot.copilot_chat_short %}, research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate with the agent, and create a pull request when you're ready. - -{% data variables.copilot.copilot_coding_agent %} can generate tailored changes based on your description and configurations, including tasks like researching a codebase, planning an approach, bug fixes, implementing incremental new features, prototyping, documentation, and codebase maintenance. The agent can iterate with you based on your feedback, whether that's through follow-up prompts during a session or comments on a pull request. - -While working on your task, the agent has access to its own ephemeral development environment where it can make changes to your code, execute automated tests, and run linters. - -The agent has been evaluated across a variety of programming languages, with English as the primary supported language. - -The agent works by using a combination of natural language processing and machine learning to understand your task and make changes in a codebase to complete your task. This process can be broken down into a number of steps. - -> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_coding_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. - -### Prompt processing - -The task provided to {% data variables.product.prodname_copilot_short %} through an issue, pull request comment or {% data variables.copilot.copilot_chat_short %} message is combined with other relevant, contextual information to form a prompt. That prompt is sent to a large language model for processing. Inputs can take the form of plain natural language, code snippets, or images. - -### Language model analysis - -The prompt is then passed through a large language model, which is a neural network that has been trained on a large body of data. The language model analyzes the input prompt to help the agent reason on the task and leverage necessary tools. - -### Response generation - -The language model generates a response based on its analysis of the prompt. This response can take the form of natural language suggestions and code suggestions. - -### Output formatting - -Once the agent completes its first run, it will provide a summary of the changes it made. If a pull request was created, the agent updates the pull request description. The agent may include supplemental information about resources it could not access and provide suggestions on the steps to resolve. - -You may provide feedback to the agent by sending follow-up prompts during a session, commenting within a pull request, or explicitly mentioning the agent (`@copilot`) on the pull request. The agent will then resubmit that feedback to the language model for further analysis. Once the agent completes changes based on feedback, it will respond with updated changes. - -Copilot is intended to provide you with the most relevant solution for task resolution. However, it may not always provide the answer you are looking for. You are responsible for reviewing and validating responses generated by {% data variables.product.prodname_copilot_short %} to ensure they are accurate and appropriate. - -Additionally, as part of our product development process, {% data variables.product.github %} undertakes red teaming (testing) to understand and improve the safety of the agent. - -For information on how to improve performance, see [Improving performance for {% data variables.copilot.copilot_coding_agent %}](#improving-performance-for-copilot-coding-agent) below. - -## Use cases for {% data variables.copilot.copilot_coding_agent %} - -You can delegate a task to {% data variables.product.prodname_copilot_short %} in a variety of scenarios, including, but not limited to: - -* **Deep research:** Understanding how a codebase works, identifying where to make a change, or confirming assumptions. -* **Planning:** Creating an implementation plan before making changes. -* **Codebase maintenance:** Tackling security-related fixes, dependency upgrades, and targeted refactoring. -* **Documentation:** Updating and creating new documentation. -* **Feature development:** Implementing incremental feature requests. -* **Improving test coverage:** Developing additional test suites for quality management. -* **Prototyping new projects:** Greenfielding new concepts. - -## Improving performance for {% data variables.copilot.copilot_coding_agent %} - -{% data variables.copilot.copilot_coding_agent %} can support a wide range of tasks. To enhance the performance and address some of the limitations of the agent, there are various measures that you can adopt. - -For more information about limitations, see [Limitations of {% data variables.copilot.copilot_coding_agent %}](#limitations-of-copilot-coding-agent) (below). - -### Ensure your tasks are well-scoped - -{% data variables.copilot.copilot_coding_agent %} leverages your prompt as key context when working on a task. The more clear and well-scoped the prompt you assign to the agent, the better the results you will get. An ideal task includes: - -* A clear description of the problem to be solved or the work required. -* Complete acceptance criteria on what a good solution looks like (for example, should there be unit tests?). -* Hints or pointers on what files need to be changed. - -### Customize your experience with additional context - -{% data variables.copilot.copilot_coding_agent %} leverages your prompt, comments and the repository’s code as context when generating suggested changes. The agent also has access to semantic code search, which helps it find relevant code based on meaning rather than just exact text matches, allowing it to complete tasks faster. - -To enhance {% data variables.product.prodname_copilot_short %}’s performance, consider implementing custom {% data variables.product.prodname_copilot_short %} instructions to help the agent better understand your project and how to build, test and validate its changes. For more information, see "Add custom instructions to your repository" in [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices#adding-custom-instructions-to-your-repository). - -For information about other customizations for {% data variables.copilot.copilot_coding_agent %}, see: - -* [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) - -### Use {% data variables.copilot.copilot_coding_agent %} as a tool, not a replacement - -While {% data variables.copilot.copilot_coding_agent %} can be a powerful tool for generating code and documentation, it is important to use it as a tool, rather than a replacement for human programming. You should always review and test the content generated by the agent to ensure that it meets your requirements and is free of errors or security concerns prior to merging. - -### Use secure coding and code review practices - -Although {% data variables.copilot.copilot_coding_agent %} can generate syntactically correct code, it may not always be secure. You should always follow best practices for secure coding, such as avoiding hard-coded passwords or SQL injection vulnerabilities, as well as following code review best practices, to address the agent’s limitations. You should always take the same precautions as you would with any code you write that uses material you did not independently originate, including precautions to ensure its suitability. These include rigorous testing, IP scanning, and checking for security vulnerabilities. - -### Provide feedback - -If you encounter any issues or limitations with {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}, we recommend that you provide feedback by clicking the thumbs down icon below each agent response. This can help the developers to improve the tool and address any concerns or limitations. Additionally, you can provide feedback in the community discussion forum. - -### Stay up to date - -{% data variables.copilot.copilot_coding_agent %} is a new technology and is likely to evolve over time. You should stay up to date with any new security risks or best practices that may emerge. - -## Security measures for {% data variables.copilot.copilot_coding_agent %} - -By design, {% data variables.copilot.copilot_coding_agent %} is built with several mitigations to help ensure your data and codebase is secure. Although mitigations exist, be sure to continue implementing security best practices while understanding the agent’s limitations and how they may impact your code. - -### Avoiding privileged escalation - -{% data variables.copilot.copilot_coding_agent %} will only respond to interactions (for example, assigning the agent or commenting) from users with repository write access. - -{% data variables.product.prodname_actions %} workflows triggered in response to pull requests raised by {% data variables.copilot.copilot_coding_agent %} require approval from a user with repository write access before they will run. - -The agent filters hidden characters, that are not displayed on {% data variables.product.prodname_dotcom_the_website %}, which might otherwise allow users to hide harmful instructions in comments or issue body contents. This protects against risks like jailbreaks. - -### Constraining Copilot’s permissions - -Copilot only has access to the repository where it is working, and cannot access other repositories. - -Its permissions are limited, allowing it to push code and read other resources. Built-in protections mean that Copilot can only push to a single branch: the existing pull request branch when triggered via `@copilot`, or otherwise to a new `copilot/` branch. This means that Copilot cannot push directly to your default branch (for example, `main`). - -{% data variables.copilot.copilot_coding_agent %} does not have access to Actions organization or repository secrets or variables during runtime. Only secrets and variables specifically added to the `copilot` environment are passed to the agent. - -### Ensuring traceability - -{% data variables.copilot.copilot_coding_agent %}'s commits are authored by {% data variables.product.prodname_copilot_short %}, with the human who started the task marked as the co-author. This makes it easier to identify code generated by the agent and who initiated the task. - -{% data variables.copilot.copilot_coding_agent %}'s commits are signed, so they appear as "Verified" on {% data variables.product.github %}. This provides confidence that the commits were made by {% data variables.copilot.copilot_coding_agent %} and have not been altered. - -Each commit message includes a link to the agent session logs. This gives you a permanent link from any agent-authored commit to the full session logs, so you can understand why {% data variables.product.prodname_copilot_short %} made a change during code review or trace it later for auditing purposes. - -### Preventing data exfiltration - -By default, {% data variables.copilot.copilot_coding_agent %} has a firewall enabled to prevent exfiltration of code or other sensitive data, either accidentally or due to malicious user input. - -For more information, see [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent). - -### Preventing security vulnerabilities in generated code - -During the code generation process, {% data variables.copilot.copilot_coding_agent %} automatically analyzes the newly generated code for security vulnerabilities and attempts to resolve them, to prevent any discovered issues from being introduced. Analysis is performed using the following tools and processes: - -* **{% data variables.product.prodname_codeql %}**: will run to identify potential vulnerabilities and errors. -* **{% data variables.product.prodname_secret_scanning_caps %}**: will scan for known types of secrets, to ensure secrets aren't introduced in the response. -* **Dependency analysis**: dependencies referenced by new code will be checked for known vulnerabilities in the {% data variables.product.prodname_advisory_database %}. - -## Limitations of {% data variables.copilot.copilot_coding_agent %} - -Depending on factors such as your codebase and input data, you may experience different levels of performance when using {% data variables.copilot.copilot_coding_agent %}. The following information is designed to help you understand system limitations and key concepts about performance as they apply to {% data variables.copilot.copilot_coding_agent %}. - -### Limited scope - -The language model used by {% data variables.copilot.copilot_coding_agent %} has been trained on a large body of code but still has a limited scope and may not be able to handle certain code structures or obscure programming languages. For each language, the quality of suggestions you receive may depend on the volume and diversity of training data for that language. - -### Potential biases - -The language model used by {% data variables.copilot.copilot_coding_agent %}’s training data and context gathered by the large language model may contain biases and errors that can be perpetuated by the tool. Additionally, {% data variables.copilot.copilot_coding_agent %} may be biased towards certain programming languages or coding styles, which can lead to suboptimal or incomplete suggestions. - -### Security risks - -{% data variables.copilot.copilot_coding_agent %} generates code and natural language based on the context of an issue or comment within a repository, which can potentially expose sensitive information or vulnerabilities if not used carefully. You should be careful to review all outputs generated by the agent thoroughly prior to merging. - -### Inaccurate code - -{% data variables.copilot.copilot_coding_agent %} may generate code that appears to be valid but may not actually be semantically or syntactically correct or may not accurately reflect the intent of the developer. - -To mitigate the risk of inaccurate code, you should carefully review and test the generated code, particularly when dealing with critical or sensitive applications. You should also ensure that the generated code adheres to best practices and design patterns and fits within the overall architecture and style of the codebase. - -### Public code - -{% data variables.copilot.copilot_coding_agent %} may generate code that is a match or near match of publicly available code, even if the "Suggestions matching public code" policy is set to "Block." See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-suggestions-matching-public-code). - -If this happens, {% data variables.product.prodname_copilot_short %} will show matches in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). - -### Legal and regulatory considerations - -Users need to evaluate potential specific legal and regulatory obligations when using any AI services and solutions, which may not be appropriate for use in every industry or scenario. Additionally, AI services or solutions are not designed for and may not be used in ways prohibited in applicable terms of service and relevant codes of conduct. - -## External integrations with Copilot cloud agent - -{% data variables.copilot.copilot_coding_agent %} can receive information and context from external applications like Microsoft Teams, Linear, Slack, and Jira. When you mention the external application in these platforms or assign a task to the cloud agent via a connected workflow, it can access relevant context, such as conversation history in threads where it’s mentioned or issue details and activity timelines. This allows the cloud agent to better understand your development needs and provide more relevant assistance. These integrations enable teams to collaborate on code, assign tasks, and track progress directly within their existing workflows, without switching tools. Ensure your team understands what information is being shared and configure integrations according to your organization’s privacy and data handling policies. - -For more information about external integrations with {% data variables.copilot.copilot_coding_agent %}, see: -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack) diff --git a/content/copilot/responsible-use/index.md b/content/copilot/responsible-use/index.md index cd0f1278b2b5..eae83ae5d035 100644 --- a/content/copilot/responsible-use/index.md +++ b/content/copilot/responsible-use/index.md @@ -15,7 +15,7 @@ children: - /pull-request-summaries - /copilot-commit-message-generation - /code-review - - /copilot-coding-agent + - /copilot-cloud-agent - /spark - /copilot-spaces redirect_from: diff --git a/content/copilot/tutorials/coding-agent/get-the-best-results.md b/content/copilot/tutorials/cloud-agent/get-the-best-results.md similarity index 83% rename from content/copilot/tutorials/coding-agent/get-the-best-results.md rename to content/copilot/tutorials/cloud-agent/get-the-best-results.md index dd60c066ee33..e43ef133027d 100644 --- a/content/copilot/tutorials/coding-agent/get-the-best-results.md +++ b/content/copilot/tutorials/cloud-agent/get-the-best-results.md @@ -2,11 +2,12 @@ title: Best practices for using GitHub Copilot to work on tasks shortTitle: Get the best results allowTitleToDifferFromFilename: true -intro: 'Learn how to get the best results from {% data variables.copilot.copilot_coding_agent %}.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
            Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +intro: 'Learn how to get the best results from {% data variables.copilot.copilot_cloud_agent %}.' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
            Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/tutorials/coding-agent/get-the-best-results - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/best-practices-for-using-copilot-to-work-on-tasks - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/best-practices-for-using-copilot-to-work-on-issues - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/best-practices-for-using-copilot-to-work-on-tasks @@ -21,7 +22,7 @@ category: --- > [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Making sure your issues are well-scoped @@ -32,7 +33,7 @@ category: * Directions about which files need to be changed. > [!TIP] -> {% data variables.copilot.copilot_coding_agent %} has the ability to search your codebase, including semantic code search, which helps it find relevant code based on meaning rather than just exact text matches. Even if you don't specify exact file paths in a task, the agent can often discover the right code on its own. +> {% data variables.copilot.copilot_cloud_agent %} has the ability to search your codebase, including semantic code search, which helps it find relevant code based on meaning rather than just exact text matches. Even if you don't specify exact file paths in a task, the agent can often discover the right code on its own. If you pass a task to {% data variables.product.prodname_copilot_short %} by assigning an issue, it's useful to think of the issue you assign to {% data variables.product.prodname_copilot_short %} as a prompt. Consider whether the issue description is likely to work as an AI prompt, and will enable {% data variables.product.prodname_copilot_short %} to make the required code changes. @@ -62,7 +63,7 @@ Issues that you may choose to work on yourself, rather than assigning to {% data ## Researching, planning, and iterating before opening a pull request -Rather than asking {% data variables.product.prodname_copilot_short %} to open a pull request right away, you can use {% data variables.copilot.copilot_coding_agent %} to research a repository, create an implementation plan, and make iterative code changes on a branch first. This lets you review the diff and refine the work before deciding to open a pull request. +Rather than asking {% data variables.product.prodname_copilot_short %} to open a pull request right away, you can use {% data variables.copilot.copilot_cloud_agent %} to research a repository, create an implementation plan, and make iterative code changes on a branch first. This lets you review the diff and refine the work before deciding to open a pull request. This workflow is useful when you want to: @@ -70,7 +71,7 @@ This workflow is useful when you want to: * Agree on an approach with {% data variables.product.prodname_copilot_short %} before any code is written. * Review and iterate on changes before opening a pull request for review. -See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate). +See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate). ## Using comments to iterate on a pull request @@ -78,13 +79,13 @@ Working with {% data variables.product.prodname_copilot_short %} on a pull reque Additionally, you can: * Mention `@copilot` in comments on the pull request, explaining what you think is incorrect, or could be improved, and {% data variables.product.prodname_copilot_short %} will push commits directly to the pull request's branch. -* Ask {% data variables.product.prodname_copilot_short %} to resolve merge conflicts on the pull request. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr#resolving-merge-conflicts). +* Ask {% data variables.product.prodname_copilot_short %} to resolve merge conflicts on the pull request. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/make-changes-to-an-existing-pr#resolving-merge-conflicts). * Work on the feature branch yourself and push changes to the pull request. After a user with write access mentions `@copilot` in a comment, {% data variables.product.prodname_copilot_short %} will start to make any required changes, and will update the pull request when it's done. Because {% data variables.product.prodname_copilot_short %} starts looking at comments as soon as they are submitted, if you are likely to make multiple comments on a pull request it's best to batch them by clicking **Start a review**, rather than clicking **Add single comment**. You can then submit all of your comments at once, triggering {% data variables.product.prodname_copilot_short %} to work on your entire review, rather than working on individual comments separately. > [!NOTE] -> {% data reusables.copilot.coding-agent.write-access-required %} +> {% data reusables.copilot.cloud-agent.write-access-required %} As {% data variables.product.prodname_copilot_short %} makes changes to the pull request, it will keep the title and body up to date so they reflect the current changes. @@ -94,7 +95,7 @@ By adding custom instructions to your repository, you can guide {% data variable If {% data variables.product.prodname_copilot_short %} is able to build, test and validate its changes in its own development environment, it is more likely to produce good pull requests which can be merged quickly. -{% data variables.copilot.copilot_coding_agent %} supports a number of different types of custom instructions files: +{% data variables.copilot.copilot_cloud_agent %} supports a number of different types of custom instructions files: * `/.github/copilot-instructions.md` * `/.github/instructions/**/*.instructions.md` @@ -108,7 +109,7 @@ For more information, see [AUTOTITLE](/copilot/customizing-copilot/adding-reposi To add instructions that apply to all tasks assigned to {% data variables.product.prodname_copilot_short %} in your repository, create a `.github/copilot-instructions.md` file in the root of your repository. This file should contain information about your project, such as how to build and test it, and any coding standards or conventions you want {% data variables.product.prodname_copilot_short %} to follow. Note that the instructions will also apply to {% data variables.copilot.copilot_chat_short %} and {% data variables.copilot.copilot_code-review_short %}. -The first time you ask {% data variables.product.prodname_copilot_short %} to create a pull request in a given repository, {% data variables.product.prodname_copilot_short %} will leave a comment with a link to automatically generate custom instructions. You can also ask {% data variables.product.prodname_copilot_short %} to generate custom instructions for you at any time using our recommended prompt. See [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions?tool=webui#asking-copilot-coding-agent-to-generate-a-copilot-instructionsmd-file). +The first time you ask {% data variables.product.prodname_copilot_short %} to create a pull request in a given repository, {% data variables.product.prodname_copilot_short %} will leave a comment with a link to automatically generate custom instructions. You can also ask {% data variables.product.prodname_copilot_short %} to generate custom instructions for you at any time using our recommended prompt. See [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions?tool=webui#asking-copilot-cloud-agent-to-generate-a-copilot-instructionsmd-file). You can also choose to write your own custom instructions at any time. Here is an example of an effective `copilot-instructions.md` file: @@ -175,11 +176,11 @@ When writing Playwright tests, please follow these guidelines to ensure consiste ## Organization-wide custom instructions -{% data variables.copilot.copilot_coding_agent %} leverages your organization's custom instructions as part of its work. {% data variables.copilot.copilot_coding_agent %} first prioritizes repository-wide custom instructions. For more information on how to configure organization custom instructions, see [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-organization-instructions). +{% data variables.copilot.copilot_cloud_agent %} leverages your organization's custom instructions as part of its work. {% data variables.copilot.copilot_cloud_agent %} first prioritizes repository-wide custom instructions. For more information on how to configure organization custom instructions, see [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-organization-instructions). ## Using the Model Context Protocol (MCP) -You can extend the capabilities of {% data variables.copilot.copilot_coding_agent %} by using MCP. This allows {% data variables.copilot.copilot_coding_agent %} to use tools provided by local and remote MCP servers. The {% data variables.product.github %} MCP server and [Playwright MCP server](https://github.com/microsoft/playwright-mcp) are enabled by default. For more information, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). +You can extend the capabilities of {% data variables.copilot.copilot_cloud_agent %} by using MCP. This allows {% data variables.copilot.copilot_cloud_agent %} to use tools provided by local and remote MCP servers. The {% data variables.product.github %} MCP server and [Playwright MCP server](https://github.com/microsoft/playwright-mcp) are enabled by default. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). ## Creating {% data variables.copilot.custom_agents_short %} @@ -191,9 +192,9 @@ Here are some examples of {% data variables.copilot.custom_agents_short %} you c By default, {% data variables.copilot.custom_agents_short %} inherit any MCP server tools that have been configured in the repository, but you can also configure {% data variables.copilot.custom_agents_short %} to only have access to specific tools. -You can use {% data variables.copilot.custom_agents_short %} anywhere you use {% data variables.copilot.copilot_coding_agent %}, including when assigning an issue or prompting with a task. +You can use {% data variables.copilot.custom_agents_short %} anywhere you use {% data variables.copilot.copilot_cloud_agent %}, including when assigning an issue or prompting with a task. -For more information on creating and configuring {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +For more information on creating and configuring {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). ## Pre-installing dependencies in {% data variables.product.prodname_copilot %}'s environment @@ -203,4 +204,4 @@ If {% data variables.product.prodname_copilot_short %} is able to build, test an To do that, it will need your project's dependencies. {% data variables.product.prodname_copilot_short %} can discover and install these dependencies itself via a process of trial and error - but this can be slow and unreliable, given the non-deterministic nature of large language models (LLMs). -You can configure a `copilot-setup-steps.yml` file to pre-install these dependencies before the agent starts working so it can hit the ground running. For more information, see [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent#preinstalling-tools-or-dependencies-in-copilots-environment). +You can configure a `copilot-setup-steps.yml` file to pre-install these dependencies before the agent starts working so it can hit the ground running. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment#preinstalling-tools-or-dependencies-in-copilots-environment). diff --git a/content/copilot/tutorials/coding-agent/improve-a-project.md b/content/copilot/tutorials/cloud-agent/improve-a-project.md similarity index 82% rename from content/copilot/tutorials/coding-agent/improve-a-project.md rename to content/copilot/tutorials/cloud-agent/improve-a-project.md index d533ba307e63..c7570b8d9ae2 100644 --- a/content/copilot/tutorials/coding-agent/improve-a-project.md +++ b/content/copilot/tutorials/cloud-agent/improve-a-project.md @@ -2,8 +2,8 @@ title: Using GitHub Copilot cloud agent to improve a project shortTitle: Improve a project allowTitleToDifferFromFilename: true -intro: 'Find and fix problems in a project with {% data variables.copilot.copilot_coding_agent %}.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
            Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +intro: 'Find and fix problems in a project with {% data variables.copilot.copilot_cloud_agent %}.' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
            Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: tutorials @@ -11,21 +11,23 @@ category: - Author and optimize with Copilot - Improve quality and maintainability - Burn down tech debt +redirect_from: + - /copilot/tutorials/coding-agent/improve-a-project --- > [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Introduction Modern development often starts with good intentions: a quick script, a prototype, maybe an action to automate one small thing. But as projects evolve, those early efforts can become brittle. -This tutorial shows how you can use {% data variables.copilot.copilot_coding_agent %} to improve a mature project, without slowing down your momentum. +This tutorial shows how you can use {% data variables.copilot.copilot_cloud_agent %} to improve a mature project, without slowing down your momentum. In the following sections we'll: * Make sure that the project contains custom instructions that {% data variables.product.prodname_copilot_short %} can use to tailor its responses to your project. -* Make sure there's an environment setup file for {% data variables.copilot.copilot_coding_agent %}, so that it can get started on tasks more quickly by pre-installing your project’s dependencies. +* Make sure there's an environment setup file for {% data variables.copilot.copilot_cloud_agent %}, so that it can get started on tasks more quickly by pre-installing your project’s dependencies. * Get {% data variables.product.prodname_copilot_short %} to look for improvements that could be made to the code, and then create issues for that work. * Delegate the coding work to {% data variables.product.prodname_copilot_short %} by assigning it to an issue. @@ -42,8 +44,8 @@ In the following sections we'll: For more information, see the section "Writing effective custom instructions" in [AUTOTITLE](/copilot/concepts/prompting/response-customization?tool=webui#writing-effective-custom-instructions), and the library of examples at [AUTOTITLE](/copilot/tutorials/customization-library/custom-instructions). -1. If there are no custom instructions files in the repository, use {% data variables.copilot.copilot_coding_agent %} to create a `.github/copilot-instructions.md` file, by following the instructions in [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions#asking-copilot-coding-agent-to-generate-a-copilot-instructionsmd-file). -1. Review the pull request that {% data variables.copilot.copilot_coding_agent %} creates. Check that the `.github/copilot-instructions.md` file provides {% data variables.product.prodname_copilot_short %} with all of the information it needs to know to work on this project. +1. If there are no custom instructions files in the repository, use {% data variables.copilot.copilot_cloud_agent %} to create a `.github/copilot-instructions.md` file, by following the instructions in [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions#asking-copilot-cloud-agent-to-generate-a-copilot-instructionsmd-file). +1. Review the pull request that {% data variables.copilot.copilot_cloud_agent %} creates. Check that the `.github/copilot-instructions.md` file provides {% data variables.product.prodname_copilot_short %} with all of the information it needs to know to work on this project. The file should include: @@ -57,9 +59,9 @@ In the following sections we'll: ## 2. Check for an environment setup file -A `copilot-setup-steps.yml` {% data variables.product.prodname_actions %} workflow file can help {% data variables.copilot.copilot_coding_agent %} to get started on tasks more quickly by pre-installing the dependencies that are used by the project. +A `copilot-setup-steps.yml` {% data variables.product.prodname_actions %} workflow file can help {% data variables.copilot.copilot_cloud_agent %} to get started on tasks more quickly by pre-installing the dependencies that are used by the project. -Creating this file is optional but is a good idea if you use {% data variables.copilot.copilot_coding_agent %} regularly in the repository. +Creating this file is optional but is a good idea if you use {% data variables.copilot.copilot_cloud_agent %} regularly in the repository. 1. In your repository on {% data variables.product.github %}, check that the following file exists: @@ -71,13 +73,13 @@ Creating this file is optional but is a good idea if you use {% data variables.c > A quick way to do this is to copy the above path, go to the main page of your repository and paste the path into the "Go to file" field. 1. If the file exists, open it and check that the steps in the workflow install the correct dependencies for your project. After verifying this, you can skip the remaining steps in this section. -1. If you don't already have a `copilot-setup-steps.yml` file, use the following steps to get {% data variables.copilot.copilot_coding_agent %} to create it for you. +1. If you don't already have a `copilot-setup-steps.yml` file, use the following steps to get {% data variables.copilot.copilot_cloud_agent %} to create it for you. 1. At the top of any page of your repository on the {% data variables.product.github %} website, click **{% octicon "agent" aria-label="Open agents panel" %}**. 1. Copy and paste the following prompt into the Agents dialog: ```text copy - Analyze this repository to understand the dependencies that need to be installed on the development environment to work on the code in this repository. Using this information, and the details about the `copilot-setup-steps.yml` file that are given in https://docs.github.com/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment, add a `.github/workflows/copilot-setup-steps.yml` to this repository. This Actions workflow file should install, in the development environment for {% data variables.copilot.copilot_coding_agent %}, all of the dependencies necessary to work on the code in this repository. Make sure that the workflow job is named `copilot-setup-steps`. + Analyze this repository to understand the dependencies that need to be installed on the development environment to work on the code in this repository. Using this information, and the details about the `copilot-setup-steps.yml` file that are given in https://docs.github.com/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment, add a `.github/workflows/copilot-setup-steps.yml` to this repository. This Actions workflow file should install, in the development environment for {% data variables.copilot.copilot_cloud_agent %}, all of the dependencies necessary to work on the code in this repository. Make sure that the workflow job is named `copilot-setup-steps`. ``` @@ -192,10 +194,10 @@ Now that you have created issues, the next step is to delegate an issue to {% da ## Conclusion -{% data variables.copilot.copilot_coding_agent %} can help you to improve the quality of code in any project, but it's particularly useful for reducing technical debt in a project that has grown organically over many months or years. By using {% data variables.copilot.copilot_coding_agent %}, you can make improvements that you might have struggled to find time for without an AI assistant working on your behalf. +{% data variables.copilot.copilot_cloud_agent %} can help you to improve the quality of code in any project, but it's particularly useful for reducing technical debt in a project that has grown organically over many months or years. By using {% data variables.copilot.copilot_cloud_agent %}, you can make improvements that you might have struggled to find time for without an AI assistant working on your behalf. {% data variables.product.prodname_copilot_short %} doesn't replace you as a developer—you still need to be involved at every step of this process, specifying what you want {% data variables.product.prodname_copilot_short %} to do and carefully reviewing the code it changes or adds—but it does allow you to implement improvements at the same time as you work on other important tasks. ## Next steps -Read this case study on the {% data variables.product.github %} blog: [How the {% data variables.product.github %} billing team uses the {% data variables.copilot.copilot_coding_agent_short %} in {% data variables.product.prodname_copilot %} to continuously burn down technical debt](https://github.blog/ai-and-ml/github-copilot/how-the-github-billing-team-uses-the-coding-agent-in-github-copilot-to-continuously-burn-down-technical-debt/). +Read this case study on the {% data variables.product.github %} blog: [How the {% data variables.product.github %} billing team uses the {% data variables.copilot.copilot_cloud_agent_short %} in {% data variables.product.prodname_copilot %} to continuously burn down technical debt](https://github.blog/ai-and-ml/github-copilot/how-the-github-billing-team-uses-the-cloud-agent-in-github-copilot-to-continuously-burn-down-technical-debt/). diff --git a/content/copilot/tutorials/coding-agent/index.md b/content/copilot/tutorials/cloud-agent/index.md similarity index 72% rename from content/copilot/tutorials/coding-agent/index.md rename to content/copilot/tutorials/cloud-agent/index.md index 39be1b8871f7..4822727d72c7 100644 --- a/content/copilot/tutorials/coding-agent/index.md +++ b/content/copilot/tutorials/cloud-agent/index.md @@ -2,12 +2,14 @@ title: GitHub Copilot cloud agent shortTitle: Cloud agent allowTitleToDifferFromFilename: true -intro: 'Find out how to get great results from {% data variables.copilot.copilot_coding_agent %}.' +intro: 'Find out how to get great results from {% data variables.copilot.copilot_cloud_agent %}.' versions: feature: copilot children: - /get-the-best-results - - /pilot-coding-agent + - /pilot-cloud-agent - /improve-a-project contentType: tutorials +redirect_from: + - /copilot/tutorials/coding-agent --- diff --git a/content/copilot/tutorials/coding-agent/pilot-coding-agent.md b/content/copilot/tutorials/cloud-agent/pilot-cloud-agent.md similarity index 61% rename from content/copilot/tutorials/coding-agent/pilot-coding-agent.md rename to content/copilot/tutorials/cloud-agent/pilot-cloud-agent.md index a9addd16cf84..67797d2e232b 100644 --- a/content/copilot/tutorials/coding-agent/pilot-coding-agent.md +++ b/content/copilot/tutorials/cloud-agent/pilot-cloud-agent.md @@ -1,12 +1,13 @@ --- title: 'Piloting GitHub Copilot cloud agent in your organization' -shortTitle: 'Pilot {% data variables.copilot.copilot_coding_agent_short %}' -intro: 'Follow best practices to enable {% data variables.copilot.copilot_coding_agent %} in your organization.' +shortTitle: 'Pilot {% data variables.copilot.copilot_cloud_agent_short %}' +intro: 'Follow best practices to enable {% data variables.copilot.copilot_cloud_agent %} in your organization.' allowTitleToDifferFromFilename: true versions: feature: copilot -product: '{% data reusables.gated-features.copilot-coding-agent %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}' redirect_from: + - /copilot/tutorials/coding-agent/pilot-coding-agent - /copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org - /copilot/tutorials/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org - /copilot/tutorials/pilot-copilot-coding-agent @@ -15,30 +16,30 @@ category: - Automate simple user stories - Manage Copilot for a team --- - + -{% data variables.copilot.copilot_coding_agent %} is an autonomous, AI-powered agent that completes software development tasks on {% data variables.product.github %}. Adopting {% data variables.copilot.copilot_coding_agent %} in your organization frees your engineering teams to spend more time thinking strategically and less time making routine fixes and maintenance updates in a codebase. +{% data variables.copilot.copilot_cloud_agent %} is an autonomous, AI-powered agent that completes software development tasks on {% data variables.product.github %}. Adopting {% data variables.copilot.copilot_cloud_agent %} in your organization frees your engineering teams to spend more time thinking strategically and less time making routine fixes and maintenance updates in a codebase. -{% data variables.copilot.copilot_coding_agent %}: +{% data variables.copilot.copilot_cloud_agent %}: * **Joins your team**: Developers can delegate work to {% data variables.product.prodname_copilot_short %} unlike IDE-based agents that require synchronous pairing sessions. {% data variables.product.prodname_copilot_short %} opens draft pull requests for team members to review and iterates based on feedback, as a developer would. -* **Reduces context switching**: Developers working in JetBrains IDEs, {% data variables.product.prodname_vscode_shortname %}, {% data variables.product.prodname_vs %}, or {% data variables.product.prodname_dotcom_the_website %} can ask {% data variables.copilot.copilot_coding_agent %} to create a pull request to complete small tasks without stopping what they are currently doing. +* **Reduces context switching**: Developers working in JetBrains IDEs, {% data variables.product.prodname_vscode_shortname %}, {% data variables.product.prodname_vs %}, or {% data variables.product.prodname_dotcom_the_website %} can ask {% data variables.copilot.copilot_cloud_agent %} to create a pull request to complete small tasks without stopping what they are currently doing. * **Executes tasks in parallel**: {% data variables.product.prodname_copilot_short %} can work on multiple issues simultaneously, handling tasks in the background while your team focuses on other priorities. ## 1. Evaluate -Before enabling {% data variables.copilot.copilot_coding_agent %} for members, understand how {% data variables.copilot.copilot_coding_agent %} will fit into your organization. This will help you evaluate whether {% data variables.copilot.copilot_coding_agent %} is suitable for your needs and plan communications and training sessions for developers. +Before enabling {% data variables.copilot.copilot_cloud_agent %} for members, understand how {% data variables.copilot.copilot_cloud_agent %} will fit into your organization. This will help you evaluate whether {% data variables.copilot.copilot_cloud_agent %} is suitable for your needs and plan communications and training sessions for developers. -1. Learn about {% data variables.copilot.copilot_coding_agent %}, including the costs, built-in security features, and how it differs from other AI tools your developers may be used to. See [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). -1. Learn about the tasks that {% data variables.copilot.copilot_coding_agent %} is best suited for. These are generally well-defined and scoped issues, such as increasing test coverage, fixing bugs or flaky tests, or updating config files or documentation. See [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices). -1. Consider how {% data variables.copilot.copilot_coding_agent %} fits alongside other tools in your organization's workflows. For an example scenario that walks through how to use {% data variables.copilot.copilot_coding_agent %} alongside other AI features on {% data variables.product.github %}, see [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/integrating-agentic-ai). +1. Learn about {% data variables.copilot.copilot_cloud_agent %}, including the costs, built-in security features, and how it differs from other AI tools your developers may be used to. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). +1. Learn about the tasks that {% data variables.copilot.copilot_cloud_agent %} is best suited for. These are generally well-defined and scoped issues, such as increasing test coverage, fixing bugs or flaky tests, or updating config files or documentation. See [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results). +1. Consider how {% data variables.copilot.copilot_cloud_agent %} fits alongside other tools in your organization's workflows. For an example scenario that walks through how to use {% data variables.copilot.copilot_cloud_agent %} alongside other AI features on {% data variables.product.github %}, see [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/integrating-agentic-ai). ## 2. Secure -All AI models are trained to meet a request, even if they don't have all the information needed to provide a good answer, and this can lead them to make mistakes. By following best practices, you can build on the default security features of {% data variables.copilot.copilot_coding_agent %}. +All AI models are trained to meet a request, even if they don't have all the information needed to provide a good answer, and this can lead them to make mistakes. By following best practices, you can build on the default security features of {% data variables.copilot.copilot_cloud_agent %}. 1. Give {% data variables.product.prodname_copilot_short %} the information it needs to work successfully in a repository using a `copilot-instructions.md` file. See [AUTOTITLE](/copilot/customizing-copilot/adding-repository-custom-instructions-for-github-copilot). -1. Set up the {% data variables.product.prodname_copilot_short %} development environment for a repository with access to the tools and package repositories approved by the organization using a `copilot-setup-steps.yml` file and local MCP servers. See [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) and [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). +1. Set up the {% data variables.product.prodname_copilot_short %} development environment for a repository with access to the tools and package repositories approved by the organization using a `copilot-setup-steps.yml` file and local MCP servers. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) and [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). 1. Follow best practices for storing secrets securely. See [AUTOTITLE](/actions/security-for-github-actions/security-guides/using-secrets-in-github-actions). 1. Enable code security features to further lower the risk of leaking secrets and introducing vulnerabilities into the code. See [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/creating-a-custom-security-configuration). 1. Configure your branch rulesets to ensure that all pull requests raised by {% data variables.product.prodname_copilot_short %} are approved by a second user with write permissions (a sub-option of "Require a pull request before merging"). See {% ifversion ghec %}[AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-governance), {% endif %}[AUTOTITLE](/organizations/managing-organization-settings/creating-rulesets-for-repositories-in-your-organization) and [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#require-a-pull-request-before-merging). @@ -47,42 +48,42 @@ All AI models are trained to meet a request, even if they don't have all the inf Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 aria-label="link-external" %} -> [!TIP] You need {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise %} to use {% data variables.copilot.copilot_coding_agent %}. +> [!TIP] You need {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise %} to use {% data variables.copilot.copilot_cloud_agent %}. -As with any other change to working practices, it's important to run a trial to learn how to deploy {% data variables.copilot.copilot_coding_agent %} effectively in your organization or enterprise. +As with any other change to working practices, it's important to run a trial to learn how to deploy {% data variables.copilot.copilot_cloud_agent %} effectively in your organization or enterprise. 1. Gather a cross-functional team for the trial to bring different roles, backgrounds, and perspectives to the project. This will make it easier to ensure that you explore a broad range of ways to define issues, assign work to {% data variables.product.prodname_copilot_short %}, and give clear review feedback. 1. Choose an isolated or low-risk repository, for example, one that contains documentation or internal tools. You could create a fresh repository to use as a playground, but {% data variables.product.prodname_copilot_short %} needs context to be successful, so you would need to add a lot of context, including team processes, development environment, and common dependencies. -1. Enable {% data variables.copilot.copilot_coding_agent %} in the repository and optionally enable third-party MCP servers for enhanced context sharing. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). -1. Create repository instructions and pre-install any tools required in the development environment {% data variables.product.prodname_copilot_short %} uses. See [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent). -1. Identify a few compelling use cases for your organization, for example: test coverage or improving accessibility. See [Choose the right type of tasks to give to Copilot](/copilot/tutorials/coding-agent/best-practices#choosing-the-right-type-of-tasks-to-give-to-copilot) in the best practice guide. +1. Enable {% data variables.copilot.copilot_cloud_agent %} in the repository and optionally enable third-party MCP servers for enhanced context sharing. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). +1. Create repository instructions and pre-install any tools required in the development environment {% data variables.product.prodname_copilot_short %} uses. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment). +1. Identify a few compelling use cases for your organization, for example: test coverage or improving accessibility. See [Choose the right type of tasks to give to Copilot](/copilot/tutorials/cloud-agent/best-practices#choosing-the-right-type-of-tasks-to-give-to-copilot) in the best practice guide. 1. Use best practice to create or refine issues for {% data variables.product.prodname_copilot_short %} in your pilot repository. 1. Assign issues to {% data variables.product.prodname_copilot_short %} and prepare team members to review its work. 1. Spend time looking at the codebase or documentation in {% data variables.product.prodname_vscode_shortname %} or {% data variables.product.prodname_dotcom_the_website %}, asking {% data variables.product.prodname_copilot_short %} to create a pull request to fix any bugs or small improvements that you identify. -Over the course of the trial, the team should iterate on the repository instructions, installed tools, access to MCP servers, and issue definition to identify how your organization can get the most from {% data variables.copilot.copilot_coding_agent %}. This process will help you identify your organization's best practices for working with {% data variables.product.prodname_copilot_short %} and plan an effective rollout strategy. +Over the course of the trial, the team should iterate on the repository instructions, installed tools, access to MCP servers, and issue definition to identify how your organization can get the most from {% data variables.copilot.copilot_cloud_agent %}. This process will help you identify your organization's best practices for working with {% data variables.product.prodname_copilot_short %} and plan an effective rollout strategy. -In addition to giving you insight into how to set up {% data variables.copilot.copilot_coding_agent %} for success, you'll learn how {% data variables.product.prodname_copilot_short %} uses premium requests and actions minutes. This will be valuable when you come to set and manage your budget for a broader trial or full rollout. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/assigning-licenses/managing-your-companys-spending-on-github-copilot). +In addition to giving you insight into how to set up {% data variables.copilot.copilot_cloud_agent %} for success, you'll learn how {% data variables.product.prodname_copilot_short %} uses premium requests and actions minutes. This will be valuable when you come to set and manage your budget for a broader trial or full rollout. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/assigning-licenses/managing-your-companys-spending-on-github-copilot). ### Enhancing with MCP -The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to provide {% data variables.copilot.copilot_coding_agent %} with access to different data sources and tools. +The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to provide {% data variables.copilot.copilot_cloud_agent %} with access to different data sources and tools. -{% data variables.copilot.copilot_coding_agent %} has access to the full {% data variables.product.github %} context of the repository it's working in, including issues and pull requests, using the built-in {% data variables.product.github %} MCP server. By default, it's restricted from accessing external data by authentication barriers and a firewall. +{% data variables.copilot.copilot_cloud_agent %} has access to the full {% data variables.product.github %} context of the repository it's working in, including issues and pull requests, using the built-in {% data variables.product.github %} MCP server. By default, it's restricted from accessing external data by authentication barriers and a firewall. -You can extend the information available to {% data variables.copilot.copilot_coding_agent %} by giving it access to local MCP servers for the tools your organization uses. For example, you might want to provide access to local MCP servers for some of the following contexts: +You can extend the information available to {% data variables.copilot.copilot_cloud_agent %} by giving it access to local MCP servers for the tools your organization uses. For example, you might want to provide access to local MCP servers for some of the following contexts: * **Project planning tools**: Allow {% data variables.product.prodname_copilot_short %} direct access to private planning documents that are stored outside {% data variables.product.github %} in tools like Notion or Figma. * **Augment training data**: Each LLM contains training data up to a specific cut-off date. If you're working with fast moving tools, {% data variables.product.prodname_copilot_short %} may not have access to information on new features. You can fill this knowledge gap by making the tool's MCP server available. For example, adding the Terraform MCP server will give {% data variables.product.prodname_copilot_short %} access to the most recently supported Terraform providers. -For more information, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). ## Next steps When you're satisfied with the pilot, you can: -* Enable {% data variables.copilot.copilot_coding_agent %} in more organizations or repositories. -* Identify more use cases for {% data variables.copilot.copilot_coding_agent %} and train developers accordingly. +* Enable {% data variables.copilot.copilot_cloud_agent %} in more organizations or repositories. +* Identify more use cases for {% data variables.copilot.copilot_cloud_agent %} and train developers accordingly. * Continue to collect feedback and measure results. To assess the impact of a new tool, we recommend measuring the tool's impact on your organization's downstream goals. For a systematic approach to driving and measuring improvements in engineering systems, see {% data variables.product.company_short %}'s [Engineering System Success Playbook](https://resources.github.com/engineering-system-success-playbook/). diff --git a/content/copilot/tutorials/copilot-cli-hooks.md b/content/copilot/tutorials/copilot-cli-hooks.md index 4e823ff8f814..02544ec18381 100644 --- a/content/copilot/tutorials/copilot-cli-hooks.md +++ b/content/copilot/tutorials/copilot-cli-hooks.md @@ -693,4 +693,4 @@ Some teams (for example, infrastructure or platform teams) may require broader p ## Further reading -For troubleshooting hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks#troubleshooting). +For troubleshooting hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks#troubleshooting). diff --git a/content/copilot/tutorials/customization-library/custom-agents/bug-fix-teammate.md b/content/copilot/tutorials/customization-library/custom-agents/bug-fix-teammate.md index df2529f5c89f..b04d5fced251 100644 --- a/content/copilot/tutorials/customization-library/custom-agents/bug-fix-teammate.md +++ b/content/copilot/tutorials/customization-library/custom-agents/bug-fix-teammate.md @@ -75,6 +75,6 @@ Your goal is to make the codebase more stable and reliable by implementing worki Scan the repository for the most critical bug, then implement a targeted fix and explain your approach. ``` -The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% data reusables.copilot.custom-agents-further-reading %} diff --git a/content/copilot/tutorials/customization-library/custom-agents/cleanup-specialist.md b/content/copilot/tutorials/customization-library/custom-agents/cleanup-specialist.md index 8f9095b06ecf..a6a218564765 100644 --- a/content/copilot/tutorials/customization-library/custom-agents/cleanup-specialist.md +++ b/content/copilot/tutorials/customization-library/custom-agents/cleanup-specialist.md @@ -85,6 +85,6 @@ Focus on cleaning up existing code rather than adding new features. Work on both Refactor and clean up any messy or inconsistent code in the `src/utils` directory, then document the improvements you made. ``` -The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% data reusables.copilot.custom-agents-further-reading %} diff --git a/content/copilot/tutorials/customization-library/custom-agents/implementation-planner.md b/content/copilot/tutorials/customization-library/custom-agents/implementation-planner.md index 54e2a3cb0b6c..b0355f2deb8e 100644 --- a/content/copilot/tutorials/customization-library/custom-agents/implementation-planner.md +++ b/content/copilot/tutorials/customization-library/custom-agents/implementation-planner.md @@ -89,6 +89,6 @@ Adjust the detail level based on your needs - solo projects might need less form Create a detailed implementation plan for adding user authentication to our web app, including technical approach, phases, and risk assessment. ``` -The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +The agent task will appear on the page below the text box. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% data reusables.copilot.custom-agents-further-reading %} diff --git a/content/copilot/tutorials/customization-library/custom-agents/your-first-custom-agent.md b/content/copilot/tutorials/customization-library/custom-agents/your-first-custom-agent.md index 11b46361c50f..1a0f0a470cfe 100644 --- a/content/copilot/tutorials/customization-library/custom-agents/your-first-custom-agent.md +++ b/content/copilot/tutorials/customization-library/custom-agents/your-first-custom-agent.md @@ -18,9 +18,9 @@ contentType: tutorials ## About {% data variables.copilot.custom_agents_short %} -{% data variables.copilot.custom_agents_caps_short %} are specialized versions of {% data variables.copilot.copilot_coding_agent %} that maintain consistent expertise across entire workflows. Unlike custom instructions that apply broadly, or prompt files for one-time tasks, {% data variables.copilot.custom_agents_short %} are selected for specific tasks and maintain their configuration throughout the workflow. +{% data variables.copilot.custom_agents_caps_short %} are specialized versions of {% data variables.copilot.copilot_cloud_agent %} that maintain consistent expertise across entire workflows. Unlike custom instructions that apply broadly, or prompt files for one-time tasks, {% data variables.copilot.custom_agents_short %} are selected for specific tasks and maintain their configuration throughout the workflow. -For a more in-depth overview, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). +For a more in-depth overview, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). ## Your first {% data variables.copilot.copilot_custom_agent_short %} @@ -83,6 +83,6 @@ Test this agent by giving it a task to complete: Please review and improve our README.md file. ``` -The agent task will appear on the page below the text box. The agent will focus specifically on README improvements using its specialized knowledge, creating a pull request in your repository. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +The agent task will appear on the page below the text box. The agent will focus specifically on README improvements using its specialized knowledge, creating a pull request in your repository. You can click into the task and follow along with the agent. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% data reusables.copilot.custom-agents-further-reading %} diff --git a/content/copilot/tutorials/index.md b/content/copilot/tutorials/index.md index 314c40120a99..bc91db4f59cb 100644 --- a/content/copilot/tutorials/index.md +++ b/content/copilot/tutorials/index.md @@ -7,7 +7,7 @@ versions: children: - /copilot-chat-cookbook - /customization-library - - /coding-agent + - /cloud-agent - /spark - /use-custom-instructions - /enhance-agent-mode-with-mcp diff --git a/content/copilot/tutorials/modernize-java-applications.md b/content/copilot/tutorials/modernize-java-applications.md index e19d3b957d01..74592eb8a9fa 100644 --- a/content/copilot/tutorials/modernize-java-applications.md +++ b/content/copilot/tutorials/modernize-java-applications.md @@ -14,7 +14,7 @@ category: -The {% data variables.product.prodname_copilot %} app modernization extension in {% data variables.product.prodname_vscode %} automates Java upgrades by identifying outdated frameworks, deprecated APIs, and upgrade blockers. {% data variables.copilot.copilot_coding_agent %} applies code changes, updates build files, and resolves build and CVE issues for you. +The {% data variables.product.prodname_copilot %} app modernization extension in {% data variables.product.prodname_vscode %} automates Java upgrades by identifying outdated frameworks, deprecated APIs, and upgrade blockers. {% data variables.copilot.copilot_cloud_agent %} applies code changes, updates build files, and resolves build and CVE issues for you. The recommendations and reporting produced by the extension can help your teams adopt new technologies quickly and reduce technical debt. {% data variables.product.prodname_copilot_short %} guides you through upgrades with actionable steps and summaries, accelerating and securing your migrations while reducing manual effort. @@ -50,7 +50,7 @@ In this example, we'll walk through the high-level steps to modernize a Java app For detailed prerequisites and instructions, see [Quickstart: upgrade a Java project with {% data variables.product.prodname_copilot %} app modernization](https://learn.microsoft.com/en-us/java/upgrade/quickstart-upgrade) in the Microsoft documentation. > [!NOTE] -> During the modernization workflow, you may frequently be prompted by {% data variables.copilot.copilot_coding_agent %} for confirmation before it performs specific actions. +> During the modernization workflow, you may frequently be prompted by {% data variables.copilot.copilot_cloud_agent %} for confirmation before it performs specific actions. ### 1. Open your Java project @@ -89,7 +89,7 @@ Use {% data variables.product.prodname_copilot_short %} to apply or review code If build errors are found, {% data variables.product.prodname_copilot_short %} can enter a fix-and-test loop until the project compiles cleanly. -{% data variables.copilot.copilot_coding_agent %} automated changes can include: +{% data variables.copilot.copilot_cloud_agent %} automated changes can include: * Updating `pom.xml` or `build.gradle` files for new dependency versions. * Generating pull requests or committing changes directly. diff --git a/content/copilot/tutorials/plan-a-project.md b/content/copilot/tutorials/plan-a-project.md index 75c64181a4cc..3c6289608572 100644 --- a/content/copilot/tutorials/plan-a-project.md +++ b/content/copilot/tutorials/plan-a-project.md @@ -104,11 +104,11 @@ If {% data variables.product.prodname_copilot_short %} generates a sub-issue tha ## Next steps -Now that you’ve generated and refined your project issues, you can assign them to the right team members or even to {% data variables.product.prodname_copilot_short %} itself for further assistance. To learn more about how to assign {% data variables.product.prodname_copilot_short %} or contributors to issues, and how to continue planning and implementing your project with {% data variables.product.prodname_copilot_short %}’s agentic features, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/assign-copilot-to-an-issue). +Now that you’ve generated and refined your project issues, you can assign them to the right team members or even to {% data variables.product.prodname_copilot_short %} itself for further assistance. To learn more about how to assign {% data variables.product.prodname_copilot_short %} or contributors to issues, and how to continue planning and implementing your project with {% data variables.product.prodname_copilot_short %}’s agentic features, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). ## Further reading * [AUTOTITLE](/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues) -* [AUTOTITLE](/copilot/tutorials/coding-agent/pilot-coding-agent) -* [AUTOTITLE](/copilot/tutorials/coding-agent/get-the-best-results) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) * [AUTOTITLE](/copilot/tutorials/speed-up-development-work) diff --git a/content/copilot/tutorials/reduce-technical-debt.md b/content/copilot/tutorials/reduce-technical-debt.md index 11038ed01945..409a63e61f6c 100644 --- a/content/copilot/tutorials/reduce-technical-debt.md +++ b/content/copilot/tutorials/reduce-technical-debt.md @@ -18,7 +18,7 @@ Technical debt accumulates in every codebase: duplicate code, missing tests, out This tutorial is designed to help engineering teams and technical leads reduce technical debt while maintaining the pace at which new features are delivered. You should have: -* A {% data variables.product.prodname_copilot_short %} subscription with access to {% data variables.copilot.copilot_coding_agent %} +* A {% data variables.product.prodname_copilot_short %} subscription with access to {% data variables.copilot.copilot_cloud_agent %} * Admin access to at least one repository * Familiarity with your team's development workflow @@ -27,7 +27,7 @@ This tutorial is designed to help engineering teams and technical leads reduce t By the end of this tutorial, you'll have learned about: * Using {% data variables.product.prodname_copilot_short %} to implement in-the-moment fixes -* Leveraging {% data variables.copilot.copilot_coding_agent %} for large-scale cleanup tasks +* Leveraging {% data variables.copilot.copilot_cloud_agent %} for large-scale cleanup tasks * Creating custom instructions to align {% data variables.product.prodname_copilot_short %} with your team's standards * Measuring the impact of {% data variables.product.prodname_copilot_short %} on your technical debt @@ -111,13 +111,13 @@ By adopting the in-the-moment fix approach, you help to ensure that substandard For more details on using {% data variables.product.prodname_copilot_short %} in your IDE, see [AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-your-ide). -## Using {% data variables.copilot.copilot_coding_agent %} for large-scale refactoring +## Using {% data variables.copilot.copilot_cloud_agent %} for large-scale refactoring -Some refactoring tasks are just too big to complete while everyone on the team is busy developing new features. In this situation you can use {% data variables.copilot.copilot_coding_agent %} to handle these tasks autonomously. Human effort will still be required—at a minimum for reviewing the changes {% data variables.copilot.copilot_coding_agent %} proposes—but getting {% data variables.product.prodname_copilot_short %} to do the bulk of the work can allow you to carry out large-scale refactoring with much less impact on your team's productivity. +Some refactoring tasks are just too big to complete while everyone on the team is busy developing new features. In this situation you can use {% data variables.copilot.copilot_cloud_agent %} to handle these tasks autonomously. Human effort will still be required—at a minimum for reviewing the changes {% data variables.copilot.copilot_cloud_agent %} proposes—but getting {% data variables.product.prodname_copilot_short %} to do the bulk of the work can allow you to carry out large-scale refactoring with much less impact on your team's productivity. -### When to use {% data variables.copilot.copilot_coding_agent %} +### When to use {% data variables.copilot.copilot_cloud_agent %} -Use {% data variables.copilot.copilot_coding_agent %} for tasks that: +Use {% data variables.copilot.copilot_cloud_agent %} for tasks that: * Touch many files across your codebase * Require systematic changes (like removing old feature flags) @@ -132,7 +132,7 @@ Examples include: * Updating dependency versions * Standardizing import patterns -### Workflow for {% data variables.copilot.copilot_coding_agent %} +### Workflow for {% data variables.copilot.copilot_cloud_agent %} 1. Create a {% data variables.product.prodname_dotcom %} issue describing the refactoring task. @@ -152,7 +152,7 @@ Examples include: ``` 1. Assign the issue to the **Copilot** user. -1. {% data variables.copilot.copilot_coding_agent %} will: +1. {% data variables.copilot.copilot_cloud_agent %} will: * Set up a development environment * Open a draft pull request @@ -162,15 +162,15 @@ Examples include: * Request your review of the pull request 1. Review the pull request just as you would a pull request raised by a human. -1. Leave comments if changes are needed—{% data variables.copilot.copilot_coding_agent %} will update the pull request based on your feedback. +1. Leave comments if changes are needed—{% data variables.copilot.copilot_cloud_agent %} will update the pull request based on your feedback. 1. Iterate in this way until the work is completed correctly. 1. Approve and merge the pull request. -For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr#assigning-an-issue-to-copilot) and [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs). +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr#assigning-an-issue-to-copilot) and [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs). ### Safety guardrails -{% data variables.copilot.copilot_coding_agent %} operates with built-in safety measures: +{% data variables.copilot.copilot_cloud_agent %} operates with built-in safety measures: * It can only push to its own `copilot/*` branches * It cannot merge pull requests—requires your approval @@ -234,7 +234,7 @@ Start small to validate {% data variables.product.prodname_copilot_short %}'s im ### Week 1: Set up and establish baselines -1. Ensure all pilot participants have {% data variables.product.prodname_copilot_short %} access with {% data variables.copilot.copilot_coding_agent %} enabled. +1. Ensure all pilot participants have {% data variables.product.prodname_copilot_short %} access with {% data variables.copilot.copilot_cloud_agent %} enabled. 1. Count the technical debt items in your backlog: * Number of "tech debt", "chore", or similar labeled issues @@ -258,7 +258,7 @@ Start small to validate {% data variables.product.prodname_copilot_short %}'s im * Outdated dependencies 1. Use {% data variables.product.prodname_copilot_short %} in your IDE for quick fixes as you encounter issues. -1. Assign larger cleanup tasks to {% data variables.copilot.copilot_coding_agent %}. +1. Assign larger cleanup tasks to {% data variables.copilot.copilot_cloud_agent %}. 1. Review all {% data variables.product.prodname_copilot_short %}-generated PRs carefully. 1. Provide feedback on suggestions to help {% data variables.product.prodname_copilot_short %} learn your preferences. @@ -268,7 +268,7 @@ After the pilot, measure your results: * How much faster are refactoring pull requests getting merged? * How many review rounds do they require now? -* Which types of code change suggestions, made by {% data variables.copilot.copilot_coding_agent %} in pull requests, did developers accept most often? +* Which types of code change suggestions, made by {% data variables.copilot.copilot_cloud_agent %} in pull requests, did developers accept most often? * Which suggestions needed the most revision? * Are your technical debt metrics improving? @@ -315,21 +315,21 @@ If {% data variables.product.prodname_copilot_short %} consistently suggests cod * Review your custom instructions—they may be too vague or contradictory * Provide more specific context in your prompts * Add examples of good code to your custom instructions -* Leave detailed feedback in pull request reviews to allow {% data variables.copilot.copilot_coding_agent %} to fix the problems +* Leave detailed feedback in pull request reviews to allow {% data variables.copilot.copilot_cloud_agent %} to fix the problems ### Pull requests are too large to review -If {% data variables.copilot.copilot_coding_agent %} creates pull requests that are difficult to review: +If {% data variables.copilot.copilot_cloud_agent %} creates pull requests that are difficult to review: * Break large tasks into smaller, focused issues -* Ask {% data variables.copilot.copilot_coding_agent %} to handle one file or directory at a time +* Ask {% data variables.copilot.copilot_cloud_agent %} to handle one file or directory at a time * Use more specific issue descriptions ### Changes break tests If refactoring introduces test failures: -* Ensure your test suite runs reliably before using {% data variables.copilot.copilot_coding_agent %} +* Ensure your test suite runs reliably before using {% data variables.copilot.copilot_cloud_agent %} * Review {% data variables.product.prodname_copilot_short %} changes carefully before merging * Ask {% data variables.product.prodname_copilot_short %} to update tests along with the code changes @@ -347,7 +347,7 @@ If your team isn't using {% data variables.product.prodname_copilot_short %} for In this tutorial, you learned how to use {% data variables.product.prodname_copilot_short %} to systematically reduce technical debt. You now know how to: * Fix technical debt immediately using {% data variables.product.prodname_copilot_short %} in your IDE -* Assign large refactoring tasks to {% data variables.copilot.copilot_coding_agent %} +* Assign large refactoring tasks to {% data variables.copilot.copilot_cloud_agent %} * Create custom instructions that align {% data variables.product.prodname_copilot_short %} with your team's standards * Run a pilot program to validate the approach * Measure {% data variables.product.prodname_copilot_short %}'s impact on technical debt @@ -367,13 +367,13 @@ After reading this tutorial, do you feel confident you can use {% data variables ## Next steps * **Expand your pilot**: Roll out to more repositories based on your pilot results. -* **Automate dependency updates**: Create recurring issues for {% data variables.copilot.copilot_coding_agent %} to handle dependency updates. +* **Automate dependency updates**: Create recurring issues for {% data variables.copilot.copilot_cloud_agent %} to handle dependency updates. * **Build a refactoring queue**: Label issues in your backlog as good for {% data variables.product.prodname_copilot_short %} then regularly assign a batch of these to {% data variables.product.prodname_copilot_short %} to work on. * **Share best practices**: Document successful prompts and custom instructions for your team. ## Further reading -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent) * [AUTOTITLE](/copilot/tutorials/refactoring-code-with-github-copilot) * [How to use GitHub Copilot in your IDE: Tips, tricks, and best practices](https://github.blog/developer-skills/github/how-to-use-github-copilot-in-your-ide-tips-tricks-and-best-practices/) in the {% data variables.product.company_short %} blog -* [5 ways to integrate GitHub {% data variables.copilot.copilot_coding_agent %} into your workflow](https://github.blog/ai-and-ml/github-copilot/5-ways-to-integrate-github-copilot-coding-agent-into-your-workflow/) in the {% data variables.product.company_short %} blog +* [5 ways to integrate GitHub {% data variables.copilot.copilot_cloud_agent %} into your workflow](https://github.blog/ai-and-ml/github-copilot/5-ways-to-integrate-github-copilot-cloud-agent-into-your-workflow/) in the {% data variables.product.company_short %} blog diff --git a/content/copilot/tutorials/roll-out-at-scale/drive-downstream-impact/increase-test-coverage.md b/content/copilot/tutorials/roll-out-at-scale/drive-downstream-impact/increase-test-coverage.md index 567ce5321cb2..3a6c0bb3f31a 100644 --- a/content/copilot/tutorials/roll-out-at-scale/drive-downstream-impact/increase-test-coverage.md +++ b/content/copilot/tutorials/roll-out-at-scale/drive-downstream-impact/increase-test-coverage.md @@ -135,7 +135,7 @@ Developers **should not**: * [{% data variables.copilot.copilot_chat_dotcom_short %}](/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-github) * [{% data variables.product.prodname_copilot_short %} inline suggestions](/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot) * [{% data variables.copilot.copilot_chat_short %} in the IDE](/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide) -* [{% data variables.copilot.copilot_coding_agent %}](/copilot/concepts/about-copilot-coding-agent) +* [{% data variables.copilot.copilot_cloud_agent %}](/copilot/concepts/about-copilot-cloud-agent) ## Metrics to watch diff --git a/content/copilot/tutorials/roll-out-at-scale/enable-developers/integrate-ai-agents.md b/content/copilot/tutorials/roll-out-at-scale/enable-developers/integrate-ai-agents.md index f70d42e7c41f..cdd69e519b4f 100644 --- a/content/copilot/tutorials/roll-out-at-scale/enable-developers/integrate-ai-agents.md +++ b/content/copilot/tutorials/roll-out-at-scale/enable-developers/integrate-ai-agents.md @@ -47,7 +47,7 @@ To hit a tight deadline, you're aiming to speed up each stage of the process, fo {% data variables.product.prodname_copilot_short %} drafts the issues in `https://github.com/copilot`, where the PM can refine them and publish them to the repository. - The PM marks some of the issues as nice-to-haves or maintenance. These may be good candidates for {% data variables.copilot.copilot_coding_agent %}. + The PM marks some of the issues as nice-to-haves or maintenance. These may be good candidates for {% data variables.copilot.copilot_cloud_agent %}. ![Screenshot of Copilot Chat. Copilot asks if the user would like to proceed with creating a set of prioritized issues.](/assets/images/help/copilot/sdlc-guide/issue-creation.png) @@ -108,16 +108,16 @@ To hit a tight deadline, you're aiming to speed up each stage of the process, fo 1. As an additional compliance check, an enterprise owner has created a **{% data variables.copilot.copilot_custom_agent %}** with key context on industry regulations and internal policies. The developer selects the {% data variables.copilot.copilot_custom_agent_short %} at `https://github.com/copilot/agents`, prompting {% data variables.product.prodname_copilot_short %} to carefully review the pull request for compliance and applying any necessary changes before requesting a human review. 1. The developer's colleague reviews and approves the pull request. The work is ready to merge. -## 6. Optimize with {% data variables.copilot.copilot_coding_agent %} +## 6. Optimize with {% data variables.copilot.copilot_cloud_agent %} 1. After the release, the product manager collects customer feedback and identifies an opportunity to improve the widget's suggestions by switching to a more reliable API for weather data. They create an issue to implement this change, and **assign it to {% data variables.product.prodname_copilot_short %}** directly on {% data variables.product.github %}. -1. {% data variables.copilot.copilot_coding_agent %} works in the background and opens a pull request, which the product manager marks as ready for review. +1. {% data variables.copilot.copilot_cloud_agent %} works in the background and opens a pull request, which the product manager marks as ready for review. - ![Screenshot of a pull request created by {% data variables.copilot.copilot_coding_agent %}.](/assets/images/help/copilot/sdlc-guide/agent-pr.png) + ![Screenshot of a pull request created by {% data variables.copilot.copilot_cloud_agent %}.](/assets/images/help/copilot/sdlc-guide/agent-pr.png) 1. A developer reviews {% data variables.product.prodname_copilot_short %}'s pull request and leaves feedback, which {% data variables.product.prodname_copilot_short %} incorporates. Finally, the developer merges the pull request. - >[!TIP] {% data variables.copilot.copilot_coding_agent %} comes with default guardrails. For example, {% data variables.product.prodname_copilot_short %} cannot merge pull requests by itself. You can define additional protections for target branches using repository rulesets. + >[!TIP] {% data variables.copilot.copilot_cloud_agent %} comes with default guardrails. For example, {% data variables.product.prodname_copilot_short %} cannot merge pull requests by itself. You can define additional protections for target branches using repository rulesets. 1. Later, while working on a separate feature, the developer notices a small bug in the code for the AI widget. To avoid context switching, the developer instructs {% data variables.product.prodname_copilot_short %} to open a pull request directly from {% data variables.product.prodname_vscode_shortname %}. @@ -155,8 +155,8 @@ To integrate agentic AI features effectively into your workstreams, you'll need | {% data variables.product.prodname_github_models %} playground ({% data variables.release-phases.public_preview %}) | [AUTOTITLE](/github-models/prototyping-with-ai-models#experimenting-with-ai-models-in-the-playground) | | Custom instructions | [AUTOTITLE](/copilot/customizing-copilot/adding-repository-custom-instructions-for-github-copilot?tool=vscode) | | {% data variables.copilot.copilot_code-review_short %} | [AUTOTITLE](/copilot/how-tos/agents/copilot-code-review/automatic-code-review) | -| {% data variables.copilot.copilot_custom_agents %} | [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents) | -| {% data variables.copilot.copilot_coding_agent %} | [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org) | +| {% data variables.copilot.copilot_custom_agents %} | [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents) | +| {% data variables.copilot.copilot_cloud_agent %} | [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent) | | {% data variables.copilot.copilot_autofix_short %} | [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning) | {% endrowheaders %} diff --git a/content/copilot/tutorials/roll-out-at-scale/establish-ai-managers.md b/content/copilot/tutorials/roll-out-at-scale/establish-ai-managers.md index 4fe14c764670..898a7aba4c5c 100644 --- a/content/copilot/tutorials/roll-out-at-scale/establish-ai-managers.md +++ b/content/copilot/tutorials/roll-out-at-scale/establish-ai-managers.md @@ -74,4 +74,4 @@ If you have created a ruleset targeting {% data variables.copilot.agent_profiles Now that you have established AI managers for your enterprise, help them customize and manage your enterprise's AI experience by sharing the following resources: * [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-enterprise-policies) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents) diff --git a/content/copilot/tutorials/roll-out-at-scale/maintain-codebase-standards.md b/content/copilot/tutorials/roll-out-at-scale/maintain-codebase-standards.md index f8936d9764b8..ebbf56f7e46e 100644 --- a/content/copilot/tutorials/roll-out-at-scale/maintain-codebase-standards.md +++ b/content/copilot/tutorials/roll-out-at-scale/maintain-codebase-standards.md @@ -48,7 +48,7 @@ Good DevOps practices ensure that your code is automatically tested before being ## 3. Scan code for vulnerabilities -{% data variables.product.prodname_copilot_short %} is already designed to avoid introducing vulnerabilities into your codebase. For example, code created by {% data variables.copilot.copilot_coding_agent %} is automatically scanned for vulnerable patterns and secrets such as API keys. +{% data variables.product.prodname_copilot_short %} is already designed to avoid introducing vulnerabilities into your codebase. For example, code created by {% data variables.copilot.copilot_cloud_agent %} is automatically scanned for vulnerable patterns and secrets such as API keys. However, it is good practice to regularly scan all code for vulnerabilities and secrets, and to prevent developers from introducing vulnerabilities in the first place. diff --git a/content/copilot/tutorials/spark/build-apps-with-spark.md b/content/copilot/tutorials/spark/build-apps-with-spark.md index 4dd3e19b1c7e..53f1cda3405a 100644 --- a/content/copilot/tutorials/spark/build-apps-with-spark.md +++ b/content/copilot/tutorials/spark/build-apps-with-spark.md @@ -175,7 +175,7 @@ Any changes made to your spark prior to repository creation will be added to you There's a two-way sync between your spark and the repository, so changes made in either {% data variables.product.prodname_spark_short %} or the main branch of your repository are automatically reflected in both places. -You can also create issues in your repository and assign them to {% data variables.copilot.copilot_coding_agent %} so it can draft pull requests for fixes and improvements. +You can also create issues in your repository and assign them to {% data variables.copilot.copilot_cloud_agent %} so it can draft pull requests for fixes and improvements. ## Next steps diff --git a/content/copilot/tutorials/vibe-coding.md b/content/copilot/tutorials/vibe-coding.md index 435d43d3a3a5..28d1188dec28 100644 --- a/content/copilot/tutorials/vibe-coding.md +++ b/content/copilot/tutorials/vibe-coding.md @@ -184,7 +184,7 @@ You can now start planning for an initial implementation of your application. It 1. Keep your chat conversation open, as {% data variables.product.prodname_copilot_short %} will use this in the next series of steps. -## Building your application with {% data variables.copilot.copilot_coding_agent %} +## Building your application with {% data variables.copilot.copilot_cloud_agent %} When you think the plan contains enough detail: diff --git a/content/get-started/using-github/github-mobile.md b/content/get-started/using-github/github-mobile.md index bc52e1306f9a..922cf94da3f0 100644 --- a/content/get-started/using-github/github-mobile.md +++ b/content/get-started/using-github/github-mobile.md @@ -38,7 +38,7 @@ The following documentation contains more information about using {% data variab * Using {% data variables.product.prodname_dotcom %} code search on {% data variables.product.prodname_mobile %}, see [AUTOTITLE](/search-github/github-code-search/using-github-code-search#using-github-code-search-on-github-mobile).{% endif %}{% ifversion fpt or ghec %} * Two-factor authentication using {% data variables.product.prodname_mobile %}, see [AUTOTITLE](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication#configuring-two-factor-authentication-using-github-mobile) and [Authenticating using {% data variables.product.prodname_mobile %}](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication#verifying-with-github-mobile). {% endif %}{% ifversion copilot-chat-for-mobile %} * Using {% data variables.copilot.copilot_mobile %}, see [AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-github-mobile/using-github-copilot-chat-in-github-mobile).{% endif %}{% ifversion copilot-chat-for-mobile %} -* Assigning issues to {% data variables.product.prodname_copilot_short %} from {% data variables.product.prodname_mobile %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/assign-copilot-to-an-issue).{% endif %} +* Assigning issues to {% data variables.product.prodname_copilot_short %} from {% data variables.product.prodname_mobile %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr).{% endif %} ## Installing {% data variables.product.prodname_mobile %} diff --git a/content/index.md b/content/index.md index b612d0033737..4b8577bb525b 100644 --- a/content/index.md +++ b/content/index.md @@ -112,7 +112,7 @@ childGroups: children: - copilot - copilot/get-started/plans - - copilot/how-tos/use-copilot-agents/coding-agent + - copilot/how-tos/use-copilot-agents/cloud-agent - copilot/tutorials - copilot/tutorials/copilot-chat-cookbook - copilot/tutorials/customization-library diff --git a/content/integrations/concepts/featured-github-integrations.md b/content/integrations/concepts/featured-github-integrations.md index ffecb6467620..5fc755e80854 100644 --- a/content/integrations/concepts/featured-github-integrations.md +++ b/content/integrations/concepts/featured-github-integrations.md @@ -81,6 +81,6 @@ For more information, see [AUTOTITLE](/integrations/how-tos/teams). {% ifversion fpt or ghec %} -You can also integrate the {% data variables.copilot.copilot_coding_agent %} with your Microsoft Teams app, enabling you to use AI-powered coding assistance directly within your team's communication platform. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams) for more information. +You can also integrate the {% data variables.copilot.copilot_cloud_agent %} with your Microsoft Teams app, enabling you to use AI-powered coding assistance directly within your team's communication platform. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams) for more information. {% endif %} diff --git a/content/integrations/how-tos/slack/integrate-github-with-slack.md b/content/integrations/how-tos/slack/integrate-github-with-slack.md index d954c7751ed2..037c49284faa 100644 --- a/content/integrations/how-tos/slack/integrate-github-with-slack.md +++ b/content/integrations/how-tos/slack/integrate-github-with-slack.md @@ -20,7 +20,7 @@ With the {% data variables.product.github %} integration for Slack, you can: * Get **{% data variables.product.github %} notifications** in Slack channels. * Use **slash commands** to take actions on {% data variables.product.github %}. * Give your team **context** when sharing links to {% data variables.product.github %} activities and properties. -* Initiate a {% data variables.copilot.copilot_coding_agent %} session from Slack, using the context of a Slack thread. +* Initiate a {% data variables.copilot.copilot_cloud_agent %} session from Slack, using the context of a Slack thread. {% data reusables.integrations.github-slack-permissions %} diff --git a/content/integrations/how-tos/slack/use-github-in-slack.md b/content/integrations/how-tos/slack/use-github-in-slack.md index f863ff213ac0..7d1c88c981e9 100644 --- a/content/integrations/how-tos/slack/use-github-in-slack.md +++ b/content/integrations/how-tos/slack/use-github-in-slack.md @@ -42,9 +42,9 @@ To use a slash command, type `/github` followed by the command you want to execu {% ifversion fpt or ghec %} -## Initiating {% data variables.copilot.copilot_coding_agent %} sessions within Slack +## Initiating {% data variables.copilot.copilot_cloud_agent %} sessions within Slack -The {% data variables.product.github %} app also integrates {% data variables.copilot.copilot_coding_agent %} into Slack. You can use this functionality to summon {% data variables.copilot.copilot_coding_agent %} in threads where important discussions are taking place, and ask it to make changes based on the context of those discussions. See: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack). +The {% data variables.product.github %} app also integrates {% data variables.copilot.copilot_cloud_agent %} into Slack. You can use this functionality to summon {% data variables.copilot.copilot_cloud_agent %} in threads where important discussions are taking place, and ask it to make changes based on the context of those discussions. See: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack). {% endif %} diff --git a/content/integrations/how-tos/teams/integrate-github-with-teams.md b/content/integrations/how-tos/teams/integrate-github-with-teams.md index ae0edfa63452..9110289f3071 100644 --- a/content/integrations/how-tos/teams/integrate-github-with-teams.md +++ b/content/integrations/how-tos/teams/integrate-github-with-teams.md @@ -21,7 +21,7 @@ With the {% data variables.product.github %} integration for Teams, you can: * Use **commands** to take actions on {% data variables.product.github %}. * See **previews** when sharing links to {% data variables.product.github %} resources. {% ifversion fpt or ghec %} -* Initiate a {% data variables.copilot.copilot_coding_agent %} session from Teams, using the context of a Teams thread. +* Initiate a {% data variables.copilot.copilot_cloud_agent %} session from Teams, using the context of a Teams thread. {% endif %} {% data reusables.integrations.github-teams-permissions %} diff --git a/content/integrations/how-tos/teams/use-github-in-teams.md b/content/integrations/how-tos/teams/use-github-in-teams.md index 527c390a0fab..43f42f79177d 100644 --- a/content/integrations/how-tos/teams/use-github-in-teams.md +++ b/content/integrations/how-tos/teams/use-github-in-teams.md @@ -87,9 +87,9 @@ You can schedule reminders for pending pull request reviews in channels or in th {% ifversion fpt or ghec %} -## Initiating {% data variables.copilot.copilot_coding_agent %} sessions within Teams +## Initiating {% data variables.copilot.copilot_cloud_agent %} sessions within Teams -The {% data variables.product.github %} app integrates {% data variables.copilot.copilot_coding_agent %} into Teams. You can summon {% data variables.copilot.copilot_coding_agent %} in threads where discussions are taking place and ask it to make changes based on the context of those discussions. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams). +The {% data variables.product.github %} app integrates {% data variables.copilot.copilot_cloud_agent %} into Teams. You can summon {% data variables.copilot.copilot_cloud_agent %} in threads where discussions are taking place and ask it to make changes based on the context of those discussions. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams). {% endif %} diff --git a/content/integrations/reference/slack-permissions.md b/content/integrations/reference/slack-permissions.md index b846d670d422..d8d74d06b633 100644 --- a/content/integrations/reference/slack-permissions.md +++ b/content/integrations/reference/slack-permissions.md @@ -35,5 +35,5 @@ When you connect your {% data variables.product.github %} account to the {% data |Read access to code| To render code snippets in Slack| |Read access to actions, commit statuses, checks, discussions, issues, metadata, pull requests, and repository projects | To render previews of links shared in Slack| |Write access to actions, issues, deployments, and pull requests | To take action from Slack with the `/github` command and directly from messages| -|Write access to content| To open pull requests authored by {% data variables.copilot.copilot_coding_agent %}| -|Read/write access to workflows|To initiate {% data variables.copilot.copilot_coding_agent %} sessions| +|Write access to content| To open pull requests authored by {% data variables.copilot.copilot_cloud_agent %}| +|Read/write access to workflows|To initiate {% data variables.copilot.copilot_cloud_agent %} sessions| diff --git a/content/integrations/reference/teams-permissions.md b/content/integrations/reference/teams-permissions.md index d1f7e5bd51a9..cd4676801d6b 100644 --- a/content/integrations/reference/teams-permissions.md +++ b/content/integrations/reference/teams-permissions.md @@ -37,11 +37,11 @@ When you connect your {% data variables.product.github %} account to the {% data {% ifversion fpt or ghec %} -## Additional permissions for {% data variables.copilot.copilot_coding_agent %} +## Additional permissions for {% data variables.copilot.copilot_cloud_agent %} |Permission scope|Why we need it| |---|---| -|Write access to content| To open pull requests authored by {% data variables.copilot.copilot_coding_agent %}.| -|Read/write access to workflows| To initiate {% data variables.copilot.copilot_coding_agent %} sessions.| +|Write access to content| To open pull requests authored by {% data variables.copilot.copilot_cloud_agent %}.| +|Read/write access to workflows| To initiate {% data variables.copilot.copilot_cloud_agent %} sessions.| {% endif %} diff --git a/content/issues/tracking-your-work-with-issues/using-issues/assigning-issues-and-pull-requests-to-other-github-users.md b/content/issues/tracking-your-work-with-issues/using-issues/assigning-issues-and-pull-requests-to-other-github-users.md index fd8cddda6816..b20b96de0b60 100644 --- a/content/issues/tracking-your-work-with-issues/using-issues/assigning-issues-and-pull-requests-to-other-github-users.md +++ b/content/issues/tracking-your-work-with-issues/using-issues/assigning-issues-and-pull-requests-to-other-github-users.md @@ -23,7 +23,7 @@ You can assign multiple people to each issue or pull request, including: yoursel {% ifversion copilot %} -You may also be able to assign {% data variables.product.prodname_copilot_short %} to an issue, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/using-copilot-to-work-on-an-issue). +You may also be able to assign {% data variables.product.prodname_copilot_short %} to an issue, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). {% endif %} @@ -53,7 +53,7 @@ Both issues and pull requests support up to 10 assignees. ## Assigning an issue to {% data variables.product.prodname_copilot_short %} -If you assign an issue to {% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_copilot_short %} will work autonomously on the issue, creating a pull request and, when it has finished, requesting that you review the pull request. See [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +If you assign an issue to {% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_copilot_short %} will work autonomously on the issue, creating a pull request and, when it has finished, requesting that you review the pull request. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). {% endif %} diff --git a/content/migrations/ado/key-differences-between-azure-devops-and-github.md b/content/migrations/ado/key-differences-between-azure-devops-and-github.md index 95db96737481..e0f8893781f5 100644 --- a/content/migrations/ado/key-differences-between-azure-devops-and-github.md +++ b/content/migrations/ado/key-differences-between-azure-devops-and-github.md @@ -87,6 +87,6 @@ For more information, see [AUTOTITLE](/packages/learn-github-packages/introducti ## {% data variables.product.prodname_copilot %} -Hosting your repositories on {% data variables.product.github %} unlocks the full power of {% data variables.product.prodname_copilot_short %}. Your codebase provides {% data variables.product.prodname_copilot_short %} with all the context it needs to answer questions in {% data variables.copilot.copilot_chat_short %}, review and make suggestions in your pull requests, and even make changes on your behalf with {% data variables.copilot.copilot_coding_agent %}. +Hosting your repositories on {% data variables.product.github %} unlocks the full power of {% data variables.product.prodname_copilot_short %}. Your codebase provides {% data variables.product.prodname_copilot_short %} with all the context it needs to answer questions in {% data variables.copilot.copilot_chat_short %}, review and make suggestions in your pull requests, and even make changes on your behalf with {% data variables.copilot.copilot_cloud_agent %}. See [AUTOTITLE](/copilot/get-started/quickstart). diff --git a/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md b/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md index 30fa9ac44b0d..171c44814379 100644 --- a/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md +++ b/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md @@ -52,7 +52,7 @@ To reply to an existing line or file comment, you'll need to navigate to the com When you have finished, click **Finish your review** at the top right of the page, leave a summary of your review, and click **Submit review**. -Anyone watching the pull request or repository will receive a notification of your comments. Batching your comments avoids multiple notifications being sent. {% ifversion copilot %}If you are commenting on a pull request created by {% data variables.product.prodname_copilot_short %}, batching your comments prevents {% data variables.product.prodname_copilot_short %} from starting to work on individual comments before you have completed your review. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/using-copilot-to-work-on-an-issue).{% endif %} +Anyone watching the pull request or repository will receive a notification of your comments. Batching your comments avoids multiple notifications being sent. {% ifversion copilot %}If you are commenting on a pull request created by {% data variables.product.prodname_copilot_short %}, batching your comments prevents {% data variables.product.prodname_copilot_short %} from starting to work on individual comments before you have completed your review. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr).{% endif %} ### Resolving conversations diff --git a/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md b/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md index 8da6f061f447..c20369ed8e64 100644 --- a/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md +++ b/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md @@ -26,7 +26,7 @@ It's best to review changes in a pull request one file at a time: {% ifversion copilot %} -If the pull request was raised by {% data variables.product.prodname_copilot %} then, when you submit your comments, {% data variables.product.prodname_copilot_short %} will carry out more work to respond to your comments and will push a new commit to the pull request with further changes. See [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +If the pull request was raised by {% data variables.product.prodname_copilot %} then, when you submit your comments, {% data variables.product.prodname_copilot_short %} will carry out more work to respond to your comments and will push a new commit to the pull request with further changes. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). {% endif %} diff --git a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md index f928db8bfd24..e0a78a9b649f 100644 --- a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md +++ b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md @@ -44,7 +44,7 @@ category: * You can choose to add a software license for your project. For more information, see [AUTOTITLE](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository).{% endif %} {% data reusables.repositories.select-marketplace-apps %} {% ifversion fpt or ghec %} -1. Optionally, if you have access to {% data variables.copilot.copilot_coding_agent %}, enter a prompt for {% data variables.product.prodname_copilot_short %} to use to populate your repository. After the repository is created, {% data variables.product.prodname_copilot_short %} will open a draft pull request, write the code requested, then request review from you. For more information, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +1. Optionally, if you have access to {% data variables.copilot.copilot_cloud_agent %}, enter a prompt for {% data variables.product.prodname_copilot_short %} to use to populate your repository. After the repository is created, {% data variables.product.prodname_copilot_short %} will open a draft pull request, write the code requested, then request review from you. For more information, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). {% data reusables.repositories.create-repo %} 1. At the bottom of the resulting Quick Setup page, under "Import code from an old repository", you can choose to import a project to your new repository. To do so, click **Import code**. {% endif %} diff --git a/content/rest/agent-tasks/agent-tasks.md b/content/rest/agent-tasks/agent-tasks.md index c35f159764ee..939ea0c99842 100644 --- a/content/rest/agent-tasks/agent-tasks.md +++ b/content/rest/agent-tasks/agent-tasks.md @@ -1,7 +1,7 @@ --- title: Agent tasks shortTitle: Agent tasks -intro: Use the REST API to start and manage {% data variables.copilot.copilot_coding_agent %} tasks. +intro: Use the REST API to start and manage {% data variables.copilot.copilot_cloud_agent %} tasks. versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 fpt: '*' ghec: '*' diff --git a/content/rest/copilot/copilot-coding-agent-management.md b/content/rest/copilot/copilot-coding-agent-management.md index 271e91f04f60..d54fc572b50e 100644 --- a/content/rest/copilot/copilot-coding-agent-management.md +++ b/content/rest/copilot/copilot-coding-agent-management.md @@ -3,7 +3,7 @@ title: REST API endpoints for Copilot cloud agent management shortTitle: Copilot cloud agent management intro: >- Use the REST API to manage settings for {% data - variables.copilot.copilot_coding_agent %}. + variables.copilot.copilot_cloud_agent %}. versions: # DO NOT MANUALLY EDIT. CHANGES WILL BE OVERWRITTEN BY A 🤖 fpt: '*' ghec: '*' diff --git a/data/llms-txt-config.yml b/data/llms-txt-config.yml index e2ed119b428e..39b093e606c0 100644 --- a/data/llms-txt-config.yml +++ b/data/llms-txt-config.yml @@ -34,8 +34,8 @@ pinned_pages: - copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp - copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server - copilot/how-tos/provide-context/use-mcp/set-up-the-github-mcp-server - - copilot/how-tos/use-copilot-agents/coding-agent/about-coding-agent - - copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents + - copilot/how-tos/use-copilot-agents/cloud-agent/about-cloud-agent + - copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents - github-cli/github-cli - github-cli/github-cli/quickstart - rest diff --git a/data/reusables/billing/cost-center-allocation.md b/data/reusables/billing/cost-center-allocation.md index 1428f16c0b35..86a1a0974a3f 100644 --- a/data/reusables/billing/cost-center-allocation.md +++ b/data/reusables/billing/cost-center-allocation.md @@ -2,6 +2,6 @@ To allocate metered spending to a cost center, you add repositories, organizatio * For **usage-based** products, like {% data variables.product.prodname_actions %}, cost centers are charged based on the **repositories or organizations** in the cost center, as this is where the usage takes place. * For **license-based** products, like {% data variables.product.prodname_copilot %}, cost centers are charged based on the **users** in the cost center. -* For products billed by **{% data variables.product.prodname_pru %}** usage, like {% data variables.copilot.copilot_coding_agent %}, cost centers are charged based on the **users** in the cost center, or the **organization that granted the user's {% data variables.product.prodname_copilot %} license** if the user isn't directly assigned to a cost center. +* For products billed by **{% data variables.product.prodname_pru %}** usage, like {% data variables.copilot.copilot_cloud_agent %}, cost centers are charged based on the **users** in the cost center, or the **organization that granted the user's {% data variables.product.prodname_copilot %} license** if the user isn't directly assigned to a cost center. Cost centers only apply to metered usage, and do not work with volume or subscription billing. diff --git a/data/reusables/billing/premium-request-analytics-start.md b/data/reusables/billing/premium-request-analytics-start.md index c052161099ae..915b23e7e897 100644 --- a/data/reusables/billing/premium-request-analytics-start.md +++ b/data/reusables/billing/premium-request-analytics-start.md @@ -1,5 +1,5 @@ > [!NOTE] -> Premium request analytics data are available from **August 1, 2025** onward. Separate usage data for features that use premium requests is available from **November 1, 2025** for {% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_spark_short %}, and {% data variables.copilot.copilot_coding_agent %}. +> Premium request analytics data are available from **August 1, 2025** onward. Separate usage data for features that use premium requests is available from **November 1, 2025** for {% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_spark_short %}, and {% data variables.copilot.copilot_cloud_agent %}. User-level analytics have different access permissions depending on your role. diff --git a/data/reusables/billing/pru-sku-split-notice.md b/data/reusables/billing/pru-sku-split-notice.md index eeefcba841b9..5a13cc281738 100644 --- a/data/reusables/billing/pru-sku-split-notice.md +++ b/data/reusables/billing/pru-sku-split-notice.md @@ -1 +1 @@ -Premium requests for {% data variables.product.prodname_spark_short %} and {% data variables.copilot.copilot_coding_agent %} are tracked in dedicated SKUs from November 1, 2025. This provides better cost visibility and budget control for each AI product. +Premium requests for {% data variables.product.prodname_spark_short %} and {% data variables.copilot.copilot_cloud_agent %} are tracked in dedicated SKUs from November 1, 2025. This provides better cost visibility and budget control for each AI product. diff --git a/data/reusables/code-quality/fix-findings-with-coding-agent.md b/data/reusables/code-quality/fix-findings-with-cloud-agent.md similarity index 64% rename from data/reusables/code-quality/fix-findings-with-coding-agent.md rename to data/reusables/code-quality/fix-findings-with-cloud-agent.md index 974b8cb7fbd4..03d4f4add638 100644 --- a/data/reusables/code-quality/fix-findings-with-coding-agent.md +++ b/data/reusables/code-quality/fix-findings-with-cloud-agent.md @@ -1,13 +1,13 @@ -Alternatively, if you have a {% data variables.product.prodname_copilot_short %} license, you can delegate the remediation work to {% data variables.copilot.copilot_coding_agent %}. Comment on the pull request mentioning `@{% data variables.product.prodname_copilot_short %}` and request that {% data variables.product.prodname_copilot_short %} fix the detected issues. +Alternatively, if you have a {% data variables.product.prodname_copilot_short %} license, you can delegate the remediation work to {% data variables.copilot.copilot_cloud_agent %}. Comment on the pull request mentioning `@{% data variables.product.prodname_copilot_short %}` and request that {% data variables.product.prodname_copilot_short %} fix the detected issues. -![Screenshot showing a PR comment that invoked Copilot cloud agent.](/assets/images/help/code-quality/invoke-coding-agent.png) +![Screenshot showing a PR comment that invoked Copilot cloud agent.](/assets/images/help/code-quality/invoke-cloud-agent.png) {% data variables.product.prodname_copilot_short %} responds with an eyes emoji (👀) to your comment, starts a new agent session, and opens a pull request with the necessary fixes. -You can track {% data variables.copilot.copilot_coding_agent %}'s work: +You can track {% data variables.copilot.copilot_cloud_agent %}'s work: * In the pull request, the summary is updated as work progresses. -* Using the [agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) or session logs, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +* Using the [agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) or session logs, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). -You need a {% data variables.product.prodname_copilot_short %} license to invoke {% data variables.copilot.copilot_coding_agent %}. +You need a {% data variables.product.prodname_copilot_short %} license to invoke {% data variables.copilot.copilot_cloud_agent %}.
            Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 aria-label="link-external" %} diff --git a/data/reusables/copilot/change-the-ai-model-copilot-coding-agent.md b/data/reusables/copilot/change-the-ai-model-copilot-cloud-agent.md similarity index 83% rename from data/reusables/copilot/change-the-ai-model-copilot-coding-agent.md rename to data/reusables/copilot/change-the-ai-model-copilot-cloud-agent.md index 6eed3e0c72c0..c5c10f4e88b4 100644 --- a/data/reusables/copilot/change-the-ai-model-copilot-coding-agent.md +++ b/data/reusables/copilot/change-the-ai-model-copilot-cloud-agent.md @@ -1 +1 @@ -You can change the model {% data variables.product.prodname_copilot_short %} uses. You may find that different models perform better, or provide more useful responses, depending on the type of task you give Copilot. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model). +You can change the model {% data variables.product.prodname_copilot_short %} uses. You may find that different models perform better, or provide more useful responses, depending on the type of task you give Copilot. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model). diff --git a/data/reusables/copilot/cloud-agent-emu-limitation.md b/data/reusables/copilot/cloud-agent-emu-limitation.md new file mode 100644 index 000000000000..890be043a382 --- /dev/null +++ b/data/reusables/copilot/cloud-agent-emu-limitation.md @@ -0,0 +1,3 @@ +{% data variables.copilot.copilot_cloud_agent %} is not available in personal repositories owned by {% data variables.enterprise.prodname_managed_users %}. This is because {% data variables.copilot.copilot_cloud_agent %} runs on {% data variables.product.company_short %}-hosted runners, which are not available to personal repositories owned by {% data variables.enterprise.prodname_managed_users %}. For more information, see [AUTOTITLE](/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners). + + diff --git a/data/reusables/copilot/coding-agent-required-hosts.md b/data/reusables/copilot/cloud-agent-required-hosts.md similarity index 83% rename from data/reusables/copilot/coding-agent-required-hosts.md rename to data/reusables/copilot/cloud-agent-required-hosts.md index 623d382d795f..70239a95533f 100644 --- a/data/reusables/copilot/coding-agent-required-hosts.md +++ b/data/reusables/copilot/cloud-agent-required-hosts.md @@ -1,8 +1,8 @@ * `uploads.github.com` * `user-images.githubusercontent.com` -* `api.individual.githubcopilot.com` (if you expect {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} users to use {% data variables.copilot.copilot_coding_agent %} in your repository) -* `api.business.githubcopilot.com` (if you expect {% data variables.copilot.copilot_business_short %} users to use {% data variables.copilot.copilot_coding_agent %} in your repository) -* `api.enterprise.githubcopilot.com` (if you expect {% data variables.copilot.copilot_enterprise_short %} users to use {% data variables.copilot.copilot_coding_agent %} in your repository) +* `api.individual.githubcopilot.com` (if you expect {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} users to use {% data variables.copilot.copilot_cloud_agent %} in your repository) +* `api.business.githubcopilot.com` (if you expect {% data variables.copilot.copilot_business_short %} users to use {% data variables.copilot.copilot_cloud_agent %} in your repository) +* `api.enterprise.githubcopilot.com` (if you expect {% data variables.copilot.copilot_enterprise_short %} users to use {% data variables.copilot.copilot_cloud_agent %} in your repository) * If you are using the {% data variables.product.prodname_openai_codex %} third-party agent (for more information, see [AUTOTITLE](/copilot/concepts/agents/about-third-party-agents)): * `npmjs.org` * `npmjs.com` diff --git a/data/reusables/copilot/coding-agent-settings.md b/data/reusables/copilot/cloud-agent-settings.md similarity index 71% rename from data/reusables/copilot/coding-agent-settings.md rename to data/reusables/copilot/cloud-agent-settings.md index 939f9c001f03..246489e5e4fc 100644 --- a/data/reusables/copilot/coding-agent-settings.md +++ b/data/reusables/copilot/cloud-agent-settings.md @@ -1 +1 @@ -1. In the sidebar, under "Code, planning, and automation", click **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} {% data variables.product.prodname_copilot_short %}**, and then click **{% data variables.copilot.copilot_coding_agent_short_cap_c %}**. +1. In the sidebar, under "Code, planning, and automation", click **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} {% data variables.product.prodname_copilot_short %}**, and then click **{% data variables.copilot.copilot_cloud_agent_short_cap_c %}**. diff --git a/data/reusables/copilot/cloud-agent-validation-tools-intro.md b/data/reusables/copilot/cloud-agent-validation-tools-intro.md new file mode 100644 index 000000000000..4c466781bf21 --- /dev/null +++ b/data/reusables/copilot/cloud-agent-validation-tools-intro.md @@ -0,0 +1 @@ +By default, {% data variables.copilot.copilot_cloud_agent %} checks code it generates for security issues and gets a second opinion on its code with {% data variables.copilot.copilot_code-review_short %}. It attempts to resolve issues identified prior to completing the pull request. This improves code quality and reduces the likelihood of the code generated by {% data variables.copilot.copilot_cloud_agent %} introducing problems such as hardcoded secrets, insecure dependencies, and other vulnerabilities. \ No newline at end of file diff --git a/data/reusables/copilot/coding-agent-workflow-run-approval-default.md b/data/reusables/copilot/cloud-agent-workflow-run-approval-default.md similarity index 77% rename from data/reusables/copilot/coding-agent-workflow-run-approval-default.md rename to data/reusables/copilot/cloud-agent-workflow-run-approval-default.md index 1b7685a58775..8af988bb35ef 100644 --- a/data/reusables/copilot/coding-agent-workflow-run-approval-default.md +++ b/data/reusables/copilot/cloud-agent-workflow-run-approval-default.md @@ -4,6 +4,6 @@ By default, {% data variables.product.prodname_actions %} workflows will not run To allow {% data variables.product.prodname_actions %} workflows to run, click the **Approve and run workflows** button in the pull request's merge box. -![Screenshot of the merge box on a pull request from {% data variables.product.prodname_copilot_short %} with the "Approve and run workflows" button.](/assets/images/help/copilot/coding-agent/approve-and-run-workflows.png) +![Screenshot of the merge box on a pull request from {% data variables.product.prodname_copilot_short %} with the "Approve and run workflows" button.](/assets/images/help/copilot/cloud-agent/approve-and-run-workflows.png) -Optionally, you can configure {% data variables.copilot.copilot_coding_agent %} to allow {% data variables.product.prodname_actions %} workflows to run without human intervention. \ No newline at end of file +Optionally, you can configure {% data variables.copilot.copilot_cloud_agent %} to allow {% data variables.product.prodname_actions %} workflows to run without human intervention. \ No newline at end of file diff --git a/data/reusables/copilot/cloud-agent/agent-management-intro.md b/data/reusables/copilot/cloud-agent/agent-management-intro.md new file mode 100644 index 000000000000..0d83cdc866cd --- /dev/null +++ b/data/reusables/copilot/cloud-agent/agent-management-intro.md @@ -0,0 +1 @@ +When utilizing {% data variables.product.github %}'s agentic features, you can use the **Agents** tab within a repository that has {% data variables.copilot.copilot_cloud_agent %} enabled to initiate, monitor, and manage agent sessions without leaving your workflow. You can also use the [Agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) to view and start agent sessions. To learn how to enable {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management). diff --git a/data/reusables/copilot/coding-agent/create-hooks-instructions.md b/data/reusables/copilot/cloud-agent/create-hooks-instructions.md similarity index 91% rename from data/reusables/copilot/coding-agent/create-hooks-instructions.md rename to data/reusables/copilot/cloud-agent/create-hooks-instructions.md index d72fc05da5d2..adc4994ffb59 100644 --- a/data/reusables/copilot/coding-agent/create-hooks-instructions.md +++ b/data/reusables/copilot/cloud-agent/create-hooks-instructions.md @@ -1,4 +1,4 @@ -1. Create a new `hooks.json` file with the name of your choice in the `.github/hooks/` folder of your repository. The hooks configuration file **must be present** on your repository's default branch to be used by {% data variables.copilot.copilot_coding_agent %}. For {% data variables.copilot.copilot_cli %}, hooks are loaded from your current working directory. +1. Create a new `hooks.json` file with the name of your choice in the `.github/hooks/` folder of your repository. The hooks configuration file **must be present** on your repository's default branch to be used by {% data variables.copilot.copilot_cloud_agent %}. For {% data variables.copilot.copilot_cli %}, hooks are loaded from your current working directory. 1. In your text editor, copy and paste the following hook template. Remove any hooks you don't plan on using from the `hooks` array. diff --git a/data/reusables/copilot/coding-agent/custom-allowlist-add-entries.md b/data/reusables/copilot/cloud-agent/custom-allowlist-add-entries.md similarity index 100% rename from data/reusables/copilot/coding-agent/custom-allowlist-add-entries.md rename to data/reusables/copilot/cloud-agent/custom-allowlist-add-entries.md diff --git a/data/reusables/copilot/cloud-agent/enabling-for-orgs-and-enterprises.md b/data/reusables/copilot/cloud-agent/enabling-for-orgs-and-enterprises.md new file mode 100644 index 000000000000..b7c148c2e207 --- /dev/null +++ b/data/reusables/copilot/cloud-agent/enabling-for-orgs-and-enterprises.md @@ -0,0 +1,3 @@ +For {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} subscribers, the ability to use {% data variables.copilot.copilot_cloud_agent %} is controlled by policy settings defined at the organization level. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). + +If the organization is owned by an enterprise, enablement may be controlled at the enterprise level. See [AUTOTITLE](/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent). diff --git a/data/reusables/copilot/coding-agent/hooks-intro.md b/data/reusables/copilot/cloud-agent/hooks-intro.md similarity index 75% rename from data/reusables/copilot/coding-agent/hooks-intro.md rename to data/reusables/copilot/cloud-agent/hooks-intro.md index e848233e02f8..6d91fd40fcfd 100644 --- a/data/reusables/copilot/coding-agent/hooks-intro.md +++ b/data/reusables/copilot/cloud-agent/hooks-intro.md @@ -1 +1 @@ -Hooks allow you to extend and customize the behavior of {% data variables.product.prodname_copilot %} agents by executing custom shell commands at key points during agent execution. For a conceptual overview of hooks—including details of the available hook triggers—see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-hooks). +Hooks allow you to extend and customize the behavior of {% data variables.product.prodname_copilot %} agents by executing custom shell commands at key points during agent execution. For a conceptual overview of hooks—including details of the available hook triggers—see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-hooks). diff --git a/data/reusables/copilot/coding-agent/mcp-brief-intro.md b/data/reusables/copilot/cloud-agent/mcp-brief-intro.md similarity index 81% rename from data/reusables/copilot/coding-agent/mcp-brief-intro.md rename to data/reusables/copilot/cloud-agent/mcp-brief-intro.md index bf2c963ce4ba..0975dde4ee95 100644 --- a/data/reusables/copilot/coding-agent/mcp-brief-intro.md +++ b/data/reusables/copilot/cloud-agent/mcp-brief-intro.md @@ -1,3 +1,3 @@ The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to connect AI models to different data sources and tools, enabling them to work together more effectively. -You can use MCP to extend the capabilities of {% data variables.copilot.copilot_coding_agent %} by connecting it to other tools and services. +You can use MCP to extend the capabilities of {% data variables.copilot.copilot_cloud_agent %} by connecting it to other tools and services. diff --git a/data/reusables/copilot/coding-agent/monitoring-progress-heading.md b/data/reusables/copilot/cloud-agent/monitoring-progress-heading.md similarity index 82% rename from data/reusables/copilot/coding-agent/monitoring-progress-heading.md rename to data/reusables/copilot/cloud-agent/monitoring-progress-heading.md index 53e9a58d4dec..b748afe30e10 100644 --- a/data/reusables/copilot/coding-agent/monitoring-progress-heading.md +++ b/data/reusables/copilot/cloud-agent/monitoring-progress-heading.md @@ -1,3 +1,3 @@ ## Monitoring progress -You can view your current and past {% data variables.product.prodname_copilot_short %} sessions from the agents panel, [agents page](https://github.com/copilot/agents), {% data variables.product.prodname_vscode %}, and more. See [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/tracking-copilots-sessions). +You can view your current and past {% data variables.product.prodname_copilot_short %} sessions from the agents panel, [agents page](https://github.com/copilot/agents), {% data variables.product.prodname_vscode %}, and more. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). diff --git a/data/reusables/copilot/coding-agent/new-agent-task-form-instructions.md b/data/reusables/copilot/cloud-agent/new-agent-task-form-instructions.md similarity index 94% rename from data/reusables/copilot/coding-agent/new-agent-task-form-instructions.md rename to data/reusables/copilot/cloud-agent/new-agent-task-form-instructions.md index 95b0e976c598..82e6f5bf653e 100644 --- a/data/reusables/copilot/coding-agent/new-agent-task-form-instructions.md +++ b/data/reusables/copilot/cloud-agent/new-agent-task-form-instructions.md @@ -5,7 +5,7 @@ 1. Optionally, select a base branch for {% data variables.product.prodname_copilot_short %}'s pull request. {% data variables.product.prodname_copilot_short %} will create a new branch based on this branch, then push the changes to a pull request targeting that branch. {% data reusables.copilot.optional-select-custom-agent-dotcom %} -{% data reusables.copilot.optional-select-copilot-coding-agent-model %} +{% data reusables.copilot.optional-select-copilot-cloud-agent-model %} 1. Click **{% octicon "paper-airplane" aria-label="Start task" %}** or press Enter. {% data variables.product.prodname_copilot_short %} will start a new session, which will appear in the list below the prompt box. {% data variables.product.prodname_copilot_short %} will work on the task and push changes to its pull request, then add you as a reviewer when it has finished, triggering a notification. diff --git a/data/reusables/copilot/coding-agent/raycast-intro.md b/data/reusables/copilot/cloud-agent/raycast-intro.md similarity index 62% rename from data/reusables/copilot/coding-agent/raycast-intro.md rename to data/reusables/copilot/cloud-agent/raycast-intro.md index 7c7bfa345150..bc60e1543365 100644 --- a/data/reusables/copilot/coding-agent/raycast-intro.md +++ b/data/reusables/copilot/cloud-agent/raycast-intro.md @@ -1 +1 @@ -[Raycast](https://www.raycast.com/) is an extensible launcher for Windows and macOS. With the {% data variables.product.prodname_copilot %} extension for Raycast, you can start and track {% data variables.copilot.copilot_coding_agent %} tasks and watch session logs live wherever you are on your computer. +[Raycast](https://www.raycast.com/) is an extensible launcher for Windows and macOS. With the {% data variables.product.prodname_copilot %} extension for Raycast, you can start and track {% data variables.copilot.copilot_cloud_agent %} tasks and watch session logs live wherever you are on your computer. diff --git a/data/reusables/copilot/coding-agent/raycast-oauth-access-restrictions.md b/data/reusables/copilot/cloud-agent/raycast-oauth-access-restrictions.md similarity index 100% rename from data/reusables/copilot/coding-agent/raycast-oauth-access-restrictions.md rename to data/reusables/copilot/cloud-agent/raycast-oauth-access-restrictions.md diff --git a/data/reusables/copilot/coding-agent/raycast-setup.md b/data/reusables/copilot/cloud-agent/raycast-setup.md similarity index 100% rename from data/reusables/copilot/coding-agent/raycast-setup.md rename to data/reusables/copilot/cloud-agent/raycast-setup.md diff --git a/data/reusables/copilot/coding-agent/troubleshoot-hooks.md b/data/reusables/copilot/cloud-agent/troubleshoot-hooks.md similarity index 100% rename from data/reusables/copilot/coding-agent/troubleshoot-hooks.md rename to data/reusables/copilot/cloud-agent/troubleshoot-hooks.md diff --git a/data/reusables/copilot/coding-agent/use-chat-participant-in-vsc.md b/data/reusables/copilot/cloud-agent/use-chat-participant-in-vsc.md similarity index 100% rename from data/reusables/copilot/coding-agent/use-chat-participant-in-vsc.md rename to data/reusables/copilot/cloud-agent/use-chat-participant-in-vsc.md diff --git a/data/reusables/copilot/coding-agent/use-latest-vscode.md b/data/reusables/copilot/cloud-agent/use-latest-vscode.md similarity index 100% rename from data/reusables/copilot/coding-agent/use-latest-vscode.md rename to data/reusables/copilot/cloud-agent/use-latest-vscode.md diff --git a/data/reusables/copilot/cloud-agent/what-is.md b/data/reusables/copilot/cloud-agent/what-is.md new file mode 100644 index 000000000000..0c836f670268 --- /dev/null +++ b/data/reusables/copilot/cloud-agent/what-is.md @@ -0,0 +1 @@ +{% data variables.copilot.copilot_cloud_agent %} is an AI-powered software development agent that can work autonomously on issues or developer requests. It raises draft pull requests to propose a fix and iterates on the changes in response to feedback. diff --git a/data/reusables/copilot/coding-agent/write-access-required.md b/data/reusables/copilot/cloud-agent/write-access-required.md similarity index 100% rename from data/reusables/copilot/coding-agent/write-access-required.md rename to data/reusables/copilot/cloud-agent/write-access-required.md diff --git a/data/reusables/copilot/code-review/custom-instructions-limit.md b/data/reusables/copilot/code-review/custom-instructions-limit.md index 27650d27175f..86ec2eb08fc1 100644 --- a/data/reusables/copilot/code-review/custom-instructions-limit.md +++ b/data/reusables/copilot/code-review/custom-instructions-limit.md @@ -1,3 +1,3 @@ > [!NOTE] -> * {% data variables.copilot.copilot_code-review_short %} only reads the first 4,000 characters of any custom instruction file. Any instructions beyond this limit will not affect the reviews generated by {% data variables.copilot.copilot_code-review_short %}. This limit does not apply to {% data variables.copilot.copilot_chat_short %} or {% data variables.copilot.copilot_coding_agent %}. +> * {% data variables.copilot.copilot_code-review_short %} only reads the first 4,000 characters of any custom instruction file. Any instructions beyond this limit will not affect the reviews generated by {% data variables.copilot.copilot_code-review_short %}. This limit does not apply to {% data variables.copilot.copilot_chat_short %} or {% data variables.copilot.copilot_cloud_agent %}. > * {% data reusables.copilot.code-review.custom-instructions-branch %} diff --git a/data/reusables/copilot/coding-agent-emu-limitation.md b/data/reusables/copilot/coding-agent-emu-limitation.md deleted file mode 100644 index 3d1199a1562f..000000000000 --- a/data/reusables/copilot/coding-agent-emu-limitation.md +++ /dev/null @@ -1,3 +0,0 @@ -{% data variables.copilot.copilot_coding_agent %} is not available in personal repositories owned by {% data variables.enterprise.prodname_managed_users %}. This is because {% data variables.copilot.copilot_coding_agent %} runs on {% data variables.product.company_short %}-hosted runners, which are not available to personal repositories owned by {% data variables.enterprise.prodname_managed_users %}. For more information, see [AUTOTITLE](/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners). - - diff --git a/data/reusables/copilot/coding-agent-validation-tools-intro.md b/data/reusables/copilot/coding-agent-validation-tools-intro.md deleted file mode 100644 index 321d22afb437..000000000000 --- a/data/reusables/copilot/coding-agent-validation-tools-intro.md +++ /dev/null @@ -1 +0,0 @@ -By default, {% data variables.copilot.copilot_coding_agent %} checks code it generates for security issues and gets a second opinion on its code with {% data variables.copilot.copilot_code-review_short %}. It attempts to resolve issues identified prior to completing the pull request. This improves code quality and reduces the likelihood of the code generated by {% data variables.copilot.copilot_coding_agent %} introducing problems such as hardcoded secrets, insecure dependencies, and other vulnerabilities. \ No newline at end of file diff --git a/data/reusables/copilot/coding-agent/agent-management-intro.md b/data/reusables/copilot/coding-agent/agent-management-intro.md deleted file mode 100644 index 6cdf8cd973ea..000000000000 --- a/data/reusables/copilot/coding-agent/agent-management-intro.md +++ /dev/null @@ -1 +0,0 @@ -When utilizing {% data variables.product.github %}'s agentic features, you can use the **Agents** tab within a repository that has {% data variables.copilot.copilot_coding_agent %} enabled to initiate, monitor, and manage agent sessions without leaving your workflow. You can also use the [Agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) to view and start agent sessions. To learn how to enable {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/access-management). diff --git a/data/reusables/copilot/coding-agent/enabling-for-orgs-and-enterprises.md b/data/reusables/copilot/coding-agent/enabling-for-orgs-and-enterprises.md deleted file mode 100644 index 373348271612..000000000000 --- a/data/reusables/copilot/coding-agent/enabling-for-orgs-and-enterprises.md +++ /dev/null @@ -1,3 +0,0 @@ -For {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} subscribers, the ability to use {% data variables.copilot.copilot_coding_agent %} is controlled by policy settings defined at the organization level. See [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). - -If the organization is owned by an enterprise, enablement may be controlled at the enterprise level. See [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-copilot-coding-agent-in-your-enterprise). diff --git a/data/reusables/copilot/coding-agent/what-is.md b/data/reusables/copilot/coding-agent/what-is.md deleted file mode 100644 index af011f6b662c..000000000000 --- a/data/reusables/copilot/coding-agent/what-is.md +++ /dev/null @@ -1 +0,0 @@ -{% data variables.copilot.copilot_coding_agent %} is an AI-powered software development agent that can work autonomously on issues or developer requests. It raises draft pull requests to propose a fix and iterates on the changes in response to feedback. diff --git a/data/reusables/copilot/copilot-coding-agent-auto-models.md b/data/reusables/copilot/copilot-cloud-agent-auto-models.md similarity index 100% rename from data/reusables/copilot/copilot-coding-agent-auto-models.md rename to data/reusables/copilot/copilot-cloud-agent-auto-models.md diff --git a/data/reusables/copilot/copilot-coding-agent-non-auto-models.md b/data/reusables/copilot/copilot-cloud-agent-non-auto-models.md similarity index 100% rename from data/reusables/copilot/copilot-coding-agent-non-auto-models.md rename to data/reusables/copilot/copilot-cloud-agent-non-auto-models.md diff --git a/data/reusables/copilot/custom-agents-further-reading.md b/data/reusables/copilot/custom-agents-further-reading.md index 9658aa2ea14f..84ce885c8a51 100644 --- a/data/reusables/copilot/custom-agents-further-reading.md +++ b/data/reusables/copilot/custom-agents-further-reading.md @@ -1,5 +1,5 @@ ## Further reading -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents) * [AUTOTITLE](/copilot/reference/custom-agents-configuration) diff --git a/data/reusables/copilot/custom-instructions-org-support.md b/data/reusables/copilot/custom-instructions-org-support.md index 05f71b655372..1d3b5cc5c31d 100644 --- a/data/reusables/copilot/custom-instructions-org-support.md +++ b/data/reusables/copilot/custom-instructions-org-support.md @@ -1,2 +1,2 @@ > [!NOTE] -> **Support:** Organization custom instructions are currently only supported for {% data variables.copilot.copilot_chat_short %} on {% data variables.product.prodname_dotcom_the_website %}, {% data variables.copilot.copilot_code-review_short %} on {% data variables.product.prodname_dotcom_the_website %} and {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}. +> **Support:** Organization custom instructions are currently only supported for {% data variables.copilot.copilot_chat_short %} on {% data variables.product.prodname_dotcom_the_website %}, {% data variables.copilot.copilot_code-review_short %} on {% data variables.product.prodname_dotcom_the_website %} and {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}. diff --git a/data/reusables/copilot/custom-instructions-path.md b/data/reusables/copilot/custom-instructions-path.md index 8a7e0a30c8a6..2412c0fe000b 100644 --- a/data/reusables/copilot/custom-instructions-path.md +++ b/data/reusables/copilot/custom-instructions-path.md @@ -29,9 +29,9 @@ * `src/**/*.py` - will recursively match all `.py` files in the `src` directory. For example, `src/foo.py`, `src/foo/bar.py`, and `src/foo/bar/baz.py`. * `**/subdir/**/*.py` - will recursively match all `.py` files in any `subdir` directory at any depth. For example, `subdir/foo.py`, `subdir/nested/bar.py`, `parent/subdir/baz.py`, and `deep/parent/subdir/nested/qux.py`, but _not_ `foo.py` at a path that does not contain a `subdir` directory. -1. Optionally, to prevent the file from being used by either {% data variables.copilot.copilot_coding_agent %} or {% data variables.copilot.copilot_code-review_short %}, add the `excludeAgent` keyword to the frontmatter block. Use either `"code-review"` or `"coding-agent"`. +1. Optionally, to prevent the file from being used by either {% data variables.copilot.copilot_cloud_agent %} or {% data variables.copilot.copilot_code-review_short %}, add the `excludeAgent` keyword to the frontmatter block. Use either `"code-review"` or `"cloud-agent"`. - For example, the following file will only be read by {% data variables.copilot.copilot_coding_agent %}. + For example, the following file will only be read by {% data variables.copilot.copilot_cloud_agent %}. ```markdown --- @@ -40,6 +40,6 @@ --- ``` - If the `excludeAgent` keyword is not included in the front matterblock, both {% data variables.copilot.copilot_code-review_short %} and {% data variables.copilot.copilot_coding_agent %} will use your instructions. + If the `excludeAgent` keyword is not included in the front matterblock, both {% data variables.copilot.copilot_code-review_short %} and {% data variables.copilot.copilot_cloud_agent %} will use your instructions. 1. Add your custom instructions in natural language, using Markdown format. Whitespace between instructions is ignored, so the instructions can be written as a single paragraph, each on a new line, or separated by blank lines for legibility. diff --git a/data/reusables/copilot/differences-cfi-cfb-table.md b/data/reusables/copilot/differences-cfi-cfb-table.md index b17202870aa1..2214a4bfe130 100644 --- a/data/reusables/copilot/differences-cfi-cfb-table.md +++ b/data/reusables/copilot/differences-cfi-cfb-table.md @@ -14,7 +14,7 @@ | Agents | {% data variables.copilot.copilot_free_short %} | {% data variables.copilot.copilot_student_short %} | {% data variables.copilot.copilot_pro_short %} | {% data variables.copilot.copilot_pro_plus_short %} | {% data variables.copilot.copilot_business_short %} | {% data variables.copilot.copilot_enterprise_short %} | | --- | --- | --- | --- | --- | --- | --- | -| {% data variables.copilot.copilot_coding_agent %} | {% octicon "x" aria-label="Not included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | +| {% data variables.copilot.copilot_cloud_agent %} | {% octicon "x" aria-label="Not included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | | Agent mode | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | | {% data variables.product.prodname_copilot_short %} code review | Only "Review selection" in {% data variables.product.prodname_vscode_shortname %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | | Model Context Protocol (MCP) | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | {% octicon "check" aria-label="Included" %} | diff --git a/data/reusables/copilot/mcp/cloud-agent-limitations.md b/data/reusables/copilot/mcp/cloud-agent-limitations.md new file mode 100644 index 000000000000..54f609ba86d5 --- /dev/null +++ b/data/reusables/copilot/mcp/cloud-agent-limitations.md @@ -0,0 +1,3 @@ +> [!NOTE] +> * {% data variables.copilot.copilot_cloud_agent %} only supports tools provided by MCP servers. It does not support resources or prompts. +> * {% data variables.copilot.copilot_cloud_agent %} does not currently support remote MCP servers that leverage OAuth for authentication and authorization. diff --git a/data/reusables/copilot/mcp/coding-agent-limitations.md b/data/reusables/copilot/mcp/coding-agent-limitations.md deleted file mode 100644 index 92b8cf568f14..000000000000 --- a/data/reusables/copilot/mcp/coding-agent-limitations.md +++ /dev/null @@ -1,3 +0,0 @@ -> [!NOTE] -> * {% data variables.copilot.copilot_coding_agent %} only supports tools provided by MCP servers. It does not support resources or prompts. -> * {% data variables.copilot.copilot_coding_agent %} does not currently support remote MCP servers that leverage OAuth for authentication and authorization. diff --git a/data/reusables/copilot/optional-select-copilot-coding-agent-model.md b/data/reusables/copilot/optional-select-copilot-cloud-agent-model.md similarity index 72% rename from data/reusables/copilot/optional-select-copilot-coding-agent-model.md rename to data/reusables/copilot/optional-select-copilot-cloud-agent-model.md index 7e14bea59112..4ff7d3c3b39a 100644 --- a/data/reusables/copilot/optional-select-copilot-coding-agent-model.md +++ b/data/reusables/copilot/optional-select-copilot-cloud-agent-model.md @@ -1 +1 @@ -1. Optionally, if you are a {% data variables.copilot.copilot_pro %} or {% data variables.copilot.copilot_pro_plus %} user, you can use the dropdown menu to select the model that {% data variables.product.prodname_copilot_short %} will use. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model). \ No newline at end of file +1. Optionally, if you are a {% data variables.copilot.copilot_pro %} or {% data variables.copilot.copilot_pro_plus %} user, you can use the dropdown menu to select the model that {% data variables.product.prodname_copilot_short %} will use. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model). \ No newline at end of file diff --git a/data/reusables/copilot/optional-select-custom-agent-dotcom.md b/data/reusables/copilot/optional-select-custom-agent-dotcom.md index f623ea42a80f..485199a6bb2d 100644 --- a/data/reusables/copilot/optional-select-custom-agent-dotcom.md +++ b/data/reusables/copilot/optional-select-custom-agent-dotcom.md @@ -1,2 +1,2 @@ -1. Optionally, you can click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %} to open the agent dropdown menu, if you want to assign an agent or a {% data variables.copilot.copilot_custom_agent_short %} with specialized behavior and tools. You can select an existing {% data variables.copilot.copilot_custom_agent_short %} from your repository, organization, or enterprise. You can also click **{% octicon "plus" aria-label="Plus button" %} Create an agent** to create a new {% data variables.copilot.agent_profile %} in your selected repository and branch. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +1. Optionally, you can click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %} to open the agent dropdown menu, if you want to assign an agent or a {% data variables.copilot.copilot_custom_agent_short %} with specialized behavior and tools. You can select an existing {% data variables.copilot.copilot_custom_agent_short %} from your repository, organization, or enterprise. You can also click **{% octicon "plus" aria-label="Plus button" %} Create an agent** to create a new {% data variables.copilot.agent_profile %} in your selected repository and branch. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). > [!NOTE] Third-party coding agents are available in the {% data variables.copilot.copilot_pro_plus %} and {% data variables.copilot.copilot_enterprise_short %} plans. diff --git a/data/reusables/copilot/optional-select-custom-agent-generic.md b/data/reusables/copilot/optional-select-custom-agent-generic.md index 01cf636de879..4e59de73ccc0 100644 --- a/data/reusables/copilot/optional-select-custom-agent-generic.md +++ b/data/reusables/copilot/optional-select-custom-agent-generic.md @@ -1 +1 @@ -1. Optionally, select a {% data variables.copilot.copilot_custom_agent_short %} with specialized behavior and tools from the dropdown menu. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). \ No newline at end of file +1. Optionally, select a {% data variables.copilot.copilot_custom_agent_short %} with specialized behavior and tools from the dropdown menu. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). \ No newline at end of file diff --git a/data/reusables/copilot/repository-custom-instructions-types.md b/data/reusables/copilot/repository-custom-instructions-types.md index 8cc5d7bb9711..9fbbf1ebbbaf 100644 --- a/data/reusables/copilot/repository-custom-instructions-types.md +++ b/data/reusables/copilot/repository-custom-instructions-types.md @@ -1,4 +1,4 @@ You can create repository custom instructions in two ways: * **Repository-wide instructions**: Create a single `copilot-instructions.md` file at the repository root that applies to all files in the repository. -* **Path-specific instructions**: Create one or more `.instructions.md` files with an `applyTo` field that apply only to specific files or directories. Path-specific instructions are currently supported for **{% data variables.copilot.copilot_chat_short %}** in {% data variables.product.prodname_vscode %}, {% data variables.product.prodname_vs %}, and **{% data variables.copilot.copilot_coding_agent %}**. +* **Path-specific instructions**: Create one or more `.instructions.md` files with an `applyTo` field that apply only to specific files or directories. Path-specific instructions are currently supported for **{% data variables.copilot.copilot_chat_short %}** in {% data variables.product.prodname_vscode %}, {% data variables.product.prodname_vs %}, and **{% data variables.copilot.copilot_cloud_agent %}**. diff --git a/data/reusables/copilot/setup-next-steps.md b/data/reusables/copilot/setup-next-steps.md index 7bb6f25d2d08..9a4a493a63bd 100644 --- a/data/reusables/copilot/setup-next-steps.md +++ b/data/reusables/copilot/setup-next-steps.md @@ -1,4 +1,4 @@ * **Explore self-service license management options**. Many successful rollouts use a self-service model where developers can claim a license without approval. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/setting-up-a-self-serve-process-for-github-copilot-licenses). * **Learn how to plan and implement an effective enablement process to drive {% data variables.product.prodname_copilot_short %} adoption**. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/driving-copilot-adoption-in-your-company). * **Enhance the development experience by enabling and training developers on the latest features**. For example, share context with {% data variables.copilot.copilot_spaces %}, enable {% data variables.copilot.copilot_code-review_short %} on pull requests, and allow developers to experiment with prompts using {% data variables.product.prodname_github_models %}. For an example showing how these features fit together, see [AUTOTITLE](/copilot/tutorials/rolling-out-github-copilot-at-scale/enabling-developers/integrating-agentic-ai). -* **Add {% data variables.copilot.copilot_coding_agent %} as a team member for asynchronous issue work**. See [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org). +* **Add {% data variables.copilot.copilot_cloud_agent %} as a team member for asynchronous issue work**. See [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent). diff --git a/data/reusables/enterprise-onboarding/identify-role-requirements.md b/data/reusables/enterprise-onboarding/identify-role-requirements.md index df9d22db338b..f58f371fbe03 100644 --- a/data/reusables/enterprise-onboarding/identify-role-requirements.md +++ b/data/reusables/enterprise-onboarding/identify-role-requirements.md @@ -66,7 +66,7 @@ For more information about what apps can do, see [AUTOTITLE](/apps/creating-gith ## 6. Assign tasks to agents -Another way to delegate frequent, time-consuming tasks is to assign work to {% data variables.copilot.copilot_coding_agent %}. You can define custom agents for specific roles in your enterprise. Custom agents are created using Markdown files called "agent profiles," which define the instructions and tools the agent needs to perform a task. For example, you could create a {% data variables.copilot.copilot_custom_agent_short %} for writing README files or generating unit tests. +Another way to delegate frequent, time-consuming tasks is to assign work to {% data variables.copilot.copilot_cloud_agent %}. You can define custom agents for specific roles in your enterprise. Custom agents are created using Markdown files called "agent profiles," which define the instructions and tools the agent needs to perform a task. For example, you could create a {% data variables.copilot.copilot_custom_agent_short %} for writing README files or generating unit tests. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents). diff --git a/data/reusables/gated-features/copilot-cloud-agent.md b/data/reusables/gated-features/copilot-cloud-agent.md new file mode 100644 index 000000000000..2c9d695c6323 --- /dev/null +++ b/data/reusables/gated-features/copilot-cloud-agent.md @@ -0,0 +1 @@ +{% data variables.copilot.copilot_cloud_agent %} is available with the {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} plans. The agent is available in all repositories stored on {% data variables.product.github %}, except repositories owned by {% data variables.enterprise.prodname_managed_users %} and where it has been explicitly disabled. diff --git a/data/reusables/gated-features/copilot-coding-agent.md b/data/reusables/gated-features/copilot-coding-agent.md deleted file mode 100644 index 3d3477b05b19..000000000000 --- a/data/reusables/gated-features/copilot-coding-agent.md +++ /dev/null @@ -1 +0,0 @@ -{% data variables.copilot.copilot_coding_agent %} is available with the {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} plans. The agent is available in all repositories stored on {% data variables.product.github %}, except repositories owned by {% data variables.enterprise.prodname_managed_users %} and where it has been explicitly disabled. diff --git a/data/reusables/repositories/rulesets-bypass-step.md b/data/reusables/repositories/rulesets-bypass-step.md index 0583e4064575..a9dad6526282 100644 --- a/data/reusables/repositories/rulesets-bypass-step.md +++ b/data/reusables/repositories/rulesets-bypass-step.md @@ -10,7 +10,7 @@ You can grant certain roles, teams, or apps bypass permissions {% ifversion push * {% data variables.product.prodname_github_apps %} * {% data variables.product.prodname_dependabot %}. For more information about {% data variables.product.prodname_dependabot %}, see [AUTOTITLE](/code-security/getting-started/dependabot-quickstart-guide). {%- ifversion ghec %} -* {% data variables.copilot.copilot_coding_agent %}. For more information about {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent#limitations-in-copilot-coding-agents-compatibility-with-other-features). +* {% data variables.copilot.copilot_cloud_agent %}. For more information about {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent#limitations-in-copilot-cloud-agents-compatibility-with-other-features). {%- endif %} 1. To grant bypass permissions for the ruleset, in the "Bypass list" section, click **{% octicon "plus" aria-hidden="true" aria-label="plus" %} Add bypass**. diff --git a/data/variables/copilot.yml b/data/variables/copilot.yml index 3aaa08d30264..6b1717990d2f 100644 --- a/data/variables/copilot.yml +++ b/data/variables/copilot.yml @@ -44,10 +44,10 @@ copilot_code-review-tools-preview_cap: 'New tools (public preview) in GitHub Cop copilot_code-review-tools_short: 'tools in Copilot code review' copilot_code-review-tools_cap_short: 'Tools in Copilot code review' -## Copilot cloud agent (previously coding agent / Padawan) -> {% data variables.copilot.copilot_coding_agent %} -copilot_coding_agent: 'Copilot cloud agent' -copilot_coding_agent_short: 'cloud agent' -copilot_coding_agent_short_cap_c: 'Cloud agent' +## Copilot cloud agent (previously coding agent / Padawan) -> {% data variables.copilot.copilot_cloud_agent %} +copilot_cloud_agent: 'Copilot cloud agent' +copilot_cloud_agent_short: 'cloud agent' +copilot_cloud_agent_short_cap_c: 'Cloud agent' copilot_cloud_agent_tmp: 'Copilot cloud agent (formerly Copilot coding agent)' ## Short for "Copilot Extensions agent" -> {% data variables.copilot.copilot_agent_short %} diff --git a/src/ai-tools/README.md b/src/ai-tools/README.md index 4c9d7ef7225f..63a55d31d929 100644 --- a/src/ai-tools/README.md +++ b/src/ai-tools/README.md @@ -56,7 +56,7 @@ npm run ai-tools -- --refine versioning --files content/path/to/file.md Refine versioning in a file: ```bash -npm run ai-tools -- --files content/copilot/tutorials/coding-agent/get-the-best-results.md --refine versioning +npm run ai-tools -- --files content/copilot/tutorials/cloud-agent/get-the-best-results.md --refine versioning ``` Refine intro: diff --git a/src/ai-tools/prompts/intro.md b/src/ai-tools/prompts/intro.md index b6aec3c14da7..95e7b7488f87 100644 --- a/src/ai-tools/prompts/intro.md +++ b/src/ai-tools/prompts/intro.md @@ -38,8 +38,8 @@ Use this context to create specific, product-focused intros rather than generic **Content Summarization vs. Title Restatement**: ❌ **Avoid title restatement, corporate language, and version-specific Liquid**: -- Title: "Piloting GitHub Copilot coding agent in your organization" -- Poor intro: "Follow best practices to enable {% data variables.copilot.copilot_coding_agent %} in your organization" +- Title: "Piloting GitHub Copilot cloud agent in your organization" +- Poor intro: "Follow best practices to enable {% data variables.copilot.copilot_cloud_agent %} in your organization" - Also poor: "Implement a comprehensive Copilot rollout strategy covering license management, environment setup, training programs, and adoption metrics to drive successful enterprise-wide GitHub Copilot deployment and maximize developer productivity" ❌ **Avoid starting with similar words/phrases as the title**: @@ -48,12 +48,12 @@ Use this context to create specific, product-focused intros rather than generic - Better: "Use {% data variables.product.prodname_copilot %} chat and code completion to research syntax, practice coding, and master new programming languages faster" ✅ **Use concise, developer-friendly language ({% data variables.* %} OK)**: -- Better intro: "Evaluate use cases, configure security settings, and run pilot trials to deploy {% data variables.copilot.copilot_coding_agent %} in your org" +- Better intro: "Evaluate use cases, configure security settings, and run pilot trials to deploy {% data variables.copilot.copilot_cloud_agent %} in your org" ❌ **Avoid overly long lists and colon constructions**: - Too long: "Scope issues, pick suitable tasks, iterate via PR comments, add repo instructions, enable MCP tools, and preinstall dependencies" - Colon problem: "Learn a new programming language with {% data variables.product.prodname_copilot %}: use {% data variables.copilot.copilot_chat_short %} to research syntax and tooling, build and explain small programs with {% data variables.product.prodname_copilot_short %} code completion, and translate familiar code to compare patterns" -- Better: "Scope tasks, configure custom instructions, and iterate on pull requests to improve {% data variables.copilot.copilot_coding_agent %} performance" +- Better: "Scope tasks, configure custom instructions, and iterate on pull requests to improve {% data variables.copilot.copilot_cloud_agent %} performance" - Better: "Use {% data variables.product.prodname_copilot %} features like chat and code completion to research syntax, build programs, and learn new programming languages faster" ## Quality Checklist

E< zDUwUQvJ($KQ$^s~k>S|+$j68dtfO{IrRpgEqF!gAIyCwX0fHeO+%KmCKxaatxp<3c z}z*){S>J9$hQ_1A)*VZ5c657}h~Nh+;GLzdXJFmT6)sqHRT_wK(;G{_Sh4 zCk7IF*2#_INoC+9$xeNmM*)}JXq%JtelT~ZpGz)2m*ps|l&oyrwB-y+Y0A5iEhyk2 z_o^p4e@J6+5kV%Jg-;6vZ`?Zx5ji&%eV*m+9&`s@z�W$p| zU7|AWOVe34Byw!}^<_brNeg~Mk`KA<1DN`9f=Ll}O0)tXIT$+gg(vG(agj)Z!k!IZk5iE z%ho1^vY}!`gb8IeE_$qGiCW{)N57-f?w+;C9HOnBm{!mGqBP$oBwsL+QW(G9EUM^f zDsWw8V1yW(^m^<6=Ko7TOJ6`MJf3yHbp-S>GObUde?8$FO92fHgC}}5oBWCq* z!oI9(V%1rGSJSO97GGpsZLcDBCg~$K{+KkC($CX32+6QMX??0jH?mc{vrpO>#IAEK z?e6K#*%ekY_jf%zK51kG8Ae7JHr7?0&?5?MyUFcd>1lW9!zdBJoi0vD!QodaMlJ*u_cnC0g7GNBpneq z!#+;0hS*Wwnx1=xx=_d9mC@dVH0#uzKG&k~jqps>zgLaR`SQI7Ss8h>Wmp?=#$f!( z1JO7Hd)01v(P{1H7ABv%;grbS8xdARzJ;K)@2r>uw3M8dlPo;~H1xNJo%Si4E|EAV zNeq!|wUUvLxhx`l{uHls$pfZn36CT+ZRe{^RpWSK{GvsO0{D?-y?P$WD{L`LV{xD@p%R=ay2!pM6gTEcb%YDD>-u6 zuiRzZ(?@y32e1=o*S`~S(h8=mk+4JWQuO&q`hdZd(d#p-_))~bH9R`{D{f`l)1jYY z6UMsc-Xyh34`(2PO3`N3e5f#@X~5Dg+#8dXXHE0T$_#in)$aUQc1})xsAAY0oEth0 z{odw=ZXqYL4?E0pUyqCit&Vzlxhfr19fLSOjjI`l2C{!2#k=#l%^Kq!rg^A}fw&au z4&wcxsJGw_Z^rCv-6?LR{!|{bRx5E+&Es6042C|Iwy=cq@rwdYu;q;n;!He6Lq6#; z=|B11U(p-PKWLRcJhX41{%y`IM%y!^<*c=0m9N3Rvj~4Giz`Iec{+bDu*n={@$(td zd7scr@sIA#Hx3spD>|RVeC^)S4Be3|Nacs(uHj3EB`jgLkl;$2m9TV?Okzn)*t|~r zn$B03IGAm|E)IdqSSQ1=rUfXXX0tftsP~A9+1*#$A7CSr<}31Np%Ys>5XDSfr}LRU z1Rc@ah zX`Px!-uv=hB>IGN-R2&l45$jQJEnw|d`W=XW8hHdI(lPTM^4m#MsWY(phy|^xl0;}1mgEk>of}u^SeXqG5g9Yb8mSe! z&veb5QMal1T8d7Kli#R<?aUjC}d*6sc0$=T`+W_ z>=iNEgwxbEBfYShf*-9{~nd6^X`2w||+?pY(@cpXBH#<5skF}&o>|ABkQ-@qs!{2lRHJ#Pa zcq?k1Dq>=e3NvJ0_D#FmgiZ_ohA90TP6U4`gfyTuLc|E#>#j^NIiX%>PhFXg!1|p_ zEb+-ayL45g_zkZLL;|KCE4RV76Sd0(qpJ#9Qu5!<1#%*OBqQ$t$d2e$Y9<52aRIV{ zRrYNGD7Xp6fX0c&T^^y)>-ol=GbnQdI+?0ZldMd!AXfDY{;*1C~w6x4FL`qBN=^0a5e;p zr5wzfSpGc|tP*Rx1(wW-(%HEARB6g>&sQMi_o&%yvp<=-# z&N37Mjm?60k2;OdDIJqp`eGIO?X?%ROfBC|IJxax?35lc||em0)DMokB-g| zD16RO+!4{e`xu4@N~W*pSzwdIzerppL2VAqw&<%=45`+ zn68j`F6v>6AM*muGe(_ZfB@*Wjm7Bw0wB z9yWkEK^uOTD35}7#h=OsxaPU&s#Jt_ctKKS5QdBzu01$1-go6|?f&TdiaQBO`jBY^ z{SbK{H-NoZh5}87Re`Cba!z3(x{_ujpxoiKAXI0@Ab{5Sk8c+L<}UmT(d_sAabo+Z zWd$fHz3s`Mh%R&4-9uhad~(BDOPLKdIDUh+n+x{5^&Knu>42@~-@Yy5uv%S7AFl#z zWyP5`U+k@!An1F}U}8WfD`OjI{?FwrBX6rO{GkeJ3;1RaP2P)DwoN1H&;a$7X{6U99nN=28ba85I^j3nO|{do=>UOsh<>^WN8 z3J=o&t(DlF(B49gkDkhl)PF;w*RD;xWTv*e+?N>Pt=V>X;rn%AWHzGP2!o(W% zB9pBLKK}|IxtWaf66E}nx_9}o&JU@DwY=ZD{)avKpU~j1A&idsoPlD4Goy*v&X+BK z5QvNmORpj=`dHLSe*}b1-^gRygK7Ld_Xa{}V(C zrk2VfL0$Q(cwp>11j=!4GtwK4EgN)CI;eCBXD`>8mt2SY~GZBzRm2; zq_DcTel%#L5&!;{k$ZJV1Lv*|o8r-AIK7Un^IZUCsQwn#@y^mZ7SrAmZS9#RjyA2V zTObGTde{wThPMiUlHr})7vIlYOWZ+klsnC|JYz#%rZ|R)#Aj8^)65_vbDF3>vLkVo z^0FxGPphaKXJe++C!T4rMjrIH zV=dDDytnx1(mt*TcF~yBz{?zRu?DUX%V@?cB34ev%}?T5vLVTByVS6|3t|+a3`C47 zhZcS8Uc1xX9CE68 zUsh$+TaiVPVB)g&LCV)Sf^(gg8neW@!>(Y!fbvohJ7*~1;@wB#oELc9?GgI>FuD-625G1PIRH z?(Y6hHoN=m`^nF_=9+u%?yjotKBwwbOtYL$la&%Yf-Pph6DUQNk&O$N`$x<$=vry0 zFp27bdCA2#QZ`nedECd)1y#9X{l4yDcQ}#}6Z9VLe98TEA=&OO2DjfEyMIXD#8m|$ zpw`jlnF#i@ArFz>O32Xzl`s<1SPOm@ti5oW$|&X(BP!5ZIRv%mu+!=|=Hla_OZMS| zTL0)+%6zy;cHeujh8ZR-yl`zKfd95%EY`=j%MI?Cfjwbb=j>{RWHg03W^mnc&Tjtw z)Tc3}z?AP?cPSzqFj6tY&dE=_R-4#FIN5^on~gON=PV0vnsc3rbtRj3300|A8W;5} zXZP*@OLzazw82H7p2W&tENAcCKBlng4ftGl>bhT>O;)?30$O54u|75jf6jYD0P{{= zZ_9}%$qB?48UoI|*Ye+yJ)ErVjC!!BAhh-j_cP4E8#18`lcyIN=rp~PrpGzrO%np>di>ugF(O?16)KeY9EorR<(uEf9 z*YEU_sX>v&1`atkNq&(a))o#A&f-Bym9*Gi4 znp*js%oG)}>XGaslUmac?xO3_C#Ajz*Xi}9PseW;S}e=O*711}YMZzs?b)nBLgK^M zXq$YyCa7ZLrD$8Y#y`-Ei_;kUyv%b)K2*QHf%{saKH8eWXPbo3h53W&WR*_uSHcg; zPuBmQS^gXPG3g;K4@8J#7N^cPJT)WnyYNHV+7>-tPx~!tTP(X1URD-8UyrS`yOJDV zi}RIIT1yNRQh9t)B3W%D_x2#0OVmG4ij!ec9*E=|%y+Rb*%nSB=gJf+?oXC>{>W;V z%FA~j!iM8j%v6-hg%c48-s)(oWXoV#mO$f}*XFRUU@XK!vlz zm1E+U4c@5DurCKFzpVMaFC+Sv5+nktx^!_gc%Sp78oIx?fzQU0-%1trs|Xrr^V&mH zSlkdZ`de|au;4lbdKjtV_@q!{kjCW~3Lv97|BGJ?w1+cY-2oOGu# z1fpUJMq7mw6H=EsXCsi6>n2fn%FeT{<*$bLi~P-45fePFH=|@Y#MSGmaGtXfH}eY2 zp93*zxVw=uU9}w<2d~wTj5E#WooHO`>uTQix^}wn*x3AkyDI{?!;1ZorwcizPnlX} zRDP@IP6pExCZ$^sL{f$iTkv71h~zkNCcAE}eYG8ra@b>HSbo@jFJU<5ZDLf-Fa}zP zh$!6yABDpD(7ur42CfKTvB9Q_yE9|E)zg4jzG{WPttf=VF4@;%kNK!pLQ@TSH@`-d z`fIhsuS$jSDh&U%HyCq+d9q|&Taavl-8wx(Em+?Z0-UxBcy3l(g!SZJP9d{NZ6wbJ zR0!8+)kx#?rss~ioOVLUa`naq6++SN-Ejt2n$%cBxT&oCSe=+)C2{+VSP9(a@zxVc|6EQ^O51EU4jJK$Xs^2w~!yF;aiy z==RFs#>*Ywo{K)gGP_=I76V*vX(n$|@ZnJjLKUr3p8qW)k@C(EQRK(kTCJ~Pv_21M zh;;`G&pudJ9t>PROAGLonQ@IKzR@D_7_T#*Npo$Dt?%qd735dHhVnOXL1%`_n-tCq zipT!`^oKSyz>|3lD}vw>iOx@aqY`;70!Vdmm0q7DF3E$%=QKfkW6tX&F^yvI%_-|}{#{}?2H|-DeFQM+M;uuM;>d#CZ{&Ki zXWUHD6dC2FjSV6hUbMD6O};^{;IgDF?|h2Wmm0CsvCkdfm#vM6c!7EK4y)ohbOx_d z+<@w#mzZzdTU?%qzzR{V`g+0fCHFDr3~vL-v|B>Yn8Agy%dE=-RUOwPmAx!x z@2oJI@VP4Z_@*p@=9Vn+cY7bqr0Pie#}q$1W<}?vyXWUf!4|o1-uY$*y9+*o^#J}G z%l>>25~lh+RYt#Zr>iyG0eK2Z=dW_&d)h&aCXAKf_A)Z%;O;DuTuWn?NH86iLs$o& z^PMB3t1^m-JLmR+>sctwVc(UG^4<$eqK1YaR^vrY{7Axk$R2}Pzyitd;@YfA^pFXW z#i?26Hy_8jY9npF5s{@UwT`>ro0YVi+?C7xoJI@eU0nEYI`4l%FZiIH7L@3?Y^f&# z`@;;5+hk~sQ}BtFPNQ0d`WI||w@_7?1Z@y=0!z6%3Jg@;Vp63hgW&5+Y=st1X$%jK z*THNlgNDABl2zXA(FvWwZSeJB%cve7WLh3ri^3MNqU10(!}d#ZRb1tJu{_UrWb&-x zB#3Gs%ypqNim0&72})hrApdh~`eS2(&Iv+fEuFgm7mM#%J!!L8t1{sCoF8fDlBx9G zIHnHeSljZY!p&COO2j9umz%q=E{%!m!5o(`lY5g|KJogHll)aH=ty#fEfQu)ax=_z zyNRG`%#D4tA|^R|_V=YmyvgV1%uc2#y*P20eQy#jHw3qpRVcSn=F53A zSn#42zt&}teKLt*RPMvv^f!XXO}z&9DNDzT$@#bL%AQ$JIyLQoVEPPlh<8i!=sC7_ z;KYa~xQxg(w*e8E&he-XoN}BC4zmZFR95?VdYxA7P_`Yf^k&1_mko!f7FigMWnzOh zT8g8DApCc2IJ8K&_$}g%G_*XW2Y1HbUa=pi!Xnu>HoJ+{jT3> z6(?PVv&*8M2J1BLFV$v(?`9(Fr5NBg@LBq35XIFmC~{V<7*o%ER1wx4XtvgHWm$uqWpoOPPg%Q zd1}GM=0Derj7{hm0Cjmgs2+I39n&wr`hQ1`j7#W?%C(&zNSW3h%tqed*AONTl5$_*tl+Ur9E9Z`T$@2D+AjKSac6ee zf@8#g{~#v^ZRj>Aol`2(Qathl6lXdXzk_p)|KFwmobX4&zcPoS(;L@Nrm$`|scV z)?}!U77Bc~G}Z)PbNMI#Iq*qz4VPA1A%jO{KrV$`r^!xKe!}E^-GTbjUWpr-q($=> z(e?_j-Gs180G)QhXTpzMfN+d=jcqsBs-u1{GtB_9^&IST$1xNwiS=1V3ORzgWL~>2 zb(v(^?TR|@e~5;E20q3DPJz!fduLVrw@*?ltewSEu$X~t7VtaeQV1HP*2znGWnEju zr$6fL@Z~&$q|Fsk7H6sn7zq@Q!i_VgVni!=6H*Fb0(XAsWR$DbXXXiKZ92ppdS*xY zI9ELBHCUh*SPuz?hHw>aZBg)0jfPT7WjgA*9nD8rPZ&HsKl2xVm>R_Vf(q`Lc&JGF zl=P!vwY0*aid8*WP)RoAO{e{;U#TWDmqEDpS6A|^WX$pV42P^iYM$<(wv}gm2eGH8 zr;FZ-|B z`xkGGk7ubya}1l+v`|oRFzeCb?`%nMra0yEgZ}&Kjw_$AYjfjo%o&5Q`2s*xNniTD zEMJ+o25$SQxDs95RN|HXubJ;}1ee{jbic zFUB58M&8BplZ#fh@>HW(5B`(E?;sDB3OdfnaO1W7vmjjP5D3=PhfR4i7sN}Zpd^Hf2>_5D<^Jz2U3I(!iB?dwy5;HMuCYjRuGUU-XseYW0L zXMVb(`ptH+>A247+Uj##;ADl?l*=5ho_4$Y=`Uttg;rvD*B%%D=ch}1mQP2?EaoS= zKP~rkyXlp&P?U~t7VYBc-WrsVr#g3lbq^NatlKa_*QTACPefMcAM9emMsx-4EXiKD|d>a*yTXJi;4S~chWm0z_Vi0`sp9v*hX_TdI-OBq?0G2$} z%x-329DCN4<%;Xv#V2wE7m&n1d;GMRYD-KAFR}k0_4af@!3 z5SfPES6@rk?e*H-;=v`W$s3fBvZm7#sVrt?A2T`h>^kn@?T3 zKJiphXZfkmRx4CF>G%3Ehv-)39_0ZjydXTcrbiq(rmN2?hth($=8o5waHqv%_u(<#(*mHB+;TFuO7^(GY7x(Fm0sHhNME(GRdXH> zs?PS_*bCocuRvjM7&0EYhOT2NkL0?uEMz@e z|MoOkJfZtmAO{%v+P34hzfxI#)ON_Ib7UEQ!m7&}7lDlg@u!I>glNtS-29N1e+7N< zKhq*d|l!Jrl_mUqGtXPYMvFLBB(A}@H~LPd>Lq7N2? zM=eFzUmfGqyUS;bMg-iywe9ZI^}bHLSgcsMcwB0|nBPFGB~ml-l3f-q?UmE|Uj!-ft}+Cyi-_VRzi%Jy-`tvE3MNe}D4b_3gx^Z&`8K_UWEv@mOXbU?3%8QnI17(dXW&(O)vL_4}9PA({CNT8KbttHh>JzYtne z?hBMKT64J&>~q~Vn^X|QAtF4re~!x(Sev3ir8owpkSxLS2_2M=V0pUISzr>50)%Sp zUZ~%d^76v3+7*(L+%AvYAt?zK!zwJKQpiGJAH&>_akiUliY}KQ*0*A~B*cD`ZZ@hR zLexZ8u-zuRJC+%AZ?%~Fu=Yi9?#K8l>0=OA`}1tNYS5%X7+0plQ>{Z(jXYRP7TyOrB({30c#u9|NUbkumiSZOPWdV6kP@Ap+z z*B``!6fdq{YSzNh-^PBlbbY$mtgV)iwAs0_yekVpzPtU-KW4q}KURhn^?8k(S@2Z4 z8`JpHry@ePJu*-;>#JXt073K9BTDMo($vffR)hJVdH7r{=9uoC&CTH=!L7oTb;=j- zAaM1#D);F^e!I)J>l3hVik(^sZ1J~&cY|Zz!pohX*H*AxMnv;WH8x$I0TvRe1qwoaZlT9?~5$Ltdi9ufNFYCnc-@I4TQ)zeX z8j!|T0`1gNX92xmyt^^@0c(5c&PVgiP83H*u3t0@rl`O&x=#cgoBFCWL>ONZn(%o{ zHA*V==^sy6XXk>NAMbGtMwVait9@9_%2adsjT7FIn*vlP8M$6{@wlDD8d>7eRdYMe z^8AM)6X~`$zKm&X1OsHGEh8{u!4aNIDnpI*ry&{QZsIbJY$l^FQoFvYwM!sS)BNe# zhWqf;d}P^u30ndaQWLMiesQW%)hdFrM#3Y%FBJ5(LK5TV&;2?3M=Gm^ z--~AvXv^7CW5cibYO(#)H{ce@w$f8MI{yY2T=a#HLcr5+HgilKx5l~Z)ZTHvvpCcZ zF)mUefa)W_)ONI4cUbb=4ebtY_qWM&%q}BjDg%<=T>5&LB&jauA_^h^wovyp9;)vXFF>P!a1n{E- zk1XOG`Be*V_%k*y-|0`jU|iD20gJP}A_Y$U>R2=bkN@=%9dt;E7F%(g(Kf5!8({!h zjVJnNm{L}|BYhcp{-^#+83FFe=z}8fBMvcn?tR>0XwMl!ql>L!8E|FZ0wM-ernT(` z@C#$y#pPIOQuvqoVU?ocWKF5l#$72q7LN~r{#jw)Gs?zF@#@^$6=(MeMZsYXP?Y!1 z0(_g)ihZ}^BsPW!fVwM{Mf@dD{H~h}qET=|@9w0XWUE(}F%c`S3gkQgVZnKvpHxW$ zCEegFxUi0D_%_bQ>m+s1D8v_ccBkNTSvXiZTCS@7g({czjm*(6F2UL&(?wBK!6H*) z_`%Is-nUylZgINW^dvra@qF+bR>%bjCmoyWdL8wjFepoDN`Y{7jM_OaY6z3kpxWs3 zP1LY0O?OYi0zmZsDW_dU6mchK!Jx5KVn0~68@HAJ(vA{tf1#dW8U}BkQ$|DS!fu7+ za$U_W)dg8s5Ccs`Nap5nPQh)#)BGn1V%}iASyI7d)S~dlZp@hG-k}oUF zoYUP&&j&QA492j6B`ghniiT%5a=^s<(EAryl5cMFNUgXbBlVrDoR){~|;d#8!#C6HY$V^(}r4oaiqx(hz$~MsyBHHPyyCi@)Wxgw|=A{L@zmLq> zfmfZ^P3;cj&B$dxBxV;=HYtQVx^6(}wBHBJgET)({DRIdbzgl{bOSlU;<2WkrmJ79 zOOlL6o%$zyVQl^Qa(co$T||62H2?yS44LItbisRE$?0x=Q@Dm|cre?CHrwX{@1PB1 zH-q*uisKM;0WZWFxR+_(FDKrH$-)=?saEs&PPzXGeH7M0QBNqG=MGXeC3eG4|SF2Pgg*=^!IN!T7$H;fm2 z+dpU9CPXb!oZ*9ky{kdPe6y2&`u^J%oa`K@9SxD>qG4#Lcny(TYQ|IYyI_o9aP(+= zTIIhjBkClmYJUs#gDt;8KHgQTJF0MIjB{V{MU8>EnQ+QjpXO9GVifav|E+Jeyt*?t zWRWzS z>|#@8IlC}wgDN%OW?>b=p*S{;J#DI1AC|438iU*4+k+B@O2Ge``{U~$C=K)e+^6TIKs99P9SPfD*2KcJc^+1%R8 zkBO6IY}XZdzH)AaxZUeR-E)>A6nNdBOC)dK53@E44`5pegguHi-=pF~JRLR9_SdIa zzhNNMR|H0v6(ql2Ds!Vw`kbVxJi9JGTwlOT>6azN2yPkTG4lb)T5T4b;?A3cKI%hU z-%OFVdc}B6Z1cNt!F@+$>QW`LT5{a=4|(2x9`8AnyfzSce1%%^j>a$Tw-%U|g*`s2 zSn{0nSA}#+)^h_cyCb5HpinI0|9cR^fEe>MHd*>nY{WpfF0nWsai^j^CUd~+YNaWf zwD`ND@o&SQPePkF|M5Pi>*7haTACzIEx~5A7qX4J&q^v@Rb9R0z?6-pQowd9Y*L;V z1!z(eK)o=~(-s4L?|ABqS~hZ!(b^p>L;y*R^qn?TG#u@Uhuf!l!nhr|V9BoY{w>;@ z>~HGxB3kf|x`3rm=%%BvLjtK5zkWh}K)3+@1^ zEpJ}0>c_XhLVQXXXW%|mL8j9Y-!2k>`C@X6*oT0e7=Z(a#81Xys`NX9;Ct_G*0cL{ z)jc}EXAgpfj*d>VtJPgfEGA5BvU#do#pz1{(Qvqd`A_BQd;np#uOB1;sd!{P+%trr z@R?S)3^}xbj55^<5%5iy)Dj(U9$U?FoNseFhllb~sWA5Dw1jq~YZ`kGF2wY6fKLGf zgCN<6Q@MI&Qbcv9K0{VNDG}wwj+QOi{3-rUrH%deh?>)7rF#j!({;V+I5e~z5JSGP zaVCxpB;Ed0C)+#C?s=NwKBgt3ET4W;33_i$+Z*k>$ttp>4yp2XL*RU7PEF>tPL@fT zsW>e_Fu|hpKJ0L-=M+`L+Z?Q2^K17r?eKR>hpnK)AG^~q7#Hr#=k~3~N$G4qzqd1F zdx9o-AD0k?n<{~a)z8UgP7?a|8zdc{&~Y{q(Kcm;=%?P2P%367Ys=s((_YG;d6+*P z+jQ<)C^!`pxx4%=wFNbk7ENakmycuJ(^V6+-B~pIuaJeqM%aCN*v{`TM}o zidGV^4}|`4PZ9Rb%T*GdQ|6J{xEl8pPLxwQj$P95KjsxztC(2uU?CYN`BSb5{R9(t zcy}W?OPPSc!lcxs7-h1}wS`R$a)=ycnP-YknSpD;=09uyK_u2~R}>gVn~s)(@V3ky z2+)RPmyl^fhAtJ|uPQ5(S-_%oVgnK5HHG_D^5zonLmsCyJH)?GsvcU5M*=lDmp$}w z7Y6vYx6OXbInbhuO7oU=iieTa=!i2~VFRwEBy41Qqj!a*yJa$7nE(q8c5H@%t_RI^ z&pClkm{RgGNEos*Tk&jpmr%xBhC;7HDy428E!lCN9$#9bqL3&@bTbxNvI2o08)3?v zii(O3T&Y&Ns2XuIRTZ5g%5pN;fzSo@C?J@Ez$Xw~vxRTW5u%!*=T8ZwRlNvm&@Lik zOOxtxCIVy>3S=62je%v$pnCxN>rh-`X5m3P09=@6!k8fy1&<*X?@8eGV>f)9^%N@1 z^Ah_#y7-glEAZ@Q(?C}@WEUEv>~OaHD{2|#?eUcC!_@(0_X`iA*!2v{%No=*_Yt@t zSJ8@H**EEU!U%#AnYu@xNG%%-Dp|xe6pQOg-BqXhXJ4NYo0BZ|jp?z46Sj+x$0^(T zWYdSTWn?>i2`uP|`{twGm(0ZH4t%!ndXAZhfXXJLb{ypR&wUFc5Fy2c0Y)JyBWHDi zV5tGaF2PPVm?rEA1K%U`88`tu{Z_*Q<{!KvFeyj~X<$6J{iI=7zS(3Dg;q<SL7^rm zG~_i;gyHfRFW0%}zF-I6Y;3*@Y1$;mSxk7V{Wd57S|L2ydRVp^crK+a1 zFW}`lH*&$iBE;|cfiMo)di#>8TX~ol14xmZ^{^Q$NVhLBGlA#uStvH``Qdtbuj&GH z=4C1#pFoj1($Lm5uG|};FXx#Zhr87ng4JQTx>tL7F8NY?3v=qPR+)8{$0JV~UtgO` z2rUa1LN&ZSTouOZw{XpJ|MtD?fsmmx*AajSi?W1Ao0U2fNfr3HXix#ez}YXmyx&*_ zO(;Pk-&bgMrtpj8$4h;qq40vm#u|emYqXn=zzmrlcKSdz;u&r{P_sR1H&^5CSb+m6t_Uv0%Qitk+3Mq(=<|rYtC|-AgJ|ZjA#M#S(5$m2WT^~V zB|w-0%C_;BD8o#VW&KZ>6%{=m$=lCA+!Yi&rp;_!dWDqhXwKYh|FpgTy-8TWK^9`E z(WcB&vA=cB4okSYpj{8ERi8X_v~@)3A~w-C3(@HdY{2;Yq_p@JQa+MGxv`99e5~=; z1kdBm$uYW}B7{!2Kr?uYH^ox>K!g5H+UFkU{6#?QMwW7@W^Xs|wt`h5Inxa!OzEJD z2X22UGt>{Qb`B)H?-zHrlegEoonhPu@?Gq`n}i*Bj^(-d zY={o@PY9q1)~3&-5kowpqg*Uu)XBD%q9-5c)$Y8GwuWN=#&7iX0IZ9mro6@J;ah+i zw@XSYeGKY+8PK7HPeH^8GBwjE0lB?#oKz(P-HUxGFXi_t1e8i!_FdPk&*X}h*aO%U z_|{ttmCF1Dz_1oq3_3=y9Jdw|iG0a@16!7$QWl3%fYcw* zv`y@LCw%>Z#}(v~dUefN_EuJ*9<0JzkKsYx6Bve=Xc3IUc{5PYVRoSENx*?Bc~tAo z9-*AvUBp0XfXAm$Hsg%mzVyUL`Qs_eZef?Ne-2P8t7C_h-~vFm|MpLWp4Wv-5NfN$ z6?J?I{aEg=UDmE4)54ryZm6e}=rUsQQO%X}6ZgOF%YYAo+;&=GylxE`(v92Z+SH8;*icx_t5-fMDpS3YaqqS2OiTNz`(=w`h=MJ3Gful-xpFB& z?6|7EPyNy4@$6I;QV)J&a`W$(+r{~$GBgn2FwpCFh(&y@(tCi37~os2qK!*8!rdCG37vSV(98&Y(h zp!uy%>~Qx9u6YjUEdG2|C5A{2tlN2$ke4yRQ=56=N8wJyuK^U_WUHHenwc@Nu!dK2 zM7;I|8UF&Ic#K+}W7@AhP1~=LJ0$liU5He5Wg}(#70PN+Wb&20Vwx7}>g$4MF7V^m zblY57k2;)NLO#^yni34FY{+fQ1^t1?z;}Ocv^C9!t|1j_xo`;!6OlLvS%s+hf)HA* zOan@yNis$p-<5?Fj*6&%e*jKVf^@P>CW0O2R4E?KSLlATU)g5*>A+uGwR=%gprpj)a$)V!R){T8d|Ui{!R#V0n369b{pcw&yy70+LxqWDt@Nx6FE{G|66AZz;( zFq)F{_Q$i8dBT#{{kBG7Nr5H`&zgeOysyyfvFfBH7#Y3*!|S8N)Y+J`FCjPvNv|un z0a5s^;Y%LR?83@Xh{xdIfey5^bb7EX9%`^JE{|MdCtZHIUGps?mdpb-b%O7SqH2Qt zdp&|QWV`rl8!w3w)n#N4V5!`ms;pviDV89y`3!DnHP8kg7>Ewnt34 z`mEh8eH|h4fXd9NZ^`lV*_6TuziyQY6B_A(_caypM) zwEPvO!;!^_tE#gdnMvF4kytIC%6sAT%B+D~TfW%frb*{?NOmyh!*Vk1W$T zWm?@Y1B;~3#%A4)k9+(QO!-$2ZOd-YLAU6OMMP|6K)=^M1sR{O0WKi~%xjH#ZAV%T zZawDLmCY-OI%_3)lCi`O`i{@rNf@pkuEW|TJr7WsL40@Jl4d6){zIH!i-%H}y&u1B z7bY7hH6ENSw|#3bm*i?kiim(`SuadB!_0yKeQ*hs*ATeBQu!W+(W!%he*9pe^M{oP zObQgD>H1X(DL9LNP#}H&>l3Q$CK_M~<3m=nxVWryxv8yiVguCvr+=fEg&nk%$jp1; zklfGv>9h`kK6iJ5G`Z)G9rvW>GUdJjd6DmMI*_jRK93y=;I!%zUg(Y(S^xNMP5$yh zM`PaVVX7;CJ)T9ktZ%#2S~h4K!Q&<01t$YhL#Hn&G#zDy;cTukmuI-TK=73c;O7DM{>^Quf0aiKzfb-zhc2rPt94D%vei z-*21UlK?=1bL%g#A3{nd9?>eF$pg<%sqZ+$el~EYAuX$rNMa~^90*ISED8Aw`{o$b zIAi@VT%3)F+@rGbson26(Z|6zrm1lA4KUw8?m?R}&u!k%n_pwcc9}Fk6 zX2?d+!BCO^gSOra7ieUIU&cN^;SFGTp3ghGQfic< zED-Fj4dqyD9}q}xl<^i^`n_!9v|g{e4{@Jqj<&s~a4HacoEdSwNk!hTMGM@nP98r+ ze5bFBHP(m1D+cOCA)OKM>}J$!L$YcZ9E}Ms<5fGGTffno>wvl3u5@2f3(AZky|}nA zJvsFsa*^VH3GgbF@xeSXD~o9pLV9uC7TjLCWCXtQKYgx%koI_!WgtU1sWs$0-bo6E z6#`|%h(BA8_qc!K-qrhjc|wb`(Yk2A)OCgpk~rZqlU6nuFl*v{5?lEqnXUUGw#3LH$7S|iWmXqGZ2a=i1nryk<&PC$ldC|fMm)=Q9A zT>eU%6mw^slq>pnbVfsuG1-{xWu$+O)c2wlD5)x&KRw~Lc%57>gmD!R==OHwV)tuI z_;Ypk_6+BWvTLKcFy@DePk4s{4<&uVOGFg_LY$W)CY=2jw|%L#2kYvj?rdLy0$&03 zjm=)fF_^B*Es%9p&~v%kK}vwKY(iwd948OW-fZO;AkZ)NE1(C3_sY=o>AYBIq?6Xb zhg(`&1>}|Awn*$?dUigT9o9JhLj2Y#zRVL5n{oP*`uuEP@-*CN#3w$m-*9(~sL(Z3apV5vtu)}3-B_WMBKW1^St80!1xLtPUoW`(EWD+J^aXx*%m}VU>O=F*do!j?SuQHuT z)X=92ZX(%>JV^50?cC`u;=A>|#iIi=+eu|G2A(sGUax#NL&08pG)nl#9euPYglEK` zo?kA>BAoXraYkTpo}q~CyOUDmp7JtlgMvi(yrmDYoF_TI_I)6q4Gj&A+aN&U^>Y3h z@AHoqz%l9YeOKHMIY^qJ$HbfAFeGAnFnJEy*oTQu^+Kqv?WY1r(3do6$^Lo#)&Sw^jwj{Tql@w@Z3D!M zqwZJtWKcqWbSty>Y32Ac5+5Qf(^ELli^ofl@>#2pcJIN2q70c}HmG zfDO8d0UAN3+>{%xIjR76cnJ=X)p3rD%VOjFTh@5bx;KK{E}0CaeB%18GMBZFizs`?-euwu$km52l3<*M*}<#f5Y83~_F zQ4?pCA6^lw=rUSI7~C+)k^SiUSImmOcg!R?4C$hUbu7>gklE&ToYyq-*>RD>c3smD zbAu@u)0|{Zta5RCG`YMU3B*!B>uk+OeU&ELIFc(GHnbj2LjKxzfPm+JCM*p9(Lc1q zy+mfjoDY?@Afd#}Ky&U+6a|=07A-Mjjq^UV?R1`b5@B2bo-V0aRSTT!usuY9^7T+i z{wtrW5yVM6d-+_MoWx2x<5^on@3WY6hY#8>sHVeWWy^}#x!4$fi_v&f;%sz~*XH%6 zB=m~H&|CIh5WYfTFvzOPeR(z2@LEL#T#EhHWmF!e4%YvhqlIt71-8DAG3VC_ zLm@)yc*S#*)6)V2+wpJ?S#iy|XtzG}0}u)^A-5GPar14cpY$c$R8y!Mu*)qVSs-X)}n5_n7MhpH4ZLfsmKh(a6jmN}hCSLdbk+jdjXSAFA=^ zAqohlKmHHY@`EN1Ly?P&x{P5CbHIg1Vt?UVLVYD8c=22)PY^Qxh-cdB%!w&I=vGOI zr%avBN)Ns7Jl7dp61l)E8Iw#gNP-67NMbOcnOnUfp$A@?J_SAwpAQl?Nw>*JzPZAb zPS@9~t+9&^^>ltK1ErJ}g~4&H=P;3P<>ZtnbHL`h`W{d6A}l0nl|#q&I1Wx${$pVL z?Zc`q-;Ipy0v(4`OcRe` zfm~^Bayg|>QurdZG()Xe7M&H$DwJh=&~wWjVeJPugfy=Zb<~GY^7XWKPBYQM=jqog z%<*?6?WF#VojrF`l4FlU;Q*4fBzgnnh;gLdzj3Wr2iMK0#XMQgzKR@;YD8OD5%zU>#n#yD z=72V}vrOip?;T%szt-Pu#0O|?9!Ld&$2t&6K4`BiUlL}RV?)HXk66+C31a1zO5s)h z2Cu!i!JdH8XqNEq7ju9!$^_xH=ki^W`R0hU5e=+5X6p(Z|5^ZRvI_V9#`)_+~O+?vyqp_&^lr%^_kNwov zqU^3N?G+%T%@IcYA8#mb2#O*x8ntFtE!qgRvS?m$?Jm>c;o~YbK&^{Dh%V2qyME9i z85*W0ENsfrCH_O=OiZHZ;By_f+*4-h@KCwE{QbCe9Eiz_Q71aHb)FQifF8X24{5rK z^Js|erLz9y@dcO>l~6>gRV}^_@_B7 zPro!pmQdm085^#C97lKC?Mi*9By^n*lxPtTG93i};e;`I4r`?Enp!GG2y)_zb#2Z< z1ScY7)|O7as%;{eYwA%C6QcQe%{W>Lq)Y)d2L*?8*_r@KC5kGHs5PwFwH(rFh*V{E zD=UF8XyuEFw3B$+xL4DL|GT$I!x7eGoA+nlBp3$d&Z-p0KL;*eYfx-8ergc=>oTZ~ z2C2&JyHOjiJ%P7a`Zv90Qwq2C*s_J~Nm~H3)>a|`LM)2=YHc=*@5bS(F79NjIEbrN zpDXk7=Dev&5rFuX8Pp>NJ@fILdG%l1V*&stmK=~Dce~TvJz1>bzCQl%SB7vl3veaS zI{d{bD@!J$0wjl-zh{pKvd}@atx4!ASw|Np=;u2&YbdqJqNZ3K>h*!Cyc60P=_%nZ zhH&)O85lL74t*W8u{$1G>uA7NrZyQf$xWdic30|j6z%fA$&nlyv>f;Tp_~_SU-)l& zekteM?&nJqFYmdE_N9U^nUS&P)zuc}GNn3>=l{X#EEeE;KEhC;Bq*=z1_mA~KA*oi zXJ)?JJbpV@!Wc`nh8nxP6!Q2jAXwgyYm0T5vr?ut&BA!+{j%>RZggi5^pG8)6+AX>>;a z+{|s!1JjObLcbp#C9)cjqu~?j5-&R~!M(&qdo~gdV6xcF$M)H9!gtSNo`?A={p$n2 z%`eVEC(D4c&~P#GgE=X@ge7~T-PC=EWD$C)CWs8R#`GH>1e_ANP)n`|$=9N5=nFAB zE7>nUtbf}fI6-C2vMCA`Sr23@wJH)+bzd(H{!mis@IYFsU<3h zGKXPI|0gT52aOam1KVN!qg=T<1g|8Z*VuJ6osH||<0d35`#ZY|HnxS5Xw`CtXy3ow zO9usVdj8{^+9b#uI%JYl6%3JaPv_e@rI7SP%vDKM*21lH91gufy)RAdf77la=!!e^ zBP}`S#KQyCQ!zFwkSN7@!*`qLcI0N;%)oTixuu^^Fjk1-zuL_HaBjcdSP5-SJAoq^ zqt?SNl%Y|Ezc;#$e&wm}+#IlE3No&-c1~&GCXei0F3uG$1oFX7hjD^LJPlgv=m0 z(~zgblsa=Z|FP@AUR1i~Lpt`oozKn=18@Aw;#)S8cH4Kn-^8;JwA8E4zp*@x5JF)& zNM$J+`7Y9i1jvakMrZ%eSZuz+*&JbhOE2wt4yv_S+mHiNT~hmLYs%-GXe{5#kw zp|2HiI&H}A^8G*7=0JBCR=lA#m}$Z7ul$YqEjZlureU(?w|{;708I!Pqk5?TY&|WW zz5B+^LDdB62hIFr#eZ=co^YxY>D-@?m>q-CPUkUqiH#e3XO`7DCBuzk#EWhpU zn#?d{an}83#cwMF#|0I*5UMJ>NJ2laI9C;%6|?Pat4jvHnV5e7a_~%3lJ|H*?4q%I zGo${b6LF4C`kati|NFO$zXzu~q|^TAQNeK2<{~=Te0~>ll+B8XEkw5QDx9zCqpDCRXL9>|XXFn4L zB}Vkk9eR8$0zXe}!mJeLKTrDwr~0kZLRt$Cu*NJIAXAEHcd{092;yM#*Spqg13wlQ z(hpk1p4z|SnBd<;0z8Ndy9_vIg5n#kvVxKpQ`Xy&G|oR}{M(X#MhiJwrY49MvJqpP zrO-nYF@z>a5lr++U|9)0C(VGZO`9H^Z`KIzj!kX%`(1@DDb~6OCDTXS*!-DvGwjZ< zK`=5cN|Ti}CG+A7v;PD;@bBJ3il?9|jxdlxgy@K^5%vmZpPfpYBIB1ic#=>335$Wz z!aZ=!(Zb^+e{T({qB#!*>|z;eqq+>_33CRhx9>JK3o1H95D=nW%HO7o|Fw_*9w`HK zpwkbS$S<;##FvmVJ?(4RoD<%EPZtL#WG?6Q&Phb$zZS~{{XqdGo9hdJs=v>`5(}=G zytIN%#}0+|e>oQnFc6a#Y)ne}N@UV0ICr8BD~7u1B-o4K*$VvmIRM=*9o@$o^q2o7 zg$Oy2M}3W1+O7TKtix&GHdy;1DkC9<^gE>)I0zYVjA7W%+r z*I5@XOi16s%F6yb*nL-UdmZ~9nfbYjpf_~!JL7A!o`OWA<>b^M$7cR_B?YI5xS{8` zc+1;$$+QlBr}mgU$-pG-S8l}Im&r3)`DP(m;wZ84-P`#c&Uj^d6?ECJw!6V?cnN5? z4~W8f8VaUqL|{|uNs0)#O*)%JW9MJ|IdduT&aNR}MOhmGYL*i1kRj2y#f*`Oj*~rm zr%hS?&scPDA!9y#nXN3bBs}(UR!ts^xAY=Rxo05|+^CT3r-hPQA=CN z00C43-uf}=tKIFLld>e^x*Q+KNCR zuLy>^X=S*LZ^=s#WVSiC^X6L^1<)=<&3n;M;A0l^aMc@#@Yi!R*@#dSzyEFvTq2=><; zK_phd;c+`(3QN4Dp6~h{f@K54q%C2Zcs5DvXeV=VF>Kudv$qx*+nTYb1o7%ED?Nr%~}^Qw2WTj84`WPO`FQ>Jyn>a{goSe`Q1616iJ_X40j^u+K=^hW95wI?|!807(8U zdcEooNg4&Grs{mmn-rP!>+0*n-8inGiRn^`4m7aLk@{^~VifBaJ}&?NC*nYWP<>qk zyAwNe;dFdT6^*kC=c(~A#V=!x)g-qH$qUB6Xgle)hj1cIn3~u>L@{UUpMsqDz=NR2 z0e9AKBiVGmx26UgJ4UHp^I7T!yX7yicuN?x_x$S)F5ml%uS1=t?Q467W}3_ z1?cvs&r3Bki6A^| z`OCKltrLPi`rwQLqsoE*SujuxoY(9`$}+|KD9Je;uGbzg;rGc*wSpH4$Kn3d%074A znz6@1w2fd=2e&&)s-<@q8%{5U($ zRj=AwI}BZ3+W$?=4U_JS{nd#gbJYbwIfqp$3aU!A~a#!_vK((rJ!LTZn?ycsFfLyZg4*^ z0+(HB>hvhWc#epOvmmphVw!z~ZTvH+J+CQ&lwWg?7opYofA30;ToE4)GY3oHmL(dX zt*aX)UF@T5O{6MaL%oW%vxG`mg>dMatCOt=b?fMh0)=kh_x4dQYau{!^ZmK&@3qNr z+fMDo(0>$BGe6W*6*d;;1pI>uDr1*WJ2ylRvjx7nT806RdX-iw5&oJ`bdq@KNyO^^ zg|T(iXgh}3WUUYwu7gU@L%Agwh5(m0_`k`Lh}r31_PEeSMx6U(a{?gT5|Z{;Tj_x! zeKPyM&EYAaC?E3upA$|uqN^&WAyWP?8dwR2U6ADvI}48K>4W;jIbIZzr)3G=g9yfD z2|k5O+Si=WGZ$~t$BlWqzf9k;V$FOXAl*sc!j9Qt$aOj`@ixmBF=j%;3 z6@t;s&fQjbmQuMTgO4B%67WVM@p$EvKLT5$8oz>SStBcw|8t+`L6i1|+sOe`O|`Fa z#5I1t_Ksh;OzfN@46#nDP$@afxp)P1qHDtk{J|D=G)6|VuO5-BY9cs27L1j3(W%W* z%-mu=GloTT)bBhi^ibXI(bs#JvU~o&-B%3*9&LAr5C_Bx+K@gtp2`>TtDh(lfxXp^u2{FsQS)GpICDdw3D!rif(uzxxHG>UfXZ zd_NNRaZZU9Ho4B431l|~Q}(-&>u_4!40>FR_(lXNmLQTF_(mM3Fv9Kx^1NVVEgaWJ z{RlrFV$B-_|MOiI!oar4T{9H5)ft{qWo>L>rCTvmlPd6!*d&{06EpuWf&f_-f8gpB zWa&K5{f3bv;-L3u%K~!!c9^LatHi0+xQaxznTY4og91(@16SDz6Fu;Z%|#J8lAQ0H zzdSbSH}Cw4OTu>+D`F0nK{1VO4_BtM7Kmg6iQ^-YUjCk~yU~`QfB$QR3#x)u?UH-m zTd!Wgev1{G0EIo;RLc+%8Q{owR5NUiW;%$)mg!CNFnl3Y8_&EFOnb$S!J*%vP-9?U z$?k~+O=BV#*uN4P8J!5VLVxVRW8g~SfaH{~x(?b-f%ItLX=&xXwVm~y`gcIf(zt}A zZ{=fB2`%}G+QNJE!g33u6Iw31agMYnh z596(P432!WK-9@1oxE>7A+*dP>FqMhooQk&?b8W7CosDs)d+alWg2%K$nA(L?e2a` z&HwRaa3Fl;CnjhY1~kRQegQ!swinAyW~gQ!DBpdPva5V%wy)SE^$_^jGiWO&4X&so zLg(>z`L2vwk@@r=kq0kH$5%cl6OTGS36^2@z3?0>#wMXKOvEzouep(4IbYX*d3hetNOOz>e>HYjld66XaL3i)1nxymj@Jwsy9Zl{v}j z)zqse;^*dAq$Km@{)RwPY?Kvh!@jF_k0xNqwO1RVYTN&BKq;?(M*fZ&^VNJ3(8c88 zez*xpb90J|tePkPqf1Zs_i>dv7ow&c1?se4kx) zc%SZnDvGB7`5n7|?e)=evaGHY1oKsUX`y->*=-brY zyVf!W?<2g}LN@WgD)&!4TA3YKWC~UU!elG?7opVY>Q}T~MPJw}X~eu~sqain8o4RU zC;nxfoKwJ(mkM`0y1y4tQte?+JEtTpTQUF4^aj#isYBuyOeRx#H(&hLKc{Tz=%*e*FI;0E4Q6c<^hf7Z)%(jmZ#kw?& zGzD6u^%610@#5KOJ+oj~FsPTzjr_+*X+@RvIKnuE0FrX~4cd&#COexH^7I+)1Z^?I z+$E+NWL%d1ay<(lx#~0E(0W&?KWXH;0 zgeb=Pg-HPUIswanjWSDA2%hqXc-@cw*}49`4T24WZ*?=i3~^itgo$By%73v)@7ei< zDt_yd1f{?oxE)HBsr7B)i$pmHUygEKWp-)=tZd`GXp;+LtFIt~e(>|k(RNs~QC?{( zU7UZ%#VkU5iCat8rT@VP;F$4(Hi04nL=v6Lpq8)ffLhr%;3ivd~G}5 z8h5DL{Pudx%(kSZpuAEu((pJ?V3&4zFrw-RK_{sU6I=iUK+kls`Fv|%a+b>)bvN11 zXNd{$o&Eat>*#zgKT>TW{z0QtX`h9#@inBsotz79AJE8Gx9V#UF*v3} z0>fVP7(O+tT)<6DvyNcd60?$uBDdc9ziTxJC=_cZ-c-3D?=W6%FSkP+;wp?ai&bKe zy@8PgT2Jfo50P(tbB5u?exn&pRrkZI(O+!FSAqK-uAHT>Wme@` zkGg)@ww8_yAr}s|P3iPBo*rfZf#jhHnzH7otTX=uv}8CEXidFPx^T?rtgY<@tFA65 z`sxQBEx6d&@9ON1Yef~@$B%b`&guf(OgUfUhJtN^G#qc2HBEYgyj}Pp6 zHSRS}R$@$b$W+C?>CG2SX_|rL(03v1G|w>AIi$#`zxgFkiuQyyBB6aQyB@@n&8%SqO0Z=nw^}5Uh2M96f!D!OZjWDsmwL7 zSW~Y5G#k8f#D?k7;y+RR0{72QVvX z^a-_tG-#(=4`+~;PQN@fR)84Es&w6<_ta=}isRx1K_(u!e|Aw%>C+00RCG1lUUfP6 z7W~&~sV${%;6^=Md}a}avs3ng$Z6pZ@# z)cO6^A?WZezUkcNwW&xa;h#0Z2SM?)r>m$+XV<_g+)Q!OF_hC4J+f%c1cmog$j+p+ zl8Qy)nk&H)0dY;g(PJmXhG^D=+OBohoILk4$#lgf61Iw$sfwH;Z!1EocP}~eFfmsk zenC~Tnc|5O7VYrj&p#ta80vbIYT$XiB1`S|p{lmn;x*?5y!+$Mr=`FWhhrC1#XfF7 z-!}1kZ=yOZ5q{?s%gVk(F1Iy1i}Vj7Y+MyXb#Rd-MW<|_t4w$$qJYNKpDeXDOp+bB z5ONp>A|DLH1pAMj8RD!W7?##RmZXtH``NMP?t!jx-R#K`oD>(c!ia%j^RqQ&(~ggi z)&Dp$L{RXNkrV2b)Z57ps6k<3Vh(dR_B&fT| z56EwF9X#AWsrqX0FQ_rUV$tp%&1o_M^)`j;k#2s+DW~&T&>R&M$GHa5SbxKa{Fhn{ z#QFgi{@6Om_3Xa|WU)_mnj@`*d?Kny;V@w8r-yGg(@Z|p5VA#OG|p@n10O9w42%}a z15+*p2uOB<{=R~|7njK%wL5^@Du$#>*PpY^yj{@XNx&uaR5648T6x)9N${=%=-bpB zcl5o9E!FT}vS`H@cIUa2^kFani4Wx^4?Pt8zu?3eunw(Tm423?oFr!wCB zT|w)5(76JwR0LSg1(YXqZjW*I!Pf)H(({YLMD#6GE_oqI6xAM187|2F(UybuK-~*L zxEB}BW8Jd!B6?v_Mc3DH15xyE!wI^QY^)y&on7OzNL}ZVm^d+{gcbW55hG)*B7{Ps zWHWRnY%Xh^{!)wYyECf2WaJ(Dxq~XJxcJI%(D7iyhDcUR#_6DaXtR~X*Co78FBzX!@G+HKdyUR7)hN0e2S*9M`T{>9Qnc*-;dZ_n*WbCQ*dKoQLZC zcB0z%eM0O+$L5E2x(Fu-9#?)yquW#w)vX)D0#e{bp1dt&UgTQttz z{@S~i7smu_l8JnaP2G!WbL&%xdfrdJEPfv2)EK8Fro%t{+K&ZMllC8fF_CBvX2&qT^7qzj-_A7T z&u@n`cQMzqVXJ1mu&|6vG4BVpUus7~ZQlI|DtTmVg0M0!Fm3==d?{XZ=uI7uc#|c2P>fEfVszmVi>bjR2@|n(>1;J(QG& zk#{}xJwuh>f%!6L4D~Xx*%YkoDnuXmN_+v(FS;Cc8FC5y_v$NvDZ94l>v!!41IuqK z&ac+|tWeF+Q1|Hrkg1*YSy9;{(XftlI=Nz&jlTI@8}z>1g$!GqA1@n4YeUbmZC8Ts z*-?`dp4i8SP8jYQ{dTL~Q>2|S8FyL{|9-=>VXu+m;&2%6uo+U|7<(8R0&=N>Jhqg? z5s7Jdk?_8aU8iWmXF6y8Eqq>rD|qm(6zz>Jp5-OBdr;+Ph{6^T6TYQoYWxzbM~((v z@F3g(mAMDg_;=q`?xu!%Q=Abm<<~ynSfEH~RI11qV!F+B*ZJo$+IfTI(r#bvaP|Zz z!1|ua{$VTH$oQDghnPU_!>>-ZLo=y&fyWTP3=jjY!%}Lg_sXz1tZrLwmpX_?BQPrgXgTN>zMnyF z*LSif+byZ*0=8l2+{T=>B672Ni$<`v-=W@2aO_%UYpC}f*U6!@s=a}u1_q}2?W62R zwdI||XP}Z9@jrwLrVzY&_n;<*Q}h5FdN zoK;ka@9lKHPk*8I2sqe9x5qDtI%Ls9Xmv-EQaJUtLut8?igb z&(E)CV4Ufq1fkQhF1mvw>Ow|9;^iQY5LG)!oH}hsfEZ?MyIBD7IuJOvy`*ki#1O67P8)(?;}qlK-y9^TX-jVLo?$ zJyu=fLAQ#|+IC@duvK)`r&mAY@gd9MAYE!^j8p_UCCFU>?9>TnEVZF0VdJMRx6=Wf zGth#}|Xb7mj-9Ll^fK zN$Yl>Ufd%MMC-Pz=Dc}JG`(Fnqa8OX1^Lv4qJ^^KDc>YIx8;;{>2c{`D163arGc2F zfl#6dzMBetZAJKpxsVmt$TjPEF?&$c9^^| z{?)y~o!L_V_f-qY6xXY?qJzxJcqnyYr($0Ya)~2)+7ORg8fx0wgn|TVZf94W)i#5S z;kGyY4mT)$lOt%~AMmra#%~GeCKT+rbBc0YJ%-yQGg~AssaRui7c4~qz^~wygEa|{SXv)0r4D(ropIm91lgZb1mv@1f89=ZV>M_G6)2j*kb;9Sh$ zdmo-7*vVKj&fi(|?-i*-OKE|779&r_v6Z3kQwejXYFLy2_+a#X>sk4T!N-dd|VgsAS z)aq!5IL9a-ogbe6lkJTK%T@TSW#*3lK1Tpul5{|wprGcHFq}LY}0j#q-u?C|dMV*|&_l{ZW z`JBwOj5AVFN?LDQNuO@tG&Q(~-BKt{#!Z&S3|ydcmO(S)i|XnW>+9=_)GF1HPF+M^ z2Oob55*p!aizL03H8l4=TEolEQ;qYh_f_>}XGAO!ZU5NII&+FyMrvNiq5KrkD*0fR zV^L;Fay(lrsVo8%Ny=(RowFMz?H%JO$jQbp2({JJ@i&RI2-ovCM87qkw|JM&-h9we z120w90{3+}wDY71;W#Q9DEs{hL~@b+{?wZ0e^tW0TwQaFQ9oY#Ix?|JU0G<{P8m?0 zz{0m(wLtgA@~a~9SFxDRJhhfVpiobYpIHy#V`8kiKV3uW%+hh(3|VgYh+u&7_AiMm z|D=jkXTR$e?AVEr0wkTuE+PSwmBG{`l-{iE4`a?f7qY^}#fJipW;pTkgY1GY{z zN?xd2dB{~x=VwM)+-*S;Oa~hRFyicd2M`oA;BmJ^si$K&Clvd6w0`9u7w*tajt_sm z$ahTy8dF}Llj?GFCQ*&;64v5cOgukK)ete6>rcXg`l@|#??8~C} zog3cGFDg<6^(Cqh;)NjN(ycmL3eT~inH-$2HvFf1ZI42x7;L#-0(dz`7`#){ajtuH zlm1R}!tOP$D#<>b@^H2!mC0dOB$GPL;@B&M8l{&UW^+0rtb7G(p^BGE>`qZp;1-MF z+N(1s2XeGu1v<5NKP)^>GDUlIZ9Vs`=O)-8f}_g=2R;|nEtpC*q^|2~2&bVZXvfX4 zB6ASaqm;sf#OO0o1>@nSHf5zOeraxAF$89%xH8fR;;IC)JwKihu*L4jP5 z?Y385V<^q$tfJie%qvjnZ+_Vl@QdIV3xLHa(Wb<=@L})Uh`T?T*BFM~7ajJD{A;eM zYF?EGBVvM5l}YN(uTCxbz8Sjr=Yl(nP9;3fWoNoAORm$~Gq@hjj+cJNydGndLp^(V zfQel9EfjRc(1`%SR*mj-);9IdmL(U52>&}hEnWSpV0(1QwQJrgYHdqRLV~+i4qmH+ z@cLu-!nzRJ6tBu-=n;&XvxtcZ(v!y|)6%AtSxBJrdW7zN7uR7i$;n2YdZqx-oMOXM z$)V%HyzMCC>@bqCCuxGAN4chb&zVs4X>s)X0O}4`QW`3xR1?QstxW_XewvaUxHQ^* zRHG-ii7!>MZDG>#vf$yE-3){HR!EbE#wCp#D&bAVdX;5Cpu_-f=S%9A6 zH-~_raM?@kTb0WXp{{Rml!XQNWlMEhR(Pj|t0R6pwMii0qE z+TVa(pW~AhtZoouqLPzM@(%Q&SMIG@V3crPekl|{RG(cf|XmBFkVJqbY#LVH+fdk=gOE6HxhLcby9ooh=m{l-|U_y78ZaZ zAhAdk`L8@lE(k2w=Cd}xdX5sL>HMjmNen+4XSV9E(z+T2mPA-C4wttQ7^&pqk?`S} zi9F|zq$L?G%*>^E07dFmx`&zT*VP!O3VtvB%;qm1+q(mIo3|5;J$cy>cDYw%34WWx z@X>-#B+u*H(~43w)7dTez1=N#%j!HHmjJ@2T~5bnj*{&`&}94VgBN`J1Q3FDbU#*r zF1_`O|6H{Di2u_K6*uq=!3;aj64YRT!dQQil;(Z;3;QsfDmMul0qZ9!tw`>-{uuve zJK9hp=ddiN;qrC^{O(TTk0+BH5GQAoWxwOfY-)|2M{wtvvJ@cGBjD$lJ)IPU%tumX zfbX(ZLl?fgSgA45>4gAbWYoBtdWo{C@fB&g%&@}8XFjpBBu*FPT0d^R09E zC#iTQqP&^%zaggB^mIrxEXGK@;Cav>4L$Dh%2&GJkjS5sZbj?;@OvFcS~j5N6l%H$ z@iO8w9lGSAU5VWPdYUnIrOLWwdCxD7d8B&Gb`9z2b;eE15P5PcKXhNajr!IwT;5TP zy)jH1j8`VkN&T+hwqIrOc1%fdn6>4LGo6qgDPHCggKORKJgQ|I7l_z-srv>a`ZmzX zSYP!B{rnA$1EC04Osn~BWar5=*^Ao56qjFbenz@- zE20wy#CtOXN!6Zi9o`)7GH-pyqZMw&w*yzu^|SzBSoA<4hwTa#r{@dP}r5la#TB4>8J2)wL8P&bSmogIRY$}6UXOvyDvu_ik+_wmN@qhMz@OR&+V}m z=+2l@?Vs|AF;AjI8zo~k+ zqwp=8c{Zq$*4z5x_d|KlBOcwqdQ1)q2!O_xFHnR_NR!&h)1v$45hiVaaI6e%fGJcu zNkczCN8srRAu1G8c#P8@^>X2NP?pnpc)jC|vX|2yzGDj(gO%F0%TB-1<2kqUP_o8E z|1ShH;HF0+h60zqH}JF=-GeybHoTK*mjcxLFHz){xs-9V6-qZjJQLXC=}*wl3>o__ zn$#m$lT|sA3_Lc%gJbBPPrDpnP;03SvQ8c$@=GG9`}9x9iO+Xqk`pw{w_h5AlcIYi z@a$>mY3dRQe-$tp85cp}Cz~J{lS4}97e_?loxzb+6#RU1sSdc`@}bol>z;YJ;C!C> z+$G%80sJ#?ixbw$CCgVkC=uYD9*w0r^YUAQf>{6 zoi{gnRnh?6r$lsnpI)MkK?ef_+Tmjh)S~sWn(+@`Zl8pTWGrF7+X{`EcqmK51G1b9 zTn0zNQXm|bi|+Do#?x;>80$iLR$q?_`RP9WcE*1@d^}~`cD%GwP)?T4K&~yYgqaxX zRm~HV-M!8iG>vd!U)}N~GB2nus}P z->y1->=o?k;-`5QNn?VUKAYvlZzkG}y-$Z{;|Irr@Qe2AI4cFTcZ)MDjitlW2Lm~H zXJ(R+DT5()&|B+xGlE$S*Slu^6${PMk&r2~>lXgf-SK(jn~F717L>P%fb|uj`lJh! zjB>xCB7B1sv0@xwrkgqa0-eF$&n-%+5tqkH_BDtgS2byZ&bC1sj`-sV??{=7ydHgI zKAI+5TEl_Y`GDG+cBQ6dNU(Jo>E2%KR`pK*8o^E&y|B($EeSr#3a!?w^w=kd@!nKs zgSvSp@NwG7M6~x%kpj96eMBnuJ0?$G6lUK&zqhje!>9NWhz@w%IiIqe&;4A1nn$j0 zzlO1aIf`hYR0x;QA@TvScsbXVrWf$l;{n0^tkJd&$AC@3p{GUF z&~e>oXKRkSBe654HeQvT-*Fkz4b@06gUqonfz>Xf>ixh(>T*u3J=;5DvTN7dW1dqC zV@e(7riu~yVGMs9qgNf5v-UN{*TuuxZ{2QmtikV}>sM!mw&QaA$zJ4^fVV$sc z(7m=tCVaa$Q7e45XLACpe6g(6z`Wdx6TzH-pnY_;-cbr74E8A!pHs=C*8bs+^SNzX zG{{qMd-xTZ`%3Joh()grC=|aW<=k@2UgMh=LmP&bwwl#n_5%uj`$y|lCH9E_ha$PF zlm_9cs}GJ2r8wrw=UQD)l*h)#go*cy{a)QGq;aL%e}B5FHY3Im!W%`#pnE4>kAqPk zvB`v)DJh`=fa(>|4KZ%<|qH(%2m(FhME^B)}w6$C8 z={qjrS<%L%xD$ek|hW7%7dL-jGR{!1xly^hixb2^{2yN1199mkWo*_7F?%gg~On9AZkla6RTM3>l zHixb?W+2Q{#AM||{jvA+P{Ewb#r}+n?H4qm-;Fm?l`zY@U|I8Y@gou5q^?X%DgVKp z+=Ra*{M~_H-#DiMe2Y`Il=Q_djFFBSaSLN%BhMXXCc8vC3}Ge`3Sc*R_`ML&!_|&N zUjggh8+xKUxoV{nok3BZk34EK=B|ERi=2b~Drc9_{6x}Cn$Xorow36UNQ=p3Tb*lOh_{hSQ9diL8vFNoUGce(=V=T^>^&^x%@%8 z1Xk^cWJ&G{Dm8d0kV;+_jmxdPRX<}V%^z%j`q1z8_gdla7ih9sl!v1*E zEpRcnFia{rz@VUaL2$Y5hC}l*#d(Sulb(Q>UiJ2qRILtKy9qH)lM>SJ&b554F)^30 z%N$9nkw%D1s;c;h zk^3GifX?S=9W%7aPgIzkP#*)fqwM8B{v3c$bE=J%Rb`y8i)gsXhh;r-4FkVwUtYhE z4REIm4jj#qi;h}kbtLX`xp?d=8H)6h&t~Dp>y#=QC9-0XOaLwi38DDYym03b3@qiw zw^0RSli?~PmgiJoBY$bMho2P(IlLC|YEOTiLI)7+YTw@^;yYQrva`G_CDL0OH7Vb- zs1Qg47Z_ND-GeH=T~rSxLJ5OkbKVXC+is^O`6$}Pg+0F}tB-aM)SC&uT~99HtPlmb zL8B|$I8T_)#d@*0=m%DfQKxdG->{T|Z!o`UV;rmD=dSk$p7bc6@WA(z6-p)fwI0GtGY8VX zdKL4dN}Ag_b_!_-^B-|VdL8k+=F(Twjtfe;nbJBdPlAAr+sM1a@R=M%kqltAH}RK# zceEf#xNYM&CvwLgjWNeKXESgrI5xmKKBIfcBF+=nj}ssMaqjD1pYK1f%wCA+i$P^= z6(Q2=sQ64?C4=~4pcxBH-ygrM4*O6vv&f?-?jN-B$0W`Mi9;%&F5cuwbVLifEd0o< zprg`A;eU-%HFTQ4`-wo&=7Ykwpv1EcK;rPDARsv7Wm=-D#kXCZSM1vAP~LwEjb$bt z6>{{+e`6SG{&(NdllKCl)g+(o{V$?D+=K^z4Uel;nsFCzK_I9zs7p#;usgR#ZP}p2 z$yXP5+U^tV)@5%We~_w_$g3oP$j6^@#U*dkU}>S~4uUgpVq1Pd{y3>bv)&&ULP^Er zASf?#Y;9)NPe;9DR`-1gR_#ZCQKE=gKe6 zUZ&V)*`CFAMG-e(RG6feiQ#7>Dfm5xWHE@O+!jU1sx2OkM;*)m82kohRcE?_w(fRa z17c_eB$Ecgz?^|FAaPJI=>PDKo!9+P3w}(JH9fRO52J;#W3H1o3fzZ`(to=?UhwM) zip)U7w!^vsl;lLmnv*)-@iQfr6%Y&Oc5b3p2+1Ra0CrI>!Ld_7wI}=j!NdEaEJP+t z+9}#oJ}GR!$$ZOnh4ZkMGT>cTbJ{Gp=9_rZV zBz?&<7j5_caz^L%cUR&db4(=(mXOUcFUxOQ%NzNFImV7Pz~5g0KuR@ATiZz)iNzRS zQ%BWuH_bZ+SLQPs*Jl)*bLP-s9|&!CL; zNkWv4<#dj9fi@e>6LoGN=f=7Xh_lZ!00jP}(3(#ZGLAlyPN~u?Bn{M+Xjrd7 z?CI^-8~*B0j_BCc_iwmsK4G$HZv~wr-n=*b(PxRbhG=gP<#WkE-4c-Lvm|G3v* z8^&v=5XOw>lw9i=WzdMkc16#BRPZ1g*I|sf@~AImQ>oshh0yim9V4tCn^GapAs>07 znahGW0%hOg>W;H%?BVo&nLWlcb#H+4qRA~#bz3BN&nx|1uIcg3ZnBYq=n9Un zQ%MFhy93A_XN6rt90RB3#BDy;&%Ftm1b529%Plw^?ReZ!lNz$G?ijNh*+TTOFLqwq zKNfAm)x^$;mOE~neIyxMAAO*|V)a}4!3!sx@O#ip24z>F&-|QTszr~9Yr_wyC*AJ% zyr|&};@C-DVtP408HI`yf^lkiJUhlKdfrcA-eQf0bKt_UAP!34N@f!ahjpS9*lyTs zIe*ORk+@+pbw_5thkK}xo*C4rU8Mj7%E+Dt5Fh6)KXZW&j1qySq*@`|kcf8!;=QGn zYQ@fkVKp&!=tb;dX;LH-l9t)95C=(+yxyF+_Og?N*I*ISy_l&f6D=f<&1X3kC;$g} zQ!CfJg*oLoK9893C7ST zmTq^$b3nQ1Ob#G=1to{GD;9lZv=_$aJp`U2^=UJ*h(L;jDt^Re3^MS(XIW$Pc>B1F zYRQP?@LSukjWGLyjKW_UpR0&k?^a3MpgB)Q2pOKlJd4?UNEWuw&#p$kneC$$Qbb`E?rPsWSSB`&Q;?bo*3->>FvJ!goLbo1@vo^^KU3u^V zY;?Xx_&Ek+&Hz7GJCJ+JDysZQy1=9)VY7p`B4OuzR0d=Glz!KAw4b?q0Jj&LYV0Dr zYV=eUg~h;6x~RpxuPERE08;+vo-0{>Ph3i*@35W>vgSuqel5PhZs#6gwhPX}UUe|nD_TItI&N~gN3B;!#9Y&&28*BwR=sD+C74%lOE9*Xhisl|&Sm$P<7he); z3Apj{w9KBa{P_E;h|;ODOf7XrF4x}S42mQ| z+z{Z^+9<|BWN=-WqbB(k6JYfSB@{_8)VYtEk*H>N^x`an)FBs;UCC^!qnBk(T+3$Bu@~zk~hO89+d+1 zpMU++TTKhj<<=@^D|vQ|xr^pezgscVxd0wdZ2(6JvkBdP_(w1j zryEi^&xe$w()JyR%h`oRA1~t*?-9qx>BCZ4$Hhe~{tRXcum2zi(_bO@7#@BJdRNl~ zi19s2Y3lMBf7^ODyy5+!6tf44p}V|(sL+%jjK^)v1=~_y?>J@*3ik1f)IG}pgxoY8 zdE;a^;_SFVu=fyF&Blk)>7Y3?&R?xtMs}AIr{BD$W#pw&B!~l)yI)>xPBuGQ-p-FQ zO^JV|#CK{pdj5U`3VzPLI;uqvjGJ=)#F)%t*T5=>1}tm$Lr-RT-I=a6o+wrjCZrnp zD;ejhx`dHEZcDWmD>^HvnMiq#h6xz?p(L*wt%levoH=wB3v7XIRydWlO%{g_2(^%# z-R+B(E$!egm7Kfjo4-)M3`SxIf6shhZSqMS{2ngp95^de3L>14cj|i@c{~uNhWp1E z+H808WA(A;EBc_IfJSu{>3#i4U3US%c@<(G!KbZQynorjgItnh-)e5+J>1z9QH)+x zPgF(sx@0zAKNT7S&QK9+G?`jjmIQlY%>qiLcZjE}~X=d0V0MPkv%ryBUk zExkPz^4&ZYDpD+&s3T?Egu;B%;d9z2fY_3fu?UQ!jv-SxyqcdvfhQ6!2+gr+dqV;O z50edwi+(hIulMoz4(;H8Bk**1Ww(>t!`pimg>f-{A8$QiW5wL3CE@7Lij8+VCn|^^ zgB)nfjNKm)=FJTNSWj$dax2BQ<1I~ zvjt@wOk)`&RAKUi<-*H(m?`4kWlUn}Sn%g1guq_1{9xlhFviW~PE@1$6Nf)r5rn2? zXYWYg^O3Aj8f^LME|*IfWldAd+i8hDdU$@^7w$!$lG6lrVQ8TDc`C}et<=ej99G29 zs!=~t>vp(WElDv%T_KYdm-9UiVZgrBX{*T?DSFNx%3Q?pTZG!1{E44)X2_4_=EZBAdA*s0~rXNH8VCJ(aI$htwy) zmN&{Nl+4%?uoCWFrMi~jXce%P(zSvZ?az1CGtBkdY<@vM@skrS$Fd@(wQ99 z#gGgs-3+G|kcKpWQmSNBLO%$FhU0p}ewqYS#3TqWbwaQhug#f06pKTn*Fw+={ZLw6 zKz^2jRT>&(YxgMPdt0(k=b}P8kZe^f9uiH)oRaXWdD(9rmTtazbC#+_d|uD&5T+|0 zbu3%PTSn*?#o*ekB@b%%Qgz65@9RXS;Yo374`0^Fu$2!A3J|{sgmb~me*_uUOBS!S z$i$8!BqEQCqG|`UwuM(*4&O&7$aqWaLaB)Oe;|q|Vv|UU_*wmIPJkNl`hI7Ii7tQ1 zaZ4cbKrGeipM55|k5f^+;-XOSasm6*TJ>Hp!rQ(Jpe{$ds)8=dD8E)K-9x%5)w(N= zN4Nrc>x_PF2UmaE!pRoT^=%+6x9BJm14Z(?v(fI0I+&Xg&re)}WYX&(kL5!o0G_k} zdgz&Z(L|5nR_S3oaL3|99y8m5)PMkpn&#(>&>{S=e8u!Jcr}0vcY9JL8W)7-JVg>$ z{fiEtxzvj4Zu!T#6Z1lJ?u=XlT5mR2eQqn|C}!BkOKgk#*fK2LY=?xE7l^%vfRR5I(5@= z!U$BkFod?leDY3{Q#k41dW#BmOG`U_nM{kF9( zQ=T13gRar0s3RdJUjA&Lel+$m;K^T!t%7otz3Yr>UB~x=FTCg89BQ5ce80u6sM&iI zA^An*ckU#5nnkbD{U&{hBS;j{YUt(GUs_>{&*7TJ_wiS7K{eUDC|gMX9o)KEL1^WV zDoeY4kv_2$EM-69-OUJbeExOzu*+ezV&0}3a3(owz1c03EtqA>3gyh5s#!rU`T8;n zO-gR-EHot88Xs?OO|1X#x6JWsGi~OvG#7$g6`c|X-7{!F|)Y?EG6z_U0 zK;V#+d{zGKm>}bMlP;a>#D!u#=jAvttPwxb`)(KIn(X=g>J#w!0ld52eZBJLY&yUC zwZd(p@ray5P?ZTVZ!mX)z5Wqa=kxd%i1C`+T7pjgGS_jOp&f2BQn93)PBljZ_(6o`lXE|&=SkLK(2A4EPVzBwo!CE zRh&8c;4l|o4r1G!jZ0E01H3v`>S$pDS_S+l;u_>vM; zXJ)*^rmh+#G2->}1E8D3bob5S!Ht@MSo3cJW6>U?+DTuzBm1nkMlVzpB8sALZPX_M;b+?dsvB8PmU2-7j)oDq|(U*dttHzX_P z@jC-G%EzFC+XzBhH@a4aGe`sq$_yqKSxJaF(@d8uU9Rp*%-s@6W7+weq8Ott?#`s% zyO3a`*-DYUtU?y6hb7QF5hbk!k_>cLg)=-TnDM3oRRD2T4a-i|BtY@4vVAtwuQ0a?!jenf&_O61b26WyL)hl;Dfsdhu|(jg1fsj zxVwInbC3Pbx!-&L>Zj+a>Z;ncyLL_2+G~LVA&#d%%i@@_qnP?>EtEv&oA3_yyTZr( z;v&~Upn_By6f**PTz)lh$|K9p^u2b!o8XHtOuP1}Et`h*7cQ*k2m=`EZwqgjYM@py zK)23@I!pYDmUMaAz$~MGqLm4xh;#iMZ=u~aV+_UT>*8a%!6>%UUAFQCauL@ot}S=g zIlbr7sBjztT|dPiIl7z_o?`5pK~9a(8;{m&Qo%hR%7IPx+xz1iiPRtbwg~yRyX|xB z(rS*g-il$U<6CHfb9=h3KXb(ZG`+NfNbkDYASW(RFTOu<}L5F zXw-O5`_y8p0Q)EZXL{$=>(8y*#Hcw(!5|Yt`)$wP#X{^)nwvw(f@JssiCv$16F3EL zH$x(5Y(phMSd^y{TawqiqwUvR;|nGET5+Bmf+p>Phf`7dejW+Ek@HREol{8EIS!Yh zK?=Rlzi795A@m`%KwfcKT+w#)et`+PPd?us?&uh(84mwsL>L%cS=-iW;LvnJd0<+8 zY;!9e?s?3ESP|Xc1|ZWz%Lha0M%{H>H|`S20bv(p`kd-=60>ef1`4yk76s=;&;Gv_m^riJ|;VPin=wT`DA)*-Xe&gEn^ZMO1WF zm0dsp1tbZ|L&VE}oGw$7`FLNKakDyftroct#^h$Oc~w;eeW%AmN;o0%TdMa=pf40h zCH>L4N4~vhsHVjNG!KHkor}6Wh^NGa{;Ml=Tk(M;aHdI@3|pVE&C{C*z70)`uf9#^ZWOqq@(59yz5)Jv(*UbW&R_re9Xuq;IfS0B6wU7a(4HJh2jN1$uJ z{pPBb?&u^rbFQeZtDEId@?Bbl9Y-^WxaEnUmuj>GYoPwv@rQh6 zpJqJH^<;pSsnD#^Etr{3OkF4dLsDgsy)RfjbZ4lezgZzrKw&5jkSU+;4khdjxE?FD z!|600Ka=`SK7XuA==l;n>z}{DLYO%mZ4H&h<_lMIYDvW6vBrgJahD+O8(uA$j*@2;M)jmthk5W zm@vAS)GTB1d8yTx;ekpYy2~_z%(am&Kot#xVrFZmoCaHu57VuTFlCE4jP6mwsZh;^ zK~3w@SuT#;l>WS&zD=01%^?X z&xuy-g7rdkeRutHwm(m|c|$uN51?Z$-KXuApzC%*F+9*?pDY~{(vA@Tld!f0LkH`W zn$AY3YWA9W(K6_)g=#Ge+h-(obl9_A{k!9B}+C+E1u9Dyu7@q&4&?$3Kyz zS_#jkKMB^uL6ay%D^-YWZZ^B}^Yc**MIkQ3YdM0T4@;)@g~P1d0tiAVARNRZqzLLK z#7V~0TjSDCtmDP@b2rU6`edKTj4G+=h{oAIeJf)TI@?qA{CZ_YIt*yRg80&#wfb0k zk*^%N??=bd;nK$_|9aNgJiCz|avuqG*^5+K+;sx=THo*?g2Tu2$CFyQ zQg0C4vGek-H&eOo2}eXG&qlGNbDRXAZ`Je{5vGNz$Lm%4lhdvy$zVP5L&As>lqFX< zoBbS7jWL*-UlNcbsmYTG<998ePP(5`QNW}c`EpkO+w*=sY(C68+PeiG!N(XIG(LG<2Mn@<7?N9931+5n0|)_)ixLDREH69VKv}Zyd#X zkR01cA!apM!oyQ934$93kujRwyV>emizLO%)61gDcCs6-SKH=ryEX3aGGPxahwyV| z{E2Cfii*7aD9&lpFl)~@A+uMfr3AgvP<7MK9=6}8 zjJh`v-EZpWoaIoFk%6$$l5ZZqCTZ+&D4|E61U}&q3J6Xhx(gge-*N_3PlGj>hK}Z} zO_)cGj>X0OOSC_*tx!6x*fv>ZtnFe7aal|XpM_yMtd4O76+V#&&Np^*t;g1SKT1Cc z2AxyIRla*)vEGt{B3%kFBL&y-Qv<2n0g>$k!)-MuT$F`QviSwZxiRG-mlrOXwpQyD z`Z%6_K3s|48aBJmXubR6{i7ozXKIYoMhPPX#e0KOBAnNQEKyQ3zGMY&bOo2P2-ThT zW!bK@IHv$BR@Y0E3O=uthv2QlppTDN{(W$wi@n87!KcCb|^Ya!Gt_)7> z48*3CSKkr0tf_Rlm*PC@e>7FC_`{Zyp+qSK6Yo$UR28CwTiOOh5(Z9@zwZa>@b8=u zdH1L9M(i&lnh>Zk!)WCyk4v>HoXuC1``Ui!vWwaN0khnI7v2AAUw;BKHIL(Y&}1{; zx&V91I}B1s?Tz zLfoi3j2*_}BFGg9gi#X__9O28iCj_lbq_H$1otj}fK*ODZJE=e{IwMNT0?uhVx@`1 znh93jkhDcUNE_F52G4*p&Zro;2n&nz&FF#?Xd!Q;bI2T1N&=s^m4x!lIYQ6-Ztj)TSs(;p*RU}_2y96McK1E&%FKm2 zP%br^AoMW4pPnBPC2uw6cs}JkiG^QXTP3huIDGwy$f*Y8iAU8%*$v@9lG_)+LSxj` za1ezaxD7CgORISp!ydv0ejX4RjW2OfaMP&yN-8zZYC1!sjWfyvWV^Y=3BGHa)3Jfp z!6XvH3h=g_i0Do1QfG`GO+(Y^CMeFErUmV3`lskTLvDCHP^sA4R6eq1(` z%O|OhMp`@=8k2>vaBsS2ECN@zJKSGOgw>#GI{@^gU3~J%fi5~7d(E)Isq8c&`RLyH zII8~cy0}QwjVFX(H&8G?PBz4_N23Jh2q!A!gvi8N2}i@i;UH6XU<3v}ccCQWEl!jlIb2R6l zGx>{^lk2KG{<11Q20`Gx*>_%(d#C+|qZywAh%VP#k#p(!MbAPW-rd1rZ5mq#>2s+D zKq~KF)2Wy~kFQ-_uMFT&7SR7d#6!6p+fM8=+#L>vd4Pe90Er=)dh&-|@)amdmwM|G z&AHN4A+<|=YimDe^~lbc^1eSN;M4Jmq_^jTG6P<*@cmbST*qk0#Qe2rm)#S-4I`ErPm+t^e+C$T9BfQGC-RA8l8o`Ds*-okE2;|cdheksj^7OAI} zXCGG04tX&bq0Q}V_2c~+OIWDX)skkR)7$Ooibla2&}9W?JJyFAKyjND-QEt;ZE`1u&+rMK=av-I`mB_7G~>7Eg(T=t!KlQ_RB0Qah|GE# znzMDvBDE`OO+C(;o^sXRbLx`NybpH4>%Jmg0Ud? zvpOqpin~;sFN!nKoRRxX^@2Cz*gybxQlhNv!Kpezq0@e!r`I`(+f;Sk>+%`{Rir_F zi#G^navwS);2L3-lXN*B!x9U_JKA{nCg-7MtzRcXe}`Ya9adqaCC6Q8?eQTaT^ToK z%dNR3FNcRjL;eZlI_UPamk7aM%N}!7l=SHY;}GGP2w1=lZ8ix9EMb55**`YVv%3)! za~m!}J^vwU2m;xs$L5kSxULO64tpv=p#BjMDih6+u?l)F(^Jl7Yt6z69G9eve`6SI zB*loJ6BN{cyV@iL=VSYu!u>I(xcJBrpQy3gQ^R7s z*P+yb6ZA&H3yjWydiyW9vj}#9jiCRlaMfLVa z7_m-+T2v3$f3VUc@Q8k7Dc0j;HHTcm=NDW6A=%e31vc0(xf69`ERMQpGwNLaed$&l z>6#>Phlh4hth*yw4_U*U=>tFy=l5}EEh(RGU7kxNl13R?f<9eIs!T)d;~beOA<_-h zHIQYQCIU8SI1bueZ=0<}siyfk@dwag*}ko?m|$ZlRsWoEdDWRs_s-J1V4{0hOdXPg ziM#H?54)ux7&j+B?za}rIQ9_jm>(@l9r^4OXM&rzXS1T8(K>HS0K3iH^t{C}!{2G> za3eOM-BCMK>}Neh9Uvf)NW=?s^upYSY=i8u1P^yU#16#+uGyF+N1B*Z{Cpo11r3dE zCRgA#Vp<4MYd;y-^ET%=7mWINfLWw-P90K*4@6RWMM^VLjn^GcNHLC-DnnqsUKS1m zp_~I%qNsnh3p?v*jSEPX%n=KI$%jQ@65LW$Kw*SWk_{qFYiA#vnaW}3&r{H8OO~7K zQ<~vtQRBVY!$t`F7=dXQ(v?$g{~fDmNFQOy8C9@_?7lhYrQ8H_6Z!n-0(=HROFDAltY81?s@~(~JaKCXc^O4ttEYZW( zB?drEC9Q4M8XR~*IZvcRkHm&vSRj=^J&pYZ+O8mwDBb9E(JIWfX+41))!C1`N>Fgi%EmEM}TB~c2P|L;$7(EXF zq^y}0qWTsu1G0MYLBO*Dg@)DXyPeA+yz|3UZu5uj*Mhpr!dK7t19aWd-ih@U>1B=U zf^h(UyI!+r9*{Z<9ognvTL3TG0!0taIftd|7T**Ul|dseEW~2HeL*|YyOAuf#H8@isS*2pc}r~&&rVDPfzq_>`Fi>LR1^Yo>=(@&)89a6m~i$1*<^XgnC4& zF@H;edA^EBNOb%>Cyi}8p6@RujRT(D#3(o)*9KW=p)bu@0?4ScGbuay8?v=Y%FZq9 zWUj}sQ#(63k5T%gj;ST!MGPkR@3@Oqa$^cU()k=;cIMdbuWs6_4o>0K*U5`ue9z>) zrolXpnB6Jm4i#|zLES6A{S@_fnWi9ltO0HW%XQte5P;_^G+~yMn81GAf0e zP5M&^y7Z`;>5hCJ(?r@fwp&GoUWtuPgH`m)?K=rQ#md{|c7>v{ zNY8`VXzK8@-OGi&Awno;d011;Ur+ehV&U3|6cMg$N>l?IhL&KwXHz_W!6R8y9TWRk z@R8Hg*7WH^^mDCT_Gb$cgf`2UGad&FR|FGnuQ;6>+s11$3c)x!37_ zv7VHqg=lR(pdOj`9R=x%c!KH~i28Jqw$U5|e)N^>T$>e>#(S>Cr^!?Mj3+)$l@Fe6 z>P_!RSP3WpXRE8#ln{}^Jb--(k0hH!nZ8p{7Uj|uVR-_+xFU!7X`2r!LDr>%b`Hj@ zG99MZUazqt;Cp2AudY!)b`G>FqiR&#)1ic-^ArY|DG6XiJee$ykQ?#f^r?IsH`gK@ zwcymrJiTr~fwGdgD-~bpHLa`<(r$-6)^5WP+&4EwP&_RIF@`v)xFU+UmZ=wo^&{QV zN+m}&bxceWESak%>Z$G3P&)>`dCUl^7!j54xF%2Mz9!AU`$Y8_@V=OemPx7MHP~$W zl{ZW@0L~dVA7BA>q1MMKIv8bV%X% z=mSJPB}xK=mwqW1jd!hR5|IJ&$|+#JHzSI9GbkFbXDWPCm2@g{6+~r+1~)X{WNT2F z5ieC-m0tE6)8qGIR+)OY}Kmg1Hbai5e}?tlM_h&s<-YPnSqYe3w1$cA)P0 zU`rW2?wTsJ;t|#Y=A=}atOfjt_7Xfa?9zxq8&^2A&&oXsnyFXN7Hxz-blWKs;h z{KdV;`sD~exgAjg>BkIGsx_7BCmhiO5@`G)z9E)Q<4WKDVu{s3hOOcDxQK&omXwyB zcXM(ak}S?ZuT0!I1dQh)p^Jdi0Nh8CnKkNmE*zeogFKlUeIBM@JWp@A04P7)$5)1B z_d3*T#a_S`CGsWF^^sl9wCVPC&mkB!jga^1D$ zg)7pPLOeZ1hqc99dqsa5b`m{5#(2q%c!FeF)*Oc07GD6UQpe{K%-BYW53M3x%c>R8 z9jZ7%+B`GuQYlRl#vB|vKX{Bg^1ud$TWW^oeXe>RJBo}F!#n1Ky)wrc6*dOBAccPW-h=uM(XbyacXP2K?Qj%puF+Y1JsAR2|?11(I!h*G@#DwnH;wVMT z0#$qmPt=fBT;lM=0WCeYHe3s|3pef3L$V|bvL`z=qsH2}U2Ma&2y8%;n-2o$t}R&5 zh$r0bD%Da!E6~vB@rNv9raF?qm_tr&yCbiHNf60EASB$M+vl{#_?>oAvo@FVIy>f9 zk-&xS^dYIT!CsOYSY!%cE1~kv;>Tz=eUUrD~z13DQ(R0%Di* za~+pJF|CCK@jue7*F9~`p%h%h9ua>Wn>h04*_vKA8bPpv7x94e`O4C#TXBhI=n z$fXkcIc)R5Sdbt2<5OA81&cD46a|>d2Dr?DB<`#9Zg%WOl=7x$&2TsnR>qivdU78m zNzPLX7Ys)NJmf3zx!RAQ2HNg?A%hOZ#uc0So+twM4)Esm@21#lz?hO-!o$=6}XMDNN>$ zI>Rb*?YbT#|Mln)9_86jqZ-NTE+~2tHE*$z1YO{&ADYLHSsVperlnSFZ9rY%5y2t$ z*-;|)bgY&fjl~MUT7<>~4{p%$(G0;6aZ<9dj}1%y9REX-GYzg4AN}WIM*o7hR>+G6 zJg8BN(2VNegwrvgkq@>3=Mk0;RuDZjzF&w>$Mr>sWwrEw2^(QxJcwEis7x3f z*$^t2h?kEaXA9uBgW9k_Y2Ww{nla0oRO4_XQ>rGNGM^s$hmO77Bzf-L)`kYavMuhb ztorlztNzcMdsi2fv1QKQPb<<2GASXEcyyOva8`Y~+BLMz>=AuGiYCU-T85v-Id|ay-86?aq8oZDHXt&Gxwe<=qZ)Y~=Cu>9~F| zXmjJn4(u?&39tAXnIcU{+reu@REp`0#k1w%(C-fosL1xb<9Xm%q08cR?H29-)*mHC zDb?)z`c#s`W&YBBOf|&ib~0!6XZWC+x%~zRAQphC+cYC zIrtiAF+6vW;lAct%zwYywFf492sP-aR2-hu2()>+Ih^kF;cGc-tw~RD)%QEqG=vC0 zHyaOZaYUc>T2q4@vi%JYK2GD^>3I=_MVk))Ir)V z?#YdFbD!_6RTp{#YIyV+V@>W3^?R2R^4|_jK9%kdZ^(z;`-y+6Kj^H)k`VM0Tg$ua#w|=kOnmOW|(A zg6KP{Vw6R(oR|`_In@te=Dr4aOm^6v$9`AvfqV&%$L9-&Fy529S#VR?AWRfnLAb@2 zD$fg#lj^cFcxAzHH8GCfLfdc&n`Ij8)pO>SePk}sW&Dbb)bp!;Cy!2&2Q$?)0$;v?IH_eri)xkI^Zja} zYpbVLcY9}hv+i{02vj!)x6Gat8I7DMv_7jz?d`7lc7H3P+f0t|#|=|Fs7+$9fvkui z@WNsA$O8BXw_ChXv+$G1pEnHCNbu9AIKt3@!M)exFO@qQsToB>cM0-o8a3+;Mji@3FXJZq9pzse!Vea0B|e{0J3SLU0MGL_ zK{vSa_g?kIo;mh^LI-cUeE|@~z3z+4rvnZ4W0NuEa1z!4P0Une{EJEAu|lQ`GEbNH zhUnciw7cOI15&8*2oEDol`4pRjqTgBrm&<@lNCCo7-*$?uc$dN7>@Zptr<-WtHAqd z=u^t9%7;Zv^dO>)8L1NkHnGB@!@c)!KZeL)q}>946?&fK3~-19&yw{gzD>V5N@R{_ zfTpr1dpvvKc%wAEW(L2L4dDOo-`UxDt3lc8ungO?P2_{Tj@|>Z^i?8^$`vnIeCL*>9Ad&zBJuG1J~TYDG-gDoUtTyoxMZho#hH(Mrn#J6M9 zb9P<}6}-x7a*N#O5mbF;geFHH*^b~+Zr?J3QGRNEaJekLdV9HVAZ}-Aw4D_{BXNrr zl-qqP_9_@cNIf5EqI%Nury05d{m~H2&yIf(BvqM;b~6OY6V6;?0FD#DqW;tpCbV)3Ux4+*hCNi^?|>}Nvw z7L*#45w$4y>t3J|epSXh zHyvL0NW0)LnM9NAtu6S$@NOy?p)C02I_C{=jXMel$tQQNw#3<3s^4MZc~TR$_kot2 zCRdJB?m;s{uUOtT(TDlZ+>Uje=Y$(Q!pc=+`JyYSn4%iZy3Ta#wgwn@RckA7M%ksw z^EGtK&_*E+Peb3Mg>kJF#stYbRY`GET2*8XY8s5Ik%N-*VExs-sJ|cy`k7?{Km6eE zTS9ZdQxbonipB?k&_HT}d~6SkdE}uE`w}*Gj~>@wKIbDfd0AA5=wPg~u6IE)&Q?PD zqjp@54|k50bh!8)&o@_axET%W+|k{Cb0ilL1+ZguqvV5}&y+6z2LHKAqg?;uun`gQ z*RHY@F#pGe;pKc$E%bh66H2>U70lsa9~naRgfB5*Q~3G_~0=_L-ugSHwAYC{yuBo=_?NuhSHxuRX&7%$zpfC5s)JX4F39yq{-gPJ zmNhSCXxHoJegCZcy6aSZ`t@{L@p_j=@i~VB6q6)hHl2?9S;Eg~BPwJCg|ef<(V+>X ziJOmXjy3NMx`=Gb`t@aHzW2fx7t-S)t5~r+-kIgAT9JY?FEP}4Qi?B=vawUlhhfog z%O&X7)X|wQH^r_H0PHTVa8zZgcs?f+3kQ@(t1Ts}#y80660|`^@n!yS-UI#|*SH6V zL4JMF*x$2>Q;JzZA`^J+mS3zNzo?a|767B4m9qYXXNQ1reB7)0y=fwpn^5I7o4+~u z?HeyiOfJCG@3A}yW5&PDl=$zY@;u`~sx}*N9vS9f<)V&=tg#Lnz`>CDOk!9k%e))C zKbqtKfhpt!RtVl1xMPiqN)5z6V}}mld_v<@jlC=>S~JY5$s)H6^JTV`j=MdRJr6TJ zp_rvaACXJrVr#djnB-W6JeF%QKX+fHVT#C}@nn|1S_QtGFb`yy6#-aEsR5kD8H;A( z+NQztycTd{4#yCL139D_qF=QU|D+yuKp#NclV!{ziD$ed`BN?(1Mbq|WzZ;=kG2YU zEb59^pStM?xIY921C)-l7VVQ0!o!PId#3m~YSsP4x@{8AeY34`)-UUixt9a365^P# zj(D~WNUyWs&OPL=Iq=$#ojWDqglo^ddHUVQyP`6Y^&k|1XFhqmL?eAzguGs+%{SAS zIqaWz*|Bn}lyJwd3brx=O|SnH6!v{@LCaaT6)7wkt&p`;>IxZdJ#>#bl+D?YtTm+p zSU7|Ti0(md(`jm5~Z#(c7^^$buxaI z54`f*EVX|{CE}&M71sVUFu)LlaX>iYxYN_R#Pl>z=_?W2jhLq-D)yzs}96+m3LJa5VX(XSZ;q-n+M<7`F)VaxnzB(QWloIA#RJ-O@@ z2x2+?MO5pe_m*=KB*f1wgTq5tN23chW>r)uld!-qVR^r#yM3DY4*4bE@ExLjwmP`y zjNpK1R?n6VKyRX{ppTc>K9QloH~=zq`BYTGYmotWSzgRfQnj8Lz0PO0k)L#?xP$#- zC+A~`+-NrugnG8;IxPRe1u%MH$Tw%B+QrI35Wz4%(ARmD$G0-7K|N1r!#3h!b3)l8 z`K!z0Suid`r@o_pHjmC6+aabBtDsDDAT!ylpl_b_)%4NZUjZt0ct{hR$Rf+lX(RF7 z?fVpdE%Av2yR2csCK?kIH#J$lE#|My*11@#SR_jJjVuTbzj zPUxd75XS=qn#|AAfNX=0?-YqiS+iYt)$6a(cVV7d%#>HjW=x}QSO#$R$@kN?%)Ns}%i{MSp#-KgPLxXg8xf;9jh6m1y^!ATFd1G|aXyd?}_AwC<;F5Z!xgep7 zE>TYPlO_G=d7OE6G|gKr5iCjWGF{BG18@^+YkXpd7YYWQcrPW{gR<90Ds>iGDfFYZ zv|HJ^yl!MO=`&8qcZ=kuR-=12S(QM@&BonJj>#M*l^4JWRn~(!+K+ zsS1P1vaB2q)t!<2lBTShmx6-YnI}~xO@g8pYt$=EQxI!oFg|W`M+VDL0+y&)`g^Ut zeA2j=Y_Je~|3%Ns3604PnR0KQ$4+NRzn8C2bk`IaVu6x|Qb6!Pw7~GbM?zm^NGlH- z|Esv5w?l%h4eUVBkA80Sm`twp6d{jq%#Q7vxFB&K^mxDoyW@{T(x> zT^;#XX*dQ%FR4vsm>>w|@3KTP=Y6(-DcX2y)FP^h#qYzLUo(Fewkuv5smy-}!xPfq z{YaJc2A7%{>8kadJpc2@i}<@8Ig8_#F!q6n_h%9ux^vx;a!_oK_;WfENZYUCua=>r z0D3NB%x=G0ie7%<{H%S~%&{CmmRF}SJjJ?-i1Jos{bIc_A4G!54QNjv7&snT+Th7a z5>LHI@9!7h`4fG!m)q~=K{GFUtqSC*)NWvWO1tH8ypBU)XXI0NvY9A_~ zc8;IRzfG@e#cW4^*W$W&9p3U?N940}Uf!FXu$ApR+T)~tO4u2ZS{;8a@cA}zWl6Du z__{qJ)j90$TRwhn$6v0(=P4xdu1t7mKPwE`yM>erGfta&!K%cwKY|$874N?jqzPWB zl8l2Tfg0X}BVvAfnGcYz5LbiL16g?iu3coAp(?147kEeTvh!*}sw z&c>q+5D_v45zRArIs}7S+KVhaw^Ks(?kifP{V=1)yY6?6v3Wt}p39@JOX5FJ9*mss z7MRs;!hBGA2r4KdPTj_HaF(j+ud>y8#tzBQo{k{UV`Kz`v)qzESqop?SJrZTPS3MQ z`JRV=W=Pd~T-C+&*o?O==+h(}-?rUrP$~XEynSofJ>?Qp}%ryj>}he#K5)DV(UCDSRJI;&VUzxOUyGA+KDRUK}j= zxE!{UNw^2}yaeVC9sn;36odm4YLA^Wx40_p5PYwgSZc(Ml0xkU~DqHjW1eoIZ! z_j$BHkf@h>(mI~(jCKhK=06XE<*d))1(o zzoooRoK5*LyQ3#=`J8;0;r_h3!BCsyzCL~7y0G=SMA&z=V{ zn#GVq>{Q6xlmft^babG;c)Oj*x03)Y_RSmU{4Jl02MNPei&Tv#hUNqkGS$l-1YwI>L6> z`LtDTXRtCH3I1>QXcg)9=QviBzLm?Fko2H!PHX&}Dq2eFAu(}-ZsOIK*VZjXB`qh5 zGrr^}V*LZouNMv_1PL57h!{5N;?=7Z2Qz1Nq@L4Jx0;tCxY^N^3h&S_f^89K_a&Of zF4CPj6A|~x?8T>xL}myFv~$|}_ZcAPd%r6mqzaL=I;y`XWQx;c!)et^V0jYc0JaE! zChiONRZpP=*BYC!o92`4t&#*pmsLL8r`d|KYvl8!Pzq&^*J{_(`L8RgYOXn!-jy$4 z9IG=w&-q+|nt2xv|C=SEl#_qqM`*)S|6V_FA8)^{urh*cb>5meRiY{8x!xQB3U`zi zXy3usa$dW!vxcknzp4dI>8i;t?Wv;2+TSE*|S!J1y#?(he!<~A#yTvhYr zU{MSf7+*wqZotaY0mG}ho{N%#PmOOF3_qc54KH{viwOlluxRD0!vEq8V({#DliBf8$LhDvmL9osi%BrR2LV(q3ea`!qeuk?pDn; z3n&C#J8*kNz+e+!!I7Wv2_>ZdGJ(%jfcF^Wy7 z<7)+wA<>|c9NW2v(}El>sw3GM2|O8-#T$7ZX6h4RR#*q_3Dh%J?^I*}pC-<%o=+&{ zQ`m$|kv)i5m5)Z)43f?q*9v`MUTkvAmQ&gdsH;;e;x&j9_JBVsq*H{1Iw;!#vq(*0 zlNI$4@~8~xmGw~+3Ww&?=%6+*!>NBw);JQ3q(zwjD)o@xy1HSYgJ~Z&)mWO)xZo zhPH23ZDTNH!>?#q2`)p$2gE96V24Vluguf#Ha*%_79&cz+AbalBW&BnFEw_ZkXa|& z>d7(INdN^xfim7;C^+ zUp~7}yiZz_#d}cWw_H$`mAC9iP3J%t(R!rz6`u?=f13nyhad14*|bChxJiX>Hdz$m zjsGs)>rc^bE$#5l-vqR~ofKrhYV_A?L$&3yb10#WbWl=I`T(L^GP~!d%Ji_Q`!_>`3WuP>qo9g!7V-0B$7|)iGXDKNvjF~E zK<0-)0iiD8FQS1XYY0y$$4jln!5>1Td^t^+R9m#bs*V9U*ifo}a82+AKYU_}J6N7d zG8)##^)~|xWq)C3M(Jh1uLq3DJeEOW)+gdFDTH>ngg``C)jkDq$4Khx{HH7=JyyWx zrf_NqjMQ+AiSa&onm&IjvyyfPN8A+v# zd?~~r`;Du_Cks@W5pE@pALQLqCX93x>;NCpH+{HO_#UVUVujSlc48Kf`sXF-YF(F3E(Y26EkNlM!lXgc?0Za z!(kBe6puWQKv#a5Kr7gx=peg9R)If~cD{Cxch$kV;>~JM;p)Nv)v><@S`x_>A4^we zU=%Azq%I~&38owXP@OghhlN@weh?Dss+(acpF`)Cz#uFAY9JxYzQwOo3gNr#bmc_F zkRiBoMa2T~L%n4Bpe=gfwX`s^oyc;oB#EEMZ@Iv>=u}wOfN!q_KJSn{PVpu z$&22$#s>_x!+CvU!3p8 z3JR>>Nvm}Q30f}0Zz(xK?Wn-W{QFz~AD8YHe~5EEXAxu*W5aCJclnQ6OApz_Q^=>C zce?l@*2b=)xv)6-7OHAumkg!nfVUUnipL;$q>wJoCu?M36J@_tV5^!3)v3X1r#xIpAl9LJe7swbtO9_n6Qd+jV`}>wB2KZ<5cw9jgsX8PR@jpC2%A8IvPm|>b z)Z49UR~`C9v)eD~Mm+xj^YQiZgdaWb8kbIYnz9LyCP9kSTobl!rzUeHM}nHFwI8B%mTB2HwMY3K%20DLsh6|M{Pf3sC)B>Vw6esX^3H-?xh zG~!2drNuBlOtZD-lpnX;I2D_C!GN2;G3P%*4>2UuAF0;MENY7n?2&vj)Sr^pc^D?q zOTNI=)>$91Vk4_9X~}GkSn>`Vr&rIYHF(|!fx;Qv1EB+pTnpx*lyb6|+C^&5L%Vsx zAx=3g>(gSx>^whsHsft3*Cj+b@bNY4RQ}h<|GuT>5Re?AJ1(` zw*T7Dzutj(pv0TAK+ra8|0ePK-)!*jruer@i8f4>L%DW)CFg&)(tj`UcLR1!1WCC% zeht}p2JYp5PV2vS=RYs1pTI4ueOmtynfL!|!M|g~ume3p=-mI0R{mw4%5cFgmf_l$ zkNwx&{jc(y{1V+cuMD*4Ln9LlRr4iEz1QPi*|AS+Z~qso{bx7vp+Fo^n}ZhygRwaN zEF;XjBlOE4g2fhp6P@qhe`4A!@w5PwvKU%CJ%M2HTu4U$g#fZe}hcedI{BTI=NW%RPX8onAd^5A3u5GSGj$8~1@3tSpN2 zh91Gi$EVdoFP^Kyp$~YoqSdZKo!9Je^a|+8$$^1=kg<@A3xv-3FO6tq+If zoBn5f`qyXv+Z}f?MlJ$frLgn2$F%sQPlq4VfD!J9vsRl1Hf!+c_J+fGNpn*KZTF;1 zB{(GX4Lx7_(3E-p=PL9+CzK4BkU>*=IABPe&Qxmo5fhV$_SQHbz|UT&%BFI=Wd;Ej zko%u?{@XN!`rE@?T_XuM6Q}e_r~r`4ns~Pir+@jbVfI^#H$VQFYW(N={pf=uBPl@< z5_^(YtPv%|s0})RK*r3ImDAl%{Xc4$|G8~)VHo`LT*D69Xp`^oeL8~Pog7u9(Wk!s z5TA=}`!|36b9Lb%_*vnb>C_VVQbH{WSjgLcMj zY|N}Kc+-K1n0PR_{M9S1rxG6V`CrWQFQM$OArsL8z(O)5Xiaf(WKv=*A)^(U`NUws z^}rs%fA;u2iCpSJyBb$Y01b@-Ft!LcEtz0T-52>&@&9V$zduM3Ip9~^w}=WXCW+W0 zDfLE)J+ojP*6@?af3D>VgD;k6C-!M*Y$RoO)#(!?h0TW6jAOMqufRS!s znhLy)123is6f6G^gOEbPD#9b6Dkn^jj@nSJ4x?r5fyMa#!S>#i=$P2FkZ-=gA z4Eu1Kf8R^}|2V3mFHE3F^J9<$pIxxdqexxmKYEq06g&*fL!`l2IxsEE8nFo|TzmS@ z6+AIYA}orcG}AN8gLOPv>%9NDcqzQUeL^5qq_Q@>jB?1@`K{pSu2{f$kZIq&`-E@JpM?68R?t4f+1N>;BI&_)tmV!e6#Aq~xXICnwP@XLEh2lD*x2eC|0t*|cl; zruV~!75X2}N{~qxpZmcn6CRI)Up5;pI;f=b5b^P!IBMt-ojxfl6zQ%Mb3^Iw`rV$o zUtJb57daNdDs$1-dcZ!b+ri*|(xbEQdXL!M-<6KscidaAZZ(&c;-RkYdX4|f8s{iS zc#Ke1!Fj&sC#>&rYr9l;?_Y1fBL4DXCGF2erS8Ft3U=F4Tv)if6kCh#InL$9d${Sd=@D{-^}Hs<(d@j_g8eEZ7L7s@ zr3A3Zb!0zDS>r3>7SDYLLe9{(DMJy}zP+Y}#aA~Wnro7Y!MOL1`x=|2Ruyd{dDvuD z=J~1(TKjeZkr*h3al>)z{~h)eUold@F6@rKD? z8okbaBce(u8>~V!j!~&dWfB-KQ1?=LvE9O8CIkCNOzvL#Yi*yIc+xZT#dOwMm8PrY zkUnyF|8lX~Xw(El$Yb&HLo%rukx+N5#->9xgRcPClL zh}|hkW=V3j?k7I?^Cau4W*8Wa@ZB#`E&Br~PW+TAIb?}?!=)f@hl^j{Y{rd@dY3^L zY$iI&5I8Ebs)@Rbm65vNFBL793#Upo90W)(k}!O zoQ=D?2ZFmh1ef5J;BLWneP`ADF{^6Tnx3BD z^mO;kbXzVI)+S4dISkxc`?FK|7pIl5?7~F;j71CYNl3qvql?s58mD1Bw`-@WnH zSTUUzr3XLy^_OcKSC*iCTorCBPI|pV_*^%bdJLSBr+w#kI+M5j=uwWgC3O{wnD>Qj zrFXO6ZYlR==IxB=$jDfd?TXt-FZI~hzQIbT`LDR9J>vs$v?^?$Tpw)GnvH6oo_jWo zazZARZc$-leiV&7V$zKC^o3t73a?g2Rl*>Tj5u<~B(1Nw$((1eWlh|^`Q!9l@2N31 zD#9D!Ontkk;~TK!7TnH$e)jbpn!q3=q$DS&RY>|0lW`%4$y2#fBWv)wAzf!ZWzaZ8 zDrgcWAu$)ydrCJ+n(=iqP_oW$ho;qM^~Onb@w0h8!jEKp5)zu`HSbEf)Q^Ww`M&Wc z*aNMF5w~ajWK%+~=`LqKHSNHAA)k_TnL^9jR(!cMo$8$PJ6U|OmYqKsS<#U4jsnWQt zvzc@{#BND>=SbidtwywI&u zr|cphm}P z{UFV1#zV!9BXJ=mhVQcGpyM#nwfDaO_XmNj8*abGOZ6;Fj+<6eQVQPCyTq5ipTMPF zeDT|eLnVjLzFy>R_FS8yWdu zAGzjL=!0dG7}Xtq9^ff{9+4plO~WDnGE39^0VnnP21lQ}E|p$`WL)D2z``sj9?r|4 zXmTQ%Qno5P6vzqf)_E;Fa8+P5MHrC6@93D}#H68`M`f)HCONJ^(A}h38+=ayS6$Kn z2~{*eDo2c?{Ksoyn}wgH5D-s4=*H~pUUw81RKM6CS=Z@A4svo8;)cEjbfHRAe{cEO zt1LHaT2dIABUbWA)zuam;dfV`Fivkd)53OC{-lkLk0w6U)=C!AJ<2q08D9s%T12OF zHYnbh^TeOD5&FuTbS=Y+5wxkCz#bO5Fcs5eJ4jK+734#TXM%2<l(gYrTh1&pK52-_ zEk*FcW11haDOOubHn(dzNNslPI&@@V&GWdw9=m+$Fry|K{CeVR-@z|Bf;IYb)(J_b zPz{dcPS0ZT543v?=tJw>>$`4} zy{rJloHs>LmoolV5^N9N^VF}I^mlRM8h7;bIX|`1l#&jZ0zctA$?K~h`jzvvihqhh zy_9`eb)T{=BQt464Pv^#ZEw9mxa(xG!5;vkKdA0rf#Qg~h|o&5w#S9A{n_kQfkrXl3Ee=qB-fRIkI z);>x%-ZKL)so7??gL9Ak`A@s+5goUIm!yhU$#s5Cf4HGHvlbb_*Z}1R+&D5S{H`8H zF(yCXp{WS;js7?@44;BZ{bm&mHUL4O(b-Z}rO6geA>QTQz~XwG=ERQKQ_D$W1&ftG z2teid=h}$n_r7dVf`!FuN!N9^cbE6I1GTmHZ%rG_=j6(s%WjDDc{VN<<;p6)Y$o8) zIWAs=3QIOWP=j%_js#=Jl5Be+7nG?x-j@K8`2*U$?x`<6n>a8N%>pmc78eT_7e`61uC4ITvi+sED^HCSE_M!p9f! z@4w9Pg+x-sCp!n)?$vgh;$~kPkz5%|Nsmt$2R-DU|H#N85%$$P5QDT7IqfVlMvQ)a zMi#pe$|jpe>Gru>Wq^L6o#YhAE;2d;4Bqct_3nfpET216Wq}>&-x>c_y#np`o(8dG8snIHefu!Wa(qn&kTA_yk z2;3y0q`psSE+QM2IOF{#Ki)L^Jm0RpqS`vNA)LE4zs=au$x^Z+Bv=Ffj@dfw@_-W? zSlcC33Qi;dtBKiRt}hSBT~ayvhzxXBkOijW8}dB2-}t+0_RVU~^@djt?&joJ6huIf zmRlRCl_7Y$JntQDLRwKCZ2>7gJHY0`7+a}24}fe*2=Icv*}3Aei>Qq zQY$Habd9oDDGyg^&O)J~Jl!XPY!}<|^L`P@-hX11ywlSqfjky>z9=K-#2{2Hl?eWRcviXxAemU8x{?lc*#==^rj#IXiChJFiWt?vl10S)X zRI1Pf7^grOnb{K_mK1Db z_#*44DxC|J#^oF%-t$rMt%Nt|!(LwWwT1pz#eicYO%$#v8ZpJqI2TW)>?g$$`J$YSC>IiJ@Hg?>xI zxYL}z^`dS3SNP0snd~f9md`qkZp1Qa+|=k28$dD{9)oBRb=##n4Oz`}31^kFLW!Ew zD3g%}cnQ*ZOCOQzi`#h4bjL7#%*blPGl&H|92XuKQ$B*8l z+;zmevQpndFw#CZNKS?}i?p#)u&#`lM&HZoIr!azzO8iTah;;Rn!};eK#e6`NV{nt z1O~mA&9et*6aA`Y-4}}d zbH@xI)6L66@|>%^UAr?5V91b>P$ z-U)DjdJp$ro;Y<{^}|G62=ecOn}p39%@u5oKtLJ~u3`qK7KrmUgQiHKUW5nyun?Mh z5a4t)Y#brWv%gDmZOk@&qe<7?;7kO1j!r%44;)Gkf*D(g#GRz2s%+crIDLuUrG_Dh z>bz2=PUqzozW>db#_Cu%`MAY1q5)-Ak9HSQZT`T$Lk?2gpVar-gmDOG2=@w@`=&ZhBAc%fXrwgOvVAs^^5pJbK%jQ4qXW)T!kV(n2xJ3YC68C(N8o#u| z3t|{E4r0SGKvXS8_IgXh`gg}*z!iD-O@CW-29hKXCJsyAQQ*g{jkmB)`8+&T?ijdA^#{y}rP^q590l9sYGD__0RyC20N9GOzIO-)PC^=w4_NWO`!r6UCB@W#8@(L z`>S2Fzf9u?u9S2xyR{;-H`&&S-mytQ&C??8$Mo{kg*s&EBMU~FMbY)K?)lhyCtNO3 zo52S$;NSpW5@}y8tJm4R)>r&t28=NE5=V5|#tF}ote8G5TRJTI_5Cl)ZmA&NgrErY z+cc!f30-$AX09*76Mf0#4`#$n$g-La?^J6c6W3o-EeLlbrYZNVB!28_?}B{5X-WIU=6-XJ?W!22xnP!K!Or(Wa3CXW9#olrXvPSVWx$i=e zoMTGGJ#T-nOQu~OX_w5h`AKBm>U_AQ^w{4Vj!w)|eHK$a>dM(D+R1lD;4uh(&#z(B zAF^)=lj~+`VurQ<>)p}u5~Eb#`O+rEk8dC(zOg=~C*6|XWf;{kI9J*5-###@PiH}h zk!6w$QK=<0DfCP2hy^YrXU-#U(TmV1){y4M1u)L zzT0WIBFOe?&S!kC0!0m(cbSCVNlAFM5Oy^GPUQt=o)6zEoQ2CMN?X#w7Om+#S4+&y zaU5SQ%;RysmcDAE4uxBB(>gL)Rx4c{Xu@J_5jhP;$Vp5V|4Vz+mc%6nF;TMqG%Vry zaeR~FzE-x2xgrcd#DPFjMk1WeAxZLQAZz$U#o^LDi}CXwbqD0T7sR$q-F<7-^~Z%V z^a1(7ixHY-b?1G+0~VR(T|Hsd0%V9)0Qf8TGL_9dJ6%k*XV^E9wpQPpH~c2n0ZB5e z8PqPS(-=0JgJ%D<3l1bK><&))ZkSH@g)$5V`4Who!c1eyfALSh@3Q;b5 z?@_@EzT_#~F1N%4y^DoiU7Y>j^CUBsa131$83K z+1dCOY5TaXoJDP~fc=9`+{s&DkZ0=Fr%AY+GK$lxOKxmR=(NzC{lPHF3rqZwh5buM zf~cUKo(`%ELugB|^2iAGOdXo=?P-vbP>MjqY4+t#;Sf-Njwx+tB2?AmRh7^G*eeJ?BolEL*Ar$(r1!}9Xsohri*mpcv*3yjyxYObSH74j_2GwS{PdNV zU_N(V3GpVc8==la|hgQvYaUR2-P|f#Ptv!sPd_1b&enWNO{F>w>SWUZLE*6Oj1R_N7{v@EyUN|vRB>ck(PPuNn=qZuhy zQgdASjx#D(+_AAmrQF7vPPMz6g5*lH;;sTPfiynNy@lbnw+3i9*vc^g8)w22O__I& zpV}~e5>>VqI=-k`&i%wB^Y8k(-%ZuX8Kx9(%h74l+{#*MC@d8Yg#qkO#Y;-INFHs1 zgN4P3vmIBWIJjd4d!2=YvEwqSGM8}DcX`bSAx?f6PS^7TQ{@Xbo8J_#&811bpvj<# z>Y{}$?#bp~Zg$1xnjCd8o_6BQeh7=)@u=QAqlDEgzCa2w5XN;?b&zjxpLyf-cA#}Q zQdkW#X;XTbl4#ti*pB)}WZzDVU@W$v!_ON?ni2X@j{GFih9;~&7aaV7k@Ebh$#Tq1@JN|{_l#Y!#^blL=wYnwYUoM{7XJr!2?ke& z^zY--g=tOarlPx!sQk_;w2it(P11GdD=}GRR1B5gWw@otdmXNrmOoB+UTk>>{e@6J z_9Mi9^Es={|K#>3Ho!s`MI*cIfKAcGGQ=BSL7G?S^J6J;=h-nE&*$Tl`@nB`*oql! zB-geht-V~lg&&7P%*H3U^?s~a$jSHC)?p%$J)9JzHLc`Og|nn{z8>TN-t_z|_^%lj z+lr*t8IEU8ll20m7sgOi^-6E+3XE)YJc zm3H{fzl$x)G;~LDI~lSE&oVgKvBjG(v_%#R?DTY-J$Zk30P|roCF7@b(+YhG_+O{0 z{%cWHllCV9?g&Mk84BJ1mdDmnvDtg}^y{U9H>b%|$0uD+ke&(MReBa5VC&hmYq85u zHJS&VC@mi-*zu5)(wj4z5tm-)(@$W~HI`W9Q`$c)rwh2IkLx!`46ZpuvzW-4Qf3`n z9Dj#0TCi6J?0<*LEtC1EbIl6KGQ#9|5G}Bz$JOR{JDUfR66ej@r_{@s__7q1z>f`C zg&k9;SM!BO7JN@>oBU<4?#>`oQdNMD5uQ!V%C@te7yy;o@IHdwDwp8N&+CBXhsKxl zOLHTF%LJ5jSC0Aj5W$b<;~ngf&kf#SrRcY+m#~*`&hu|U zfsMPz$LEGkv%IvG!7WPZ6B*5ePqvg)-aU*o zW#)|~A3jz=Ga-zb+R&>rZ}7$l?^^&nH3l+OTHuF3gqT^{_hJjfZ|P$*ohh5Obt;N? zoCGZiIowtIP)2(F_SmNe&`hrww(>_7U*AGnn{GilNp3Yz1S1>!2VVil1!L~77^@}o zD1fBJ5Si*IfFrz0(CQb<0I=cqiUaoh(h3`cDF5dVB#shG%rP}@`=~8(%~qYOmK^(6 z#|H+=fv*9^A;D0=UlHRr(F!ZQF5fOUNAY_qJn=rmu{pF{9a8tuK4)w7?xJNi*=}S% zyNYgL3WK*Mz_R@(*nR#Z#mSu;EmLS-O}6FHfvVO(b^=LM-gK8Km%=UB{%{^H^WUW( zuY%Cm$9$$b(|g&|+*>-YvIsliv1yBODQ3dZqbXdE>npW_rNorstA{;f!i?w2heM9{dbW!AxGYldHCa@N>M(TS8S7-t#2M_R^Hv=#YePwcnBFG0kM zU`EQsd5bgFyFbBU_rWsJjJ7j>9HZ}sk|)^QiH(N~Gz96I9fjX=H*iE8emu(VyGhmo z2yW=My)K1#h_?uCjk&Ko+q(q%zHB3t%=kLifr%Qp zC2x5p+s`;lte#|^LQR9$+P%y|tWzxd7Dx)gFpzW3m} zK|RGVf-ra{5m_{)R2wG}^3N1*xt|m6m>K6B^z_)mlHiFQD95d@OA30w8Wz58gsf1J zT_;CI97n_3sm%+YbyJzC0x#uL^ss;*uDFN0wC4dfikJ~%z;qiHB@Xu$=(>I3j-sOWJu z-CQ{DOA)K(^r&8OTYKwJntZ6-3eh%xdyUYic2?J&H{S}1H6w?rSkPSK1kg5JMfb8aa@(}ieMDy-~xQCOX7qRQ&2-8)Iw2@ZT}(d0xNSu5jB!d`v2 zE{y@~t@_@lS^FCecr-SXi;xd*9$J;EIQZ9m?mwuq;2A|*B$>e*R^pYpllKev-WiIC znc7r=6HC(N=Ypg=yv32%3MP1F6NByB3W3-LXV!T;h_ZAjmeoXTO35%$5JM6|TB3$! zFB4r}4@f|*qClf;>0g6zR7cs9FG4<3q+iN(A*DF^si+tSDxTn2tuw$GqymZcR4Wh6 z`)iOrGBf=v-x(C}{J{E&H~@yCBLgAT|1U-403mlR_EW^*!_M{;6TILLQ?uQ?KP0bB z(y5dtADhvEvTT#Cqbi+}tuxaEt?dW3ZEXln)a~N=WC6_GOf83IWyxp87#WVuv>6`EuNUV5$P2d`A;(6w-YkFR$(GcKY!6S ze)B0dY`SXOJ~B6{;vmA=E$5fJkAAS2mYG+z$mJ4+5eb!_k z=M5yBB+;{?>wz~dCAV;T*{z`f?MoM7uxZri100JviRS-S z*~Rkw`~9@!5K6Zr+8EBbu=qi&R~EqXe5Tn0_Qcu6X9E^ybI%OUh#p)=uHY|4LZQ) zcwF=?hUP{Wq1Khg1M^8hF@S=GygNzGfV4cM=yS_F2krMT6{y@sDLc-6yo%D>73o$| zUF%h89theZdblGwn^ZR2JwZNzyu4)SmsPsW7$ne3o<#>w->Q;0=+Q2*_a}mi z^xU4eqsN4RrRNT52_-18vmGS%c~Lqb-ix@|+UfUY-iN7WI)W2|J!>BO)*|Ax_VG0O zGQF}9TqMq?r>1rj&mix!dhemn;4$}atzgsN-bORIUO9m@_XG#xTj))$?9iC3e<_Co z&q{dB${3)OW%Rby`|57`k1p(F!R}-avE(Fq1jVNEV`^FGw^jgNZvQ%;B+XKk zrCI@HaicGiM|HErka`5}XX_tShVBqs=m4h(v7f_)T$>_QRRMf2*B~yOB)UTTro30c zXwQ(=Z^Qic8}4VZXJJC%6h2&pdJS{n+Att0%y6{5N$bU>duY`x7->73!EMJA6XW}3$=% z-TrtB^fUGM^e@wf1K+8$lt;nE&rKGH^+Ih=;dCN71q_1&CaHq7*_BUmQXPe5%#yfuww+GXm*d0SIdv=dUVnog zYd|l&k&B095n+EM8!zt|^^(F zz8h{T4hXlbmg(=QOCtal%7Ckyj)zknk)lW6;WCfcK|9a>zqXHD(p+nW>AdR-YsdDlSomA8pLA zErM?c$@|Jme^pukIiTw*&HVHRrjxdYK0aeY)w}@hb&LZi0mad9LCBDU z;TiO*eIV2?^YFzI7-dKZWX4sliYx1c5PTZjJ-T@=7*p!RF4jjZB9V9(`@CcOo?5jHwdB zh|FirY8NFGR>JdBa2d2+YGKm^O{`_!D=vNNRamebNo^Zx9lI~O+&j}9p1NGeebxE| z)LjBy#?mG3*v+yTEo<`2K^$_g(zaB8@C?;#iJP{tKcZiSJ16%d@O-|X3-`#-F>L+q z0K6145sm?I)7<7nPjSyg5o^A1?FA~}N3OgxT_8}7Lvxa*AN|gmxLK;)8-#w;M zNazh5QC`Le>3)+dmaFl}BFw`Gh(ivI(YyZ?Wd_)v=<5ri%TJHsMl5|SlgD|%JK*`t zMf#sM#TYJ%+9C#KOyCuZ8e)Y!Hnw}q09Tc6Paq*`#25CWp@BWc=5>61oAyt}>WwSz z!MgTf#;2FsA;L;8M0bVgh{#~0c%x_ZP7s-tJQ96b0tMEy%gD^dHM@1bc;FrP2=#3} zp*>QH;pNUn=uozWPAY~S&)qmLTkVT0H?s!b-ry2$WUG1OpQlNHFGkhNFGc1Mm}z%% zl%aJvEU{6bG#Obau5EkfC%sKhr^H&t2GD@J7?Uagc?EARPtT2$cU%Q1HeM= zdYU2Q1ks%o=}qKh67p;!+76NO^X}7&BTL5iP%oW}Sgy{&c??e`jafsInYW$l%NQ8g z+9YTQJXU;NPNTP+*t~9B=XMte-!1NKfcZjxeJf|7&?8Gme+h*|OVQDzCRUC*yH4B) zgY4p{4&xT1GkrGNuXLD=8vTWTqS>>6x2-gYzARH!Txy!WR!f=h)j9=FYd^gnrc-ah zVFc8hpxsZ()O?2Da!jD*L;yP$XTB%kgu)^Kr~hSg|_8 zcXqmES_eJ5*ej?2)rs`=K=ebTOlsr#zUh0=qDfA!&Wi9S66NpTZ}pMOVU4UpAc9<5^!rC zW&IhpnYejH;1lti|~GTlJ}8gVye0ChI@mgFWUq4 z@(B5Cl<=B=RRuDc&Kzp?RqZZVdFP$@u2f=qifJ=trDzN|=g43y+uLgXxQGRf69KSC zGVo*2=a=RVuLK?YWM#YGqfxFHyWRF2jjUc_3nCGSNI<)F4HeOD_qKqKqxXdv{GjM! zbH>N2MAzff#|)0Td$laX@Tp+Pa4U42uo#k~0`KNS#Is=6bKZJZn`P20>iJDIE<^b^ zBV`@`4-;xRE=A75DM*Z0axeSvRa42x<^<9R7(gQw;7`NJziu zbH>KAirynr=gwK`L0VvJedFMtlxiPp@8@zuc--=CbGfO+wO0opLkAgp+V9&9^m#>Y zUM=z_m<|^4aLyI*PE>_CwfzY*K+h5$Y`#Wf*584)4YXYs9*(aO}=WkS}F3J zEroB5s*R(4|AJy=^p+dE=Nm!g7%jtz{DZ-6R-{Wy@(JNmBC?yN%NatPs=pO*cBJ=nEm@2eSvhatWJ(n8u(BG6~==Y>S3ORgS%!a+$0UvezJHc?HGL` zfhtsm$=h5cf5G=WmoU3;ydX=OfL6!SmfCfBzG1Zv7Gpe+UF{ARFQ|d4Dx%HtY<+J{hXe~z7jR-6|79@LaxaX z(P4QmwUzFO?wMXa0GWR5C>q4OIt@a>P5F8&#QSZWE*yZ=2lDe&Yq@>UHNi7ZnoN7d zjKh=u^&V-T6vHhgCdr3d!Tz$>c}Jk28}8jjrKk37LPB*>5!WZ$-)Oj`tq*T$4usGu zSQhHvx3g+UqIZlKHkl4prPhG`Ub{v~TV&?BHc|x5hyb4(@vrtP&1Oe)*)?-Smg@`e9u!AP@iS!~I{VHTjx%r!Mz zi5r!67(Y}o1`;J|$zJRWz04fo3_W@OI<4C%;Esb~J_#I1av#k6()M~D{fve)#{Rt? zQRG6jN5;oUM8+-;@A;BeYcPx=O2Oh27Ky;OaSKZXc2fz>E`ezvaiewf z@e8RHkR)(`GO}zsqL|u6rW_YRzD4rZ+E{>0A)8f*C2WYXft6b!BG?^eBCuw#d46 z<*>zA6i6}JYr8BhJi`)-hO~o#F~sv>0KcR}I&2Myv`-J7>&BZLnfl@ga^5lTU3ObM zTD=y=+2T>e$>!G59NNjaG=75TQ+F(cg2_iudQU4y1@*xM2ZYfRa2a3_sL6+N5VTSiE?ZYHWBH!m_99$ z0udu;*HB#8N;E@=o^F*ej!LFzSi&zvpvGvzAdeS)aP&#i>Fc|jseHj3fcaHKoIPSK zz%ki+LLj}sgWZrq&P@RxO;5W2vqb(JyjK>}0Um|yPJTO62EG8Wsa^Z zvRs}4IBH+?{ZvL(C!&6H37mZy@@OH4cNii3;`2WBK29LC_@O7E)5I^1EMFgY`8Kbp zCbMeyXyT<;&0Z4jqE^*8c*qneh81R(cuAaXf*#00i_*I-lu;i!%N(3Q7+i>^P0~wg zyrw#TqG07oz5}@!1mZ(u9HjM>TiVgi(1csv#-()Iy7 z!ROZOkC#$bN|D*(6X|3I+h+nW=?0 zLt`?qfKM(Yt<_;_gh?wg_n$8l5~VRk6L*~b98p@EcGrV;BrzVphhQ(muXvjVAy!A> zRe5|DdooSF-D@*m+|LxI$;-S?UV+c}x{75f+HaB>SC4m*Cu=uvbk!D@VqcfN*B45R z)u;xJx<>)VB=kk|CS=XkrKZrPZilfHti^ycF6^l9~L;LGaYT%6so z%SuK`s^Oh~uF4%xL%JlWe#U3m0h9#m`HDt*N z4p(=FORFj(V(P@2UcGGkwuz=;;|kcLebK%lcHXL^^~kCpIb-g1j@P(NeanwC{i1C6I(2T{KWlh4}eC zKC-=TfPJ6qiWHj|&02IkAa%XpW;3#$LhggunHaZS>&61zhipefaqc5k_hurQTU_t4FQNa+!1WW@ zmjf>?;Jlv!;e_69o}GfqY_6+D(yC2CqSaAft;PP9ws~X9vo+xhjulq;d{yksYEYrX zax3`!_Y{xE@=8SQAN!M3Vr-`xftP|t6XxNS6(uhuKtu7XK^7LERjP%;S)b?CV)4u& z2hiK}Vwf26CnC~92F|n3c6r)*UfTFXe;)PV`E%-bud}o&6A>`{<(CvQEt2vjp9Dht zUsu>pwSvTxs&;J&!jAc?-O{7wL?);TV&A#T(cnIt>!sNJ$2$4HmP!_-NCRfz3eJzA zJamnIa9{Y$b~z=V%E4p_#LHdI;pAy+E$CnVMi*jevEVa7}?cTtn5=xn{LOdYg3P6RYE9@p+= z12*`x5a|WIi%%&t-W;1EE3hRYUhQSyy8QYdO@6F5-Cf|&IK)D+G)a>@n|{~#*o8N& zQnnj0c4~_g=HSLX=;?gQ`inpGU%#Nolp+6tvnuC-^Zob#qvAb!H+5RZSYA^sM{P*&LM6=1J?ejjX$tV zE!a7wUL60X>+cmh<9BbI`LpeH`0trZ~EUPMTq#X+P1qb4rG@xdg(YYzEg8I{)++rH)FgP_W14$ zrIFtq*wtAs4mfxljI_;v9trrk=%51Q+Q z_R2P`>fu~n+4zgxf1+9;7aq2$qg_y$)mUU>J+Gs~>-Th^E_!zx(m#P~hEiFroxOvy zrxM)X)a6r_4yEm2Ew*L}#Pygf(i z3qeNqDFcMW7iBTEP-FOV{=+b{2H?Q|UTgo@QE%(@-P~GnbsMHHH28RQu&l7PJ@I_C zllHo-1b(e8X|L-b=bt%Qi12#_EIfC%M9gKoPH;Q77`m>JWIUV;omZzN8L2mF=xb|w zxYo{aeXd4a)?n;$cb4aMXE%Y-+1S#&@o&uicO~EsEg&Q$q{e-tOZlTT;a0)=kD0&ybADE?>hXeJ$JpuKs2NLB{-Y+n@ejdD5WXy80x`p^%48FLC{~^_n-sNF?mY z?$=J3{95rx?tj1tH0JkeOgctJq&2LYFDeEsah1{~Rma!^O%@7j5*A)MSgUpXzc)6} zl+U-dZc+T~|6!UKy*oF42OB}rA$eJed4r0IzPjEwF2M1RjUGC^TWfoQ7y91>+W$jK zBHF)1r%SD%`ak?6po-S0r}6~<5&l0={Oim$dPgnsFTtm81DO8@j^>`c3D*[!NOTE] This option is currently in public preview and is subject to change. {% data variables.copilot.copilot_coding_agent %} must be available in the repository. +>[!NOTE] This option is currently in public preview and is subject to change. {% data variables.copilot.copilot_cloud_agent %} must be available in the repository. You can assign {% data variables.product.prodname_copilot_short %} to apply an autofix. {% data variables.product.prodname_copilot_short %} analyzes the code scanning alert, creates a remediation plan, and implements the necessary code changes in a pull request. diff --git a/content/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/fixing-alerts-in-security-campaign.md b/content/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/fixing-alerts-in-security-campaign.md index 9028ac5bc600..102d8ee6493e 100644 --- a/content/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/fixing-alerts-in-security-campaign.md +++ b/content/code-security/how-tos/manage-security-alerts/remediate-alerts-at-scale/fixing-alerts-in-security-campaign.md @@ -46,13 +46,13 @@ If you want to see the code that triggered the security alert and the suggested {% ifversion security-campaigns-assign-to-cca %} -## Assigning alerts to {% data variables.copilot.copilot_coding_agent %} +## Assigning alerts to {% data variables.copilot.copilot_cloud_agent %} ->[!NOTE] This option is currently in public preview and is subject to change. {% data variables.copilot.copilot_coding_agent %} must be available in the repository. +>[!NOTE] This option is currently in public preview and is subject to change. {% data variables.copilot.copilot_cloud_agent %} must be available in the repository. If an autofix has been generated, you can assign one or more alerts to {% data variables.product.prodname_copilot_short %}. {% data variables.product.prodname_copilot_short %} will create pull requests, apply the autofixes, and add you as a requested reviewer. -By assigning multiple alerts, {% data variables.copilot.copilot_coding_agent %} will apply the fixes and iterate on the code to validate the changes, check for any new security issues, and ensure there are no merge conflicts. +By assigning multiple alerts, {% data variables.copilot.copilot_cloud_agent %} will apply the fixes and iterate on the code to validate the changes, check for any new security issues, and ensure there are no merge conflicts. 1. In the campaign view for the repository, select the alerts that you want to assign. 1. Above the list of alerts, click **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} Assign to Copilot**. diff --git a/content/code-security/tutorials/improve-code-quality/fix-findings-in-prs.md b/content/code-security/tutorials/improve-code-quality/fix-findings-in-prs.md index bd77e49e2f3f..a7b01048cc8b 100644 --- a/content/code-security/tutorials/improve-code-quality/fix-findings-in-prs.md +++ b/content/code-security/tutorials/improve-code-quality/fix-findings-in-prs.md @@ -1,7 +1,7 @@ --- title: Fixing code quality findings before merging your pull request shortTitle: Fix findings in PRs -intro: Catch quality issues before they reach your default branch and fix them with {% data variables.copilot.copilot_autofix_short %} and {% data variables.copilot.copilot_coding_agent %}. +intro: Catch quality issues before they reach your default branch and fix them with {% data variables.copilot.copilot_autofix_short %} and {% data variables.copilot.copilot_cloud_agent %}. versions: feature: code-quality product: '{% data reusables.gated-features.code-quality-availability %}' @@ -17,7 +17,7 @@ category: ## Introduction -This tutorial shows you how to work with {% data variables.product.prodname_code_quality %} on pull requests to identify code quality issues that your changes may otherwise inadvertently introduce, and how to address and resolve code quality findings with {% data variables.copilot.copilot_autofix_short %} and {% data variables.copilot.copilot_coding_agent %}. +This tutorial shows you how to work with {% data variables.product.prodname_code_quality %} on pull requests to identify code quality issues that your changes may otherwise inadvertently introduce, and how to address and resolve code quality findings with {% data variables.copilot.copilot_autofix_short %} and {% data variables.copilot.copilot_cloud_agent %}. ### Benefits of catching issues early @@ -45,15 +45,15 @@ High severity findings indicate more serious code quality issues that are more l > [!NOTE] > A repository administrator may have set a code quality gate that **blocks** merging on your pull request, if the pull request contains {% data variables.product.prodname_code_quality_short %} findings of a particular severity level or above. See [AUTOTITLE](/code-security/code-quality/how-tos/unblock-your-pr). -## 3. Leverage {% data variables.copilot.copilot_autofix_short %} or {% data variables.copilot.copilot_coding_agent %} to fix findings +## 3. Leverage {% data variables.copilot.copilot_autofix_short %} or {% data variables.copilot.copilot_cloud_agent %} to fix findings ### {% data variables.copilot.copilot_autofix_short %} {% data reusables.code-quality.fix-findings-with-copilot-autofix %} -### {% data variables.copilot.copilot_coding_agent %} +### {% data variables.copilot.copilot_cloud_agent %} -{% data reusables.code-quality.fix-findings-with-coding-agent %} +{% data reusables.code-quality.fix-findings-with-cloud-agent %} ## 4. Dismiss irrelevant findings diff --git a/content/code-security/tutorials/improve-code-quality/improve-recent-merges.md b/content/code-security/tutorials/improve-code-quality/improve-recent-merges.md index 810037c5c63f..52218d0e0647 100644 --- a/content/code-security/tutorials/improve-code-quality/improve-recent-merges.md +++ b/content/code-security/tutorials/improve-code-quality/improve-recent-merges.md @@ -1,7 +1,7 @@ --- title: Improving the quality of recently merged code with AI shortTitle: Improve recent merges -intro: Explore {% data variables.product.prodname_code_quality %} findings for recently merged code and fix with {% data variables.copilot.copilot_autofix_short %} or delegate remediation work to {% data variables.copilot.copilot_coding_agent %}. +intro: Explore {% data variables.product.prodname_code_quality %} findings for recently merged code and fix with {% data variables.copilot.copilot_autofix_short %} or delegate remediation work to {% data variables.copilot.copilot_cloud_agent %}. versions: feature: code-quality product: '{% data reusables.gated-features.code-quality-availability %}' @@ -55,34 +55,34 @@ On the **{% data variables.code-quality.recent_suggestions %}** page, each file ## 3. Delegate remediation work or open pull requests yourself -You can open a pull request to apply the suggested autofixes to a file or delegate the remediation work to {% data variables.copilot.copilot_coding_agent %}. You need a {% data variables.product.prodname_copilot_short %} license to assign work to {% data variables.copilot.copilot_coding_agent %}. +You can open a pull request to apply the suggested autofixes to a file or delegate the remediation work to {% data variables.copilot.copilot_cloud_agent %}. You need a {% data variables.product.prodname_copilot_short %} license to assign work to {% data variables.copilot.copilot_cloud_agent %}.
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 aria-label="link-external" %} -### Delegate work to {% data variables.copilot.copilot_coding_agent %} +### Delegate work to {% data variables.copilot.copilot_cloud_agent %} -You can ask {% data variables.copilot.copilot_coding_agent_short %} to open pull requests to make improvements to files using the suggested changes as a prompt. This is the best option if the suggested changes look good to you and you want to open a pull request that applies fixes to more than one file. +You can ask {% data variables.copilot.copilot_cloud_agent_short %} to open pull requests to make improvements to files using the suggested changes as a prompt. This is the best option if the suggested changes look good to you and you want to open a pull request that applies fixes to more than one file. To delegate pull request creation: * **Multiple files:** Select the files you want to include, then click **Assign selected to {% data variables.product.prodname_copilot_short %}** in the header for the list of files. * **One file:** Click **Assign to {% data variables.product.prodname_copilot_short %}** for the file. -There is a delay while the {% data variables.copilot.copilot_coding_agent_short %} sets up the work. When the pull request is open and work is in progress, a banner is displayed with a link to the pull request. +There is a delay while the {% data variables.copilot.copilot_cloud_agent_short %} sets up the work. When the pull request is open and work is in progress, a banner is displayed with a link to the pull request. -You can track {% data variables.copilot.copilot_coding_agent %}'s work: +You can track {% data variables.copilot.copilot_cloud_agent %}'s work: * In the pull request, the summary is updated as work progresses. -* Using the [agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) or session logs. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +* Using the [agents page](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text) or session logs. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). ### Open your own pull requests You can open pull requests yourself to apply autofix suggestions. This is the best option if: * You want to work on the changes locally or in {% data variables.product.prodname_desktop %} before opening a pull request -* You do not have access to {% data variables.copilot.copilot_coding_agent %} +* You do not have access to {% data variables.copilot.copilot_cloud_agent %} > [!NOTE] -> When you open a pull request yourself, you can only commit fixes to one file at a time. To fix multiple files at once, you must use {% data variables.copilot.copilot_coding_agent %}. +> When you open a pull request yourself, you can only commit fixes to one file at a time. To fix multiple files at once, you must use {% data variables.copilot.copilot_cloud_agent %}. #### Opening a pull request @@ -97,7 +97,7 @@ You can open pull requests yourself to apply autofix suggestions. This is the be ## 4. Provide pull request reviewers with context -Providing context on why you are proposing changes to code is the best way to encourage team members to review your pull request. If you used {% data variables.copilot.copilot_coding_agent %}, the pull request summary already includes full details of the problems fixed by the pull request. +Providing context on why you are proposing changes to code is the best way to encourage team members to review your pull request. If you used {% data variables.copilot.copilot_cloud_agent %}, the pull request summary already includes full details of the problems fixed by the pull request. If you opened the pull request directly from the {% data variables.product.prodname_code_quality %} view, the pull request summary links to the "{% data variables.code-quality.recent_suggestions %}" view. You may want to copy some of the explanations from the {% data variables.code-quality.recent_suggestions %} view into the pull request summary. @@ -109,5 +109,5 @@ When you return to the "{% data variables.code-quality.recent_suggestions %}" vi ## Next steps -* Learn more about how {% data variables.copilot.copilot_coding_agent %} can help expedite development tasks. See [AUTOTITLE](/copilot/tutorials/coding-agent/get-the-best-results). +* Learn more about how {% data variables.copilot.copilot_cloud_agent %} can help expedite development tasks. See [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results). * Provide feedback on {% data variables.product.prodname_code_quality %} in the [community discussion](https://github.com/orgs/community/discussions/177488). diff --git a/content/code-security/tutorials/manage-security-alerts/best-practices-for-participating-in-a-security-campaign.md b/content/code-security/tutorials/manage-security-alerts/best-practices-for-participating-in-a-security-campaign.md index 331b6de69d47..65086004dfd6 100644 --- a/content/code-security/tutorials/manage-security-alerts/best-practices-for-participating-in-a-security-campaign.md +++ b/content/code-security/tutorials/manage-security-alerts/best-practices-for-participating-in-a-security-campaign.md @@ -100,9 +100,9 @@ You can leverage {% data variables.product.prodname_copilot_short %} to help res {% ifversion security-campaigns-assign-to-cca %} -If {% data variables.copilot.copilot_coding_agent %} is enabled in the repository, you can also assign alerts to {% data variables.product.prodname_copilot_short %}. See [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/fixing-alerts-in-security-campaign#assigning-alerts-to-copilot-coding-agent). +If {% data variables.copilot.copilot_cloud_agent %} is enabled in the repository, you can also assign alerts to {% data variables.product.prodname_copilot_short %}. See [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/fixing-alerts-in-security-campaign#assigning-alerts-to-copilot-cloud-agent). -By assigning multiple alerts, {% data variables.copilot.copilot_coding_agent %} will apply the fixes and iterate on the code to validate the changes, check for any new security issues, and ensure there are no merge conflicts. +By assigning multiple alerts, {% data variables.copilot.copilot_cloud_agent %} will apply the fixes and iterate on the code to validate the changes, check for any new security issues, and ensure there are no merge conflicts. {% endif %} diff --git a/content/copilot/concepts/agents/about-agent-skills.md b/content/copilot/concepts/agents/about-agent-skills.md index 9f757fb2f110..7dc1137803f6 100644 --- a/content/copilot/concepts/agents/about-agent-skills.md +++ b/content/copilot/concepts/agents/about-agent-skills.md @@ -2,7 +2,7 @@ title: About agent skills shortTitle: Agent skills intro: Skills allow {% data variables.product.prodname_copilot_short %} to perform specialized tasks. -product: '{% data reusables.gated-features.copilot-coding-agent %}

{% data reusables.gated-features.copilot-cli %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}

{% data reusables.gated-features.copilot-cli %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot category: @@ -12,7 +12,7 @@ contentType: concepts --- > [!NOTE] -> Agent skills work with {% data variables.copilot.copilot_coding_agent %}, the {% data variables.copilot.copilot_cli %}, and agent mode in {% data variables.product.prodname_vscode %}. +> Agent skills work with {% data variables.copilot.copilot_cloud_agent %}, the {% data variables.copilot.copilot_cli %}, and agent mode in {% data variables.product.prodname_vscode %}. ## About agent skills @@ -31,6 +31,6 @@ Support for organization-level and enterprise-level skills is coming soon. To create an agent skill, see: -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-skills) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-skills) * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/create-skills) * [AUTOTITLE](/copilot/reference/customization-cheat-sheet) diff --git a/content/copilot/concepts/agents/about-third-party-agents.md b/content/copilot/concepts/agents/about-third-party-agents.md index 46f08f94a05c..fd30292f4191 100644 --- a/content/copilot/concepts/agents/about-third-party-agents.md +++ b/content/copilot/concepts/agents/about-third-party-agents.md @@ -12,9 +12,9 @@ contentType: concepts ## Introduction -You can use third-party coding agents alongside {% data variables.copilot.copilot_coding_agent %} to work asynchronously on your development tasks. You can assign an existing issue or give a prompt to an agent, which will work on the required changes and create a pull request. When the agent finishes, it will request a review from you, and you can leave pull request comments to ask the agent to iterate. +You can use third-party coding agents alongside {% data variables.copilot.copilot_cloud_agent %} to work asynchronously on your development tasks. You can assign an existing issue or give a prompt to an agent, which will work on the required changes and create a pull request. When the agent finishes, it will request a review from you, and you can leave pull request comments to ask the agent to iterate. -Coding agents are subject to the same security protections, mitigations, and limitations as {% data variables.copilot.copilot_coding_agent %}. To learn more about how you can use coding agents, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +Coding agents are subject to the same security protections, mitigations, and limitations as {% data variables.copilot.copilot_cloud_agent %}. To learn more about how you can use coding agents, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ### Where you can use coding agents diff --git a/content/copilot/concepts/agents/cloud-agent/about-cloud-agent.md b/content/copilot/concepts/agents/cloud-agent/about-cloud-agent.md new file mode 100644 index 000000000000..33ff981c73f5 --- /dev/null +++ b/content/copilot/concepts/agents/cloud-agent/about-cloud-agent.md @@ -0,0 +1,167 @@ +--- +title: About GitHub Copilot cloud agent +shortTitle: About cloud agent +allowTitleToDifferFromFilename: true +intro: '{% data variables.product.prodname_copilot_short %} can research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate, and create a pull request when you''re ready.' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +versions: + feature: copilot +redirect_from: + - /copilot/concepts/agents/coding-agent/about-coding-agent + - /copilot/concepts/about-assigning-tasks-to-copilot + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/about-assigning-tasks-to-copilot + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/about-assigning-issues-to-copilot + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/about-assigning-tasks-to-copilot + - /copilot/using-github-copilot/coding-agent/about-assigning-tasks-to-copilot + - /copilot/concepts/about-copilot-coding-agent + - /copilot/concepts/coding-agent/about-copilot-coding-agent + - /copilot/concepts/coding-agent/coding-agent +contentType: concepts +category: + - Learn about Copilot +--- + + +## Overview of {% data variables.copilot.copilot_cloud_agent_tmp %} + +With {% data variables.copilot.copilot_cloud_agent %}, {% data variables.product.prodname_copilot %} can work independently in the background to complete tasks, just like a human developer. + +{% data variables.copilot.copilot_cloud_agent %} can: + +* Research a repository +* Create implementation plans +* Fix bugs +* Implement incremental new features +* Improve test coverage +* Update documentation +* Address technical debt +* Resolve merge conflicts + +When you delegate tasks to {% data variables.copilot.copilot_cloud_agent %}, you can: + +* Use the agents panel or other agents entry points on {% data variables.product.prodname_dotcom_the_website %} to have {% data variables.product.prodname_copilot_short %} research, plan, and make code changes on a branch, then iterate before creating a pull request. You can also specify in your prompt that you want a pull request created right away. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate). +* Ask {% data variables.product.prodname_copilot_short %} to open a new pull request from other entry points, including {% data variables.product.prodname_github_issues %} and {% data variables.product.prodname_vscode %}. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). +* Mention `@copilot` in a comment on an existing pull request to ask it to make changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/make-changes-to-an-existing-pr). +{% ifversion security-campaigns-assign-to-cca %}* Assign security alerts to {% data variables.product.prodname_copilot_short %} from security campaigns. See [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/fixing-alerts-in-security-campaign#assigning-alerts-to-copilot-cloud-agent).{% endif %} + +{% data variables.copilot.copilot_cloud_agent %} will evaluate the task it has been assigned based on the prompt you give it. + +While working on a coding task, {% data variables.copilot.copilot_cloud_agent %} has access to its own ephemeral development environment, powered by {% data variables.product.prodname_actions %}, where it can explore your code, make changes, execute automated tests and linters and more. + +> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_cloud_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. + +### Benefits over traditional AI workflows + +When used effectively, {% data variables.copilot.copilot_cloud_agent %} offers productivity benefits over traditional AI assistants in IDEs: + +* With **AI assistants in IDEs**, coding happens **locally**. Individual developers pair in **synchronous** sessions with the AI assistant. Decisions made during the session are **untracked** and lost to time unless committed. Although the assistant helps write code, the developer still has a lot of **manual steps** to do: create the branch, write commit messages, push the changes, open the PR, write the PR description, get a review, iterate in the IDE, and repeat. These steps take time and effort that may be hard to justify for simple or routine issues. + +* With **{% data variables.copilot.copilot_cloud_agent %}**, all coding and iterating happens **on {% data variables.product.github %}**. You can ask {% data variables.product.prodname_copilot_short %} to **research** a repository, **create a plan**, and **make code changes** on a branch—all before opening a pull request. You can create multiple {% data variables.copilot.custom_agents_short %} that specialize in different types of tasks. {% data variables.product.prodname_copilot_short %} **automates** branch creation, commit message writing, and pushing. Developers let the agents **work in the background** and then chooses to **create a pull request** when ready. Working on {% data variables.product.github %} adds **transparency**, with every step happening in a commit and being viewable in logs, and opens up **collaboration** opportunities for the entire team. + +## {% data variables.copilot.copilot_cloud_agent %} versus agent mode + +{% data variables.copilot.copilot_cloud_agent %} is distinct from the "agent mode" feature available in your IDE. {% data variables.copilot.copilot_cloud_agent %} works autonomously in a {% data variables.product.prodname_actions %}-powered environment to complete development tasks assigned through {% data variables.product.github %} issues or {% data variables.copilot.copilot_chat %} prompts. It can research a repository, create a plan, make code changes on a branch, and optionally open a pull request. In contrast, agent mode in your IDE makes autonomous edits directly in your local development environment. For more information about agent mode, see [AUTOTITLE](/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide). + +## Streamlining software development with {% data variables.copilot.copilot_cloud_agent %} + +Assigning tasks to {% data variables.copilot.copilot_cloud_agent %} can enhance your software development workflow. + +For example, you can assign {% data variables.copilot.copilot_cloud_agent %} to straightforward issues on your backlog by selecting "{% data variables.product.prodname_copilot_short %}" as the assignee. This allows you to spend less time on these issues and more time on more complex or interesting work, or work that requires a high degree of creative thinking. {% data variables.copilot.copilot_cloud_agent %} can work on "nice to have" issues that improve the quality of your codebase or product, but often remain on the backlog while you focus on more urgent work. + +Having {% data variables.copilot.copilot_cloud_agent %} as an additional coding resource also allows you to start tasks that you might not have otherwise started due to lack of resources. For example, you might create issues to refactor code or add more logging, and then immediately assign these to {% data variables.product.prodname_copilot_short %}. + +You can also use {% data variables.copilot.copilot_cloud_agent %} to research a repository and create a plan before any code is written, helping you understand how a codebase works or agree on an approach before committing to changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate). + +{% data variables.copilot.copilot_cloud_agent %} can start a task, which you then pick up and continue working on yourself. By assigning the initial work to {% data variables.product.prodname_copilot_short %}, you free up time that you would otherwise have spent doing repetitive tasks, such as setting up the scaffolding for a new project. + +You can create specialized {% data variables.copilot.custom_agents_short %} for different tasks. For example, you might create a {% data variables.copilot.copilot_custom_agent_short %} specialized for frontend development that focuses on React components and styling, a documentation agent that excels at writing and updating technical documentation, or a testing agent that specializes in generating comprehensive unit tests. Each {% data variables.copilot.copilot_custom_agent_short %} can be tailored with specific prompts and tools suited to its particular task. + +## Measuring pull request outcomes for {% data variables.copilot.copilot_cloud_agent %} + +Enterprise administrators and organization owners can use {% data variables.product.prodname_copilot_short %} usage metrics to analyze pull request outcomes for pull requests created by {% data variables.copilot.copilot_cloud_agent %}. + +The {% data variables.product.prodname_copilot_short %} usage metrics APIs include pull request lifecycle metrics such as: + +* The total number of pull requests created and merged +* The number of pull requests created by {% data variables.copilot.copilot_cloud_agent %} that have been merged +* Median time to merge for merged pull requests, including pull requests created by {% data variables.copilot.copilot_cloud_agent %} + +These metrics can help you track adoption of {% data variables.copilot.copilot_cloud_agent %} and monitor changes in pull request throughput and time to merge over time. See [AUTOTITLE](/copilot/concepts/copilot-usage-metrics/copilot-metrics). + +## Integrating {% data variables.copilot.copilot_cloud_agent %} with third-party tools + +You can also invoke {% data variables.copilot.copilot_cloud_agent %} from external tools, allowing you to assign tasks to {% data variables.product.prodname_copilot_short %}, provide context, and open pull requests without leaving your workflow. See [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations) + +## Making {% data variables.copilot.copilot_cloud_agent %} available + +Before you can assign tasks to {% data variables.copilot.copilot_cloud_agent %}, it must be enabled. + +{% data variables.copilot.copilot_cloud_agent %} is available with the {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} plans. + +If you are a {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise %} subscriber, an administrator must enable the relevant policy before you can use the agent. + +Repository owners can choose to opt out some or all repositories from {% data variables.copilot.copilot_cloud_agent %}. + +For more information, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management). + +## AI models for {% data variables.copilot.copilot_cloud_agent %} + +Depending on how you start your {% data variables.copilot.copilot_cloud_agent %} task, you may be able to select the model used by {% data variables.copilot.copilot_cloud_agent %}. You may find that different models perform better, or provide more useful responses, depending on the type of tasks you give {% data variables.product.prodname_copilot_short %}. + +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model). + +## Enhancing {% data variables.copilot.copilot_cloud_agent %}'s knowledge of a repository + +The more {% data variables.copilot.copilot_cloud_agent %} knows about the code in your repository, the tools you use, and your coding standards and practices, the more effective it will become. There are two ways you can enhance {% data variables.copilot.copilot_cloud_agent %}'s knowledge of a repository. + +* **Custom instructions** + + These are short, natural‑language statements that you write and store as one or more files in a repository. If you are the owner of an organization on {% data variables.product.github %} you can also define custom instructions in the settings for your organization. For more information, see [AUTOTITLE](/copilot/concepts/prompting/response-customization?tool=webui#about-repository-custom-instructions). + +* **{% data variables.copilot.copilot_memory %}** ({% data variables.release-phases.public_preview %}) + + If you have a {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} plan, you can enable {% data variables.copilot.copilot_memory %}. This allows {% data variables.product.prodname_copilot_short %} to store useful details it has worked out for itself about a repository. {% data variables.copilot.copilot_cloud_agent %} can then use this information when it is working in that repository. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). + +## {% data variables.copilot.copilot_cloud_agent %} usage costs + +{% data variables.copilot.copilot_cloud_agent %} uses {% data variables.product.prodname_actions %} minutes and {% data variables.product.prodname_copilot_short %} premium requests. + +Within your monthly usage allowance for {% data variables.product.prodname_actions %} and premium requests, you can ask {% data variables.copilot.copilot_cloud_agent %} to work on coding tasks without incurring any additional costs. + +For more information, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-cloud-agent). + +## Customizing {% data variables.copilot.copilot_cloud_agent %} + +You can customize {% data variables.copilot.copilot_cloud_agent %} in a number of ways: + +* **Custom instructions**: Custom instructions allow you to give {% data variables.product.prodname_copilot_short %} additional context on your project and how to build, test and validate its changes. For more information, see [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions). +* **Model Context Protocol (MCP) servers**: MCP servers allow you to give {% data variables.product.prodname_copilot_short %} access to different data sources and tools. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). +* **{% data variables.copilot.custom_agents_caps_short %}**: {% data variables.copilot.custom_agents_caps_short %} allow you to create different specialized versions of {% data variables.product.prodname_copilot_short %} for different tasks. For example, you could customize {% data variables.product.prodname_copilot_short %} to be an expert frontend engineer following your team's guidelines. For more information, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). +* **Hooks**: Hooks allow you to execute custom shell commands at key points during agent execution, enabling you to add validation, logging, security scanning, or workflow automation. For more information, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-hooks). +* **Skills**: Skills allow you to enhance the ability of {% data variables.product.prodname_copilot_short %} to perform specialized tasks with instructions, scripts, and resources. For more information, see [AUTOTITLE](/copilot/concepts/agents/about-agent-skills). + +## Limitations of {% data variables.copilot.copilot_cloud_agent %} + +{% data variables.copilot.copilot_cloud_agent %} has certain limitations in its software development workflow and compatibility with other features. + +### Limitations in {% data variables.copilot.copilot_cloud_agent %}'s software development workflow + +* **{% data variables.product.prodname_copilot_short %} can only make changes in the repository specified when you start a task**. {% data variables.product.prodname_copilot_short %} cannot make changes across multiple repositories in one run. +* **By default, {% data variables.product.prodname_copilot_short %} can only access context in the repository specified when you start a task**. The {% data variables.product.prodname_copilot_short %} MCP server is configured by default to allow {% data variables.product.prodname_copilot_short %} to access context (for example issues and historic pull requests) in the repository where it is working. You can, however, configure broader access. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). +* **{% data variables.product.prodname_copilot_short %} can only work on one branch at a time** and can open exactly one pull request to address each task it is assigned. + +### Limitations in {% data variables.copilot.copilot_cloud_agent %}'s compatibility with other features + +* **{% data variables.product.prodname_copilot_short %} isn't able to comply with certain rules that may be configured for your repository**. If you have configured a ruleset or branch protection rule that isn't compatible with {% data variables.copilot.copilot_cloud_agent %}, access to the agent will be blocked. For example, a rule that only allows specific commit authors can prevent {% data variables.copilot.copilot_cloud_agent %} from creating or updating pull requests. If the rule is configured using rulesets, you can add {% data variables.product.prodname_copilot_short %} as a bypass actor to enable access. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset). +* **{% data variables.copilot.copilot_cloud_agent %} doesn't account for content exclusions**. Content exclusions allow administrators to configure {% data variables.product.prodname_copilot_short %} to ignore certain files. When using {% data variables.copilot.copilot_cloud_agent %}, {% data variables.product.prodname_copilot_short %} will not ignore these files, and will be able to see and update them. See [AUTOTITLE](/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot). +* **{% data variables.copilot.copilot_cloud_agent %} only works with repositories hosted on {% data variables.product.github %}**. If your repository is stored using a different code hosting platform, {% data variables.product.prodname_copilot_short %} won't be able to work on it. + +## Hands-on practice + +Try the [Expand your team with {% data variables.copilot.copilot_cloud_agent %}](https://github.com/skills/expand-your-team-with-copilot/?ref_product=copilot&ref_type=engagement&ref_style=text) Skills exercise for practical experience with {% data variables.copilot.copilot_cloud_agent %}. + +## Further reading + +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent) how-to articles +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents) +* [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent) diff --git a/content/copilot/concepts/agents/coding-agent/about-custom-agents.md b/content/copilot/concepts/agents/cloud-agent/about-custom-agents.md similarity index 75% rename from content/copilot/concepts/agents/coding-agent/about-custom-agents.md rename to content/copilot/concepts/agents/cloud-agent/about-custom-agents.md index c3dbdfb69f62..5a2cf30f7b88 100644 --- a/content/copilot/concepts/agents/coding-agent/about-custom-agents.md +++ b/content/copilot/concepts/agents/cloud-agent/about-custom-agents.md @@ -7,6 +7,8 @@ versions: category: - Learn about Copilot contentType: concepts +redirect_from: + - /copilot/concepts/agents/coding-agent/about-custom-agents --- {% data reusables.copilot.copilot-cli.custom-agents-about-intro %} @@ -19,8 +21,8 @@ contentType: concepts Once you create {% data variables.copilot.custom_agents_short %}, they become available to: -* **{% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}**: The agents tab and panel, issue assignment, and pull requests -* **{% data variables.copilot.copilot_coding_agent %} in IDEs**: {% data variables.product.prodname_vscode %}, JetBrains IDEs, Eclipse, and Xcode +* **{% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}**: The agents tab and panel, issue assignment, and pull requests +* **{% data variables.copilot.copilot_cloud_agent %} in IDEs**: {% data variables.product.prodname_vscode %}, JetBrains IDEs, Eclipse, and Xcode * **{% data variables.copilot.copilot_cli %}** You can use {% data variables.copilot.agent_profiles %} directly in {% data variables.product.prodname_vscode %}, JetBrains IDEs, Eclipse, and Xcode. Some properties may function differently or be ignored between environments. @@ -31,6 +33,6 @@ For more information on using {% data variables.copilot.custom_agents_short %} i To create your own {% data variables.copilot.custom_agents_short %}, see: -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents) * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/create-custom-agents-for-cli) * [AUTOTITLE](/copilot/reference/customization-cheat-sheet) diff --git a/content/copilot/concepts/agents/coding-agent/about-hooks.md b/content/copilot/concepts/agents/cloud-agent/about-hooks.md similarity index 92% rename from content/copilot/concepts/agents/coding-agent/about-hooks.md rename to content/copilot/concepts/agents/cloud-agent/about-hooks.md index 5df60ebc0c62..3fb93d93bcdf 100644 --- a/content/copilot/concepts/agents/coding-agent/about-hooks.md +++ b/content/copilot/concepts/agents/cloud-agent/about-hooks.md @@ -2,12 +2,14 @@ title: About hooks shortTitle: Hooks intro: 'Extend and customize {% data variables.product.prodname_copilot %} agent behavior by executing custom shell commands at key points during agent execution.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: concepts category: - Configure Copilot +redirect_from: + - /copilot/concepts/agents/coding-agent/about-hooks --- ## About hooks @@ -24,7 +26,7 @@ Hooks receive detailed information about agent actions via JSON input, enabling Hooks are available for use with: -* {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.github %} +* {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.github %} * {% data variables.copilot.copilot_cli %} in the terminal ## Types of hooks @@ -160,4 +162,4 @@ To ensure security is maintained when using hooks, keep the following considerat ## Next steps -To start creating hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks). +To start creating hooks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks). diff --git a/content/copilot/concepts/agents/cloud-agent/access-management.md b/content/copilot/concepts/agents/cloud-agent/access-management.md new file mode 100644 index 000000000000..27f8ed2ab4b4 --- /dev/null +++ b/content/copilot/concepts/agents/cloud-agent/access-management.md @@ -0,0 +1,61 @@ +--- +title: Managing access to GitHub Copilot cloud agent +shortTitle: Access management +allowTitleToDifferFromFilename: true +intro: Find out about {% data variables.copilot.copilot_cloud_agent %} policies available for {% data variables.copilot.copilot_enterprise %} and {% data variables.copilot.copilot_for_business %}, and about disabling the agent for specific repositories. +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +versions: + feature: copilot +redirect_from: + - /copilot/concepts/agents/coding-agent/access-management + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/enabling-copilot-coding-agent + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/enabling-copilot-coding-agent-for-your-personal-repositories + - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/enabling-copilot-coding-agent-for-your-personal-repositories + - /copilot/using-github-copilot/coding-agent/enabling-copilot-coding-agent + - /copilot/concepts/coding-agent/about-enabling-coding-agent + - /copilot/concepts/coding-agent/enable-coding-agent + - /copilot/concepts/agents/coding-agent/enable-coding-agent + - /copilot/how-tos/agents/copilot-coding-agent/enabling-copilot-coding-agent + - /copilot/concepts/agents/coding-agent/coding-agent-for-business-and-enterprise + - /copilot/concepts/agents/coding-agent/managing-access +contentType: concepts +category: + - Manage Copilot for a team +--- + +> [!NOTE] +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). + +## Overview + +{% data reusables.copilot.cloud-agent.what-is %} + +If you are a {% data variables.copilot.copilot_enterprise %} or {% data variables.copilot.copilot_for_business %} subscriber, {% data variables.copilot.copilot_cloud_agent %} is disabled by default and must be enabled by an administrator before it is available for use. + +If you are a {% data variables.copilot.copilot_pro %} or Pro+ subscriber, {% data variables.copilot.copilot_cloud_agent %} is enabled by default. + +Once enabled, you can use {% data variables.copilot.copilot_cloud_agent %} in any repository, provided that an administrator hasn't opted the repository out. + +## {% data variables.copilot.copilot_cloud_agent %} policies for {% data variables.copilot.copilot_business_short %} and {% data variables.copilot.copilot_enterprise_short %} + +{% data reusables.copilot.cloud-agent.enabling-for-orgs-and-enterprises %} + +## Opting repositories out of {% data variables.copilot.copilot_cloud_agent %} + +By default, users with {% data variables.copilot.copilot_cloud_agent %} enabled can use it in all repositories. + +Enterprise administrators and organization owners (for organization-owned repositories) and users (for user-owned repositories) can opt out repositories and prevent {% data variables.copilot.copilot_cloud_agent %} from being used in those repositories. + +For information on disabling {% data variables.copilot.copilot_cloud_agent %} in some or all repositories owned by an organization, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). + +For information on disabling {% data variables.copilot.copilot_cloud_agent %} in all repositories owned by an enterprise, see [AUTOTITLE](/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent). + +For information on disabling {% data variables.copilot.copilot_cloud_agent %} in repositories owned by your personal user account, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-copilot-cloud-agent). + +## Further reading + +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent) diff --git a/content/copilot/concepts/agents/coding-agent/agent-management.md b/content/copilot/concepts/agents/cloud-agent/agent-management.md similarity index 75% rename from content/copilot/concepts/agents/coding-agent/agent-management.md rename to content/copilot/concepts/agents/cloud-agent/agent-management.md index e76be0e66744..ebfe2aeb88ad 100644 --- a/content/copilot/concepts/agents/coding-agent/agent-management.md +++ b/content/copilot/concepts/agents/cloud-agent/agent-management.md @@ -2,10 +2,11 @@ title: About agent management shortTitle: Agent management intro: 'Use one centralized control page to jump between agent sessions, check progress, and stay in control without losing your place.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/concepts/agents/coding-agent/agent-management - /copilot/concepts/agents/coding-agent/managing-agents contentType: concepts category: @@ -21,25 +22,25 @@ Agents bring automation and assistance to every stage of the software developmen Alongside {% data variables.product.prodname_copilot_short %}, you can use {% data variables.product.prodname_anthropic_claude %} and {% data variables.product.prodname_openai_codex %}, giving you more flexibility and choice to find the right agent for a task. See [AUTOTITLE](/copilot/concepts/agents/about-third-party-agents). -Utilizing {% data variables.copilot.custom_agents_short %} you can build out a team of task-specific agents with customized system prompts to handle simpler tasks like writing tests and refactoring, giving you bandwidth to prioritize problem-solving and collaboration. See [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). +Utilizing {% data variables.copilot.custom_agents_short %} you can build out a team of task-specific agents with customized system prompts to handle simpler tasks like writing tests and refactoring, giving you bandwidth to prioritize problem-solving and collaboration. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). Model choice allows you to choose from a selection of AI models to use with your agents, each with its own particular strengths. See [AUTOTITLE](/copilot/reference/ai-models/supported-models). -To learn more about {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +To learn more about {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Managing agents -{% data reusables.copilot.coding-agent.agent-management-intro %} +{% data reusables.copilot.cloud-agent.agent-management-intro %} From the Agents tab, you can: -* **Kick off new agent tasks**: Select an AI model of your choice, and optionally choose from third-party agents or {% data variables.copilot.custom_agents_short %} best suited for the task. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). +* **Kick off new agent tasks**: Select an AI model of your choice, and optionally choose from third-party agents or {% data variables.copilot.custom_agents_short %} best suited for the task. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). * **Monitor live session logs**: Once the agent starts working, you can click any agent session to open the session log and follow its progress and thought process in real time. * **Track active sessions**: You can view all active agent sessions that have been started in the repository. -* **Steer agents mid-session**: If you realize you didn't scope a request correctly, or want the agent to use a specific tool or service, you can step in and provide **steering input** without stopping the run. Steering uses **one premium request** per message. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions#steering-a-copilot-session-from-the-agents-tab). +* **Steer agents mid-session**: If you realize you didn't scope a request correctly, or want the agent to use a specific tool or service, you can step in and provide **steering input** without stopping the run. Steering uses **one premium request** per message. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions#steering-a-copilot-session-from-the-agents-tab). * **Open a session in {% data variables.product.prodname_vscode_shortname %} or {% data variables.copilot.copilot_cli %}**: When you want to start working on changes to an agent session in your local development environment, click **{% octicon "vscode" aria-label="VS Code" %} Open in {% data variables.product.prodname_vscode_shortname %}** or **{% octicon "agent" aria-label="Agent" %} Continue in {% data variables.copilot.copilot_cli %}** to bring the session to your local machine. - {% data reusables.copilot.coding-agent.use-latest-vscode %} -* **Review and merge agent code**: Once the agent completes a session, you can jump to the pull request to review the changes, request further improvements, or approve and merge. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs). + {% data reusables.copilot.cloud-agent.use-latest-vscode %} +* **Review and merge agent code**: Once the agent completes a session, you can jump to the pull request to review the changes, request further improvements, or approve and merge. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs). ## Next steps diff --git a/content/copilot/concepts/agents/cloud-agent/index.md b/content/copilot/concepts/agents/cloud-agent/index.md new file mode 100644 index 000000000000..db4f3f1ddbd2 --- /dev/null +++ b/content/copilot/concepts/agents/cloud-agent/index.md @@ -0,0 +1,22 @@ +--- +title: Concepts for GitHub Copilot cloud agent +shortTitle: '{% data variables.copilot.copilot_cloud_agent_short_cap_c %}' +allowTitleToDifferFromFilename: true +intro: Learn how {% data variables.copilot.copilot_cloud_agent %} can carry out research, planning and coding tasks for you, working independently in the same workflow you use yourself. +versions: + feature: copilot +children: + - /about-cloud-agent + - /agent-management + - /about-custom-agents + - /about-hooks + - /access-management + - /mcp-and-cloud-agent + - /risks-and-mitigations +contentType: concepts +redirect_from: + - /copilot/concepts/agents/coding-agent + - /copilot/concepts/coding-agent +--- + +These articles provide an overview of {% data variables.copilot.copilot_cloud_agent %}. For instructions on configuring and using {% data variables.copilot.copilot_cloud_agent %}, see the how-to articles under [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent). diff --git a/content/copilot/concepts/agents/coding-agent/mcp-and-coding-agent.md b/content/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent.md similarity index 77% rename from content/copilot/concepts/agents/coding-agent/mcp-and-coding-agent.md rename to content/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent.md index e360f06599af..d2d07d206d6f 100644 --- a/content/copilot/concepts/agents/coding-agent/mcp-and-coding-agent.md +++ b/content/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent.md @@ -1,12 +1,13 @@ --- title: Model Context Protocol (MCP) and GitHub Copilot cloud agent -shortTitle: MCP and {% data variables.copilot.copilot_coding_agent_short %} +shortTitle: MCP and {% data variables.copilot.copilot_cloud_agent_short %} allowTitleToDifferFromFilename: true -intro: Find out about using the Model Context Protocol (MCP) with {% data variables.copilot.copilot_coding_agent %}. +intro: Find out about using the Model Context Protocol (MCP) with {% data variables.copilot.copilot_cloud_agent %}. versions: feature: copilot contentType: concepts redirect_from: + - /copilot/concepts/agents/coding-agent/mcp-and-coding-agent - /copilot/concepts/coding-agent/mcp-and-coding-agent category: - Integrate Copilot with your tools @@ -14,33 +15,33 @@ category: ## Overview -{% data reusables.copilot.coding-agent.mcp-brief-intro %} +{% data reusables.copilot.cloud-agent.mcp-brief-intro %} The agent can use tools provided by local and remote MCP servers. Some MCP servers are configured by default to provide the best experience for getting started. For more information on MCP, see [the official MCP documentation](https://modelcontextprotocol.io/introduction). For information on some of the currently available MCP servers, see [the MCP servers repository](https://github.com/modelcontextprotocol/servers/tree/main). -{% data reusables.copilot.mcp.coding-agent-limitations %} +{% data reusables.copilot.mcp.cloud-agent-limitations %} ## Default MCP servers -The following MCP servers are configured automatically for {% data variables.copilot.copilot_coding_agent %}: +The following MCP servers are configured automatically for {% data variables.copilot.copilot_cloud_agent %}: * **{% data variables.product.github %}**: The {% data variables.product.github %} MCP server gives {% data variables.product.prodname_copilot_short %} access to {% data variables.product.github %} data like issues and pull requests. To learn more, see [AUTOTITLE](/copilot/customizing-copilot/using-model-context-protocol/using-the-github-mcp-server). - * By default, the {% data variables.product.github %} MCP server connects to {% data variables.product.github %} using a specially scoped token that only has read-only access to the current repository. You can customize it to use a different token with broader access. For more details, see [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/extending-copilot-coding-agent-with-mcp#customizing-the-built-in-github-mcp-server). + * By default, the {% data variables.product.github %} MCP server connects to {% data variables.product.github %} using a specially scoped token that only has read-only access to the current repository. You can customize it to use a different token with broader access. For more details, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#customizing-the-built-in-github-mcp-server). * **Playwright**: The [Playwright MCP server](https://github.com/microsoft/playwright-mcp) gives {% data variables.product.prodname_copilot_short %} access to web pages, including the ability to read, interact and take screenshots. * By default, the Playwright MCP server is only able to access web resources hosted within {% data variables.product.prodname_copilot_short %}'s own environment, accessible on `localhost` or `127.0.0.1`. ## Setting up MCP servers in a repository -Repository administrators can configure MCP servers for use within that repository. This is done via a JSON-formatted configuration that specifies the details of the MCP servers that {% data variables.copilot.copilot_coding_agent %} can use. +Repository administrators can configure MCP servers for use within that repository. This is done via a JSON-formatted configuration that specifies the details of the MCP servers that {% data variables.copilot.copilot_cloud_agent %} can use. -Once MCP servers are configured for use within a repository, the tools specified in the configuration will be available to {% data variables.copilot.copilot_coding_agent %} during each assigned task. +Once MCP servers are configured for use within a repository, the tools specified in the configuration will be available to {% data variables.copilot.copilot_cloud_agent %} during each assigned task. {% data variables.product.prodname_copilot_short %} will use available tools autonomously, and will not ask for approval before use. -For details of how to set up MCP servers for {% data variables.copilot.copilot_coding_agent %} in a repository, see [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/extending-copilot-coding-agent-with-mcp). +For details of how to set up MCP servers for {% data variables.copilot.copilot_cloud_agent %} in a repository, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). ## MCP servers for {% data variables.copilot.custom_agents_short %} @@ -54,6 +55,6 @@ For more information on configuring MCP servers for {% data variables.copilot.cu * Enabling third-party MCP servers for use may impact the performance of the agent and the quality of the outputs. Review the third-party MCP server thoroughly and ensure that it meets your organization’s requirements. -* By default, {% data variables.copilot.copilot_coding_agent %} does not have access to write MCP server tools. However, some MCP servers do contain such tools. Be sure to review the tools available in the MCP server you want to use. Update the `tools` field in the MCP configuration with only the necessary tooling. +* By default, {% data variables.copilot.copilot_cloud_agent %} does not have access to write MCP server tools. However, some MCP servers do contain such tools. Be sure to review the tools available in the MCP server you want to use. Update the `tools` field in the MCP configuration with only the necessary tooling. * Carefully review the configured MCP servers prior to saving the configuration to ensure the correct servers are configured for use. diff --git a/content/copilot/concepts/agents/cloud-agent/risks-and-mitigations.md b/content/copilot/concepts/agents/cloud-agent/risks-and-mitigations.md new file mode 100644 index 000000000000..26acd416bbb7 --- /dev/null +++ b/content/copilot/concepts/agents/cloud-agent/risks-and-mitigations.md @@ -0,0 +1,61 @@ +--- +title: Risks and mitigations for GitHub Copilot cloud agent +shortTitle: Risks and mitigations +intro: 'How do {% data variables.copilot.copilot_cloud_agent %}''s built-in security protections mitigate known risks?' +versions: + feature: copilot +contentType: concepts +category: + - Learn about Copilot + - Manage Copilot for a team + - Roll Copilot out at scale +redirect_from: + - /copilot/concepts/agents/coding-agent/risks-and-mitigations +--- + +{% data variables.copilot.copilot_cloud_agent %} is an autonomous agent that has access to your code and can push changes to your repository. This entails certain risks. + +Where possible, {% data variables.product.github %} has applied appropriate mitigations. This gives {% data variables.copilot.copilot_cloud_agent %} a strong base of built-in security protections that you can supplement by following best practice guidance. + +## Unvalidated code can introduce vulnerabilities + +{% data reusables.copilot.cloud-agent-validation-tools-intro %} {% data variables.copilot.copilot_cloud_agent %}'s security validation **does not require** a {% data variables.product.prodname_GHAS_cs_or_sp %} license. + +* **{% data variables.product.prodname_codeql %}** is used to identify code security issues. +* Newly introduced dependencies are checked against the **{% data variables.product.prodname_advisory_database %}** for malware advisories, and for any CVSS-rated High or Critical vulnerabilities. +* **{% data variables.product.prodname_secret_scanning_caps %}** is used to detect sensitive information such as API keys, tokens, and other secrets. +* Details about the analysis performed and the actions taken by {% data variables.copilot.copilot_cloud_agent %} can be reviewed in the session log. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). + +Optionally, you can disable one or more of the code quality and security validation tools used by {% data variables.copilot.copilot_cloud_agent %}. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/configuring-agent-settings). + +## {% data variables.copilot.copilot_cloud_agent %} can push code changes to your repository + +To mitigate this risk, {% data variables.product.github %}: + +* **Limits who can trigger the agent.** Only users with write access to the repository can trigger {% data variables.copilot.copilot_cloud_agent %} to work. Comments from users without write access are never presented to the agent. +* **Limits the branch the agent can push to.** {% data variables.copilot.copilot_cloud_agent %} only has the ability to push to a single branch. When the agent is triggered by mentioning `@copilot` on an existing pull request, {% data variables.product.prodname_copilot_short %} has write access to the pull request's branch. In other cases, a new `copilot/` branch is created for {% data variables.product.prodname_copilot_short %}, and the agent can only push to that branch. The agent is also subject to any branch protections and required checks for the working repository. +* **Limits the agent's credentials.** {% data variables.copilot.copilot_cloud_agent %} can only perform simple push operations. It cannot directly run `git push` or other Git commands. +* **Requires human review before merging.** Draft pull requests created by {% data variables.copilot.copilot_cloud_agent %} must be reviewed and merged by a human. {% data variables.copilot.copilot_cloud_agent %} cannot mark its pull requests as "Ready for review" and cannot approve or merge a pull request. +* **Restricts {% data variables.product.prodname_actions %} workflow runs.** By default, workflows are not triggered until {% data variables.copilot.copilot_cloud_agent %}'s code is reviewed and a user with write access to the repository clicks the **Approve and run workflows** button. Optionally, you can configure {% data variables.product.prodname_copilot_short %} to allow workflows to run automatically. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs#managing-github-actions-workflow-runs). +* **Prevents the user who asked {% data variables.copilot.copilot_cloud_agent %} to create a pull request from approving it.** This maintains the expected controls in the "Required approvals" rule and branch protection. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets). + +## {% data variables.copilot.copilot_cloud_agent %} has access to sensitive information + +{% data variables.copilot.copilot_cloud_agent %} has access to code and other sensitive information, and could leak it, either accidentally or due to malicious user input. + +To mitigate this risk, {% data variables.product.github %} **restricts {% data variables.copilot.copilot_cloud_agent %}'s access to the internet**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). + +## AI prompts can be vulnerable to injection + +Users can include hidden messages in issues assigned to {% data variables.copilot.copilot_cloud_agent %} or comments left for {% data variables.copilot.copilot_cloud_agent %} as a form of [prompt injection](https://genai.owasp.org/llmrisk/llm01-prompt-injection/). + +To mitigate this risk, {% data variables.product.github %} **filters hidden characters before passing user input to {% data variables.copilot.copilot_cloud_agent %}**: For example, text entered as an HTML comment in an issue or pull request comment is not passed to {% data variables.copilot.copilot_cloud_agent %}. + +## Administrators can lose sight of agents' work + +To mitigate this risk, {% data variables.copilot.copilot_cloud_agent %} is designed to be auditable and traceable. + +* {% data variables.copilot.copilot_cloud_agent %}'s commits are authored by {% data variables.product.prodname_copilot_short %}, with the developer who assigned the issue or requested the change to the pull request marked as the co-author. This makes it easier to identify code generated by {% data variables.copilot.copilot_cloud_agent %} and who started the task. +* {% data variables.copilot.copilot_cloud_agent %}'s commits are signed, so they appear as "Verified" on {% data variables.product.github %}. This provides confidence that the commits were made by {% data variables.copilot.copilot_cloud_agent %} and have not been altered. +* Session logs and audit log events are available to administrators. +* The commit message for each agent-authored commit includes a link to the agent session logs, for code review and auditing. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). diff --git a/content/copilot/concepts/agents/code-review.md b/content/copilot/concepts/agents/code-review.md index 3ac72df94e2a..3e254ac94e3b 100644 --- a/content/copilot/concepts/agents/code-review.md +++ b/content/copilot/concepts/agents/code-review.md @@ -89,7 +89,7 @@ For more information, see [AUTOTITLE](/copilot/reference/review-excluded-files). {% data variables.copilot.copilot_code-review_short %} utilizes agentic capabilities to extend its functionality. * **Full project context gathering**. This provides more specific, accurate, and contextually aware code reviews. This capability analyzes your entire repository to better understand the context of code changes. Full project context gathering is generally available. -* **The ability to pass suggestions to {% data variables.copilot.copilot_coding_agent %}**. This automates creating a new pull request against your branch with the suggested fixes applied. Passing suggestions to {% data variables.copilot.copilot_coding_agent %} is in public preview and subject to change. +* **The ability to pass suggestions to {% data variables.copilot.copilot_cloud_agent %}**. This automates creating a new pull request against your branch with the suggested fixes applied. Passing suggestions to {% data variables.copilot.copilot_cloud_agent %} is in public preview and subject to change. These capabilities are enabled automatically for {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} plans. diff --git a/content/copilot/concepts/agents/coding-agent/about-coding-agent.md b/content/copilot/concepts/agents/coding-agent/about-coding-agent.md deleted file mode 100644 index b0ef38de3882..000000000000 --- a/content/copilot/concepts/agents/coding-agent/about-coding-agent.md +++ /dev/null @@ -1,166 +0,0 @@ ---- -title: About GitHub Copilot cloud agent -shortTitle: About cloud agent -allowTitleToDifferFromFilename: true -intro: '{% data variables.product.prodname_copilot_short %} can research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate, and create a pull request when you''re ready.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' -versions: - feature: copilot -redirect_from: - - /copilot/concepts/about-assigning-tasks-to-copilot - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/about-assigning-tasks-to-copilot - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/about-assigning-issues-to-copilot - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/about-assigning-tasks-to-copilot - - /copilot/using-github-copilot/coding-agent/about-assigning-tasks-to-copilot - - /copilot/concepts/about-copilot-coding-agent - - /copilot/concepts/coding-agent/about-copilot-coding-agent - - /copilot/concepts/coding-agent/coding-agent -contentType: concepts -category: - - Learn about Copilot ---- - - -## Overview of {% data variables.copilot.copilot_cloud_agent_tmp %} - -With {% data variables.copilot.copilot_coding_agent %}, {% data variables.product.prodname_copilot %} can work independently in the background to complete tasks, just like a human developer. - -{% data variables.copilot.copilot_coding_agent %} can: - -* Research a repository -* Create implementation plans -* Fix bugs -* Implement incremental new features -* Improve test coverage -* Update documentation -* Address technical debt -* Resolve merge conflicts - -When you delegate tasks to {% data variables.copilot.copilot_coding_agent %}, you can: - -* Use the agents panel or other agents entry points on {% data variables.product.prodname_dotcom_the_website %} to have {% data variables.product.prodname_copilot_short %} research, plan, and make code changes on a branch, then iterate before creating a pull request. You can also specify in your prompt that you want a pull request created right away. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate). -* Ask {% data variables.product.prodname_copilot_short %} to open a new pull request from other entry points, including {% data variables.product.prodname_github_issues %} and {% data variables.product.prodname_vscode %}. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). -* Mention `@copilot` in a comment on an existing pull request to ask it to make changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr). -{% ifversion security-campaigns-assign-to-cca %}* Assign security alerts to {% data variables.product.prodname_copilot_short %} from security campaigns. See [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/fixing-alerts-in-security-campaign#assigning-alerts-to-copilot-coding-agent).{% endif %} - -{% data variables.copilot.copilot_coding_agent %} will evaluate the task it has been assigned based on the prompt you give it. - -While working on a coding task, {% data variables.copilot.copilot_coding_agent %} has access to its own ephemeral development environment, powered by {% data variables.product.prodname_actions %}, where it can explore your code, make changes, execute automated tests and linters and more. - -> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_coding_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. - -### Benefits over traditional AI workflows - -When used effectively, {% data variables.copilot.copilot_coding_agent %} offers productivity benefits over traditional AI assistants in IDEs: - -* With **AI assistants in IDEs**, coding happens **locally**. Individual developers pair in **synchronous** sessions with the AI assistant. Decisions made during the session are **untracked** and lost to time unless committed. Although the assistant helps write code, the developer still has a lot of **manual steps** to do: create the branch, write commit messages, push the changes, open the PR, write the PR description, get a review, iterate in the IDE, and repeat. These steps take time and effort that may be hard to justify for simple or routine issues. - -* With **{% data variables.copilot.copilot_coding_agent %}**, all coding and iterating happens **on {% data variables.product.github %}**. You can ask {% data variables.product.prodname_copilot_short %} to **research** a repository, **create a plan**, and **make code changes** on a branch—all before opening a pull request. You can create multiple {% data variables.copilot.custom_agents_short %} that specialize in different types of tasks. {% data variables.product.prodname_copilot_short %} **automates** branch creation, commit message writing, and pushing. Developers let the agents **work in the background** and then chooses to **create a pull request** when ready. Working on {% data variables.product.github %} adds **transparency**, with every step happening in a commit and being viewable in logs, and opens up **collaboration** opportunities for the entire team. - -## {% data variables.copilot.copilot_coding_agent %} versus agent mode - -{% data variables.copilot.copilot_coding_agent %} is distinct from the "agent mode" feature available in your IDE. {% data variables.copilot.copilot_coding_agent %} works autonomously in a {% data variables.product.prodname_actions %}-powered environment to complete development tasks assigned through {% data variables.product.github %} issues or {% data variables.copilot.copilot_chat %} prompts. It can research a repository, create a plan, make code changes on a branch, and optionally open a pull request. In contrast, agent mode in your IDE makes autonomous edits directly in your local development environment. For more information about agent mode, see [AUTOTITLE](/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide). - -## Streamlining software development with {% data variables.copilot.copilot_coding_agent %} - -Assigning tasks to {% data variables.copilot.copilot_coding_agent %} can enhance your software development workflow. - -For example, you can assign {% data variables.copilot.copilot_coding_agent %} to straightforward issues on your backlog by selecting "{% data variables.product.prodname_copilot_short %}" as the assignee. This allows you to spend less time on these issues and more time on more complex or interesting work, or work that requires a high degree of creative thinking. {% data variables.copilot.copilot_coding_agent %} can work on "nice to have" issues that improve the quality of your codebase or product, but often remain on the backlog while you focus on more urgent work. - -Having {% data variables.copilot.copilot_coding_agent %} as an additional coding resource also allows you to start tasks that you might not have otherwise started due to lack of resources. For example, you might create issues to refactor code or add more logging, and then immediately assign these to {% data variables.product.prodname_copilot_short %}. - -You can also use {% data variables.copilot.copilot_coding_agent %} to research a repository and create a plan before any code is written, helping you understand how a codebase works or agree on an approach before committing to changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate). - -{% data variables.copilot.copilot_coding_agent %} can start a task, which you then pick up and continue working on yourself. By assigning the initial work to {% data variables.product.prodname_copilot_short %}, you free up time that you would otherwise have spent doing repetitive tasks, such as setting up the scaffolding for a new project. - -You can create specialized {% data variables.copilot.custom_agents_short %} for different tasks. For example, you might create a {% data variables.copilot.copilot_custom_agent_short %} specialized for frontend development that focuses on React components and styling, a documentation agent that excels at writing and updating technical documentation, or a testing agent that specializes in generating comprehensive unit tests. Each {% data variables.copilot.copilot_custom_agent_short %} can be tailored with specific prompts and tools suited to its particular task. - -## Measuring pull request outcomes for {% data variables.copilot.copilot_coding_agent %} - -Enterprise administrators and organization owners can use {% data variables.product.prodname_copilot_short %} usage metrics to analyze pull request outcomes for pull requests created by {% data variables.copilot.copilot_coding_agent %}. - -The {% data variables.product.prodname_copilot_short %} usage metrics APIs include pull request lifecycle metrics such as: - -* The total number of pull requests created and merged -* The number of pull requests created by {% data variables.copilot.copilot_coding_agent %} that have been merged -* Median time to merge for merged pull requests, including pull requests created by {% data variables.copilot.copilot_coding_agent %} - -These metrics can help you track adoption of {% data variables.copilot.copilot_coding_agent %} and monitor changes in pull request throughput and time to merge over time. See [AUTOTITLE](/copilot/concepts/copilot-usage-metrics/copilot-metrics). - -## Integrating {% data variables.copilot.copilot_coding_agent %} with third-party tools - -You can also invoke {% data variables.copilot.copilot_coding_agent %} from external tools, allowing you to assign tasks to {% data variables.product.prodname_copilot_short %}, provide context, and open pull requests without leaving your workflow. See [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations) - -## Making {% data variables.copilot.copilot_coding_agent %} available - -Before you can assign tasks to {% data variables.copilot.copilot_coding_agent %}, it must be enabled. - -{% data variables.copilot.copilot_coding_agent %} is available with the {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %} and {% data variables.copilot.copilot_enterprise %} plans. - -If you are a {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise %} subscriber, an administrator must enable the relevant policy before you can use the agent. - -Repository owners can choose to opt out some or all repositories from {% data variables.copilot.copilot_coding_agent %}. - -For more information, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/managing-access). - -## AI models for {% data variables.copilot.copilot_coding_agent %} - -Depending on how you start your {% data variables.copilot.copilot_coding_agent %} task, you may be able to select the model used by {% data variables.copilot.copilot_coding_agent %}. You may find that different models perform better, or provide more useful responses, depending on the type of tasks you give {% data variables.product.prodname_copilot_short %}. - -For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model). - -## Enhancing {% data variables.copilot.copilot_coding_agent %}'s knowledge of a repository - -The more {% data variables.copilot.copilot_coding_agent %} knows about the code in your repository, the tools you use, and your coding standards and practices, the more effective it will become. There are two ways you can enhance {% data variables.copilot.copilot_coding_agent %}'s knowledge of a repository. - -* **Custom instructions** - - These are short, natural‑language statements that you write and store as one or more files in a repository. If you are the owner of an organization on {% data variables.product.github %} you can also define custom instructions in the settings for your organization. For more information, see [AUTOTITLE](/copilot/concepts/prompting/response-customization?tool=webui#about-repository-custom-instructions). - -* **{% data variables.copilot.copilot_memory %}** ({% data variables.release-phases.public_preview %}) - - If you have a {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} plan, you can enable {% data variables.copilot.copilot_memory %}. This allows {% data variables.product.prodname_copilot_short %} to store useful details it has worked out for itself about a repository. {% data variables.copilot.copilot_coding_agent %} can then use this information when it is working in that repository. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). - -## {% data variables.copilot.copilot_coding_agent %} usage costs - -{% data variables.copilot.copilot_coding_agent %} uses {% data variables.product.prodname_actions %} minutes and {% data variables.product.prodname_copilot_short %} premium requests. - -Within your monthly usage allowance for {% data variables.product.prodname_actions %} and premium requests, you can ask {% data variables.copilot.copilot_coding_agent %} to work on coding tasks without incurring any additional costs. - -For more information, see [AUTOTITLE](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-coding-agent). - -## Customizing {% data variables.copilot.copilot_coding_agent %} - -You can customize {% data variables.copilot.copilot_coding_agent %} in a number of ways: - -* **Custom instructions**: Custom instructions allow you to give {% data variables.product.prodname_copilot_short %} additional context on your project and how to build, test and validate its changes. For more information, see [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions). -* **Model Context Protocol (MCP) servers**: MCP servers allow you to give {% data variables.product.prodname_copilot_short %} access to different data sources and tools. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp). -* **{% data variables.copilot.custom_agents_caps_short %}**: {% data variables.copilot.custom_agents_caps_short %} allow you to create different specialized versions of {% data variables.product.prodname_copilot_short %} for different tasks. For example, you could customize {% data variables.product.prodname_copilot_short %} to be an expert frontend engineer following your team's guidelines. For more information, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). -* **Hooks**: Hooks allow you to execute custom shell commands at key points during agent execution, enabling you to add validation, logging, security scanning, or workflow automation. For more information, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-hooks). -* **Skills**: Skills allow you to enhance the ability of {% data variables.product.prodname_copilot_short %} to perform specialized tasks with instructions, scripts, and resources. For more information, see [AUTOTITLE](/copilot/concepts/agents/about-agent-skills). - -## Limitations of {% data variables.copilot.copilot_coding_agent %} - -{% data variables.copilot.copilot_coding_agent %} has certain limitations in its software development workflow and compatibility with other features. - -### Limitations in {% data variables.copilot.copilot_coding_agent %}'s software development workflow - -* **{% data variables.product.prodname_copilot_short %} can only make changes in the repository specified when you start a task**. {% data variables.product.prodname_copilot_short %} cannot make changes across multiple repositories in one run. -* **By default, {% data variables.product.prodname_copilot_short %} can only access context in the repository specified when you start a task**. The {% data variables.product.prodname_copilot_short %} MCP server is configured by default to allow {% data variables.product.prodname_copilot_short %} to access context (for example issues and historic pull requests) in the repository where it is working. You can, however, configure broader access. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). -* **{% data variables.product.prodname_copilot_short %} can only work on one branch at a time** and can open exactly one pull request to address each task it is assigned. - -### Limitations in {% data variables.copilot.copilot_coding_agent %}'s compatibility with other features - -* **{% data variables.product.prodname_copilot_short %} isn't able to comply with certain rules that may be configured for your repository**. If you have configured a ruleset or branch protection rule that isn't compatible with {% data variables.copilot.copilot_coding_agent %}, access to the agent will be blocked. For example, a rule that only allows specific commit authors can prevent {% data variables.copilot.copilot_coding_agent %} from creating or updating pull requests. If the rule is configured using rulesets, you can add {% data variables.product.prodname_copilot_short %} as a bypass actor to enable access. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset). -* **{% data variables.copilot.copilot_coding_agent %} doesn't account for content exclusions**. Content exclusions allow administrators to configure {% data variables.product.prodname_copilot_short %} to ignore certain files. When using {% data variables.copilot.copilot_coding_agent %}, {% data variables.product.prodname_copilot_short %} will not ignore these files, and will be able to see and update them. See [AUTOTITLE](/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot). -* **{% data variables.copilot.copilot_coding_agent %} only works with repositories hosted on {% data variables.product.github %}**. If your repository is stored using a different code hosting platform, {% data variables.product.prodname_copilot_short %} won't be able to work on it. - -## Hands-on practice - -Try the [Expand your team with {% data variables.copilot.copilot_coding_agent %}](https://github.com/skills/expand-your-team-with-copilot/?ref_product=copilot&ref_type=engagement&ref_style=text) Skills exercise for practical experience with {% data variables.copilot.copilot_coding_agent %}. - -## Further reading - -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent) how-to articles -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents) -* [AUTOTITLE](/copilot/responsible-use-of-github-copilot-features/responsible-use-of-copilot-coding-agent-on-githubcom) diff --git a/content/copilot/concepts/agents/coding-agent/access-management.md b/content/copilot/concepts/agents/coding-agent/access-management.md deleted file mode 100644 index 2fd0a7cb6e4b..000000000000 --- a/content/copilot/concepts/agents/coding-agent/access-management.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Managing access to GitHub Copilot cloud agent -shortTitle: Access management -allowTitleToDifferFromFilename: true -intro: Find out about {% data variables.copilot.copilot_coding_agent %} policies available for {% data variables.copilot.copilot_enterprise %} and {% data variables.copilot.copilot_for_business %}, and about disabling the agent for specific repositories. -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' -versions: - feature: copilot -redirect_from: - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/enabling-copilot-coding-agent - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/enabling-copilot-coding-agent-for-your-personal-repositories - - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/enabling-copilot-coding-agent-for-your-personal-repositories - - /copilot/using-github-copilot/coding-agent/enabling-copilot-coding-agent - - /copilot/concepts/coding-agent/about-enabling-coding-agent - - /copilot/concepts/coding-agent/enable-coding-agent - - /copilot/concepts/agents/coding-agent/enable-coding-agent - - /copilot/how-tos/agents/copilot-coding-agent/enabling-copilot-coding-agent - - /copilot/concepts/agents/coding-agent/coding-agent-for-business-and-enterprise - - /copilot/concepts/agents/coding-agent/managing-access -contentType: concepts -category: - - Manage Copilot for a team ---- - -> [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). - -## Overview - -{% data reusables.copilot.coding-agent.what-is %} - -If you are a {% data variables.copilot.copilot_enterprise %} or {% data variables.copilot.copilot_for_business %} subscriber, {% data variables.copilot.copilot_coding_agent %} is disabled by default and must be enabled by an administrator before it is available for use. - -If you are a {% data variables.copilot.copilot_pro %} or Pro+ subscriber, {% data variables.copilot.copilot_coding_agent %} is enabled by default. - -Once enabled, you can use {% data variables.copilot.copilot_coding_agent %} in any repository, provided that an administrator hasn't opted the repository out. - -## {% data variables.copilot.copilot_coding_agent %} policies for {% data variables.copilot.copilot_business_short %} and {% data variables.copilot.copilot_enterprise_short %} - -{% data reusables.copilot.coding-agent.enabling-for-orgs-and-enterprises %} - -## Opting repositories out of {% data variables.copilot.copilot_coding_agent %} - -By default, users with {% data variables.copilot.copilot_coding_agent %} enabled can use it in all repositories. - -Enterprise administrators and organization owners (for organization-owned repositories) and users (for user-owned repositories) can opt out repositories and prevent {% data variables.copilot.copilot_coding_agent %} from being used in those repositories. - -For information on disabling {% data variables.copilot.copilot_coding_agent %} in some or all repositories owned by an organization, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). - -For information on disabling {% data variables.copilot.copilot_coding_agent %} in all repositories owned by an enterprise, see [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-copilot-coding-agent-in-your-enterprise). - -For information on disabling {% data variables.copilot.copilot_coding_agent %} in repositories owned by your personal user account, see [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-copilot-coding-agent). - -## Further reading - -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) -* [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org) diff --git a/content/copilot/concepts/agents/coding-agent/index.md b/content/copilot/concepts/agents/coding-agent/index.md deleted file mode 100644 index 86b48eef94e9..000000000000 --- a/content/copilot/concepts/agents/coding-agent/index.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: Concepts for GitHub Copilot cloud agent -shortTitle: '{% data variables.copilot.copilot_coding_agent_short_cap_c %}' -allowTitleToDifferFromFilename: true -intro: Learn how {% data variables.copilot.copilot_coding_agent %} can carry out research, planning and coding tasks for you, working independently in the same workflow you use yourself. -versions: - feature: copilot -children: - - /about-coding-agent - - /agent-management - - /about-custom-agents - - /about-hooks - - /access-management - - /mcp-and-coding-agent - - /risks-and-mitigations -contentType: concepts -redirect_from: - - /copilot/concepts/coding-agent ---- - -These articles provide an overview of {% data variables.copilot.copilot_coding_agent %}. For instructions on configuring and using {% data variables.copilot.copilot_coding_agent %}, see the how-to articles under [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent). diff --git a/content/copilot/concepts/agents/coding-agent/risks-and-mitigations.md b/content/copilot/concepts/agents/coding-agent/risks-and-mitigations.md deleted file mode 100644 index 5c8296182521..000000000000 --- a/content/copilot/concepts/agents/coding-agent/risks-and-mitigations.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Risks and mitigations for GitHub Copilot cloud agent -shortTitle: Risks and mitigations -intro: 'How do {% data variables.copilot.copilot_coding_agent %}''s built-in security protections mitigate known risks?' -versions: - feature: copilot -contentType: concepts -category: - - Learn about Copilot - - Manage Copilot for a team - - Roll Copilot out at scale ---- - -{% data variables.copilot.copilot_coding_agent %} is an autonomous agent that has access to your code and can push changes to your repository. This entails certain risks. - -Where possible, {% data variables.product.github %} has applied appropriate mitigations. This gives {% data variables.copilot.copilot_coding_agent %} a strong base of built-in security protections that you can supplement by following best practice guidance. - -## Unvalidated code can introduce vulnerabilities - -{% data reusables.copilot.coding-agent-validation-tools-intro %} {% data variables.copilot.copilot_coding_agent %}'s security validation **does not require** a {% data variables.product.prodname_GHAS_cs_or_sp %} license. - -* **{% data variables.product.prodname_codeql %}** is used to identify code security issues. -* Newly introduced dependencies are checked against the **{% data variables.product.prodname_advisory_database %}** for malware advisories, and for any CVSS-rated High or Critical vulnerabilities. -* **{% data variables.product.prodname_secret_scanning_caps %}** is used to detect sensitive information such as API keys, tokens, and other secrets. -* Details about the analysis performed and the actions taken by {% data variables.copilot.copilot_coding_agent %} can be reviewed in the session log. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). - -Optionally, you can disable one or more of the code quality and security validation tools used by {% data variables.copilot.copilot_coding_agent %}. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings). - -## {% data variables.copilot.copilot_coding_agent %} can push code changes to your repository - -To mitigate this risk, {% data variables.product.github %}: - -* **Limits who can trigger the agent.** Only users with write access to the repository can trigger {% data variables.copilot.copilot_coding_agent %} to work. Comments from users without write access are never presented to the agent. -* **Limits the branch the agent can push to.** {% data variables.copilot.copilot_coding_agent %} only has the ability to push to a single branch. When the agent is triggered by mentioning `@copilot` on an existing pull request, {% data variables.product.prodname_copilot_short %} has write access to the pull request's branch. In other cases, a new `copilot/` branch is created for {% data variables.product.prodname_copilot_short %}, and the agent can only push to that branch. The agent is also subject to any branch protections and required checks for the working repository. -* **Limits the agent's credentials.** {% data variables.copilot.copilot_coding_agent %} can only perform simple push operations. It cannot directly run `git push` or other Git commands. -* **Requires human review before merging.** Draft pull requests created by {% data variables.copilot.copilot_coding_agent %} must be reviewed and merged by a human. {% data variables.copilot.copilot_coding_agent %} cannot mark its pull requests as "Ready for review" and cannot approve or merge a pull request. -* **Restricts {% data variables.product.prodname_actions %} workflow runs.** By default, workflows are not triggered until {% data variables.copilot.copilot_coding_agent %}'s code is reviewed and a user with write access to the repository clicks the **Approve and run workflows** button. Optionally, you can configure {% data variables.product.prodname_copilot_short %} to allow workflows to run automatically. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs#managing-github-actions-workflow-runs). -* **Prevents the user who asked {% data variables.copilot.copilot_coding_agent %} to create a pull request from approving it.** This maintains the expected controls in the "Required approvals" rule and branch protection. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets). - -## {% data variables.copilot.copilot_coding_agent %} has access to sensitive information - -{% data variables.copilot.copilot_coding_agent %} has access to code and other sensitive information, and could leak it, either accidentally or due to malicious user input. - -To mitigate this risk, {% data variables.product.github %} **restricts {% data variables.copilot.copilot_coding_agent %}'s access to the internet**. See [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent). - -## AI prompts can be vulnerable to injection - -Users can include hidden messages in issues assigned to {% data variables.copilot.copilot_coding_agent %} or comments left for {% data variables.copilot.copilot_coding_agent %} as a form of [prompt injection](https://genai.owasp.org/llmrisk/llm01-prompt-injection/). - -To mitigate this risk, {% data variables.product.github %} **filters hidden characters before passing user input to {% data variables.copilot.copilot_coding_agent %}**: For example, text entered as an HTML comment in an issue or pull request comment is not passed to {% data variables.copilot.copilot_coding_agent %}. - -## Administrators can lose sight of agents' work - -To mitigate this risk, {% data variables.copilot.copilot_coding_agent %} is designed to be auditable and traceable. - -* {% data variables.copilot.copilot_coding_agent %}'s commits are authored by {% data variables.product.prodname_copilot_short %}, with the developer who assigned the issue or requested the change to the pull request marked as the co-author. This makes it easier to identify code generated by {% data variables.copilot.copilot_coding_agent %} and who started the task. -* Session logs and audit log events are available to administrators. -* The commit message for each agent-authored commit includes a link to the agent session logs, for code review and auditing. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). -* {% data variables.copilot.copilot_coding_agent %}'s commits are signed, so they appear as "Verified" on {% data variables.product.github %}. This provides confidence that the commits were made by {% data variables.copilot.copilot_coding_agent %} and have not been altered. diff --git a/content/copilot/concepts/agents/copilot-cli/about-copilot-cli.md b/content/copilot/concepts/agents/copilot-cli/about-copilot-cli.md index edff9d8c0931..30968d22d31d 100644 --- a/content/copilot/concepts/agents/copilot-cli/about-copilot-cli.md +++ b/content/copilot/concepts/agents/copilot-cli/about-copilot-cli.md @@ -172,7 +172,7 @@ You can customize {% data variables.copilot.copilot_cli %} in a number of ways: * **Custom instructions**: Custom instructions allow you to give {% data variables.product.prodname_copilot_short %} additional context on your project and how to build, test and validate its changes. All custom instruction files now combine instead of using priority-based fallbacks. For more information, see [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions). * **Model Context Protocol (MCP) servers**: MCP servers allow you to give {% data variables.product.prodname_copilot_short %} access to different data sources and tools. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli#add-an-mcp-server). * **{% data variables.copilot.custom_agents_caps_short %}**: {% data variables.copilot.custom_agents_caps_short %} allow you to create different specialized versions of {% data variables.product.prodname_copilot_short %} for different tasks. For example, you could customize {% data variables.product.prodname_copilot_short %} to be an expert frontend engineer following your team's guidelines. {% data variables.copilot.copilot_cli %} includes specialized {% data variables.copilot.custom_agents_short %} that it automatically delegates common tasks to. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli#use-custom-agents). -* **Hooks**: Hooks allow you to execute custom shell commands at key points during agent execution, enabling you to add validation, logging, security scanning, or workflow automation. See [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-hooks). +* **Hooks**: Hooks allow you to execute custom shell commands at key points during agent execution, enabling you to add validation, logging, security scanning, or workflow automation. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-hooks). * **Skills**: Skills allow you to enhance the ability of {% data variables.product.prodname_copilot_short %} to perform specialized tasks with instructions, scripts, and resources. For more information, see [AUTOTITLE](/copilot/concepts/agents/about-agent-skills). * **{% data variables.copilot.copilot_memory %}**: {% data variables.copilot.copilot_memory %} allows {% data variables.product.prodname_copilot_short %} to build a persistent understanding of your repository by storing "memories", which are pieces of information about coding conventions, patterns, and preferences that {% data variables.product.prodname_copilot_short %} deduces as it works. This reduces the need to repeatedly explain context in your prompts and makes future sessions more productive. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). diff --git a/content/copilot/concepts/agents/copilot-memory.md b/content/copilot/concepts/agents/copilot-memory.md index 5c8f156d9150..57cc0af4369f 100644 --- a/content/copilot/concepts/agents/copilot-memory.md +++ b/content/copilot/concepts/agents/copilot-memory.md @@ -25,7 +25,7 @@ Memories are tightly scoped pieces of information about a repository, that are d * Repository-specific. * Only created in response to {% data variables.product.prodname_copilot_short %} activity initiated by users who have had {% data variables.copilot.copilot_memory %} enabled. -Memories created by one part of {% data variables.product.prodname_copilot_short %} can be used by another part of {% data variables.product.prodname_copilot_short %}. So, for example, if {% data variables.copilot.copilot_coding_agent %} discovers how your repository handles database connections, {% data variables.copilot.copilot_code-review_short %} can later apply that knowledge to spot inconsistent patterns in a pull request it is reviewing. Similarly, if {% data variables.copilot.copilot_code-review_short %} learns about settings that must stay synchronized in two separate files, then {% data variables.copilot.copilot_coding_agent %} will know that if it alters the settings in one of those files it must update the other file accordingly. +Memories created by one part of {% data variables.product.prodname_copilot_short %} can be used by another part of {% data variables.product.prodname_copilot_short %}. So, for example, if {% data variables.copilot.copilot_cloud_agent %} discovers how your repository handles database connections, {% data variables.copilot.copilot_code-review_short %} can later apply that knowledge to spot inconsistent patterns in a pull request it is reviewing. Similarly, if {% data variables.copilot.copilot_code-review_short %} learns about settings that must stay synchronized in two separate files, then {% data variables.copilot.copilot_cloud_agent %} will know that if it alters the settings in one of those files it must update the other file accordingly. ## Benefits of using {% data variables.copilot.copilot_memory %} @@ -40,7 +40,7 @@ By building and maintaining a persistent, repository-level memory, {% data varia ## Where is {% data variables.copilot.copilot_memory %} used? -Currently {% data variables.copilot.copilot_memory %} is used by {% data variables.copilot.copilot_coding_agent %} and {% data variables.copilot.copilot_code-review_short %} when these features are working on pull requests on the {% data variables.product.github %} website, and by {% data variables.copilot.copilot_cli_short %}. Memories are only created and used by {% data variables.product.prodname_copilot_short %} when {% data variables.copilot.copilot_memory %} has been enabled for the user initiating the {% data variables.product.prodname_copilot_short %} operation. +Currently {% data variables.copilot.copilot_memory %} is used by {% data variables.copilot.copilot_cloud_agent %} and {% data variables.copilot.copilot_code-review_short %} when these features are working on pull requests on the {% data variables.product.github %} website, and by {% data variables.copilot.copilot_cli_short %}. Memories are only created and used by {% data variables.product.prodname_copilot_short %} when {% data variables.copilot.copilot_memory %} has been enabled for the user initiating the {% data variables.product.prodname_copilot_short %} operation. Agentic memory will be extended to other parts of {% data variables.product.prodname_copilot_short %}, and for personal and organizational scopes, in future releases. diff --git a/content/copilot/concepts/agents/enterprise-management.md b/content/copilot/concepts/agents/enterprise-management.md index fd3a63b66038..2e84292d0d8d 100644 --- a/content/copilot/concepts/agents/enterprise-management.md +++ b/content/copilot/concepts/agents/enterprise-management.md @@ -12,29 +12,29 @@ category: ## Overview The AI Controls view provides a centralized platform where you can manage and monitor AI policies and agents across your enterprise. From the "Agents" page, you can: -* Manage the enterprise-level availability of agents like {% data variables.copilot.copilot_coding_agent %}, {% data variables.copilot.copilot_code-review_short %}, and {% data variables.copilot.copilot_custom_agents %} +* Manage the enterprise-level availability of agents like {% data variables.copilot.copilot_cloud_agent %}, {% data variables.copilot.copilot_code-review_short %}, and {% data variables.copilot.copilot_custom_agents %} * Control who can manage your enterprise-level {% data variables.copilot.custom_agents_short %} * View and filter a list of agent sessions in your enterprise over the last 24 hours * Find a detailed record of agentic audit log events ## {% data variables.copilot.copilot_custom_agents %} -{% data variables.copilot.copilot_custom_agents %} are specialized versions of {% data variables.copilot.copilot_coding_agent %} that you can configure with tailored prompts, tools, and context, making them excel at specific tasks. {% data variables.copilot.custom_agents_caps_short %} can be defined and managed at the enterprise level for greater control and compliance, or at the organization and repository levels to allow teams the flexibility to build for their specific needs. +{% data variables.copilot.copilot_custom_agents %} are specialized versions of {% data variables.copilot.copilot_cloud_agent %} that you can configure with tailored prompts, tools, and context, making them excel at specific tasks. {% data variables.copilot.custom_agents_caps_short %} can be defined and managed at the enterprise level for greater control and compliance, or at the organization and repository levels to allow teams the flexibility to build for their specific needs. You can manage your enterprise-level {% data variables.copilot.custom_agents_short %}: * From the AI Controls view * Using the REST API. See [AUTOTITLE](/rest/copilot/copilot-custom-agents). -For more detailed information on {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). +For more detailed information on {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). ## Agent sessions -An agent session encompasses an entire interaction with {% data variables.copilot.copilot_coding_agent %}, or any individual {% data variables.copilot.copilot_custom_agent_short %}, on a specific task. These tasks include: +An agent session encompasses an entire interaction with {% data variables.copilot.copilot_cloud_agent %}, or any individual {% data variables.copilot.copilot_custom_agent_short %}, on a specific task. These tasks include: * Prompting the agent to create or edit a pull request * Assigning the agent to an issue -For billing information on agent sessions, see [AUTOTITLE](/billing/concepts/product-billing/github-copilot-premium-requests#usage-by-copilot-coding-agent). +For billing information on agent sessions, see [AUTOTITLE](/billing/concepts/product-billing/github-copilot-premium-requests#usage-by-copilot-cloud-agent). ## Agent mode in the IDE diff --git a/content/copilot/concepts/agents/index.md b/content/copilot/concepts/agents/index.md index 60bf4c11bca0..5676dbda0475 100644 --- a/content/copilot/concepts/agents/index.md +++ b/content/copilot/concepts/agents/index.md @@ -6,7 +6,7 @@ intro: Learn how {% data variables.product.prodname_copilot %} can independently versions: feature: copilot children: - - /coding-agent + - /cloud-agent - /copilot-cli - /code-review - /copilot-memory diff --git a/content/copilot/concepts/auto-model-selection.md b/content/copilot/concepts/auto-model-selection.md index 6dd5e5d522ef..617f91e92240 100644 --- a/content/copilot/concepts/auto-model-selection.md +++ b/content/copilot/concepts/auto-model-selection.md @@ -2,8 +2,8 @@ title: 'About {% data variables.product.prodname_copilot_short %} auto model selection' allowTitleToDifferFromFilename: true shortTitle: 'Auto model selection' -intro: 'Automatically select models for {% data variables.copilot.copilot_chat_short %} and {% data variables.copilot.copilot_coding_agent %}.' -product: '{% data variables.copilot.copilot_auto_model_selection_short_cap_a %} for {% data variables.copilot.copilot_chat_short %} is available with all {% data variables.product.prodname_copilot %} plans.
{% data variables.copilot.copilot_auto_model_selection_short_cap_a %} for {% data variables.copilot.copilot_coding_agent %} is available for {% data variables.copilot.copilot_pro %} and {% data variables.copilot.copilot_pro_plus %} plans.' +intro: 'Automatically select models for {% data variables.copilot.copilot_chat_short %} and {% data variables.copilot.copilot_cloud_agent %}.' +product: '{% data variables.copilot.copilot_auto_model_selection_short_cap_a %} for {% data variables.copilot.copilot_chat_short %} is available with all {% data variables.product.prodname_copilot %} plans.
{% data variables.copilot.copilot_auto_model_selection_short_cap_a %} for {% data variables.copilot.copilot_cloud_agent %} is available for {% data variables.copilot.copilot_pro %} and {% data variables.copilot.copilot_pro_plus %} plans.' versions: feature: copilot contentType: concepts @@ -60,9 +60,9 @@ When you select **Auto** in {% data variables.copilot.copilot_chat_short %}, {% During the {% data variables.release-phases.public_preview %}, if you're using a {% data variables.copilot.copilot_business_short %} or {% data variables.copilot.copilot_enterprise_short %} plan, the organization or enterprise that provides your plan must have the **Editor preview features** policy enabled. See [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#enabling-copilot-features-in-your-organization) or [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise#copilot-in-githubcom). -## {% data variables.copilot.copilot_auto_model_selection_short_cap_a %} in {% data variables.copilot.copilot_coding_agent %} +## {% data variables.copilot.copilot_auto_model_selection_short_cap_a %} in {% data variables.copilot.copilot_cloud_agent %} -When you select **Auto** in {% data variables.copilot.copilot_coding_agent %}, {% data variables.copilot.copilot_auto_model_selection_short_cap_a %} currently chooses from the following list of models, subject to your policies and subscription type: - {% data reusables.copilot.copilot-coding-agent-auto-models %} +When you select **Auto** in {% data variables.copilot.copilot_cloud_agent %}, {% data variables.copilot.copilot_auto_model_selection_short_cap_a %} currently chooses from the following list of models, subject to your policies and subscription type: + {% data reusables.copilot.copilot-cloud-agent-auto-models %} -{% data reusables.copilot.change-the-ai-model-copilot-coding-agent %} +{% data reusables.copilot.change-the-ai-model-copilot-cloud-agent %} diff --git a/content/copilot/concepts/billing/copilot-requests.md b/content/copilot/concepts/billing/copilot-requests.md index 92e10761cce4..c8caa0f5f4f9 100644 --- a/content/copilot/concepts/billing/copilot-requests.md +++ b/content/copilot/concepts/billing/copilot-requests.md @@ -42,7 +42,7 @@ The following {% data variables.product.prodname_copilot_short %} features can u | [{% data variables.copilot.copilot_chat_short %}](/copilot/using-github-copilot/copilot-chat) | {% data variables.copilot.copilot_chat_short %} uses **one premium request** per user prompt, multiplied by the model's rate. This includes ask, edit, agent, and plan modes in {% data variables.copilot.copilot_chat_short %} in an IDE. | {% data variables.product.prodname_copilot_short %} premium requests | | [{% data variables.copilot.copilot_cli_short %}](/copilot/concepts/agents/about-copilot-cli) | Each prompt to {% data variables.copilot.copilot_cli_short %} uses **one premium request** with the default model. For other models, this is multiplied by the model's rate. | {% data variables.product.prodname_copilot_short %} premium requests | | [{% data variables.product.prodname_copilot_short %} code review](/copilot/using-github-copilot/code-review/using-copilot-code-review) | Each time {% data variables.product.prodname_copilot_short %} reviews a pull request (when assigned as a reviewer) or reviews code in your IDE, **one premium request** is consumed. | {% data variables.product.prodname_copilot_short %} premium requests | -| [{% data variables.copilot.copilot_coding_agent %}](/copilot/concepts/about-copilot-coding-agent) | {% data variables.copilot.copilot_coding_agent %} uses **one premium request** per session, multiplied by the model's rate. A session begins when you prompt {% data variables.product.prodname_copilot_short %} to undertake a task. In addition, each real-time steering comment made during an active session uses **one premium request** per session, multiplied by the model's rate. | {% data variables.copilot.copilot_coding_agent %} premium requests | +| [{% data variables.copilot.copilot_cloud_agent %}](/copilot/concepts/about-copilot-cloud-agent) | {% data variables.copilot.copilot_cloud_agent %} uses **one premium request** per session, multiplied by the model's rate. A session begins when you prompt {% data variables.product.prodname_copilot_short %} to undertake a task. In addition, each real-time steering comment made during an active session uses **one premium request** per session, multiplied by the model's rate. | {% data variables.copilot.copilot_cloud_agent %} premium requests | | [{% data variables.copilot.copilot_spaces %}](/copilot/using-github-copilot/copilot-spaces/about-organizing-and-sharing-context-with-copilot-spaces) | {% data variables.copilot.copilot_spaces %} uses **one premium request** per user prompt, multiplied by the model's rate. | {% data variables.product.prodname_copilot_short %} premium requests | | [{% data variables.product.prodname_spark_short %}](/copilot/tutorials/building-ai-app-prototypes) | Each prompt to {% data variables.product.prodname_spark_short %} uses a fixed rate of **four premium requests**. | {% data variables.product.prodname_spark_short %} premium requests | | [{% data variables.product.prodname_openai_codex %} {% data variables.product.prodname_vscode %} integration](/copilot/concepts/agents/openai-codex) | While in preview, each prompt to {% data variables.product.prodname_openai_codex %} uses **one premium request** multiplied by the model multiplier rates. | {% data variables.product.prodname_copilot_short %} premium requests | diff --git a/content/copilot/concepts/completions/code-referencing.md b/content/copilot/concepts/completions/code-referencing.md index 17129b3a7110..a1fbd203334e 100644 --- a/content/copilot/concepts/completions/code-referencing.md +++ b/content/copilot/concepts/completions/code-referencing.md @@ -54,9 +54,9 @@ If you, or your organization, have allowed suggestions that match public code, t > [!NOTE] > Typically, matches to public code occur infrequently, so you should not expect to see code references in many {% data variables.copilot.copilot_chat_short %} responses. -### Code referencing for {% data variables.copilot.copilot_coding_agent %} +### Code referencing for {% data variables.copilot.copilot_cloud_agent %} -When {% data variables.product.prodname_copilot_short %} generates code that matches code in a public {% data variables.product.github %} repository, this is indicated in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +When {% data variables.product.prodname_copilot_short %} generates code that matches code in a public {% data variables.product.github %} repository, this is indicated in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% endwebui %} @@ -86,7 +86,7 @@ Code in private {% data variables.product.prodname_dotcom %} repositories, or co The search index is refreshed every few months. As a result, newly committed code, and code from public repositories deleted before the index was created, may not be included in the search. For the same reason, the search may return matches to code that has been deleted or moved since the index was created. -References to matching code are currently available in JetBrains IDEs, {% data variables.product.prodname_vs %}, {% data variables.product.prodname_vscode %}, {% data variables.copilot.copilot_coding_agent %}, and on the {% data variables.product.github %} website. +References to matching code are currently available in JetBrains IDEs, {% data variables.product.prodname_vs %}, {% data variables.product.prodname_vscode %}, {% data variables.copilot.copilot_cloud_agent %}, and on the {% data variables.product.github %} website. ## Further reading diff --git a/content/copilot/concepts/context/mcp.md b/content/copilot/concepts/context/mcp.md index 027c6298b5f3..7e1f5252bf39 100644 --- a/content/copilot/concepts/context/mcp.md +++ b/content/copilot/concepts/context/mcp.md @@ -36,7 +36,7 @@ category: The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to connect AI models to different data sources and tools, enabling them to work together more effectively. -You can use MCP to extend the capabilities of {% data variables.product.prodname_copilot %} by integrating it with a wide range of existing tools and services. MCP works across all major {% data variables.product.prodname_copilot_short %} surfaces—whether you're working in an IDE, using {% data variables.copilot.copilot_cli %}, or delegating tasks to the coding agent on {% data variables.product.prodname_dotcom_the_website %}. You can also use MCP to create new tools and services that work with {% data variables.product.prodname_copilot_short %}, allowing you to customize and enhance your experience. +You can use MCP to extend the capabilities of {% data variables.product.prodname_copilot %} by integrating it with a wide range of existing tools and services. MCP works across all major {% data variables.product.prodname_copilot_short %} surfaces—whether you're working in an IDE, using {% data variables.copilot.copilot_cli %}, or delegating tasks to an agent on {% data variables.product.prodname_dotcom_the_website %}. You can also use MCP to create new tools and services that work with {% data variables.product.prodname_copilot_short %}, allowing you to customize and enhance your experience. For more information on MCP, see [the official MCP documentation](https://modelcontextprotocol.io/introduction). For a curated list of MCP servers from partners and the community, see the [{% data variables.product.github %} MCP Registry](https://github.com/mcp). @@ -44,7 +44,7 @@ To learn how to configure and use MCP servers, see: * [AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp) for {% data variables.copilot.copilot_chat_short %} in your IDE * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers) for {% data variables.copilot.copilot_cli_short %} -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp) for {% data variables.copilot.copilot_coding_agent %} +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp) for {% data variables.copilot.copilot_cloud_agent %} {% data reusables.copilot.mcp.mcp-policy %} @@ -54,7 +54,7 @@ MCP is supported across the following clients: * **IDEs**: There is broad support for local MCP servers in clients such as {% data variables.product.prodname_vscode %}, JetBrains IDEs, Xcode, and others. Support for remote MCP servers is growing, with editors like {% data variables.product.prodname_vscode %}, {% data variables.product.prodname_vs %}, JetBrains IDEs, Xcode, Eclipse, Cursor, and Windsurf providing this functionality with OAuth or PAT. To find out if your preferred editor supports remote MCP servers, check the documentation for your specific editor. * **{% data variables.copilot.copilot_cli_short %}**: {% data variables.copilot.copilot_cli %} supports both local and remote MCP servers. The {% data variables.product.github %} MCP server is built in and available without additional configuration. -* **{% data variables.copilot.copilot_coding_agent %}**: {% data variables.copilot.copilot_coding_agent %} supports MCP servers configured at the repository level. The {% data variables.product.github %} MCP server and the Playwright MCP server are configured by default. +* **{% data variables.copilot.copilot_cloud_agent %}**: {% data variables.copilot.copilot_cloud_agent %} supports MCP servers configured at the repository level. The {% data variables.product.github %} MCP server and the Playwright MCP server are configured by default. ## About the {% data variables.product.github %} MCP server @@ -65,7 +65,7 @@ The {% data variables.product.github %} MCP server is a Model Context Protocol ( * Automate and streamline code-related tasks. * Connect third-party tools (like Cursor, Windsurf, or future integrations) to leverage {% data variables.product.github %}’s context and AI capabilities. * Enable cloud-based workflows that work from any device, without local setup. -* Invoke {% data variables.product.github %} tools, such as {% data variables.copilot.copilot_coding_agent %} (requires {% data variables.product.prodname_copilot %} subscription) and {% data variables.product.prodname_code_scanning %} (requires {% data variables.product.prodname_GHAS %} subscription), to assist with code generation and security analysis. +* Invoke {% data variables.product.github %} tools, such as {% data variables.copilot.copilot_cloud_agent %} (requires {% data variables.product.prodname_copilot %} subscription) and {% data variables.product.prodname_code_scanning %} (requires {% data variables.product.prodname_GHAS %} subscription), to assist with code generation and security analysis. To learn how to set up and use the {% data variables.product.github %} MCP server, see [AUTOTITLE](/copilot/how-tos/context/model-context-protocol/using-the-github-mcp-server). @@ -103,7 +103,7 @@ The {% data variables.product.github %} MCP Registry is a curated list of MCP se * [AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp)—Add MCP servers to {% data variables.copilot.copilot_chat_short %} in your IDE * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers)—Add MCP servers to {% data variables.copilot.copilot_cli_short %} -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp)—Add MCP servers to {% data variables.copilot.copilot_coding_agent %} +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp)—Add MCP servers to {% data variables.copilot.copilot_cloud_agent %} * [AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/set-up-the-github-mcp-server)—Set up the {% data variables.product.github %} MCP server * [AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server)—Use the {% data variables.product.github %} MCP server * [AUTOTITLE](/copilot/tutorials/enhancing-copilot-agent-mode-with-mcp) diff --git a/content/copilot/concepts/context/repository-indexing.md b/content/copilot/concepts/context/repository-indexing.md index 809ac3a18587..9b37f4946565 100644 --- a/content/copilot/concepts/context/repository-indexing.md +++ b/content/copilot/concepts/context/repository-indexing.md @@ -30,11 +30,11 @@ When you start a conversation with {% data variables.copilot.copilot_chat_short For more information on how to ask questions, see [AUTOTITLE](/copilot/using-github-copilot/asking-github-copilot-questions-in-github). -## Semantic code search in {% data variables.copilot.copilot_coding_agent %} +## Semantic code search in {% data variables.copilot.copilot_cloud_agent %} -{% data variables.copilot.copilot_coding_agent %} uses semantic code search to find relevant code based on meaning, rather than relying solely on exact text matches with tools like `grep`. When the agent doesn't know the precise names or patterns to search for, semantic code search helps it locate the right code faster. No configuration is required—the agent automatically uses semantic code search when appropriate. +{% data variables.copilot.copilot_cloud_agent %} uses semantic code search to find relevant code based on meaning, rather than relying solely on exact text matches with tools like `grep`. When the agent doesn't know the precise names or patterns to search for, semantic code search helps it locate the right code faster. No configuration is required—the agent automatically uses semantic code search when appropriate. -For more information about {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +For more information about {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## About index creation and use @@ -43,7 +43,7 @@ Indexing runs in the background and initial indexing can take up to 60 seconds f Once an index has been created for a repository, it can be used by: * {% data variables.copilot.copilot_chat_short %} in {% data variables.product.github %} and {% data variables.product.prodname_vscode %} -* {% data variables.copilot.copilot_coding_agent %} +* {% data variables.copilot.copilot_cloud_agent %} > [!TIP] There is no limit to how many repositories you can index. diff --git a/content/copilot/concepts/mcp-management.md b/content/copilot/concepts/mcp-management.md index 0851d996cbea..ae2f28af8684 100644 --- a/content/copilot/concepts/mcp-management.md +++ b/content/copilot/concepts/mcp-management.md @@ -36,7 +36,7 @@ MCP management features are supported as follows: | Surface | Registry display | Allowlist enforcement | |---|:---:|:---:| | {% data variables.copilot.copilot_cli_short %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | -| {% data variables.copilot.copilot_coding_agent %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | +| {% data variables.copilot.copilot_cloud_agent %} | {% octicon "x" aria-label="Not supported" %} | {% octicon "x" aria-label="Not supported" %} | | Eclipse | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | JetBrains | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | {% data variables.product.prodname_vs %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | diff --git a/content/copilot/concepts/spark.md b/content/copilot/concepts/spark.md index 7224c8e77c00..44b5c850672a 100644 --- a/content/copilot/concepts/spark.md +++ b/content/copilot/concepts/spark.md @@ -107,13 +107,13 @@ Agent mode is useful when you have a specific task in mind and want to enable {% See [{% data variables.product.prodname_copilot_short %} agent mode](/copilot/how-tos/chat-with-copilot/chat-in-ide#agent-mode). -### {% data variables.copilot.copilot_coding_agent %} +### {% data variables.copilot.copilot_cloud_agent %} -Once your spark is connected to a {% data variables.product.github %} repository, you can use {% data variables.copilot.copilot_coding_agent %} to help you to continue to build and maintain your app, while you focus on other things. +Once your spark is connected to a {% data variables.product.github %} repository, you can use {% data variables.copilot.copilot_cloud_agent %} to help you to continue to build and maintain your app, while you focus on other things. -With the cloud agent, you delegate specific tasks to {% data variables.product.prodname_copilot_short %} (either by assigning an issue to {% data variables.product.prodname_copilot_short %}, or prompting {% data variables.product.prodname_copilot_short %} to create a pull request), and {% data variables.product.prodname_copilot_short %} will autonomously work in the background to complete the task. {% data variables.copilot.copilot_coding_agent %} can fix bugs, refactor code, improve test coverage and more. +With the cloud agent, you delegate specific tasks to {% data variables.product.prodname_copilot_short %} (either by assigning an issue to {% data variables.product.prodname_copilot_short %}, or prompting {% data variables.product.prodname_copilot_short %} to create a pull request), and {% data variables.product.prodname_copilot_short %} will autonomously work in the background to complete the task. {% data variables.copilot.copilot_cloud_agent %} can fix bugs, refactor code, improve test coverage and more. -See [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Sharing your spark diff --git a/content/copilot/concepts/tools/about-copilot-integrations.md b/content/copilot/concepts/tools/about-copilot-integrations.md index 925a07d1aa77..60f4d945ab26 100644 --- a/content/copilot/concepts/tools/about-copilot-integrations.md +++ b/content/copilot/concepts/tools/about-copilot-integrations.md @@ -13,28 +13,28 @@ category: ## Overview -{% data variables.copilot.copilot_coding_agent %} can be integrated with various tools and platforms to enhance its functionality and streamline your development workflow. With integrations, you can trigger {% data variables.copilot.copilot_coding_agent %} from within your existing tools, providing the cloud agent with the context it needs to assist you effectively. +{% data variables.copilot.copilot_cloud_agent %} can be integrated with various tools and platforms to enhance its functionality and streamline your development workflow. With integrations, you can trigger {% data variables.copilot.copilot_cloud_agent %} from within your existing tools, providing the cloud agent with the context it needs to assist you effectively. -For more information about {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent). +For more information about {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Supported integrations -Currently, {% data variables.copilot.copilot_coding_agent %} supports integrations with the following tools: +Currently, {% data variables.copilot.copilot_cloud_agent %} supports integrations with the following tools: -* **Microsoft Teams**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams) - Learn how to set up the Microsoft Teams integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Teams channels. -* **Slack**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack) - Learn how to set up the Slack integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Slack workspace. -* **Linear**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear) - Learn how to set up the Linear integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Linear issues. -* **Azure Boards**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards) - Learn how to set up the Azure Boards integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Azure Boards work items. -* **Jira**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira) - Learn how to set up the Jira integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Jira workspace. +* **Microsoft Teams**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams) - Learn how to set up the Microsoft Teams integration to trigger {% data variables.copilot.copilot_cloud_agent %} directly from your Teams channels. +* **Slack**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack) - Learn how to set up the Slack integration to trigger {% data variables.copilot.copilot_cloud_agent %} directly from your Slack workspace. +* **Linear**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-linear) - Learn how to set up the Linear integration to trigger {% data variables.copilot.copilot_cloud_agent %} directly from your Linear issues. +* **Azure Boards**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-azure-boards) - Learn how to set up the Azure Boards integration to trigger {% data variables.copilot.copilot_cloud_agent %} directly from your Azure Boards work items. +* **Jira**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-jira) - Learn how to set up the Jira integration to trigger {% data variables.copilot.copilot_cloud_agent %} directly from your Jira workspace. ## Benefits of integrations -Integrating {% data variables.copilot.copilot_coding_agent %} with your existing tools offers several benefits: +Integrating {% data variables.copilot.copilot_cloud_agent %} with your existing tools offers several benefits: -* **Seamless workflow**: Trigger {% data variables.copilot.copilot_coding_agent %} directly from the tools you already use, reducing context switching and improving productivity. -* **Context-aware assistance**: Provide {% data variables.copilot.copilot_coding_agent %} with the necessary context from your tools, enabling it to generate more relevant and accurate code suggestions. -* **Collaboration**: Facilitate collaboration among team members by allowing them to trigger {% data variables.copilot.copilot_coding_agent %} from shared platforms, ensuring everyone benefits from the agent's capabilities. +* **Seamless workflow**: Trigger {% data variables.copilot.copilot_cloud_agent %} directly from the tools you already use, reducing context switching and improving productivity. +* **Context-aware assistance**: Provide {% data variables.copilot.copilot_cloud_agent %} with the necessary context from your tools, enabling it to generate more relevant and accurate code suggestions. +* **Collaboration**: Facilitate collaboration among team members by allowing them to trigger {% data variables.copilot.copilot_cloud_agent %} from shared platforms, ensuring everyone benefits from the agent's capabilities. ## Data usage -When you trigger {% data variables.copilot.copilot_coding_agent %} through an integration, the agent will capture the entire thread or issue to understand the context in order to assist you effectively. This context is stored in the pull request created by the agent. +When you trigger {% data variables.copilot.copilot_cloud_agent %} through an integration, the agent will capture the entire thread or issue to understand the context in order to assist you effectively. This context is stored in the pull request created by the agent. diff --git a/content/copilot/concepts/tools/ai-tools.md b/content/copilot/concepts/tools/ai-tools.md index e5b01ea26787..9f7a8fdb8013 100644 --- a/content/copilot/concepts/tools/ai-tools.md +++ b/content/copilot/concepts/tools/ai-tools.md @@ -23,12 +23,12 @@ The use of AI tools is increasingly becoming a standard part of a software devel * **Planning**: * **{% data variables.copilot.copilot_chat_short %}** can help you brainstorm and identify the best technologies for your project. * **{% data variables.copilot.copilot_chat_short %}** can create issues to help track your ideas. - * **{% data variables.copilot.copilot_coding_agent %}** can help you research a repository and create a detailed implementation plan for your task. + * **{% data variables.copilot.copilot_cloud_agent %}** can help you research a repository and create a detailed implementation plan for your task. * **Code creation**: * **{% data variables.product.prodname_copilot_short %} inline suggestions** help add code as you type. * **{% data variables.copilot.next_edit_suggestions_caps %}** ({% data variables.release-phases.public_preview %}) predicts the next edit you are likely to make and suggests a completion for it. * **{% data variables.copilot.copilot_chat_short %}** can answer questions and offer suggestions in a conversational environment. - * You can assign **{% data variables.copilot.copilot_coding_agent %}** to an open issue and it will automatically raise a pull request to address the necessary changes. Alternatively, {% data variables.copilot.copilot_coding_agent %} can open a branch and iterate on code changes before opening a pull request. + * You can assign **{% data variables.copilot.copilot_cloud_agent %}** to an open issue and it will automatically raise a pull request to address the necessary changes. Alternatively, {% data variables.copilot.copilot_cloud_agent %} can open a branch and iterate on code changes before opening a pull request. * **Reviews**: * **{% data variables.copilot.copilot_code-review_short %}** gives you feedback in your favorite IDE, or as a pull request review on {% data variables.product.github %}. * **Testing**: @@ -36,7 +36,7 @@ The use of AI tools is increasingly becoming a standard part of a software devel * **Deployment**: * **{% data variables.copilot.copilot_chat_short %}** can help you configure continuous integration and continuous deployment (CI/CD) pipelines. * **Operation**: - * **{% data variables.copilot.copilot_coding_agent %}** can raise pull requests for open issues. + * **{% data variables.copilot.copilot_cloud_agent %}** can raise pull requests for open issues. * **{% data variables.copilot.copilot_chat_short %}** can help with tasks you're working on yourself. ## Planning @@ -124,7 +124,7 @@ The deployment phase involves preparing your code for production and ensuring a During the operation phase, the focus is on maintaining and monitoring your application in production to ensure it runs smoothly and meets user expectations. This phase often involves tasks like debugging production issues, optimizing performance, and ensuring system reliability. -You can use the **{% data variables.copilot.copilot_coding_agent %}** as an autonomous agent that can help maintain and improve your application in production. Assign a {% data variables.product.github %} issue to {% data variables.product.prodname_copilot_short %}, and it will autonomously explore the repository, identify potential fixes, and create a pull request with the proposed changes. Then it will automatically request a review from you. +You can use the **{% data variables.copilot.copilot_cloud_agent %}** as an autonomous agent that can help maintain and improve your application in production. Assign a {% data variables.product.github %} issue to {% data variables.product.prodname_copilot_short %}, and it will autonomously explore the repository, identify potential fixes, and create a pull request with the proposed changes. Then it will automatically request a review from you. For issues you're tackling yourself, use **{% data variables.copilot.copilot_chat_short %}** for help analyzing logs, debugging issues, and suggesting optimizations. For example: diff --git a/content/copilot/get-started/choose-enterprise-plan.md b/content/copilot/get-started/choose-enterprise-plan.md index 1b3155add889..7ba9eb70f45c 100644 --- a/content/copilot/get-started/choose-enterprise-plan.md +++ b/content/copilot/get-started/choose-enterprise-plan.md @@ -49,13 +49,13 @@ The following table shows examples of goals your company might set for a {% data | Goal | Problem to solve | How {% data variables.copilot.copilot_enterprise_short %} helps | | ---- | ---------------- | --------------------------------------------------------------- | -| **Reduce your backlog** | Teams may not have capacity to work on backlog issues or non-essential issues that come up during development. This can lead to a gradual degradation in feature quality. | With more premium requests, users can assign more issues to **{% data variables.copilot.copilot_coding_agent %}**, which can complete tasks like fixing bugs or adding feature enhancements in the background. | +| **Reduce your backlog** | Teams may not have capacity to work on backlog issues or non-essential issues that come up during development. This can lead to a gradual degradation in feature quality. | With more premium requests, users can assign more issues to **{% data variables.copilot.copilot_cloud_agent %}**, which can complete tasks like fixing bugs or adding feature enhancements in the background. | | **Accelerate pull requests** | Teams often experience delays in merging pull requests due to lengthy review cycles. This can lead to bottlenecks in the development process and slow down the delivery and improvement of features. | With more premium requests, users can receive more reviews on pull requests from **{% data variables.copilot.copilot_code-review_short %}**, often flagging bugs or possible improvements before a human reviewer is available. | | **Reduce technical debt** | Inefficient or hard-to-read code can accumulate over time, making it harder for team members to onboard and understand new areas of the code. | With more premium requests and access to the latest models, users can use agent mode in their IDE to refactor code, choosing models with **greater contextual awareness** that are more suited to tasks like complex refactoring. | ## Is {% data variables.copilot.copilot_enterprise_short %} the most cost effective choice? -We recommend considering the number of premium requests in the {% data variables.copilot.copilot_business_short %} plan as a baseline, not a limit. Developers using agentic workflows including features like agent mode, {% data variables.copilot.copilot_coding_agent %}, and {% data variables.copilot.copilot_code-review_short %} are likely to surpass this allowance. +We recommend considering the number of premium requests in the {% data variables.copilot.copilot_business_short %} plan as a baseline, not a limit. Developers using agentic workflows including features like agent mode, {% data variables.copilot.copilot_cloud_agent %}, and {% data variables.copilot.copilot_code-review_short %} are likely to surpass this allowance. If your company is gaining value from agentic workflows, you will likely want to make more requests available to developers. Depending on how many requests people are using, the most cost effective way to do that is either to upgrade users to {% data variables.copilot.copilot_enterprise_short %} or to enable paid usage for requests beyond your plan's allowance. diff --git a/content/copilot/get-started/features.md b/content/copilot/get-started/features.md index 6064679ce1f0..0cd59904a476 100644 --- a/content/copilot/get-started/features.md +++ b/content/copilot/get-started/features.md @@ -23,11 +23,11 @@ A chat interface that lets you ask coding-related questions. {% data variables.c ### {% data variables.copilot.copilot_cloud_agent_tmp %} -An autonomous AI agent that can research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate, and create a pull request when you're ready. You can also assign a {% data variables.product.github %} issue to {% data variables.product.prodname_copilot_short %} or ask it to open a pull request directly to complete a task. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent). +An autonomous AI agent that can research a repository, create an implementation plan, and make code changes on a branch. You can review the diff, iterate, and create a pull request when you're ready. You can also assign a {% data variables.product.github %} issue to {% data variables.product.prodname_copilot_short %} or ask it to open a pull request directly to complete a task. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent). ### Third-party coding agents ({% data variables.release-phases.public_preview %}) -You can use third-party coding agents alongside {% data variables.copilot.copilot_coding_agent %}. See [AUTOTITLE](/free-pro-team@latest/copilot/concepts/agents/about-third-party-agents). +You can use third-party coding agents alongside {% data variables.copilot.copilot_cloud_agent %}. See [AUTOTITLE](/free-pro-team@latest/copilot/concepts/agents/about-third-party-agents). ### {% data variables.copilot.copilot_cli_short %} @@ -59,7 +59,7 @@ Enhance {% data variables.copilot.copilot_chat_short %} responses by providing c ### {% data variables.copilot.copilot_memory %} ({% data variables.release-phases.public_preview %}) -{% data variables.product.prodname_copilot_short %} can deduce and store useful information about a repository, which {% data variables.copilot.copilot_coding_agent %} and {% data variables.copilot.copilot_code-review_short %} can use to improve the quality of their output when working in that repository. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). +{% data variables.product.prodname_copilot_short %} can deduce and store useful information about a repository, which {% data variables.copilot.copilot_cloud_agent %} and {% data variables.copilot.copilot_code-review_short %} can use to improve the quality of their output when working in that repository. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). ### {% data variables.copilot.copilot_desktop_short %} diff --git a/content/copilot/get-started/plans.md b/content/copilot/get-started/plans.md index 5aa5218208ab..29874fbc9beb 100644 --- a/content/copilot/get-started/plans.md +++ b/content/copilot/get-started/plans.md @@ -17,13 +17,13 @@ category: * **{% data variables.copilot.copilot_free %}** is available to individual developers who don't have access to {% data variables.product.prodname_copilot_short %} through an organization or enterprise. This free plan includes limited access to select {% data variables.product.prodname_copilot_short %} features, allowing you to try AI-powered coding assistance at no cost. -* **{% data variables.copilot.copilot_student %}** is available to verified students. The plan includes unlimited completions, access to premium models in {% data variables.copilot.copilot_chat_short %}, access to {% data variables.copilot.copilot_coding_agent %}, and a monthly allowance of premium requests. +* **{% data variables.copilot.copilot_student %}** is available to verified students. The plan includes unlimited completions, access to premium models in {% data variables.copilot.copilot_chat_short %}, access to {% data variables.copilot.copilot_cloud_agent %}, and a monthly allowance of premium requests. -* **{% data variables.copilot.copilot_pro %}** is designed for individuals who want more flexibility. This paid plan includes unlimited completions, access to premium models in {% data variables.copilot.copilot_chat_short %}, access to {% data variables.copilot.copilot_coding_agent %}, and a monthly allowance of premium requests. Verified teachers, and maintainers of popular open source projects may be eligible for free access. +* **{% data variables.copilot.copilot_pro %}** is designed for individuals who want more flexibility. This paid plan includes unlimited completions, access to premium models in {% data variables.copilot.copilot_chat_short %}, access to {% data variables.copilot.copilot_cloud_agent %}, and a monthly allowance of premium requests. Verified teachers, and maintainers of popular open source projects may be eligible for free access. * **{% data variables.copilot.copilot_pro_plus %}** offers the highest level of access for individual developers. In addition to everything in {% data variables.copilot.copilot_pro_short %}, this plan includes a larger allowance of premium requests, and full access to all available models in {% data variables.copilot.copilot_chat_short %}. Ideal for AI power users who want access to the most advanced capabilities. -* **{% data variables.copilot.copilot_for_business %}** is for organizations on {% data variables.product.prodname_free_team %} or {% data variables.product.prodname_team %} plan, or enterprises on {% data variables.product.prodname_ghe_cloud %}. This plan includes {% data variables.copilot.copilot_coding_agent %} and enables centralized management and {% data variables.product.prodname_copilot_short %} policy control for organization members. +* **{% data variables.copilot.copilot_for_business %}** is for organizations on {% data variables.product.prodname_free_team %} or {% data variables.product.prodname_team %} plan, or enterprises on {% data variables.product.prodname_ghe_cloud %}. This plan includes {% data variables.copilot.copilot_cloud_agent %} and enables centralized management and {% data variables.product.prodname_copilot_short %} policy control for organization members. * **{% data variables.copilot.copilot_enterprise %}** is for enterprises using {% data variables.product.prodname_ghe_cloud %}. It includes all the features of {% data variables.copilot.copilot_business_short %}, plus additional enterprise-grade capabilities. Enterprise owners can assign {% data variables.copilot.copilot_enterprise_short %} or {% data variables.copilot.copilot_business_short %} to individual organizations, or assign {% data variables.copilot.copilot_business_short %} directly to users and teams. diff --git a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/index.md b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/index.md index 5bdbb7fb39e9..f7258b0c23b9 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/index.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/index.md @@ -7,7 +7,7 @@ versions: children: - /prepare-for-custom-agents - /monitor-agentic-activity - - /manage-copilot-coding-agent + - /manage-copilot-cloud-agent - /manage-copilot-code-review contentType: how-tos --- diff --git a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent.md b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent.md new file mode 100644 index 000000000000..0d518c658744 --- /dev/null +++ b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent.md @@ -0,0 +1,60 @@ +--- +title: Managing GitHub Copilot cloud agent in your enterprise +intro: 'Enable members of your enterprise to use {% data variables.copilot.copilot_cloud_agent %} and control the repositories where it is available.' +allowTitleToDifferFromFilename: true +permissions: Enterprise owners +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +versions: + feature: copilot +shortTitle: 'Manage {% data variables.copilot.copilot_cloud_agent %}' +redirect_from: + - /copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-coding-agent + - /copilot/managing-copilot/managing-copilot-for-your-enterprise/adding-copilot-coding-agent-to-enterprise + - /copilot/managing-copilot/managing-copilot-for-your-enterprise/making-copilot-coding-agent-available-to-enterprise + - /copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-copilot-coding-agent-in-your-enterprise + - /copilot/how-tos/administer/enterprises/managing-copilot-coding-agent-in-your-enterprise + - /copilot/how-tos/administer/enterprises/manage-copilot-coding-agent + - /copilot/how-tos/administer/manage-for-enterprise/manage-copilot-coding-agent + - /copilot/how-tos/administer-copilot/manage-for-enterprise/manage-copilot-coding-agent +contentType: how-tos +category: + - Manage Copilot for a team +--- + +> [!NOTE] +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). + +## Prerequisites + +* For general information, see [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent). +* For information on premium requests and Actions minutes, see [Allowance usage for {% data variables.copilot.copilot_cloud_agent %}](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-cloud-agent). +* For information on MCP servers, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). + +## Enabling {% data variables.copilot.copilot_cloud_agent %} for your {% data variables.product.prodname_copilot_short %} subscribers + +{% data variables.copilot.copilot_cloud_agent %} and use of third-party MCP servers are blocked by default for users to whom you have assigned a {% data variables.product.prodname_copilot_short %} license. You can allow members to use these features from the AI Controls tab for your enterprise. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise#configuring-policies-for-github-copilot). + +* On the "Agents" page, click **{% data variables.copilot.copilot_cloud_agent %}**, then select **Enabled everywhere** or **Let organizations decide**. +* On the "MCP" page, for the "MCP servers in {% data variables.product.prodname_copilot_short %}" policy, select **Enabled everywhere** or **Let organizations decide**. + +### Next steps + +* If you selected **Enabled everywhere**, tell organization owners that {% data variables.copilot.copilot_cloud_agent %} is enabled for all members. By default, the agent will be available in all repositories, but it is possible to opt out some or all repositories. +* If you selected **Let organizations decide**, discuss member enablement with organization owners. + +For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). + +## Disabling {% data variables.copilot.copilot_cloud_agent %} in your repositories + +{% data variables.product.prodname_copilot_short %} policies, like the "{% data variables.copilot.copilot_cloud_agent %}" and "MCP servers on {% data variables.product.prodname_dotcom_the_website %}" policies described above, affect only the users you assign a {% data variables.product.prodname_copilot_short %} license to. + +If there are {% data variables.copilot.copilot_pro_plus %} users with access to your enterprise's repositories, they will be able to use {% data variables.copilot.copilot_cloud_agent %} and will not be restricted by your policies. + +You can choose to stop anyone using the agent in some or all of your repositories using organization-level settings. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). + +Alternatively, you can disable the agent for all repositories owned by your enterprise. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.ai-controls-tab %} +1. In the "Installed Agents" section, click **{% data variables.copilot.copilot_cloud_agent %}**. +1. In the "{% data variables.copilot.copilot_cloud_agent %}" section, next to "Block {% data variables.copilot.copilot_cloud_agent %} in all repositories owned by ENTERPRISE-NAME", click the toggle. diff --git a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-coding-agent.md b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-coding-agent.md deleted file mode 100644 index b731998ca6d1..000000000000 --- a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-coding-agent.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Managing GitHub Copilot cloud agent in your enterprise -intro: 'Enable members of your enterprise to use {% data variables.copilot.copilot_coding_agent %} and control the repositories where it is available.' -allowTitleToDifferFromFilename: true -permissions: Enterprise owners -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' -versions: - feature: copilot -shortTitle: 'Manage {% data variables.copilot.copilot_coding_agent %}' -redirect_from: - - /copilot/managing-copilot/managing-copilot-for-your-enterprise/adding-copilot-coding-agent-to-enterprise - - /copilot/managing-copilot/managing-copilot-for-your-enterprise/making-copilot-coding-agent-available-to-enterprise - - /copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-copilot-coding-agent-in-your-enterprise - - /copilot/how-tos/administer/enterprises/managing-copilot-coding-agent-in-your-enterprise - - /copilot/how-tos/administer/enterprises/manage-copilot-coding-agent - - /copilot/how-tos/administer/manage-for-enterprise/manage-copilot-coding-agent - - /copilot/how-tos/administer-copilot/manage-for-enterprise/manage-copilot-coding-agent -contentType: how-tos -category: - - Manage Copilot for a team ---- - -> [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). - -## Prerequisites - -* For general information, see [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org). -* For information on premium requests and Actions minutes, see [Allowance usage for {% data variables.copilot.copilot_coding_agent %}](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-coding-agent). -* For information on MCP servers, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). - -## Enabling {% data variables.copilot.copilot_coding_agent %} for your {% data variables.product.prodname_copilot_short %} subscribers - -{% data variables.copilot.copilot_coding_agent %} and use of third-party MCP servers are blocked by default for users to whom you have assigned a {% data variables.product.prodname_copilot_short %} license. You can allow members to use these features from the AI Controls tab for your enterprise. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-for-your-enterprise/managing-policies-and-features-for-copilot-in-your-enterprise#configuring-policies-for-github-copilot). - -* On the "Agents" page, click **{% data variables.copilot.copilot_coding_agent %}**, then select **Enabled everywhere** or **Let organizations decide**. -* On the "MCP" page, for the "MCP servers in {% data variables.product.prodname_copilot_short %}" policy, select **Enabled everywhere** or **Let organizations decide**. - -### Next steps - -* If you selected **Enabled everywhere**, tell organization owners that {% data variables.copilot.copilot_coding_agent %} is enabled for all members. By default, the agent will be available in all repositories, but it is possible to opt out some or all repositories. -* If you selected **Let organizations decide**, discuss member enablement with organization owners. - -For more information, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). - -## Disabling {% data variables.copilot.copilot_coding_agent %} in your repositories - -{% data variables.product.prodname_copilot_short %} policies, like the "{% data variables.copilot.copilot_coding_agent %}" and "MCP servers on {% data variables.product.prodname_dotcom_the_website %}" policies described above, affect only the users you assign a {% data variables.product.prodname_copilot_short %} license to. - -If there are {% data variables.copilot.copilot_pro_plus %} users with access to your enterprise's repositories, they will be able to use {% data variables.copilot.copilot_coding_agent %} and will not be restricted by your policies. - -You can choose to stop anyone using the agent in some or all of your repositories using organization-level settings. For more information, see [AUTOTITLE](/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). - -Alternatively, you can disable the agent for all repositories owned by your enterprise. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.ai-controls-tab %} -1. In the "Installed Agents" section, click **{% data variables.copilot.copilot_coding_agent %}**. -1. In the "{% data variables.copilot.copilot_coding_agent %}" section, next to "Block {% data variables.copilot.copilot_coding_agent %} in all repositories owned by ENTERPRISE-NAME", click the toggle. diff --git a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents.md b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents.md index 02e918975e6d..f9427b9420e6 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents.md @@ -36,4 +36,4 @@ Enterprise-level {% data variables.copilot.custom_agents_short %} are defined in To reduce your administrative burden and empower your SMEs, you can delegate the creation and management of {% data variables.copilot.custom_agents_short %} in your enterprise by creating a team of AI managers. See [AUTOTITLE](/copilot/tutorials/roll-out-at-scale/establish-ai-managers). -If you prefer to maintain full control over your enterprise's tooling to ensure security and compliance, you can create and manage {% data variables.copilot.custom_agents_short %} yourself. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents). +If you prefer to maintain full control over your enterprise's tooling to ensure security and compliance, you can create and manage {% data variables.copilot.custom_agents_short %} yourself. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents). diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent.md new file mode 100644 index 000000000000..c5b77a3fa01f --- /dev/null +++ b/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent.md @@ -0,0 +1,66 @@ +--- +title: Adding GitHub Copilot cloud agent to your organization +intro: 'Enable {% data variables.copilot.copilot_cloud_agent %} for your members and control the repositories where it is available.' +allowTitleToDifferFromFilename: true +permissions: Organization owners +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +versions: + feature: copilot +shortTitle: 'Add {% data variables.copilot.copilot_cloud_agent %}' +redirect_from: + - /copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent + - /copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization + - /copilot/how-tos/administer/organizations/adding-copilot-coding-agent-to-organization + - /copilot/how-tos/administer/organizations/add-copilot-coding-agent + - /copilot/how-tos/administer/manage-for-organization/add-copilot-coding-agent +contentType: how-tos +category: + - Manage Copilot for a team +--- + +> [!NOTE] +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). + +## Prerequisites + +* For general information, see [AUTOTITLE](/copilot/tutorials/cloud-agent/pilot-cloud-agent). +* For information on premium requests and Actions minutes, see [Allowance usage for {% data variables.copilot.copilot_cloud_agent %}](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-cloud-agent). +* For information on MCP servers, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). + +## Enabling {% data variables.copilot.copilot_cloud_agent %} for your members + +> [!NOTE] +> {% data reusables.organizations.copilot-policy-ent-overrides-org %} + +{% data variables.copilot.copilot_cloud_agent %} and use of third-party MCP servers are disabled by default for organization members assigned a {% data variables.copilot.copilot_enterprise %} or {% data variables.copilot.copilot_business_short %} license by your organization. + +Organizations with {% data variables.copilot.copilot_enterprise_short %} or {% data variables.copilot.copilot_business_short %} can enable these features for members on the {% data variables.product.prodname_copilot_short %} policies page for their organization. See [Enabling {% data variables.product.prodname_copilot_short %} features in your organization](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#enabling-copilot-features-in-your-organization). + +* For the "{% data variables.copilot.copilot_cloud_agent %}" policy, select "Enabled". +* For the "MCP servers on {% data variables.product.prodname_dotcom_the_website %}" policy, select "Enabled". + +## Disabling or enabling {% data variables.copilot.copilot_cloud_agent %} in your repositories + +By default, {% data variables.copilot.copilot_cloud_agent %} is available in all repositories for users who have access to the agent, but you can block it from being used in some or all repositories owned by your organization. You can manage repository availability using the following instructions, or programmatically using the [REST API](/rest/copilot/copilot-cloud-agent-management). + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.copilot.cloud-agent-settings %} +1. Use the "Repository access" control to define which repositories allow {% data variables.copilot.copilot_cloud_agent %}. +1. If you choose "Selected repositories", in the "Select repositories" dialog, select the repositories that allow {% data variables.copilot.copilot_cloud_agent %}, then click **Select**. + +Once {% data variables.copilot.copilot_cloud_agent %} is enabled for a repository, any user with access to {% data variables.copilot.copilot_cloud_agent %} and write permission for the repository can delegate work to {% data variables.product.prodname_copilot_short %}. + +## Managing the agent firewall for your organization + +Organization owners can configure the {% data variables.copilot.copilot_cloud_agent %} firewall for their organization, including whether it is enabled for the organization and which external hosts and URLs the agent can access. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). + +## Next steps + +* Tell the members of repositories where {% data variables.copilot.copilot_cloud_agent %} is available that they can delegate work to the {% data variables.copilot.copilot_cloud_agent_short %}. +* Configure the default runner type for {% data variables.copilot.copilot_cloud_agent %} in your organization. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent). +* Encourage members to educate themselves about setting up their repository to get the most from {% data variables.copilot.copilot_cloud_agent %}. Useful resources: + + * [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) + * [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) + * [Security best practices](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-cloud-agent-in-org#security-best-practices) diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent.md deleted file mode 100644 index e28b64f0201d..000000000000 --- a/content/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: Adding GitHub Copilot cloud agent to your organization -intro: 'Enable {% data variables.copilot.copilot_coding_agent %} for your members and control the repositories where it is available.' -allowTitleToDifferFromFilename: true -permissions: Organization owners -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' -versions: - feature: copilot -shortTitle: 'Add {% data variables.copilot.copilot_coding_agent %}' -redirect_from: - - /copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization - - /copilot/how-tos/administer/organizations/adding-copilot-coding-agent-to-organization - - /copilot/how-tos/administer/organizations/add-copilot-coding-agent - - /copilot/how-tos/administer/manage-for-organization/add-copilot-coding-agent -contentType: how-tos -category: - - Manage Copilot for a team ---- - -> [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). - -## Prerequisites - -* For general information, see [AUTOTITLE](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org). -* For information on premium requests and Actions minutes, see [Allowance usage for {% data variables.copilot.copilot_coding_agent %}](/billing/managing-billing-for-your-products/managing-billing-for-github-copilot/about-billing-for-github-copilot#allowance-usage-for-copilot-coding-agent). -* For information on MCP servers, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp). - -## Enabling {% data variables.copilot.copilot_coding_agent %} for your members - -> [!NOTE] -> {% data reusables.organizations.copilot-policy-ent-overrides-org %} - -{% data variables.copilot.copilot_coding_agent %} and use of third-party MCP servers are disabled by default for organization members assigned a {% data variables.copilot.copilot_enterprise %} or {% data variables.copilot.copilot_business_short %} license by your organization. - -Organizations with {% data variables.copilot.copilot_enterprise_short %} or {% data variables.copilot.copilot_business_short %} can enable these features for members on the {% data variables.product.prodname_copilot_short %} policies page for their organization. See [Enabling {% data variables.product.prodname_copilot_short %} features in your organization](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#enabling-copilot-features-in-your-organization). - -* For the "{% data variables.copilot.copilot_coding_agent %}" policy, select "Enabled". -* For the "MCP servers on {% data variables.product.prodname_dotcom_the_website %}" policy, select "Enabled". - -## Disabling or enabling {% data variables.copilot.copilot_coding_agent %} in your repositories - -By default, {% data variables.copilot.copilot_coding_agent %} is available in all repositories for users who have access to the agent, but you can block it from being used in some or all repositories owned by your organization. You can manage repository availability using the following instructions, or programmatically using the [REST API](/rest/copilot/copilot-coding-agent-management). - -{% data reusables.profile.access_org %} -{% data reusables.profile.org_settings %} -{% data reusables.copilot.coding-agent-settings %} -1. Use the "Repository access" control to define which repositories allow {% data variables.copilot.copilot_coding_agent %}. -1. If you choose "Selected repositories", in the "Select repositories" dialog, select the repositories that allow {% data variables.copilot.copilot_coding_agent %}, then click **Select**. - -Once {% data variables.copilot.copilot_coding_agent %} is enabled for a repository, any user with access to {% data variables.copilot.copilot_coding_agent %} and write permission for the repository can delegate work to {% data variables.product.prodname_copilot_short %}. - -## Managing the agent firewall for your organization - -Organization owners can configure the {% data variables.copilot.copilot_coding_agent %} firewall for their organization, including whether it is enabled for the organization and which external hosts and URLs the agent can access. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall). - -## Next steps - -* Tell the members of repositories where {% data variables.copilot.copilot_coding_agent %} is available that they can delegate work to the {% data variables.copilot.copilot_coding_agent_short %}. -* Configure the default runner type for {% data variables.copilot.copilot_coding_agent %} in your organization. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent). -* Encourage members to educate themselves about setting up their repository to get the most from {% data variables.copilot.copilot_coding_agent %}. Useful resources: - - * [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) - * [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) - * [Security best practices](/copilot/rolling-out-github-copilot-at-scale/enabling-developers/using-copilot-coding-agent-in-org#security-best-practices) diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent.md index 1b6064c09c40..2fcd7cef72fd 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent.md @@ -2,9 +2,9 @@ title: Configuring runners for GitHub Copilot cloud agent in your organization shortTitle: Configure agent runners allowTitleToDifferFromFilename: true -intro: 'Configure the {% data variables.product.prodname_actions %} runners used by {% data variables.copilot.copilot_coding_agent %} and control whether repositories can customize the runner type.' +intro: 'Configure the {% data variables.product.prodname_actions %} runners used by {% data variables.copilot.copilot_cloud_agent %} and control whether repositories can customize the runner type.' permissions: Organization owners -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: how-tos @@ -14,9 +14,9 @@ category: ## About organization-level runner controls -By default, {% data variables.copilot.copilot_coding_agent %} runs on a standard {% data variables.product.prodname_dotcom %}-hosted {% data variables.product.prodname_actions %} runner (`ubuntu-latest`). As an organization owner, you can change the default runner type for all repositories in your organization, and choose whether individual repositories are allowed to override this default. +By default, {% data variables.copilot.copilot_cloud_agent %} runs on a standard {% data variables.product.prodname_dotcom %}-hosted {% data variables.product.prodname_actions %} runner (`ubuntu-latest`). As an organization owner, you can change the default runner type for all repositories in your organization, and choose whether individual repositories are allowed to override this default. -This is useful if your organization requires all {% data variables.copilot.copilot_coding_agent %} sessions to run on specific runners—for example, to use larger runners for better performance, or to use self-hosted runners that have access to internal resources. +This is useful if your organization requires all {% data variables.copilot.copilot_cloud_agent %} sessions to run on specific runners—for example, to use larger runners for better performance, or to use self-hosted runners that have access to internal resources. You can configure: @@ -27,11 +27,11 @@ You can configure: {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% data reusables.copilot.coding-agent-settings %} +{% data reusables.copilot.cloud-agent-settings %} 1. Next to "Runner type," click the pencil icon ({% octicon "pencil" aria-label="Edit" %}). -1. Select the runner type to use by default for {% data variables.copilot.copilot_coding_agent %} across your organization. - * **Standard {% data variables.product.prodname_dotcom %} runner**: {% data variables.copilot.copilot_coding_agent %} will use `ubuntu-latest`. - * **Labeled runner**: {% data variables.copilot.copilot_coding_agent %} will use a runner matching the group name and/or label you specify. Enter values in the **Runner group name** and/or **Runner label** fields. +1. Select the runner type to use by default for {% data variables.copilot.copilot_cloud_agent %} across your organization. + * **Standard {% data variables.product.prodname_dotcom %} runner**: {% data variables.copilot.copilot_cloud_agent %} will use `ubuntu-latest`. + * **Labeled runner**: {% data variables.copilot.copilot_cloud_agent %} will use a runner matching the group name and/or label you specify. Enter values in the **Runner group name** and/or **Runner label** fields. 1. Click **Save runner selection**. ## Preventing repositories from customizing the runner type @@ -40,13 +40,13 @@ By default, repositories can override the organization-level runner configuratio {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% data reusables.copilot.coding-agent-settings %} +{% data reusables.copilot.cloud-agent-settings %} 1. Under "Allow repositories to customize the runner type," toggle the setting to enable or disable repository-level customization. - * When enabled, repositories can override the default runner by setting the `runs-on` field in the `copilot-setup-steps` job of `copilot-setup-steps.yml`. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment#configure-the-runner). + * When enabled, repositories can override the default runner by setting the `runs-on` field in the `copilot-setup-steps` job of `copilot-setup-steps.yml`. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment#configure-the-runner). * When disabled, all repositories in your organization will use the organization-level runner type. 1. Click **Save**. ## Further reading -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment) -* [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-coding-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) +* [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent) diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/index.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/index.md index 2e0502a63d59..7708ae5e9a22 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-organization/index.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-organization/index.md @@ -14,7 +14,7 @@ children: - /manage-plan - /manage-access - /manage-policies - - /add-copilot-coding-agent + - /add-copilot-cloud-agent - /configure-runner-for-coding-agent - /prepare-for-custom-agents - /review-activity diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies.md index b307dedeb89d..1290067ea836 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-organization/manage-policies.md @@ -52,15 +52,15 @@ You can choose whether to allow the following coding agents to be enabled in you * {% data variables.product.prodname_anthropic_claude %} * {% data variables.product.prodname_openai_codex %} -Coding agents have access to the same repositories that {% data variables.copilot.copilot_coding_agent %} has been enabled in. +Coding agents have access to the same repositories that {% data variables.copilot.copilot_cloud_agent %} has been enabled in. To enable coding agents: {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% data reusables.copilot.coding-agent-settings %} +{% data reusables.copilot.cloud-agent-settings %} 1. In the sidebar, under **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} {% data variables.product.prodname_copilot_short %}**, click **Cloud agent**. -1. On the {% data variables.copilot.copilot_coding_agent %} page, under "Partner agents", click the toggle to enable the third-party agent you want to use. +1. On the {% data variables.copilot.copilot_cloud_agent %} page, under "Partner agents", click the toggle to enable the third-party agent you want to use. ## Opting in to previews or feedback diff --git a/content/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents.md b/content/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents.md index 3ecf07ce40df..94f0622d5ec8 100644 --- a/content/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents.md +++ b/content/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents.md @@ -15,7 +15,7 @@ category: ## Prerequisites -You should understand what {% data variables.copilot.copilot_custom_agents %} are and how they work. See [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). +You should understand what {% data variables.copilot.copilot_custom_agents %} are and how they work. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). > [!NOTE] > If your organization is part of an enterprise, enterprise owners can configure a ruleset that restricts {% data variables.copilot.custom_agents_short %}. Contact your enterprise owners to check whether you can create and manage organization-level {% data variables.copilot.custom_agents_short %}. @@ -33,4 +33,4 @@ You should understand what {% data variables.copilot.copilot_custom_agents %} ar ## Next steps -To trial {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents). +To trial {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents). diff --git a/content/copilot/how-tos/chat-with-copilot/chat-in-ide.md b/content/copilot/how-tos/chat-with-copilot/chat-in-ide.md index 7f1efdd3c3b9..db279b38a429 100644 --- a/content/copilot/how-tos/chat-with-copilot/chat-in-ide.md +++ b/content/copilot/how-tos/chat-with-copilot/chat-in-ide.md @@ -77,7 +77,7 @@ For more information, see [Chat overview](https://aka.ms/vscode-copilot-agent) i 1. In the {% data variables.copilot.copilot_chat_short %} window, click the tools icon. 1. Enable the `runSubagent` tool. -If you use custom prompt files or {% data variables.copilot.custom_agents_short %}, ensure you specify the `runSubagent` tool in the `tools` frontmatter property. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents#creating-a-custom-agent-profile-in-visual-studio-code), and [Use prompt files in VS Code](https://code.visualstudio.com/docs/copilot/customization/prompt-files) in the {% data variables.product.prodname_vscode %} documentation. +If you use custom prompt files or {% data variables.copilot.custom_agents_short %}, ensure you specify the `runSubagent` tool in the `tools` frontmatter property. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents#creating-a-custom-agent-profile-in-visual-studio-code), and [Use prompt files in VS Code](https://code.visualstudio.com/docs/copilot/customization/prompt-files) in the {% data variables.product.prodname_vscode %} documentation. #### Invoking {% data variables.copilot.subagents_short %} @@ -455,7 +455,7 @@ Use {% data variables.copilot.copilot_edits_short %} to make changes across mult {% data reusables.copilot.subagent-intro %} -To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). #### Enabling {% data variables.copilot.subagents_short %} @@ -594,7 +594,7 @@ To use plan mode: {% data reusables.copilot.subagent-intro %} -To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). #### Enabling {% data variables.copilot.subagents_short %} @@ -710,7 +710,7 @@ To use agent mode: {% data reusables.copilot.subagent-intro %} -To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +To use {% data variables.copilot.subagents_short %}, you **must have {% data variables.copilot.custom_agents_short %} configured in your environment**. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). #### Enabling {% data variables.copilot.subagents_short %} diff --git a/content/copilot/how-tos/configure-content-exclusion/exclude-content-from-copilot.md b/content/copilot/how-tos/configure-content-exclusion/exclude-content-from-copilot.md index 844604b779b8..6c1d808c2f17 100644 --- a/content/copilot/how-tos/configure-content-exclusion/exclude-content-from-copilot.md +++ b/content/copilot/how-tos/configure-content-exclusion/exclude-content-from-copilot.md @@ -31,7 +31,7 @@ category: You can use your repository settings to specify content in your repository that {% data variables.product.prodname_copilot %} should ignore. > [!NOTE] -> {% data variables.copilot.copilot_cli %}, {% data variables.copilot.copilot_coding_agent %}, and Agent mode in {% data variables.copilot.copilot_chat_short %} in IDEs, do not support content exclusion. For more information about these {% data variables.product.prodname_copilot_short %} features, see [AUTOTITLE](/copilot/concepts/agents/about-copilot-cli), [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent), and [AUTOTITLE](/copilot/how-tos/chat-with-copilot/chat-in-ide). +> {% data variables.copilot.copilot_cli %}, {% data variables.copilot.copilot_cloud_agent %}, and Agent mode in {% data variables.copilot.copilot_chat_short %} in IDEs, do not support content exclusion. For more information about these {% data variables.product.prodname_copilot_short %} features, see [AUTOTITLE](/copilot/concepts/agents/about-copilot-cli), [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent), and [AUTOTITLE](/copilot/how-tos/chat-with-copilot/chat-in-ide). {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} diff --git a/content/copilot/how-tos/configure-custom-instructions/add-repository-instructions.md b/content/copilot/how-tos/configure-custom-instructions/add-repository-instructions.md index 16b72e02ac3c..61f202c0d9dd 100644 --- a/content/copilot/how-tos/configure-custom-instructions/add-repository-instructions.md +++ b/content/copilot/how-tos/configure-custom-instructions/add-repository-instructions.md @@ -49,9 +49,9 @@ This version of this article is for using repository custom instructions on the ## Creating repository-wide custom instructions -You can create your own custom instructions file from scratch. See [Writing your own copilot-instructions.md file](#writing-your-own-copilot-instructionsmd-file). Alternatively, you can ask {% data variables.copilot.copilot_coding_agent %} to generate one for you. +You can create your own custom instructions file from scratch. See [Writing your own copilot-instructions.md file](#writing-your-own-copilot-instructionsmd-file). Alternatively, you can ask {% data variables.copilot.copilot_cloud_agent %} to generate one for you. -### Asking {% data variables.copilot.copilot_coding_agent %} to generate a `copilot-instructions.md` file +### Asking {% data variables.copilot.copilot_cloud_agent %} to generate a `copilot-instructions.md` file 1. Navigate to the agents tab at [github.com/copilot/agents](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text). @@ -150,12 +150,12 @@ You can create your own custom instructions file from scratch. See [Writing your Whitespace between instructions is ignored, so the instructions can be written as a single paragraph, each on a new line, or separated by blank lines for legibility. > [!TIP] -> The first time you create a pull request in a given repository with {% data variables.copilot.copilot_coding_agent %}, {% data variables.product.prodname_copilot_short %} will leave a comment with a link to automatically generate custom instructions for the repository. +> The first time you create a pull request in a given repository with {% data variables.copilot.copilot_cloud_agent %}, {% data variables.product.prodname_copilot_short %} will leave a comment with a link to automatically generate custom instructions for the repository. ## Creating path-specific custom instructions > [!NOTE] -> Currently, on {% data variables.product.prodname_dotcom_the_website %}, path-specific custom instructions are only supported for {% data variables.copilot.copilot_coding_agent %} and {% data variables.copilot.copilot_code-review_short %}. +> Currently, on {% data variables.product.prodname_dotcom_the_website %}, path-specific custom instructions are only supported for {% data variables.copilot.copilot_cloud_agent %} and {% data variables.copilot.copilot_code-review_short %}. {% data reusables.copilot.custom-instructions-path %} diff --git a/content/copilot/how-tos/copilot-cli/administer-copilot-cli-for-your-enterprise.md b/content/copilot/how-tos/copilot-cli/administer-copilot-cli-for-your-enterprise.md index 522f107d4850..29a94206e36e 100644 --- a/content/copilot/how-tos/copilot-cli/administer-copilot-cli-for-your-enterprise.md +++ b/content/copilot/how-tos/copilot-cli/administer-copilot-cli-for-your-enterprise.md @@ -36,9 +36,9 @@ Users can only access AI models that are enabled at the enterprise level. When y Enterprise-configured custom agents are available to use with {% data variables.copilot.copilot_cli_short %}. -### {% data variables.copilot.copilot_coding_agent %} enablement +### {% data variables.copilot.copilot_cloud_agent %} enablement -Both the {% data variables.copilot.copilot_cli_short %} policy and the {% data variables.copilot.copilot_coding_agent %} policy must be enabled for users to be able to use the `/delegate` command in {% data variables.copilot.copilot_cli_short %}. +Both the {% data variables.copilot.copilot_cli_short %} policy and the {% data variables.copilot.copilot_cloud_agent %} policy must be enabled for users to be able to use the `/delegate` command in {% data variables.copilot.copilot_cli_short %}. ### Audit logging diff --git a/content/copilot/how-tos/copilot-cli/cli-best-practices.md b/content/copilot/how-tos/copilot-cli/cli-best-practices.md index e8181c46b0df..e0e9b561e67d 100644 --- a/content/copilot/how-tos/copilot-cli/cli-best-practices.md +++ b/content/copilot/how-tos/copilot-cli/cli-best-practices.md @@ -284,7 +284,7 @@ Visualize your current context usage with `/context`. It shows a breakdown of: ### The `/delegate` command -**Offload work to run in the cloud using {% data variables.copilot.copilot_coding_agent %}.** This is particularly powerful for: +**Offload work to run in the cloud using {% data variables.copilot.copilot_cloud_agent %}.** This is particularly powerful for: * Tasks that can run asynchronously. * Changes to other repositories. @@ -298,7 +298,7 @@ Visualize your current context usage with `/context`. It shows a breakdown of: **What happens:** -* Your request is sent to {% data variables.copilot.copilot_coding_agent %}. +* Your request is sent to {% data variables.copilot.copilot_cloud_agent %}. * The agent creates a pull request with the changes. * You can continue working locally while the cloud agent works. diff --git a/content/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers.md b/content/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers.md index 325c3507a7f6..ecb286907d67 100644 --- a/content/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers.md +++ b/content/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers.md @@ -28,7 +28,7 @@ For installation instructions, available tools, and URLs for specific MCP server 1. Next to **Server Name**, enter a unique name for the MCP server. This is the name you will use to refer to the server. 1. Next to **Server Type**, select a type by pressing the corresponding number. The following types are available: - * **Local** or **STDIO**: starts a local process and communicates over standard input/output (`stdin`/`stdout`). Both options work the same way. **STDIO** is the standard MCP protocol type name, so choose this if you want your configuration to be compatible with {% data variables.product.prodname_vscode_shortname %}, the {% data variables.copilot.copilot_coding_agent %}, and other MCP clients. + * **Local** or **STDIO**: starts a local process and communicates over standard input/output (`stdin`/`stdout`). Both options work the same way. **STDIO** is the standard MCP protocol type name, so choose this if you want your configuration to be compatible with {% data variables.product.prodname_vscode_shortname %}, the {% data variables.copilot.copilot_cloud_agent %}, and other MCP clients. * **HTTP** or **SSE**: connects to a remote MCP server. **HTTP** uses the Streamable HTTP transport. **SSE** uses the legacy HTTP with Server-Sent Events transport, which is deprecated in the MCP specification but still supported for backwards compatibility. 1. The remaining fields depend on the server type you selected: @@ -74,7 +74,7 @@ The following example shows a configuration file with a local server and a remot } ``` -For more information on MCP server configuration, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). +For more information on MCP server configuration, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). ## Managing MCP servers @@ -100,4 +100,4 @@ Once you have added an MCP server, {% data variables.product.prodname_copilot_sh * [AUTOTITLE](/copilot/concepts/about-mcp) * [AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) diff --git a/content/copilot/how-tos/copilot-cli/customize-copilot/use-hooks.md b/content/copilot/how-tos/copilot-cli/customize-copilot/use-hooks.md index 16dbd35292c4..438f85f1d876 100644 --- a/content/copilot/how-tos/copilot-cli/customize-copilot/use-hooks.md +++ b/content/copilot/how-tos/copilot-cli/customize-copilot/use-hooks.md @@ -12,19 +12,19 @@ redirect_from: - /copilot/how-tos/copilot-cli/use-hooks --- -{% data reusables.copilot.coding-agent.hooks-intro %} +{% data reusables.copilot.cloud-agent.hooks-intro %} ## Creating a hook in a repository on {% data variables.product.github %} -{% data reusables.copilot.coding-agent.create-hooks-instructions %} +{% data reusables.copilot.cloud-agent.create-hooks-instructions %} ## Troubleshooting -{% data reusables.copilot.coding-agent.troubleshoot-hooks %} +{% data reusables.copilot.cloud-agent.troubleshoot-hooks %} ## Further reading * [AUTOTITLE](/copilot/reference/hooks-configuration) -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) * [AUTOTITLE](/copilot/concepts/agents/about-copilot-cli) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) diff --git a/content/copilot/how-tos/copilot-cli/set-up-copilot-cli/authenticate-copilot-cli.md b/content/copilot/how-tos/copilot-cli/set-up-copilot-cli/authenticate-copilot-cli.md index e053498ea024..892d136e0ae4 100644 --- a/content/copilot/how-tos/copilot-cli/set-up-copilot-cli/authenticate-copilot-cli.md +++ b/content/copilot/how-tos/copilot-cli/set-up-copilot-cli/authenticate-copilot-cli.md @@ -30,7 +30,7 @@ If you configure {% data variables.copilot.copilot_cli_short %} to use your own However, without {% data variables.product.github %} authentication, the following features are **not available**: -* `/delegate`: Requires {% data variables.copilot.copilot_coding_agent %}, which runs on {% data variables.product.github %}'s servers +* `/delegate`: Requires {% data variables.copilot.copilot_cloud_agent %}, which runs on {% data variables.product.github %}'s servers * {% data variables.product.github %} MCP server: Requires authentication to access {% data variables.product.github %} APIs * {% data variables.product.github %} Code Search: Requires authentication to query {% data variables.product.github %}'s search index diff --git a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/delegate-tasks-to-cca.md b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/delegate-tasks-to-cca.md index 8857cef4a648..462e58f231b5 100644 --- a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/delegate-tasks-to-cca.md +++ b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/delegate-tasks-to-cca.md @@ -22,9 +22,9 @@ There are two ways to use autopilot mode: For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-cli/autopilot). -## Delegate tasks to {% data variables.copilot.copilot_coding_agent %} +## Delegate tasks to {% data variables.copilot.copilot_cloud_agent %} -The delegate command lets you push your current session to {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.github %}. This lets you hand off work while preserving all the context {% data variables.product.prodname_copilot_short %} needs to complete your task. +The delegate command lets you push your current session to {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.github %}. This lets you hand off work while preserving all the context {% data variables.product.prodname_copilot_short %} needs to complete your task. You can delegate a task using the slash command, followed by a prompt: @@ -38,7 +38,7 @@ Alternatively, prefix a prompt with `&` to delegate it: & complete the API integration tests and fix any failing edge cases ``` -{% data variables.product.prodname_copilot_short %} will ask to commit any of your unstaged changes as a checkpoint in a new branch it creates. {% data variables.copilot.copilot_coding_agent %} will open a draft pull request, make changes in the background, and request a review from you. +{% data variables.product.prodname_copilot_short %} will ask to commit any of your unstaged changes as a checkpoint in a new branch it creates. {% data variables.copilot.copilot_cloud_agent %} will open a draft pull request, make changes in the background, and request a review from you. {% data variables.product.prodname_copilot_short %} will provide a link to the pull request and agent session on {% data variables.product.github %} once the session begins. diff --git a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/invoke-custom-agents.md b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/invoke-custom-agents.md index 02965fd1f124..f326087c6242 100644 --- a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/invoke-custom-agents.md +++ b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/invoke-custom-agents.md @@ -79,7 +79,7 @@ In the case of naming conflicts, a system-level agent overrides a repository-lev copilot --agent=refactor-agent --prompt "Refactor this code block" ``` -For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). ## Use skills @@ -102,7 +102,7 @@ To extend the functionality available to you in {% data variables.copilot.copilo 1. Fill in the details for the MCP server you want to add, using the Tab key to move between fields. 1. Press Ctrl+S to save the details. -Details of your configured MCP servers are stored in the `mcp-config.json` file, which is located, by default, in the `~/.copilot` directory. This location can be changed by setting the `COPILOT_HOME` environment variable. For information about the JSON structure of a server definition, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). +Details of your configured MCP servers are stored in the `mcp-config.json` file, which is located, by default, in the `~/.copilot` directory. This location can be changed by setting the `COPILOT_HOME` environment variable. For information about the JSON structure of a server definition, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). For more detailed information on adding and managing MCP servers in {% data variables.copilot.copilot_cli_short %}, see [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers). diff --git a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/overview.md b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/overview.md index d26dfd61d1d9..42c753424a93 100644 --- a/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/overview.md +++ b/content/copilot/how-tos/copilot-cli/use-copilot-cli-agents/overview.md @@ -118,7 +118,7 @@ You can prepend your input with `!` to directly run shell commands, without maki ### Resume an interactive session -You can use the `--resume` command-line option or the `/resume` slash command to select and resume an interactive CLI session, allowing you to pick up right where you left off, with the saved context. You can kick off a {% data variables.copilot.copilot_coding_agent %} session on {% data variables.product.github %}, and then use {% data variables.copilot.copilot_cli %} to bring that session to your local environment. +You can use the `--resume` command-line option or the `/resume` slash command to select and resume an interactive CLI session, allowing you to pick up right where you left off, with the saved context. You can kick off a {% data variables.copilot.copilot_cloud_agent %} session on {% data variables.product.github %}, and then use {% data variables.copilot.copilot_cli %} to bring that session to your local environment. > [!TIP] > To quickly resume the most recently closed local session, enter this in your terminal: @@ -208,7 +208,7 @@ In the case of naming conflicts, a system-level agent overrides a repository-lev copilot --agent=refactor-agent --prompt "Refactor this code block" ``` -For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). ### Use skills @@ -231,7 +231,7 @@ To extend the functionality available to you in {% data variables.copilot.copilo 1. Fill in the details for the MCP server you want to add, using the Tab key to move between fields. 1. Press Ctrl+S to save the details. -Details of your configured MCP servers are stored in the `mcp-config.json` file, which is located, by default, in the `~/.copilot` directory. This location can be changed by setting the `COPILOT_HOME` environment variable. For information about the JSON structure of a server definition, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). +Details of your configured MCP servers are stored in the `mcp-config.json` file, which is located, by default, in the `~/.copilot` directory. This location can be changed by setting the `COPILOT_HOME` environment variable. For information about the JSON structure of a server definition, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). ### Context management diff --git a/content/copilot/how-tos/get-code-suggestions/find-matching-code.md b/content/copilot/how-tos/get-code-suggestions/find-matching-code.md index 30aa098eea44..f1ad102e215f 100644 --- a/content/copilot/how-tos/get-code-suggestions/find-matching-code.md +++ b/content/copilot/how-tos/get-code-suggestions/find-matching-code.md @@ -231,9 +231,9 @@ To see details of the matching code: 1. Click the name of a repository to display that repository on {% data variables.product.prodname_dotcom_the_website %}. -## View code references for {% data variables.copilot.copilot_coding_agent %} +## View code references for {% data variables.copilot.copilot_cloud_agent %} -When {% data variables.product.prodname_copilot_short %} provides a response that includes code that matches code in a public {% data variables.product.github %} repository, this is indicated in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +When {% data variables.product.prodname_copilot_short %} provides a response that includes code that matches code in a public {% data variables.product.github %} repository, this is indicated in the agent session logs with a link to display details of the matched code. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). {% endwebui %} diff --git a/content/copilot/how-tos/manage-and-track-spending/manage-request-allowances.md b/content/copilot/how-tos/manage-and-track-spending/manage-request-allowances.md index 8d494c22a6f6..9cfc88391178 100644 --- a/content/copilot/how-tos/manage-and-track-spending/manage-request-allowances.md +++ b/content/copilot/how-tos/manage-and-track-spending/manage-request-allowances.md @@ -53,7 +53,7 @@ You can set the policy for an enterprise or a standalone organization. 1. Check the budgets for your enterprise or organizations, and edit or delete any budgets that "stop usage when budget limit is reached" for the Premium Request SKU. See [AUTOTITLE](/billing/managing-your-billing/using-budgets-control-spending#editing-or-deleting-a-budget). 1. Premium request budget types: * **Bundled premium requests budget**: Manages all premium request SKUs together (recommended for most users) - * **Individual SKU budgets**: Set separate budgets for each AI tool ({% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_spark_short %}, {% data variables.copilot.copilot_coding_agent %}) + * **Individual SKU budgets**: Set separate budgets for each AI tool ({% data variables.product.prodname_copilot_short %}, {% data variables.product.prodname_spark_short %}, {% data variables.copilot.copilot_cloud_agent %}) Creating new budgets without deleting an existing budget does not override the existing budget. If **any** applicable budget with "Stop usage when budget limit is reached" enabled is exhausted, additional premium requests are blocked. diff --git a/content/copilot/how-tos/manage-your-account/manage-policies.md b/content/copilot/how-tos/manage-your-account/manage-policies.md index 4b5f6c36bfac..1311be23f356 100644 --- a/content/copilot/how-tos/manage-your-account/manage-policies.md +++ b/content/copilot/how-tos/manage-your-account/manage-policies.md @@ -35,21 +35,21 @@ If you choose to allow suggestions matching public code or use a product that do {% data reusables.user-settings.copilot-settings %} 1. To the right of **Suggestions matching public code**, select the dropdown menu, then click **Allow** to allow suggestions matching public code, or **Block** to block suggestions matching public code. -## Disabling or enabling {% data variables.copilot.copilot_coding_agent %} in your repositories +## Disabling or enabling {% data variables.copilot.copilot_cloud_agent %} in your repositories -{% data variables.copilot.copilot_coding_agent %} allows you to assign {% data variables.product.prodname_copilot_short %} to {% data variables.product.github %} issues, or prompt {% data variables.product.prodname_copilot_short %} to undertake a task autonomously, such as deep research of a repository, planning, or code changes, with the option to create a pull request when you're ready. +{% data variables.copilot.copilot_cloud_agent %} allows you to assign {% data variables.product.prodname_copilot_short %} to {% data variables.product.github %} issues, or prompt {% data variables.product.prodname_copilot_short %} to undertake a task autonomously, such as deep research of a repository, planning, or code changes, with the option to create a pull request when you're ready. > [!NOTE] -> * {% data reusables.gated-features.copilot-coding-agent %} +> * {% data reusables.gated-features.copilot-cloud-agent %} -{% data variables.copilot.copilot_coding_agent %} is enabled in all repositories by default, but you can block it from being used in repositories owned by your own personal account by changing your account settings. +{% data variables.copilot.copilot_cloud_agent %} is enabled in all repositories by default, but you can block it from being used in repositories owned by your own personal account by changing your account settings. {% data reusables.user-settings.copilot-settings %} 1. In the sidebar, under **{% octicon "copilot" aria-hidden="true" aria-label="copilot" %} {% data variables.product.prodname_copilot_short %}**, click **Cloud agent**. -1. On the {% data variables.copilot.copilot_coding_agent %} page, under "Policies," click the dropdown button for "Repository access," then choose either **No repositories**, **All repositories**, or **Only selected repositories**. -1. If you choose **Only selected repositories**, click **Select repositories** and choose the repositories where you want to enable {% data variables.copilot.copilot_coding_agent %}. +1. On the {% data variables.copilot.copilot_cloud_agent %} page, under "Policies," click the dropdown button for "Repository access," then choose either **No repositories**, **All repositories**, or **Only selected repositories**. +1. If you choose **Only selected repositories**, click **Select repositories** and choose the repositories where you want to enable {% data variables.copilot.copilot_cloud_agent %}. -{% data reusables.copilot.coding-agent.enabling-for-orgs-and-enterprises %} +{% data reusables.copilot.cloud-agent.enabling-for-orgs-and-enterprises %} {% ifversion fpt %} @@ -63,12 +63,12 @@ You can choose whether to allow the following coding agents to be enabled in you * {% data variables.product.prodname_anthropic_claude %} * {% data variables.product.prodname_openai_codex %} -Coding agents have access to the same repositories that {% data variables.copilot.copilot_coding_agent %} has been enabled in. +Coding agents have access to the same repositories that {% data variables.copilot.copilot_cloud_agent %} has been enabled in. To enable coding agents: 1. Navigate to your account's [cloud agent settings](https://github.com/settings/copilot/coding_agent?ref_product=copilot&ref_type=engagement&ref_style=text&utm_source=docs-3p-agents-cca-settings-cta&utm_medium=docs&utm_campaign=agent-3p-platform-feb-2026). -1. On the {% data variables.copilot.copilot_coding_agent %} page, under "Partner agents", click the toggle to enable the third-party agent you want to use. +1. On the {% data variables.copilot.copilot_cloud_agent %} page, under "Partner agents", click the toggle to enable the third-party agent you want to use. ## Enabling or disabling web search for {% data variables.copilot.copilot_chat %} diff --git a/content/copilot/how-tos/provide-context/use-mcp/configure-toolsets.md b/content/copilot/how-tos/provide-context/use-mcp/configure-toolsets.md index f093ddb98f12..6c20155c1d1c 100644 --- a/content/copilot/how-tos/provide-context/use-mcp/configure-toolsets.md +++ b/content/copilot/how-tos/provide-context/use-mcp/configure-toolsets.md @@ -16,7 +16,7 @@ The {% data variables.product.github %} MCP server includes default toolsets (`r * **Enabling individual toolsets** such as `actions`, `code_security`, or `secret_protection` * **Using special keywords** like `all` to enable every available toolset, or [`default`](https://github.com/github/github-mcp-server?tab=readme-ov-file#default-toolset) to include the standard set alongside others (for example, `default,stargazers`) -* **Accessing remote-only toolsets** such as `copilot` (for {% data variables.copilot.copilot_coding_agent %}) and `github_support_docs_search`, which are only available on the remote MCP server +* **Accessing remote-only toolsets** such as `copilot` (for {% data variables.copilot.copilot_cloud_agent %}) and `github_support_docs_search`, which are only available on the remote MCP server * **Selecting specific tools** for granular control when you want to exclude specific tools or combine toolsets with individual tools For a complete list of available toolsets, see [Tools](https://github.com/github/github-mcp-server/blob/main/README.md#tools) in the `github/github-mcp-server` repository. For configuration examples, see [Server configuration](https://github.com/github/github-mcp-server/blob/main/docs/server-configuration.md). For a full introduction to the {% data variables.product.github %} MCP server and an overview of MCP, see [AUTOTITLE](/copilot/concepts/context/mcp). diff --git a/content/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp.md b/content/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp.md index 0bd4e2960ff8..a6b5ab6fe1ac 100644 --- a/content/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp.md +++ b/content/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp.md @@ -321,6 +321,6 @@ For more information on creating and configuring your own MCP servers, see [the ## Further reading * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) * [AUTOTITLE](/copilot/customizing-copilot/using-model-context-protocol/using-the-github-mcp-server) * [AUTOTITLE](/copilot/tutorials/enhancing-copilot-agent-mode-with-mcp) diff --git a/content/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server.md b/content/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server.md index e545e40c03e9..015977c8b737 100644 --- a/content/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server.md +++ b/content/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server.md @@ -16,7 +16,7 @@ category: - Integrate Copilot with your tools --- -The {% data variables.product.github %} MCP server is available to all {% data variables.product.github %} users regardless of plan type. However, specific tools within the MCP server inherit the same access requirements as their corresponding {% data variables.product.github %} features. If a feature requires a paid {% data variables.product.github %} or {% data variables.product.prodname_copilot_short %} license, the equivalent MCP tool will require the same subscription. For example, tools that interact with {% data variables.copilot.copilot_coding_agent %} require a paid {% data variables.product.prodname_copilot_short %} license. +The {% data variables.product.github %} MCP server is available to all {% data variables.product.github %} users regardless of plan type. However, specific tools within the MCP server inherit the same access requirements as their corresponding {% data variables.product.github %} features. If a feature requires a paid {% data variables.product.github %} or {% data variables.product.prodname_copilot_short %} license, the equivalent MCP tool will require the same subscription. For example, tools that interact with {% data variables.copilot.copilot_cloud_agent %} require a paid {% data variables.product.prodname_copilot_short %} license. {% vscode %} @@ -204,4 +204,4 @@ The {% data variables.product.github %} MCP server in {% data variables.copilot. ## Further reading * [AUTOTITLE](/copilot/tutorials/enhancing-copilot-agent-mode-with-mcp) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp) diff --git a/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md new file mode 100644 index 000000000000..bde97aa16dbc --- /dev/null +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md @@ -0,0 +1,37 @@ +--- +title: Changing the AI model for GitHub Copilot cloud agent +shortTitle: Changing the AI model +allowTitleToDifferFromFilename: true +intro: 'In supported entrypoints, when starting a task with {% data variables.copilot.copilot_cloud_agent %}, you can select the model used.' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +versions: + feature: copilot +contentType: how-tos +category: + - Author and optimize with Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model +--- + +> [!NOTE] +> For an overview of {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). + +## Introduction + +In supported entrypoints, you can select the model used by {% data variables.copilot.copilot_cloud_agent %}. + +You may find that different models perform better, or provide more useful responses, depending on the type of tasks you give {% data variables.product.prodname_copilot_short %}. + +> [!NOTE] +> Model selection for {% data variables.copilot.copilot_cloud_agent %} is only supported when assigning an issue to {% data variables.product.prodname_copilot_short %} on {% data variables.product.prodname_dotcom_the_website %}, when mentioning `@copilot` in a pull request comment on {% data variables.product.prodname_dotcom_the_website %}, or when starting a task from the agents tab, agents panel, {% data variables.product.prodname_mobile %} or the Raycast launcher. Where a model picker is not available, Auto will be used automatically. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). + +## Supported models + +The following options are currently available: + +* Auto +{% data reusables.copilot.copilot-cloud-agent-auto-models %} +{% data reusables.copilot.copilot-cloud-agent-non-auto-models %} + +{% data reusables.copilot.auto-model-option %} + diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/configuring-agent-settings.md similarity index 83% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/configuring-agent-settings.md index 103602819cb6..cac3a5780193 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/configuring-agent-settings.md @@ -2,17 +2,19 @@ title: Configuring settings for GitHub Copilot cloud agent shortTitle: Configuring agent settings allowTitleToDifferFromFilename: true -intro: 'Learn how to configure settings for {% data variables.copilot.copilot_coding_agent %}' +intro: 'Learn how to configure settings for {% data variables.copilot.copilot_cloud_agent %}' versions: feature: copilot contentType: how-tos category: - Configure Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings --- ## Enabling or disabling built-in code quality and security validation tools -{% data reusables.copilot.coding-agent-validation-tools-intro %} +{% data reusables.copilot.cloud-agent-validation-tools-intro %} Optionally, you can choose to disable these tools to help {% data variables.product.prodname_copilot_short %} work faster or avoid conflicts with other code quality or security products you're using. @@ -20,12 +22,12 @@ You must be a repository administrator to configure these settings. {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_coding_agent_short_cap_c %}**. +1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_cloud_agent_short_cap_c %}**. 1. In the "Validation tools" section, toggle the tool, or tools, you want to enable or disable. ## Allowing {% data variables.product.prodname_actions %} workflows to run automatically when {% data variables.product.prodname_copilot_short %} pushes -{% data reusables.copilot.coding-agent-workflow-run-approval-default %} +{% data reusables.copilot.cloud-agent-workflow-run-approval-default %} > [!WARNING] Allowing {% data variables.product.prodname_actions %} workflows to run without approval may allow unreviewed code written by {% data variables.product.prodname_copilot_short %} to gain write access to your repository or access your {% data variables.product.prodname_actions %} secrets. @@ -33,5 +35,5 @@ You must be a repository administrator to configure these settings. {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_coding_agent_short %}**. +1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_cloud_agent_short %}**. 1. In the "Actions workflow approval" section, disable the **Require approval for workflow runs** setting. diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr.md similarity index 90% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr.md index de0a317b47e7..5a919ad1a789 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr.md @@ -2,10 +2,11 @@ title: Asking GitHub Copilot to create a pull request shortTitle: Create a PR intro: 'You can ask {% data variables.product.prodname_copilot_short %} to create a pull request from many places, including {% data variables.product.prodname_github_issues %}, the agents panel, {% data variables.copilot.copilot_chat_short %}, the {% data variables.product.prodname_cli %}, and agentic coding tools and IDEs with Model Context Protocol (MCP) support.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/asking-copilot-to-create-a-pull-request - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/asking-copilot-to-create-a-pull-request - /copilot/using-github-copilot/coding-agent/asking-copilot-to-create-a-pull-request @@ -26,7 +27,7 @@ category: --- > [!NOTE] -> For an overview of {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an overview of {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Introduction @@ -43,7 +44,7 @@ You can ask {% data variables.product.prodname_copilot_short %} to create a new * The [Raycast](#asking-copilot-to-create-a-pull-request-from-raycast) launcher * The ["New repository" form](#asking-copilot-to-create-a-pull-request-from-the-new-repository-page) on {% data variables.product.github %} -{% data variables.product.prodname_copilot_short %} will start working on the task, raise a pull request, then request a review from you when it's finished working. For more information, see [AUTOTITLE](/copilot/using-github-copilot/coding-agent/about-assigning-tasks-to-copilot). +{% data variables.product.prodname_copilot_short %} will start working on the task, raise a pull request, then request a review from you when it's finished working. For more information, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Assigning an issue to {% data variables.product.prodname_copilot_short %} @@ -72,11 +73,11 @@ You can assign an issue to {% data variables.product.prodname_copilot_short %}: 1. Click **Copilot** from assignees list. - ![Screenshot of "Assignees" window on an issue. Copilot is available in the list.](/assets/images/help/copilot/coding-agent/assign-to-copilot.png) + ![Screenshot of "Assignees" window on an issue. Copilot is available in the list.](/assets/images/help/copilot/cloud-agent/assign-to-copilot.png) Additional options are displayed. - ![Screenshot of "Assign to Copilot" dialog showing options for target repository, starting branch, {% data variables.copilot.copilot_custom_agent_short %}, and additional instructions.](/assets/images/help/copilot/coding-agent/assign-to-copilot-dialog.png) + ![Screenshot of "Assign to Copilot" dialog showing options for target repository, starting branch, {% data variables.copilot.copilot_custom_agent_short %}, and additional instructions.](/assets/images/help/copilot/cloud-agent/assign-to-copilot-dialog.png) 1. In the **Optional prompt** field you can add specific guidance for {% data variables.product.prodname_copilot_short %}. Add any context, constraints, or specific requirements that will help {% data variables.product.prodname_copilot_short %} to understand and complete the task. @@ -86,7 +87,7 @@ You can assign an issue to {% data variables.product.prodname_copilot_short %}: 1. You can use the dropdown menus in the dialog to change the repository that {% data variables.product.prodname_copilot_short %} will work in and the branch that it will branch off from. - All repositories where you have **at least** read access will be displayed in the repository dropdown menu. However, you can only select a repository if you have write access to it, **and** if {% data variables.copilot.copilot_coding_agent %} is enabled for that repository. + All repositories where you have **at least** read access will be displayed in the repository dropdown menu. However, you can only select a repository if you have write access to it, **and** if {% data variables.copilot.copilot_cloud_agent %} is enabled for that repository. If you select a repository in a different organization than the issue's source organization, or if you select a public repository when the issue is in a private repository, a warning will be displayed. @@ -96,7 +97,7 @@ You can assign an issue to {% data variables.product.prodname_copilot_short %}: > When you assign an issue to {% data variables.product.prodname_copilot_short %}, it gets sent the issue title, description, any comments that currently exist, and any additional instructions you provide. After assigning the issue, {% data variables.product.prodname_copilot_short %} will not be aware of, and therefore won't react to, any further comments that are added to the issue. If you have more information, or changes to the original requirement, add this as a comment in the pull request that {% data variables.product.prodname_copilot_short %} raises. {% data reusables.copilot.optional-select-custom-agent-dotcom %} -{% data reusables.copilot.optional-select-copilot-coding-agent-model %} +{% data reusables.copilot.optional-select-copilot-cloud-agent-model %} You can also assign issues to {% data variables.product.prodname_copilot_short %} from other places on {% data variables.product.prodname_dotcom_the_website %}: @@ -151,7 +152,7 @@ You can use the following GraphQL mutations to assign issues to {% data variable > > If using a {% data variables.product.pat_v1 %}, it needs the `repo` scope to assign {% data variables.product.prodname_copilot_short %} to an issue. -1. Verify that {% data variables.copilot.copilot_coding_agent %} is enabled in the repository by checking if the repository's `suggestedActors` in the GraphQL API includes {% data variables.product.prodname_copilot_short %}. Replace `octo-org` with the repository owner, and `octo-repo` with the repository name. +1. Verify that {% data variables.copilot.copilot_cloud_agent %} is enabled in the repository by checking if the repository's `suggestedActors` in the GraphQL API includes {% data variables.product.prodname_copilot_short %}. Replace `octo-org` with the repository owner, and `octo-repo` with the repository name. ```graphql copy query { @@ -174,7 +175,7 @@ You can use the following GraphQL mutations to assign issues to {% data variable } ``` - If {% data variables.copilot.copilot_coding_agent %} is enabled for the user and in the repository, the first node returned from the query will have the `login` value `copilot-swe-agent`. + If {% data variables.copilot.copilot_cloud_agent %} is enabled for the user and in the repository, the first node returned from the query will have the `login` value `copilot-swe-agent`. 1. Make a note of the `id` value of this login. @@ -221,7 +222,7 @@ You can use the following GraphQL mutations to assign issues to {% data variable ##### Assigning an existing issue 1. Make sure you're authenticating with the API using a user token, for example a {% data variables.product.pat_generic %} or a {% data variables.product.prodname_github_app %} user-to-server token. -1. Verify that {% data variables.copilot.copilot_coding_agent %} is enabled in the repository by checking if the repository's `suggestedActors` in the GraphQL API includes {% data variables.product.prodname_copilot_short %}. Replace `octo-org` with the repository owner, and `octo-repo` with the repository name. +1. Verify that {% data variables.copilot.copilot_cloud_agent %} is enabled in the repository by checking if the repository's `suggestedActors` in the GraphQL API includes {% data variables.product.prodname_copilot_short %}. Replace `octo-org` with the repository owner, and `octo-repo` with the repository name. ```graphql copy query { @@ -244,7 +245,7 @@ You can use the following GraphQL mutations to assign issues to {% data variable } ``` - If {% data variables.copilot.copilot_coding_agent %} is enabled for the user and in the repository, the first node returned from the query will have the `login` value `copilot-swe-agent`. + If {% data variables.copilot.copilot_cloud_agent %} is enabled for the user and in the repository, the first node returned from the query will have the `login` value `copilot-swe-agent`. 1. Fetch the GraphQL global ID of the issue you want to assign to {% data variables.product.prodname_copilot_short %}, replacing `monalisa` with the repository owner, `octocat` with the name and `9000` with the issue number. @@ -419,30 +420,30 @@ gh api \ ### Assigning an issue to {% data variables.product.prodname_copilot_short %} from Raycast -{% data reusables.copilot.coding-agent.raycast-intro %} +{% data reusables.copilot.cloud-agent.raycast-intro %} -{% data reusables.copilot.coding-agent.raycast-setup %} +{% data reusables.copilot.cloud-agent.raycast-setup %} 1. Open Raycast, search for "{% data variables.product.prodname_copilot_short %}," find the **Assign Issues to {% data variables.product.prodname_copilot_short %}** command, then press Enter. 1. Click **Sign in with {% data variables.product.github %}**, then complete the authentication flow. Raycast will re-open. 1. Select the repository you want {% data variables.product.prodname_copilot_short %} to work in. 1. Select the issue you want to assign to {% data variables.product.prodname_copilot_short %}. 1. Optionally, select a base branch for {% data variables.product.prodname_copilot_short %}'s pull request. {% data variables.product.prodname_copilot_short %} will create a new branch based on this branch, then push the changes to a pull request targeting that branch. {% data reusables.copilot.optional-select-custom-agent-generic %} -{% data reusables.copilot.optional-select-copilot-coding-agent-model %} +{% data reusables.copilot.optional-select-copilot-cloud-agent-model %} 1. Optionally, provide additional instructions. These will be passed to {% data variables.product.prodname_copilot_short %} alongside your issue contents. 1. Press Command+Enter (macOS) or Ctrl+Enter (Windows) to assign the issue. {% data variables.product.prodname_copilot_short %} will start a new session. {% data variables.product.prodname_copilot_short %} will work on the task and push changes to its pull request, then add you as a reviewer when it has finished, triggering a notification. -{% data reusables.copilot.coding-agent.raycast-oauth-access-restrictions %} +{% data reusables.copilot.cloud-agent.raycast-oauth-access-restrictions %} ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from the agents tab or panel You can ask {% data variables.product.prodname_copilot_short %} to open a pull request from either the agents tab or the agents panel. The only difference is the entry point - once you see the "New agent task" form, the steps are the same. {% data reusables.copilot.open-agents-panel-or-page %} -{% data reusables.copilot.coding-agent.new-agent-task-form-instructions %} +{% data reusables.copilot.cloud-agent.new-agent-task-form-instructions %} ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from the dashboard @@ -484,7 +485,7 @@ You can ask {% data variables.product.prodname_copilot_short %} to open a pull r ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from {% data variables.copilot.copilot_chat_short %} in JetBrains IDEs > [!NOTE] -> {% data variables.copilot.copilot_coding_agent %} in JetBrains IDEs is in {% data variables.release-phases.public_preview %}, and subject to change. +> {% data variables.copilot.copilot_cloud_agent %} in JetBrains IDEs is in {% data variables.release-phases.public_preview %}, and subject to change. 1. Open {% data variables.copilot.copilot_chat %} in your JetBrains IDE. 1. Type a prompt explaining what you want {% data variables.product.prodname_copilot_short %} to do @@ -498,7 +499,7 @@ You can ask {% data variables.product.prodname_copilot_short %} to open a pull r ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from {% data variables.copilot.copilot_chat_short %} in Eclipse > [!NOTE] -> {% data variables.copilot.copilot_coding_agent %} in Eclipse is in {% data variables.release-phases.public_preview %}, and subject to change. +> {% data variables.copilot.copilot_cloud_agent %} in Eclipse is in {% data variables.release-phases.public_preview %}, and subject to change. 1. Open {% data variables.copilot.copilot_chat %} in Eclipse. 1. Type a prompt explaining what you want {% data variables.product.prodname_copilot_short %} to do. @@ -512,9 +513,9 @@ You can ask {% data variables.product.prodname_copilot_short %} to open a pull r ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from {% data variables.copilot.copilot_chat_short %} in {% data variables.product.prodname_vs %} 2026 -> [!NOTE] To use {% data variables.copilot.copilot_coding_agent %} in {% data variables.product.prodname_vs %}, you'll need to be running at least [December Update 18.1.0](https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes#github-copilot-1) of {% data variables.product.prodname_vs %} 2026. +> [!NOTE] To use {% data variables.copilot.copilot_cloud_agent %} in {% data variables.product.prodname_vs %}, you'll need to be running at least [December Update 18.1.0](https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes#github-copilot-1) of {% data variables.product.prodname_vs %} 2026. -1. Enable {% data variables.copilot.copilot_coding_agent %} support in {% data variables.product.prodname_vs %}. +1. Enable {% data variables.copilot.copilot_cloud_agent %} support in {% data variables.product.prodname_vs %}. 1. Open the **Tools** menu, then click **Options**. 1. In the sidebar, select **{% data variables.product.github %}**. 1. Check the **Enable Copilot Cloud agent (preview)** box. @@ -564,9 +565,9 @@ You can ask {% data variables.product.prodname_copilot_short %} to open a pull r > [!NOTE] > The `agent-task` command set is only available in v2.80.0 or later of the {% data variables.product.prodname_cli %}. This command set is a {% data variables.release-phases.public_preview %} and is subject to change. -You can start a new {% data variables.copilot.copilot_coding_agent %} session with the `gh agent-task create` command in the {% data variables.product.prodname_cli %}. +You can start a new {% data variables.copilot.copilot_cloud_agent %} session with the `gh agent-task create` command in the {% data variables.product.prodname_cli %}. -When you run the command without any arguments, you are asked to enter a prompt. {% data variables.copilot.copilot_coding_agent %} acts on the prompt and opens a pull request in the current repository. +When you run the command without any arguments, you are asked to enter a prompt. {% data variables.copilot.copilot_cloud_agent %} acts on the prompt and opens a pull request in the current repository. You can use command line options to: @@ -601,9 +602,9 @@ To see all of the available options, run `gh agent-task create --help`. ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from Raycast -{% data reusables.copilot.coding-agent.raycast-intro %} +{% data reusables.copilot.cloud-agent.raycast-intro %} -{% data reusables.copilot.coding-agent.raycast-setup %} +{% data reusables.copilot.cloud-agent.raycast-setup %} 1. Open Raycast, search for "{% data variables.product.prodname_copilot_short %}," find the **Create Task** command, then press Enter. 1. Click **Sign in with {% data variables.product.github %}**, then complete the authentication flow. Raycast will re-open. 1. Type a prompt describing what you want {% data variables.product.prodname_copilot_short %} to do. @@ -612,13 +613,13 @@ To see all of the available options, run `gh agent-task create --help`. 1. Select the repository you want {% data variables.product.prodname_copilot_short %} to work in. 1. Optionally, select a base branch for {% data variables.product.prodname_copilot_short %}'s pull request. {% data variables.product.prodname_copilot_short %} will create a new branch based on this branch, then push the changes to a pull request targeting that branch. {% data reusables.copilot.optional-select-custom-agent-generic %} -{% data reusables.copilot.optional-select-copilot-coding-agent-model %} +{% data reusables.copilot.optional-select-copilot-cloud-agent-model %} 1. Press Command+Enter (macOS) or Ctrl+Enter (Windows) to start the task. {% data variables.product.prodname_copilot_short %} will start a new session. {% data variables.product.prodname_copilot_short %} will work on the task and push changes to its pull request, then add you as a reviewer when it has finished, triggering a notification. -{% data reusables.copilot.coding-agent.raycast-oauth-access-restrictions %} +{% data reusables.copilot.cloud-agent.raycast-oauth-access-restrictions %} ## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from the "New repository" page @@ -633,11 +634,11 @@ When creating a new repository, you can ask {% data variables.product.prodname_c {% data variables.product.prodname_copilot_short %} will immediately open a draft pull request. {% data variables.product.prodname_copilot_short %} will work on the task and push changes to its pull request, then add you as a reviewer when it has finished, triggering a notification. -{% data reusables.copilot.coding-agent.monitoring-progress-heading %} +{% data reusables.copilot.cloud-agent.monitoring-progress-heading %} ## Further reading -* [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent) -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/troubleshooting-copilot-coding-agent#copilot-cant-create-a-pull-request-from-copilot-chat) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent#copilot-cant-create-a-pull-request-from-copilot-chat) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents.md similarity index 91% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents.md index 13e0a4a988d8..ced4a9130f51 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents.md @@ -1,17 +1,19 @@ --- -title: Creating custom agents for {% data variables.copilot.copilot_coding_agent %} +title: Creating custom agents for {% data variables.copilot.copilot_cloud_agent %} shortTitle: Create custom agents intro: You can create specialized agents with tailored expertise for specific development tasks. -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot category: - Configure Copilot - Author and optimize with Copilot contentType: how-tos +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents --- -{% data variables.copilot.custom_agents_caps_short %} allow you to tailor {% data variables.product.prodname_copilot_short %}'s expertise for specific tasks. For a conceptual overview of {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents). +{% data variables.copilot.custom_agents_caps_short %} allow you to tailor {% data variables.product.prodname_copilot_short %}'s expertise for specific tasks. For a conceptual overview of {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-custom-agents). {% data reusables.copilot.custom-agents-ide-preview %} @@ -99,15 +101,15 @@ To configure your {% data variables.copilot.agent_profile %}: ## Using {% data variables.copilot.custom_agents_short %} -Once you've created a {% data variables.copilot.copilot_custom_agent_short %}, you can use it wherever {% data variables.copilot.copilot_coding_agent %} is available. +Once you've created a {% data variables.copilot.copilot_custom_agent_short %}, you can use it wherever {% data variables.copilot.copilot_cloud_agent %} is available. -* When prompting {% data variables.copilot.copilot_coding_agent %} with a task on {% data variables.product.prodname_dotcom_the_website %}, use the dropdown menu in the agents panel or agents tab to select your {% data variables.copilot.copilot_custom_agent_short %} instead of the default {% data variables.copilot.copilot_coding_agent_short %}. -* When assigning {% data variables.copilot.copilot_coding_agent %} to an issue, you can select your {% data variables.copilot.copilot_custom_agent_short %} from the dropdown menu to handle the issue with your specialized configuration. +* When prompting {% data variables.copilot.copilot_cloud_agent %} with a task on {% data variables.product.prodname_dotcom_the_website %}, use the dropdown menu in the agents panel or agents tab to select your {% data variables.copilot.copilot_custom_agent_short %} instead of the default {% data variables.copilot.copilot_cloud_agent_short %}. +* When assigning {% data variables.copilot.copilot_cloud_agent %} to an issue, you can select your {% data variables.copilot.copilot_custom_agent_short %} from the dropdown menu to handle the issue with your specialized configuration. * When using the {% data variables.copilot.copilot_cli %}, you can choose to use a particular {% data variables.copilot.copilot_custom_agent_short %} by using the `/agent` slash command or referencing the agent in a prompt or via a command-line argument. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli#use-custom-agents). When {% data variables.product.prodname_copilot_short %} opens pull requests, it will note which {% data variables.copilot.copilot_custom_agent_short %} was used to complete the work in the pull request description. -For more information on using {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). +For more information on using {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). ### Using {% data variables.copilot.custom_agents_short %} in your IDE @@ -121,4 +123,4 @@ For more information on {% data variables.copilot.custom_agents_short %} in {% d * For a hands-on tutorial to create your first {% data variables.copilot.copilot_custom_agent_short %}, see [AUTOTITLE](/copilot/tutorials/customization-library/custom-agents/your-first-custom-agent). * For detailed configuration information, see [AUTOTITLE](/copilot/reference/custom-agents-configuration). -* For information on using cloud agents, including your {% data variables.copilot.custom_agents_short %}, to create pull requests, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). +* For information on using cloud agents, including your {% data variables.copilot.custom_agents_short %}, to create pull requests, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-skills.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-skills.md similarity index 77% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/create-skills.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/create-skills.md index 699de056a290..e54f03ba5de4 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/create-skills.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/create-skills.md @@ -9,10 +9,12 @@ contentType: how-tos category: - Configure Copilot - Author and optimize with Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/create-skills --- > [!NOTE] -> Agent skills work with {% data variables.copilot.copilot_coding_agent %}, the {% data variables.copilot.copilot_cli %}, and agent mode in {% data variables.product.prodname_vscode %}. +> Agent skills work with {% data variables.copilot.copilot_cloud_agent %}, the {% data variables.copilot.copilot_cli %}, and agent mode in {% data variables.product.prodname_vscode %}. Agent skills are folders of instructions, scripts, and resources that {% data variables.product.prodname_copilot_short %} can load when relevant to improve its performance in specialized tasks. For more information, see [AUTOTITLE](/copilot/concepts/agents/about-agent-skills). diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment.md similarity index 79% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment.md index e53917f499a6..32516b39d1ef 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment.md @@ -6,6 +6,7 @@ intro: 'Learn how to customize {% data variables.product.prodname_copilot %}''s versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment - /early-access/copilot/coding-agent/customizing-copilot-coding-agents-development-environment - /copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent - /copilot/how-tos/agents/copilot-coding-agent/customizing-the-development-environment-for-copilot-coding-agent @@ -16,7 +17,7 @@ category: - Configure Copilot --- -## About customizing {% data variables.copilot.copilot_coding_agent %}'s development environment +## About customizing {% data variables.copilot.copilot_cloud_agent %}'s development environment While working on a task, {% data variables.product.prodname_copilot_short %} has access to its own ephemeral development environment, powered by {% data variables.product.prodname_actions %}, where it can explore your code, make changes, execute automated tests and linters and more. @@ -31,10 +32,10 @@ You can customize {% data variables.product.prodname_copilot_short %}'s developm In addition, you can: * [Set environment variables in {% data variables.product.prodname_copilot_short %}'s environment](#setting-environment-variables-in-copilots-environment) -* [Disable or customize the agent's firewall](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent). +* [Disable or customize the agent's firewall](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-cloud-agent). > [!NOTE] -> Organization owners can configure the default runner type for {% data variables.copilot.copilot_coding_agent %} across all repositories in their organization, and choose whether repositories are allowed to override this default. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent). +> Organization owners can configure the default runner type for {% data variables.copilot.copilot_cloud_agent %} across all repositories in their organization, and choose whether repositories are allowed to override this default. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/configure-runner-for-coding-agent). ## Customizing {% data variables.product.prodname_copilot_short %}'s development environment with {% data variables.product.prodname_copilot_short %} setup steps @@ -97,7 +98,7 @@ Your `copilot-setup-steps.yml` file will automatically be run as a normal {% dat Once you have merged the yml file into your default branch, you can manually run the workflow from the repository's **Actions** tab at any time to check that everything works as expected. For more information, see [AUTOTITLE](/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/manually-running-a-workflow). -When {% data variables.product.prodname_copilot_short %} starts work, your setup steps will be run, and updates will show in the session logs. See [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/tracking-copilots-sessions). +When {% data variables.product.prodname_copilot_short %} starts work, your setup steps will be run, and updates will show in the session logs. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). If any setup step fails by returning a non-zero exit code, {% data variables.product.prodname_copilot_short %} will skip the remaining setup steps and begin working with the current state of its development environment. @@ -137,11 +138,11 @@ jobs: By default, {% data variables.product.prodname_copilot_short %} works in a standard {% data variables.product.prodname_actions %} runner. You can upgrade to larger runners for better performance (CPU and memory), more disk space and advanced features like Azure private networking. For more information, see [AUTOTITLE](/actions/using-github-hosted-runners/using-larger-runners/about-larger-runners). 1. Set up larger runners for your organization. For more information, see [AUTOTITLE](/actions/using-github-hosted-runners/managing-larger-runners). -1. If you are using larger runners with Azure private networking, configure your Azure private network to allow outbound access to the hosts required for {% data variables.copilot.copilot_coding_agent %}: +1. If you are using larger runners with Azure private networking, configure your Azure private network to allow outbound access to the hosts required for {% data variables.copilot.copilot_cloud_agent %}: - {% data reusables.copilot.coding-agent-required-hosts %} + {% data reusables.copilot.cloud-agent-required-hosts %} -1. Use a `copilot-setup-steps.yml` file in your repository to configure {% data variables.copilot.copilot_coding_agent %} to run on your chosen runners. Set the `runs-on` step of the `copilot-setup-steps` job to the label and/or group for the larger runners you want {% data variables.product.prodname_copilot_short %} to use. For more information on specifying larger runners with `runs-on`, see [AUTOTITLE](/actions/using-github-hosted-runners/running-jobs-on-larger-runners). +1. Use a `copilot-setup-steps.yml` file in your repository to configure {% data variables.copilot.copilot_cloud_agent %} to run on your chosen runners. Set the `runs-on` step of the `copilot-setup-steps` job to the label and/or group for the larger runners you want {% data variables.product.prodname_copilot_short %} to use. For more information on specifying larger runners with `runs-on`, see [AUTOTITLE](/actions/using-github-hosted-runners/running-jobs-on-larger-runners). ```yaml # ... @@ -153,24 +154,24 @@ By default, {% data variables.product.prodname_copilot_short %} works in a stand ``` > [!NOTE] -> * {% data variables.copilot.copilot_coding_agent %} is only compatible with Ubuntu x64 Linux and Windows 64-bit runners. Runners with macOS or other operating systems are not supported. +> * {% data variables.copilot.copilot_cloud_agent %} is only compatible with Ubuntu x64 Linux and Windows 64-bit runners. Runners with macOS or other operating systems are not supported. ## Using self-hosted {% data variables.product.prodname_actions %} runners -You can run {% data variables.copilot.copilot_coding_agent %} on self-hosted runners. You may want to do this to match how you run CI/CD workflows on {% data variables.product.prodname_actions %}, or to give {% data variables.product.prodname_copilot_short %} access to internal resources on your network. +You can run {% data variables.copilot.copilot_cloud_agent %} on self-hosted runners. You may want to do this to match how you run CI/CD workflows on {% data variables.product.prodname_actions %}, or to give {% data variables.product.prodname_copilot_short %} access to internal resources on your network. -We recommend that you only use {% data variables.copilot.copilot_coding_agent %} with ephemeral, single-use runners that are not reused for multiple jobs. Most customers set this up using ARC (Actions Runner Controller) or the {% data variables.product.prodname_actions %} Runner Scale Set Client. For more information, see [AUTOTITLE](/actions/reference/runners/self-hosted-runners#supported-autoscaling-solutions). +We recommend that you only use {% data variables.copilot.copilot_cloud_agent %} with ephemeral, single-use runners that are not reused for multiple jobs. Most customers set this up using ARC (Actions Runner Controller) or the {% data variables.product.prodname_actions %} Runner Scale Set Client. For more information, see [AUTOTITLE](/actions/reference/runners/self-hosted-runners#supported-autoscaling-solutions). > [!NOTE] -> {% data variables.copilot.copilot_coding_agent %} is only compatible with Ubuntu x64 and Windows 64-bit runners. Runners with macOS or other operating systems are not supported. +> {% data variables.copilot.copilot_cloud_agent %} is only compatible with Ubuntu x64 and Windows 64-bit runners. Runners with macOS or other operating systems are not supported. -1. Configure network security controls for your {% data variables.product.prodname_actions %} runners to ensure that {% data variables.copilot.copilot_coding_agent %} does not have open access to your network or the public internet. +1. Configure network security controls for your {% data variables.product.prodname_actions %} runners to ensure that {% data variables.copilot.copilot_cloud_agent %} does not have open access to your network or the public internet. You must configure your firewall to allow connections to the [standard hosts required for {% data variables.product.prodname_actions %} self-hosted runners](/actions/reference/runners/self-hosted-runners#accessible-domains-by-function), plus the following hosts: - {% data reusables.copilot.coding-agent-required-hosts %} + {% data reusables.copilot.cloud-agent-required-hosts %} -1. Disable {% data variables.copilot.copilot_coding_agent %}'s integrated firewall in your repository settings. The firewall is not compatible with self-hosted runners. Unless this is disabled, use of {% data variables.copilot.copilot_coding_agent %} will be blocked. For more information, see [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent). +1. Disable {% data variables.copilot.copilot_cloud_agent %}'s integrated firewall in your repository settings. The firewall is not compatible with self-hosted runners. Unless this is disabled, use of {% data variables.copilot.copilot_cloud_agent %} will be blocked. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). 1. In your `copilot-setup-steps.yml` file, set the `runs-on` attribute to your ARC-managed scale set name: ```yaml @@ -182,7 +183,7 @@ We recommend that you only use {% data variables.copilot.copilot_coding_agent %} # ... ``` -1. If you want to configure a proxy server for {% data variables.copilot.copilot_coding_agent %}'s connections to the internet, configure the following environment variables as appropriate: +1. If you want to configure a proxy server for {% data variables.copilot.copilot_cloud_agent %}'s connections to the internet, configure the following environment variables as appropriate: {% data reusables.actions.actions-proxy-environment-variables-table %} | `ssl_cert_file` | The path to the SSL certificate presented by your proxy server. You will need to configure this if your proxy intercepts SSL connections. | `/path/to/key.pem` | @@ -196,7 +197,7 @@ By default, {% data variables.product.prodname_copilot_short %} uses an Ubuntu L You may want to use a Windows development environment if you're building software for Windows or your repository uses a Windows-based toolchain so {% data variables.product.prodname_copilot_short %} can build your project, run tests and validate its work. -{% data variables.copilot.copilot_coding_agent %}'s integrated firewall is not compatible with Windows, so we recommend that you only use self-hosted runners or larger {% data variables.product.prodname_dotcom %}-hosted runners with Azure private networking where you can implement your own network controls. For more information on runners with Azure private networking, see [AUTOTITLE](/admin/configuring-settings/configuring-private-networking-for-hosted-compute-products/about-azure-private-networking-for-github-hosted-runners-in-your-enterprise). +{% data variables.copilot.copilot_cloud_agent %}'s integrated firewall is not compatible with Windows, so we recommend that you only use self-hosted runners or larger {% data variables.product.prodname_dotcom %}-hosted runners with Azure private networking where you can implement your own network controls. For more information on runners with Azure private networking, see [AUTOTITLE](/admin/configuring-settings/configuring-private-networking-for-hosted-compute-products/about-azure-private-networking-for-github-hosted-runners-in-your-enterprise). To use Windows with self-hosted runners, follow the instructions in the [Using self-hosted {% data variables.product.prodname_actions %} runners](#using-self-hosted-github-actions-runners) section above, using the label for your Windows runners. To use Windows with larger {% data variables.product.prodname_dotcom %}-hosted runners, follow the instructions in the [Upgrading to larger runners](#upgrading-to-larger-github-hosted-github-actions-runners) section above, using the label for your Windows runners. @@ -235,4 +236,4 @@ To set an environment variable for {% data variables.product.prodname_copilot_sh ## Further reading -* [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall.md similarity index 90% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall.md index 7e79140740d1..daa3b75f5a09 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall.md @@ -2,10 +2,11 @@ title: Customizing or disabling the firewall for GitHub Copilot cloud agent shortTitle: Customize the agent firewall allowTitleToDifferFromFilename: true -intro: 'Learn how to control the domains and URLs that {% data variables.copilot.copilot_coding_agent %} can access.' +intro: 'Learn how to control the domains and URLs that {% data variables.copilot.copilot_cloud_agent %} can access.' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall - /copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent - /copilot/how-tos/agents/copilot-coding-agent/customizing-or-disabling-the-firewall-for-copilot-coding-agent - /copilot/how-tos/agents/copilot-coding-agent/customize-the-agent-firewall @@ -15,6 +16,9 @@ category: - Configure Copilot --- +> [!NOTE] +> Firewall configuration has moved to the {% data variables.copilot.copilot_cloud_agent %} settings page. Previous configurations saved as Actions variables will be maintained on that page. + ## Overview By default, {% data variables.product.prodname_copilot_short %}'s access to the internet is limited by a firewall. @@ -25,7 +29,7 @@ The firewall always allows access to a number of hosts that {% data variables.pr If {% data variables.product.prodname_copilot_short %} tries to make a request which is blocked by the firewall, a warning is added to the pull request body (if {% data variables.product.prodname_copilot_short %} is creating a pull request for the first time) or to a comment (if {% data variables.product.prodname_copilot_short %} is responding to a pull request comment). The warning shows the blocked address and the command that tried to make the request. -![Screenshot of a warning from {% data variables.product.prodname_copilot_short %} about being blocked by the firewall.](/assets/images/help/copilot/coding-agent/firewall-warning.png) +![Screenshot of a warning from {% data variables.product.prodname_copilot_short %} about being blocked by the firewall.](/assets/images/help/copilot/cloud-agent/firewall-warning.png) ## Limitations @@ -47,7 +51,7 @@ The recommended allowlist, enabled by default, allows access to: * Common certificate authorities (to allow SSL certificates to be validated). * Hosts used to download web browsers for the Playwright MCP server. -For the complete list of hosts included in the recommended allowlist, see [AUTOTITLE](/copilot/reference/copilot-allowlist-reference#copilot-coding-agent-recommended-allowlist). +For the complete list of hosts included in the recommended allowlist, see [AUTOTITLE](/copilot/reference/copilot-allowlist-reference#copilot-cloud-agent-recommended-allowlist). ## Configuring the firewall at the organization level @@ -55,7 +59,7 @@ Organization owners can configure all firewall settings at the organization leve {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% data reusables.copilot.coding-agent-settings %} +{% data reusables.copilot.cloud-agent-settings %} ### Enabling or disabling the firewall @@ -79,7 +83,7 @@ By default, repository administrators can add their own entries to the firewall Items added to the organization custom allowlist apply to all repositories in the organization. These items cannot be deleted at the repository level. Organization-level and repository-level rules are combined. 1. Under "Internet access", click **Organization custom allowlist**. -{% data reusables.copilot.coding-agent.custom-allowlist-add-entries %} +{% data reusables.copilot.cloud-agent.custom-allowlist-add-entries %} ## Configuring the firewall at the repository level @@ -89,7 +93,7 @@ To access the firewall settings: {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_coding_agent_short %}**. +1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_cloud_agent_short %}**. ### Enabling or disabling the firewall @@ -111,9 +115,9 @@ To access the firewall settings: > You can only add custom allowlist rules at the repository level if the organization-level **Allow repository custom rules** setting is set to **Enabled**. For more information, see [Controlling whether repositories can add custom allowlist rules](#controlling-whether-repositories-can-add-custom-allowlist-rules). 1. Click **Custom allowlist**. -{% data reusables.copilot.coding-agent.custom-allowlist-add-entries %} +{% data reusables.copilot.cloud-agent.custom-allowlist-add-entries %} ## Further reading * [AUTOTITLE](/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#creating-configuration-variables-for-a-repository) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp.md similarity index 91% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp.md index af7e2af26476..2266a05e7389 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp.md @@ -2,10 +2,11 @@ title: Extending GitHub Copilot cloud agent with the Model Context Protocol (MCP) shortTitle: Extend cloud agent with MCP allowTitleToDifferFromFilename: true -intro: 'Learn how to use the Model Context Protocol (MCP) to extend the capabilities of {% data variables.copilot.copilot_coding_agent %}.' +intro: 'Learn how to use the Model Context Protocol (MCP) to extend the capabilities of {% data variables.copilot.copilot_cloud_agent %}.' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp - /copilot/customizing-copilot/using-model-context-protocol/extending-copilot-coding-agent-with-mcp - /copilot/customizing-copilot/extending-copilot-coding-agent-with-mcp - /early-access/copilot/coding-agent/extending-copilot-coding-agent-with-model-context-protocol @@ -20,7 +21,7 @@ category: ## Prerequisite -Before setting up an MCP server for {% data variables.copilot.copilot_coding_agent %}, read [AUTOTITLE](/copilot/concepts/coding-agent/mcp-and-coding-agent) to make sure you understand the concepts around MCP servers and {% data variables.copilot.copilot_coding_agent %}. +Before setting up an MCP server for {% data variables.copilot.copilot_cloud_agent %}, read [AUTOTITLE](/copilot/concepts/agents/cloud-agent/mcp-and-cloud-agent) to make sure you understand the concepts around MCP servers and {% data variables.copilot.copilot_cloud_agent %}. ## Introduction @@ -31,7 +32,7 @@ Organization and enterprise administrators can also configure MCP servers as par > [!WARNING] > Once you've configured an MCP server, {% data variables.product.prodname_copilot_short %} will be able to use the tools provided by the server autonomously, and will not ask for your approval before using them. -{% data reusables.copilot.mcp.coding-agent-limitations %} +{% data reusables.copilot.mcp.cloud-agent-limitations %} ## Adding an MCP configuration to your repository @@ -39,7 +40,7 @@ Repository administrators can configure MCP servers by following these steps: {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_coding_agent_short_cap_c %}**. +1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_cloud_agent_short_cap_c %}**. 1. Add your configuration in the **MCP configuration** section. The following sections in this article explain how to write the JSON configuration that you need to enter here. @@ -48,7 +49,7 @@ Repository administrators can configure MCP servers by following these steps: Your configuration will be validated to ensure proper syntax. -1. If your MCP server requires a variable, key, or secret, add a variable or secret to your {% data variables.product.prodname_copilot_short %} environment. Only variables and secrets with names prefixed with `COPILOT_MCP_` will be available to your MCP configuration. See [Setting up a {% data variables.product.prodname_copilot_short %} environment for {% data variables.copilot.copilot_coding_agent %}](#setting-up-a-copilot-environment-for-copilot-coding-agent). +1. If your MCP server requires a variable, key, or secret, add a variable or secret to your {% data variables.product.prodname_copilot_short %} environment. Only variables and secrets with names prefixed with `COPILOT_MCP_` will be available to your MCP configuration. See [Setting up a {% data variables.product.prodname_copilot_short %} environment for {% data variables.copilot.copilot_cloud_agent %}](#setting-up-a-copilot-environment-for-copilot-cloud-agent). ## Writing a JSON configuration for MCP servers @@ -76,7 +77,7 @@ The configuration object can contain the following keys: **Required keys for local and remote MCP servers** * `tools` (`string[]`): The tools from the MCP server to enable. You may be able to find a list of tools in the server's documentation, or in its code. We strongly recommend that you allowlist specific read-only tools, since the agent will be able to use these tools autonomously and will not ask you for approval first. You can also enable all tools by including `*` in the array. -* `type` (`string`): {% data variables.copilot.copilot_coding_agent %} accepts `"local"`, `"stdio"`, `"http"`, or `"sse"`. +* `type` (`string`): {% data variables.copilot.copilot_cloud_agent %} accepts `"local"`, `"stdio"`, `"http"`, or `"sse"`. **Local MCP specific keys** * `command` (`string`): Required. The command to run to start the MCP server. @@ -177,7 +178,7 @@ The [Notion MCP server](https://github.com/makenotion/notion-mcp-server) gives { The [Microsoft MCP repository](https://github.com/microsoft/mcp) includes the Azure MCP server, which allows {% data variables.product.prodname_copilot_short %} to understand your Azure-specific files and Azure resources within your subscription when making code changes. -To automatically configure your repository with a `copilot-setup-steps.yml` file to authenticate with Azure, plus secrets for authentication, clone the repository locally then run the [Azure Developer CLI](https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/?ref_product=copilot&ref_type=engagement&ref_style=button)'s `azd coding-agent config` command in the root of the repository. +To automatically configure your repository with a `copilot-setup-steps.yml` file to authenticate with Azure, plus secrets for authentication, clone the repository locally then run the [Azure Developer CLI](https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/?ref_product=copilot&ref_type=engagement&ref_style=button)'s `azd cloud-agent config` command in the root of the repository. Once you've run the command and merged the created pull request, you can add the MCP configuration to your repository. @@ -219,7 +220,7 @@ The [Cloudflare MCP server](https://github.com/cloudflare/mcp-server-cloudflare) The [Azure DevOps MCP server](https://github.com/microsoft/azure-devops-mcp) creates a seamless connection between {% data variables.product.prodname_copilot_short %} and your Azure DevOps services, including work items, pipelines or documentation. -To use the Azure DevOps MCP server with {% data variables.copilot.copilot_coding_agent %}, you must update the repository's copilot-setup-steps.yml file to include an Azure login workflow step. +To use the Azure DevOps MCP server with {% data variables.copilot.copilot_cloud_agent %}, you must update the repository's copilot-setup-steps.yml file to include an Azure login workflow step. 1. Configure OIDC in a Microsoft Entra application, trusting {% data variables.product.github %}. See [Use the Azure Login action with OpenID Connect](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect). 1. Setup access to Azure DevOps organization and projects for the application identity. See [Add organization users and manage access](https://learn.microsoft.com/en-us/azure/devops/organizations/accounts/add-organization-users). @@ -249,9 +250,9 @@ To use the Azure DevOps MCP server with {% data variables.copilot.copilot_coding allow-no-subscriptions: true ``` - This configuration ensures the `azure/login` action is executed when {% data variables.copilot.copilot_coding_agent %} runs. + This configuration ensures the `azure/login` action is executed when {% data variables.copilot.copilot_cloud_agent %} runs. 1. In your repository’s {% data variables.product.prodname_copilot_short %} environment, add secrets for your `AZURE_CLIENT_ID` and `AZURE_TENANT_ID`. -1. Configure the Azure DevOps MCP server by adding an `ado` object to your MCP configuration with defined tools you want {% data variables.copilot.copilot_coding_agent %} to use. +1. Configure the Azure DevOps MCP server by adding an `ado` object to your MCP configuration with defined tools you want {% data variables.copilot.copilot_cloud_agent %} to use. ```json copy { @@ -301,11 +302,11 @@ For more information about authenticating to the Atlassian MCP server using an A ## Reusing your MCP configuration from {% data variables.product.prodname_vscode %} -If you have already configured MCP servers in {% data variables.product.prodname_vscode_shortname %}, you can leverage a similar configuration for {% data variables.copilot.copilot_coding_agent %}. +If you have already configured MCP servers in {% data variables.product.prodname_vscode_shortname %}, you can leverage a similar configuration for {% data variables.copilot.copilot_cloud_agent %}. Depending on how {% data variables.product.prodname_vscode_shortname %} is configured, you may be able to find your MCP settings in your repository's `.vscode/mcp.json` file, or in your machine's private `settings.json` file. -To adapt the configuration for {% data variables.copilot.copilot_coding_agent %}, you will need to: +To adapt the configuration for {% data variables.copilot.copilot_cloud_agent %}, you will need to: 1. Add a `tools` key for each MCP server, specifying which tools will be available to {% data variables.product.prodname_copilot_short %}. 1. If you've configured `inputs`, switch to using `env` directly. @@ -314,9 +315,9 @@ To adapt the configuration for {% data variables.copilot.copilot_coding_agent %} For more information on MCP in {% data variables.product.prodname_vscode_shortname %}, see the [{% data variables.product.prodname_vscode_shortname %} docs](https://code.visualstudio.com/docs/copilot/chat/mcp-servers). -## Setting up a {% data variables.product.prodname_copilot_short %} environment for {% data variables.copilot.copilot_coding_agent %} +## Setting up a {% data variables.product.prodname_copilot_short %} environment for {% data variables.copilot.copilot_cloud_agent %} -Some MCP servers will require keys or secrets. To leverage those servers in {% data variables.copilot.copilot_coding_agent %}, you can add secrets to an environment for {% data variables.product.prodname_copilot_short %}. This ensures the secrets are properly recognized and passed to the applicable MCP server that you have configured. +Some MCP servers will require keys or secrets. To leverage those servers in {% data variables.copilot.copilot_cloud_agent %}, you can add secrets to an environment for {% data variables.product.prodname_copilot_short %}. This ensures the secrets are properly recognized and passed to the applicable MCP server that you have configured. You must be a repository administrator to configure a {% data variables.product.prodname_copilot_short %} environment for your repository. @@ -336,12 +337,12 @@ Once you've set up your MCP configuration, you should test it to make sure it is 1. Wait a few seconds, and {% data variables.product.prodname_copilot_short %} will leave an 👀 reaction on the issue. 1. Wait a few more seconds, and {% data variables.product.prodname_copilot_short %} will create a pull request, which will appear in the issue's timeline. 1. Click the created pull request in the timeline, and wait until a "Copilot started work" timeline event appears. -1. Click **View session** to open the {% data variables.copilot.copilot_coding_agent %} logs. +1. Click **View session** to open the {% data variables.copilot.copilot_cloud_agent %} logs. 1. Click the ellipsis button (**...**) at the top right of the log viewer, then click **{% data variables.product.prodname_copilot_short %}** in the sidebar. 1. Click the **Start MCP Servers** step to expand the logs. 1. If your MCP servers have been started successfully, you will see their tools listed at the bottom of the logs. -If your MCP servers require any dependencies that are not installed on the {% data variables.product.prodname_actions %} runner by default, such as `uv` and `pipx`, or that need special setup steps, you may need to create a `copilot-setup-steps.yml` Actions workflow file to install them. For more information, see [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent). +If your MCP servers require any dependencies that are not installed on the {% data variables.product.prodname_actions %} runner by default, such as `uv` and `pipx`, or that need special setup steps, you may need to create a `copilot-setup-steps.yml` Actions workflow file to install them. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment). ## Customizing the built-in {% data variables.product.github %} MCP server @@ -352,7 +353,7 @@ If you want to allow {% data variables.product.prodname_copilot_short %} to acce 1. Create a {% data variables.product.pat_generic %} with the appropriate permissions. We recommend using a {% data variables.product.pat_v2 %}, where you can limit the token's access to read-only permissions on specific repositories. For more information on {% data variables.product.pat_generic_plural %}, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens). {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_coding_agent_short_cap_c %}**. +1. In the "Code & automation" section of the sidebar, click **{% data variables.product.prodname_copilot_short %}** then **{% data variables.copilot.copilot_cloud_agent_short_cap_c %}**. 1. Add your configuration in the **MCP configuration** section. For example, you can add the following: ```javascript copy @@ -387,6 +388,6 @@ For information on using the {% data variables.product.github %} MCP server in o ## Next steps * [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) * [AUTOTITLE](/copilot/customizing-copilot/extending-copilot-chat-with-mcp) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/index.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/index.md similarity index 65% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/index.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/index.md index facd9ce62fc8..e4d68c308282 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/index.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/index.md @@ -1,6 +1,6 @@ --- title: GitHub Copilot cloud agent -shortTitle: '{% data variables.copilot.copilot_coding_agent_short_cap_c %}' +shortTitle: '{% data variables.copilot.copilot_cloud_agent_short_cap_c %}' allowTitleToDifferFromFilename: true intro: 'Find out how {% data variables.product.prodname_copilot_short %} can research a repository, plan and make code changes, and create pull requests for you to review.' versions: @@ -15,19 +15,20 @@ children: - /create-custom-agents - /test-custom-agents - /create-skills - - /extend-coding-agent-with-mcp - - /integrate-coding-agent-with-jira - - /integrate-coding-agent-with-slack - - /integrate-coding-agent-with-teams - - /integrate-coding-agent-with-linear - - /integrate-coding-agent-with-azure-boards + - /extend-cloud-agent-with-mcp + - /integrate-cloud-agent-with-jira + - /integrate-cloud-agent-with-slack + - /integrate-cloud-agent-with-teams + - /integrate-cloud-agent-with-linear + - /integrate-cloud-agent-with-azure-boards - /changing-the-ai-model - /configuring-agent-settings - /customize-the-agent-environment - /customize-the-agent-firewall - /use-hooks - - /troubleshoot-coding-agent + - /troubleshoot-cloud-agent redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues - /early-access/copilot/coding-agent @@ -37,4 +38,4 @@ redirect_from: contentType: how-tos --- -These articles provide how-to information for using {% data variables.copilot.copilot_coding_agent %}. For an overview of {% data variables.copilot.copilot_coding_agent %}, see the articles under [AUTOTITLE](/copilot/concepts/agents/coding-agent). +These articles provide how-to information for using {% data variables.copilot.copilot_cloud_agent %}. For an overview of {% data variables.copilot.copilot_cloud_agent %}, see the articles under [AUTOTITLE](/copilot/concepts/agents/cloud-agent). diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-azure-boards.md similarity index 74% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-azure-boards.md index c7d6707b4d0b..93e31c870c50 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-azure-boards.md @@ -2,26 +2,28 @@ title: Integrating Copilot cloud agent with Azure Boards shortTitle: Integrate cloud agent with Azure Boards allowTitleToDifferFromFilename: true -intro: 'Use the {% data variables.product.prodname_copilot_short %} integration in Azure Boards to send work items directly to {% data variables.copilot.copilot_coding_agent %} and generate pull requests, all from within your Azure DevOps workspace.' +intro: 'Use the {% data variables.product.prodname_copilot_short %} integration in Azure Boards to send work items directly to {% data variables.copilot.copilot_cloud_agent %} and generate pull requests, all from within your Azure DevOps workspace.' versions: feature: copilot contentType: how-tos category: - Integrate Copilot with your tools +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards --- -The Azure Boards {% data variables.product.github %} integration allows you to invoke {% data variables.copilot.copilot_coding_agent %} without leaving your workspace. From within a Azure Boards work item you can initiate {% data variables.copilot.copilot_coding_agent_short %} sessions and open pull requests, using the context of your work item description and comments. +The Azure Boards {% data variables.product.github %} integration allows you to invoke {% data variables.copilot.copilot_cloud_agent %} without leaving your workspace. From within a Azure Boards work item you can initiate {% data variables.copilot.copilot_cloud_agent_short %} sessions and open pull requests, using the context of your work item description and comments. For information about additional {% data variables.product.prodname_copilot_short %} integrations, see [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations). > [!NOTE] -> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-coding-agent). -> * When you send a work item to {% data variables.copilot.copilot_coding_agent %}, the agent will capture content from text fields (such as the description and reproduction steps), along with the last 50 comments. This context is stored in the pull request, and is visible to anyone with access to the repository. +> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent). +> * When you send a work item to {% data variables.copilot.copilot_cloud_agent %}, the agent will capture content from text fields (such as the description and reproduction steps), along with the last 50 comments. This context is stored in the pull request, and is visible to anyone with access to the repository. ## Prerequisites * You must have a {% data variables.product.github %} account with access to {% data variables.product.prodname_copilot_short %} through {% data variables.copilot.copilot_pro_short %}, {% data variables.copilot.copilot_pro_plus_short %}, {% data variables.copilot.copilot_business_short %}, or {% data variables.copilot.copilot_enterprise_short %}. -* The repositories connected to the Azure DevOps project must have {% data variables.copilot.copilot_coding_agent %} enabled. +* The repositories connected to the Azure DevOps project must have {% data variables.copilot.copilot_cloud_agent %} enabled. ## Installing the Azure Boards application on {% data variables.product.github %} @@ -46,7 +48,7 @@ If you already have the Azure Boards application installed on {% data variables. ## Creating a pull request from a work item -1. In Azure Boards, open the work item you want to send to {% data variables.copilot.copilot_coding_agent %}. +1. In Azure Boards, open the work item you want to send to {% data variables.copilot.copilot_cloud_agent %}. 1. Click the {% octicon "copilot" aria-label="Copilot" %} icon on the work item. 1. Select **Create a pull request with {% data variables.product.prodname_copilot_short %}**. 1. Under **{% data variables.product.github %} repository**, select the repository where {% data variables.product.prodname_copilot_short %} should create the pull request. @@ -54,9 +56,9 @@ If you already have the Azure Boards application installed on {% data variables. 1. Optionally, add any additional instructions to provide {% data variables.product.prodname_copilot_short %} with more context. 1. Click **Create**. -{% data variables.copilot.copilot_coding_agent %} will begin processing the work item and create a draft pull request linked back to the work item. +{% data variables.copilot.copilot_cloud_agent %} will begin processing the work item and create a draft pull request linked back to the work item. ## Further reading -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent) -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/access-management) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-jira.md similarity index 78% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-jira.md index 417b038cee7e..5fc8c6281c33 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-jira.md @@ -6,6 +6,7 @@ intro: 'You can use the {% data variables.product.github %} integration in Jira versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira - /early-access/copilot/integrate-coding-agent-with-jira contentType: how-tos category: @@ -14,10 +15,10 @@ category: > [!NOTE] > * This feature is currently in {% data variables.release-phases.public_preview %} and subject to change. -> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-coding-agent). +> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent). > * You can provide feedback about the {% data variables.product.prodname_copilot %} for Jira integration in the [{% data variables.product.github %} survey](https://www.surveymonkey.com/r/CCAforJira). -The {% data variables.product.prodname_copilot %} integration in Jira allows you to invoke {% data variables.copilot.copilot_coding_agent %} without leaving your Jira workspace. From within a Jira work item you can initiate {% data variables.copilot.copilot_coding_agent_short %} sessions and open pull requests, using the context of the work item's title, description, labels, and comments. +The {% data variables.product.prodname_copilot %} integration in Jira allows you to invoke {% data variables.copilot.copilot_cloud_agent %} without leaving your Jira workspace. From within a Jira work item you can initiate {% data variables.copilot.copilot_cloud_agent_short %} sessions and open pull requests, using the context of the work item's title, description, labels, and comments. ## Prerequisites @@ -79,24 +80,24 @@ To enable the {% data variables.product.prodname_copilot %} for Jira app for an The {% data variables.product.prodname_copilot_short %} app must be enabled for a {% data variables.product.github %} organization you are a member of, before you can start using it. -The first time you use {% data variables.copilot.copilot_coding_agent %} in Jira, you will need to connect it to your {% data variables.product.github %} account. +The first time you use {% data variables.copilot.copilot_cloud_agent %} in Jira, you will need to connect it to your {% data variables.product.github %} account. -Only users with **write** access to a repository can trigger {% data variables.copilot.copilot_coding_agent %} to work in that repository. +Only users with **write** access to a repository can trigger {% data variables.copilot.copilot_cloud_agent %} to work in that repository. -You can trigger {% data variables.copilot.copilot_coding_agent %} in three ways: +You can trigger {% data variables.copilot.copilot_cloud_agent %} in three ways: * **Assign** {% data variables.product.prodname_copilot %} to a work item using the Assignee field. * **Mention** `@{% data variables.product.prodname_copilot %}` in a comment on a work item. * **Add {% data variables.product.prodname_copilot_short %} to a workflow transition** so it is triggered automatically when a work item moves to a specific status. See [Collaborate on work items with AI agents](https://support.atlassian.com/jira-software-cloud/docs/collaborate-on-work-items-with-ai-agents/#Add-an-agent-to-workflow-transitions) for setup instructions. -To change the model used by {% data variables.copilot.copilot_coding_agent %} for a specific task, include the model name in your instructions to {% data variables.product.prodname_copilot_short %}. For example, you can say `@{% data variables.product.prodname_copilot %} use Claude Sonnet 4.5 to create a new API endpoint for user authentication in octo-org/octorepo`. If you do not specify a model, {% data variables.copilot.copilot_coding_agent %} will use the default model for coding tasks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model). +To change the model used by {% data variables.copilot.copilot_cloud_agent %} for a specific task, include the model name in your instructions to {% data variables.product.prodname_copilot_short %}. For example, you can say `@{% data variables.product.prodname_copilot %} use Claude Sonnet 4.5 to create a new API endpoint for user authentication in octo-org/octorepo`. If you do not specify a model, {% data variables.copilot.copilot_cloud_agent %} will use the default model for coding tasks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model). > [!NOTE] > When you assign {% data variables.product.prodname_copilot_short %} to a Jira work item, the context the agent captures from Jira will be added to the pull request and **visible to everyone** if the repository is public. -### Example: Triggering {% data variables.copilot.copilot_coding_agent %} from a Jira work item +### Example: Triggering {% data variables.copilot.copilot_cloud_agent %} from a Jira work item -1. In Jira, open or create a work item that contains clear requirements you want to delegate to {% data variables.copilot.copilot_coding_agent %}. +1. In Jira, open or create a work item that contains clear requirements you want to delegate to {% data variables.copilot.copilot_cloud_agent %}. 1. To specify a repository you want {% data variables.product.prodname_copilot_short %} to work in, mention it in the work item description or in a comment. 1. Assign `{% data variables.product.prodname_copilot %}` to the work item, or mention `@{% data variables.product.prodname_copilot %}` in a comment. For example: @@ -105,34 +106,34 @@ To change the model used by {% data variables.copilot.copilot_coding_agent %} fo ``` 1. If you have not previously connected the {% data variables.product.github %} application in Jira to your {% data variables.product.github %} account, follow the prompts to authorize the application for both {% data variables.product.github %} and Atlassian. -1. Once {% data variables.copilot.copilot_coding_agent %} has started working on the pull request, a comment will appear in the Jira work item. The user who initiated the agent session can view progress updates for the agent. +1. Once {% data variables.copilot.copilot_cloud_agent %} has started working on the pull request, a comment will appear in the Jira work item. The user who initiated the agent session can view progress updates for the agent. 1. You can follow up with further instructions for {% data variables.product.prodname_copilot_short %} in a work item: * Mention `@{% data variables.product.prodname_copilot %}` in a comment. * Use the **Continue in Chat** button under the **Agents** heading to chat directly with {% data variables.product.prodname_copilot_short %}. > [!TIP] -> If you have not received confirmation of triggering {% data variables.copilot.copilot_coding_agent %} after 1 minute, refresh the Jira work item page. +> If you have not received confirmation of triggering {% data variables.copilot.copilot_cloud_agent %} after 1 minute, refresh the Jira work item page. ## Usage costs -{% data variables.copilot.copilot_coding_agent %} uses {% data variables.product.prodname_actions %} minutes and {% data variables.product.prodname_copilot_short %} premium requests. +{% data variables.copilot.copilot_cloud_agent %} uses {% data variables.product.prodname_actions %} minutes and {% data variables.product.prodname_copilot_short %} premium requests. -Within your monthly usage allowance for {% data variables.product.prodname_actions %} and premium requests, you can ask {% data variables.copilot.copilot_coding_agent %} to work on coding tasks without incurring any additional costs. +Within your monthly usage allowance for {% data variables.product.prodname_actions %} and premium requests, you can ask {% data variables.copilot.copilot_cloud_agent %} to work on coding tasks without incurring any additional costs. -For more information, see [AUTOTITLE](/billing/concepts/product-billing/github-copilot-premium-requests#usage-by-copilot-coding-agent). +For more information, see [AUTOTITLE](/billing/concepts/product-billing/github-copilot-premium-requests#usage-by-copilot-cloud-agent). ## Troubleshooting If you run into problems, try the following solutions. -### You can't see the {% data variables.copilot.copilot_coding_agent %} and it is not possible to assign it to a Jira work item +### You can't see the {% data variables.copilot.copilot_cloud_agent %} and it is not possible to assign it to a Jira work item In Jira, check your Atlassian Administration settings for your organization are set as follows. 1. Jira is an AI-enabled app, see [Activate AI for apps](https://support.atlassian.com/organization-administration/docs/activate-atlassian-intelligence-for-products) in the Atlassian documentation. 1. Beta AI features are enabled, see [Control access to beta AI features](https://support.atlassian.com/organization-administration/docs/control-access-to-beta-ai-features/) in the Atlassian documentation. -### You can see the {% data variables.copilot.copilot_coding_agent %} but it is not possible to assign it to a Jira work item +### You can see the {% data variables.copilot.copilot_cloud_agent %} but it is not possible to assign it to a Jira work item Check that you have connected your personal account on {% data variables.product.github %} to the {% data variables.product.prodname_copilot %} for Jira app. @@ -142,17 +143,17 @@ Check that you have connected your personal account on {% data variables.product ### When chatting with {% data variables.product.prodname_copilot %}, you are prompted to sign in -To sign in to {% data variables.product.prodname_copilot %} for Jira app, follow the steps above in [You can see the {% data variables.copilot.copilot_coding_agent %} but it is not possible to assign it to a Jira work item](#you-can-see-the-copilot-coding-agent-but-it-is-not-possible-to-assign-it-to-a-jira-work-item) +To sign in to {% data variables.product.prodname_copilot %} for Jira app, follow the steps above in [You can see the {% data variables.copilot.copilot_cloud_agent %} but it is not possible to assign it to a Jira work item](#you-can-see-the-copilot-cloud-agent-but-it-is-not-possible-to-assign-it-to-a-jira-work-item) ### {% data variables.product.prodname_copilot %} is not responding * Check {% data variables.product.github %}'s [Status page](https://githubstatus.com) for any active incidents. -* Verify that {% data variables.copilot.copilot_coding_agent %} has access to the repository by testing if you can assign {% data variables.product.prodname_copilot_short %} to an issue on {% data variables.product.github %}. See [AUTOTITLE](/copilot/concepts/agents/coding-agent/access-management). +* Verify that {% data variables.copilot.copilot_cloud_agent %} has access to the repository by testing if you can assign {% data variables.product.prodname_copilot_short %} to an issue on {% data variables.product.github %}. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management). * Verify that the {% data variables.product.prodname_copilot %} for Jira application has access to the repository. See [AUTOTITLE](/apps/using-github-apps/reviewing-and-modifying-installed-github-apps#modifying-repository-access). ## Further reading -* [AUTOTITLE](/copilot/concepts/coding-agent/coding-agent) -* [AUTOTITLE](/copilot/concepts/coding-agent/enable-coding-agent) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp#example-atlassian) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#example-atlassian) * [Collaborate on work items with AI agents](https://support.atlassian.com/jira-software-cloud/docs/collaborate-on-work-items-with-ai-agents/) in the Atlassian documentation diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-linear.md similarity index 71% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-linear.md index ab74916668fb..77c677b41e07 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-linear.md @@ -8,13 +8,15 @@ versions: contentType: how-tos category: - Integrate Copilot with your tools +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear --- > [!NOTE] > * This feature is currently in {% data variables.release-phases.public_preview %} and subject to change. -> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-coding-agent). +> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent). -The {% data variables.product.prodname_copilot_short %} integration in Linear allows you to invoke {% data variables.copilot.copilot_coding_agent %} without leaving your Linear workspace. From within a Linear issue you can initiate {% data variables.copilot.copilot_coding_agent_short %} sessions and open pull requests, using the context of your issue description and comments. +The {% data variables.product.prodname_copilot_short %} integration in Linear allows you to invoke {% data variables.copilot.copilot_cloud_agent %} without leaving your Linear workspace. From within a Linear issue you can initiate {% data variables.copilot.copilot_cloud_agent_short %} sessions and open pull requests, using the context of your issue description and comments. For information about additional {% data variables.product.prodname_copilot_short %} integrations, see [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations). @@ -37,16 +39,16 @@ The {% data variables.product.prodname_copilot_short %} app only needs to be ins ## Using the {% data variables.product.prodname_copilot_short %} app in Linear -The first time you use the {% data variables.product.prodname_copilot_short %} app in Linear, you will need to connect it to your {% data variables.product.github %} account. You will also need to specify a repository for {% data variables.copilot.copilot_coding_agent %} to use. Only users with **write** access to the specified repository can trigger {% data variables.copilot.copilot_coding_agent %} to work in that repository. Contributors to the issue without repository **write** access can help guide {% data variables.product.prodname_copilot_short %} by providing input to the issue conversation, which will be used as context when creating the pull request. +The first time you use the {% data variables.product.prodname_copilot_short %} app in Linear, you will need to connect it to your {% data variables.product.github %} account. You will also need to specify a repository for {% data variables.copilot.copilot_cloud_agent %} to use. Only users with **write** access to the specified repository can trigger {% data variables.copilot.copilot_cloud_agent %} to work in that repository. Contributors to the issue without repository **write** access can help guide {% data variables.product.prodname_copilot_short %} by providing input to the issue conversation, which will be used as context when creating the pull request. -1. In Linear, create an issue where you want to use {% data variables.copilot.copilot_coding_agent %}. +1. In Linear, create an issue where you want to use {% data variables.copilot.copilot_cloud_agent %}. 1. Click the **Assign** dropdown, then select **{% data variables.product.prodname_copilot %}**. -1. If you haven't yet specified a repository for {% data variables.copilot.copilot_coding_agent %} to use, you will be prompted to do so now. This is where {% data variables.copilot.copilot_coding_agent %} will open the pull request related to this issue. +1. If you haven't yet specified a repository for {% data variables.copilot.copilot_cloud_agent %} to use, you will be prompted to do so now. This is where {% data variables.copilot.copilot_cloud_agent %} will open the pull request related to this issue. 1. If this is your first time using the app, you will be prompted to sign in to your {% data variables.product.github %} account and authorize the app. Follow the prompts to complete the authorization. -1. In the "Links" section of your Linear issue, you will now see a linked "[WIP]" pull request created by {% data variables.copilot.copilot_coding_agent %}. Click the link to view the pull request on {% data variables.product.github %}. -1. Once {% data variables.copilot.copilot_coding_agent %} has finished working on the pull request, a notification will be added to the "Activity" section of your Linear issue. +1. In the "Links" section of your Linear issue, you will now see a linked "[WIP]" pull request created by {% data variables.copilot.copilot_cloud_agent %}. Click the link to view the pull request on {% data variables.product.github %}. +1. Once {% data variables.copilot.copilot_cloud_agent %} has finished working on the pull request, a notification will be added to the "Activity" section of your Linear issue. ## Further reading -* [AUTOTITLE](/copilot/concepts/coding-agent/coding-agent) -* [AUTOTITLE](/copilot/concepts/coding-agent/enable-coding-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack.md similarity index 66% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack.md index 9f841b6bd7d2..65ed86ec9ff5 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-slack.md @@ -8,15 +8,17 @@ versions: contentType: how-tos category: - Integrate Copilot with your tools +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack --- > [!NOTE] > * This feature is in {% data variables.release-phases.public_preview %} and subject to change. -> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-coding-agent) +> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent) ## Introduction -The {% data variables.copilot.copilot_coding_agent %} integration in Slack allows you to interact with {% data variables.copilot.copilot_coding_agent %} from your Slack workspace and is included in the {% data variables.product.prodname_github_app %} for Slack. From within a Slack thread or direct message, you can initiate {% data variables.copilot.copilot_coding_agent_short %} sessions using the context of your conversation. +The {% data variables.copilot.copilot_cloud_agent %} integration in Slack allows you to interact with {% data variables.copilot.copilot_cloud_agent %} from your Slack workspace and is included in the {% data variables.product.prodname_github_app %} for Slack. From within a Slack thread or direct message, you can initiate {% data variables.copilot.copilot_cloud_agent_short %} sessions using the context of your conversation. For information about additional {% data variables.product.prodname_copilot_short %} integrations, see [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations). @@ -25,7 +27,7 @@ For information about additional {% data variables.product.prodname_copilot_shor When you @mention {% data variables.product.prodname_copilot_short %} in Slack, consider the following. * {% data variables.product.prodname_copilot_short %} may perform write actions on your behalf, such as creating pull requests or issues, in addition to answering questions. {% data variables.product.prodname_copilot_short %} uses the permissions of your linked {% data variables.product.github %} account for any actions it takes. -* {% data variables.copilot.copilot_coding_agent %} will capture the entire thread as context for your request, understanding and implementing solutions based on the discussion. This context is stored in the pull request. If you want to limit the context, you can send a direct message to the {% data variables.product.prodname_github_app %} for Slack instead. +* {% data variables.copilot.copilot_cloud_agent %} will capture the entire thread as context for your request, understanding and implementing solutions based on the discussion. This context is stored in the pull request. If you want to limit the context, you can send a direct message to the {% data variables.product.prodname_github_app %} for Slack instead. ## Prerequisites @@ -35,10 +37,10 @@ When you @mention {% data variables.product.prodname_copilot_short %} in Slack, ## Connecting the {% data variables.product.prodname_github_app %} to your {% data variables.product.github %} account -The first time you use the {% data variables.product.prodname_github_app %} in Slack, the app will prompt you to connect it to your {% data variables.product.github %} account and set a default repository. The default repository is where pull requests created by {% data variables.copilot.copilot_coding_agent %} sessions will be opened. +The first time you use the {% data variables.product.prodname_github_app %} in Slack, the app will prompt you to connect it to your {% data variables.product.github %} account and set a default repository. The default repository is where pull requests created by {% data variables.copilot.copilot_cloud_agent %} sessions will be opened. 1. In Slack, open a direct message with the {% data variables.product.prodname_github_app %} or mention {% data variables.product.prodname_copilot_short %} in a thread by typing `@{% data variables.product.prodname_copilot %}`. -1. Send a prompt to {% data variables.copilot.copilot_coding_agent %}. This can be a request to perform a task, or simply `login`. +1. Send a prompt to {% data variables.copilot.copilot_cloud_agent %}. This can be a request to perform a task, or simply `login`. 1. If asked to connect your {% data variables.product.github %} account, follow the instructions in {% data variables.product.prodname_copilot_short %}'s reply and authorize the app to access your {% data variables.product.github %} account. 1. In the Slack message thread, click **Configure settings** to set a default repository for pull requests. You can change this repository later using the `settings` command. 1. In the "Settings" dialog, type the name of a repository where you'll be using the cloud agent, then click **Save changes**. @@ -47,18 +49,18 @@ The first time you use the {% data variables.product.prodname_github_app %} in S You can send the {% data variables.product.prodname_github_app %} direct messages or mention it in a thread. The bot will respond to your messages and perform tasks based on your requests. -You must have write access to the default repository – or the repository specified in your prompt – in order to trigger {% data variables.copilot.copilot_coding_agent %} to work. If you do not have write access to the relevant repository, you can still help guide {% data variables.product.prodname_copilot_short %} by providing input in the Slack thread, which will be used as context when {% data variables.copilot.copilot_coding_agent %} makes changes in the pull request. +You must have write access to the default repository – or the repository specified in your prompt – in order to trigger {% data variables.copilot.copilot_cloud_agent %} to work. If you do not have write access to the relevant repository, you can still help guide {% data variables.product.prodname_copilot_short %} by providing input in the Slack thread, which will be used as context when {% data variables.copilot.copilot_cloud_agent %} makes changes in the pull request. -Users can invoke {% data variables.copilot.copilot_coding_agent %} on any repository where they have `write` access. For enterprise-owned repositories, administrators must install and configure the [Slack {% data variables.product.prodname_github_app %}](https://github.com/marketplace/slack-github?ref_product=copilot&ref_type=engagement&ref_style=text&ref_plan=enterprise) and specify which repositories the Slack app can access. For more information about configuring {% data variables.product.prodname_github_apps %}, see [AUTOTITLE](/apps/using-github-apps/installing-a-github-app-from-github-marketplace-for-your-organizations). +Users can invoke {% data variables.copilot.copilot_cloud_agent %} on any repository where they have `write` access. For enterprise-owned repositories, administrators must install and configure the [Slack {% data variables.product.prodname_github_app %}](https://github.com/marketplace/slack-github?ref_product=copilot&ref_type=engagement&ref_style=text&ref_plan=enterprise) and specify which repositories the Slack app can access. For more information about configuring {% data variables.product.prodname_github_apps %}, see [AUTOTITLE](/apps/using-github-apps/installing-a-github-app-from-github-marketplace-for-your-organizations). 1. In Slack, open a direct message with the {% data variables.product.prodname_github_app %} or mention the app in a thread by typing `@{% data variables.product.prodname_copilot %}`. 1. Type your prompt, then send it. Optionally, you can specify a repository or branch using the following syntax: `@{% data variables.product.github %} Add "Hello World" to the README in repo=REPO_OWNER/REPO_NAME branch=BRANCH_NAME` - > [!NOTE] The repo parameter tells {% data variables.copilot.copilot_coding_agent %} which repository to use for the request, and the branch parameter specifies an existing branch of the repository that should be used as the base branch for a pull request. By default, {% data variables.product.prodname_copilot_short %} uses your configured default repository and the repository’s default branch. + > [!NOTE] The repo parameter tells {% data variables.copilot.copilot_cloud_agent %} which repository to use for the request, and the branch parameter specifies an existing branch of the repository that should be used as the base branch for a pull request. By default, {% data variables.product.prodname_copilot_short %} uses your configured default repository and the repository’s default branch. -1. {% data variables.copilot.copilot_coding_agent %} will initiate a {% data variables.copilot.copilot_coding_agent_short %} session and, once the {% data variables.copilot.copilot_coding_agent_short %} has finished, respond with a summary of the changes it plans to make and a link to the pull request it has created in the default repository. +1. {% data variables.copilot.copilot_cloud_agent %} will initiate a {% data variables.copilot.copilot_cloud_agent_short %} session and, once the {% data variables.copilot.copilot_cloud_agent_short %} has finished, respond with a summary of the changes it plans to make and a link to the pull request it has created in the default repository. ### Creating an issue with {% data variables.product.prodname_copilot_short %} @@ -94,4 +96,4 @@ You can ask {% data variables.product.prodname_copilot_short %} to draft {% data ## Further reading -* [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent) - Learn more about {% data variables.copilot.copilot_coding_agent %} and how it can support you. +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) - Learn more about {% data variables.copilot.copilot_cloud_agent %} and how it can support you. diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams.md similarity index 73% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams.md index 2037099d317c..a506dd84ae14 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/integrate-cloud-agent-with-teams.md @@ -8,13 +8,15 @@ versions: contentType: how-tos category: - Integrate Copilot with your tools +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-teams --- > [!NOTE] > * This feature is currently in {% data variables.release-phases.public_preview %} and subject to change. -> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-coding-agent). +> * {% data variables.product.prodname_copilot %} uses AI. Check for mistakes. See [AUTOTITLE](/copilot/responsible-use/copilot-cloud-agent). -The {% data variables.product.github %} integration in Microsoft Teams allows you to interact with {% data variables.copilot.copilot_coding_agent %} all from within your Teams channels. From within a Teams thread you can initiate {% data variables.copilot.copilot_coding_agent_short %} sessions and open pull requests, using the context of your conversation. +The {% data variables.product.github %} integration in Microsoft Teams allows you to interact with {% data variables.copilot.copilot_cloud_agent %} all from within your Teams channels. From within a Teams thread you can initiate {% data variables.copilot.copilot_cloud_agent_short %} sessions and open pull requests, using the context of your conversation. For information about additional {% data variables.product.prodname_copilot_short %} integrations, see [AUTOTITLE](/copilot/concepts/tools/about-copilot-integrations). @@ -36,7 +38,7 @@ The {% data variables.product.github %} app only needs to be installed once in a ## Connecting the {% data variables.product.github %} app to your {% data variables.product.github %} account -The first time you use the {% data variables.product.github %} app in Teams, you need to connect it to your {% data variables.product.github %} account and set a default repository. The default repository provides the context that {% data variables.product.prodname_copilot_short %} uses when responding to prompts, and it’s also where pull requests created by {% data variables.copilot.copilot_coding_agent %} sessions will be opened unless you specify a repository in your prompt. +The first time you use the {% data variables.product.github %} app in Teams, you need to connect it to your {% data variables.product.github %} account and set a default repository. The default repository provides the context that {% data variables.product.prodname_copilot_short %} uses when responding to prompts, and it’s also where pull requests created by {% data variables.copilot.copilot_cloud_agent %} sessions will be opened unless you specify a repository in your prompt. To get started, mention `@{% data variables.product.github %} ` in any Teams thread. The app will guide you through signing in and setting a default repository. Or you can connect your {% data variables.product.github %} account and set the default repository manually by following these steps: @@ -48,7 +50,7 @@ To get started, mention `@{% data variables.product.github %} ` in an ## Using the {% data variables.product.prodname_copilot_short %} app in Teams -You can interact with the {% data variables.product.github %} app in Teams by mentioning it in a thread. The agent will respond to your messages and perform tasks based on your requests. Only users with **write** access to the default repository—or the repository specified in their prompt—can trigger {% data variables.copilot.copilot_coding_agent %} to work. Contributors to the thread without **write** access can help guide {% data variables.product.prodname_copilot_short %} by providing input to the conversation, which will be used as context when making changes in the pull request. +You can interact with the {% data variables.product.github %} app in Teams by mentioning it in a thread. The agent will respond to your messages and perform tasks based on your requests. Only users with **write** access to the default repository—or the repository specified in their prompt—can trigger {% data variables.copilot.copilot_cloud_agent %} to work. Contributors to the thread without **write** access can help guide {% data variables.product.prodname_copilot_short %} by providing input to the conversation, which will be used as context when making changes in the pull request. 1. In Teams, mention the app in a thread by typing @{% data variables.product.github %}. 1. Type your message or request, then send it. Optionally, you can specify a repository or branch using the following syntax: @@ -57,13 +59,13 @@ You can interact with the {% data variables.product.github %} app in Teams by me @GitHub Add "Hello World" to the README in repo=REPO_OWNER/REPO_NAME branch=BRANCH_NAME ``` - The `repo` parameter tells {% data variables.copilot.copilot_coding_agent %} which repository to use for the request, and the `branch` parameter specifies an existing branch of the repository that should be used as the base branch for a pull request. By default, {% data variables.product.prodname_copilot_short %} uses your configured default repository and the repository’s default branch. + The `repo` parameter tells {% data variables.copilot.copilot_cloud_agent %} which repository to use for the request, and the `branch` parameter specifies an existing branch of the repository that should be used as the base branch for a pull request. By default, {% data variables.product.prodname_copilot_short %} uses your configured default repository and the repository’s default branch. - {% data variables.product.prodname_copilot_short %} will initiate a {% data variables.copilot.copilot_coding_agent_short %} session and respond with a summary of the changes it plans to make, including a link to the pull request it has created in the repository. + {% data variables.product.prodname_copilot_short %} will initiate a {% data variables.copilot.copilot_cloud_agent_short %} session and respond with a summary of the changes it plans to make, including a link to the pull request it has created in the repository. -You can continue to iterate on the pull request in the same Teams thread. Mention @{% data variables.product.github %} with your suggested change, and the {% data variables.copilot.copilot_coding_agent %} will use all of the messages in the thread since the previous mention to iterate on the existing pull request. +You can continue to iterate on the pull request in the same Teams thread. Mention @{% data variables.product.github %} with your suggested change, and the {% data variables.copilot.copilot_cloud_agent %} will use all of the messages in the thread since the previous mention to iterate on the existing pull request. ## Further reading -* [AUTOTITLE](/copilot/concepts/coding-agent/coding-agent) -* [AUTOTITLE](/copilot/concepts/coding-agent/enable-coding-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/make-changes-to-an-existing-pr.md similarity index 71% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/make-changes-to-an-existing-pr.md index 7e539e09041b..05aaf8eb8891 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/make-changes-to-an-existing-pr.md @@ -3,16 +3,18 @@ title: Asking GitHub Copilot to make changes to an existing pull request shortTitle: Update existing PR allowTitleToDifferFromFilename: true intro: 'You can ask {% data variables.product.prodname_copilot_short %} to make changes to an existing pull request by mentioning `@copilot`.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: how-tos category: - Author and optimize with Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/make-changes-to-an-existing-pr --- > [!NOTE] -> For an overview of {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an overview of {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Introduction @@ -37,10 +39,10 @@ You can ask {% data variables.product.prodname_copilot_short %} to resolve merge If you prefer not to use this default behavior, you can ask {% data variables.product.prodname_copilot_short %} to create a new branch and a new pull request targeting your branch instead. Once the agent finishes work, it will request a review from you. -{% data reusables.copilot.coding-agent.monitoring-progress-heading %} +{% data reusables.copilot.cloud-agent.monitoring-progress-heading %} ## Further reading -* [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent) -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/troubleshooting-copilot-coding-agent#copilot-cant-create-a-pull-request-from-copilot-chat) +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent#copilot-cant-create-a-pull-request-from-copilot-chat) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/provide-visual-inputs.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/provide-visual-inputs.md similarity index 63% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/provide-visual-inputs.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/provide-visual-inputs.md index 426162b76be0..13dc462bca92 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/provide-visual-inputs.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/provide-visual-inputs.md @@ -2,20 +2,22 @@ title: Provide visual inputs to GitHub Copilot shortTitle: Provide visual inputs intro: 'You can attach images to issues or {% data variables.copilot.copilot_chat_short %} prompts to help {% data variables.product.prodname_copilot_short %} understand your task.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: how-tos category: - Author and optimize with Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/provide-visual-inputs --- > [!NOTE] -> For an overview of {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an overview of {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Introduction -{% data variables.copilot.copilot_coding_agent_short_cap_c %} can process images, such as a photo or screenshot of a sketch or design, as part of your task description. This is useful when you want to show {% data variables.product.prodname_copilot_short %} what you're trying to achieve visually, for example, when updating a UI or implementing a design. +{% data variables.copilot.copilot_cloud_agent_short_cap_c %} can process images, such as a photo or screenshot of a sketch or design, as part of your task description. This is useful when you want to show {% data variables.product.prodname_copilot_short %} what you're trying to achieve visually, for example, when updating a UI or implementing a design. You can provide images to {% data variables.product.prodname_copilot_short %} in two ways: @@ -28,7 +30,7 @@ You can provide images to {% data variables.product.prodname_copilot_short %} in 1. Create a new issue or open an existing issue. 1. In the issue body, drag and drop your image. 1. Add a clear description of what you want {% data variables.product.prodname_copilot_short %} to do with the image. For example, "Let's update the login form to match this mockup". -1. Assign the issue to {% data variables.product.prodname_copilot_short %}. For detailed instructions, see [Assign an issue to {% data variables.product.prodname_copilot_short %} on {% data variables.product.prodname_dotcom_the_website %}](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr#assigning-an-issue-to-copilot-on-githubcom). +1. Assign the issue to {% data variables.product.prodname_copilot_short %}. For detailed instructions, see [Assign an issue to {% data variables.product.prodname_copilot_short %} on {% data variables.product.prodname_dotcom_the_website %}](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr#assigning-an-issue-to-copilot-on-githubcom). {% data variables.product.prodname_copilot_short %} will analyze the image along with your description when working on the task. @@ -37,11 +39,11 @@ You can provide images to {% data variables.product.prodname_copilot_short %} in 1. Open {% data variables.copilot.copilot_chat_short %}. 1. Attach your image to the chat prompt, and use `/task` to describe what you want {% data variables.product.prodname_copilot_short %} to do. For example, "Update the notification badge to match this mockup". - For detailed instructions, see [Asking {% data variables.product.prodname_copilot_short %} to create a pull request from {% data variables.copilot.copilot_chat_short %} in {% data variables.product.prodname_dotcom_the_website %}](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr#asking-copilot-to-create-a-pull-request-from-copilot-chat-in-githubcom). + For detailed instructions, see [Asking {% data variables.product.prodname_copilot_short %} to create a pull request from {% data variables.copilot.copilot_chat_short %} in {% data variables.product.prodname_dotcom_the_website %}](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr#asking-copilot-to-create-a-pull-request-from-copilot-chat-in-githubcom). 1. {% data variables.product.prodname_copilot_short %} will start work using the image as context for the task. ## Further reading -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr) -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate.md similarity index 63% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate.md index 5a3e1450640a..ee12c65f4927 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/research-plan-iterate.md @@ -2,12 +2,14 @@ title: Research, plan, and iterate on code changes with Copilot cloud agent shortTitle: Research, plan, iterate intro: "Perform deep research on a repository, create an implementation plan, and make iterative code changes on a branch, then create a pull request when you're ready." -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot contentType: how-tos category: - Author and optimize with Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/research-plan-iterate --- ## Introduction @@ -18,13 +20,13 @@ You can use {% data variables.copilot.copilot_cloud_agent_tmp %} to: * **Plan** and refine an approach before {% data variables.product.prodname_copilot_short %} makes changes. * **Iterate** on code changes on a branch, review a diff, and get {% data variables.product.prodname_copilot_short %} to only **create a pull request when you're ready**. -{% data variables.copilot.copilot_coding_agent %} *won't* automatically open a pull request as part of the session. If you *do* want {% data variables.product.prodname_copilot_short %} to open a pull request for your task right away, you can explicitly ask for one in your prompt. For example, by stating **"Create a pull request to ..."**. +{% data variables.copilot.copilot_cloud_agent %} *won't* automatically open a pull request as part of the session. If you *do* want {% data variables.product.prodname_copilot_short %} to open a pull request for your task right away, you can explicitly ask for one in your prompt. For example, by stating **"Create a pull request to ..."**. -> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_coding_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. +> [!NOTE] Deep research, planning, and iterating on code changes before creating a pull request are only available with {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}. {% data variables.copilot.copilot_cloud_agent_short_cap_c %} integrations (such as Azure Boards, JIRA, Linear, Slack, or Teams) only support creating a pull request directly. ## Performing deep research -You can ask {% data variables.copilot.copilot_coding_agent %} questions about a repository to understand how it works, identify where to make a change, or confirm assumptions before planning and implementation. {% data variables.product.prodname_copilot_short %} starts a **deep research** session to examine the repository and return a grounded answer. +You can ask {% data variables.copilot.copilot_cloud_agent %} questions about a repository to understand how it works, identify where to make a change, or confirm assumptions before planning and implementation. {% data variables.product.prodname_copilot_short %} starts a **deep research** session to examine the repository and return a grounded answer. {% data reusables.copilot.open-agents-panel-or-page %} 1. Ask a question about the repository. @@ -37,7 +39,7 @@ You can ask {% data variables.copilot.copilot_coding_agent %} questions about a ## Creating a plan -You can ask {% data variables.copilot.copilot_coding_agent %} to propose a plan before making changes, simply by prompting the agent. +You can ask {% data variables.copilot.copilot_cloud_agent %} to propose a plan before making changes, simply by prompting the agent. 1. Ask the agent to create a plan. @@ -60,6 +62,6 @@ After research and planning, you can make changes on a branch, review the diff, ## Further reading -* [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr) -* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents) \ No newline at end of file +* [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents) \ No newline at end of file diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs.md similarity index 76% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs.md index d5ae3a779c8d..d5d2fcecc195 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs.md @@ -2,10 +2,11 @@ title: Reviewing a pull request created by GitHub Copilot shortTitle: Review Copilot PRs intro: 'After {% data variables.product.prodname_copilot_short %} creates a pull request, you should review it. You can mention `@copilot` to ask {% data variables.product.prodname_copilot_short %} to make changes, or push changes yourself.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/reviewing-a-pull-request-created-by-copilot - /copilot/using-github-copilot/coding-agent/reviewing-a-pull-request-created-by-copilot - /copilot/how-tos/agents/copilot-coding-agent/reviewing-a-pull-request-created-by-copilot @@ -17,7 +18,7 @@ category: --- > [!NOTE] -> For an introduction to {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +> For an introduction to {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). ## Reviewing {% data variables.product.prodname_copilot_short %}'s changes @@ -33,22 +34,22 @@ Optionally, when submitting a pull request comment (not a review or review comme > [!TIP] > We recommend you batch your review comments instead of submitting them individually. -{% data reusables.copilot.coding-agent.write-access-required %} +{% data reusables.copilot.cloud-agent.write-access-required %} When {% data variables.product.prodname_copilot_short %} starts a new agent session in response to your comment, an eyes emoji (đź‘€) is added as a reaction to the comment, and a "Copilot has started work" event is added to the pull request timeline. -![Screenshot of a pull request timeline with a review comment with the eyes reaction and a "Copilot started work" timeline event.](/assets/images/help/copilot/coding-agent/comment-to-agent-on-pr.png) +![Screenshot of a pull request timeline with a review comment with the eyes reaction and a "Copilot started work" timeline event.](/assets/images/help/copilot/cloud-agent/comment-to-agent-on-pr.png) When {% data variables.product.prodname_copilot_short %} starts a new session on the same pull request, it remembers context from the previous session, allowing it to work faster and more reliably. > [!NOTE] -> If the pull request was created by a {% data variables.copilot.copilot_custom_agent_short %}, when you mention `@copilot` in pull request comments, the same {% data variables.copilot.copilot_custom_agent_short %} will be used to make further changes. This ensures consistency in the agent's specialized configuration throughout the pull request lifecycle. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +> If the pull request was created by a {% data variables.copilot.copilot_custom_agent_short %}, when you mention `@copilot` in pull request comments, the same {% data variables.copilot.copilot_custom_agent_short %} will be used to make further changes. This ensures consistency in the agent's specialized configuration throughout the pull request lifecycle. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). -For more information, see the section "Use comments to iterate on a pull request" in [AUTOTITLE](/copilot/using-github-copilot/coding-agent/best-practices-for-using-copilot-to-work-on-tasks#using-comments-to-iterate-on-a-pull-request). +For more information, see the section "Use comments to iterate on a pull request" in [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results#using-comments-to-iterate-on-a-pull-request). ## Managing {% data variables.product.prodname_actions %} workflow runs -{% data reusables.copilot.coding-agent-workflow-run-approval-default %} For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/configuring-agent-settings). +{% data reusables.copilot.cloud-agent-workflow-run-approval-default %} For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/configuring-agent-settings). ## Giving feedback on {% data variables.product.prodname_copilot_short %}'s work @@ -59,6 +60,6 @@ You can provide feedback on {% data variables.product.prodname_copilot_short %}' ## Further reading -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/using-the-copilot-coding-agent-logs) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/troubleshooting-copilot-coding-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents.md similarity index 95% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents.md index f3a77308301d..e5b892897fb9 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/test-custom-agents.md @@ -8,6 +8,8 @@ contentType: how-tos category: - Configure Copilot - Manage Copilot for a team +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents --- {% data reusables.copilot.custom-agents-preview-note %} @@ -23,7 +25,7 @@ Before you can test a {% data variables.copilot.copilot_custom_agent_short %}, y ## 1. Create your test {% data variables.copilot.copilot_custom_agent_short %} 1. In your organization or enterprise's `.github-private` repository, create a new directory called `.github/agents`. Agents stored in this directory are only available to members of your organization or enterprise who have access to the `.github-private` repository, and can only be used when they start a task within that repository. -1. In your `.github/agents` directory, create the {% data variables.copilot.agent_profile %} for your test agent. You can create a net-new profile or duplicate an existing profile to test potential updates. For information on configuring an {% data variables.copilot.agent_profile %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents#configuring-an-agent-profile). +1. In your `.github/agents` directory, create the {% data variables.copilot.agent_profile %} for your test agent. You can create a net-new profile or duplicate an existing profile to test potential updates. For information on configuring an {% data variables.copilot.agent_profile %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents#configuring-an-agent-profile). 1. Merge your test {% data variables.copilot.agent_profile %} into the default branch of your repository. ## 2. Test your {% data variables.copilot.copilot_custom_agent_short %} diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions.md similarity index 86% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions.md index 8fe6de681752..fe0c3a19c59e 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions.md @@ -2,10 +2,11 @@ title: Tracking GitHub Copilot's sessions shortTitle: Track Copilot sessions intro: 'You can use the agents panel or page, {% data variables.product.prodname_vscode %}, JetBrains IDEs, Eclipse, the {% data variables.product.prodname_cli %}, Raycast and session logs to track {% data variables.product.prodname_copilot_short %}''s progress and understand its approach.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/using-the-copilot-coding-agent-logs - /copilot/using-github-copilot/coding-agent/using-the-copilot-coding-agent-logs - /copilot/how-tos/agents/copilot-coding-agent/using-the-copilot-coding-agent-logs @@ -19,7 +20,7 @@ category: ## Introduction -After you give {% data variables.product.prodname_copilot_short %} a task, it works autonomously in the background to complete it. See [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). +After you give {% data variables.product.prodname_copilot_short %} a task, it works autonomously in the background to complete it. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent). The agents panel, [agents tab](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text), the {% data variables.product.prodname_cli %}, and {% data variables.product.prodname_copilot %} extension for Raycast provide an overview of your agent sessions across repositories. You can use them to kick off new tasks and track {% data variables.product.prodname_copilot_short %}'s progress. @@ -35,7 +36,7 @@ To open the [agents tab](https://github.com/copilot/agents?ref_product=copilot&r Each session displays its status. Click on a session to open the session log and overview, where you can monitor the agent's progress, token usage, session count, and session length. -You can start new agent sessions from the tab. See [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/asking-copilot-to-create-a-pull-request). +You can start new agent sessions from the tab. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). ## Tracking agent sessions from the {% data variables.product.prodname_cli %} @@ -52,9 +53,9 @@ To see all of the available options, run `gh agent-task list --help` or `gh agen ## Tracking agent sessions from Raycast -{% data reusables.copilot.coding-agent.raycast-intro %} +{% data reusables.copilot.cloud-agent.raycast-intro %} -{% data reusables.copilot.coding-agent.raycast-setup %} +{% data reusables.copilot.cloud-agent.raycast-setup %} 1. Open Raycast, search for "{% data variables.product.prodname_copilot_short %}," find the **View Tasks** command, then press Enter. 1. Click **Sign in with {% data variables.product.github %}**, then complete the authentication flow. Raycast will re-open. 1. You'll see a list of your tasks. Select a task, then use the following keyboard shortcuts: @@ -65,7 +66,7 @@ To see all of the available options, run `gh agent-task list --help` or `gh agen > [!NOTE] > If you are unable to see some tasks in Raycast, the organization that owns the repository may have enabled {% data variables.product.prodname_oauth_app %} access restrictions. To learn how to request approval for the "{% data variables.product.prodname_copilot %} for Raycast" {% data variables.product.prodname_oauth_app %}, see [AUTOTITLE](/account-and-profile/how-tos/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/requesting-organization-approval-for-oauth-apps). -You can also start new agent sessions from Raycast. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr#asking-copilot-to-create-a-pull-request-from-raycast). +You can also start new agent sessions from Raycast. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr#asking-copilot-to-create-a-pull-request-from-raycast). ## Tracking sessions from {% data variables.product.prodname_vscode %} @@ -77,7 +78,7 @@ For each session listed, you can see its status at a glance, or click on it to n To view the session logs, click on the pull request in the list, then click **View Session**. -You can also start new agent sessions from {% data variables.product.prodname_vscode %}. See [AUTOTITLE](/copilot/how-tos/agents/copilot-coding-agent/asking-copilot-to-create-a-pull-request#asking-copilot-to-create-a-pull-request-from-copilot-chat-in-visual-studio-code). +You can also start new agent sessions from {% data variables.product.prodname_vscode %}. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr#asking-copilot-to-create-a-pull-request-from-copilot-chat-in-visual-studio-code). To directly open agent sessions in {% data variables.product.prodname_vscode_shortname %}, click the **Open in {% data variables.product.prodname_vscode_shortname %}** option on the agents tab. @@ -87,7 +88,7 @@ To directly open agent sessions in {% data variables.product.prodname_vscode_sho ## Tracking sessions from JetBrains IDEs > [!NOTE] -> {% data variables.copilot.copilot_coding_agent %} in JetBrains IDEs is in {% data variables.release-phases.public_preview %}, and subject to change. +> {% data variables.copilot.copilot_cloud_agent %} in JetBrains IDEs is in {% data variables.release-phases.public_preview %}, and subject to change. You can see a list of your running and past agent sessions for a project in JetBrains IDEs with the {% data variables.copilot.copilot_chat %} extension. See [AUTOTITLE](/copilot/how-tos/set-up/install-copilot-extension?tool=jetbrains). @@ -100,7 +101,7 @@ For each session listed, you can see its status at a glance. Click **Open in Bro ## Tracking sessions from Eclipse > [!NOTE] -> {% data variables.copilot.copilot_coding_agent %} in Eclipse is in {% data variables.release-phases.public_preview %}, and subject to change. +> {% data variables.copilot.copilot_cloud_agent %} in Eclipse is in {% data variables.release-phases.public_preview %}, and subject to change. You can see a list of your running and past agent sessions for a project in Eclipse with the {% data variables.copilot.copilot_chat %} extension. See [AUTOTITLE](/copilot/how-tos/set-up/install-copilot-extension?tool=eclipse). @@ -122,15 +123,15 @@ You can see a list of your running and past pull requests generated by agents in For example, to show only merged tasks, tap **Open** and then, in the dropdown, tap **Merged**. - Screenshot of the status dropdown list with a check mark against 'Open'. + Screenshot of the status dropdown list with a check mark against 'Open'. ## Tracing commits to session logs -Commits from {% data variables.copilot.copilot_coding_agent %} have the following characteristics: +Commits from {% data variables.copilot.copilot_cloud_agent %} have the following characteristics: * Every commit is authored by {% data variables.product.prodname_copilot_short %}, with the human who started the task marked as the co-author. * Each commit message includes a link to the session logs for that commit, so you can understand why {% data variables.product.prodname_copilot_short %} made a change during code review or trace it later for auditing purposes. -* Commits from {% data variables.copilot.copilot_coding_agent %} are signed and appear as "Verified" on {% data variables.product.github %}. +* Commits from {% data variables.copilot.copilot_cloud_agent %} are signed and appear as "Verified" on {% data variables.product.github %}. ## Using the session logs to understand {% data variables.product.prodname_copilot_short %}'s approach @@ -165,7 +166,7 @@ Follow these steps to steer {% data variables.product.prodname_copilot_short %}: You can stop {% data variables.product.prodname_copilot_short %} from continuing to work on a task by clicking **Stop session** in the session log viewer. -![Screenshot of the log viewer with the 'Stop session' button highlighted.](/assets/images/help/copilot/coding-agent/log-stop-session.png) +![Screenshot of the log viewer with the 'Stop session' button highlighted.](/assets/images/help/copilot/cloud-agent/log-stop-session.png) Reasons you might want to stop a session include: @@ -174,5 +175,5 @@ Reasons you might want to stop a session include: ## Further reading -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/using-github-copilot/coding-agent/troubleshooting-copilot-coding-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/troubleshoot-coding-agent.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent.md similarity index 69% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/troubleshoot-coding-agent.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent.md index d8cded321709..239e3dd24c58 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/troubleshoot-coding-agent.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/troubleshoot-cloud-agent.md @@ -3,10 +3,11 @@ title: Troubleshooting GitHub Copilot cloud agent shortTitle: Troubleshoot cloud agent allowTitleToDifferFromFilename: true intro: 'Learn how to resolve problems that may occur when you assign tasks to {% data variables.product.prodname_copilot_short %}.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' +product: '{% data reusables.gated-features.copilot-cloud-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' versions: feature: copilot redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/troubleshoot-coding-agent - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-tasks/troubleshooting-copilot-coding-agent - /copilot/using-github-copilot/using-copilot-coding-agent-to-work-on-issues/troubleshooting-copilot-coding-agent - /early-access/copilot/coding-agent/troubleshooting-copilot-coding-agent @@ -26,35 +27,35 @@ You can only assign issues to {% data variables.product.prodname_copilot_short % If you do not already have a subscription for one of these plans, click this button for more information:
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 aria-label="link-external" %} -If you _do_ have {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %}, or {% data variables.copilot.copilot_enterprise %}, check that {% data variables.copilot.copilot_coding_agent %} {% ifversion ghec %}is enabled and{% endif %} has not been manually disabled for the repository: +If you _do_ have {% data variables.copilot.copilot_pro %}, {% data variables.copilot.copilot_pro_plus %}, {% data variables.copilot.copilot_for_business %}, or {% data variables.copilot.copilot_enterprise %}, check that {% data variables.copilot.copilot_cloud_agent %} {% ifversion ghec %}is enabled and{% endif %} has not been manually disabled for the repository: {% ifversion ghec %} -* If you are on the {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise_short %} plan, your ability to use {% data variables.copilot.copilot_coding_agent %} is controlled by your enterprise and/or organization administrator. See [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-copilot-for-your-enterprise/adding-copilot-coding-agent-to-enterprise). +* If you are on the {% data variables.copilot.copilot_for_business %} or {% data variables.copilot.copilot_enterprise_short %} plan, your ability to use {% data variables.copilot.copilot_cloud_agent %} is controlled by your enterprise and/or organization administrator. See [AUTOTITLE](/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/manage-copilot-cloud-agent). {% endif %} -* For organization-owned repositories, the availability of {% data variables.copilot.copilot_coding_agent %} in the repository is managed by the organization and/or enterprise administrators. See [AUTOTITLE](/enterprise-cloud@latest/copilot/managing-copilot/managing-github-copilot-in-your-organization/adding-copilot-coding-agent-to-organization). +* For organization-owned repositories, the availability of {% data variables.copilot.copilot_cloud_agent %} in the repository is managed by the organization and/or enterprise administrators. See [AUTOTITLE](/enterprise-cloud@latest/copilot/how-tos/administer-copilot/manage-for-organization/add-copilot-cloud-agent). -* For personal repositories, the availability of {% data variables.copilot.copilot_coding_agent %} in the repository is configured in your account settings. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-copilot-coding-agent). +* For personal repositories, the availability of {% data variables.copilot.copilot_cloud_agent %} in the repository is configured in your account settings. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-copilot-cloud-agent). > [!NOTE] -> You can check whether {% data variables.copilot.copilot_coding_agent %} has been enabled for you in the features page of your {% data variables.product.prodname_copilot_short %} settings: [github.com/settings/copilot/features](https://github.com/settings/copilot/features). +> You can check whether {% data variables.copilot.copilot_cloud_agent %} has been enabled for you in the features page of your {% data variables.product.prodname_copilot_short %} settings: [github.com/settings/copilot/features](https://github.com/settings/copilot/features). ## I have an {% data variables.product.prodname_emu %} account and {% data variables.product.prodname_copilot_short %} won't work in my personal repository -{% data reusables.copilot.coding-agent-emu-limitation %} +{% data reusables.copilot.cloud-agent-emu-limitation %} If you have an {% data variables.enterprise.prodname_managed_user %} and try to assign {% data variables.product.prodname_copilot_short %} to an issue in a personal repository, you may see an error message reporting that {% data variables.product.prodname_actions %} are not available for your repository. -To use {% data variables.copilot.copilot_coding_agent %}, you'll need to work with repositories owned by your organization instead of personal repositories. +To use {% data variables.copilot.copilot_cloud_agent %}, you'll need to work with repositories owned by your organization instead of personal repositories. ## {% data variables.product.prodname_copilot_short %} can't create a pull request from {% data variables.copilot.copilot_chat_short %} -If you asked {% data variables.product.prodname_copilot_short %} to create a pull request and it responds that it cannot directly create a pull request, check that {% data variables.copilot.copilot_coding_agent %} is available. +If you asked {% data variables.product.prodname_copilot_short %} to create a pull request and it responds that it cannot directly create a pull request, check that {% data variables.copilot.copilot_cloud_agent %} is available. > [!IMPORTANT] -> {% data reusables.copilot.coding-agent.use-chat-participant-in-vsc %} +> {% data reusables.copilot.cloud-agent.use-chat-participant-in-vsc %} ## I assigned an issue to {% data variables.product.prodname_copilot_short %}, but nothing is happening @@ -66,11 +67,11 @@ If there is a "{% data variables.product.prodname_copilot_short %} started work" ## {% data variables.product.prodname_copilot_short %} won't respond to my pull request comments -{% data reusables.copilot.coding-agent.write-access-required %} +{% data reusables.copilot.cloud-agent.write-access-required %} -If you do have write access, and you mention `@copilot` on a pull request that is assigned to {% data variables.product.prodname_copilot_short %}, the comment is passed to {% data variables.copilot.copilot_coding_agent %}. An eyes emoji (đź‘€) is added to your comment to indicate that {% data variables.copilot.copilot_coding_agent %} has seen your comment. Shortly after, a "{% data variables.product.prodname_copilot_short %} started work" event is added to the pull request timeline. +If you do have write access, and you mention `@copilot` on a pull request that is assigned to {% data variables.product.prodname_copilot_short %}, the comment is passed to {% data variables.copilot.copilot_cloud_agent %}. An eyes emoji (đź‘€) is added to your comment to indicate that {% data variables.copilot.copilot_cloud_agent %} has seen your comment. Shortly after, a "{% data variables.product.prodname_copilot_short %} started work" event is added to the pull request timeline. -If this doesn't happen, {% data variables.product.prodname_copilot_short %} may have been unassigned from the pull request, or you may not have write access. Note that {% data variables.product.prodname_copilot_short %} only responds to mentions in open pull requests. Once a pull request is merged or closed, {% data variables.copilot.copilot_coding_agent %} will not respond to new mentions or comments to better focus on active development work. +If this doesn't happen, {% data variables.product.prodname_copilot_short %} may have been unassigned from the pull request, or you may not have write access. Note that {% data variables.product.prodname_copilot_short %} only responds to mentions in open pull requests. Once a pull request is merged or closed, {% data variables.copilot.copilot_cloud_agent %} will not respond to new mentions or comments to better focus on active development work. ## Based on the agent session logs, {% data variables.product.prodname_copilot_short %} appears to be stuck @@ -84,13 +85,13 @@ If {% data variables.product.prodname_copilot_short %} got stuck while respondin {% data variables.product.prodname_actions %} workflows will not run automatically when {% data variables.product.prodname_copilot_short %} pushes changes to a pull request. -To allow {% data variables.product.prodname_actions %} workflows to run, click the **Approve and run workflows** button in the pull request's merge box. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/reviewing-a-pull-request-created-by-copilot). +To allow {% data variables.product.prodname_actions %} workflows to run, click the **Approve and run workflows** button in the pull request's merge box. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs). ## {% data variables.product.prodname_copilot_short %} is pushing changes which don't pass my CI checks While working on an issue, {% data variables.product.prodname_copilot_short %} has access to its own ephemeral development environment, powered by {% data variables.product.prodname_actions %}, where it can execute automated tests and linters to validate its work before it pushes. -It is most likely to do this if given clear instructions on what to do. The best way to do this is with a `.github/copilot-instructions.md` file. See [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices#adding-custom-instructions-to-your-repository). +It is most likely to do this if given clear instructions on what to do. The best way to do this is with a `.github/copilot-instructions.md` file. See [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results#adding-custom-instructions-to-your-repository). ## There is a warning from {% data variables.product.prodname_copilot %} about the firewall @@ -100,15 +101,15 @@ Limiting access to the internet helps to manage data exfiltration risks, where s If {% data variables.product.prodname_copilot_short %} tries to make a request which is blocked by the firewall, a warning is added to the pull request body (if {% data variables.product.prodname_copilot_short %} is responding to an issue assignment) or to a comment (if {% data variables.product.prodname_copilot_short %} is responding to a comment). The warning shows the blocked address and the command that tried to make the request. -![Screenshot of a warning from {% data variables.product.prodname_copilot_short %} about being blocked by the firewall.](/assets/images/help/copilot/coding-agent/firewall-warning.png) +![Screenshot of a warning from {% data variables.product.prodname_copilot_short %} about being blocked by the firewall.](/assets/images/help/copilot/cloud-agent/firewall-warning.png) -For more information, see [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent). +For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). ## {% data variables.product.prodname_copilot_short %} is not picking up attached screenshots -The maximum image size allowed by {% data variables.copilot.copilot_coding_agent %} is 3.00 MiB. Images larger than this will be removed from the request. +The maximum image size allowed by {% data variables.copilot.copilot_cloud_agent %} is 3.00 MiB. Images larger than this will be removed from the request. ## Further reading -* [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices) -* [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent) +* [AUTOTITLE](/copilot/tutorials/cloud-agent/get-the-best-results) +* [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks.md similarity index 64% rename from content/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks.md rename to content/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks.md index a3d92f6addc6..aa8e897d9c6b 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/use-hooks.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/use-hooks.md @@ -7,21 +7,23 @@ versions: contentType: how-tos category: - Configure Copilot +redirect_from: + - /copilot/how-tos/use-copilot-agents/coding-agent/use-hooks --- -{% data reusables.copilot.coding-agent.hooks-intro %} +{% data reusables.copilot.cloud-agent.hooks-intro %} ## Creating a hook in a repository on {% data variables.product.github %} -{% data reusables.copilot.coding-agent.create-hooks-instructions %} +{% data reusables.copilot.cloud-agent.create-hooks-instructions %} ## Troubleshooting -{% data reusables.copilot.coding-agent.troubleshoot-hooks %} +{% data reusables.copilot.cloud-agent.troubleshoot-hooks %} ## Further reading * For more information about configuring hooks, see [AUTOTITLE](/copilot/reference/hooks-configuration) -* For more information about {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-coding-agent) +* For more information about {% data variables.copilot.copilot_cloud_agent %}, see [AUTOTITLE](/copilot/concepts/agents/cloud-agent/about-cloud-agent) * For more information about {% data variables.copilot.copilot_cli %}, see [AUTOTITLE](/copilot/concepts/agents/about-copilot-cli) -* For information about customizing the agent environment, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment) +* For information about customizing the agent environment, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment) diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model.md b/content/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model.md deleted file mode 100644 index e91ded5b4abc..000000000000 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/changing-the-ai-model.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: Changing the AI model for GitHub Copilot cloud agent -shortTitle: Changing the AI model -allowTitleToDifferFromFilename: true -intro: 'In supported entrypoints, when starting a task with {% data variables.copilot.copilot_coding_agent %}, you can select the model used.' -product: '{% data reusables.gated-features.copilot-coding-agent %}
Sign up for {% data variables.product.prodname_copilot_short %} {% octicon "link-external" height:16 %}' -versions: - feature: copilot -contentType: how-tos -category: - - Author and optimize with Copilot ---- - -> [!NOTE] -> For an overview of {% data variables.copilot.copilot_coding_agent %}, see [AUTOTITLE](/copilot/concepts/about-copilot-coding-agent). - -## Introduction - -In supported entrypoints, you can select the model used by {% data variables.copilot.copilot_coding_agent %}. - -You may find that different models perform better, or provide more useful responses, depending on the type of tasks you give {% data variables.product.prodname_copilot_short %}. - -> [!NOTE] -> Model selection for {% data variables.copilot.copilot_coding_agent %} is only supported when assigning an issue to {% data variables.product.prodname_copilot_short %} on {% data variables.product.prodname_dotcom_the_website %}, when mentioning `@copilot` in a pull request comment on {% data variables.product.prodname_dotcom_the_website %}, or when starting a task from the agents tab, agents panel, {% data variables.product.prodname_mobile %} or the Raycast launcher. Where a model picker is not available, Auto will be used automatically. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). - -## Supported models - -The following options are currently available: - -* Auto -{% data reusables.copilot.copilot-coding-agent-auto-models %} -{% data reusables.copilot.copilot-coding-agent-non-auto-models %} - -{% data reusables.copilot.auto-model-option %} - diff --git a/content/copilot/how-tos/use-copilot-agents/copilot-memory.md b/content/copilot/how-tos/use-copilot-agents/copilot-memory.md index 0f70e7fd76b0..3e95891fb99a 100644 --- a/content/copilot/how-tos/use-copilot-agents/copilot-memory.md +++ b/content/copilot/how-tos/use-copilot-agents/copilot-memory.md @@ -13,7 +13,7 @@ category: > [!NOTE] > This feature is currently in {% data variables.release-phases.public_preview %} and is subject to change. -{% data variables.copilot.copilot_memory %} allows {% data variables.product.prodname_copilot_short %} to learn about your codebase, helping {% data variables.copilot.copilot_coding_agent %}, {% data variables.copilot.copilot_code-review_short %}, and {% data variables.copilot.copilot_cli_short %} to work more effectively in a repository. +{% data variables.copilot.copilot_memory %} allows {% data variables.product.prodname_copilot_short %} to learn about your codebase, helping {% data variables.copilot.copilot_cloud_agent %}, {% data variables.copilot.copilot_code-review_short %}, and {% data variables.copilot.copilot_cli_short %} to work more effectively in a repository. For more information, see [AUTOTITLE](/copilot/concepts/agents/copilot-memory). @@ -59,7 +59,7 @@ If the organization belongs to an enterprise, the ability for organization owner If you have an individual {% data variables.product.prodname_copilot_short %} subscription, from a {% data variables.copilot.copilot_pro_short %} or {% data variables.copilot.copilot_pro_plus_short %} plan, {% data variables.copilot.copilot_memory %} is enabled by default. You can disable or re-enable {% data variables.copilot.copilot_memory %} in your personal {% data variables.product.prodname_copilot_short %} settings on {% data variables.product.github %}. -When enabled, {% data variables.copilot.copilot_memory %} will be used in any repository in which you use {% data variables.copilot.copilot_coding_agent %}, {% data variables.copilot.copilot_code-review_short %}, or {% data variables.copilot.copilot_cli_short %}. +When enabled, {% data variables.copilot.copilot_memory %} will be used in any repository in which you use {% data variables.copilot.copilot_cloud_agent %}, {% data variables.copilot.copilot_code-review_short %}, or {% data variables.copilot.copilot_cli_short %}. {% data reusables.user-settings.copilot-settings %} 1. Under "Features", scroll down to the setting for **{% data variables.copilot.copilot_memory %}**. diff --git a/content/copilot/how-tos/use-copilot-agents/index.md b/content/copilot/how-tos/use-copilot-agents/index.md index c5b2bd2ac2ae..b7fbf1d6dc07 100644 --- a/content/copilot/how-tos/use-copilot-agents/index.md +++ b/content/copilot/how-tos/use-copilot-agents/index.md @@ -6,7 +6,7 @@ versions: feature: copilot children: - /manage-agents - - /coding-agent + - /cloud-agent - /request-a-code-review - /copilot-memory redirect_from: diff --git a/content/copilot/how-tos/use-copilot-agents/manage-agents.md b/content/copilot/how-tos/use-copilot-agents/manage-agents.md index 7e7496c5a745..c413fc7b688b 100644 --- a/content/copilot/how-tos/use-copilot-agents/manage-agents.md +++ b/content/copilot/how-tos/use-copilot-agents/manage-agents.md @@ -10,7 +10,7 @@ category: - Author and optimize with Copilot --- -{% data reusables.copilot.coding-agent.agent-management-intro %} +{% data reusables.copilot.cloud-agent.agent-management-intro %} ## 1. Select a repository and choose your agent @@ -34,7 +34,7 @@ category: {% data variables.product.prodname_copilot_short %} will start work on the task and begin pushing changes to a new pull request, where it will automatically add you as a reviewer. -For more information on ways to start new agent tasks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-a-pr). +For more information on ways to start new agent tasks, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-a-pr). ## 2. Monitor agent activity @@ -42,7 +42,7 @@ Once the agent starts working, it will continue to update the session log and ov Each session displays its status. Click on a session to open the session log, where you can monitor the agent's progress, see the tools it's using, and track how long the session has been running. -{% data variables.copilot.copilot_coding_agent %} sessions can also be tracked from the {% data variables.product.prodname_cli %}, {% data variables.product.prodname_mobile %}, {% data variables.product.prodname_vscode %}, Raycast, and JetBrains IDEs. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions). +{% data variables.copilot.copilot_cloud_agent %} sessions can also be tracked from the {% data variables.product.prodname_cli %}, {% data variables.product.prodname_mobile %}, {% data variables.product.prodname_vscode %}, Raycast, and JetBrains IDEs. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/track-copilot-sessions). ## 3. Redirect agents as needed @@ -71,17 +71,17 @@ You can guide the agent in your local development environment on further changes At the bottom of the agent session view, click the **{% octicon "vscode" aria-label="VS Code" %} Open in {% data variables.product.prodname_vscode_shortname %}** button to launch the session directly in {% data variables.product.prodname_vscode_shortname %}. -{% data reusables.copilot.coding-agent.use-latest-vscode %} +{% data reusables.copilot.cloud-agent.use-latest-vscode %} ### {% data variables.copilot.copilot_cli %} 1. At the bottom of the agent session view, click the dropdown list next to **{% octicon "vscode" aria-label="VS Code" %} Open in {% data variables.product.prodname_vscode_shortname %}**. 1. Click **{% octicon "agent" aria-label="Agent" %} Continue in {% data variables.copilot.copilot_cli %}** to copy the `copilot --resume=SESSION-ID` command to your clipboard. - ![Screenshot of the session action dropdown list, "Continue in Copilot CLI" is highlighted with a dark orange outline.](/assets/images/help/copilot/coding-agent/open-agent-session-in-copilot-cli.png) + ![Screenshot of the session action dropdown list, "Continue in Copilot CLI" is highlighted with a dark orange outline.](/assets/images/help/copilot/cloud-agent/open-agent-session-in-copilot-cli.png) 1. In your terminal, paste and run the command to resume the agent session. ## 5. Review and merge agent code -Once the agent completes a session, you can navigate to the pull request to review the changes. From the pull request, you can scan the diff, request further improvements, or approve and merge the changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs). +Once the agent completes a session, you can navigate to the pull request to review the changes. From the pull request, you can scan the diff, request further improvements, or approve and merge the changes. See [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs). ## 6. Archive agent sessions diff --git a/content/copilot/how-tos/use-copilot-agents/request-a-code-review/configure-runners.md b/content/copilot/how-tos/use-copilot-agents/request-a-code-review/configure-runners.md index 9b5fa71bb83a..d5b5698612c4 100644 --- a/content/copilot/how-tos/use-copilot-agents/request-a-code-review/configure-runners.md +++ b/content/copilot/how-tos/use-copilot-agents/request-a-code-review/configure-runners.md @@ -37,7 +37,7 @@ To configure self-hosted runners for {% data variables.copilot.copilot_code-revi * `api.githubcopilot.com` * `uploads.github.com` * `user-images.githubusercontent.com` -1. In your `copilot-setup-steps.yml` file, set the `runs-on` attribute to your ARC-managed scale set name. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment#preinstalling-tools-or-dependencies-in-copilots-environment). +1. In your `copilot-setup-steps.yml` file, set the `runs-on` attribute to your ARC-managed scale set name. For more information, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment#preinstalling-tools-or-dependencies-in-copilots-environment). ```yaml # ... diff --git a/content/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review.md b/content/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review.md index b8d019b1f88c..af4667d86ae9 100644 --- a/content/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review.md +++ b/content/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review.md @@ -55,9 +55,9 @@ Where possible, {% data variables.product.prodname_copilot_short %}'s feedback i If you're happy with the changes, you can accept a single suggestion from {% data variables.product.prodname_copilot_short %} and commit it, or accept a group of suggestions together in a single commit. For more information, see [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request). -You can also invoke {% data variables.copilot.copilot_coding_agent %} to implement suggested changes. To do this, you must: +You can also invoke {% data variables.copilot.copilot_cloud_agent %} to implement suggested changes. To do this, you must: -* Opt into the {% data variables.release-phases.public_preview %} for {% data variables.copilot.copilot_code-review-tools_short %} and enable {% data variables.copilot.copilot_coding_agent %}. +* Opt into the {% data variables.release-phases.public_preview %} for {% data variables.copilot.copilot_code-review-tools_short %} and enable {% data variables.copilot.copilot_cloud_agent %}. * On review comments from {% data variables.copilot.copilot_code-review %}, click **Implement suggestion**. This creates a draft comment on the pull request, where you can instruct {% data variables.product.prodname_copilot_short %} to address specific feedback. {% data variables.product.prodname_copilot_short %} will create a new pull request against your branch with the suggestions applied. ## Providing feedback on {% data variables.product.prodname_copilot_short %}'s reviews diff --git a/content/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues.md b/content/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues.md index fc95d12b7811..6bbf7787ee12 100644 --- a/content/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues.md +++ b/content/copilot/how-tos/use-copilot-for-common-tasks/use-copilot-to-create-or-update-issues.md @@ -125,7 +125,7 @@ The draft appears in the workbench, where you can review and edit it. To publish ## Assigning issues to {% data variables.product.prodname_copilot_short %} -To assign an issue to {% data variables.product.prodname_copilot_short %}, you need to have {% data variables.copilot.copilot_coding_agent %} enabled. See [AUTOTITLE](/copilot/concepts/coding-agent/about-enabling-coding-agent). +To assign an issue to {% data variables.product.prodname_copilot_short %}, you need to have {% data variables.copilot.copilot_cloud_agent %} enabled. See [AUTOTITLE](/copilot/concepts/agents/cloud-agent/access-management). You can assign the issue during creation in one of two ways: diff --git a/content/copilot/reference/agent-session-filters.md b/content/copilot/reference/agent-session-filters.md index ad46a7e06eed..7b74e5d6ff2f 100644 --- a/content/copilot/reference/agent-session-filters.md +++ b/content/copilot/reference/agent-session-filters.md @@ -14,7 +14,7 @@ The following filters are available for the "Agent sessions" view in your enterp | Filter | Description | Example value | | --- | --- | --- | -| `agent` | Displays activity from a specific agent. | `agent:copilot-coding-agent` | +| `agent` | Displays activity from a specific agent. | `agent:copilot-cloud-agent` | | `organization` | Displays activity within a specific organization. | `organization:octocat-org` | | `repository` | Displays activity within a specific repository. | `repository:octocat-repo` | | `status` | Displays agent sessions with a specific status. | `status:in_progress` | diff --git a/content/copilot/reference/copilot-allowlist-reference.md b/content/copilot/reference/copilot-allowlist-reference.md index 3e18f65c4bb0..c6657a2f4919 100644 --- a/content/copilot/reference/copilot-allowlist-reference.md +++ b/content/copilot/reference/copilot-allowlist-reference.md @@ -41,9 +41,9 @@ Depending on the security policies and editors your organization uses, you may n Every user of the proxy server or firewall also needs to configure their own environment to connect to {% data variables.product.prodname_copilot_short %}. See [AUTOTITLE](/copilot/configuring-github-copilot/configuring-network-settings-for-github-copilot). -## {% data variables.copilot.copilot_coding_agent %} recommended allowlist +## {% data variables.copilot.copilot_cloud_agent %} recommended allowlist -The {% data variables.copilot.copilot_coding_agent %} includes a built-in firewall with a recommended allowlist that is enabled by default. The recommended allowlist allows access to: +The {% data variables.copilot.copilot_cloud_agent %} includes a built-in firewall with a recommended allowlist that is enabled by default. The recommended allowlist allows access to: * Common operating system package repositories (for example, Debian, Ubuntu, Red Hat). * Common container registries (for example, Docker Hub, Azure Container Registry, AWS Elastic Container Registry). @@ -51,7 +51,7 @@ The {% data variables.copilot.copilot_coding_agent %} includes a built-in firewa * Common certificate authorities (to allow SSL certificates to be validated). * Hosts used to download web browsers for the Playwright MCP server. -For more information about configuring the {% data variables.copilot.copilot_coding_agent %} firewall, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-firewall). +For more information about configuring the {% data variables.copilot.copilot_cloud_agent %} firewall, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-firewall). The allowlist allows access to the following hosts: diff --git a/content/copilot/reference/custom-agents-configuration.md b/content/copilot/reference/custom-agents-configuration.md index 0994b0e7d20b..54cef61abcfa 100644 --- a/content/copilot/reference/custom-agents-configuration.md +++ b/content/copilot/reference/custom-agents-configuration.md @@ -9,7 +9,7 @@ category: - Configure Copilot --- -This reference article provides detailed configuration information for {% data variables.copilot.custom_agents_short %}. For general information about creating {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents). +This reference article provides detailed configuration information for {% data variables.copilot.custom_agents_short %}. For general information about creating {% data variables.copilot.custom_agents_short %}, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/create-custom-agents). {% data reusables.copilot.custom-agents-ide-preview %} @@ -26,9 +26,9 @@ The following table outlines the properties that you can configure for {% data v | `target` | string | Target environment or context for the {% data variables.copilot.copilot_custom_agent_short %} (`vscode` or `github-copilot`). If unset, defaults to both environments. | | `tools` | list of strings, string | List of tool names the {% data variables.copilot.copilot_custom_agent_short %} can use. Supports both a comma separated string and yaml string array. If unset, defaults to all tools. See [Tools](#tools). | | `model` | string | Model to use when this {% data variables.copilot.copilot_custom_agent_short %} executes. If unset, inherits the default model. | -| `disable-model-invocation` | boolean | Disables {% data variables.copilot.copilot_coding_agent %} from automatically using this {% data variables.copilot.copilot_custom_agent_short %} based on task context. When `true`, the agent must be manually selected. Setting `disable-model-invocation: true` is equivalent to `infer: false`. If both are set, `disable-model-invocation` takes precedence. If unset, defaults to `false`. | +| `disable-model-invocation` | boolean | Disables {% data variables.copilot.copilot_cloud_agent %} from automatically using this {% data variables.copilot.copilot_custom_agent_short %} based on task context. When `true`, the agent must be manually selected. Setting `disable-model-invocation: true` is equivalent to `infer: false`. If both are set, `disable-model-invocation` takes precedence. If unset, defaults to `false`. | | `user-invocable` | boolean | Controls whether this {% data variables.copilot.copilot_custom_agent_short %} can be selected by a user. When `false`, the agent cannot be manually selected and can only be accessed programmatically. If unset, defaults to `true`. | -| `infer` | boolean | **{% data variables.release-phases.retired_caps %}**. Use `disable-model-invocation` and `user-invocable` instead. Enables {% data variables.copilot.copilot_coding_agent %} to automatically use this {% data variables.copilot.copilot_custom_agent_short %} based on task context. When `false`, the agent must be manually selected. If unset, defaults to `true`. | +| `infer` | boolean | **{% data variables.release-phases.retired_caps %}**. Use `disable-model-invocation` and `user-invocable` instead. Enables {% data variables.copilot.copilot_cloud_agent %} to automatically use this {% data variables.copilot.copilot_custom_agent_short %} based on task context. When `false`, the agent must be manually selected. If unset, defaults to `true`. | | `mcp-servers` | object | Additional MCP servers and tools that should be used by the {% data variables.copilot.copilot_custom_agent_short %}. **Not used in {% data variables.product.prodname_vscode_shortname %} and other IDE {% data variables.copilot.custom_agents_short %}.** | | `metadata` | object consisting of a name and value pair, both strings | Allows annotation of the agent with useful data. **Not used in {% data variables.product.prodname_vscode_shortname %} and other IDE {% data variables.copilot.custom_agents_short %}.** | @@ -38,14 +38,14 @@ Define the agent's behavior, expertise, and instructions in the Markdown content > [!NOTE] > -> * The `argument-hint` and `handoffs` properties from {% data variables.product.prodname_vscode_shortname %} and other IDE {% data variables.copilot.custom_agents_short %} are currently not supported for {% data variables.copilot.copilot_coding_agent %} on {% data variables.product.prodname_dotcom_the_website %}. They are ignored to ensure compatibility. +> * The `argument-hint` and `handoffs` properties from {% data variables.product.prodname_vscode_shortname %} and other IDE {% data variables.copilot.custom_agents_short %} are currently not supported for {% data variables.copilot.copilot_cloud_agent %} on {% data variables.product.prodname_dotcom_the_website %}. They are ignored to ensure compatibility. > * For more information on {% data variables.copilot.copilot_custom_agent_short %} file structure in {% data variables.product.prodname_vscode_shortname %}, see [{% data variables.copilot.custom_agents_caps_short %} in {% data variables.product.prodname_vscode_shortname %}](https://code.visualstudio.com/docs/copilot/customization/custom-agents#_custom-agent-file-structure) in the {% data variables.product.prodname_vscode_shortname %} documentation. ## Tools The {% data variables.copilot.copilot_custom_agent_short %} `tools` property controls which tools are available to your agent, including those from MCP servers. -Your {% data variables.copilot.copilot_custom_agent_short %} will have access to MCP server tools that have been configured in both its {% data variables.copilot.agent_profile %} and/or the repository settings. For more information on configuring MCP servers for cloud agent in a repository, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp). +Your {% data variables.copilot.copilot_custom_agent_short %} will have access to MCP server tools that have been configured in both its {% data variables.copilot.agent_profile %} and/or the repository settings. For more information on configuring MCP servers for cloud agent in a repository, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp). You can configure `tools` using the following approaches: @@ -62,19 +62,19 @@ All unrecognized tool names are ignored, which allows product-specific tools to The following tool aliases are available for {% data variables.copilot.custom_agents_short %}. All aliases are case insensitive: -| Primary alias | Compatible aliases | {% data variables.copilot.copilot_coding_agent_short_cap_c %} mapping | Purpose | +| Primary alias | Compatible aliases | {% data variables.copilot.copilot_cloud_agent_short_cap_c %} mapping | Purpose | | ------------- | -------------------------------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | | `execute` | `shell`, `Bash`, `powershell` | Shell tools: `bash` or `powershell` | Execute a command in the appropriate shell for the operating system. | | `read` | `Read`, `NotebookRead` | `view` | Read file contents. | | `edit` | `Edit`, `MultiEdit`, `Write`, `NotebookEdit` | Edit tools: e.g. `str_replace`, `str_replace_editor` | Allow LLM to edit. Exact arguments can vary. | | `search` | `Grep`, `Glob` | `search` | Search for files or text in files. | | `agent` | `custom-agent`, `Task` | "{% data variables.copilot.copilot_custom_agent_caps_short %}" tools | Allows a different {% data variables.copilot.copilot_custom_agent_short %} to be invoked to accomplish a task. | -| `web` | `WebSearch`, `WebFetch` | Currently not applicable for {% data variables.copilot.copilot_coding_agent_short %}. | Allows fetching content from URLs and performing a web search | -| `todo` | `TodoWrite` | Currently not applicable for {% data variables.copilot.copilot_coding_agent_short %}. | Creates and manages structured task lists. Not supported in {% data variables.copilot.copilot_coding_agent_short %} today, but supported by {% data variables.product.prodname_vscode_shortname %}. | +| `web` | `WebSearch`, `WebFetch` | Currently not applicable for {% data variables.copilot.copilot_cloud_agent_short %}. | Allows fetching content from URLs and performing a web search | +| `todo` | `TodoWrite` | Currently not applicable for {% data variables.copilot.copilot_cloud_agent_short %}. | Creates and manages structured task lists. Not supported in {% data variables.copilot.copilot_cloud_agent_short %} today, but supported by {% data variables.product.prodname_vscode_shortname %}. | ### Tool names for "out-of-the-box" MCP servers -The following MCP servers are available out-of-box for {% data variables.copilot.copilot_coding_agent %} and can be referenced using namespacing: +The following MCP servers are available out-of-box for {% data variables.copilot.copilot_cloud_agent %} and can be referenced using namespacing: | MCP server name | Available tools | | --------------- | --------------- | @@ -103,18 +103,18 @@ mcp-servers: Prompt with suggestions for behavior and output ``` -The `mcp-servers` property in an {% data variables.copilot.agent_profile %} is a YAML representation of the JSON configuration format used to configure MCP servers for {% data variables.copilot.copilot_coding_agent %}. +The `mcp-servers` property in an {% data variables.copilot.agent_profile %} is a YAML representation of the JSON configuration format used to configure MCP servers for {% data variables.copilot.copilot_cloud_agent %}. -Most sub-properties are the same as the JSON representation. The following sections describe changes from the initial implementation of MCP configuration in {% data variables.copilot.copilot_coding_agent %} that are relevant to {% data variables.copilot.custom_agents_short %}. For more information about the JSON configuration format, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). +Most sub-properties are the same as the JSON representation. The following sections describe changes from the initial implementation of MCP configuration in {% data variables.copilot.copilot_cloud_agent %} that are relevant to {% data variables.copilot.custom_agents_short %}. For more information about the JSON configuration format, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/extend-cloud-agent-with-mcp#writing-a-json-configuration-for-mcp-servers). ### MCP server type -For compatibility, the `stdio` type used by Claude Code and {% data variables.product.prodname_vscode_shortname %} is mapped to {% data variables.copilot.copilot_coding_agent_short %}'s `local` type. +For compatibility, the `stdio` type used by Claude Code and {% data variables.product.prodname_vscode_shortname %} is mapped to {% data variables.copilot.copilot_cloud_agent_short %}'s `local` type. ### MCP server environment variables and secrets > [!NOTE] -> If your MCP server requires secrets or environment variables, these must be configured in the {% data variables.product.prodname_copilot_short %} environment in each repository where the {% data variables.copilot.copilot_custom_agent_short %} will be used. For more information on setting up environment variables, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment#setting-environment-variables-in-copilots-environment). +> If your MCP server requires secrets or environment variables, these must be configured in the {% data variables.product.prodname_copilot_short %} environment in each repository where the {% data variables.copilot.copilot_custom_agent_short %} will be used. For more information on setting up environment variables, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/customize-the-agent-environment#setting-environment-variables-in-copilots-environment). {% data variables.copilot.copilot_custom_agent_caps_short %} MCP configuration supports the same environment variable and secret replacement capabilities as existing repository-level MCP configurations. Similar to repository-level configurations, secrets and variables can be sourced from the "copilot" environment in the repository's settings. The syntax for referencing these values has been expanded to support common patterns used in {% data variables.product.prodname_actions %} and Claude Code. diff --git a/content/copilot/reference/custom-instructions-support.md b/content/copilot/reference/custom-instructions-support.md index ef8217f66bf3..443212ac859e 100644 --- a/content/copilot/reference/custom-instructions-support.md +++ b/content/copilot/reference/custom-instructions-support.md @@ -36,7 +36,7 @@ WRITING NOTE: The following tables have been written using HTML rather than Mark - {% data variables.copilot.copilot_coding_agent %} + {% data variables.copilot.copilot_cloud_agent %}