@vypdev/copilot 3.3.0 → 3.5.0

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.
Files changed (86) hide show
  1. package/README.md +33 -5
  2. package/action.yml +85 -109
  3. package/build/api/index.js +4737 -1506
  4. package/build/api/src/api.d.ts +60 -14
  5. package/build/api/src/application/errors/application_error.d.ts +10 -0
  6. package/build/api/src/application/ports/bugbot_context_ports.d.ts +20 -7
  7. package/build/api/src/application/ports/bugbot_finding_publication_ports.d.ts +4 -4
  8. package/build/api/src/application/ports/bugbot_finding_resolution_ports.d.ts +4 -4
  9. package/build/api/src/application/ports/bugbot_issue_read_ports.d.ts +3 -0
  10. package/build/api/src/application/ports/bugbot_issue_write_ports.d.ts +12 -0
  11. package/build/api/src/application/ports/bugbot_pull_request_read_ports.d.ts +3 -17
  12. package/build/api/src/application/ports/bugbot_pull_request_resolution_ports.d.ts +7 -1
  13. package/build/api/src/application/ports/bugbot_pull_request_write_ports.d.ts +6 -1
  14. package/build/api/src/application/ports/bugbot_reconciliation_ports.d.ts +18 -0
  15. package/build/api/src/application/ports/bugbot_review_navigation_ports.d.ts +13 -0
  16. package/build/api/src/application/ports/bugbot_rule_ports.d.ts +1 -1
  17. package/build/api/src/application/ports/bugbot_scm_ports.d.ts +14 -0
  18. package/build/api/src/application/ports/bugbot_telemetry_ports.d.ts +27 -2
  19. package/build/api/src/application/ports/message_catalog_ports.d.ts +17 -0
  20. package/build/api/src/application/ports/pull_request_review_comment_ports.d.ts +31 -2
  21. package/build/api/src/data/model/application_error.d.ts +82 -0
  22. package/build/api/src/data/model/result.d.ts +3 -4
  23. package/build/api/src/domain/agent.d.ts +6 -5
  24. package/build/api/src/domain/branch_sync_validation.d.ts +4 -0
  25. package/build/api/src/domain/bugbot/context.d.ts +68 -0
  26. package/build/api/src/domain/bugbot/finding.d.ts +61 -0
  27. package/build/api/src/domain/bugbot/review_projection.d.ts +33 -0
  28. package/build/api/src/domain/bugbot/review_state.d.ts +29 -0
  29. package/build/api/src/domain/message_catalog.d.ts +35 -0
  30. package/build/api/src/tooling/bugbot_analytics.d.ts +2 -1
  31. package/build/cli/index.js +93317 -71617
  32. package/build/github_action/index.js +79616 -63218
  33. package/build/web/assets/index-2NVaAtP1.js +3 -0
  34. package/build/web/assets/index-FN-aja4Y.css +1 -0
  35. package/build/web/index.html +14 -0
  36. package/package.json +35 -22
  37. package/scripts/install-git-hooks.cjs +38 -14
  38. package/setup/ISSUE_TEMPLATE/hotfix.yml +1 -1
  39. package/setup/ISSUE_TEMPLATE/release.yml +1 -1
  40. package/setup/pull_request_template.md +9 -135
  41. package/setup/source-workflows/copilot_pull_request_approval.yml +55 -0
  42. package/setup/workflows/agent-cli-provisioning.yml +37 -13
  43. package/setup/workflows/copilot_close_inactive_issues.yml +4 -4
  44. package/setup/workflows/copilot_commit.yml +16 -16
  45. package/setup/workflows/copilot_credential_health.yml +0 -20
  46. package/setup/workflows/copilot_deployment_orchestration.yml +91 -0
  47. package/setup/workflows/copilot_issue.yml +15 -19
  48. package/setup/workflows/copilot_issue_comment.yml +17 -19
  49. package/setup/workflows/copilot_pull_request.yml +21 -22
  50. package/setup/workflows/copilot_pull_request_approval.yml +51 -0
  51. package/setup/workflows/copilot_pull_request_comment.yml +17 -19
  52. package/setup/workflows/copilot_pull_request_merge_queue.yml +20 -0
  53. package/setup/workflows/copilot_pull_request_review_state.yml +109 -0
  54. package/setup/workflows/hotfix_workflow.yml +157 -168
  55. package/setup/workflows/release_workflow.yml +157 -168
  56. package/build/api/src/application/usecases/steps/commit/bugbot/types.d.ts +0 -112
  57. package/build/api/src/data/model/agent.d.ts +0 -2
  58. package/build/api/src/data/model/ai.d.ts +0 -28
  59. package/build/api/src/data/model/branch_configuration.d.ts +0 -6
  60. package/build/api/src/data/model/branches.d.ts +0 -12
  61. package/build/api/src/data/model/commit.d.ts +0 -8
  62. package/build/api/src/data/model/config.d.ts +0 -30
  63. package/build/api/src/data/model/emoji.d.ts +0 -5
  64. package/build/api/src/data/model/execution.d.ts +0 -75
  65. package/build/api/src/data/model/execution_components.d.ts +0 -43
  66. package/build/api/src/data/model/execution_inputs.d.ts +0 -94
  67. package/build/api/src/data/model/hotfix.d.ts +0 -7
  68. package/build/api/src/data/model/images.d.ts +0 -27
  69. package/build/api/src/data/model/issue.d.ts +0 -27
  70. package/build/api/src/data/model/issue_types.d.ts +0 -30
  71. package/build/api/src/data/model/labels.d.ts +0 -60
  72. package/build/api/src/data/model/locale.d.ts +0 -6
  73. package/build/api/src/data/model/project_detail.d.ts +0 -15
  74. package/build/api/src/data/model/projects.d.ts +0 -14
  75. package/build/api/src/data/model/pull_request.d.ts +0 -32
  76. package/build/api/src/data/model/recommendation_state.d.ts +0 -6
  77. package/build/api/src/data/model/release.d.ts +0 -6
  78. package/build/api/src/data/model/single_action.d.ts +0 -43
  79. package/build/api/src/data/model/size_threshold.d.ts +0 -6
  80. package/build/api/src/data/model/size_thresholds.d.ts +0 -10
  81. package/build/api/src/data/model/tokens.d.ts +0 -4
  82. package/build/api/src/data/model/welcome.d.ts +0 -5
  83. package/build/api/src/data/model/workflows.d.ts +0 -5
  84. package/build/api/src/domain/bugbot/review_command.d.ts +0 -16
  85. package/build/api/src/domain/copilot_lifecycle.d.ts +0 -42
  86. package/build/api/src/domain/pull_request_description.d.ts +0 -13
