create-assistant-ui 0.0.54 → 0.0.56
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 +27 -3
- package/dist/index.d.ts +1 -3
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/run.d.ts +4 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +37 -48
- package/dist/run.js.map +1 -1
- package/package.json +3 -3
- package/dist/index.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -1,9 +1,33 @@
|
|
|
1
1
|
# `create-assistant-ui`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/create-assistant-ui)
|
|
4
|
+
[](https://www.npmjs.com/package/create-assistant-ui)
|
|
5
|
+
[](https://github.com/assistant-ui/assistant-ui)
|
|
6
|
+
|
|
7
|
+
Scaffold a new assistant-ui project from a chosen template (default AI SDK, minimal, cloud, langgraph, MCP, and more).
|
|
4
8
|
|
|
5
9
|
## Usage
|
|
6
10
|
|
|
7
|
-
```
|
|
8
|
-
npm create assistant-ui
|
|
11
|
+
```bash
|
|
12
|
+
npm create assistant-ui my-app
|
|
13
|
+
pnpm create assistant-ui my-app
|
|
14
|
+
yarn create assistant-ui my-app
|
|
15
|
+
bunx create-assistant-ui my-app
|
|
9
16
|
```
|
|
17
|
+
|
|
18
|
+
This wraps the `assistant-ui create` command from the [`assistant-ui` CLI](https://www.npmjs.com/package/assistant-ui). Pass `-t <template>` to pick a starter, or `--preset <url>` to scaffold from an `assistant-ui.com` playground link.
|
|
19
|
+
|
|
20
|
+
## Templates
|
|
21
|
+
|
|
22
|
+
| Name | Description |
|
|
23
|
+
| -------------- | ---------------------------------------------------------- |
|
|
24
|
+
| `default` | Next.js + Vercel AI SDK (the recommended starting point). |
|
|
25
|
+
| `minimal` | Smallest possible Next.js + assistant-ui setup. |
|
|
26
|
+
| `cloud` | Default template plus Assistant Cloud thread persistence. |
|
|
27
|
+
| `cloud-clerk` | Cloud template with Clerk authentication. |
|
|
28
|
+
| `langgraph` | Next.js + LangGraph agent backend. |
|
|
29
|
+
| `mcp` | Next.js + an MCP server integration. |
|
|
30
|
+
|
|
31
|
+
## Documentation
|
|
32
|
+
|
|
33
|
+
Full template list and flag reference at [assistant-ui.com/docs/cli](https://www.assistant-ui.com/docs/cli).
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { main } from \"./run\";\n\nprocess.on(\"SIGINT\", () => process.exit(0));\nprocess.on(\"SIGTERM\", () => process.exit(0));\n\nvoid main();\n"],"mappings":";;;AAGA,QAAQ,GAAG,gBAAgB,QAAQ,KAAK,CAAC,CAAC;AAC1C,QAAQ,GAAG,iBAAiB,QAAQ,KAAK,CAAC,CAAC;AAEtC,KAAK"}
|
package/dist/run.d.ts
CHANGED
package/dist/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","
|
|
1
|
+
{"version":3,"file":"run.d.ts","names":[],"sources":["../src/run.ts"],"mappings":";iBAoDsB,IAAA,CAAA,GAAQ,OAAO"}
|
package/dist/run.js
CHANGED
|
@@ -2,58 +2,47 @@ import { spawn } from "cross-spawn";
|
|
|
2
2
|
import { readFile } from "node:fs/promises";
|
|
3
3
|
import { createRequire } from "node:module";
|
|
4
4
|
import path from "node:path";
|
|
5
|
+
//#region src/run.ts
|
|
5
6
|
const require = createRequire(import.meta.url);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
7
|
+
var SpawnExitError = class extends Error {
|
|
8
|
+
code;
|
|
9
|
+
constructor(code) {
|
|
10
|
+
super(`Process exited with code ${code}`);
|
|
11
|
+
this.code = code;
|
|
12
|
+
}
|
|
13
|
+
};
|
|
13
14
|
function runSpawn(command, args) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
resolve();
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
});
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
const child = spawn(command, args, { stdio: "inherit" });
|
|
17
|
+
child.on("error", (error) => reject(error));
|
|
18
|
+
child.on("close", (code) => {
|
|
19
|
+
if (code !== 0) reject(new SpawnExitError(code || 1));
|
|
20
|
+
else resolve();
|
|
21
|
+
});
|
|
22
|
+
});
|
|
28
23
|
}
|
|
29
24
|
async function resolveAssistantUiBinPath() {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (!bin) {
|
|
37
|
-
throw new Error("assistant-ui package does not expose a binary.");
|
|
38
|
-
}
|
|
39
|
-
return path.resolve(path.dirname(packageJsonPath), bin);
|
|
25
|
+
const packageJsonPath = require.resolve("assistant-ui/package.json");
|
|
26
|
+
const packageJsonRaw = await readFile(packageJsonPath, "utf8");
|
|
27
|
+
const packageJson = JSON.parse(packageJsonRaw);
|
|
28
|
+
const bin = typeof packageJson.bin === "string" ? packageJson.bin : packageJson.bin?.["assistant-ui"];
|
|
29
|
+
if (!bin) throw new Error("assistant-ui package does not expose a binary.");
|
|
30
|
+
return path.resolve(path.dirname(packageJsonPath), bin);
|
|
40
31
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
55
|
-
console.error(`Error: ${message}`);
|
|
56
|
-
process.exit(1);
|
|
57
|
-
}
|
|
32
|
+
async function main() {
|
|
33
|
+
try {
|
|
34
|
+
const assistantUiBinPath = await resolveAssistantUiBinPath();
|
|
35
|
+
const args = process.argv.slice(2);
|
|
36
|
+
if (args[0] !== "create") args.unshift("create");
|
|
37
|
+
await runSpawn(process.execPath, [assistantUiBinPath, ...args]);
|
|
38
|
+
} catch (error) {
|
|
39
|
+
if (error instanceof SpawnExitError) process.exit(error.code);
|
|
40
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
41
|
+
console.error(`Error: ${message}`);
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
58
44
|
}
|
|
45
|
+
//#endregion
|
|
46
|
+
export { main };
|
|
47
|
+
|
|
59
48
|
//# sourceMappingURL=run.js.map
|
package/dist/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","
|
|
1
|
+
{"version":3,"file":"run.js","names":[],"sources":["../src/run.ts"],"sourcesContent":["import { spawn } from \"cross-spawn\";\nimport { readFile } from \"node:fs/promises\";\nimport { createRequire } from \"node:module\";\nimport path from \"node:path\";\n\nconst require = createRequire(import.meta.url);\n\nclass SpawnExitError extends Error {\n code: number;\n\n constructor(code: number) {\n super(`Process exited with code ${code}`);\n this.code = code;\n }\n}\n\nfunction runSpawn(command: string, args: string[]): Promise<void> {\n return new Promise((resolve, reject) => {\n const child = spawn(command, args, {\n stdio: \"inherit\",\n });\n\n child.on(\"error\", (error) => reject(error));\n child.on(\"close\", (code) => {\n if (code !== 0) {\n reject(new SpawnExitError(code || 1));\n } else {\n resolve();\n }\n });\n });\n}\n\nasync function resolveAssistantUiBinPath(): Promise<string> {\n const packageJsonPath = require.resolve(\"assistant-ui/package.json\");\n const packageJsonRaw = await readFile(packageJsonPath, \"utf8\");\n const packageJson = JSON.parse(packageJsonRaw) as {\n bin?: string | Record<string, string>;\n };\n\n const bin =\n typeof packageJson.bin === \"string\"\n ? packageJson.bin\n : packageJson.bin?.[\"assistant-ui\"];\n\n if (!bin) {\n throw new Error(\"assistant-ui package does not expose a binary.\");\n }\n\n return path.resolve(path.dirname(packageJsonPath), bin);\n}\n\nexport async function main(): Promise<void> {\n try {\n const assistantUiBinPath = await resolveAssistantUiBinPath();\n\n const args = process.argv.slice(2);\n if (args[0] !== \"create\") {\n args.unshift(\"create\");\n }\n\n await runSpawn(process.execPath, [assistantUiBinPath, ...args]);\n } catch (error) {\n if (error instanceof SpawnExitError) {\n process.exit(error.code);\n }\n\n const message = error instanceof Error ? error.message : String(error);\n console.error(`Error: ${message}`);\n process.exit(1);\n }\n}\n"],"mappings":";;;;;AAKA,MAAM,UAAU,cAAc,OAAO,KAAK,GAAG;AAE7C,IAAM,iBAAN,cAA6B,MAAM;CACjC;CAEA,YAAY,MAAc;EACxB,MAAM,4BAA4B,MAAM;EACxC,KAAK,OAAO;CACd;AACF;AAEA,SAAS,SAAS,SAAiB,MAA+B;CAChE,OAAO,IAAI,SAAS,SAAS,WAAW;EACtC,MAAM,QAAQ,MAAM,SAAS,MAAM,EACjC,OAAO,UACT,CAAC;EAED,MAAM,GAAG,UAAU,UAAU,OAAO,KAAK,CAAC;EAC1C,MAAM,GAAG,UAAU,SAAS;GAC1B,IAAI,SAAS,GACX,OAAO,IAAI,eAAe,QAAQ,CAAC,CAAC;QAEpC,QAAQ;EAEZ,CAAC;CACH,CAAC;AACH;AAEA,eAAe,4BAA6C;CAC1D,MAAM,kBAAkB,QAAQ,QAAQ,2BAA2B;CACnE,MAAM,iBAAiB,MAAM,SAAS,iBAAiB,MAAM;CAC7D,MAAM,cAAc,KAAK,MAAM,cAAc;CAI7C,MAAM,MACJ,OAAO,YAAY,QAAQ,WACvB,YAAY,MACZ,YAAY,MAAM;CAExB,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,gDAAgD;CAGlE,OAAO,KAAK,QAAQ,KAAK,QAAQ,eAAe,GAAG,GAAG;AACxD;AAEA,eAAsB,OAAsB;CAC1C,IAAI;EACF,MAAM,qBAAqB,MAAM,0BAA0B;EAE3D,MAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;EACjC,IAAI,KAAK,OAAO,UACd,KAAK,QAAQ,QAAQ;EAGvB,MAAM,SAAS,QAAQ,UAAU,CAAC,oBAAoB,GAAG,IAAI,CAAC;CAChE,SAAS,OAAO;EACd,IAAI,iBAAiB,gBACnB,QAAQ,KAAK,MAAM,IAAI;EAGzB,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;EACrE,QAAQ,MAAM,UAAU,SAAS;EACjC,QAAQ,KAAK,CAAC;CAChB;AACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-assistant-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.56",
|
|
4
4
|
"description": "Create assistant-ui apps with one command",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -26,11 +26,11 @@
|
|
|
26
26
|
"sideEffects": false,
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"cross-spawn": "^7.0.6",
|
|
29
|
-
"assistant-ui": "0.0.
|
|
29
|
+
"assistant-ui": "0.0.93"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@types/cross-spawn": "^6.0.6",
|
|
33
|
-
"@assistant-ui/x-buildutils": "0.0.
|
|
33
|
+
"@assistant-ui/x-buildutils": "0.0.9"
|
|
34
34
|
},
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public",
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|