@ggui-ai/cli 0.8.0 → 0.9.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gadget-create.d.ts","sourceRoot":"","sources":["../src/gadget-create.ts"],"names":[],"mappings":"AAoBA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,4BAA4B,CAAC;AAQpC;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CASlE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACpD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,iBAAiB,CA4EnB;AAED,mEAAmE;AACnE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;CACnC;AAED,wEAAwE;AACxE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EACT,oBAAoB,GACpB,kBAAkB,GAClB,kBAAkB,GAClB,UAAU,CAAC;IACf,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAE3E;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,cAAc,CAoCjB;AA0ND;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GACvB,OAAO,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"gadget-create.d.ts","sourceRoot":"","sources":["../src/gadget-create.ts"],"names":[],"mappings":"AAoBA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,4BAA4B,CAAC;AAQpC;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CASlE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACpD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,iBAAiB,CA4EnB;AAED,mEAAmE;AACnE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;CACnC;AAED,wEAAwE;AACxE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EACT,oBAAoB,GACpB,kBAAkB,GAClB,kBAAkB,GAClB,UAAU,CAAC;IACf,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAE3E;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,cAAc,CAoCjB;AA0ND;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAmI7B;AAED,eAAO,MAAM,kBAAkB,w6CAgC9B,CAAC"}
|
package/dist/gadget-create.js
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* the real argv + writes the banner.
|
|
18
18
|
*/
|
|
19
19
|
import { mkdir, readdir, writeFile } from 'node:fs/promises';
|
|
20
|
-
import { join } from 'node:path';
|
|
20
|
+
import { join, resolve } from 'node:path';
|
|
21
21
|
import { GGUI_GADGET_JSON_FILENAME, parseGadgetManifest, } from '@ggui-ai/artifact-manifest';
|
|
22
22
|
/** Default version for a freshly scaffolded gadget. */
|
|
23
23
|
const DEFAULT_VERSION = '0.0.1';
|
|
@@ -393,7 +393,11 @@ export async function runGadgetCreate(flags, options) {
|
|
|
393
393
|
message: err instanceof Error ? err.message : 'failed to validate manifest',
|
|
394
394
|
};
|
|
395
395
|
}
|
|
396
|
-
|
|
396
|
+
// `resolve` (not `join`): when `flags.dir` is an absolute path, it must
|
|
397
|
+
// win over `options.cwd`. `join('/repo', '/tmp/foo')` concatenates to
|
|
398
|
+
// `/repo/tmp/foo`; `resolve('/repo', '/tmp/foo')` correctly returns
|
|
399
|
+
// `/tmp/foo`. Relative paths still resolve against cwd.
|
|
400
|
+
const targetDir = resolve(options.cwd, flags.dir ?? name);
|
|
397
401
|
let dirState;
|
|
398
402
|
try {
|
|
399
403
|
dirState = await isDirectoryEmpty(targetDir);
|
|
@@ -672,10 +672,15 @@ function describeRegistryAuthRejection(authKind, path) {
|
|
|
672
672
|
}
|
|
673
673
|
async function runConformancePreflight(opts) {
|
|
674
674
|
const url = `${opts.registryUrl}/conformance/check`;
|
|
675
|
+
// `bundle` is RAW ESM TEXT on this route — `checkConformance` feeds
|
|
676
|
+
// it straight to the parser. Unlike `/publish` (which uploads bytes
|
|
677
|
+
// and takes base64), the conformance gate checks text; base64 here
|
|
678
|
+
// parses as one exportless expression statement and every gadget
|
|
679
|
+
// preflight dies with `missing_default_export`.
|
|
675
680
|
const body = JSON.stringify({
|
|
676
681
|
manifest: opts.manifest,
|
|
677
682
|
...(opts.bundleBytes !== undefined
|
|
678
|
-
? { bundle: Buffer.from(opts.bundleBytes).toString('
|
|
683
|
+
? { bundle: Buffer.from(opts.bundleBytes).toString('utf8') }
|
|
679
684
|
: {}),
|
|
680
685
|
});
|
|
681
686
|
let res;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ggui-ai/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "The `ggui` CLI — run the ggui protocol locally: dev server, self-hosted MCP server, and gadget / blueprint authoring. End-to-end OSS and self-hosted workflows; no account required.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ggui",
|
|
@@ -37,22 +37,22 @@
|
|
|
37
37
|
"@noble/hashes": "^1.6.0",
|
|
38
38
|
"esbuild": "^0.25.12",
|
|
39
39
|
"zod": "^4.3.6",
|
|
40
|
-
"@ggui-ai/agent-runtime": "0.
|
|
41
|
-
"@ggui-ai/
|
|
42
|
-
"@ggui-ai/
|
|
43
|
-
"@ggui-ai/
|
|
44
|
-
"@ggui-ai/
|
|
45
|
-
"@ggui-ai/embedding-local": "0.
|
|
46
|
-
"@ggui-ai/mcp-server": "0.
|
|
47
|
-
"@ggui-ai/mcp-server
|
|
48
|
-
"@ggui-ai/
|
|
49
|
-
"@ggui-ai/
|
|
50
|
-
"@ggui-ai/
|
|
51
|
-
"@ggui-ai/
|
|
52
|
-
"@ggui-ai/project-config": "0.
|
|
53
|
-
"@ggui-ai/iframe-runtime": "0.
|
|
54
|
-
"@ggui-ai/ui-gen": "0.
|
|
55
|
-
"@ggui-ai/ui-registry": "0.
|
|
40
|
+
"@ggui-ai/agent-runtime": "0.9.0",
|
|
41
|
+
"@ggui-ai/artifact-manifest": "0.9.0",
|
|
42
|
+
"@ggui-ai/gadget-signing": "0.9.0",
|
|
43
|
+
"@ggui-ai/dev-stack": "0.9.0",
|
|
44
|
+
"@ggui-ai/design": "0.9.0",
|
|
45
|
+
"@ggui-ai/embedding-local": "0.9.0",
|
|
46
|
+
"@ggui-ai/mcp-server-core": "0.9.0",
|
|
47
|
+
"@ggui-ai/mcp-server": "0.9.0",
|
|
48
|
+
"@ggui-ai/preview-a2ui": "0.9.0",
|
|
49
|
+
"@ggui-ai/protocol": "0.9.0",
|
|
50
|
+
"@ggui-ai/mcp-server-handlers": "0.9.0",
|
|
51
|
+
"@ggui-ai/registry-core": "0.9.0",
|
|
52
|
+
"@ggui-ai/project-config": "0.9.0",
|
|
53
|
+
"@ggui-ai/iframe-runtime": "0.9.0",
|
|
54
|
+
"@ggui-ai/ui-gen": "0.9.0",
|
|
55
|
+
"@ggui-ai/ui-registry": "0.9.0"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@types/node": "^24.0.0",
|