@nylorun/studio 0.2.0-rc.3 → 0.4.1-beta
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/CHANGELOG.md +25 -0
- package/README.md +5 -16
- package/dist/protocol.d.ts +21 -3
- package/dist/protocol.js +10 -1
- package/dist/web/assets/index-DTySHxBY.css +2 -0
- package/dist/web/assets/index-k9Rug6YB.js +58 -0
- package/dist/web/index.html +2 -2
- package/package.json +15 -11
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -62
- package/dist/web/assets/index-DbFPzUjx.js +0 -58
- package/dist/web/assets/index-iIH-vyB3.css +0 -2
package/dist/web/index.html
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
<link rel="apple-touch-icon" href="/favicon/apple-touch-icon.png" sizes="180x180" />
|
|
11
11
|
<link rel="manifest" href="/favicon/site.webmanifest" />
|
|
12
12
|
<title>Nylo Studio</title>
|
|
13
|
-
<script type="module" crossorigin src="/assets/index-
|
|
14
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
13
|
+
<script type="module" crossorigin src="/assets/index-k9Rug6YB.js"></script>
|
|
14
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DTySHxBY.css">
|
|
15
15
|
</head>
|
|
16
16
|
<body>
|
|
17
17
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nylorun/studio",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.4.1-beta",
|
|
4
|
+
"description": "Local developer Studio for Nylorun agents. Docs: docs.nylorun.com.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"repository": {
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"url": "git+https://github.com/nylorun/harness.git",
|
|
10
10
|
"directory": "studio"
|
|
11
11
|
},
|
|
12
|
-
"homepage": "https://
|
|
12
|
+
"homepage": "https://docs.nylorun.com",
|
|
13
13
|
"bugs": "https://github.com/nylorun/harness/issues",
|
|
14
14
|
"keywords": [
|
|
15
15
|
"agent",
|
|
@@ -19,13 +19,18 @@
|
|
|
19
19
|
"harness",
|
|
20
20
|
"studio"
|
|
21
21
|
],
|
|
22
|
-
"
|
|
23
|
-
|
|
22
|
+
"types": "./dist/index.d.ts",
|
|
23
|
+
"exports": {
|
|
24
|
+
".": {
|
|
25
|
+
"types": "./dist/index.d.ts",
|
|
26
|
+
"default": "./dist/index.js"
|
|
27
|
+
}
|
|
24
28
|
},
|
|
25
29
|
"files": [
|
|
26
30
|
"dist",
|
|
27
31
|
"README.md",
|
|
28
|
-
"LICENSE"
|
|
32
|
+
"LICENSE",
|
|
33
|
+
"CHANGELOG.md"
|
|
29
34
|
],
|
|
30
35
|
"publishConfig": {
|
|
31
36
|
"access": "public",
|
|
@@ -35,13 +40,12 @@
|
|
|
35
40
|
"node": ">=22.19.0"
|
|
36
41
|
},
|
|
37
42
|
"scripts": {
|
|
38
|
-
"
|
|
39
|
-
"typecheck": "node scripts/check-typescript-version.mjs && tsc -p tsconfig.json --noEmit && tsc -p web/tsconfig.json --noEmit",
|
|
43
|
+
"build": "npm run clean && npm run typecheck && npm run build:server && npm run build:web",
|
|
40
44
|
"build:server": "tsc -p tsconfig.json",
|
|
41
45
|
"build:web": "vite build",
|
|
42
|
-
"build": "npm run clean && npm run typecheck && npm run build:server && npm run build:web",
|
|
43
|
-
"dev": "vite",
|
|
44
46
|
"check": "npm run build && node scripts/check-package.mjs",
|
|
47
|
+
"typecheck": "node ../scripts/check-typescript-version.mjs && tsc -p tsconfig.json --noEmit && tsc -p web/tsconfig.json --noEmit",
|
|
48
|
+
"clean": "node -e \"import('node:fs').then(({rmSync})=>rmSync('dist',{recursive:true,force:true}))\"",
|
|
45
49
|
"prepack": "npm run build"
|
|
46
50
|
},
|
|
47
51
|
"dependencies": {
|
|
@@ -52,7 +56,7 @@
|
|
|
52
56
|
"class-variance-authority": "^0.7.1",
|
|
53
57
|
"clsx": "^2.1.1",
|
|
54
58
|
"dayjs": "^1.11.23",
|
|
55
|
-
"lucide-react": "^1.
|
|
59
|
+
"lucide-react": "^1.41.0",
|
|
56
60
|
"radix-ui": "^1.6.7",
|
|
57
61
|
"react": "^19.2.8",
|
|
58
62
|
"react-dom": "^19.2.8",
|
package/dist/cli.d.ts
DELETED
package/dist/cli.js
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { startStudio } from "./host.js";
|
|
3
|
-
function usage() {
|
|
4
|
-
return "nylo studio — open the Nylorun Studio dashboard\n\n nylo studio --agent-server-url <http(s)-url> [--port <n>] [--no-open]";
|
|
5
|
-
}
|
|
6
|
-
function port(value, flag) {
|
|
7
|
-
const parsed = Number(value);
|
|
8
|
-
return Number.isInteger(parsed) && parsed >= 1 && parsed <= 65535 ? parsed : `${flag} ${value} is not a port number.`;
|
|
9
|
-
}
|
|
10
|
-
function studioArgs(argv) {
|
|
11
|
-
let agentServerUrl;
|
|
12
|
-
let studioPort;
|
|
13
|
-
let open = true;
|
|
14
|
-
for (let index = 0; index < argv.length; index += 1) {
|
|
15
|
-
const arg = argv[index];
|
|
16
|
-
if (arg === "--help" || arg === "-h")
|
|
17
|
-
return usage();
|
|
18
|
-
if (arg === "--no-open") {
|
|
19
|
-
open = false;
|
|
20
|
-
continue;
|
|
21
|
-
}
|
|
22
|
-
if (arg === "--agent-server-url" || arg === "--port") {
|
|
23
|
-
const value = argv[++index];
|
|
24
|
-
if (value === undefined || value.startsWith("-"))
|
|
25
|
-
return `${arg} needs a value.\n${usage()}`;
|
|
26
|
-
if (arg === "--agent-server-url")
|
|
27
|
-
agentServerUrl = value;
|
|
28
|
-
else {
|
|
29
|
-
const parsed = port(value, "--port");
|
|
30
|
-
if (typeof parsed === "string")
|
|
31
|
-
return parsed;
|
|
32
|
-
studioPort = parsed;
|
|
33
|
-
}
|
|
34
|
-
continue;
|
|
35
|
-
}
|
|
36
|
-
return `Unknown Studio option ${arg}.\n${usage()}`;
|
|
37
|
-
}
|
|
38
|
-
if (agentServerUrl === undefined)
|
|
39
|
-
return `--agent-server-url is required.\n${usage()}`;
|
|
40
|
-
return Object.freeze({ agentServerUrl, ...(studioPort === undefined ? {} : { port: studioPort }), open });
|
|
41
|
-
}
|
|
42
|
-
async function main() {
|
|
43
|
-
const command = process.argv[2];
|
|
44
|
-
if (command !== "studio") {
|
|
45
|
-
process.stdout.write(`${usage()}\n`);
|
|
46
|
-
process.exitCode = 2;
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
const options = studioArgs(process.argv.slice(3));
|
|
50
|
-
if (typeof options === "string") {
|
|
51
|
-
process.stdout.write(`${options}\n`);
|
|
52
|
-
process.exitCode = options === usage() ? 0 : 2;
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
const studio = await startStudio(options);
|
|
56
|
-
process.stdout.write(`Studio on ${studio.address}\n`);
|
|
57
|
-
process.stdout.write(`Agent Server ${studio.agentServerUrl}\n`);
|
|
58
|
-
process.stdout.write("Bound to loopback. Press Ctrl-C to stop.\n");
|
|
59
|
-
await new Promise((stop) => process.once("SIGINT", stop));
|
|
60
|
-
await studio.close();
|
|
61
|
-
}
|
|
62
|
-
void main().catch((error) => { process.stderr.write(`error ${error instanceof Error ? error.message : String(error)}\n`); process.exitCode = 2; });
|