package/README.md CHANGED
@@ -21,7 +21,8 @@ Full documentation: **[docs.page/vypdev/copilot](https://docs.page/vypdev/copilo
21
21
  | [How to use](https://docs.page/vypdev/copilot/how-to-use) | Step-by-step setup: PAT, `copilot setup`, workflows |
22
22
  | [Features & capabilities](https://docs.page/vypdev/copilot/features) | Workflow triggers, single actions, agent execution, and concurrency |
23
23
  | [Authentication](https://docs.page/vypdev/copilot/authentication) | PAT setup, permissions, token best practices |
24
- | [Configuration](https://docs.page/vypdev/copilot/configuration) | All inputs: branches, labels, projects, images, etc. |
24
+ | [Configuration](https://docs.page/vypdev/copilot/configuration) | All inputs: branches, labels, projects, locale, agents, and more |
25
+ | [Release orchestration](https://docs.page/vypdev/copilot/issues/deployment-orchestration) | Production-first release/hotfix flow, npm OIDC, reconciliation, and recovery |
25
26
  | [Agents](https://docs.page/vypdev/copilot/agents) | Runtime, model, CLI, policy, and failure behavior |
26
27
  | [Security & Operations](https://docs.page/vypdev/copilot/security-operations) | Credentials, trust boundaries, provisioning, verification, upgrades, and rollback |
27
28
  | [Development](https://docs.page/vypdev/copilot/development) | Architecture, testing, documentation, artifacts, and release process |
@@ -38,6 +39,8 @@ pnpm add --global @vypdev/copilot
38
39
  copilot --version
39
40
  cd /path/to/your/repository
40
41
  copilot setup
42
+ # Optional local visual assistant, in the same repository:
43
+ copilot setup --web
41
44
  ```
42
45
 
43
46
  `@vypdev/copilot` contains both the `copilot` CLI and the compiled GitHub Action.
@@ -45,16 +48,36 @@ The global installation makes the CLI and the setup templates available; it does
45
48
  not install an Action into GitHub. `copilot setup` is the canonical initialization
46
49
  flow and will, according to the selected features:
47
50
 
48
- - copy the required workflows, issue templates, and pull request template into the repository;
51
+ - copy the selected workflows, Issue Forms, pull request template, and repository agent guidance into the repository;
49
52
  - create the labels and issue types used by the workflows;
50
53
  - configure non-sensitive Repository Variables; and
51
54
  - validate or provision the workflow PAT and provider credentials at the selected scope.
52
55
 
56
+ The wizard selects issue workflow kinds with a Space/Enter multi-select; `All`
57
+ is the default. It also generates `.copilot/repository-profile.json`,
58
+ `.copilot/AGENT_GUIDE.md`, and the Codex skill
59
+ `.agents/skills/copilot-repository-workflow/SKILL.md` by default. The generated
60
+ guidance makes clear that the Action owns remote branch lifecycle: agents work
61
+ on the exact existing branch and push normal commits, but do not create, rename,
62
+ delete, replace, or force-push managed branches.
63
+
53
64
  The setup PAT entered by the operator is separate from the workflow `PAT` Secret.
65
+ Interactive setup can guide creation of both via GitHub's prefilled PAT form:
66
+ picks the permission-affecting setup options first, then the operator creates a temporary setup token, and the bot account creates the
67
+ persistent workflow token. GitHub handles account switching, 2FA, repository
68
+ selection, and final creation; Copilot never creates or revokes either token.
54
69
  Use `copilot setup --dry-run` to inspect the plan before making local or remote
55
70
  changes. See the complete [How to use](https://docs.page/vypdev/copilot/how-to-use)
56
71
  guide and [Authentication](https://docs.page/vypdev/copilot/authentication).
57
72
 
73
+ `--web` opens an ephemeral, loopback-only setup page with a six-stage progress
74
+ rail, plan review, separate masked inputs for the two PAT roles, and a
75
+ System/Light/Dark theme control. If the browser does not open, use the local
76
+ URL printed in the terminal. The page does not create PATs: GitHub owns the
77
+ form, account switch, 2FA, and token issuance. You must explicitly approve
78
+ the plan and Apply; `--web` cannot be combined with unattended approval or
79
+ secret-bearing command-line flags. The terminal wizard remains the default.
80
+
58
81
  ### Manual workflow integration (advanced)
59
82
 
60
83
  You can integrate the Action manually when the CLI setup flow is not suitable:
@@ -81,14 +104,19 @@ for action-level examples.
81
104
  - **Pull requests** — Link PRs to issues, update project columns, assign reviewers; optional AI-generated PR description and automatic Bugbot review with stable finding threads; use `/copilot analyze` or `@vypbot analyze ...` for read-only review, or request an authorized change.
82
105
  - **Push (commits)** — Notify the issue, update size/progress, and optionally run Bugbot; a separate agent-free observer watches every branch and recommends synchronizing children when their parent moves.
83
106
  - **Projects** — Link issues and PRs to boards and move them to the right columns.
84
- - **Single actions** — On-demand: check progress, think, create release/tag, mark deployed, etc.
107
+ - **Single actions** — On-demand maintenance and analysis, plus workflow-owned callbacks for durable release and hotfix operations.
85
108
  - **Branch synchronization** — Authorized issue/PR commands merge parent into working branch, call the fixer only for eligible conflicts, run verification, reject remote races, push, and report exactly what happened.
86
- - **Evidence and safety** — Every run writes a bounded Job Summary; PR reviews expose a `Copilot / Review` Check Run, active findings fail that check, agent sandboxes run without approval or network access, and all agent/comment content remains bounded, secret-redacted, and treated as untrusted data.
109
+ - **Release and hotfix orchestration** — Cut from the correct immutable origin, promote through a protected production PR, publish only the accepted production commit, and reconcile it back through resumable managed PRs without keeping a runner polling checks.
110
+ - **Evidence and safety** — Every run writes a bounded Job Summary; PR findings are reconciled from GitHub into one status card, historical review status blocks, and a `Copilot / Review` Check Run. Actionable findings are neutral by default and fail it only when `bugbot-fail-on-unresolved` is enabled, while unknown/incomplete state always fails closed. Agent sandboxes run without approval or network access, and all agent/comment content remains bounded, secret-redacted, and treated as untrusted data.
87
111
  - **Bugbot quality** — Hierarchical rules, semantic finding identity, safe GitHub suggestions, analysis-only dry runs, a multilingual regression corpus, real-agent benchmark runner, content-free telemetry/analytics, and the provider-neutral `@vypdev/copilot/bugbot` API.
88
- - **Concurrency** — Each workflow waits only for older active runs of that same workflow. Polling is adaptive and rate-limit-aware, with a 90-minute queue deadline and no cancellation or overwrite of intermediate runs. Event templates can also skip bot-authored jobs before runner allocation through the optional, generic `COPILOT_BOT_LOGIN` Repository Variable. See [Features → Workflow concurrency](https://docs.page/vypdev/copilot/features#workflow-concurrency-and-sequential-execution).
112
+ - **Concurrency** — Durable mutation workflows wait only for older active runs of that same workflow, with rate-limit-aware polling and a 90-minute deadline. Commit and Pull Request templates share a branch-scoped latest-revision group so a newer Bugbot review supersedes an older one; provider re-reads and head guards make interrupted finding transitions retryable. Event templates can also skip bot-authored jobs before runner allocation through `COPILOT_BOT_LOGIN`. See [Features → Workflow concurrency](https://docs.page/vypdev/copilot/features#workflow-concurrency-and-sequential-execution).
89
113
 
90
114
  AI features use the configured agent runtime and qualified model; see the [Agents](https://docs.page/vypdev/copilot/agents) and [Security & Operations](https://docs.page/vypdev/copilot/security-operations) documentation. You can run progress and Bugbot locally through the [Single actions → Workflow & CLI](https://docs.page/vypdev/copilot/single-actions/workflow-and-cli) path.
91
115
 
116
+ The programmatic Bugbot API is request-only: `review(BugbotReviewRequest)` is
117
+ the sole review entrypoint, and internal runtime aggregates are not exported.
118
+ See the [Programmatic API](https://docs.page/vypdev/copilot/bugbot/programmatic-api).
119
+
92
120
  ---
93
121
 
94
122
  ## Contributing
package/action.yml CHANGED
@@ -1,10 +1,19 @@
1
- name: "Copilot - Github with super powers"
1
+ name: "Copilot - GitHub with super powers"
2
2
  description: "Automates branch management, GitHub project linking, and issue/PR tracking with Git-Flow methodology."
3
3
  author: "Efra Espada"
4
4
  inputs:
5
5
  debug:
6
6
  description: "Enable debug mode."
7
7
  default: "false"
8
+ pr-approval-observer:
9
+ description: "Run the isolated, trusted-default-branch pull-request approval observer."
10
+ default: "false"
11
+ pr-approval-pr-number:
12
+ description: "Positive pull-request number for an authorized manual approval recheck."
13
+ default: ""
14
+ pr-approval-policy:
15
+ description: "Versioned PR approval policy forwarded by the observer workflow; runtime rereads the Variable before a review write."
16
+ default: ""
8
17
  single-action:
9
18
  description: "Launch single actions."
10
19
  default: ""
@@ -15,14 +24,17 @@ inputs:
15
24
  description: "Version target for executing single action."
16
25
  default: ""
17
26
  single-action-title:
18
- description: "Title target for executing single action."
27
+ description: "Durable release/hotfix title for prepare_deployment_action."
19
28
  default: ""
20
29
  single-action-changelog:
21
- description: "Changelog target for executing single action."
30
+ description: "Durable release/hotfix changelog for prepare_deployment_action."
22
31
  default: ""
23
32
  single-action-message:
24
33
  description: "Markdown message for the publish_issue_comment single action."
25
34
  default: ""
35
+ single-action-operation-id:
36
+ description: "Expected durable deployment operation ID for trusted continuation actions."
37
+ default: ""
26
38
  single-action-comment-id:
27
39
  description: "Optional issue comment ID to replace or append to."
28
40
  default: ""
@@ -35,12 +47,15 @@ inputs:
35
47
  emoji-labeled-title:
36
48
  description: "Enable titles with emojis based on issue labels."
37
49
  default: "true"
38
- branch-management-launcher-label:
39
- description: "Label to trigger branch management actions."
40
- default: "branched"
41
- branch-management-always:
42
- description: "If true, ignores the branch-management-launcher-label requirement for running Git Board."
50
+ issue-managed-branches:
51
+ description: "Let the Action create linked branches after an authorized in-progress start."
52
+ default: "true"
53
+ pre-branch-sdd:
54
+ description: "Require a validated SDD first commit for started feature and contract-change issues. Requires issue-managed-branches."
43
55
  default: "false"
56
+ issue-workflow-profile:
57
+ description: "JSON profile of enabled issue workflows."
58
+ default: ""
44
59
  branch-management-emoji:
45
60
  description: "Emoji to indicate branched issues. It will be ignored if emoji-labeled-title is false."
46
61
  default: "🧑‍💻"
@@ -122,9 +137,12 @@ inputs:
122
137
  state-planned-label:
123
138
  description: "Label for the Copilot lifecycle state: planned."
124
139
  default: "state:planned"
125
- state-in-progress-label:
126
- description: "Label for the Copilot lifecycle state: implementation in progress."
127
- default: "state:in-progress"
140
+ state-working-label:
141
+ description: "Label for work ready on a branch or branchless help."
142
+ default: "state:working"
143
+ state-specifying-label:
144
+ description: "Label for active SDD clarification and drafting."
145
+ default: "state:specifying"
128
146
  state-reviewing-label:
129
147
  description: "Label for the Copilot lifecycle state: reviewing."
130
148
  default: "state:reviewing"
@@ -306,12 +324,15 @@ inputs:
306
324
  description: "Color of the issue type for help."
307
325
  default: "purple"
308
326
 
309
- issues-locale:
310
- description: "Locale of the issues."
327
+ repository-locale:
328
+ description: "BCP-47 locale for repository-facing messages. Issue and pull-request locales inherit it."
311
329
  default: "en-US"
330
+ issues-locale:
331
+ description: "Optional BCP-47 locale override for issue-facing messages. Empty inherits repository-locale."
332
+ default: ""
312
333
  pull-requests-locale:
313
- description: "Locale of the pull requests."
314
- default: "en-US"
334
+ description: "Optional BCP-47 locale override for pull-request-facing messages. Empty inherits repository-locale."
335
+ default: ""
315
336
  main-branch:
316
337
  description: "Name of the main branch (e.g., master)."
317
338
  default: "master"
@@ -336,78 +357,6 @@ inputs:
336
357
  release-tree:
337
358
  description: "Naming convention for release branches."
338
359
  default: "release"
339
- images-on-issue:
340
- description: "Include images in issue comments."
341
- default: "true"
342
- images-on-pull-request:
343
- description: "Include images in pull request comments."
344
- default: "true"
345
- images-on-commit:
346
- description: "Include images in commit comments."
347
- default: "true"
348
- images-issue-automatic:
349
- description: "Image URLs to display in automatic action issue comments."
350
- default: ""
351
- images-issue-feature:
352
- description: "Image URLs to display in feature action issue comments."
353
- default: ""
354
- images-issue-bugfix:
355
- description: "Image URLs to display in bugfix action issue comments."
356
- default: ""
357
- images-issue-docs:
358
- description: "Image URLs to display in docs action issue comments."
359
- default: ""
360
- images-issue-chore:
361
- description: "Image URLs to display in chore action issue comments."
362
- default: ""
363
- images-issue-hotfix:
364
- description: "Image URLs to display in hotfix action issue comments."
365
- default: ""
366
- images-issue-release:
367
- description: "Image URLs to display in release action issue comments."
368
- default: ""
369
- images-pull-request-automatic:
370
- description: "Image URLs to display in automatic action pull request comments."
371
- default: ""
372
- images-pull-request-feature:
373
- description: "Image URLs to display in feature action pull request comments."
374
- default: ""
375
- images-pull-request-bugfix:
376
- description: "Image URLs to display in bugfix action pull request comments."
377
- default: ""
378
- images-pull-request-docs:
379
- description: "Image URLs to display in docs action pull request comments."
380
- default: ""
381
- images-pull-request-chore:
382
- description: "Image URLs to display in chore action pull request comments."
383
- default: ""
384
- images-pull-request-hotfix:
385
- description: "Image URLs to display in hotfix action pull request comments."
386
- default: ""
387
- images-pull-request-release:
388
- description: "Image URLs to display in release action pull request comments."
389
- default: ""
390
- images-commit-feature:
391
- description: "Image URLs to display in feature action commit comments."
392
- default: ""
393
- images-commit-bugfix:
394
- description: "Image URLs to display in bugfix action commit comments."
395
- default: ""
396
- images-commit-release:
397
- description: "Image URLs to display in release action commit comments."
398
- default: ""
399
- images-commit-automatic:
400
- description: "Image URLs to display in automatic action commit comments."
401
- default: ""
402
- images-commit-docs:
403
- description: "Image URLs to display in docs action commit comments."
404
- default: ""
405
- images-commit-chore:
406
- description: "Image URLs to display in chore action commit comments."
407
- default: ""
408
- images-commit-hotfix:
409
- description: "Image URLs to display in hotfix action commit comments."
410
- default: ""
411
360
  commit-prefix-transforms:
412
361
  description: "List of transformations to apply sequentially for commit prefix generation. Options: replace-slash, replace-all, lowercase, uppercase, kebab-case, snake-case, camel-case, trim, remove-numbers, clean-dashes, etc."
413
362
  default: "replace-slash"
@@ -420,21 +369,51 @@ inputs:
420
369
  hotfix-workflow:
421
370
  description: "Hotfix workflow for running hotfix deploys."
422
371
  default: "hotfix_workflow.yml"
372
+ release-reconciliation-strategy:
373
+ description: "Release reconciliation source after production publication: production-lineage, canonical-gitflow, or manual."
374
+ default: "production-lineage"
375
+ hotfix-reconciliation-strategy:
376
+ description: "Hotfix reconciliation source after production publication: production-lineage, canonical-gitflow, or manual."
377
+ default: "production-lineage"
378
+ reconciliation-pr-mode:
379
+ description: "Managed PR behavior: auto, auto-merge, merge-queue, or create-only."
380
+ default: "auto"
381
+ merge-queue-check-attestations:
382
+ description: "JSON array of exact required-check attestations for merge queue targets; unknown checks block by default."
383
+ default: "[]"
384
+ reconciliation-backmerge-mode:
385
+ description: "Back-merge branch shape: auto, direct, or sync-branch."
386
+ default: "auto"
387
+ hotfix-active-release-policy:
388
+ description: "Hotfix reconciliation target policy: prefer-release, development, or both."
389
+ default: "prefer-release"
390
+ reconciliation-tree:
391
+ description: "Safe prefix for ephemeral reconciliation branches."
392
+ default: "sync"
393
+ reconciliation-cleanup:
394
+ description: "Branch cleanup after reconciliation: all, source-only, sync-only, or none."
395
+ default: "all"
396
+ reconciliation-issue-completion:
397
+ description: "Launcher issue behavior after completion: close or keep-open."
398
+ default: "close"
399
+ orchestration-presentation-mode:
400
+ description: "Release control-center detail: guided, compact, or quiet."
401
+ default: "guided"
402
+ orchestration-diagrams:
403
+ description: "Render fixed-label Mermaid diagrams with a textual equivalent in guided mode."
404
+ default: "true"
405
+ orchestration-comment-mode:
406
+ description: "Issue notification policy: update or milestones."
407
+ default: "update"
423
408
  desired-assignees-count:
424
409
  description: "The number of assignees desired for the issue or pull request. If set to 0, no assignees will be added. If the number exceeds the available members, all members will be assigned. Max 10."
425
410
  default: "1"
426
411
  desired-reviewers-count:
427
412
  description: "The number of reviewers desired for the pull request. If set to 0, no reviewers will be added. If the number exceeds the available members, all members will be reviewers. Max 15."
428
413
  default: "1"
429
- merge-timeout:
430
- description: "The timeout for the merge workflow in seconds. If set to 0, the merge will not be timed out."
431
- default: "600"
432
414
  token:
433
415
  description: "Fine-grained personal access token for branch and project operations"
434
416
  required: true
435
- queue-gate-only:
436
- description: "Admit this workflow to the sequential queue and return before constructing or executing a project action."
437
- default: "false"
438
417
  agent-provider:
439
418
  description: "Single agent provider used by findings and fixer tasks: codex, opencode, or cursor. A provider failure is terminal; no fallback provider is attempted."
440
419
  default: "codex"
@@ -447,9 +426,9 @@ inputs:
447
426
 
448
427
  agent-model:
449
428
  description: "Selected model name without the provider prefix. The provider is configured separately with agent-model-provider."
450
- default: "gpt-5.6-luna"
451
- agent-command:
452
- description: "Optional executable command for the selected CLI agent. Defaults are model-aware: codex exec with --model and model_provider, opencode run --model provider/model, or agent -p --model. No fallback command is attempted."
429
+ default: "gpt-6-luna"
430
+ agent-executable:
431
+ description: "Optional exact CLI basename or absolute executable path. Arguments, wrappers, and alternate basenames are rejected."
453
432
  default: ""
454
433
  findings-provider:
455
434
  description: "Optional provider override for findings."
@@ -464,8 +443,8 @@ inputs:
464
443
  findings-model:
465
444
  description: "Optional model override for findings."
466
445
  default: ""
467
- findings-command:
468
- description: "Optional CLI command override for findings."
446
+ findings-executable:
447
+ description: "Optional validated executable override for findings."
469
448
  default: ""
470
449
  fixer-provider:
471
450
  description: "Optional provider override for fixer."
@@ -480,8 +459,8 @@ inputs:
480
459
  fixer-model:
481
460
  description: "Optional model override for fixer."
482
461
  default: ""
483
- fixer-command:
484
- description: "Optional CLI command override for fixer."
462
+ fixer-executable:
463
+ description: "Optional validated executable override for fixer."
485
464
  default: ""
486
465
  planner-provider:
487
466
  description: "Optional provider override for planning and conversational commands."
@@ -495,8 +474,8 @@ inputs:
495
474
  planner-model:
496
475
  description: "Optional model override for planning and conversational commands."
497
476
  default: ""
498
- planner-command:
499
- description: "Optional CLI command override for planning."
477
+ planner-executable:
478
+ description: "Optional validated executable override for planning."
500
479
  default: ""
501
480
  reviewer-provider:
502
481
  description: "Optional provider override for pull-request review."
@@ -510,8 +489,8 @@ inputs:
510
489
  reviewer-model:
511
490
  description: "Optional model override for pull-request review."
512
491
  default: ""
513
- reviewer-command:
514
- description: "Optional CLI command override for pull-request review."
492
+ reviewer-executable:
493
+ description: "Optional validated executable override for pull-request review."
515
494
  default: ""
516
495
  tester-provider:
517
496
  description: "Optional provider override for future test-planning and verification tasks."
@@ -525,12 +504,9 @@ inputs:
525
504
  tester-model:
526
505
  description: "Optional model override for test tasks."
527
506
  default: ""
528
- tester-command:
529
- description: "Optional CLI command override for test tasks."
507
+ tester-executable:
508
+ description: "Optional validated executable override for test tasks."
530
509
  default: ""
531
- ai-pull-request-description:
532
- description: "Enable AI-powered automatic updates for pull request descriptions."
533
- default: "true"
534
510
  ai-pull-request-description-mode:
535
511
  description: "PR description policy: replace (full ownership), append (preserve human text), preserve (only explicit /copilot description), or disabled."
536
512
  default: "replace"