Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 64 additions & 0 deletions .github/workflows/feedback-prompt.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Feedback prompt for non-Docs team contributors when a PR is closed

on:
pull_request:
types: [closed]

permissions:
contents: read
pull-requests: write

jobs:
comment-on-pr:
# This workflow should only run on the 'github/docs-internal' repository because it posts a feedback request
# to non-Docs team contributors when their PR is merged into the main branch.
# The feedback request asks contributors to leave feedback on their contributing experience in Slack.
if: github.repository == 'github/docs-internal' && github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'main'

runs-on: ubuntu-latest

steps:
- name: Check if PR author is in docs-content team
id: check_team
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with:
github-token: ${{ secrets.DOCS_BOT_PAT_BASE }}
script: |
try {
const pr = context.payload.pull_request;
await github.rest.teams.getMembershipForUserInOrg({
org: 'github',
team_slug: 'docs-content',
username: pr.user.login,
});
// Author is in the team. Do nothing!
} catch(err) {
// Author not in team
core.exportVariable('NON_DOCS_HUBBER', 'true');
}

- name: Post changelog instructions comment

if: env.NON_DOCS_HUBBER == 'true'

uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with:
github-token: ${{ secrets.DOCS_BOT_PAT_BASE }}
script: |
// Get PR author username
const pr = context.payload.pull_request;
const prAuthor = pr.user.login;

// Compose the comment body as a plain text message to post on the PR
const commentBody =
"👋 @" + prAuthor +
" - Please leave us feedback on your contributing experience! " +
"To do this, please go to `#docs-contributor-feedback` on Slack.";

// Post the comment
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr.number,
body: commentBody
});
Binary file added assets/images/banner-images/hero-home.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,50 @@ Root storage refers to the total size of your instance's root disk. The availabl

1. Ensure system services are functioning correctly, then release maintenance mode. For more information, see [AUTOTITLE](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode).

> [!WARNING]
> If the `ghe-storage-extend` command (or a prior automatic check) reports: `ghe_user_data contains a file system with errors`, you must repair the filesystem before retrying the resize. Do not rerun `ghe-storage-extend` until the check completes cleanly. For recovery instructions, see [Repairing filesystem errors](#repairing-filesystem-errors).

### Repairing filesystem errors

If the filesystem check fails during `ghe-storage-extend`, follow these steps to repair it.

Ensure the appliance is in maintenance mode and no background jobs are running:

```shell copy
ghe-maintenance -s
ghe-resque-info
```

1. Stop and activate the user volume, then run a forced filesystem check (auto‑answer yes):

```shell copy
sudo systemctl stop ghe-user-disk
VGNAME=$(sudo lvs --noheadings -o vg_name | grep ghe_storage_ | awk '{ print $1 }')
sudo vgchange -ay "$VGNAME"
sudo vgscan --mknodes
sudo fsck -fy /dev/mapper/${VGNAME}-ghe_user_data
```

1. Retry the resize:

```shell copy
ghe-storage-extend
```

1. Remount and verify new size:

```shell copy
sudo systemctl start ghe-user-disk
df -h /data/user
```

1. Reboot and verify:

```shell copy
sudo reboot
df -h /data/user
```

## Increasing the root partition size using a new appliance

1. Set up a new {% data variables.product.prodname_ghe_server %} instance with a larger root disk using the same version as your current appliance. For more information, see [AUTOTITLE](/admin/installation/setting-up-a-github-enterprise-server-instance).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Focus on the following instructions:

## Where you can configure {% data variables.copilot.custom_agents_short %}

You can define {% data variables.copilot.agent_profiles %} at the repository level (`.github/agents/CUSTOM-AGENT-NAME.md` in your repository) for project-specific agents, or at the organization or enterprise level for broader availability. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents) and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents).
You can define {% data variables.copilot.agent_profiles %} at the repository level (`.github/agents/CUSTOM-AGENT-NAME.md` in your repository) for project-specific agents, or at the organization or enterprise level (`/agents/CUSTOM-AGENT-NAME.md` in a `.github-private` repository) for broader availability. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents) and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents).

## Where you can use {% data variables.copilot.custom_agents_short %}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ Enterprise-level {% data variables.copilot.custom_agents_short %} are defined in
## Creating a repository for your {% data variables.copilot.custom_agents_short %}

