signetai 0.116.4 → 0.116.6
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/dashboard/_app/immutable/chunks/{BV3Ogq4h.js → 0rN3V7V1.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CxQuuqtN.js → 787ApEgR.js} +1 -1
- package/dashboard/_app/immutable/chunks/{rscyligZ.js → B0mhyhwm.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CKDglwum.js → B0vncf-l.js} +1 -1
- package/dashboard/_app/immutable/chunks/{D_v3nuAo.js → B6WNljou.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DcVaMhj6.js → Bb7xgLPL.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BNOR5MAR.js → BjANcmvq.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Bxx9Kqrn.js → BkBb1aEv.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DhnS_iMI.js → BkKYLjdI.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Dz4yfpBd.js → Boe2PYga.js} +1 -1
- package/dashboard/_app/immutable/chunks/{NTDsvrQG.js → Bp0uvnDD.js} +2 -2
- package/dashboard/_app/immutable/chunks/{DoWs5OiX.js → BumkZmzx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Bb_Lgdyk.js → C-UepIns.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DBQvibhv.js → CFBvGnYK.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BjK4no6W.js → CGe-rHTx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DJFrNm6u.js → CK-mjAr4.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CRxWEr7f.js → CLuZWBVp.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DCJghTq1.js → CPkexWOh.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BinOXHKI.js → CVuYJCpJ.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BSUgwLpg.js → CY-FUYpe.js} +1 -1
- package/dashboard/_app/immutable/chunks/{dQqZq8Fd.js → C_X_Gk3z.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Bey3X0ZB.js → CbxX3CsK.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DMmQM7Mt.js → CdKQpuPU.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CbgpCpH5.js → Cel4-oLV.js} +1 -1
- package/dashboard/_app/immutable/chunks/{1amP6XXU.js → Cgp3SeWd.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Bw9k4fkE.js → Cm6vtSSf.js} +3 -3
- package/dashboard/_app/immutable/chunks/{DrlSAlyP.js → CrB3tuvD.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DqhrwgQQ.js → D5GFae1Y.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Ed-8tHx7.js → DBAtai8W.js} +1 -1
- package/dashboard/_app/immutable/chunks/{LP88EgsQ.js → DERA2GQ9.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BEhGwtVW.js → DWdnvKfb.js} +2 -2
- package/dashboard/_app/immutable/chunks/{DORyES4k.js → DWnZIKWN.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Uek6V3oU.js → DpTyFdUn.js} +1 -1
- package/dashboard/_app/immutable/chunks/{tSlZITn-.js → Du39RNHl.js} +1 -1
- package/dashboard/_app/immutable/chunks/{a5Wh8bOq.js → DzE2IIDg.js} +1 -1
- package/dashboard/_app/immutable/chunks/{GgMbVxEE.js → GYyjr2oz.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Cy-z7zd0.js → J-_Q6WCI.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DVt5q-P0.js → LaAecoqm.js} +1 -1
- package/dashboard/_app/immutable/chunks/{B-QUE7m6.js → LhNu12f2.js} +1 -1
- package/dashboard/_app/immutable/chunks/Lm_cth49.js +1 -0
- package/dashboard/_app/immutable/chunks/{CtDFYHZq.js → NhdsKQha.js} +3 -3
- package/dashboard/_app/immutable/chunks/{k89FZnVu.js → UAxX5vlG.js} +1 -1
- package/dashboard/_app/immutable/chunks/{5qAkqee4.js → gtyNjeyu.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Jun1srAs.js → hGpWbnKK.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C2tFYJ_n.js → jwikpkzW.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CMBDCtSI.js → mOMJ49-u.js} +1 -1
- package/dashboard/_app/immutable/chunks/{WSFqqbf_.js → niMiow8G.js} +1 -1
- package/dashboard/_app/immutable/entry/{app.C1-LBt-X.js → app.So2vccbE.js} +2 -2
- package/dashboard/_app/immutable/entry/start.glQWnrpE.js +1 -0
- package/dashboard/_app/immutable/nodes/{1.CqBA9GBE.js → 1.6xgf5Kkj.js} +1 -1
- package/dashboard/_app/immutable/nodes/2.Bx8XWi3t.js +1 -0
- package/dashboard/_app/version.json +1 -1
- package/dashboard/index.html +6 -6
- package/dist/cli.js +46 -14
- package/dist/daemon.js +307 -62
- package/dist/extraction-thread.js +9 -0
- package/dist/mcp-stdio.js +39 -7
- package/package.json +1 -1
- package/dashboard/_app/immutable/chunks/BlOKf96F.js +0 -1
- package/dashboard/_app/immutable/entry/start.DH6YDcK_.js +0 -1
- package/dashboard/_app/immutable/nodes/2.DlEjYETs.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as Ne,g as We,G as Je,j as v,a as Qe,n as Xe,l as s,H as Ye,b as t,d as Fe,r as Ze,m as c,q as ea,t as e,k as I,i as a,O as te,o as Y,v as z,y as p,z as y,u as ze,f as P,A as ce,K as ue,w as M,x as B,D as fe,c as pe,a2 as ge,B as me,P as aa}from"./BvuHLZ8E.js";import{c as ra,p as ta,q as sa,u as oa,S as x,v as _e,G as he}from"./
|
|
1
|
+
import{p as Ne,g as We,G as Je,j as v,a as Qe,n as Xe,l as s,H as Ye,b as t,d as Fe,r as Ze,m as c,q as ea,t as e,k as I,i as a,O as te,o as Y,v as z,y as p,z as y,u as ze,f as P,A as ce,K as ue,w as M,x as B,D as fe,c as pe,a2 as ge,B as me,P as aa}from"./BvuHLZ8E.js";import{c as ra,p as ta,q as sa,u as oa,S as x,v as _e,G as he}from"./NhdsKQha.js";import{P as la}from"./BEjeM6IF.js";import{C as xe,a as be}from"./CY-FUYpe.js";import{C as $e,a as we}from"./D5GFae1Y.js";import{C as ye}from"./BkBb1aEv.js";import{R as ia}from"./LaAecoqm.js";var da=c("<div><!></div>");function Pe(Ae,q){Ne(q,!0);let G=We(q,"ref",15,null),S=Ze(q,["$$slots","$$events","$$legacy","ref","class","children"]);var k=da();Je(k,H=>({"data-slot":"card-action",class:H,...S}),[()=>ra("col-start-2 row-span-2 row-start-1 self-start justify-self-end",q.class)]);var _=v(k);Qe(_,()=>q.children??Xe),s(k),Ye(k,H=>G(H),()=>G()),t(Ae,k),Fe()}var na=c('<span class="sig-meta whitespace-nowrap text-[var(--sig-text-muted)]"> </span>'),va=c('<div class="hidden h-full min-h-0 gap-4 2xl:flex"><div class="w-[21rem] min-w-[21rem] border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div> <div class="min-w-0 flex-1 border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div> <div class="min-w-0 flex-1 border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div></div> <div class="flex h-full min-h-0 flex-col gap-3 2xl:hidden"><div class="flex gap-2 border-b border-[var(--sig-border)] pb-3"><!> <!> <!></div> <div class="border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div></div>',1),ca=c(`<div class="flex h-full min-h-0 items-center justify-center"><div class="border border-[var(--sig-border-strong)] bg-[var(--sig-surface)]
|
|
2
2
|
px-6 py-5 text-center"><div class="sig-heading text-[var(--sig-text-bright)]">Project Unavailable</div> <p class="mt-2 max-w-md font-mono text-[11px]
|
|
3
3
|
leading-5 text-[var(--sig-text-muted)]">Couldn't load README, roadmap, or changelog.</p> <button class="mt-4 text-[11px] uppercase tracking-[0.08em]
|
|
4
4
|
font-mono text-[var(--sig-accent)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as n,s as d,c as h,f as c,a as i,n as l,b as m,d as f,r as v}from"./BvuHLZ8E.js";import{I as u}from"./
|
|
1
|
+
import{p as n,s as d,c as h,f as c,a as i,n as l,b as m,d as f,r as v}from"./BvuHLZ8E.js";import{I as u}from"./NhdsKQha.js";function g(t,a){n(a,!0);let e=v(a,["$$slots","$$events","$$legacy"]);const o=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];u(t,d({name:"trash-2"},()=>e,{get iconNode(){return o},children:(r,$)=>{var s=h(),p=c(s);i(p,()=>a.children??l),m(r,s)},$$slots:{default:!0}})),f()}export{g as T};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p,s as c,c as d,f as l,a as i,n as f,b as m,d as h,r as u}from"./BvuHLZ8E.js";import{I as $}from"./
|
|
1
|
+
import{p,s as c,c as d,f as l,a as i,n as f,b as m,d as h,r as u}from"./BvuHLZ8E.js";import{I as $}from"./NhdsKQha.js";function C(o,e){p(e,!0);let t=u(e,["$$slots","$$events","$$legacy"]);const r=[["path",{d:"m15 18-6-6 6-6"}]];$(o,c({name:"chevron-left"},()=>t,{get iconNode(){return r},children:(a,v)=>{var s=d(),n=l(s);i(n,()=>e.children??f),m(a,s)},$$slots:{default:!0}})),h()}export{C};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as wt,g as $t,c as Fe,f as M,h as T,ah as Ht,s as Jt,i as e,b as r,d as kt,r as Ot,u as V,Q as Rt,v,w as x,x as m,y as b,z as p,t as o,k as E,j as c,l as d,N as Bt,o as ve,A as Ke,m as f,G as Ut,a as Yt,n as Qt,H as Xt,$ as Zt,K as at,ai as er,aj as tr}from"./BvuHLZ8E.js";import{c as Wt,W as rr,Y as ar,Z as sr,_ as or,B as Me,$ as nr,a0 as ir,a1 as lr,a2 as dr,H as l,a3 as Ft,a4 as ft,A as qt,a5 as cr,a6 as vr,a7 as ur,n as Dt,a8 as gr,h as fr,i as pr,a9 as jt,aa as mr,C as xr}from"./
|
|
1
|
+
import{p as wt,g as $t,c as Fe,f as M,h as T,ah as Ht,s as Jt,i as e,b as r,d as kt,r as Ot,u as V,Q as Rt,v,w as x,x as m,y as b,z as p,t as o,k as E,j as c,l as d,N as Bt,o as ve,A as Ke,m as f,G as Ut,a as Yt,n as Qt,H as Xt,$ as Zt,K as at,ai as er,aj as tr}from"./BvuHLZ8E.js";import{c as Wt,W as rr,Y as ar,Z as sr,_ as or,B as Me,$ as nr,a0 as ir,a1 as lr,a2 as dr,H as l,a3 as Ft,a4 as ft,A as qt,a5 as cr,a6 as vr,a7 as ur,n as Dt,a8 as gr,h as fr,i as pr,a9 as jt,aa as mr,C as xr}from"./NhdsKQha.js";import{P as _r}from"./BEjeM6IF.js";import{T as hr}from"./Cz09eUOk.js";import{I as st}from"./CK-mjAr4.js";import{L as Be}from"./CGe-rHTx.js";import{c as Vt,S as Gt,a as Kt,b as pt}from"./CFBvGnYK.js";import{S as Lt}from"./mOMJ49-u.js";import{T as Et}from"./J-_Q6WCI.js";import{B as Te}from"./DERA2GQ9.js";import{C as br,a as yr}from"./CdKQpuPU.js";import{a as Mt,C as Nt}from"./CY-FUYpe.js";import{C as zt}from"./BkBb1aEv.js";import{b as $r,P as wr,a as kr}from"./BumkZmzx.js";function Pr(He,_){wt(_,!0);let D=$t(_,"ref",15,null),be=$t(_,"data-slot",3,"separator"),B=Ot(_,["$$slots","$$events","$$legacy","ref","class","data-slot"]);var Q=Fe(),ee=M(Q);{let ke=V(()=>Wt("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:min-h-full data-[orientation=vertical]:w-px",_.class));T(ee,()=>Ht,(se,oe)=>{oe(se,Jt({get"data-slot"(){return be()},get class(){return e(ke)}},()=>B,{get ref(){return D()},set ref(Ae){D(Ae)}}))})}r(He,Q),kt()}var Sr=f("<!> <!>",1),Ir=f("<!> <!> <!>",1),Cr=f("<!> <!>",1),Tr=f('<div class="flex flex-col gap-1"><!> <!></div>'),Ar=f('Reason for change <span class="text-[var(--sig-accent)]">*</span>',1),Dr=f('<div class="flex flex-col gap-1"><!> <!></div> <div class="grid grid-cols-2 gap-3"><div class="flex flex-col gap-1"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div></div> <!> <div class="flex flex-col gap-1"><!> <!></div> <div class="flex items-center justify-between"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div>',1),Er=f('<span class="px-1.5 py-px border border-[var(--sig-border-strong)]"> </span>'),Mr=f(`This memory is <strong>pinned</strong>. Deleting it requires
|
|
2
2
|
force, which removes it permanently from search results.`,1),Nr=f('<div class="flex items-center gap-2"><!> <!></div>'),zr=f('Reason for deletion <span class="text-[var(--sig-accent)]">*</span>',1),Fr=f(`<div class="flex flex-col gap-2 p-3 border border-[var(--sig-border-strong)]
|
|
3
3
|
bg-[var(--sig-surface-raised)]"><p class="m-0 text-[var(--sig-text-bright)] text-[11px]
|
|
4
4
|
leading-[1.5] whitespace-pre-wrap break-words"> </p> <div class="flex flex-wrap gap-1 text-[9px]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as d,s as p,c,f as l,a as h,n as i,b as m,d as $,r as u}from"./BvuHLZ8E.js";import{I as f}from"./
|
|
1
|
+
import{p as d,s as p,c,f as l,a as h,n as i,b as m,d as $,r as u}from"./BvuHLZ8E.js";import{I as f}from"./NhdsKQha.js";function _(t,a){d(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const s=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z"}]];f(t,p({name:"wrench"},()=>o,{get iconNode(){return s},children:(r,v)=>{var e=c(),n=l(e);h(n,()=>a.children??i),m(r,e)},$$slots:{default:!0}})),$()}function N(t,a){d(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const s=[["path",{d:"M12 2v4"}],["path",{d:"m16.2 7.8 2.9-2.9"}],["path",{d:"M18 12h4"}],["path",{d:"m16.2 16.2 2.9 2.9"}],["path",{d:"M12 18v4"}],["path",{d:"m4.9 19.1 2.9-2.9"}],["path",{d:"M2 12h4"}],["path",{d:"m4.9 4.9 2.9 2.9"}]];f(t,p({name:"loader"},()=>o,{get iconNode(){return s},children:(r,v)=>{var e=c(),n=l(e);h(n,()=>a.children??i),m(r,e)},$$slots:{default:!0}})),$()}export{N as L,_ as W};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as he,g as De,t as i,j as s,l as t,w as ge,A as Ne,y as W,z as N,i as e,a9 as Oe,b as p,K as Re,d as me,u as h,m as x,s as Le,c as Ge,f as Ie,a as Ye,n as Xe,r as He,o as $,e as fe,q as Ue,v as O,k as Se,O as Ee,D as $e,B as Pe,ag as nt,P as Be,h as Ce,as as rt,Q as it,x as lt,G as Ve,H as ot}from"./BvuHLZ8E.js";import{I as Je,O as vt,a as Qe,aM as dt,n as ct,aN as ut,o as Ze,B as pt,aO as We,t as Ae,F as gt,aP as ft,aQ as ht,ax as mt}from"./CtDFYHZq.js";import{F as _t}from"./CbgpCpH5.js";import{P as xt,a as yt,b as bt}from"./DoWs5OiX.js";import{T as St}from"./Cy-z7zd0.js";import{R as Et}from"./DVt5q-P0.js";function et(y){return y.trim()||"default"}function Nt(y,n,r){const c=new URLSearchParams({agent_id:et(r),include_self:"true",limit:String(n)});return`${y}/api/cross-agent/presence?${c.toString()}`}function tt(y,n){const r=et(n);return y.filter(c=>c.agentId===r)}function kt(y,n){const r=tt(y,n).filter(c=>!Number.isNaN(new Date(c.lastSeenAt).getTime()));return r.length===0?null:[...r].sort((c,f)=>new Date(f.lastSeenAt).getTime()-new Date(c.lastSeenAt).getTime())[0]??null}async function wt(y,n,r){try{const c=await fetch(Nt(y,n,r));if(!c.ok)return[];const f=await c.json();return tt(f.sessions??[],r)}catch{return[]}}var At=x('<div class="data-row svelte-1j3peig"><span class="data-idx svelte-1j3peig"> </span> <span class="data-label svelte-1j3peig"> </span> <span class="data-fill svelte-1j3peig"></span> <span class="data-value svelte-1j3peig"> </span></div>'),Tt=x('<div class="data-row svelte-1j3peig"><span class="data-idx svelte-1j3peig"> </span> <span class="data-label svelte-1j3peig"> </span> <span class="data-fill svelte-1j3peig"></span> <span class="data-value svelte-1j3peig"> </span></div>'),Mt=x('<div class="readout sig-panel svelte-1j3peig"><div class="readout-texture svelte-1j3peig" aria-hidden="true"></div> <div class="readout-content svelte-1j3peig"><div class="readout-eyebrow svelte-1j3peig"><span class="eyebrow-left svelte-1j3peig">SIGNET AGENT READOUT</span> <span class="eyebrow-right svelte-1j3peig"> </span></div> <div class="readout-hero svelte-1j3peig"><h1 class="agent-name svelte-1j3peig"> </h1> <div class="hero-stat svelte-1j3peig"><span class="hero-number svelte-1j3peig"> </span> <span class="hero-unit svelte-1j3peig">MEMORIES<br/>STORED</span></div></div> <div class="readout-divider sig-groove svelte-1j3peig" aria-hidden="true"></div> <div class="readout-grid svelte-1j3peig"><div class="readout-col svelte-1j3peig"></div> <div class="readout-col svelte-1j3peig"></div></div></div></div>');function jt(y,n){he(n,!0);const r=De(n,"diagnostics",3,null),c=De(n,"pipelineStatus",3,null),f=De(n,"memoryStats",3,null),A=h(()=>{const m=n.daemonStatus?.agentCreatedAt;if(!m)return null;const S=new Date(m).getTime();return Number.isNaN(S)?null:Math.max(0,Math.floor((Date.now()-S)/864e5))}),b=h(()=>e(A)===null?"--":e(A)===0?"TODAY":e(A)===1?"1 DAY":`${e(A)} DAYS`),D=h(()=>n.daemonStatus?.activeSessions??0),M=h(()=>n.daemonStatus?.version??"--"),I=h(()=>kt(n.presence,n.agentId)),P=h(()=>{if(n.continuity.length===0)return null;const m=n.continuity.filter(E=>!Number.isNaN(new Date(E.created_at).getTime()));return m.length===0?null:[...m].sort((E,k)=>new Date(k.created_at).getTime()-new Date(E.created_at).getTime())[0]});function Y(m){const S=Date.now()-new Date(m).getTime(),E=Math.floor(S/6e4);if(E<1)return"JUST NOW";if(E<60)return`${E}M AGO`;const k=Math.floor(E/60);return k<24?`${k}H AGO`:`${Math.floor(k/24)}D AGO`}const X=h(()=>e(I)?.project??e(P)?.project??null),re=h(()=>e(I)?.lastSeenAt??e(P)?.created_at??null),J=h(()=>e(X)?.replace(/\/$/,"").split("/").pop()??"--"),B=h(()=>e(re)?Y(e(re)):"--"),Q=h(()=>n.identity.name?.trim()||"SIGNET AGENT"),H=h(()=>r()?.composite?.score??null),l=h(()=>r()?.composite?.status??"UNKNOWN"),_=h(()=>r()?.index?.embeddingCoverage!==void 0?Math.round(r().index.embeddingCoverage*100):!f()||f().total===0?null:Math.round(f().withEmbeddings/f().total*100)),j=h(()=>c()?typeof c().mode=="string"?c().mode.toUpperCase():"ACTIVE":"UNKNOWN"),R=h(()=>{if(!r())return 0;let m=0;const S=["queue","storage","index","provider","connector","predictor"];for(const E of S){const k=r()[E];if(k&&typeof k=="object"&&"status"in k){const se=k.status;(se==="degraded"||se==="unhealthy")&&m++}}return m});function q(m){return m===null?"var(--sig-text-muted)":m>=.8?"var(--sig-success)":m>=.5?"var(--sig-warning)":"var(--sig-danger)"}const oe=h(()=>[{idx:"01",label:"UPTIME",value:e(b)},{idx:"02",label:"PROJECT",value:e(J)},{idx:"03",label:"LAST SEEN",value:e(B)},{idx:"04",label:"CONNECTORS",value:String(n.connectorCount)},{idx:"05",label:"SESSIONS",value:String(e(D))}]),Z=h(()=>[{idx:"06",label:"HEALTH",value:e(H)!==null?`${e(H).toFixed(2)} ${e(l).toUpperCase()}`:"--",color:q(e(H))},{idx:"07",label:"EMBEDDED",value:e(_)!==null?`${e(_)}%`:"--"},{idx:"08",label:"PIPELINE",value:e(j)},{idx:"09",label:"WARNINGS",value:String(e(R)),color:e(R)>0?"var(--sig-danger)":void 0}]);var o=Mt(),C=i(s(o),2),d=s(C),U=i(s(d),2),a=s(U);t(U),t(d);var v=i(d,2),u=s(v),g=s(u,!0);t(u);var F=i(u,2),z=s(F),ee=s(z,!0);t(z),ge(2),t(F),t(v);var K=i(v,4),te=s(K);Ne(te,21,()=>e(oe),Re,(m,S)=>{var E=At(),k=s(E),se=s(k,!0);t(k);var V=i(k,2),ie=s(V,!0);t(V);var ae=i(V,4),w=s(ae,!0);t(ae),t(E),W(()=>{N(se,e(S).idx),N(ie,e(S).label),Oe(ae,e(S).color?`color: ${e(S).color}`:""),N(w,e(S).value)}),p(m,E)}),t(te);var de=i(te,2);Ne(de,21,()=>e(Z),Re,(m,S)=>{var E=Tt(),k=s(E),se=s(k,!0);t(k);var V=i(k,2),ie=s(V,!0);t(V);var ae=i(V,4),w=s(ae,!0);t(ae),t(E),W(()=>{N(se,e(S).idx),N(ie,e(S).label),Oe(ae,e(S).color?`color: ${e(S).color}`:""),N(w,e(S).value)}),p(m,E)}),t(de),t(K),t(C),t(o),W(m=>{N(a,`v${e(M)??""}`),N(g,e(Q)),N(ee,m)},[()=>n.memoryCount.toLocaleString()]),p(y,o),me()}function Ct(y,n){he(n,!0);let r=He(n,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]];Je(y,Le({name:"file-text"},()=>r,{get iconNode(){return c},children:(f,A)=>{var b=Ge(),D=Ie(b);Ye(D,()=>n.children??Xe),p(f,b)},$$slots:{default:!0}})),me()}var Ot=x('<div class="empty-state svelte-18r587h">SCANNING SOURCE MANIFEST...</div>'),It=nt('<line x1="50" y1="50"></line>'),qt=x('<div class="kb-solo-note svelte-18r587h"><span class="svelte-18r587h">NO EXTERNAL SOURCES CONNECTED</span> <small class="svelte-18r587h">Connect Obsidian or documents to extend recall provenance.</small></div>'),Dt=x('<img src="/logo-dark.png" alt="" class="kb-signet-logo svelte-18r587h" aria-hidden="true"/>'),Pt=x('<button type="button"><span class="kb-node-icon svelte-18r587h"><!></span> <span class="kb-node-copy svelte-18r587h"><strong class="svelte-18r587h"> </strong> <small class="svelte-18r587h"> </small></span></button>'),Rt=x('<div><div class="kb-origin-ring svelte-18r587h" aria-hidden="true"></div> <button type="button" class="kb-core svelte-18r587h"><span class="kb-core-mark svelte-18r587h"><img src="/logo-dark.png" alt="" class="kb-signet-logo svelte-18r587h" aria-hidden="true"/></span> <span class="kb-core-copy svelte-18r587h"><strong class="svelte-18r587h">Signet Memory</strong> <small class="svelte-18r587h">native identity graph · always on</small></span></button> <svg class="kb-links svelte-18r587h" viewBox="0 0 100 100" preserveAspectRatio="none" aria-hidden="true"></svg> <!> <!></div> <div class="kb-footer svelte-18r587h"><div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">ACTIVE</small></div> <div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">EXTERNAL</small></div> <div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">CONNECTORS</small></div> <div class="kb-last svelte-18r587h"><span class="svelte-18r587h">LAST EXTERNAL INDEX</span> <small class="svelte-18r587h"> </small></div></div>',1),$t=x('<div class="kb-panel sig-panel svelte-18r587h"><div class="kb-header sig-panel-header svelte-18r587h"><div><span class="kb-title svelte-18r587h">CONNECTED KNOWLEDGE BASES</span> <span class="kb-subtitle svelte-18r587h">PROVENANCE GRAPH / LIVE SOURCES</span></div> <button type="button" class="kb-open svelte-18r587h"><!> <span>MANAGE</span></button></div> <!></div>');function Lt(y,n){he(n,!0);const r=[{x:18,y:72},{x:73,y:24},{x:80,y:72},{x:22,y:24},{x:88,y:48}];let c=$(!1),f=$(fe([])),A=$(fe([]));Ue(async()=>{const o=await Promise.allSettled([vt(),Qe()]);o[0].status==="fulfilled"&&O(f,o[0].value,!0),o[1].status==="fulfilled"&&O(A,o[1].value,!0),O(c,!0)});const b=h(()=>{const o=e(f).map((d,U)=>({id:`source:${d.id}`,name:d.name||re(d.root),kind:"source",provider:d.kind,detail:d.root,status:d.enabled?d.lastIndexedAt||(d.stats?.indexed??0)>0?"online":"syncing":"offline",updatedAt:d.lastIndexedAt??d.updatedAt??null,...r[U%r.length]})),C=e(A).map((d,U)=>({id:`connector:${d.id}`,name:d.display_name||d.provider,kind:"connector",provider:d.provider,detail:d.last_error??`${d.provider} document connector`,status:X(d),updatedAt:d.last_sync_at??d.updated_at??null,...r[(o.length+U)%r.length]}));return[...o,...C].slice(0,r.length)}),D=h(()=>1+e(b).filter(o=>o.status==="online").length),M=h(()=>1+e(b).length),I=h(()=>e(f).length),P=h(()=>e(A).length),Y=h(()=>e(I)+e(P));function X(o){return o.last_error?"warning":o.status==="syncing"?"syncing":o.status==="connected"||o.status==="active"||o.status==="ok"||o.status?"online":"offline"}function re(o){return o.split(/[\\/]/).filter(Boolean).at(-1)??"Knowledge base"}function J(o,C){return C?.kind==="memory"?"always on":o==="online"?"indexed":o==="syncing"?"syncing":o==="warning"?"attention":"offline"}function B(o){return o.kind==="memory"?"Signet":o.kind==="source"&&o.provider==="obsidian"?"Obsidian":o.provider.replace(/[-_]/g," ")}function Q(o){if(!o)return"not indexed yet";const C=new Date(o);return Number.isNaN(C.getTime())?"unknown":new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(C)}function H(){ct.activeTab="sources"}var l=$t(),_=s(l),j=i(s(_),2),R=s(j);dt(R,{class:"size-3"}),ge(2),t(j),t(_);var q=i(_,2);{var oe=o=>{var C=Ot();p(o,C)},Z=o=>{var C=Rt(),d=Ie(C);let U;var a=i(s(d),2),v=i(a,2);Ne(v,21,()=>e(b),w=>w.id,(w,T)=>{var L=It();let _e;W(()=>{$e(L,"x2",e(T).x),$e(L,"y2",e(T).y),_e=Pe(L,0,"svelte-18r587h",null,_e,{"link-muted":e(T).status!=="online"})}),p(w,L)}),t(v);var u=i(v,2);{var g=w=>{var T=qt();p(w,T)};Se(u,w=>{e(b).length===0&&w(g)})}var F=i(u,2);Ne(F,17,()=>e(b),w=>w.id,(w,T)=>{var L=Pt();let _e;var ne=s(L),ve=s(ne);{var xe=G=>{var le=Dt();p(G,le)},ke=G=>{_t(G,{class:"size-3.5"})},ce=G=>{Ct(G,{class:"size-3.5"})};Se(ve,G=>{e(T).kind==="memory"?G(xe):e(T).kind==="source"?G(ke,1):G(ce,-1)})}t(ne);var ye=i(ne,2),Te=s(ye),Me=s(Te,!0);t(Te);var ue=i(Te,2),be=s(ue);t(ue),t(ye),t(L),W((G,le)=>{_e=Pe(L,1,"kb-node svelte-18r587h",null,_e,{"kb-node--memory":e(T).kind==="memory","kb-node--source":e(T).kind==="source","kb-node--warning":e(T).status==="warning","kb-node--offline":e(T).status==="offline"}),Oe(L,`left: ${e(T).x??""}%; top: ${e(T).y??""}%;`),N(Me,e(T).name),N(be,`${G??""} · ${le??""}`)},[()=>B(e(T)),()=>J(e(T).status,e(T))]),Ee("click",L,H),p(w,L)}),t(d);var z=i(d,2),ee=s(z),K=s(ee),te=s(K);t(K),ge(2),t(ee);var de=i(ee,2),m=s(de),S=s(m,!0);t(m),ge(2),t(de);var E=i(de,2),k=s(E),se=s(k,!0);t(k),ge(2),t(E);var V=i(E,2),ie=i(s(V),2),ae=s(ie,!0);t(ie),t(V),t(z),W(w=>{U=Pe(d,1,"kb-visual svelte-18r587h",null,U,{"kb-visual--solo":e(b).length===0}),N(te,`${e(D)??""}/${e(M)??""}`),N(S,e(Y)),N(se,e(P)),N(ae,w)},[()=>Q(e(b).find(w=>w.updatedAt)?.updatedAt??null)]),Ee("click",a,H),p(o,C)};Se(q,o=>{!e(c)&&e(M)===0?o(oe):o(Z,-1)})}t(l),Ee("click",j,H),p(y,l),me()}Be(["click"]);function Gt(y,n){he(n,!0);let r=He(n,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M12 18V5"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77"}]];Je(y,Le({name:"brain"},()=>r,{get iconNode(){return c},children:(f,A)=>{var b=Ge(),D=Ie(b);Ye(D,()=>n.children??Xe),p(f,b)},$$slots:{default:!0}})),me()}var Ht=x('<div class="empty-state svelte-1qexx7n">LOADING</div>'),Ut=x('<div class="empty-state svelte-1qexx7n"><!> <span>NO MEMORIES YET</span></div>'),Bt=x('<span class="entity-count svelte-1qexx7n" title="times recalled"> </span>'),Ft=x('<div class="entity-row svelte-1qexx7n"><span class="entity-idx svelte-1qexx7n"> </span> <span class="entity-dot svelte-1qexx7n"></span> <span class="entity-name svelte-1qexx7n"> </span> <!></div>'),zt=x('<div class="entity-list svelte-1qexx7n"></div>'),Kt=x('<div class="panel sig-panel svelte-1qexx7n"><div class="panel-header sig-panel-header svelte-1qexx7n"><span class="panel-title svelte-1qexx7n">SPOTLIGHT</span> <span class="panel-count svelte-1qexx7n"> </span></div> <div class="panel-body svelte-1qexx7n"><!></div> <div class="panel-footer sig-panel-footer svelte-1qexx7n"><button class="panel-link svelte-1qexx7n">VIEW IN MEMORY</button></div></div>');function Vt(y,n){he(n,!0);let r=$(fe([])),c=$(!1);async function f(){try{const l=await fetch(`${Ze}/api/memories/most-used?limit=50`);if(l.ok){const R=((await l.json()).memories??[]).filter(q=>typeof q.id=="string"&&q.id.length>0&&typeof q.content=="string").map(q=>({id:q.id,content:q.content??"",access_count:q.access_count??0,importance:q.importance??.5}));if(R.length>0){O(r,R,!0),O(c,!0);return}}}catch{}O(r,n.memories.map(l=>({id:l.id,content:l.content,access_count:0,importance:l.importance??.5})).sort((l,_)=>_.importance-l.importance).slice(0,50),!0),O(c,!0)}Ue(()=>{f()});function A(l){const _=l.content.trim(),j=_.split(`
|
|
1
|
+
import{p as he,g as De,t as i,j as s,l as t,w as ge,A as Ne,y as W,z as N,i as e,a9 as Oe,b as p,K as Re,d as me,u as h,m as x,s as Le,c as Ge,f as Ie,a as Ye,n as Xe,r as He,o as $,e as fe,q as Ue,v as O,k as Se,O as Ee,D as $e,B as Pe,ag as nt,P as Be,h as Ce,as as rt,Q as it,x as lt,G as Ve,H as ot}from"./BvuHLZ8E.js";import{I as Je,O as vt,a as Qe,aM as dt,n as ct,aN as ut,o as Ze,B as pt,aO as We,t as Ae,F as gt,aP as ft,aQ as ht,ax as mt}from"./NhdsKQha.js";import{F as _t}from"./Cel4-oLV.js";import{P as xt,a as yt,b as bt}from"./BumkZmzx.js";import{T as St}from"./J-_Q6WCI.js";import{R as Et}from"./LaAecoqm.js";function et(y){return y.trim()||"default"}function Nt(y,n,r){const c=new URLSearchParams({agent_id:et(r),include_self:"true",limit:String(n)});return`${y}/api/cross-agent/presence?${c.toString()}`}function tt(y,n){const r=et(n);return y.filter(c=>c.agentId===r)}function kt(y,n){const r=tt(y,n).filter(c=>!Number.isNaN(new Date(c.lastSeenAt).getTime()));return r.length===0?null:[...r].sort((c,f)=>new Date(f.lastSeenAt).getTime()-new Date(c.lastSeenAt).getTime())[0]??null}async function wt(y,n,r){try{const c=await fetch(Nt(y,n,r));if(!c.ok)return[];const f=await c.json();return tt(f.sessions??[],r)}catch{return[]}}var At=x('<div class="data-row svelte-1j3peig"><span class="data-idx svelte-1j3peig"> </span> <span class="data-label svelte-1j3peig"> </span> <span class="data-fill svelte-1j3peig"></span> <span class="data-value svelte-1j3peig"> </span></div>'),Tt=x('<div class="data-row svelte-1j3peig"><span class="data-idx svelte-1j3peig"> </span> <span class="data-label svelte-1j3peig"> </span> <span class="data-fill svelte-1j3peig"></span> <span class="data-value svelte-1j3peig"> </span></div>'),Mt=x('<div class="readout sig-panel svelte-1j3peig"><div class="readout-texture svelte-1j3peig" aria-hidden="true"></div> <div class="readout-content svelte-1j3peig"><div class="readout-eyebrow svelte-1j3peig"><span class="eyebrow-left svelte-1j3peig">SIGNET AGENT READOUT</span> <span class="eyebrow-right svelte-1j3peig"> </span></div> <div class="readout-hero svelte-1j3peig"><h1 class="agent-name svelte-1j3peig"> </h1> <div class="hero-stat svelte-1j3peig"><span class="hero-number svelte-1j3peig"> </span> <span class="hero-unit svelte-1j3peig">MEMORIES<br/>STORED</span></div></div> <div class="readout-divider sig-groove svelte-1j3peig" aria-hidden="true"></div> <div class="readout-grid svelte-1j3peig"><div class="readout-col svelte-1j3peig"></div> <div class="readout-col svelte-1j3peig"></div></div></div></div>');function jt(y,n){he(n,!0);const r=De(n,"diagnostics",3,null),c=De(n,"pipelineStatus",3,null),f=De(n,"memoryStats",3,null),A=h(()=>{const m=n.daemonStatus?.agentCreatedAt;if(!m)return null;const S=new Date(m).getTime();return Number.isNaN(S)?null:Math.max(0,Math.floor((Date.now()-S)/864e5))}),b=h(()=>e(A)===null?"--":e(A)===0?"TODAY":e(A)===1?"1 DAY":`${e(A)} DAYS`),D=h(()=>n.daemonStatus?.activeSessions??0),M=h(()=>n.daemonStatus?.version??"--"),I=h(()=>kt(n.presence,n.agentId)),P=h(()=>{if(n.continuity.length===0)return null;const m=n.continuity.filter(E=>!Number.isNaN(new Date(E.created_at).getTime()));return m.length===0?null:[...m].sort((E,k)=>new Date(k.created_at).getTime()-new Date(E.created_at).getTime())[0]});function Y(m){const S=Date.now()-new Date(m).getTime(),E=Math.floor(S/6e4);if(E<1)return"JUST NOW";if(E<60)return`${E}M AGO`;const k=Math.floor(E/60);return k<24?`${k}H AGO`:`${Math.floor(k/24)}D AGO`}const X=h(()=>e(I)?.project??e(P)?.project??null),re=h(()=>e(I)?.lastSeenAt??e(P)?.created_at??null),J=h(()=>e(X)?.replace(/\/$/,"").split("/").pop()??"--"),B=h(()=>e(re)?Y(e(re)):"--"),Q=h(()=>n.identity.name?.trim()||"SIGNET AGENT"),H=h(()=>r()?.composite?.score??null),l=h(()=>r()?.composite?.status??"UNKNOWN"),_=h(()=>r()?.index?.embeddingCoverage!==void 0?Math.round(r().index.embeddingCoverage*100):!f()||f().total===0?null:Math.round(f().withEmbeddings/f().total*100)),j=h(()=>c()?typeof c().mode=="string"?c().mode.toUpperCase():"ACTIVE":"UNKNOWN"),R=h(()=>{if(!r())return 0;let m=0;const S=["queue","storage","index","provider","connector","predictor"];for(const E of S){const k=r()[E];if(k&&typeof k=="object"&&"status"in k){const se=k.status;(se==="degraded"||se==="unhealthy")&&m++}}return m});function q(m){return m===null?"var(--sig-text-muted)":m>=.8?"var(--sig-success)":m>=.5?"var(--sig-warning)":"var(--sig-danger)"}const oe=h(()=>[{idx:"01",label:"UPTIME",value:e(b)},{idx:"02",label:"PROJECT",value:e(J)},{idx:"03",label:"LAST SEEN",value:e(B)},{idx:"04",label:"CONNECTORS",value:String(n.connectorCount)},{idx:"05",label:"SESSIONS",value:String(e(D))}]),Z=h(()=>[{idx:"06",label:"HEALTH",value:e(H)!==null?`${e(H).toFixed(2)} ${e(l).toUpperCase()}`:"--",color:q(e(H))},{idx:"07",label:"EMBEDDED",value:e(_)!==null?`${e(_)}%`:"--"},{idx:"08",label:"PIPELINE",value:e(j)},{idx:"09",label:"WARNINGS",value:String(e(R)),color:e(R)>0?"var(--sig-danger)":void 0}]);var o=Mt(),C=i(s(o),2),d=s(C),U=i(s(d),2),a=s(U);t(U),t(d);var v=i(d,2),u=s(v),g=s(u,!0);t(u);var F=i(u,2),z=s(F),ee=s(z,!0);t(z),ge(2),t(F),t(v);var K=i(v,4),te=s(K);Ne(te,21,()=>e(oe),Re,(m,S)=>{var E=At(),k=s(E),se=s(k,!0);t(k);var V=i(k,2),ie=s(V,!0);t(V);var ae=i(V,4),w=s(ae,!0);t(ae),t(E),W(()=>{N(se,e(S).idx),N(ie,e(S).label),Oe(ae,e(S).color?`color: ${e(S).color}`:""),N(w,e(S).value)}),p(m,E)}),t(te);var de=i(te,2);Ne(de,21,()=>e(Z),Re,(m,S)=>{var E=Tt(),k=s(E),se=s(k,!0);t(k);var V=i(k,2),ie=s(V,!0);t(V);var ae=i(V,4),w=s(ae,!0);t(ae),t(E),W(()=>{N(se,e(S).idx),N(ie,e(S).label),Oe(ae,e(S).color?`color: ${e(S).color}`:""),N(w,e(S).value)}),p(m,E)}),t(de),t(K),t(C),t(o),W(m=>{N(a,`v${e(M)??""}`),N(g,e(Q)),N(ee,m)},[()=>n.memoryCount.toLocaleString()]),p(y,o),me()}function Ct(y,n){he(n,!0);let r=He(n,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]];Je(y,Le({name:"file-text"},()=>r,{get iconNode(){return c},children:(f,A)=>{var b=Ge(),D=Ie(b);Ye(D,()=>n.children??Xe),p(f,b)},$$slots:{default:!0}})),me()}var Ot=x('<div class="empty-state svelte-18r587h">SCANNING SOURCE MANIFEST...</div>'),It=nt('<line x1="50" y1="50"></line>'),qt=x('<div class="kb-solo-note svelte-18r587h"><span class="svelte-18r587h">NO EXTERNAL SOURCES CONNECTED</span> <small class="svelte-18r587h">Connect Obsidian or documents to extend recall provenance.</small></div>'),Dt=x('<img src="/logo-dark.png" alt="" class="kb-signet-logo svelte-18r587h" aria-hidden="true"/>'),Pt=x('<button type="button"><span class="kb-node-icon svelte-18r587h"><!></span> <span class="kb-node-copy svelte-18r587h"><strong class="svelte-18r587h"> </strong> <small class="svelte-18r587h"> </small></span></button>'),Rt=x('<div><div class="kb-origin-ring svelte-18r587h" aria-hidden="true"></div> <button type="button" class="kb-core svelte-18r587h"><span class="kb-core-mark svelte-18r587h"><img src="/logo-dark.png" alt="" class="kb-signet-logo svelte-18r587h" aria-hidden="true"/></span> <span class="kb-core-copy svelte-18r587h"><strong class="svelte-18r587h">Signet Memory</strong> <small class="svelte-18r587h">native identity graph · always on</small></span></button> <svg class="kb-links svelte-18r587h" viewBox="0 0 100 100" preserveAspectRatio="none" aria-hidden="true"></svg> <!> <!></div> <div class="kb-footer svelte-18r587h"><div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">ACTIVE</small></div> <div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">EXTERNAL</small></div> <div class="kb-stat svelte-18r587h"><span class="svelte-18r587h"> </span> <small class="svelte-18r587h">CONNECTORS</small></div> <div class="kb-last svelte-18r587h"><span class="svelte-18r587h">LAST EXTERNAL INDEX</span> <small class="svelte-18r587h"> </small></div></div>',1),$t=x('<div class="kb-panel sig-panel svelte-18r587h"><div class="kb-header sig-panel-header svelte-18r587h"><div><span class="kb-title svelte-18r587h">CONNECTED KNOWLEDGE BASES</span> <span class="kb-subtitle svelte-18r587h">PROVENANCE GRAPH / LIVE SOURCES</span></div> <button type="button" class="kb-open svelte-18r587h"><!> <span>MANAGE</span></button></div> <!></div>');function Lt(y,n){he(n,!0);const r=[{x:18,y:72},{x:73,y:24},{x:80,y:72},{x:22,y:24},{x:88,y:48}];let c=$(!1),f=$(fe([])),A=$(fe([]));Ue(async()=>{const o=await Promise.allSettled([vt(),Qe()]);o[0].status==="fulfilled"&&O(f,o[0].value,!0),o[1].status==="fulfilled"&&O(A,o[1].value,!0),O(c,!0)});const b=h(()=>{const o=e(f).map((d,U)=>({id:`source:${d.id}`,name:d.name||re(d.root),kind:"source",provider:d.kind,detail:d.root,status:d.enabled?d.lastIndexedAt||(d.stats?.indexed??0)>0?"online":"syncing":"offline",updatedAt:d.lastIndexedAt??d.updatedAt??null,...r[U%r.length]})),C=e(A).map((d,U)=>({id:`connector:${d.id}`,name:d.display_name||d.provider,kind:"connector",provider:d.provider,detail:d.last_error??`${d.provider} document connector`,status:X(d),updatedAt:d.last_sync_at??d.updated_at??null,...r[(o.length+U)%r.length]}));return[...o,...C].slice(0,r.length)}),D=h(()=>1+e(b).filter(o=>o.status==="online").length),M=h(()=>1+e(b).length),I=h(()=>e(f).length),P=h(()=>e(A).length),Y=h(()=>e(I)+e(P));function X(o){return o.last_error?"warning":o.status==="syncing"?"syncing":o.status==="connected"||o.status==="active"||o.status==="ok"||o.status?"online":"offline"}function re(o){return o.split(/[\\/]/).filter(Boolean).at(-1)??"Knowledge base"}function J(o,C){return C?.kind==="memory"?"always on":o==="online"?"indexed":o==="syncing"?"syncing":o==="warning"?"attention":"offline"}function B(o){return o.kind==="memory"?"Signet":o.kind==="source"&&o.provider==="obsidian"?"Obsidian":o.provider.replace(/[-_]/g," ")}function Q(o){if(!o)return"not indexed yet";const C=new Date(o);return Number.isNaN(C.getTime())?"unknown":new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(C)}function H(){ct.activeTab="sources"}var l=$t(),_=s(l),j=i(s(_),2),R=s(j);dt(R,{class:"size-3"}),ge(2),t(j),t(_);var q=i(_,2);{var oe=o=>{var C=Ot();p(o,C)},Z=o=>{var C=Rt(),d=Ie(C);let U;var a=i(s(d),2),v=i(a,2);Ne(v,21,()=>e(b),w=>w.id,(w,T)=>{var L=It();let _e;W(()=>{$e(L,"x2",e(T).x),$e(L,"y2",e(T).y),_e=Pe(L,0,"svelte-18r587h",null,_e,{"link-muted":e(T).status!=="online"})}),p(w,L)}),t(v);var u=i(v,2);{var g=w=>{var T=qt();p(w,T)};Se(u,w=>{e(b).length===0&&w(g)})}var F=i(u,2);Ne(F,17,()=>e(b),w=>w.id,(w,T)=>{var L=Pt();let _e;var ne=s(L),ve=s(ne);{var xe=G=>{var le=Dt();p(G,le)},ke=G=>{_t(G,{class:"size-3.5"})},ce=G=>{Ct(G,{class:"size-3.5"})};Se(ve,G=>{e(T).kind==="memory"?G(xe):e(T).kind==="source"?G(ke,1):G(ce,-1)})}t(ne);var ye=i(ne,2),Te=s(ye),Me=s(Te,!0);t(Te);var ue=i(Te,2),be=s(ue);t(ue),t(ye),t(L),W((G,le)=>{_e=Pe(L,1,"kb-node svelte-18r587h",null,_e,{"kb-node--memory":e(T).kind==="memory","kb-node--source":e(T).kind==="source","kb-node--warning":e(T).status==="warning","kb-node--offline":e(T).status==="offline"}),Oe(L,`left: ${e(T).x??""}%; top: ${e(T).y??""}%;`),N(Me,e(T).name),N(be,`${G??""} · ${le??""}`)},[()=>B(e(T)),()=>J(e(T).status,e(T))]),Ee("click",L,H),p(w,L)}),t(d);var z=i(d,2),ee=s(z),K=s(ee),te=s(K);t(K),ge(2),t(ee);var de=i(ee,2),m=s(de),S=s(m,!0);t(m),ge(2),t(de);var E=i(de,2),k=s(E),se=s(k,!0);t(k),ge(2),t(E);var V=i(E,2),ie=i(s(V),2),ae=s(ie,!0);t(ie),t(V),t(z),W(w=>{U=Pe(d,1,"kb-visual svelte-18r587h",null,U,{"kb-visual--solo":e(b).length===0}),N(te,`${e(D)??""}/${e(M)??""}`),N(S,e(Y)),N(se,e(P)),N(ae,w)},[()=>Q(e(b).find(w=>w.updatedAt)?.updatedAt??null)]),Ee("click",a,H),p(o,C)};Se(q,o=>{!e(c)&&e(M)===0?o(oe):o(Z,-1)})}t(l),Ee("click",j,H),p(y,l),me()}Be(["click"]);function Gt(y,n){he(n,!0);let r=He(n,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M12 18V5"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77"}]];Je(y,Le({name:"brain"},()=>r,{get iconNode(){return c},children:(f,A)=>{var b=Ge(),D=Ie(b);Ye(D,()=>n.children??Xe),p(f,b)},$$slots:{default:!0}})),me()}var Ht=x('<div class="empty-state svelte-1qexx7n">LOADING</div>'),Ut=x('<div class="empty-state svelte-1qexx7n"><!> <span>NO MEMORIES YET</span></div>'),Bt=x('<span class="entity-count svelte-1qexx7n" title="times recalled"> </span>'),Ft=x('<div class="entity-row svelte-1qexx7n"><span class="entity-idx svelte-1qexx7n"> </span> <span class="entity-dot svelte-1qexx7n"></span> <span class="entity-name svelte-1qexx7n"> </span> <!></div>'),zt=x('<div class="entity-list svelte-1qexx7n"></div>'),Kt=x('<div class="panel sig-panel svelte-1qexx7n"><div class="panel-header sig-panel-header svelte-1qexx7n"><span class="panel-title svelte-1qexx7n">SPOTLIGHT</span> <span class="panel-count svelte-1qexx7n"> </span></div> <div class="panel-body svelte-1qexx7n"><!></div> <div class="panel-footer sig-panel-footer svelte-1qexx7n"><button class="panel-link svelte-1qexx7n">VIEW IN MEMORY</button></div></div>');function Vt(y,n){he(n,!0);let r=$(fe([])),c=$(!1);async function f(){try{const l=await fetch(`${Ze}/api/memories/most-used?limit=50`);if(l.ok){const R=((await l.json()).memories??[]).filter(q=>typeof q.id=="string"&&q.id.length>0&&typeof q.content=="string").map(q=>({id:q.id,content:q.content??"",access_count:q.access_count??0,importance:q.importance??.5}));if(R.length>0){O(r,R,!0),O(c,!0);return}}}catch{}O(r,n.memories.map(l=>({id:l.id,content:l.content,access_count:0,importance:l.importance??.5})).sort((l,_)=>_.importance-l.importance).slice(0,50),!0),O(c,!0)}Ue(()=>{f()});function A(l){const _=l.content.trim(),j=_.split(`
|
|
2
2
|
`)[0]??_;return j.length>60?`${j.slice(0,57)}...`:j}function b(l){return l>=.8?"var(--sig-danger)":l>=.5?"var(--sig-warning)":"var(--sig-success)"}var D=Kt(),M=s(D),I=i(s(M),2),P=s(I);t(I),t(M);var Y=i(M,2),X=s(Y);{var re=l=>{var _=Ht();p(l,_)},J=l=>{var _=Ut(),j=s(_);Gt(j,{class:"empty-icon"}),ge(2),t(_),p(l,_)},B=l=>{var _=zt();Ne(_,23,()=>e(r),j=>j.id,(j,R,q)=>{var oe=Ft(),Z=s(oe),o=s(Z,!0);t(Z);var C=i(Z,2),d=i(C,2),U=s(d,!0);t(d);var a=i(d,2);{var v=u=>{var g=Bt(),F=s(g,!0);t(g),W(()=>N(F,e(R).access_count)),p(u,g)};Se(a,u=>{e(R).access_count>0&&u(v)})}t(oe),W((u,g,F)=>{N(o,u),Oe(C,`background: ${g??""}`),N(U,F)},[()=>String(e(q)+1).padStart(2,"0"),()=>b(e(R).importance),()=>A(e(R))]),p(j,oe)}),t(_),p(l,_)};Se(X,l=>{e(c)?e(r).length===0?l(J,1):l(B,-1):l(re)})}t(Y);var Q=i(Y,2),H=s(Q);t(Q),t(D),W(()=>N(P,`${e(r).length??""} RECALLED`)),Ee("click",H,()=>ut("cortex-memory")),p(y,D),me()}Be(["click"]);function Wt(y,n){he(n,!0);let r=De(n,"ref",15,null),c=He(n,["$$slots","$$events","$$legacy","ref"]);var f=Ge(),A=Ie(f);Ce(A,()=>rt,(b,D)=>{D(b,Le({"data-slot":"popover-close"},()=>c,{get ref(){return r()},set ref(M){r(M)}}))}),p(y,f),me()}var Yt=x('<div class="empty-state svelte-7r7fq6"><span>NO INSIGHTS TO CURATE</span></div>'),Xt=x('<span class="entry-tag svelte-7r7fq6"> </span>'),Jt=x('<div class="entry-tags svelte-7r7fq6"></div>'),Qt=x("<button>EDIT</button>"),Zt=x("<button>Cancel</button>"),es=x('<div class="edit-popover svelte-7r7fq6"><span class="sig-eyebrow">Correct memory</span> <!> <div class="flex justify-end gap-1 mt-1"><!> <!></div></div>'),ts=x("<!> <!>",1),ss=x('<div class="insight-entry svelte-7r7fq6"><div class="entry-top svelte-7r7fq6"><div class="entry-top-left svelte-7r7fq6"><span class="entry-idx svelte-7r7fq6"> </span> <span class="entry-dot svelte-7r7fq6"></span> <span class="entry-date svelte-7r7fq6"> </span></div> <!></div> <p class="entry-content svelte-7r7fq6"> </p> <div class="entry-actions svelte-7r7fq6"><button class="action-btn accept sig-switch svelte-7r7fq6">PIN</button> <button class="action-btn reject sig-switch svelte-7r7fq6">DISMISS</button> <!></div></div>'),as=x('<div class="insights-list svelte-7r7fq6"></div>'),ns=x('<div class="insights-panel sig-panel svelte-7r7fq6"><div class="insights-header sig-panel-header svelte-7r7fq6"><span class="insights-title svelte-7r7fq6">SUGGESTED INSIGHTS</span> <div class="insights-header-right svelte-7r7fq6"><span class="insights-count svelte-7r7fq6"> </span> <button class="refresh-btn sig-switch svelte-7r7fq6" title="Refresh suggestions"><!> <span>REFRESH</span></button></div></div> <!></div>');function rs(y,n){he(n,!0);let r=$(fe(new Set)),c=$(0),f=$(void 0),A=$(3);const b=90;function D(a){const u=Date.now()-new Date(a.created_at).getTime(),g=864e5,F=u<7*g?1:u<30*g?.5:.2,z=M(a.tags),ee=z.length===0?1:z.length<3?.6:.2,K=a.importance??.5,te=K>=.3&&K<=.7?1:.3;return F+ee+te}function M(a){return a?Array.isArray(a)?a.filter(Boolean):a.split(",").map(v=>v.trim()).filter(Boolean):[]}const I=h(()=>n.memories.filter(a=>!(e(r).has(a.id)||a.pinned||M(a.tags).includes("rejected-insight"))).map(a=>({memory:a,score:D(a)})).sort((a,v)=>v.score-a.score)),P=h(()=>{if(e(I).length===0)return[];const a=Math.min(e(A),e(I).length),v=e(c)%e(I).length;return Array.from({length:a},(u,g)=>e(I)[(v+g)%e(I).length].memory)});it(()=>{if(!e(f))return;const a=new ResizeObserver(v=>{const u=v[0]?.contentRect.height??0;O(A,Math.max(1,Math.floor(u/b)),!0)});return a.observe(e(f)),()=>a.disconnect()});function Y(a){return a>=.8?"var(--sig-danger)":a>=.5?"var(--sig-warning)":"var(--sig-success)"}function X(a){const v=new Date(a),u=v.toLocaleDateString("en-US",{month:"short"}).toUpperCase(),g=String(v.getDate()).padStart(2,"0");return`${u} ${g}`}async function re(a){const v=await gt(a.id,!0);v.success?(O(r,new Set([...e(r),a.id]),!0),Ae("Memory pinned","success")):Ae(v.error??"Failed to pin","error")}async function J(a){const v=M(a.tags);v.push("rejected-insight");const u=await We(a.id,{tags:v.join(",")},"dashboard: rejected insight");u.success?(O(r,new Set([...e(r),a.id]),!0),Ae("Memory dismissed","success")):Ae(u.error??"Failed to dismiss","error")}const B=fe({});function Q(a){B[a.id]=a.content}async function H(a){const v=B[a.id];if(!v||v===a.content)return;const u=await We(a.id,{content:v},"dashboard: corrected insight");u.success?(O(r,new Set([...e(r),a.id]),!0),Ae("Memory corrected","success")):Ae(u.error??"Failed to save","error")}function l(){O(c,(e(c)+e(A))%Math.max(1,e(I).length))}var _=ns(),j=s(_),R=i(s(j),2),q=s(R),oe=s(q);t(q);var Z=i(q,2),o=s(Z);Et(o,{class:"refresh-icon"}),ge(2),t(Z),t(R),t(j);var C=i(j,2);{var d=a=>{var v=Yt();p(a,v)},U=a=>{var v=as();Ne(v,23,()=>e(P),u=>u.id,(u,g,F)=>{var z=ss(),ee=s(z),K=s(ee),te=s(K),de=s(te,!0);t(te);var m=i(te,2),S=i(m,2),E=s(S,!0);t(S),t(K);var k=i(K,2);{var se=ne=>{var ve=Jt();Ne(ve,21,()=>M(e(g).tags).slice(0,3),Re,(xe,ke)=>{var ce=Xt(),ye=s(ce,!0);t(ce),W(()=>N(ye,e(ke))),p(xe,ce)}),t(ve),p(ne,ve)},V=h(()=>M(e(g).tags).length>0);Se(k,ne=>{e(V)&&ne(se)})}t(ee);var ie=i(ee,2),ae=s(ie,!0);t(ie);var w=i(ie,2),T=s(w),L=i(T,2),_e=i(L,2);Ce(_e,()=>bt,(ne,ve)=>{ve(ne,{children:(xe,ke)=>{var ce=ts(),ye=Ie(ce);{const Me=(ue,be)=>{let G=()=>be?.().props;var le=Qt(),qe=()=>Q(e(g));Ve(le,()=>({...G(),class:"action-btn edit sig-switch",onclick:qe}),void 0,void 0,void 0,"svelte-7r7fq6"),p(ue,le)};Ce(ye,()=>xt,(ue,be)=>{be(ue,{child:Me,$$slots:{child:!0}})})}var Te=i(ye,2);Ce(Te,()=>yt,(Me,ue)=>{ue(Me,{class:"w-72 !bg-[var(--sig-surface-raised)] !border-[var(--sig-border-strong)]",side:"bottom",align:"start",children:(be,G)=>{var le=es(),qe=i(s(le),2);{let je=h(()=>B[e(g).id]??e(g).content);St(qe,{class:`mt-2 min-h-[60px] text-[11px] font-mono
|
|
3
3
|
bg-[var(--sig-bg)] border-[var(--sig-border)]
|
|
4
4
|
text-[var(--sig-text)]`,get value(){return e(je)},oninput:we=>{const pe=we.currentTarget;pe instanceof HTMLTextAreaElement&&(B[e(g).id]=pe.value)}})}var Fe=i(qe,2),ze=s(Fe);{const je=(we,pe)=>{let at=()=>pe?.().props;var Ke=Zt();Ve(Ke,()=>({...at(),class:"text-[10px] px-2 py-1 text-[var(--sig-text-muted)] hover:text-[var(--sig-text)]"}),void 0,void 0,void 0,"svelte-7r7fq6"),p(we,Ke)};Ce(ze,()=>Wt,(we,pe)=>{pe(we,{child:je,$$slots:{child:!0}})})}var st=i(ze,2);pt(st,{variant:"default",size:"sm",class:"text-[10px] h-6",onclick:()=>H(e(g)),children:(je,we)=>{ge();var pe=lt("Save");p(je,pe)},$$slots:{default:!0}}),t(Fe),t(le),p(be,le)},$$slots:{default:!0}})}),p(xe,ce)},$$slots:{default:!0}})}),t(w),t(z),W((ne,ve,xe,ke)=>{N(de,ne),Oe(m,`background: ${ve??""}`),$e(m,"title",`importance: ${xe??""}`),N(E,ke),N(ae,e(g).content)},[()=>String(e(F)+1).padStart(2,"0"),()=>Y(e(g).importance??.5),()=>(e(g).importance??.5).toFixed(2),()=>X(e(g).created_at)]),Ee("click",T,()=>re(e(g))),Ee("click",L,()=>J(e(g))),p(u,z)}),t(v),ot(v,u=>O(f,u),()=>e(f)),p(a,v)};Se(C,a=>{e(P).length===0?a(d):a(U,-1)})}t(_),W(()=>N(oe,`${e(P).length??""} OF ${e(I).length??""}`)),Ee("click",Z,l),p(y,_),me()}Be(["click"]);var is=x('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><div class="home-grid svelte-12c0jaj"><div class="area-banner svelte-12c0jaj"><!></div> <div class="area-spotlights svelte-12c0jaj"><!></div> <div class="area-insights svelte-12c0jaj"><!></div> <div class="area-sidebar svelte-12c0jaj"><!></div></div></div>');function ps(y,n){he(n,!0);let r=$(null),c=$(fe([])),f=$(fe([])),A=$(null),b=$(fe([])),D=$(!1);Ue(async()=>{const l=await Promise.allSettled([ft(),ht(),wt(Ze,10,n.agentId),mt(),Qe()]);l[0].status==="fulfilled"&&l[0].value&&O(r,l[0].value,!0),l[1].status==="fulfilled"&&O(c,l[1].value,!0),l[2].status==="fulfilled"&&O(f,l[2].value,!0),l[3].status==="fulfilled"&&O(A,l[3].value,!0),l[4].status==="fulfilled"&&O(b,l[4].value,!0),O(D,!0)});var M=is(),I=s(M),P=s(I),Y=s(P);{let l=h(()=>n.memoryStats?.total??0);jt(Y,{get identity(){return n.identity},get daemonStatus(){return n.daemonStatus},get connectorCount(){return e(b).length},get continuity(){return e(c)},get presence(){return e(f)},get agentId(){return n.agentId},get memoryCount(){return e(l)},get diagnostics(){return e(r)},get pipelineStatus(){return e(A)},get memoryStats(){return n.memoryStats}})}t(P);var X=i(P,2),re=s(X);Lt(re,{}),t(X);var J=i(X,2),B=s(J);rs(B,{get memories(){return n.memories}}),t(J);var Q=i(J,2),H=s(Q);Vt(H,{get memories(){return n.memories}}),t(Q),t(I),t(M),p(y,M),me()}export{ps as default};
|