@nggaigc/cli 0.1.53 → 0.1.55
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 +7 -1
- package/dist/bundle.js +49 -4
- package/dist/install.js +5 -2
- package/dist/main.js +13 -4
- package/dist/root-store.js +172 -0
- package/dist/root-upgrade.js +365 -0
- package/dist/skill-command.js +174 -69
- package/dist/start-compatibility.js +123 -0
- package/package.json +1 -1
- package/vendor/manifest.json +16 -16
- package/vendor/nggaigc-plugin-1.1.50.zip +0 -0
- package/vendor/roots/1.1.49/manifest.json +47 -0
- package/vendor/start-compatibility.json +124 -0
- /package/vendor/{nggaigc-plugin-1.1.49.zip → roots/1.1.49/nggaigc-plugin-1.1.49.zip} +0 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/** Signed, finite aliases for new starts only. Never used for accepted run recovery. */
|
|
2
|
+
import { createHash, createPublicKey, verify } from "node:crypto";
|
|
3
|
+
import { readFile } from "node:fs/promises";
|
|
4
|
+
import { IndependentSkillError, } from "./independent-skill.js";
|
|
5
|
+
export const startCompatibilityDomain = "NGGAIGC/START-COMPATIBILITY/v1\0";
|
|
6
|
+
export function canonical(value) {
|
|
7
|
+
if (value === null || typeof value !== "object")
|
|
8
|
+
return JSON.stringify(value);
|
|
9
|
+
if (Array.isArray(value))
|
|
10
|
+
return `[${value.map(canonical).join(",")}]`;
|
|
11
|
+
return `{${Object.keys(value)
|
|
12
|
+
.sort()
|
|
13
|
+
.map((k) => `${JSON.stringify(k)}:${canonical(value[k])}`)
|
|
14
|
+
.join(",")}}`;
|
|
15
|
+
}
|
|
16
|
+
export function startCompatibilityInput(payload) {
|
|
17
|
+
return Buffer.from(startCompatibilityDomain + canonical(payload), "utf8");
|
|
18
|
+
}
|
|
19
|
+
function record(v) {
|
|
20
|
+
return !!v && typeof v === "object" && !Array.isArray(v);
|
|
21
|
+
}
|
|
22
|
+
function keys(v, expected) {
|
|
23
|
+
return Object.keys(v).sort().join(",") === expected.sort().join(",");
|
|
24
|
+
}
|
|
25
|
+
function fail() {
|
|
26
|
+
throw new IndependentSkillError("START_COMPATIBILITY_INVALID");
|
|
27
|
+
}
|
|
28
|
+
export function verifyStartCompatibility(value, trust) {
|
|
29
|
+
if (!record(value) ||
|
|
30
|
+
!keys(value, ["payload", "signature"]) ||
|
|
31
|
+
!record(value.payload) ||
|
|
32
|
+
!record(value.signature))
|
|
33
|
+
fail();
|
|
34
|
+
const p = value.payload, s = value.signature;
|
|
35
|
+
if (!keys(p, ["schemaVersion", "catalog", "contract", "aliases"]) ||
|
|
36
|
+
p.schemaVersion !== "nggaigc-start-compatibility/v1" ||
|
|
37
|
+
p.contract !== "same-skill-inputs-pricing-permissions" ||
|
|
38
|
+
!record(p.catalog) ||
|
|
39
|
+
!keys(p.catalog, ["releaseId", "catalogVersion", "releaseSha256"]) ||
|
|
40
|
+
typeof p.catalog.releaseId !== "string" ||
|
|
41
|
+
typeof p.catalog.catalogVersion !== "string" ||
|
|
42
|
+
typeof p.catalog.releaseSha256 !== "string" ||
|
|
43
|
+
!/^[a-f0-9]{64}$/.test(p.catalog.releaseSha256) ||
|
|
44
|
+
!Array.isArray(p.aliases) ||
|
|
45
|
+
!p.aliases.length ||
|
|
46
|
+
p.aliases.length > 128)
|
|
47
|
+
fail();
|
|
48
|
+
const seen = new Set();
|
|
49
|
+
for (const a of p.aliases) {
|
|
50
|
+
if (!record(a) ||
|
|
51
|
+
!keys(a, [
|
|
52
|
+
"id",
|
|
53
|
+
"fromVersion",
|
|
54
|
+
"fromManifestSha256",
|
|
55
|
+
"toVersion",
|
|
56
|
+
"toManifestSha256",
|
|
57
|
+
]) ||
|
|
58
|
+
typeof a.id !== "string" ||
|
|
59
|
+
!/^skill\.[a-z0-9][a-z0-9.-]{0,79}$/.test(a.id) ||
|
|
60
|
+
typeof a.fromVersion !== "string" ||
|
|
61
|
+
typeof a.toVersion !== "string" ||
|
|
62
|
+
!/^\d+\.\d+\.\d+$/.test(a.fromVersion) ||
|
|
63
|
+
!/^\d+\.\d+\.\d+$/.test(a.toVersion) ||
|
|
64
|
+
a.fromVersion === a.toVersion ||
|
|
65
|
+
typeof a.fromManifestSha256 !== "string" ||
|
|
66
|
+
typeof a.toManifestSha256 !== "string" ||
|
|
67
|
+
!/^[a-f0-9]{64}$/.test(a.fromManifestSha256) ||
|
|
68
|
+
!/^[a-f0-9]{64}$/.test(a.toManifestSha256) ||
|
|
69
|
+
seen.has(`${a.id}@${a.fromVersion}`))
|
|
70
|
+
fail();
|
|
71
|
+
seen.add(`${a.id}@${a.fromVersion}`);
|
|
72
|
+
}
|
|
73
|
+
if (!keys(s, ["algorithm", "keyId", "scope", "value"]) ||
|
|
74
|
+
s.algorithm !== "ed25519" ||
|
|
75
|
+
s.keyId !== trust.keyId ||
|
|
76
|
+
s.scope !== "nggaigc-start-compatibility/v1" ||
|
|
77
|
+
typeof s.value !== "string" ||
|
|
78
|
+
!/^[A-Za-z0-9+/]{86}==$/.test(s.value))
|
|
79
|
+
fail();
|
|
80
|
+
try {
|
|
81
|
+
const key = createPublicKey(trust.publicKeyPem);
|
|
82
|
+
if (createHash("sha256")
|
|
83
|
+
.update(key.export({ type: "spki", format: "der" }))
|
|
84
|
+
.digest("hex") !== trust.spkiSha256 ||
|
|
85
|
+
!verify(null, startCompatibilityInput(p), key, Buffer.from(s.value, "base64")))
|
|
86
|
+
fail();
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
fail();
|
|
90
|
+
}
|
|
91
|
+
return p;
|
|
92
|
+
}
|
|
93
|
+
export async function resolveStartAlias(snapshot, index, id, version, trust, options = {}) {
|
|
94
|
+
if (version === undefined ||
|
|
95
|
+
index.entries.some((e) => e.id === id && e.version === version && e.state === "active"))
|
|
96
|
+
return;
|
|
97
|
+
if (options.exactVersion)
|
|
98
|
+
throw new IndependentSkillError("SKILL_UNAVAILABLE");
|
|
99
|
+
let value = options.migrationPermit;
|
|
100
|
+
if (value === undefined) {
|
|
101
|
+
try {
|
|
102
|
+
value = JSON.parse(await readFile(new URL("../vendor/start-compatibility.json", import.meta.url), "utf8"));
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
throw new IndependentSkillError("SKILL_UNAVAILABLE");
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
const permit = verifyStartCompatibility(value, trust);
|
|
109
|
+
if (!record(snapshot) ||
|
|
110
|
+
permit.catalog.releaseId !== snapshot.releaseId ||
|
|
111
|
+
permit.catalog.catalogVersion !== snapshot.catalogVersion ||
|
|
112
|
+
permit.catalog.releaseSha256 !== snapshot.releaseSha256)
|
|
113
|
+
throw new IndependentSkillError("START_COMPATIBILITY_CATALOG_MISMATCH");
|
|
114
|
+
const aliases = permit.aliases.filter((a) => a.id === id && a.fromVersion === version);
|
|
115
|
+
if (aliases.length !== 1)
|
|
116
|
+
throw new IndependentSkillError("SKILL_UNAVAILABLE");
|
|
117
|
+
const alias = aliases[0], targets = index.entries.filter((e) => e.id === id && e.state === "active");
|
|
118
|
+
if (targets.length !== 1 ||
|
|
119
|
+
targets[0].version !== alias.toVersion ||
|
|
120
|
+
targets[0].manifestSha256 !== alias.toManifestSha256)
|
|
121
|
+
fail();
|
|
122
|
+
return alias;
|
|
123
|
+
}
|
package/package.json
CHANGED
package/vendor/manifest.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "nggaigc-plugin-package/v1",
|
|
3
3
|
"artifactId": "plugin.nggaigc",
|
|
4
|
-
"version": "1.1.
|
|
5
|
-
"sourceCommit": "
|
|
6
|
-
"artifactPath": "packages/plugins/nggaigc-plugin-1.1.
|
|
7
|
-
"sha256": "
|
|
8
|
-
"sizeBytes":
|
|
4
|
+
"version": "1.1.50",
|
|
5
|
+
"sourceCommit": "1e279eedc984589fae1ebadd2ea23c6b3582aea4",
|
|
6
|
+
"artifactPath": "packages/plugins/nggaigc-plugin-1.1.50.zip",
|
|
7
|
+
"sha256": "9aee975327e5ced69de3e51cb3fe9151b9cd45354f4651765faa3fef756208c1",
|
|
8
|
+
"sizeBytes": 510586,
|
|
9
9
|
"fileCount": 24,
|
|
10
10
|
"platforms": [
|
|
11
11
|
"win32-x64",
|
|
@@ -13,35 +13,35 @@
|
|
|
13
13
|
"darwin-arm64"
|
|
14
14
|
],
|
|
15
15
|
"files": {
|
|
16
|
-
".codex-plugin/plugin.json": "
|
|
16
|
+
".codex-plugin/plugin.json": "dd73ab1a5d077fd6ecbba753508b18a05606318b3c63856706e75ec6635a5419",
|
|
17
17
|
"installer/install.cjs": "76f4ed73233fd39900fb0bedbc434dea39e52e6b6b4622f3fd388a5ca09c6f62",
|
|
18
18
|
"installer/legacy-root-digests.json": "922552646a5aa6cff8616c372912a37b1d5f263351206b85785ed9b2eae31641",
|
|
19
19
|
"installer/signed-pair-1.1.16.json": "ccb22a90302cc5c9c585067ebc211a27b0c9d8a177c2740a5678a58a3d70bfe9",
|
|
20
20
|
"installer/signed-pair-1.1.17.json": "a3697506c929aaa085a6d994fc3a1b9a87e522ec6e1e32f3f760e6a534effa2b",
|
|
21
21
|
"migration/seedream-1.1.3/agents/openai.yaml": "3cbf034ddccd64a7972acd37e7433683a3944f3d8c7b5bdccbbd70e517bf5a8c",
|
|
22
|
-
"migration/seedream-1.1.3/references/image-generation.md": "
|
|
22
|
+
"migration/seedream-1.1.3/references/image-generation.md": "15a6dd1f96c53240ef9e961049a7b323ca3c42d2dcf01c9982f1849f01e96afe",
|
|
23
23
|
"migration/seedream-1.1.3/references/source.json": "75998d079a229435d1097b00bd008703bd38026fc6485c312254925bf55398a8",
|
|
24
24
|
"migration/seedream-1.1.3/scripts/seedream.mjs": "dcc6af4d945790d9dfd7fac21c60934759d7ac2576a14507d0299f4833942a96",
|
|
25
|
-
"migration/seedream-1.1.3/SKILL.md": "
|
|
25
|
+
"migration/seedream-1.1.3/SKILL.md": "65e39b129f40f86b76b24a19be6494f9b091bc3d1ccffd20b8a6cd56130a0cb7",
|
|
26
26
|
"skills/nggaigc/agents/openai.yaml": "8936d97b9821e687e224e9349cc42be2ee5fc20988562efffbcb70080aedf87c",
|
|
27
|
-
"skills/nggaigc/references/catalog-and-updates.md": "
|
|
28
|
-
"skills/nggaigc/references/source.json": "
|
|
27
|
+
"skills/nggaigc/references/catalog-and-updates.md": "534979fe28e85463c4558700e14401268b1c0e443fc49092199eef1911449f0c",
|
|
28
|
+
"skills/nggaigc/references/source.json": "9eb7fb5d860eb56f45aca2389b6510b6b5b750598b9b4fa3699e18918bf5ccd4",
|
|
29
29
|
"skills/nggaigc/scripts/api_client.mjs": "e16bf750a297ef7e88e4843d2fba9c33b412a66516bfe76822d7deec6c153069",
|
|
30
30
|
"skills/nggaigc/scripts/api_package.mjs": "824ea8f935e2c3aec7ad5ea5c6ad043f1b77ccd9918c86687a9bd61558954fe4",
|
|
31
|
-
"skills/nggaigc/scripts/bootstrap-public.json": "
|
|
32
|
-
"skills/nggaigc/scripts/launch-ngg-client.cjs": "
|
|
31
|
+
"skills/nggaigc/scripts/bootstrap-public.json": "2dda72f76afa947a8b6cf2c40b89860f9b83c45927b0d1e312eb4537c81c1de8",
|
|
32
|
+
"skills/nggaigc/scripts/launch-ngg-client.cjs": "5ad2797a09c02998d26c111a999b6224d58fb5325391a38321a693b5225bf965",
|
|
33
33
|
"skills/nggaigc/scripts/macos-keychain": "b0bdf29d14219d38ca18c7e5c599deb0daa8c8ac70b0babbc7d4fb23673079ec",
|
|
34
34
|
"skills/nggaigc/scripts/macos-keychain.swift": "1b57e74fde66c824fe970547dd8ca0883a3334c34c065e85a8a2a90d4556a7f5",
|
|
35
|
-
"skills/nggaigc/scripts/ngg_client.mjs": "
|
|
36
|
-
"skills/nggaigc/scripts/ngg-session.mjs": "
|
|
35
|
+
"skills/nggaigc/scripts/ngg_client.mjs": "8e6794297a2eb0df15845c1cb3264dbf4cc18699305f6c7d81d8edc32c82f2e0",
|
|
36
|
+
"skills/nggaigc/scripts/ngg-session.mjs": "c567d12a313caa93110371e50ddaad287cede2b7d9d2c077d40d0cf258fb7d65",
|
|
37
37
|
"skills/nggaigc/scripts/supported-platforms.json": "ec8b0754c489e04534a1d9880dd6664ba9c5bcd07789e06d138e0923f23575ff",
|
|
38
38
|
"skills/nggaigc/scripts/windows-credential.ps1": "641888d8c6016bb84f18df19315322ed802c5709fbe5209250eaf1b0ce498aec",
|
|
39
|
-
"skills/nggaigc/SKILL.md": "
|
|
39
|
+
"skills/nggaigc/SKILL.md": "bca7a53138b6f820c0a735dcdcb20b688e9a702699bc84babc4ef6a630988a07"
|
|
40
40
|
},
|
|
41
41
|
"signature": {
|
|
42
42
|
"algorithm": "ed25519",
|
|
43
43
|
"keyId": "ngg-signing-skill-release-1",
|
|
44
44
|
"scope": "artifact-bytes",
|
|
45
|
-
"value": "
|
|
45
|
+
"value": "qRAynXXtHPBZyWKaozm+Rc2rLoE+zPKZ93tDw3k4/J5r/zce8xlO7crJwCwfVf50mEAFcky8AwrXFt3E9fe4Bw=="
|
|
46
46
|
}
|
|
47
47
|
}
|
|
Binary file
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "nggaigc-plugin-package/v1",
|
|
3
|
+
"artifactId": "plugin.nggaigc",
|
|
4
|
+
"version": "1.1.49",
|
|
5
|
+
"sourceCommit": "69db1c015defab063dc6ac590c3191c3f2accf13",
|
|
6
|
+
"artifactPath": "packages/plugins/nggaigc-plugin-1.1.49.zip",
|
|
7
|
+
"sha256": "8f102ea49ea1123c44d2e199fb6f03a520a85890735a3dc88bbbf9718ec8dc65",
|
|
8
|
+
"sizeBytes": 508722,
|
|
9
|
+
"fileCount": 24,
|
|
10
|
+
"platforms": [
|
|
11
|
+
"win32-x64",
|
|
12
|
+
"win32-arm64",
|
|
13
|
+
"darwin-arm64"
|
|
14
|
+
],
|
|
15
|
+
"files": {
|
|
16
|
+
".codex-plugin/plugin.json": "ff760760b31838bcf605fc6239c02dd5efbe08e5c66ca2999ab63a75cf535ef0",
|
|
17
|
+
"installer/install.cjs": "76f4ed73233fd39900fb0bedbc434dea39e52e6b6b4622f3fd388a5ca09c6f62",
|
|
18
|
+
"installer/legacy-root-digests.json": "922552646a5aa6cff8616c372912a37b1d5f263351206b85785ed9b2eae31641",
|
|
19
|
+
"installer/signed-pair-1.1.16.json": "ccb22a90302cc5c9c585067ebc211a27b0c9d8a177c2740a5678a58a3d70bfe9",
|
|
20
|
+
"installer/signed-pair-1.1.17.json": "a3697506c929aaa085a6d994fc3a1b9a87e522ec6e1e32f3f760e6a534effa2b",
|
|
21
|
+
"migration/seedream-1.1.3/agents/openai.yaml": "3cbf034ddccd64a7972acd37e7433683a3944f3d8c7b5bdccbbd70e517bf5a8c",
|
|
22
|
+
"migration/seedream-1.1.3/references/image-generation.md": "208389b3ea4647040232c65a9b91ebcc20787818f57535f16664a7c4db842b3f",
|
|
23
|
+
"migration/seedream-1.1.3/references/source.json": "75998d079a229435d1097b00bd008703bd38026fc6485c312254925bf55398a8",
|
|
24
|
+
"migration/seedream-1.1.3/scripts/seedream.mjs": "dcc6af4d945790d9dfd7fac21c60934759d7ac2576a14507d0299f4833942a96",
|
|
25
|
+
"migration/seedream-1.1.3/SKILL.md": "5c5cf3c2d99376f246425e873c5566436ed528256372ac3208abb60364c4517c",
|
|
26
|
+
"skills/nggaigc/agents/openai.yaml": "8936d97b9821e687e224e9349cc42be2ee5fc20988562efffbcb70080aedf87c",
|
|
27
|
+
"skills/nggaigc/references/catalog-and-updates.md": "a43bee94a480aa2bf0b1e7038cee6f27fb86d2bd8fa88a28a63678963d7c1530",
|
|
28
|
+
"skills/nggaigc/references/source.json": "64ac80a785146b993aace78f00e88bdd6a571957d019f8ac093264f8c59b9210",
|
|
29
|
+
"skills/nggaigc/scripts/api_client.mjs": "e16bf750a297ef7e88e4843d2fba9c33b412a66516bfe76822d7deec6c153069",
|
|
30
|
+
"skills/nggaigc/scripts/api_package.mjs": "824ea8f935e2c3aec7ad5ea5c6ad043f1b77ccd9918c86687a9bd61558954fe4",
|
|
31
|
+
"skills/nggaigc/scripts/bootstrap-public.json": "1c5ef86f600dc35543db9f20fe0142fc97ff7f2940b585eb2a27860e3328e83f",
|
|
32
|
+
"skills/nggaigc/scripts/launch-ngg-client.cjs": "97c3fb740eba0c0a3dc3ef9f24f3cbb201cd2e1b3209d14b782744bcc083e232",
|
|
33
|
+
"skills/nggaigc/scripts/macos-keychain": "b0bdf29d14219d38ca18c7e5c599deb0daa8c8ac70b0babbc7d4fb23673079ec",
|
|
34
|
+
"skills/nggaigc/scripts/macos-keychain.swift": "1b57e74fde66c824fe970547dd8ca0883a3334c34c065e85a8a2a90d4556a7f5",
|
|
35
|
+
"skills/nggaigc/scripts/ngg_client.mjs": "43ce6697bd15f2bfef089031e33eab73ef1f3883cc724962f1e82731c676ef0c",
|
|
36
|
+
"skills/nggaigc/scripts/ngg-session.mjs": "dbb69158307e3726a567ae65987f61d6ad15f75e3c6e2d41bf43bc50f15d91ec",
|
|
37
|
+
"skills/nggaigc/scripts/supported-platforms.json": "ec8b0754c489e04534a1d9880dd6664ba9c5bcd07789e06d138e0923f23575ff",
|
|
38
|
+
"skills/nggaigc/scripts/windows-credential.ps1": "641888d8c6016bb84f18df19315322ed802c5709fbe5209250eaf1b0ce498aec",
|
|
39
|
+
"skills/nggaigc/SKILL.md": "8cb3eb8a03cf144ce15fa01d7d342495c2b11ba0f6a0cf61a493e1e43c83a11f"
|
|
40
|
+
},
|
|
41
|
+
"signature": {
|
|
42
|
+
"algorithm": "ed25519",
|
|
43
|
+
"keyId": "ngg-signing-skill-release-1",
|
|
44
|
+
"scope": "artifact-bytes",
|
|
45
|
+
"value": "OTRlG+kA7/YmFdLHqdeGfoDftbYidQFCfZay4RSPWdaNmgpuIy32fT7s/u2GWbkAbUz8L1attssM6IPZUraZAg=="
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
{
|
|
2
|
+
"payload": {
|
|
3
|
+
"schemaVersion": "nggaigc-start-compatibility/v1",
|
|
4
|
+
"catalog": {
|
|
5
|
+
"releaseId": "catalog-2026.11.02.3",
|
|
6
|
+
"catalogVersion": "1.10.168",
|
|
7
|
+
"releaseSha256": "11fa89a45efc9b859d26ae6398b97b3a7559c1d614eefae3ff59a9403f481950"
|
|
8
|
+
},
|
|
9
|
+
"contract": "same-skill-inputs-pricing-permissions",
|
|
10
|
+
"aliases": [
|
|
11
|
+
{
|
|
12
|
+
"id": "skill.h3-aqing-video",
|
|
13
|
+
"fromVersion": "0.1.3",
|
|
14
|
+
"fromManifestSha256": "aa9bfafce6e01c47b4d1c55cb4222374b7c86dfd0a7eb9b7fd4f75b8ce6725b3",
|
|
15
|
+
"toVersion": "0.1.4",
|
|
16
|
+
"toManifestSha256": "8a6f2c926938bd5e39f06ee8618f6a3618176aebc5d2fe891d0f2f57bb623df2"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"id": "skill.h3-broll-video-assets",
|
|
20
|
+
"fromVersion": "0.1.9",
|
|
21
|
+
"fromManifestSha256": "d4f3a01ce66879e668935af9ccba225ca08ca9b123296e8f7e6144a2beb71674",
|
|
22
|
+
"toVersion": "0.1.10",
|
|
23
|
+
"toManifestSha256": "14b2d3996d927f2b3c995c3e827a33e990bcca923aa64f84c905b24b3badcfe4"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": "skill.image-singing-digital-human",
|
|
27
|
+
"fromVersion": "0.1.3",
|
|
28
|
+
"fromManifestSha256": "e9ae6ca29c8711afceccd423f260b249c6744582ba98cbcbc5bcfc89187a2c11",
|
|
29
|
+
"toVersion": "0.1.4",
|
|
30
|
+
"toManifestSha256": "941ca6ea1cd72540adef38f57f6b09b7e7635c72760f9c4eaa4a92e4fc86465a"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": "skill.image-singing-video",
|
|
34
|
+
"fromVersion": "0.1.2",
|
|
35
|
+
"fromManifestSha256": "6ef089b81c8da8a1039faeaff80a4559815e07bf46a11482003a191d8656187d",
|
|
36
|
+
"toVersion": "0.1.3",
|
|
37
|
+
"toManifestSha256": "a4ec99e3478b100c4abc1662e6cc01b8e41bb01f6653643d20e9910b8ff8b6c8"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"id": "skill.knowledge-narration-video",
|
|
41
|
+
"fromVersion": "0.1.7",
|
|
42
|
+
"fromManifestSha256": "076755d1414537fc46899cab8bae79c25e3607a923cff9df35c2b55c3f5c1c0b",
|
|
43
|
+
"toVersion": "0.1.8",
|
|
44
|
+
"toManifestSha256": "32be1dd0d3b59b575239eaf61a4b78226a17a9db757c1b1eb51559a01f946b15"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"id": "skill.ngg-depth-dance-copy",
|
|
48
|
+
"fromVersion": "0.2.1",
|
|
49
|
+
"fromManifestSha256": "efb34854dd2d5ab5e8d33363ca1ce93c69c7743cac143c16c34c360a8bab89fd",
|
|
50
|
+
"toVersion": "0.2.2",
|
|
51
|
+
"toManifestSha256": "6eca6fc0897875ba56c0cb460052f7f490f6833c61164daf3dfc22b4e9530fd9"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"id": "skill.ngg-drama-workflow",
|
|
55
|
+
"fromVersion": "0.3.4",
|
|
56
|
+
"fromManifestSha256": "04fdfac21e7010b4268e02b3d2424d9fb1b9359e88461464967565a09e8ec196",
|
|
57
|
+
"toVersion": "0.3.5",
|
|
58
|
+
"toManifestSha256": "1e94cabce4f46f7c4dec439e18ec66b19274a71516384379f92477e67275ca88"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"id": "skill.video-lipsync",
|
|
62
|
+
"fromVersion": "0.1.1",
|
|
63
|
+
"fromManifestSha256": "4d4ed19d17c56a0de549e1516c76b1c359749bfcd39dd52b7b24f216d5b68733",
|
|
64
|
+
"toVersion": "0.1.2",
|
|
65
|
+
"toManifestSha256": "cce3409eba007acb6901cf01cf5bf57167fa04b22f903aaa600de71ee77d7e4d"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"id": "skill.video-lipsync-workflow",
|
|
69
|
+
"fromVersion": "0.1.1",
|
|
70
|
+
"fromManifestSha256": "b22a9f7b107d9dd1d10be530cd31d6b207f5efa96628793987d7c3aeb3b26b1f",
|
|
71
|
+
"toVersion": "0.1.2",
|
|
72
|
+
"toManifestSha256": "a5f8e045e01dcff66cf1f65ab0f831d5349909606a47b4e2fe793c6d6a5cd5c2"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"id": "skill.voice-clone",
|
|
76
|
+
"fromVersion": "0.1.5",
|
|
77
|
+
"fromManifestSha256": "99220323b89b7412d4eda6b9a169965627744d0f32da9d3a30b8155b49799785",
|
|
78
|
+
"toVersion": "0.1.6",
|
|
79
|
+
"toManifestSha256": "7778a8e8cef0b426293c0f73c690a1cd464a0a10d8b9154e558e48ff0b2dbb25"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"id": "skill.w2-1-digital-human",
|
|
83
|
+
"fromVersion": "0.1.4",
|
|
84
|
+
"fromManifestSha256": "280038085869beb851f85189c66f3785b78436cb356f3d4e998f3a7f29f84c06",
|
|
85
|
+
"toVersion": "0.1.5",
|
|
86
|
+
"toManifestSha256": "5ed03ba9ea025f8327daae1bf4b56b6b36496eb6ae32bc09b9fe708b7d4bd1db"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"id": "skill.w2-1-image-digital-human",
|
|
90
|
+
"fromVersion": "0.1.6",
|
|
91
|
+
"fromManifestSha256": "12a470f19dd1115cd07b4ea65f7bfe03f2b4a7b1288f2535628a673bcb4a86b7",
|
|
92
|
+
"toVersion": "0.1.7",
|
|
93
|
+
"toManifestSha256": "80bbb639b345fd0dd91fba08243755f15bc9d186873cd33bde176603314e2e48"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"id": "skill.w3-multimodal-video",
|
|
97
|
+
"fromVersion": "1.2.9",
|
|
98
|
+
"fromManifestSha256": "393a95738fb1f8eda4bcf048afc695663c00f2d844cce76adb25c22db2eb2c47",
|
|
99
|
+
"toVersion": "1.2.10",
|
|
100
|
+
"toManifestSha256": "63aa79081179d5032a6b3dee796fc3c9e137b4edada312029d63ec1d52ff3514"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"id": "skill.w3-video-copy",
|
|
104
|
+
"fromVersion": "0.1.36",
|
|
105
|
+
"fromManifestSha256": "bbb3b9869b3a50b4724c30465e9b4addd7dde1514b4e4814e8d91664d01f64e8",
|
|
106
|
+
"toVersion": "0.1.37",
|
|
107
|
+
"toManifestSha256": "1a5c06a3dc14f612d2423b47701fb88f492ee2046741126b03d310c33907fb8a"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"id": "skill.w3g-video-generation",
|
|
111
|
+
"fromVersion": "0.1.2",
|
|
112
|
+
"fromManifestSha256": "d75ecfb49ba264601b360bcec6bc9e5ab19f6e9294ae01b9957da2fd8f41950b",
|
|
113
|
+
"toVersion": "0.1.3",
|
|
114
|
+
"toManifestSha256": "08ced5591a854739a7bd6594969d5bcf4ce6d392cf7423e72ac81dceffcb2489"
|
|
115
|
+
}
|
|
116
|
+
]
|
|
117
|
+
},
|
|
118
|
+
"signature": {
|
|
119
|
+
"algorithm": "ed25519",
|
|
120
|
+
"keyId": "ngg-signing-skill-release-1",
|
|
121
|
+
"scope": "nggaigc-start-compatibility/v1",
|
|
122
|
+
"value": "TieQh/DsCu0K6ViZsYATqXFnBIFtnJxk97Nd3j9Jp8F4VfeacC7IE2vOlG5VLz/gWvxXqALy6J9OOiBJi45PDQ=="
|
|
123
|
+
}
|
|
124
|
+
}
|
|
File without changes
|