1. Choose an organization in your enterprise to own the repository containing your enterprise-level {% data variables.copilot.custom_agents_short %}.
1. Using the [{% data variables.copilot.custom_agents_short %} template repository](https://github.com/docs/custom-agents-template?ref_product=copilot&ref_type=engagement&ref_style=text&ref_plan=enterprise&utm_source=docs-web-custom-agents&utm_medium=docs&utm_campaign=universe25post), create a new **private** repository in your chosen organization named `.github-private`.
1. Using the [{% data variables.copilot.custom_agents_short %} template repository](https://github.com/docs/custom-agents-template?ref_product=copilot&ref_type=engagement&ref_style=text&ref_plan=enterprise&utm_source=docs-web-custom-agents&utm_medium=docs&utm_campaign=universe25post), create a new repository in your chosen organization named `.github-private`. Set the visibility of the repository as follows:
* To grant **read access to all members** of your enterprise, choose {% octicon "organization" aria-hidden="true" aria-label="organization" %} **Internal**.
* To **manually grant access after creation**, choose {% octicon "lock" aria-hidden="true" aria-label="lock" %} **Private**.
1. Update the template README as needed. Consider including creation guidelines for {% data variables.copilot.custom_agents_short %} or compliance considerations specific to your enterprise.

## Enabling and protecting {% data variables.copilot.custom_agents_short %} in your enterprise
Expand All @@ -35,4 +37,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/create-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/coding-agent/test-custom-agents).
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,13 @@ Before following this article, you should understand what {% data variables.copi

1. Start creating your {% data variables.copilot.copilot_custom_agent_short %} repository using [{% data variables.product.github %}'s template repository](https://github.com/docs/custom-agents-template?ref_product=copilot&ref_type=engagement&ref_style=text&utm_source=docs-web-custom-agents&utm_medium=docs&utm_campaign=universe25post). The template repository contains a starter README and the necessary file structure to speed up your configuration.
1. Select the **Choose an owner** {% octicon "triangle-down" aria-hidden="true" aria-label="triangle-down" %} dropdown menu, then click your organization.
1. Name the repository `.github-private`, then write a brief description and set the visibility of the repository to private.
1. Name the repository `.github-private`, then write a brief description.
1. Select the visibility dropdown menu, then choose one of the following options:
* To grant **read access to all members** of your organization or enterprise, click {% octicon "organization" aria-hidden="true" aria-label="organization" %} **Internal**.
* To **manually grant access after creation**, or if internal visibility is not an option, click {% octicon "lock" aria-hidden="true" aria-label="lock" %} **Private**.
{% data reusables.repositories.create-repo %}
1. Update the template README as needed. Consider including creation guidelines for {% data variables.copilot.custom_agents_short %} or compliance considerations specific to your organization.

## Next steps

To implement {% data variables.copilot.custom_agents_short %} in your organization, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/create-custom-agents).
To implement {% data variables.copilot.custom_agents_short %} in your organization, see [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/test-custom-agents).
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,13 @@ topics:
1. Using the dropdown menu in the prompt box, select the repository you want to create the {% data variables.copilot.copilot_custom_agent_short %} profile in.

> [!NOTE]
> Organization and enterprise owners can create organization and enterprise-level {% data variables.copilot.custom_agents_short %} that are available across all repositories within their organization or enterprise. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents) and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents).
> Organization and enterprise owners can create organization and enterprise-level {% data variables.copilot.custom_agents_short %} in a `.github-private` repository that are available across all repositories within their organization or enterprise. For more information, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents) and [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents).

1. Optionally, select the branch you want to create the {% data variables.copilot.agent_profile %} in. The default is the main branch.
1. Click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %}, then click **{% octicon "plus" aria-label="Plus button" %} Create an agent**.
1. An {% data variables.copilot.agent_profile %} template called `my-agent.md` will open in the `.github/agents` directory of the repository you chose. Edit the filename and configure the {% data variables.copilot.agent_profile %}, including the name, description, tools, and prompts. For more information on what the {% data variables.copilot.agent_profile %} can include, see the section below.
1. Commit the file to the repository. Go back to the agents tab and refresh the page if needed. Your custom agent will now appear in the dropdown when you click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %} in the prompt box.
1. Click {% octicon "copilot" aria-label="Select a custom agent" %}, then click **{% octicon "plus" aria-label="Plus button" %} Create an agent**. This will open a template agent profile called `my-agent.md` in the `.github/agents` directory of your target repository.
1. If you are creating an organization or enterprise-level custom agent, delete the `.github/` portion of the file path to move your template to the root `agents` directory.
1. Edit the filename and configure the {% data variables.copilot.agent_profile %}, including the name, description, tools, and prompts. For more information on what the {% data variables.copilot.agent_profile %} can include, see the section below.
1. Commit the file to the repository and merge it into the default branch. Go back to the agents tab and refresh the page if needed. Your custom agent will now appear in the dropdown when you click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %} in the prompt box.

## Configuring an {% data variables.copilot.agent_profile %}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ children:
- /track-copilot-sessions
- /review-copilot-prs
- /create-custom-agents
- /test-custom-agents
- /extend-coding-agent-with-mcp
- /integrate-coding-agent-with-slack
- /integrate-coding-agent-with-teams
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: Testing and releasing {% data variables.copilot.custom_agents_short %} in your organization or enterprise
intro: 'Ensure your {% data variables.copilot.custom_agents_short %} are performant and compliant before releasing them to your company.'
versions:
feature: copilot
topics:
- Copilot
shortTitle: Test custom agents
contentType: how-tos
---

