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: .github/aw/enclaves.md
+28-2Lines changed: 28 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,14 +47,39 @@ enclaves:
47
47
- A fresh masked capability is generated per workflow run and passed only to the MCP gateway and AWF, never to the primary agent environment.
48
48
- `timeout:`per enclave entry is capped at 4,740 seconds (AWF reserves the final 60 seconds of its 4,800-second finite-disclosure bucket for cleanup). The gateway itself enforces a 4,860-second tool timeout (4,800s AWF bucket + 60s transport allowance) — treat this as an enforcement bound, not a wall-clock guarantee.
49
49
50
-
## Agent GitHub Issues profile
50
+
## Agent GitHub tool configuration
51
51
52
-
Use only this closed opt-in:
52
+
Prefer this configuration shape for new workflows:
53
53
54
54
```yaml
55
55
sandbox:
56
56
mcp:
57
57
version: v0.4.15
58
+
enclaves:
59
+
- agent:
60
+
model: gpt-5
61
+
tools:
62
+
github:
63
+
allowed: [list_issues, issue_read]
64
+
allowed-repos: [octo-org/private-service]
65
+
min-integrity: none
66
+
repos:
67
+
- repo: octo-org/private-service
68
+
sensitivity: confidential
69
+
```
70
+
71
+
- `allowed`is required and currently supports only `list_issues` and `issue_read`.
72
+
- `allowed-repos`is optional. When omitted, the enclave identity inherits all repositories declared in the enclave's `repos:` list. When set, each entry must also appear in that list.
73
+
- `min-integrity`is optional and defaults to `approved`.
74
+
- Unsupported tools and out-of-scope repositories fail closed at compile time.
75
+
- GraphQL, search, writes, and all other GitHub tools remain denied.
76
+
- Minimum versions are AWF `v0.28.9` and mcpg `v0.4.15`; trusted repositories additionally require AWF `v0.28.14`.
77
+
78
+
## Deprecated legacy profile
79
+
80
+
The legacy profile remains supported during migration:
81
+
82
+
```yaml
58
83
enclaves:
59
84
- agent:
60
85
model: gpt-5
@@ -65,6 +90,7 @@ enclaves:
65
90
sensitivity: confidential
66
91
```
67
92
93
+
- `enclaves[].agent.github.cli: issues-read-v1` is deprecated. Migrate to `enclaves[].agent.tools.github`.
68
94
- `issues-read-v1`permits only the `list_issues` and `issue_read` GitHub MCP
69
95
tools. GraphQL, search, writes, and all other GitHub tools fail closed.
70
96
- V1 allows at most one repository whose sensitivity is neither `public` nor `trusted` in the agent entry; `trusted` is public-equivalent for this limit.
Copy file name to clipboardExpand all lines: docs/src/content/docs/experimental/enclaves.md
+28-4Lines changed: 28 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,16 +31,41 @@ The generated gateway upstream uses a fresh masked capability for each workflow
31
31
32
32
This compiler contract depends on the unified enclave implementation from `github/gh-aw-firewall#6992`. Until that change is available in an AWF release, pinning an older AWF version will not provide the enclave server.
33
33
34
-
## GitHub Issues access from agent enclaves
34
+
## GitHub tool access from agent enclaves
35
35
36
-
Agent enclaves can opt into the closed `issues-read-v1` profile:
36
+
Prefer `agent.tools.github` for new workflows:
37
37
38
38
```yaml
39
39
sandbox:
40
40
agent:
41
41
id: awf
42
42
mcp:
43
43
version: v0.4.15
44
+
enclaves:
45
+
- agent:
46
+
model: gpt-5
47
+
tools:
48
+
github:
49
+
allowed: [list_issues, issue_read]
50
+
allowed-repos: [octo-org/private-service]
51
+
min-integrity: none
52
+
repos:
53
+
- repo: octo-org/private-service
54
+
sensitivity: confidential
55
+
timeout: 180
56
+
```
57
+
58
+
- `allowed`is required and currently accepts only `list_issues` and `issue_read`.
59
+
- `allowed-repos`is optional. If omitted, the enclave identity inherits the enclave's `repos` list. If set, every entry must also appear in that list.
60
+
- `min-integrity`is optional and defaults to `approved`.
61
+
- GraphQL, search, writes, and every other GitHub tool remain denied.
62
+
- The minimum supported versions are AWF `v0.28.9` (or `v0.28.14` when using `trusted`) and mcpg `v0.4.15`.
63
+
64
+
## Deprecated `issues-read-v1` profile
65
+
66
+
Agent enclaves can still opt into the legacy profile during migration:
67
+
68
+
```yaml
44
69
enclaves:
45
70
- agent:
46
71
model: gpt-5
@@ -52,8 +77,7 @@ enclaves:
52
77
timeout: 180
53
78
```
54
79
55
-
`issues-read-v1`is the only accepted `agent.github.cli` value. Script
56
-
enclaves cannot configure `github`. The first profile version accepts at most one repository whose sensitivity is neither `public` nor `trusted`; additional assigned repositories may declare `sensitivity: public` or `trusted`.
80
+
`issues-read-v1` is the only accepted `agent.github.cli` value, and it is deprecated in favor of `agent.tools.github`. Script enclaves cannot configure `github`. The first profile version accepts at most one repository whose sensitivity is neither `public` nor `trusted`; additional assigned repositories may declare `sensitivity: public` or `trusted`.
57
81
58
82
The profile permits only `list_issues` and `issue_read` through the GitHub MCP
59
83
server. GraphQL, search, writes, and every other GitHub tool are denied.
0 commit comments