ai-agent-session-center 2.4.0 → 2.4.3

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.
Files changed (30) hide show
  1. package/README.md +2 -0
  2. package/dist/client/assets/AnalyticsView-B7ALjnxe.js +1 -0
  3. package/dist/client/assets/Charts-IyRNWsxy.css +1 -0
  4. package/dist/client/assets/{Charts.module-Dx9gJPQR.js → Charts.module-BVWDL-nq.js} +2 -2
  5. package/dist/client/assets/{CyberdromeScene-CxjA5JVV.js → CyberdromeScene-fsiugRCk.js} +1 -1
  6. package/dist/client/assets/HistoryView-2SToJwhm.js +1 -0
  7. package/dist/client/assets/HistoryView-khsGJftp.css +1 -0
  8. package/dist/client/assets/{ProjectBrowserView-5bUQLVrl.js → ProjectBrowserView-CC-VpOqU.js} +1 -1
  9. package/dist/client/assets/QueueView-BolJW5o0.js +1 -0
  10. package/dist/client/assets/TimelineView-B_Lk9xQG.js +4 -0
  11. package/dist/client/assets/index-B7h3JN01.js +153 -0
  12. package/dist/client/assets/index-y70PbO5W.css +1 -0
  13. package/dist/client/assets/{useQuery-C-SRwqqC.js → useQuery-D3equUmE.js} +1 -1
  14. package/dist/client/assets/{with-selector-C0N9xw7F.js → with-selector-bHDjn-jq.js} +1 -1
  15. package/dist/client/index.html +2 -2
  16. package/hooks/install-hooks-api.cjs +169 -0
  17. package/hooks/install-hooks-core.cjs +89 -0
  18. package/hooks/package.json +1 -0
  19. package/package.json +4 -4
  20. package/server/apiRouter.ts +3 -3
  21. package/server/serverConfig.ts +5 -1
  22. package/server/sessionMatcher.ts +13 -3
  23. package/dist/client/assets/AnalyticsView-CbZwTSY4.js +0 -1
  24. package/dist/client/assets/Charts-BN9-_lNy.css +0 -1
  25. package/dist/client/assets/HistoryView-Cu23DcIM.css +0 -1
  26. package/dist/client/assets/HistoryView-tXMsxMhN.js +0 -1
  27. package/dist/client/assets/QueueView-DM_X1lfF.js +0 -1
  28. package/dist/client/assets/TimelineView-DuOSFGCv.js +0 -4
  29. package/dist/client/assets/index-ClPKOKvN.css +0 -1
  30. package/dist/client/assets/index-DS3KKkg_.js +0 -169
package/README.md CHANGED
@@ -11,6 +11,8 @@ Every session spawns an animated robot in an interactive cyberdrome that visuall
11
11
 
12
12
  ## Demo
13
13
 
