neural-loom 0.2.60 → 0.2.61
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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +3 -0
- package/.next/build-manifest.json +3 -3
- package/.next/cache/.previewinfo +1 -1
- package/.next/cache/.rscinfo +1 -1
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/diagnostics/route-bundle-stats.json +2 -2
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/routes-manifest.json +18 -0
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/configs/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/configs/route/build-manifest.json +9 -0
- package/.next/server/app/api/configs/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/configs/route.js +6 -0
- package/.next/server/app/api/configs/route.js.map +5 -0
- package/.next/server/app/api/configs/route.js.nft.json +1 -0
- package/.next/server/app/api/configs/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/context/aider/route.js.nft.json +1 -1
- package/.next/server/app/api/context/claude/route.js.nft.json +1 -1
- package/.next/server/app/api/context/route.js.nft.json +1 -1
- package/.next/server/app/api/context/ssh/route.js.nft.json +1 -1
- package/.next/server/app/api/recents/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/inject/route.js +2 -2
- package/.next/server/app/api/sessions/inject/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/input/route.js +2 -2
- package/.next/server/app/api/sessions/input/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/launch/route.js +2 -2
- package/.next/server/app/api/sessions/launch/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/route.js +2 -2
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/scope/route.js +2 -2
- package/.next/server/app/api/sessions/scope/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/start/route.js +2 -2
- package/.next/server/app/api/sessions/start/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/stats/route.js +2 -2
- package/.next/server/app/api/sessions/stats/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/stop/route.js +2 -2
- package/.next/server/app/api/sessions/stop/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/upload-image/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/sessions/upload-image/route/build-manifest.json +9 -0
- package/.next/server/app/api/sessions/upload-image/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/sessions/upload-image/route.js +7 -0
- package/.next/server/app/api/sessions/upload-image/route.js.map +5 -0
- package/.next/server/app/api/sessions/upload-image/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/upload-image/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/sql/connections/route.js.nft.json +1 -1
- package/.next/server/app/api/sql/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/sql/query/route.js.nft.json +1 -1
- package/.next/server/app/api/sql/schema/route.js.nft.json +1 -1
- package/.next/server/app/api/telemetry/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/telemetry/route/build-manifest.json +9 -0
- package/.next/server/app/api/telemetry/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/telemetry/route.js +6 -0
- package/.next/server/app/api/telemetry/route.js.map +5 -0
- package/.next/server/app/api/telemetry/route.js.nft.json +1 -0
- package/.next/server/app/api/telemetry/route_client-reference-manifest.js +3 -0
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page/react-loadable-manifest.json +5 -5
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +3 -0
- package/.next/server/chunks/[root-of-the-server]__0.ptwor._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0.ptwor._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__00-sqou._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__0thsozo._.js.map → [root-of-the-server]__00-sqou._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__00l5btc._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__00l5btc._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__01621nz._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__01621nz._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__06men8g._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__06men8g._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__08r0s-s._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__08r0s-s._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__097vtn1._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__0em6a~~._.js.map → [root-of-the-server]__097vtn1._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0_v2.a8._.js +15 -0
- package/.next/server/chunks/[root-of-the-server]__0_v2.a8._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0co.g5k._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0co.g5k._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__0e03ite._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__10wwca8._.js.map → [root-of-the-server]__0e03ite._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0fxtx7z._.js +15 -0
- package/.next/server/chunks/[root-of-the-server]__0fxtx7z._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0h.~hv6._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__0s0is_9._.js.map → [root-of-the-server]__0h.~hv6._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0li1h1u._.js +33 -0
- package/.next/server/chunks/[root-of-the-server]__0li1h1u._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__0s1axek._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__0i~01cv._.js.map → [root-of-the-server]__0s1axek._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0tq0maq._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__0_o7_jj._.js.map → [root-of-the-server]__0tq0maq._.js.map} +1 -1
- package/.next/server/chunks/[root-of-the-server]__0viil6b._.js +15 -0
- package/.next/server/chunks/{[root-of-the-server]__07zx04e._.js.map → [root-of-the-server]__0viil6b._.js.map} +1 -1
- package/.next/server/chunks/_next-internal_server_app_api_configs_route_actions_087k_4j.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_configs_route_actions_087k_4j.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_sessions_upload-image_route_actions_09tfn3a.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_sessions_upload-image_route_actions_09tfn3a.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_telemetry_route_actions_0.yo5qr.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_telemetry_route_actions_0.yo5qr.js.map +1 -0
- package/.next/server/chunks/ssr/_0t7oqy6._.js +1 -1
- package/.next/server/chunks/ssr/_0t7oqy6._.js.map +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/07lj0adi0kt5p.css +1 -0
- package/.next/static/chunks/0xhaghhxllgzs.js +1 -0
- package/.next/static/chunks/128c-kly7grxg.js +4 -0
- package/.next/static/chunks/{0y~7jjqbr14.5.js → 15_baizhaiq8c.js} +10 -7
- package/.next/static/chunks/15sigqif_v.mu.js +1 -0
- package/.next/static/chunks/17ud2wmsyqknc.js +11 -0
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/.next/types/routes.d.ts +4 -1
- package/.next/types/validator.ts +27 -0
- package/bin/cli.js +4 -4
- package/bin/fix-pwa-ubuntu.sh +50 -0
- package/package.json +1 -1
- package/src/app/api/configs/route.ts +40 -0
- package/src/app/api/sessions/launch/route.ts +3 -3
- package/src/app/api/sessions/route.ts +2 -2
- package/src/app/api/sessions/start/route.ts +2 -2
- package/src/app/api/sessions/upload-image/route.ts +57 -0
- package/src/app/api/sql/connections/route.ts +9 -6
- package/src/app/api/sql/mcp/route.ts +3 -2
- package/src/app/api/sql/query/route.ts +3 -2
- package/src/app/api/sql/schema/route.ts +3 -2
- package/src/app/api/telemetry/route.ts +18 -0
- package/src/app/components/AiderWizard.tsx +46 -2
- package/src/app/components/ClaudeWizard.tsx +30 -0
- package/src/app/components/IdeLayout.tsx +566 -70
- package/src/app/components/TerminalConsole.tsx +54 -0
- package/src/app/page.module.css +8 -2
- package/src/app/page.tsx +534 -401
- package/src/lib/agents/AgentRunner.ts +88 -5
- package/src/lib/agents/AiderRunner.ts +4 -18
- package/src/lib/agents/ClaudeRunner.ts +16 -26
- package/src/lib/agents/DockerRunner.ts +16 -26
- package/src/lib/agents/MockRunner.ts +4 -16
- package/src/lib/agents/SSHRunner.ts +16 -26
- package/src/lib/agents/SessionConfig.ts +79 -0
- package/src/lib/agents/SessionManager.ts +16 -16
- package/src/lib/agents/SessionPersister.ts +13 -9
- package/src/lib/agents/ShellRunner.ts +14 -21
- package/src/lib/agents/WebSocketServer.ts +2 -2
- package/.next/server/chunks/[root-of-the-server]__01.zh3b._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__01.zh3b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__07zx04e._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__0_o7_jj._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__0d0pykb._.js +0 -33
- package/.next/server/chunks/[root-of-the-server]__0d0pykb._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__0em6a~~._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__0i~01cv._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__0s0is_9._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__0thsozo._.js +0 -15
- package/.next/server/chunks/[root-of-the-server]__10wwca8._.js +0 -15
- package/.next/static/chunks/076_b43_kienv.js +0 -1
- package/.next/static/chunks/07r_au7dcyu8l.js +0 -11
- package/.next/static/chunks/0hoyc~vbuqe0t.css +0 -1
- package/.next/static/chunks/0k2co3uj4w81_.js +0 -1
- package/.next/static/chunks/0sqeixl35qoac.js +0 -1
- /package/.next/static/{PdRX_M_W5hqhNmHxYt-oH → b48zoI5QUg8m7v1asTiCM}/_buildManifest.js +0 -0
- /package/.next/static/{PdRX_M_W5hqhNmHxYt-oH → b48zoI5QUg8m7v1asTiCM}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{PdRX_M_W5hqhNmHxYt-oH → b48zoI5QUg8m7v1asTiCM}/_ssgManifest.js +0 -0
|
@@ -350,9 +350,63 @@ export default function TerminalConsole({ sessionId, height = "400px", wsPort =
|
|
|
350
350
|
}
|
|
351
351
|
};
|
|
352
352
|
}, [sessionId, wsPort]);
|
|
353
|
+
const handlePaste = async (e: React.ClipboardEvent<HTMLDivElement>) => {
|
|
354
|
+
const items = e.clipboardData?.items;
|
|
355
|
+
if (!items) return;
|
|
356
|
+
|
|
357
|
+
for (let i = 0; i < items.length; i++) {
|
|
358
|
+
const item = items[i];
|
|
359
|
+
if (item.type.indexOf("image") !== -1) {
|
|
360
|
+
const file = item.getAsFile();
|
|
361
|
+
if (!file) continue;
|
|
362
|
+
|
|
363
|
+
e.preventDefault();
|
|
364
|
+
|
|
365
|
+
const reader = new FileReader();
|
|
366
|
+
reader.onload = async (event) => {
|
|
367
|
+
const base64Data = event.target?.result as string;
|
|
368
|
+
if (!base64Data) return;
|
|
369
|
+
|
|
370
|
+
try {
|
|
371
|
+
xtermRef.current?.write("\r\n\x1b[1;33m[System] Uploading pasted clipboard image to workspace...\x1b[0m\r\n");
|
|
372
|
+
|
|
373
|
+
const res = await fetch("/api/sessions/upload-image", {
|
|
374
|
+
method: "POST",
|
|
375
|
+
headers: { "Content-Type": "application/json" },
|
|
376
|
+
body: JSON.stringify({
|
|
377
|
+
sessionId,
|
|
378
|
+
base64Data,
|
|
379
|
+
fileName: `pasted_image_${Date.now()}.png`
|
|
380
|
+
})
|
|
381
|
+
});
|
|
382
|
+
|
|
383
|
+
if (res.ok) {
|
|
384
|
+
const data = await res.json();
|
|
385
|
+
if (data.success && data.path) {
|
|
386
|
+
xtermRef.current?.write(`\x1b[1;32m[System] Saved clipboard image to ${data.path}\x1b[0m\r\n`);
|
|
387
|
+
if (wsRef.current && wsRef.current.readyState === WebSocket.OPEN) {
|
|
388
|
+
wsRef.current.send(JSON.stringify({ type: "input", data: data.path }));
|
|
389
|
+
}
|
|
390
|
+
} else {
|
|
391
|
+
xtermRef.current?.write(`\x1b[1;31m[System Error] Failed to save image: ${data.error || "unknown"}\x1b[0m\r\n`);
|
|
392
|
+
}
|
|
393
|
+
} else {
|
|
394
|
+
xtermRef.current?.write("\x1b[1;31m[System Error] HTTP upload failed.\x1b[0m\r\n");
|
|
395
|
+
}
|
|
396
|
+
} catch (uploadErr) {
|
|
397
|
+
const msg = uploadErr instanceof Error ? uploadErr.message : String(uploadErr);
|
|
398
|
+
xtermRef.current?.write(`\x1b[1;31m[System Error] Upload failed: ${msg}\x1b[0m\r\n`);
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
reader.readAsDataURL(file);
|
|
402
|
+
break;
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
};
|
|
353
406
|
|
|
354
407
|
return (
|
|
355
408
|
<div
|
|
409
|
+
onPaste={handlePaste}
|
|
356
410
|
style={{
|
|
357
411
|
width: "100%",
|
|
358
412
|
height: height,
|
package/src/app/page.module.css
CHANGED
|
@@ -58,11 +58,17 @@
|
|
|
58
58
|
|
|
59
59
|
.dashboardGrid {
|
|
60
60
|
display: grid;
|
|
61
|
-
grid-template-columns: 2fr
|
|
61
|
+
grid-template-columns: 1.15fr 1.2fr 1.15fr;
|
|
62
62
|
gap: 2rem;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
@media (max-width:
|
|
65
|
+
@media (max-width: 1300px) {
|
|
66
|
+
.dashboardGrid {
|
|
67
|
+
grid-template-columns: 1.1fr 1.2fr;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@media (max-width: 900px) {
|
|
66
72
|
.dashboardGrid {
|
|
67
73
|
grid-template-columns: 1fr;
|
|
68
74
|
}
|