fleetlens 0.7.0 → 0.9.0
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/app/apps/web/.next/BUILD_ID +1 -1
- package/app/apps/web/.next/app-path-routes-manifest.json +1 -0
- package/app/apps/web/.next/build-manifest.json +5 -5
- package/app/apps/web/.next/prerender-manifest.json +3 -3
- package/app/apps/web/.next/routes-manifest.json +6 -0
- package/app/apps/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/_global-error.html +1 -1
- package/app/apps/web/.next/server/app/_global-error.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/apps/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/_not-found/page.js +1 -1
- package/app/apps/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/api/digest/day/[date]/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/digest/month/[yearMonth]/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/digest/month-index/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/digest/week/[startDate]/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/digest/week-index/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/jobs/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/runs/[runId]/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/runs/[runId]/stream/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/changelog/page/app-paths-manifest.json +3 -0
- package/app/apps/web/.next/server/app/changelog/page/build-manifest.json +17 -0
- package/app/apps/web/.next/server/app/changelog/page/next-font-manifest.json +6 -0
- package/app/apps/web/.next/server/app/changelog/page/react-loadable-manifest.json +1 -0
- package/app/apps/web/.next/server/app/changelog/page/server-reference-manifest.json +4 -0
- package/app/apps/web/.next/server/app/changelog/page.js +17 -0
- package/app/apps/web/.next/server/app/changelog/page.js.map +5 -0
- package/app/apps/web/.next/server/app/changelog/page.js.nft.json +1 -0
- package/app/apps/web/.next/server/app/changelog/page_client-reference-manifest.js +3 -0
- package/app/apps/web/.next/server/app/day/[date]/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/day/[date]/page.js +1 -1
- package/app/apps/web/.next/server/app/day/[date]/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/day/[date]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/day/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/day/page.js +1 -1
- package/app/apps/web/.next/server/app/day/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/day/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/digest/[date]/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/digest/[date]/page.js +1 -1
- package/app/apps/web/.next/server/app/digest/[date]/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/digest/[date]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/digest/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/digest/page.js +1 -1
- package/app/apps/web/.next/server/app/digest/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/digest/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/insights/[key]/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/insights/[key]/page.js +1 -1
- package/app/apps/web/.next/server/app/insights/[key]/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/insights/[key]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/insights/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/insights/page.js +1 -1
- package/app/apps/web/.next/server/app/insights/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/insights/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/page.js +1 -1
- package/app/apps/web/.next/server/app/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/parallelism/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/parallelism/page.js +1 -1
- package/app/apps/web/.next/server/app/parallelism/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/parallelism/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/projects/[slug]/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/projects/[slug]/page.js +1 -1
- package/app/apps/web/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/projects/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/projects/page.js +1 -1
- package/app/apps/web/.next/server/app/projects/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/runs/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/runs/page.js +1 -1
- package/app/apps/web/.next/server/app/runs/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/runs/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/sessions/[id]/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/sessions/[id]/page.js +1 -1
- package/app/apps/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/sessions/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/sessions/page.js +1 -1
- package/app/apps/web/.next/server/app/sessions/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/settings/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/settings/page.js +1 -1
- package/app/apps/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app/usage/page/build-manifest.json +2 -2
- package/app/apps/web/.next/server/app/usage/page.js +1 -1
- package/app/apps/web/.next/server/app/usage/page.js.nft.json +1 -1
- package/app/apps/web/.next/server/app/usage/page_client-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/app-paths-manifest.json +1 -0
- package/app/apps/web/.next/server/chunks/[root-of-the-server]__0.z48ue._.js +1 -1
- package/app/apps/web/.next/server/chunks/[root-of-the-server]__0dctov1._.js +2 -2
- package/app/apps/web/.next/server/chunks/packages_09hmrqx._.js +1 -1
- package/app/apps/web/.next/server/chunks/packages_118y1lp._.js +1 -1
- package/app/apps/web/.next/server/chunks/packages_parser_dist_fs_122oe0-.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__0vvlth5._.js → [root-of-the-server]__02~v50d._.js} +2 -2
- package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__09rjz7_._.js +3 -0
- package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0r4tks8._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0ytdqxt._.js +3 -0
- package/app/apps/web/.next/server/chunks/ssr/_0xu2pvc._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web__next-internal_server_app_changelog_page_actions_12_04gy.js +3 -0
- package/app/apps/web/.next/server/chunks/ssr/apps_web_components_0txtsv5._.js +1 -1
- package/app/apps/web/.next/server/chunks/ssr/apps_web_components_changelog-mark-read_tsx_0hm41sv._.js +3 -0
- package/app/apps/web/.next/server/chunks/ssr/apps_web_lib_0m67-xi._.js +3 -0
- package/app/apps/web/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0uwo3v3.js +4 -0
- package/app/apps/web/.next/server/chunks/ssr/packages_parser_dist_10_oegc._.js +1 -1
- package/app/apps/web/.next/server/middleware-build-manifest.js +5 -5
- package/app/apps/web/.next/server/pages/500.html +1 -1
- package/app/apps/web/.next/server/server-reference-manifest.js +1 -1
- package/app/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/app/apps/web/.next/static/chunks/05b689hq3x49w.js +1 -0
- package/app/apps/web/.next/static/chunks/0cxyt4-24..b7.js +14 -0
- package/app/apps/web/.next/static/chunks/{0mykrrv810ra-.js → 0kjot8367asxe.js} +1 -1
- package/app/apps/web/.next/static/chunks/{turbopack-0_p36yduv.waj.js → turbopack-00w.w1u3c~d-6.js} +1 -1
- package/app/apps/web/app/changelog/page.tsx +238 -0
- package/app/apps/web/app/layout.tsx +2 -0
- package/app/apps/web/components/changelog-icon.tsx +62 -0
- package/app/apps/web/components/changelog-mark-read.tsx +12 -0
- package/app/apps/web/components/sidebar.tsx +7 -0
- package/app/apps/web/lib/calibration-data.ts +4 -64
- package/app/apps/web/lib/changelog-data.generated.ts +3 -0
- package/app/apps/web/lib/changelog.ts +67 -0
- package/app/apps/web/lib/cycle-peaks.test.ts +185 -0
- package/app/apps/web/lib/cycle-peaks.ts +104 -0
- package/app/apps/web/package.json +1 -1
- package/app/apps/web/tsconfig.tsbuildinfo +1 -1
- package/dist/daemon-worker.js +574 -38
- package/dist/index.js +601 -65
- package/package.json +1 -1
- package/app/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0v.6dx0._.js +0 -3
- package/app/apps/web/.next/server/chunks/ssr/apps_web_lib_usage-data_ts_0xtv99n._.js +0 -3
- package/app/apps/web/.next/static/chunks/09gdxttgu~.aj.js +0 -14
- /package/app/apps/web/.next/static/{qYW0u_NOmV0v7lf7xZc6x → u6-8f8u1tspYCacGAz53R}/_buildManifest.js +0 -0
- /package/app/apps/web/.next/static/{qYW0u_NOmV0v7lf7xZc6x → u6-8f8u1tspYCacGAz53R}/_clientMiddlewareManifest.js +0 -0
- /package/app/apps/web/.next/static/{qYW0u_NOmV0v7lf7xZc6x → u6-8f8u1tspYCacGAz53R}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[44422,a=>{"use strict";var b=a.i(87924),c=a.i(38246),d=a.i(50944),e=a.i(72131),f=a.i(70106);let g=(0,f.default)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]),h=(0,f.default)("ListTree",[["path",{d:"M21 12h-8",key:"1bmf0i"}],["path",{d:"M21 6H8",key:"1pqkrb"}],["path",{d:"M21 18h-8",key:"1tm79t"}],["path",{d:"M3 6v4c0 1.1.9 2 2 2h3",key:"1ywdgy"}],["path",{d:"M3 10v6c0 1.1.9 2 2 2h3",key:"2wc746"}]]),i=(0,f.default)("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),j=(0,f.default)("Pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]),k=(0,f.default)("PinOff",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]]);var l=a.i(87532);let m=(0,f.default)("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),n=(0,f.default)("Gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);var o=a.i(69439),p=a.i(71727);let q=(0,f.default)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),r=(0,f.default)("CalendarDays",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);var s=a.i(3444);let t=(0,f.default)("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]),u=(0,f.default)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);function v(a){if("u">typeof document){document.documentElement.setAttribute("data-theme",a);try{document.cookie=`claude-lens-theme=${a};path=/;max-age=31536000;samesite=lax`}catch{}}}function w(){let[a,c]=(0,e.useState)("dark"),[d,f]=(0,e.useState)(!1);return(0,e.useEffect)(()=>{let a=document.documentElement.getAttribute("data-theme");if("light"===a||"dark"===a)c(a);else{let a="dark";c(a),v(a)}f(!0)},[]),(0,b.jsx)("button",{type:"button",onClick:()=>{let b="dark"===a?"light":"dark";c(b),v(b);try{window.localStorage.setItem("claude-lens:theme",b)}catch{}},"aria-label":"dark"===a?"Switch to light mode":"Switch to dark mode",title:"dark"===a?"Switch to light mode":"Switch to dark mode",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:6,background:"transparent",border:"1px solid var(--af-border-subtle)",color:"var(--af-text-secondary)",cursor:"pointer",transition:"all 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--af-surface-hover)",a.currentTarget.style.color="var(--af-text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--af-text-secondary)"},children:d?"dark"===a?(0,b.jsx)(u,{size:14}):(0,b.jsx)(t,{size:14}):null})}var x=a.i(2591);function y({snapshot:a}){let d,e,[f,,g]=(0,x.usePersistentBoolean)("cclens:usage:show-sonnet",!1);if(!a)return(0,b.jsxs)("div",{style:{padding:"10px 16px 12px",borderTop:"1px solid var(--af-border-subtle)",fontSize:10,color:"var(--af-text-tertiary)",lineHeight:1.4},children:[(0,b.jsx)("div",{style:{textTransform:"uppercase",letterSpacing:"0.06em",fontWeight:600,marginBottom:4},children:"Usage"}),(0,b.jsxs)("div",{children:["Run ",(0,b.jsx)("code",{style:{fontFamily:"var(--font-mono)"},children:"cclens daemon start"})," to collect metrics."]})]});let h=[{label:"5h",window:a.five_hour},{label:"7d",window:a.seven_day}];return g&&f&&h.push({label:"Sonnet 7d",window:a.seven_day_sonnet}),(0,b.jsxs)(c.default,{href:"/usage",style:{display:"block",padding:"10px 16px 12px",borderTop:"1px solid var(--af-border-subtle)",textDecoration:"none",color:"inherit"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",fontSize:10,fontWeight:600,color:"var(--af-text-tertiary)",textTransform:"uppercase",letterSpacing:"0.06em",marginBottom:8},children:[(0,b.jsx)("span",{children:"Current usage"}),(0,b.jsx)("span",{suppressHydrationWarning:!0,style:{fontWeight:500,textTransform:"none",letterSpacing:0},children:(d=new Date(a.captured_at).getTime(),(e=Math.round((Date.now()-d)/1e3))<60?`${e}s ago`:e<3600?`${Math.floor(e/60)}m ago`:e<86400?`${Math.floor(e/3600)}h ago`:`${Math.floor(e/86400)}d ago`)})]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:h.map(a=>(0,b.jsx)(z,{...a},a.label))})]})}function z({label:a,window:c}){let d=c?.utilization??null,e=null!==d,f=e?Math.max(0,Math.min(100,d)):0,g=f>=90?"var(--af-danger)":f>=70?"var(--af-warning)":"var(--af-success)";return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6,fontSize:10,color:"var(--af-text-secondary)",marginBottom:2,fontVariantNumeric:"tabular-nums"},children:[(0,b.jsx)("span",{children:a}),c?.resets_at&&(0,b.jsxs)("span",{suppressHydrationWarning:!0,style:{fontSize:9,color:"var(--af-text-tertiary)",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["resets ",function(a){let b,c=Math.round((new Date(a).getTime()-Date.now())/1e3),d=Math.abs(c);if(d<60)b=`${d}s`;else if(d<3600)b=`${Math.floor(d/60)}m`;else if(d<86400){let a=Math.floor(d/3600),c=Math.floor(d%3600/60);b=c>0?`${a}h${c}m`:`${a}h`}else{let a=Math.floor(d/86400),c=Math.floor(d%86400/3600);b=c>0?`${a}d${c}h`:`${a}d`}return c<0?`${b} ago`:`in ${b}`}(c.resets_at)]}),(0,b.jsx)("span",{style:{fontWeight:600,color:"var(--af-text)",marginLeft:"auto"},children:e?`${f.toFixed(0)}%`:"—"})]}),(0,b.jsx)("div",{style:{height:4,background:"var(--af-border-subtle)",borderRadius:999,overflow:"hidden"},children:(0,b.jsx)("div",{style:{height:"100%",width:e?`${f}%`:"0%",background:g,borderRadius:999,transition:"width 0.24s ease"}})})]})}function A({href:a,active:d,icon:e,trailing:f,children:g}){return(0,b.jsxs)(c.default,{href:a,style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",borderRadius:7,fontSize:13,fontWeight:500,color:d?"var(--af-accent)":"var(--af-text-secondary)",background:d?"var(--af-accent-subtle)":"transparent",transition:"all 0.12s"},children:[e,(0,b.jsx)("span",{style:{flex:1},children:g}),f&&(0,b.jsx)("span",{style:{fontSize:10,color:d?"var(--af-accent)":"var(--af-text-tertiary)",fontFamily:"var(--font-mono)"},children:f})]})}function B({label:a,items:d,pathname:e,isPinned:f,onTogglePin:g}){return 0===d.length?null:(0,b.jsxs)("div",{style:{marginTop:10},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"var(--af-text-tertiary)",textTransform:"uppercase",letterSpacing:"0.06em",padding:"0 10px 6px",fontWeight:600},children:a}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column"},children:d.map(a=>{let d=`/projects/${encodeURIComponent(a.projectDir)}`,h=e===d,i=(0,s.prettyProjectName)(a.projectName);return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,padding:"5px 6px 5px 10px",borderRadius:6,background:h?"var(--af-accent-subtle)":"transparent",color:h?"var(--af-accent)":"var(--af-text-secondary)"},children:[(0,b.jsxs)(c.default,{href:d,style:{flex:1,minWidth:0,fontSize:12,color:"inherit",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:5},title:(a.worktreeCount??0)>0?`${a.projectName} — ${a.worktreeCount} worktree${1===a.worktreeCount?"":"s"}`:a.projectName,children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:i}),(a.worktreeCount??0)>0&&(0,b.jsxs)("span",{style:{fontSize:9,fontWeight:600,padding:"1px 5px",borderRadius:100,background:"rgba(167, 139, 250, 0.15)",color:"rgba(167, 139, 250, 1)",flexShrink:0},children:["+",a.worktreeCount," wt"]})]}),(0,b.jsx)("span",{style:{fontSize:10,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",marginLeft:4},children:a.sessionCount}),(0,b.jsx)("button",{type:"button",onClick:b=>{b.preventDefault(),b.stopPropagation(),g(a.projectDir)},"aria-label":f(a.projectDir)?"Unpin project":"Pin project",title:f(a.projectDir)?"Unpin":"Pin",style:{background:"transparent",border:"none",padding:3,borderRadius:4,color:f(a.projectDir)?"var(--af-accent)":"var(--af-text-tertiary)",display:"flex",alignItems:"center"},children:f(a.projectDir)?(0,b.jsx)(k,{size:12}):(0,b.jsx)(j,{size:12})}),a.lastActiveMs&&(0,b.jsx)("span",{style:{fontSize:9,color:"var(--af-text-tertiary)",marginLeft:2,minWidth:32,textAlign:"right"},title:new Date(a.lastActiveMs).toISOString(),suppressHydrationWarning:!0,children:(0,s.formatRelative)(new Date(a.lastActiveMs).toISOString())})]},a.projectDir)})})]})}a.s(["Sidebar",0,function({projects:a,totalSessions:f,currentUsage:j,version:k}){let s=(0,d.usePathname)(),[t,u]=(0,e.useState)(new Set),[v,x]=(0,e.useState)(!1),[z,C]=(0,e.useState)("");(0,e.useEffect)(()=>{u(new Set),x(!0)},[]);let D=a=>{u(b=>{let c=new Set(b);c.has(a)?c.delete(a):c.add(a);try{window.localStorage.setItem("claude-lens:pinned-projects:v1",JSON.stringify(Array.from(c)))}catch{}return c})},E=(0,e.useMemo)(()=>{if(!z.trim())return a;let b=z.toLowerCase();return a.filter(a=>a.projectName.toLowerCase().includes(b))},[a,z]),F=E.filter(a=>t.has(a.projectDir)),G=E.filter(a=>!t.has(a.projectDir));return(0,b.jsxs)("aside",{style:{width:260,flexShrink:0,borderRight:"1px solid var(--af-border-subtle)",background:"var(--af-surface)",display:"flex",flexDirection:"column",position:"sticky",top:0,height:"100vh"},children:[(0,b.jsx)("div",{style:{padding:"18px 20px 12px",borderBottom:"1px solid var(--af-border-subtle)"},children:(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10},children:[(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:7,background:"var(--af-accent-subtle)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--af-accent)"},children:(0,b.jsx)(m,{size:16,strokeWidth:2.25})}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:14,fontWeight:700,letterSpacing:"-0.01em"},children:"Fleetlens"}),(0,b.jsxs)("span",{style:{fontSize:10,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",fontWeight:500},title:`fleetlens ${k}`,children:["v",k]})]}),(0,b.jsx)("div",{style:{fontSize:11,color:"var(--af-text-tertiary)"},children:"Multi-agent fleet analytics"})]})]})}),(0,b.jsxs)("nav",{style:{padding:"10px 10px 6px",display:"flex",flexDirection:"column",gap:2},children:[(0,b.jsx)(A,{href:"/",active:"/"===s,icon:(0,b.jsx)(g,{size:15}),children:"Overview"}),(0,b.jsx)(A,{href:"/sessions",active:"/sessions"===s||s.startsWith("/sessions/"),icon:(0,b.jsx)(h,{size:15}),trailing:f>0?String(f):void 0,children:"All sessions"}),(0,b.jsx)(A,{href:"/projects",active:"/projects"===s,icon:(0,b.jsx)(i,{size:15}),trailing:a.length>0?String(a.length):void 0,children:"Projects"}),(0,b.jsx)(A,{href:"/day",active:"/day"===s||s.startsWith("/day/")||"/digest"===s||s.startsWith("/digest/")||"/parallelism"===s,icon:(0,b.jsx)(r,{size:15}),children:"Day"}),(0,b.jsx)(A,{href:"/usage",active:"/usage"===s,icon:(0,b.jsx)(n,{size:15}),children:"Usage"}),(0,b.jsx)(A,{href:"/insights",active:"/insights"===s,icon:(0,b.jsx)(o.Lightbulb,{size:15}),children:"Insights"}),(0,b.jsx)(A,{href:"/runs",active:"/runs"===s||s.startsWith("/runs/"),icon:(0,b.jsx)(p.Radio,{size:15}),children:"Runs"})]}),(0,b.jsxs)("div",{style:{margin:"0 14px",padding:"8px 0",borderTop:"1px solid var(--af-border-subtle)",borderBottom:"1px solid var(--af-border-subtle)",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)(l.Search,{size:13,color:"var(--af-text-tertiary)"}),(0,b.jsx)("input",{type:"text",placeholder:"Search projects",value:z,onChange:a=>C(a.target.value),style:{flex:1,background:"transparent",border:"none",padding:"4px 0",fontSize:12,color:"var(--af-text)"}})]}),(0,b.jsxs)("div",{style:{flex:1,overflow:"auto",padding:"4px 8px 20px"},children:[v&&F.length>0&&(0,b.jsx)(B,{label:"Pinned",items:F,pathname:s,isPinned:a=>t.has(a),onTogglePin:D}),(0,b.jsx)(B,{label:"Projects",items:G,pathname:s,isPinned:a=>t.has(a),onTogglePin:D})]}),(0,b.jsx)(y,{snapshot:j}),(0,b.jsxs)("div",{style:{padding:"10px 16px 10px 20px",fontSize:10,color:"var(--af-text-tertiary)",borderTop:"1px solid var(--af-border-subtle)",display:"flex",alignItems:"center",gap:8},children:[(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[f," sessions · ",a.length," projects"]}),(0,b.jsx)(c.default,{href:"/settings","aria-label":"Settings",title:"Settings",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,borderRadius:6,color:"/settings"===s?"var(--af-text)":"var(--af-text-tertiary)",background:"/settings"===s?"var(--af-surface-hover)":"transparent",textDecoration:"none"},children:(0,b.jsx)(q,{size:14})}),(0,b.jsx)(w,{})]})]})}],44422)},46069,a=>{"use strict";var b=a.i(50944),c=a.i(72131);a.s(["LiveRefresher",0,function(){let a,d=(0,b.useRouter)(),e=(a=(0,b.usePathname)(),a?.includes("/insights/print/")??!1),f=(0,c.useRef)(null),g=(0,c.useRef)({session:0,usage:0});return!function(a,b={}){let{enabled:d=!0}=b,e=(0,c.useRef)(a);(0,c.useEffect)(()=>{e.current=a},[a]),(0,c.useEffect)(()=>{if(!d)return;let a=new EventSource("/api/events");return a.onmessage=a=>{try{let b=JSON.parse(a.data);("session-updated"===b.type||"usage-updated"===b.type)&&e.current(b)}catch{}},a.onerror=()=>{},()=>{a.close()}},[d])}((0,c.useCallback)(a=>{let b="usage-updated"===a.type?"usage":"session";a.mtimeMs<=(g.current[b]??0)||(g.current[b]=a.mtimeMs,f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{d.refresh()},400))},[d]),{enabled:!e}),(0,c.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),null}],46069)},1568,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944),e=a.i(38246),f=a.i(3444),g=a.i(76285),h=a.i(99309),i=a.i(44220);let j="cclens-live-widget-expanded";a.s(["LiveSessionsWidget",0,function({sessions:a,entrySummaries:k={}}){let l=(0,d.usePathname)(),[m,n]=(0,c.useState)(()=>Date.now()),[o,p]=(0,c.useState)(!1);if((0,c.useEffect)(()=>{try{let a=localStorage.getItem(j);null!==a&&p("true"===a)}catch{}},[]),(0,c.useEffect)(()=>{let a=setInterval(()=>n(Date.now()),1e4);return()=>clearInterval(a)},[]),l&&/^\/sessions\/[^/]+$/.test(l))return null;let q=a.filter(a=>{if(!a.lastTimestamp)return!1;let b=Date.parse(a.lastTimestamp);return!Number.isNaN(b)&&m-b<=45e3}).slice().sort((a,b)=>{let c=a.firstTimestamp?Date.parse(a.firstTimestamp):0;return(b.firstTimestamp?Date.parse(b.firstTimestamp):0)-c});if(0===q.length)return null;let r=o?q.slice(0,5):[],s=o?q.length-r.length:0;return(0,b.jsxs)("div",{style:{position:"fixed",right:20,bottom:20,zIndex:100,display:"flex",flexDirection:"column-reverse",gap:6,maxWidth:320,pointerEvents:"auto"},children:[(0,b.jsxs)("button",{type:"button",onClick:()=>{var a;return a=a=>!a,void p(b=>{let c=a(b);try{localStorage.setItem(j,String(c))}catch{}return c})},style:{display:"inline-flex",alignItems:"center",gap:6,padding:"5px 11px 5px 9px",background:"rgba(239, 68, 68, 0.14)",border:"1px solid rgba(239, 68, 68, 0.4)",borderRadius:100,fontSize:10,fontWeight:700,color:"#ef4444",letterSpacing:"0.06em",textTransform:"uppercase",alignSelf:"flex-end",cursor:"pointer",userSelect:"none",backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)",boxShadow:"0 2px 10px rgba(239, 68, 68, 0.15)"},title:o?"Collapse":`Show ${q.length} live session${1===q.length?"":"s"}`,children:[(0,b.jsx)("span",{style:{display:"inline-block",width:6,height:6,borderRadius:"50%",background:"#ef4444",animation:"cs-live-pulse 1.6s ease-in-out infinite"}}),"Live · ",q.length]}),o&&s>0&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--af-text-tertiary)",padding:"0 4px",textAlign:"right"},children:["+",s," more live"]}),r.map(a=>{let c=k[a.id];return(0,b.jsxs)(e.default,{href:`/sessions/${a.id}`,style:{display:"block",padding:"10px 12px",background:"var(--af-surface-elevated)",border:"1px solid var(--af-border-subtle)",borderLeft:"2px solid #ef4444",borderRadius:8,boxShadow:"0 4px 16px rgba(0, 0, 0, 0.12)",textDecoration:"none",color:"var(--af-text)",fontSize:11,lineHeight:1.35,backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)"},title:(a.lastUserPreview||a.firstUserPreview||a.lastAgentPreview)??(0,f.prettyProjectName)(a.projectName),children:[c&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),style:{marginBottom:4},children:c.outcome?(0,b.jsx)(i.OutcomePill,{outcome:c.outcome,size:"sm",label:"text",agent:a.agent}):"skipped_trivial"!==c.enrichmentStatus?(0,b.jsx)(i.OutcomePill,{outcome:null,pending:!0,sessionId:a.id,localDay:c.localDay,size:"sm",agent:a.agent}):null}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,fontWeight:500,color:"var(--af-text)",minWidth:0},children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:a.lastUserPreview||a.firstUserPreview||(0,b.jsx)("em",{style:{color:"var(--af-text-tertiary)"},children:"(no user message)"})}),(0,b.jsx)(g.TeamBadge,{session:a,linkable:!1}),(0,b.jsx)(h.AgentBadge,{agent:a.agent})]}),(0,b.jsx)("div",{style:{fontSize:10,color:"var(--af-text-secondary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",marginTop:3,fontStyle:"italic"},children:a.lastAgentPreview?(0,b.jsxs)(b.Fragment,{children:["↳ ",a.lastAgentPreview]}):(0,b.jsx)("em",{style:{color:"var(--af-text-tertiary)"},children:"waiting…"})}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",marginTop:4,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:(0,f.prettyProjectName)(a.projectName)})]},a.id)}),(0,b.jsx)("style",{children:`
|
|
1
|
+
module.exports=[44422,a=>{"use strict";var b=a.i(87924),c=a.i(38246),d=a.i(50944),e=a.i(72131),f=a.i(70106);let g=(0,f.default)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]),h=(0,f.default)("ListTree",[["path",{d:"M21 12h-8",key:"1bmf0i"}],["path",{d:"M21 6H8",key:"1pqkrb"}],["path",{d:"M21 18h-8",key:"1tm79t"}],["path",{d:"M3 6v4c0 1.1.9 2 2 2h3",key:"1ywdgy"}],["path",{d:"M3 10v6c0 1.1.9 2 2 2h3",key:"2wc746"}]]),i=(0,f.default)("FolderOpen",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),j=(0,f.default)("Pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]),k=(0,f.default)("PinOff",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]]);var l=a.i(87532);let m=(0,f.default)("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),n=(0,f.default)("Gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);var o=a.i(69439),p=a.i(71727);let q=(0,f.default)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),r=(0,f.default)("CalendarDays",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);var s=a.i(3444);let t=(0,f.default)("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]),u=(0,f.default)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);function v(a){if("u">typeof document){document.documentElement.setAttribute("data-theme",a);try{document.cookie=`claude-lens-theme=${a};path=/;max-age=31536000;samesite=lax`}catch{}}}function w(){let[a,c]=(0,e.useState)("dark"),[d,f]=(0,e.useState)(!1);return(0,e.useEffect)(()=>{let a=document.documentElement.getAttribute("data-theme");if("light"===a||"dark"===a)c(a);else{let a="dark";c(a),v(a)}f(!0)},[]),(0,b.jsx)("button",{type:"button",onClick:()=>{let b="dark"===a?"light":"dark";c(b),v(b);try{window.localStorage.setItem("claude-lens:theme",b)}catch{}},"aria-label":"dark"===a?"Switch to light mode":"Switch to dark mode",title:"dark"===a?"Switch to light mode":"Switch to dark mode",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:6,background:"transparent",border:"1px solid var(--af-border-subtle)",color:"var(--af-text-secondary)",cursor:"pointer",transition:"all 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--af-surface-hover)",a.currentTarget.style.color="var(--af-text)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="var(--af-text-secondary)"},children:d?"dark"===a?(0,b.jsx)(u,{size:14}):(0,b.jsx)(t,{size:14}):null})}var x=a.i(2591);function y({snapshot:a}){let d,e,[f,,g]=(0,x.usePersistentBoolean)("cclens:usage:show-sonnet",!1);if(!a)return(0,b.jsxs)("div",{style:{padding:"10px 16px 12px",borderTop:"1px solid var(--af-border-subtle)",fontSize:10,color:"var(--af-text-tertiary)",lineHeight:1.4},children:[(0,b.jsx)("div",{style:{textTransform:"uppercase",letterSpacing:"0.06em",fontWeight:600,marginBottom:4},children:"Usage"}),(0,b.jsxs)("div",{children:["Run ",(0,b.jsx)("code",{style:{fontFamily:"var(--font-mono)"},children:"cclens daemon start"})," to collect metrics."]})]});let h=[{label:"5h",window:a.five_hour},{label:"7d",window:a.seven_day}];return g&&f&&h.push({label:"Sonnet 7d",window:a.seven_day_sonnet}),(0,b.jsxs)(c.default,{href:"/usage",style:{display:"block",padding:"10px 16px 12px",borderTop:"1px solid var(--af-border-subtle)",textDecoration:"none",color:"inherit"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",fontSize:10,fontWeight:600,color:"var(--af-text-tertiary)",textTransform:"uppercase",letterSpacing:"0.06em",marginBottom:8},children:[(0,b.jsx)("span",{children:"Current usage"}),(0,b.jsx)("span",{suppressHydrationWarning:!0,style:{fontWeight:500,textTransform:"none",letterSpacing:0},children:(d=new Date(a.captured_at).getTime(),(e=Math.round((Date.now()-d)/1e3))<60?`${e}s ago`:e<3600?`${Math.floor(e/60)}m ago`:e<86400?`${Math.floor(e/3600)}h ago`:`${Math.floor(e/86400)}d ago`)})]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:h.map(a=>(0,b.jsx)(z,{...a},a.label))})]})}function z({label:a,window:c}){let d=c?.utilization??null,e=null!==d,f=e?Math.max(0,Math.min(100,d)):0,g=f>=90?"var(--af-danger)":f>=70?"var(--af-warning)":"var(--af-success)";return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6,fontSize:10,color:"var(--af-text-secondary)",marginBottom:2,fontVariantNumeric:"tabular-nums"},children:[(0,b.jsx)("span",{children:a}),c?.resets_at&&(0,b.jsxs)("span",{suppressHydrationWarning:!0,style:{fontSize:9,color:"var(--af-text-tertiary)",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["resets ",function(a){let b,c=Math.round((new Date(a).getTime()-Date.now())/1e3),d=Math.abs(c);if(d<60)b=`${d}s`;else if(d<3600)b=`${Math.floor(d/60)}m`;else if(d<86400){let a=Math.floor(d/3600),c=Math.floor(d%3600/60);b=c>0?`${a}h${c}m`:`${a}h`}else{let a=Math.floor(d/86400),c=Math.floor(d%86400/3600);b=c>0?`${a}d${c}h`:`${a}d`}return c<0?`${b} ago`:`in ${b}`}(c.resets_at)]}),(0,b.jsx)("span",{style:{fontWeight:600,color:"var(--af-text)",marginLeft:"auto"},children:e?`${f.toFixed(0)}%`:"—"})]}),(0,b.jsx)("div",{style:{height:4,background:"var(--af-border-subtle)",borderRadius:999,overflow:"hidden"},children:(0,b.jsx)("div",{style:{height:"100%",width:e?`${f}%`:"0%",background:g,borderRadius:999,transition:"width 0.24s ease"}})})]})}let A=(0,f.default)("Megaphone",[["path",{d:"m3 11 18-5v12L3 14v-3z",key:"n962bs"}],["path",{d:"M11.6 16.8a3 3 0 1 1-5.8-1.6",key:"1yl0tm"}]]);var B=a.i(2913);function C({latestVersion:a,active:d}){let[f,g]=(0,e.useState)(!1);return(0,e.useEffect)(()=>{if(!a)return void g(!1);try{let b=window.localStorage.getItem(B.STORAGE_KEY);g(b!==a)}catch{g(!1)}},[a]),(0,b.jsxs)(c.default,{href:"/changelog","aria-label":f?"Changelog (new entries)":"Changelog",title:f?`What's new in v${a}`:"Changelog",style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,borderRadius:6,color:d?"var(--af-text)":"var(--af-text-tertiary)",background:d?"var(--af-surface-hover)":"transparent",textDecoration:"none"},children:[(0,b.jsx)(A,{size:14}),f&&(0,b.jsx)("span",{"aria-hidden":!0,style:{position:"absolute",top:3,right:3,width:7,height:7,borderRadius:"50%",background:"#ef4444",border:"1.5px solid var(--af-surface)"}})]})}function D({href:a,active:d,icon:e,trailing:f,children:g}){return(0,b.jsxs)(c.default,{href:a,style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",borderRadius:7,fontSize:13,fontWeight:500,color:d?"var(--af-accent)":"var(--af-text-secondary)",background:d?"var(--af-accent-subtle)":"transparent",transition:"all 0.12s"},children:[e,(0,b.jsx)("span",{style:{flex:1},children:g}),f&&(0,b.jsx)("span",{style:{fontSize:10,color:d?"var(--af-accent)":"var(--af-text-tertiary)",fontFamily:"var(--font-mono)"},children:f})]})}function E({label:a,items:d,pathname:e,isPinned:f,onTogglePin:g}){return 0===d.length?null:(0,b.jsxs)("div",{style:{marginTop:10},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"var(--af-text-tertiary)",textTransform:"uppercase",letterSpacing:"0.06em",padding:"0 10px 6px",fontWeight:600},children:a}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column"},children:d.map(a=>{let d=`/projects/${encodeURIComponent(a.projectDir)}`,h=e===d,i=(0,s.prettyProjectName)(a.projectName);return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,padding:"5px 6px 5px 10px",borderRadius:6,background:h?"var(--af-accent-subtle)":"transparent",color:h?"var(--af-accent)":"var(--af-text-secondary)"},children:[(0,b.jsxs)(c.default,{href:d,style:{flex:1,minWidth:0,fontSize:12,color:"inherit",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:5},title:(a.worktreeCount??0)>0?`${a.projectName} — ${a.worktreeCount} worktree${1===a.worktreeCount?"":"s"}`:a.projectName,children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:i}),(a.worktreeCount??0)>0&&(0,b.jsxs)("span",{style:{fontSize:9,fontWeight:600,padding:"1px 5px",borderRadius:100,background:"rgba(167, 139, 250, 0.15)",color:"rgba(167, 139, 250, 1)",flexShrink:0},children:["+",a.worktreeCount," wt"]})]}),(0,b.jsx)("span",{style:{fontSize:10,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",marginLeft:4},children:a.sessionCount}),(0,b.jsx)("button",{type:"button",onClick:b=>{b.preventDefault(),b.stopPropagation(),g(a.projectDir)},"aria-label":f(a.projectDir)?"Unpin project":"Pin project",title:f(a.projectDir)?"Unpin":"Pin",style:{background:"transparent",border:"none",padding:3,borderRadius:4,color:f(a.projectDir)?"var(--af-accent)":"var(--af-text-tertiary)",display:"flex",alignItems:"center"},children:f(a.projectDir)?(0,b.jsx)(k,{size:12}):(0,b.jsx)(j,{size:12})}),a.lastActiveMs&&(0,b.jsx)("span",{style:{fontSize:9,color:"var(--af-text-tertiary)",marginLeft:2,minWidth:32,textAlign:"right"},title:new Date(a.lastActiveMs).toISOString(),suppressHydrationWarning:!0,children:(0,s.formatRelative)(new Date(a.lastActiveMs).toISOString())})]},a.projectDir)})})]})}a.s(["Sidebar",0,function({projects:a,totalSessions:f,currentUsage:j,version:k,latestChangelogVersion:s}){let t=(0,d.usePathname)(),[u,v]=(0,e.useState)(new Set),[x,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)("");(0,e.useEffect)(()=>{v(new Set),z(!0)},[]);let F=a=>{v(b=>{let c=new Set(b);c.has(a)?c.delete(a):c.add(a);try{window.localStorage.setItem("claude-lens:pinned-projects:v1",JSON.stringify(Array.from(c)))}catch{}return c})},G=(0,e.useMemo)(()=>{if(!A.trim())return a;let b=A.toLowerCase();return a.filter(a=>a.projectName.toLowerCase().includes(b))},[a,A]),H=G.filter(a=>u.has(a.projectDir)),I=G.filter(a=>!u.has(a.projectDir));return(0,b.jsxs)("aside",{style:{width:260,flexShrink:0,borderRight:"1px solid var(--af-border-subtle)",background:"var(--af-surface)",display:"flex",flexDirection:"column",position:"sticky",top:0,height:"100vh"},children:[(0,b.jsx)("div",{style:{padding:"18px 20px 12px",borderBottom:"1px solid var(--af-border-subtle)"},children:(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10},children:[(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:7,background:"var(--af-accent-subtle)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--af-accent)"},children:(0,b.jsx)(m,{size:16,strokeWidth:2.25})}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:14,fontWeight:700,letterSpacing:"-0.01em"},children:"Fleetlens"}),(0,b.jsxs)("span",{style:{fontSize:10,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",fontWeight:500},title:`fleetlens ${k}`,children:["v",k]})]}),(0,b.jsx)("div",{style:{fontSize:11,color:"var(--af-text-tertiary)"},children:"Multi-agent fleet analytics"})]})]})}),(0,b.jsxs)("nav",{style:{padding:"10px 10px 6px",display:"flex",flexDirection:"column",gap:2},children:[(0,b.jsx)(D,{href:"/",active:"/"===t,icon:(0,b.jsx)(g,{size:15}),children:"Overview"}),(0,b.jsx)(D,{href:"/sessions",active:"/sessions"===t||t.startsWith("/sessions/"),icon:(0,b.jsx)(h,{size:15}),trailing:f>0?String(f):void 0,children:"All sessions"}),(0,b.jsx)(D,{href:"/projects",active:"/projects"===t,icon:(0,b.jsx)(i,{size:15}),trailing:a.length>0?String(a.length):void 0,children:"Projects"}),(0,b.jsx)(D,{href:"/day",active:"/day"===t||t.startsWith("/day/")||"/digest"===t||t.startsWith("/digest/")||"/parallelism"===t,icon:(0,b.jsx)(r,{size:15}),children:"Day"}),(0,b.jsx)(D,{href:"/usage",active:"/usage"===t,icon:(0,b.jsx)(n,{size:15}),children:"Usage"}),(0,b.jsx)(D,{href:"/insights",active:"/insights"===t,icon:(0,b.jsx)(o.Lightbulb,{size:15}),children:"Insights"}),(0,b.jsx)(D,{href:"/runs",active:"/runs"===t||t.startsWith("/runs/"),icon:(0,b.jsx)(p.Radio,{size:15}),children:"Runs"})]}),(0,b.jsxs)("div",{style:{margin:"0 14px",padding:"8px 0",borderTop:"1px solid var(--af-border-subtle)",borderBottom:"1px solid var(--af-border-subtle)",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)(l.Search,{size:13,color:"var(--af-text-tertiary)"}),(0,b.jsx)("input",{type:"text",placeholder:"Search projects",value:A,onChange:a=>B(a.target.value),style:{flex:1,background:"transparent",border:"none",padding:"4px 0",fontSize:12,color:"var(--af-text)"}})]}),(0,b.jsxs)("div",{style:{flex:1,overflow:"auto",padding:"4px 8px 20px"},children:[x&&H.length>0&&(0,b.jsx)(E,{label:"Pinned",items:H,pathname:t,isPinned:a=>u.has(a),onTogglePin:F}),(0,b.jsx)(E,{label:"Projects",items:I,pathname:t,isPinned:a=>u.has(a),onTogglePin:F})]}),(0,b.jsx)(y,{snapshot:j}),(0,b.jsxs)("div",{style:{padding:"10px 16px 10px 20px",fontSize:10,color:"var(--af-text-tertiary)",borderTop:"1px solid var(--af-border-subtle)",display:"flex",alignItems:"center",gap:8},children:[(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[f," sessions · ",a.length," projects"]}),(0,b.jsx)(C,{latestVersion:s,active:"/changelog"===t}),(0,b.jsx)(c.default,{href:"/settings","aria-label":"Settings",title:"Settings",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,borderRadius:6,color:"/settings"===t?"var(--af-text)":"var(--af-text-tertiary)",background:"/settings"===t?"var(--af-surface-hover)":"transparent",textDecoration:"none"},children:(0,b.jsx)(q,{size:14})}),(0,b.jsx)(w,{})]})]})}],44422)},46069,a=>{"use strict";var b=a.i(50944),c=a.i(72131);a.s(["LiveRefresher",0,function(){let a,d=(0,b.useRouter)(),e=(a=(0,b.usePathname)(),a?.includes("/insights/print/")??!1),f=(0,c.useRef)(null),g=(0,c.useRef)({session:0,usage:0});return!function(a,b={}){let{enabled:d=!0}=b,e=(0,c.useRef)(a);(0,c.useEffect)(()=>{e.current=a},[a]),(0,c.useEffect)(()=>{if(!d)return;let a=new EventSource("/api/events");return a.onmessage=a=>{try{let b=JSON.parse(a.data);("session-updated"===b.type||"usage-updated"===b.type)&&e.current(b)}catch{}},a.onerror=()=>{},()=>{a.close()}},[d])}((0,c.useCallback)(a=>{let b="usage-updated"===a.type?"usage":"session";a.mtimeMs<=(g.current[b]??0)||(g.current[b]=a.mtimeMs,f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{d.refresh()},400))},[d]),{enabled:!e}),(0,c.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),null}],46069)},1568,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944),e=a.i(38246),f=a.i(3444),g=a.i(76285),h=a.i(99309),i=a.i(44220);let j="cclens-live-widget-expanded";a.s(["LiveSessionsWidget",0,function({sessions:a,entrySummaries:k={}}){let l=(0,d.usePathname)(),[m,n]=(0,c.useState)(()=>Date.now()),[o,p]=(0,c.useState)(!1);if((0,c.useEffect)(()=>{try{let a=localStorage.getItem(j);null!==a&&p("true"===a)}catch{}},[]),(0,c.useEffect)(()=>{let a=setInterval(()=>n(Date.now()),1e4);return()=>clearInterval(a)},[]),l&&/^\/sessions\/[^/]+$/.test(l))return null;let q=a.filter(a=>{if(!a.lastTimestamp)return!1;let b=Date.parse(a.lastTimestamp);return!Number.isNaN(b)&&m-b<=45e3}).slice().sort((a,b)=>{let c=a.firstTimestamp?Date.parse(a.firstTimestamp):0;return(b.firstTimestamp?Date.parse(b.firstTimestamp):0)-c});if(0===q.length)return null;let r=o?q.slice(0,5):[],s=o?q.length-r.length:0;return(0,b.jsxs)("div",{style:{position:"fixed",right:20,bottom:20,zIndex:100,display:"flex",flexDirection:"column-reverse",gap:6,maxWidth:320,pointerEvents:"auto"},children:[(0,b.jsxs)("button",{type:"button",onClick:()=>{var a;return a=a=>!a,void p(b=>{let c=a(b);try{localStorage.setItem(j,String(c))}catch{}return c})},style:{display:"inline-flex",alignItems:"center",gap:6,padding:"5px 11px 5px 9px",background:"rgba(239, 68, 68, 0.14)",border:"1px solid rgba(239, 68, 68, 0.4)",borderRadius:100,fontSize:10,fontWeight:700,color:"#ef4444",letterSpacing:"0.06em",textTransform:"uppercase",alignSelf:"flex-end",cursor:"pointer",userSelect:"none",backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)",boxShadow:"0 2px 10px rgba(239, 68, 68, 0.15)"},title:o?"Collapse":`Show ${q.length} live session${1===q.length?"":"s"}`,children:[(0,b.jsx)("span",{style:{display:"inline-block",width:6,height:6,borderRadius:"50%",background:"#ef4444",animation:"cs-live-pulse 1.6s ease-in-out infinite"}}),"Live · ",q.length]}),o&&s>0&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--af-text-tertiary)",padding:"0 4px",textAlign:"right"},children:["+",s," more live"]}),r.map(a=>{let c=k[a.id];return(0,b.jsxs)(e.default,{href:`/sessions/${a.id}`,style:{display:"block",padding:"10px 12px",background:"var(--af-surface-elevated)",border:"1px solid var(--af-border-subtle)",borderLeft:"2px solid #ef4444",borderRadius:8,boxShadow:"0 4px 16px rgba(0, 0, 0, 0.12)",textDecoration:"none",color:"var(--af-text)",fontSize:11,lineHeight:1.35,backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)"},title:(a.lastUserPreview||a.firstUserPreview||a.lastAgentPreview)??(0,f.prettyProjectName)(a.projectName),children:[c&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),style:{marginBottom:4},children:c.outcome?(0,b.jsx)(i.OutcomePill,{outcome:c.outcome,size:"sm",label:"text",agent:a.agent}):"skipped_trivial"!==c.enrichmentStatus?(0,b.jsx)(i.OutcomePill,{outcome:null,pending:!0,sessionId:a.id,localDay:c.localDay,size:"sm",agent:a.agent}):null}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,fontWeight:500,color:"var(--af-text)",minWidth:0},children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},children:a.lastUserPreview||a.firstUserPreview||(0,b.jsx)("em",{style:{color:"var(--af-text-tertiary)"},children:"(no user message)"})}),(0,b.jsx)(g.TeamBadge,{session:a,linkable:!1}),(0,b.jsx)(h.AgentBadge,{agent:a.agent})]}),(0,b.jsx)("div",{style:{fontSize:10,color:"var(--af-text-secondary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",marginTop:3,fontStyle:"italic"},children:a.lastAgentPreview?(0,b.jsxs)(b.Fragment,{children:["↳ ",a.lastAgentPreview]}):(0,b.jsx)("em",{style:{color:"var(--af-text-tertiary)"},children:"waiting…"})}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--af-text-tertiary)",fontFamily:"var(--font-mono)",marginTop:4,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:(0,f.prettyProjectName)(a.projectName)})]},a.id)}),(0,b.jsx)("style",{children:`
|
|
2
2
|
@keyframes cs-live-pulse {
|
|
3
3
|
0%, 100% { opacity: 1; transform: scale(1); }
|
|
4
4
|
50% { opacity: 0.4; transform: scale(0.85); }
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[33900,a=>{"use strict";var b=a.i(72131),c=a.i(2913);a.s(["ChangelogMarkRead",0,function({version:a}){return(0,b.useEffect)(()=>{a&&window.localStorage.setItem(c.STORAGE_KEY,a)},[a]),null}])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=apps_web_components_changelog-mark-read_tsx_0hm41sv._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[70709,a=>{"use strict";var b=a.i(717),c=a.i(2157),d=a.i(50227),e=a.i(60526);let f=(0,b.cache)(()=>{let a=process.env.CCLENS_USAGE_LOG||(0,d.join)((0,e.homedir)(),".cclens","usage.jsonl");if(!(0,c.existsSync)(a))return[];let b=(0,c.readFileSync)(a,"utf8"),f=[];for(let a of b.split("\n"))if(a.trim())try{f.push(JSON.parse(a))}catch{}return f}),g=(0,b.cache)(()=>{let a=f().filter(a=>(a.agent??"claude-code")==="claude-code");return a.length>0?a[a.length-1]:null}),h=(0,b.cache)(a=>{let b=f().filter(b=>(b.agent??"claude-code")===a);return b.length>0?b[b.length-1]:null}),i=(0,b.cache)(a=>f().filter(b=>(b.agent??"claude-code")===a)),j=(0,b.cache)(()=>{let a=process.env.CCLENS_PROFILE_CACHE||(0,d.join)((0,e.homedir)(),".cclens","profile.json");if(!(0,c.existsSync)(a))return null;try{let b=JSON.parse((0,c.readFileSync)(a,"utf8"));if(!b.profile?.planTier)return null;return{planTier:b.profile.planTier,rateLimitTier:b.profile.rateLimitTier??null,organizationType:b.profile.organizationType??null,fetchedAtMs:"number"==typeof b.fetchedAtMs?b.fetchedAtMs:0}}catch{return null}});a.s(["PLAN_TIER_LABELS",0,{pro:{label:"Claude Pro",monthlyPriceUsd:20},"pro-max":{label:"Claude Pro Max",monthlyPriceUsd:100},"pro-max-20x":{label:"Claude Pro Max 20x",monthlyPriceUsd:200},custom:{label:"Custom plan",monthlyPriceUsd:0}},"latestUsageSnapshot",0,g,"latestUsageSnapshotByAgent",0,h,"readCachedPlanTier",0,j,"readUsageSnapshots",0,f,"readUsageSnapshotsByAgent",0,i])},40095,a=>{"use strict";let b=/^##\s+\[([^\]]+)\](?:\s+[—\-–]\s+(\S+))?\s*$/,c=/^###\s+(.+?)\s*$/,d=/^[-*]\s+(.+?)\s*$/,e=function(a){let e=a.split(/\r?\n/),f=[],g=null,h=null,i=[];function j(){h&&i.length>0&&(h.bullets.push(i.join(" ").trim()),i=[])}for(let a of e){let e=b.exec(a);if(e){j(),h=null,g={version:e[1].trim(),date:e[2]?.trim()??null,sections:[]},f.push(g);continue}if(!g)continue;let k=c.exec(a);if(k){j(),h={kind:k[1].trim(),bullets:[]},g.sections.push(h);continue}let l=d.exec(a);if(l){j(),i=[l[1]];continue}i.length>0&&a.trim().length>0&&i.push(a.trim())}return j(),f}("# Changelog\n\nAll notable user-facing changes to the Fleetlens CLI (`fleetlens` on npm) are\nrecorded here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).\nThe team-server has its own log at `packages/team-server/CHANGELOG.md`.\n\n## [0.9.0] — 2026-05-07\n\n### Added\n- **Gemini CLI** as the third agent source. Sessions written to `~/.gemini/tmp/<slug>/chats/session-*.jsonl` are now read, parsed, and rendered alongside Claude Code and Codex. Tool calls (`read_file`, `list_directory`, `glob`, `run_shell_command`, `update_topic`, …) and their results show in the session timeline; thinking blocks, multi-write status replay, `$set` / `$rewindTo` semantics, and the legacy single-JSON file shape all handled. Slug → cwd inversion via `~/.gemini/projects.json`. `✺` glyph + purple accent in the UI.\n\n### Changed\n- Session detail timeline drops in-turn idle hatching. Within a turn, every wait — model loading, tool execution, network — is the agent's active time. Only between-turn idle (user reading + composing the next message) renders as hatched.\n- Gemini parser anchors `firstTimestamp`, `lastTimestamp`, and `activeSegments` on conversational events only. Login/OAuth `info` records and `metadata.startTime` (file-creation moment) no longer stretch the session bar back to before the first user message.\n\n## [0.7.1] — 2026-05-07\n\n### Fixed\n- Cycle-peaks trend no longer renders two bars labeled the same day. When Anthropic's rolling 7-day window slid its anchor between consecutive polls, the daemon's bucketer (hour-rounded) recorded both reset boundaries as distinct cycles. They're now merged within a 12 h tolerance — same fix in `apps/web/lib/cycle-peaks.ts` (used by `/usage`) and in `packages/cli/src/team/sync.ts` (the daemon's team-server push), so both the personal `/usage` chart and the team-server's plan-utilization view stay consistent. 5-hour cycles keep no merge tolerance (their anchor is stable; merging would collapse legitimate distinct cycles).\n\n## [0.6.4] — 2026-05-04\n\n### Fixed\n- Cached calibration events per-file so `/usage` warm renders complete in well under a second on large session histories.\n\n## [0.6.3] — 2026-05-04\n\n### Fixed\n- Dropped poisoned auto-week locks left behind by interrupted runs; backfill now gates on the live pipeline lock instead.\n\n## [0.6.2] — 2026-05-04\n\n### Added\n- Last week's digest auto-generates on launch when AI features are on. Disable in Settings → AI features.\n\n## [0.6.1] — 2026-05-04\n\n### Changed\n- Smaller install size — published bundle no longer drags in unused workspace metadata.\n\n## [0.6.0] — 2026-04-30\n\n### Added\n- V2 perception layer. Daily, weekly, and monthly digests synthesized from per-session entries via a strict hierarchical pipeline (entry → day → week → month). Past-period digests are immutable on disk; current-period digests use a 10-min in-memory TTL.\n- `/insights` route with on-demand week and month digest generation, picker history, and force-regen.\n- `fleetlens digest day | week | month [--json]` — CLI surface that reproduces the same digests served at `/insights`.\n- `fleetlens entries [--day | --session | --all] [--json]` — inspect the per-session entry primitive.\n\n### Changed\n- Renamed \"active time\" to \"agent time\" across the dashboard and CLI for clarity.\n\n## [0.4.1] — 2026-04-23\n\n### Added\n- Concurrency view on `/parallelism` page. Bursts colored teal for same-project and purple for cross-project (the genuinely interesting fleet-work signal).\n- Plan utilization sparkline on the sidebar, fed by the usage daemon's 5-min snapshots.\n\n### Fixed\n- Auto-update no longer leaves a zombie web server on the old binary; both server and daemon are torn down before re-exec.\n\n## [0.4.0] — 2026-04-18\n\n### Added\n- Usage daemon (`fleetlens daemon …`) polls `/api/oauth/usage` every 5 min and appends snapshots to `~/.cclens/usage.jsonl`. `fleetlens start` and `fleetlens stop` manage server + daemon together.\n- `fleetlens usage --history` for inspecting past plan utilization.\n\n## [0.3.0] — 2026-04-10\n\n### Added\n- Project rollups with worktree aggregation. Sessions inside `<project>/.worktrees/<name>` roll up under their parent canonical project with a `+N wt` badge.\n- Pinned projects in the sidebar (per-browser via localStorage).\n\n## [0.2.0] — 2026-04-01\n\n### Changed\n- Active-segment computation now uses all timestamped events (system + summary + sidechain + conversational) instead of conversational-only. Earlier filter undercounted by up to 100x on tool-heavy sessions.\n\n## [0.1.0] — 2026-03-15\n\n### Added\n- Initial release. Local-only dashboard for Claude Code sessions: timeline, projects, daily activity bucketing, parallelism detection, per-model cost estimation. Reads JSONL transcripts from `~/.claude/projects/`.\n"),f=e[0]?.version??null;a.s(["ENTRIES",0,e,"LATEST_VERSION",0,f],40095)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=apps_web_lib_0m67-xi._.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
module.exports=[76781,a=>{"use strict";var b=a.i(71306),c=a.i(79847),d=a.i(9185),e=a.i(72842),f=a.i(54897),g=a.i(56157),h=a.i(94331),i=a.i(15988),j=a.i(25766),k=a.i(29725),l=a.i(5785),m=a.i(74793),n=a.i(85826),o=a.i(21565),p=a.i(65911),q=a.i(25128),r=a.i(40781);a.i(69411);var s=a.i(63081),t=a.i(62837),u=a.i(34607),v=a.i(96338),w=a.i(50642),x=a.i(32242),y=a.i(88530),z=a.i(93695),A=a.i(8583),B=a.i(38534);a.i(70408);var C=a.i(22922),D=a.i(78294),E=a.i(16625),F=a.i(88648),G=a.i(51914),H=a.i(25466);let I=["",{children:["changelog",{children:["__PAGE__",{},{metadata:{},page:[()=>a.r(75019),"[project]/apps/web/app/changelog/page.tsx"]},[]]},{metadata:{}},[]]},{layout:[()=>a.r(44665),"[project]/apps/web/app/layout.tsx"],"not-found":[()=>a.r(43619),"[project]/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[()=>a.r(13718),"[project]/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>a.r(18198),"[project]/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[()=>a.r(62212),"[project]/node_modules/next/dist/client/components/builtin/global-error.js"]},[]],J={require:a.r.bind(a),loadChunk:a.l.bind(a)},K=new b.AppPageRouteModule({definition:{kind:c.RouteKind.APP_PAGE,page:"/changelog/page",pathname:"/changelog",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function L(b,M,N){var O,P,Q,R,S;N.requestMeta&&(0,f.setRequestMeta)(b,N.requestMeta),K.isDev&&(0,f.addRequestMeta)(b,"devRequestTimingInternalsEnd",process.hrtime.bigint());let T=!!(0,f.getRequestMeta)(b,"minimalMode"),U="/changelog/page";U=U.replace(/\/index$/,"")||"/";let V=await K.prepare(b,M,{srcPage:U,multiZoneDraftMode:!1});if(!V)return M.statusCode=400,M.end("Bad Request"),null==N.waitUntil||N.waitUntil.call(N,Promise.resolve()),null;let{buildId:W,query:X,params:Y,pageIsDynamic:Z,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,serverActionsManifest:ab,clientReferenceManifest:ac,subresourceIntegrityManifest:ad,prerenderManifest:ae,isDraftMode:af,resolvedPathname:ag,revalidateOnlyGenerated:ah,routerServerContext:ai,nextConfig:aj,parsedUrl:ak,interceptionRoutePatterns:al,deploymentId:am,clientAssetToken:an}=V,ao=(0,o.normalizeAppPath)(U),{isOnDemandRevalidate:ap}=V,aq=aj.experimental.ppr&&!aj.cacheComponents&&(0,G.isInterceptionRouteAppPath)(ag)?null:K.match(ag,ae),ar=(null==aq?void 0:aq.route)??null,as=!!ae.routes[ag],at=b.headers["user-agent"]||"",au=(0,r.getBotType)(at),av=(0,n.isHtmlBotRequest)(b),aw=(0,f.getRequestMeta)(b,"isPrefetchRSCRequest")??"1"===b.headers[q.NEXT_ROUTER_PREFETCH_HEADER],ax=(0,f.getRequestMeta)(b,"isRSCRequest")??!!b.headers[q.RSC_HEADER],ay=(0,p.getIsPossibleServerAction)(b),az=(0,k.checkIsAppPPREnabled)(aj.experimental.ppr),aA=b.headers[v.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,f.getRequestMeta)(b,"postponed")&&T&&az&&ay&&aA&&"string"==typeof aA){let c=parseInt(aA,10),{maxPostponedStateSize:d,maxPostponedStateSizeBytes:e}=(0,B.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize);if(!isNaN(c)&&c>0){if(c>e)return M.statusCode=413,M.end((0,B.getPostponedStateExceededErrorMessage)(d)),null==N.waitUntil||N.waitUntil.call(N,Promise.resolve()),null;let g="1 MB",h=(null==(S=aj.experimental.serverActions)?void 0:S.bodySizeLimit)??g,i=c+(h!==g?a.r(14465).parse(h):1048576),j=await (0,B.readBodyWithSizeLimit)(b,i);if(null===j)return M.statusCode=413,M.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==N.waitUntil||N.waitUntil.call(N,Promise.resolve()),null;if(j.length>=c){let a=j.subarray(0,c).toString("utf8");(0,f.addRequestMeta)(b,"postponed",a);let d=j.subarray(c);(0,f.addRequestMeta)(b,"actionBody",d)}else throw Object.defineProperty(Error(`invariant: expected ${c} bytes of postponed state but only received ${j.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,f.getRequestMeta)(b,"postponed")&&az&&"1"===b.headers[v.NEXT_RESUME_HEADER]&&"POST"===b.method){let{maxPostponedStateSize:a,maxPostponedStateSizeBytes:c}=(0,B.getMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize),d=await (0,B.readBodyWithSizeLimit)(b,c);if(null===d)return M.statusCode=413,M.end((0,B.getPostponedStateExceededErrorMessage)(a)),null==N.waitUntil||N.waitUntil.call(N,Promise.resolve()),null;let e=d.toString("utf8");(0,f.addRequestMeta)(b,"postponed",e)}let aB=!0===K.isDev||!0===aj.experimental.exposeTestingApiInProductionBuild,aC=aB&&("1"===b.headers[q.NEXT_INSTANT_PREFETCH_HEADER]||void 0===b.headers[q.RSC_HEADER]&&"string"==typeof b.headers.cookie&&b.headers.cookie.includes(q.NEXT_INSTANT_TEST_COOKIE+"=")),aD=(az||aC)&&((null==(O=ae.routes[ao]??ae.dynamicRoutes[ao])?void 0:O.renderingMode)==="PARTIALLY_STATIC"||aC&&(aB||(null==ai?void 0:ai.experimentalTestProxy)===!0)),aE=aC&&aD,aF=aE&&!0===K.isDev,aG=!1,aH=aD?(0,f.getRequestMeta)(b,"postponed"):void 0,aI=null==(P=ae.routes[ag])?void 0:P.prefetchDataRoute,aJ=aD&&ax&&!aw&&!aI;T&&(aJ=aJ&&!!aH);let aK=(0,f.getRequestMeta)(b,"segmentPrefetchRSCRequest"),aL=(!au||!aD)&&(!at||(0,n.shouldServeStreamingMetadata)(at,aj.htmlLimitedBots)),aM=!!((ar||as||ae.routes[ao])&&!(au&&aD)),aN=aD&&!0===aj.cacheComponents,aO=!0===K.isDev||!aM||"string"==typeof aH||(aN&&(0,f.getRequestMeta)(b,"onCacheEntryV2")?aJ&&!T:aJ),aP=!!au&&aD,aQ=(null==ar?void 0:ar.remainingPrerenderableParams)??[],aR=(null==ar?void 0:ar.fallback)===null&&((null==(Q=ar.fallbackRootParams)?void 0:Q.length)??0)>0,aS=null;if(!af&&aM&&!aO&&!ay&&!aH&&!aJ){let a=aq?"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:aq.source:null;if(!0===aj.experimental.partialFallbacks&&a&&(null==ar?void 0:ar.fallbackRouteParams)&&!aR){if(aQ.length>0){let b,c=(b=new Map(aQ.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,H.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==Y?void 0:Y[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace(function(a){let{repeat:b,optional:c}=(0,H.getParamProperties)(a.paramType);return c?`[[...${a.paramName}]]`:b?`[...${a.paramName}]`:`[${a.paramName}]`}(d),f)}).join("/")||"/");aS=c!==a?c:null}}else aS=ag}let aT=aS;!aT&&(K.isDev||aM&&Z&&(null==ar?void 0:ar.fallbackRouteParams)&&!ay)&&(aT=ag),K.isDev||af||!aM||!ax||aJ||(0,i.stripFlightHeaders)(b.headers);let aU={...C,tree:I,handler:L,routeModule:K,__next_app__:J};ab&&ac&&(0,m.setManifestsSingleton)({page:U,clientReferenceManifest:ac,serverActionsManifest:ab});let aV=b.method||"GET",aW=(0,e.getTracer)(),aX=aW.getActiveScopeSpan(),aY=!!(null==ai?void 0:ai.isWrappedByNextServer),aZ=!0===aj.experimental.partialFallbacks&&aQ.length>0?(null==ar||null==(R=ar.fallbackRouteParams)?void 0:R.filter(a=>!aQ.some(b=>b.paramName===a.paramName)))??[]:[],a$=async()=>((null==ai?void 0:ai.render404)?await ai.render404(b,M,ak,!1):M.end("This page could not be found"),null);try{let a,d=K.getVaryHeader(ag,al);M.setHeader("Vary",d);let i=async(c,d)=>{let e=new j.NodeNextRequest(b),f=new j.NodeNextResponse(M);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":M.statusCode,"next.rsc":!1});let b=aW.getRootSpanAttributes();if(!b)return;if(b.get("next.span_type")!==g.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${b.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=b.get("next.route");if(d){let b=`${aV} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":b}),c.updateName(b),a&&a!==c&&(a.setAttribute("http.route",d),a.updateName(b))}else c.updateName(`${aV} ${U}`)})},k=(0,f.getRequestMeta)(b,"incrementalCache")||await K.getIncrementalCache(b,aj,ae,T);null==k||k.resetRequestCache(),globalThis.__incrementalCache=k;let m=async({span:a,postponed:c,fallbackRouteParams:d,forceStaticRender:e})=>{let g={query:X,params:Y,page:ao,sharedContext:{buildId:W,deploymentId:am,clientAssetToken:an},serverComponentsHmrCache:(0,f.getRequestMeta)(b,"serverComponentsHmrCache"),fallbackRouteParams:d,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aU,Component:(0,h.interopDefault)(aU),params:Y,routeModule:K,page:U,postponed:c,shouldWaitOnAllReady:aP,serveStreamingMetadata:aL,supportsDynamicResponse:"string"==typeof c||aO,buildManifest:$,nextFontManifest:_,reactLoadableManifest:aa,subresourceIntegrityManifest:ad,setCacheStatus:null==ai?void 0:ai.setCacheStatus,setIsrStatus:null==ai?void 0:ai.setIsrStatus,setReactDebugChannel:null==ai?void 0:ai.setReactDebugChannel,sendErrorsToBrowser:null==ai?void 0:ai.sendErrorsToBrowser,dir:require("path").join(process.cwd(),K.relativeProjectDir),isDraftMode:af,botType:au,isOnDemandRevalidate:ap,isPossibleServerAction:ay,assetPrefix:aj.assetPrefix,nextConfigOutput:aj.output,crossOrigin:aj.crossOrigin,trailingSlash:aj.trailingSlash,images:aj.images,previewProps:ae.preview,enableTainting:aj.experimental.taint,htmlLimitedBots:aj.htmlLimitedBots,reactMaxHeadersLength:aj.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:k,cacheLifeProfiles:aj.cacheLife,basePath:aj.basePath,serverActions:aj.experimental.serverActions,logServerFunctions:"object"==typeof aj.logging&&!!aj.logging.serverFunctions,...aE||aF||aG?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aF}:{},cacheComponents:!!aj.cacheComponents,experimental:{isRoutePPREnabled:aD,expireTime:aj.expireTime,staleTimes:aj.experimental.staleTimes,dynamicOnHover:!!aj.experimental.dynamicOnHover,optimisticRouting:!!aj.experimental.optimisticRouting,inlineCss:!!aj.experimental.inlineCss,prefetchInlining:aj.experimental.prefetchInlining??!1,authInterrupts:!!aj.experimental.authInterrupts,cachedNavigations:!!aj.experimental.cachedNavigations,clientTraceMetadata:aj.experimental.clientTraceMetadata||[],clientParamParsingOrigins:aj.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,A.parseMaxPostponedStateSize)(aj.experimental.maxPostponedStateSize)},waitUntil:N.waitUntil,onClose:a=>{M.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(a,c,d,e)=>K.onRequestError(b,a,d,e,ai),err:(0,f.getRequestMeta)(b,"invokeError")}};e&&(g.renderOpts.supportsDynamicResponse=!1);let j=await i(a,g),{metadata:l}=j,{cacheControl:m,headers:n={},fetchTags:o,fetchMetrics:p}=l;if(o&&(n[v.NEXT_CACHE_TAGS_HEADER]=o),b.fetchMetrics=p,aM&&(null==m?void 0:m.revalidate)===0&&!K.isDev&&!aD){let a=l.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ag}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
+
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:s.CachedRouteKind.APP_PAGE,html:j,headers:n,rscData:l.flightData,postponed:l.postponed,status:l.statusCode,segmentData:l.segmentData},cacheControl:m}},n=async({hasResolved:a,previousCacheEntry:d,isRevalidating:e,span:g,forceStaticRender:h=!1})=>{let i,j=!1===K.isDev,o=a||M.writableEnded;if(ap&&ah&&!d&&!T)return(null==ai?void 0:ai.render404)?await ai.render404(b,M):(M.statusCode=404,M.end("This page could not be found")),null;if(ar&&(i=(0,t.parseFallbackField)(ar.fallback)),!0===aj.experimental.partialFallbacks&&(null==ar?void 0:ar.fallback)===null&&!aR&&aQ.length>0&&(i=t.FallbackMode.PRERENDER),i===t.FallbackMode.PRERENDER&&(0,r.isBot)(at)&&(!aD||av)&&(i=t.FallbackMode.BLOCKING_STATIC_RENDER),(null==d?void 0:d.isStale)===-1&&(ap=!0),ap&&(i!==t.FallbackMode.NOT_FOUND||d)&&(i=t.FallbackMode.BLOCKING_STATIC_RENDER),!T&&i!==t.FallbackMode.BLOCKING_STATIC_RENDER&&aT&&!o&&!af&&Z&&(j||!as)){if((j||ar)&&i===t.FallbackMode.NOT_FOUND){if(aj.adapterPath)return await a$();throw new z.NoFallbackError}if(aD&&(aj.cacheComponents?!aJ:!ax)){let d=j&&"string"==typeof(null==ar?void 0:ar.fallback)?ar.fallback:ao,e=(j||aE)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,l.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,l.getFallbackRouteParams)(ao,K):null;aE&&e&&(0,f.addRequestMeta)(b,"fallbackParams",e);let h=await K.handleResponse({cacheKey:d,req:b,nextConfig:aj,routeKind:c.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ae,isRoutePPREnabled:aD,responseGenerator:async()=>m({span:g,postponed:void 0,fallbackRouteParams:e,forceStaticRender:!0}),waitUntil:N.waitUntil,isMinimalMode:T});if(null===h)return null;if(h)return T||!aD||!(aQ.length>0)||!0!==aj.experimental.partialFallbacks||!aS||!k||ap||aG||aB||aC||aw||(0,F.scheduleOnNextTick)(async()=>{let c=K.getResponseCache(b);try{await c.revalidate(aS,k,aD,!1,a=>m({span:a.span,postponed:void 0,fallbackRouteParams:aZ.length>0?(0,l.createOpaqueFallbackRouteParams)(aZ):null,forceStaticRender:!0}),null,a,N.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete h.cacheControl,h}}let p=ap||e||!aH?void 0:aH;if(aN&&!T&&k&&(aJ||ay)&&!h){let c=await k.get(ag,{kind:s.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});c&&c.value&&c.value.kind===s.CachedRouteKind.APP_PAGE&&(p=c.value.postponed,c&&(-1===c.isStale||!0===c.isStale)&&(0,F.scheduleOnNextTick)(async()=>{let c=K.getResponseCache(b);try{await c.revalidate(ag,k,aD,!1,a=>n({...a,forceStaticRender:!0}),null,a,N.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aE||aF)&&void 0!==p)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:s.CachedRouteKind.PAGES,html:u.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let q=(j&&(0,f.getRequestMeta)(b,"renderFallbackShell")||aE&&!as)&&(null==ar?void 0:ar.fallbackRouteParams)?(0,l.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams):aG?(0,l.getFallbackRouteParams)(ao,K):null;if((j||aE)&&aj.cacheComponents&&!as&&(null==ar?void 0:ar.fallbackRouteParams)){let a=(0,l.createOpaqueFallbackRouteParams)(ar.fallbackRouteParams);a&&(0,f.addRequestMeta)(b,"fallbackParams",a)}return m({span:g,postponed:p,fallbackRouteParams:q,forceStaticRender:h})},o=async a=>{var d,e,g,h,i;let j,k=await K.handleResponse({cacheKey:aS,responseGenerator:b=>n({span:a,...b}),routeKind:c.RouteKind.APP_PAGE,isOnDemandRevalidate:ap,isRoutePPREnabled:aD,req:b,nextConfig:aj,prerenderManifest:ae,waitUntil:N.waitUntil,isMinimalMode:T});if(af&&M.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&M.setHeader("Cache-Control","no-cache, must-revalidate"),!k){if(aS)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(d=k.value)?void 0:d.kind)!==s.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(g=k.value)?void 0:g.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let l="string"==typeof k.value.postponed;ax&&!ay&&am&&M.setHeader(v.NEXT_NAV_DEPLOYMENT_ID_HEADER,am),aM&&!aJ&&(!l||aw)&&(T||M.setHeader("x-nextjs-cache",ap?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),M.setHeader(q.NEXT_IS_PRERENDER_HEADER,"1"));let{value:o}=k;if(aH)j={revalidate:0,expire:void 0};else if(aJ)j={revalidate:0,expire:void 0};else if(!K.isDev)if(af)j={revalidate:0,expire:void 0};else if(aM){if(k.cacheControl)if("number"==typeof k.cacheControl.revalidate){if(k.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${k.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});j={revalidate:k.cacheControl.revalidate,expire:(null==(h=k.cacheControl)?void 0:h.expire)??aj.expireTime}}else j={revalidate:v.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else M.getHeader("Cache-Control")||(j={revalidate:0,expire:void 0});if(k.cacheControl=j,"string"==typeof aK&&(null==o?void 0:o.kind)===s.CachedRouteKind.APP_PAGE&&o.segmentData){M.setHeader(q.NEXT_DID_POSTPONE_HEADER,"2");let a=null==(i=o.headers)?void 0:i[v.NEXT_CACHE_TAGS_HEADER];T&&aM&&a&&"string"==typeof a&&M.setHeader(v.NEXT_CACHE_TAGS_HEADER,a);let c=o.segmentData.get(aK);return void 0!==c?(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:u.default.fromStatic(c,q.RSC_CONTENT_TYPE_HEADER),cacheControl:k.cacheControl}):(M.statusCode=204,(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:u.default.EMPTY,cacheControl:k.cacheControl}))}let p=aN?(0,f.getRequestMeta)(b,"onCacheEntryV2")??(0,f.getRequestMeta)(b,"onCacheEntry"):(0,f.getRequestMeta)(b,"onCacheEntry");if(p&&await p(k,{url:(0,f.getRequestMeta)(b,"initURL")??b.url}))return null;if(o.headers){let a={...o.headers};for(let[b,c]of(T&&aM||delete a[v.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==c)if(Array.isArray(c))for(let a of c)M.appendHeader(b,a);else"number"==typeof c&&(c=c.toString()),M.appendHeader(b,c)}let r=null==(e=o.headers)?void 0:e[v.NEXT_CACHE_TAGS_HEADER];if(T&&aM&&r&&"string"==typeof r&&M.setHeader(v.NEXT_CACHE_TAGS_HEADER,r),!o.status||ax&&aD||(M.statusCode=o.status),!T&&o.status&&D.RedirectStatusCode[o.status]&&ax&&(M.statusCode=200),l&&!aJ&&M.setHeader(q.NEXT_DID_POSTPONE_HEADER,"1"),ax&&!af){if(void 0===o.rscData){if(o.html.contentType!==q.RSC_CONTENT_TYPE_HEADER)if(aj.cacheComponents)return M.statusCode=404,(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:u.default.EMPTY,cacheControl:k.cacheControl});else throw Object.defineProperty(new E.InvariantError(`Expected RSC response, got ${o.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:o.html,cacheControl:k.cacheControl})}return(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:u.default.fromStatic(o.rscData,q.RSC_CONTENT_TYPE_HEADER),cacheControl:k.cacheControl})}let t=o.html;if(aC&&aE){let a=!0===K.isDev?crypto.randomUUID():null;return t.pipeThrough((0,x.createInstantTestScriptInsertionTransformStream)(a)),(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})}if(!l||T||ax)return(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:t,cacheControl:k.cacheControl});if(aE||aF)return t.push(new ReadableStream({start(a){a.enqueue(w.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let z=new TransformStream;return t.push(z.readable),m({span:a,postponed:o.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==s.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(z.writable)}).catch(a=>{z.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,y.sendRenderResult)({req:b,res:M,generateEtags:aj.generateEtags,poweredByHeader:aj.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aY||!aX)return a=aW.getActiveScopeSpan(),await aW.withPropagatedContext(b.headers,()=>aW.trace(g.BaseServerSpan.handleRequest,{spanName:`${aV} ${U}`,kind:e.SpanKind.SERVER,attributes:{"http.method":aV,"http.target":b.url}},o),void 0,!aY);await o(aX)}catch(a){throw a instanceof z.NoFallbackError||await K.onRequestError(b,a,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:aM,isOnDemandRevalidate:ap})},!1,ai),a}}a.s(["__next_app__",0,J,"handler",0,L,"routeModule",0,K],19031),a.i(19031),a.s(["ClientPageRoot",()=>C.ClientPageRoot,"ClientSegmentRoot",()=>C.ClientSegmentRoot,"Fragment",()=>C.Fragment,"HTTPAccessFallbackBoundary",()=>C.HTTPAccessFallbackBoundary,"InstantValidation",()=>C.InstantValidation,"LayoutRouter",()=>C.LayoutRouter,"LoadingBoundaryProvider",()=>C.LoadingBoundaryProvider,"Postpone",()=>C.Postpone,"RenderFromTemplateContext",()=>C.RenderFromTemplateContext,"RootLayoutBoundary",()=>C.RootLayoutBoundary,"SegmentViewNode",()=>C.SegmentViewNode,"SegmentViewStateNode",()=>C.SegmentViewStateNode,"__next_app__",0,J,"actionAsyncStorage",()=>C.actionAsyncStorage,"captureOwnerStack",()=>C.captureOwnerStack,"collectPrefetchHints",()=>C.collectPrefetchHints,"collectSegmentData",()=>C.collectSegmentData,"createElement",()=>C.createElement,"createMetadataComponents",()=>C.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>C.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>C.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>C.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>C.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>C.createTemporaryReferenceSet,"decodeAction",()=>C.decodeAction,"decodeFormState",()=>C.decodeFormState,"decodeReply",()=>C.decodeReply,"handler",0,L,"patchFetch",()=>C.patchFetch,"preconnect",()=>C.preconnect,"preloadFont",()=>C.preloadFont,"preloadStyle",()=>C.preloadStyle,"prerender",()=>C.prerender,"renderToReadableStream",()=>C.renderToReadableStream,"routeModule",0,K,"serverHooks",()=>C.serverHooks,"taintObjectReference",()=>C.taintObjectReference,"workAsyncStorage",()=>C.workAsyncStorage,"workUnitAsyncStorage",()=>C.workUnitAsyncStorage],76781)}];
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-page_0uwo3v3.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[30375,a=>{"use strict";let b={kind:"claude-code",displayName:"Claude Code",shortLabel:"Claude",accentColor:"var(--af-accent)",iconChar:"✦"},c={kind:"codex",displayName:"Codex (OpenAI)",shortLabel:"Codex",accentColor:"rgb(16, 163, 127)",iconChar:"◆"},d=[b,c],e=new Set(d.map(a=>a.kind));a.s(["CLAUDE_CODE_METADATA",0,b,"CODEX_METADATA",0,c,"agentMetadata",0,d,"getAgentMetadata",0,function(a){return d.find(b=>b.kind===a)},"isAgentKind",0,function(a){return"string"==typeof a&&e.has(a)}])},10687,98049,a=>{"use strict";let b={sonnet:{input:3,output:15,cacheRead:.3,cache_1h:3.75,cache_5m:3.75},opus:{input:5,output:25,cacheRead:.5,cache_1h:6.25,cache_5m:6.25},haiku:{input:1,output:5,cacheRead:.1,cache_1h:1.25,cache_5m:1.25}};function c(a,b,c){let d=0;for(;d<c;){let e=d+c>>>1;a[e]<b?d=e+1:c=e}return d}function d(a,b,d){if(d<=b)return 0;let e=a.ts.length,f=c(a.ts,b,e),g=c(a.ts,d,e);return a.cum[g]-a.cum[f]}a.s(["RATE_PER_PCT_5H",0,{pro:.2,"pro-max":.4,"pro-max-20x":2,custom:2},"RATE_PER_PCT_7D",0,{pro:1.2,"pro-max":2.4,"pro-max-20x":12,custom:12},"buildSpendIndex",0,function(a){let c=a.map(a=>({e:a,t:Date.parse(a.ts)})).filter(a=>!Number.isNaN(a.t)).sort((a,b)=>a.t-b.t),d=new Float64Array(c.length),e=new Float64Array(c.length+1),f=0;for(let a=0;a<c.length;a++)d[a]=c[a].t,e[a]=f,f+=function(a){let c=b[a.family];return(a.input*c.input+a.output*c.output+a.cacheRead*c.cacheRead+a.cache_1h*c.cache_1h+a.cache_5m*c.cache_5m)/1e6}(c[a].e);return e[c.length]=f,{ts:d,cum:e}},"collectSnapPairRates",0,function(a,b,c){let e=c?.minTravelPct??1,f=c?.minDollars??1,g=c?.maxGapMs??864e5,h=[];for(let[c,i]of a)for(let a=1;a<i.length;a++){let j=i[a-1],k=i[a],l=k.ts-j.ts,m=k.pct-j.pct;if(l<=0||l>g||m<e)continue;let n=d(b,j.ts,k.ts);n<f||h.push({cycleEndMs:c,rate:n/m,travel:m,dollars:n,gapMs:l})}return h},"groupSnapsByCycle",0,function(a,b){let c=new Map;for(let d of a){if(!d.captured_at)continue;let a=b(d);if(!a?.resets_at||"number"!=typeof a.utilization)continue;let e=Date.parse(d.captured_at),f=Date.parse(a.resets_at);if(Number.isNaN(e)||Number.isNaN(f))continue;let g=36e5*Math.round(f/36e5),h=c.get(g)??[];h.push({ts:e,pct:a.utilization}),c.set(g,h)}for(let a of c.values())a.sort((a,b)=>a.ts-b.ts);return c},"modelFamily",0,function(a){let b=(a??"").toLowerCase();return b&&"<synthetic>"!==b?b.includes("haiku")?"haiku":b.includes("opus")?"opus":b.includes("sonnet")?"sonnet":null:null},"predictAnchored",0,function(a,b,c,e,f,g){let h=e-36e5*f;if(c<=0&&(c=1),0===b.length)return Math.max(0,d(a,h,g)/c);let i=-1;for(let a=0;a<b.length;a++)if(b[a].ts<=g)i=a;else break;if(i>=0&&i+1<b.length){let c=b[i],e=b[i+1];if(e.pct===c.pct)return c.pct;let f=d(a,c.ts,e.ts);if(f<=0){let a=(g-c.ts)/(e.ts-c.ts);return c.pct+(e.pct-c.pct)*a}let h=d(a,c.ts,g);return c.pct+(e.pct-c.pct)*(h/f)}if(i>=0){let e=b[i];return e.pct+d(a,e.ts,g)/c}let j=b[0];if(g<=h)return 0;let k=d(a,h,j.ts);if(k<=0){let a=(g-h)/(j.ts-h);return j.pct*a}let l=d(a,h,g);return j.pct*(l/k)},"userSoloRate",0,function(a,b=.9){if(a.length<3)return null;let c=a.map(a=>a.rate).sort((a,b)=>a-b),d=Math.min(Math.floor(c.length*b),c.length-1);return c[d]}],10687);let e={input:0,output:0,cacheRead:0,cacheWrite:0};function f(a,b=200){let c=a.replace(/<[^>]+>/g,"").replace(/\s+/g," ").trim();return c.length>b?c.slice(0,b-1)+"…":c}let g=/^\s*<teammate-message\s+teammate_id="([^"]+)"[^>]*>([\s\S]*?)<\/teammate-message>/;function h(a){let b=a.match(g);if(!b)return;let c=b[1],d=b[2].trim(),e="message";if(d.startsWith("{"))try{let a=JSON.parse(d);"idle_notification"===a.type?e="idle-notification":"shutdown_request"===a.type?e="shutdown-request":"shutdown_approved"===a.type?e="shutdown-approved":"task_assignment"===a.type?e="task-assignment":"teammate_terminated"===a.type&&(e="teammate-terminated")}catch{}return{teammateId:c,body:d,kind:e}}function i(a){if(!a||"object"!=typeof a)return;let b=a=>"number"==typeof a?a:0;return{input:b(a.input_tokens),output:b(a.output_tokens),cacheRead:b(a.cache_read_input_tokens),cacheWrite:b(a.cache_creation_input_tokens)}}a.s(["parseTranscript",0,function(a){let b,c,d,g,j,k,l,m,n=[];for(let b=0;b<a.length;b++){let c=function(a,b){if(!a||"object"!=typeof a)return null;let c=String(a.type??""),d=a.uuid,e=a.parentUuid??null,g=a.timestamp;if("assistant"===c){let h,j,k,l=a.message??{},m=l.content??[],n=i(l.usage),o=l.model,p=a.requestId,q=l.id,r=l.stop_reason,s=m[0],t="agent";return s?.type==="thinking"?(t="agent-thinking",h="[thinking] "+f(s.thinking,140)):s?.type==="tool_use"?(t="tool-call",j=s.name,k=s.id,h=`${s.name} `+f(JSON.stringify(s.input??{}),100)):h=s?.type==="text"?f(s.text,200):`<assistant:${s?.type??"empty"}>`,{index:b,uuid:d,parentUuid:e,timestamp:g,role:t,rawType:c,preview:h,blocks:m,usage:n,model:o,requestId:p,messageId:q,stopReason:r,toolName:j,toolUseId:k,raw:a}}if("user"===c){let i=(a.message??{}).content;if("string"==typeof i){let j=h(i);return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"user",rawType:c,preview:f(i,200),blocks:[{type:"text",text:i}],raw:a,teammateMessage:j}}if(Array.isArray(i)){let j=i[0];if(j?.type==="tool_result")return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"tool-result",rawType:c,preview:f("string"==typeof j.content?j.content:JSON.stringify(j.content),200),blocks:i,toolUseId:j.tool_use_id,toolResult:a.toolUseResult,raw:a};let k=i.find(a=>a?.type==="text"),l=k?h(k.text):void 0;return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"user",rawType:c,preview:k?f(k.text,200):f(JSON.stringify(i),200),blocks:i,raw:a,teammateMessage:l}}}if("attachment"===c){let h=a.attachment??{},i=String(h.type??"attachment"),j=`<attachment: ${i}>`;return"string"==typeof h.content&&h.content.length>0?j=`[${i}] `+f(h.content,140):Array.isArray(h.addedNames)&&(j=`[${i}] +${h.addedNames.length} names`),{index:b,uuid:d,parentUuid:e,timestamp:g,role:"system",rawType:c,preview:j,blocks:[{type:"text",text:JSON.stringify(h,null,2)}],attachmentType:i,raw:a}}return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"meta",rawType:c||"unknown",preview:`${c}: ${f(JSON.stringify(a),140)}`,blocks:[{type:"text",text:JSON.stringify(a,null,2)}],raw:a}}(a[b],b);c&&n.push(c)}let o=n.map(a=>a.timestamp?Date.parse(a.timestamp):void 0).filter(a=>"number"==typeof a&&!Number.isNaN(a)),p=o.length?Math.min(...o):void 0,q=o.length?Math.max(...o):void 0,r=void 0!==p?new Date(p).toISOString():void 0,s=void 0!==q?new Date(q).toISOString():void 0;for(let a of n){if(!a.timestamp)continue;let b=Date.parse(a.timestamp);Number.isNaN(b)||void 0!==p&&(a.tOffsetMs=Math.max(0,b-p))}let t=n.filter(a=>{let b;return a.timestamp&&("user"===(b=a.role)||"agent"===b||"agent-thinking"===b||"tool-call"===b||"tool-result"===b)}).map(a=>({e:a,ms:Date.parse(a.timestamp)})).filter(a=>!Number.isNaN(a.ms)).sort((a,b)=>a.ms-b.ms);for(let a=1;a<t.length;a++)t[a].e.gapMs=Math.max(0,t[a].ms-t[a-1].ms);let u=n.filter(a=>a.timestamp).map(a=>Date.parse(a.timestamp)).filter(a=>!Number.isNaN(a)).sort((a,b)=>a-b),v=[],w=0;if(u.length>0){let a=u[0],b=u[0];for(let c=1;c<u.length;c++){let d=u[c],e=d-b;e>18e4?(v.push({startMs:a,endMs:b}),a=d):e>0&&(w+=e),b=d}v.push({startMs:a,endMs:b})}let x=new Map,y=[];for(let a of n){if(!a.timestamp)continue;let b=Date.parse(a.timestamp);if(!Number.isNaN(b)){if("assistant"===a.rawType&&a.usage&&a.messageId){let c=x.get(a.messageId);c?(c.siblings.push(a),b<c.ms&&(c.rep=a,c.ms=b)):x.set(a.messageId,{rep:a,ms:b,siblings:[a]})}else if("system"===a.rawType){let c=a.raw;if(c?.subtype!=="compact_boundary")continue;let d=c.compactMetadata??{};y.push({ms:b,trigger:"manual"===d.trigger?"manual":"auto",preTokens:"number"==typeof d.preTokens?d.preTokens:0})}}}let z=[...x.values()].sort((a,b)=>a.ms-b.ms);y.sort((a,b)=>a.ms-b.ms);let A=0,B=0,C=(a,b)=>{for(let c of a.siblings)c.coldResume=b;A++,B+=b.writeTokens},D=new Set;for(let a of y){let b,c=z.find(b=>b.ms>a.ms&&(b.rep.usage?.cacheWrite??0)>=1e3);if(!c)continue;for(let c=z.length-1;c>=0;c--)if(z[c].ms<=a.ms){b=z[c].ms;break}let d=c.rep.usage,e=d.cacheWrite+d.cacheRead;C(c,{trigger:"compact",gapMs:void 0!==b?c.ms-b:0,writeTokens:d.cacheWrite,writeRatio:e>0?d.cacheWrite/e:0,compact:{trigger:a.trigger,preTokens:a.preTokens}}),D.add(c.rep.messageId)}for(let a=1;a<z.length;a++){let b=z[a-1],c=z[a];if(D.has(c.rep.messageId))continue;let d=c.rep.usage,e=d.cacheWrite+d.cacheRead,f=e>0?d.cacheWrite/e:0,g=c.ms-b.ms;g>3e5&&d.cacheWrite>=1e3&&f>=.3&&C(c,{trigger:"idle",gapMs:g,writeTokens:d.cacheWrite,writeRatio:f})}let E={...e},F=new Set,G="",H=!1,I=!1,J=0,K=0,L=0,M=0,N=new Set;for(let a of n){if("tool-call"===a.role){J++;let b=a.blocks.find(a=>a&&"tool_use"===a.type);if(b){let a=b.input??{};if("TeamCreate"===b.name&&(H=!0),"SendMessage"===b.name){let b="string"==typeof a.to?a.to:"";b&&"team-lead"!==b&&(I=!0)}let c="string"==typeof a.file_path?a.file_path:void 0;if("Edit"===b.name&&c){N.add(c);let b="string"==typeof a.old_string?a.old_string:"",d="string"==typeof a.new_string?a.new_string:"",e=b?b.split("\n").length:0,f=d?d.split("\n").length:0;L+=Math.max(0,f-e),M+=Math.max(0,e-f)}else if("Write"===b.name&&c){N.add(c);let b="string"==typeof a.content?a.content:"";L+=b?b.split("\n").length:0}}}if("user"===a.role){let b=a.raw?.message,c="string"==typeof b?.content?b.content:"",d=c.startsWith("<command-name>")||c.startsWith("<local-command-caveat>")||c.startsWith("Base directory for this skill:")||c.startsWith("<task-notification>"),e=void 0!==a.teammateMessage&&!j;d||e||(k||(k=a.teammateMessage?a.teammateMessage.body:a.preview),K++,m=a.preview)}"agent"===a.role&&(l=a.preview)}for(let e of a)if(e&&"object"==typeof e&&("string"!=typeof e.sessionId||G||(G=e.sessionId),"string"!=typeof e.cwd||c||(c=e.cwd),"string"!=typeof e.gitBranch||d||(d=e.gitBranch),"string"!=typeof e.teamName||g||(g=e.teamName),"string"!=typeof e.agentName||j||(j=e.agentName),"assistant"===e.type)){let a=e.message;if(a){"string"!=typeof a.model||b||(b=a.model);let c="string"==typeof a.id?a.id:void 0,d="string"==typeof e.requestId?e.requestId:void 0,f=null!=c?`${c}:${d??""}`:void 0;if(f&&F.has(f))continue;f&&F.add(f);let g=i(a.usage);g&&(E.input+=g.input,E.output+=g.output,E.cacheRead+=g.cacheRead,E.cacheWrite+=g.cacheWrite)}}return{events:n,meta:{sessionId:G,firstTimestamp:r,lastTimestamp:s,durationMs:void 0!==p&&void 0!==q?q-p:void 0,eventCount:n.length,model:b,cwd:c,gitBranch:d,totalUsage:E,status:"idle",firstUserPreview:k,lastUserPreview:m,lastAgentPreview:l,toolCallCount:J,turnCount:K,airTimeMs:w,activeSegments:v,linesAdded:L,linesRemoved:M,filesEdited:N.size,coldResumeCount:A,cacheRebuildTokens:B,teamName:g,agentName:j,isTeamLead:void 0!==g&&void 0===j&&(H||I)}}}],98049)},48024,a=>{"use strict";let b={input:0,output:0,cacheRead:0,cacheWrite:0};function c(a){let b=new Date(a),c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0");return`${c}-${d}-${e}`}let d=["/.claude/worktrees/","/.worktrees/","/claude/worktrees/"];function e(a){for(let b of d){let c=a.lastIndexOf(b);if(c>=0)return{idx:c,marker:b}}return null}function f(a){let b=a.replace(/\/{2,}/g,"/"),c=e(b);return c?b.slice(0,c.idx):b}function g(a){let b=a.replace(/\/{2,}/g,"/"),c=e(b);if(!c)return null;let d=b.slice(c.idx+c.marker.length),f=d.indexOf("/");return f>=0?d.slice(0,f):d}function h(a){return{date:a,sessions:0,toolCalls:0,turns:0,tokens:{...b},durationMs:0,airTimeMs:0,peakParallelism:0}}let i=/gh\s+pr\s+create\b/i,j=/#(\d+)/,k=/--title\s+["']([^"']+)["']/;function l(a){let c={sessionCount:a.length,totalDurationMs:0,totalAirTimeMs:0,totalTokens:{...b},totalToolCalls:0,totalTurns:0,avgTurnsPerSession:0,avgDurationMs:0,totalLinesAdded:0,totalLinesRemoved:0,totalFilesEdited:0};for(let b of a)c.totalDurationMs+=b.durationMs??0,c.totalAirTimeMs+=b.airTimeMs??b.durationMs??0,c.totalTokens.input+=b.totalUsage.input,c.totalTokens.output+=b.totalUsage.output,c.totalTokens.cacheRead+=b.totalUsage.cacheRead,c.totalTokens.cacheWrite+=b.totalUsage.cacheWrite,c.totalToolCalls+=b.toolCallCount??0,c.totalTurns+=b.turnCount??0,c.totalLinesAdded+=b.linesAdded??0,c.totalLinesRemoved+=b.linesRemoved??0,c.totalFilesEdited+=b.filesEdited??0;return a.length>0&&(c.avgTurnsPerSession=c.totalTurns/a.length,c.avgDurationMs=c.totalDurationMs/a.length),c}function m(a,b){let c=b.minDurationMs??6e4,d=b.mergeGapMs??6e5,e=b.minActive??2,f=[];for(let b of a)for(let a of b.segments)a.endMs<=a.startMs||(f.push({ms:a.startMs,delta:1,sessionId:b.id}),f.push({ms:a.endMs,delta:-1,sessionId:b.id}));f.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let g=new Map,h=[],i=null;for(let a of f){if(1===a.delta)g.set(a.sessionId,(g.get(a.sessionId)??0)+1);else{let b=(g.get(a.sessionId)??0)-1;b<=0?g.delete(a.sessionId):g.set(a.sessionId,b)}let b=g.size;if(b>=e)if(i)for(let c of(i.endMs=a.ms,b>i.peak&&(i.peak=b),g.keys()))i.sessionIds.add(c);else i={startMs:a.ms,endMs:a.ms,peak:b,sessionIds:new Set(g.keys())};else i&&(i.endMs=a.ms,h.push(i),i=null)}i&&h.push(i);let j=h.filter(a=>a.endMs-a.startMs>=c),k=[];for(let a of j){let b=k[k.length-1];if(b&&a.startMs-b.endMs<=d)for(let c of(b.endMs=a.endMs,a.peak>b.peak&&(b.peak=a.peak),a.sessionIds))b.sessionIds.add(c);else k.push({startMs:a.startMs,endMs:a.endMs,peak:a.peak,sessionIds:new Set(a.sessionIds)})}let l=new Map;for(let b of a)l.set(b.id,b.projectDir);return k.map(a=>{let b=Array.from(new Set(Array.from(a.sessionIds).map(a=>l.get(a)).filter(a=>!!a)));return{startMs:a.startMs,endMs:a.endMs,peak:a.peak,sessionIds:Array.from(a.sessionIds),projectDirs:b,crossProject:b.length>1}})}a.s(["buildGanttDay",0,function(a,b){let[c,d,e]=b.split("-").map(Number),f=new Date(c,d-1,e).getTime(),g=new Date(c,d-1,e+1).getTime(),h=[];for(let b of a){let a=(function(a,b=18e4){let c=a.filter(a=>a.timestamp).map(a=>Date.parse(a.timestamp)).filter(a=>!Number.isNaN(a)).sort((a,b)=>a-b);if(0===c.length)return[];let d=[],e=c[0],f=c[0];for(let a=1;a<c.length;a++){let g=c[a];g-f>b&&(d.push({startMs:e,endMs:f}),e=g),f=g}return d.push({startMs:e,endMs:f}),d})(b.events).filter(a=>a.endMs>f&&a.startMs<g).map(a=>({startMs:Math.max(a.startMs,f),endMs:Math.min(a.endMs,g)}));if(0===a.length)continue;let c=Math.min(...a.map(a=>a.startMs)),d=Math.max(...a.map(a=>a.endMs)),e=a.reduce((a,b)=>a+(b.endMs-b.startMs),0);h.push({id:b.id,agent:b.agent,projectName:b.projectName,projectDir:b.projectDir,firstUserPreview:b.firstUserPreview,lastAgentPreview:b.lastAgentPreview,model:b.model,segments:a,startMs:c,endMs:d,activeMs:e,totalUsage:b.totalUsage})}h.sort((a,b)=>a.startMs-b.startMs);let i=[];for(let a of h)for(let b of a.segments)i.push({ms:b.startMs,delta:1}),i.push({ms:b.endMs,delta:-1});i.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let j=0,k=0;for(let a of i)(j+=a.delta)>k&&(k=j);return{date:b,sessions:h,dayStartMs:f,dayEndMs:g,peakActiveParallelism:k}},"canonicalProjectName",0,f,"computeBurstsFromSessions",0,function(a,b={}){let c=[];for(let b of a)b.activeSegments&&0!==b.activeSegments.length&&c.push({id:b.id,projectDir:b.projectDir,segments:b.activeSegments});return m(c,b)},"computeParallelismBursts",0,function(a,b={}){return m(a.sessions,b)},"dailyActivity",0,function(a){let b,d;if(0===a.length)return[];let e=new Map,f=a=>{(!b||a<b)&&(b=a),(!d||a>d)&&(d=a);let c=e.get(a)??h(a);return e.set(a,c),c};for(let b of a){let a=function(a){if(!a.firstTimestamp)return;let b=Date.parse(a.firstTimestamp);if(!Number.isNaN(b))return c(b)}(b);if(a){let c=f(a);c.toolCalls+=b.toolCallCount??0,c.turns+=b.turnCount??0,c.tokens.input+=b.totalUsage.input,c.tokens.output+=b.totalUsage.output,c.tokens.cacheRead+=b.totalUsage.cacheRead,c.tokens.cacheWrite+=b.totalUsage.cacheWrite,c.durationMs+=b.durationMs??0}let d=b.activeSegments;if(d&&d.length>0){let a=new Set;for(let b of d){let d=b.startMs;for(;d<b.endMs;){let e=c(d);a.add(e);let g=new Date(d);g.setHours(24,0,0,0);let h=Math.min(g.getTime(),b.endMs),i=f(e);i.airTimeMs+=h-d,d=h}}for(let b of a){let a=f(b);a.sessions++}}else if(a){let c=f(a);c.sessions++,c.airTimeMs+=b.airTimeMs??0}}let g=b&&d?function(a,b){let[d,e,f]=a.split("-").map(Number),[g,h,i]=b.split("-").map(Number),j=new Date(d,e-1,f),k=new Date(g,h-1,i),l=[];for(let a=new Date(j);a<=k;a.setDate(a.getDate()+1))l.push(c(a.getTime()));return l}(b,d):[],i=[];for(let a of g)i.push(e.get(a)??h(a));let j=function(a){let b=[];for(let c of a)for(let a of c.activeSegments&&c.activeSegments.length>0?c.activeSegments:c.firstTimestamp&&c.lastTimestamp?(()=>{let a=Date.parse(c.firstTimestamp),b=Date.parse(c.lastTimestamp);return Number.isNaN(a)||Number.isNaN(b)||b<a?[]:[{startMs:a,endMs:b}]})():[])b.push({ms:a.startMs,delta:1,sessionId:c.id}),b.push({ms:a.endMs,delta:-1,sessionId:c.id});b.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let c=new Map,d=[];for(let a of b){if(1===a.delta)c.set(a.sessionId,(c.get(a.sessionId)??0)+1);else{let b=(c.get(a.sessionId)??0)-1;b<=0?c.delete(a.sessionId):c.set(a.sessionId,b)}d.push({atMs:a.ms,active:c.size,sessions:Array.from(c.keys()).slice(0,10)})}return d}(a),k=new Map;for(let a of j){let b=c(a.atMs),d=k.get(b)??0;a.active>d&&k.set(b,a.active)}for(let a of i)a.peakParallelism=k.get(a.date)??0;return i},"detectPrMarkers",0,function(a){let b=[],c=a.durationMs??0;for(let d of a.events){if("tool-call"!==d.role||"Bash"!==d.toolName)continue;let e=d.blocks.find(a=>a&&"type"in a&&"tool_use"===a.type);if(!e||"tool_use"!==e.type)continue;let f=e.input,g="string"==typeof f?.command?f.command:"";if(!i.test(g))continue;let h=g.match(k),l=g.match(j);b.push({sessionId:a.id,timestamp:d.timestamp??a.firstTimestamp??"",tOffsetMs:d.tOffsetMs,positionInSession:c>0&&void 0!==d.tOffsetMs?Math.min(1,Math.max(0,d.tOffsetMs/c)):void 0,command:g.slice(0,300),prNumber:l?Number(l[1]):void 0,title:h?.[1]})}return b},"groupByProject",0,function(a){let b=new Map;for(let c of a){let a=f(c.projectName),d=b.get(a);d||(d={projectDir:a,projectName:a,sessions:[],rawProjectDirs:[],worktreeCount:0,metrics:l([]),perAgent:[],lastActiveMs:void 0},b.set(a,d)),d.sessions.push(c),d.rawProjectDirs.includes(c.projectDir)||d.rawProjectDirs.push(c.projectDir);let e=c.lastTimestamp?Date.parse(c.lastTimestamp):void 0;e&&(!d.lastActiveMs||e>d.lastActiveMs)&&(d.lastActiveMs=e)}for(let a of b.values()){a.metrics=l(a.sessions);let b=new Set;for(let c of a.sessions){let a=g(c.projectName);a&&b.add(a)}a.worktreeCount=b.size;let c=new Map;for(let b of a.sessions){let a=b.agent??"claude-code",d=c.get(a);d||(d={agent:a,sessions:0},c.set(a,d)),d.sessions+=1}a.perAgent=Array.from(c.values()).sort((a,b)=>b.sessions-a.sessions)}return Array.from(b.values()).sort((a,b)=>(b.lastActiveMs??0)-(a.lastActiveMs??0))},"highLevelMetrics",0,l,"sessionAirTimeMs",0,function(a,b=18e4){let c=0;for(let d of a)void 0!==d.gapMs&&d.gapMs<=b&&(c+=d.gapMs);return c},"summarizeBursts",0,function(a){let b=0,d=0,e=0,f=new Set;for(let g of a)g.peak>b&&(b=g.peak),d+=g.endMs-g.startMs,g.crossProject&&e++,f.add(c(g.startMs));return{peakConcurrent:b,totalParallelMs:d,burstCount:a.length,crossProjectBurstCount:e,activeDayCount:f.size}},"toLocalDay",0,c,"worktreeName",0,g])},23895,88522,a=>{"use strict";var b=a.i(2157),c=a.i(60526),d=a.i(50227),e=a.i(30375),f=a.i(10687),g=a.i(98049),h=a.i(48024);let i=d.default.join(c.default.homedir(),".claude","projects");function j(a){return a.startsWith("-")?"/"+a.slice(1).replace(/-/g,"/"):a}async function k(a){let c=await b.promises.readFile(a,"utf8"),d=[];for(let a of c.split("\n")){let b=a.trim();if(b)try{d.push(JSON.parse(b))}catch{}}return d}function l(a){return a.replace(/\.jsonl$/i,"")}let m=new Map,n=new Map,o=new Map,p=null;async function q(a=i){let c;if(p&&p.root===a&&Date.now()-p.capturedAtMs<1e3)return p.files;try{c=await b.promises.readdir(a,{withFileTypes:!0})}catch{return[]}let e=c.filter(a=>a.isDirectory()).map(a=>a.name),f=(await Promise.all(e.map(async c=>{let e,f=d.default.join(a,c);try{e=await b.promises.readdir(f)}catch{return[]}let g=e.filter(a=>a.endsWith(".jsonl"));return(await Promise.all(g.map(async a=>{let e=d.default.join(f,a);try{let d=await b.promises.stat(e);return{projectDir:c,fileName:a,fullPath:e,mtimeMs:d.mtimeMs,sizeBytes:d.size}}catch{return null}}))).filter(a=>null!==a)}))).flat();return p={files:f,capturedAtMs:Date.now(),root:a},f}async function r(a=i){let b=await q(a),c=(await Promise.all(b.map(async a=>{let b,c=o.get(a.fullPath);if(c&&c.mtimeMs===a.mtimeMs&&c.sizeBytes===a.sizeBytes)return c.events;try{b=await k(a.fullPath)}catch{return[]}let d=new Map;for(let c of b){if(!c||"object"!=typeof c||"assistant"!==c.type)continue;let b="string"==typeof c.timestamp?c.timestamp:void 0;if(!b)continue;let e=c.message;if(!e)continue;let g=e.usage;if(!g)continue;let h=(0,f.modelFamily)("string"==typeof e.model?e.model:void 0);if(null===h)continue;let i="string"==typeof e.id?e.id:`__noid_${a.fullPath}_${b}`,j=g.cache_creation??{},k=a=>"number"==typeof a?a:0;d.set(i,{ts:b,family:h,input:k(g.input_tokens),output:k(g.output_tokens),cacheRead:k(g.cache_read_input_tokens),cache_1h:k(j.ephemeral_1h_input_tokens),cache_5m:k(j.ephemeral_5m_input_tokens)})}let e=Array.from(d.values());return o.set(a.fullPath,{events:e,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),e}))).flat();return c.sort((a,b)=>a.ts.localeCompare(b.ts)),c}let s={input:0,output:0,cacheRead:0,cacheWrite:0};function t(a,b,c){for(let d of a){if(!d||"object"!=typeof d||"assistant"!==d.type)continue;let a=d.message;if(!a)continue;let e="string"==typeof a.id?a.id:void 0,f="string"==typeof d.requestId?d.requestId:void 0,g=null!=e&&null!=f?`${e}:${f}`:void 0;if(g&&b.has(g))continue;g&&b.add(g);let h=a.usage;if(h){let a=a=>"number"==typeof a?a:0;c.input+=a(h.input_tokens),c.output+=a(h.output_tokens),c.cacheRead+=a(h.cache_read_input_tokens),c.cacheWrite+=a(h.cache_creation_input_tokens)}}}async function u(a,c,e){let f,g={...s},h=new Set;t(a,h,g);let i=d.default.join(c,e,"subagents");try{f=await b.promises.readdir(i)}catch{return g}let j=f.filter(a=>a.endsWith(".jsonl"));return 0===j.length||await Promise.all(j.map(async a=>{try{let b=await k(d.default.join(i,a));t(b,h,g)}catch{}})),g}async function v(a){let b=m.get(a.fullPath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes)return b.meta;try{let b=await k(a.fullPath),{meta:c}=(0,g.parseTranscript)(b),e=l(a.fileName),f=d.default.dirname(a.fullPath);c.totalUsage=await u(b,f,e);let h={...c,id:e,filePath:a.fullPath,projectDir:a.projectDir,projectName:c.cwd??j(a.projectDir)};return m.set(a.fullPath,{meta:h,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),h}catch{return null}}async function w(a){let b=n.get(a.fullPath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes)return b.detail;try{let b=await k(a.fullPath),{meta:c,events:d}=(0,g.parseTranscript)(b),e={...c,id:l(a.fileName),filePath:a.fullPath,projectDir:a.projectDir,projectName:c.cwd??j(a.projectDir),events:d};n.set(a.fullPath,{detail:e,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes});let f={...e};return delete f.events,m.set(a.fullPath,{meta:f,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),e}catch{return null}}async function x(a={}){let{root:b=i,limit:c=500,projectDir:d}=a,e=await q(b);d&&(e=e.filter(a=>a.projectDir===d)),e.sort((a,b)=>b.mtimeMs-a.mtimeMs);let f=e.slice(0,c);return(await Promise.all(f.map(a=>v(a)))).filter(a=>null!==a)}async function y(a,b={}){let{root:c=i}=b,e=(await q(c)).find(b=>l(b.fileName)===a);if(!e)return null;let f=await w(e);if(!f)return f;let g=f.firstTimestamp?Date.parse(f.firstTimestamp):void 0,h=d.default.join(d.default.dirname(e.fullPath),l(e.fileName),"subagents"),j=await z(h,g,f.events);return{...f,subagents:j}}async function z(a,c,e){let f;try{f=await b.promises.readdir(a)}catch{return[]}let g=new Map,h=[];for(let a of e)if("tool-call"===a.role&&"Agent"===a.toolName)for(let b of a.blocks){if(b?.type!=="tool_use"||"Agent"!==b.name)continue;let c=b.input??{},d="string"==typeof c.description?c.description:void 0,e=a.timestamp?Date.parse(a.timestamp):void 0,f={toolUseId:b.id,parentUuid:a.uuid??"",runInBackground:!0===c.run_in_background,prompt:"string"==typeof c.prompt?c.prompt:void 0,tsMs:e};d&&g.set(d,f),void 0!==e&&h.push(f)}h.sort((a,b)=>(a.tsMs??0)-(b.tsMs??0));let i=f.filter(a=>a.startsWith("agent-")&&a.endsWith(".jsonl"));return(await Promise.all(i.map(async e=>{let f,i=e.replace(/^agent-/,"").replace(/\.jsonl$/,""),j=d.default.join(a,e),l=d.default.join(a,`agent-${i}.meta.json`),m={};try{let a=await b.promises.readFile(l,"utf8");m=JSON.parse(a)}catch{}try{f=await k(j)}catch{return null}let n=function(a){let b,c,d,e,f,g={...s},h=new Set,i=0,j=0,k=0,l=new Map;for(let m of a){if(!m||"object"!=typeof m)continue;i++;let a="string"==typeof m.timestamp?Date.parse(m.timestamp):NaN;if(!Number.isNaN(a)&&((void 0===b||a<b)&&(b=a),(void 0===c||a>c)&&(c=a)),void 0===f&&"user"===m.type&&(null===m.parentUuid||void 0===m.parentUuid)){let a=m.message,b=a?.content;if("string"==typeof b)f=b;else if(Array.isArray(b)){let a=b.find(a=>a&&"object"==typeof a&&"text"===a.type);a?.text&&(f=a.text)}}if("assistant"===m.type){let a=m.message;if(!a)continue;e||"string"!=typeof a.model||(e=a.model);let b="string"==typeof a.id?a.id:void 0,c="string"==typeof m.requestId?m.requestId:void 0,f=null!=b&&null!=c?`${b}:${c}`:void 0,i=!f||!h.has(f);if(f&&i&&h.add(f),i){j++;let b=a.usage;if(b){let a=a=>"number"==typeof a?a:0;g.input+=a(b.input_tokens),g.output+=a(b.output_tokens),g.cacheRead+=a(b.cache_read_input_tokens),g.cacheWrite+=a(b.cache_creation_input_tokens)}}let n=a.content;if(Array.isArray(n))for(let a of n)a&&"object"==typeof a&&("text"===a.type&&"string"==typeof a.text?d=a.text:"tool_use"===a.type&&"string"==typeof a.name&&(k++,l.set(a.name,(l.get(a.name)??0)+1)))}}let m=Array.from(l.entries()).map(([a,b])=>({name:a,count:b})).sort((a,b)=>b.count-a.count);return{startMs:b,endMs:c,totalUsage:g,eventCount:i,finalPreview:void 0!==d?d.replace(/\s+/g," ").trim().slice(0,240):void 0,finalText:d,model:e,toolCalls:m,toolCallCount:k,assistantMessageCount:j,initialPrompt:f}}(f),o=m.description&&m.description.trim().length>0?m.description:void 0,p=o?g.get(o):function(a){let b;if(void 0===a)return;let c=1/0;for(let d of h){if(void 0===d.tsMs)continue;let e=Math.abs(a-d.tsMs);e<c&&e<=2e3&&(b=d,c=e)}return b}(n.startMs),q=o??(n.initialPrompt?n.initialPrompt.replace(/\s+/g," ").trim().slice(0,80):"(no description)"),r=p?.prompt??n.initialPrompt,t=void 0!==c&&void 0!==n.startMs?Math.max(0,n.startMs-c):void 0,u=void 0!==c&&void 0!==n.endMs?Math.max(0,n.endMs-c):void 0,v=void 0!==n.startMs&&void 0!==n.endMs?n.endMs-n.startMs:void 0;return{agentId:i,agentType:m.agentType??"unknown",description:q,startMs:n.startMs,endMs:n.endMs,durationMs:v,startTOffsetMs:t,endTOffsetMs:u,eventCount:n.eventCount,totalUsage:n.totalUsage,parentUuid:p?.parentUuid,parentToolUseId:p?.toolUseId,runInBackground:p?.runInBackground,prompt:r,finalPreview:n.finalPreview,finalText:n.finalText,model:n.model,toolCalls:n.toolCalls,toolCallCount:n.toolCallCount,assistantMessageCount:n.assistantMessageCount}}))).filter(a=>null!==a).sort((a,b)=>(a.startMs??0)-(b.startMs??0))}async function A(a=i){let b=await q(a),c=new Map;for(let a of b){let b=c.get(a.projectDir)??{count:0,lastActiveMs:0};b.count++,a.mtimeMs>b.lastActiveMs&&(b.lastActiveMs=a.mtimeMs),c.set(a.projectDir,b)}let d=a=>{for(let[,b]of m.entries())if(b.meta.projectDir===a&&b.meta.cwd)return b.meta.cwd},e=new Map;for(let[a,{count:b,lastActiveMs:f}]of c){let c=d(a)??j(a),g=(0,h.canonicalProjectName)(c),i=(0,h.worktreeName)(c),k=e.get(g)??{canonicalName:g,count:0,lastActiveMs:0,worktreeBranches:new Set};k.count+=b,f>k.lastActiveMs&&(k.lastActiveMs=f),i&&k.worktreeBranches.add(i),e.set(g,k)}return Array.from(e.values()).map(a=>({projectDir:a.canonicalName,projectName:a.canonicalName,sessionCount:a.count,lastActiveMs:a.lastActiveMs,worktreeCount:a.worktreeBranches.size})).sort((a,b)=>b.lastActiveMs-a.lastActiveMs)}async function B(a,b={}){let{root:c=i}=b,d=await x({root:c}),e=d.find(b=>b.sessionId===a);if(!e||!e.teamName)return null;let f=e.teamName,g=d.filter(a=>a.teamName===f&&!a.filePath.includes("/subagents/")),h=await Promise.all(g.map(a=>y(a.sessionId,{root:c}))),j=new Map;g.forEach((a,b)=>{let c=h[b];c&&j.set(a.sessionId,c)});let k=(function(a,b){let c=new Map;for(let b of a){if(!b.teamName)continue;let a=c.get(b.teamName)??[];a.push(b),c.set(b.teamName,a)}let d=[];for(let[a,e]of c){let c=function(a,b,c){let d,e=b.filter(a=>a.isTeamLead);if(0===e.length)return null;for(let a of e){let b=c.get(a.sessionId);if(b&&function(a){for(let b of a)if("tool-call"===b.role&&"TeamCreate"===b.toolName)return!0;return!1}(b.events)){d=a;break}}d||(d=[...e].sort((a,b)=>Date.parse(a.firstTimestamp??"")-Date.parse(b.firstTimestamp??""))[0]);let f=new Map;for(let a of b)f.set(a.sessionId,a.agentName);let g=b.filter(a=>a.sessionId!==d.sessionId).sort((a,b)=>Date.parse(a.firstTimestamp??"")-Date.parse(b.firstTimestamp??"")),h=new Map;for(let a of g)a.agentName&&h.set(a.agentName,a.sessionId);let i=[];for(let a of b){let b=c.get(a.sessionId);if(!b)continue;let e=a.sessionId,f=a.agentName??"team-lead";for(let a of b.events){let b=function(a){if("tool-call"!==a.role||"SendMessage"!==a.toolName)return null;for(let b of a.blocks){if(!b||"object"!=typeof b||"tool_use"!==b.type)continue;let a=b.input??{},c="string"==typeof a.to?a.to:"",d="string"==typeof a.message?a.message:"";if(!c)break;return{to:c,body:d}}return null}(a);if(!b)continue;let c=b.to,g="team-lead"===c?d.sessionId:h.get(c)??"";i.push({tsMs:a.timestamp?Date.parse(a.timestamp):0,fromSessionId:e,fromTeammateId:f,toSessionId:g,toTeammateId:c,body:b.body,kind:"message"})}}i.sort((a,b)=>a.tsMs-b.tsMs);let j=[];for(let a of b)a.firstTimestamp&&j.push(Date.parse(a.firstTimestamp)),a.lastTimestamp&&j.push(Date.parse(a.lastTimestamp));let k=j.length?Math.min(...j):0,l=j.length?Math.max(...j):0;return{teamName:a,leadSessionId:d.sessionId,memberSessionIds:g.map(a=>a.sessionId),agentNameBySessionId:f,messages:i,firstEventMs:k,lastEventMs:l}}(a,e,b);c&&d.push(c)}return d})(g,j).find(a=>a.teamName===f);return k?{view:k,details:j}:null}async function C(a,b={}){let{root:c=i}=b,d=await x({root:c}),e=d.find(b=>b.sessionId===a);if(!e||!e.teamName||!e.agentName||e.isTeamLead)return null;let f=d.filter(a=>a.teamName===e.teamName&&a.isTeamLead&&!a.filePath.includes("/subagents/"));return 0===f.length?null:{leadSessionId:f[0].sessionId,teamName:e.teamName,agentName:e.agentName}}let D={...e.CLAUDE_CODE_METADATA,defaultRoot:i,async listSessions(a){let b=await x(a);for(let a of b)a.agent||(a.agent="claude-code");return b},async getSession(a,b){let c=await y(a,b);return c&&!c.agent&&(c.agent="claude-code"),c}};a.s(["DEFAULT_ROOT",0,i,"claudeCodeSource",0,D,"findTeamLead",0,C,"listProjects",0,A,"loadCalibrationEvents",0,r,"loadTeamForSession",0,B,"walkJsonlFiles",0,q],88522);let E=d.default.join(c.default.homedir(),".codex","sessions"),F=/^rollout-(\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2})-([0-9a-f-]+)\.jsonl$/;async function G(a){return b.promises.readdir(a).catch(()=>[])}async function H(a){let c=[];for(let e of(await G(a))){if(!/^\d{4}$/.test(e))continue;let f=d.default.join(a,e);for(let a of(await G(f))){if(!/^\d{2}$/.test(a))continue;let e=d.default.join(f,a);for(let a of(await G(e))){if(!/^\d{2}$/.test(a))continue;let f=d.default.join(e,a);for(let a of(await G(f))){let e=F.exec(a);if(!e)continue;let g=d.default.join(f,a),h=await b.promises.stat(g).catch(()=>null);h&&c.push({filePath:g,sessionId:e[2],mtimeMs:h.mtimeMs,sizeBytes:h.size})}}}}return c}async function I(a){let c=await b.promises.readFile(a,"utf8"),d=[];for(let a of c.split("\n")){let b=a.trim();if(b)try{d.push(JSON.parse(b))}catch{}}return d}function J(a){return a.replace(/\s+/g," ").trim().slice(0,200)}function K(a,b){let c,d,e,f,g,i,j,k=[],l={input:0,output:0,cacheRead:0,cacheWrite:0},m=0,n=0,o=[],p=0;for(let a of b){if("object"!=typeof a||null===a)continue;let b="string"==typeof a.timestamp?a.timestamp:void 0;if(b){c||(c=b),d=b;let a=Date.parse(b);Number.isFinite(a)&&o.push(a)}let h="string"==typeof a.type?a.type:"",r=a.payload??{},s="string"==typeof r.type?r.type:"";if("session_meta"===h){"string"==typeof r.cwd&&(e=r.cwd);continue}if("turn_context"===h){"string"==typeof r.cwd&&(e=r.cwd),"string"==typeof r.model&&(f=r.model);continue}if("event_msg"===h&&"token_count"===s){let a=r.info??null,b=a?.total_token_usage??null;b&&(l.input=L(b.input_tokens)??l.input,l.output=L(b.output_tokens)??l.output,l.cacheRead=L(b.cached_input_tokens)??l.cacheRead);continue}if("event_msg"===h&&"user_message"===s){let c="string"==typeof r.message?r.message:"",d=J(c);c&&(g||(g=d),i=d,n+=1),k.push({index:p++,timestamp:b,role:"user",rawType:"event_msg/user_message",preview:d,blocks:c?[{type:"text",text:c}]:[],raw:a});continue}if("event_msg"===h&&"agent_message"===s){let c="string"==typeof r.message?r.message:"",d=J(c);c&&(j=d),k.push({index:p++,timestamp:b,role:"agent",rawType:"event_msg/agent_message",preview:d,blocks:c?[{type:"text",text:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"reasoning"===s){let c=(r.summary??[]).map(a=>"string"==typeof a.text?a.text:"").join("\n").trim();k.push({index:p++,timestamp:b,role:"agent-thinking",rawType:"response_item/reasoning",preview:J(c),blocks:c?[{type:"thinking",thinking:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"message"===s&&"assistant"===r.role){let c=(r.content??[]).map(a=>"string"==typeof a.text?a.text:"").join("\n").trim(),d=J(c);c&&(j=d),k.push({index:p++,timestamp:b,role:"agent",rawType:"response_item/message",preview:d,blocks:c?[{type:"text",text:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"function_call"===s){var q;let c="string"==typeof r.name?r.name:"(unknown)",d="string"==typeof r.call_id?r.call_id:void 0,e="string"==typeof r.arguments?r.arguments:"",g=function(a){if(!a)return null;try{return JSON.parse(a)}catch{return a}}(e);m+=1,k.push({index:p++,timestamp:b,role:"tool-call",rawType:"response_item/function_call",preview:`${c}(${(q=e).length<=80?q:q.slice(0,79)+"…"})`,blocks:[{type:"tool_use",id:d??`codex-${p}`,name:c,input:g}],toolName:c,toolUseId:d,model:f,raw:a});continue}if("response_item"===h&&"function_call_output"===s){let c="string"==typeof r.call_id?r.call_id:void 0,d="string"==typeof r.output?r.output:"",e=/process exited with code [1-9]/i.test(d);k.push({index:p++,timestamp:b,role:"tool-result",rawType:"response_item/function_call_output",preview:J(d),blocks:[{type:"tool_result",tool_use_id:c??"",content:d,is_error:e}],toolUseId:c,toolResult:d,raw:a});continue}k.push({index:p++,timestamp:b,role:"meta",rawType:s?`${h}/${s}`:h,preview:"",blocks:[],raw:a})}if(l.input>0||l.output>0){let b=-1;for(let a=k.length-1;a>=0;a--){let c=k[a].role;if("agent"===c||"agent-thinking"===c||"tool-call"===c){b=a;break}}if(b>=0){let c=k[b];c.messageId=`codex-${a.sessionId}-total`,c.usage={input:l.input,output:l.output,cacheRead:l.cacheRead,cacheWrite:0}}}let r=c?Date.parse(c):void 0;if(void 0!==r&&Number.isFinite(r)){let a;for(let b of k){if(!b.timestamp)continue;let c=Date.parse(b.timestamp);Number.isFinite(c)&&(b.tOffsetMs=Math.max(0,c-r),void 0!==a&&(b.gapMs=Math.max(0,c-a)),a=c)}}let s=function(a){if(0===a.length)return[];let b=[...a].sort((a,b)=>a-b),c=[],d=b[0],e=b[0];for(let a=1;a<b.length;a++)b[a]-e>18e4&&(c.push({startMs:d,endMs:e}),d=b[a]),e=b[a];return c.push({startMs:d,endMs:e}),c}(o),t=s.reduce((a,b)=>a+(b.endMs-b.startMs),0),u=c&&d?Date.parse(d)-Date.parse(c):void 0,v=e?(0,h.canonicalProjectName)(e):"(unknown)",w=e?e.replace(/^\//,"-").replace(/\//g,"-"):"(unknown)";return{meta:{agent:"codex",id:a.sessionId,filePath:a.filePath,projectName:v,projectDir:w,sessionId:a.sessionId,firstTimestamp:c,lastTimestamp:d,durationMs:u&&Number.isFinite(u)?u:void 0,eventCount:k.length,model:f,cwd:e,totalUsage:l,status:"idle",firstUserPreview:g,lastUserPreview:i,lastAgentPreview:j,toolCallCount:m,turnCount:n,airTimeMs:t,activeSegments:s},events:k}}function L(a){return"number"==typeof a&&Number.isFinite(a)?a:void 0}let M=new Map,N=new Map;async function O(a={}){let b=a.root??E,c=await H(b),d=[];for(let a of c){let b=M.get(a.filePath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes){d.push(b.meta);continue}try{let b=await I(a.filePath),{meta:c}=K(a,b);M.set(a.filePath,{meta:c,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),d.push(c)}catch{}}return(d.sort((a,b)=>(b.firstTimestamp??"").localeCompare(a.firstTimestamp??"")),void 0!==a.limit)?d.slice(0,a.limit):d}async function P(a,b={}){let c=b.root??E,d=(await H(c)).find(b=>b.sessionId===a);if(!d)return null;let e=N.get(d.filePath);if(e&&e.mtimeMs===d.mtimeMs&&e.sizeBytes===d.sizeBytes)return e.detail;let f=await I(d.filePath),{meta:g,events:h}=K(d,f),i={...g,events:h};return N.set(d.filePath,{detail:i,mtimeMs:d.mtimeMs,sizeBytes:d.sizeBytes}),i}async function Q(a={}){let b=a.root??E,c=await H(b);if(0===c.length)return null;for(let a of(c.sort((a,b)=>b.mtimeMs-a.mtimeMs),c)){let b=await I(a.filePath);for(let c=b.length-1;c>=0;c--){let d=b[c];if("object"!=typeof d||null===d||"event_msg"!==d.type)continue;let e=d.payload??{};if("token_count"!==e.type)continue;let f=e.rate_limits??null;if(!f)continue;let g=f.primary??null,h=f.secondary??null,i=L(g?.used_percent),j=L(h?.used_percent),k=L(g?.resets_at),l=L(h?.resets_at),m="string"==typeof f.plan_type?f.plan_type:null;return{five_hour:{utilization:i??null,resets_at:void 0!==k?new Date(1e3*k).toISOString():null},seven_day:{utilization:j??null,resets_at:void 0!==l?new Date(1e3*l).toISOString():null},plan_type:m,source_path:a.filePath}}}return null}let R=[D,{...e.CODEX_METADATA,defaultRoot:E,listSessions:async a=>O(a),getSession:async a=>P(a),async usagePoller(){let a=await Q();return a?{captured_at:new Date().toISOString(),agent:"codex",five_hour:a.five_hour,seven_day:a.seven_day}:null}}];async function S(a={}){let b=await Promise.all(R.map(b=>b.listSessions(a))),c=[];for(let a of b)c.push(...a);return(c.sort((a,b)=>(b.firstTimestamp??"").localeCompare(a.firstTimestamp??"")),void 0!==a.limit)?c.slice(0,a.limit):c}async function T(a){for(let b of R){let c=await b.getSession(a);if(c)return c}return null}let U=d.default.join(c.default.homedir(),".cclens","usage.jsonl");async function V(){let a;try{a=await b.promises.readFile(U,"utf8")}catch{return[]}let c=[];for(let b of a.split("\n")){let a=b.trim();if(a)try{let b=JSON.parse(a);if(!b.captured_at||(b.agent??"claude-code")!=="claude-code")continue;c.push(b)}catch{}}return c.sort((a,b)=>(a.captured_at??"").localeCompare(b.captured_at??"")),c}function W(a,b,c){if(0===b.length)return null;for(let[d,e]of b)if(d>=a&&e>a){let b=e,d=36e5*c;for(;b-d>a;)b-=d;return b}let d=b[b.length-1][1],e=36e5*c;for(;d<a;)d+=e;return d}async function X(a="pro-max-20x",b=i,c=30){let[d,e]=await Promise.all([r(b),V()]);return function(a,b,c="pro-max-20x",d=30){if(0===b.length||0===a.length)return null;let e=(0,f.buildSpendIndex)(a),g=f.RATE_PER_PCT_7D[c],h=f.RATE_PER_PCT_5H[c],i=(0,f.groupSnapsByCycle)(b,a=>a.five_hour),j=(0,f.groupSnapsByCycle)(b,a=>a.seven_day),k=(0,f.collectSnapPairRates)(j,e,{minTravelPct:1,minDollars:10,maxGapMs:864e5}),l=(0,f.collectSnapPairRates)(i,e,{minTravelPct:1,minDollars:1,maxGapMs:72e5}),m=(0,f.userSoloRate)(k,.9)??g,n=(0,f.userSoloRate)(l,.9)??h,o=new Set(k.map(a=>a.cycleEndMs)).size,p=new Set(l.map(a=>a.cycleEndMs)).size,q=[],r=[];for(let a of b){let b=Date.parse(a.captured_at);if(!Number.isNaN(b)){if(a.five_hour?.resets_at){let c=Date.parse(a.five_hour.resets_at);Number.isNaN(c)||q.push([b,c])}if(a.seven_day?.resets_at){let c=Date.parse(a.seven_day.resets_at);Number.isNaN(c)||r.push([b,c])}}}let s=new Map;for(let a of b){let b=Date.parse(a.captured_at);if(Number.isNaN(b))continue;let c=Math.floor(b/6e4);s.set(c,[a.five_hour?.utilization??null,a.seven_day?.utilization??null])}let t=Date.parse(b[0].captured_at),u=Date.parse(b[b.length-1].captured_at),v=Math.max(Date.parse(a[0].ts),t-12096e5),w=6e4*d,x=[],y=v;for(;y<=u;){let a=null,b=null;for(let c=0;c<d;c++){let d=Math.floor((y+6e4*c)/6e4),e=s.get(d);if(e){a=e[0],b=e[1];break}}let c=W(y,q,5),g=W(y,r,168),h=null!=c?36e5*Math.round(c/36e5):null,k=null!=g?36e5*Math.round(g/36e5):null,l=null!=h?i.get(h)??[]:[],o=null!=k?j.get(k)??[]:[],p=h??y+18e6,t=k??y+6048e5,u=(0,f.predictAnchored)(e,l,n,p,5,y),v=(0,f.predictAnchored)(e,o,m,t,168,y);x.push({ts:new Date(y).toISOString(),real_5h:a,pred_5h:Math.max(0,Math.min(200,u)),real_7d:b,pred_7d:Math.max(0,Math.min(200,v)),cycle_end_5h:null!=h?new Date(h).toISOString():null,cycle_end_7d:null!=k?new Date(k).toISOString():null}),y+=w}let z=k.length>=3?"user_calibrated":"tier_default";return{model:`anchored-${c}`,tier:c,rate_per_pct:m,rate_per_pct_5h:n,rate_per_pct_7d:m,rate_source_5h:l.length>=3?"user_calibrated":"tier_default",rate_source_7d:z,cycles_used_5h:p,cycles_used_7d:o,granularity_min:d,curve:x,first_snapshot_ts:b[0].captured_at??null,real_count:x.filter(a=>null!==a.real_7d).length,total_count:x.length}}(d,e,a,c)}a.s(["agentSources",0,R,"getAnySession",0,T,"listAllSessions",0,S,"loadCalibrationCurve",0,X],23895)},9117,a=>{"use strict";a.i(30375),a.s([])}];
|
|
1
|
+
module.exports=[30375,a=>{"use strict";let b={kind:"claude-code",displayName:"Claude Code",shortLabel:"Claude",accentColor:"var(--af-accent)",iconChar:"✦"},c={kind:"codex",displayName:"Codex (OpenAI)",shortLabel:"Codex",accentColor:"rgb(16, 163, 127)",iconChar:"◆"},d={kind:"gemini",displayName:"Gemini CLI",shortLabel:"Gemini",accentColor:"rgb(124, 92, 246)",iconChar:"✺"},e=[b,c,d],f=new Set(e.map(a=>a.kind));a.s(["CLAUDE_CODE_METADATA",0,b,"CODEX_METADATA",0,c,"GEMINI_METADATA",0,d,"agentMetadata",0,e,"getAgentMetadata",0,function(a){return e.find(b=>b.kind===a)},"isAgentKind",0,function(a){return"string"==typeof a&&f.has(a)}])},10687,98049,a=>{"use strict";let b={sonnet:{input:3,output:15,cacheRead:.3,cache_1h:3.75,cache_5m:3.75},opus:{input:5,output:25,cacheRead:.5,cache_1h:6.25,cache_5m:6.25},haiku:{input:1,output:5,cacheRead:.1,cache_1h:1.25,cache_5m:1.25}};function c(a,b,c){let d=0;for(;d<c;){let e=d+c>>>1;a[e]<b?d=e+1:c=e}return d}function d(a,b,d){if(d<=b)return 0;let e=a.ts.length,f=c(a.ts,b,e),g=c(a.ts,d,e);return a.cum[g]-a.cum[f]}a.s(["RATE_PER_PCT_5H",0,{pro:.2,"pro-max":.4,"pro-max-20x":2,custom:2},"RATE_PER_PCT_7D",0,{pro:1.2,"pro-max":2.4,"pro-max-20x":12,custom:12},"buildSpendIndex",0,function(a){let c=a.map(a=>({e:a,t:Date.parse(a.ts)})).filter(a=>!Number.isNaN(a.t)).sort((a,b)=>a.t-b.t),d=new Float64Array(c.length),e=new Float64Array(c.length+1),f=0;for(let a=0;a<c.length;a++)d[a]=c[a].t,e[a]=f,f+=function(a){let c=b[a.family];return(a.input*c.input+a.output*c.output+a.cacheRead*c.cacheRead+a.cache_1h*c.cache_1h+a.cache_5m*c.cache_5m)/1e6}(c[a].e);return e[c.length]=f,{ts:d,cum:e}},"collectSnapPairRates",0,function(a,b,c){let e=c?.minTravelPct??1,f=c?.minDollars??1,g=c?.maxGapMs??864e5,h=[];for(let[c,i]of a)for(let a=1;a<i.length;a++){let j=i[a-1],k=i[a],l=k.ts-j.ts,m=k.pct-j.pct;if(l<=0||l>g||m<e)continue;let n=d(b,j.ts,k.ts);n<f||h.push({cycleEndMs:c,rate:n/m,travel:m,dollars:n,gapMs:l})}return h},"groupSnapsByCycle",0,function(a,b){let c=new Map;for(let d of a){if(!d.captured_at)continue;let a=b(d);if(!a?.resets_at||"number"!=typeof a.utilization)continue;let e=Date.parse(d.captured_at),f=Date.parse(a.resets_at);if(Number.isNaN(e)||Number.isNaN(f))continue;let g=36e5*Math.round(f/36e5),h=c.get(g)??[];h.push({ts:e,pct:a.utilization}),c.set(g,h)}for(let a of c.values())a.sort((a,b)=>a.ts-b.ts);return c},"modelFamily",0,function(a){let b=(a??"").toLowerCase();return b&&"<synthetic>"!==b?b.includes("haiku")?"haiku":b.includes("opus")?"opus":b.includes("sonnet")?"sonnet":null:null},"predictAnchored",0,function(a,b,c,e,f,g){let h=e-36e5*f;if(c<=0&&(c=1),0===b.length)return Math.max(0,d(a,h,g)/c);let i=-1;for(let a=0;a<b.length;a++)if(b[a].ts<=g)i=a;else break;if(i>=0&&i+1<b.length){let c=b[i],e=b[i+1];if(e.pct===c.pct)return c.pct;let f=d(a,c.ts,e.ts);if(f<=0){let a=(g-c.ts)/(e.ts-c.ts);return c.pct+(e.pct-c.pct)*a}let h=d(a,c.ts,g);return c.pct+(e.pct-c.pct)*(h/f)}if(i>=0){let e=b[i];return e.pct+d(a,e.ts,g)/c}let j=b[0];if(g<=h)return 0;let k=d(a,h,j.ts);if(k<=0){let a=(g-h)/(j.ts-h);return j.pct*a}let l=d(a,h,g);return j.pct*(l/k)},"userSoloRate",0,function(a,b=.9){if(a.length<3)return null;let c=a.map(a=>a.rate).sort((a,b)=>a-b),d=Math.min(Math.floor(c.length*b),c.length-1);return c[d]}],10687);let e={input:0,output:0,cacheRead:0,cacheWrite:0};function f(a,b=200){let c=a.replace(/<[^>]+>/g,"").replace(/\s+/g," ").trim();return c.length>b?c.slice(0,b-1)+"…":c}let g=/^\s*<teammate-message\s+teammate_id="([^"]+)"[^>]*>([\s\S]*?)<\/teammate-message>/;function h(a){let b=a.match(g);if(!b)return;let c=b[1],d=b[2].trim(),e="message";if(d.startsWith("{"))try{let a=JSON.parse(d);"idle_notification"===a.type?e="idle-notification":"shutdown_request"===a.type?e="shutdown-request":"shutdown_approved"===a.type?e="shutdown-approved":"task_assignment"===a.type?e="task-assignment":"teammate_terminated"===a.type&&(e="teammate-terminated")}catch{}return{teammateId:c,body:d,kind:e}}function i(a){if(!a||"object"!=typeof a)return;let b=a=>"number"==typeof a?a:0;return{input:b(a.input_tokens),output:b(a.output_tokens),cacheRead:b(a.cache_read_input_tokens),cacheWrite:b(a.cache_creation_input_tokens)}}a.s(["parseTranscript",0,function(a){let b,c,d,g,j,k,l,m,n=[];for(let b=0;b<a.length;b++){let c=function(a,b){if(!a||"object"!=typeof a)return null;let c=String(a.type??""),d=a.uuid,e=a.parentUuid??null,g=a.timestamp;if("assistant"===c){let h,j,k,l=a.message??{},m=l.content??[],n=i(l.usage),o=l.model,p=a.requestId,q=l.id,r=l.stop_reason,s=m[0],t="agent";return s?.type==="thinking"?(t="agent-thinking",h="[thinking] "+f(s.thinking,140)):s?.type==="tool_use"?(t="tool-call",j=s.name,k=s.id,h=`${s.name} `+f(JSON.stringify(s.input??{}),100)):h=s?.type==="text"?f(s.text,200):`<assistant:${s?.type??"empty"}>`,{index:b,uuid:d,parentUuid:e,timestamp:g,role:t,rawType:c,preview:h,blocks:m,usage:n,model:o,requestId:p,messageId:q,stopReason:r,toolName:j,toolUseId:k,raw:a}}if("user"===c){let i=(a.message??{}).content;if("string"==typeof i){let j=h(i);return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"user",rawType:c,preview:f(i,200),blocks:[{type:"text",text:i}],raw:a,teammateMessage:j}}if(Array.isArray(i)){let j=i[0];if(j?.type==="tool_result")return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"tool-result",rawType:c,preview:f("string"==typeof j.content?j.content:JSON.stringify(j.content),200),blocks:i,toolUseId:j.tool_use_id,toolResult:a.toolUseResult,raw:a};let k=i.find(a=>a?.type==="text"),l=k?h(k.text):void 0;return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"user",rawType:c,preview:k?f(k.text,200):f(JSON.stringify(i),200),blocks:i,raw:a,teammateMessage:l}}}if("attachment"===c){let h=a.attachment??{},i=String(h.type??"attachment"),j=`<attachment: ${i}>`;return"string"==typeof h.content&&h.content.length>0?j=`[${i}] `+f(h.content,140):Array.isArray(h.addedNames)&&(j=`[${i}] +${h.addedNames.length} names`),{index:b,uuid:d,parentUuid:e,timestamp:g,role:"system",rawType:c,preview:j,blocks:[{type:"text",text:JSON.stringify(h,null,2)}],attachmentType:i,raw:a}}return{index:b,uuid:d,parentUuid:e,timestamp:g,role:"meta",rawType:c||"unknown",preview:`${c}: ${f(JSON.stringify(a),140)}`,blocks:[{type:"text",text:JSON.stringify(a,null,2)}],raw:a}}(a[b],b);c&&n.push(c)}let o=n.map(a=>a.timestamp?Date.parse(a.timestamp):void 0).filter(a=>"number"==typeof a&&!Number.isNaN(a)),p=o.length?Math.min(...o):void 0,q=o.length?Math.max(...o):void 0,r=void 0!==p?new Date(p).toISOString():void 0,s=void 0!==q?new Date(q).toISOString():void 0;for(let a of n){if(!a.timestamp)continue;let b=Date.parse(a.timestamp);Number.isNaN(b)||void 0!==p&&(a.tOffsetMs=Math.max(0,b-p))}let t=n.filter(a=>{let b;return a.timestamp&&("user"===(b=a.role)||"agent"===b||"agent-thinking"===b||"tool-call"===b||"tool-result"===b)}).map(a=>({e:a,ms:Date.parse(a.timestamp)})).filter(a=>!Number.isNaN(a.ms)).sort((a,b)=>a.ms-b.ms);for(let a=1;a<t.length;a++)t[a].e.gapMs=Math.max(0,t[a].ms-t[a-1].ms);let u=n.filter(a=>a.timestamp).map(a=>Date.parse(a.timestamp)).filter(a=>!Number.isNaN(a)).sort((a,b)=>a-b),v=[],w=0;if(u.length>0){let a=u[0],b=u[0];for(let c=1;c<u.length;c++){let d=u[c],e=d-b;e>18e4?(v.push({startMs:a,endMs:b}),a=d):e>0&&(w+=e),b=d}v.push({startMs:a,endMs:b})}let x=new Map,y=[];for(let a of n){if(!a.timestamp)continue;let b=Date.parse(a.timestamp);if(!Number.isNaN(b)){if("assistant"===a.rawType&&a.usage&&a.messageId){let c=x.get(a.messageId);c?(c.siblings.push(a),b<c.ms&&(c.rep=a,c.ms=b)):x.set(a.messageId,{rep:a,ms:b,siblings:[a]})}else if("system"===a.rawType){let c=a.raw;if(c?.subtype!=="compact_boundary")continue;let d=c.compactMetadata??{};y.push({ms:b,trigger:"manual"===d.trigger?"manual":"auto",preTokens:"number"==typeof d.preTokens?d.preTokens:0})}}}let z=[...x.values()].sort((a,b)=>a.ms-b.ms);y.sort((a,b)=>a.ms-b.ms);let A=0,B=0,C=(a,b)=>{for(let c of a.siblings)c.coldResume=b;A++,B+=b.writeTokens},D=new Set;for(let a of y){let b,c=z.find(b=>b.ms>a.ms&&(b.rep.usage?.cacheWrite??0)>=1e3);if(!c)continue;for(let c=z.length-1;c>=0;c--)if(z[c].ms<=a.ms){b=z[c].ms;break}let d=c.rep.usage,e=d.cacheWrite+d.cacheRead;C(c,{trigger:"compact",gapMs:void 0!==b?c.ms-b:0,writeTokens:d.cacheWrite,writeRatio:e>0?d.cacheWrite/e:0,compact:{trigger:a.trigger,preTokens:a.preTokens}}),D.add(c.rep.messageId)}for(let a=1;a<z.length;a++){let b=z[a-1],c=z[a];if(D.has(c.rep.messageId))continue;let d=c.rep.usage,e=d.cacheWrite+d.cacheRead,f=e>0?d.cacheWrite/e:0,g=c.ms-b.ms;g>3e5&&d.cacheWrite>=1e3&&f>=.3&&C(c,{trigger:"idle",gapMs:g,writeTokens:d.cacheWrite,writeRatio:f})}let E={...e},F=new Set,G="",H=!1,I=!1,J=0,K=0,L=0,M=0,N=new Set;for(let a of n){if("tool-call"===a.role){J++;let b=a.blocks.find(a=>a&&"tool_use"===a.type);if(b){let a=b.input??{};if("TeamCreate"===b.name&&(H=!0),"SendMessage"===b.name){let b="string"==typeof a.to?a.to:"";b&&"team-lead"!==b&&(I=!0)}let c="string"==typeof a.file_path?a.file_path:void 0;if("Edit"===b.name&&c){N.add(c);let b="string"==typeof a.old_string?a.old_string:"",d="string"==typeof a.new_string?a.new_string:"",e=b?b.split("\n").length:0,f=d?d.split("\n").length:0;L+=Math.max(0,f-e),M+=Math.max(0,e-f)}else if("Write"===b.name&&c){N.add(c);let b="string"==typeof a.content?a.content:"";L+=b?b.split("\n").length:0}}}if("user"===a.role){let b=a.raw?.message,c="string"==typeof b?.content?b.content:"",d=c.startsWith("<command-name>")||c.startsWith("<local-command-caveat>")||c.startsWith("Base directory for this skill:")||c.startsWith("<task-notification>"),e=void 0!==a.teammateMessage&&!j;d||e||(k||(k=a.teammateMessage?a.teammateMessage.body:a.preview),K++,m=a.preview)}"agent"===a.role&&(l=a.preview)}for(let e of a)if(e&&"object"==typeof e&&("string"!=typeof e.sessionId||G||(G=e.sessionId),"string"!=typeof e.cwd||c||(c=e.cwd),"string"!=typeof e.gitBranch||d||(d=e.gitBranch),"string"!=typeof e.teamName||g||(g=e.teamName),"string"!=typeof e.agentName||j||(j=e.agentName),"assistant"===e.type)){let a=e.message;if(a){"string"!=typeof a.model||b||(b=a.model);let c="string"==typeof a.id?a.id:void 0,d="string"==typeof e.requestId?e.requestId:void 0,f=null!=c?`${c}:${d??""}`:void 0;if(f&&F.has(f))continue;f&&F.add(f);let g=i(a.usage);g&&(E.input+=g.input,E.output+=g.output,E.cacheRead+=g.cacheRead,E.cacheWrite+=g.cacheWrite)}}return{events:n,meta:{sessionId:G,firstTimestamp:r,lastTimestamp:s,durationMs:void 0!==p&&void 0!==q?q-p:void 0,eventCount:n.length,model:b,cwd:c,gitBranch:d,totalUsage:E,status:"idle",firstUserPreview:k,lastUserPreview:m,lastAgentPreview:l,toolCallCount:J,turnCount:K,airTimeMs:w,activeSegments:v,linesAdded:L,linesRemoved:M,filesEdited:N.size,coldResumeCount:A,cacheRebuildTokens:B,teamName:g,agentName:j,isTeamLead:void 0!==g&&void 0===j&&(H||I)}}}],98049)},48024,a=>{"use strict";let b={input:0,output:0,cacheRead:0,cacheWrite:0};function c(a){let b=new Date(a),c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0");return`${c}-${d}-${e}`}let d=["/.claude/worktrees/","/.worktrees/","/claude/worktrees/"];function e(a){for(let b of d){let c=a.lastIndexOf(b);if(c>=0)return{idx:c,marker:b}}return null}function f(a){let b=a.replace(/\/{2,}/g,"/"),c=e(b);return c?b.slice(0,c.idx):b}function g(a){let b=a.replace(/\/{2,}/g,"/"),c=e(b);if(!c)return null;let d=b.slice(c.idx+c.marker.length),f=d.indexOf("/");return f>=0?d.slice(0,f):d}function h(a){return{date:a,sessions:0,toolCalls:0,turns:0,tokens:{...b},durationMs:0,airTimeMs:0,peakParallelism:0}}let i=/gh\s+pr\s+create\b/i,j=/#(\d+)/,k=/--title\s+["']([^"']+)["']/;function l(a){let c={sessionCount:a.length,totalDurationMs:0,totalAirTimeMs:0,totalTokens:{...b},totalToolCalls:0,totalTurns:0,avgTurnsPerSession:0,avgDurationMs:0,totalLinesAdded:0,totalLinesRemoved:0,totalFilesEdited:0};for(let b of a)c.totalDurationMs+=b.durationMs??0,c.totalAirTimeMs+=b.airTimeMs??b.durationMs??0,c.totalTokens.input+=b.totalUsage.input,c.totalTokens.output+=b.totalUsage.output,c.totalTokens.cacheRead+=b.totalUsage.cacheRead,c.totalTokens.cacheWrite+=b.totalUsage.cacheWrite,c.totalToolCalls+=b.toolCallCount??0,c.totalTurns+=b.turnCount??0,c.totalLinesAdded+=b.linesAdded??0,c.totalLinesRemoved+=b.linesRemoved??0,c.totalFilesEdited+=b.filesEdited??0;return a.length>0&&(c.avgTurnsPerSession=c.totalTurns/a.length,c.avgDurationMs=c.totalDurationMs/a.length),c}function m(a,b){let c=b.minDurationMs??6e4,d=b.mergeGapMs??6e5,e=b.minActive??2,f=[];for(let b of a)for(let a of b.segments)a.endMs<=a.startMs||(f.push({ms:a.startMs,delta:1,sessionId:b.id}),f.push({ms:a.endMs,delta:-1,sessionId:b.id}));f.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let g=new Map,h=[],i=null;for(let a of f){if(1===a.delta)g.set(a.sessionId,(g.get(a.sessionId)??0)+1);else{let b=(g.get(a.sessionId)??0)-1;b<=0?g.delete(a.sessionId):g.set(a.sessionId,b)}let b=g.size;if(b>=e)if(i)for(let c of(i.endMs=a.ms,b>i.peak&&(i.peak=b),g.keys()))i.sessionIds.add(c);else i={startMs:a.ms,endMs:a.ms,peak:b,sessionIds:new Set(g.keys())};else i&&(i.endMs=a.ms,h.push(i),i=null)}i&&h.push(i);let j=h.filter(a=>a.endMs-a.startMs>=c),k=[];for(let a of j){let b=k[k.length-1];if(b&&a.startMs-b.endMs<=d)for(let c of(b.endMs=a.endMs,a.peak>b.peak&&(b.peak=a.peak),a.sessionIds))b.sessionIds.add(c);else k.push({startMs:a.startMs,endMs:a.endMs,peak:a.peak,sessionIds:new Set(a.sessionIds)})}let l=new Map;for(let b of a)l.set(b.id,b.projectDir);return k.map(a=>{let b=Array.from(new Set(Array.from(a.sessionIds).map(a=>l.get(a)).filter(a=>!!a)));return{startMs:a.startMs,endMs:a.endMs,peak:a.peak,sessionIds:Array.from(a.sessionIds),projectDirs:b,crossProject:b.length>1}})}a.s(["buildGanttDay",0,function(a,b){let[c,d,e]=b.split("-").map(Number),f=new Date(c,d-1,e).getTime(),g=new Date(c,d-1,e+1).getTime(),h=[];for(let b of a){let a=(function(a,b=18e4){let c=a.filter(a=>a.timestamp).map(a=>Date.parse(a.timestamp)).filter(a=>!Number.isNaN(a)).sort((a,b)=>a-b);if(0===c.length)return[];let d=[],e=c[0],f=c[0];for(let a=1;a<c.length;a++){let g=c[a];g-f>b&&(d.push({startMs:e,endMs:f}),e=g),f=g}return d.push({startMs:e,endMs:f}),d})(b.events).filter(a=>a.endMs>f&&a.startMs<g).map(a=>({startMs:Math.max(a.startMs,f),endMs:Math.min(a.endMs,g)}));if(0===a.length)continue;let c=Math.min(...a.map(a=>a.startMs)),d=Math.max(...a.map(a=>a.endMs)),e=a.reduce((a,b)=>a+(b.endMs-b.startMs),0);h.push({id:b.id,agent:b.agent,projectName:b.projectName,projectDir:b.projectDir,firstUserPreview:b.firstUserPreview,lastAgentPreview:b.lastAgentPreview,model:b.model,segments:a,startMs:c,endMs:d,activeMs:e,totalUsage:b.totalUsage})}h.sort((a,b)=>a.startMs-b.startMs);let i=[];for(let a of h)for(let b of a.segments)i.push({ms:b.startMs,delta:1}),i.push({ms:b.endMs,delta:-1});i.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let j=0,k=0;for(let a of i)(j+=a.delta)>k&&(k=j);return{date:b,sessions:h,dayStartMs:f,dayEndMs:g,peakActiveParallelism:k}},"canonicalProjectName",0,f,"computeBurstsFromSessions",0,function(a,b={}){let c=[];for(let b of a)b.activeSegments&&0!==b.activeSegments.length&&c.push({id:b.id,projectDir:b.projectDir,segments:b.activeSegments});return m(c,b)},"computeParallelismBursts",0,function(a,b={}){return m(a.sessions,b)},"dailyActivity",0,function(a){let b,d;if(0===a.length)return[];let e=new Map,f=a=>{(!b||a<b)&&(b=a),(!d||a>d)&&(d=a);let c=e.get(a)??h(a);return e.set(a,c),c};for(let b of a){let a=function(a){if(!a.firstTimestamp)return;let b=Date.parse(a.firstTimestamp);if(!Number.isNaN(b))return c(b)}(b);if(a){let c=f(a);c.toolCalls+=b.toolCallCount??0,c.turns+=b.turnCount??0,c.tokens.input+=b.totalUsage.input,c.tokens.output+=b.totalUsage.output,c.tokens.cacheRead+=b.totalUsage.cacheRead,c.tokens.cacheWrite+=b.totalUsage.cacheWrite,c.durationMs+=b.durationMs??0}let d=b.activeSegments;if(d&&d.length>0){let a=new Set;for(let b of d){let d=b.startMs;for(;d<b.endMs;){let e=c(d);a.add(e);let g=new Date(d);g.setHours(24,0,0,0);let h=Math.min(g.getTime(),b.endMs),i=f(e);i.airTimeMs+=h-d,d=h}}for(let b of a){let a=f(b);a.sessions++}}else if(a){let c=f(a);c.sessions++,c.airTimeMs+=b.airTimeMs??0}}let g=b&&d?function(a,b){let[d,e,f]=a.split("-").map(Number),[g,h,i]=b.split("-").map(Number),j=new Date(d,e-1,f),k=new Date(g,h-1,i),l=[];for(let a=new Date(j);a<=k;a.setDate(a.getDate()+1))l.push(c(a.getTime()));return l}(b,d):[],i=[];for(let a of g)i.push(e.get(a)??h(a));let j=function(a){let b=[];for(let c of a)for(let a of c.activeSegments&&c.activeSegments.length>0?c.activeSegments:c.firstTimestamp&&c.lastTimestamp?(()=>{let a=Date.parse(c.firstTimestamp),b=Date.parse(c.lastTimestamp);return Number.isNaN(a)||Number.isNaN(b)||b<a?[]:[{startMs:a,endMs:b}]})():[])b.push({ms:a.startMs,delta:1,sessionId:c.id}),b.push({ms:a.endMs,delta:-1,sessionId:c.id});b.sort((a,b)=>a.ms-b.ms||b.delta-a.delta);let c=new Map,d=[];for(let a of b){if(1===a.delta)c.set(a.sessionId,(c.get(a.sessionId)??0)+1);else{let b=(c.get(a.sessionId)??0)-1;b<=0?c.delete(a.sessionId):c.set(a.sessionId,b)}d.push({atMs:a.ms,active:c.size,sessions:Array.from(c.keys()).slice(0,10)})}return d}(a),k=new Map;for(let a of j){let b=c(a.atMs),d=k.get(b)??0;a.active>d&&k.set(b,a.active)}for(let a of i)a.peakParallelism=k.get(a.date)??0;return i},"detectPrMarkers",0,function(a){let b=[],c=a.durationMs??0;for(let d of a.events){if("tool-call"!==d.role||"Bash"!==d.toolName)continue;let e=d.blocks.find(a=>a&&"type"in a&&"tool_use"===a.type);if(!e||"tool_use"!==e.type)continue;let f=e.input,g="string"==typeof f?.command?f.command:"";if(!i.test(g))continue;let h=g.match(k),l=g.match(j);b.push({sessionId:a.id,timestamp:d.timestamp??a.firstTimestamp??"",tOffsetMs:d.tOffsetMs,positionInSession:c>0&&void 0!==d.tOffsetMs?Math.min(1,Math.max(0,d.tOffsetMs/c)):void 0,command:g.slice(0,300),prNumber:l?Number(l[1]):void 0,title:h?.[1]})}return b},"groupByProject",0,function(a){let b=new Map;for(let c of a){let a=f(c.projectName),d=b.get(a);d||(d={projectDir:a,projectName:a,sessions:[],rawProjectDirs:[],worktreeCount:0,metrics:l([]),perAgent:[],lastActiveMs:void 0},b.set(a,d)),d.sessions.push(c),d.rawProjectDirs.includes(c.projectDir)||d.rawProjectDirs.push(c.projectDir);let e=c.lastTimestamp?Date.parse(c.lastTimestamp):void 0;e&&(!d.lastActiveMs||e>d.lastActiveMs)&&(d.lastActiveMs=e)}for(let a of b.values()){a.metrics=l(a.sessions);let b=new Set;for(let c of a.sessions){let a=g(c.projectName);a&&b.add(a)}a.worktreeCount=b.size;let c=new Map;for(let b of a.sessions){let a=b.agent??"claude-code",d=c.get(a);d||(d={agent:a,sessions:0},c.set(a,d)),d.sessions+=1}a.perAgent=Array.from(c.values()).sort((a,b)=>b.sessions-a.sessions)}return Array.from(b.values()).sort((a,b)=>(b.lastActiveMs??0)-(a.lastActiveMs??0))},"highLevelMetrics",0,l,"sessionAirTimeMs",0,function(a,b=18e4){let c=0;for(let d of a)void 0!==d.gapMs&&d.gapMs<=b&&(c+=d.gapMs);return c},"summarizeBursts",0,function(a){let b=0,d=0,e=0,f=new Set;for(let g of a)g.peak>b&&(b=g.peak),d+=g.endMs-g.startMs,g.crossProject&&e++,f.add(c(g.startMs));return{peakConcurrent:b,totalParallelMs:d,burstCount:a.length,crossProjectBurstCount:e,activeDayCount:f.size}},"toLocalDay",0,c,"worktreeName",0,g])},23895,88522,a=>{"use strict";var b=a.i(2157),c=a.i(60526),d=a.i(50227),e=a.i(30375),f=a.i(10687),g=a.i(98049),h=a.i(48024);let i=d.default.join(c.default.homedir(),".claude","projects");function j(a){return a.startsWith("-")?"/"+a.slice(1).replace(/-/g,"/"):a}async function k(a){let c=await b.promises.readFile(a,"utf8"),d=[];for(let a of c.split("\n")){let b=a.trim();if(b)try{d.push(JSON.parse(b))}catch{}}return d}function l(a){return a.replace(/\.jsonl$/i,"")}let m=new Map,n=new Map,o=new Map,p=null;async function q(a=i){let c;if(p&&p.root===a&&Date.now()-p.capturedAtMs<1e3)return p.files;try{c=await b.promises.readdir(a,{withFileTypes:!0})}catch{return[]}let e=c.filter(a=>a.isDirectory()).map(a=>a.name),f=(await Promise.all(e.map(async c=>{let e,f=d.default.join(a,c);try{e=await b.promises.readdir(f)}catch{return[]}let g=e.filter(a=>a.endsWith(".jsonl"));return(await Promise.all(g.map(async a=>{let e=d.default.join(f,a);try{let d=await b.promises.stat(e);return{projectDir:c,fileName:a,fullPath:e,mtimeMs:d.mtimeMs,sizeBytes:d.size}}catch{return null}}))).filter(a=>null!==a)}))).flat();return p={files:f,capturedAtMs:Date.now(),root:a},f}async function r(a=i){let b=await q(a),c=(await Promise.all(b.map(async a=>{let b,c=o.get(a.fullPath);if(c&&c.mtimeMs===a.mtimeMs&&c.sizeBytes===a.sizeBytes)return c.events;try{b=await k(a.fullPath)}catch{return[]}let d=new Map;for(let c of b){if(!c||"object"!=typeof c||"assistant"!==c.type)continue;let b="string"==typeof c.timestamp?c.timestamp:void 0;if(!b)continue;let e=c.message;if(!e)continue;let g=e.usage;if(!g)continue;let h=(0,f.modelFamily)("string"==typeof e.model?e.model:void 0);if(null===h)continue;let i="string"==typeof e.id?e.id:`__noid_${a.fullPath}_${b}`,j=g.cache_creation??{},k=a=>"number"==typeof a?a:0;d.set(i,{ts:b,family:h,input:k(g.input_tokens),output:k(g.output_tokens),cacheRead:k(g.cache_read_input_tokens),cache_1h:k(j.ephemeral_1h_input_tokens),cache_5m:k(j.ephemeral_5m_input_tokens)})}let e=Array.from(d.values());return o.set(a.fullPath,{events:e,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),e}))).flat();return c.sort((a,b)=>a.ts.localeCompare(b.ts)),c}let s={input:0,output:0,cacheRead:0,cacheWrite:0};function t(a,b,c){for(let d of a){if(!d||"object"!=typeof d||"assistant"!==d.type)continue;let a=d.message;if(!a)continue;let e="string"==typeof a.id?a.id:void 0,f="string"==typeof d.requestId?d.requestId:void 0,g=null!=e&&null!=f?`${e}:${f}`:void 0;if(g&&b.has(g))continue;g&&b.add(g);let h=a.usage;if(h){let a=a=>"number"==typeof a?a:0;c.input+=a(h.input_tokens),c.output+=a(h.output_tokens),c.cacheRead+=a(h.cache_read_input_tokens),c.cacheWrite+=a(h.cache_creation_input_tokens)}}}async function u(a,c,e){let f,g={...s},h=new Set;t(a,h,g);let i=d.default.join(c,e,"subagents");try{f=await b.promises.readdir(i)}catch{return g}let j=f.filter(a=>a.endsWith(".jsonl"));return 0===j.length||await Promise.all(j.map(async a=>{try{let b=await k(d.default.join(i,a));t(b,h,g)}catch{}})),g}async function v(a){let b=m.get(a.fullPath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes)return b.meta;try{let b=await k(a.fullPath),{meta:c}=(0,g.parseTranscript)(b),e=l(a.fileName),f=d.default.dirname(a.fullPath);c.totalUsage=await u(b,f,e);let h={...c,id:e,filePath:a.fullPath,projectDir:a.projectDir,projectName:c.cwd??j(a.projectDir)};return m.set(a.fullPath,{meta:h,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),h}catch{return null}}async function w(a){let b=n.get(a.fullPath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes)return b.detail;try{let b=await k(a.fullPath),{meta:c,events:d}=(0,g.parseTranscript)(b),e={...c,id:l(a.fileName),filePath:a.fullPath,projectDir:a.projectDir,projectName:c.cwd??j(a.projectDir),events:d};n.set(a.fullPath,{detail:e,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes});let f={...e};return delete f.events,m.set(a.fullPath,{meta:f,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),e}catch{return null}}async function x(a={}){let{root:b=i,limit:c=500,projectDir:d}=a,e=await q(b);d&&(e=e.filter(a=>a.projectDir===d)),e.sort((a,b)=>b.mtimeMs-a.mtimeMs);let f=e.slice(0,c);return(await Promise.all(f.map(a=>v(a)))).filter(a=>null!==a)}async function y(a,b={}){let{root:c=i}=b,e=(await q(c)).find(b=>l(b.fileName)===a);if(!e)return null;let f=await w(e);if(!f)return f;let g=f.firstTimestamp?Date.parse(f.firstTimestamp):void 0,h=d.default.join(d.default.dirname(e.fullPath),l(e.fileName),"subagents"),j=await z(h,g,f.events);return{...f,subagents:j}}async function z(a,c,e){let f;try{f=await b.promises.readdir(a)}catch{return[]}let g=new Map,h=[];for(let a of e)if("tool-call"===a.role&&"Agent"===a.toolName)for(let b of a.blocks){if(b?.type!=="tool_use"||"Agent"!==b.name)continue;let c=b.input??{},d="string"==typeof c.description?c.description:void 0,e=a.timestamp?Date.parse(a.timestamp):void 0,f={toolUseId:b.id,parentUuid:a.uuid??"",runInBackground:!0===c.run_in_background,prompt:"string"==typeof c.prompt?c.prompt:void 0,tsMs:e};d&&g.set(d,f),void 0!==e&&h.push(f)}h.sort((a,b)=>(a.tsMs??0)-(b.tsMs??0));let i=f.filter(a=>a.startsWith("agent-")&&a.endsWith(".jsonl"));return(await Promise.all(i.map(async e=>{let f,i=e.replace(/^agent-/,"").replace(/\.jsonl$/,""),j=d.default.join(a,e),l=d.default.join(a,`agent-${i}.meta.json`),m={};try{let a=await b.promises.readFile(l,"utf8");m=JSON.parse(a)}catch{}try{f=await k(j)}catch{return null}let n=function(a){let b,c,d,e,f,g={...s},h=new Set,i=0,j=0,k=0,l=new Map;for(let m of a){if(!m||"object"!=typeof m)continue;i++;let a="string"==typeof m.timestamp?Date.parse(m.timestamp):NaN;if(!Number.isNaN(a)&&((void 0===b||a<b)&&(b=a),(void 0===c||a>c)&&(c=a)),void 0===f&&"user"===m.type&&(null===m.parentUuid||void 0===m.parentUuid)){let a=m.message,b=a?.content;if("string"==typeof b)f=b;else if(Array.isArray(b)){let a=b.find(a=>a&&"object"==typeof a&&"text"===a.type);a?.text&&(f=a.text)}}if("assistant"===m.type){let a=m.message;if(!a)continue;e||"string"!=typeof a.model||(e=a.model);let b="string"==typeof a.id?a.id:void 0,c="string"==typeof m.requestId?m.requestId:void 0,f=null!=b&&null!=c?`${b}:${c}`:void 0,i=!f||!h.has(f);if(f&&i&&h.add(f),i){j++;let b=a.usage;if(b){let a=a=>"number"==typeof a?a:0;g.input+=a(b.input_tokens),g.output+=a(b.output_tokens),g.cacheRead+=a(b.cache_read_input_tokens),g.cacheWrite+=a(b.cache_creation_input_tokens)}}let n=a.content;if(Array.isArray(n))for(let a of n)a&&"object"==typeof a&&("text"===a.type&&"string"==typeof a.text?d=a.text:"tool_use"===a.type&&"string"==typeof a.name&&(k++,l.set(a.name,(l.get(a.name)??0)+1)))}}let m=Array.from(l.entries()).map(([a,b])=>({name:a,count:b})).sort((a,b)=>b.count-a.count);return{startMs:b,endMs:c,totalUsage:g,eventCount:i,finalPreview:void 0!==d?d.replace(/\s+/g," ").trim().slice(0,240):void 0,finalText:d,model:e,toolCalls:m,toolCallCount:k,assistantMessageCount:j,initialPrompt:f}}(f),o=m.description&&m.description.trim().length>0?m.description:void 0,p=o?g.get(o):function(a){let b;if(void 0===a)return;let c=1/0;for(let d of h){if(void 0===d.tsMs)continue;let e=Math.abs(a-d.tsMs);e<c&&e<=2e3&&(b=d,c=e)}return b}(n.startMs),q=o??(n.initialPrompt?n.initialPrompt.replace(/\s+/g," ").trim().slice(0,80):"(no description)"),r=p?.prompt??n.initialPrompt,t=void 0!==c&&void 0!==n.startMs?Math.max(0,n.startMs-c):void 0,u=void 0!==c&&void 0!==n.endMs?Math.max(0,n.endMs-c):void 0,v=void 0!==n.startMs&&void 0!==n.endMs?n.endMs-n.startMs:void 0;return{agentId:i,agentType:m.agentType??"unknown",description:q,startMs:n.startMs,endMs:n.endMs,durationMs:v,startTOffsetMs:t,endTOffsetMs:u,eventCount:n.eventCount,totalUsage:n.totalUsage,parentUuid:p?.parentUuid,parentToolUseId:p?.toolUseId,runInBackground:p?.runInBackground,prompt:r,finalPreview:n.finalPreview,finalText:n.finalText,model:n.model,toolCalls:n.toolCalls,toolCallCount:n.toolCallCount,assistantMessageCount:n.assistantMessageCount}}))).filter(a=>null!==a).sort((a,b)=>(a.startMs??0)-(b.startMs??0))}async function A(a=i){let b=await q(a),c=new Map;for(let a of b){let b=c.get(a.projectDir)??{count:0,lastActiveMs:0};b.count++,a.mtimeMs>b.lastActiveMs&&(b.lastActiveMs=a.mtimeMs),c.set(a.projectDir,b)}let d=a=>{for(let[,b]of m.entries())if(b.meta.projectDir===a&&b.meta.cwd)return b.meta.cwd},e=new Map;for(let[a,{count:b,lastActiveMs:f}]of c){let c=d(a)??j(a),g=(0,h.canonicalProjectName)(c),i=(0,h.worktreeName)(c),k=e.get(g)??{canonicalName:g,count:0,lastActiveMs:0,worktreeBranches:new Set};k.count+=b,f>k.lastActiveMs&&(k.lastActiveMs=f),i&&k.worktreeBranches.add(i),e.set(g,k)}return Array.from(e.values()).map(a=>({projectDir:a.canonicalName,projectName:a.canonicalName,sessionCount:a.count,lastActiveMs:a.lastActiveMs,worktreeCount:a.worktreeBranches.size})).sort((a,b)=>b.lastActiveMs-a.lastActiveMs)}async function B(a,b={}){let{root:c=i}=b,d=await x({root:c}),e=d.find(b=>b.sessionId===a);if(!e||!e.teamName)return null;let f=e.teamName,g=d.filter(a=>a.teamName===f&&!a.filePath.includes("/subagents/")),h=await Promise.all(g.map(a=>y(a.sessionId,{root:c}))),j=new Map;g.forEach((a,b)=>{let c=h[b];c&&j.set(a.sessionId,c)});let k=(function(a,b){let c=new Map;for(let b of a){if(!b.teamName)continue;let a=c.get(b.teamName)??[];a.push(b),c.set(b.teamName,a)}let d=[];for(let[a,e]of c){let c=function(a,b,c){let d,e=b.filter(a=>a.isTeamLead);if(0===e.length)return null;for(let a of e){let b=c.get(a.sessionId);if(b&&function(a){for(let b of a)if("tool-call"===b.role&&"TeamCreate"===b.toolName)return!0;return!1}(b.events)){d=a;break}}d||(d=[...e].sort((a,b)=>Date.parse(a.firstTimestamp??"")-Date.parse(b.firstTimestamp??""))[0]);let f=new Map;for(let a of b)f.set(a.sessionId,a.agentName);let g=b.filter(a=>a.sessionId!==d.sessionId).sort((a,b)=>Date.parse(a.firstTimestamp??"")-Date.parse(b.firstTimestamp??"")),h=new Map;for(let a of g)a.agentName&&h.set(a.agentName,a.sessionId);let i=[];for(let a of b){let b=c.get(a.sessionId);if(!b)continue;let e=a.sessionId,f=a.agentName??"team-lead";for(let a of b.events){let b=function(a){if("tool-call"!==a.role||"SendMessage"!==a.toolName)return null;for(let b of a.blocks){if(!b||"object"!=typeof b||"tool_use"!==b.type)continue;let a=b.input??{},c="string"==typeof a.to?a.to:"",d="string"==typeof a.message?a.message:"";if(!c)break;return{to:c,body:d}}return null}(a);if(!b)continue;let c=b.to,g="team-lead"===c?d.sessionId:h.get(c)??"";i.push({tsMs:a.timestamp?Date.parse(a.timestamp):0,fromSessionId:e,fromTeammateId:f,toSessionId:g,toTeammateId:c,body:b.body,kind:"message"})}}i.sort((a,b)=>a.tsMs-b.tsMs);let j=[];for(let a of b)a.firstTimestamp&&j.push(Date.parse(a.firstTimestamp)),a.lastTimestamp&&j.push(Date.parse(a.lastTimestamp));let k=j.length?Math.min(...j):0,l=j.length?Math.max(...j):0;return{teamName:a,leadSessionId:d.sessionId,memberSessionIds:g.map(a=>a.sessionId),agentNameBySessionId:f,messages:i,firstEventMs:k,lastEventMs:l}}(a,e,b);c&&d.push(c)}return d})(g,j).find(a=>a.teamName===f);return k?{view:k,details:j}:null}async function C(a,b={}){let{root:c=i}=b,d=await x({root:c}),e=d.find(b=>b.sessionId===a);if(!e||!e.teamName||!e.agentName||e.isTeamLead)return null;let f=d.filter(a=>a.teamName===e.teamName&&a.isTeamLead&&!a.filePath.includes("/subagents/"));return 0===f.length?null:{leadSessionId:f[0].sessionId,teamName:e.teamName,agentName:e.agentName}}let D={...e.CLAUDE_CODE_METADATA,defaultRoot:i,async listSessions(a){let b=await x(a);for(let a of b)a.agent||(a.agent="claude-code");return b},async getSession(a,b){let c=await y(a,b);return c&&!c.agent&&(c.agent="claude-code"),c}};a.s(["DEFAULT_ROOT",0,i,"claudeCodeSource",0,D,"findTeamLead",0,C,"listProjects",0,A,"loadCalibrationEvents",0,r,"loadTeamForSession",0,B,"walkJsonlFiles",0,q],88522);let E=d.default.join(c.default.homedir(),".codex","sessions"),F=/^rollout-(\d{4}-\d{2}-\d{2}T\d{2}-\d{2}-\d{2})-([0-9a-f-]+)\.jsonl$/;async function G(a){return b.promises.readdir(a).catch(()=>[])}async function H(a){let c=[];for(let e of(await G(a))){if(!/^\d{4}$/.test(e))continue;let f=d.default.join(a,e);for(let a of(await G(f))){if(!/^\d{2}$/.test(a))continue;let e=d.default.join(f,a);for(let a of(await G(e))){if(!/^\d{2}$/.test(a))continue;let f=d.default.join(e,a);for(let a of(await G(f))){let e=F.exec(a);if(!e)continue;let g=d.default.join(f,a),h=await b.promises.stat(g).catch(()=>null);h&&c.push({filePath:g,sessionId:e[2],mtimeMs:h.mtimeMs,sizeBytes:h.size})}}}}return c}async function I(a){let c=await b.promises.readFile(a,"utf8"),d=[];for(let a of c.split("\n")){let b=a.trim();if(b)try{d.push(JSON.parse(b))}catch{}}return d}function J(a){return a.replace(/\s+/g," ").trim().slice(0,200)}function K(a,b){let c,d,e,f,g,i,j,k=[],l={input:0,output:0,cacheRead:0,cacheWrite:0},m=0,n=0,o=[],p=0;for(let a of b){if("object"!=typeof a||null===a)continue;let b="string"==typeof a.timestamp?a.timestamp:void 0;if(b){c||(c=b),d=b;let a=Date.parse(b);Number.isFinite(a)&&o.push(a)}let h="string"==typeof a.type?a.type:"",r=a.payload??{},s="string"==typeof r.type?r.type:"";if("session_meta"===h){"string"==typeof r.cwd&&(e=r.cwd);continue}if("turn_context"===h){"string"==typeof r.cwd&&(e=r.cwd),"string"==typeof r.model&&(f=r.model);continue}if("event_msg"===h&&"token_count"===s){let a=r.info??null,b=a?.total_token_usage??null;b&&(l.input=L(b.input_tokens)??l.input,l.output=L(b.output_tokens)??l.output,l.cacheRead=L(b.cached_input_tokens)??l.cacheRead);continue}if("event_msg"===h&&"user_message"===s){let c="string"==typeof r.message?r.message:"",d=J(c);c&&(g||(g=d),i=d,n+=1),k.push({index:p++,timestamp:b,role:"user",rawType:"event_msg/user_message",preview:d,blocks:c?[{type:"text",text:c}]:[],raw:a});continue}if("event_msg"===h&&"agent_message"===s){let c="string"==typeof r.message?r.message:"",d=J(c);c&&(j=d),k.push({index:p++,timestamp:b,role:"agent",rawType:"event_msg/agent_message",preview:d,blocks:c?[{type:"text",text:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"reasoning"===s){let c=(r.summary??[]).map(a=>"string"==typeof a.text?a.text:"").join("\n").trim();k.push({index:p++,timestamp:b,role:"agent-thinking",rawType:"response_item/reasoning",preview:J(c),blocks:c?[{type:"thinking",thinking:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"message"===s&&"assistant"===r.role){let c=(r.content??[]).map(a=>"string"==typeof a.text?a.text:"").join("\n").trim(),d=J(c);c&&(j=d),k.push({index:p++,timestamp:b,role:"agent",rawType:"response_item/message",preview:d,blocks:c?[{type:"text",text:c}]:[],model:f,raw:a});continue}if("response_item"===h&&"function_call"===s){var q;let c="string"==typeof r.name?r.name:"(unknown)",d="string"==typeof r.call_id?r.call_id:void 0,e="string"==typeof r.arguments?r.arguments:"",g=function(a){if(!a)return null;try{return JSON.parse(a)}catch{return a}}(e);m+=1,k.push({index:p++,timestamp:b,role:"tool-call",rawType:"response_item/function_call",preview:`${c}(${(q=e).length<=80?q:q.slice(0,79)+"…"})`,blocks:[{type:"tool_use",id:d??`codex-${p}`,name:c,input:g}],toolName:c,toolUseId:d,model:f,raw:a});continue}if("response_item"===h&&"function_call_output"===s){let c="string"==typeof r.call_id?r.call_id:void 0,d="string"==typeof r.output?r.output:"",e=/process exited with code [1-9]/i.test(d);k.push({index:p++,timestamp:b,role:"tool-result",rawType:"response_item/function_call_output",preview:J(d),blocks:[{type:"tool_result",tool_use_id:c??"",content:d,is_error:e}],toolUseId:c,toolResult:d,raw:a});continue}k.push({index:p++,timestamp:b,role:"meta",rawType:s?`${h}/${s}`:h,preview:"",blocks:[],raw:a})}if(l.input>0||l.output>0){let b=-1;for(let a=k.length-1;a>=0;a--){let c=k[a].role;if("agent"===c||"agent-thinking"===c||"tool-call"===c){b=a;break}}if(b>=0){let c=k[b];c.messageId=`codex-${a.sessionId}-total`,c.usage={input:l.input,output:l.output,cacheRead:l.cacheRead,cacheWrite:0}}}let r=c?Date.parse(c):void 0;if(void 0!==r&&Number.isFinite(r)){let a;for(let b of k){if(!b.timestamp)continue;let c=Date.parse(b.timestamp);Number.isFinite(c)&&(b.tOffsetMs=Math.max(0,c-r),void 0!==a&&(b.gapMs=Math.max(0,c-a)),a=c)}}let s=function(a){if(0===a.length)return[];let b=[...a].sort((a,b)=>a-b),c=[],d=b[0],e=b[0];for(let a=1;a<b.length;a++)b[a]-e>18e4&&(c.push({startMs:d,endMs:e}),d=b[a]),e=b[a];return c.push({startMs:d,endMs:e}),c}(o),t=s.reduce((a,b)=>a+(b.endMs-b.startMs),0),u=c&&d?Date.parse(d)-Date.parse(c):void 0,v=e?(0,h.canonicalProjectName)(e):"(unknown)",w=e?e.replace(/^\//,"-").replace(/\//g,"-"):"(unknown)";return{meta:{agent:"codex",id:a.sessionId,filePath:a.filePath,projectName:v,projectDir:w,sessionId:a.sessionId,firstTimestamp:c,lastTimestamp:d,durationMs:u&&Number.isFinite(u)?u:void 0,eventCount:k.length,model:f,cwd:e,totalUsage:l,status:"idle",firstUserPreview:g,lastUserPreview:i,lastAgentPreview:j,toolCallCount:m,turnCount:n,airTimeMs:t,activeSegments:s},events:k}}function L(a){return"number"==typeof a&&Number.isFinite(a)?a:void 0}let M=new Map,N=new Map;async function O(a={}){let b=a.root??E,c=await H(b),d=[];for(let a of c){let b=M.get(a.filePath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes){d.push(b.meta);continue}try{let b=await I(a.filePath),{meta:c}=K(a,b);M.set(a.filePath,{meta:c,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),d.push(c)}catch{}}return(d.sort((a,b)=>(b.firstTimestamp??"").localeCompare(a.firstTimestamp??"")),void 0!==a.limit)?d.slice(0,a.limit):d}async function P(a,b={}){let c=b.root??E,d=(await H(c)).find(b=>b.sessionId===a);if(!d)return null;let e=N.get(d.filePath);if(e&&e.mtimeMs===d.mtimeMs&&e.sizeBytes===d.sizeBytes)return e.detail;let f=await I(d.filePath),{meta:g,events:h}=K(d,f),i={...g,events:h};return N.set(d.filePath,{detail:i,mtimeMs:d.mtimeMs,sizeBytes:d.sizeBytes}),i}async function Q(a={}){let b=a.root??E,c=await H(b);if(0===c.length)return null;for(let a of(c.sort((a,b)=>b.mtimeMs-a.mtimeMs),c)){let b=await I(a.filePath);for(let c=b.length-1;c>=0;c--){let d=b[c];if("object"!=typeof d||null===d||"event_msg"!==d.type)continue;let e=d.payload??{};if("token_count"!==e.type)continue;let f=e.rate_limits??null;if(!f)continue;let g=f.primary??null,h=f.secondary??null,i=L(g?.used_percent),j=L(h?.used_percent),k=L(g?.resets_at),l=L(h?.resets_at),m="string"==typeof f.plan_type?f.plan_type:null;return{five_hour:{utilization:i??null,resets_at:void 0!==k?new Date(1e3*k).toISOString():null},seven_day:{utilization:j??null,resets_at:void 0!==l?new Date(1e3*l).toISOString():null},plan_type:m,source_path:a.filePath}}}return null}let R=d.default.join(c.default.homedir(),".gemini","tmp"),S=d.default.join(c.default.homedir(),".gemini","projects.json"),T=/^session-.+\.(jsonl|json)$/;async function U(a){return b.promises.readdir(a).catch(()=>[])}async function V(a){let c=[];for(let e of(await U(a))){let f=d.default.join(a,e,"chats");for(let a of(await U(f))){if(!T.test(a))continue;let g=d.default.join(f,a),h=await b.promises.stat(g).catch(()=>null);if(!h||!h.isFile())continue;let i=a.replace(/\.(jsonl|json)$/,"").split("-").pop()??a;c.push({filePath:g,slug:e,filenameId:i,format:a.endsWith(".jsonl")?"jsonl":"legacy-json",mtimeMs:h.mtimeMs,sizeBytes:h.size})}}return c}let W=null;async function X(){let a,c=await b.promises.stat(S).catch(()=>null);if(!c)return new Map;if(W&&W.mtimeMs===c.mtimeMs)return W.slugToCwd;let d=await b.promises.readFile(S,"utf8").catch(()=>"");try{a=JSON.parse(d)}catch{a={}}let e=new Map;for(let[b,c]of Object.entries(a.projects??{}))"string"==typeof c&&e.set(c,b);return W={mtimeMs:c.mtimeMs,slugToCwd:e},e}function Y(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&"string"==typeof a.type}async function Z(a){let c=await b.promises.readFile(a.filePath,"utf8");if("legacy-json"===a.format){let a;try{a=JSON.parse(c)}catch{return{meta:{},messages:[]}}return{meta:{sessionId:"string"==typeof a.sessionId?a.sessionId:void 0,projectHash:"string"==typeof a.projectHash?a.projectHash:void 0,startTime:"string"==typeof a.startTime?a.startTime:void 0,lastUpdated:"string"==typeof a.lastUpdated?a.lastUpdated:void 0,summary:"string"==typeof a.summary?a.summary:void 0},messages:(Array.isArray(a.messages)?a.messages:[]).filter(Y)}}let d={},e=new Map,f=[];for(let a of c.split("\n")){let b,c=a.trim();if(c){var g,h;try{b=JSON.parse(c)}catch{continue}if((g=b)&&"object"==typeof g&&"$rewindTo"in g){let a=b.$rewindTo,c=f.indexOf(a);if(c>=0){for(let a of f.slice(c))e.delete(a);f.length=c}continue}if((h=b)&&"object"==typeof h&&"$set"in h){Object.assign(d,b.$set);continue}if(Y(b)){e.has(b.id)||f.push(b.id),e.set(b.id,b);continue}if("object"==typeof b&&null!==b){let a=b;"string"!=typeof a.sessionId||d.sessionId||(d.sessionId=a.sessionId,"string"==typeof a.projectHash&&(d.projectHash=a.projectHash),"string"==typeof a.startTime&&(d.startTime=a.startTime),"string"==typeof a.lastUpdated&&(d.lastUpdated=a.lastUpdated),"string"==typeof a.summary&&(d.summary=a.summary))}}}let i=[];for(let a of f){let b=e.get(a);b&&i.push(b)}return{meta:d,messages:i}}function $(a){return a.replace(/\s+/g," ").trim().slice(0,200)}function _(a){if(!a)return"";if("string"==typeof a)return a;let b=Array.isArray(a)?a:[a],c=[];for(let a of b){if(!a||"object"!=typeof a)continue;if("string"==typeof a.text){c.push(a.text);continue}let b=a.functionResponse;if(b){let a=b.response;"string"==typeof a?c.push(a):a&&"object"==typeof a&&("string"==typeof a.output?c.push(a.output):"string"==typeof a.error?c.push(`error: ${a.error}`):c.push(JSON.stringify(a)))}}return c.join("\n")}async function aa(a){let b,c,d,e,f,g,{meta:i,messages:j}=await Z(a),k=(await X()).get(a.slug),l=[],m={input:0,output:0,cacheRead:0,cacheWrite:0},n=0,o=0,p=[],q=0;function r(a){if(l.push(a),a.timestamp&&"meta"!==a.role){b||(b=a.timestamp),c=a.timestamp;let d=Date.parse(a.timestamp);Number.isFinite(d)&&p.push(d)}}for(let a of j){let b=a.timestamp;if("user"===a.type){let c=_(a.displayContent??a.content),d=$(c);c&&(e||(e=d),f=d,o+=1),r({index:q++,timestamp:b,role:"user",rawType:"gemini/user",preview:d,blocks:c?[{type:"text",text:c}]:[],messageId:a.id,raw:a});continue}if("gemini"===a.type){let c;"string"==typeof a.model&&(d=a.model);let e=_(a.content),f=$(e);if(e&&(g=f),a.tokens){let b=a.tokens,d={input:b.input??0,output:b.output??0,cacheRead:b.cached??0,cacheWrite:0};c=d,m.input+=d.input,m.output+=d.output,m.cacheRead+=d.cacheRead}for(let c of a.thoughts??[]){let a=[c.subject,c.description].filter(Boolean).join(": ");a&&r({index:q++,timestamp:c.timestamp??b,role:"agent-thinking",rawType:"gemini/thought",preview:$(a),blocks:[{type:"thinking",thinking:a}],model:d,raw:c})}for(let g of(e?r({index:q++,timestamp:b,role:"agent",rawType:"gemini/agent",preview:f,blocks:[{type:"text",text:e}],messageId:a.id,model:d,usage:c,raw:a}):c&&r({index:q++,timestamp:b,role:"agent",rawType:"gemini/agent",preview:"",blocks:[],messageId:a.id,model:d,usage:c,raw:a}),a.toolCalls??[])){n+=1;let a=g.args?JSON.stringify(g.args):"";r({index:q++,timestamp:g.timestamp??b,role:"tool-call",rawType:"gemini/tool_call",preview:`${g.name}(${a.length<=80?a:a.slice(0,79)+"…"})`,blocks:[{type:"tool_use",id:g.id,name:g.name,input:g.args??{}}],toolName:g.name,toolUseId:g.id,model:d,raw:g});let c=(g.status??"").toLowerCase();if("success"===c||"error"===c||"cancelled"===c){let a=_(g.result);r({index:q++,timestamp:g.timestamp??b,role:"tool-result",rawType:"gemini/tool_result",preview:$(a),blocks:[{type:"tool_result",tool_use_id:g.id,content:a,is_error:"error"===c||"cancelled"===c}],toolUseId:g.id,toolResult:a,raw:g})}}continue}if("info"===a.type||"warning"===a.type||"error"===a.type){let c=_(a.content);r({index:q++,timestamp:b,role:"meta",rawType:`gemini/${a.type}`,preview:$(c),blocks:c?[{type:"text",text:c}]:[],raw:a});continue}}let s=b?Date.parse(b):void 0;if(void 0!==s&&Number.isFinite(s)){let a;for(let b of l){if(!b.timestamp)continue;let c=Date.parse(b.timestamp);Number.isFinite(c)&&(b.tOffsetMs=Math.max(0,c-s),void 0!==a&&(b.gapMs=Math.max(0,c-a)),a=c)}}let t=function(a){if(0===a.length)return[];let b=[...a].sort((a,b)=>a-b),c=[],d=b[0],e=b[0];for(let a=1;a<b.length;a++)b[a]-e>18e4&&(c.push({startMs:d,endMs:e}),d=b[a]),e=b[a];return c.push({startMs:d,endMs:e}),c}(p),u=t.reduce((a,b)=>a+(b.endMs-b.startMs),0),v=b&&c?Date.parse(c)-Date.parse(b):void 0,w=i.sessionId??a.filenameId,x=k?(0,h.canonicalProjectName)(k):a.slug,y=k?k.replace(/^\//,"-").replace(/\//g,"-"):a.slug;return{meta:{agent:"gemini",id:w,filePath:a.filePath,projectName:x,projectDir:y,sessionId:w,firstTimestamp:b,lastTimestamp:c,durationMs:v&&Number.isFinite(v)?v:void 0,eventCount:l.length,model:d,cwd:k,totalUsage:m,status:"idle",firstUserPreview:e,lastUserPreview:f,lastAgentPreview:g,toolCallCount:n,turnCount:o,airTimeMs:u,activeSegments:t},events:l}}let ab=new Map,ac=new Map;async function ad(a={}){let b=a.root??R,c=await V(b),d=[];for(let a of c){let b=ab.get(a.filePath);if(b&&b.mtimeMs===a.mtimeMs&&b.sizeBytes===a.sizeBytes){d.push(b.meta);continue}try{let{meta:b}=await aa(a);ab.set(a.filePath,{meta:b,mtimeMs:a.mtimeMs,sizeBytes:a.sizeBytes}),d.push(b)}catch{}}return(d.sort((a,b)=>(b.firstTimestamp??"").localeCompare(a.firstTimestamp??"")),void 0!==a.limit)?d.slice(0,a.limit):d}async function ae(a,b={}){let c,d=b.root??R,e=await V(d);for(let b of e)if(b.filenameId===a||a.startsWith(b.filenameId)){c=b;break}if(!c)for(let b of e){let{meta:d}=await aa(b).catch(()=>({meta:{id:""}}));if(d.id===a){c=b;break}}if(!c)return null;let f=ac.get(c.filePath);if(f&&f.mtimeMs===c.mtimeMs&&f.sizeBytes===c.sizeBytes)return f.detail;let{meta:g,events:h}=await aa(c),i={...g,events:h};return ac.set(c.filePath,{detail:i,mtimeMs:c.mtimeMs,sizeBytes:c.sizeBytes}),i}let af=[D,{...e.CODEX_METADATA,defaultRoot:E,listSessions:async a=>O(a),getSession:async a=>P(a),async usagePoller(){let a=await Q();return a?{captured_at:new Date().toISOString(),agent:"codex",five_hour:a.five_hour,seven_day:a.seven_day}:null}},{...e.GEMINI_METADATA,defaultRoot:R,listSessions:async a=>ad(a),getSession:async a=>ae(a)}];async function ag(a={}){let b=await Promise.all(af.map(b=>b.listSessions(a))),c=[];for(let a of b)c.push(...a);return(c.sort((a,b)=>(b.firstTimestamp??"").localeCompare(a.firstTimestamp??"")),void 0!==a.limit)?c.slice(0,a.limit):c}async function ah(a){for(let b of af){let c=await b.getSession(a);if(c)return c}return null}let ai=d.default.join(c.default.homedir(),".cclens","usage.jsonl");async function aj(){let a;try{a=await b.promises.readFile(ai,"utf8")}catch{return[]}let c=[];for(let b of a.split("\n")){let a=b.trim();if(a)try{let b=JSON.parse(a);if(!b.captured_at||(b.agent??"claude-code")!=="claude-code")continue;c.push(b)}catch{}}return c.sort((a,b)=>(a.captured_at??"").localeCompare(b.captured_at??"")),c}function ak(a,b,c){if(0===b.length)return null;for(let[d,e]of b)if(d>=a&&e>a){let b=e,d=36e5*c;for(;b-d>a;)b-=d;return b}let d=b[b.length-1][1],e=36e5*c;for(;d<a;)d+=e;return d}async function al(a="pro-max-20x",b=i,c=30){let[d,e]=await Promise.all([r(b),aj()]);return function(a,b,c="pro-max-20x",d=30){if(0===b.length||0===a.length)return null;let e=(0,f.buildSpendIndex)(a),g=f.RATE_PER_PCT_7D[c],h=f.RATE_PER_PCT_5H[c],i=(0,f.groupSnapsByCycle)(b,a=>a.five_hour),j=(0,f.groupSnapsByCycle)(b,a=>a.seven_day),k=(0,f.collectSnapPairRates)(j,e,{minTravelPct:1,minDollars:10,maxGapMs:864e5}),l=(0,f.collectSnapPairRates)(i,e,{minTravelPct:1,minDollars:1,maxGapMs:72e5}),m=(0,f.userSoloRate)(k,.9)??g,n=(0,f.userSoloRate)(l,.9)??h,o=new Set(k.map(a=>a.cycleEndMs)).size,p=new Set(l.map(a=>a.cycleEndMs)).size,q=[],r=[];for(let a of b){let b=Date.parse(a.captured_at);if(!Number.isNaN(b)){if(a.five_hour?.resets_at){let c=Date.parse(a.five_hour.resets_at);Number.isNaN(c)||q.push([b,c])}if(a.seven_day?.resets_at){let c=Date.parse(a.seven_day.resets_at);Number.isNaN(c)||r.push([b,c])}}}let s=new Map;for(let a of b){let b=Date.parse(a.captured_at);if(Number.isNaN(b))continue;let c=Math.floor(b/6e4);s.set(c,[a.five_hour?.utilization??null,a.seven_day?.utilization??null])}let t=Date.parse(b[0].captured_at),u=Date.parse(b[b.length-1].captured_at),v=Math.max(Date.parse(a[0].ts),t-12096e5),w=6e4*d,x=[],y=v;for(;y<=u;){let a=null,b=null;for(let c=0;c<d;c++){let d=Math.floor((y+6e4*c)/6e4),e=s.get(d);if(e){a=e[0],b=e[1];break}}let c=ak(y,q,5),g=ak(y,r,168),h=null!=c?36e5*Math.round(c/36e5):null,k=null!=g?36e5*Math.round(g/36e5):null,l=null!=h?i.get(h)??[]:[],o=null!=k?j.get(k)??[]:[],p=h??y+18e6,t=k??y+6048e5,u=(0,f.predictAnchored)(e,l,n,p,5,y),v=(0,f.predictAnchored)(e,o,m,t,168,y);x.push({ts:new Date(y).toISOString(),real_5h:a,pred_5h:Math.max(0,Math.min(200,u)),real_7d:b,pred_7d:Math.max(0,Math.min(200,v)),cycle_end_5h:null!=h?new Date(h).toISOString():null,cycle_end_7d:null!=k?new Date(k).toISOString():null}),y+=w}let z=k.length>=3?"user_calibrated":"tier_default";return{model:`anchored-${c}`,tier:c,rate_per_pct:m,rate_per_pct_5h:n,rate_per_pct_7d:m,rate_source_5h:l.length>=3?"user_calibrated":"tier_default",rate_source_7d:z,cycles_used_5h:p,cycles_used_7d:o,granularity_min:d,curve:x,first_snapshot_ts:b[0].captured_at??null,real_count:x.filter(a=>null!==a.real_7d).length,total_count:x.length}}(d,e,a,c)}a.s(["agentSources",0,af,"getAnySession",0,ah,"listAllSessions",0,ag,"loadCalibrationCurve",0,al],23895)},9117,a=>{"use strict";a.i(30375),a.s([])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=packages_parser_dist_10_oegc._.js.map
|
|
@@ -7,15 +7,15 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
7
7
|
"static/chunks/03~yq9q893hmn.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/u6-8f8u1tspYCacGAz53R/_buildManifest.js",
|
|
11
|
+
"static/u6-8f8u1tspYCacGAz53R/_ssgManifest.js",
|
|
12
|
+
"static/u6-8f8u1tspYCacGAz53R/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
|
-
"static/chunks/
|
|
15
|
+
"static/chunks/0kjot8367asxe.js",
|
|
16
16
|
"static/chunks/073081qv4uyn8.js",
|
|
17
17
|
"static/chunks/0l4e3as18eexy.js",
|
|
18
18
|
"static/chunks/0257pdz1-imal.js",
|
|
19
|
-
"static/chunks/turbopack-
|
|
19
|
+
"static/chunks/turbopack-00w.w1u3c~d-6.js"
|
|
20
20
|
]
|
|
21
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0kjot8367asxe.js"/><script src="/_next/static/chunks/073081qv4uyn8.js" async=""></script><script src="/_next/static/chunks/0l4e3as18eexy.js" async=""></script><script src="/_next/static/chunks/0257pdz1-imal.js" async=""></script><script src="/_next/static/chunks/turbopack-00w.w1u3c~d-6.js" async=""></script><script src="/_next/static/chunks/01xlw8hd842-c.js" async=""></script><script src="/_next/static/chunks/07lbm-sdh9c2j.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0kjot8367asxe.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/07lbm-sdh9c2j.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"u6-8f8u1tspYCacGAz53R\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"GwuUBX3DXeyKkkJAignXaovk0hB09jJ8zPrH6ryYJH8=\"\n}"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,51592,e=>{"use strict";var t=e.i(71645),o=e.i(54611);e.s(["ChangelogMarkRead",0,function({version:e}){return(0,t.useEffect)(()=>{e&&window.localStorage.setItem(o.STORAGE_KEY,e)},[e]),null}])}]);
|