{% data reusables.copilot.custom-agents-preview-note %}

## Introduction

Before you release or update a {% data variables.copilot.copilot_custom_agent_short %} in your organization or enterprise, you can test the agent privately to ensure it meets your standards. Once you are satisfied, you can then easily change the location of your {% data variables.copilot.agent_profile %} to make it available across your company.

## Prerequisites

Before you can test a {% data variables.copilot.copilot_custom_agent_short %}, you need to set up your organization or enterprise for {% data variables.copilot.custom_agents_short %}. See [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents) or [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/prepare-for-custom-agents).

## 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. 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 %}

1. Navigate to the agents tab at [https://github.com/copilot/agents](https://github.com/copilot/agents?ref_product=copilot&ref_type=engagement&ref_style=text&utm_source=docs-signup-custom-agents&utm_medium=docs&utm_campaign=universe25post).
1. Using the dropdown menu in the prompt box, select your `.github-private` repository.
1. Select {% octicon "copilot" aria-label="Select a custom agent" %}, then click your test agent.
1. To test your {% data variables.copilot.copilot_custom_agent_short %}, send {% data variables.product.prodname_copilot_short %} a prompt.
1. In the "Recent sessions" section, click your session to see detailed information about your results.
1. Continue making changes and testing your {% data variables.copilot.copilot_custom_agent_short %} as needed until you are satisfied with its performance.

## 3. Release your {% data variables.copilot.copilot_custom_agent_short %}

1. In your `.github-private` repository, move your {% data variables.copilot.agent_profile %} from the `.github/agents` directory into the `agents` directory.
1. Merge your changes into the default branch. Your {% data variables.copilot.copilot_custom_agent_short %} is now available to all users in your organization or enterprise.

## Next steps

To monitor the usage of {% data variables.copilot.custom_agents_short %} in your organization, filter your organization's audit log by `actor:Copilot`. See [AUTOTITLE](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization).

To monitor the usage of {% data variables.copilot.custom_agents_short %} in your enterprise, see [AUTOTITLE](/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-agents/monitor-agentic-activity).
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ For more information, see [AUTOTITLE](/copilot/how-tos/configure-custom-instruct
| --- | --- | --- |
| User-level {% data variables.copilot.copilot_custom_agent_short %} | local `~/.copilot/agents` directory | All projects |
| Repository-level {% data variables.copilot.copilot_custom_agent_short %} | `.github/agents` directory in your local and remote repositories | Current project |
| Organization and Enterprise-level {% data variables.copilot.copilot_custom_agent_short %} | `.github/agents` directory in the `.github-private` repository in an organization or enterprise | All projects under your organization and enterprise account |
| Organization and Enterprise-level {% data variables.copilot.copilot_custom_agent_short %} | `/agents` directory in the `.github-private` repository in an organization or enterprise | All projects under your organization and enterprise account |

In the case of naming conflicts, a system-level agent overrides a repository-level agent, and the repository-level agent would override an organization-level agent.

Expand Down
2 changes: 1 addition & 1 deletion content/copilot/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ featuredLinks:
- '{% ifversion ghec %}/copilot/tutorials/roll-out-at-scale/enable-developers/drive-adoption{% endif %}'
- '{% ifversion ghec %}/copilot/tutorials/roll-out-at-scale/enable-developers/integrate-ai-agents{% endif %}'
layout: discovery-landing
heroImage: /assets/images/banner-images/hero-6.png
heroImage: /assets/images/banner-images/hero-6
versions:
feature: copilot
children:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Test this agent by giving it a task to complete:
1. Using the dropdown menus in the text box, select the repository and branch you're comfortable testing with (ideally one with a minimal or outdated README).
1. Click {% octicon "copilot" aria-hidden="true" aria-label="copilot" %}, then click **{% octicon "plus" aria-label="Plus button" %} Create an agent**.
1. An {% data variables.copilot.agent_profile %} template called `my-agent.md` will open in the `.github/agents` directory, in the repository you chose. Name the file `readme-specialist.md` and paste in the example {% data variables.copilot.agent_profile %}.
1. Go back to the agents tab (you may need to refresh the page), and in the text box, select your "readme-specialist" agent from the dropdown.
1. Commit and merge this file into your repository's default branch. Go back to the agents tab (you may need to refresh the page), and in the text box, select your "readme-specialist" agent from the dropdown.
1. In the text box, enter a task for the agent (such as the example below) and click **{% octicon "paper-airplane" aria-label="Start task" %} Start task** or press <kbd>Return</kbd>.

```copilot copy
Expand Down
Loading