create-agdf 0.3.0 → 0.3.1
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 +6 -6
- package/bin/create-agdf.js +11 -11
- package/generated/.agdf/control/README.md +5 -5
- package/generated/.github/skills/agdf-gate-check/SKILL.md +4 -4
- package/generated/.opencode/agents/agdf-gate-check.md +4 -4
- package/generated/plugins/agdf/.codex-plugin/plugin.json +1 -1
- package/generated/plugins/agdf/control/README.md +5 -5
- package/generated/plugins/agdf/hooks/session-start.sh +2 -2
- package/generated/plugins/agdf/meta/agdf-plugin.definition.json +1 -1
- package/generated/plugins/agdf/skills/gate-check/SKILL.md +4 -4
- package/opencode-plugin.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,12 +7,12 @@ Bootstrap AGDF repository instructions and a machine-checkable control loop for
|
|
|
7
7
|
Preferred long-term CLI shape:
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
npx --yes agdf@latest codex
|
|
11
|
-
npx --yes agdf@latest opencode
|
|
12
|
-
npx --yes agdf@latest init
|
|
13
|
-
npx --yes agdf@latest config --language en
|
|
14
|
-
npx --yes agdf@latest doctor
|
|
15
|
-
npx --yes agdf@latest gate-check --json
|
|
10
|
+
npx --yes @agdf-runtime/cli@latest codex
|
|
11
|
+
npx --yes @agdf-runtime/cli@latest opencode
|
|
12
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
13
|
+
npx --yes @agdf-runtime/cli@latest config --language en
|
|
14
|
+
npx --yes @agdf-runtime/cli@latest doctor
|
|
15
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
Backward-compatible scaffold usage:
|
package/bin/create-agdf.js
CHANGED
|
@@ -125,11 +125,11 @@ function printUsage() {
|
|
|
125
125
|
console.log(`create-agdf
|
|
126
126
|
|
|
127
127
|
Preferred AGDF CLI:
|
|
128
|
-
npx --yes agdf@latest codex
|
|
129
|
-
npx --yes agdf@latest opencode
|
|
130
|
-
npx --yes agdf@latest init
|
|
131
|
-
npx --yes agdf@latest doctor
|
|
132
|
-
npx --yes agdf@latest gate-check --json
|
|
128
|
+
npx --yes @agdf-runtime/cli@latest codex
|
|
129
|
+
npx --yes @agdf-runtime/cli@latest opencode
|
|
130
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
131
|
+
npx --yes @agdf-runtime/cli@latest doctor
|
|
132
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
133
133
|
|
|
134
134
|
Scaffold-compatible npm create usage:
|
|
135
135
|
npm create agdf@latest -- codex
|
|
@@ -439,13 +439,13 @@ function printNextSteps(target, destination, files, wroteAgentsFragment, wroteOp
|
|
|
439
439
|
}
|
|
440
440
|
if (target === "init") {
|
|
441
441
|
console.log("- Fill .agdf/control/AGDF_RUN.md with the current gate, evidence and next allowed action.");
|
|
442
|
-
console.log("- Run npx --yes agdf@latest doctor to check the control state before the next agent run.");
|
|
442
|
+
console.log("- Run npx --yes @agdf-runtime/cli@latest doctor to check the control state before the next agent run.");
|
|
443
443
|
console.log("- Commit the live control files once they represent the repository's current delivery state.");
|
|
444
444
|
return;
|
|
445
445
|
}
|
|
446
446
|
if (target === "config") {
|
|
447
447
|
console.log("- Restart or start a new agent session so the AGDF SessionStart hook reads the updated project language config.");
|
|
448
|
-
console.log("- Run npx --yes agdf@latest doctor when this repository also uses durable AGDF control state.");
|
|
448
|
+
console.log("- Run npx --yes @agdf-runtime/cli@latest doctor when this repository also uses durable AGDF control state.");
|
|
449
449
|
return;
|
|
450
450
|
}
|
|
451
451
|
if (wroteAgentsFragment) {
|
|
@@ -465,11 +465,11 @@ function printNextSteps(target, destination, files, wroteAgentsFragment, wroteOp
|
|
|
465
465
|
console.log(`- OpenCode will install the ${pluginDefinition.opencode.npmPackage} npm plugin from opencode.json at startup.`);
|
|
466
466
|
console.log("- Start OpenCode in this repository; it will load opencode.json, .opencode/AGDF.md and the AGDF subagents.");
|
|
467
467
|
console.log("- Use @agdf-gate-check for new build/change intent or unclear approval before later artefacts or implementation.");
|
|
468
|
-
console.log("- Run npx --yes agdf@latest init when the repository needs live AGDF control files.");
|
|
468
|
+
console.log("- Run npx --yes @agdf-runtime/cli@latest init when the repository needs live AGDF control files.");
|
|
469
469
|
}
|
|
470
470
|
if (target === "copilot" || target === "both") {
|
|
471
471
|
console.log("- In GitHub Copilot CLI, run /instructions after the AGENTS.md step is complete to confirm that AGDF instructions and the repository skills are visible.");
|
|
472
|
-
console.log("- Run npx --yes agdf@latest init when the repository needs live AGDF control files.");
|
|
472
|
+
console.log("- Run npx --yes @agdf-runtime/cli@latest init when the repository needs live AGDF control files.");
|
|
473
473
|
}
|
|
474
474
|
console.log("- Commit the generated files so the repository becomes the source of truth.");
|
|
475
475
|
}
|
|
@@ -573,7 +573,7 @@ function evaluateDoctor(targetDir) {
|
|
|
573
573
|
? "Live control file is missing; only the template exists."
|
|
574
574
|
: "Required live control file is missing.",
|
|
575
575
|
relativePath,
|
|
576
|
-
"Run npx --yes agdf@latest init only when the repository should own durable AGDF control state or deterministic setup is explicitly needed.",
|
|
576
|
+
"Run npx --yes @agdf-runtime/cli@latest init only when the repository should own durable AGDF control state or deterministic setup is explicitly needed.",
|
|
577
577
|
);
|
|
578
578
|
}
|
|
579
579
|
|
|
@@ -1188,7 +1188,7 @@ function evaluateGateCheck(targetDir) {
|
|
|
1188
1188
|
allowed = [
|
|
1189
1189
|
"draft the minimal UR for the requested change in the response",
|
|
1190
1190
|
"request exact approval: Approval: UR",
|
|
1191
|
-
"run npx --yes agdf@latest init only when durable control state or deterministic setup is explicitly needed",
|
|
1191
|
+
"run npx --yes @agdf-runtime/cli@latest init only when durable control state or deterministic setup is explicitly needed",
|
|
1192
1192
|
];
|
|
1193
1193
|
forbidden = ["create PRD", "create SD", "create TP", "run Brownfield Analysis", "implement code", "claim QA or release readiness"];
|
|
1194
1194
|
nextAllowedAction = "Draft the minimal UR for the request in the response, then ask for exact approval: Approval: UR. Do not write a full .agdf/control scaffold unless durable control state or deterministic setup is explicitly needed.";
|
|
@@ -49,21 +49,21 @@ Keep these files small and reviewable. They are control artefacts, not a second
|
|
|
49
49
|
Create the live files with:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
npx --yes agdf@latest init
|
|
52
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
53
53
|
```
|
|
54
54
|
|
|
55
55
|
If only the project language preference is missing or should change after plugin installation, write just the config file:
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
npx --yes agdf@latest config --language en
|
|
58
|
+
npx --yes @agdf-runtime/cli@latest config --language en
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
Then check whether the live state is actionable:
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
|
-
npx --yes agdf@latest doctor
|
|
65
|
-
npx --yes agdf@latest doctor --json
|
|
66
|
-
npx --yes agdf@latest gate-check --json
|
|
64
|
+
npx --yes @agdf-runtime/cli@latest doctor
|
|
65
|
+
npx --yes @agdf-runtime/cli@latest doctor --json
|
|
66
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
67
67
|
```
|
|
68
68
|
|
|
69
69
|
`doctor` does not replace agent judgment. It catches basic control failures: missing live files, missing current gate, missing next allowed action, empty evidence, empty backlog pointer, empty source-of-truth registry, duplicate active SoT rows and invalid quality contracts.
|
|
@@ -41,10 +41,10 @@ Use `init` only when the user explicitly asks for durable AGDF control state, th
|
|
|
41
41
|
Use the executable control path when a machine-readable check is requested, when the gate state is ambiguous, when CI or PR evidence is needed, or when a repository-local automation needs JSON output:
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
npx --yes agdf@latest init
|
|
45
|
-
npx --yes agdf@latest doctor --json
|
|
46
|
-
npx --yes agdf@latest gate-check --json
|
|
47
|
-
npx --yes agdf@latest delivery-map --json
|
|
44
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
45
|
+
npx --yes @agdf-runtime/cli@latest doctor --json
|
|
46
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
47
|
+
npx --yes @agdf-runtime/cli@latest delivery-map --json
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
`init` creates the control scaffold. `doctor` checks whether `.agdf/control/` is actionable. `agdf-gate-check` consumes that result and `AGDF_RUN.md` to report the operative process decision: `open | blocked`, current gate, blocking reason, missing approval, allowed outputs, forbidden outputs, next allowed action and evidence references.
|
|
@@ -46,10 +46,10 @@ Use `init` only when the user explicitly asks for durable AGDF control state, th
|
|
|
46
46
|
Use the executable control path when a machine-readable check is requested, when the gate state is ambiguous, when CI or PR evidence is needed, or when a repository-local automation needs JSON output:
|
|
47
47
|
|
|
48
48
|
```bash
|
|
49
|
-
npx --yes agdf@latest init
|
|
50
|
-
npx --yes agdf@latest doctor --json
|
|
51
|
-
npx --yes agdf@latest gate-check --json
|
|
52
|
-
npx --yes agdf@latest delivery-map --json
|
|
49
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
50
|
+
npx --yes @agdf-runtime/cli@latest doctor --json
|
|
51
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
52
|
+
npx --yes @agdf-runtime/cli@latest delivery-map --json
|
|
53
53
|
```
|
|
54
54
|
|
|
55
55
|
`init` creates the control scaffold. `doctor` checks whether `.agdf/control/` is actionable. `agdf-gate-check` consumes that result and `AGDF_RUN.md` to report the operative process decision: `open | blocked`, current gate, blocking reason, missing approval, allowed outputs, forbidden outputs, next allowed action and evidence references.
|
|
@@ -49,21 +49,21 @@ Keep these files small and reviewable. They are control artefacts, not a second
|
|
|
49
49
|
Create the live files with:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
npx --yes agdf@latest init
|
|
52
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
53
53
|
```
|
|
54
54
|
|
|
55
55
|
If only the project language preference is missing or should change after plugin installation, write just the config file:
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
npx --yes agdf@latest config --language en
|
|
58
|
+
npx --yes @agdf-runtime/cli@latest config --language en
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
Then check whether the live state is actionable:
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
|
-
npx --yes agdf@latest doctor
|
|
65
|
-
npx --yes agdf@latest doctor --json
|
|
66
|
-
npx --yes agdf@latest gate-check --json
|
|
64
|
+
npx --yes @agdf-runtime/cli@latest doctor
|
|
65
|
+
npx --yes @agdf-runtime/cli@latest doctor --json
|
|
66
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
67
67
|
```
|
|
68
68
|
|
|
69
69
|
`doctor` does not replace agent judgment. It catches basic control failures: missing live files, missing current gate, missing next allowed action, empty evidence, empty backlog pointer, empty source-of-truth registry, duplicate active SoT rows and invalid quality contracts.
|
|
@@ -8,7 +8,7 @@ ROUTER="${META_DIR}/agdf-agent-router.md"
|
|
|
8
8
|
CONSTITUTION="${META_DIR}/agdf-constitution.md"
|
|
9
9
|
CONFIG_PATH="${PWD}/.agdf/control/config.json"
|
|
10
10
|
|
|
11
|
-
CONFIG_HINT="Project config: .agdf/control/config.json not found. Use npx --yes agdf@latest config --language de|en to persist the project language."
|
|
11
|
+
CONFIG_HINT="Project config: .agdf/control/config.json not found. Use npx --yes @agdf-runtime/cli@latest config --language de|en to persist the project language."
|
|
12
12
|
if [[ -f "${CONFIG_PATH}" ]]; then
|
|
13
13
|
CONFIG_HINT="$(CONFIG_PATH="${CONFIG_PATH}" node <<'NODE' 2>/dev/null || true
|
|
14
14
|
const fs = require("node:fs");
|
|
@@ -20,7 +20,7 @@ try {
|
|
|
20
20
|
const runtime = config.runtime_language || "en";
|
|
21
21
|
console.log(`Project config: .agdf/control/config.json (artefacts=${artefacts}, chat=${chat}, runtime=${runtime}).`);
|
|
22
22
|
} catch {
|
|
23
|
-
console.log("Project config: .agdf/control/config.json exists but is not valid JSON. Run npx --yes agdf@latest doctor.");
|
|
23
|
+
console.log("Project config: .agdf/control/config.json exists but is not valid JSON. Run npx --yes @agdf-runtime/cli@latest doctor.");
|
|
24
24
|
}
|
|
25
25
|
NODE
|
|
26
26
|
)"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"id": "agdf",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.1",
|
|
5
5
|
"displayName": "AI Governance & Delivery Framework",
|
|
6
6
|
"developerName": "AI-native Governance & Delivery Framework",
|
|
7
7
|
"description": "Codex-first workflow skills for gated, auditable AI-assisted software delivery.",
|
|
@@ -41,10 +41,10 @@ Use `init` only when the user explicitly asks for durable AGDF control state, th
|
|
|
41
41
|
Use the executable control path when a machine-readable check is requested, when the gate state is ambiguous, when CI or PR evidence is needed, or when a repository-local automation needs JSON output:
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
npx --yes agdf@latest init
|
|
45
|
-
npx --yes agdf@latest doctor --json
|
|
46
|
-
npx --yes agdf@latest gate-check --json
|
|
47
|
-
npx --yes agdf@latest delivery-map --json
|
|
44
|
+
npx --yes @agdf-runtime/cli@latest init
|
|
45
|
+
npx --yes @agdf-runtime/cli@latest doctor --json
|
|
46
|
+
npx --yes @agdf-runtime/cli@latest gate-check --json
|
|
47
|
+
npx --yes @agdf-runtime/cli@latest delivery-map --json
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
`init` creates the control scaffold. `doctor` checks whether `.agdf/control/` is actionable. `gate-check` consumes that result and `AGDF_RUN.md` to report the operative process decision: `open | blocked`, current gate, blocking reason, missing approval, allowed outputs, forbidden outputs, next allowed action and evidence references.
|
package/opencode-plugin.js
CHANGED
|
@@ -24,7 +24,7 @@ export const AGDFPlugin = async ({ directory, client }) => {
|
|
|
24
24
|
"## AGDF Runtime Reminder",
|
|
25
25
|
"Use `.opencode/AGDF.md`, `.opencode/agents/` and `.agdf/control/` as the AGDF source for this OpenCode session.",
|
|
26
26
|
"For new build/change intent or unclear approval, route first to `agdf-gate-check` before later artefacts or implementation.",
|
|
27
|
-
"Use `npx --yes agdf@latest gate-check --json` only as deterministic proof, not as a replacement for AGDF judgement.",
|
|
27
|
+
"Use `npx --yes @agdf-runtime/cli@latest gate-check --json` only as deterministic proof, not as a replacement for AGDF judgement.",
|
|
28
28
|
].join("\n"));
|
|
29
29
|
},
|
|
30
30
|
};
|
package/package.json
CHANGED