create-agdf 0.14.1 → 0.14.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/README.md +8 -2
- package/generated/plugins/agdf/.claude-plugin/plugin.json +1 -1
- package/generated/plugins/agdf/.codex-plugin/plugin.json +1 -1
- package/generated/plugins/agdf/meta/agdf-plugin.definition.json +6 -1
- package/generated/plugins/agdf/meta/copilot-payload-baseline.json +7 -0
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-plugin.definition.json +6 -1
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/local-validator.js +29 -17
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/plugin-provenance.js +50 -1
- package/generated/plugins/agdf/runtime/create-agdf/package.json +1 -1
- package/generated/plugins/agdf/runtime/runtime-manifest.json +2 -2
- package/generated/plugins/agdf/scripts/check-runtime-integrity.mjs +2 -1
- package/generated/plugins/agdf/submission/openai/availability.md +1 -1
- package/generated/plugins/agdf/submission/openai/capability-matrix.json +1 -1
- package/generated/plugins/agdf/submission/openai/release-notes.md +1 -1
- package/generated/plugins/agdf/submission/openai/reviewer-cases.json +1 -1
- package/generated/plugins/copilot/agdf/.agdf-payload-inventory.json +771 -0
- package/generated/plugins/copilot/agdf/LICENSE +201 -0
- package/generated/plugins/copilot/agdf/meta/agdf-agent-router.md +129 -0
- package/generated/plugins/copilot/agdf/meta/agdf-constitution.md +329 -0
- package/generated/plugins/copilot/agdf/meta/agdf-plugin.definition.json +331 -0
- package/generated/plugins/copilot/agdf/meta/agdf-runtime-contract.md +16 -0
- package/generated/plugins/{agdf → copilot/agdf}/plugin.json +1 -1
- package/generated/plugins/copilot/agdf/runtime/agdf-local.js +18 -0
- package/generated/plugins/copilot/agdf/runtime/agdf-session-check.js +97 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/NOTICE +10 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/bin/agdf-validator.js +11 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-interaction-locales.json +512 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-plugin.definition.json +331 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/command-registry.js +144 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/delivery-path-search-command.js +139 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/parse-args.js +173 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/runtime-context.js +83 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/validation-handlers.js +46 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/delivery-map.js +301 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/doctor.js +272 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/gate-check.js +455 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/gate-policy.js +305 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/parent-reconciliation.js +284 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/required-files.js +9 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/run-state.js +217 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/shared.js +345 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/verified-change.js +156 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/aggregate.js +18 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/gate-approval-validator.js +49 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/index.js +7 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/legacy-migration.js +95 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-parser.js +265 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-repository.js +68 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-resolver.js +45 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-writer.js +97 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/candidate-policy.js +99 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/contracts.js +237 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/claude.js +35 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/codex.js +44 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/opencode.js +234 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/prompt.js +13 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/protocol.js +13 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/claude.js +40 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/codex.js +38 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/protocol.js +12 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/persistence.js +39 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/scoring.js +21 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/search-engine.js +155 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/state-adapter.js +161 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/surfaces/capabilities.js +27 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/transports/read-only-guard.js +43 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/interaction-presentation.js +842 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/local-validator.js +239 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/plugin-provenance.js +255 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/validator-application.js +40 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime-check-consent/contract.js +73 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/package.json +6 -0
- package/generated/plugins/copilot/agdf/runtime/runtime-manifest.json +8 -0
- package/generated/submissions/openai/agdf/.codex-plugin/plugin.json +1 -1
- package/generated/submissions/openai/agdf/meta/agdf-plugin.definition.json +6 -1
- package/generated/submissions/openai/agdf/meta/copilot-payload-baseline.json +7 -0
- package/generated/submissions/openai/agdf/submission/openai/availability.md +1 -1
- package/generated/submissions/openai/agdf/submission/openai/capability-matrix.json +1 -1
- package/generated/submissions/openai/agdf/submission/openai/inventory.json +13 -9
- package/generated/submissions/openai/agdf/submission/openai/listing.json +1 -1
- package/generated/submissions/openai/agdf/submission/openai/readiness.json +2 -2
- package/generated/submissions/openai/agdf/submission/openai/readiness.md +2 -2
- package/generated/submissions/openai/agdf/submission/openai/release-notes.md +1 -1
- package/generated/submissions/openai/agdf/submission/openai/reviewer-cases.json +1 -1
- package/lib/installers/local-marketplace.js +112 -30
- package/lib/installers/plugin-installers.js +45 -9
- package/lib/public-plugin/copilot-profile.js +126 -0
- package/lib/release/version-coherence.js +4 -1
- package/lib/runtime/local-validator.js +29 -17
- package/lib/runtime/plugin-provenance.js +50 -1
- package/package.json +3 -2
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-brownfield-analysis/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-clean-implementation-review/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-code-review/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-delivery-closeout/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-delivery-path-search/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-gate-check/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-interaction-locales.json +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-qa-gate/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-release-or/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-runtime-contract.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-task-plan-review/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/agdf-ux-intent-definition/SKILL.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/closeout.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/context-graph.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/control-scaffold.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/gate-transition.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/interaction.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/modes.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/quality.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/copilot-skills/contracts/task-target-resolution.md +0 -0
- /package/generated/plugins/{agdf → copilot/agdf}/hooks/copilot-hooks.json +0 -0
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"id": "agdf",
|
|
4
|
+
"version": "0.14.2",
|
|
5
|
+
"displayName": "AI Governance & Delivery Framework",
|
|
6
|
+
"developerName": "Arndt Gold",
|
|
7
|
+
"description": "Control layer for governed AI-assisted delivery.",
|
|
8
|
+
"longDescription": "AI Governance & Delivery Framework (AGDF) is a governance framework for agentic work. Its first implementation provides a control layer for governed AI-assisted software delivery. It combines workflow skills, explicit gates, control templates and machine-readable repository checks to keep work aligned with approved scope and make evidence a prerequisite for consequential gate transitions. Supported workflows include brownfield analysis, task-plan review, QA decisions, durable run state and auditable delivery closeout. AGDF is an independent open-source project, not a security sandbox, compliance certification or autonomous release system.",
|
|
9
|
+
"homepage": "https://agdf.iself.eu",
|
|
10
|
+
"repository": "https://github.com/arndtgold/ai-native-governance-delivery-framework",
|
|
11
|
+
"license": "Apache-2.0",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"agentic",
|
|
14
|
+
"governance",
|
|
15
|
+
"delivery",
|
|
16
|
+
"ai-native",
|
|
17
|
+
"brownfield"
|
|
18
|
+
],
|
|
19
|
+
"category": "Productivity",
|
|
20
|
+
"brandColor": "#14B8A6",
|
|
21
|
+
"author": {
|
|
22
|
+
"name": "Arndt Gold",
|
|
23
|
+
"url": "https://agdf.iself.eu"
|
|
24
|
+
},
|
|
25
|
+
"codex": {
|
|
26
|
+
"skills": "./skills/",
|
|
27
|
+
"skillPrefix": "",
|
|
28
|
+
"agentRouter": "meta/agdf-agent-router.md",
|
|
29
|
+
"composerIcon": "./assets/agdf-icon.svg",
|
|
30
|
+
"logo": "./assets/agdf-logo.svg",
|
|
31
|
+
"capabilities": [
|
|
32
|
+
"Read",
|
|
33
|
+
"Write"
|
|
34
|
+
],
|
|
35
|
+
"defaultPrompt": [
|
|
36
|
+
"Assess whether AGDF fits this request and recommend the lightest safe path before proposing implementation.",
|
|
37
|
+
"Start this request under AGDF governance.",
|
|
38
|
+
"Close this delivery run with an auditable AGDF report."
|
|
39
|
+
],
|
|
40
|
+
"hooks": "hooks/hooks.json"
|
|
41
|
+
},
|
|
42
|
+
"claude": {
|
|
43
|
+
"skillPrefix": "",
|
|
44
|
+
"agentRouter": "meta/agdf-agent-router.md",
|
|
45
|
+
"defaultPrompt": [
|
|
46
|
+
"Assess whether AGDF fits this request and recommend the lightest safe path before proposing implementation.",
|
|
47
|
+
"Start this request under AGDF governance.",
|
|
48
|
+
"Close this delivery run with an auditable AGDF report."
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
"copilot": {
|
|
52
|
+
"skillPrefix": "agdf-",
|
|
53
|
+
"runtimeContractFileName": "agdf-runtime-contract.md",
|
|
54
|
+
"pluginManifest": "plugin.json",
|
|
55
|
+
"skills": "copilot-skills/",
|
|
56
|
+
"hooks": "hooks/copilot-hooks.json"
|
|
57
|
+
},
|
|
58
|
+
"opencode": {
|
|
59
|
+
"skillPrefix": "agdf-",
|
|
60
|
+
"globalSkillPrefix": "agdf-global-",
|
|
61
|
+
"evaluatorAgentName": "agdf-evaluator",
|
|
62
|
+
"runtimeContractFileName": "agdf-runtime-contract.md",
|
|
63
|
+
"instructionsFileName": "AGDF.md",
|
|
64
|
+
"npmPackage": "create-agdf",
|
|
65
|
+
"permissions": {
|
|
66
|
+
"question": "allow",
|
|
67
|
+
"edit": "ask",
|
|
68
|
+
"bash": "ask",
|
|
69
|
+
"skill": {
|
|
70
|
+
"agdf-*": "allow"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"automaticRuntimeChecks": {
|
|
75
|
+
"schemaVersion": 1,
|
|
76
|
+
"capabilityId": "automatic-runtime-checks",
|
|
77
|
+
"adapterContractVersion": 1,
|
|
78
|
+
"entrypoint": "runtime/agdf-session-check.js",
|
|
79
|
+
"operations": [
|
|
80
|
+
"resolve-local-runtime",
|
|
81
|
+
"inspect-control-state",
|
|
82
|
+
"render-bounded-orientation"
|
|
83
|
+
],
|
|
84
|
+
"constraints": {
|
|
85
|
+
"arguments": "forbidden",
|
|
86
|
+
"filesystemWrites": "forbidden",
|
|
87
|
+
"network": "forbidden",
|
|
88
|
+
"gateAuthority": "none"
|
|
89
|
+
},
|
|
90
|
+
"surfaces": {
|
|
91
|
+
"codex": "native-hook-review",
|
|
92
|
+
"claude": "exact-command-rule",
|
|
93
|
+
"copilot": "plugin-hook-review",
|
|
94
|
+
"opencode": "plugin-internal",
|
|
95
|
+
"portable-skills": "manual-external-required"
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"interactions": {
|
|
99
|
+
"fallback": "exact_text",
|
|
100
|
+
"localeRegistry": "meta/agdf-interaction-locales.json",
|
|
101
|
+
"fallbackLocale": "en",
|
|
102
|
+
"optionOrder": [
|
|
103
|
+
"approve",
|
|
104
|
+
"revise",
|
|
105
|
+
"decline",
|
|
106
|
+
"cancel"
|
|
107
|
+
],
|
|
108
|
+
"outcomes": [
|
|
109
|
+
"approve",
|
|
110
|
+
"revise",
|
|
111
|
+
"decline",
|
|
112
|
+
"cancel",
|
|
113
|
+
"no_response",
|
|
114
|
+
"timeout",
|
|
115
|
+
"empty",
|
|
116
|
+
"invalid",
|
|
117
|
+
"stale"
|
|
118
|
+
],
|
|
119
|
+
"surfaces": {
|
|
120
|
+
"codex": {
|
|
121
|
+
"questionAdapter": "request_user_input",
|
|
122
|
+
"availability": "when_callable",
|
|
123
|
+
"gateSafety": "omit_auto_resolution",
|
|
124
|
+
"explicitOutcomes": [
|
|
125
|
+
"approve",
|
|
126
|
+
"revise",
|
|
127
|
+
"decline"
|
|
128
|
+
],
|
|
129
|
+
"dismissOutcome": "cancel",
|
|
130
|
+
"approvalValueTransport": "exact_option_value",
|
|
131
|
+
"waitSafety": "deliberate_no_auto_resolution",
|
|
132
|
+
"authorizationPath": "exact_text",
|
|
133
|
+
"technicalPermissionOwner": "codex_host"
|
|
134
|
+
},
|
|
135
|
+
"claude": {
|
|
136
|
+
"questionAdapter": "AskUserQuestion",
|
|
137
|
+
"availability": "when_no_auto_continue_timeout",
|
|
138
|
+
"gateSafety": "no_timeout_or_hook_supplied_answer",
|
|
139
|
+
"explicitOutcomes": [
|
|
140
|
+
"approve",
|
|
141
|
+
"revise",
|
|
142
|
+
"decline"
|
|
143
|
+
],
|
|
144
|
+
"dismissOutcome": "cancel",
|
|
145
|
+
"approvalValueTransport": "exact_option_value",
|
|
146
|
+
"waitSafety": "deliberate_no_auto_resolution",
|
|
147
|
+
"authorizationPath": "exact_text",
|
|
148
|
+
"technicalPermissionOwner": "claude_host"
|
|
149
|
+
},
|
|
150
|
+
"copilot": {
|
|
151
|
+
"questionAdapter": "exact_text",
|
|
152
|
+
"availability": "always",
|
|
153
|
+
"gateSafety": "wait_for_deliberate_user_input",
|
|
154
|
+
"explicitOutcomes": [
|
|
155
|
+
"approve",
|
|
156
|
+
"revise",
|
|
157
|
+
"decline",
|
|
158
|
+
"cancel"
|
|
159
|
+
],
|
|
160
|
+
"approvalValueTransport": "exact_option_value",
|
|
161
|
+
"waitSafety": "deliberate_no_auto_resolution",
|
|
162
|
+
"authorizationPath": "exact_text",
|
|
163
|
+
"technicalPermissionOwner": "copilot_host"
|
|
164
|
+
},
|
|
165
|
+
"opencode": {
|
|
166
|
+
"questionAdapter": "question",
|
|
167
|
+
"availability": "when_permission_question_allows",
|
|
168
|
+
"gateSafety": "preserve_explicit_deny",
|
|
169
|
+
"explicitOutcomes": [
|
|
170
|
+
"approve",
|
|
171
|
+
"revise",
|
|
172
|
+
"decline"
|
|
173
|
+
],
|
|
174
|
+
"dismissOutcome": "cancel",
|
|
175
|
+
"approvalValueTransport": "exact_option_value",
|
|
176
|
+
"waitSafety": "deliberate_no_auto_resolution",
|
|
177
|
+
"authorizationPath": "exact_text",
|
|
178
|
+
"technicalPermissionOwner": "opencode_host"
|
|
179
|
+
},
|
|
180
|
+
"fallback": {
|
|
181
|
+
"questionAdapter": "exact_text",
|
|
182
|
+
"availability": "always",
|
|
183
|
+
"gateSafety": "wait_for_deliberate_user_input",
|
|
184
|
+
"explicitOutcomes": [
|
|
185
|
+
"approve",
|
|
186
|
+
"revise",
|
|
187
|
+
"decline",
|
|
188
|
+
"cancel"
|
|
189
|
+
],
|
|
190
|
+
"approvalValueTransport": "exact_option_value",
|
|
191
|
+
"waitSafety": "deliberate_no_auto_resolution",
|
|
192
|
+
"authorizationPath": "exact_text",
|
|
193
|
+
"technicalPermissionOwner": "host_specific"
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
},
|
|
197
|
+
"publicDistribution": {
|
|
198
|
+
"schemaVersion": 1,
|
|
199
|
+
"submissionType": "skills",
|
|
200
|
+
"technicalId": "agdf",
|
|
201
|
+
"publicDisplayName": "AGDF",
|
|
202
|
+
"fullDisplayName": "AI Governance & Delivery Framework (AGDF)",
|
|
203
|
+
"shortDescription": "Governed AI delivery controls",
|
|
204
|
+
"developerName": "Arndt Gold",
|
|
205
|
+
"publisher": {
|
|
206
|
+
"target": "Arndt Gold",
|
|
207
|
+
"verificationState": "unverified"
|
|
208
|
+
},
|
|
209
|
+
"category": "Productivity",
|
|
210
|
+
"urls": {
|
|
211
|
+
"website": "https://agdf.iself.eu",
|
|
212
|
+
"privacy": "https://agdf.iself.eu/privacy",
|
|
213
|
+
"terms": "https://agdf.iself.eu/terms",
|
|
214
|
+
"support": "https://agdf.iself.eu/support"
|
|
215
|
+
},
|
|
216
|
+
"defaultPrompt": [
|
|
217
|
+
"Assess whether AGDF fits this work and recommend the lightest safe delivery path.",
|
|
218
|
+
"Start this request under AGDF governance.",
|
|
219
|
+
"Review the active AGDF run and explain the next allowed step."
|
|
220
|
+
],
|
|
221
|
+
"availability": {
|
|
222
|
+
"decisionState": "pending",
|
|
223
|
+
"countries": [],
|
|
224
|
+
"regions": [],
|
|
225
|
+
"workspaceContexts": [],
|
|
226
|
+
"decisionOwner": "verified publisher"
|
|
227
|
+
},
|
|
228
|
+
"submissionSources": {
|
|
229
|
+
"capabilityMatrix": "submission/openai/capability-matrix.json",
|
|
230
|
+
"reviewerCases": "submission/openai/reviewer-cases.json",
|
|
231
|
+
"releaseNotes": "submission/openai/release-notes.md",
|
|
232
|
+
"availabilityDecision": "submission/openai/availability.md"
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
"skillSet": [
|
|
236
|
+
{
|
|
237
|
+
"slug": "delivery-path-search",
|
|
238
|
+
"discovery": "optional",
|
|
239
|
+
"useFor": "high-impact planning decisions with several plausible next delivery steps before implementation",
|
|
240
|
+
"boundary": "read-only advisory search; never grants gate permission or replaces gate-check"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"slug": "brownfield-analysis",
|
|
244
|
+
"discovery": "automatic",
|
|
245
|
+
"useFor": "after gate-check permits Brownfield Review or implementation preparation, before non-trivial changes in existing systems",
|
|
246
|
+
"boundary": "clarifies reuse, owners, risks and Mode/Slice Decision; never bypasses gate-check; Brownfield Review is not implementation permission"
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
"slug": "ux-intent-definition",
|
|
250
|
+
"discovery": "automatic",
|
|
251
|
+
"useFor": "after approved UR and post-UR routing for medium/high UI/UX impact or ambiguous low-impact product semantics before PRD readiness",
|
|
252
|
+
"boundary": "non-authorizing analytical PRD input; never creates product intent, gate permission, technical design or a parallel product source of truth"
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"slug": "clean-implementation-review",
|
|
256
|
+
"discovery": "automatic",
|
|
257
|
+
"useFor": "evidence dimension: inspect whether the solution is structurally clean",
|
|
258
|
+
"boundary": "supports Quality Readiness; not a TP or QA substitute"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"slug": "code-review",
|
|
262
|
+
"discovery": "automatic",
|
|
263
|
+
"useFor": "evidence dimension: review the actual diff for defects, regression and security findings",
|
|
264
|
+
"boundary": "supports Quality Readiness; does not replace QA"
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
"slug": "delivery-closeout",
|
|
268
|
+
"discovery": "automatic",
|
|
269
|
+
"useFor": "commit/PR-near handoff after QA/OR/UAT",
|
|
270
|
+
"boundary": "never performs VCS actions automatically"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"slug": "gate-check",
|
|
274
|
+
"discovery": "start_here",
|
|
275
|
+
"useFor": "new build/change intent, unclear approval, Structured Delivery, later-gate artefact requested",
|
|
276
|
+
"boundary": "does not create later artefacts or skip Mode/Slice Decision after Brownfield Review"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"slug": "qa-gate",
|
|
280
|
+
"discovery": "automatic",
|
|
281
|
+
"useFor": "sole final Quality Readiness decision",
|
|
282
|
+
"boundary": "only instance for `pass | revise | block`"
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"slug": "release-or",
|
|
286
|
+
"discovery": "automatic",
|
|
287
|
+
"useFor": "auditable closeout for every relevant run",
|
|
288
|
+
"boundary": "not a QA substitute"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"slug": "task-plan-review",
|
|
292
|
+
"discovery": "automatic",
|
|
293
|
+
"useFor": "evidence dimension: verify whether the approved Task Plan was fulfilled",
|
|
294
|
+
"boundary": "supports Quality Readiness; no final QA decision"
|
|
295
|
+
}
|
|
296
|
+
],
|
|
297
|
+
"distributionProfiles": {
|
|
298
|
+
"schemaVersion": 1,
|
|
299
|
+
"marketplaceIdentities": {
|
|
300
|
+
"durable": "agdf",
|
|
301
|
+
"generatedRepository": "agdf-repo"
|
|
302
|
+
},
|
|
303
|
+
"profiles": {
|
|
304
|
+
"source-development": {
|
|
305
|
+
"runtime": "absent",
|
|
306
|
+
"installable": false,
|
|
307
|
+
"machineValidation": "unavailable"
|
|
308
|
+
},
|
|
309
|
+
"runtime-plugin": {
|
|
310
|
+
"runtime": "required",
|
|
311
|
+
"installable": true,
|
|
312
|
+
"machineValidation": "local_exact_version_digest"
|
|
313
|
+
},
|
|
314
|
+
"copilot-runtime-plugin": {
|
|
315
|
+
"runtime": "required",
|
|
316
|
+
"installable": true,
|
|
317
|
+
"machineValidation": "local_exact_version_digest_inventory"
|
|
318
|
+
},
|
|
319
|
+
"opencode-config-local": {
|
|
320
|
+
"runtime": "config_local_package",
|
|
321
|
+
"installable": true,
|
|
322
|
+
"machineValidation": "local_exact_version"
|
|
323
|
+
},
|
|
324
|
+
"portable-skills": {
|
|
325
|
+
"runtime": "absent",
|
|
326
|
+
"installable": true,
|
|
327
|
+
"machineValidation": "unavailable_or_external_required"
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# AGDF Runtime Contract
|
|
2
|
+
|
|
3
|
+
This manifest indexes the thematic runtime-contract modules used by AGDF skills and runtime validation.
|
|
4
|
+
|
|
5
|
+
| Module | Path | Coverage |
|
|
6
|
+
|---|---|---|
|
|
7
|
+
| Task target resolution | `contracts/task-target-resolution.md` | Primary target authority, evidence/mutation separation, governance derivation, continuation and fail-closed target states |
|
|
8
|
+
| Gate transitions | `contracts/gate-transition.md` | Source precedence, scope ambiguity, gate rules, Brownfield routing and transition model |
|
|
9
|
+
| Interaction | `contracts/interaction.md` | Run Status Card, approval orientation, native interaction and locale contracts |
|
|
10
|
+
| Modes | `contracts/modes.md` | Mode selection, Quick Task, Verified Change, trivial and bug boundaries |
|
|
11
|
+
| Quality | `contracts/quality.md` | Quality readiness, chat discipline and quality output contracts |
|
|
12
|
+
| Context Graph | `contracts/context-graph.md` | Knowledge persistence and Context Graph reconciliation |
|
|
13
|
+
| Control scaffold | `contracts/control-scaffold.md` | Delivery Path Search, run state, CLI verification and Delivery Map |
|
|
14
|
+
| Closeout | `contracts/closeout.md` | Support bridge, relevant-run boundary and non-duplication |
|
|
15
|
+
|
|
16
|
+
The explanatory framework lives in `docs/`, the operating philosophy in `plugin/meta/agdf-constitution.md`, and the principles in `plugin/meta/agdf-tenets.md`.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// Generated by create-agdf/scripts/sync-plugin-runtime.js; do not edit.
|
|
4
|
+
import { readFileSync } from "node:fs";
|
|
5
|
+
import process from "node:process";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
7
|
+
import { runLocalValidator } from "./create-agdf/lib/runtime/local-validator.js";
|
|
8
|
+
|
|
9
|
+
const runtimeRoot = fileURLToPath(new URL(".", import.meta.url));
|
|
10
|
+
const pluginRoot = fileURLToPath(new URL("../", import.meta.url));
|
|
11
|
+
const manifest = JSON.parse(readFileSync(new URL("./runtime-manifest.json", import.meta.url), "utf8"));
|
|
12
|
+
process.exitCode = runLocalValidator({
|
|
13
|
+
runtimeRoot,
|
|
14
|
+
pluginRoot,
|
|
15
|
+
expectedPluginRoot: process.env.CLAUDE_PLUGIN_ROOT || process.env.PLUGIN_ROOT || undefined,
|
|
16
|
+
expectedVersion: manifest.version,
|
|
17
|
+
surface: process.env.AGDF_SURFACE || "plugin",
|
|
18
|
+
}, process.argv.slice(2));
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// Generated by create-agdf/scripts/sync-plugin-runtime.js; do not edit.
|
|
4
|
+
import { spawnSync } from "node:child_process";
|
|
5
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
6
|
+
import { homedir } from "node:os";
|
|
7
|
+
import { join } from "node:path";
|
|
8
|
+
import process from "node:process";
|
|
9
|
+
import { fileURLToPath } from "node:url";
|
|
10
|
+
import { digestNormalizedPluginSource } from "./create-agdf/lib/runtime/plugin-provenance.js";
|
|
11
|
+
import { fixedRuntimeCheckCommand, runtimeCheckCapabilityIdentity } from "./create-agdf/lib/runtime-check-consent/contract.js";
|
|
12
|
+
|
|
13
|
+
if (process.argv.length !== 2) {
|
|
14
|
+
console.error("AGDF automatic runtime check accepts no arguments.");
|
|
15
|
+
process.exitCode = 2;
|
|
16
|
+
} else {
|
|
17
|
+
const surface = process.env.AGDF_SURFACE
|
|
18
|
+
|| (process.env.CLAUDE_PLUGIN_ROOT ? "claude" : process.env.COPILOT_PLUGIN_DATA ? "copilot" : process.env.PLUGIN_ROOT ? "codex" : "");
|
|
19
|
+
const dataRoot = process.env.AGDF_DATA_DIR
|
|
20
|
+
|| (process.platform === "darwin"
|
|
21
|
+
? join(homedir(), "Library", "Application Support", "agdf")
|
|
22
|
+
: process.platform === "win32"
|
|
23
|
+
? join(process.env.LOCALAPPDATA || process.env.APPDATA || join(homedir(), "AppData", "Local"), "agdf")
|
|
24
|
+
: join(process.env.XDG_DATA_HOME || join(homedir(), ".local", "share"), "agdf"));
|
|
25
|
+
let consentEnabled = false;
|
|
26
|
+
if (["codex", "claude", "copilot", "opencode"].includes(surface)) {
|
|
27
|
+
try {
|
|
28
|
+
const receipt = JSON.parse(readFileSync(join(dataRoot, "runtime-checks", `${surface}.json`), "utf8"));
|
|
29
|
+
consentEnabled = receipt?.schema_version === 1
|
|
30
|
+
&& receipt?.owner === "create-agdf"
|
|
31
|
+
&& receipt?.capability_id === "automatic-runtime-checks"
|
|
32
|
+
&& receipt?.surface === surface
|
|
33
|
+
&& receipt?.requested_state === "enabled";
|
|
34
|
+
if (consentEnabled && ["codex", "claude", "copilot"].includes(surface)) {
|
|
35
|
+
const pluginRoot = fileURLToPath(new URL("../", import.meta.url));
|
|
36
|
+
const manifest = JSON.parse(readFileSync(new URL("./runtime-manifest.json", import.meta.url), "utf8"));
|
|
37
|
+
const definition = JSON.parse(readFileSync(new URL("../meta/agdf-plugin.definition.json", import.meta.url), "utf8"));
|
|
38
|
+
const currentIdentity = runtimeCheckCapabilityIdentity({
|
|
39
|
+
capability: definition.automaticRuntimeChecks,
|
|
40
|
+
surface,
|
|
41
|
+
runtimeDigest: manifest.digest,
|
|
42
|
+
sourceDigest: digestNormalizedPluginSource(pluginRoot, manifest.version),
|
|
43
|
+
command: fixedRuntimeCheckCommand(surface, pluginRoot, process.platform),
|
|
44
|
+
});
|
|
45
|
+
consentEnabled = receipt.capability_identity === currentIdentity;
|
|
46
|
+
}
|
|
47
|
+
} catch {}
|
|
48
|
+
}
|
|
49
|
+
if (!consentEnabled) process.exit(0);
|
|
50
|
+
const validator = fileURLToPath(new URL("./agdf-local.js", import.meta.url));
|
|
51
|
+
const pluginRoot = fileURLToPath(new URL("../", import.meta.url));
|
|
52
|
+
const child = spawnSync(process.execPath, [validator, "doctor", "--all-active", "--json"], {
|
|
53
|
+
cwd: process.cwd(),
|
|
54
|
+
env: { ...process.env, AGDF_SURFACE: process.env.AGDF_SURFACE || "plugin" },
|
|
55
|
+
encoding: "utf8",
|
|
56
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
57
|
+
timeout: 10000,
|
|
58
|
+
maxBuffer: 1024 * 1024,
|
|
59
|
+
});
|
|
60
|
+
let message = "AGDF automatic runtime check: no governed control state was found; manual validation remains available.";
|
|
61
|
+
try {
|
|
62
|
+
const report = JSON.parse(child.stdout || "{}");
|
|
63
|
+
const status = report.status || "unknown";
|
|
64
|
+
const findings = report.summary?.findings ?? report.reports?.reduce((sum, item) => sum + (item.summary?.findings ?? 0), 0) ?? 0;
|
|
65
|
+
message = `AGDF automatic runtime check: status=${status} findings=${findings}. This is read-only technical evidence and never grants an AGDF approval.`;
|
|
66
|
+
} catch {}
|
|
67
|
+
const configPath = join(process.cwd(), ".agdf", "control", "config.json");
|
|
68
|
+
let configHint = "Project config: .agdf/control/config.json not found. Persist project language only when durable control is needed.";
|
|
69
|
+
if (existsSync(configPath)) {
|
|
70
|
+
try {
|
|
71
|
+
const config = JSON.parse(readFileSync(configPath, "utf8"));
|
|
72
|
+
configHint = `Project config: .agdf/control/config.json (artefacts=${config.artifact_language || "unset"}, chat=${config.chat_language || "unset"}, runtime=${config.runtime_language || "en"}).`;
|
|
73
|
+
} catch {
|
|
74
|
+
configHint = "Project config: .agdf/control/config.json is invalid. Run the surface-local doctor command manually.";
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
const additionalContext = [
|
|
78
|
+
"AGDF active.",
|
|
79
|
+
"",
|
|
80
|
+
message,
|
|
81
|
+
configHint,
|
|
82
|
+
"",
|
|
83
|
+
"Use the installed AGDF skills as workflow controls.",
|
|
84
|
+
"For a new build, change, extension, refactor, CLI, app, fix with product semantics, Structured Delivery request, unclear approval, or unclear next step, use gate-check before implementation or later-gate artefacts.",
|
|
85
|
+
"Do not print the full router or constitution unless the user asks for them.",
|
|
86
|
+
"Source of truth:",
|
|
87
|
+
`- ${join(pluginRoot, "meta", "agdf-agent-router.md")}`,
|
|
88
|
+
`- ${join(pluginRoot, "meta", "agdf-constitution.md")}`,
|
|
89
|
+
`- ${join(pluginRoot, "meta", "agdf-runtime-contract.md")}`,
|
|
90
|
+
].join("\n");
|
|
91
|
+
if (surface === "copilot") {
|
|
92
|
+
console.log(JSON.stringify({ additionalContext }));
|
|
93
|
+
} else {
|
|
94
|
+
console.log(additionalContext);
|
|
95
|
+
}
|
|
96
|
+
process.exitCode = 0;
|
|
97
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
AI Governance & Delivery Framework (AGDF)
|
|
2
|
+
|
|
3
|
+
Copyright 2024-2026 Arndt Gold.
|
|
4
|
+
|
|
5
|
+
The create-agdf package is licensed under the Apache License, Version 2.0.
|
|
6
|
+
|
|
7
|
+
AGDF(TM) and AI Governance & Delivery Framework(TM) are marks of Arndt Gold.
|
|
8
|
+
The package license does not grant permission to use project names, trademarks,
|
|
9
|
+
service marks or logos except as required for reasonable and customary
|
|
10
|
+
description of the origin of the project.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import process from "node:process";
|
|
4
|
+
import { runValidatorCli } from "../lib/runtime/validator-application.js";
|
|
5
|
+
|
|
6
|
+
try {
|
|
7
|
+
process.exitCode = await runValidatorCli(process.argv.slice(2));
|
|
8
|
+
} catch (error) {
|
|
9
|
+
console.error(error instanceof Error ? error.message : String(error));
|
|
10
|
+
process.exitCode = 1;
|
|
11
|
+
}
|