failproofai 0.0.6-beta.0 → 0.0.6-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.failproofai/policies/review-policies.mjs +113 -0
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +15 -15
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +10 -10
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +10 -10
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
- package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +1 -1
- package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0a.nuas._.js → [root-of-the-server]__05akje6._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0.~fd7s._.js → [root-of-the-server]__0i5kvry._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +6 -6
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
- package/.next/standalone/.next/static/chunks/{0teq8wdh3po1n.js → 00j0rr7rh8ef8.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0maq.q1t.ri85.js → 05j1px0r8yzh6.js} +2 -2
- package/.next/standalone/.next/static/chunks/0badv41uxa56..js +4 -0
- package/.next/standalone/.next/static/chunks/{0hplx-8c-4vpv.js → 0ijk_kek9_wyx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0uc0um_uz51m_.js → 0npb~873.wvg3.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0hctoh28rg838.js → 0xpl.oscrakvx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0.z51twd.0l5z.js → 1052sguyd-.ka.js} +1 -1
- package/.next/standalone/.next/static/chunks/{09e7drilkf1sn.js → 12simlrcfk3g2.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0ul6fk-z.6k-0.js → 14cl9poem30dq.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0r26pc8h0y_-e.js → turbopack-0o7k.hakttp4k.js} +1 -1
- package/.next/standalone/CHANGELOG.md +19 -0
- package/.next/standalone/README.md +2 -2
- package/.next/standalone/bun.lock +43 -85
- package/.next/standalone/dist/cli.mjs +91 -4
- package/.next/standalone/docs/ar/built-in-policies.mdx +124 -87
- package/.next/standalone/docs/ar/custom-policies.mdx +72 -72
- package/.next/standalone/docs/ar/examples.mdx +86 -33
- package/.next/standalone/docs/ar/getting-started.mdx +82 -29
- package/.next/standalone/docs/built-in-policies.mdx +38 -1
- package/.next/standalone/docs/custom-policies.mdx +1 -1
- package/.next/standalone/docs/de/built-in-policies.mdx +93 -56
- package/.next/standalone/docs/de/custom-policies.mdx +56 -56
- package/.next/standalone/docs/de/examples.mdx +72 -18
- package/.next/standalone/docs/de/getting-started.mdx +72 -20
- package/.next/standalone/docs/es/built-in-policies.mdx +115 -78
- package/.next/standalone/docs/es/custom-policies.mdx +55 -55
- package/.next/standalone/docs/es/examples.mdx +73 -19
- package/.next/standalone/docs/es/getting-started.mdx +72 -20
- package/.next/standalone/docs/examples.mdx +54 -0
- package/.next/standalone/docs/fr/built-in-policies.mdx +83 -46
- package/.next/standalone/docs/fr/custom-policies.mdx +51 -51
- package/.next/standalone/docs/fr/examples.mdx +78 -24
- package/.next/standalone/docs/fr/getting-started.mdx +65 -13
- package/.next/standalone/docs/getting-started.mdx +52 -0
- package/.next/standalone/docs/he/built-in-policies.mdx +156 -117
- package/.next/standalone/docs/he/custom-policies.mdx +75 -75
- package/.next/standalone/docs/he/examples.mdx +87 -33
- package/.next/standalone/docs/he/getting-started.mdx +84 -33
- package/.next/standalone/docs/hi/built-in-policies.mdx +101 -60
- package/.next/standalone/docs/hi/custom-policies.mdx +71 -70
- package/.next/standalone/docs/hi/examples.mdx +90 -36
- package/.next/standalone/docs/hi/getting-started.mdx +80 -27
- package/.next/standalone/docs/i18n/README.ar.md +69 -69
- package/.next/standalone/docs/i18n/README.de.md +46 -46
- package/.next/standalone/docs/i18n/README.es.md +42 -42
- package/.next/standalone/docs/i18n/README.fr.md +39 -39
- package/.next/standalone/docs/i18n/README.he.md +83 -83
- package/.next/standalone/docs/i18n/README.hi.md +69 -69
- package/.next/standalone/docs/i18n/README.it.md +72 -72
- package/.next/standalone/docs/i18n/README.ja.md +71 -71
- package/.next/standalone/docs/i18n/README.ko.md +52 -52
- package/.next/standalone/docs/i18n/README.pt-br.md +44 -44
- package/.next/standalone/docs/i18n/README.ru.md +66 -66
- package/.next/standalone/docs/i18n/README.tr.md +82 -83
- package/.next/standalone/docs/i18n/README.vi.md +70 -71
- package/.next/standalone/docs/i18n/README.zh.md +51 -51
- package/.next/standalone/docs/it/built-in-policies.mdx +118 -81
- package/.next/standalone/docs/it/custom-policies.mdx +69 -69
- package/.next/standalone/docs/it/examples.mdx +93 -39
- package/.next/standalone/docs/it/getting-started.mdx +73 -21
- package/.next/standalone/docs/ja/built-in-policies.mdx +98 -61
- package/.next/standalone/docs/ja/custom-policies.mdx +71 -71
- package/.next/standalone/docs/ja/examples.mdx +76 -22
- package/.next/standalone/docs/ja/getting-started.mdx +65 -13
- package/.next/standalone/docs/ko/built-in-policies.mdx +137 -100
- package/.next/standalone/docs/ko/custom-policies.mdx +67 -67
- package/.next/standalone/docs/ko/examples.mdx +87 -33
- package/.next/standalone/docs/ko/getting-started.mdx +61 -9
- package/.next/standalone/docs/pt-br/built-in-policies.mdx +94 -57
- package/.next/standalone/docs/pt-br/custom-policies.mdx +56 -56
- package/.next/standalone/docs/pt-br/examples.mdx +78 -24
- package/.next/standalone/docs/pt-br/getting-started.mdx +64 -12
- package/.next/standalone/docs/ru/built-in-policies.mdx +142 -105
- package/.next/standalone/docs/ru/custom-policies.mdx +82 -81
- package/.next/standalone/docs/ru/examples.mdx +77 -22
- package/.next/standalone/docs/ru/getting-started.mdx +74 -22
- package/.next/standalone/docs/tr/built-in-policies.mdx +104 -67
- package/.next/standalone/docs/tr/custom-policies.mdx +59 -60
- package/.next/standalone/docs/tr/examples.mdx +97 -42
- package/.next/standalone/docs/tr/getting-started.mdx +75 -23
- package/.next/standalone/docs/vi/built-in-policies.mdx +110 -72
- package/.next/standalone/docs/vi/custom-policies.mdx +68 -68
- package/.next/standalone/docs/vi/examples.mdx +93 -38
- package/.next/standalone/docs/vi/getting-started.mdx +74 -22
- package/.next/standalone/docs/zh/built-in-policies.mdx +132 -95
- package/.next/standalone/docs/zh/custom-policies.mdx +49 -49
- package/.next/standalone/docs/zh/examples.mdx +90 -36
- package/.next/standalone/docs/zh/getting-started.mdx +73 -21
- package/.next/standalone/node_modules/@next/env/package.json +1 -1
- package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
- package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +7 -7
- package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
- package/.next/standalone/node_modules/next/dist/server/config-schema.js +10 -2
- package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
- package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/render.js +27 -20
- package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
- package/.next/standalone/node_modules/next/package.json +15 -15
- package/.next/standalone/package.json +2 -2
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/src/hooks/builtin-policies.ts +106 -1
- package/README.md +2 -2
- package/dist/cli.mjs +91 -4
- package/package.json +2 -2
- package/src/hooks/builtin-policies.ts +106 -1
- package/.next/standalone/.next/static/chunks/0w9lwqy0-v1dk.js +0 -4
- /package/.next/standalone/.next/static/{8mygPGI5bzrtWK36ZYO59 → A9pNTZdoYJTVyPAYwQMx5}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{8mygPGI5bzrtWK36ZYO59 → A9pNTZdoYJTVyPAYwQMx5}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{8mygPGI5bzrtWK36ZYO59 → A9pNTZdoYJTVyPAYwQMx5}/_ssgManifest.js +0 -0
|
@@ -1,57 +1,59 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
---
|
|
3
|
+
title: Chính sách tích hợp sẵn
|
|
4
|
+
description: "30 chính sách tích hợp sẵn giúp bắt các chế độ lỗi thông thường của agent"
|
|
4
5
|
icon: shield
|
|
5
6
|
---
|
|
6
7
|
|
|
7
|
-
failproofai được cung cấp với 30 chính sách tích hợp giúp bắt
|
|
8
|
+
failproofai được cung cấp với 30 chính sách tích hợp sẵn giúp bắt các chế độ lỗi thông thường của agent. Mỗi chính sách được kích hoạt trên một loại sự kiện hook cụ thể và tên công cụ. Chín chính sách chấp nhận các tham số cho phép bạn điều chỉnh hành vi của chúng mà không cần viết mã. Bốn chính sách quy trình làm việc thực thi đường ống commit → push → PR → CI trước khi Claude dừng lại.
|
|
8
9
|
|
|
9
10
|
---
|
|
10
11
|
|
|
11
12
|
## Tổng quan
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
Chính sách được nhóm thành các danh mục:
|
|
14
15
|
|
|
15
|
-
| Danh mục | Chính sách | Loại
|
|
16
|
+
| Danh mục | Chính sách | Loại hook |
|
|
16
17
|
|----------|----------|-----------|
|
|
17
|
-
| [Lệnh nguy hiểm](#
|
|
18
|
-
| [Bí mật (
|
|
19
|
-
| [Môi trường](#
|
|
20
|
-
| [Truy cập tệp](#
|
|
18
|
+
| [Lệnh nguy hiểm](#lệnh-nguy-hiểm) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
|
|
19
|
+
| [Bí mật (bộ làm sạch)](#bí-mật-bộ-làm-sạch) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
|
|
20
|
+
| [Môi trường](#môi-trường) | block-env-files, protect-env-vars | PreToolUse |
|
|
21
|
+
| [Truy cập tệp](#truy-cập-tệp) | block-read-outside-cwd, block-secrets-write | PreToolUse |
|
|
21
22
|
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
|
|
22
|
-
| [Cơ sở dữ liệu](#
|
|
23
|
-
| [Cảnh báo](#
|
|
24
|
-
| [
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
- **`
|
|
28
|
-
- **`
|
|
23
|
+
| [Cơ sở dữ liệu](#cơ-sở-dữ-liệu) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
|
|
24
|
+
| [Cảnh báo](#cảnh-báo) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
|
|
25
|
+
| [Trình quản lý gói](#trình-quản-lý-gói) | prefer-package-manager | PreToolUse |
|
|
26
|
+
| [Quy trình làm việc](#quy-trình-làm-việc) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
|
|
27
|
+
|
|
28
|
+
- **`block-`** — dừng agent không được tiếp tục.
|
|
29
|
+
- **`warn-`** — cung cấp cho agent ngữ cảnh bổ sung để nó có thể tự sửa.
|
|
30
|
+
- **`sanitize-`** — loại bỏ dữ liệu nhạy cảm từ đầu ra công cụ trước khi agent nhìn thấy.
|
|
29
31
|
- **`require-`** — chặn sự kiện Stop cho đến khi các điều kiện được đáp ứng.
|
|
30
32
|
|
|
31
33
|
---
|
|
32
34
|
|
|
33
35
|
<Tip>
|
|
34
|
-
Mỗi chính sách hỗ trợ một trường `hint` tùy chọn trong `policyParams`. Hint được thêm vào thông báo deny hoặc instruct mà Claude thấy, cung cấp hướng dẫn hành động mà không cần sửa đổi
|
|
36
|
+
Mỗi chính sách hỗ trợ một trường `hint` tùy chọn trong `policyParams`. Hint được thêm vào thông báo deny hoặc instruct mà Claude nhìn thấy, cung cấp hướng dẫn có thể hành động mà không cần sửa đổi mã chính sách. Hoạt động với chính sách tích hợp sẵn, tùy chỉnh và quy ước. Xem [Configuration → hint](/vi/configuration#hint-cross-cutting) để biết chi tiết.
|
|
35
37
|
</Tip>
|
|
36
38
|
|
|
37
39
|
---
|
|
38
40
|
|
|
39
41
|
## Lệnh nguy hiểm
|
|
40
42
|
|
|
41
|
-
Ngăn chặn agent chạy các
|
|
43
|
+
Ngăn chặn agent chạy các hoạt động khó hoàn tác hoặc có thể làm hại hệ thống chủ.
|
|
42
44
|
|
|
43
45
|
### `block-sudo`
|
|
44
46
|
|
|
45
47
|
**Sự kiện:** PreToolUse (Bash)
|
|
46
48
|
**Mặc định:** Từ chối bất kỳ lệnh `sudo` nào.
|
|
47
49
|
|
|
48
|
-
Chặn các
|
|
50
|
+
Chặn các lời gọi bao gồm từ khóa `sudo`. Khớp mẫu được thực hiện trên các token lệnh được phân tích, không phải chuỗi thô, để ngăn chặn vòng qua injection toán tử shell.
|
|
49
51
|
|
|
50
52
|
**Tham số:**
|
|
51
53
|
|
|
52
|
-
| Tham số |
|
|
54
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
53
55
|
|-------|------|---------|-------------|
|
|
54
|
-
| `allowPatterns` | `string[]` | `[]` | Tiền tố lệnh chính xác được phép. Mỗi mục được khớp với các token argv được phân tích
|
|
56
|
+
| `allowPatterns` | `string[]` | `[]` | Tiền tố lệnh chính xác được phép. Mỗi mục được khớp với các token argv được phân tích. |
|
|
55
57
|
|
|
56
58
|
**Ví dụ:**
|
|
57
59
|
|
|
@@ -68,7 +70,7 @@ Chặn các lệnh gồm từ khóa `sudo`. Khớp mẫu được thực hiện
|
|
|
68
70
|
Với cấu hình này, `sudo systemctl status nginx` được phép, nhưng `sudo rm /etc/hosts` bị từ chối.
|
|
69
71
|
|
|
70
72
|
<Note>
|
|
71
|
-
Mẫu được khớp với các token được phân tích
|
|
73
|
+
Mẫu được khớp với các token được phân tích, không phải chuỗi lệnh thô. Điều này ngăn chặn vòng qua các toán tử shell được nối thêm (ví dụ: `sudo systemctl status x; rm -rf /` không khớp `sudo systemctl status *`).
|
|
72
74
|
</Note>
|
|
73
75
|
|
|
74
76
|
---
|
|
@@ -80,7 +82,7 @@ Mẫu được khớp với các token được phân tích cú pháp, không ph
|
|
|
80
82
|
|
|
81
83
|
**Tham số:**
|
|
82
84
|
|
|
83
|
-
| Tham số |
|
|
85
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
84
86
|
|-------|------|---------|-------------|
|
|
85
87
|
| `allowPaths` | `string[]` | `[]` | Đường dẫn an toàn để xóa đệ quy (ví dụ: `/tmp`). |
|
|
86
88
|
|
|
@@ -116,14 +118,14 @@ Không có tham số.
|
|
|
116
118
|
|
|
117
119
|
---
|
|
118
120
|
|
|
119
|
-
## Bí mật (
|
|
121
|
+
## Bí mật (bộ làm sạch)
|
|
120
122
|
|
|
121
|
-
Ngăn agent rò rỉ thông tin xác thực vào ngữ cảnh hoặc đầu ra của chúng.
|
|
123
|
+
Ngăn chặn agent rò rỉ thông tin xác thực vào ngữ cảnh hoặc đầu ra của chúng. Chính sách bộ làm sạch được kích hoạt trên các sự kiện **PostToolUse**. Khi Claude chạy lệnh Bash, đọc tệp hoặc gọi bất kỳ công cụ nào, những chính sách này kiểm tra đầu ra trước khi nó được trả lại Claude. Nếu phát hiện mẫu bí mật, chính sách sẽ trả về quyết định deny ngăn chặn đầu ra không được chuyển lại.
|
|
122
124
|
|
|
123
125
|
### `sanitize-jwt`
|
|
124
126
|
|
|
125
127
|
**Sự kiện:** PostToolUse (tất cả công cụ)
|
|
126
|
-
**Mặc định:**
|
|
128
|
+
**Mặc định:** Redact các token JWT (ba segment base64url được phân tách bằng `.`).
|
|
127
129
|
|
|
128
130
|
Không có tham số.
|
|
129
131
|
|
|
@@ -132,13 +134,13 @@ Không có tham số.
|
|
|
132
134
|
### `sanitize-api-keys`
|
|
133
135
|
|
|
134
136
|
**Sự kiện:** PostToolUse (tất cả công cụ)
|
|
135
|
-
**Mặc định:**
|
|
137
|
+
**Mặc định:** Redact các định dạng khóa API thông thường: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), khóa truy cập AWS (`AKIA`), khóa Stripe (`sk_live_`, `sk_test_`) và khóa Google API (`AIza`).
|
|
136
138
|
|
|
137
139
|
**Tham số:**
|
|
138
140
|
|
|
139
|
-
| Tham số |
|
|
141
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
140
142
|
|-------|------|---------|-------------|
|
|
141
|
-
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Các mẫu regex bổ sung
|
|
143
|
+
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Các mẫu regex bổ sung được coi là bí mật. |
|
|
142
144
|
|
|
143
145
|
**Ví dụ:**
|
|
144
146
|
|
|
@@ -160,7 +162,7 @@ Không có tham số.
|
|
|
160
162
|
### `sanitize-connection-strings`
|
|
161
163
|
|
|
162
164
|
**Sự kiện:** PostToolUse (tất cả công cụ)
|
|
163
|
-
**Mặc định:**
|
|
165
|
+
**Mặc định:** Redact các chuỗi kết nối cơ sở dữ liệu chứa thông tin xác thực được nhúng (ví dụ: `postgresql://user:password@host/db`).
|
|
164
166
|
|
|
165
167
|
Không có tham số.
|
|
166
168
|
|
|
@@ -169,7 +171,7 @@ Không có tham số.
|
|
|
169
171
|
### `sanitize-private-key-content`
|
|
170
172
|
|
|
171
173
|
**Sự kiện:** PostToolUse (tất cả công cụ)
|
|
172
|
-
**Mặc định:**
|
|
174
|
+
**Mặc định:** Redact các khối PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, v.v.).
|
|
173
175
|
|
|
174
176
|
Không có tham số.
|
|
175
177
|
|
|
@@ -178,7 +180,7 @@ Không có tham số.
|
|
|
178
180
|
### `sanitize-bearer-tokens`
|
|
179
181
|
|
|
180
182
|
**Sự kiện:** PostToolUse (tất cả công cụ)
|
|
181
|
-
**Mặc định:**
|
|
183
|
+
**Mặc định:** Redact các header `Authorization: Bearer <token>` trong đó token có 20 ký tự trở lên.
|
|
182
184
|
|
|
183
185
|
Không có tham số.
|
|
184
186
|
|
|
@@ -191,9 +193,9 @@ Bảo vệ cấu hình môi trường nhạy cảm khỏi bị agent đọc ho
|
|
|
191
193
|
### `block-env-files`
|
|
192
194
|
|
|
193
195
|
**Sự kiện:** PreToolUse (Bash, Read)
|
|
194
|
-
**Mặc định:** Từ chối đọc tệp `.env` thông qua `cat .env`,
|
|
196
|
+
**Mặc định:** Từ chối đọc các tệp `.env` thông qua `cat .env`, gọi công cụ Read với `.env` làm đường dẫn tệp, v.v.
|
|
195
197
|
|
|
196
|
-
Không chặn `.envrc` hoặc các tệp liên quan môi trường khác - chỉ các tệp được đặt tên chính xác
|
|
198
|
+
Không chặn `.envrc` hoặc các tệp liên quan môi trường khác - chỉ các tệp được đặt tên chính xác `.env`.
|
|
197
199
|
|
|
198
200
|
Không có tham số.
|
|
199
201
|
|
|
@@ -202,7 +204,7 @@ Không có tham số.
|
|
|
202
204
|
### `protect-env-vars`
|
|
203
205
|
|
|
204
206
|
**Sự kiện:** PreToolUse (Bash)
|
|
205
|
-
**Mặc định:** Từ chối các lệnh in biến môi trường: `printenv`, `env`, `echo $VAR`.
|
|
207
|
+
**Mặc định:** Từ chối các lệnh in các biến môi trường: `printenv`, `env`, `echo $VAR`.
|
|
206
208
|
|
|
207
209
|
Không có tham số.
|
|
208
210
|
|
|
@@ -210,16 +212,16 @@ Không có tham số.
|
|
|
210
212
|
|
|
211
213
|
## Truy cập tệp
|
|
212
214
|
|
|
213
|
-
|
|
215
|
+
Giữ agent hoạt động bên trong ranh giới dự án và xa khỏi các tệp nhạy cảm.
|
|
214
216
|
|
|
215
217
|
### `block-read-outside-cwd`
|
|
216
218
|
|
|
217
219
|
**Sự kiện:** PreToolUse (Read, Bash)
|
|
218
|
-
**Mặc định:** Từ chối đọc tệp bên ngoài thư mục làm việc hiện tại (gốc dự án).
|
|
220
|
+
**Mặc định:** Từ chối đọc các tệp bên ngoài thư mục làm việc hiện tại (gốc dự án).
|
|
219
221
|
|
|
220
222
|
**Tham số:**
|
|
221
223
|
|
|
222
|
-
| Tham số |
|
|
224
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
223
225
|
|-------|------|---------|-------------|
|
|
224
226
|
| `allowPaths` | `string[]` | `[]` | Tiền tố đường dẫn tuyệt đối được phép ngay cả khi bên ngoài cwd. |
|
|
225
227
|
|
|
@@ -240,11 +242,11 @@ Giúp agent làm việc trong ranh giới dự án và tránh xa các tệp nh
|
|
|
240
242
|
### `block-secrets-write`
|
|
241
243
|
|
|
242
244
|
**Sự kiện:** PreToolUse (Write, Edit)
|
|
243
|
-
**Mặc định:** Từ chối ghi vào tệp thường được sử dụng cho
|
|
245
|
+
**Mặc định:** Từ chối ghi vào các tệp thường được sử dụng cho khóa riêng và chứng chỉ: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
|
|
244
246
|
|
|
245
247
|
**Tham số:**
|
|
246
248
|
|
|
247
|
-
| Tham số |
|
|
249
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
248
250
|
|-------|------|---------|-------------|
|
|
249
251
|
| `additionalPatterns` | `string[]` | `[]` | Các mẫu tên tệp bổ sung (kiểu glob) để chặn. |
|
|
250
252
|
|
|
@@ -264,7 +266,7 @@ Giúp agent làm việc trong ranh giới dự án và tránh xa các tệp nh
|
|
|
264
266
|
|
|
265
267
|
## Git
|
|
266
268
|
|
|
267
|
-
Ngăn chặn các
|
|
269
|
+
Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nhánh khó hoàn tác.
|
|
268
270
|
|
|
269
271
|
### `block-push-master`
|
|
270
272
|
|
|
@@ -273,9 +275,9 @@ Ngăn chặn các lần push ngẫu nhiên, force-push và các sai lầm nhánh
|
|
|
273
275
|
|
|
274
276
|
**Tham số:**
|
|
275
277
|
|
|
276
|
-
| Tham số |
|
|
278
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
277
279
|
|-------|------|---------|-------------|
|
|
278
|
-
| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể được
|
|
280
|
+
| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể được đẩy trực tiếp. |
|
|
279
281
|
|
|
280
282
|
**Ví dụ:**
|
|
281
283
|
|
|
@@ -290,7 +292,7 @@ Ngăn chặn các lần push ngẫu nhiên, force-push và các sai lầm nhánh
|
|
|
290
292
|
```
|
|
291
293
|
|
|
292
294
|
<Tip>
|
|
293
|
-
Để cho phép
|
|
295
|
+
Để cho phép đẩy đến tất cả các nhánh (có hiệu lực vô hiệu hóa chính sách này mà không xóa nó khỏi `enabledPolicies`), hãy đặt `protectedBranches: []`.
|
|
294
296
|
</Tip>
|
|
295
297
|
|
|
296
298
|
---
|
|
@@ -298,11 +300,11 @@ Ngăn chặn các lần push ngẫu nhiên, force-push và các sai lầm nhánh
|
|
|
298
300
|
### `block-work-on-main`
|
|
299
301
|
|
|
300
302
|
**Sự kiện:** PreToolUse (Bash)
|
|
301
|
-
**Mặc định:** Từ chối kiểm tra nhánh `main` hoặc `master
|
|
303
|
+
**Mặc định:** Từ chối kiểm tra trực tiếp các nhánh `main` hoặc `master`.
|
|
302
304
|
|
|
303
305
|
**Tham số:**
|
|
304
306
|
|
|
305
|
-
| Tham số |
|
|
307
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
306
308
|
|-------|------|---------|-------------|
|
|
307
309
|
| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể được kiểm tra trực tiếp. |
|
|
308
310
|
|
|
@@ -313,7 +315,7 @@ Ngăn chặn các lần push ngẫu nhiên, force-push và các sai lầm nhánh
|
|
|
313
315
|
**Sự kiện:** PreToolUse (Bash)
|
|
314
316
|
**Mặc định:** Từ chối `git push --force` và `git push -f`.
|
|
315
317
|
|
|
316
|
-
Không có tham số chính sách
|
|
318
|
+
Không có tham số cụ thể chính sách. Sử dụng [`hint`](/vi/configuration#hint-cross-cutting) xuyên suốt để gợi ý các lựa chọn thay thế:
|
|
317
319
|
|
|
318
320
|
```json
|
|
319
321
|
{
|
|
@@ -348,7 +350,7 @@ Không có tham số.
|
|
|
348
350
|
### `warn-all-files-staged`
|
|
349
351
|
|
|
350
352
|
**Sự kiện:** PreToolUse (Bash)
|
|
351
|
-
**Mặc định:** Hướng dẫn Claude xem
|
|
353
|
+
**Mặc định:** Hướng dẫn Claude xem xét những gì nó đang staging khi chạy `git add -A` hoặc `git add .`. Không chặn lệnh.
|
|
352
354
|
|
|
353
355
|
Không có tham số.
|
|
354
356
|
|
|
@@ -356,7 +358,7 @@ Không có tham số.
|
|
|
356
358
|
|
|
357
359
|
## Cơ sở dữ liệu
|
|
358
360
|
|
|
359
|
-
Bắt các
|
|
361
|
+
Bắt các hoạt động SQL tàn phá trước khi chúng thực thi đối với cơ sở dữ liệu của bạn.
|
|
360
362
|
|
|
361
363
|
### `warn-destructive-sql`
|
|
362
364
|
|
|
@@ -370,7 +372,7 @@ Không có tham số.
|
|
|
370
372
|
### `warn-schema-alteration`
|
|
371
373
|
|
|
372
374
|
**Sự kiện:** PreToolUse (Bash)
|
|
373
|
-
**Mặc định:** Hướng dẫn Claude xác nhận trước khi chạy các
|
|
375
|
+
**Mặc định:** Hướng dẫn Claude xác nhận trước khi chạy các lệnh `ALTER TABLE`.
|
|
374
376
|
|
|
375
377
|
Không có tham số.
|
|
376
378
|
|
|
@@ -378,18 +380,18 @@ Không có tham số.
|
|
|
378
380
|
|
|
379
381
|
## Cảnh báo
|
|
380
382
|
|
|
381
|
-
Cung cấp cho agent ngữ cảnh bổ sung trước các
|
|
383
|
+
Cung cấp cho agent ngữ cảnh bổ sung trước các hoạt động có rủi ro nhưng không phá hủy.
|
|
382
384
|
|
|
383
385
|
### `warn-large-file-write`
|
|
384
386
|
|
|
385
387
|
**Sự kiện:** PreToolUse (Write)
|
|
386
|
-
**Mặc định:** Hướng dẫn Claude xác nhận trước khi
|
|
388
|
+
**Mặc định:** Hướng dẫn Claude xác nhận trước khi viết các tệp lớn hơn 1024 KB.
|
|
387
389
|
|
|
388
390
|
**Tham số:**
|
|
389
391
|
|
|
390
|
-
| Tham số |
|
|
392
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
391
393
|
|-------|------|---------|-------------|
|
|
392
|
-
| `thresholdKb` | `number` | `1024` | Ngưỡng kích thước tệp tính bằng kilobyte
|
|
394
|
+
| `thresholdKb` | `number` | `1024` | Ngưỡng kích thước tệp tính bằng kilobyte mà trên đó cảnh báo được phát hành. |
|
|
393
395
|
|
|
394
396
|
**Ví dụ:**
|
|
395
397
|
|
|
@@ -404,7 +406,7 @@ Cung cấp cho agent ngữ cảnh bổ sung trước các thao tác tiềm ẩn
|
|
|
404
406
|
```
|
|
405
407
|
|
|
406
408
|
<Note>
|
|
407
|
-
Trình xử lý hook thực thi giới hạn
|
|
409
|
+
Trình xử lý hook thực thi giới hạn 1 MB stdin trên tải trọng. Để kiểm tra chính sách này với nội dung nhỏ, hãy đặt `thresholdKb` thành giá trị nằm dưới 1024.
|
|
408
410
|
</Note>
|
|
409
411
|
|
|
410
412
|
---
|
|
@@ -421,7 +423,7 @@ Không có tham số.
|
|
|
421
423
|
### `warn-background-process`
|
|
422
424
|
|
|
423
425
|
**Sự kiện:** PreToolUse (Bash)
|
|
424
|
-
**Mặc định:** Hướng dẫn Claude cẩn thận khi khởi chạy quy trình nền qua `nohup`, `&`, `disown` hoặc `screen`.
|
|
426
|
+
**Mặc định:** Hướng dẫn Claude cẩn thận khi khởi chạy các quy trình nền qua `nohup`, `&`, `disown` hoặc `screen`.
|
|
425
427
|
|
|
426
428
|
Không có tham số.
|
|
427
429
|
|
|
@@ -436,14 +438,50 @@ Không có tham số.
|
|
|
436
438
|
|
|
437
439
|
---
|
|
438
440
|
|
|
441
|
+
## Trình quản lý gói
|
|
442
|
+
|
|
443
|
+
Thực thi trình quản lý gói nào được agent phép sử dụng.
|
|
444
|
+
|
|
445
|
+
### `prefer-package-manager`
|
|
446
|
+
|
|
447
|
+
**Sự kiện:** PreToolUse (Bash)
|
|
448
|
+
**Mặc định:** Bị vô hiệu hóa. Khi được bật, chặn bất kỳ lệnh trình quản lý gói nào không có trong danh sách `allowed` và yêu cầu Claude viết lại lệnh bằng trình quản lý được phép.
|
|
449
|
+
|
|
450
|
+
Phát hiện: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
|
|
451
|
+
|
|
452
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
453
|
+
|-----------|------|---------|-------------|
|
|
454
|
+
| `allowed` | string[] | `[]` | Tên trình quản lý gói được phép. Bất kỳ trình quản lý được phát hiện nào không có trong danh sách này sẽ bị chặn. Khi trống, chính sách là no-op. |
|
|
455
|
+
| `blocked` | string[] | `[]` | Tên trình quản lý bổ sung để chặn ngoài danh sách được xây dựng sẵn (ví dụ: `['pdm', 'pipx']`). |
|
|
456
|
+
|
|
457
|
+
Danh sách chặn tích hợp sẵn bao gồm: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Sử dụng `blocked` để thêm các trình quản lý không có trong danh sách này.
|
|
458
|
+
|
|
459
|
+
**Cấu hình ví dụ:**
|
|
460
|
+
|
|
461
|
+
```json
|
|
462
|
+
{
|
|
463
|
+
"enabledPolicies": ["prefer-package-manager"],
|
|
464
|
+
"policyParams": {
|
|
465
|
+
"prefer-package-manager": {
|
|
466
|
+
"allowed": ["uv", "bun"],
|
|
467
|
+
"blocked": ["pdm", "pipx"]
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
Với cấu hình này, `pip install flask` và `pdm install flask` đều bị từ chối với thông báo yêu cầu Claude sử dụng `uv` hoặc `bun` thay thế. Các lệnh như `uv pip install flask` được phép vì `uv` có trong danh sách cho phép và được kiểm tra trước tiên.
|
|
474
|
+
|
|
475
|
+
---
|
|
476
|
+
|
|
439
477
|
## Hành vi AI
|
|
440
478
|
|
|
441
|
-
Phát hiện khi agent bị kẹt hoặc
|
|
479
|
+
Phát hiện khi agent bị mắc kẹt hoặc hành xử bất thường.
|
|
442
480
|
|
|
443
481
|
### `warn-repeated-tool-calls`
|
|
444
482
|
|
|
445
483
|
**Sự kiện:** PreToolUse (tất cả công cụ)
|
|
446
|
-
**Mặc định:** Hướng dẫn Claude
|
|
484
|
+
**Mặc định:** Hướng dẫn Claude cân nhắc lại khi cùng một công cụ được gọi 3 lần trở lên với các tham số giống nhau - dấu hiệu thông thường cho thấy agent bị mắc kẹt trong một vòng lặp.
|
|
447
485
|
|
|
448
486
|
Không có tham số.
|
|
449
487
|
|
|
@@ -451,14 +489,14 @@ Không có tham số.
|
|
|
451
489
|
|
|
452
490
|
## Quy trình làm việc
|
|
453
491
|
|
|
454
|
-
Thực thi quy trình làm việc
|
|
492
|
+
Thực thi quy trình làm việc kết thúc phiên làm việc theo kỷ luật. Những chính sách này được kích hoạt trên sự kiện **Stop** và từ chối Claude dừng lại cho đến khi mỗi điều kiện được đáp ứng. Chúng tuân theo một chuỗi phụ thuộc tự nhiên: commit → push → PR → CI. Nếu chính sách từ chối, các chính sách sau trong chuỗi sẽ bị bỏ qua (deny rút ngắn).
|
|
455
493
|
|
|
456
|
-
Tất cả
|
|
494
|
+
Tất cả chính sách quy trình làm việc đều **fail-open**: nếu công cụ được yêu cầu không khả dụng (ví dụ: `gh` không được cài đặt, không có git remote), chính sách cho phép với thông báo thông tin giải thích tại sao kiểm tra bị bỏ qua.
|
|
457
495
|
|
|
458
496
|
### `require-commit-before-stop`
|
|
459
497
|
|
|
460
498
|
**Sự kiện:** Stop
|
|
461
|
-
**Mặc định:** Từ chối dừng khi có
|
|
499
|
+
**Mặc định:** Từ chối dừng khi có các thay đổi chưa được commit (các tệp đã sửa đổi, được staging hoặc không được theo dõi). Trả về thông báo thông tin khi thư mục làm việc sạch.
|
|
462
500
|
|
|
463
501
|
Không có tham số.
|
|
464
502
|
|
|
@@ -467,13 +505,13 @@ Không có tham số.
|
|
|
467
505
|
### `require-push-before-stop`
|
|
468
506
|
|
|
469
507
|
**Sự kiện:** Stop
|
|
470
|
-
**Mặc định:** Từ chối dừng khi có
|
|
508
|
+
**Mặc định:** Từ chối dừng khi có các commit chưa được đẩy hoặc khi nhánh hiện tại không có nhánh theo dõi từ xa. Gợi ý `git push -u` để tạo một nhánh theo dõi nếu cần. Fails open nếu không có remote được cấu hình.
|
|
471
509
|
|
|
472
510
|
**Tham số:**
|
|
473
511
|
|
|
474
|
-
| Tham số |
|
|
512
|
+
| Tham số | Loại | Mặc định | Mô tả |
|
|
475
513
|
|-------|------|---------|-------------|
|
|
476
|
-
| `remote` | `string` | `"origin"` | Tên remote để
|
|
514
|
+
| `remote` | `string` | `"origin"` | Tên remote để đẩy tới. |
|
|
477
515
|
|
|
478
516
|
**Ví dụ:**
|
|
479
517
|
|
|
@@ -492,14 +530,14 @@ Không có tham số.
|
|
|
492
530
|
### `require-pr-before-stop`
|
|
493
531
|
|
|
494
532
|
**Sự kiện:** Stop
|
|
495
|
-
**Mặc định:** Từ chối dừng khi không có pull request cho nhánh hiện tại
|
|
533
|
+
**Mặc định:** Từ chối dừng khi không có pull request nào tồn tại cho nhánh hiện tại hoặc khi PR hiện có bị đóng/hợp nhất. Hướng dẫn Claude tạo một PR bằng `gh pr create`.
|
|
496
534
|
|
|
497
535
|
Không có tham số.
|
|
498
536
|
|
|
499
537
|
<Note>
|
|
500
538
|
Chính sách này yêu cầu [GitHub CLI](https://cli.github.com/) (`gh`) được cài đặt và xác thực.
|
|
501
|
-
Chạy `gh auth login` với một
|
|
502
|
-
|
|
539
|
+
Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc đến
|
|
540
|
+
các yêu cầu kéo. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách fails open và báo cáo lý do cho Claude.
|
|
503
541
|
</Note>
|
|
504
542
|
|
|
505
543
|
---
|
|
@@ -507,14 +545,14 @@ pull request. Nếu `gh` không được cài đặt hoặc không được xác
|
|
|
507
545
|
### `require-ci-green-before-stop`
|
|
508
546
|
|
|
509
547
|
**Sự kiện:** Stop
|
|
510
|
-
**Mặc định:** Từ chối dừng khi các kiểm tra CI đang thất bại hoặc vẫn chạy trên nhánh hiện tại. Kiểm tra cả chạy quy trình GitHub Actions và kiểm tra bot của bên thứ ba (ví dụ: CodeRabbit, SonarCloud, Codecov).
|
|
548
|
+
**Mặc định:** Từ chối dừng khi các kiểm tra CI đang thất bại hoặc vẫn đang chạy trên nhánh hiện tại. Kiểm tra cả các lần chạy quy trình làm việc GitHub Actions và các kiểm tra bot của bên thứ ba (ví dụ: CodeRabbit, SonarCloud, Codecov). Coi kết luận `skipped` là thành công. Trả về thông báo thông tin khi tất cả các kiểm tra vượt qua.
|
|
511
549
|
|
|
512
550
|
Không có tham số.
|
|
513
551
|
|
|
514
552
|
<Note>
|
|
515
553
|
Chính sách này yêu cầu [GitHub CLI](https://cli.github.com/) (`gh`) được cài đặt và xác thực.
|
|
516
|
-
Chạy `gh auth login` với một
|
|
517
|
-
chạy quy trình Actions và API
|
|
554
|
+
Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc đến
|
|
555
|
+
các lần chạy quy trình làm việc Actions và API Checks. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách fails open và báo cáo lý do cho Claude.
|
|
518
556
|
</Note>
|
|
519
557
|
|
|
520
558
|
---
|
|
@@ -523,7 +561,7 @@ chạy quy trình Actions và API Kiểm tra. Nếu `gh` không được cài đ
|
|
|
523
561
|
|
|
524
562
|
## Vô hiệu hóa các chính sách riêng lẻ
|
|
525
563
|
|
|
526
|
-
Xóa
|
|
564
|
+
Xóa chính sách cụ thể khỏi `enabledPolicies` trong cấu hình của bạn hoặc tắt nó trong tab Policies của dashboard.
|
|
527
565
|
|
|
528
566
|
```json
|
|
529
567
|
{
|
|
@@ -534,4 +572,4 @@ Xóa một chính sách cụ thể khỏi `enabledPolicies` trong cấu hình c
|
|
|
534
572
|
}
|
|
535
573
|
```
|
|
536
574
|
|
|
537
|
-
Các chính sách không được liệt kê trong `enabledPolicies` không chạy, ngay cả khi
|
|
575
|
+
Các chính sách không được liệt kê trong `enabledPolicies` không chạy, ngay cả khi các mục `policyParams` tồn tại cho chúng.
|