You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/managing-custom-patterns.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,6 +39,8 @@ When you remove a custom pattern, {% data variables.product.github %} gives you
39
39
1. Review the confirmation, and select a method for dealing with any open alerts relating to the custom pattern.
40
40
1. Click **Yes, delete this pattern**.
41
41
42
+
If you choose to close the alerts when removing a custom pattern, you need to be aware that the deletion process happens asynchronously in the background. For custom patterns that have generated a high volume of alerts (thousands or more), the deletion process may take several minutes to hours to complete. You can continue working while the process completes.
43
+
42
44
## Enabling push protection for a custom pattern
43
45
44
46
You can enable {% data variables.product.prodname_secret_scanning %} as a push protection for custom patterns stored at the enterprise, organization, or repository level.
@@ -60,6 +60,9 @@ You can assign an issue to {% data variables.product.prodname_copilot_short %}:
60
60
61
61
### Assigning an issue to {% data variables.product.prodname_copilot_short %} on {% data variables.product.prodname_dotcom_the_website %}
62
62
63
+
> [!NOTE]
64
+
> This feature is in {% data variables.release-phases.public_preview %} and subject to change.
65
+
63
66
{% data reusables.repositories.navigate-to-repo %}
64
67
{% data reusables.repositories.sidebar-issues %}
65
68
@@ -113,9 +116,32 @@ You can also assign issues to {% data variables.product.prodname_copilot_short %
113
116
114
117
### Assigning an issue to {% data variables.product.prodname_copilot_short %} via the {% data variables.product.github %} API
115
118
116
-
You can assign issues to {% data variables.product.prodname_copilot_short %} using the GraphQL API.
119
+
> [!NOTE]
120
+
> This feature is in {% data variables.release-phases.public_preview %} and subject to change.
121
+
122
+
You can assign issues to {% data variables.product.prodname_copilot_short %} using either the GraphQL API or the REST API. Both APIs support an optional Agent Assignment input to customize the task:
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.
121
147
@@ -163,11 +189,23 @@ You can assign issues to {% data variables.product.prodname_copilot_short %} usi
163
189
}
164
190
```
165
191
166
-
1. Createtheissuewiththe `createIssue` mutation. Replace `REPOSITORY_ID` withtheIDreturnedfromthepreviousstep, and `BOT_ID` withtheIDreturnedfromthestepbeforethat.
* [Create an issue](/rest/issues/issues#create-an-issue)
357
+
* [Update an issue](/rest/issues/issues#update-an-issue)
358
+
359
+
##### Adding assignees to an existing issue
360
+
361
+
```shell copy
362
+
gh api \
363
+
--method POST \
364
+
-H "Accept: application/vnd.github+json" \
365
+
-H "X-GitHub-Api-Version: 2022-11-28" \
366
+
/repos/OWNER/REPO/issues/ISSUE_NUMBER/assignees \
367
+
--input - <<< '{
368
+
"assignees": ["copilot-swe-agent[bot]"],
369
+
"agent_assignment": {
370
+
"target_repo": "OWNER/REPO",
371
+
"base_branch": "main",
372
+
"custom_instructions": "",
373
+
"custom_agent": "",
374
+
"model": ""
375
+
}
376
+
}'
377
+
```
378
+
379
+
##### Creating a new issue
380
+
381
+
```shell copy
382
+
gh api \
383
+
--method POST \
384
+
-H "Accept: application/vnd.github+json" \
385
+
-H "X-GitHub-Api-Version: 2022-11-28" \
386
+
/repos/OWNER/REPO/issues \
387
+
--input - <<< '{
388
+
"title": "Issue title",
389
+
"body": "Issue description.",
390
+
"assignees": ["copilot-swe-agent[bot]"],
391
+
"agent_assignment": {
392
+
"target_repo": "OWNER/REPO",
393
+
"base_branch": "main",
394
+
"custom_instructions": "",
395
+
"custom_agent": "",
396
+
"model": ""
397
+
}
398
+
}'
399
+
```
400
+
401
+
##### Updating an existing issue
402
+
403
+
```shell copy
404
+
gh api \
405
+
--method PATCH \
406
+
-H "Accept: application/vnd.github+json" \
407
+
-H "X-GitHub-Api-Version: 2022-11-28" \
408
+
/repos/OWNER/REPO/issues/ISSUE_NUMBER \
409
+
--input - <<< '{
410
+
"assignees": ["copilot-swe-agent[bot]"],
411
+
"agent_assignment": {
412
+
"target_repo": "OWNER/REPO",
413
+
"base_branch": "main",
414
+
"custom_instructions": "",
415
+
"custom_agent": "",
416
+
"model": ""
417
+
}
418
+
}'
419
+
```
420
+
245
421
## Asking {% data variables.product.prodname_copilot_short %} to create a pull request from the agents tab or panel
246
422
247
423
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.
Early access allows the Docs team to publish docs to docs.github.com without putting the content files in github/docs or github/docs-internal. This allows the Docs team to publish articles about limited access features.
3
+
The Early Access module enables the GitHub Docs team to publish documentation for features that are in limited access (beta, technical preview, etc.) without exposing the content in the public `github/docs` repository.
4
+
5
+
## Purpose & Scope
6
+
7
+
This system allows for:
8
+
-**Private Content Hosting**: Storing sensitive or unreleased documentation in a separate, private repository (`github/docs-early-access`).
9
+
-**Seamless Integration**: Merging this private content into the main site build so it appears native to the user (e.g., under `/en/early-access`).
10
+
-**Access Control**: Hiding these pages from public navigation and search engines, making them accessible only via direct links or specific "Early Access" index pages.
11
+
12
+
## Architecture
13
+
14
+
### Content Storage
15
+
16
+
Early access content lives in a separate private repository: `github/docs-early-access`.
17
+
-**Structure**: It mirrors the main repo's structure (`content/`, `data/`, `assets/`).
18
+
-**Integration**: During the build process (or local development), files from the private repo are copied or symlinked into the main `docs-internal` directory.
19
+
20
+
### Middleware
21
+
22
+
The logic for serving and listing these pages is handled in `src/early-access/middleware/early-access-links.ts`.
23
+
-**`earlyAccessContext`**: This middleware runs on requests to `/early-access`. It:
24
+
- Checks if the user is on an early access path.
25
+
- Retrieves a list of hidden pages whose path starts with `early-access`.
26
+
- Injects these links into the rendering context (`req.context.earlyAccessPageLinks`), allowing index pages to dynamically list available early access content.
27
+
28
+
### Scripts
29
+
30
+
A suite of scripts in `src/early-access/scripts` manages the workflow:
31
+
-**`clone-locally`**: Clones the private `docs-early-access` repo for local development.
32
+
-**`symlink-from-local-repo.ts`**: Symlinks the cloned content into the main `content/` and `assets/` directories so the Next.js server can see them.
33
+
-**`merge-early-access.sh`**: Used in CI/CD to physically move files from the checked-out private repo into the build directory.
34
+
-**`update-data-and-image-paths.ts`**: A utility to fix up paths when moving content between the main repo and early access.
35
+
36
+
## Setup & Usage
37
+
38
+
### Local Development
39
+
40
+
To work on Early Access content locally:
41
+
42
+
1.**Clone the Repo**:
43
+
```bash
44
+
npm run clone-early-access
45
+
```
46
+
This clones `github/docs-early-access` into a sibling directory.
47
+
48
+
2.**Symlink Content**:
49
+
```bash
50
+
npm run symlink-from-local-repo
51
+
```
52
+
This links the content into `docs-internal`.
53
+
54
+
3.**Run the Server**:
55
+
```bash
56
+
npm start
57
+
```
58
+
You can now access pages at `http://localhost:4000/en/early-access`.
59
+
60
+
### Adding New Content
61
+
62
+
1. Create markdown files in the `docs-early-access` repo.
63
+
2. Ensure the frontmatter includes `hidden: true` to prevent it from appearing in the main sidebar navigation (unless specifically desired).
64
+
3. Use the `early-access` directory prefix.
65
+
66
+
## Dependencies
67
+
68
+
-**`github/docs-early-access`**: The private repository containing the actual content.
69
+
-**CI/CD Workflows**: The deployment process must have access to the private repo to merge the content before building.
70
+
71
+
## Ownership
72
+
73
+
-**Team**: `@github/docs-engineering`
74
+
-**Content Owners**: The Writers and Product Managers responsible for the specific early access features.
75
+
76
+
## Current State & Known Issues
77
+
78
+
-**"Hidden" but Public**: While the source is private, once deployed to `docs.github.com`, the pages are technically public if you know the URL. They are "security through obscurity" (hidden from nav/search), not authenticated.
79
+
-**Build Complexity**: The merging process adds complexity to the build pipeline and can sometimes cause confusion with path resolution or asset loading if files are moved incorrectly.
0 commit comments