Skip to content

Commit acff070

Browse files
Copilotmnkiefer
andauthored
Merge origin/main to resolve conflicts
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
2 parents 0e827d8 + d1d52c2 commit acff070

327 files changed

Lines changed: 7452 additions & 6239 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/aw/actions-lock.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,11 +247,21 @@
247247
"digest": "sha256:0f54fa48dd1a03ef6d171574eecf9a9edbf0406cea011a534cd12ed1fcb46715",
248248
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.25.67@sha256:0f54fa48dd1a03ef6d171574eecf9a9edbf0406cea011a534cd12ed1fcb46715"
249249
},
250+
"ghcr.io/github/gh-aw-firewall/agent:0.27.0": {
251+
"image": "ghcr.io/github/gh-aw-firewall/agent:0.27.0",
252+
"digest": "sha256:3816d1692e6d96887b27f1e4f1d64b8d7edb43ed9d7506b8f203913cbb81c248",
253+
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.27.0@sha256:3816d1692e6d96887b27f1e4f1d64b8d7edb43ed9d7506b8f203913cbb81c248"
254+
},
250255
"ghcr.io/github/gh-aw-firewall/agent:0.27.1": {
251256
"image": "ghcr.io/github/gh-aw-firewall/agent:0.27.1",
252257
"digest": "sha256:55149fa2daf8fa8afa2803f2ac1a3534591a7c96f173ee2aec9545fbe67305df",
253258
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.27.1@sha256:55149fa2daf8fa8afa2803f2ac1a3534591a7c96f173ee2aec9545fbe67305df"
254259
},
260+
"ghcr.io/github/gh-aw-firewall/agent:0.27.2": {
261+
"image": "ghcr.io/github/gh-aw-firewall/agent:0.27.2",
262+
"digest": "sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6",
263+
"pinned_image": "ghcr.io/github/gh-aw-firewall/agent:0.27.2@sha256:f88e5b17b6b7a600117bc121114d6ce2155c88c983c0c939c5df884f730fa1d6"
264+
},
255265
"ghcr.io/github/gh-aw-firewall/api-proxy:0.25.18": {
256266
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.18",
257267
"digest": "sha256:d16a40a3ca6e989896d0cef9f31b9412bb1fcc8755bafcafb95012ae1078539b",
@@ -292,11 +302,21 @@
292302
"digest": "sha256:d3f51df1869bda0e1f71ae31a81450641c6ae67404e0769469aae34c2738aeb5",
293303
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.25.67@sha256:d3f51df1869bda0e1f71ae31a81450641c6ae67404e0769469aae34c2738aeb5"
294304
},
305+
"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.0": {
306+
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.0",
307+
"digest": "sha256:f28d2bd3197fb6ef9ec40ef345bbf2bb33e50151a8e72e89abb618fc3d0066eb",
308+
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.0@sha256:f28d2bd3197fb6ef9ec40ef345bbf2bb33e50151a8e72e89abb618fc3d0066eb"
309+
},
295310
"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.1": {
296311
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.1",
297312
"digest": "sha256:2802437f05830336ea3ae8639f628776608d14d95b5b3cf30f161eb505e29752",
298313
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.1@sha256:2802437f05830336ea3ae8639f628776608d14d95b5b3cf30f161eb505e29752"
299314
},
315+
"ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2": {
316+
"image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2",
317+
"digest": "sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4",
318+
"pinned_image": "ghcr.io/github/gh-aw-firewall/api-proxy:0.27.2@sha256:ee39841d980878ebbb87592903b06d31a1af500c71525c9616f7e8e2a27041a4"
319+
},
300320
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.28": {
301321
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.28",
302322
"digest": "sha256:fdf310e4678ce58d248c466b89399e9680a3003038fd19322c388559016aaac7",
@@ -327,11 +347,21 @@
327347
"digest": "sha256:97387002ec54c8ab9f255d5aaf3d435071642e058f528c8268ca0e80b201609a",
328348
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.25.67@sha256:97387002ec54c8ab9f255d5aaf3d435071642e058f528c8268ca0e80b201609a"
329349
},
350+
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.0": {
351+
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.0",
352+
"digest": "sha256:42529ecb9f90da5adb00593d268dfdbd35d14bb1dc92dd897286b27ce1e3d58d",
353+
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.0@sha256:42529ecb9f90da5adb00593d268dfdbd35d14bb1dc92dd897286b27ce1e3d58d"
354+
},
330355
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.1": {
331356
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.1",
332357
"digest": "sha256:2e6dc98321dbf82840f83ec0ef8b198506149255a15d3a7854d59c0d34063e27",
333358
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.1@sha256:2e6dc98321dbf82840f83ec0ef8b198506149255a15d3a7854d59c0d34063e27"
334359
},
360+
"ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.2": {
361+
"image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.2",
362+
"digest": "sha256:02f3ec08f32dc26c5427920c6a2e2f3036238fce44802f2f11ef49ed8621b5d0",
363+
"pinned_image": "ghcr.io/github/gh-aw-firewall/cli-proxy:0.27.2@sha256:02f3ec08f32dc26c5427920c6a2e2f3036238fce44802f2f11ef49ed8621b5d0"
364+
},
335365
"ghcr.io/github/gh-aw-firewall/squid:0.25.18": {
336366
"image": "ghcr.io/github/gh-aw-firewall/squid:0.25.18",
337367
"digest": "sha256:eb102afcfbae26ffcec016adebb74d3be7b0a5bf376ba306599cdf3effbe288e",
@@ -372,11 +402,21 @@
372402
"digest": "sha256:9a05085db054f41bd67c772bcfc25cabc15bc33ee993b051a31e30669dd2031f",
373403
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.25.67@sha256:9a05085db054f41bd67c772bcfc25cabc15bc33ee993b051a31e30669dd2031f"
374404
},
405+
"ghcr.io/github/gh-aw-firewall/squid:0.27.0": {
406+
"image": "ghcr.io/github/gh-aw-firewall/squid:0.27.0",
407+
"digest": "sha256:d6a01d4cf3d928e6a7fc42e34afef228e753dce87646edc91d8a5cd0b612d9a6",
408+
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.27.0@sha256:d6a01d4cf3d928e6a7fc42e34afef228e753dce87646edc91d8a5cd0b612d9a6"
409+
},
375410
"ghcr.io/github/gh-aw-firewall/squid:0.27.1": {
376411
"image": "ghcr.io/github/gh-aw-firewall/squid:0.27.1",
377412
"digest": "sha256:1f3df3207dc9faa9080088115ca50a5ab0d7a692c61dffa8c8898d0b7b750413",
378413
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.27.1@sha256:1f3df3207dc9faa9080088115ca50a5ab0d7a692c61dffa8c8898d0b7b750413"
379414
},
415+
"ghcr.io/github/gh-aw-firewall/squid:0.27.2": {
416+
"image": "ghcr.io/github/gh-aw-firewall/squid:0.27.2",
417+
"digest": "sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591",
418+
"pinned_image": "ghcr.io/github/gh-aw-firewall/squid:0.27.2@sha256:2e3a717e5f19a654cd9a2263beb52012b56bcb68562ec5ae2e42f9d156b49591"
419+
},
380420
"ghcr.io/github/gh-aw-mcpg:v0.2.19": {
381421
"image": "ghcr.io/github/gh-aw-mcpg:v0.2.19",
382422
"digest": "sha256:44d4d8de7e6c37aaea484eba489940c52df6a0b54078ddcbc9327592d5b3c3dd",

.github/aw/create-agentic-workflow.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ The main agent job must stay read-only.
8989

9090
- Do not grant `issues: write`, `pull-requests: write`, or `contents: write` to the agent job.
9191
- Route GitHub writes through `safe-outputs:`.
92+
- When targeting the Copilot coding agent, recommend `permissions: { copilot-requests: write }` so Copilot can authenticate with `${{ github.token }}`.
9293
- If the user asks for direct writes, explain why the safe-output pattern is required.
9394

9495
### 4. Select tools

.github/aw/safe-outputs-runtime.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,8 @@ safe-outputs:
189189

190190
Fields that influence permission computation (`add-comment.discussions`, `create-pull-request.fallback-as-issue`) remain literal booleans.
191191

192+
- `timeout-minutes:` - Timeout for the safe-outputs job in minutes (integer, default: `45`)
193+
- Increase for workflows with many sequential safe-output operations (e.g. `push-to-pull-request-branch` against large repositories)
192194
- `max-patch-size:` - Maximum allowed git patch size in kilobytes (integer, default: 1024 KB = 1 MB)
193195
- Patches exceeding this size are rejected to prevent accidental large changes
194196
- `max-patch-files:` - Maximum allowed number of unique files in a create-pull-request patch (integer, default: 100)
@@ -235,10 +237,14 @@ Fields that influence permission computation (`add-comment.discussions`, `create
235237
- `threat-detection:` - Threat detection configuration (auto-enabled for all safe-outputs workflows)
236238
- Automatically enabled by default; customizable via explicit configuration
237239
- Fields:
238-
- `enabled:` - Enable/disable threat detection (boolean, default: `true`)
240+
- `enabled:` - Enable/disable threat detection (boolean or expression, default: `true`)
239241
- `prompt:` - Additional instructions appended to threat detection analysis (string)
240242
- `engine:` - AI engine for threat detection (engine config or `false` to disable AI detection)
241-
- `steps:` - Extra job steps to run after detection (array)
243+
- `steps:` - Extra job steps to run before engine execution (array)
244+
- `post-steps:` - Extra job steps to run after engine execution (array)
245+
- `max-ai-credits:` - Per-run AIC budget for the detection engine (numeric only, no expressions; default `${{ vars.GH_AW_DEFAULT_DETECTION_MAX_AI_CREDITS || '400' }}`)
246+
- `runs-on:` - Runner override for the detection job (defaults to `agent.runs-on`)
247+
- `continue-on-error:` - When `true` (default), detection failures emit a warning and proceed with a `needs-review` label; when `false`, failures block safe outputs (boolean or expression)
242248
- Example to disable AI-based detection (use custom steps only):
243249

244250
```yaml

.github/aw/syntax-core.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ The YAML frontmatter supports these fields:
9999
- When `"full"`, checks both the frontmatter hash and body hash; use when prompt-body edits should also trigger recompilation detection
100100

101101
- **`permissions:`** - GitHub token permissions
102-
- Object with permission levels: `read`, `none`
103-
- Available permissions: `contents`, `issues`, `pull-requests`, `discussions`, `actions`, `checks`, `statuses`, `models`, `deployments`, `security-events`
102+
- Object with permission levels: `read`, `none` (and limited `write` for specific scopes)
103+
- Available permissions: `contents`, `issues`, `pull-requests`, `discussions`, `actions`, `checks`, `statuses`, `models`, `deployments`, `security-events`, `copilot-requests`
104104
- Write permissions are not allowed for security reasons; use `safe-outputs` for write operations instead
105-
- Exception: `id-token: write` is allowed to enable OIDC token minting for external authentication, but use with caution and follow security best practices
105+
- Exceptions: `id-token: write` is allowed to enable OIDC token minting; `copilot-requests: write` is recommended when targeting the Copilot coding agent so it can authenticate with `${{ github.token }}`
106106
- **`runs-on:`** - Runner type for the main agent job (string, array, or object)
107107
- **`runs-on-slim:`** - Runner type for all framework/generated jobs (activation, safe-outputs, unlock, etc.). Defaults to `ubuntu-slim`. `safe-outputs.runs-on` takes precedence for safe-output jobs specifically.
108108
- **`timeout-minutes:`** - Agent execution step timeout in minutes (integer or GitHub Actions expression, defaults to 20 minutes; custom and safe-output jobs use the GitHub Actions platform default of 360 minutes unless explicitly set). Expressions are useful in compiled workflows that define `workflow_call` inputs, for example `timeout-minutes: ${{ inputs.timeout }}`. This setting applies to the workflow being compiled, not to plain GitHub Actions caller jobs that use job-level `uses:` (GitHub does not allow `timeout-minutes` on those caller jobs).

.github/aw/update-agentic-workflow.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ Use [workflow-editing.md](workflow-editing.md) as the source of truth.
4545
- preserve existing style and structure unless reorganization is required
4646
- do not rewrite unrelated frontmatter sections
4747
- keep the agent job read-only
48+
- when targeting the Copilot coding agent, recommend `permissions: { copilot-requests: write }` for Copilot authentication
4849
- use `safe-outputs:` for writes
4950
- prefer `toolsets:` for GitHub tools
5051

0 commit comments

Comments
 (0)