create-skybridge 0.0.0-dev.7d48f61 → 0.0.0-dev.7d4c70e
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/dist/index.js +315 -214
- package/package.json +7 -6
- package/{template → templates/blank}/Dockerfile +3 -3
- package/templates/blank/README.md +92 -0
- package/{template → templates/blank}/_gitignore +2 -1
- package/{template → templates/blank}/node_modules/.bin/alpic +2 -2
- package/{template → templates/blank}/node_modules/.bin/tsc +2 -2
- package/{template → templates/blank}/node_modules/.bin/tsserver +2 -2
- package/{template → templates/blank}/node_modules/.bin/tsx +2 -2
- package/{template → templates/blank}/node_modules/.bin/vite +2 -2
- package/templates/blank/package.json +29 -0
- package/templates/blank/src/server.ts +16 -0
- package/templates/blank/tsconfig.json +5 -0
- package/templates/blank/vite.config.ts +6 -0
- package/templates/demo/.dockerignore +4 -0
- package/templates/demo/AGENTS.md +1 -0
- package/templates/demo/Dockerfile +53 -0
- package/{template → templates/demo}/README.md +16 -15
- package/templates/demo/_gitignore +7 -0
- package/templates/demo/alpic.json +3 -0
- package/templates/demo/node_modules/.bin/alpic +21 -0
- package/templates/demo/node_modules/.bin/sb +21 -0
- package/templates/demo/node_modules/.bin/skybridge +21 -0
- package/templates/demo/node_modules/.bin/tsc +21 -0
- package/templates/demo/node_modules/.bin/tsserver +21 -0
- package/templates/demo/node_modules/.bin/tsx +21 -0
- package/templates/demo/node_modules/.bin/vite +21 -0
- package/{template → templates/demo}/package.json +14 -14
- package/templates/demo/src/helpers.ts +4 -0
- package/{template → templates/demo}/src/server.ts +23 -6
- package/{template → templates/demo}/src/views/components/steps/tool-output.tsx +2 -2
- package/{template → templates/demo}/src/views/onboarding.tsx +1 -1
- package/dist/index.test.d.ts +0 -1
- package/dist/index.test.js +0 -35
- package/template/src/vite-manifest.d.ts +0 -4
- /package/{template → templates/blank}/.dockerignore +0 -0
- /package/{template → templates/blank}/AGENTS.md +0 -0
- /package/{template → templates/blank}/alpic.json +0 -0
- /package/{template → templates/blank}/node_modules/.bin/sb +0 -0
- /package/{template → templates/blank}/node_modules/.bin/skybridge +0 -0
- /package/{template → templates/blank}/src/helpers.ts +0 -0
- /package/{template → templates/demo}/src/index.css +0 -0
- /package/{template → templates/demo}/src/views/components/doc-link.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/doc.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/nav.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/progress.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/steps/outro.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/steps/state.tsx +0 -0
- /package/{template → templates/demo}/src/views/components/steps/tool-call.tsx +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/beret.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/chapka.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/cowboy-hat.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/fez.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/jester-hat.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/mitre.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/non-la.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/original.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/propeller-beanie.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/ski-mask.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/sombrero.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/top-hat.png +0 -0
- /package/{template → templates/demo}/src/views/images/mascot/viking-helmet.png +0 -0
- /package/{template → templates/demo}/src/views/use-mascot.ts +0 -0
- /package/{template → templates/demo}/tsconfig.json +0 -0
- /package/{template → templates/demo}/vite.config.ts +0 -0
|
@@ -15,8 +15,20 @@ const server = new McpServer(
|
|
|
15
15
|
inputSchema: {
|
|
16
16
|
name: z.string().optional().describe("The user name."),
|
|
17
17
|
},
|
|
18
|
+
annotations: {
|
|
19
|
+
title: "Start Skybridge onboarding",
|
|
20
|
+
readOnlyHint: true,
|
|
21
|
+
destructiveHint: false,
|
|
22
|
+
openWorldHint: false,
|
|
23
|
+
},
|
|
24
|
+
_meta: {
|
|
25
|
+
"openai/toolInvocation/invoking": "Starting the Skybridge onboarding…",
|
|
26
|
+
"openai/toolInvocation/invoked": "Onboarding ready.",
|
|
27
|
+
},
|
|
18
28
|
view: {
|
|
19
29
|
component: "onboarding",
|
|
30
|
+
// Replace with the URL your widget will be served from in production.
|
|
31
|
+
domain: "https://skybridge.tech",
|
|
20
32
|
description: "Onboarding deck",
|
|
21
33
|
csp: {
|
|
22
34
|
resourceDomains: [
|
|
@@ -30,7 +42,7 @@ const server = new McpServer(
|
|
|
30
42
|
async ({ name }) => {
|
|
31
43
|
return {
|
|
32
44
|
structuredContent: { name },
|
|
33
|
-
content: [{ type: "text", text: `User name: ${name}` }],
|
|
45
|
+
content: [{ type: "text", text: `User name: ${name ?? "friend"}` }],
|
|
34
46
|
isError: false,
|
|
35
47
|
};
|
|
36
48
|
},
|
|
@@ -39,6 +51,16 @@ const server = new McpServer(
|
|
|
39
51
|
{
|
|
40
52
|
name: "get-fortune-cookie",
|
|
41
53
|
description: "Get fortune cookie",
|
|
54
|
+
annotations: {
|
|
55
|
+
title: "Get a fortune cookie",
|
|
56
|
+
readOnlyHint: true,
|
|
57
|
+
destructiveHint: false,
|
|
58
|
+
openWorldHint: false,
|
|
59
|
+
},
|
|
60
|
+
_meta: {
|
|
61
|
+
"openai/toolInvocation/invoking": "Cracking open a fortune cookie…",
|
|
62
|
+
"openai/toolInvocation/invoked": "Fortune revealed.",
|
|
63
|
+
},
|
|
42
64
|
},
|
|
43
65
|
async () => {
|
|
44
66
|
const predictions = [
|
|
@@ -67,11 +89,6 @@ const server = new McpServer(
|
|
|
67
89
|
},
|
|
68
90
|
);
|
|
69
91
|
|
|
70
|
-
if (process.env.NODE_ENV === "production") {
|
|
71
|
-
const { default: manifest } = await import("./vite-manifest.js");
|
|
72
|
-
server.setViteManifest(manifest);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
92
|
export default await server.run();
|
|
76
93
|
|
|
77
94
|
export type AppType = typeof server;
|
|
@@ -23,8 +23,8 @@ export default function ToolOutput() {
|
|
|
23
23
|
) : (
|
|
24
24
|
<p>
|
|
25
25
|
The view reads the <strong>tool output</strong>, but no{" "}
|
|
26
|
-
<code>name</code> was passed this time. Try again with
|
|
27
|
-
to see
|
|
26
|
+
<code>name</code> was passed this time. Try again with your surname
|
|
27
|
+
to see how this view personalizes.
|
|
28
28
|
</p>
|
|
29
29
|
)}
|
|
30
30
|
</div>
|
|
@@ -26,7 +26,7 @@ export default function Onboarding() {
|
|
|
26
26
|
|
|
27
27
|
return (
|
|
28
28
|
<div
|
|
29
|
-
className={`${theme === "dark" ? "dark" : ""} mx-auto w-full max-w-4xl
|
|
29
|
+
className={`${theme === "dark" ? "dark" : ""} mx-auto w-full max-w-4xl border border-border overflow-hidden bg-background text-foreground`}
|
|
30
30
|
>
|
|
31
31
|
<div className="min-h-136 md:min-h-95 flex flex-col items-center gap-6 p-6 bg-linear-to-br from-purple-50 via-white to-cyan-50 dark:from-purple-950/30 dark:via-zinc-950 dark:to-cyan-900/30 bg-size-[200%_200%] animate-aurora md:flex-row md:items-stretch">
|
|
32
32
|
<div className="shrink-0 self-center animate-float">
|
package/dist/index.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/index.test.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { randomBytes } from "node:crypto";
|
|
2
|
-
import fs from "node:fs/promises";
|
|
3
|
-
import path from "node:path";
|
|
4
|
-
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
5
|
-
import { init } from "./index.js";
|
|
6
|
-
describe("create-skybridge", () => {
|
|
7
|
-
let tempDirName;
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
tempDirName = `test-${randomBytes(2).toString("hex")}`;
|
|
10
|
-
});
|
|
11
|
-
afterEach(async () => {
|
|
12
|
-
await fs.rm(path.join(process.cwd(), tempDirName), {
|
|
13
|
-
recursive: true,
|
|
14
|
-
force: true,
|
|
15
|
-
});
|
|
16
|
-
});
|
|
17
|
-
it("should copy the template", { timeout: 10000 }, async () => {
|
|
18
|
-
const name = `../../${tempDirName}//project$`;
|
|
19
|
-
await init([name]);
|
|
20
|
-
await fs.access(path.join(process.cwd(), tempDirName, "project", ".gitignore"));
|
|
21
|
-
await fs.access(path.join(process.cwd(), tempDirName, "project", ".dockerignore"));
|
|
22
|
-
await fs.access(path.join(process.cwd(), tempDirName, "project", "Dockerfile"));
|
|
23
|
-
expect(fs.access(path.join(process.cwd(), tempDirName, "project", ".npmrc"))).rejects.toThrowError();
|
|
24
|
-
});
|
|
25
|
-
it("should download template from repo", { timeout: 10000 }, async () => {
|
|
26
|
-
const name = `../../${tempDirName}//project$`;
|
|
27
|
-
await init([
|
|
28
|
-
name,
|
|
29
|
-
"--repo",
|
|
30
|
-
"github:alpic-ai/skybridge/examples/ecom-carousel",
|
|
31
|
-
]);
|
|
32
|
-
await fs.access(path.join(process.cwd(), tempDirName, "project", ".gitignore"));
|
|
33
|
-
expect(fs.access(path.join(process.cwd(), tempDirName, "project", ".npmrc"))).rejects.toThrowError();
|
|
34
|
-
});
|
|
35
|
-
});
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|