@claudeye/linux-arm64 1.0.7 → 1.0.9
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/assets/dist/hooks-api.d.ts +43 -0
- package/assets/dist/hooks-api.js +1 -0
- package/assets/dist/index.d.ts +2 -0
- package/assets/dist/index.js +1 -1
- package/assets/dist/loader.js +2 -2
- package/assets/standalone/.next/BUILD_ID +1 -1
- package/assets/standalone/.next/app-path-routes-manifest.json +2 -1
- package/assets/standalone/.next/build-manifest.json +8 -8
- package/assets/standalone/.next/prerender-manifest.json +27 -3
- package/assets/standalone/.next/routes-manifest.json +12 -6
- package/assets/standalone/.next/server/app/_global-error/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +14 -1
- package/assets/standalone/.next/server/app/_global-error/page.js +5 -5
- package/assets/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/_global-error.html +1 -1
- package/assets/standalone/.next/server/app/_global-error.rsc +7 -7
- package/assets/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/assets/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/assets/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
- package/assets/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/assets/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/assets/standalone/.next/server/app/_not-found/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +2 -2
- package/assets/standalone/.next/server/app/_not-found/page.js +6 -7
- package/assets/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/_not-found.html +2 -2
- package/assets/standalone/.next/server/app/_not-found.rsc +27 -30
- package/assets/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +27 -30
- package/assets/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/assets/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +12 -15
- package/assets/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/assets/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/assets/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/assets/standalone/.next/server/app/api/completed-history/route.js +2 -2
- package/assets/standalone/.next/server/app/api/download/[project]/[session]/route.js +1 -1
- package/assets/standalone/.next/server/app/api/queue-item/route.js +2 -2
- package/assets/standalone/.next/server/app/api/queue-status/route.js +2 -2
- package/assets/standalone/.next/server/app/dashboard/[viewName]/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/dashboard/[viewName]/page/server-reference-manifest.json +5 -5
- package/assets/standalone/.next/server/app/dashboard/[viewName]/page.js +8 -9
- package/assets/standalone/.next/server/app/dashboard/[viewName]/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/dashboard/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/dashboard/page/server-reference-manifest.json +5 -5
- package/assets/standalone/.next/server/app/dashboard/page.js +9 -10
- package/assets/standalone/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/index.html +1 -0
- package/assets/standalone/.next/server/app/index.meta +15 -0
- package/assets/standalone/.next/server/app/index.rsc +22 -0
- package/assets/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +6 -0
- package/assets/standalone/.next/server/app/index.segments/_full.segment.rsc +22 -0
- package/assets/standalone/.next/server/app/index.segments/_head.segment.rsc +6 -0
- package/assets/standalone/.next/server/app/index.segments/_index.segment.rsc +12 -0
- package/assets/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -0
- package/assets/standalone/.next/server/app/login/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/login/page/server-reference-manifest.json +3 -3
- package/assets/standalone/.next/server/app/login/page.js +6 -7
- package/assets/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/login.html +2 -2
- package/assets/standalone/.next/server/app/login.rsc +30 -34
- package/assets/standalone/.next/server/app/login.segments/_full.segment.rsc +30 -34
- package/assets/standalone/.next/server/app/login.segments/_head.segment.rsc +4 -4
- package/assets/standalone/.next/server/app/login.segments/_index.segment.rsc +12 -15
- package/assets/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/assets/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
- package/assets/standalone/.next/server/app/login.segments/login.segment.rsc +3 -3
- package/assets/standalone/.next/server/app/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/page/server-reference-manifest.json +2 -2
- package/assets/standalone/.next/server/app/page.js +7 -8
- package/assets/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/policies/page/app-paths-manifest.json +3 -0
- package/assets/standalone/.next/server/app/{hooks → policies}/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/{hooks → policies}/page/server-reference-manifest.json +36 -24
- package/assets/standalone/.next/server/app/{hooks → policies}/page.js +9 -10
- package/assets/standalone/.next/server/app/policies/page_client-reference-manifest.js +3 -0
- package/assets/standalone/.next/server/app/project/[name]/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +2 -2
- package/assets/standalone/.next/server/app/project/[name]/page.js +7 -9
- package/assets/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
- package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +10 -10
- package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +8 -9
- package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app/projects/page/app-paths-manifest.json +3 -0
- package/assets/standalone/.next/server/app/projects/page/build-manifest.json +18 -0
- package/assets/standalone/.next/server/app/projects/page/next-font-manifest.json +6 -0
- package/assets/standalone/.next/server/app/projects/page/react-loadable-manifest.json +1 -0
- package/assets/standalone/.next/server/app/projects/page/server-reference-manifest.json +29 -0
- package/assets/standalone/.next/server/app/projects/page.js +18 -0
- package/assets/standalone/.next/server/app/projects/page_client-reference-manifest.js +3 -0
- package/assets/standalone/.next/server/app/queue/page/build-manifest.json +5 -5
- package/assets/standalone/.next/server/app/queue/page/server-reference-manifest.json +4 -4
- package/assets/standalone/.next/server/app/queue/page.js +8 -9
- package/assets/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/app-paths-manifest.json +2 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0-_qfa9._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0.lwwrp._.js +3 -0
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__072w.g0._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__08lgurx._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0bps8pa._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0f_5ws6._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0ld-~9t._.js +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0ndqa7s._.js +8 -3
- package/assets/standalone/.next/server/chunks/{[root-of-the-server]__0wkrejt._.js → [root-of-the-server]__0rtkhr~._.js} +1 -1
- package/assets/standalone/.next/server/chunks/{[root-of-the-server]__031vvrp._.js → [root-of-the-server]__0tlbu6c._.js} +1 -1
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0vfmej5._.js +4 -0
- package/assets/standalone/.next/server/chunks/_04cgd3m._.js +11 -0
- package/assets/standalone/.next/server/chunks/_0aylu-q._.js +2 -2
- package/assets/standalone/.next/server/chunks/_0h9z2~x._.js +11 -0
- package/assets/standalone/.next/server/chunks/_0lq2_wn._.js +2 -2
- package/assets/standalone/.next/server/chunks/_0oqawqx._.js +2 -2
- package/assets/standalone/.next/server/chunks/_0vt409y._.js +2 -2
- package/assets/standalone/.next/server/chunks/lib_0a9kq7-._.js +11 -0
- package/assets/standalone/.next/server/chunks/lib_0b2.9p5._.js +11 -0
- package/assets/standalone/.next/server/chunks/lib_13x.g8a._.js +11 -0
- package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_08t8vgq._.js +1 -1
- package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_0h8e7f.._.js +1 -1
- package/assets/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0l15kkr.js +1 -1
- package/assets/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-9w~bh._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-_oq51._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-om19y._.js +11 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-wbic0._.js +45 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__02l2rag._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__04qo1w2._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__09y6src._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__09y7ni.._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0bubgf_._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0f7wkrr._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0l897tw._.js → [root-of-the-server]__0iv48_z._.js} +2 -2
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j7bj94._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0m0x9dt._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oy2.6r._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pw0g9c._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0rm4qtt._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0sn21jm._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0spfsp5._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0uz88bg._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0x7-awk._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zva2n_._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__1370kzv._.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/_01fj_8s._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/_02_tcps._.js +32 -0
- package/assets/standalone/.next/server/chunks/ssr/_04.u7zx._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/_06383ya._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/_06nq9qk._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/_0i~.gk_._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/_0kfjwwu._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/_0km.fsf._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/_0rr.uoo._.js +3 -3
- package/assets/standalone/.next/server/chunks/ssr/_0x26hbi._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/{_0_ia8tm._.js → _0xg44oj._.js} +2 -2
- package/assets/standalone/.next/server/chunks/ssr/_11ou~_x._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/_1207ol.._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_04qfs8z._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_05evmdg._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_07izk21._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_0uosk1e._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_13f0ohr._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_actions_compute-dashboard_ts_13cb_9d._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_global-error_tsx_0m9qisk._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/app_login_page_tsx_0z71ad3._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +8 -0
- package/assets/standalone/.next/server/chunks/ssr/{app_loading_tsx_05semg5._.js → app_projects_loading_tsx_13veom4._.js} +2 -2
- package/assets/standalone/.next/server/chunks/ssr/app_queue_queue-client_tsx_0c0olxv._.js +1 -1
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_0rd0oc-._.js +2 -2
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_0h9llsw._.js +2 -2
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_0~3yv~8._.js +3 -0
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0s-cxl7.js → node_modules_next_dist_esm_build_templates_app-page_06pwt.d.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0j.ij4e.js → node_modules_next_dist_esm_build_templates_app-page_091vo_-.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0a_7sdg.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0blr8v-.js → node_modules_next_dist_esm_build_templates_app-page_0ef3uwk.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0_4obh1.js → node_modules_next_dist_esm_build_templates_app-page_0ft_6~o.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0rc3ul_.js → node_modules_next_dist_esm_build_templates_app-page_0j79~gv.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0za6ylf.js → node_modules_next_dist_esm_build_templates_app-page_0pbja1x.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0r6o0i2.js +4 -0
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_13mo15i.js → node_modules_next_dist_esm_build_templates_app-page_0w9nerp.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0xv8hin.js → node_modules_next_dist_esm_build_templates_app-page_11y81~_.js} +3 -3
- package/assets/standalone/.next/server/chunks/ssr/{node_modules_next_dist_esm_build_templates_app-page_0cmo95h.js → node_modules_next_dist_esm_build_templates_app-page_12or2kf.js} +3 -3
- package/assets/standalone/.next/server/middleware-build-manifest.js +8 -8
- package/assets/standalone/.next/server/pages/404.html +2 -2
- package/assets/standalone/.next/server/pages/500.html +1 -1
- package/assets/standalone/.next/server/server-reference-manifest.js +1 -1
- package/assets/standalone/.next/server/server-reference-manifest.json +82 -52
- package/assets/standalone/.next/static/chunks/0.llxyobdk9ao.js +1 -0
- package/assets/standalone/.next/static/chunks/{0lkh25hviflid.js → 013e6ucdn~oej.js} +1 -1
- package/assets/standalone/.next/static/chunks/01i5gpaes1u49.js +6 -0
- package/assets/standalone/.next/static/chunks/01q52wg_amm60.js +2 -0
- package/assets/standalone/.next/static/chunks/{053grpfc7gghs.js → 01z1mkd0jlg01.js} +1 -1
- package/assets/standalone/.next/static/chunks/041yg1qijsts_.js +1 -0
- package/assets/standalone/.next/static/chunks/0_s0luks5tay-.js +1 -0
- package/assets/standalone/.next/static/chunks/0c0j9cso1kkr_.css +1 -0
- package/assets/standalone/.next/static/chunks/0dji_r0j6sq~f.js +1 -0
- package/assets/standalone/.next/static/chunks/0eozapv72nxu9.js +1 -0
- package/assets/standalone/.next/static/chunks/0r-uj~~hfjn~d.js +4 -0
- package/assets/standalone/.next/static/chunks/0r33ook0mzjdp.js +3 -0
- package/assets/standalone/.next/static/chunks/0tdv9t00~jli0.js +1 -0
- package/assets/standalone/.next/static/chunks/0tyw4u3~2isbh.js +1 -0
- package/assets/standalone/.next/static/chunks/{0h4bq73pogmtb.js → 0u95dh6lcl7tm.js} +31 -1
- package/assets/standalone/.next/static/chunks/0yby34zxp~u9y.js +1 -0
- package/assets/standalone/.next/static/chunks/10qr1cqizt~sp.js +1 -0
- package/assets/standalone/.next/static/chunks/{04aem330ymbdp.js → 150i0n26fnvso.js} +1 -1
- package/assets/standalone/.next/static/chunks/15fklyav5py5m.js +1 -0
- package/assets/standalone/.next/static/chunks/16g-s3n9.r1ua.js +1 -0
- package/assets/standalone/.next/static/chunks/17.b3suj8zjjj.js +1 -0
- package/assets/standalone/.next/static/chunks/{turbopack-05k-ytyhplqy7.js → turbopack-0.w3uhj.ln7pt.js} +1 -1
- package/assets/standalone/README.md +119 -5
- package/assets/standalone/design-docs/custom-hooks.md +722 -0
- package/assets/standalone/design-docs/e2e-hook-testing.md +420 -0
- package/assets/standalone/package.json +4 -2
- package/assets/standalone/vitest.config.e2e.mts +21 -0
- package/bin/claudeye +0 -0
- package/package.json +1 -1
- package/assets/standalone/.next/server/app/hooks/page/app-paths-manifest.json +0 -3
- package/assets/standalone/.next/server/app/hooks/page_client-reference-manifest.js +0 -3
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0_03u6.._.js +0 -4
- package/assets/standalone/.next/server/chunks/[root-of-the-server]__0ynza7q._.js +0 -3
- package/assets/standalone/.next/server/chunks/_0fx1kj9._.js +0 -7
- package/assets/standalone/.next/server/chunks/_12qi01p._.js +0 -7
- package/assets/standalone/.next/server/chunks/lib_0it0qxy._.js +0 -7
- package/assets/standalone/.next/server/chunks/lib_0k3u5ri._.js +0 -7
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-j~_e.._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__00fve8g._.js +0 -36
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__028-6zz._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__02x4-91._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__06tqxbp._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__08a4wva._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0a-4fjm._.js +0 -33
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cnf9rp._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dsucx_._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0e9ohz2._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0fltiz1._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ksoh6e._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ni-as.._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsew7c._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0x5abxa._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0yi-883._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zn.1q2._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__10_wjge._.js +0 -4
- package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__11xi38p._.js +0 -7
- package/assets/standalone/.next/server/chunks/ssr/_03l0_j6._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/_050qnuh._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/_0_~1-jh._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/_0ndt7tj._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/_0uig1kl._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/_0vc9nu-._.js +0 -32
- package/assets/standalone/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/app_hooks_hooks-client_tsx_0n~.yoz._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/node_modules_0gyjybr._.js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_06j6hww._.js +0 -33
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js +0 -3
- package/assets/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0~flnue.js +0 -4
- package/assets/standalone/.next/static/chunks/0-06jeyuuf3mf.js +0 -1
- package/assets/standalone/.next/static/chunks/0.z9o1xk80npg.js +0 -2
- package/assets/standalone/.next/static/chunks/01xlw8hd842-c.js +0 -1
- package/assets/standalone/.next/static/chunks/09f624.buk6jr.js +0 -1
- package/assets/standalone/.next/static/chunks/0g5cvlv5.8drd.js +0 -3
- package/assets/standalone/.next/static/chunks/0g~w.4hiyi_1j.js +0 -1
- package/assets/standalone/.next/static/chunks/0il8_19l.4u-p.js +0 -1
- package/assets/standalone/.next/static/chunks/0j1-mgai_b50s.css +0 -1
- package/assets/standalone/.next/static/chunks/0ljjv.c03-d.y.js +0 -1
- package/assets/standalone/.next/static/chunks/0n6vo_gsuay4v.js +0 -4
- package/assets/standalone/.next/static/chunks/0nntcr2py4m14.js +0 -1
- package/assets/standalone/.next/static/chunks/0sp_gwqc7ka~z.js +0 -1
- package/assets/standalone/.next/static/chunks/0z0dljl8fz7.-.js +0 -1
- package/assets/standalone/.next/static/chunks/0z9fpf50h7mcq.js +0 -1
- package/assets/standalone/.next/static/chunks/115dplafwys-z.js +0 -31
- package/assets/standalone/.next/static/chunks/119bhqt_bddam.js +0 -1
- /package/assets/standalone/.next/server/app/{hooks → policies}/page/next-font-manifest.json +0 -0
- /package/assets/standalone/.next/server/app/{hooks → policies}/page/react-loadable-manifest.json +0 -0
- /package/assets/standalone/.next/static/{l1G516WtxNj1aLrIr5STH → T2uFRf42cIG4zxcRtc0qK}/_buildManifest.js +0 -0
- /package/assets/standalone/.next/static/{l1G516WtxNj1aLrIr5STH → T2uFRf42cIG4zxcRtc0qK}/_clientMiddlewareManifest.js +0 -0
- /package/assets/standalone/.next/static/{l1G516WtxNj1aLrIr5STH → T2uFRf42cIG4zxcRtc0qK}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[8265,e=>{"use strict";var t=e.i(54799),r=e.i(28753),i=e.i(77879),n=e.i(84234);let a="__CLAUDEYE_ALERT_REGISTRY__";function o(){let e=globalThis;return e[a]||(e[a]=[]),e[a]}function s(){return o().length>0}async function l(e,t=!1){if(!s())return;let r=o().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(14214);var c=e.i(88107),u=e.i(39864);e.i(54214);var d=e.i(24868),
|
|
1
|
+
module.exports=[8265,e=>{"use strict";var t=e.i(54799),r=e.i(28753),i=e.i(77879),n=e.i(84234);let a="__CLAUDEYE_ALERT_REGISTRY__";function o(){let e=globalThis;return e[a]||(e[a]=[]),e[a]}function s(){return o().length>0}async function l(e,t=!1){if(!s())return;let r=o().filter(e=>!t||!e.suppressOnRecompute);await Promise.allSettled(r.map(async t=>{try{await t.fn(e)}catch(e){console.error(`[alert] Error in alert "${t.name}":`,e instanceof Error?e.message:e)}}))}e.i(14214);var c=e.i(88107),u=e.i(39864);e.i(54214);var d=e.i(24868),f=e.i(14747),p=e.i(81580),m=e.i(83534),h=e.i(40911),g=e.i(41444);async function y(e,t){try{return(await (0,d.stat)(e)).mtime}catch(e){return(0,h.logWarn)(`Failed to stat ${t}:`,e),new Date(0)}}async function w(e){try{if(!(await (0,d.stat)(e)).isDirectory())return null;return await (0,d.readdir)(e,{withFileTypes:!0})}catch{return null}}async function E(){try{let e=(0,p.getClaudeProjectsPath)(),t=await w(e);if(!t)return[];let r=await Promise.all(t.filter(e=>e.isDirectory()).map(async t=>{let r=(0,f.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,isDirectory:!0,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i)}}));return r.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),r}catch(e){return(0,h.logError)("Error reading project folders:",e),[]}}function v(e){let t=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return t?t[0]:void 0}async function I(e){try{let t=await w(e);if(!t)return[];let r=t.filter(e=>e.isFile()&&e.name.endsWith(".jsonl")&&v(e.name)),i=await Promise.all(r.map(async t=>{let r=(0,f.join)(e,t.name),i=await y(r,t.name);return{name:t.name,path:r,lastModified:i,lastModifiedFormatted:(0,g.formatDate)(i),sessionId:v(t.name)}}));return i.sort((e,t)=>t.lastModified.getTime()-e.lastModified.getTime()),i}catch(e){return(0,h.logError)("Error reading session files:",e),[]}}(0,m.runtimeCache)(E,30),(0,m.runtimeCache)(e=>I(e),30),e.i(2157);var j=e.i(50227),C=e.i(60526);e.i(66680),e.i(74533);let k=j.default.join(C.default.homedir(),".claudeye");j.default.join(k,"instance-id");var _=e.i(46786);let A=(0,f.join)((0,_.homedir)(),".claudeye","cache","completed-history"),D="current.jsonl",P=[],W=null,M=0,$=!1,H=!1,T=Promise.resolve(),S=0;async function F(){H||(await (0,d.mkdir)(A,{recursive:!0}),H=!0)}function N(e){if(e){W&&(clearTimeout(W),W=null),L();return}W||(W=setTimeout(()=>{W=null,L()},2e3))}function L(){T=T.then(()=>O()).catch(e=>{(0,h.logWarn)("completed-store flush error:",e instanceof Error?e.message:e)})}async function O(){if(0===P.length)return;await F(),$||(M=await U((0,f.join)(A,D)),$=!0);let e=P.splice(0),t=(0,f.join)(A,D),r=0;try{for(;r<e.length;){M>=25&&await x();let i=25-M;if(i<=0)throw Error("completed-store: zero remaining after rotate — aborting to prevent infinite loop");let n=e.slice(r,r+i),a=n.map(e=>JSON.stringify(e)).join("\n")+"\n";await R(t,a),M+=n.length,r+=n.length,M>=25&&await x()}}catch(i){let t=e.slice(r);throw t.length>0&&P.unshift(...t),i}}async function x(){let e=(0,f.join)(A,D),t=`page-${Date.now()}-${S++}.jsonl`,r=(0,f.join)(A,t);await (0,d.rename)(e,r),M=0}async function R(e,t){let r=await (0,d.readFile)(e,"utf-8").catch(()=>"");await (0,d.writeFile)(e,r+t,"utf-8")}async function U(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return 0;return t.trim().split("\n").length}catch{return 0}}async function G(e){if(await T,await F(),e<1)return[];if(1===e){let e=(0,f.join)(A,D);return(await Y(e)).reverse()}let t=await Q(),r=e-2;return r>=t.length?[]:(await Y((0,f.join)(A,t[r]))).reverse()}async function b(){return await F(),1+(await Q()).length}async function Y(e){try{let t=await (0,d.readFile)(e,"utf-8");if(!t.trim())return[];let r=[];for(let e of t.trim().split("\n"))try{r.push(JSON.parse(e))}catch{}return r}catch{return[]}}async function Q(){try{return(await (0,d.readdir)(A)).filter(e=>e.startsWith("page-")&&e.endsWith(".jsonl")).sort((e,t)=>{let r=e.slice(5,-6).split("-"),i=t.slice(5,-6).split("-"),n=parseInt(r[0],10),a=parseInt(i[0],10);if(n!==a)return a-n;let o=r.length>1?parseInt(r[1],10):0;return(i.length>1?parseInt(i[1],10):0)-o})}catch{return[]}}let J={HIGH:0,LOW:10};J.HIGH,J.LOW;let q="__CLAUDEYE_QUEUE__";function z(){let e=globalThis;return e[q]||(e[q]={pending:[],pendingExecutors:new Map,processing:new Map,promises:new Map,completed:[],activeWorkers:0,scannedAt:0,intervalId:null,errors:[]}),e[q]}let B=()=>parseInt(process.env.CLAUDEYE_QUEUE_CONCURRENCY??"2",10)||2;async function K(e,a){try{if(!s())return;await (0,r.ensureEvalsLoaded)();let d=await (0,c.hashSessionFile)(e,a);if(!d)return;let f=(0,i.getSessionScopedEvals)(),p=(0,n.getSessionScopedEnrichers)(),[m,h]=await Promise.all([Promise.all(f.map(t=>(0,u.getPerItemCacheWithHook)("evals",e,a,t.name,(0,c.hashItemCode)(t.fn),d))),Promise.all(p.map(t=>(0,u.getPerItemCacheWithHook)("enrichments",e,a,t.name,(0,c.hashItemCode)(t.fn),d)))]);if(m.some(e=>!e)||h.some(e=>!e))return;let g=o().map(e=>e.name).sort().join(","),y=(0,t.createHash)("sha256").update(g).digest("hex"),w=await (0,u.getPerItemCacheWithHook)("alerts",e,a,"__fired__",y,d);if(w&&w.value.firedAt>0)return;let E=m.map(e=>e.value),v=h.map(e=>e.value),I=E.length>0?{results:E,totalDurationMs:E.reduce((e,t)=>e+t.durationMs,0),passCount:E.filter(e=>!e.error&&!e.skipped&&e.pass).length,failCount:E.filter(e=>!e.error&&!e.skipped&&!e.pass).length,errorCount:E.filter(e=>!!e.error).length,skippedCount:E.filter(e=>!!e.skipped).length}:void 0,j=v.length>0?{results:v,totalDurationMs:v.reduce((e,t)=>e+t.durationMs,0),errorCount:v.filter(e=>!!e.error).length,skippedCount:v.filter(e=>!!e.skipped).length}:void 0,C=X.get(`${e}/${a}`)??!1;X.delete(`${e}/${a}`),await l({projectName:e,sessionId:a,evalSummary:I,enrichSummary:j},C);try{await (0,u.setPerItemCache)("alerts",e,a,"__fired__",y,{firedAt:Date.now()},d)}catch{}}catch(e){(0,h.logError)("tryFireSessionAlerts error:",e instanceof Error?e.message:e)}}let V=new Map,X=new Map;function Z(e,t){let r=0,i=e.length;for(;r<i;){let n=r+i>>>1;0>=(e[n].priority-t.priority||e[n].addedAt-t.addedAt)?r=n+1:i=n}e.splice(r,0,t)}async function ee(e){return W&&(clearTimeout(W),W=null),0!==P.length&&(T=T.then(()=>O()).catch(e=>{(0,h.logWarn)("completed-store flushNow error:",e instanceof Error?e.message:e)})),{entries:await G(e),totalPages:await b(),page:e}}e.s(["Priority",0,J,"getCompletedHistory",0,ee,"getQueueStatus",0,function(){let e=z();return{pending:e.pending.map(e=>({key:e.key,type:e.type,projectName:e.projectName,sessionId:e.sessionId,itemName:e.itemName,priority:e.priority,priorityLabel:e.priority<=J.HIGH?"HIGH":"LOW",addedAt:e.addedAt})),processing:Array.from(e.processing.values()),completed:e.completed,scannedAt:e.scannedAt,backgroundRunning:null!==e.intervalId,recentErrors:e.errors.slice(-10)}},"queuePerItem",0,function e(t,r,i,n,a,o){let s=z(),l=`${t}:${r}/${i}/${n}`,c=o?.priority??J.HIGH,u=o?.forceRefresh??!1,d=B(),f=s.promises.get(l);if(f&&!u){let e=s.pending.find(e=>e.key===l);if(e&&c<e.priority){let t=s.pending.indexOf(e);s.pending.splice(t,1),e.priority=c,Z(s.pending,e)}return f}if(f&&u){let o=f.catch(()=>{}).then(()=>e(t,r,i,n,a,{priority:c}));return s.promises.set(l,o),o}let p=()=>{let e,o,u;s.activeWorkers++,s.processing.set(l,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,startedAt:Date.now()});let d=Date.now(),f=new Promise((t,r)=>{e=t,o=r});f.catch(()=>{}),s.promises.set(l,f);let p=(e,a)=>{s.activeWorkers--,s.processing.delete(l),s.promises.delete(l),function(e){if(!e.completed){e.completed=[];return}e.completed.length>200&&(e.completed=e.completed.slice(0,200))}(s);let o={key:l,type:t,projectName:r,sessionId:i,itemName:n,completedAt:Date.now(),durationMs:Date.now()-d,success:e,error:a};if(s.completed.unshift(o),P.push(o),P.length>=20?N(!0):N(!1),!e&&a&&(s.errors.push({key:l,error:a,at:Date.now()}),s.errors.length>50&&(s.errors=s.errors.slice(-50))),e&&("eval"===t||"enrichment"===t)){let e,t,n,a=-1===(e=i.indexOf("/"))?i:i.slice(0,e);!function(e,t){let r=z(),i=e=>e===t||e.startsWith(`${t}/`);if(r.pending.some(t=>("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId)))return!0;for(let[,t]of r.processing)if(("eval"===t.type||"enrichment"===t.type)&&t.projectName===e&&i(t.sessionId))return!0;return!1}(r,a)&&(t=`${r}/${a}`,(n=V.get(t))&&clearTimeout(n),V.set(t,setTimeout(()=>{V.delete(t),K(r,a).catch(e=>{(0,h.logWarn)(`Alert firing failed for ${r}/${a}:`,e instanceof Error?e.message:e)})},500)))}let c=z(),u=B();for(;c.activeWorkers<u&&c.pending.length>0;){let e=c.pending.shift(),t=c.pendingExecutors.get(e.key);c.pendingExecutors.delete(e.key),t&&t()}};try{u=a().then(e=>(p(!0),e),e=>{throw p(!1,e instanceof Error?e.message:String(e)),e})}catch(e){p(!1,e instanceof Error?e.message:String(e)),u=Promise.reject(e)}return s.promises.set(l,u),u.then(e,o),u};if(s.activeWorkers<d)return p();let m=new Promise((e,o)=>{Z(s.pending,{key:l,type:t,projectName:r,sessionId:i,itemName:n,priority:c,addedAt:Date.now(),task:a}),s.pendingExecutors.set(l,()=>{p().then(e,o)})});return s.promises.set(l,m),m}],8265)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=lib_eval-queue_ts_0h8e7f.._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[73814,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),u=e.i(16795),l=e.i(87718),c=e.i(95169),d=e.i(47587),p=e.i(66012),h=e.i(70101),m=e.i(26937),f=e.i(10372),g=e.i(93695);e.i(20232);var v=e.i(220),R=e.i(89171),w=e.i(40911),y=e.i(8265),E=e.i(81929),S=e.i(91560),C=e.i(25396),P=e.i(28488),b=e.i(45015),x=e.i(28753);let k=(0,e.i(44967).createScopedRegistry)("__CLAUDEYE_ACTION_REGISTRY__"),I=k.getAll,A=k.getSessionScoped,N=k.getSubagentScoped;k.hasSubagent,k.has,k.clear;var T=e.i(77879),q=e.i(84234),$=e.i(14543);async function H(e,t,r,a,n,s,i,o,u){let l=i??I(),c=u??{},d={entries:e,stats:t,projectName:r,sessionId:a,source:"session",...o,evalResults:n,enrichmentResults:s,inputs:c},p=l.map(e=>({...e,fn:t=>e.fn(d)}));return(0,$.runAll)(p,d,{skipResult:e=>({name:e.name,status:"success",durationMs:0,skipped:!0}),successResult:(e,t,r)=>{let a={name:e.name,output:t.output,status:t.status??"success",message:t.message,durationMs:r};return Object.keys(c).length>0&&(a.inputs=c),a},errorResult:(e,t,r)=>{let a={name:e.name,status:"error",durationMs:r,error:t};return Object.keys(c).length>0&&(a.inputs=c),a},unexpectedResult:()=>({name:"?",status:"error",durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,t)=>{let r=0,a=0;for(let t of e)t.skipped?a++:"error"===t.status&&r++;return{results:e,totalDurationMs:t,errorCount:r,skippedCount:a}}})}var _=e.i(54214),O=e.i(26287);e.i(14214);var j=e.i(88107),M=e.i(39864),U=e.i(95975);async function D(e,t,r){let a={};if(!r)return a;let n=(0,T.getSessionScopedEvals)();return await Promise.all(n.map(async n=>{try{let s=(0,j.hashItemCode)(n.fn),i=await (0,M.getPerItemCacheWithHook)("evals",e,t,n.name,s,r);i&&(a[n.name]=i.value)}catch{}})),a}async function L(e,t,r){let a={};if(!r)return a;let n=(0,q.getSessionScopedEnrichers)();return await Promise.all(n.map(async n=>{try{let s=(0,j.hashItemCode)(n.fn),i=await (0,M.getPerItemCacheWithHook)("enrichments",e,t,n.name,s,r);i&&(a[n.name]=i.value)}catch{}})),a}async function F(e,t,r,a=!1,n){try{await (0,x.ensureEvalsLoaded)();let s=A().find(e=>e.name===r);if(!s)return{ok:!1,error:`Action "${r}" not found`};let i=await (0,j.hashSessionFile)(e,t),o=s.cache?(0,j.hashItemCode)(s.fn):void 0;if(!a&&s.cache&&i&&o){let r=await (0,M.getPerItemCacheWithHook)("actions",e,t,s.name,o,i);if(r)return{ok:!0,result:r.value}}let{entries:u,rawLines:l}=await (0,_.getCachedSessionLog)(e,t),c=(0,O.calculateLogStats)(u),[d,p]=await Promise.all([D(e,t,i),L(e,t,i)]),h=(await H(l,c,e,t,d,p,[s],{source:"session"},n)).results[0];if(!h)return{ok:!1,error:"No result returned from action"};if(s.cache&&i&&o)try{await (0,M.setPerItemCache)("actions",e,t,s.name,o,h,i)}catch{}return{ok:!0,result:h}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}async function W(e,t,r,a,n=!1,s,i,o){try{await (0,x.ensureEvalsLoaded)();let u=N(s).find(e=>e.name===a);if(!u)return{ok:!1,error:`Action "${a}" not found for subagent type "${s??"any"}"`};let l=`${t}/agent-${r}`,c=await (0,j.hashSubagentFile)(e,t,r);if(!n&&u.cache&&c){let t=(0,j.hashItemCode)(u.fn),r=await (0,M.getPerItemCacheWithHook)("actions",e,l,u.name,t,c);if(r)return{ok:!0,result:r.value}}let{entries:d,rawLines:p}=await (0,_.getCachedSessionLog)(e,t),h=(0,O.calculateLogStats)(d),m=(0,_.extractSubagentMeta)(d,r),f=s??m?.type,g=i??m?.description,v={},R={};if(c){let t=(0,T.getSubagentScopedEvals)(f);await Promise.all(t.map(async t=>{try{let r=(0,j.hashItemCode)(t.fn),a=await (0,M.getPerItemCacheWithHook)("evals",e,l,t.name,r,c);a&&(v[t.name]=a.value)}catch{}}));let r=(0,q.getSubagentScopedEnrichers)(f);await Promise.all(r.map(async t=>{try{let r=(0,j.hashItemCode)(t.fn),a=await (0,M.getPerItemCacheWithHook)("enrichments",e,l,t.name,r,c);a&&(R[t.name]=a.value)}catch{}}))}let w=(await H(p,h,e,t,v,R,[u],{source:`agent-${r}`,subagentType:f,subagentDescription:g,parentSessionId:t},o)).results[0];if(!w)return{ok:!1,error:"No result returned from action"};if(u.cache&&c){let t=(0,j.hashItemCode)(u.fn);await (0,M.setPerItemCache)("actions",e,l,u.name,t,w,c)}return{ok:!0,result:w}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}async function K(e){try{let{type:t,projectName:r,sessionId:a,itemName:n,forceRefresh:s,agentId:i,subagentType:o,subagentDescription:u,inputs:l}=await e.json();if(!t||!r||!a||!n)return R.NextResponse.json({ok:!1,error:"Missing required fields"},{status:400});let c=await (0,w.getRequestUsername)();(0,w.logActivity)(c,"queue-item",`type=${t} project=${r} session=${a} item=${n}`);let d=i?`${a}/agent-${i}`:a;if("eval"===t){let e=i?()=>(0,C.processSubagentEval)(r,a,i,n,s??!1,o,u):()=>(0,E.processSessionEval)(r,a,n,s??!1),t=(0,y.queuePerItem)("eval",r,d,n,e,{priority:y.Priority.HIGH,forceRefresh:s}),l=new Promise(e=>setTimeout(()=>e("timeout"),1e4)),c=await Promise.race([t,l]);if("timeout"===c)return R.NextResponse.json({ok:!0,queued:!0,key:`eval:${r}/${d}/${n}`},{status:202});return R.NextResponse.json(c)}if("enrichment"===t){let e=i?()=>(0,P.processSubagentEnrichment)(r,a,i,n,s??!1,o,u):()=>(0,S.processSessionEnrichment)(r,a,n,s??!1),t=(0,y.queuePerItem)("enrichment",r,d,n,e,{priority:y.Priority.HIGH,forceRefresh:s}),l=new Promise(e=>setTimeout(()=>e("timeout"),1e4)),c=await Promise.race([t,l]);if("timeout"===c)return R.NextResponse.json({ok:!0,queued:!0,key:`enrichment:${r}/${d}/${n}`},{status:202});return R.NextResponse.json(c)}if("action"===t){let e=i?()=>W(r,a,i,n,s??!1,o,u,l):()=>F(r,a,n,s??!1,l),t=(0,y.queuePerItem)("action",r,d,n,e,{priority:y.Priority.HIGH,forceRefresh:s}),c=new Promise(e=>setTimeout(()=>e("timeout"),1e4)),p=await Promise.race([t,c]);if("timeout"===p)return R.NextResponse.json({ok:!0,queued:!0,key:`action:${r}/${d}/${n}`},{status:202});return R.NextResponse.json(p)}return R.NextResponse.json({ok:!1,error:`Invalid type: ${t}`},{status:400})}catch(e){return R.NextResponse.json({ok:!1,error:e instanceof Error?e.message:String(e)},{status:500})}}(0,U.ensureServerEntryExports)([F]),(0,b.registerServerReference)(F,"7c177ecffa49fed13eccaefd79bad68e9155f5e9c5",null),(0,U.ensureServerEntryExports)([W]),(0,b.registerServerReference)(W,"7fbbbfd28558cd8bc4b2fc081bcd9f82245bb29c23",null),e.s(["POST",0,K],66051);var G=e.i(66051);let B=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/queue-item/route",pathname:"/api/queue-item",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/queue-item/route.ts",nextConfigOutput:"standalone",userland:G}),{workAsyncStorage:V,workUnitAsyncStorage:X,serverHooks:Y}=B;async function z(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),B.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/queue-item/route";R=R.replace(/\/index$/,"")||"/";let w=await B.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:E,nextConfig:S,parsedUrl:C,isDraftMode:P,prerenderManifest:b,routerServerContext:x,isOnDemandRevalidate:k,revalidateOnlyGenerated:I,resolvedPathname:A,clientReferenceManifest:N,serverActionsManifest:T}=w,q=(0,o.normalizeAppPath)(R),$=!!(b.dynamicRoutes[q]||b.routes[A]),H=async()=>((null==x?void 0:x.render404)?await x.render404(e,t,C,!1):t.end("This page could not be found"),null);if($&&!P){let e=!!b.routes[A],t=b.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(S.adapterPath)return await H();throw new g.NoFallbackError}}let _=null;!$||B.isDev||P||(_="/index"===(_=A)?"/":_);let O=!0===B.isDev||!$,j=$&&!O;T&&N&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:N,serverActionsManifest:T});let M=e.method||"GET",U=(0,s.getTracer)(),D=U.getActiveScopeSpan(),L=!!(null==x?void 0:x.isWrappedByNextServer),F=!!(0,n.getRequestMeta)(e,"minimalMode"),W=(0,n.getRequestMeta)(e,"incrementalCache")||await B.getIncrementalCache(e,S,b,F);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let K={params:E,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:O,incrementalCache:W,cacheLifeProfiles:S.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>B.onRequestError(e,t,a,n,x)},sharedContext:{buildId:y}},G=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),X=l.NextRequestAdapter.fromNodeNextRequest(G,(0,l.signalFromNodeResponse)(t));try{let n,i=async e=>B.handle(X,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${M} ${R}`)}),o=async n=>{var s,o;let u=async({previousCacheEntry:r})=>{try{if(!F&&k&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let o=K.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let u=K.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(G,V,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,a=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await B.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:k})},!1,x),t}},l=await B.handleResponse({req:e,nextConfig:S,cacheKey:_,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:I,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:F});if(!$)return null;if((null==l||null==(s=l.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(o=l.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",k?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),P&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,h.fromNodeOutgoingHttpHeaders)(l.value.headers);return F&&$||c.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,m.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(G,V,new Response(l.value.body,{headers:c,status:l.value.status||200})),null};L&&D?await o(D):(n=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},o),void 0,!L))}catch(t){if(t instanceof g.NoFallbackError||await B.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:k})},!1,x),$)throw t;return await (0,p.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,z,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:V,workUnitAsyncStorage:X})},"routeModule",0,B,"serverHooks",0,Y,"workAsyncStorage",0,V,"workUnitAsyncStorage",0,X],73814)}];
|
|
1
|
+
module.exports=[73814,e=>{"use strict";var t=e.i(47909),a=e.i(74017),r=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),u=e.i(16795),l=e.i(87718),c=e.i(95169),d=e.i(47587),p=e.i(66012),h=e.i(70101),m=e.i(26937),f=e.i(10372),g=e.i(93695);e.i(20232);var v=e.i(220),R=e.i(89171),y=e.i(40911),E=e.i(8265),w=e.i(81929),S=e.i(91560),C=e.i(25396),b=e.i(28488),x=e.i(45015),A=e.i(28753);let P=(0,e.i(44967).createScopedRegistry)("__CLAUDEYE_ACTION_REGISTRY__"),N=P.getAll,I=P.getSessionScoped,k=P.getSubagentScoped;P.hasSubagent,P.has,P.clear;var T=e.i(77879),_=e.i(84234),q=e.i(14543);async function $(e,t,a,r,n,s,i,o,u){let l=i??N(),c=u??{},d={entries:e,stats:t,projectName:a,sessionId:r,source:"session",...o,evalResults:n,enrichmentResults:s,inputs:c},p=l.map(e=>({...e,fn:t=>e.fn(d)}));return(0,q.runAll)(p,d,{skipResult:e=>({name:e.name,status:"success",durationMs:0,skipped:!0}),successResult:(e,t,a)=>{let r={name:e.name,output:t.output,status:t.status??"success",message:t.message,durationMs:a};return Object.keys(c).length>0&&(r.inputs=c),r},errorResult:(e,t,a)=>{let r={name:e.name,status:"error",durationMs:a,error:t};return Object.keys(c).length>0&&(r.inputs=c),r},unexpectedResult:()=>({name:"?",status:"error",durationMs:0,error:"Unexpected rejection"}),buildSummary:(e,t)=>{let a=0,r=0;for(let t of e)t.skipped?r++:"error"===t.status&&a++;return{results:e,totalDurationMs:t,errorCount:a,skippedCount:r}}})}e.i(14214);var O=e.i(88107),H=e.i(39864),M=e.i(88752),U=e.i(95975);async function j(e,t,a){let r={};if(!a)return r;let n=(0,T.getSessionScopedEvals)();return await Promise.all(n.map(async n=>{try{let s=(0,O.hashItemCode)(n.fn),i=await (0,H.getPerItemCacheWithHook)("evals",e,t,n.name,s,a);i&&(r[n.name]=i.value)}catch{}})),r}async function D(e,t,a){let r={};if(!a)return r;let n=(0,_.getSessionScopedEnrichers)();return await Promise.all(n.map(async n=>{try{let s=(0,O.hashItemCode)(n.fn),i=await (0,H.getPerItemCacheWithHook)("enrichments",e,t,n.name,s,a);i&&(r[n.name]=i.value)}catch{}})),r}async function F(e,t,a,r=!1,n){try{await (0,A.ensureEvalsLoaded)();let s=I().find(e=>e.name===a);if(!s)return{ok:!1,error:`Action "${a}" not found`};let i=await (0,O.hashSessionFile)(e,t),o=s.cache?(0,O.hashItemCode)(s.fn):void 0;return(0,M.processItem)({projectName:e,sessionId:t,sessionKey:t,cacheNamespace:"actions",itemName:s.name,itemCodeHash:o,contentHash:i,forceRefresh:r,skipCacheWrite:!s.cache,run:async(a,r)=>{let[o,u]=await Promise.all([j(e,t,i),D(e,t,i)]);return $(a,r,e,t,o,u,[s],{source:"session"},n)}})}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}(0,U.ensureServerEntryExports)([F]),(0,x.registerServerReference)(F,"7c0d50a2fc17db5b6aef1407197eb1508a3c215637",null);var K=e.i(54214);async function W(e,t,a,r,n=!1,s,i,o){try{await (0,A.ensureEvalsLoaded)();let u=`${t}/agent-${a}`,l=await (0,O.hashSubagentFile)(e,t,a),c=k(s).find(e=>e.name===r);if(!c)return{ok:!1,error:`Action "${r}" not found for subagent type "${s??"any"}"`};let d=c.cache?(0,O.hashItemCode)(c.fn):void 0;return(0,M.processItem)({projectName:e,sessionId:t,sessionKey:u,cacheNamespace:"actions",itemName:c.name,itemCodeHash:d,contentHash:l,forceRefresh:n,skipCacheWrite:!c.cache,run:async(r,n,d)=>{let p=(0,K.extractSubagentMeta)(d,a),h=s??p?.type,m=i??p?.description,f={},g={};if(l){let t=(0,T.getSubagentScopedEvals)(h);await Promise.all(t.map(async t=>{try{let a=(0,O.hashItemCode)(t.fn),r=await (0,H.getPerItemCacheWithHook)("evals",e,u,t.name,a,l);r&&(f[t.name]=r.value)}catch{}}));let a=(0,_.getSubagentScopedEnrichers)(h);await Promise.all(a.map(async t=>{try{let a=(0,O.hashItemCode)(t.fn),r=await (0,H.getPerItemCacheWithHook)("enrichments",e,u,t.name,a,l);r&&(g[t.name]=r.value)}catch{}}))}return $(r,n,e,t,f,g,[c],{source:`agent-${a}`,subagentType:h,subagentDescription:m,parentSessionId:t},o)}})}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}async function L(e){try{let{type:a,projectName:r,sessionId:n,itemName:s,forceRefresh:i,agentId:o,subagentType:u,subagentDescription:l,inputs:c}=await e.json();if(!a||!r||!n||!s)return R.NextResponse.json({ok:!1,error:"Missing required fields"},{status:400});let d=await (0,y.getRequestUsername)();(0,y.logActivity)(d,"queue-item",`type=${a} project=${r} session=${n} item=${s}`);let p=o?`${n}/agent-${o}`:n;async function t(e,t){let a,n=(0,E.queuePerItem)(e,r,p,s,t,{priority:E.Priority.HIGH,forceRefresh:i}),o=new Promise(e=>{a=setTimeout(()=>e("timeout"),1e4)}),u=await Promise.race([n,o]);return(clearTimeout(a),"timeout"===u)?R.NextResponse.json({ok:!0,queued:!0,key:`${e}:${r}/${p}/${s}`},{status:202}):R.NextResponse.json(u)}if("eval"===a){let e=o?()=>(0,C.processSubagentEval)(r,n,o,s,i??!1,u,l):()=>(0,w.processSessionEval)(r,n,s,i??!1);return t("eval",e)}if("enrichment"===a){let e=o?()=>(0,b.processSubagentEnrichment)(r,n,o,s,i??!1,u,l):()=>(0,S.processSessionEnrichment)(r,n,s,i??!1);return t("enrichment",e)}if("action"===a){let e=o?()=>W(r,n,o,s,i??!1,u,l,c):()=>F(r,n,s,i??!1,c);return t("action",e)}return R.NextResponse.json({ok:!1,error:`Invalid type: ${a}`},{status:400})}catch(e){return R.NextResponse.json({ok:!1,error:e instanceof Error?e.message:String(e)},{status:500})}}(0,U.ensureServerEntryExports)([W]),(0,x.registerServerReference)(W,"7fd79a164546b4b13534db7b76f0622e2912b80928",null),e.s(["POST",0,L],66051);var B=e.i(66051);let G=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/queue-item/route",pathname:"/api/queue-item",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/queue-item/route.ts",nextConfigOutput:"standalone",userland:B}),{workAsyncStorage:V,workUnitAsyncStorage:X,serverHooks:Y}=G;async function z(e,t,r){r.requestMeta&&(0,n.setRequestMeta)(e,r.requestMeta),G.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/queue-item/route";R=R.replace(/\/index$/,"")||"/";let y=await G.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:S,parsedUrl:C,isDraftMode:b,prerenderManifest:x,routerServerContext:A,isOnDemandRevalidate:P,revalidateOnlyGenerated:N,resolvedPathname:I,clientReferenceManifest:k,serverActionsManifest:T}=y,_=(0,o.normalizeAppPath)(R),q=!!(x.dynamicRoutes[_]||x.routes[I]),$=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,C,!1):t.end("This page could not be found"),null);if(q&&!b){let e=!!x.routes[I],t=x.dynamicRoutes[_];if(t&&!1===t.fallback&&!e){if(S.adapterPath)return await $();throw new g.NoFallbackError}}let O=null;!q||G.isDev||b||(O="/index"===(O=I)?"/":O);let H=!0===G.isDev||!q,M=q&&!H;T&&k&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:k,serverActionsManifest:T});let U=e.method||"GET",j=(0,s.getTracer)(),D=j.getActiveScopeSpan(),F=!!(null==A?void 0:A.isWrappedByNextServer),K=!!(0,n.getRequestMeta)(e,"minimalMode"),W=(0,n.getRequestMeta)(e,"incrementalCache")||await G.getIncrementalCache(e,S,x,K);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let L={params:w,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:H,incrementalCache:W,cacheLifeProfiles:S.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>G.onRequestError(e,t,r,n,A)},sharedContext:{buildId:E}},B=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),X=l.NextRequestAdapter.fromNodeNextRequest(B,(0,l.signalFromNodeResponse)(t));try{let n,i=async e=>G.handle(X,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=j.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route");if(r){let t=`${U} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",r),n.updateName(t))}else e.updateName(`${U} ${R}`)}),o=async n=>{var s,o;let u=async({previousCacheEntry:a})=>{try{if(!K&&P&&N&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=L.renderOpts.fetchMetrics;let o=L.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let u=L.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(B,V,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,r=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await G.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:P})},!1,A),t}},l=await G.handleResponse({req:e,nextConfig:S,cacheKey:O,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:N,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:K});if(!q)return null;if((null==l||null==(s=l.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(o=l.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",P?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,h.fromNodeOutgoingHttpHeaders)(l.value.headers);return K&&q||c.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,m.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(B,V,new Response(l.value.body,{headers:c,status:l.value.status||200})),null};F&&D?await o(D):(n=j.getActiveScopeSpan(),await j.withPropagatedContext(e.headers,()=>j.trace(c.BaseServerSpan.handleRequest,{spanName:`${U} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},o),void 0,!F))}catch(t){if(t instanceof g.NoFallbackError||await G.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:P})},!1,A),q)throw t;return await (0,p.sendResponse)(B,V,new Response(null,{status:500})),null}}e.s(["handler",0,z,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:V,workUnitAsyncStorage:X})},"routeModule",0,G,"serverHooks",0,Y,"workAsyncStorage",0,V,"workUnitAsyncStorage",0,X],73814)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_0l15kkr.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[93133,(e,s,t)=>{s.exports={name:"claudeye",version:"1.0.
|
|
1
|
+
module.exports=[93133,(e,s,t)=>{s.exports={name:"claudeye",version:"1.0.9",description:"Watchtower for Claude Code & Agents SDK — replay sessions, run custom evals, debug agent traces locally",bin:{claudeye:"./bin/claudeye.mjs"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{import:"./dist/index.js",types:"./dist/index.d.ts"}},files:["bin/","dist/",".next/standalone/","README.md"],engines:{node:">=20.9.0",bun:">=1.3.0"},scripts:{dev:"bun scripts/dev.ts --port 8020",build:"bun --bun next build","build:evals":"tsc -p tsconfig.evals.json && bun scripts/minify-dist.mjs","build:binary":"bun build --compile src/binary-entry.ts --outfile claudeye-local",start:"bun scripts/start.ts",test:"vitest","test:run":"vitest run",lint:"eslint . --config eslint.config.mjs",prepublishOnly:"bun run build:evals && bun run build && bun scripts/prepare-package.mjs","set-versions":"bun scripts/set-versions.mjs","test:binary":"bash scripts/test-local.sh","test:binary:quick":"bash scripts/test-local.sh --skip-build","test:npx":"bash scripts/test-npx.sh","test:e2e":"vitest run --config vitest.config.e2e.mts","test:e2e:watch":"vitest --config vitest.config.e2e.mts"},keywords:["claude","claude-code","claude-agents-sdk","anthropic","ai-agent","llm-observability","agent-observability","log-viewer","session-replay","eval-framework","developer-tools","devtools","cli","dashboard","local-first","monitoring","debugging","tracing"],author:"ExosphereHost Inc. <claudeye@exosphere.host>",license:"SEE LICENSE IN LICENSE",homepage:"https://claudeye.exosphere.host",repository:{type:"git",url:"https://github.com/exospherehost/claudeye.git"},bugs:{url:"https://github.com/exospherehost/claudeye/issues"},publishConfig:{access:"restricted"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-virtual":"^3.13.18","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@testing-library/user-event":"^14.6.1","@types/node":"^25.2.0","@types/react":"^19.2.13","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1",autoprefixer:"^10.4.24","class-variance-authority":"^0.7.1",clsx:"^2.1.1",eslint:"^10.0.3","eslint-config-next":"^16.1.6","happy-dom":"^20.7.0","lucide-react":"^1.0.1",next:"^16.1.6",postcss:"^8.5.6",react:"^19.2.4","react-dom":"^19.2.4","tailwind-merge":"^3.4.0",tailwindcss:"^4.1.18","tw-animate-css":"^1.4.0",typescript:"^6.0.2",vite:"^8.0.0",vitest:"^4.0.18"},dependencies:{"posthog-node":"^5.28.0"}}}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=package_json_%5Bjson%5D_cjs_0z7w.hh._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},42602,(a,b,c)=>{"use strict";b.exports=a.r(18622)},87924,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored["react-ssr"].ReactJsxRuntime},80826,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored["react-ssr"].React},38783,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored["react-ssr"].ReactServerDOMTurbopackClient},9270,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.AppRouterContext},36313,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.HooksClientContext},18341,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.ServerInsertedHtml},35112,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored["react-ssr"].ReactDOM},66036,a=>{"use strict";a.s(["captureClientEvent",0,function(a,b){},"setClientTelemetryConfig",0,function(a){}])},88347,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e,f={ACTION_HMR_REFRESH:function(){return l},ACTION_NAVIGATE:function(){return i},ACTION_REFRESH:function(){return h},ACTION_RESTORE:function(){return j},ACTION_SERVER_ACTION:function(){return m},ACTION_SERVER_PATCH:function(){return k},PrefetchKind:function(){return n},ScrollBehavior:function(){return o}};for(var g in f)Object.defineProperty(c,g,{enumerable:!0,get:f[g]});let h="refresh",i="navigate",j="restore",k="server-patch",l="hmr-refresh",m="server-action";var n=((d={}).AUTO="auto",d.FULL="full",d),o=((e={})[e.Default=0]="Default",e[e.NoScroll=1]="NoScroll",e);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},46058,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},67009,(a,b,c)=>{"use strict";function d(a){return null!==a&&"object"==typeof a&&"then"in a&&"function"==typeof a.then}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isThenable",{enumerable:!0,get:function(){return d}})},90841,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={dispatchAppRouterAction:function(){return i},dispatchGestureState:function(){return j},refreshOnInstantNavigationUnlock:function(){return h},useActionQueue:function(){return k}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(46058)._(a.r(80826)),g=a.r(67009);a.r(88347);function h(){}function i(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function j(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function k(a){let[b,c]=f.default.useState(a.state),[d,e]=(0,f.useOptimistic)(b),h=(0,f.useMemo)(()=>d,[d]);return(0,g.isThenable)(h)?(0,f.use)(h):h}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},20611,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"callServer",{enumerable:!0,get:function(){return g}});let d=a.r(80826),e=a.r(88347),f=a.r(90841);async function g(a,b){return new Promise((c,g)=>{(0,d.startTransition)(()=>{(0,f.dispatchAppRouterAction)({type:e.ACTION_SERVER_ACTION,actionId:a,actionArgs:b,resolve:c,reject:g})})})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},1722,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findSourceMapURL",{enumerable:!0,get:function(){return d}});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},5050,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={callServer:function(){return f.callServer},createServerReference:function(){return h.createServerReference},findSourceMapURL:function(){return g.findSourceMapURL}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20611),g=a.r(1722),h=a.r(38783)},10042,a=>{"use strict";var b=a.i(5050);let c=(0,b.createServerReference)("0083a359745c64ab349d8a8718e7b884b057921f57",b.callServer,void 0,b.findSourceMapURL,"getTelemetryConfig");a.s(["getTelemetryConfig",0,c])},3171,a=>{"use strict";var b=a.i(87924),c=a.i(80826),d=a.i(10042),e=a.i(66036);a.s(["default",0,function({error:a,reset:f}){return(0,c.useEffect)(()=>{(0,d.getTelemetryConfig)().then(b=>{(0,e.setClientTelemetryConfig)(b),(0,e.captureClientEvent)("client_error",{error_message:a.message,error_name:a.name,error_digest:a.digest,boundary:"global"})}).catch(()=>{})},[a]),(0,b.jsx)("html",{children:(0,b.jsx)("body",{children:(0,b.jsx)("main",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#031035",color:"#f8fafc",fontFamily:"system-ui, sans-serif"},children:(0,b.jsxs)("div",{style:{textAlign:"center",padding:"2rem",border:"1px solid rgba(239,68,68,0.4)",borderRadius:"0.5rem",maxWidth:"500px"},children:[(0,b.jsx)("h2",{style:{color:"#ef4444",marginBottom:"0.5rem",fontSize:"1.25rem"},children:"Something went wrong"}),(0,b.jsx)("p",{style:{color:"#94a3b8",marginBottom:"1.5rem"},children:a.message||"An unexpected error occurred."}),(0,b.jsx)("button",{onClick:f,style:{padding:"0.5rem 1.25rem",background:"#3b82f6",color:"white",border:"none",borderRadius:"0.375rem",cursor:"pointer",fontSize:"0.875rem"},children:"Try again"})]})})})})}])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-9w~bh._.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
module.exports=[37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},66680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},48781,69839,79779,a=>{"use strict";let b;var c=a.i(2157),d=a.i(50227),e=a.i(60526),f=a.i(66680);a.i(74533);let g=d.default.join(e.default.homedir(),".claudeye"),h=d.default.join(g,"instance-id");function i(a){return f.default.createHmac("sha256","claudeye-telemetry-v1").update(a).digest("hex")}a.s(["getInstanceId",0,function(){if(b)return b;let a=function(){try{for(let a of(e.default.platform(),["/etc/machine-id","/var/lib/dbus/machine-id"]))try{let b=c.default.readFileSync(a,"utf-8").trim();if(b)return b}catch{}}catch{}}();if(a)return b=i(a);let d=[e.default.hostname(),e.default.homedir(),e.default.platform(),e.default.arch(),e.default.cpus()[0]?.model??""].join(":");return b=d?i(d):function(){try{let a=c.default.readFileSync(h,"utf-8").trim();if(a)return a}catch{}let a=f.default.randomUUID();try{c.default.mkdirSync(g,{recursive:!0}),c.default.writeFileSync(h,a,"utf-8")}catch{}return a}()},"hashToId",0,i],69839),a.s(["POSTHOG_API_KEY",0,"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX"],79779),a.s(["isTelemetryEnabled",0,function(){return"1"!==process.env.CLAUDEYE_TELEMETRY_DISABLED}],48781)},12072,(a,b,c)=>{b.exports={name:"claudeye",version:"1.0.9",description:"Watchtower for Claude Code & Agents SDK — replay sessions, run custom evals, debug agent traces locally",bin:{claudeye:"./bin/claudeye.mjs"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{import:"./dist/index.js",types:"./dist/index.d.ts"}},files:["bin/","dist/",".next/standalone/","README.md"],engines:{node:">=20.9.0",bun:">=1.3.0"},scripts:{dev:"bun scripts/dev.ts --port 8020",build:"bun --bun next build","build:evals":"tsc -p tsconfig.evals.json && bun scripts/minify-dist.mjs","build:binary":"bun build --compile src/binary-entry.ts --outfile claudeye-local",start:"bun scripts/start.ts",test:"vitest","test:run":"vitest run",lint:"eslint . --config eslint.config.mjs",prepublishOnly:"bun run build:evals && bun run build && bun scripts/prepare-package.mjs","set-versions":"bun scripts/set-versions.mjs","test:binary":"bash scripts/test-local.sh","test:binary:quick":"bash scripts/test-local.sh --skip-build","test:npx":"bash scripts/test-npx.sh","test:e2e":"vitest run --config vitest.config.e2e.mts","test:e2e:watch":"vitest --config vitest.config.e2e.mts"},keywords:["claude","claude-code","claude-agents-sdk","anthropic","ai-agent","llm-observability","agent-observability","log-viewer","session-replay","eval-framework","developer-tools","devtools","cli","dashboard","local-first","monitoring","debugging","tracing"],author:"ExosphereHost Inc. <claudeye@exosphere.host>",license:"SEE LICENSE IN LICENSE",homepage:"https://claudeye.exosphere.host",repository:{type:"git",url:"https://github.com/exospherehost/claudeye.git"},bugs:{url:"https://github.com/exospherehost/claudeye/issues"},publishConfig:{access:"restricted"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-virtual":"^3.13.18","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@testing-library/user-event":"^14.6.1","@types/node":"^25.2.0","@types/react":"^19.2.13","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1",autoprefixer:"^10.4.24","class-variance-authority":"^0.7.1",clsx:"^2.1.1",eslint:"^10.0.3","eslint-config-next":"^16.1.6","happy-dom":"^20.7.0","lucide-react":"^1.0.1",next:"^16.1.6",postcss:"^8.5.6",react:"^19.2.4","react-dom":"^19.2.4","tailwind-merge":"^3.4.0",tailwindcss:"^4.1.18","tw-animate-css":"^1.4.0",typescript:"^6.0.2",vite:"^8.0.0",vitest:"^4.0.18"},dependencies:{"posthog-node":"^5.28.0"}}},36359,a=>{"use strict";var b=a.i(37936),c=a.i(69839),d=a.i(48781),e=a.i(12072);async function f(){let a=(0,d.isTelemetryEnabled)();return{enabled:a,distinctId:a?(0,c.getInstanceId)():"",apiKey:process.env.CLAUDEYE_POSTHOG_KEY??"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX",host:process.env.CLAUDEYE_POSTHOG_HOST??"https://us.i.posthog.com",version:e.version}}(0,a.i(13095).ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"0083a359745c64ab349d8a8718e7b884b057921f57",null),a.s(["getTelemetryConfig",0,f])},39027,a=>{"use strict";var b=a.i(36359);a.s([],35268),a.i(35268),a.s(["0083a359745c64ab349d8a8718e7b884b057921f57",()=>b.getTelemetryConfig],39027)},2726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__12dv.x0._.js","server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js"].map(b=>a.l(b))).then(()=>b(74493)))}];
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-_oq51._.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module.exports=[92509,(a,b,c)=>{b.exports=a.x("url",()=>require("url"))},24868,(a,b,c)=>{b.exports=a.x("fs/promises",()=>require("fs/promises"))},46786,(a,b,c)=>{b.exports=a.x("os",()=>require("os"))},54799,(a,b,c)=>{b.exports=a.x("crypto",()=>require("crypto"))},62733,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(92509);let e="__CLAUDEYE_LOADING_EVALS__",f=!1;async function g(a){try{return await (0,b.access)(a),!0}catch{return!1}}async function h(){let a=process.env.CLAUDEYE_DIST_PATH;if(a){let b=(0,c.resolve)(a,"index.js");if(await g(b))return b}for(let a of[(0,c.resolve)(process.cwd(),"dist","index.js"),(0,c.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await g(a))return a;return null}let i=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,j=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g,k=".__claudeye_tmp__.mjs";async function l(a,b){let d=(0,c.resolve)(a,b);for(let a of[d,`${d}.js`,`${d}.mjs`,`${d}.ts`,(0,c.resolve)(d,"index.js")])if(await g(a))return a;return null}async function m(a,c){let e=a+".__claudeye_esm_shim__.mjs",f=`import _cjs from '${c}';
|
|
2
|
+
export const createApp = _cjs.createApp;
|
|
3
|
+
export const getQueueCondition = _cjs.getQueueCondition;
|
|
4
|
+
export const clearQueueCondition = _cjs.clearQueueCondition;
|
|
5
|
+
export const customPolicies = _cjs.customPolicies;
|
|
6
|
+
export const allow = _cjs.allow;
|
|
7
|
+
export const deny = _cjs.deny;
|
|
8
|
+
export const instruct = _cjs.instruct;
|
|
9
|
+
export default _cjs;`;return await (0,b.writeFile)(e,f,"utf-8"),{shimPath:e,shimUrl:(0,d.pathToFileURL)(e).href}}async function n(a,d,e){let f=[a],g=new Set,h=[],n=null;if(e&&d){let a=await m(e,d);h.push(a.shimPath),n=a.shimUrl}for(;f.length>0;){let a=f.shift();if(g.has(a))continue;g.add(a);let d=await (0,b.readFile)(a,"utf-8");n&&(d=d.replace(/from\s+(['"])claudeye\1/g,`from '${n}'`)),e&&(d=d.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${e.replace(/\\/g,"\\\\")}')`));let m=(0,c.dirname)(a),o=new Map;for(let a of[i,j]){let b,e=new RegExp(a.source,a.flags);for(;null!==(b=e.exec(d));){let a=b[2];if(o.has(a))continue;let d=await l(m,a);if(!d)continue;g.has(d)||f.includes(d)||f.push(d);let e=(0,c.relative)(m,d+k).split("\\").join("/");e.startsWith(".")||(e="./"+e),o.set(a,e)}}for(let a of[...o.keys()].sort((a,b)=>b.length-a.length)){let b=o.get(a),c=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=(d=d.replace(RegExp(`'${c}'`,"g"),`'${b}'`)).replace(RegExp(`"${c}"`,"g"),`"${b}"`)}let p=a+k;await (0,b.writeFile)(p,d,"utf-8"),h.push(p)}return h}async function o(){if(f)return;let a=process.env.CLAUDEYE_EVALS_MODULE;if(!a){f=!0;return}let c=globalThis;c[e]=!0;let g=[];try{let b=await h(),c=b?(0,d.pathToFileURL)(b).href:null;g=await n(a,c,b);let e=(0,d.pathToFileURL)(a+k).href;await import(e)}finally{for(let a of(c[e]=!1,g))try{await (0,b.unlink)(a)}catch{}}f=!0}a.s(["ensureEvalsLoaded",0,o])},61972,a=>{"use strict";a.s(["createScopedRegistry",0,function(a){function b(){let b=globalThis;return b[a]||(b[a]=[]),b[a]}return{register(a){let c=b(),d=c.findIndex(b=>b.name===a.name);d>=0?c[d]=a:c.push(a)},getAll:()=>b(),getSessionScoped:()=>b().filter(a=>"session"===a.scope||"both"===a.scope),getSubagentScoped:a=>b().filter(b=>("subagent"===b.scope||"both"===b.scope)&&(!b.subagentType||!a||b.subagentType===a)),hasSubagent:()=>b().some(a=>"subagent"===a.scope||"both"===a.scope),has:()=>b().length>0,clear(){globalThis[a]=[]}}}])},90798,a=>{"use strict";var b=a.i(46786),c=a.i(14747);a.s(["decodeFolderName",0,function(a){return/^[A-Za-z]--/.test(a)?a[0]+":/"+a.slice(3).replace(/-/g,"/"):a.replace(/-/g,"/")},"getClaudeProjectsPath",0,function(){let a=process.env.CLAUDE_PROJECTS_PATH;return a||(0,c.join)((0,b.homedir)(),".claude","projects")}])},34900,82248,a=>{"use strict";a.s(["runtimeCache",0,function(a,b,c){let d=new Map,e=new Map,f=c?.maxSize;return async(...c)=>{let g=JSON.stringify(c),h=d.get(g);if(h&&Date.now()<h.expiry)return f&&(d.delete(g),d.set(g,{data:h.data,expiry:Date.now()+1e3*b})),h.data;let i=e.get(g);if(i)return i;let j=a(...c).then(a=>{if(e.delete(g),f&&d.size>=f){let a=d.keys().next().value;d.delete(a)}return d.set(g,{data:a,expiry:Date.now()+1e3*b}),a},a=>{throw e.delete(g),a});return e.set(g,j),j}}],34900),a.s(["formatDate",0,function(a){return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}).format(a)}],82248)},14303,a=>{"use strict";var b=a.i(24868),c=a.i(14747);async function d(a,d,e,f){let g=`agent-${f}.jsonl`;for(let f of[(0,c.join)(a,d,g),(0,c.join)(a,d,e,g),(0,c.join)(a,d,e,"subagents",g)])if(!(0,c.relative)(a,f).startsWith(".."))try{return await (0,b.access)(f),f}catch(a){if("ENOENT"!==a.code)continue}return null}a.s(["resolveSubagentPath",0,d])},92246,a=>{"use strict";a.s(["formatDuration",0,function(a){if(a<1e3)return`${a}ms`;let b=a/1e3;if(b<60)return`${b.toFixed(1)}s`;let c=Math.floor(b/60);if(c>=60){let a=Math.floor(c/60);return`${a}h ${c%60}m`}let d=(b%60).toFixed(0);return`${c}m ${d}s`}])},83397,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(90798),e=a.i(14303),f=a.i(34900),g=a.i(82248),h=a.i(92246);function i(a){let b=(0,g.formatDate)(a),c=a.getMilliseconds().toString().padStart(3,"0");return`${b}.${c}`}function j(a,b,c,d){return{_source:d,uuid:a.uuid||"",parentUuid:a.parentUuid??null,timestamp:b,timestampMs:c.getTime(),timestampFormatted:i(c)}}async function k(a,b){let c=a.split("\n").filter(a=>""!==a.trim()),d=new Map,e=[],f=[],g=new Set,k=!1;for(let a=0;a<c.length;a++){let h;a>0&&a%200==0&&await new Promise(a=>setImmediate(a));let i=c[a];try{h=JSON.parse(i)}catch{continue}let l={...h,_source:b};f.push(l);let m=h.type,n=h.timestamp;if(!n)continue;let o=new Date(n),p=o.getTime();if("user"===m){let a=h.message;if(Array.isArray(a?.content)){let b=a.content;if(b.some(a=>"tool_result"===a.type)){let a=h.toolUseResult,c="string"==typeof a?.agentId?a.agentId:void 0;for(let a of(c&&/^[a-f0-9]+$/.test(c)&&g.add(c),b)){if("tool_result"!==a.type)continue;let b=a.tool_use_id;if(!b)continue;let{text:e,images:f}=function(a){let b=a.content;if("string"==typeof b)return{text:b};if(Array.isArray(b)){let a=b.filter(a=>"text"===a.type).map(a=>a.text),c=b.filter(a=>"image"===a.type).map(a=>{let b=a.source;return{base64:b.data,mediaType:b.media_type}}).filter(a=>a.base64&&a.mediaType);return{text:a.length>0?a.join("\n"):void 0,images:c.length>0?c:void 0}}return{}}(a);d.set(b,{timestamp:n,timestampMs:p,content:e,images:f,agentId:c})}continue}}let c="string"==typeof a?.content?a.content:"";e.push({type:"user",...j(h,n,o,b),message:{role:"user",content:c}});continue}if("assistant"===m){let a=h.message,c=[];if(Array.isArray(a?.content)&&(c=a.content.filter(a=>["text","tool_use","thinking"].includes(a.type)).map(a=>{if("text"===a.type)return{type:"text",text:a.text};if("tool_use"===a.type){let b=a.input;return{type:"tool_use",id:a.id,name:a.name,input:a.input??{},..."Task"===a.name&&b?{subagentType:b.subagent_type,subagentDescription:b.description}:{}}}return{type:"thinking",thinking:a.thinking,signature:a.signature}})),0===c.length)continue;e.push({type:"assistant",...j(h,n,o,b),message:{role:"assistant",content:c,model:a?.model}});continue}if("file-history-snapshot"===m||"progress"===m||"system"===m){e.push({type:m,...j(h,n,o,b),raw:{...h}});continue}if("queue-operation"===m){let a=k?"Session Resumed":"Session Started";k=!0,e.push({type:"queue-operation",...j(h,n,o,b),label:a});continue}}let l=0;for(let a of e)if("assistant"===a.type)for(let b of(++l%200==0&&await new Promise(a=>setImmediate(a)),a.message.content)){if("tool_use"!==b.type)continue;let c=d.get(b.id);if(!c)continue;let e=new Date(c.timestamp),f=c.timestampMs-a.timestampMs;b.result={timestamp:c.timestamp,timestampFormatted:i(e),content:c.content,images:c.images,durationMs:f,durationFormatted:(0,h.formatDuration)(f)},c.agentId&&(b.subagentId=c.agentId)}return e.length>500&&await new Promise(a=>setImmediate(a)),e.sort((a,b)=>a.timestampMs-b.timestampMs),{entries:e,rawLines:f,subagentIds:Array.from(g)}}async function l(a,f){let g=(0,d.getClaudeProjectsPath)(),h=(0,c.join)(g,a,`${f}.jsonl`),i=await (0,b.readFile)(h,"utf-8"),{entries:j,rawLines:l,subagentIds:m}=await k(i,"session");if(0===m.length)return{entries:j,rawLines:l,subagentIds:[]};let n=await Promise.allSettled(m.map(async c=>{let d=`agent-${c}`,h=await (0,e.resolveSubagentPath)(g,a,f,c);if(!h)return null;let i=await (0,b.readFile)(h,"utf-8"),{entries:j,rawLines:l}=await k(i,d);return{entries:j,rawLines:l}})),o=[...j],p=[...l];for(let a of n)"fulfilled"===a.status&&a.value&&(o.push(...a.value.entries),p.push(...a.value.rawLines));return o.length>500&&await new Promise(a=>setImmediate(a)),o.sort((a,b)=>a.timestampMs-b.timestampMs),{entries:o,rawLines:p,subagentIds:m}}let m=(0,f.runtimeCache)((a,b)=>l(a,b),60,{maxSize:50});a.s(["extractSubagentMeta",0,function(a,b){for(let c of a)if("assistant"===c.type){for(let a of c.message.content)if("tool_use"===a.type&&"Task"===a.name&&a.subagentId===b)return{type:a.subagentType,description:a.subagentDescription}}},"getCachedSessionLog",0,m,"parseSessionLog",0,l])},651,46721,26192,39784,70427,a=>{"use strict";var b=a.i(54799),c=a.i(24868),d=a.i(14747),e=a.i(90798);let f=null;function g(){if(f)return f;let a=(0,d.resolve)((0,e.getClaudeProjectsPath)());return f=(0,b.createHash)("sha256").update(a).digest("hex").slice(0,8)}let h=new Map;async function i(a,f){let g=(0,e.getClaudeProjectsPath)(),i=(0,d.join)(g,a,`${f}.jsonl`),j=Date.now(),k=h.get(i);if(k&&k.expiresAt>j)return k.hash;let l=await (0,c.stat)(i),m=`${l.mtimeMs}:${l.size}`,n=(0,b.createHash)("sha256").update(m).digest("hex");return h.set(i,{hash:n,expiresAt:j+5e3}),n}let j=new Map;async function k(a,f,g){let h=(0,e.getClaudeProjectsPath)(),i=`agent-${g}.jsonl`,k=[(0,d.join)(h,a,i),(0,d.join)(h,a,f,i),(0,d.join)(h,a,f,"subagents",i)],l=Date.now();for(let a of k){let d=j.get(a);if(d&&d.expiresAt>l){if(d.hash)return d.hash;continue}try{let d=await (0,c.stat)(a),e=`${d.mtimeMs}:${d.size}`,f=(0,b.createHash)("sha256").update(e).digest("hex");return j.set(a,{hash:f,expiresAt:l+5e3}),f}catch{j.set(a,{hash:"",expiresAt:l+5e3})}}return""}let l=new WeakMap;function m(a){let c=l.get(a);return c||(c=(0,b.createHash)("sha256").update(a.toString()).digest("hex"),l.set(a,c)),c}let n=null;async function o(){if(null!==n)return n;let a=process.env.CLAUDEYE_EVALS_MODULE;if(!a)return n="","";try{let d=await (0,c.readFile)(a,"utf-8");return n=(0,b.createHash)("sha256").update(d).digest("hex")}catch{return n="",""}}a.s(["hashEvalsModule",0,o,"hashItemCode",0,m,"hashProjectsPath",0,g,"hashSessionFile",0,i,"hashSubagentFile",0,k],46721);var p=a.i(46786);async function q(a,b){let c=Array(a.length),d=0;async function e(){for(;d<a.length;){let b=d++;try{c[b]={status:"fulfilled",value:await a[b]()}}catch(a){c[b]={status:"rejected",reason:a}}}}let f=Array.from({length:Math.min(b,a.length)},()=>e());return await Promise.all(f),c}a.s(["batchAll",0,q],26192);var r=a.i(76668);let s=(0,d.join)((0,p.homedir)(),".claudeye","cache");class t{basePath;constructor(a){this.basePath=a||s}keyToPath(a){return(0,d.join)(this.basePath,`${a}.json`)}async get(a){try{let b=this.keyToPath(a),d=await (0,c.readFile)(b,"utf-8");return JSON.parse(d)}catch{return null}}async set(a,b,e){try{let f=this.keyToPath(a);await (0,c.mkdir)((0,d.dirname)(f),{recursive:!0}),await (0,c.writeFile)(f,JSON.stringify({value:b,meta:e}),"utf-8")}catch(b){(0,r.logWarn)(`[cache] Write failed for ${a}:`,b instanceof Error?b.message:b)}}async invalidate(a){try{await (0,c.unlink)(this.keyToPath(a))}catch{}}async invalidateByPrefix(a){try{let b=a.split("/"),e=b.pop()||"",f=(0,d.join)(this.basePath,...b),g=(await (0,c.readdir)(f)).filter(a=>a.endsWith(".json")&&a.startsWith(e));await q(g.map(a=>()=>(0,c.unlink)((0,d.join)(f,a)).catch(()=>{})),50)}catch{}}async close(){}async clearAll(){try{await (0,c.rm)(this.basePath,{recursive:!0,force:!0})}catch{}}}a.s(["LocalCacheBackend",0,t],39784);let u="__CLAUDEYE_CACHE_BACKEND__";function v(){let a=globalThis;if(a[u])return a[u];let b=new t(process.env.CLAUDEYE_CACHE_PATH||void 0);return a[u]=b,b}function w(a,b,c){let d=g();return`${d}/${a}/${b}/${c}`}async function x(a,b,c,d,e){let f=v();try{let g=await f.get(w(a,b,c));if(!g)return null;let h=e??await i(b,c);if(g.meta.contentHash!==h)return null;let j=await o();if(g.meta.evalsModuleHash!==j)return null;let k=[...g.meta.registeredNames].sort(),l=[...d].sort();if(k.length!==l.length||k.some((a,b)=>a!==l[b]))return null;return{...g,cached:!0}}catch{return null}}async function y(a,b,c,d,e,f){let g=v();try{let[h,j]=await Promise.all([f?Promise.resolve(f):i(b,c),o()]);await g.set(w(a,b,c),d,{cachedAt:new Date().toISOString(),contentHash:h,evalsModuleHash:j,registeredNames:e})}catch(d){(0,r.logWarn)(`[cache] setCachedResult failed for ${a}/${b}/${c}:`,d instanceof Error?d.message:d)}}function z(a,b,c,d){let e=g();return`${e}/${a}/${b}/${c}/item/${d}`}async function A(a,b,c,d,e,f){let g=v();try{let e=await g.get(z(a,b,c,d));if(!e)return null;let h=e.meta,j=f??await i(b,c);if(h.contentHash!==j)return null;return{value:e.value,meta:h,cached:!0}}catch{return null}}async function B(a,b,c,d,e,f,g){let h=v();try{let j=g??await i(b,c);await h.set(z(a,b,c,d),f,{cachedAt:new Date().toISOString(),contentHash:j,itemCodeHash:e})}catch(e){(0,r.logWarn)(`[cache] setPerItemCache failed for ${a}/${b}/${c}/${d}:`,e instanceof Error?e.message:e)}}async function C(b,c,d,e,f,g){let h=await A(b,c,d,e,f,g);if(!h)return null;if("evals"!==b&&"enrichments"!==b)return h;let{getCacheInvalidationHook:i}=await a.A(65726),j=i();if(!j)return h;let k={itemName:e,itemKind:b,cachedAt:h.meta.cachedAt,contentHash:h.meta.contentHash,itemCodeHash:h.meta.itemCodeHash,currentItemCodeHash:f,projectName:c,sessionId:d,cachedValue:h.value};try{if(await j(k))return await E(b,c,d,e),null}catch{}return h}async function D(a,b,c,d){let e=v();try{let f=await e.get(z(a,b,c,d));if(!f)return null;return f.meta}catch{return null}}async function E(a,b,c,d){let e=v();try{await e.invalidate(z(a,b,c,d))}catch{}}async function F(a,b,c){let d=v();try{let e=g();await d.invalidateByPrefix(`${e}/${a}/${b}/${c}/item/`)}catch{}}async function G(a,b,c,d){let e=v();try{let f=z("conditions",a,b,"__queueCondition__"),g=await e.get(f);if(!g)return null;let h=g.meta;if(h.contentHash!==d||h.conditionCodeHash!==c)return null;return{result:g.value.result,cached:!0}}catch{return null}}async function H(a,b,c,d,e){let f=v();try{let g=z("conditions",a,b,"__queueCondition__");await f.set(g,{result:d},{cachedAt:new Date().toISOString(),contentHash:e,conditionCodeHash:c})}catch(c){(0,r.logWarn)(`[cache] setConditionCache failed for ${a}/${b}:`,c instanceof Error?c.message:c)}}async function I(b,c,d){let[{getSessionScopedEvals:e},{getSessionScopedEnrichers:f}]=await Promise.all([a.A(45397),a.A(79288)]),g=e(),h=f();if(0===g.length&&0===h.length)return!0;let j=d??await i(b,c);return!!j&&(await Promise.all([...g.map(a=>C("evals",b,c,a.name,m(a.fn),j)),...h.map(a=>C("enrichments",b,c,a.name,m(a.fn),j))])).every(a=>null!==a)}async function J(){let a=globalThis,b=a[u];b&&(await b.close(),delete a[u])}a.s(["closeCacheBackend",0,J,"getCachedResult",0,x,"getConditionCache",0,G,"getPerItemCache",0,A,"getPerItemCacheMeta",0,D,"getPerItemCacheWithHook",0,C,"initCacheBackend",0,v,"invalidatePerItemCache",0,E,"invalidatePerItemCaches",0,F,"isSessionFullyCached",0,I,"setCachedResult",0,y,"setConditionCache",0,H,"setPerItemCache",0,B],70427),a.s([],651)}];
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-om19y._.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module.exports=[12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},57764,(a,b,c)=>{b.exports=a.x("node:url",()=>require("node:url"))},76110,a=>{"use strict";var b=a.i(36359),c=a.i(77728),d=a.i(7292),e=a.i(37936),f=a.i(2157),g=a.i(50227),h=a.i(60526);let i={info:0,warn:1,error:2},j=(0,g.join)((0,h.homedir)(),".claudeye","logs"),k=!1,l="warn",m=!1,n=j;function o(a){return!function(){if(k)return;k=!0;let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();("info"===a||"warn"===a||"error"===a)&&(l=a);let b=(process.env.CLAUDEYE_HOOK_LOG_FILE??"").trim();b&&(m=!0,"1"!==b&&"true"!==b&&(n=b))}(),i[a]>=i[l]}function p(a,b){process.stderr.write(`[claudeye:hook] ${a} ${b}
|
|
2
|
+
`)}function q(a,b){if(m)try{(0,f.existsSync)(n)||(0,f.mkdirSync)(n,{recursive:!0});let c=(0,g.join)(n,"hooks.log");try{if((0,f.statSync)(c).size>=524288){let a=`hooks-${Date.now()}.log`;(0,f.renameSync)(c,(0,g.join)(n,a))}}catch{}let d=new Date().toISOString(),e=`[${d}] ${a} ${b}
|
|
3
|
+
`,h=(0,f.existsSync)(c)?(0,f.readFileSync)(c,"utf-8"):"";(0,f.writeFileSync)(c,h+e,"utf-8")}catch{}}function r(a){o("info")&&(p("INFO",a),q("INFO",a))}function s(a){o("warn")&&(p("WARN",a),q("WARN",a))}function t(a){o("error")&&(p("ERROR",a),q("ERROR",a))}function u(){return(0,g.resolve)((0,h.homedir)(),".claudeye","hooks-config.json")}function v(){let a=u();if(!(0,f.existsSync)(a))return{enabledPolicies:[]};try{let b=(0,f.readFileSync)(a,"utf8");return JSON.parse(b)}catch(b){return s(`failed to parse config at ${a}: ${b instanceof Error?b.message:String(b)}`),{enabledPolicies:[]}}}function w(a){let b=u(),c=(0,g.dirname)(b);(0,f.existsSync)(c)||(0,f.mkdirSync)(c,{recursive:!0}),(0,f.writeFileSync)(b,JSON.stringify(a,null,2)+"\n","utf8")}function x(){let a=v(),b=process.env.CLAUDEYE_LLM_BASE_URL??a.llm?.baseUrl??"https://api.openai.com/v1",c=process.env.CLAUDEYE_LLM_API_KEY??a.llm?.apiKey,d=process.env.CLAUDEYE_LLM_MODEL??a.llm?.model??"gpt-4o-mini",e=process.env.CLAUDEYE_LLM_API_KEY?"env":a.llm?.apiKey?"file":"missing",f=process.env.CLAUDEYE_LLM_BASE_URL?"env":a.llm?.baseUrl?"file":"default",g=process.env.CLAUDEYE_LLM_MODEL?"env":a.llm?.model?"file":"default";return(r(`llm-config: apiKey=${e} baseUrl=${f}(${b}) model=${g}(${d})`),c)?{baseUrl:b,apiKey:c,model:d}:null}var y=a.i(74533);let z=["user","project","local"],A=["SessionStart","SessionEnd","UserPromptSubmit","PreToolUse","PostToolUse","PostToolUseFailure","PermissionRequest","Notification","SubagentStart","SubagentStop","Stop","TeammateIdle","TaskCompleted","ConfigChange","WorktreeCreate","WorktreeRemove","PreCompact"],B="__claudeye_hook__";var C=a.i(1457),D=a.i(12714);function E(){return{decision:"allow"}}function F(a){return{decision:"deny",reason:a}}function G(a){return{decision:"instruct",reason:a}}async function H(a,b){let c=x();if(!c)throw Error("No LLM API key configured. Set CLAUDEYE_LLM_API_KEY or configure llm.apiKey in hooks-config.json");let d={model:c.model,messages:a,temperature:b?.temperature??.2,max_tokens:b?.maxTokens??4096};b?.responseFormat&&(d.response_format=b.responseFormat);let e=`${c.baseUrl.replace(/\/+$/,"")}/chat/completions`;r(`llm-client: POST ${e} model=${c.model} messages=${a.length}`);let f=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${c.apiKey}`},body:JSON.stringify(d)});if(!f.ok){let a="";try{a=await f.text()}catch{}throw t(`llm-client: ${f.status} ${f.statusText} — ${a.slice(0,200)}`),Error(`LLM API error: ${f.status} ${f.statusText} — ${a.slice(0,200)}`)}let g=await f.json(),h=g.choices?.[0]?.message?.content??"",i=g.usage?{promptTokens:g.usage.prompt_tokens??0,completionTokens:g.usage.completion_tokens??0,totalTokens:g.usage.total_tokens??0}:void 0;return r(`llm-client: OK tokens=${i?.totalTokens??"unknown"}`),{content:h,usage:i}}function I(){return{decision:"allow"}}function J(a){return"human"===a.type||"user"===a.type}function K(){return(0,g.resolve)((0,h.homedir)(),".claudeye","cache","verify-intent")}function L(a){return(0,g.resolve)(K(),`${a}.json`)}function M(a){let b,c=a.message?.role??a.type,d=a.message?.content;return b="string"==typeof d?d:Array.isArray(d)?d.filter(a=>"text"===a.type&&a.text).map(a=>a.text).join("\n"):"",`[${c}]: ${b}`}let N=`You are analyzing a conversation between a user and an AI coding assistant.
|
|
4
|
+
Extract all distinct requests, tasks, and intents the user expressed.
|
|
5
|
+
|
|
6
|
+
Return a JSON object:
|
|
7
|
+
{
|
|
8
|
+
"intents": [
|
|
9
|
+
{ "id": 1, "description": "Brief description of the intent", "source": "quoted user text" }
|
|
10
|
+
]
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
Only include actionable requests. Exclude greetings, acknowledgments, and meta-conversation.`,O=`You are verifying whether an AI coding assistant completed the user's requests.
|
|
14
|
+
|
|
15
|
+
For each intent, determine if it was SATISFIED or UNSATISFIED based on evidence
|
|
16
|
+
in the conversation. An intent is satisfied if the assistant took clear action
|
|
17
|
+
toward completing it and there's no indication of failure.
|
|
18
|
+
|
|
19
|
+
Return a JSON object:
|
|
20
|
+
{
|
|
21
|
+
"results": [
|
|
22
|
+
{ "id": 1, "status": "satisfied" | "unsatisfied", "evidence": "brief explanation" }
|
|
23
|
+
]
|
|
24
|
+
}`;async function P(a){let b=JSON.parse((await H([{role:"system",content:N},{role:"user",content:"User messages:\n\n"+a.join("\n\n---\n\n")}],{responseFormat:{type:"json_object"}})).content);return Array.isArray(b.intents)?b.intents:[]}async function Q(a,b){let c=JSON.parse((await H([{role:"system",content:O},{role:"user",content:`User intents:
|
|
25
|
+
${JSON.stringify(a,null,2)}
|
|
26
|
+
|
|
27
|
+
Conversation transcript:
|
|
28
|
+
${b}`}],{responseFormat:{type:"json_object"}})).content);return Array.isArray(c.results)?c.results:[]}async function R(a){let b;if("Stop"!==a.eventType)return I();let c=a.session?.sessionId;if(!c)return s("verify-intent: no sessionId in payload, skipping"),I();let d=a.session?.transcriptPath;if(!d)return s("verify-intent: no transcriptPath in payload, skipping"),I();r(`verify-intent: session=${c} transcript=${d}`);let e=function(a){let b=L(a);if(!(0,f.existsSync)(b))return{sessionId:a,retryCount:0,lastCheckedAt:0,unsatisfiedIntents:[]};try{return JSON.parse((0,f.readFileSync)(b,"utf8"))}catch{return{sessionId:a,retryCount:0,lastCheckedAt:0,unsatisfiedIntents:[]}}}(c);if(r(`verify-intent: retryCount=${e.retryCount}/3`),e.retryCount>=3)return r("verify-intent: max retries (3) reached, allowing stop"),I();try{b=await (0,D.readFile)(d,"utf8")}catch(a){return s(`verify-intent: failed to read transcript at ${d}: ${a instanceof Error?a.message:String(a)}`),I()}let g=function(a){let b=[];for(let c of a.split("\n"))if(c.trim())try{b.push(JSON.parse(c))}catch{}return b}(b),h=g.reduce((a,b)=>(a[b.type]=(a[b.type]??0)+1,a),{});r(`verify-intent: transcript parsed — ${g.length} entries, types: ${JSON.stringify(h)}`);let i=function(a){let b=[];for(let c of a){if(!J(c))continue;let a=c.message?.content;if("string"==typeof a)b.push(a);else if(Array.isArray(a)){let c=a.filter(a=>"text"===a.type&&a.text).map(a=>a.text).join("\n");c&&b.push(c)}}return b}(g);if(0===i.length)return s(`verify-intent: no user messages found — entry types seen: ${JSON.stringify(h)}`),I();r(`verify-intent: found ${i.length} user message(s)`);try{var j,k;let a;r("verify-intent: Pass 1 — extracting intents from user messages");let b=await P(i);if(r(`verify-intent: Pass 1 done — extracted ${b.length} intent(s)`),0===b.length)return r("verify-intent: no actionable intents found, allowing stop"),I();r(`verify-intent: Pass 2 — verifying ${b.length} intent(s) against transcript`);let d=function(a){let b=[],c=[];for(let d of a)J(d)?b.push(d):"assistant"===d.type&&c.push(d);let d=a.filter(a=>J(a)||"assistant"===a.type).map(M).join("\n---\n");if(d.length<=5e4)return d;let e=[...c],f=b.map(M);for(;e.length>0;){e.shift();let a=[...f,...e.map(M)].join("\n---\n");if(a.length<=5e4)return a}let g=[...b];for(;g.length>1;){g.shift();let a=(f=g.map(M)).join("\n---\n");if(a.length<=5e4)return a}return f[0]?.slice(0,5e4)??""}(g);r(`verify-intent: condensed transcript length=${d.length} chars`);let h=await Q(b,d);r(`verify-intent: Pass 2 done — ${h.length} result(s) received`);let l=h.filter(a=>"unsatisfied"===a.status),m=h.filter(a=>"satisfied"===a.status);if(r(`verify-intent: ${m.length} satisfied, ${l.length} unsatisfied`),0===l.length)return r("verify-intent: all intents satisfied, allowing stop"),I();let n=e.retryCount+1;j={sessionId:c,retryCount:n,lastCheckedAt:Date.now(),unsatisfiedIntents:l},a=K(),(0,f.existsSync)(a)||(0,f.mkdirSync)(a,{recursive:!0}),(0,f.writeFileSync)(L(c),JSON.stringify(j,null,2),"utf8");let o=l.map(a=>{let c=b.find(b=>b.id===a.id);return`${a.id}. ${c?.description??"Unknown"} - ${a.evidence}`}).join("\n");return r(`verify-intent: blocking stop — ${l.length} unsatisfied intent(s) (attempt ${n}/3)`),k=`STOP: The following user requests have not been completed:
|
|
29
|
+
${o}
|
|
30
|
+
|
|
31
|
+
Please address these before finishing. (Attempt ${n}/3)`,{decision:"instruct",reason:k}}catch(a){return t(`verify-intent: LLM call failed: ${a instanceof Error?a.message:String(a)}`),I()}}function S(a){let b=(0,g.join)((0,h.homedir)(),".claude");return a===b||a.startsWith(b+"/")}function T(a){return/[\\/]\.claude[\\/]settings(?:\.[^/\\]+)?\.json$/.test(a)}function U(a){return a.toolInput?.command??""}function V(a){return a.toolInput?.file_path??""}function W(a){return a.trim().split(/\s+/).map(a=>a.replace(/^['"]|['"]$/g,""))}let X=new Set(["&&","||","|",";"]);function Y(a){return a.split(/&&|\|\||[|;\n]/).map(a=>a.trim()).filter(a=>/^git\s+push\s/.test(a)).map(a=>a.replace(/^git\s+push\s+/,""))}function Z(a,b){if(0===b.length)return!1;let c=a.split(/&&|\|\||[|;\n]/).map(a=>a.trim()).filter(a=>/\brm\b/.test(a));if(0===c.length)return!1;for(let a of c){let c=W(a),d=c.findIndex(a=>"rm"===a);if(d<0)continue;let e=c.slice(d+1).filter(a=>/^-[^-]/.test(a));if(/r/i.test(e.join("")))for(let e of c.slice(d+1).filter(a=>!a.startsWith("-"))){let c=e.replace(/\/\*$/,"").replace(/\/+$/,"")||"/";if(!b.some(a=>{let b=a.replace(/\/+$/,"")||"/";return c===b||c.startsWith(b+"/")})&&!b.some(b=>{let c=b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return RegExp(`${c}(?:[/"'\\s/*]|$)`).test(a)}))return!1}}return!0}let $=/(?:^|;|&&|\|\||\|)\s*(?:ls|find|cat|head|tail|less|more|wc|file|stat|tree|du)\s/,_=[{name:"sanitize-jwt",description:"Stop Claude from reading JWTs in tool responses",fn:function(a){let b=JSON.stringify(a.payload);return/eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}/.test(b)?{decision:"deny",reason:"JWT token detected in tool output",message:"[REDACTED: JWT token removed by claudeye]"}:E()},match:{events:["PostToolUse"]},defaultEnabled:!0,category:"Sanitize"},{name:"sanitize-api-keys",description:"Stop Claude from reading API keys (OpenAI, Anthropic, GitHub, AWS, Stripe, Google) in tool responses",fn:function(a){let b=JSON.stringify(a.payload);for(let[a,c]of[[/sk-ant-[A-Za-z0-9\-_]{20,}/,"Anthropic API key"],[/sk-proj-[A-Za-z0-9\-_]{20,}/,"OpenAI project API key"],[/sk-[A-Za-z0-9]{20,}/,"OpenAI API key"],[/ghp_[A-Za-z0-9]{36}/,"GitHub personal access token"],[/github_pat_[A-Za-z0-9_]{82}/,"GitHub fine-grained token"],[/AKIA[A-Z0-9]{16}/,"AWS access key ID"],[/sk_live_[A-Za-z0-9]{24,}/,"Stripe live secret key"],[/sk_test_[A-Za-z0-9]{24,}/,"Stripe test secret key"],[/AIza[0-9A-Za-z\-_]{35}/,"Google API key"]])if(a.test(b))return{decision:"deny",reason:`${c} detected in tool output`,message:`[REDACTED: ${c} removed by claudeye]`};for(let{regex:c,label:d}of a.params?.additionalPatterns??[])try{if(new RegExp(c).test(b))return{decision:"deny",reason:`${d} detected in tool output`,message:`[REDACTED: ${d} removed by claudeye]`}}catch{s(`additionalPatterns: invalid regex "${c}", skipping`)}return E()},match:{events:["PostToolUse"]},defaultEnabled:!0,category:"Sanitize",params:{additionalPatterns:{type:"pattern[]",description:"Additional API key patterns to scrub, each with { regex, label }",default:[]}}},{name:"sanitize-connection-strings",description:"Stop Claude from reading database connection strings with embedded credentials in tool responses",fn:function(a){let b=JSON.stringify(a.payload);return/(?:postgresql|postgres|mysql|mongodb(?:\+srv)?|redis|amqps?|smtps?):\/\/[^@\s]+@/.test(b)?{decision:"deny",reason:"Database connection string with credentials detected in tool output",message:"[REDACTED: connection string removed by claudeye]"}:E()},match:{events:["PostToolUse"]},defaultEnabled:!0,category:"Sanitize"},{name:"sanitize-private-key-content",description:"Stop Claude from reading PEM private key content in tool responses",fn:function(a){let b=JSON.stringify(a.payload);return/-----BEGIN (?:[A-Z]+ )?PRIVATE KEY-----/.test(b)?{decision:"deny",reason:"Private key content detected in tool output",message:"[REDACTED: private key content removed by claudeye]"}:E()},match:{events:["PostToolUse"]},defaultEnabled:!0,category:"Sanitize"},{name:"sanitize-bearer-tokens",description:"Stop Claude from reading Authorization Bearer tokens in tool responses",fn:function(a){let b=JSON.stringify(a.payload);return/Authorization:\s*Bearer\s+[A-Za-z0-9\-._~+\/]{20,}/i.test(b)?{decision:"deny",reason:"Bearer token detected in tool output",message:"[REDACTED: Bearer token removed by claudeye]"}:E()},match:{events:["PostToolUse"]},defaultEnabled:!0,category:"Sanitize"},{name:"protect-env-vars",description:"Prevent commands that read environment variables",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/(?:^|\s|;|&&|\|\|)(?:env|printenv)(?:\s|$|;|&&|\|)/.test(b)?F("Command reads environment variables"):/echo\s+.*\$[A-Za-z_]/.test(b)?F("Command echoes environment variable"):/(?:^|\s|;|&&|\|\|)export\s+\w+/.test(b)?F("Command exports environment variable"):/\$env:[A-Za-z_]/i.test(b)?F("Command reads environment variable via PowerShell"):/(?:Get-ChildItem|dir|gci|ls)\s+Env:/i.test(b)?F("Command reads environment variables via PowerShell"):/\[Environment\]::GetEnvironment/i.test(b)?F("Command reads environment variable via .NET"):/echo\s+%[A-Za-z_]/i.test(b)?F("Command echoes environment variable via cmd"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!0,category:"Environment"},{name:"block-env-files",description:"Block reading/writing .env files",fn:function(a){let b=U(a),c=V(a);return c&&/(?:^|[\\/])\.env(?:\.|$)/.test(c)?F("Access to .env file blocked"):"Bash"===a.toolName&&/\.env(?:\b|\s|$|\.)/.test(b)?F("Command references .env file"):E()},match:{events:["PreToolUse"]},defaultEnabled:!0,category:"Environment"},{name:"block-read-outside-cwd",description:"Block file reads outside the session working directory",fn:function(a){let b=a.session?.cwd;if(!b)return E();let c=a.params?.allowPaths??[];if("Bash"===a.toolName){let d=U(a);if(!$.test(d))return E();let e=function(a){let b,c=a.replace(/"[^"]*"/g,a=>" ".repeat(a.length)).replace(/'[^']*'/g,a=>" ".repeat(a.length)),d=[],e=/(?<![a-zA-Z0-9_.\-~\\])(?:~\/[^\s;|&"'()\[\]{}]*|~(?=\s|$|[;|&"'()\[\]{}])|\/[^\s;|&"'()\[\]{}]*)/g;for(;null!==(b=e.exec(c));){let a=b[0];"~"===a?a=(0,h.homedir)():a.startsWith("~/")&&(a=(0,g.join)((0,h.homedir)(),a.slice(2))),d.push(a)}return d}(d),f=b.endsWith("/")?b:b+"/";for(let a of e){let d=(0,g.resolve)(b,a);if(T(d))return F(`Reading Claude settings file blocked: ${d}`);if(!S(d)&&"/dev/null"!==d&&d!==b&&!d.startsWith(f)){if(c.some(a=>d===a||d.startsWith(a.endsWith("/")?a:a+"/")))continue;return F(`Bash read outside project directory blocked: ${d}`)}}return E()}let d=V(a),e=a.toolInput?.path??"",f=d||e;if(!f)return E();let i=(0,g.resolve)(b,f);if(T(i))return F(`Reading Claude settings file blocked: ${i}`);if(S(i)||"/dev/null"===i)return E();let j=b.endsWith("/")?b:b+"/";return i===b||i.startsWith(j)?E():c.some(a=>i===a||i.startsWith(a.endsWith("/")?a:a+"/"))?E():F(`Access outside project directory blocked: ${i}`)},match:{events:["PreToolUse"],toolNames:["Read","Glob","Grep","Bash"]},defaultEnabled:!1,category:"Environment",params:{allowPaths:{type:"string[]",description:"Absolute paths outside cwd that are allowed to be read",default:[]}}},{name:"block-sudo",description:"Block sudo commands",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a).trimStart();return/(?:^|;|&&|\|\|)\s*sudo\s/.test(b)||b.startsWith("sudo ")?(a.params?.allowPatterns??[]).some(a=>{let c,d;return c=W(b),d=W(a),!(c.length<d.length||c.some(a=>X.has(a)))&&d.every((a,b)=>"*"===a||a===c[b])})?E():F("sudo commands are blocked"):/Start-Process\s+.*-Verb\s+RunAs/i.test(b)?F("Elevated process launch is blocked"):/(?:^|;|&&|\|\|)\s*runas\s/i.test(b)?F("runas elevation is blocked"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!0,category:"Dangerous Commands",params:{allowPatterns:{type:"string[]",description:"Sudo command patterns to allow, matched token-by-token (e.g. 'sudo systemctl status')",default:[]}}},{name:"block-curl-pipe-sh",description:"Block piping downloads to shell",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/(?:curl|wget)\s.*\|\s*(?:sh|bash|zsh)/.test(b)?F("Piping downloads to shell is blocked"):/(?:Invoke-WebRequest|iwr|Invoke-RestMethod|irm)\s+.*\|\s*(?:Invoke-Expression|iex)/i.test(b)?F("Piping downloads to Invoke-Expression is blocked"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!0,category:"Dangerous Commands"},{name:"block-rm-rf",description:"Prevent catastrophic deletions",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a),c=/(?:\/\s*$|\/\*|~)/.test(b);if(c&&(/rm\s+-[^\s]*r[^\s]*f[^\s]*/.test(b)||/rm\s+-[^\s]*f[^\s]*r[^\s]*/.test(b)))return Z(b,a.params?.allowPaths??[])?E():F("Catastrophic deletion blocked");if(c&&/\brm\b/.test(b)){let c=W(b).filter(a=>/^-[^-]/.test(a)).join("");if(/r/i.test(c)&&/f/.test(c))return Z(b,a.params?.allowPaths??[])?E():F("Catastrophic deletion blocked")}return/Remove-Item\s+.*-Recurse.*-Force.*(?:[A-Z]:\\(?:\s|$)|\\\*)/i.test(b)||/(?:rd|rmdir)\s+\/s\s+\/q\s+[A-Z]:\\/i.test(b)?F("Catastrophic deletion blocked"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Dangerous Commands",params:{allowPaths:{type:"string[]",description:"Paths that are allowed to be recursively deleted",default:[]}}},{name:"block-claudeye-commands",description:"Block claudeye CLI commands and uninstallation",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/(?:^|;|&&|\|\||\|)\s*claudeye(?:\s|$)/.test(b)?F("Running claudeye CLI commands is blocked"):/(?:npm\s+(?:uninstall|remove|un|r)\s.*claudeye|bun\s+remove\s.*claudeye|yarn\s+global\s+remove\s+claudeye|pnpm\s+(?:remove|uninstall|un)\s.*claudeye)/.test(b)?F("Uninstalling claudeye is blocked"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!0,category:"Dangerous Commands"},{name:"block-secrets-write",description:"Block writing secret key files",fn:function(a){if("Write"!==a.toolName)return E();let b=V(a);if(/\.(?:pem|key)$/.test(b)||/id_rsa/.test(b)||/credentials/.test(b))return F("Writing secret key files is blocked");for(let c of a.params?.additionalPatterns??[])if(b.includes(c))return F(`Writing blocked file pattern: ${c}`);return E()},match:{events:["PreToolUse"],toolNames:["Write"]},defaultEnabled:!1,category:"Dangerous Commands",params:{additionalPatterns:{type:"string[]",description:"Additional filename patterns (substrings) to block",default:[]}}},{name:"block-push-master",description:"Block pushing to main/master",fn:function(a){if("Bash"!==a.toolName)return E();let b=a.params?.protectedBranches??["main","master"];if(0===b.length)return E();let c=Y(U(a)),d=RegExp(`\\b(?:${b.map(a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|")})\\b`);return c.some(a=>d.test(a))?F(`Pushing to ${b.join("/")} is blocked`):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!0,category:"Git",params:{protectedBranches:{type:"string[]",description:"Branch names to protect from direct pushes",default:["main","master"]}}},{name:"block-force-push",description:"Prevent force-pushing to any branch",fn:function(a){return"Bash"!==a.toolName?E():Y(U(a)).some(a=>/(?:--force|-f\b)/.test(a))?F("Force-pushing is blocked"):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Git"},{name:"block-work-on-main",description:"Block git commits and merges on main/master branch",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);if(!/git\s+(?:commit|merge|rebase|cherry-pick)\b/.test(b))return E();let c=a.session?.cwd;if(!c)return E();try{let d=(0,y.execSync)("git rev-parse --abbrev-ref HEAD",{cwd:c,encoding:"utf8",timeout:3e3}).trim();if((a.params?.protectedBranches??["main","master"]).includes(d))return F(`Git ${b.match(/git\s+(\S+)/)?.[1]??"operation"} on ${d} is blocked. Create a feature branch first.`)}catch{}return E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Git",params:{protectedBranches:{type:"string[]",description:"Branch names where commits/merges are blocked",default:["main","master"]}}},{name:"warn-git-amend",description:"Warns before amending git commits, which rewrites history",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\bgit\s+commit\b.*--amend\b/.test(b)?G("STOP: This command amends the last commit, which rewrites git history. If this commit has already been pushed to a shared branch, this will cause divergence for other contributors. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Git"},{name:"warn-git-stash-drop",description:"Warns before permanently deleting stashed changes",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\bgit\s+stash\s+(?:drop|clear)\b/.test(b)?G("STOP: This command permanently deletes stashed changes (git stash drop/clear). Stash entries cannot be recovered after deletion. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Git"},{name:"warn-all-files-staged",description:"Warns before staging all working tree files with git add -A / . / --all",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\bgit\s+add\s+(?:-A\b|--all\b|\.(?:\s|$|;|&&|\|\|))/.test(b)?G("STOP: This command stages all files in the working tree (git add -A / --all / .). This may inadvertently include build artifacts, generated files, or sensitive files not covered by .gitignore. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Git"},{name:"warn-destructive-sql",description:"Warn before executing destructive SQL (DROP/TRUNCATE/DELETE without WHERE) via database clients",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\b(?:psql|mysql|sqlite3|pgcli|clickhouse-client)\b/.test(b)&&(/\b(?:DROP\s+(?:TABLE|DATABASE|SCHEMA)|TRUNCATE\b)/i.test(b)||/\bDELETE\s+FROM\b/i.test(b)&&!/\bWHERE\b/i.test(b))?G("STOP: This command contains destructive SQL (DROP/TRUNCATE/DELETE). Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Database"},{name:"warn-schema-alteration",description:"Warns before SQL schema changes (ALTER TABLE with column or rename operations)",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\b(?:psql|mysql|sqlite3|pgcli|clickhouse-client)\b/.test(b)&&/\bALTER\s+TABLE\b[\s\S]*\b(?:DROP\s+COLUMN|ADD\s+COLUMN|RENAME\s+(?:COLUMN|TO)|MODIFY\s+COLUMN)\b/i.test(b)?G("STOP: This command contains a schema-altering SQL statement (ALTER TABLE with column or rename operation). Schema changes on production databases are irreversible or disruptive. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Database"},{name:"warn-package-publish",description:"Warn before publishing packages to public registries (npm, PyPI, crates.io, RubyGems, etc.)",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/(?:npm\s+publish|bun\s+publish|pnpm\s+publish|yarn\s+npm\s+publish|twine\s+upload|poetry\s+publish|cargo\s+publish|gem\s+push)\b/.test(b)?G("STOP: This command publishes a package to a public registry. Confirm with the user that this is intentional."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Packages & System"},{name:"warn-global-package-install",description:"Warns before installing packages globally (npm -g, cargo install, etc.)",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\bnpm\s+(?:install|i)\b(?=.*(?:\s-g\b|--global\b))/.test(b)||/\byarn\s+global\s+add\b/.test(b)||/\bpnpm\s+(?:add|install|i)\b(?=.*(?:\s-g\b|--global\b))/.test(b)||/\bbun\s+(?:install|add)\b(?=.*(?:\s-g\b|--global\b))/.test(b)||/\bcargo\s+install\b/.test(b)||/\bpip(?:3)?\s+install\b(?=.*(?:--user\b|--break-system-packages\b))/.test(b)?G("STOP: This command installs a package globally, which modifies the system-wide environment outside the project. This can conflict with other projects or system tools. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Packages & System"},{name:"warn-large-file-write",description:"Warn before writing files larger than 1MB (configurable via thresholdKb param)",fn:function(a){if("Write"!==a.toolName)return E();let b=a.toolInput?.content;if("string"!=typeof b)return E();let c=a.params?.thresholdKb??1024;return b.length>1024*c?G(`STOP: You are writing a file larger than ${c}KB (${Math.round(b.length/1024)}KB). This is unusually large. Confirm this is intentional before proceeding.`):E()},match:{events:["PreToolUse"],toolNames:["Write"]},defaultEnabled:!1,category:"Packages & System",params:{thresholdKb:{type:"number",description:"File size threshold in KB above which a warning is issued",default:1024}}},{name:"warn-background-process",description:"Warns before starting detached or background processes",fn:function(a){if("Bash"!==a.toolName)return E();let b=U(a);return/\bnohup\s+\S/.test(b)||/\bscreen\s+-[A-Za-z]*d[A-Za-z]*\b/.test(b)||/\btmux\s+(?:new-session|new)\b[^|&;]*-d\b/.test(b)||/\bdisown\b/.test(b)||/(?<![&|])\s?&\s*(?:$|#|;)/.test(b)?G("STOP: This command starts a background or detached process (nohup, screen -d, tmux -d, or trailing &). Background processes persist after Claude's session and may be difficult to track or stop. Confirm with the user before executing."):E()},match:{events:["PreToolUse"],toolNames:["Bash"]},defaultEnabled:!1,category:"Packages & System"},{name:"warn-repeated-tool-calls",description:"Warn when the same tool is called 3+ times with identical parameters",fn:async function a(a){let b,c=a.session?.transcriptPath;if(!c||!a.toolName||!a.toolInput)return E();try{let a=await (0,D.stat)(c);if(a.size>262144){let d=a.size-262144,e=Buffer.allocUnsafe(262144),f=await (0,D.open)(c,"r");try{await f.read(e,0,262144,d)}finally{await f.close()}let g=e.toString("utf8"),h=g.indexOf("\n");b=h>=0?g.slice(h+1):g}else b=await (0,D.readFile)(c,"utf8")}catch{return E()}let d=JSON.stringify({tool:a.toolName,input:a.toolInput}),e=0;for(let c of b.split("\n"))if(c)try{let b=JSON.parse(c);if("assistant"!==b.type||!Array.isArray(b.message?.content))continue;for(let c of b.message.content)if("tool_use"===c.type&&JSON.stringify({tool:c.name,input:c.input})===d&&++e>=3)return G(`STOP: You have already called ${a.toolName} ${e} times with identical parameters. This is wasteful and unproductive. Do NOT repeat this call — use a different approach or ask the user for clarification.`)}catch{}return E()},match:{events:["PreToolUse"]},defaultEnabled:!1,category:"AI Behavior"},{name:"verify-intent",description:"Verify user intents are satisfied before allowing Claude to stop",fn:R,match:{events:["Stop"]},defaultEnabled:!1,category:"AI Behavior",beta:!0}];async function aa(a,b={}){let{includeBeta:c=!1}=b;if(!process.stdin.isTTY){let b=_.filter(a=>c||!a.beta);return a?a.filter(a=>b.some(b=>b.name===a)):b.filter(a=>a.defaultEnabled).map(a=>a.name)}let d=a?new Set(a):null,e=_.filter(a=>c||!a.beta).map(a=>({name:a.name,description:a.description,category:a.category,selected:d?d.has(a.name):a.defaultEnabled,beta:!!a.beta})),f=e.length,g=0,h="",i=0,j=!1;function k(){if(!h)return e;let a=h.toLowerCase();return e.filter(b=>b.name.toLowerCase().includes(a)||b.description.toLowerCase().includes(a))}function l(){let a=process.stdout.columns||120;j||(process.stdout.write("\x1b[?25l"),j=!0);let b=k(),d=b.length;d>0&&g>=d&&(g=d-1);let l=[];l.push(" Claudeye — Policy Manager"),l.push("");let m=Math.max(20,a-6),n=" ┌"+"─".repeat(m+2)+"┐",o=" └"+"─".repeat(m+2)+"┘",p=h?` \x1b[2m(${d}/${f})\x1b[0m`:` \x1b[2m(${f} policies)\x1b[0m`,q=`\x1b[1mSearch:\x1b[0m ${h}\x1b[7m \x1b[0m${p}`;if(l.push(n),l.push(` \u2502 ${q}`),l.push(o),l.push(""),0===d){l.push(" \x1b[2mNo policies match “"+h+"”\x1b[0m");for(let a=0;a<9;a++)l.push("")}else{let c=function(a){let b=[];for(let a of e)b.includes(a.category)||b.push(a.category);let c=[],d=0;for(let f of b){let b=a.filter(a=>a.category===f);if(0===b.length)continue;let g=e.filter(a=>a.category===f&&a.selected).length,h=e.filter(a=>a.category===f).length;for(let a of(c.push({kind:"header",category:f,enabledCount:g,totalCount:h}),b))c.push({kind:"item",item:a,filteredIndex:d++})}return c}(b),d=0;for(let a=0;a<c.length;a++){let b=c[a];if("item"===b.kind&&b.filteredIndex===g){d=a;break}}let f=d-Math.floor(4);f=Math.min(f=Math.max(0,f),Math.max(0,c.length-8));let h=Math.min(c.length,f+8),i=c.slice(0,f).filter(a=>"item"===a.kind).length;i>0?l.push(` \x1b[2m \u2191 ${i} more above\x1b[0m`):l.push("");for(let b=f;b<h;b++){let d=c[b];if("header"===d.kind){let b=` ${d.category.toUpperCase()} (${d.enabledCount}/${d.totalCount}) `,c=Math.max(2,a-2-(3+b.length));l.push(` \x1b[2m\u2500\u2500 ${b}${"─".repeat(c)}\x1b[0m`)}else{let a=d.item,b=d.filteredIndex===g,c=b?"\x1b[36m❯\x1b[0m":" ",e=a.selected?"\x1b[32m[✓]\x1b[0m":"[ ]",f=b?`\x1b[1;36m${a.name}\x1b[0m`:a.name,h=a.beta?" \x1b[35m[beta]\x1b[0m":"",i=" ".repeat(Math.max(1,28-a.name.length)),j=`\x1b[2m${a.description}\x1b[0m`;l.push(` ${c} ${e} ${f}${h}${i}${j}`)}}for(let a=h-f;a<8;a++)l.push("");let j=c.slice(h).filter(a=>"item"===a.kind).length;j>0?l.push(` \x1b[2m \u2193 ${j} more below\x1b[0m`):l.push("")}l.push(""),l.push(" \x1b[2m"+"─".repeat(a-2)+"\x1b[0m"),l.push(" [↑↓] Move [Space] Toggle [Ctrl+A] All [Ctrl+S] Save [Esc] Clear [^C] Quit"),l.push(""),l.push(" \x1b[2mTip: --list-hooks for a flat list · --install-hooks <name…> to skip prompt\x1b[0m"),c||l.push(" \x1b[2mTip: --install-hooks all --beta to include beta policies\x1b[0m"),i>0&&process.stdout.write(`\x1b[${i}A\x1b[J`);let r=l.map(b=>""===b?b:function(a,b){let c=0,d="",e=0;for(;e<a.length;)if("\x1b"===a[e]&&"["===a[e+1]){let b=e+2;for(;b<a.length&&!/[A-Za-z]/.test(a[b]);)b++;b++,d+=a.slice(e,b),e=b}else{if(c>=b)break;d+=a[e],c++,e++}return d}(b,a)).join("\n")+"\n";process.stdout.write(r),i=l.length}return new Promise(a=>{function b(b,d){if(!d)return;d.ctrl&&"c"===d.name&&(c(),process.exit(0));let f=k();if("up"===d.name)f.length>0&&(g=g>0?g-1:f.length-1),l();else if("down"===d.name)f.length>0&&(g=g<f.length-1?g+1:0),l();else if("return"===d.name||"space"===d.name){let a=f[g];a&&(a.selected=!a.selected),l()}else if("escape"===d.name)h="",g=0,l();else if(d.ctrl&&"a"===d.name){let a=f.length>0&&f.every(a=>a.selected);for(let b of f)b.selected=!a;l()}else if(d.ctrl&&"s"===d.name){c();let b=e.filter(a=>a.selected).map(a=>a.name);process.stdout.write("\n"),a(b)}else"backspace"===d.name||"delete"===d.name?h.length>0&&(h=h.slice(0,-1),g=0,l()):!b||1!==b.length||d.ctrl||d.meta||(h+=b,g=0,l())}function c(){j&&(process.stdout.write("\x1b[?25h"),j=!1),process.stdin.removeListener("keypress",b),process.stdin.setRawMode(!1),process.stdin.pause()}l(),process.stdin.setRawMode(!0),process.stdin.resume(),C.emitKeypressEvents(process.stdin),process.stdin.on("keypress",b)})}var ab=a.i(57764);let ac="__claudeye_custom_hooks__";var ad=a.i(24868),ae=a.i(14747),af=a.i(92509);let ag=".__claudeye_tmp__.mjs",ah=/(?:import\s+(?:[\s\S]*?\s+from\s+)?|export\s+(?:[\s\S]*?\s+from\s+))(['"])(\.\.?\/[^'"]+)\1/g,ai=/require\s*\(\s*(['"])(\.\.?\/[^'"]+)\1\s*\)/g;async function aj(a){try{return await (0,ad.access)(a),!0}catch{return!1}}async function ak(){let a=process.env.CLAUDEYE_DIST_PATH;if(a){let b=(0,ae.resolve)(a,"index.js");if(await aj(b))return b}for(let a of[(0,ae.resolve)((0,ae.dirname)(process.execPath),"..","assets","dist","index.js"),(0,ae.resolve)(process.cwd(),"dist","index.js"),(0,ae.resolve)(process.cwd(),"node_modules","claudeye","dist","index.js")])if(await aj(a))return a;return null}async function al(a,b){let c=(0,ae.resolve)(a,b);for(let a of[c,`${c}.js`,`${c}.mjs`,`${c}.ts`,(0,ae.resolve)(c,"index.js")])if(await aj(a))return a;return null}async function am(a,b){let c=a+".__claudeye_esm_shim__.mjs",d=`import _cjs from '${b}';
|
|
32
|
+
export const createApp = _cjs.createApp;
|
|
33
|
+
export const getQueueCondition = _cjs.getQueueCondition;
|
|
34
|
+
export const clearQueueCondition = _cjs.clearQueueCondition;
|
|
35
|
+
export const customPolicies = _cjs.customPolicies;
|
|
36
|
+
export const allow = _cjs.allow;
|
|
37
|
+
export const deny = _cjs.deny;
|
|
38
|
+
export const instruct = _cjs.instruct;
|
|
39
|
+
export default _cjs;`;return await (0,ad.writeFile)(c,d,"utf-8"),{shimPath:c,shimUrl:(0,af.pathToFileURL)(c).href}}async function an(a,b,c){let d=[a],e=new Set,f=[],g=null;if(c&&b){let a=await am(c,b);f.push(a.shimPath),g=a.shimUrl}for(;d.length>0;){let a=d.shift();if(e.has(a))continue;e.add(a);let b=await (0,ad.readFile)(a,"utf-8");g&&(b=b.replace(/from\s+(['"])claudeye\1/g,`from '${g}'`)),c&&(b=b.replace(/require\s*\(\s*(['"])claudeye\1\s*\)/g,`require('${c.replace(/\\/g,"\\\\")}')`));let h=(0,ae.dirname)(a),i=new Map;for(let a of[ah,ai]){let c,f=new RegExp(a.source,a.flags);for(;null!==(c=f.exec(b));){let a=c[2];if(i.has(a))continue;let b=await al(h,a);if(!b)continue;e.has(b)||d.includes(b)||d.push(b);let f=(0,ae.relative)(h,b+ag).split("\\").join("/");f.startsWith(".")||(f="./"+f),i.set(a,f)}}for(let a of[...i.keys()].sort((a,b)=>b.length-a.length)){let c=i.get(a),d=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");b=(b=b.replace(RegExp(`'${d}'`,"g"),`'${c}'`)).replace(RegExp(`"${d}"`,"g"),`"${c}"`)}let j=a+ag;await (0,ad.writeFile)(j,b,"utf-8"),f.push(j)}return f}async function ao(a){for(let b of a)try{await (0,ad.unlink)(b)}catch{}}let ap="__CLAUDEYE_LOADING_HOOKS__";async function aq(a,b){let c;if(!a)return[];let d=(0,g.isAbsolute)(a)?a:(0,g.resolve)(process.cwd(),a);if(!(0,f.existsSync)(d)){if(b?.strict)throw Error(`Custom hooks file not found: ${d}`);return s(`customHooksPath not found: ${d}`),[]}globalThis[ac]=[];let e=globalThis;e[ap]=!0;let h=[];try{let a=await ak(),b=a?(0,ab.pathToFileURL)(a).href:null;h=await an(d,b,a);let c=(0,ab.pathToFileURL)(d+ag).href;await import(c)}catch(c){let a=c instanceof Error?c.message:String(c);if(b?.strict)throw Error(`Failed to load custom hooks from ${d}: ${a}`);return t(`failed to load custom hooks from ${d}: ${a}`),[]}finally{e[ap]=!1,await ao(h)}return Array.isArray((c=globalThis)[ac])||(c[ac]=[]),c[ac]}var ar=a.i(12072);let as=a.i(79779).POSTHOG_API_KEY;async function at(a,b,c){if("1"===process.env.CLAUDEYE_TELEMETRY_DISABLED)return;let d=JSON.stringify({api_key:process.env.CLAUDEYE_POSTHOG_KEY??as,event:b,distinct_id:a,properties:{...c,$lib:"claudeye-hooks",claudeye_version:ar.version}});await fetch(process.env.CLAUDEYE_POSTHOG_HOST?`${process.env.CLAUDEYE_POSTHOG_HOST}/capture/`:"https://us.i.posthog.com/capture/",{method:"POST",headers:{"Content-Type":"application/json"},body:d,signal:AbortSignal.timeout(5e3)})}var au=a.i(69839);let av=new Set(_.map(a=>a.name));function aw(a,b){let c=b?(0,g.resolve)(b):process.cwd();switch(a){case"user":return(0,g.resolve)((0,h.homedir)(),".claude","settings.json");case"project":return(0,g.resolve)(c,".claude","settings.json");case"local":return(0,g.resolve)(c,".claude","settings.local.json")}}function ax(a){return(0,f.existsSync)(a)?JSON.parse((0,f.readFileSync)(a,"utf8")):{}}function ay(a,b){let c=(0,g.dirname)(a);(0,f.existsSync)(c)||(0,f.mkdirSync)(c,{recursive:!0}),(0,f.writeFileSync)(a,JSON.stringify(b,null,2)+"\n","utf8")}function az(a){if(!0===a[B])return!0;let b="string"==typeof a.command?a.command:"";return b.includes("claudeye")&&b.includes("--hook")}function aA(a){let b=a.filter(a=>!av.has(a));if(b.length>0){let a=[...av].join(", ");throw Error(`Unknown policy name(s): ${b.join(", ")}
|
|
40
|
+
Valid policies: ${a}`)}}function aB(a,b){let c=aw(a,b);if(!(0,f.existsSync)(c))return!1;try{let a=ax(c);if(!a.hooks)return!1;for(let b of Object.values(a.hooks))if(Array.isArray(b)){for(let a of b)if(a.hooks&&a.hooks.some(a=>az(a)))return!0}}catch{}return!1}async function aC(a,b="user",c,d=!1,e,f,i=!1){let j,k,l=function(){try{return(0,y.execSync)("which claudeye",{encoding:"utf8"}).trim().split("\n")[0].trim()}catch{throw Error("claudeye binary not found in PATH.\nInstall it globally first: npm install -g claudeye")}}(),m=v(),n=new Set(m.enabledPolicies);if(void 0!==a){let b;1===a.length&&"all"===a[0]?b=_.filter(a=>d||!a.beta).map(a=>a.name):(a.length>0&&aA(a),b=a),j=[...new Set([...m.enabledPolicies,...b])]}else{let a=m.enabledPolicies.length>0?m.enabledPolicies:void 0;j=await aa(a,{includeBeta:d})}let o={...v(),enabledPolicies:j};if(i)delete o.customHooksPath;else if(f){let a;o.customHooksPath=(0,g.resolve)(f);try{a=await aq(o.customHooksPath,{strict:!0})}catch(a){console.error(`Error: ${a instanceof Error?a.message:String(a)}`),process.exit(1)}0===a.length&&(console.error(`Error: no hooks registered in ${f}. Make sure your file calls customPolicies.add(...) at least once.`),process.exit(1)),console.log(`
|
|
41
|
+
Validated ${a.length} custom hook(s): ${a.map(a=>a.name).join(", ")}`)}w(o),console.log(`
|
|
42
|
+
Enabled ${j.length} policy(ies): ${j.join(", ")}`),i?console.log("Custom hooks path cleared."):o.customHooksPath&&console.log(`Custom hooks path: ${o.customHooksPath}`);let p=new Set(["verify-intent"]);j.some(a=>p.has(a))&&(x()||(console.log(`
|
|
43
|
+
\x1b[33mNote: verify-intent requires an LLM provider.`),console.log("Configure one with: claudeye --configure-llm\x1b[0m")));let q=aw(b,c),r=ax(q);for(let a of(r.hooks||(r.hooks={}),A)){let b={type:"command",command:`"${l}" --hook ${a}`,timeout:6e4,[B]:!0};r.hooks[a]||(r.hooks[a]=[]);let c=r.hooks[a],d=!1;for(let a of c){if(!a.hooks)continue;let c=a.hooks.findIndex(a=>az(a));if(c>=0){a.hooks[c]=b,d=!0;break}}d||c.push({hooks:[b]})}ay(q,r);try{let a=new Set(j),c=j.filter(a=>!n.has(a)),d=[...n].filter(b=>!a.has(b)),f=(0,au.getInstanceId)();await at(f,"hooks_installed",{scope:b,policies:j,policy_count:j.length,policies_added:c,policies_removed:d,...e?{source:e}:{},platform:(0,h.platform)(),arch:(0,h.arch)(),os_release:(0,h.release)(),hostname_hash:(0,au.hashToId)((0,h.hostname)()),has_custom_hooks_path:!!o.customHooksPath,has_policy_params:!!(o.policyParams&&Object.keys(o.policyParams).length>0),param_policy_names:o.policyParams?Object.keys(o.policyParams):[]})}catch{}console.log(`Claudeye hooks installed for all ${A.length} event types (scope: ${b}).`),console.log(`Settings: ${q}`),console.log(`Binary: ${l}`);let s=(k=new Set,z.filter(a=>{let b=aw(a,c);return!k.has(b)&&(k.add(b),!0)})).filter(a=>a!==b).filter(a=>aB(a,c));if(s.length>0){let a=s.map(a=>`${a} (${function(a){switch(a){case"user":return"~/.claude/settings.json";case"project":return"{cwd}/.claude/settings.json";case"local":return"{cwd}/.claude/settings.local.json"}}(a)})`).join(", ");console.log(),console.log(`\x1b[33mWarning: Claudeye hooks are also installed at ${a}.\x1b[0m`),console.log("Having hooks in multiple scopes may cause duplicate policy evaluation."),console.log(`Use \`claudeye --remove-hooks --scope ${s[0]}\` to remove the other installation,`),console.log("or `claudeye --list-hooks` to see all scopes.")}}async function aD(a,b="user",c,d){if(a&&a.length>0&&(1!==a.length||"all"!==a[0])){aA(a);let c=v(),e=new Set(a),f=c.enabledPolicies.filter(a=>!e.has(a)),g=a.filter(a=>!c.enabledPolicies.includes(a));g.length>0&&console.log(`Warning: policy(ies) not currently enabled: ${g.join(", ")}`);let{policyParams:i,...j}=c,k=i?Object.fromEntries(Object.entries(i).filter(([a])=>!e.has(a))):null;w({...j,enabledPolicies:f,...k&&Object.keys(k).length>0?{policyParams:k}:{}});try{let e=(0,au.getInstanceId)(),f=a.filter(a=>c.enabledPolicies.includes(a));await at(e,"hooks_removed",{scope:b,removal_mode:d?.betaOnly?"beta_policies":"policies",beta_only:d?.betaOnly??!1,policies_removed:f,removed_count:f.length,...d?.source?{source:d.source}:{},platform:(0,h.platform)(),arch:(0,h.arch)(),os_release:(0,h.release)(),hostname_hash:(0,au.hashToId)((0,h.hostname)())})}catch{}console.log(`Disabled ${a.length-g.length} policy(ies).`),console.log(`Remaining: ${f.length>0?f.join(", "):"(none)"}`);return}let e=v(),g="all"===b?[...z]:[b],i=0;for(let a of g){let d=aw(a,c);if(!(0,f.existsSync)(d)){if("all"!==b)return void console.log("No settings file found. Nothing to remove.");continue}if(!ax(d).hooks){if("all"!==b)return void console.log("No hooks found in settings. Nothing to remove.");continue}let e=function(a){let b=ax(a);if(!b.hooks)return 0;let c=0;for(let a of Object.keys(b.hooks)){let d=b.hooks[a];if(Array.isArray(d)){for(let a=d.length-1;a>=0;a--){let b=d[a];if(!b.hooks)continue;let e=b.hooks.length;b.hooks=b.hooks.filter(a=>!az(a)),c+=e-b.hooks.length,0===b.hooks.length&&d.splice(a,1)}0===d.length&&delete b.hooks[a]}}return 0===Object.keys(b.hooks).length&&delete b.hooks,ay(a,b),c}(d);i+=e,"all"!==b&&(console.log(`Removed ${e} claudeye hook(s) from settings.`),console.log(`Settings: ${d}`))}if("all"===b)for(let a of(console.log(`Removed ${i} claudeye hook(s) from all scopes.`),g))console.log(` ${a}: ${aw(a,c)}`);try{let a=(0,au.getInstanceId)();await at(a,"hooks_removed",{scope:b,removal_mode:"hooks",policies_removed:e.enabledPolicies,removed_count:i,...d?.source?{source:d.source}:{},platform:(0,h.platform)(),arch:(0,h.arch)(),os_release:(0,h.release)(),hostname_hash:(0,au.hashToId)((0,h.hostname)())})}catch{}if("all"===b||!z.some(a=>aB(a,c))){let{customHooksPath:a,policyParams:b,...c}=v();w({...c,enabledPolicies:[]})}}var aE=a.i(13095);async function aF(a){if(!(0,f.existsSync)(a))return[];let b=await (0,D.readFile)(a,"utf-8"),c=[],d=b.split(/customPolicies\.add\s*\(/);for(let a=1;a<d.length;a++){let b=d[a],e=b.match(/name:\s*["'`]([^"'`]+)["'`]/);if(!e)continue;let f=b.match(/description:\s*["'`]([^"'`]+)["'`]/),g=b.match(/events:\s*\[([^\]]+)\]/),h=g?g[1].replace(/["'`\s]/g,"").split(",").filter(Boolean).join(", "):void 0;c.push({name:e[1],description:f?.[1],eventScope:h})}return c}async function aG(){let a=v(),b=new Set(a.enabledPolicies),c=z.filter(a=>aB(a)),d=aw(c[0]??"user"),e=_.map(c=>{var d;let e,f;return{name:c.name,description:c.description,category:c.category,defaultEnabled:c.defaultEnabled,beta:!!c.beta,enabled:b.has(c.name),eventScope:(d=c.match,e=d.events?.join(", ")??"",f=d.toolNames?` \xb7 ${d.toolNames.join(", ")}`:"",`${e}${f}`),params:c.params?Object.fromEntries(Object.entries(c.params).map(([a,b])=>[a,{type:b.type,description:b.description,default:b.default}])):void 0,currentParams:c.params?a.policyParams?.[c.name]??{}:void 0}}),f=a.customHooksPath?await aF(a.customHooksPath):void 0;return{enabledPolicies:a.enabledPolicies,installedScopes:c,settingsPath:d,policies:e,customHooksPath:a.customHooksPath,customPolicies:f?.length?f:void 0}}async function aH(a,b){let c=v(),d=new Set(c.enabledPolicies);b?d.add(a):d.delete(a),w({...c,enabledPolicies:[...d]});try{let c=(0,au.getInstanceId)();await at(c,"policy_toggled",{policy_name:a,enabled:b,action:b?"enable":"disable",source:"web"})}catch{}}async function aI(a="user"){let b=v(),c=b.enabledPolicies.length>0?b.enabledPolicies:_.filter(a=>a.defaultEnabled&&!a.beta).map(a=>a.name);await aC(c,a,void 0,!1,"web")}async function aJ(a="user"){await aD(void 0,a,void 0,{source:"web"})}async function aK(a,b){let c=v(),d={...c.policyParams??{},[a]:b};w({...c,policyParams:d});try{let c=(0,au.getInstanceId)();await at(c,"policy_params_updated",{policy_name:a,param_keys:Object.keys(b),source:"web"})}catch{}}(0,aE.ensureServerEntryExports)([aG]),(0,e.registerServerReference)(aG,"002569392ae732575c764414749b761d1ea2620387",null),(0,aE.ensureServerEntryExports)([aH]),(0,e.registerServerReference)(aH,"604f971c899887c5fe2dd0904a38e24f4bb138ae21",null),(0,aE.ensureServerEntryExports)([aI,aJ]),(0,e.registerServerReference)(aI,"4073b98f592f47ab4dee360318c78ba940f2bd13eb",null),(0,e.registerServerReference)(aJ,"40a49c13a668e7a4c89fdfbdf0a2a3976d9f43bd34",null),(0,aE.ensureServerEntryExports)([aK]),(0,e.registerServerReference)(aK,"605eaa5aaa4640854292ad3d86724a4b0501f07699",null),a.s([],15387),a.i(15387),a.s(["002569392ae732575c764414749b761d1ea2620387",0,aG,"0083a359745c64ab349d8a8718e7b884b057921f57",()=>b.getTelemetryConfig,"00f8db623cce8cbb65413709ca6a47fb7ef4d4608d",()=>c.logout,"4073b98f592f47ab4dee360318c78ba940f2bd13eb",0,aI,"40985fcad95b1dfb5ce5ad080f01dc6797f4adce5c",()=>d.getHookActivityAction,"40a49c13a668e7a4c89fdfbdf0a2a3976d9f43bd34",0,aJ,"602bbc72facb5faaec730a7e10bdd3c426fb357a36",()=>d.searchHookActivityAction,"604f971c899887c5fe2dd0904a38e24f4bb138ae21",0,aH,"605eaa5aaa4640854292ad3d86724a4b0501f07699",0,aK],76110)}];
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0-wbic0._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[64240,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},71306,(a,b,c)=>{b.exports=a.r(18622)},79847,a=>{a.n(a.i(3343))},9185,a=>{a.n(a.i(29432))},72842,a=>{a.n(a.i(75164))},54897,a=>{a.n(a.i(30106))},56157,a=>{a.n(a.i(18970))},94331,a=>{a.n(a.i(60644))},15988,a=>{a.n(a.i(56952))},25766,a=>{a.n(a.i(77341))},29725,a=>{a.n(a.i(94290))},5785,a=>{a.n(a.i(90588))},74793,a=>{a.n(a.i(33169))},85826,a=>{a.n(a.i(37111))},21565,a=>{a.n(a.i(41763))},65911,a=>{a.n(a.i(8950))},25128,a=>{a.n(a.i(91562))},40781,a=>{a.n(a.i(49670))},69411,a=>{a.n(a.i(75700))},63081,a=>{a.n(a.i(276))},62837,a=>{a.n(a.i(40795))},34607,a=>{a.n(a.i(11614))},96338,a=>{a.n(a.i(21751))},50642,a=>{a.n(a.i(12213))},32242,a=>{a.n(a.i(22693))},88530,a=>{a.n(a.i(10531))},8583,a=>{a.n(a.i(1082))},38534,a=>{a.n(a.i(98175))},70408,a=>{a.n(a.i(9095))},22922,a=>{a.n(a.i(96772))},78294,a=>{a.n(a.i(71717))},16625,a=>{a.n(a.i(85034))},88648,a=>{a.n(a.i(68113))},51914,a=>{a.n(a.i(66482))},25466,a=>{a.n(a.i(91505))},20916,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return e}});class d extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class e extends URLSearchParams{append(){throw new d}delete(){throw new d}set(){throw new d}sort(){throw new d}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},21170,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"RedirectStatusCode",{enumerable:!0,get:function(){return e}});var d,e=((d={})[d.SeeOther=303]="SeeOther",d[d.TemporaryRedirect=307]="TemporaryRedirect",d[d.PermanentRedirect=308]="PermanentRedirect",d);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},28859,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={REDIRECT_ERROR_CODE:function(){return g},isRedirectError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(21170),g="NEXT_REDIRECT";function h(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let b=a.digest.split(";"),[c,d]=b,e=b.slice(2,-2).join(";"),h=Number(b.at(-2));return c===g&&("replace"===d||"push"===d)&&"string"==typeof e&&!isNaN(h)&&h in f.RedirectStatusCode}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},44868,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getRedirectError:function(){return i},getRedirectStatusCodeFromError:function(){return n},getRedirectTypeFromError:function(){return m},getURLFromRedirectError:function(){return l},permanentRedirect:function(){return k},redirect:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(21170),g=a.r(28859),h=a.r(20635).actionAsyncStorage;function i(a,b,c=f.RedirectStatusCode.TemporaryRedirect){let d=Object.defineProperty(Error(g.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d.digest=`${g.REDIRECT_ERROR_CODE};${b};${a};${c};`,d}function j(a,b){throw i(a,b??=h?.getStore()?.isAction?"push":"replace",f.RedirectStatusCode.TemporaryRedirect)}function k(a,b="replace"){throw i(a,b,f.RedirectStatusCode.PermanentRedirect)}function l(a){return(0,g.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function m(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function n(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},89798,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={HTTPAccessErrorStatus:function(){return f},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return h},getAccessFallbackErrorTypeByStatus:function(){return k},getAccessFallbackHTTPStatus:function(){return j},isHTTPAccessFallbackError:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},g=new Set(Object.values(f)),h="NEXT_HTTP_ERROR_FALLBACK";function i(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return b===h&&g.has(Number(c))}function j(a){return Number(a.digest.split(";")[1])}function k(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},16155,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"notFound",{enumerable:!0,get:function(){return f}});let d=a.r(89798),e=`${d.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function f(){let a=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E1041",enumerable:!1,configurable:!0});throw a.digest=e,a}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},34557,(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"forbidden",{enumerable:!0,get:function(){return d}}),a.r(89798).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},93845,(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unauthorized",{enumerable:!0,get:function(){return d}}),a.r(89798).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},73808,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isPostpone",{enumerable:!0,get:function(){return e}});let d=Symbol.for("react.postpone");function e(a){return"object"==typeof a&&null!==a&&a.$$typeof===d}},1567,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isNextRouterError",{enumerable:!0,get:function(){return f}});let d=a.r(89798),e=a.r(28859);function f(a){return(0,e.isRedirectError)(a)||(0,d.isHTTPAccessFallbackError)(a)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},94783,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,g.isNextRouterError)(b)||(0,f.isBailoutToCSRError)(b)||(0,i.isDynamicServerError)(b)||(0,h.isDynamicPostpone)(b)||(0,e.isPostpone)(b)||(0,d.isHangingPromiseRejectionError)(b)||(0,h.isPrerenderInterruptedError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=a.r(13091),e=a.r(73808),f=a.r(49640),g=a.r(1567),h=a.r(60384),i=a.r(96556);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},60968,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unstable_rethrow",{enumerable:!0,get:function(){return d}});let d=a.r(94783).unstable_rethrow;("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},73727,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return f.ReadonlyURLSearchParams},RedirectType:function(){return m},forbidden:function(){return i.forbidden},notFound:function(){return h.notFound},permanentRedirect:function(){return g.permanentRedirect},redirect:function(){return g.redirect},unauthorized:function(){return j.unauthorized},unstable_isUnrecognizedActionError:function(){return l},unstable_rethrow:function(){return k.unstable_rethrow}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20916),g=a.r(44868),h=a.r(16155),i=a.r(34557),j=a.r(93845),k=a.r(60968);function l(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}let m={push:"push",replace:"replace"};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},70396,a=>{"use strict";a.i(73727),a.s([])},790,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>"))},84707,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/app-dir/link.js"))},97647,a=>{"use strict";a.i(790);var b=a.i(84707);a.n(b)},95936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(64240),g=a.r(7997),h=f._(a.r(97647));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},56029,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/dashboard/dashboard-client.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/dashboard/dashboard-client.tsx <module evaluation>","default")},71554,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/dashboard/dashboard-client.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/dashboard/dashboard-client.tsx","default")},62587,a=>{"use strict";a.i(56029);var b=a.i(71554);a.n(b)},66825,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/dashboard/aggregate-client.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/dashboard/aggregate-client.tsx <module evaluation>","default")},97530,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/dashboard/aggregate-client.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/dashboard/aggregate-client.tsx","default")},33792,a=>{"use strict";a.i(66825);var b=a.i(97530);a.n(b)},71224,a=>{a.v("/_next/static/media/icon.0a.gigb3_x5pd.png"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},1022,a=>{"use strict";let b={src:a.i(71224).default,width:1920,height:1920};a.s(["default",0,b])},75403,a=>{"use strict";var b=a.i(7997),c=a.i(717),d=a.i(95936);a.i(70396);var e=a.i(73727),f=a.i(20396),g=a.i(62587),h=a.i(33792);async function i(){(process.env.CLAUDEYE_DISABLE_PAGES??"").split(",").map(a=>a.trim()).includes("dashboard")&&(0,e.notFound)();let a=await (0,f.listDashboardViews)();if(!a.ok)return(0,b.jsx)("main",{className:"min-h-screen bg-background",children:(0,b.jsxs)("div",{className:"container mx-auto p-8",children:[(0,b.jsx)("div",{className:"mb-6",children:(0,b.jsx)("h2",{className:"text-2xl font-semibold text-foreground",children:"Dashboard"})}),(0,b.jsxs)("div",{className:"bg-destructive/10 border border-destructive/20 rounded-lg p-4",children:[(0,b.jsx)("p",{className:"text-sm text-destructive font-medium",children:"Failed to load dashboard"}),(0,b.jsx)("p",{className:"text-sm text-destructive/80 mt-1",children:a.error})]})]})});let{views:i,hasDefaultFilters:j,hasDefaultAggregates:k}=a;return i.length>0?(0,b.jsx)("main",{className:"min-h-screen bg-background",children:(0,b.jsxs)("div",{className:"container mx-auto p-8",children:[(0,b.jsxs)("div",{className:"mb-6",children:[(0,b.jsx)("h2",{className:"text-2xl font-semibold text-foreground",children:"Dashboard"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Select a view to explore filtered sessions."})]}),(0,b.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:i.map(a=>(0,b.jsxs)(d.default,{href:`/dashboard/${encodeURIComponent(a.name)}`,className:"bg-card border border-border rounded-lg p-6 hover:border-primary/50 hover:shadow-sm transition-all group",children:[(0,b.jsx)("h3",{className:"text-lg font-medium text-foreground group-hover:text-primary transition-colors",children:a.label}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground mt-1",children:[a.filterCount," ",1===a.filterCount?"filter":"filters",a.aggregateCount>0&&(0,b.jsxs)("span",{children:[" ","· ",a.aggregateCount," ",1===a.aggregateCount?"aggregate":"aggregates"]})]})]},a.name))}),j&&(0,b.jsxs)("div",{className:"mt-8",children:[(0,b.jsx)("h3",{className:"text-lg font-medium text-foreground mb-4",children:"Default Filters"}),(0,b.jsx)(c.Suspense,{fallback:(0,b.jsx)("div",{className:"text-muted-foreground",children:"Loading filters..."}),children:(0,b.jsx)(g.default,{viewName:"default"})})]}),k&&(0,b.jsx)("div",{className:"mt-8",children:(0,b.jsx)(h.default,{viewName:"default"})})]})}):j?(0,b.jsx)("main",{className:"min-h-screen bg-background",children:(0,b.jsxs)("div",{className:"container mx-auto p-8",children:[(0,b.jsxs)("div",{className:"mb-6",children:[(0,b.jsx)("h2",{className:"text-2xl font-semibold text-foreground",children:"Dashboard"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Filter and explore sessions across all projects."})]}),(0,b.jsx)(c.Suspense,{fallback:(0,b.jsx)("div",{className:"text-muted-foreground",children:"Loading filters..."}),children:(0,b.jsx)(g.default,{viewName:"default"})}),k&&(0,b.jsx)("div",{className:"mt-8",children:(0,b.jsx)(h.default,{viewName:"default"})})]})}):(0,b.jsx)("main",{className:"min-h-screen bg-background",children:(0,b.jsxs)("div",{className:"container mx-auto p-8",children:[(0,b.jsx)("div",{className:"mb-6",children:(0,b.jsx)("h2",{className:"text-2xl font-semibold text-foreground",children:"Dashboard"})}),(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-6 text-center",children:[(0,b.jsx)("p",{className:"text-muted-foreground mb-2",children:"No dashboard views or filters are registered."}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground",children:["Use ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.view()"})," or"," ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.filter()"})," in your evals file to get started."]})]})]})})}a.s(["default",0,i,"dynamic",0,"force-dynamic"])},18144,a=>{a.n(a.i(75403))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__02l2rag._.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
module.exports=[50640,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},76668,a=>{"use strict";let b={info:0,warn:1,error:2};function c(a){return b[a]>=b.warn}function d(a){return`[claudeye ${new Date().toISOString()}] ${a}`}async function e(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getRequestUsername",0,e,"logActivity",0,function(a,b,e){if(!c("info"))return;let f=[`user=${a}`,`action=${b}`];e&&f.push(e),console.log(d("ACTIVITY"),f.join(" "))},"logError",0,function(a,b){void 0!==b?console.error(d("ERROR"),a,b):console.error(d("ERROR"),a)},"logWarn",0,function(a,b){c("warn")&&(void 0!==b?console.warn(d("WARN"),a,b):console.warn(d("WARN"),a))}])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},66680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},48781,69839,79779,a=>{"use strict";let b;var c=a.i(2157),d=a.i(50227),e=a.i(60526),f=a.i(66680);a.i(74533);let g=d.default.join(e.default.homedir(),".claudeye"),h=d.default.join(g,"instance-id");function i(a){return f.default.createHmac("sha256","claudeye-telemetry-v1").update(a).digest("hex")}a.s(["getInstanceId",0,function(){if(b)return b;let a=function(){try{for(let a of(e.default.platform(),["/etc/machine-id","/var/lib/dbus/machine-id"]))try{let b=c.default.readFileSync(a,"utf-8").trim();if(b)return b}catch{}}catch{}}();if(a)return b=i(a);let d=[e.default.hostname(),e.default.homedir(),e.default.platform(),e.default.arch(),e.default.cpus()[0]?.model??""].join(":");return b=d?i(d):function(){try{let a=c.default.readFileSync(h,"utf-8").trim();if(a)return a}catch{}let a=f.default.randomUUID();try{c.default.mkdirSync(g,{recursive:!0}),c.default.writeFileSync(h,a,"utf-8")}catch{}return a}()},"hashToId",0,i],69839),a.s(["POSTHOG_API_KEY",0,"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX"],79779),a.s(["isTelemetryEnabled",0,function(){return"1"!==process.env.CLAUDEYE_TELEMETRY_DISABLED}],48781)},12072,(a,b,c)=>{b.exports={name:"claudeye",version:"1.0.9",description:"Watchtower for Claude Code & Agents SDK — replay sessions, run custom evals, debug agent traces locally",bin:{claudeye:"./bin/claudeye.mjs"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{import:"./dist/index.js",types:"./dist/index.d.ts"}},files:["bin/","dist/",".next/standalone/","README.md"],engines:{node:">=20.9.0",bun:">=1.3.0"},scripts:{dev:"bun scripts/dev.ts --port 8020",build:"bun --bun next build","build:evals":"tsc -p tsconfig.evals.json && bun scripts/minify-dist.mjs","build:binary":"bun build --compile src/binary-entry.ts --outfile claudeye-local",start:"bun scripts/start.ts",test:"vitest","test:run":"vitest run",lint:"eslint . --config eslint.config.mjs",prepublishOnly:"bun run build:evals && bun run build && bun scripts/prepare-package.mjs","set-versions":"bun scripts/set-versions.mjs","test:binary":"bash scripts/test-local.sh","test:binary:quick":"bash scripts/test-local.sh --skip-build","test:npx":"bash scripts/test-npx.sh","test:e2e":"vitest run --config vitest.config.e2e.mts","test:e2e:watch":"vitest --config vitest.config.e2e.mts"},keywords:["claude","claude-code","claude-agents-sdk","anthropic","ai-agent","llm-observability","agent-observability","log-viewer","session-replay","eval-framework","developer-tools","devtools","cli","dashboard","local-first","monitoring","debugging","tracing"],author:"ExosphereHost Inc. <claudeye@exosphere.host>",license:"SEE LICENSE IN LICENSE",homepage:"https://claudeye.exosphere.host",repository:{type:"git",url:"https://github.com/exospherehost/claudeye.git"},bugs:{url:"https://github.com/exospherehost/claudeye/issues"},publishConfig:{access:"restricted"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-virtual":"^3.13.18","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@testing-library/user-event":"^14.6.1","@types/node":"^25.2.0","@types/react":"^19.2.13","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1",autoprefixer:"^10.4.24","class-variance-authority":"^0.7.1",clsx:"^2.1.1",eslint:"^10.0.3","eslint-config-next":"^16.1.6","happy-dom":"^20.7.0","lucide-react":"^1.0.1",next:"^16.1.6",postcss:"^8.5.6",react:"^19.2.4","react-dom":"^19.2.4","tailwind-merge":"^3.4.0",tailwindcss:"^4.1.18","tw-animate-css":"^1.4.0",typescript:"^6.0.2",vite:"^8.0.0",vitest:"^4.0.18"},dependencies:{"posthog-node":"^5.28.0"}}},36359,a=>{"use strict";var b=a.i(37936),c=a.i(69839),d=a.i(48781),e=a.i(12072);async function f(){let a=(0,d.isTelemetryEnabled)();return{enabled:a,distinctId:a?(0,c.getInstanceId)():"",apiKey:process.env.CLAUDEYE_POSTHOG_KEY??"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX",host:process.env.CLAUDEYE_POSTHOG_HOST??"https://us.i.posthog.com",version:e.version}}(0,a.i(13095).ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"0083a359745c64ab349d8a8718e7b884b057921f57",null),a.s(["getTelemetryConfig",0,f])},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}a.s(["createSessionCookie",0,e,"parseAuthUsers",0,function(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]},"verifySessionCookie",0,f])},77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"409aadcbf2d0760a74e17de2f0830dafb3695f973c",null),(0,b.registerServerReference)(g,"00f8db623cce8cbb65413709ca6a47fb7ef4d4608d",null),a.s(["login",0,f,"logout",0,g])},70467,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_EVAL_REGISTRY__"),c=b.getAll,d=b.getSessionScoped,e=b.getSubagentScoped,f=b.hasSubagent,g=b.has,h=b.clear;a.s(["clearEvals",0,h,"getRegisteredEvals",0,c,"getSessionScopedEvals",0,d,"getSubagentScopedEvals",0,e,"hasEvals",0,g,"hasSubagentEvals",0,f,"registerEval",0,function(a,c,d,e="session",f){let g={name:a,fn:c,scope:e};d&&(g.condition=d),f&&(g.subagentType=f),b.register(g)}])},46325,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_ENRICHER_REGISTRY__"),c=b.getAll,d=b.getSessionScoped,e=b.getSubagentScoped,f=b.hasSubagent,g=b.has,h=b.clear;a.s(["clearEnrichers",0,h,"getRegisteredEnrichers",0,c,"getSessionScopedEnrichers",0,d,"getSubagentScopedEnrichers",0,e,"hasEnrichers",0,g,"hasSubagentEnrichers",0,f,"registerEnricher",0,function(a,c,d,e="session",f){let g={name:a,fn:c,scope:e};d&&(g.condition=d),f&&(g.subagentType=f),b.register(g)}])},69191,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(90798),e=a.i(34900),f=a.i(76668),g=a.i(82248);async function h(a,c){try{return(await (0,b.stat)(a)).mtime}catch(a){return(0,f.logWarn)(`Failed to stat ${c}:`,a),new Date(0)}}async function i(a){try{if(!(await (0,b.stat)(a)).isDirectory())return null;return await (0,b.readdir)(a,{withFileTypes:!0})}catch{return null}}async function j(){try{let a=(0,d.getClaudeProjectsPath)(),b=await i(a);if(!b)return[];let e=await Promise.all(b.filter(a=>a.isDirectory()).map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,isDirectory:!0,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading project folders:",a),[]}}function k(a){let b=a.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return b?b[0]:void 0}async function l(a){try{let b=await i(a);if(!b)return[];let d=b.filter(a=>a.isFile()&&a.name.endsWith(".jsonl")&&k(a.name)),e=await Promise.all(d.map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e),sessionId:k(b.name)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading session files:",a),[]}}let m=(0,e.runtimeCache)(j,30),n=(0,e.runtimeCache)(a=>l(a),30);a.s(["getCachedProjectFolders",0,m,"getCachedSessionFiles",0,n,"getProjectPath",0,function(a){let b=(0,d.getClaudeProjectsPath)();return(0,c.join)(b,a)}])},73119,a=>{"use strict";var b=a.i(36359),c=a.i(77728),d=a.i(37936),e=a.i(83590);async function f(a){return(0,e.getCompletedHistory)(a)}async function g(a,b){return(0,e.searchCompletedHistory)(a,b)}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,d.registerServerReference)(f,"400ac1c65c2a435730065dbaa0a6bfb366aa4748fa",null),(0,d.registerServerReference)(g,"6025605787cd4beb8f473f5f90948f8be7da131a00",null),a.s([],65047),a.i(65047),a.s(["0083a359745c64ab349d8a8718e7b884b057921f57",()=>b.getTelemetryConfig,"00f8db623cce8cbb65413709ca6a47fb7ef4d4608d",()=>c.logout,"400ac1c65c2a435730065dbaa0a6bfb366aa4748fa",0,f,"6025605787cd4beb8f473f5f90948f8be7da131a00",0,g],73119)},2726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__12dv.x0._.js","server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js"].map(b=>a.l(b))).then(()=>b(74493)))},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))},65726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/lib_evals_cache-invalidation-registry_ts_082akoi._.js"].map(b=>a.l(b))).then(()=>b(16991)))},45397,a=>{a.v(a=>Promise.resolve().then(()=>a(70467)))},79288,a=>{a.v(a=>Promise.resolve().then(()=>a(46325)))},978,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0x26hbi._.js"].map(b=>a.l(b))).then(()=>b(99938)))},74398,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_04.u7zx._.js"].map(b=>a.l(b))).then(()=>b(86736)))},64297,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_06383ya._.js"].map(b=>a.l(b))).then(()=>b(77333)))},44971,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_11ou~_x._.js"].map(b=>a.l(b))).then(()=>b(14775)))}];
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__04qo1w2._.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
module.exports=[50640,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},76668,a=>{"use strict";let b={info:0,warn:1,error:2};function c(a){return b[a]>=b.warn}function d(a){return`[claudeye ${new Date().toISOString()}] ${a}`}async function e(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getRequestUsername",0,e,"logActivity",0,function(a,b,e){if(!c("info"))return;let f=[`user=${a}`,`action=${b}`];e&&f.push(e),console.log(d("ACTIVITY"),f.join(" "))},"logError",0,function(a,b){void 0!==b?console.error(d("ERROR"),a,b):console.error(d("ERROR"),a)},"logWarn",0,function(a,b){c("warn")&&(void 0!==b?console.warn(d("WARN"),a,b):console.warn(d("WARN"),a))}])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},60526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},66680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},74533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},48781,69839,79779,a=>{"use strict";let b;var c=a.i(2157),d=a.i(50227),e=a.i(60526),f=a.i(66680);a.i(74533);let g=d.default.join(e.default.homedir(),".claudeye"),h=d.default.join(g,"instance-id");function i(a){return f.default.createHmac("sha256","claudeye-telemetry-v1").update(a).digest("hex")}a.s(["getInstanceId",0,function(){if(b)return b;let a=function(){try{for(let a of(e.default.platform(),["/etc/machine-id","/var/lib/dbus/machine-id"]))try{let b=c.default.readFileSync(a,"utf-8").trim();if(b)return b}catch{}}catch{}}();if(a)return b=i(a);let d=[e.default.hostname(),e.default.homedir(),e.default.platform(),e.default.arch(),e.default.cpus()[0]?.model??""].join(":");return b=d?i(d):function(){try{let a=c.default.readFileSync(h,"utf-8").trim();if(a)return a}catch{}let a=f.default.randomUUID();try{c.default.mkdirSync(g,{recursive:!0}),c.default.writeFileSync(h,a,"utf-8")}catch{}return a}()},"hashToId",0,i],69839),a.s(["POSTHOG_API_KEY",0,"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX"],79779),a.s(["isTelemetryEnabled",0,function(){return"1"!==process.env.CLAUDEYE_TELEMETRY_DISABLED}],48781)},12072,(a,b,c)=>{b.exports={name:"claudeye",version:"1.0.9",description:"Watchtower for Claude Code & Agents SDK — replay sessions, run custom evals, debug agent traces locally",bin:{claudeye:"./bin/claudeye.mjs"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{import:"./dist/index.js",types:"./dist/index.d.ts"}},files:["bin/","dist/",".next/standalone/","README.md"],engines:{node:">=20.9.0",bun:">=1.3.0"},scripts:{dev:"bun scripts/dev.ts --port 8020",build:"bun --bun next build","build:evals":"tsc -p tsconfig.evals.json && bun scripts/minify-dist.mjs","build:binary":"bun build --compile src/binary-entry.ts --outfile claudeye-local",start:"bun scripts/start.ts",test:"vitest","test:run":"vitest run",lint:"eslint . --config eslint.config.mjs",prepublishOnly:"bun run build:evals && bun run build && bun scripts/prepare-package.mjs","set-versions":"bun scripts/set-versions.mjs","test:binary":"bash scripts/test-local.sh","test:binary:quick":"bash scripts/test-local.sh --skip-build","test:npx":"bash scripts/test-npx.sh","test:e2e":"vitest run --config vitest.config.e2e.mts","test:e2e:watch":"vitest --config vitest.config.e2e.mts"},keywords:["claude","claude-code","claude-agents-sdk","anthropic","ai-agent","llm-observability","agent-observability","log-viewer","session-replay","eval-framework","developer-tools","devtools","cli","dashboard","local-first","monitoring","debugging","tracing"],author:"ExosphereHost Inc. <claudeye@exosphere.host>",license:"SEE LICENSE IN LICENSE",homepage:"https://claudeye.exosphere.host",repository:{type:"git",url:"https://github.com/exospherehost/claudeye.git"},bugs:{url:"https://github.com/exospherehost/claudeye/issues"},publishConfig:{access:"restricted"},devDependencies:{"@tailwindcss/postcss":"^4.1.18","@tanstack/react-virtual":"^3.13.18","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.2","@testing-library/user-event":"^14.6.1","@types/node":"^25.2.0","@types/react":"^19.2.13","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.1",autoprefixer:"^10.4.24","class-variance-authority":"^0.7.1",clsx:"^2.1.1",eslint:"^10.0.3","eslint-config-next":"^16.1.6","happy-dom":"^20.7.0","lucide-react":"^1.0.1",next:"^16.1.6",postcss:"^8.5.6",react:"^19.2.4","react-dom":"^19.2.4","tailwind-merge":"^3.4.0",tailwindcss:"^4.1.18","tw-animate-css":"^1.4.0",typescript:"^6.0.2",vite:"^8.0.0",vitest:"^4.0.18"},dependencies:{"posthog-node":"^5.28.0"}}},36359,a=>{"use strict";var b=a.i(37936),c=a.i(69839),d=a.i(48781),e=a.i(12072);async function f(){let a=(0,d.isTelemetryEnabled)();return{enabled:a,distinctId:a?(0,c.getInstanceId)():"",apiKey:process.env.CLAUDEYE_POSTHOG_KEY??"phc_Ac1Ww1GqKc0z1SyrRWbmatEeQdlOQIsDEEdP8l8JRgX",host:process.env.CLAUDEYE_POSTHOG_HOST??"https://us.i.posthog.com",version:e.version}}(0,a.i(13095).ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"0083a359745c64ab349d8a8718e7b884b057921f57",null),a.s(["getTelemetryConfig",0,f])},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}a.s(["createSessionCookie",0,e,"parseAuthUsers",0,function(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]},"verifySessionCookie",0,f])},77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"409aadcbf2d0760a74e17de2f0830dafb3695f973c",null),(0,b.registerServerReference)(g,"00f8db623cce8cbb65413709ca6a47fb7ef4d4608d",null),a.s(["login",0,f,"logout",0,g])},70467,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_EVAL_REGISTRY__"),c=b.getAll,d=b.getSessionScoped,e=b.getSubagentScoped,f=b.hasSubagent,g=b.has,h=b.clear;a.s(["clearEvals",0,h,"getRegisteredEvals",0,c,"getSessionScopedEvals",0,d,"getSubagentScopedEvals",0,e,"hasEvals",0,g,"hasSubagentEvals",0,f,"registerEval",0,function(a,c,d,e="session",f){let g={name:a,fn:c,scope:e};d&&(g.condition=d),f&&(g.subagentType=f),b.register(g)}])},46325,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_ENRICHER_REGISTRY__"),c=b.getAll,d=b.getSessionScoped,e=b.getSubagentScoped,f=b.hasSubagent,g=b.has,h=b.clear;a.s(["clearEnrichers",0,h,"getRegisteredEnrichers",0,c,"getSessionScopedEnrichers",0,d,"getSubagentScopedEnrichers",0,e,"hasEnrichers",0,g,"hasSubagentEnrichers",0,f,"registerEnricher",0,function(a,c,d,e="session",f){let g={name:a,fn:c,scope:e};d&&(g.condition=d),f&&(g.subagentType=f),b.register(g)}])},69191,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(90798),e=a.i(34900),f=a.i(76668),g=a.i(82248);async function h(a,c){try{return(await (0,b.stat)(a)).mtime}catch(a){return(0,f.logWarn)(`Failed to stat ${c}:`,a),new Date(0)}}async function i(a){try{if(!(await (0,b.stat)(a)).isDirectory())return null;return await (0,b.readdir)(a,{withFileTypes:!0})}catch{return null}}async function j(){try{let a=(0,d.getClaudeProjectsPath)(),b=await i(a);if(!b)return[];let e=await Promise.all(b.filter(a=>a.isDirectory()).map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,isDirectory:!0,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading project folders:",a),[]}}function k(a){let b=a.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return b?b[0]:void 0}async function l(a){try{let b=await i(a);if(!b)return[];let d=b.filter(a=>a.isFile()&&a.name.endsWith(".jsonl")&&k(a.name)),e=await Promise.all(d.map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e),sessionId:k(b.name)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading session files:",a),[]}}let m=(0,e.runtimeCache)(j,30),n=(0,e.runtimeCache)(a=>l(a),30);a.s(["getCachedProjectFolders",0,m,"getCachedSessionFiles",0,n,"getProjectPath",0,function(a){let b=(0,d.getClaudeProjectsPath)();return(0,c.join)(b,a)}])},65003,a=>{"use strict";var b=a.i(70467),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEvals)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(a,b,c)=>{var d;return{name:a.name,pass:b.pass,score:null==(d=b.score)?1:Math.max(0,Math.min(1,d)),message:b.message,metadata:b.metadata,durationMs:c}},errorResult:(a,b,c)=>({name:a.name,pass:!1,score:0,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0,e=0,f=0;for(let b of a)b.skipped?f++:b.error?e++:b.pass?c++:d++;return{results:a,totalDurationMs:b,passCount:c,failCount:d,errorCount:e,skippedCount:f}}})}a.s(["runAllEvals",0,d])},50871,61542,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",0,b],50871);var c=a.i(92246);a.s(["calculateLogStats",0,function(a){let b=0,d=0,e=0,f=0,g=0,h=new Set;for(let c of a)if("user"===c.type&&b++,"queue-operation"===c.type&&g++,"assistant"===c.type){for(let a of(d++,c.message.content))"tool_use"===a.type&&("Task"===a.name&&(a.subagentType||a.subagentId)?f++:e++);c.message.model&&h.add(c.message.model)}let i="";if(a.length>=2){let b=a[a.length-1].timestampMs-a[0].timestampMs;i=(0,c.formatDuration)(b)}return{turnCount:g,userCount:b,assistantCount:d,toolCallCount:e,subagentCount:f,duration:i,models:Array.from(h)}}],61542)},31810,a=>{"use strict";var b=a.i(46325),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEnrichers)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,data:{},durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,data:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,data:{},durationMs:c,error:b}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}a.s(["runAllEnrichers",0,d])},20396,82762,a=>{"use strict";var b=a.i(37936),c=a.i(62733);let d="__CLAUDEYE_DASHBOARD_FILTER_REGISTRY__",e="__CLAUDEYE_DASHBOARD_VIEW_REGISTRY__",f="__CLAUDEYE_DASHBOARD_AGGREGATE_REGISTRY__",g="__CLAUDEYE_DASHBOARD_PREBUILT_FILTER_REGISTRY__";function h(){let a=globalThis;return a[d]||(a[d]=[]),a[d]}function i(){let a=globalThis;return a[e]||(a[e]=[]),a[e]}function j(a){return h().filter(b=>b.view===a)}function k(){return i()}function l(a){let b;return(!(b=globalThis)[f]&&(b[f]=[]),b[f]).filter(b=>b.view===a)}async function m(){try{await (0,c.ensureEvalsLoaded)();let a=k().map(a=>({name:a.name,label:a.label,filterCount:j(a.name).length,aggregateCount:l(a.name).length})),b=j("default").length>0,d=l("default").length>0;return{ok:!0,views:a,hasDefaultFilters:b,hasDefaultAggregates:d}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}a.s(["getAggregatesForView",0,l,"getFiltersForView",0,j,"getPreBuiltFiltersForView",0,function(a){let b;return(!(b=globalThis)[g]&&(b[g]=[]),b[g]).filter(b=>b.view===a)},"getRegisteredFilters",0,function(){return h()},"getRegisteredViews",0,k,"getViewOptions",0,function(a){return i().find(b=>b.name===a)}],82762),(0,a.i(13095).ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"00725db9d3b3facb5793f1747893e9dd75ba72ad02",null),a.s(["listDashboardViews",0,m],20396)},45252,a=>{"use strict";var b=a.i(36359),c=a.i(77728),d=a.i(20396),e=a.i(42298),f=a.i(4930);a.s([],19065),a.i(19065),a.s(["00725db9d3b3facb5793f1747893e9dd75ba72ad02",()=>d.listDashboardViews,"0083a359745c64ab349d8a8718e7b884b057921f57",()=>b.getTelemetryConfig,"00f8db623cce8cbb65413709ca6a47fb7ef4d4608d",()=>c.logout,"40ca129944c8d7e3f7818a8ec8cb24452b33915e5d",()=>f.computeAggregates,"60c8f906a04683e63645a750428aa2af6a36851626",()=>e.computeDashboard],45252)},2726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__12dv.x0._.js","server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js"].map(b=>a.l(b))).then(()=>b(74493)))},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))},65726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/lib_evals_cache-invalidation-registry_ts_082akoi._.js"].map(b=>a.l(b))).then(()=>b(16991)))},45397,a=>{a.v(a=>Promise.resolve().then(()=>a(70467)))},79288,a=>{a.v(a=>Promise.resolve().then(()=>a(46325)))}];
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__09y6src._.js.map
|