agentglow 0.2.0 → 0.2.2
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 +17 -0
- package/cli/agentglow.mjs +177 -0
- package/cli/lib/net.mjs +73 -0
- package/cli/lib/server.mjs +128 -0
- package/cli/lib/settings.mjs +192 -0
- package/cli/lib/uv.mjs +139 -0
- package/dist/chunks/{KitScene-BuFtYuhc.js → KitScene-C3SZiKL5.js} +1101 -1045
- package/dist/chunks/{index-DO9SAG-u.js → index--dwzdFRh.js} +1 -1
- package/dist/chunks/{index-DCmhxN8v.js → index-B2PGx_wt.js} +37 -37
- package/dist/chunks/{index-HyfZ0ePz.js → index-BZOG_CQS.js} +110 -110
- package/dist/chunks/{index-Bo5HRf-O.js → index-BfGluv59.js} +69 -69
- package/dist/chunks/{index-tonipLb2.js → index-Bm4te7Ug.js} +1 -1
- package/dist/chunks/{index-e6egU2Q6.js → index-Bqv_wy49.js} +1 -1
- package/dist/chunks/{index-ZT88hgW-.js → index-Bsmr7FwH.js} +1 -1
- package/dist/chunks/{index-BPyTLdiF.js → index-Bw31uayO.js} +33 -33
- package/dist/chunks/{index-Dn6oRasS.js → index-C4F16M9q.js} +117 -117
- package/dist/chunks/{index-jLXx_Wgk.js → index-CRRHsMqy.js} +15 -15
- package/dist/chunks/{index-Cyv7bII1.js → index-CS8eZTr_.js} +1 -1
- package/dist/chunks/{index-D733n3Hf.js → index-CdzGoWrn.js} +1 -1
- package/dist/chunks/{index-XMOz-HBf.js → index-CvDEulcq.js} +1 -1
- package/dist/chunks/{index-D0UvupqM.js → index-DXBfdHew.js} +1 -1
- package/dist/chunks/{index-C42Ihyo1.js → index-DdCs_ye9.js} +222 -222
- package/dist/chunks/{index-C5YqtHnC.js → index-_KrED-np.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/types/world.d.ts +10 -0
- package/package.json +12 -2
|
@@ -6,19 +6,19 @@ import { EffectComposer as Vt, Bloom as zt, Vignette as Gt } from "@react-three/
|
|
|
6
6
|
import { useRef as B, useMemo as E, useEffect as Et, useState as Ft } from "react";
|
|
7
7
|
import * as t from "three";
|
|
8
8
|
import { useFrame as he } from "@react-three/fiber";
|
|
9
|
-
import { T as Mt, w as K, L as Ie, d as Bt, a as xe, c as ft, h as Ae, l as Rt,
|
|
9
|
+
import { T as Mt, w as K, L as Ie, d as Bt, a as xe, c as ft, h as Ae, l as Rt, H as It, p as Ot, e as Tt, f as be, s as Lt, S as Le, q as _t, R as Nt, k as Me, u as Ut, A as Xt, o as Ht, K as Kt, m as jt, G as Yt, n as qt, j as Wt } from "./KitScene-C3SZiKL5.js";
|
|
10
10
|
var bt;
|
|
11
|
-
const j = typeof window < "u" && !!((bt = window.matchMedia) != null && bt.call(window, "(prefers-reduced-motion: reduce)").matches), pt = new t.Color("#3db8ff"), Se = new t.Color("#9fdcff"), He = new t.Color("#ff4fa8"), mt = new t.Color("#ff9ccf"), oe = new t.Color(1, 1, 1), Fe = new t.Color("#ffc24a"),
|
|
12
|
-
let
|
|
13
|
-
function
|
|
14
|
-
if (
|
|
11
|
+
const j = typeof window < "u" && !!((bt = window.matchMedia) != null && bt.call(window, "(prefers-reduced-motion: reduce)").matches), pt = new t.Color("#3db8ff"), Se = new t.Color("#9fdcff"), He = new t.Color("#ff4fa8"), mt = new t.Color("#ff9ccf"), oe = new t.Color(1, 1, 1), Fe = new t.Color("#ffc24a"), $t = new t.Color("#ff2d55"), Dt = new t.Color("#3a4560"), lt = Object.fromEntries(Object.entries(Mt).map(([e, r]) => [e, new t.Color(r)])), q = (e) => e < 0 ? 0 : e > 1 ? 1 : e, je = (e) => 1 - Math.pow(1 - q(e), 3), Re = (e) => (e = q(e), e < 0.5 ? 4 * e * e * e : 1 - Math.pow(-2 * e + 2, 3) / 2);
|
|
12
|
+
let _e = null;
|
|
13
|
+
function Zt() {
|
|
14
|
+
if (_e) return _e;
|
|
15
15
|
const e = document.createElement("canvas");
|
|
16
16
|
e.width = e.height = 128;
|
|
17
17
|
const r = e.getContext("2d"), a = r.createRadialGradient(64, 64, 0, 64, 64, 64);
|
|
18
|
-
return a.addColorStop(0, "rgba(255,255,255,1)"), a.addColorStop(0.12, "rgba(255,255,255,0.7)"), a.addColorStop(0.4, "rgba(255,255,255,0.15)"), a.addColorStop(1, "rgba(255,255,255,0)"), r.fillStyle = a, r.fillRect(0, 0, 128, 128),
|
|
18
|
+
return a.addColorStop(0, "rgba(255,255,255,1)"), a.addColorStop(0.12, "rgba(255,255,255,0.7)"), a.addColorStop(0.4, "rgba(255,255,255,0.15)"), a.addColorStop(1, "rgba(255,255,255,0)"), r.fillStyle = a, r.fillRect(0, 0, 128, 128), _e = new t.CanvasTexture(e), _e;
|
|
19
19
|
}
|
|
20
20
|
function $(e = "#fff") {
|
|
21
|
-
return new t.SpriteMaterial({ map:
|
|
21
|
+
return new t.SpriteMaterial({ map: Zt(), color: e, blending: t.AdditiveBlending, depthWrite: !1, transparent: !0, toneMapped: !1 });
|
|
22
22
|
}
|
|
23
23
|
function le(e = "#fff") {
|
|
24
24
|
return new t.MeshBasicMaterial({ color: e, blending: t.AdditiveBlending, depthWrite: !1, transparent: !0, toneMapped: !1 });
|
|
@@ -27,7 +27,7 @@ function ue(e = "#fff", r = !1) {
|
|
|
27
27
|
return new t.LineBasicMaterial({ color: e, vertexColors: r, transparent: !0, blending: t.AdditiveBlending, depthWrite: !1, toneMapped: !1 });
|
|
28
28
|
}
|
|
29
29
|
const De = new t.SphereGeometry(1, 24, 18), ut = new t.ConeGeometry(1, 1, 12).translate(0, 0.5, 0), dt = new t.TorusGeometry(1, 0.03, 6, 72);
|
|
30
|
-
function
|
|
30
|
+
function kt(e = 48, r = 6) {
|
|
31
31
|
const a = [], o = [];
|
|
32
32
|
for (let n = 0; n <= e; n++)
|
|
33
33
|
for (let i = 0; i < r; i++) {
|
|
@@ -42,7 +42,7 @@ function Zt(e = 48, r = 6) {
|
|
|
42
42
|
const u = new t.BufferGeometry();
|
|
43
43
|
return u.setAttribute("position", new t.Float32BufferAttribute(a, 3)), u.setIndex(o), u.boundingSphere = new t.Sphere(new t.Vector3(), 1e4), u;
|
|
44
44
|
}
|
|
45
|
-
const St =
|
|
45
|
+
const St = kt();
|
|
46
46
|
function xt(e, r = 0.04) {
|
|
47
47
|
return new t.ShaderMaterial({
|
|
48
48
|
uniforms: {
|
|
@@ -147,11 +147,11 @@ class Ct {
|
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
const ce = 2.4, Pe = /* @__PURE__ */ new Map(), Ke = /* @__PURE__ */ new Map();
|
|
150
|
-
function
|
|
150
|
+
function Jt(e, r, a) {
|
|
151
151
|
return e.r += r.r * a, e.g += r.g * a, e.b += r.b * a, e;
|
|
152
152
|
}
|
|
153
|
-
const
|
|
154
|
-
function
|
|
153
|
+
const Qt = new t.Vector3(), eo = new t.Vector3(0, 1, 0);
|
|
154
|
+
function to() {
|
|
155
155
|
const e = [], r = (n, i) => e.push(...n, ...i), o = (n, i, c = 48) => {
|
|
156
156
|
for (let p = 0; p < c; p++) {
|
|
157
157
|
const b = p / c * Math.PI * 2, h = (p + 1) / c * Math.PI * 2;
|
|
@@ -170,7 +170,7 @@ function eo() {
|
|
|
170
170
|
const u = new t.BufferGeometry();
|
|
171
171
|
return u.setAttribute("position", new t.Float32BufferAttribute(e, 3)), u;
|
|
172
172
|
}
|
|
173
|
-
const
|
|
173
|
+
const oo = to(), no = new t.CylinderGeometry(1, 1, 1.4, 32, 1, !0).rotateX(Math.PI / 2), ye = (e, r, a) => ({ geo: e, edges: new t.EdgesGeometry(e, 25), pos: r, rot: a }), Ne = {
|
|
174
174
|
db: () => [ye(new t.CylinderGeometry(0.4, 0.4, 0.66, 24)), ye(new t.TorusGeometry(0.4, 0.01, 4, 40), [0, 0.11, 0], [Math.PI / 2, 0, 0])],
|
|
175
175
|
warehouse: () => [-0.28, 0, 0.28].map((e) => ye(new t.BoxGeometry(0.9, 0.18, 0.55), [0, e, 0])),
|
|
176
176
|
spark: () => [ye(new t.IcosahedronGeometry(0.42, 0))],
|
|
@@ -178,7 +178,7 @@ const to = eo(), oo = new t.CylinderGeometry(1, 1, 1.4, 32, 1, !0).rotateX(Math.
|
|
|
178
178
|
storage: () => [ye(new t.BoxGeometry(0.66, 0.66, 0.66), void 0, [0.4, 0.6, 0])],
|
|
179
179
|
queue: () => [ye(new t.CapsuleGeometry(0.18, 0.7, 4, 12), void 0, [0, 0, Math.PI / 2])]
|
|
180
180
|
};
|
|
181
|
-
function
|
|
181
|
+
function ro({ mcp: e, backend: r }) {
|
|
182
182
|
const a = e.srv, o = r.res, u = B(null), n = E(() => {
|
|
183
183
|
var v;
|
|
184
184
|
return ((v = Ne[o.kind]) == null ? void 0 : v.call(Ne)) ?? Ne.api();
|
|
@@ -193,13 +193,13 @@ function no({ mcp: e, backend: r }) {
|
|
|
193
193
|
c.fill.color.copy(i).multiplyScalar(s * 0.22), c.line.color.copy(i).multiplyScalar(s * 1.3), c.halo.color.copy(i).multiplyScalar(f ? 0.4 + P * 0.2 : 0.02 + g * 0.22), (V = b.current) == null || V.scale.setScalar(f ? 3.6 + P * 0.6 : 2.2 + g), p.current && (p.current.scale.setScalar(f ? 1.18 + P * 0.06 : 1 + g * 0.08), p.current.rotation.y = j ? 0.4 : G * (f ? 0.7 : 0.12));
|
|
194
194
|
let C = null;
|
|
195
195
|
for (const R of K.mcpCalls) R.server === a.name && R.resource === o.name && (!C || R.start > C.start) && (C = R);
|
|
196
|
-
let
|
|
196
|
+
let L = o.name;
|
|
197
197
|
if (f) {
|
|
198
198
|
let R = "";
|
|
199
|
-
for (const
|
|
200
|
-
|
|
201
|
-
} else C && C.phase === "result" && x - C.start < 1800 && (
|
|
202
|
-
z.current && (
|
|
199
|
+
for (const _ of K.mcpPending.values()) _.server === a.name && _.resource === o.name && (R = _.tool);
|
|
200
|
+
L = `${o.name} ▸ ${R || "query"}()`;
|
|
201
|
+
} else C && C.phase === "result" && x - C.start < 1800 && (L = `${o.name} ✓ returned`);
|
|
202
|
+
z.current && (L !== A.current && (z.current.setText(L), A.current = L), z.current.setOpacity(f ? 1 : 0.5 + g * 0.5));
|
|
203
203
|
const y = c.edge.uniforms;
|
|
204
204
|
y.uTime.value = j ? 0 : G;
|
|
205
205
|
const I = C && C.phase === "result" ? (x - C.start) / C.dur : 9, T = h.current;
|
|
@@ -219,15 +219,15 @@ function no({ mcp: e, backend: r }) {
|
|
|
219
219
|
}
|
|
220
220
|
const Ze = new t.Vector3(), Ue = new t.Vector3();
|
|
221
221
|
function ht(e, r, a, o, u, n, i) {
|
|
222
|
-
ie(r, a, o, u, Ze), ie(r, a, o, q(u + 0.02 * n), Ue), e.position.copy(Ze), Ue.sub(Ze), Ue.lengthSq() > 1e-8 && e.quaternion.setFromUnitVectors(
|
|
222
|
+
ie(r, a, o, u, Ze), ie(r, a, o, q(u + 0.02 * n), Ue), e.position.copy(Ze), Ue.sub(Ze), Ue.lengthSq() > 1e-8 && e.quaternion.setFromUnitVectors(eo, Ue.normalize()), e.scale.set(i * 0.38, i, i * 0.38);
|
|
223
223
|
}
|
|
224
|
-
function
|
|
224
|
+
function so({ mcp: e }) {
|
|
225
225
|
const r = e.srv, a = B(null), o = E(() => new t.Color(r.color), [r.color]), u = E(() => ({ line: ue(o), fill: le(o), core: $("#fff"), halo: $(o), hit: $("#fff") }), [o]), n = B(null), i = B(null), c = B(null), p = B(null), b = B(r.calls), h = B(-1e9);
|
|
226
226
|
return he(({ clock: z }) => {
|
|
227
227
|
var f, g, P;
|
|
228
228
|
(f = a.current) == null || f.position.copy(e.pos);
|
|
229
229
|
const A = performance.now();
|
|
230
|
-
r.calls !== b.current && (b.current = r.calls, h.current = A), (g = n.current) == null || g.lookAt(
|
|
230
|
+
r.calls !== b.current && (b.current = r.calls, h.current = A), (g = n.current) == null || g.lookAt(Qt);
|
|
231
231
|
const v = r.inflight > 0, x = Math.exp(-((A - r.activeAt) / 1e3) * 1.4), G = (v ? 0.8 : 0.32) + x * 0.5;
|
|
232
232
|
u.line.color.copy(o).multiplyScalar(G * 1.4), u.fill.color.copy(o).multiplyScalar(G * 0.05), u.core.color.setScalar(v ? 0.7 : 0.18), u.halo.color.copy(o).multiplyScalar(v ? 0.24 : 0.06 + x * 0.12), (P = c.current) == null || P.scale.setScalar(5 + (v ? 0.8 : 0)), i.current && (i.current.rotation.z = j ? 0 : z.elapsedTime * (v ? 0.55 : 0.08));
|
|
233
233
|
const l = (A - h.current) / 700;
|
|
@@ -235,8 +235,8 @@ function ro({ mcp: e }) {
|
|
|
235
235
|
}), /* @__PURE__ */ d(de, { children: /* @__PURE__ */ Y("group", { ref: a, children: [
|
|
236
236
|
/* @__PURE__ */ d("sprite", { ref: c, material: u.halo }),
|
|
237
237
|
/* @__PURE__ */ d("group", { ref: n, children: /* @__PURE__ */ Y("group", { ref: i, children: [
|
|
238
|
-
/* @__PURE__ */ d("lineSegments", { geometry:
|
|
239
|
-
/* @__PURE__ */ d("mesh", { geometry:
|
|
238
|
+
/* @__PURE__ */ d("lineSegments", { geometry: oo, material: u.line }),
|
|
239
|
+
/* @__PURE__ */ d("mesh", { geometry: no, material: u.fill })
|
|
240
240
|
] }) }),
|
|
241
241
|
/* @__PURE__ */ d("sprite", { material: u.core, scale: 0.9 }),
|
|
242
242
|
/* @__PURE__ */ d("sprite", { ref: p, material: u.hit, visible: !1 }),
|
|
@@ -244,28 +244,28 @@ function ro({ mcp: e }) {
|
|
|
244
244
|
] }) });
|
|
245
245
|
}
|
|
246
246
|
const vt = 28, ke = 40, Je = 24;
|
|
247
|
-
function
|
|
247
|
+
function ao() {
|
|
248
248
|
const e = E(() => new Ct(vt * 2, ke), []), r = E(() => ue("#fff", !0), []), a = E(() => new qe(vt), []), o = E(() => Array.from({ length: Je }, () => $("#fff")), []), u = B([]), n = E(() => ({ a: new t.Vector3(), b: new t.Vector3(), c: new t.Vector3(), p: new t.Vector3(), col: new t.Color(), k: new t.Color() }), []);
|
|
249
249
|
return he(({ clock: i }) => {
|
|
250
250
|
const c = performance.now(), p = j ? 0 : i.elapsedTime;
|
|
251
251
|
e.begin(), a.begin();
|
|
252
252
|
const { a: b, b: h, c: z, p: A, col: v, k: x } = n, G = (f, g, P, s) => {
|
|
253
|
-
const C = xe(f),
|
|
254
|
-
if (!C || !
|
|
255
|
-
b.copy(C), h.copy(y), Ye(b, h, 1.2, z), v.set(
|
|
253
|
+
const C = xe(f), L = K.mcpServers.get(g), y = ft(g);
|
|
254
|
+
if (!C || !L || !y) return;
|
|
255
|
+
b.copy(C), h.copy(y), Ye(b, h, 1.2, z), v.set(L.color);
|
|
256
256
|
let I;
|
|
257
|
-
P === 0 ? (v.lerp(Fe, q(s / 1.2)), s > 1.2 && v.lerp(
|
|
257
|
+
P === 0 ? (v.lerp(Fe, q(s / 1.2)), s > 1.2 && v.lerp($t, q((s - 1.2) / 1)), I = (0.25 + Math.min(0.6, s * 0.25)) * je(s / 0.3)) : (v.lerp(oe, 0.35), I = 1.2 * (s < 0.75 ? 1 : 1 - (s - 0.75) / 0.25));
|
|
258
258
|
const T = 1 - Re(s / 0.75);
|
|
259
259
|
for (let w = 0; w < 2; w++) {
|
|
260
260
|
const V = e.next();
|
|
261
261
|
if (V < 0) return;
|
|
262
262
|
const R = w ? 0.045 : 0;
|
|
263
|
-
for (let
|
|
263
|
+
for (let _ = 0; _ < ke; _++)
|
|
264
264
|
for (let U = 0; U < 2; U++) {
|
|
265
|
-
const m = (
|
|
266
|
-
ie(b, z, h, m, A), e.P.setXYZ(V +
|
|
265
|
+
const m = (_ + U) / ke;
|
|
266
|
+
ie(b, z, h, m, A), e.P.setXYZ(V + _ * 2 + U, A.x + R, A.y + R, A.z);
|
|
267
267
|
let M;
|
|
268
|
-
P === 0 ? M = I * (0.22 + Math.pow(Math.max(0, Math.sin(m * 26 - p * 3)), 10) * 1.8) * (w ? 0.3 : 1) : M = I * (0.18 + Math.exp(-(((m - T) / 0.05) ** 2)) * 3.4 * (s < 0.8 ? 1 : 0)) * (w ? 0.5 : 1), e.C.setXYZ(V +
|
|
268
|
+
P === 0 ? M = I * (0.22 + Math.pow(Math.max(0, Math.sin(m * 26 - p * 3)), 10) * 1.8) * (w ? 0.3 : 1) : M = I * (0.18 + Math.exp(-(((m - T) / 0.05) ** 2)) * 3.4 * (s < 0.8 ? 1 : 0)) * (w ? 0.5 : 1), e.C.setXYZ(V + _ * 2 + U, v.r * M, v.g * M, v.b * M);
|
|
269
269
|
}
|
|
270
270
|
}
|
|
271
271
|
x.copy(v), P === 0 ? a.add(b, z, h, 0.93, 1, 0.45, x, 0.5 + I * 1.3) : a.add(b, z, h, 0.07, -1, 0.6, x, I * 1.5);
|
|
@@ -276,8 +276,8 @@ function so() {
|
|
|
276
276
|
let l = 0;
|
|
277
277
|
for (const f of K.mcpCalls) {
|
|
278
278
|
if (f.phase !== "call" || l >= Je) continue;
|
|
279
|
-
const g = xe(f.instance), P = K.mcpServers.get(f.server), s = ft(f.server), C = u.current[l],
|
|
280
|
-
!g || !P || !s || !C ||
|
|
279
|
+
const g = xe(f.instance), P = K.mcpServers.get(f.server), s = ft(f.server), C = u.current[l], L = q((c - f.start) / f.dur);
|
|
280
|
+
!g || !P || !s || !C || L >= 1 || (b.copy(g), h.copy(s), Ye(b, h, 1.2, z), ie(b, z, h, Re(L), A), C.visible = !0, C.position.copy(A), C.scale.setScalar(0.85), o[l].color.set(P.color).lerp(oe, 0.4).multiplyScalar(1.5), l++);
|
|
281
281
|
}
|
|
282
282
|
for (let f = l; f < Je; f++) u.current[f] && (u.current[f].visible = !1);
|
|
283
283
|
}), /* @__PURE__ */ Y(de, { children: [
|
|
@@ -286,7 +286,7 @@ function so() {
|
|
|
286
286
|
o.map((i, c) => /* @__PURE__ */ d("sprite", { ref: (p) => void (u.current[c] = p), material: i, visible: !1 }, c))
|
|
287
287
|
] });
|
|
288
288
|
}
|
|
289
|
-
const Ge = 40, Qe = 160,
|
|
289
|
+
const Ge = 40, Qe = 160, io = new t.MeshBasicMaterial({ transparent: !0, opacity: 0, depthWrite: !1, colorWrite: !1 }), co = new t.Vector3(0, 1, 0), lo = new t.Vector3(0, 0, 1), et = new t.Vector3(), gt = new t.Vector3(), Ee = new t.Vector3(), uo = (() => {
|
|
290
290
|
const e = new Float32Array((Qe + 1) * 3);
|
|
291
291
|
for (let a = 0; a <= Qe; a++) {
|
|
292
292
|
const o = a / Qe * Math.PI * 2;
|
|
@@ -296,11 +296,11 @@ const Ge = 40, Qe = 160, ao = new t.MeshBasicMaterial({ transparent: !0, opacity
|
|
|
296
296
|
return r.setAttribute("position", new t.BufferAttribute(e, 3)), r.boundingSphere = new t.Sphere(new t.Vector3(), 1e4), r;
|
|
297
297
|
})(), Be = 40, ct = Array.from({ length: Be }, () => ({ on: !1, start: 0, size: 1, o: new t.Vector3(), dir: new t.Vector3(), perp: new t.Vector3(), c: new t.Color() }));
|
|
298
298
|
let tt = 0;
|
|
299
|
-
function
|
|
299
|
+
function fo(e, r, a, o, u) {
|
|
300
300
|
const n = ct[tt];
|
|
301
301
|
tt = (tt + 1) % Be, n.on = !0, n.start = performance.now(), n.size = a, n.o.copy(e), n.dir.copy(e).sub(r), n.dir.lengthSq() < 1e-4 && n.dir.set(0, 1, 0), n.dir.normalize(), n.dir.x += Math.sin(u * 12.9) * 0.6, n.dir.y += Math.cos(u * 7.3) * 0.6, n.dir.z += 0.35, n.dir.normalize(), n.perp.set(0, 0, 1).cross(n.dir).normalize(), n.perp.lengthSq() < 0.5 && n.perp.set(1, 0, 0), n.c.copy(o).lerp(oe, 0.35);
|
|
302
302
|
}
|
|
303
|
-
function
|
|
303
|
+
function po({ agent: e, selected: r, onSelect: a }) {
|
|
304
304
|
const o = e.inst, u = B(null), n = B(null), i = B(null), c = B(null), p = B(null), b = B(null), h = B(null), z = B(null), A = B(null), v = B(null), x = lt[o.type], G = !!o.subagent, l = E(
|
|
305
305
|
() => ({
|
|
306
306
|
core: le("#fff"),
|
|
@@ -318,7 +318,7 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
318
318
|
), f = E(() => {
|
|
319
319
|
const y = new t.BufferGeometry();
|
|
320
320
|
return y.setAttribute("position", new t.BufferAttribute(new Float32Array(Ge * 3), 3)), y.setAttribute("color", new t.BufferAttribute(new Float32Array(Ge * 3), 3)), y.boundingSphere = new t.Sphere(new t.Vector3(), 1e4), y;
|
|
321
|
-
}, []), g = E(() => Object.assign(new t.Line(f, l.trail), { frustumCulled: !1 }), [f, l.trail]), P = E(() => Object.assign(new t.Line(
|
|
321
|
+
}, []), g = E(() => Object.assign(new t.Line(f, l.trail), { frustumCulled: !1 }), [f, l.trail]), P = E(() => Object.assign(new t.Line(uo, l.orbit), { frustumCulled: !1, matrixAutoUpdate: !1, visible: !1 }), [l.orbit]), s = E(
|
|
322
322
|
() => ({
|
|
323
323
|
p: new t.Vector3(),
|
|
324
324
|
ctrl: new t.Vector3(),
|
|
@@ -343,7 +343,7 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
343
343
|
), C = (y, I) => I.copy(s.n).addScaledVector(s.a, Math.cos(y)).addScaledVector(s.b, Math.sin(y));
|
|
344
344
|
he(({ clock: y, camera: I }) => {
|
|
345
345
|
var pe, te, ae, Te, me;
|
|
346
|
-
const T = performance.now(), w = y.elapsedTime, V = o.exitAt ? (T - o.exitAt) / 1e3 / (Rt(o) / It) : -1, R = V >= 0 ? q(V / 0.8) : 0,
|
|
346
|
+
const T = performance.now(), w = y.elapsedTime, V = o.exitAt ? (T - o.exitAt) / 1e3 / (Rt(o) / It) : -1, R = V >= 0 ? q(V / 0.8) : 0, _ = V > 0 ? V : 0;
|
|
347
347
|
if (G) {
|
|
348
348
|
const F = 0.32 * be.spread;
|
|
349
349
|
s.n.copy(e.pos), s.a.set(F, 0, 0), s.b.set(0, F * 0.45, F * 0.6);
|
|
@@ -351,11 +351,11 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
351
351
|
const F = Pe.get(e.run.id) ?? e.run.origin;
|
|
352
352
|
s.n.copy(F), s.a.copy(e.pos).sub(F);
|
|
353
353
|
let W = s.a.length();
|
|
354
|
-
W < 0.5 && (s.a.set(0, 0.5, 0), W = 0.5), s.b.set(-s.a.y, s.a.x, 0).normalize().multiplyScalar(W * s.tilt * s.dir).addScaledVector(
|
|
354
|
+
W < 0.5 && (s.a.set(0, 0.5, 0), W = 0.5), s.b.set(-s.a.y, s.a.x, 0).normalize().multiplyScalar(W * s.tilt * s.dir).addScaledVector(lo, W * s.lean);
|
|
355
355
|
}
|
|
356
356
|
let m = G ? w * (G ? j ? 0 : 0.9 : 0) * s.dir + s.seed * 6.28 : j ? 0 : Math.sin(w * 0.6 + s.seed * 9) * 0.06;
|
|
357
|
-
m += s.dir *
|
|
358
|
-
const M = 1 +
|
|
357
|
+
m += s.dir * _ * 0.9;
|
|
358
|
+
const M = 1 + _ * _ * 0.07;
|
|
359
359
|
C(m, e.live), M !== 1 && e.live.sub(s.n).multiplyScalar(M).add(s.n);
|
|
360
360
|
const N = je((T - o.bornAt) / 1100);
|
|
361
361
|
if (N < 1) {
|
|
@@ -368,13 +368,13 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
368
368
|
let Ve = !1;
|
|
369
369
|
for (const F of K.mcpPending.values()) F.instance === o.id && (Ve = !0);
|
|
370
370
|
const Oe = j ? 0.5 : 0.5 + 0.5 * Math.sin(w * (k ? 6 : 1.6) + s.seed * 30);
|
|
371
|
-
o.llmCalls !== s.llm && (s.llm = o.llmCalls, V < 0 &&
|
|
371
|
+
o.llmCalls !== s.llm && (s.llm = o.llmCalls, V < 0 && fo(X, Pe.get(e.run.id) ?? e.run.origin, o.pulse, x, s.seed + o.llmCalls * 0.37));
|
|
372
372
|
const re = e.scale, fe = je((T - o.bornAt) / 700), $e = 0.3 * re * fe * (1 - R * 0.9) * (1 + ne * 0.12);
|
|
373
|
-
if ((te = n.current) == null || te.scale.setScalar(Math.max(1e-4, $e)), s.c.copy(x).multiplyScalar((k ? 1 + Oe * 0.4 : 0.55 + Oe * 0.15) + ne * 0.5), V >= 0 && s.c.lerp(
|
|
373
|
+
if ((te = n.current) == null || te.scale.setScalar(Math.max(1e-4, $e)), s.c.copy(x).multiplyScalar((k ? 1 + Oe * 0.4 : 0.55 + Oe * 0.15) + ne * 0.5), V >= 0 && s.c.lerp(Dt, R), l.shell.color.copy(s.c), l.core.color.setScalar((k ? 0.9 : 0.45) * (1 - R) + ne * 0.4), i.current && (i.current.scale.setScalar(Math.max(1e-4, (k ? 2.4 : 1.7) * re * fe * (1 - R * 0.7) + ne * 0.9 * be.scale)), l.halo.color.copy(x).multiplyScalar(((k ? 0.32 : 0.16) + ne * 0.25) * ve)), b.current) {
|
|
374
374
|
const F = V >= 0 && V < 0.9 ? 1 - V / 0.9 : 0;
|
|
375
375
|
b.current.visible = F > 0, b.current.scale.setScalar(Math.max(1e-4, re * (1.2 + (1 - F) * 3.5))), l.flash.color.copy(o.status === "failed" ? Fe : oe).multiplyScalar(F * F * 0.9);
|
|
376
376
|
}
|
|
377
|
-
if (s.ringK += ((Ve && V < 0 ? 1 : 0) - s.ringK) * 0.1, c.current && (c.current.visible = s.ringK > 0.02, c.current.rotation.set(1.2 + Math.sin(w * 0.8) * 0.3, w * 1.4, 0), c.current.scale.setScalar(Math.max(1e-4, 0.62 * re * s.ringK)), l.ring.color.copy(Fe).multiplyScalar(1.1 * s.ringK * (0.7 + Oe * 0.3))), p.current && (p.current.visible = r, p.current.quaternion.copy(I.quaternion), p.current.scale.setScalar(0.8 * re + (j ? 0 : Math.sin(w * 3) * 0.04))), (ae = z.current) == null || ae.scale.setScalar(Math.max(0.55, 0.62 * re)), G ? (Te = v.current) == null || Te.position.set(0.3 * re + 0.15, 0, 0) : (me = v.current) == null || me.position.set(0, (s.a.y > 0.2 ? 1 : -1) * (0.42 * re + 0.28), 0), A.current && (s.labelK += ((
|
|
377
|
+
if (s.ringK += ((Ve && V < 0 ? 1 : 0) - s.ringK) * 0.1, c.current && (c.current.visible = s.ringK > 0.02, c.current.rotation.set(1.2 + Math.sin(w * 0.8) * 0.3, w * 1.4, 0), c.current.scale.setScalar(Math.max(1e-4, 0.62 * re * s.ringK)), l.ring.color.copy(Fe).multiplyScalar(1.1 * s.ringK * (0.7 + Oe * 0.3))), p.current && (p.current.visible = r, p.current.quaternion.copy(I.quaternion), p.current.scale.setScalar(0.8 * re + (j ? 0 : Math.sin(w * 3) * 0.04))), (ae = z.current) == null || ae.scale.setScalar(Math.max(0.55, 0.62 * re)), G ? (Te = v.current) == null || Te.position.set(0.3 * re + 0.15, 0, 0) : (me = v.current) == null || me.position.set(0, (s.a.y > 0.2 ? 1 : -1) * (0.42 * re + 0.28), 0), A.current && (s.labelK += ((Lt(o.id) ? 1 : 0) - s.labelK) * 0.12, A.current.setOpacity(q((T - o.bornAt) / 600) * (1 - q(V / 1.2)) * 0.95 * s.labelK)), !G) {
|
|
378
378
|
const F = s.a.length();
|
|
379
379
|
P.visible = F > 0.6 && ve > 0.02, P.visible && (Ee.crossVectors(s.a, s.b).normalize(), P.matrix.makeBasis(s.a, s.b, Ee).setPosition(s.n), P.matrixWorldNeedsUpdate = !0, l.orbit.color.copy(x).multiplyScalar((k ? 0.32 : 0.2) * fe * (1 - R) * ve));
|
|
380
380
|
}
|
|
@@ -394,13 +394,13 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
394
394
|
if (ee.uGrow.value = o.parent && s.linkK > 0.01 ? ge : 0, ee.uOpacity.value = (k ? 0.7 : 0.45) * s.linkK, ee.uFlow.value = s.linkK, ee.uTime.value = j ? 0 : w, ee.uHead.value = ge < 1 ? ge : -1, h.current) {
|
|
395
395
|
const F = o.parent && s.linkK > 0.05 && ge >= 1;
|
|
396
396
|
if (h.current.visible = !!F, F) {
|
|
397
|
-
ie(s.par, s.ctrl, X, 0.74, et), ie(s.par, s.ctrl, X, 0.8, gt), h.current.position.copy(et), Ee.subVectors(gt, et), Ee.lengthSq() > 1e-8 && h.current.quaternion.setFromUnitVectors(
|
|
397
|
+
ie(s.par, s.ctrl, X, 0.74, et), ie(s.par, s.ctrl, X, 0.8, gt), h.current.position.copy(et), Ee.subVectors(gt, et), Ee.lengthSq() > 1e-8 && h.current.quaternion.setFromUnitVectors(co, Ee.normalize());
|
|
398
398
|
const W = (G ? 0.11 : 0.15) * Math.min(1.3, be.scale);
|
|
399
399
|
h.current.scale.set(W, W * 2.6, W), l.arrow.color.copy(x).multiplyScalar(1.5 * s.linkK);
|
|
400
400
|
}
|
|
401
401
|
}
|
|
402
402
|
});
|
|
403
|
-
const
|
|
403
|
+
const L = o.id.split(":")[2];
|
|
404
404
|
return /* @__PURE__ */ Y(de, { children: [
|
|
405
405
|
/* @__PURE__ */ d("primitive", { object: P }),
|
|
406
406
|
/* @__PURE__ */ d("mesh", { geometry: St, material: l.field, frustumCulled: !1 }),
|
|
@@ -416,7 +416,7 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
416
416
|
{
|
|
417
417
|
ref: z,
|
|
418
418
|
geometry: De,
|
|
419
|
-
material:
|
|
419
|
+
material: io,
|
|
420
420
|
onClick: (y) => {
|
|
421
421
|
y.stopPropagation(), a(o.id);
|
|
422
422
|
},
|
|
@@ -433,7 +433,7 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
433
433
|
{
|
|
434
434
|
ref: A,
|
|
435
435
|
anchorX: G ? "left" : "center",
|
|
436
|
-
text: `${o.name}${
|
|
436
|
+
text: `${o.name}${L !== void 0 ? ` ${Number(L) + 1}` : ""}`,
|
|
437
437
|
color: Mt[o.type],
|
|
438
438
|
size: G ? 0.22 : 0.28,
|
|
439
439
|
opacity: 0,
|
|
@@ -445,7 +445,7 @@ function fo({ agent: e, selected: r, onSelect: a }) {
|
|
|
445
445
|
] });
|
|
446
446
|
}
|
|
447
447
|
const Ce = 36, yt = 1.5;
|
|
448
|
-
function
|
|
448
|
+
function mo() {
|
|
449
449
|
const e = E(() => {
|
|
450
450
|
const n = new t.BufferGeometry();
|
|
451
451
|
return n.setAttribute("position", new t.BufferAttribute(new Float32Array(Be * Ce * 6), 3)), n.setAttribute("color", new t.BufferAttribute(new Float32Array(Be * Ce * 6), 3)), n.boundingSphere = new t.Sphere(new t.Vector3(), 1e4), n;
|
|
@@ -466,9 +466,9 @@ function po() {
|
|
|
466
466
|
const v = 1 - A / yt, x = 0.4 + A * 7.5, G = 1.2 + h.size * 1.1, l = 0.1 + h.size * 0.07, f = p * Ce * 2;
|
|
467
467
|
for (let g = 0; g < Ce; g++)
|
|
468
468
|
for (let P = 0; P < 2; P++) {
|
|
469
|
-
const s = (g + P) / Ce, C = Math.max(0, x - G * (1 - s)),
|
|
469
|
+
const s = (g + P) / Ce, C = Math.max(0, x - G * (1 - s)), L = Math.sin(Math.PI * s), y = Math.sin(s * Math.PI * 2 * (3 + h.size)) * l * L;
|
|
470
470
|
u.copy(h.o).addScaledVector(h.dir, C).addScaledVector(h.perp, y), i.setXYZ(f + g * 2 + P, u.x, u.y, u.z);
|
|
471
|
-
const I =
|
|
471
|
+
const I = L * v * 1.4;
|
|
472
472
|
c.setXYZ(f + g * 2 + P, h.c.r * I, h.c.g * I, h.c.b * I);
|
|
473
473
|
}
|
|
474
474
|
p++;
|
|
@@ -480,7 +480,7 @@ function po() {
|
|
|
480
480
|
] });
|
|
481
481
|
}
|
|
482
482
|
const ot = 24;
|
|
483
|
-
function
|
|
483
|
+
function ho() {
|
|
484
484
|
const e = E(() => Array.from({ length: ot }, () => $("#fff")), []), r = B([]), a = E(() => ({ c: new t.Vector3(), h: new t.Vector3() }), []);
|
|
485
485
|
return he(() => {
|
|
486
486
|
const o = performance.now();
|
|
@@ -498,7 +498,7 @@ function mo() {
|
|
|
498
498
|
for (let n = u; n < ot; n++) r.current[n] && (r.current[n].visible = !1);
|
|
499
499
|
}), /* @__PURE__ */ d(de, { children: e.map((o, u) => /* @__PURE__ */ d("sprite", { ref: (n) => void (r.current[u] = n), material: o, visible: !1 }, u)) });
|
|
500
500
|
}
|
|
501
|
-
const we = 14,
|
|
501
|
+
const we = 14, vo = 0.2, go = new t.OctahedronGeometry(0.13, 0), yo = (
|
|
502
502
|
/* glsl */
|
|
503
503
|
`
|
|
504
504
|
attribute vec3 aCol;
|
|
@@ -509,7 +509,7 @@ void main(){
|
|
|
509
509
|
vV = normalize(-mv.xyz); vC = aCol;
|
|
510
510
|
gl_Position = projectionMatrix * mv;
|
|
511
511
|
}`
|
|
512
|
-
),
|
|
512
|
+
), wo = (
|
|
513
513
|
/* glsl */
|
|
514
514
|
`
|
|
515
515
|
uniform float uGain;
|
|
@@ -524,7 +524,7 @@ void main(){
|
|
|
524
524
|
gl_FragColor = vec4(col * uGain, 1.0);
|
|
525
525
|
}`
|
|
526
526
|
), nt = new t.Vector3();
|
|
527
|
-
function
|
|
527
|
+
function bo(e, r) {
|
|
528
528
|
let a = 0, o = 0, u = 0, n = 1 / 0;
|
|
529
529
|
for (const p of Me.agents.values())
|
|
530
530
|
p.run === e && (p.depth === 0 ? (a++, o += p.eu, u += p.ev) : n = Math.min(n, p.ev));
|
|
@@ -538,7 +538,7 @@ function wo(e, r) {
|
|
|
538
538
|
r.v = n < 1 / 0 ? (c + n) / 2 : c - i;
|
|
539
539
|
}
|
|
540
540
|
const rt = { u: 0, v: 0 };
|
|
541
|
-
function
|
|
541
|
+
function Mo({ run: e }) {
|
|
542
542
|
const r = E(() => new t.Vector3(), []), a = E(() => new t.Vector3(), []), o = E(() => ({ init: !1, c: new t.Color(), topY: 0, topSet: !1 }), []);
|
|
543
543
|
Et(() => (Pe.set(e.id, r), Ke.set(e.id, a), () => {
|
|
544
544
|
Pe.get(e.id) === r && Pe.delete(e.id), Ke.get(e.id) === a && Ke.delete(e.id);
|
|
@@ -546,7 +546,7 @@ function bo({ run: e }) {
|
|
|
546
546
|
const u = E(() => {
|
|
547
547
|
const h = new t.SphereGeometry(1, 16, 12), z = new t.InstancedBufferAttribute(new Float32Array(we * 3), 3);
|
|
548
548
|
h.setAttribute("aCol", z);
|
|
549
|
-
const A = new t.ShaderMaterial({ uniforms: { uGain: { value: 1 } }, vertexShader:
|
|
549
|
+
const A = new t.ShaderMaterial({ uniforms: { uGain: { value: 1 } }, vertexShader: yo, fragmentShader: wo }), v = new t.InstancedMesh(h, A, we);
|
|
550
550
|
v.frustumCulled = !1;
|
|
551
551
|
const x = new Float32Array(we * 3), G = Math.PI * (3 - Math.sqrt(5));
|
|
552
552
|
for (let l = 0; l < we; l++) {
|
|
@@ -560,27 +560,27 @@ function bo({ run: e }) {
|
|
|
560
560
|
() => ({
|
|
561
561
|
core: $(new t.Color("#7a5cff").multiplyScalar(0.35)),
|
|
562
562
|
cloud: $("#000"),
|
|
563
|
-
beads:
|
|
563
|
+
beads: Le.map(() => le("#fff"))
|
|
564
564
|
}),
|
|
565
565
|
[]
|
|
566
566
|
), c = B(null), p = B([]), b = B(null);
|
|
567
567
|
return he(({ clock: h }) => {
|
|
568
568
|
var T;
|
|
569
569
|
const z = performance.now(), A = h.elapsedTime, v = e.run ?? K.runs.get(e.id);
|
|
570
|
-
|
|
570
|
+
bo(e, rt), _t(e, rt.u, rt.v, nt), o.init ? r.lerp(nt, 0.12) : (r.copy(nt), o.init = !0);
|
|
571
571
|
const x = Math.max(0.6, be.scale), G = v ? je((z - v.startedAt) / 1200) : 1, l = v != null && v.endedAt ? q(1 - (z - v.endedAt - (Nt - 2600)) / 2600) : 1, f = (v == null ? void 0 : v.status) === "started" ? 1 : 0.6;
|
|
572
572
|
c.current && (c.current.position.copy(r), c.current.scale.setScalar(Math.max(1e-4, x * (0.4 + 0.6 * G) * (0.6 + 0.4 * l))));
|
|
573
|
-
const { mesh: g, mat: P, pos: s, o: C } = u,
|
|
573
|
+
const { mesh: g, mat: P, pos: s, o: C } = u, L = j ? 0 : 0.02;
|
|
574
574
|
for (let w = 0; w < we; w++)
|
|
575
|
-
C.position.set(s[w * 3] + Math.sin(A * 2.1 + w * 1.7) *
|
|
575
|
+
C.position.set(s[w * 3] + Math.sin(A * 2.1 + w * 1.7) * L, s[w * 3 + 1] + Math.cos(A * 1.8 + w * 2.3) * L, s[w * 3 + 2] + Math.sin(A * 1.6 + w) * L), C.scale.setScalar(vo), C.updateMatrix(), g.setMatrixAt(w, C.matrix);
|
|
576
576
|
g.instanceMatrix.needsUpdate = !0;
|
|
577
577
|
const y = j ? 1 : 0.88 + 0.12 * Math.sin(A * 0.7 + e.index);
|
|
578
578
|
P.uniforms.uGain.value = (0.55 + 0.45 * f) * l * (0.7 + 0.3 * G), i.cloud.color.copy(n).multiplyScalar(0.22 * l * f * y * G);
|
|
579
|
-
for (let w = 0; w <
|
|
579
|
+
for (let w = 0; w < Le.length; w++) {
|
|
580
580
|
const V = p.current[w];
|
|
581
581
|
if (!V || (V.visible = !!(v != null && v.hasSteps), !(v != null && v.hasSteps))) continue;
|
|
582
|
-
const R = v.steps[
|
|
583
|
-
V.position.set(Math.cos(
|
|
582
|
+
const R = v.steps[Le[w]], _ = w / 3 * Math.PI * 2 + (j ? 0 : A * 0.35);
|
|
583
|
+
V.position.set(Math.cos(_) * 0.72, Math.sin(_) * 0.72 * 0.42, Math.sin(_) * 0.3);
|
|
584
584
|
const U = 0.5 + 0.5 * Math.sin(A * 4);
|
|
585
585
|
V.scale.setScalar(R === "running" ? 1.25 + U * 0.3 : 1), V.rotation.y = j ? 0 : A * 0.8, i.beads[w].color.copy(R === "running" ? Fe : R === "done" ? Se : R === "failed" ? He : n).multiplyScalar((R === "queued" ? 0.35 : R === "running" ? 1.2 + U * 0.6 : 0.9) * l);
|
|
586
586
|
}
|
|
@@ -592,20 +592,20 @@ function bo({ run: e }) {
|
|
|
592
592
|
/* @__PURE__ */ d("sprite", { material: i.cloud, scale: 4.2, position: [0, 0, -0.6] }),
|
|
593
593
|
/* @__PURE__ */ d("sprite", { material: i.core, scale: 1.8 }),
|
|
594
594
|
/* @__PURE__ */ d("primitive", { object: u.mesh }),
|
|
595
|
-
|
|
595
|
+
Le.map((h, z) => /* @__PURE__ */ d("mesh", { ref: (A) => void (p.current[z] = A), geometry: go, material: i.beads[z], visible: !1 }, h))
|
|
596
596
|
] }),
|
|
597
|
-
/* @__PURE__ */ d("group", { ref: b, children: e.run && /* @__PURE__ */ d(
|
|
597
|
+
/* @__PURE__ */ d("group", { ref: b, children: e.run && /* @__PURE__ */ d(So, { run: e.run, color: `#${n.getHexString()}` }) })
|
|
598
598
|
] });
|
|
599
599
|
}
|
|
600
|
-
function
|
|
600
|
+
function So({ run: e, color: r }) {
|
|
601
601
|
Ut();
|
|
602
602
|
const a = e.status !== "started";
|
|
603
603
|
let o = 0;
|
|
604
|
-
for (const n of K.instances.values()) n.run === e.id &&
|
|
605
|
-
const u = e.hasSteps ? [...
|
|
604
|
+
for (const n of K.instances.values()) n.run === e.id && Xt(n) && o++;
|
|
605
|
+
const u = e.hasSteps ? [...Ht(e, { base: "#9fb3d1", current: "#ffc24a", done: "#cfe9ff" })] : [{ text: "nucleus", color: "#9fb3d1" }];
|
|
606
606
|
return u.push({ text: a ? " · complete" : ` · ${o} e-`, color: "#9fb3d1" }), /* @__PURE__ */ d(Ie, { text: e.topic, secondary: u, color: r, size: 0.32, secondarySize: 0.25, maxWidth: 10, opacity: a ? 0.5 : 0.95, fadeMs: 400, anchorY: "bottom", pxRange: [10, 14] });
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const xo = 140, st = 0.17, wt = 40, at = 18, it = 5, Xe = 4, Co = (
|
|
609
609
|
/* glsl */
|
|
610
610
|
`
|
|
611
611
|
attribute vec3 aCol; attribute float aFire;
|
|
@@ -616,7 +616,7 @@ void main(){
|
|
|
616
616
|
vV = normalize(-mv.xyz); vC = aCol; vF = aFire;
|
|
617
617
|
gl_Position = projectionMatrix * mv;
|
|
618
618
|
}`
|
|
619
|
-
),
|
|
619
|
+
), Ao = (
|
|
620
620
|
/* glsl */
|
|
621
621
|
`
|
|
622
622
|
varying vec3 vN; varying vec3 vV; varying vec3 vC; varying float vF;
|
|
@@ -630,7 +630,7 @@ void main(){
|
|
|
630
630
|
col += vC * vF * 1.8 + vec3(1.0) * vF * vF * 0.9;
|
|
631
631
|
gl_FragColor = vec4(col, 1.0);
|
|
632
632
|
}`
|
|
633
|
-
),
|
|
633
|
+
), Po = () => new t.ShaderMaterial({
|
|
634
634
|
uniforms: { uColor: { value: new t.Color() } },
|
|
635
635
|
vertexShader: (
|
|
636
636
|
/* glsl */
|
|
@@ -645,10 +645,10 @@ void main(){
|
|
|
645
645
|
transparent: !0,
|
|
646
646
|
depthWrite: !1,
|
|
647
647
|
blending: t.AdditiveBlending
|
|
648
|
-
}),
|
|
649
|
-
function
|
|
648
|
+
}), Vo = new t.SphereGeometry(1, 48, 32);
|
|
649
|
+
function zo({ galaxy: e }) {
|
|
650
650
|
const r = E(() => {
|
|
651
|
-
const l = e.nodes.slice(0,
|
|
651
|
+
const l = e.nodes.slice(0, xo), f = new Set(l.map((g) => g.id));
|
|
652
652
|
return { nodes: l, links: e.links.filter((g) => f.has(g.source) && f.has(g.target)) };
|
|
653
653
|
}, [e]), a = r.nodes.length, o = E(() => {
|
|
654
654
|
const l = new Float32Array(a * 3), f = Math.PI * (3 - Math.sqrt(5));
|
|
@@ -656,17 +656,17 @@ function Vo({ galaxy: e }) {
|
|
|
656
656
|
const M = (ce - st) * (0.3 + 0.7 * Math.cbrt(1 - m / a)), N = 1 - 2 * (m + 0.5) / a, X = Math.sqrt(1 - N * N);
|
|
657
657
|
l.set([Math.cos(m * f) * X * M, N * M, Math.sin(m * f) * X * M], m * 3);
|
|
658
658
|
}
|
|
659
|
-
const g = r.nodes.map((m, M) => new t.Color(
|
|
659
|
+
const g = r.nodes.map((m, M) => new t.Color(Kt[m.kind] ?? "#94a3b8").lerp(oe, 0.08 + M * 37 % 10 / 70).multiplyScalar(0.8)), P = new Map(r.nodes.map((m, M) => [m.id, M])), s = [], C = /* @__PURE__ */ new Set(), L = (m, M) => (l[m * 3] - l[M * 3]) ** 2 + (l[m * 3 + 1] - l[M * 3 + 1]) ** 2 + (l[m * 3 + 2] - l[M * 3 + 2]) ** 2, y = (m, M) => {
|
|
660
660
|
const N = m < M ? m * 4096 + M : M * 4096 + m;
|
|
661
661
|
m === M || C.has(N) || (C.add(N), s.push(m, M));
|
|
662
662
|
};
|
|
663
663
|
for (const m of r.links) {
|
|
664
664
|
const M = P.get(m.source), N = P.get(m.target);
|
|
665
|
-
M !== void 0 && N !== void 0 &&
|
|
665
|
+
M !== void 0 && N !== void 0 && L(M, N) < (ce * 0.9) ** 2 && y(M, N);
|
|
666
666
|
}
|
|
667
667
|
for (let m = 0; m < a; m++) {
|
|
668
668
|
let M = -1, N = 1 / 0;
|
|
669
|
-
for (let X = 0; X < a; X++) X !== m &&
|
|
669
|
+
for (let X = 0; X < a; X++) X !== m && L(m, X) < N && (N = L(m, X), M = X);
|
|
670
670
|
M >= 0 && y(m, M);
|
|
671
671
|
}
|
|
672
672
|
const I = new Float32Array(s.length * 3);
|
|
@@ -675,30 +675,30 @@ function Vo({ galaxy: e }) {
|
|
|
675
675
|
T.setAttribute("position", new t.BufferAttribute(I, 3)), T.setAttribute("color", new t.BufferAttribute(new Float32Array(s.length * 3), 3)), T.boundingSphere = new t.Sphere(new t.Vector3(), ce * 2);
|
|
676
676
|
const w = new t.SphereGeometry(1, 20, 14), V = new t.InstancedBufferAttribute(new Float32Array(a * 3), 3), R = new t.InstancedBufferAttribute(new Float32Array(a), 1);
|
|
677
677
|
w.setAttribute("aCol", V), w.setAttribute("aFire", R);
|
|
678
|
-
const
|
|
679
|
-
|
|
678
|
+
const _ = new t.InstancedMesh(w, new t.ShaderMaterial({ vertexShader: Co, fragmentShader: Ao }), a);
|
|
679
|
+
_.frustumCulled = !1;
|
|
680
680
|
const U = new t.Object3D();
|
|
681
681
|
for (let m = 0; m < a; m++)
|
|
682
|
-
U.position.set(l[m * 3], l[m * 3 + 1], l[m * 3 + 2]), U.scale.setScalar(st), U.updateMatrix(),
|
|
683
|
-
return { pos: l, base: g, mesh:
|
|
682
|
+
U.position.set(l[m * 3], l[m * 3 + 1], l[m * 3 + 2]), U.scale.setScalar(st), U.updateMatrix(), _.setMatrixAt(m, U.matrix), V.setXYZ(m, g[m].r, g[m].g, g[m].b);
|
|
683
|
+
return { pos: l, base: g, mesh: _, aCol: V, aFire: R, o: U, bgeo: T, owner: Int32Array.from(s), fire: new Float32Array(a), fireC: Array.from({ length: a }, () => new t.Color()) };
|
|
684
684
|
}, [r, a]), u = E(
|
|
685
685
|
() => ({
|
|
686
686
|
beam: ue("#fff", !0),
|
|
687
687
|
bond: ue("#fff", !0),
|
|
688
688
|
core: $(new t.Color("#7a5cff").multiplyScalar(0.35)),
|
|
689
689
|
cloud: $(new t.Color("#1d4ed8").multiplyScalar(0.22)),
|
|
690
|
-
waves: Array.from({ length: it },
|
|
690
|
+
waves: Array.from({ length: it }, Po)
|
|
691
691
|
}),
|
|
692
692
|
[]
|
|
693
693
|
), n = E(() => new Ct(wt, at), []), i = E(() => new qe(wt), []), c = B([]), p = B([]), b = B([]), h = B(Array(Xe).fill("")), [z, A] = Ft("left"), v = E(() => /* @__PURE__ */ new Map(), [r]), x = E(() => ({ v: new t.Vector3(), mid: new t.Vector3(), p: new t.Vector3(), c: new t.Color(), c2: new t.Color(), sp: new t.Vector3() }), []), G = (l) => {
|
|
694
694
|
let f = v.get(l);
|
|
695
|
-
return f === void 0 && v.set(l, f =
|
|
695
|
+
return f === void 0 && v.set(l, f = qt(e, l) % a), f;
|
|
696
696
|
};
|
|
697
697
|
return he(({ clock: l, camera: f, size: g }) => {
|
|
698
698
|
if (!a) return;
|
|
699
|
-
const P = performance.now(), s = l.elapsedTime, { pos: C, base:
|
|
699
|
+
const P = performance.now(), s = l.elapsedTime, { pos: C, base: L, fire: y, fireC: I, mesh: T, aCol: w, aFire: V, o: R } = o;
|
|
700
700
|
y.fill(0);
|
|
701
|
-
const { v:
|
|
701
|
+
const { v: _, mid: U, p: m, c: M, c2: N } = x;
|
|
702
702
|
n.begin(), i.begin();
|
|
703
703
|
let X = 0;
|
|
704
704
|
for (const S of K.flares) {
|
|
@@ -711,20 +711,20 @@ function Vo({ galaxy: e }) {
|
|
|
711
711
|
}
|
|
712
712
|
X++;
|
|
713
713
|
}
|
|
714
|
-
const ge = xe(S.instance), pe = ge ?
|
|
714
|
+
const ge = xe(S.instance), pe = ge ? jt(ge, x.sp) : void 0;
|
|
715
715
|
if (pe && H < 2) {
|
|
716
716
|
const te = n.next();
|
|
717
717
|
if (te < 0) continue;
|
|
718
|
-
|
|
718
|
+
_.set(C[O * 3], C[O * 3 + 1], C[O * 3 + 2]), U.copy(pe).add(_).multiplyScalar(0.5), U.z += 0.8;
|
|
719
719
|
const ae = Math.min(1, H / 0.2) * Math.pow(1 - H / 2, 1.6), Te = Q ? Math.min(1, H * 1.1) : 1 - Math.min(1, H * 1.1);
|
|
720
720
|
for (let me = 0; me < at; me++)
|
|
721
721
|
for (let F = 0; F < 2; F++) {
|
|
722
722
|
const W = (me + F) / at;
|
|
723
|
-
ie(pe, U,
|
|
723
|
+
ie(pe, U, _, W, m), n.P.setXYZ(te + me * 2 + F, m.x, m.y, m.z);
|
|
724
724
|
const ze = Math.exp(-(((W - Te) / 0.07) ** 2)) * 2.2;
|
|
725
725
|
N.copy(se).multiplyScalar(ae * (0.18 + ze) * 0.8), n.C.setXYZ(te + me * 2 + F, N.r, N.g, N.b);
|
|
726
726
|
}
|
|
727
|
-
Q ? i.add(pe, U,
|
|
727
|
+
Q ? i.add(pe, U, _, 0.86, 1, 0.38, mt, ae * 1.4) : i.add(pe, U, _, 0.12, -1, 0.38, se, ae * 1.4);
|
|
728
728
|
}
|
|
729
729
|
}
|
|
730
730
|
for (let S = X; S < it; S++) c.current[S] && (c.current[S].visible = !1);
|
|
@@ -732,12 +732,12 @@ function Vo({ galaxy: e }) {
|
|
|
732
732
|
const ve = j ? 0 : 0.025;
|
|
733
733
|
for (let S = 0; S < a; S++) {
|
|
734
734
|
const O = y[S];
|
|
735
|
-
M.copy(
|
|
735
|
+
M.copy(L[S]), O > 0.01 && Jt(M.multiplyScalar(1 - O * 0.5), I[S], O * 0.9), w.setXYZ(S, M.r, M.g, M.b), V.setX(S, O), R.position.set(C[S * 3] + Math.sin(s * 2.1 + S * 1.7) * ve, C[S * 3 + 1] + Math.cos(s * 1.8 + S * 2.3) * ve, C[S * 3 + 2] + Math.sin(s * 1.6 + S) * ve), R.scale.setScalar(st * (1 + O * 0.35)), R.updateMatrix(), T.setMatrixAt(S, R.matrix);
|
|
736
736
|
}
|
|
737
737
|
T.instanceMatrix.needsUpdate = !0, w.needsUpdate = !0, V.needsUpdate = !0;
|
|
738
738
|
const k = o.bgeo.getAttribute("color"), ne = o.owner;
|
|
739
739
|
for (let S = 0; S < ne.length; S++) {
|
|
740
|
-
const O = Math.max(y[ne[S]], y[ne[S ^ 1]]), H =
|
|
740
|
+
const O = Math.max(y[ne[S]], y[ne[S ^ 1]]), H = L[ne[S]];
|
|
741
741
|
k.setXYZ(S, H.r * 0.22 + O * 0.5, H.g * 0.22 + O * 0.5, H.b * 0.22 + O * 0.55);
|
|
742
742
|
}
|
|
743
743
|
k.needsUpdate = !0;
|
|
@@ -763,14 +763,14 @@ function Vo({ galaxy: e }) {
|
|
|
763
763
|
/* @__PURE__ */ d("sprite", { material: u.core, scale: ce * 1.6 }),
|
|
764
764
|
/* @__PURE__ */ d("lineSegments", { geometry: o.bgeo, material: u.bond, frustumCulled: !1 }),
|
|
765
765
|
/* @__PURE__ */ d("primitive", { object: o.mesh }),
|
|
766
|
-
u.waves.map((l, f) => /* @__PURE__ */ d("mesh", { ref: (g) => void (c.current[f] = g), geometry:
|
|
766
|
+
u.waves.map((l, f) => /* @__PURE__ */ d("mesh", { ref: (g) => void (c.current[f] = g), geometry: Vo, material: l, visible: !1 }, f)),
|
|
767
767
|
/* @__PURE__ */ d("lineSegments", { geometry: n.geo, material: u.beam, frustumCulled: !1 }),
|
|
768
768
|
/* @__PURE__ */ d("primitive", { object: i.mesh }),
|
|
769
769
|
Array.from({ length: Xe }, (l, f) => /* @__PURE__ */ d("group", { ref: (g) => void (b.current[f] = g), children: /* @__PURE__ */ d(Ie, { ref: (g) => void (p.current[f] = g), text: "", font: "mono", anchorX: z, size: 0.24, opacity: 0, fadeMs: 250, pxRange: [8, 11.5] }) }, f)),
|
|
770
|
-
/* @__PURE__ */ d(
|
|
770
|
+
/* @__PURE__ */ d(Yt, { position: [0, -ce - 0.85, 0], prefix: "molecule · ", font: "mono", color: "#ff4fa8", letterSpacing: 0.04, size: 0.26, opacity: 0.75, pxRange: [8.5, 12] })
|
|
771
771
|
] });
|
|
772
772
|
}
|
|
773
|
-
function
|
|
773
|
+
function Go() {
|
|
774
774
|
const e = E(() => {
|
|
775
775
|
const a = [], o = (n, i) => a.push(...n, ...i);
|
|
776
776
|
for (const n of [4, 8, 12, 16, 20, 24])
|
|
@@ -788,18 +788,18 @@ function zo() {
|
|
|
788
788
|
}, []), r = E(() => ue(new t.Color("#3db8ff").multiplyScalar(0.075)), []);
|
|
789
789
|
return /* @__PURE__ */ d("lineSegments", { geometry: e, material: r, position: [0, 0, -9] });
|
|
790
790
|
}
|
|
791
|
-
const
|
|
792
|
-
function
|
|
791
|
+
const Eo = new t.Vector3();
|
|
792
|
+
function Fo(e) {
|
|
793
793
|
for (const r of Me.runs.values()) {
|
|
794
794
|
const a = Pe.get(r.id);
|
|
795
795
|
a && e(a, 0.8 * Math.max(0.6, be.scale));
|
|
796
796
|
const o = Ke.get(r.id);
|
|
797
|
-
o && e(
|
|
797
|
+
o && e(Eo.set(o.x, o.y + 0.5, o.z), 1.2);
|
|
798
798
|
}
|
|
799
799
|
}
|
|
800
800
|
function _o() {
|
|
801
801
|
return /* @__PURE__ */ Y(
|
|
802
|
-
|
|
802
|
+
Wt,
|
|
803
803
|
{
|
|
804
804
|
title: "atom · agent orbitals",
|
|
805
805
|
subtitle: "Each run is an atom: the nucleus is the run hub, agents are electrons on its shells, subagents orbit their parent · LLM calls emit photons sized by tokens · ◎ MCP detectors with backend sensors · graph = molecule on the side · exit = decay",
|
|
@@ -813,22 +813,22 @@ function _o() {
|
|
|
813
813
|
agentRadius: 0.75,
|
|
814
814
|
graph: { natural: ce * 1.15, radius: 2.3 },
|
|
815
815
|
peripheryGap: 3.8,
|
|
816
|
-
Background: /* @__PURE__ */ d(
|
|
817
|
-
Agent:
|
|
818
|
-
RunMarker:
|
|
819
|
-
McpServer:
|
|
820
|
-
Backend:
|
|
821
|
-
GraphResource:
|
|
816
|
+
Background: /* @__PURE__ */ d(Go, {}),
|
|
817
|
+
Agent: po,
|
|
818
|
+
RunMarker: Mo,
|
|
819
|
+
McpServer: so,
|
|
820
|
+
Backend: ro,
|
|
821
|
+
GraphResource: zo,
|
|
822
822
|
cluster: { radius: 1.3, variant: "orb" },
|
|
823
|
-
extents:
|
|
823
|
+
extents: Fo,
|
|
824
824
|
PostFX: /* @__PURE__ */ Y(Vt, { multisampling: 0, children: [
|
|
825
825
|
/* @__PURE__ */ d(zt, { mipmapBlur: !0, intensity: 1.05, luminanceThreshold: 0.22, luminanceSmoothing: 0.25, radius: 0.7 }),
|
|
826
826
|
/* @__PURE__ */ d(Gt, { eskil: !1, offset: 0.25, darkness: 0.85 })
|
|
827
827
|
] }),
|
|
828
828
|
children: [
|
|
829
|
-
/* @__PURE__ */ d(po, {}),
|
|
830
829
|
/* @__PURE__ */ d(mo, {}),
|
|
831
|
-
/* @__PURE__ */ d(
|
|
830
|
+
/* @__PURE__ */ d(ho, {}),
|
|
831
|
+
/* @__PURE__ */ d(ao, {})
|
|
832
832
|
]
|
|
833
833
|
}
|
|
834
834
|
);
|