14
+ **[Live demo → aasc.work/demo](https://aasc.work/demo)**
15
+
14
16
  ### Desktop
15
17
 
16
18
  <table>
@@ -0,0 +1 @@
1
+ import{j as e,r as y,a as P}from"./index-B7h3JN01.js";import{u}from"./useQuery-D3equUmE.js";import{m as n,R as j,B as b,C as v,X as S,Y as _,T as C,n as T,o as $}from"./Charts.module-BVWDL-nq.js";import"./with-selector-bHDjn-jq.js";function g(){const t=getComputedStyle(document.documentElement);return{cyan:t.getPropertyValue("--accent-cyan").trim()||"#00e5ff",green:t.getPropertyValue("--accent-green").trim()||"#00ff88",orange:t.getPropertyValue("--accent-orange").trim()||"#ff9100",textDim:t.getPropertyValue("--text-dim").trim()||"#8888aa",textPrimary:t.getPropertyValue("--text-primary").trim()||"#e0e0ff",bgCard:t.getPropertyValue("--bg-card").trim()||"#12122a",borderSubtle:t.getPropertyValue("--border-subtle").trim()||"rgba(255,255,255,0.04)",bgPrimary:t.getPropertyValue("--bg-primary").trim()||"#0a0a1a"}}const N=t=>{const a=new MutationObserver(t);return a.observe(document.body,{attributes:!0,attributeFilter:["data-theme"]}),()=>a.disconnect()};function x(){return y.useSyncExternalStore(N,g,g)}async function m(t){const a=await P(t);if(!a.ok)throw new Error(`API error: ${a.status}`);return a.json()}function l(t){return t>=1e6?(t/1e6).toFixed(1)+"M":t>=1e3?(t/1e3).toFixed(1)+"K":String(t)}function w(t,a,r,i){const o=a===0?0:Math.max(0,Math.min(1,t/a));return`color-mix(in srgb, ${i} ${Math.round(o*100)}%, ${r})`}const f=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];function q(){const{data:t}=u({queryKey:["analytics-summary"],queryFn:()=>m("/api/db/analytics/summary"),staleTime:3e4}),{data:a}=u({queryKey:["analytics-tools"],queryFn:()=>m("/api/db/analytics/tools"),staleTime:3e4}),{data:r}=u({queryKey:["analytics-projects"],queryFn:()=>m("/api/db/analytics/projects"),staleTime:3e4}),{data:i}=u({queryKey:["analytics-heatmap"],queryFn:()=>m("/api/db/analytics/heatmap"),staleTime:3e4});return e.jsxs("div",{className:n.analyticsView,"data-testid":"analytics-view",children:[e.jsx(A,{summary:t??null}),e.jsxs("div",{className:n.analyticsGrid,children:[e.jsxs("div",{className:n.analyticsCard,children:[e.jsx("h4",{children:"Tool Usage"}),e.jsx(k,{data:a??[]})]}),e.jsxs("div",{className:n.analyticsCard,children:[e.jsx("h4",{children:"Active Projects"}),e.jsx(D,{data:r??[]})]}),e.jsxs("div",{className:n.analyticsCard,style:{gridColumn:"1 / -1"},children:[e.jsx("h4",{children:"Activity Heatmap"}),e.jsx(M,{data:i??[]})]})]})]})}function A({summary:t}){const a=[{label:"Total Sessions",value:l(t?.total_sessions??0),detail:"all time"},{label:"Total Prompts",value:l(t?.total_prompts??0),detail:"all time"},{label:"Total Tool Calls",value:l(t?.total_tool_calls??0),detail:"all time"},{label:"Active Sessions",value:l(t?.active_sessions??0),detail:"currently running"},{label:"Most Used Tool",value:t?.most_used_tool?.tool_name??"N/A",detail:t?.most_used_tool?l(t.most_used_tool.count)+" calls":""},{label:"Busiest Project",value:t?.busiest_project?.name??"N/A",detail:t?.busiest_project?l(t.busiest_project.count)+" sessions":""}];return e.jsx("div",{className:n.analyticsSummary,children:a.map(r=>e.jsxs("div",{className:n.summaryStat,children:[e.jsx("div",{className:n.statLabel,children:r.label}),e.jsx("div",{className:n.statValue,children:r.value}),e.jsx("div",{className:n.statDetail,children:r.detail})]},r.label))})}function k({data:t}){const a=x(),r=t.slice(0,15);return r.length===0?e.jsx(p,{message:"No tool data"}):e.jsx(j,{width:"100%",height:Math.max(200,r.length*28),children:e.jsxs(b,{data:r,layout:"vertical",margin:{top:4,right:40,bottom:4,left:100},children:[e.jsx(v,{strokeDasharray:"3 3",stroke:a.borderSubtle}),e.jsx(S,{type:"number",tick:{fill:a.textDim,fontSize:10}}),e.jsx(_,{type:"category",dataKey:"tool_name",tick:{fill:a.textDim,fontSize:10},width:96}),e.jsx(C,{contentStyle:{background:a.bgCard,border:`1px solid ${a.cyan}`,borderRadius:4,fontSize:11,color:a.textPrimary},formatter:((i,o,s)=>[`${l(i)} (${s.payload.percentage}%)`,"Calls"])}),e.jsx(T,{dataKey:"count",radius:[0,4,4,0],children:r.map((i,o)=>e.jsx($,{fill:a.cyan,fillOpacity:.85},o))})]})})}function D({data:t}){const a=x(),r=y.useMemo(()=>[...t].sort((i,o)=>o.session_count-i.session_count).slice(0,15),[t]);return r.length===0?e.jsx(p,{message:"No project data"}):e.jsx(j,{width:"100%",height:Math.max(200,r.length*28),children:e.jsxs(b,{data:r,layout:"vertical",margin:{top:4,right:40,bottom:4,left:120},children:[e.jsx(v,{strokeDasharray:"3 3",stroke:a.borderSubtle}),e.jsx(S,{type:"number",tick:{fill:a.textDim,fontSize:10}}),e.jsx(_,{type:"category",dataKey:"project_name",tick:{fill:a.textDim,fontSize:10},width:116}),e.jsx(C,{contentStyle:{background:a.bgCard,border:`1px solid ${a.cyan}`,borderRadius:4,fontSize:11,color:a.textPrimary},formatter:(i=>[l(i)+" sessions","Sessions"])}),e.jsx(T,{dataKey:"session_count",radius:[0,4,4,0],children:r.map((i,o)=>e.jsx($,{fill:a.green,fillOpacity:.85},o))})]})})}function M({data:t}){const a=x(),{grid:r,maxVal:i}=y.useMemo(()=>{const o=new Map;let s=0;for(const c of t){const d=`${c.day_of_week}-${c.hour}`;o.set(d,c.count),c.count>s&&(s=c.count)}return{grid:o,maxVal:s}},[t]);return t.length===0?e.jsx(p,{message:"No heatmap data"}):e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"40px repeat(24, 14px)",gridTemplateRows:"14px repeat(7, 14px)",gap:"2px",alignItems:"center"},children:[e.jsx("div",{}),Array.from({length:24},(o,s)=>e.jsx("div",{style:{fontSize:"9px",color:a.textDim,textAlign:"center"},children:s},`h-${s}`)),Array.from({length:7},(o,s)=>e.jsxs(y.Fragment,{children:[e.jsx("div",{style:{fontSize:"10px",color:a.textDim,textAlign:"right",paddingRight:"4px"},children:f[s]}),Array.from({length:24},(c,d)=>{const h=r.get(`${s}-${d}`)??0;return e.jsx("div",{className:n.heatmapCell,title:`${f[s]} ${String(d).padStart(2,"0")}:00 - ${h} events`,style:{backgroundColor:w(h,i,a.bgPrimary,a.green)}},`${s}-${d}`)})]},`row-${s}`))]})}function p({message:t}){return e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",minHeight:"120px",color:"var(--text-dim, #555577)",fontSize:"0.85rem"},children:t})}export{q as default};
@@ -0,0 +1 @@
1
+ ._historyView_1vx2m_9{grid-area:main;padding:20px;overflow-y:auto}._historyControls_1vx2m_11{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}._historyControls_1vx2m_11 input,._historyControls_1vx2m_11 select{background:var(--bg-card);border:1px solid var(--border-accent);color:var(--text-primary);font-family:var(--font-mono);font-size:11px;padding:8px 12px;border-radius:4px;outline:none;transition:border-color .2s,box-shadow .2s}._historyControls_1vx2m_11 input:focus,._historyControls_1vx2m_11 select:focus{border-color:var(--accent-cyan);box-shadow:0 0 8px #00e5ff4d}._searchInput_1vx2m_14{flex:1;min-width:200px}._historyRow_1vx2m_16{display:grid;grid-template-columns:1.5fr 1fr auto auto auto auto auto auto 24px;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-faint);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s;align-items:center;font-size:12px}._historyRow_1vx2m_16:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}._historyTitle_1vx2m_19{font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._historyProject_1vx2m_20{color:var(--text-secondary);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._historyDate_1vx2m_21{color:var(--text-secondary);font-size:10px}._historyDuration_1vx2m_22{color:var(--text-dim);font-size:10px}._historyStatus_1vx2m_24{font-size:9px;font-weight:700;letter-spacing:1px;padding:2px 8px;border-radius:3px}._historyStatus_1vx2m_24._idle_1vx2m_25{color:var(--accent-green);border:1px solid rgba(0,255,136,.3);background:#00ff8814}._historyStatus_1vx2m_24._working_1vx2m_26{color:var(--accent-orange);border:1px solid rgba(255,145,0,.3);background:#ff910014}._historyStatus_1vx2m_24._ended_1vx2m_27{color:var(--accent-red);border:1px solid rgba(255,51,85,.3);background:#ff335514}._historyStatus_1vx2m_24._prompting_1vx2m_28{color:var(--accent-cyan);border:1px solid var(--border-accent-strong);background:var(--bg-accent)}._historyStatus_1vx2m_24._archived_1vx2m_29{color:var(--accent-purple);border:1px solid rgba(170,102,255,.3);background:#aa66ff14}._historyPrompts_1vx2m_31,._historyTools_1vx2m_31{color:var(--text-dim);font-size:10px}._historyBranch_1vx2m_32{color:var(--accent-purple);font-size:10px}._historyDelete_1vx2m_34{background:none;border:none;color:var(--text-dim);font-size:16px;cursor:pointer;padding:0;line-height:1;opacity:0;transition:opacity .2s,color .2s}._historyRow_1vx2m_16:hover ._historyDelete_1vx2m_34{opacity:1}._historyDelete_1vx2m_34:hover{color:var(--accent-red)}._pagination_1vx2m_38{display:flex;justify-content:center;gap:8px;margin-top:16px;padding:12px}._paginationBtn_1vx2m_39{background:var(--bg-card);border:1px solid var(--border-accent);color:var(--text-secondary);padding:6px 12px;border-radius:4px;font-family:var(--font-mono);font-size:11px;cursor:pointer}._paginationBtn_1vx2m_39:hover{border-color:var(--accent-cyan)}._paginationBtn_1vx2m_39._active_1vx2m_41{background:var(--bg-accent);color:var(--accent-cyan);border-color:var(--accent-cyan)}._timelineView_1vx2m_45{grid-area:main;padding:20px;overflow-y:auto}._timelineControls_1vx2m_46{display:flex;gap:12px;margin-bottom:20px;align-items:center}._timelineControls_1vx2m_46 input,._timelineControls_1vx2m_46 select{background:var(--bg-card);border:1px solid var(--border-accent);color:var(--text-primary);font-family:var(--font-mono);font-size:11px;padding:8px 12px;border-radius:4px;outline:none}._timelineControls_1vx2m_46 input:focus,._timelineControls_1vx2m_46 select:focus{border-color:var(--accent-cyan)}._timelineChart_1vx2m_50{min-height:350px;background:var(--bg-card);border:1px solid var(--border-faint);border-radius:12px;padding:20px;position:relative}._analyticsView_1vx2m_54{grid-area:main;padding:20px;overflow-y:auto}._analyticsSummary_1vx2m_56{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}._summaryStat_1vx2m_57{background:var(--bg-card);border:1px solid var(--border-faint);border-radius:8px;padding:16px 20px;flex:1;min-width:150px;text-align:center}._statLabel_1vx2m_58{font-size:9px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;margin-bottom:6px}._statValue_1vx2m_59{font-size:24px;font-weight:700;color:var(--text-primary)}._statDetail_1vx2m_60{font-size:10px;color:var(--text-secondary);margin-top:4px}._analyticsGrid_1vx2m_62{display:grid;grid-template-columns:1fr 1fr;gap:20px}._analyticsCard_1vx2m_63{background:var(--bg-card);border:1px solid var(--border-faint);border-radius:12px;padding:20px;min-height:300px}._analyticsCard_1vx2m_63 h4{font-size:11px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;margin-bottom:16px}._chartTooltip_1vx2m_68{position:fixed;background:var(--bg-card);border:1px solid var(--accent-cyan);padding:8px 12px;border-radius:4px;font-size:10px;color:var(--text-primary);pointer-events:none;z-index:1000;box-shadow:0 0 20px var(--glow-accent)}._heatmapCell_1vx2m_69{width:14px;height:14px;border-radius:2px;transition:opacity .2s}@media(max-width:960px){._analyticsGrid_1vx2m_62{grid-template-columns:1fr}}@media(max-width:640px){._historyControls_1vx2m_11{flex-direction:column}._historyRow_1vx2m_16{grid-template-columns:1fr}._analyticsGrid_1vx2m_62{grid-template-columns:1fr;gap:12px}._analyticsCard_1vx2m_63{padding:14px;min-height:200px}._analyticsCard_1vx2m_63 h4{font-size:10px;letter-spacing:1px;margin-bottom:10px}._analyticsSummary_1vx2m_56{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}._summaryStat_1vx2m_57{min-width:0;padding:10px 12px}._statValue_1vx2m_59{font-size:18px}._statLabel_1vx2m_58{font-size:8px;letter-spacing:1px}._statDetail_1vx2m_60{font-size:9px}._analyticsView_1vx2m_54,._timelineView_1vx2m_45,._historyView_1vx2m_9{padding:12px 10px}._timelineChart_1vx2m_50{padding:12px;min-height:250px}._timelineControls_1vx2m_46{flex-wrap:wrap;gap:8px}._timelineControls_1vx2m_46 input,._timelineControls_1vx2m_46 select{min-height:44px;font-size:12px;flex:1 1 auto}._historyControls_1vx2m_11 input,._historyControls_1vx2m_11 select{min-height:44px;font-size:12px}._historyRow_1vx2m_16{padding:10px 12px;gap:6px;font-size:11px}._heatmapCell_1vx2m_69{width:12px;height:12px}}@media(max-width:480px){._analyticsSummary_1vx2m_56{gap:6px}._summaryStat_1vx2m_57{padding:8px 10px}._statValue_1vx2m_59{font-size:16px}._analyticsCard_1vx2m_63{padding:10px;min-height:180px}._analyticsView_1vx2m_54,._timelineView_1vx2m_45,._historyView_1vx2m_9{padding:10px 8px}._timelineChart_1vx2m_50{padding:10px;min-height:200px}}@media(max-width:375px){._analyticsSummary_1vx2m_56{grid-template-columns:1fr;gap:4px}._summaryStat_1vx2m_57{padding:6px 8px}._statValue_1vx2m_59{font-size:14px}}