@claudiolabs/claudin 0.5.7
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/LICENSE +207 -0
- package/README.md +91 -0
- package/bin/claudin +152 -0
- package/dist/chunks/AgentTool-0.5.7-0krqsszm.mjs +1 -0
- package/dist/chunks/App-0.5.7-k8c6xsbz.mjs +1 -0
- package/dist/chunks/ApproveApiKey-0.5.7-djmd358f.mjs +1 -0
- package/dist/chunks/AssistantSessionChooser-0.5.7-40f5p134.mjs +1 -0
- package/dist/chunks/AutoModeOptInDialog-0.5.7-dgpfkf7n.mjs +1 -0
- package/dist/chunks/BypassPermissionsModeDialog-0.5.7-m2n3zekg.mjs +1 -0
- package/dist/chunks/ClaudeMdExternalIncludesDialog-0.5.7-8p2b9258.mjs +1 -0
- package/dist/chunks/ConsoleOAuthFlow-0.5.7-e11rkgsy.mjs +1 -0
- package/dist/chunks/DiffDialog-0.5.7-df3q0dyx.mjs +3 -0
- package/dist/chunks/Doctor-0.5.7-996gqph8.mjs +1 -0
- package/dist/chunks/Grove-0.5.7-7xphv8qp.mjs +1 -0
- package/dist/chunks/ITermBackend-0.5.7-rv5t26my.mjs +1 -0
- package/dist/chunks/InvalidConfigDialog-0.5.7-76awdeqe.mjs +1 -0
- package/dist/chunks/InvalidSettingsDialog-0.5.7-d59ky2sv.mjs +1 -0
- package/dist/chunks/MigrationDialog-0.5.7-nkkcryn5.mjs +1 -0
- package/dist/chunks/Onboarding-0.5.7-v3jtvbkn.mjs +1 -0
- package/dist/chunks/ProviderManager-0.5.7-92navbez.mjs +1 -0
- package/dist/chunks/REPL-0.5.7-6zag11mg.mjs +1 -0
- package/dist/chunks/ResumeConversation-0.5.7-hpgm4f1s.mjs +1 -0
- package/dist/chunks/SnapshotUpdateDialog-0.5.7-xrverbhp.mjs +1 -0
- package/dist/chunks/TeleportProgress-0.5.7-xn5z7dt4.mjs +1 -0
- package/dist/chunks/TeleportRepoMismatchDialog-0.5.7-s29rrsak.mjs +1 -0
- package/dist/chunks/TeleportResumeWrapper-0.5.7-3r5mn1za.mjs +1 -0
- package/dist/chunks/TmuxBackend-0.5.7-k3c0537z.mjs +9 -0
- package/dist/chunks/ToolSearchTool-0.5.7-mybq3qz5.mjs +1 -0
- package/dist/chunks/TrustDialog-0.5.7-r4dhznyf.mjs +1 -0
- package/dist/chunks/activeProvider-0.5.7-8emdm8j8.mjs +1 -0
- package/dist/chunks/add-dir-0.5.7-jwaavdc7.mjs +1 -0
- package/dist/chunks/agents-0.5.7-e7dajmrs.mjs +110 -0
- package/dist/chunks/agents-0.5.7-q2vtj7pt.mjs +3 -0
- package/dist/chunks/api-0.5.7-j8bn129y.mjs +1 -0
- package/dist/chunks/asciicast-0.5.7-rp1h8swq.mjs +1 -0
- package/dist/chunks/assistant-0.5.7-sfk22b3z.mjs +1 -0
- package/dist/chunks/auth-0.5.7-ez3n1qpx.mjs +1 -0
- package/dist/chunks/auth-0.5.7-khssh83t.mjs +1 -0
- package/dist/chunks/autoMode-0.5.7-ezn856pd.mjs +48 -0
- package/dist/chunks/autoUpdater-0.5.7-dkw2aw1e.mjs +1 -0
- package/dist/chunks/backgroundHousekeeping-0.5.7-9ejvx75r.mjs +1 -0
- package/dist/chunks/branch-0.5.7-cjbtbwg1.mjs +4 -0
- package/dist/chunks/bridgePointer-0.5.7-5z0vqchx.mjs +1 -0
- package/dist/chunks/btw-0.5.7-p3kbd1wf.mjs +1 -0
- package/dist/chunks/buddy-0.5.7-pa55rfb4.mjs +3 -0
- package/dist/chunks/cacache-0.5.7-anq54jwq.mjs +1 -0
- package/dist/chunks/cache-probe-0.5.7-6j5hzxc4.mjs +21 -0
- package/dist/chunks/cacheStats-0.5.7-e1byp2n2.mjs +4 -0
- package/dist/chunks/caches-0.5.7-w8n6wxaj.mjs +1 -0
- package/dist/chunks/claudeDesktop-0.5.7-5kkyx4pz.mjs +1 -0
- package/dist/chunks/claudemd-0.5.7-jb7byep9.mjs +1 -0
- package/dist/chunks/clear-0.5.7-tkh04z2c.mjs +1 -0
- package/dist/chunks/clearTerminal-0.5.7-mbqev32s.mjs +1 -0
- package/dist/chunks/cli-0.5.7-023jpnwm.mjs +2 -0
- package/dist/chunks/cli-0.5.7-08mn1pmc.mjs +5 -0
- package/dist/chunks/cli-0.5.7-0bv1xcbe.mjs +21 -0
- package/dist/chunks/cli-0.5.7-0df5m6td.mjs +2 -0
- package/dist/chunks/cli-0.5.7-0rvzfmhb.mjs +2 -0
- package/dist/chunks/cli-0.5.7-0s7wtvbz.mjs +2 -0
- package/dist/chunks/cli-0.5.7-1fmgwk5c.mjs +2 -0
- package/dist/chunks/cli-0.5.7-1kmeaqmc.mjs +2 -0
- package/dist/chunks/cli-0.5.7-20cz322w.mjs +2 -0
- package/dist/chunks/cli-0.5.7-23hg3t0h.mjs +2 -0
- package/dist/chunks/cli-0.5.7-258ytmbr.mjs +2 -0
- package/dist/chunks/cli-0.5.7-26pwg6gg.mjs +2 -0
- package/dist/chunks/cli-0.5.7-2h4rgwc9.mjs +2 -0
- package/dist/chunks/cli-0.5.7-2qxsy7jq.mjs +12 -0
- package/dist/chunks/cli-0.5.7-2tnvc3ka.mjs +2 -0
- package/dist/chunks/cli-0.5.7-2xm61gkr.mjs +5 -0
- package/dist/chunks/cli-0.5.7-2ytftsg5.mjs +2 -0
- package/dist/chunks/cli-0.5.7-31969syr.mjs +2 -0
- package/dist/chunks/cli-0.5.7-31hdc2nc.mjs +2 -0
- package/dist/chunks/cli-0.5.7-35yf0b84.mjs +2 -0
- package/dist/chunks/cli-0.5.7-3jrq7w6x.mjs +2 -0
- package/dist/chunks/cli-0.5.7-3xssm25z.mjs +2 -0
- package/dist/chunks/cli-0.5.7-469r2a5r.mjs +193 -0
- package/dist/chunks/cli-0.5.7-4eg4pktt.mjs +2 -0
- package/dist/chunks/cli-0.5.7-4gmpny6k.mjs +133 -0
- package/dist/chunks/cli-0.5.7-4zv4np07.mjs +2 -0
- package/dist/chunks/cli-0.5.7-500c5b8m.mjs +4 -0
- package/dist/chunks/cli-0.5.7-52mwnwy6.mjs +58 -0
- package/dist/chunks/cli-0.5.7-55zn2cct.mjs +4 -0
- package/dist/chunks/cli-0.5.7-5736yt36.mjs +2 -0
- package/dist/chunks/cli-0.5.7-5aghfr8k.mjs +3 -0
- package/dist/chunks/cli-0.5.7-5by4fby4.mjs +2 -0
- package/dist/chunks/cli-0.5.7-5e5xfeq6.mjs +2 -0
- package/dist/chunks/cli-0.5.7-5jaayymr.mjs +17 -0
- package/dist/chunks/cli-0.5.7-5jms2g5g.mjs +2 -0
- package/dist/chunks/cli-0.5.7-5kv9dgvn.mjs +2 -0
- package/dist/chunks/cli-0.5.7-5mrw857q.mjs +4 -0
- package/dist/chunks/cli-0.5.7-5q6tfz39.mjs +2 -0
- package/dist/chunks/cli-0.5.7-650e2qk4.mjs +18 -0
- package/dist/chunks/cli-0.5.7-67xxeffj.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6d26vvaa.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6g3w68ks.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6gfay8ap.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6gkpb0vw.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6pssgqdn.mjs +2 -0
- package/dist/chunks/cli-0.5.7-6thqe6p4.mjs +3 -0
- package/dist/chunks/cli-0.5.7-73er78b7.mjs +15 -0
- package/dist/chunks/cli-0.5.7-7a9gq9ff.mjs +2 -0
- package/dist/chunks/cli-0.5.7-7hm7dxyp.mjs +2 -0
- package/dist/chunks/cli-0.5.7-7k456xwn.mjs +3 -0
- package/dist/chunks/cli-0.5.7-7mmyazqh.mjs +34 -0
- package/dist/chunks/cli-0.5.7-7rgsmfw7.mjs +3 -0
- package/dist/chunks/cli-0.5.7-7wyhqw17.mjs +2 -0
- package/dist/chunks/cli-0.5.7-82x8qaxx.mjs +2 -0
- package/dist/chunks/cli-0.5.7-89fcvfy0.mjs +2 -0
- package/dist/chunks/cli-0.5.7-8ac9d7r6.mjs +2 -0
- package/dist/chunks/cli-0.5.7-8ap24w7a.mjs +2 -0
- package/dist/chunks/cli-0.5.7-8e61g5bq.mjs +10 -0
- package/dist/chunks/cli-0.5.7-8sbq2qed.mjs +2 -0
- package/dist/chunks/cli-0.5.7-8sqyymdb.mjs +2 -0
- package/dist/chunks/cli-0.5.7-8ychjqct.mjs +16 -0
- package/dist/chunks/cli-0.5.7-93eaxn9a.mjs +2 -0
- package/dist/chunks/cli-0.5.7-93k1z52y.mjs +2 -0
- package/dist/chunks/cli-0.5.7-9acdh8nc.mjs +2 -0
- package/dist/chunks/cli-0.5.7-9jck3vts.mjs +15 -0
- package/dist/chunks/cli-0.5.7-9rbmn26q.mjs +24 -0
- package/dist/chunks/cli-0.5.7-9sysdak3.mjs +2 -0
- package/dist/chunks/cli-0.5.7-9ysat94v.mjs +2 -0
- package/dist/chunks/cli-0.5.7-9z55nm22.mjs +3 -0
- package/dist/chunks/cli-0.5.7-9zwbnq8g.mjs +2 -0
- package/dist/chunks/cli-0.5.7-a47hzz3r.mjs +2 -0
- package/dist/chunks/cli-0.5.7-aq7a3646.mjs +2 -0
- package/dist/chunks/cli-0.5.7-ayjrdmrk.mjs +2 -0
- package/dist/chunks/cli-0.5.7-b51h487f.mjs +2 -0
- package/dist/chunks/cli-0.5.7-bkptgahs.mjs +4 -0
- package/dist/chunks/cli-0.5.7-bnapjxz4.mjs +2 -0
- package/dist/chunks/cli-0.5.7-bzrvdrq4.mjs +2 -0
- package/dist/chunks/cli-0.5.7-c1mv1399.mjs +2 -0
- package/dist/chunks/cli-0.5.7-c9dtw94k.mjs +2 -0
- package/dist/chunks/cli-0.5.7-cakvh73p.mjs +2 -0
- package/dist/chunks/cli-0.5.7-d19d4v07.mjs +2 -0
- package/dist/chunks/cli-0.5.7-d4gtv7f7.mjs +2 -0
- package/dist/chunks/cli-0.5.7-de90yre1.mjs +2 -0
- package/dist/chunks/cli-0.5.7-dntg9qbj.mjs +133 -0
- package/dist/chunks/cli-0.5.7-dp3z7wkh.mjs +2 -0
- package/dist/chunks/cli-0.5.7-dr7n1fyv.mjs +20 -0
- package/dist/chunks/cli-0.5.7-e8eqdfnf.mjs +2 -0
- package/dist/chunks/cli-0.5.7-eer6xagb.mjs +2 -0
- package/dist/chunks/cli-0.5.7-esx85d2g.mjs +2 -0
- package/dist/chunks/cli-0.5.7-eyemfxtz.mjs +2 -0
- package/dist/chunks/cli-0.5.7-fx3gesdm.mjs +2 -0
- package/dist/chunks/cli-0.5.7-g2dd5t6j.mjs +2 -0
- package/dist/chunks/cli-0.5.7-g4n7dg2d.mjs +9 -0
- package/dist/chunks/cli-0.5.7-g7k0r0ea.mjs +5 -0
- package/dist/chunks/cli-0.5.7-g8dqk0se.mjs +2 -0
- package/dist/chunks/cli-0.5.7-gcnk0vke.mjs +6 -0
- package/dist/chunks/cli-0.5.7-gnq8vh0c.mjs +2 -0
- package/dist/chunks/cli-0.5.7-gy4csxb5.mjs +2 -0
- package/dist/chunks/cli-0.5.7-h9v4tqbs.mjs +24 -0
- package/dist/chunks/cli-0.5.7-hdcnw5y4.mjs +2 -0
- package/dist/chunks/cli-0.5.7-hhre0h51.mjs +2 -0
- package/dist/chunks/cli-0.5.7-hp25yk8y.mjs +2 -0
- package/dist/chunks/cli-0.5.7-hq4wbper.mjs +11 -0
- package/dist/chunks/cli-0.5.7-hw11qa05.mjs +3 -0
- package/dist/chunks/cli-0.5.7-hw3pyj8g.mjs +2 -0
- package/dist/chunks/cli-0.5.7-j7h72bgz.mjs +2 -0
- package/dist/chunks/cli-0.5.7-j8q5bja8.mjs +2 -0
- package/dist/chunks/cli-0.5.7-jf3f8gen.mjs +2 -0
- package/dist/chunks/cli-0.5.7-jga8kgpr.mjs +2 -0
- package/dist/chunks/cli-0.5.7-jptzskw1.mjs +2 -0
- package/dist/chunks/cli-0.5.7-jw2te6th.mjs +2 -0
- package/dist/chunks/cli-0.5.7-k11mzgcb.mjs +2 -0
- package/dist/chunks/cli-0.5.7-kctf48t4.mjs +7 -0
- package/dist/chunks/cli-0.5.7-knkzkqbw.mjs +2 -0
- package/dist/chunks/cli-0.5.7-kp9pg4sr.mjs +2 -0
- package/dist/chunks/cli-0.5.7-kvazvrra.mjs +2 -0
- package/dist/chunks/cli-0.5.7-ky5khwx2.mjs +2 -0
- package/dist/chunks/cli-0.5.7-m0841vt9.mjs +2 -0
- package/dist/chunks/cli-0.5.7-m4ekdyhj.mjs +2 -0
- package/dist/chunks/cli-0.5.7-m4wwfa6q.mjs +2 -0
- package/dist/chunks/cli-0.5.7-m5q27x96.mjs +2 -0
- package/dist/chunks/cli-0.5.7-m82d23hf.mjs +2 -0
- package/dist/chunks/cli-0.5.7-mdcw5fyw.mjs +4 -0
- package/dist/chunks/cli-0.5.7-mz4njeb9.mjs +39 -0
- package/dist/chunks/cli-0.5.7-mzfr99sc.mjs +67 -0
- package/dist/chunks/cli-0.5.7-p381d4sx.mjs +3 -0
- package/dist/chunks/cli-0.5.7-p4mv49ab.mjs +25 -0
- package/dist/chunks/cli-0.5.7-pse9qff7.mjs +2 -0
- package/dist/chunks/cli-0.5.7-pzjz115k.mjs +2 -0
- package/dist/chunks/cli-0.5.7-q0pq4367.mjs +9 -0
- package/dist/chunks/cli-0.5.7-q2e6xpch.mjs +5281 -0
- package/dist/chunks/cli-0.5.7-q6sgd9ng.mjs +12 -0
- package/dist/chunks/cli-0.5.7-q8v8naf8.mjs +2 -0
- package/dist/chunks/cli-0.5.7-qdcp748z.mjs +2 -0
- package/dist/chunks/cli-0.5.7-qdqrgv1q.mjs +2 -0
- package/dist/chunks/cli-0.5.7-qk0n5hqa.mjs +9 -0
- package/dist/chunks/cli-0.5.7-r4cdt1b9.mjs +50 -0
- package/dist/chunks/cli-0.5.7-ra5kv4tw.mjs +2 -0
- package/dist/chunks/cli-0.5.7-rb75eq83.mjs +2 -0
- package/dist/chunks/cli-0.5.7-rggstqv6.mjs +2 -0
- package/dist/chunks/cli-0.5.7-rr1yd8f3.mjs +4 -0
- package/dist/chunks/cli-0.5.7-rzts2ke3.mjs +2 -0
- package/dist/chunks/cli-0.5.7-s09knvta.mjs +3 -0
- package/dist/chunks/cli-0.5.7-s5nd54ga.mjs +3 -0
- package/dist/chunks/cli-0.5.7-sb3fjts4.mjs +2 -0
- package/dist/chunks/cli-0.5.7-sjd6g3n6.mjs +15 -0
- package/dist/chunks/cli-0.5.7-sjx0wm99.mjs +2 -0
- package/dist/chunks/cli-0.5.7-skfm51ta.mjs +44 -0
- package/dist/chunks/cli-0.5.7-sx7pr75m.mjs +2 -0
- package/dist/chunks/cli-0.5.7-t6mtpr04.mjs +2 -0
- package/dist/chunks/cli-0.5.7-t8z48kc2.mjs +4 -0
- package/dist/chunks/cli-0.5.7-tbga87q3.mjs +2 -0
- package/dist/chunks/cli-0.5.7-tc3vm4ra.mjs +2 -0
- package/dist/chunks/cli-0.5.7-tgq7dtyz.mjs +2 -0
- package/dist/chunks/cli-0.5.7-tpjjm1z2.mjs +45 -0
- package/dist/chunks/cli-0.5.7-tqn2ged5.mjs +2 -0
- package/dist/chunks/cli-0.5.7-twqt7rxq.mjs +6 -0
- package/dist/chunks/cli-0.5.7-vgc7nzef.mjs +2 -0
- package/dist/chunks/cli-0.5.7-vk8p3n59.mjs +2 -0
- package/dist/chunks/cli-0.5.7-vn5aht50.mjs +2 -0
- package/dist/chunks/cli-0.5.7-vvrg78m6.mjs +2 -0
- package/dist/chunks/cli-0.5.7-vy4r02pg.mjs +4 -0
- package/dist/chunks/cli-0.5.7-vyxaeh82.mjs +2 -0
- package/dist/chunks/cli-0.5.7-w024nwsf.mjs +2 -0
- package/dist/chunks/cli-0.5.7-w16wj21h.mjs +2 -0
- package/dist/chunks/cli-0.5.7-w1bf9y93.mjs +3 -0
- package/dist/chunks/cli-0.5.7-w2fb8g6y.mjs +2 -0
- package/dist/chunks/cli-0.5.7-w50j12vv.mjs +2 -0
- package/dist/chunks/cli-0.5.7-w6nex68w.mjs +2 -0
- package/dist/chunks/cli-0.5.7-wz2cbwxt.mjs +4 -0
- package/dist/chunks/cli-0.5.7-x0n9mq65.mjs +2 -0
- package/dist/chunks/cli-0.5.7-x1azmh1g.mjs +2 -0
- package/dist/chunks/cli-0.5.7-x1w96j6d.mjs +59 -0
- package/dist/chunks/cli-0.5.7-x7dabprd.mjs +2 -0
- package/dist/chunks/cli-0.5.7-x8t1aeey.mjs +2 -0
- package/dist/chunks/cli-0.5.7-xepvraxn.mjs +2 -0
- package/dist/chunks/cli-0.5.7-xn6deh04.mjs +6 -0
- package/dist/chunks/cli-0.5.7-y2vc4xb6.mjs +12 -0
- package/dist/chunks/cli-0.5.7-y3pa8ttm.mjs +2 -0
- package/dist/chunks/cli-0.5.7-yaywev87.mjs +2 -0
- package/dist/chunks/cli-0.5.7-ycj2xr53.mjs +3 -0
- package/dist/chunks/cli-0.5.7-yzncgfs4.mjs +18 -0
- package/dist/chunks/cli-0.5.7-z1n09m4p.mjs +2 -0
- package/dist/chunks/cli-0.5.7-z97pranc.mjs +2 -0
- package/dist/chunks/cli-0.5.7-za19q18c.mjs +2 -0
- package/dist/chunks/cli-0.5.7-zb8ztx8p.mjs +2 -0
- package/dist/chunks/cli-0.5.7-zkw2fx86.mjs +2 -0
- package/dist/chunks/client-0.5.7-bqw74z29.mjs +1 -0
- package/dist/chunks/color-0.5.7-v1s3bvcj.mjs +1 -0
- package/dist/chunks/compact-0.5.7-7kxsprp5.mjs +3 -0
- package/dist/chunks/config-0.5.7-e41nnxnm.mjs +1 -0
- package/dist/chunks/config-0.5.7-q40ykcbb.mjs +1 -0
- package/dist/chunks/context-0.5.7-qvcehmj5.mjs +1 -0
- package/dist/chunks/context-noninteractive-0.5.7-02tkje0w.mjs +1 -0
- package/dist/chunks/conversation-0.5.7-h7r20gzw.mjs +1 -0
- package/dist/chunks/copy-0.5.7-p3xxq9b3.mjs +9 -0
- package/dist/chunks/cost-0.5.7-s3rzm0vd.mjs +1 -0
- package/dist/chunks/createSSHSession-0.5.7-s9fc5f1h.mjs +1 -0
- package/dist/chunks/createSession-0.5.7-4e64teqm.mjs +1 -0
- package/dist/chunks/debug-0.5.7-v8bqkmzm.mjs +1 -0
- package/dist/chunks/desktop-0.5.7-tna0yskx.mjs +1 -0
- package/dist/chunks/detectRepository-0.5.7-3dy7yz89.mjs +1 -0
- package/dist/chunks/detection-0.5.7-39zsjy8t.mjs +1 -0
- package/dist/chunks/diff-0.5.7-9ywmnxmx.mjs +1 -0
- package/dist/chunks/doctor-0.5.7-ty5zxpem.mjs +1 -0
- package/dist/chunks/doctorDiagnostic-0.5.7-g458bh9g.mjs +1 -0
- package/dist/chunks/earlyInput-0.5.7-x73yj3dn.mjs +1 -0
- package/dist/chunks/effort-0.5.7-h76k43fj.mjs +10 -0
- package/dist/chunks/envUtils-0.5.7-w1t7akfc.mjs +1 -0
- package/dist/chunks/environmentSelection-0.5.7-5dsnr0sv.mjs +1 -0
- package/dist/chunks/environments-0.5.7-pqh2gnjb.mjs +1 -0
- package/dist/chunks/errors-0.5.7-pa0hz043.mjs +1 -0
- package/dist/chunks/exampleCommands-0.5.7-3dtjxdad.mjs +1 -0
- package/dist/chunks/exit-0.5.7-0wrw77gk.mjs +1 -0
- package/dist/chunks/export-0.5.7-zw9rbf4j.mjs +2 -0
- package/dist/chunks/extra-usage-0.5.7-rfya84j0.mjs +1 -0
- package/dist/chunks/extra-usage-noninteractive-0.5.7-a1b9ndnm.mjs +1 -0
- package/dist/chunks/fast-0.5.7-2p6srbep.mjs +1 -0
- package/dist/chunks/feedback-0.5.7-181z18rn.mjs +14 -0
- package/dist/chunks/firstPartyEventLogger-0.5.7-xndd9dd0.mjs +1 -0
- package/dist/chunks/git-0.5.7-7gyptyxn.mjs +1 -0
- package/dist/chunks/githubModelsCredentials-0.5.7-9zhn44n6.mjs +1 -0
- package/dist/chunks/growthbook-0.5.7-1mynkk8j.mjs +1 -0
- package/dist/chunks/headless-0.5.7-9f87m6f5.mjs +2 -0
- package/dist/chunks/heapdump-0.5.7-ns6mqawv.mjs +6 -0
- package/dist/chunks/help-0.5.7-px56h6fs.mjs +1 -0
- package/dist/chunks/hookChains-0.5.7-1a6qvexe.mjs +3 -0
- package/dist/chunks/hooks-0.5.7-azm2m6rs.mjs +79 -0
- package/dist/chunks/hooks-0.5.7-fyp8e3f5.mjs +1 -0
- package/dist/chunks/ide-0.5.7-v9hbn8cp.mjs +3 -0
- package/dist/chunks/image-processor-napi-0.5.7-e41p58ef.mjs +1 -0
- package/dist/chunks/index-0.5.7-0tncgnn3.mjs +1 -0
- package/dist/chunks/index-0.5.7-30mrmtkn.mjs +1 -0
- package/dist/chunks/index-0.5.7-62s7cp1b.mjs +1 -0
- package/dist/chunks/index-0.5.7-69akvbm4.mjs +1 -0
- package/dist/chunks/index-0.5.7-6y6f5cws.mjs +1 -0
- package/dist/chunks/index-0.5.7-7w3agvzm.mjs +10 -0
- package/dist/chunks/index-0.5.7-8jwymzr6.mjs +1 -0
- package/dist/chunks/index-0.5.7-8m53gyr6.mjs +9 -0
- package/dist/chunks/index-0.5.7-ct6jw15p.mjs +2 -0
- package/dist/chunks/index-0.5.7-dr470b86.mjs +1 -0
- package/dist/chunks/index-0.5.7-e4rvp0fn.mjs +1 -0
- package/dist/chunks/index-0.5.7-fkw6rn8z.mjs +1 -0
- package/dist/chunks/index-0.5.7-h1xjcbtb.mjs +1 -0
- package/dist/chunks/index-0.5.7-ma3xmxv3.mjs +2 -0
- package/dist/chunks/index-0.5.7-qn7zmh31.mjs +9 -0
- package/dist/chunks/index-0.5.7-rd44m0e6.mjs +30 -0
- package/dist/chunks/index-0.5.7-te1s21zz.mjs +5 -0
- package/dist/chunks/index-0.5.7-vm9zmzmr.mjs +1 -0
- package/dist/chunks/index-0.5.7-wpffxvtn.mjs +1 -0
- package/dist/chunks/index-0.5.7-wwfn7x53.mjs +1 -0
- package/dist/chunks/index-0.5.7-ybcvbcjt.mjs +1 -0
- package/dist/chunks/index-0.5.7-yw3tp60c.mjs +1 -0
- package/dist/chunks/initReplBridge-0.5.7-xpy8ap8n.mjs +1 -0
- package/dist/chunks/ink-0.5.7-dwmx157s.mjs +1 -0
- package/dist/chunks/insights-0.5.7-5fpd27dr.mjs +870 -0
- package/dist/chunks/install-0.5.7-6sc73ew8.mjs +1 -0
- package/dist/chunks/install-github-app-0.5.7-jcyktynf.mjs +149 -0
- package/dist/chunks/install-slack-app-0.5.7-mk4a14ww.mjs +1 -0
- package/dist/chunks/instrumentation-0.5.7-116w6tf4.mjs +1 -0
- package/dist/chunks/interactiveHelpers-0.5.7-zbfkwcsb.mjs +1 -0
- package/dist/chunks/keybindings-0.5.7-k2s0bryc.mjs +2 -0
- package/dist/chunks/knowledge-0.5.7-55b2ckth.mjs +2 -0
- package/dist/chunks/latestVersionCache-0.5.7-k9pyxzrk.mjs +1 -0
- package/dist/chunks/loadAgentsDir-0.5.7-9bmbg04z.mjs +1 -0
- package/dist/chunks/loadPluginHooks-0.5.7-bcdwwerp.mjs +1 -0
- package/dist/chunks/loadPluginHooks-0.5.7-mdt3yvfc.mjs +1 -0
- package/dist/chunks/log-0.5.7-wcft0eyv.mjs +1 -0
- package/dist/chunks/main-0.5.7-9sxhszx9.mjs +1236 -0
- package/dist/chunks/managedEnv-0.5.7-k4gyyt60.mjs +1 -0
- package/dist/chunks/mcp-0.5.7-9z74evcf.mjs +1 -0
- package/dist/chunks/mcp-0.5.7-djz3mjw4.mjs +4 -0
- package/dist/chunks/mcp-0.5.7-n62qd49c.mjs +17 -0
- package/dist/chunks/mcpb-0.5.7-bqt73vjr.mjs +1 -0
- package/dist/chunks/memory-0.5.7-chxjrvf2.mjs +3 -0
- package/dist/chunks/mobile-0.5.7-y0cn32br.mjs +2 -0
- package/dist/chunks/model-0.5.7-7mt2xn7w.mjs +1 -0
- package/dist/chunks/model-0.5.7-fdhr0cwa.mjs +2 -0
- package/dist/chunks/oauth-0.5.7-xf0qbv6v.mjs +1 -0
- package/dist/chunks/openaiShim-0.5.7-0cejk3sb.mjs +14 -0
- package/dist/chunks/output-style-0.5.7-t5qc5jxe.mjs +1 -0
- package/dist/chunks/package-APBHZ5F3-0.5.7-7bp8s9sg.mjs +1 -0
- package/dist/chunks/parseConnectUrl-0.5.7-903apk0t.mjs +1 -0
- package/dist/chunks/parser-0.5.7-jnq01hth.mjs +1 -0
- package/dist/chunks/passes-0.5.7-nk3fgxyh.mjs +1 -0
- package/dist/chunks/permissions-0.5.7-q7whkp76.mjs +3 -0
- package/dist/chunks/plan-0.5.7-w5hgy3s7.mjs +1 -0
- package/dist/chunks/plist-0.5.7-jwz5qjtz.mjs +1 -0
- package/dist/chunks/plugin-0.5.7-x7xcey6d.mjs +29 -0
- package/dist/chunks/pluginStartupCheck-0.5.7-gy2e0dge.mjs +1 -0
- package/dist/chunks/plugins-0.5.7-2ehzph1a.mjs +9 -0
- package/dist/chunks/print-0.5.7-mjx6j0dk.mjs +57 -0
- package/dist/chunks/privacy-settings-0.5.7-rkmc34t8.mjs +1 -0
- package/dist/chunks/process-0.5.7-8c0qwpv6.mjs +1 -0
- package/dist/chunks/processBashCommand-0.5.7-czwzjsj9.mjs +1 -0
- package/dist/chunks/processSlashCommand-0.5.7-512rz16m.mjs +9 -0
- package/dist/chunks/prompt-0.5.7-r8ewyzer.mjs +1 -0
- package/dist/chunks/prompt-0.5.7-z98k679g.mjs +1 -0
- package/dist/chunks/prompts-0.5.7-g8mh8as5.mjs +1 -0
- package/dist/chunks/protocolHandler-0.5.7-p86as7s6.mjs +13 -0
- package/dist/chunks/provider-0.5.7-x4t1g0nh.mjs +2 -0
- package/dist/chunks/providerProfiles-0.5.7-dz70g8ys.mjs +1 -0
- package/dist/chunks/rate-limit-options-0.5.7-n282sweb.mjs +1 -0
- package/dist/chunks/registry-0.5.7-h8q8eay6.mjs +1 -0
- package/dist/chunks/release-notes-0.5.7-2h20frk0.mjs +5 -0
- package/dist/chunks/reload-plugins-0.5.7-z50apk74.mjs +2 -0
- package/dist/chunks/remote-env-0.5.7-08abe77m.mjs +1 -0
- package/dist/chunks/remoteBridgeCore-0.5.7-jdasqn18.mjs +1 -0
- package/dist/chunks/remoteSession-0.5.7-nq05jhdv.mjs +1 -0
- package/dist/chunks/rename-0.5.7-812j1w4d.mjs +1 -0
- package/dist/chunks/replBridgeHandle-0.5.7-aa3cp3ea.mjs +1 -0
- package/dist/chunks/resume-0.5.7-weq0rn3m.mjs +2 -0
- package/dist/chunks/rewind-0.5.7-y54y78kx.mjs +1 -0
- package/dist/chunks/sandbox-adapter-0.5.7-tb5qenm4.mjs +1 -0
- package/dist/chunks/sandbox-toggle-0.5.7-nxcpekeq.mjs +1 -0
- package/dist/chunks/session-0.5.7-ky2s0856.mjs +2 -0
- package/dist/chunks/sessionDiscovery-0.5.7-wr82xcxs.mjs +1 -0
- package/dist/chunks/sessionFileAccessHooks-0.5.7-0j8f4we0.mjs +1 -0
- package/dist/chunks/sessionStorage-0.5.7-qghsxmr2.mjs +1 -0
- package/dist/chunks/settings-0.5.7-xa4hccmb.mjs +1 -0
- package/dist/chunks/setup-0.5.7-s4yfpbyd.mjs +5 -0
- package/dist/chunks/sinks-0.5.7-feq030bq.mjs +1 -0
- package/dist/chunks/skills-0.5.7-h2r9d209.mjs +1 -0
- package/dist/chunks/startupProfiler-0.5.7-f44bsnqn.mjs +1 -0
- package/dist/chunks/startupUpdateCheck-0.5.7-7ff14fag.mjs +1 -0
- package/dist/chunks/state-0.5.7-cwk8b4cx.mjs +1 -0
- package/dist/chunks/stats-0.5.7-wd077xj7.mjs +6 -0
- package/dist/chunks/status-0.5.7-5qy7pnk9.mjs +1 -0
- package/dist/chunks/stickers-0.5.7-7s145w6d.mjs +1 -0
- package/dist/chunks/subprocessEnv-0.5.7-5dv3w3xn.mjs +1 -0
- package/dist/chunks/tasks-0.5.7-q79z0h3e.mjs +1 -0
- package/dist/chunks/teamHelpers-0.5.7-b8qf5f0d.mjs +1 -0
- package/dist/chunks/teammateModeSnapshot-0.5.7-kvmjwag8.mjs +1 -0
- package/dist/chunks/teleport-0.5.7-x740q45r.mjs +1 -0
- package/dist/chunks/terminalSetup-0.5.7-z8ytqt6q.mjs +1 -0
- package/dist/chunks/theme-0.5.7-9asaqpc9.mjs +1 -0
- package/dist/chunks/thinkback-0.5.7-6bzqdm8h.mjs +1 -0
- package/dist/chunks/thinkback-play-0.5.7-5m54zaez.mjs +1 -0
- package/dist/chunks/toolPool-0.5.7-5rd6jp71.mjs +1 -0
- package/dist/chunks/toolSearch-0.5.7-wgqasfmq.mjs +1 -0
- package/dist/chunks/trustedDevice-0.5.7-5qbzragc.mjs +1 -0
- package/dist/chunks/turndown.cjs-0.5.7-3fjybn8j.mjs +69 -0
- package/dist/chunks/ultrareviewCommand-0.5.7-98p7mn4r.mjs +4 -0
- package/dist/chunks/update-0.5.7-2jgnt5gj.mjs +86 -0
- package/dist/chunks/upgrade-0.5.7-1fa84f4g.mjs +1 -0
- package/dist/chunks/upstreamproxy-0.5.7-1p7vn612.mjs +14 -0
- package/dist/chunks/url-handler-napi-0.5.7-312p1719.mjs +1 -0
- package/dist/chunks/usage-0.5.7-qrsabcka.mjs +1 -0
- package/dist/chunks/util-0.5.7-tpzcah5j.mjs +1 -0
- package/dist/chunks/utils-0.5.7-8a2ekyr5.mjs +1 -0
- package/dist/chunks/vim-0.5.7-w4e8vpjf.mjs +1 -0
- package/dist/chunks/watcher-0.5.7-cj50b60x.mjs +1 -0
- package/dist/chunks/wiki-0.5.7-ccjdtg8v.mjs +132 -0
- package/dist/chunks/worktree-0.5.7-g8wrf9zf.mjs +1 -0
- package/dist/chunks/worktreeModeEnabled-0.5.7-w4jdaq8p.mjs +1 -0
- package/dist/chunks/wrapper-0.5.7-8k82xd0n.mjs +7 -0
- package/dist/claudin-vscode.vsix +0 -0
- package/dist/cli.mjs +7 -0
- package/package.json +141 -0
- package/scripts/v8cache-gc.mjs +84 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import{Ba as Vu,Ca as Ty,Ea as Wu,ma as Fb,na as X6,oa as sq,qa as EA,ra as J_,sa as PA,xa as Pj,ya as wj,za as Iy}from"./cli-0.5.7-9rbmn26q.mjs";import{Fa as q_,Ia as v_,Ja as vj}from"./cli-0.5.7-67xxeffj.mjs";import{Ka as bU,La as IU,Ma as TU,Na as vU,Oa as CU}from"./cli-0.5.7-j7h72bgz.mjs";import{Qa as Pb}from"./cli-0.5.7-esx85d2g.mjs";import{Wa as H_}from"./cli-0.5.7-b51h487f.mjs";import{$a as Ab,Ya as GR,Za as KR,_a as _b,ab as QR,bb as Ay}from"./cli-0.5.7-bkptgahs.mjs";import{cb as fA}from"./cli-0.5.7-vn5aht50.mjs";import{gb as Pw}from"./cli-0.5.7-500c5b8m.mjs";import{ib as wb}from"./cli-0.5.7-a47hzz3r.mjs";import{mb as Eb,nb as X_}from"./cli-0.5.7-82x8qaxx.mjs";import{xb as Lb}from"./cli-0.5.7-j8q5bja8.mjs";import{yb as Sq}from"./cli-0.5.7-tgq7dtyz.mjs";import{Ab as eD,Bb as WT}from"./cli-0.5.7-7rgsmfw7.mjs";import{Cb as Bb,Db as du}from"./cli-0.5.7-k11mzgcb.mjs";import{Qb as qb,Rb as pu}from"./cli-0.5.7-8ac9d7r6.mjs";import{Ub as Hb,Vb as uu}from"./cli-0.5.7-9ysat94v.mjs";import{Yb as RX,Zb as xK}from"./cli-0.5.7-t6mtpr04.mjs";import{gc as Dj,jc as Ec}from"./cli-0.5.7-x0n9mq65.mjs";import{rc as Ej,sc as _c}from"./cli-0.5.7-x7dabprd.mjs";import{Uc as HA,Wc as Sg}from"./cli-0.5.7-sx7pr75m.mjs";import{$c as Wg,_c as n3,ad as Z_,cd as Hg}from"./cli-0.5.7-z97pranc.mjs";import{Fd as O8,Gd as tY,Hd as tw,Id as Z7,Jd as XL,Kd as uC,Ld as ew,Md as Vg}from"./cli-0.5.7-650e2qk4.mjs";import{Sd as K_,Wd as Og}from"./cli-0.5.7-q8v8naf8.mjs";import{le as JL,me as cC}from"./cli-0.5.7-5kv9dgvn.mjs";import{oe as B1,pe as W_}from"./cli-0.5.7-sjd6g3n6.mjs";import{Ae as Wb,Be as TQ,Ce as kD,De as vQ,Ee as bD,we as Vw,xe as sw,ye as Ww,ze as Vb}from"./cli-0.5.7-q6sgd9ng.mjs";import{Ne as vg,Qe as Qb,Re as cu}from"./cli-0.5.7-5q6tfz39.mjs";import{Ze as Tg}from"./cli-0.5.7-wz2cbwxt.mjs";import{$e as Sf,_e as V2}from"./cli-0.5.7-9jck3vts.mjs";import{nf as Kb,of as mu}from"./cli-0.5.7-zkw2fx86.mjs";import{pf as jN,qf as Lv}from"./cli-0.5.7-ra5kv4tw.mjs";import{Af as px,wf as nX,xf as ow,yf as FQ,zf as Qw}from"./cli-0.5.7-4zv4np07.mjs";import{Bf as i7,Cf as e8,Df as m9,Ef as YL,Ff as Z9,Gf as Z5}from"./cli-0.5.7-08mn1pmc.mjs";import{Jf as SV,Kf as C2}from"./cli-0.5.7-jf3f8gen.mjs";import{Pf as c3,Uf as Kw}from"./cli-0.5.7-za19q18c.mjs";import{$f as o3,Zf as iw,_f as u1,ag as aw,bg as Gg,cg as nw,dg as Kg}from"./cli-0.5.7-knkzkqbw.mjs";import{gg as j2,hg as Wh,ig as yQ,jg as MD}from"./cli-0.5.7-31hdc2nc.mjs";import{ug as rw,wg as zg}from"./cli-0.5.7-0bv1xcbe.mjs";import{Dg as lE,Fg as rE,Gg as iE,Hg as DV,Ig as LV,Jg as H3}from"./cli-0.5.7-t8z48kc2.mjs";import{Rg as uE,Sg as pE,Tg as dE,Ug as Mf}from"./cli-0.5.7-y3pa8ttm.mjs";import{Vg as Gw,Xg as ux}from"./cli-0.5.7-eyemfxtz.mjs";import{$g as OA,Yg as kk,Zg as R6,_g as y1}from"./cli-0.5.7-cakvh73p.mjs";import{$C as g2,$E as q5,$L as s8,$h as Y6,$j as DU,$l as UJ,$q as j1,$r as P8,$v as j_,$y as Sk,$z as yO,AD as Vh,AG as xu,AI as oR,AL as a3,AN as BY,Ai as w5,Ap as Sw,Aq as JD,As as _u,At as OQ,Au as RS,Aw as Ey,BD as mY,BG as z5,BK as BW,BL as Qg,Bh as fU,Bk as zk,Bp as q8,Bq as NI,Bs as pq,Bu as TM,CD as GD,CG as GN,CK as PN,Ci as nO,Cs as Au,Cu as Zm,DB as ck,DD as tz,DG as wY,DO as yU,DP as i_,Di as hC,Dn as WH,EB as hw,ED as DX,EG as ZL,EK as EO,EM as SF,EP as gP,Eh as ly,Ei as GO,En as PS,Ep as BF,Eq as ef,Ew as ic,Ex as pB,FB as xw,FD as nU,FG as $W,FK as wN,FM as bV,FO as Ob,Fi as KO,Fq as cq,Ft as _k,Fx as KI,GB as uk,GG as HH,GK as kO,GM as hP,GP as _W,Gh as KH,Gi as QO,Gt as Ak,Gx as gQ,HB as vu,HC as cw,HD as qZ,HG as bS,HK as EC,HN as oq,Hi as QC,Hp as Oy,Hq as Eu,Ht as Mk,Hx as lD,IC as uw,ID as LX,II as F6,IL as ZU,IN as hU,Ii as IM,Il as MT,Ir as k_,Ix as yk,JC as Jg,JD as eX,JI as Fj,JL as HT,JM as xH,Ji as eg,Js as bR,Jt as Mu,Jv as dA,Jx as yu,Jy as RO,KC as CF,KD as B7,KE as p8,KG as eA,KH as tM,KM as _F,Kq as Lk,Kr as Ig,Ks as IR,Kt as yA,Kv as F8,Kx as U7,Ky as jO,Kz as FU,LA as EU,LC as JZ,LD as IW,LE as qW,LF as aQ,LM as a5,LP as PR,Lj as Zk,Lq as Pu,Lt as mg,Lv as lA,Lx as N7,Ly as VA,MC as dZ,MD as jZ,MG as Yb,MH as Cm,MI as yq,MK as A1,ML as GY,MM as AF,Mj as Yk,Mv as b_,My as WA,NC as RP,ND as cY,NE as AV,NG as Jb,NH as i1,NI as um,NL as J6,NM as MF,Nv as S1,Ny as bk,OA as PT,OC as Hx,OD as IQ,OE as G2,OF as wU,OG as ZM,OH as B6,OK as ZA,OM as YM,OO as aE,OP as eZ,On as jy,Oo as Qk,Op as OM,Os as am,Ov as Gq,Ow as $Q,Oy as l_,PC as ik,PD as yD,PE as K2,PF as U4,PG as v5,PH as Sm,PK as kK,PL as zq,PM as JM,PP as u8,Pi as OW,Pj as J5,Pl as nJ,Po as Vk,Pp as Ly,Pr as Pk,Pv as Kq,Pw as fD,Px as SW,Py as e_,QC as LJ,QE as Q2,QF as hu,QG as GH,QH as eM,QK as v2,QL as SA,QM as dg,Qi as VT,Qj as zH,Qk as Uu,Ql as NA,Qo as Wk,Qq as Dq,Qr as CV,Qv as Qq,Qx as $5,Qy as vK,RB as gw,RC as TJ,RE as RW,RG as wV,RH as $m,RL as $A,RM as qH,Rj as qU,Ro as Hk,Rq as VM,Rr as T2,Rv as _3,Rx as WL,Ry as Ik,SC as mK,SE as sk,SH as ZR,SM as IS,Sj as BU,So as qk,Sq as rg,Sr as yN,Sv as rA,Sx as _L,Sy as sA,TE as $u,TH as L6,TK as Xb,TM as f1,Tj as lQ,Tk as B4,Tl as dN,To as Bk,Tp as Fy,Tq as Zj,Tr as kv,Tv as Vq,Tx as KS,Ty as Tk,UB as mw,UE as tk,UH as Lj,UK as zb,UL as Db,UM as gY,Uj as gZ,Uk as D4,Ul as av,Un as Gu,Uo as Fu,Up as LM,Uq as Yj,Ur as uq,Uv as Wq,Ux as c5,Uy as vk,VA as hk,VB as Yg,VC as J1,VE as fu,VG as jR,Vj as dJ,Vk as Nu,Vl as MY,Vq as Jj,Vr as wu,Vt as t,Vv as iA,Vw as tO,Vx as ML,Vy as Ck,Vz as hH,WA as bu,WC as dw,WE as Yw,WG as DR,WH as Ez,WK as JO,Wl as J7,Wn as $q,Wp as m1,Wq as kq,Wr as $w,Ws as OU,Wt as n0,Wv as Hq,Ww as _5,Wy as MW,XC as lw,XE as ek,XF as p5,XG as UR,XK as VO,Xh as uQ,Xk as LG,Xl as FZ,Xp as FM,Xq as Dc,Xr as gC,Xs as LU,Xt as pZ,Xv as R3,Xw as TK,Xy as XA,Xz as Q$,YC as w8,YE as Jw,YF as hL,YG as k7,YH as YR,YK as L5,YL as Y_,YM as aq,Yh as ry,Yk as Oq,Yl as l8,Yp as EM,Yr as sO,Yt as YZ,Yv as qq,Yw as _O,Yy as M1,Yz as lF,ZC as k1,ZG as _V,ZH as Aj,ZL as OE,Zh as HU,Zj as xq,Zl as DJ,Zp as H7,Zt as K8,Zv as I_,Zw as AO,Zy as zA,_C as mH,_H as JR,_L as LE,_M as z8,_i as iK,_j as LK,_l as NK,_n as Ku,_p as jW,_q as HG,_s as iQ,_t as PK,_v as gV,_w as MO,_y as $1,_z as N$,aA as UO,aD as ZV,aF as TN,aI as gR,aN as by,ai as ay,aj as O9,ak as UU,am as fQ,ar as Fk,as as CJ,at as E2,aw as W4,ay as U9,az as $k,bA as NO,bD as nk,bH as NR,bI as dR,bN as nq,bi as U1,bj as o7,bk as IJ,bo as M6,bs as BV,bt as O_,bw as ky,by as Z1,bz as oD,cB as xk,cC as pk,cD as ok,cL as Gb,cN as aM,cO as xU,cP as nE,co as Lu,ct as FK,cu as x5,cv as vX,cw as lq,cy as uP,cz as mQ,dB as Iu,dC as iq,dD as B9,dL as gu,dM as N4,dN as Ub,dP as _T,di as N1,dk as A7,dm as BJ,do as oO,dr as Ek,ds as c7,dt as CN,du as UL,dv as eK,dw as XG,dy as pP,eA as iJ,eC as Cu,eF as e7,eN as O4,eP as o8,ej as n8,ek as p9,em as QK,eo as xC,er as FR,et as SN,eu as $N,ev as JG,ew as DI,ex as rq,ey as Ox,fA as iW,fC as g7,fF as MV,fI as D6,fO as Nb,fP as kU,fk as J8,fm as Gk,fp as kj,fq as yy,fr as NU,ft as iN,fu as dv,fv as K1,fw as XK,fx as ju,fy as xA,fz as mV,gA as bL,gB as Z6,gC as dk,gH as g9,gN as t7,gi as x_,gk as P1,gm as Ou,go as pQ,gp as bj,gq as Qu,gr as rQ,gt as Q9,gu as oQ,gv as l3,gw as JA,gx as sQ,gy as cg,hA as IL,hB as r_,hC as uH,hP as xP,hk as p_,hm as fj,ho as dQ,hq as HQ,ht as U5,hu as BO,hv as mN,hw as aA,hx as dU,iA as NS,iC as j6,iE as cM,iF as aB,iG as fK,ik as LW,im as sN,ip as SP,iq as qQ,iu as kW,iv as cN,ix as eO,iy as dB,jA as SL,jC as q2,jF as nB,jG as mL,jO as AU,jk as d_,jq as Nk,jr as Xj,ju as T7,jv as aN,jw as Bq,jy as QI,jz as cV,kA as ES,kC as lk,kF as aD,kH as fP,kM as lu,kO as MU,kk as a8,km as h1,kq as mq,kr as zj,ku as NL,kv as nN,kw as Rk,kx as mC,ky as dP,kz as dK,lA as TL,lB as gk,lC as rk,lD as WP,lF as oB,lL as lM,lN as W6,li as wq,ln as oM,lp as $P,lq as NQ,lr as Gj,lt as FO,lu as aU,lv as uN,lw as nA,lx as wF,ly as Lx,lz as Rw,mA as OS,mB as Tu,mD as y3,mI as mR,mN as gK,mi as qy,mn as sM,mo as X5,mq as WG,mr as Uc,mt as OC,mu as CT,mw as oA,mx as z$,nA as v7,nC as XD,nD as HP,nH as Dx,nK as pW,nO as zL,ni as fq,nk as gq,nm as hj,nn as vm,nq as ez,nu as fN,nw as Jq,nz as ZG,oC as zD,oD as Wz,oi as K7,ok as Jk,om as lN,oq as _A,ou as hN,pA as $L,pB as Xq,pC as LQ,pD as dV,pE as Mm,pN as lB,pi as hq,po as zN,pq as AA,pu as xN,px as o5,qB as CX,qD as AP,qG as yS,qI as Zc,qn as VH,qq as MA,qu as gN,qx as TF,rB as mk,rD as Wx,rF as PU,rG as kS,rk as Xk,rn as FS,rq as Ok,ru as lv,rw as fH,sB as FA,sD as H5,si as g_,sk as Du,sn as I1,sq as YD,su as g5,sy as G3,sz as aK,tC as Q6,tD as IN,tF as wT,tO as a9,ti as m_,tn as bA,tp as dF,tq as S9,tu as FL,tw as X$,tx as VG,ty as zf,tz as LA,uD as jP,uL as ym,uN as rB,uh as I2,ui as c_,um as rN,up as e9,uq as uB,uw as jk,ux as _1,uz as xg,vD as qx,vI as nR,vK as M_,vL as Fq,vO as RU,vi as u_,vm as t8,vp as U$,vq as q1,vx as t_,vz as DY,wA as aL,wC as yM,wD as fx,wO as jU,wm as kJ,wp as mE,ww as Ru,wx as Nz,wz as r5,xA as jS,xD as r8,xL as Km,xh as Nh,xm as Kk,xn as $Z,xp as cE,xq as RJ,xs as FT,xu as rL,xx as Yq,xy as oJ,xz as fk,yD as hQ,yK as dM,ym as zM,yn as G8,yp as Af,ys as ET,yu as MS,yx as vF,yy as Lq,zD as R2,zG as Zb,zI as Kj,zK as hD,zN as D1,zi as H8,zj as cQ,zm as bJ,zp as i3,zt as m8,zu as iL,zx as K$,zz as ku}from"./cli-0.5.7-q2e6xpch.mjs";import{$Q as e2,XQ as t2,_Q as xV,aR as a2,bR as Sh,hR as n7,kR as tA,nR as ZP,pR as uV,qR as fw,rR as YP,sR as E1,xR as Kz}from"./cli-0.5.7-93k1z52y.mjs";import{$R as RT,UR as _U,XR as EW}from"./cli-0.5.7-h9v4tqbs.mjs";import{cS as YG,eS as d3,gS as T_,iS as Z8,jS as i8,kS as IX,lS as FX,mS as pA,nS as BG,sS as Y8}from"./cli-0.5.7-vyxaeh82.mjs";import{AS as pF,BS as D$}from"./cli-0.5.7-73er78b7.mjs";import{$S as LH,WS as BH,XS as DH,YS as UH,ZS as NH,_S as OH,aT as FH,bT as EH,cT as PH,dT as wH,eT as _H,fT as AH,gT as MH,hT as RH,iT as jH,jT as yH,kT as kH,lT as bH,mT as vH,nT as tL,qT as C7,rT as KF}from"./cli-0.5.7-sb3fjts4.mjs";import{AT as d2,xT as H1,yT as Cw,zT as fV}from"./cli-0.5.7-yaywev87.mjs";import{JT as ak,KT as Su,NT as pw,UT as Xg}from"./cli-0.5.7-7mmyazqh.mjs";import{mU as N2,pU as Dk,qU as Uk,rU as O2,tU as dq,vU as wk,wU as L2,yU as F2}from"./cli-0.5.7-tbga87q3.mjs";import{AU as PY,KU as sz,LU as gE,MU as GW,NU as KZ,OU as uZ,PU as YY,VU as Q8,WU as bW,XU as P7,YU as dW,zU as PZ}from"./cli-0.5.7-7a9gq9ff.mjs";import{AV as SZ,AW as cH,CW as wD,DV as KW,DW as G7,EW as MQ,FW as c8,HW as PQ,IV as _Z,IW as wK,JV as bQ,KV as TH,KW as M,LV as sy,MV as x8,MW as O,NW as tU,QW as X7,SW as wX,UV as pU,VV as yT,VW as h5,WV as x2,WW as _y,XV as Mh,ZU as aX,_U as JK,bX as s7,cV as ND,cX as N3,dV as OD,dW as vV,dX as PV,eV as LD,eW as Qh,eX as lZ,fV as FD,gV as cI,gW as zK,hX as _Q,iW as ty,iX as Zw,jW as QW,jX as UD,kV as BD,kW as o_,kX as ey,lV as iy,lW as _q,lX as mB,mW as iM,nW as s_,oW as qX,pW as B$,pX as N0,qV as DD,rV as v0,tW as ED,uV as fB,uW as uI,vV as zI,wV as ny,xW as PD,yW as pI,zW as x7}from"./cli-0.5.7-x1w96j6d.mjs";import{sX as oy,wX as Bu}from"./cli-0.5.7-9z55nm22.mjs";import{hY as Cq,lY as Ny}from"./cli-0.5.7-kp9pg4sr.mjs";import{rY as FN,uY as EN,vY as Hv}from"./cli-0.5.7-6d26vvaa.mjs";import{BY as s2,EY as M3,wY as A3,xY as G1}from"./cli-0.5.7-e8eqdfnf.mjs";import{FY as FV,IY as o2,KY as hV,MY as EV}from"./cli-0.5.7-9acdh8nc.mjs";import{OY as A0,PY as B,QY as E,RY as c}from"./cli-0.5.7-vgc7nzef.mjs";import{SY as Q0}from"./cli-0.5.7-8sbq2qed.mjs";import{kZ as Q_,lZ as V_}from"./cli-0.5.7-m5q27x96.mjs";import{nZ as DW,oZ as ZT}from"./cli-0.5.7-6pssgqdn.mjs";import{A2 as hK,B3 as s9,E2 as e3,F1 as Tw,F2 as bF,I0 as TX,I1 as IV,IZ as CQ,J0 as V1,J2 as IF,K0 as kw,K1 as NG,K2 as A_,KZ as U2,L1 as UA,N1 as vw,NZ as TD,O0 as r3,P0 as sj,Q0 as tj,R1 as _X,RZ as L1,SZ as yj,TZ as t3,V0 as ej,X0 as bw,XZ as uj,Z0 as Zy,ZZ as Tc,a1 as Iw,a2 as I5,c2 as T5,e2 as aO,g3 as QG,m3 as n5,n3 as DM,o3 as UM,p1 as pM,r3 as NM,s1 as K9,t0 as Iq,u0 as Ac,x1 as b5}from"./cli-0.5.7-8ychjqct.mjs";import{X3 as d0,Y3 as D7}from"./cli-0.5.7-xn6deh04.mjs";import{$$ as tg,$9 as lK,$_ as u5,B6 as u0,B7 as rO,C_ as em,Daa as _2,E$ as aR,Eaa as HZ,F8 as XH,G$ as c1,Haa as l0,J$ as jM,J6 as rZ,K$ as k5,K6 as R0,L6 as TY,M7 as ZH,O7 as tX,P$ as W1,P7 as jQ,P9 as X2,Q9 as z2,R6 as CK,R9 as xQ,S8 as $C,T$ as n9,T6 as uO,U$ as bM,V7 as V9,V8 as wL,V_ as Y9,W_ as TW,X7 as YO,X9 as b7,Xba as Tq,Y9 as Qz,Z7 as cW,Z9 as _K,Z_ as NX,_8 as GS,_9 as eP,__ as gW,_aa as bZ,a$ as fM,a_ as rK,aca as Uy,c9 as RN,c_ as AK,e$ as QL,f$ as d8,f7 as ON,fba as A2,g7 as Vv,g8 as DO,hca as rc,i8 as yK,i9 as Ov,j7 as SR,j8 as uW,k6 as Oj,kca as kV,l7 as tm,m6 as wc,nca as D2,o_ as xR,p7 as pO,q8 as f5,r8 as jJ,t8 as oz,u7 as R7,v7 as dO,vba as Gh,w9 as aZ,x9 as LO,y9 as z9,yaa as eV,z9 as OK}from"./cli-0.5.7-469r2a5r.mjs";import{Gca as WZ,Ica as Q7,Jca as EX,Kca as EK}from"./cli-0.5.7-mzfr99sc.mjs";import{$ca as UX,Nca as yw,Oca as Zg,Pca as IZ,Qca as PX,Rca as r7,Sca as CY,Zca as h7,_ca as L3,bda as h2,cda as xE,fda as vY}from"./cli-0.5.7-5mrw857q.mjs";import{qda as VP,rda as k3,sda as Vz,wda as j3}from"./cli-0.5.7-c9dtw94k.mjs";import{Ada as fC}from"./cli-0.5.7-0s7wtvbz.mjs";import{Bda as CA,Kda as YJ,Mda as CM,Uda as AM,Wda as qJ}from"./cli-0.5.7-35yf0b84.mjs";import{$da as uy,Cea as XW,Zda as mZ,_da as HJ,aea as py,cea as dy,fea as A6,kea as e4,pea as ZW,qea as YW,wea as K6}from"./cli-0.5.7-sjx0wm99.mjs";import{Mea as kg}from"./cli-0.5.7-xepvraxn.mjs";import{Nea as Z0,Pea as DZ}from"./cli-0.5.7-26pwg6gg.mjs";import{Bfa as w7,Ffa as rW,Pfa as g,Sfa as BZ,cfa as zW,efa as tB,sfa as iZ,tfa as h8,xfa as uJ,yfa as qO}from"./cli-0.5.7-twqt7rxq.mjs";import{$fa as ZO,cga as nZ,dga as A5,mga as rJ}from"./cli-0.5.7-tqn2ged5.mjs";import{Fga as L8,Gga as lJ,Iga as l9,Nga as yJ,oga as R1,vga as KA,yga as QA}from"./cli-0.5.7-skfm51ta.mjs";import{$ia as SQ,Gja as y5,Iia as u7,Ila as CP,Jia as bP,Jja as WU,Kia as IP,Kla as UZ,Qia as hy,Tia as xy,Xia as gy,cja as TP,dja as vP,eja as yX,eka as __,ela as iO,fja as yV,gla as y7,ila as $K,ima as AZ,jja as my,jla as IO,kja as _6,lja as q4,lla as JH,mja as cy,nia as nQ,nla as rR,oia as $U,ola as iR,ria as sY,uia as VU,wja as z7,xia as QY,yia as fy,yja as kR}from"./cli-0.5.7-hp25yk8y.mjs";import{Vma as x,Wma as pJ,Yma as pL,Zma as c9,_ma as FW}from"./cli-0.5.7-258ytmbr.mjs";function xT(Y,Z){if(!Y)return null;if(Y.type==="classifier"){if(Y.classifier==="auto-mode")return{reasonString:`Auto mode classifier requires confirmation for this ${Z}.
|
|
2
|
+
${Y.reason}`,configString:void 0,themeColor:"error"};return{reasonString:`Classifier ${d0.bold(Y.classifier)} requires confirmation for this ${Z}.
|
|
3
|
+
${Y.reason}`,configString:void 0}}switch(Y.type){case"rule":return{reasonString:`Permission rule ${d0.bold(Y9(Y.rule.ruleValue))} requires confirmation for this ${Z}.`,configString:Y.rule.source==="policySettings"?void 0:"/permissions to update rules"};case"hook":{let J=Y.reason?`:
|
|
4
|
+
${Y.reason}`:".",X=Y.hookSource?` ${d0.dim(`[${Y.hookSource}]`)}`:"";return{reasonString:`Hook ${d0.bold(Y.hookName)} requires confirmation for this ${Z}${J}${X}`,configString:"/hooks to update"}}case"safetyCheck":case"other":return{reasonString:Y.reason,configString:void 0};case"workingDir":return{reasonString:Y.reason,configString:"/permissions to update rules"};default:return null}}function SY(Y){let Z=eU.c(11),{permissionResult:J,toolType:X}=Y,z=t(gT),G=J?.decisionReason,K;if(Z[0]!==G||Z[1]!==X)K=xT(G,X),Z[0]=G,Z[1]=X,Z[2]=K;else K=Z[2];let Q=K;if(!Q)return null;let V=Q.themeColor??(J?.decisionReason?.type==="hook"&&z==="auto"?"warning":void 0),H;if(Z[3]!==Q.reasonString||Z[4]!==V)H=V?B(O,{color:V,children:Q.reasonString}):B(O,{children:B(wX,{children:Q.reasonString})}),Z[3]=Q.reasonString,Z[4]=V,Z[5]=H;else H=Z[5];let W;if(Z[6]!==Q.configString)W=Q.configString&&B(O,{dimColor:!0,children:Q.configString}),Z[6]=Q.configString,Z[7]=W;else W=Z[7];let D;if(Z[8]!==H||Z[9]!==W)D=E(M,{marginBottom:1,flexDirection:"column",children:[H,W]}),Z[8]=H,Z[9]=W,Z[10]=D;else D=Z[10];return D}function gT(Y){return Y.toolPermissionContext.mode}var eU;var V8=c9(()=>{D7();N0();YZ();TW();tU();c();eU=x(v0(),1)});async function jY(Y){Z0("tengu_unary_event",{event:Y.event,completion_type:Y.completion_type,language_name:await Y.metadata.language_name,message_id:Y.metadata.message_id,platform:Y.metadata.platform,...Y.metadata.hasFeedback!==void 0&&{hasFeedback:Y.metadata.hasFeedback}})}var F7=c9(()=>{DZ()});function ZJ(Y,Z){let J=n0(),X=V5.useRef(null);V5.useEffect(()=>{if(X.current===Y.toolUseID)return;X.current=Y.toolUseID,J((z)=>({...z,attribution:{...z.attribution,permissionPromptCount:z.attribution.permissionPromptCount+1}})),Z0("tengu_tool_use_show_permission_request",{messageID:Y.assistantMessage.message.id,toolName:gZ(Y.tool.name),isMcp:Y.tool.isMcp??!1,decisionReasonType:Y.permissionResult.decisionReason?.type,sandboxEnabled:eZ.isSandboxingEnabled()}),jY({completion_type:Z.completion_type,event:"response",metadata:{language_name:Z.language_name,message_id:Y.assistantMessage.message.id,platform:aZ.platform}})},[Y,Z,J])}var V5;var G9=c9(()=>{DZ();dJ();a8();TW();u8();YZ();z9();uJ();F7();V5=x(Q0(),1)});function VY(Y,{assistantMessage:{message:{id:Z}}},J,X){jY({completion_type:Y,event:J,metadata:{language_name:"none",message_id:Z,platform:LO(),hasFeedback:X??!1}})}var _7=c9(()=>{z9();F7()});function I7(Y){let Z=KL.c(54),{options:J,onSelect:X,onCancel:z,question:G,toolAnalyticsContext:K}=Y,Q=G===void 0?"Do you want to proceed?":G,V=n0(),[H,W]=q9.useState(""),[D,q]=q9.useState(""),[U,N]=q9.useState(!1),[L,F]=q9.useState(!1),[P,w]=q9.useState(null),[_,A]=q9.useState(!1),[j,y]=q9.useState(!1),b;if(Z[0]!==P||Z[1]!==J){let q0;if(Z[3]!==P)q0=(X0)=>X0.value===P,Z[3]=P,Z[4]=q0;else q0=Z[4];b=J.find(q0),Z[0]=P,Z[1]=J,Z[2]=b}else b=Z[2];let k=b?.feedbackConfig?.type,f=k==="accept"&&!U||k==="reject"&&!L,$;if(Z[5]!==U||Z[6]!==J||Z[7]!==L){let q0;if(Z[9]!==U||Z[10]!==L)q0=(X0)=>{let{value:H0,label:j0,feedbackConfig:V0}=X0;if(!V0)return{label:j0,value:H0};let{type:l,placeholder:L0}=V0,F0=l==="accept"?U:L,$0=l==="accept"?W:q,LZ=rC[l];if(F0)return{type:"input",label:j0,value:H0,placeholder:L0??LZ,onChange:$0,allowEmptySubmitToCancel:!0};return{label:j0,value:H0}},Z[9]=U,Z[10]=L,Z[11]=q0;else q0=Z[11];$=J.map(q0),Z[5]=U,Z[6]=J,Z[7]=L,Z[8]=$}else $=Z[8];let v=$,T;if(Z[12]!==U||Z[13]!==J||Z[14]!==L||Z[15]!==K?.isMcp||Z[16]!==K?.toolName)T=(q0)=>{let X0=J.find((V0)=>V0.value===q0);if(!X0?.feedbackConfig)return;let{type:H0}=X0.feedbackConfig,j0={toolName:K?.toolName,isMcp:K?.isMcp??!1};if(H0==="accept")if(U)N(!1),Z0("tengu_accept_feedback_mode_collapsed",j0);else N(!0),A(!0),Z0("tengu_accept_feedback_mode_entered",j0);else if(H0==="reject")if(L)F(!1),Z0("tengu_reject_feedback_mode_collapsed",j0);else F(!0),y(!0),Z0("tengu_reject_feedback_mode_entered",j0)},Z[12]=U,Z[13]=J,Z[14]=L,Z[15]=K?.isMcp,Z[16]=K?.toolName,Z[17]=T;else T=Z[17];let h=T,u;if(Z[18]!==H||Z[19]!==_||Z[20]!==X||Z[21]!==J||Z[22]!==D||Z[23]!==j||Z[24]!==K?.isMcp||Z[25]!==K?.toolName)u=(q0)=>{let X0=J.find((j0)=>j0.value===q0);if(!X0)return;let H0;if(X0.feedbackConfig){let V0=(X0.feedbackConfig.type==="accept"?H:D).trim();if(V0)H0=V0;let l={toolName:K?.toolName,isMcp:K?.isMcp??!1,has_instructions:!!V0,instructions_length:V0?.length??0,entered_feedback_mode:X0.feedbackConfig.type==="accept"?_:j};if(X0.feedbackConfig.type==="accept")Z0("tengu_accept_submitted",l);else if(X0.feedbackConfig.type==="reject")Z0("tengu_reject_submitted",l)}X(q0,H0)},Z[18]=H,Z[19]=_,Z[20]=X,Z[21]=J,Z[22]=D,Z[23]=j,Z[24]=K?.isMcp,Z[25]=K?.toolName,Z[26]=u;else u=Z[26];let C=u,a;if(Z[27]!==C||Z[28]!==J){a={};for(let q0 of J)if(q0.keybinding)a[q0.keybinding]=()=>C(q0.value);Z[27]=C,Z[28]=J,Z[29]=a}else a=Z[29];let o=a,Y0;if(Z[30]===Symbol.for("react.memo_cache_sentinel"))Y0={context:"Confirmation"},Z[30]=Y0;else Y0=Z[30];uZ(o,Y0);let d;if(Z[31]!==z||Z[32]!==V)d=()=>{Z0("tengu_permission_request_escape",{}),V(iC),z?.()},Z[31]=z,Z[32]=V,Z[33]=d;else d=Z[33];let p=d,K0;if(Z[34]!==Q)K0=typeof Q==="string"?B(O,{children:Q}):Q,Z[34]=Q,Z[35]=K0;else K0=Z[35];let G0;if(Z[36]!==H||Z[37]!==U||Z[38]!==J||Z[39]!==D||Z[40]!==L)G0=(q0)=>{let X0=J.find((H0)=>H0.value===q0);if(X0?.feedbackConfig?.type!=="accept"&&U&&!H.trim())N(!1);if(X0?.feedbackConfig?.type!=="reject"&&L&&!D.trim())F(!1);w(q0)},Z[36]=H,Z[37]=U,Z[38]=J,Z[39]=D,Z[40]=L,Z[41]=G0;else G0=Z[41];let J0;if(Z[42]!==p||Z[43]!==h||Z[44]!==C||Z[45]!==v||Z[46]!==G0)J0=B(qZ,{options:v,inlineDescriptions:!0,onChange:C,onCancel:p,onFocus:G0,onInputModeToggle:h}),Z[42]=p,Z[43]=h,Z[44]=C,Z[45]=v,Z[46]=G0,Z[47]=J0;else J0=Z[47];let P0=f&&" · Tab to amend",M0;if(Z[48]!==P0)M0=B(M,{marginTop:1,children:E(O,{dimColor:!0,children:["Esc to cancel",P0]})}),Z[48]=P0,Z[49]=M0;else M0=Z[49];let I0;if(Z[50]!==J0||Z[51]!==M0||Z[52]!==K0)I0=E(M,{flexDirection:"column",children:[K0,J0,M0]}),Z[50]=J0,Z[51]=M0,Z[52]=K0,Z[53]=I0;else I0=Z[53];return I0}function iC(Y){return{...Y,attribution:{...Y.attribution,escapeCount:Y.attribution.escapeCount+1}}}var KL,q9,rC;var C5=c9(()=>{N0();YY();DZ();YZ();LX();c();KL=x(v0(),1),q9=x(Q0(),1),rC={accept:"tell Claude what to do next",reject:"tell Claude what to do differently"}});var dL={};pL(dL,{MonitorPermissionRequest:()=>AS});function AS({toolUseConfirm:Y,onDone:Z,onReject:J,workerBadge:X}){let{command:z,description:G}=Y.input;ZJ(Y,{completion_type:"tool_use_single",language_name:"none"});let K=(q,U)=>{switch(q){case"yes":{VY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:Y.assistantMessage.message.id,platform:aZ.platform}}),Y.onAllow(Y.input,[],U),Z();break}case"yes-dont-ask-again":{VY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:Y.assistantMessage.message.id,platform:aZ.platform}});let L=(z?.trim()||"").split(/\s+/).slice(0,2).join(" ");Y.onAllow(Y.input,L?[{type:"addRules",rules:[{toolName:"Bash",ruleContent:`${L}:*`}],behavior:"allow",destination:"localSettings"}]:[]),Z();break}case"no":{VY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:Y.assistantMessage.message.id,platform:aZ.platform}}),Y.onReject(U),J(),Z();break}}},Q=()=>{VY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:Y.assistantMessage.message.id,platform:aZ.platform}}),Y.onReject(),J(),Z()},V=IJ(),H=QY(),W=[{label:"Yes",value:"yes",feedbackConfig:{type:"accept"}}];if(V)W.push({label:E(O,{children:["Yes, and don't ask again for"," ",B(O,{bold:!0,children:"Monitor"})," commands in"," ",B(O,{bold:!0,children:H})]}),value:"yes-dont-ask-again"});W.push({label:"No",value:"no",feedbackConfig:{type:"reject"}});let D={toolName:gZ(Y.tool.name),isMcp:Y.tool.isMcp??!1};return E(jZ,{title:"Monitor",workerBadge:X,children:[E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[E(O,{children:["Monitor(",z??"",")"]}),G?B(O,{dimColor:!0,children:G}):null]}),E(M,{flexDirection:"column",children:[B(SY,{permissionResult:Y.permissionResult,toolType:"tool"}),B(I7,{options:W,onSelect:K,onCancel:Q,toolAnalyticsContext:D})]})]})}var lL=c9(()=>{AZ();N0();dJ();z9();A7();G9();cY();C5();V8();_7();c()});var vy={};pL(vy,{useScheduledTasks:()=>Hu});function Hu({isLoading:Y,assistantMode:Z=!1,setMessages:J}){let X=H4.useRef(Y);X.current=Y;let z=pZ(),G=n0();H4.useEffect(()=>{if(!$q())return;let K=(V)=>ez({value:V,mode:"prompt",priority:"later",isMeta:!0}),Q=Ty({onFire:K,onFireTask:(V)=>{if(V.agentId){let W=ky(V.agentId,z.getState().tasks);if(W&&!yy(W.status)){W4(W.id,V.prompt,G);return}g(`[ScheduledTasks] teammate ${V.agentId} gone, removing orphaned cron ${V.id}`),jy([V.id]);return}let H=by(`Running scheduled task (${qu(new Date)})`);J((W)=>[...W,H]),K(V.prompt)},isLoading:()=>X.current,assistantMode:Z,getJitterConfig:Iy,isKilled:()=>!$q()});return Q.start(),()=>Q.stop()},[Z])}function qu(Y){return Y.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).replace(/,? at |, /," ").replace(/ ([AP]M)/,(Z,J)=>J.toLowerCase())}var H4;var Cy=c9(()=>{YZ();Qu();XK();Ku();Vu();Wu();Gu();BZ();RJ();BY();H4=x(Q0(),1)});AZ();xw();oz();N0();PY();import{join as ru}from"path";import{tmpdir as iu}from"os";zI();JK();var QQ=x(Q0(),1);function hB(){QQ.useContext(fB);let Y=aX.get(process.stdout);return QQ.useMemo(()=>{if(!Y)return{setQuery:()=>{},scanElement:()=>[],setPositions:()=>{}};return{setQuery:(Z)=>Y.setSearchHighlight(Z),scanElement:(Z)=>Y.scanElementSubtree(Z),setPositions:(Z)=>Y.setSearchPositions(Z)}},[Y])}N0();var VQ=x(Q0(),1),xB=["⠂","⠐"],gB="✳",GI=960;function WQ({isAnimating:Y,title:Z,disabled:J,noPrefix:X}){let z=qX(),[G,K]=VQ.useState(0);VQ.useEffect(()=>{if(J||X||!Y||!z)return;let V=setInterval(()=>{K((H)=>(H+1)%xB.length)},GI);return()=>clearInterval(V)},[J,X,Y,z]);let Q=Y?xB[G]??gB:gB;return mB(J?null:X?Z:`${Q} ${Z}`),null}N0();oB();N0();YZ();XW();KI();var iB=x(Q0(),1),JW=x(Q0(),1);RJ();var cB=x(Q0(),1);function BX(){return cB.useSyncExternalStore(HQ,qQ)}RJ();BY();uJ();QI();c();var VI=new Set;function WI(Y){try{return h8(Y)?.type==="idle_notification"}catch{return!1}}var t4=3;function HI(Y){return`<${e4}>
|
|
5
|
+
<${YW}>+${Y} more tasks completed</${YW}>
|
|
6
|
+
<${ZW}>completed</${ZW}>
|
|
7
|
+
</${e4}>`}function qI(Y){let Z=Y.filter((Q)=>typeof Q.value!=="string"||!WI(Q.value)),J=Z.filter((Q)=>Q.mode==="task-notification"),X=Z.filter((Q)=>Q.mode!=="task-notification");if(J.length<=t4)return[...X,...J];let z=J.slice(0,t4-1),G=J.length-(t4-1),K={value:HI(G),mode:"task-notification"};return[...X,...z,K]}function BI(){let Y=BX(),Z=t((G)=>!!G.viewingAgentTaskId),J=!1,X=JW.useMemo(()=>Y.filter((G)=>S9(G)&&G.mode==="prompt").length,[Y]),z=JW.useMemo(()=>{if(Y.length===0)return null;let G=Y.filter(uB);if(G.length===0)return null;let K=qI(G);return lB(K.map((Q)=>{let V=Q.value;if(Q.mode==="bash"&&typeof V==="string")V=`<bash-input>${V}</bash-input>`;return gY({content:V})}))},[Y]);if(Z||z===null)return null;return E(M,{marginTop:1,flexDirection:"column",children:[X>0&&B(M,{marginLeft:2,marginBottom:1,children:B(O,{dimColor:!0,children:X===1?"1 message queued for next turn":`${X} messages queued for next turn`})}),z.map((G,K)=>B(pB,{isFirst:K===0,useBriefLayout:!1,children:B(dB,{message:G,lookups:rB,addMargin:!1,tools:[],commands:[],verbose:!1,inProgressToolUseIDs:VI,progressMessagesForMessage:[],shouldAnimate:!1,shouldShowDot:!1,isTranscriptMode:!1,isStatic:!0})},K))]})}var BQ=iB.memo(BI);x8();c();function sB(Y){let{showSpinner:Z,streamMode:J,spinnerTip:X,responseLengthRef:z,apiMetricsRef:G,spinnerMessage:K,stopHookSpinnerSuffix:Q,verbose:V,loadingStartTimeRef:H,totalPausedMsRef:W,pauseStartTimeRef:D,spinnerColor:q,spinnerShimmerColor:U,hasActiveTools:N,leaderIsIdle:L,isLoading:F,userInputOnProcessing:P,hasRunningTeammates:w,isBriefOnly:_,viewedAgentTask:A}=Y;return E(A0,{children:[B(M,{flexGrow:1}),Z&&B(aB,{mode:J,spinnerTip:X,responseLengthRef:z,apiMetricsRef:G,overrideMessage:K,spinnerSuffix:Q,verbose:V,loadingStartTimeRef:H,totalPausedMsRef:W,pauseStartTimeRef:D,overrideColor:q,overrideShimmerColor:U,hasActiveTools:N,leaderIsIdle:L}),!Z&&!F&&!P&&!w&&_&&!A&&B(nB,{}),_Z()&&B(BQ,{})]})}N0();yD();JK();YY();qJ();DZ();YZ();oz();var g8=x(Q0(),1);AZ();JK();tB();HJ();BZ();function DQ({screen:Y,setScreen:Z,showAllInTranscript:J,setShowAllInTranscript:X,messageCount:z,onEnterTranscript:G,onExitTranscript:K,virtualScrollActive:Q,searchBarOpen:V=!1}){let H=t((A)=>A.expandedView),W=n0(),D=g8.useCallback(()=>{Z0("tengu_toggle_todos",{is_expanded:H==="tasks"}),W((A)=>{let{getAllInProcessTeammateTasks:j}=(XK(),pJ(DI));if(jJ(j(A.tasks),(b)=>b.status==="running")>0)switch(A.expandedView){case"none":return{...A,expandedView:"tasks"};case"tasks":return{...A,expandedView:"teammates"};case"teammates":return{...A,expandedView:"none"}}return{...A,expandedView:A.expandedView==="tasks"?"none":"tasks"}})},[H,W]),q=!1,U=g8.useCallback(()=>{let A=Y!=="transcript";if(Z0("tengu_toggle_transcript",{is_entering:A,show_all:J,message_count:z}),Z((j)=>j==="transcript"?"prompt":"transcript"),X(!1),A&&G)G();if(!A&&K)K()},[Y,Z,!1,J,X,z,W,G,K]),N=g8.useCallback(()=>{Z0("tengu_transcript_toggle_show_all",{is_expanding:!J,message_count:z}),X((A)=>!A)},[J,X,z]),L=g8.useCallback(()=>{if(Z0("tengu_transcript_exit",{show_all:J,message_count:z}),Z("prompt"),X(!1),K)K()},[Z,J,X,z,K]),F=g8.useCallback(()=>{},[!1,W]);KZ("app:toggleTodos",D,{context:"Global"}),KZ("app:toggleTranscript",U,{context:"Global"}),KZ("app:toggleTeammatePreview",()=>{W((A)=>({...A,showTeammateMessagePreview:!A.showTeammateMessagePreview}))},{context:"Global"});let P=g8.useCallback(()=>{},[]);KZ("app:toggleTerminal",P,{context:"Global"});let w=g8.useCallback(()=>{aX.get(process.stdout)?.forceRedraw()},[]);KZ("app:redraw",w,{context:"Global"});let _=Y==="transcript";return KZ("transcript:toggleShowAll",N,{context:"Transcript",isActive:_&&!Q}),KZ("transcript:exit",L,{context:"Transcript",isActive:_&&!V}),null}DX();GW();YY();var eB=x(v0(),1),UI={setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}};function UQ(Y){let Z=eB.c(8),{onSubmit:J,isActive:X}=Y,z=X===void 0?!0:X,G=sz(),K=tz(),Q;Z:{if(!G){let N;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))N=new Set,Z[0]=N;else N=Z[0];Q=N;break Z}let U;if(Z[1]!==G.bindings){U=new Set;for(let N of G.bindings)if(N.action?.startsWith("command:"))U.add(N.action);Z[1]=G.bindings,Z[2]=U}else U=Z[2];Q=U}let V=Q,H;if(Z[3]!==V||Z[4]!==J){H={};for(let U of V){let N=U.slice(8);H[U]=()=>{J(`/${N}`,UI,void 0,{fromKeybinding:!0})}}Z[3]=V,Z[4]=J,Z[5]=H}else H=Z[5];let W=H,D=z&&!K,q;if(Z[6]!==D)q={context:"Chat",isActive:D},Z[6]=D,Z[7]=q;else q=Z[7];return uZ(W,q),null}DZ();YZ();FQ();dZ();DX();var $9=x(Q0(),1);OQ();YY();Z7();LQ();RJ();NI();var ZD=3000;function EQ(Y){let{setToolUseConfirmQueue:Z,onCancel:J,onAgentsKilled:X,isMessageSelectorVisible:z,screen:G,abortSignal:K,popCommandFromQueue:Q,vimMode:V,isLocalJSXCommand:H,isSearchingHistory:W,isHelpOpen:D,inputMode:q,inputValue:U,streamMode:N}=Y,L=pZ(),F=n0(),P=BX().length,{addNotification:w,removeNotification:_}=JZ(),A=$9.useRef(0),j=t((o)=>o.viewSelectionMode),y=$9.useCallback(()=>{let o={source:"escape",streamMode:N};if(K!==void 0&&!K.aborted){Z0("tengu_cancel",o),Z(()=>[]),J();return}if(NQ()){if(Q){Q();return}}Z0("tengu_cancel",o),Z(()=>[]),J()},[K,Q,Z,J,N]),b=GD(),R=K!==void 0&&!K.aborted,k=P>0,f=q!==void 0&&q!=="prompt"&&!U,$=j==="viewing-agent",v=G!=="transcript"&&!W&&!z&&!H&&!D&&!b&&!(nX()&&V==="INSERT"),T=v&&(R||k)&&!f&&!$,h=v&&(R||k||$);KZ("chat:cancel",y,{context:"Chat",isActive:T});let u=$9.useCallback(()=>{let o=L.getState().tasks,Y0=Object.entries(o).filter(([,K0])=>K0.type==="local_agent"&&K0.status==="running");if(Y0.length===0)return!1;XD(o,F);let d=[];for(let[K0,G0]of Y0)zD(K0,F),d.push(G0.description),JD(K0,"stopped",{toolUseId:G0.toolUseId,summary:G0.description});let p=d.length===1?`Background agent "${d[0]}" was stopped by the user.`:`${d.length} background agents were stopped by the user: ${d.map((K0)=>`"${K0}"`).join(", ")}.`;return ez({value:p,mode:"task-notification"}),X(),!0},[L,F,X]),C=$9.useCallback(()=>{if($){u(),tY(F);return}let o=K!==void 0&&!K.aborted,Y0=NQ();if(o||Y0){y();return}return!1},[$,u,F,K,y]);KZ("app:interrupt",C,{context:"Global",isActive:h});let a=$9.useCallback(()=>{let o=L.getState().tasks;if(!Object.values(o).some((G0)=>G0.type==="local_agent"&&G0.status==="running")){w({key:"kill-agents-none",text:"No background agents running",priority:"immediate",timeoutMs:2000});return}let d=Date.now();if(d-A.current<=ZD){A.current=0,_("kill-agents-confirm"),Z0("tengu_cancel",{source:"kill_agents"}),YD(),u();return}A.current=d;let K0=m8("chat:killAgents","Chat","ctrl+x ctrl+k");w({key:"kill-agents-confirm",text:`Press ${K0} again to stop background agents`,priority:"immediate",timeoutMs:ZD})},[L,w,_,u]);return KZ("chat:killAgents",a,{context:"Chat"}),null}dZ();var sX=x(Q0(),1);KW();bZ();PQ();var Y7=x(Q0(),1);function KD(Y,Z,J){let X=Y7.useRef(!1),z=Y7.useRef(J);z.current=J,Y7.useEffect(()=>{if(!Z)return;return Y.subscribe(()=>{let K=Y.getState(),Q=Y.hasSelection();if(K?.isDragging){X.current=!1;return}if(!Q){X.current=!1;return}if(X.current)return;if(!(l0().copyOnSelect??!0))return;let H=Y.copySelectionNoClear();if(!H||!H.trim()){X.current=!0;return}X.current=!0,z.current?.(H)})},[Z,Y])}function QD(Y){let[Z]=SZ();Y7.useEffect(()=>{Y.setSelectionBgColor(c8(Z).selectionBg)},[Y,Z])}UD();QW();DD();N0();YY();BZ();var OI=40,LI=0.3,FI=6,EI=200,PI=15,wI=15,_I=3,AI=1500,VD=150,MI=5,WD=5,RI=80,jI=3,yI=6,kI=500;function bI(Y){if(Y.wheelUp||Y.wheelDown)return!1;if((Y.leftArrow||Y.rightArrow||Y.upArrow||Y.downArrow||Y.home||Y.end||Y.pageUp||Y.pageDown)&&(Y.shift||Y.meta||Y.super))return!1;return!0}function II(Y){if(!Y.shift||Y.meta)return null;if(Y.leftArrow)return"left";if(Y.rightArrow)return"right";if(Y.upArrow)return"up";if(Y.downArrow)return"down";if(Y.home)return"lineStart";if(Y.end)return"lineEnd";return null}function HD(Y,Z,J){if(!Y.xtermJs){if(Y.wheelMode&&J-Y.time>AI)Y.wheelMode=!1,Y.burstCount=0,Y.mult=Y.base;if(Y.pendingFlip){if(Y.pendingFlip=!1,Z!==Y.dir||J-Y.time>EI)return Y.dir=Z,Y.time=J,Y.mult=Y.base,Math.floor(Y.mult);Y.wheelMode=!0}let Q=J-Y.time;if(Z!==Y.dir&&Y.dir!==0)return Y.pendingFlip=!0,Y.time=J,0;if(Y.dir=Z,Y.time=J,Y.wheelMode)if(Q<WD)if(++Y.burstCount>=5)Y.wheelMode=!1,Y.burstCount=0,Y.mult=Y.base;else return 1;else Y.burstCount=0;if(Y.wheelMode){let V=Math.pow(0.5,Q/VD),H=Math.max(wI,Y.base*2),W=1+(Y.mult-1)*V+PI*V;return Y.mult=Math.min(H,W,Y.mult+_I),Math.floor(Y.mult)}if(Q>OI)Y.mult=Y.base;else{let V=Math.max(FI,Y.base*2);Y.mult=Math.min(V,Y.mult+LI)}return Math.floor(Y.mult)}let X=J-Y.time,z=Z===Y.dir;if(Y.time=J,Y.dir=Z,z&&X<WD)return 1;if(!z||X>kI)Y.mult=2,Y.frac=0;else{let Q=Math.pow(0.5,X/VD),V=X>=RI?jI:yI;Y.mult=Math.min(V,1+(Y.mult-1)*Q+MI*Q)}let G=Y.mult+Y.frac,K=Math.floor(G);return Y.frac=G-K,K}function TI(){let Y=process.env.CLAUDE_CODE_SCROLL_SPEED;if(!Y)return 1;let Z=parseFloat(Y);return Number.isNaN(Z)||Z<=0?1:Math.min(Z,20)}function vI(Y=!1,Z=1){return{time:0,mult:Z,dir:0,xtermJs:Y,frac:0,base:Z,pendingFlip:!1,wheelMode:!1,burstCount:0}}function qD(){let Y=zK(),Z=TI();return g(`wheel accel: ${Y?"decay (xterm.js)":"window (native)"} · base=${Z} · TERM_PROGRAM=${process.env.TERM_PROGRAM??"unset"}`),vI(Y,Z)}var wQ=2,CI=50,SI=200;function AQ({scrollRef:Y,isActive:Z,onScroll:J,isModal:X=!1}){let z=_Q(),{addNotification:G}=JZ(),K=sX.useRef(null);function Q(W){let D=BD(),q=W.length,U;switch(D){case"native":U=`copied ${q} chars to clipboard`;break;case"tmux-buffer":U=`copied ${q} chars to tmux buffer · paste with prefix + ]`;break;case"osc52":U=`sent ${q} chars via OSC 52 · check terminal clipboard settings if paste fails`;break}G({key:"selection-copied",text:U,color:"suggestion",priority:"immediate",timeoutMs:D==="native"?2000:4000})}function V(){let W=z.copySelection();if(W)Q(W)}function H(W,D){let q=z.getState();if(!q?.anchor||!q.focus)return;let U=W.getViewportTop(),N=U+W.getViewportHeight()-1;if(q.anchor.row<U||q.anchor.row>N)return;if(q.focus.row<U||q.focus.row>N)return;let L=Math.max(0,W.getScrollHeight()-W.getViewportHeight()),F=W.getScrollTop()+W.getPendingDelta(),P=Math.max(0,Math.min(L,F+D))-F;if(P===0)return;if(P>0)z.captureScrolledRows(U,U+P-1,"above"),z.shiftSelection(-P,U,N);else{let w=-P;z.captureScrolledRows(N-w+1,N,"below"),z.shiftSelection(w,U,N)}}return uZ({"scroll:pageUp":()=>{let W=Y.current;if(!W)return;let D=-Math.max(1,Math.floor(W.getViewportHeight()/2));H(W,D);let q=oX(W,D);J?.(q,W)},"scroll:pageDown":()=>{let W=Y.current;if(!W)return;let D=Math.max(1,Math.floor(W.getViewportHeight()/2));H(W,D);let q=oX(W,D);J?.(q,W)},"scroll:lineUp":()=>{z.clearSelection();let W=Y.current;if(!W||W.getScrollHeight()<=W.getViewportHeight())return!1;K.current??=qD(),xI(W,HD(K.current,-1,performance.now())),J?.(!1,W)},"scroll:lineDown":()=>{z.clearSelection();let W=Y.current;if(!W||W.getScrollHeight()<=W.getViewportHeight())return!1;K.current??=qD();let D=HD(K.current,1,performance.now()),q=hI(W,D);J?.(q,W)},"scroll:top":()=>{let W=Y.current;if(!W)return;H(W,-(W.getScrollTop()+W.getPendingDelta())),W.scrollTo(0),J?.(!1,W)},"scroll:bottom":()=>{let W=Y.current;if(!W)return;let D=Math.max(0,W.getScrollHeight()-W.getViewportHeight());H(W,D-(W.getScrollTop()+W.getPendingDelta())),W.scrollTo(D),W.scrollToBottom(),J?.(!0,W)},"selection:copy":V},{context:"Scroll",isActive:Z}),uZ({"scroll:halfPageUp":()=>{let W=Y.current;if(!W)return;let D=-Math.max(1,Math.floor(W.getViewportHeight()/2));H(W,D);let q=oX(W,D);J?.(q,W)},"scroll:halfPageDown":()=>{let W=Y.current;if(!W)return;let D=Math.max(1,Math.floor(W.getViewportHeight()/2));H(W,D);let q=oX(W,D);J?.(q,W)},"scroll:fullPageUp":()=>{let W=Y.current;if(!W)return;let D=-Math.max(1,W.getViewportHeight());H(W,D);let q=oX(W,D);J?.(q,W)},"scroll:fullPageDown":()=>{let W=Y.current;if(!W)return;let D=Math.max(1,W.getViewportHeight());H(W,D);let q=oX(W,D);J?.(q,W)}},{context:"Scroll",isActive:Z}),lZ((W,D,q)=>{let U=Y.current;if(!U)return;let N=mI(U,gI(W,D),(L)=>H(U,L));if(N===null)return;J?.(N,U),q.stopImmediatePropagation()},{isActive:Z&&X}),lZ((W,D,q)=>{if(!z.hasSelection())return;if(D.escape){z.clearSelection(),q.stopImmediatePropagation();return}if(D.ctrl&&!D.shift&&!D.meta&&W==="c"){V(),q.stopImmediatePropagation();return}let U=II(D);if(U){z.moveFocus(U),q.stopImmediatePropagation();return}if(bI(D))z.clearSelection()},{isActive:Z}),$I(Y,z,Z,J),KD(z,Z,Q),QD(z),null}function $I(Y,Z,J,X){let z=sX.useRef(null),G=sX.useRef(0),K=sX.useRef(0),Q=sX.useRef(0),V=sX.useRef(X);V.current=X,sX.useEffect(()=>{if(!J)return;function H(){if(G.current=0,z.current)clearInterval(z.current),z.current=null}function W(){let N=Z.getState(),L=Y.current,F=G.current;if(!N?.isDragging||!N.focus||!L||F===0||++Q.current>SI){H();return}if(L.getPendingDelta()!==0)return;let P=L.getViewportTop(),w=P+L.getViewportHeight()-1;if(F<0){if(L.getScrollTop()<=0){H();return}let _=Math.min(wQ,L.getScrollTop());Z.captureScrolledRows(w-_+1,w,"below"),Z.shiftAnchor(_,0,w),L.scrollBy(-wQ)}else{let _=Math.max(0,L.getScrollHeight()-L.getViewportHeight());if(L.getScrollTop()>=_){H();return}let A=Math.min(wQ,_-L.getScrollTop());Z.captureScrolledRows(P,P+A-1,"above"),Z.shiftAnchor(-A,P,w),L.scrollBy(wQ)}V.current?.(!1,L)}function D(N){if(K.current=N,G.current===N)return;if(H(),G.current=N,Q.current=0,W(),G.current===N)z.current=setInterval(W,CI)}function q(){let N=Y.current;if(!N){H();return}let L=N.getViewportTop(),F=L+N.getViewportHeight()-1,P=Z.getState();if(!P?.isDragging||P.scrolledOffAbove.length===0&&P.scrolledOffBelow.length===0)K.current=0;let w=fI(P,L,F,K.current);if(w===0){if(K.current!==0&&P?.focus){let _=P.focus.row<L?-1:P.focus.row>F?1:0;if(_!==0&&_!==K.current)P.scrolledOffAbove=[],P.scrolledOffBelow=[],P.scrolledOffAboveSW=[],P.scrolledOffBelowSW=[],K.current=0}H()}else D(w)}let U=Z.subscribe(q);return()=>{U(),H(),K.current=0}},[J,Y,Z])}function fI(Y,Z,J,X=0){if(!Y?.isDragging||!Y.anchor||!Y.focus)return 0;let z=Y.focus.row,G=z<Z?-1:z>J?1:0;if(X!==0)return G===X?G:0;if(Y.anchor.row<Z||Y.anchor.row>J)return 0;return G}function oX(Y,Z){let J=Math.max(0,Y.getScrollHeight()-Y.getViewportHeight()),X=Y.getScrollTop()+Y.getPendingDelta()+Z;if(X>=J)return Y.scrollTo(J),Y.scrollToBottom(),!0;return Y.scrollTo(Math.max(0,X)),!1}function hI(Y,Z){let J=Math.max(0,Y.getScrollHeight()-Y.getViewportHeight());if(Y.getScrollTop()+Y.getPendingDelta()+Z>=J)return Y.scrollToBottom(),!0;return Y.scrollBy(Z),!1}function xI(Y,Z){if(Y.getScrollTop()+Y.getPendingDelta()-Z<=0){Y.scrollTo(0);return}Y.scrollBy(-Z)}function gI(Y,Z){if(Z.meta)return null;if(!Z.ctrl&&!Z.shift){if(Z.upArrow)return"lineUp";if(Z.downArrow)return"lineDown";if(Z.home)return"top";if(Z.end)return"bottom"}if(Z.ctrl){if(Z.shift)return null;switch(Y){case"u":return"halfPageUp";case"d":return"halfPageDown";case"b":return"fullPageUp";case"f":return"fullPageDown";case"n":return"lineDown";case"p":return"lineUp";default:return null}}let J=Y[0];if(!J||Y!==J.repeat(Y.length))return null;if(J==="G"||J==="g"&&Z.shift)return"bottom";if(Z.shift)return null;switch(J){case"g":return"top";case"j":return"lineDown";case"k":return"lineUp";case" ":return"fullPageDown";case"b":return"fullPageUp";default:return null}}function mI(Y,Z,J){switch(Z){case null:return null;case"lineUp":case"lineDown":{let X=Z==="lineDown"?1:-1;return J(X),oX(Y,X)}case"halfPageUp":case"halfPageDown":{let X=Math.max(1,Math.floor(Y.getViewportHeight()/2)),z=Z==="halfPageDown"?X:-X;return J(z),oX(Y,z)}case"fullPageUp":case"fullPageDown":{let X=Math.max(1,Y.getViewportHeight()),z=Z==="fullPageDown"?X:-X;return J(z),oX(Y,z)}case"top":return J(-(Y.getScrollTop()+Y.getPendingDelta())),Y.scrollTo(0),!1;case"bottom":{let X=Math.max(0,Y.getScrollHeight()-Y.getViewportHeight());return J(X-(Y.getScrollTop()+Y.getPendingDelta())),Y.scrollTo(X),Y.scrollToBottom(),!0}}}bD();kD();JK();cI();MQ();uI();pI();c();var _D=x(v0(),1),GK=x(Q0(),1);function RQ(Y){let Z=_D.c(7),{children:J,mouseTracking:X}=Y,z=X===void 0?!0:X,G=GK.useContext(PD),K=GK.useContext(wD),Q,V;if(Z[0]!==z||Z[1]!==K)Q=()=>{let D=aX.get(process.stdout);if(!K)return;return K(ND+"\x1B[2J\x1B[H"+(z?LD:"")),D?.setAltScreenActive(!0,z),()=>{D?.setAltScreenActive(!1),D?.clearTextSelection(),K((z?FD:"")+OD)}},V=[K,z],Z[0]=z,Z[1]=K,Z[2]=Q,Z[3]=V;else Q=Z[2],V=Z[3];GK.useInsertionEffect(Q,V);let H=G?.rows??24,W;if(Z[4]!==J||Z[5]!==H)W=B(ED,{flexDirection:"column",height:H,width:"100%",flexShrink:0,children:J}),Z[4]=J,Z[5]=H,Z[6]=W;else W=Z[6];return W}N0();u8();jQ();c();var AD=x(v0(),1),KK=x(Q0(),1);function dI(Y){let Z=Y.getHours()%12||12,J=String(Y.getMinutes()).padStart(2,"0"),X=String(Y.getSeconds()).padStart(2,"0"),z=Y.getHours()<12?"am":"pm";return`${Z}:${J}:${X}${z}`}function VW(){let Y=AD.c(15),Z;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))Z=[],Y[0]=Z;else Z=Y[0];let[J,X]=KK.useState(Z),[z,G]=KK.useState(0),K,Q;if(Y[1]===Symbol.for("react.memo_cache_sentinel"))K=()=>{if(!eZ.isSandboxingEnabled()||tX()==="linux")return;let N=eZ.getSandboxViolationStore();if(!N||typeof N.subscribe!=="function")return;return N.subscribe((F)=>{X(F.slice(-10)),G(N.getTotalCount())})},Q=[],Y[1]=K,Y[2]=Q;else K=Y[1],Q=Y[2];if(KK.useEffect(K,Q),!eZ.isSandboxingEnabled()||tX()==="linux")return null;if(z===0)return null;let V=z===1?"operation":"operations",H;if(Y[3]!==V||Y[4]!==z)H=B(M,{marginLeft:0,children:E(O,{color:"permission",children:["⧈ Sandbox blocked ",z," total"," ",V]})}),Y[3]=V,Y[4]=z,Y[5]=H;else H=Y[5];let W;if(Y[6]!==J)W=J.map(lI),Y[6]=J,Y[7]=W;else W=Y[7];let D=Math.min(10,J.length),q;if(Y[8]!==D||Y[9]!==z)q=B(M,{paddingLeft:2,children:E(O,{dimColor:!0,children:["… showing last ",D," of ",z]})}),Y[8]=D,Y[9]=z,Y[10]=q;else q=Y[10];let U;if(Y[11]!==H||Y[12]!==W||Y[13]!==q)U=E(M,{flexDirection:"column",marginTop:1,children:[H,W,q]}),Y[11]=H,Y[12]=W,Y[13]=q,Y[14]=U;else U=Y[14];return U}function lI(Y,Z){return B(M,{paddingLeft:2,children:E(O,{dimColor:!0,children:[dI(Y.timestamp),Y.command?` ${Y.command}:`:""," ",Y.line]})},`${Y.timestamp.getTime()}-${Z}`)}x8();N0();MD();c();var kQ=x(Q0(),1),RD=x(Q0(),1);function jD({jumpRef:Y,count:Z,current:J,onClose:X,onCancel:z,setHighlight:G,initialQuery:K}){let{query:Q,cursorOffset:V}=yQ({isActive:!0,initialQuery:K,onExit:()=>X(Q),onCancel:z}),[H,W]=kQ.useState("building");kQ.useEffect(()=>{let N=!0,L=Y.current?.warmSearchIndex;if(!L){W(null);return}return W("building"),L().then((F)=>{if(!N)return;if(F<20)W(null);else W({ms:F}),setTimeout(()=>N&&W(null),2000)}),()=>{N=!1}},[]);let D=H!=="building";RD.useEffect(()=>{if(!D)return;Y.current?.setSearchQuery(Q),G(Q)},[Q,D]);let q=V,U=q<Q.length?Q[q]:" ";return E(M,{borderTopDimColor:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:2,width:"100%",noSelect:!0,children:[B(O,{children:"/"}),B(O,{children:Q.slice(0,q)}),B(O,{inverse:!0,children:U}),q<Q.length&&B(O,{children:Q.slice(q+1)}),B(M,{flexGrow:1}),H==="building"?B(O,{dimColor:!0,children:"indexing… "}):H?E(O,{dimColor:!0,children:["indexed in ",H.ms,"ms "]}):Z===0&&Q?B(O,{color:"error",children:"no matches "}):Z>0?E(O,{dimColor:!0,children:[J,"/",Z," "]}):null]})}TY();N0();J7();c();function WW({showAllInTranscript:Y,virtualScroll:Z,searchBadge:J,suppressShowAll:X=!1,status:z}){let G=MY("app:toggleTranscript","Global","ctrl+o"),K=MY("transcript:toggleShowAll","Transcript","ctrl+e"),Q=J?" · n/N to navigate":Z?` · ${R0.arrowUp}${R0.arrowDown} scroll · home/end top/bottom`:X?"":` · ${K} to ${Y?"collapse":"show all"}`;return E(M,{noSelect:!0,alignItems:"center",alignSelf:"center",borderTopDimColor:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:2,width:"100%",children:[E(O,{dimColor:!0,children:["Showing detailed transcript · ",G," to toggle",Q]}),z?E(A0,{children:[B(M,{flexGrow:1}),E(O,{children:[z," "]})]}):J?E(A0,{children:[B(M,{flexGrow:1}),E(O,{dimColor:!0,children:[J.current,"/",J.count," "]})]}):null]})}c();function ID(Y){let Z=_Z()&&!Y.disableVirtualScroll&&!Y.dumpMode?Y.scrollRef:void 0,J=B(vQ,{messages:Y.transcriptMessages,tools:Y.tools,commands:Y.renderCommands,verbose:!0,toolJSX:null,toolUseConfirmQueue:[],inProgressToolUseIDs:Y.inProgressToolUseIDs,isMessageSelectorVisible:!1,conversationId:Y.conversationId,screen:Y.screen,agentDefinitions:Y.agentDefinitions,streamingToolUses:Y.transcriptStreamingToolUses,showAllInTranscript:Y.showAllInTranscript,onOpenRateLimitOptions:Y.handleOpenRateLimitOptions,isLoading:Y.isLoading,hidePastThinking:!0,streamingThinking:Y.streamingThinking,scrollRef:Z,jumpRef:Y.jumpRef,onSearchMatchesChange:Y.onSearchMatchesChange,scanElement:Y.scanElement,setPositions:Y.setPositions,disableRenderCap:Y.dumpMode}),X=Y.toolJSX&&B(M,{flexDirection:"column",width:"100%",children:Y.toolJSX.jsx}),z=E(IQ,{children:[B(WQ,{isAnimating:Y.titleIsAnimating,title:Y.terminalTitle,disabled:Y.titleDisabled,noPrefix:Y.showStatusInTerminalTab}),B(DQ,{...Y.globalKeybindingProps}),Y.voiceKeybindingSlot,B(UQ,{onSubmit:Y.onSubmit,isActive:!Y.toolJSX?.isLocalJSXCommand}),Z?B(AQ,{scrollRef:Y.scrollRef,isActive:Y.focusedInputDialog!=="ultraplan-choice",isModal:!Y.searchOpen,onScroll:()=>Y.jumpRef.current?.disarmSearch()}):null,B(EQ,{...Y.cancelRequestProps}),Z?B(TQ,{scrollRef:Y.scrollRef,scrollable:E(A0,{children:[J,X,B(VW,{})]}),bottom:Y.searchOpen?B(jD,{jumpRef:Y.jumpRef,initialQuery:"",count:Y.searchCount,current:Y.searchCurrent,onClose:(G)=>{if(Y.setSearchQuery(Y.searchCount>0?G:""),Y.setSearchOpen(!1),!G)Y.setSearchCount(0),Y.setSearchCurrent(0),Y.jumpRef.current?.setSearchQuery("")},onCancel:()=>{Y.setSearchOpen(!1),Y.jumpRef.current?.setSearchQuery(""),Y.jumpRef.current?.setSearchQuery(Y.searchQuery),Y.setHighlight(Y.searchQuery)},setHighlight:Y.setHighlight}):B(WW,{showAllInTranscript:Y.showAllInTranscript,virtualScroll:!0,status:Y.editorStatus||void 0,searchBadge:Y.searchQuery&&Y.searchCount>0?{current:Y.searchCurrent,count:Y.searchCount}:void 0})}):E(A0,{children:[J,X,B(VW,{}),B(WW,{showAllInTranscript:Y.showAllInTranscript,virtualScroll:!1,suppressShowAll:Y.dumpMode,status:Y.editorStatus||void 0})]})]});if(Z)return B(RQ,{mouseTracking:bQ(),children:z});return z}bZ();DZ();rZ();N0();eX();QK();TD();c();function rI(){switch(CQ()){case"firstParty":return"Anthropic API";case"bedrock":return"AWS Bedrock";case"vertex":return"Google Vertex";case"foundry":return"Azure Foundry";case"openai":return"OpenAI-compatible API";case"gemini":return"Gemini API";default:return"API"}}function vD({onDone:Y}){let Z=rI();return E(BJ,{title:`You've spent $5 on the ${Z} this session.`,onCancel:Y,children:[E(M,{flexDirection:"column",children:[B(O,{children:"Learn more about how to monitor your spending:"}),B(X7,{url:"https://code.claude.com/docs/en/costs"})]}),B(qZ,{options:[{value:"ok",label:"Got it, thanks!"}],onChange:Y})]})}N0();vY();eX();QK();c();var CD=x(v0(),1);function SD(Y){let Z=CD.c(16),{idleMinutes:J,totalInputTokens:X,onDone:z}=Y,G;if(Z[0]!==J)G=iI(J),Z[0]=J,Z[1]=G;else G=Z[1];let K=G,Q;if(Z[2]!==X)Q=UX(X),Z[2]=X,Z[3]=Q;else Q=Z[3];let H=`You've been away ${K} and this conversation is ${Q} tokens.`,W;if(Z[4]!==z)W=()=>z("dismiss"),Z[4]=z,Z[5]=W;else W=Z[5];let D;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))D=B(M,{flexDirection:"column",children:B(O,{children:"If this is a new task, clearing context will save usage and be faster."})}),Z[6]=D;else D=Z[6];let q;if(Z[7]===Symbol.for("react.memo_cache_sentinel"))q={value:"continue",label:"Continue this conversation"},Z[7]=q;else q=Z[7];let U;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))U={value:"clear",label:"Send message as a new conversation"},Z[8]=U;else U=Z[8];let N;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))N=[q,U,{value:"never",label:"Don't ask me again"}],Z[9]=N;else N=Z[9];let L;if(Z[10]!==z)L=B(qZ,{options:N,onChange:(P)=>z(P)}),Z[10]=z,Z[11]=L;else L=Z[11];let F;if(Z[12]!==H||Z[13]!==W||Z[14]!==L)F=E(BJ,{title:H,onCancel:W,children:[D,L]}),Z[12]=H,Z[13]=W,Z[14]=L,Z[15]=F;else F=Z[15];return F}function iI(Y){if(Y<1)return"< 1m";if(Y<60)return`${Math.floor(Y)}m`;let Z=Math.floor(Y/60),J=Math.floor(Y%60);if(J===0)return`${Z}h`;return`${Z}h ${J}m`}TY();DX();var UW=x(v0(),1),RZ=x(Q0(),1);AZ();MQ();qW();var HW=x(Q0(),1),$D=6000;function aI(){return Date.now()-z7()}function nI(Y){return aI()<Y}function oI(Y){return!nI(Y)}function VK(Y,Z){let J=G7();HW.useEffect(()=>{SQ(!0)},[]),HW.useEffect(()=>{let X=!1,z=setInterval(()=>{if(oI($D)&&!X)X=!0,clearInterval(z),p8({message:Y,notificationType:Z},J)},$D);return()=>clearInterval(z)},[Y,Z,J])}PY();N0();YY();ZT();Q7();uJ();d8();BW();rZ();BY();fD();async function xD(Y,Z,J){let X=new Date,z=X.toISOString(),G=-X.getTimezoneOffset(),K=Math.floor(Math.abs(G)/60),Q=Math.abs(G)%60,H=`${G>=0?"+":"-"}${String(K).padStart(2,"0")}:${String(Q).padStart(2,"0")}`,W=X.toLocaleDateString("en-US",{weekday:"long"}),D=$Q(["You are a date/time parser that converts natural language into ISO 8601 format.","You MUST respond with ONLY the ISO 8601 formatted string, with no explanation or additional text.","If the input is ambiguous, prefer future dates over past dates.","For times without dates, use today's date.","For dates without times, do not include a time component.",'If the input is incomplete or you cannot confidently parse it into a valid date, respond with exactly "INVALID" (nothing else).','Examples of INVALID input: partial dates like "2025-01-", lone numbers like "13", gibberish.','Examples of valid natural language: "tomorrow", "next Monday", "jan 1st 2025", "in 2 hours", "yesterday".']),q=Z==="date"?"YYYY-MM-DD (date only, no time)":`YYYY-MM-DDTHH:MM:SS${H} (full date-time with timezone)`,U=`Current context:
|
|
8
|
+
- Current date and time: ${z} (UTC)
|
|
9
|
+
- Local timezone: ${H}
|
|
10
|
+
- Day of week: ${W}
|
|
11
|
+
|
|
12
|
+
User input: "${Y}"
|
|
13
|
+
|
|
14
|
+
Output format: ${q}
|
|
15
|
+
|
|
16
|
+
Parse the user's input into ISO 8601 format. Return ONLY the formatted string, or "INVALID" if the input is incomplete or unparseable.`;try{let N=await hD({systemPrompt:D,userPrompt:U,signal:J,options:{querySource:"mcp_datetime_parse",agents:[],isNonInteractiveSession:!1,hasAppendSystemPrompt:!1,mcpTools:[],enablePromptCaching:!1}}),L=K7(N.message.content).trim();if(!L||L==="INVALID")return{success:!1,error:"Unable to parse date/time from input"};if(!/^\d{4}/.test(L))return{success:!1,error:"Unable to parse date/time from input"};return{success:!0,value:L}}catch(N){return u0(N),{success:!1,error:"Unable to parse date/time. Please enter in ISO 8601 format manually."}}}function gD(Y){return/^\d{4}-\d{2}-\d{2}(T|$)/.test(Y.trim())}var OX=(Y)=>{return Y.type==="string"&&(("enum"in Y)||("oneOf"in Y))};function f9(Y){return Y.type==="array"&&"items"in Y&&typeof Y.items==="object"&&Y.items!==null&&(("enum"in Y.items)||("anyOf"in Y.items))}function HK(Y){if("anyOf"in Y.items)return Y.items.anyOf.map((Z)=>Z.const);if("enum"in Y.items)return Y.items.enum;return[]}function sI(Y){if("anyOf"in Y.items)return Y.items.anyOf.map((Z)=>Z.title);if("enum"in Y.items)return Y.items.enum;return[]}function qK(Y,Z){let J=HK(Y).indexOf(Z);return J>=0?sI(Y)[J]??Z:Z}function V7(Y){if("oneOf"in Y)return Y.oneOf.map((Z)=>Z.const);if("enum"in Y)return Y.enum;return[]}function tI(Y){if("oneOf"in Y)return Y.oneOf.map((Z)=>Z.title);if("enum"in Y)return("enumNames"in Y?Y.enumNames:void 0)??Y.enum;return[]}function BK(Y,Z){let J=V7(Y).indexOf(Z);return J>=0?tI(Y)[J]??Z:Z}function eI(Y){if(OX(Y)){let[Z,...J]=V7(Y);if(!Z)return WZ.never();return WZ.enum([Z,...J])}if(Y.type==="string"){let Z=WZ.string();if(Y.minLength!==void 0)Z=Z.min(Y.minLength,{message:`Must be at least ${Y.minLength} ${NX(Y.minLength,"character")}`});if(Y.maxLength!==void 0)Z=Z.max(Y.maxLength,{message:`Must be at most ${Y.maxLength} ${NX(Y.maxLength,"character")}`});switch(Y.format){case"email":Z=Z.email({message:"Must be a valid email address, e.g. user@example.com"});break;case"uri":Z=Z.url({message:"Must be a valid URI, e.g. https://example.com"});break;case"date":Z=Z.date("Must be a valid date, e.g. 2024-03-15, today, next Monday");break;case"date-time":Z=Z.datetime({offset:!0,message:"Must be a valid date-time, e.g. 2024-03-15T14:30:00Z, tomorrow at 3pm"});break;default:break}return Z}if(Y.type==="number"||Y.type==="integer"){let Z=Y.type==="integer"?"an integer":"a number",J=Y.type==="integer",X=(K)=>Number.isInteger(K)&&!J?`${K}.0`:String(K),z=Y.minimum!==void 0&&Y.maximum!==void 0?`Must be ${Z} between ${X(Y.minimum)} and ${X(Y.maximum)}`:Y.minimum!==void 0?`Must be ${Z} >= ${X(Y.minimum)}`:Y.maximum!==void 0?`Must be ${Z} <= ${X(Y.maximum)}`:`Must be ${Z}`,G=WZ.coerce.number({error:z});if(Y.type==="integer")G=G.int({message:z});if(Y.minimum!==void 0)G=G.min(Y.minimum,{message:z});if(Y.maximum!==void 0)G=G.max(Y.maximum,{message:z});return G}if(Y.type==="boolean")return WZ.coerce.boolean();throw Error(`Unsupported schema: ${iZ(Y)}`)}function WK(Y,Z){let X=eI(Z).safeParse(Y);if(X.success)return{value:X.data,isValid:!0};return{isValid:!1,error:X.error.issues.map((z)=>z.message).join("; ")}}function DK(Y){return Y.type==="string"&&"format"in Y&&(Y.format==="date"||Y.format==="date-time")}async function mD(Y,Z,J){let X=WK(Y,Z);if(X.isValid)return X;if(DK(Z)&&!gD(Y)){let z=await xD(Y,Z.format,J);if(z.success){let G=WK(z.value,Z);if(G.isValid)return G}}return X}d8();NK();fQ();QK();l8();hQ();c();var UK=(Y)=>["string","number","integer"].includes(Y.type),cD="⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏",YT=(Y)=>(Y+1)%cD.length;function JT(Y){Y.buffer="",Y.timer=void 0}function XT(){let Y=UW.c(4),[Z,J]=RZ.useState(0),X,z;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))X=()=>{let Q=setInterval(J,80,YT);return()=>clearInterval(Q)},z=[],Y[0]=X,Y[1]=z;else X=Y[0],z=Y[1];RZ.useEffect(X,z);let G=cD[Z],K;if(Y[2]!==G)K=B(O,{color:"warning",children:G}),Y[2]=G,Y[3]=K;else K=Y[3];return K}function zT(Y,Z){try{let J=new Date(Y);if(Number.isNaN(J.getTime()))return Y;if(("format"in Z?Z.format:void 0)==="date-time")return J.toLocaleDateString("en-US",{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"2-digit",timeZoneName:"short"});let z=Y.split("-");if(z.length===3)return new Date(Number(z[0]),Number(z[1])-1,Number(z[2])).toLocaleDateString("en-US",{weekday:"short",year:"numeric",month:"short",day:"numeric"});return Y}catch{return Y}}function uD(Y){let Z=UW.c(7),{event:J,onResponse:X,onWaitingDismiss:z}=Y;if(J.params.mode==="url"){let K;if(Z[0]!==J||Z[1]!==X||Z[2]!==z)K=B(KT,{event:J,onResponse:X,onWaitingDismiss:z}),Z[0]=J,Z[1]=X,Z[2]=z,Z[3]=K;else K=Z[3];return K}let G;if(Z[4]!==J||Z[5]!==X)G=B(GT,{event:J,onResponse:X}),Z[4]=J,Z[5]=X,Z[6]=G;else G=Z[6];return G}function GT({event:Y,onResponse:Z}){let{serverName:J,signal:X}=Y,z=Y.params,{message:G,requestedSchema:K}=z,Q=Object.keys(K.properties).length>0,[V,H]=RZ.useState(Q?null:"accept"),[W,D]=RZ.useState(()=>{let n={};if(K.properties){for(let[W0,B0]of Object.entries(K.properties))if(typeof B0==="object"&&B0!==null){if(B0.default!==void 0)n[W0]=B0.default}}return n}),[q,U]=RZ.useState(()=>{let n={};for(let[W0,B0]of Object.entries(K.properties))if(UK(B0)&&B0?.default!==void 0){let w0=WK(String(B0.default),B0);if(!w0.isValid&&w0.error)n[W0]=w0.error}return n});RZ.useEffect(()=>{if(!X)return;let n=()=>{Z("cancel")};if(X.aborted){n();return}return X.addEventListener("abort",n),()=>{X.removeEventListener("abort",n)}},[X,Z]);let N=RZ.useMemo(()=>{let n=K.required??[];return Object.entries(K.properties).map(([W0,B0])=>({name:W0,schema:B0,isRequired:n.includes(W0)}))},[K]),[L,F]=RZ.useState(Q?0:void 0),[P,w]=RZ.useState(()=>{let n=N[0];if(n&&UK(n.schema)){let W0=W[n.name];if(W0===void 0)return"";return String(W0)}return""}),[_,A]=RZ.useState(P.length),[j,y]=RZ.useState(()=>new Set),[b,R]=RZ.useState(),[k,f]=RZ.useState(0),$=RZ.useRef(void 0),v=RZ.useRef(new Map),T=RZ.useRef({buffer:"",timer:void 0});RZ.useEffect(()=>()=>{if($.current!==void 0)clearTimeout($.current);let n=T.current;if(n.timer!==void 0)clearTimeout(n.timer);for(let W0 of v.current.values())W0.abort();v.current.clear()},[]);let{columns:h,rows:u}=PZ(),C=L!==void 0?N[L]:void 0,o=C!==void 0&&UK(C.schema)&&!OX(C.schema)&&!V;mY("elicitation"),VK("Claude Code needs your input","elicitation_dialog");let Y0=RZ.useCallback((n)=>{if(n===void 0){w(""),A(0);return}let W0=N[n];if(W0&&UK(W0.schema)&&!OX(W0.schema)){let B0=W[W0.name],w0=B0!==void 0?String(B0):"";w(w0),A(w0.length)}},[N,W]);function d(n,W0){if(!f9(W0))return;let B0=W[n]??[],w0=N.find((U0)=>U0.name===n)?.isRequired??!1,S0=W0.minItems,b0=W0.maxItems;if(S0!==void 0&&B0.length<S0&&(B0.length>0||w0))G0(n,`Select at least ${S0} ${NX(S0,"item")}`);else if(b0!==void 0&&B0.length>b0)G0(n,`Select at most ${b0} ${NX(b0,"item")}`);else G0(n)}function p(n){if(C&&f9(C.schema))d(C.name,C.schema),R(void 0);else if(C&&OX(C.schema))R(void 0);if(o&&C){if(P0(C.name,C.schema,P),$.current!==void 0)clearTimeout($.current),$.current=void 0;if(DK(C.schema)&&P.trim()!==""&&q[C.name])M0(C.name,C.schema,P)}let W0=N.length+2,B0=L??(V==="accept"?N.length:V==="decline"?N.length+1:void 0),w0=B0!==void 0?(B0+(n==="up"?W0-1:1))%W0:0;if(w0<N.length)F(w0),H(null),Y0(w0);else F(void 0),H(w0===N.length?"accept":"decline"),w("")}function K0(n,W0){if(D((B0)=>{let w0={...B0};if(W0===void 0)delete w0[n];else w0[n]=W0;return w0}),W0!==void 0&&q[n]==="This field is required")G0(n)}function G0(n,W0){U((B0)=>{let w0={...B0};if(W0)w0[n]=W0;else delete w0[n];return w0})}function J0(n){if(!n)return;K0(n,void 0),G0(n),w(""),A(0)}function P0(n,W0,B0){let w0=B0.trim();if(w0===""&&(W0.type!=="string"||("format"in W0)&&W0.format!==void 0)){J0(n);return}if(w0===""){if(W[n]!==void 0)K0(n,"");return}let S0=WK(B0,W0);K0(n,S0.isValid?S0.value:B0),G0(n,S0.isValid?void 0:S0.error)}function M0(n,W0,B0){if(!X)return;let w0=v.current.get(n);if(w0)w0.abort();let S0=new AbortController;v.current.set(n,S0),y((b0)=>new Set(b0).add(n)),mD(B0,W0,S0.signal).then((b0)=>{if(v.current.delete(n),y((U0)=>{let m=new Set(U0);return m.delete(n),m}),S0.signal.aborted)return;if(b0.isValid){K0(n,b0.value),G0(n);let U0=String(b0.value);w((m)=>{if(m===B0)return A(U0.length),U0;return m})}else G0(n,b0.error)},()=>{v.current.delete(n),y((b0)=>{let U0=new Set(b0);return U0.delete(n),U0})})}function I0(n){if(w(n),C){if(P0(C.name,C.schema,n),$.current!==void 0)clearTimeout($.current),$.current=void 0;if(DK(C.schema)&&n.trim()!==""&&q[C.name]){let{name:W0,schema:B0}=C;$.current=setTimeout((w0,S0,b0,U0,m)=>{w0.current=void 0,S0(b0,U0,m)},2000,$,M0,W0,B0,n)}}}function q0(){p("down")}function X0(n,W0,B0){let w0=T.current;if(w0.timer!==void 0)clearTimeout(w0.timer);w0.buffer+=n.toLowerCase(),w0.timer=setTimeout(JT,2000,w0);let S0=W0.findIndex((b0)=>b0.startsWith(w0.buffer));if(S0!==-1)B0(S0)}KZ("confirm:no",()=>{if(o&&C){let n=W[C.name];w(n!==void 0?String(n):""),A(0)}Z("cancel")},{context:"Settings",isActive:!!C&&!V&&!b}),lZ((n,W0)=>{if(o&&!W0.upArrow&&!W0.downArrow&&!W0.return&&!W0.backspace)return;if(b&&C&&f9(C.schema)){let b0=C.schema,U0=HK(b0),m=W[C.name]??[];if(W0.leftArrow||W0.escape){R(void 0),d(C.name,b0);return}if(W0.upArrow){if(k===0)R(void 0),d(C.name,b0);else f(k-1);return}if(W0.downArrow){if(k>=U0.length-1)R(void 0),p("down");else f(k+1);return}if(n===" "){let D0=U0[k];if(D0!==void 0){let z0=m.includes(D0)?m.filter((y0)=>y0!==D0):[...m,D0],C0=z0.length>0?z0:void 0;K0(C.name,C0);let{minItems:h0,maxItems:wZ}=b0;if(h0!==void 0&&z0.length<h0&&(z0.length>0||C.isRequired))G0(C.name,`Select at least ${h0} ${NX(h0,"item")}`);else if(wZ!==void 0&&z0.length>wZ)G0(C.name,`Select at most ${wZ} ${NX(wZ,"item")}`);else G0(C.name)}return}if(W0.return){let D0=U0[k];if(D0!==void 0&&!m.includes(D0))K0(C.name,[...m,D0]);R(void 0),p("down");return}if(n){let D0=U0.map((z0)=>qK(b0,z0).toLowerCase());X0(n,D0,f);return}return}if(b&&C&&OX(C.schema)){let b0=C.schema,U0=V7(b0);if(W0.leftArrow||W0.escape){R(void 0);return}if(W0.upArrow){if(k===0)R(void 0);else f(k-1);return}if(W0.downArrow){if(k>=U0.length-1)R(void 0),p("down");else f(k+1);return}if(n===" "){let m=U0[k];if(m!==void 0)K0(C.name,m);R(void 0);return}if(W0.return){let m=U0[k];if(m!==void 0)K0(C.name,m);R(void 0),p("down");return}if(n){let m=U0.map((D0)=>BK(b0,D0).toLowerCase());X0(n,m,f);return}return}if(W0.return&&V==="accept"){if(H0()&&Object.keys(q).length===0)Z("accept",W);else{let b0=K.required||[];for(let m of b0)if(W[m]===void 0)G0(m,"This field is required");let U0=N.findIndex((m)=>b0.includes(m.name)&&W[m.name]===void 0||q[m.name]!==void 0);if(U0!==-1)F(U0),H(null),Y0(U0)}return}if(W0.return&&V==="decline"){Z("decline");return}if(W0.upArrow||W0.downArrow){let b0=T.current;if(b0.buffer="",b0.timer!==void 0)clearTimeout(b0.timer),b0.timer=void 0;p(W0.upArrow?"up":"down");return}if(V&&(W0.leftArrow||W0.rightArrow)){H(V==="accept"?"decline":"accept");return}if(!C)return;let{schema:B0,name:w0}=C,S0=W[w0];if(B0.type==="boolean"){if(n===" "){K0(w0,S0===void 0?!0:!S0);return}if(W0.return){p("down");return}if(W0.backspace&&S0!==void 0){J0(w0);return}if(n&&!W0.return){X0(n,["yes","no"],(b0)=>K0(w0,b0===0));return}return}if(OX(B0)||f9(B0)){if(W0.return){p("down");return}if(W0.backspace&&S0!==void 0){J0(w0);return}let b0,U0=0;if(OX(B0)){let m=V7(B0);if(b0=m.map((D0)=>BK(B0,D0).toLowerCase()),S0!==void 0)U0=Math.max(0,m.indexOf(S0))}else b0=HK(B0).map((D0)=>qK(B0,D0).toLowerCase());if(W0.rightArrow){R(w0),f(U0);return}if(n&&!W0.leftArrow){X0(n,b0,(m)=>{R(w0),f(m)});return}return}if(W0.backspace){if(o&&P===""){J0(w0);return}}},{isActive:!0});function H0(){let n=K.required||[];for(let W0 of n){let B0=W[W0];if(B0===void 0||B0===null||B0==="")return!1;if(Array.isArray(B0)&&B0.length===0)return!1}return!0}let j0=3,l=Math.max(2,Math.floor((u-14)/j0)),L0=RZ.useMemo(()=>{let n=N.length;if(n<=l)return{start:0,end:n};let W0=L??n-1,B0=Math.max(0,W0-Math.floor(l/2)),w0=Math.min(B0+l,n);return B0=Math.max(0,w0-l),{start:B0,end:w0}},[N.length,l,L]),F0=L0.start>0,$0=L0.end<N.length;function LZ(){if(!N.length)return null;return E(M,{flexDirection:"column",children:[F0&&B(M,{marginLeft:2,children:E(O,{dimColor:!0,children:[R0.arrowUp," ",L0.start," more above"]})}),N.slice(L0.start,L0.end).map((n,W0)=>{let B0=L0.start+W0,{name:w0,schema:S0,isRequired:b0}=n,U0=B0===L&&!V,m=W[w0],D0=m!==void 0&&(!Array.isArray(m)||m.length>0),z0=q[w0],h0=j.has(w0)?B(XT,{}):z0?B(O,{color:"error",children:R0.warning}):D0?B(O,{color:"success",dimColor:!U0,children:R0.tick}):b0?B(O,{color:"error",children:"*"}):B(O,{children:" "}),wZ=z0?"error":D0?"success":b0?"error":"suggestion",y0=U0?wZ:void 0,o0=B(O,{color:y0,bold:U0,children:S0.title||w0}),g0,x0=null;if(f9(S0)){let f0=HK(S0),t0=m??[];if(b===w0&&U0)g0=B(O,{dimColor:!0,children:R0.triangleDownSmall}),x0=B(M,{flexDirection:"column",marginLeft:6,children:f0.map((VZ,yZ)=>{let NZ=qK(S0,VZ),hZ=t0.includes(VZ),oZ=yZ===k;return E(M,{gap:1,children:[B(O,{color:"suggestion",children:oZ?R0.pointer:" "}),B(O,{color:hZ?"success":void 0,children:hZ?R0.checkboxOn:R0.checkboxOff}),B(O,{color:oZ?"suggestion":void 0,bold:oZ,children:NZ})]},VZ)})});else{let VZ=U0?E(O,{dimColor:!0,children:[R0.triangleRightSmall," "]}):null;if(t0.length>0){let yZ=t0.map((NZ)=>qK(S0,NZ));g0=E(O,{children:[VZ,B(O,{color:y0,bold:U0,children:yZ.join(", ")})]})}else g0=E(O,{children:[VZ,B(O,{dimColor:!0,italic:!0,children:"not set"})]})}}else if(OX(S0)){let f0=V7(S0);if(b===w0&&U0)g0=B(O,{dimColor:!0,children:R0.triangleDownSmall}),x0=B(M,{flexDirection:"column",marginLeft:6,children:f0.map((m0,VZ)=>{let yZ=BK(S0,m0),NZ=m===m0,hZ=VZ===k;return E(M,{gap:1,children:[B(O,{color:"suggestion",children:hZ?R0.pointer:" "}),B(O,{color:NZ?"success":void 0,children:NZ?R0.radioOn:R0.radioOff}),B(O,{color:hZ?"suggestion":void 0,bold:hZ,children:yZ})]},m0)})});else{let m0=U0?E(O,{dimColor:!0,children:[R0.triangleRightSmall," "]}):null;if(D0)g0=E(O,{children:[m0,B(O,{color:y0,bold:U0,children:BK(S0,m)})]});else g0=E(O,{children:[m0,B(O,{dimColor:!0,italic:!0,children:"not set"})]})}}else if(S0.type==="boolean")if(U0)g0=D0?B(O,{color:y0,bold:!0,children:m?R0.checkboxOn:R0.checkboxOff}):B(O,{dimColor:!0,children:R0.checkboxOff});else g0=D0?B(O,{children:m?R0.checkboxOn:R0.checkboxOff}):B(O,{dimColor:!0,italic:!0,children:"not set"});else if(UK(S0))if(U0)g0=B(r8,{value:P,onChange:I0,onSubmit:q0,placeholder:"Type something…",columns:Math.min(h-20,60),cursorOffset:_,onChangeCursorOffset:A,focus:!0,showCursor:!0});else{let f0=D0&&DK(S0)?zT(String(m),S0):String(m);g0=D0?B(O,{children:f0}):B(O,{dimColor:!0,italic:!0,children:"not set"})}else g0=D0?B(O,{children:String(m)}):B(O,{dimColor:!0,italic:!0,children:"not set"});return E(M,{flexDirection:"column",children:[E(M,{gap:1,children:[B(O,{color:wZ,children:U0?R0.pointer:" "}),h0,E(M,{children:[o0,B(O,{color:y0,children:": "}),g0]})]}),x0,S0.description&&B(M,{marginLeft:6,children:B(O,{dimColor:!0,children:S0.description})}),B(M,{marginLeft:6,height:1,children:z0?B(O,{color:"error",italic:!0,children:z0}):B(O,{children:" "})})]},w0)}),$0&&B(M,{marginLeft:2,children:E(O,{dimColor:!0,children:[R0.arrowDown," ",N.length-L0.end," more below"]})})]})}return B(BJ,{title:`MCP server “${J}” requests your input`,subtitle:`
|
|
17
|
+
${G}`,color:"permission",onCancel:()=>Z("cancel"),isCancelActive:(!C||!!V)&&!b,inputGuide:(n)=>n.pending?E(O,{children:["Press ",n.keyName," again to exit"]}):E(UJ,{children:[B(DJ,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"}),B(FZ,{shortcut:"↑↓",action:"navigate"}),C&&B(FZ,{shortcut:"Backspace",action:"unset"}),C&&C.schema.type==="boolean"&&B(FZ,{shortcut:"Space",action:"toggle"}),C&&OX(C.schema)&&(b?B(FZ,{shortcut:"Space",action:"select"}):B(FZ,{shortcut:"→",action:"expand"})),C&&f9(C.schema)&&(b?B(FZ,{shortcut:"Space",action:"toggle"}):B(FZ,{shortcut:"→",action:"expand"}))]}),children:E(M,{flexDirection:"column",children:[LZ(),E(M,{children:[B(O,{color:"success",children:V==="accept"?R0.pointer:" "}),B(O,{bold:V==="accept",color:V==="accept"?"success":void 0,dimColor:V!=="accept",children:" Accept "}),B(O,{color:"error",children:V==="decline"?R0.pointer:" "}),B(O,{bold:V==="decline",color:V==="decline"?"error":void 0,dimColor:V!=="decline",children:" Decline"})]})]})})}function KT({event:Y,onResponse:Z,onWaitingDismiss:J}){let{serverName:X,signal:z,waitingState:G}=Y,K=Y.params,{message:Q,url:V}=K,[H,W]=RZ.useState("prompt"),D=RZ.useRef("prompt"),[q,U]=RZ.useState("accept"),N=G?.showCancel??!1;VK("Claude Code needs your input","elicitation_url_dialog"),mY("elicitation-url"),D.current=H;let L=RZ.useRef(J);L.current=J,RZ.useEffect(()=>{let A=()=>{if(D.current==="waiting")L.current?.("cancel");else Z("cancel")};if(z.aborted){A();return}return z.addEventListener("abort",A),()=>z.removeEventListener("abort",A)},[z,Z]);let F="",P="",w="";try{F=new URL(V).hostname;let j=V.indexOf(F);P=V.slice(0,j),w=V.slice(j+F.length)}catch{F=V}RZ.useEffect(()=>{if(H==="waiting"&&Y.completed)J?.(N?"retry":"dismiss")},[H,Y.completed,J,N]);let _=RZ.useCallback(()=>{DW(V),Z("accept"),W("waiting"),D.current="waiting",U("open")},[Z,V]);if(lZ((A,j)=>{if(H==="prompt"){if(j.leftArrow||j.rightArrow){U((y)=>y==="accept"?"decline":"accept");return}if(j.return)if(q==="accept")_();else Z("decline")}else{let y=N?["open","action","cancel"]:["open","action"];if(j.leftArrow||j.rightArrow){U((b)=>{let R=y.indexOf(b),k=j.rightArrow?1:-1;return y[(R+k+y.length)%y.length]});return}if(j.return)if(q==="open")DW(V);else if(q==="cancel")J?.("cancel");else J?.(N?"retry":"dismiss")}}),H==="waiting"){let A=G?.actionLabel??"Continue without waiting";return B(BJ,{title:`MCP server “${X}” — waiting for completion`,subtitle:`
|
|
18
|
+
${Q}`,color:"permission",onCancel:()=>J?.("cancel"),isCancelActive:!0,inputGuide:(j)=>j.pending?E(O,{children:["Press ",j.keyName," again to exit"]}):E(UJ,{children:[B(DJ,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"}),B(FZ,{shortcut:"\\u2190\\u2192",action:"switch"})]}),children:E(M,{flexDirection:"column",children:[B(M,{marginBottom:1,flexDirection:"column",children:E(O,{children:[P,B(O,{bold:!0,children:F}),w]})}),B(M,{marginBottom:1,children:B(O,{dimColor:!0,italic:!0,children:"Waiting for the server to confirm completion…"})}),E(M,{children:[B(O,{color:"success",children:q==="open"?R0.pointer:" "}),B(O,{bold:q==="open",color:q==="open"?"success":void 0,dimColor:q!=="open",children:" Reopen URL "}),B(O,{color:"success",children:q==="action"?R0.pointer:" "}),B(O,{bold:q==="action",color:q==="action"?"success":void 0,dimColor:q!=="action",children:` ${A}`}),N&&E(A0,{children:[B(O,{children:" "}),B(O,{color:"error",children:q==="cancel"?R0.pointer:" "}),B(O,{bold:q==="cancel",color:q==="cancel"?"error":void 0,dimColor:q!=="cancel",children:" Cancel"})]})]})]})})}return B(BJ,{title:`MCP server “${X}” wants to open a URL`,subtitle:`
|
|
19
|
+
${Q}`,color:"permission",onCancel:()=>Z("cancel"),isCancelActive:!0,inputGuide:(A)=>A.pending?E(O,{children:["Press ",A.keyName," again to exit"]}):E(UJ,{children:[B(DJ,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"}),B(FZ,{shortcut:"\\u2190\\u2192",action:"switch"})]}),children:E(M,{flexDirection:"column",children:[B(M,{marginBottom:1,flexDirection:"column",children:E(O,{children:[P,B(O,{bold:!0,children:F}),w]})}),E(M,{children:[B(O,{color:"success",children:q==="accept"?R0.pointer:" "}),B(O,{bold:q==="accept",color:q==="accept"?"success":void 0,dimColor:q!=="accept",children:" Accept "}),B(O,{color:"error",children:q==="decline"?R0.pointer:" "}),B(O,{bold:q==="decline",color:q==="decline"?"error":void 0,dimColor:q!=="decline",children:" Decline"})]})]})})}N0();YY();LX();cY();c();var pD=x(v0(),1);function dD(Y){let Z=pD.c(15),{title:J,toolInputSummary:X,request:z,onRespond:G,onAbort:K}=Y,Q;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))Q={isActive:!0},Z[0]=Q;else Q=Z[0];KZ("app:interrupt",K,Q);let V;if(Z[1]!==z.options)V=z.options.map(QT),Z[1]=z.options,Z[2]=V;else V=Z[2];let H=V,W;if(Z[3]!==X)W=X?B(O,{dimColor:!0,children:X}):void 0,Z[3]=X,Z[4]=W;else W=Z[4];let D;if(Z[5]!==G)D=(N)=>{G(N)},Z[5]=G,Z[6]=D;else D=Z[6];let q;if(Z[7]!==H||Z[8]!==D)q=B(M,{flexDirection:"column",paddingY:1,children:B(qZ,{options:H,onChange:D})}),Z[7]=H,Z[8]=D,Z[9]=q;else q=Z[9];let U;if(Z[10]!==z.message||Z[11]!==W||Z[12]!==q||Z[13]!==J)U=B(jZ,{title:J,subtitle:z.message,titleRight:W,children:q}),Z[10]=z.message,Z[11]=W,Z[12]=q,Z[13]=J,Z[14]=U;else U=Z[14];return U}function QT(Y){return{label:Y.label,value:Y.key,description:Y.description}}N0();Y8();oB();var nD=x(v0(),1);xQ();N0();lD();c();var rD=x(v0(),1);function iD(Y){let Z=rD.c(7),{name:J,color:X}=Y,z;if(Z[0]!==X)z=gQ(X),Z[0]=X,Z[1]=z;else z=Z[1];let G=z,K;if(Z[2]!==J)K=E(O,{bold:!0,children:["@",J]}),Z[2]=J,Z[3]=K;else K=Z[3];let Q;if(Z[4]!==G||Z[5]!==K)Q=B(M,{flexDirection:"row",gap:1,children:E(O,{color:G,children:[OK," ",K]})}),Z[4]=G,Z[5]=K,Z[6]=Q;else Q=Z[6];return Q}c();function NW(Y){let Z=nD.c(15),{toolName:J,description:X}=Y,z;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))z=i8(),Z[0]=z;else z=Z[0];let G=z,K;if(Z[1]===Symbol.for("react.memo_cache_sentinel"))K=Z8(),Z[1]=K;else K=Z[1];let Q=K,V;if(Z[2]===Symbol.for("react.memo_cache_sentinel"))V=FX(),Z[2]=V;else V=Z[2];let H=V,W,D;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))W=E(M,{marginBottom:1,children:[B(aD,{}),E(O,{color:"warning",bold:!0,children:[" ","Waiting for team lead approval"]})]}),D=Q&&H&&B(M,{marginBottom:1,children:B(iD,{name:Q,color:H})}),Z[3]=W,Z[4]=D;else W=Z[3],D=Z[4];let q;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))q=B(O,{dimColor:!0,children:"Tool: "}),Z[5]=q;else q=Z[5];let U;if(Z[6]!==J)U=E(M,{children:[q,B(O,{children:J})]}),Z[6]=J,Z[7]=U;else U=Z[7];let N;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))N=B(O,{dimColor:!0,children:"Action: "}),Z[8]=N;else N=Z[8];let L;if(Z[9]!==X)L=E(M,{children:[N,B(O,{children:X})]}),Z[9]=X,Z[10]=L;else L=Z[10];let F;if(Z[11]===Symbol.for("react.memo_cache_sentinel"))F=G&&B(M,{marginTop:1,children:E(O,{dimColor:!0,children:["Permission request sent to team ",'"',G,'"'," leader"]})}),Z[11]=F;else F=Z[11];let P;if(Z[12]!==U||Z[13]!==L)P=E(M,{flexDirection:"column",borderStyle:"round",borderColor:"warning",paddingX:1,children:[W,D,U,L,F]}),Z[12]=U,Z[13]=L,Z[14]=P;else P=Z[14];return P}u8();a8();mQ();VT();c();function sD(Y,Z){let{SandboxPermissionRequest:J,IdeOnboardingDialog:X,EffortCallout:z,RemoteCallout:G,PluginHintMenu:K,LspRecommendationMenu:Q,DesktopUpsellStartup:V,UltraplanChoiceDialog:H,UltraplanLaunchDialog:W}=Z;return E(A0,{children:[Y.focusedInputDialog==="sandbox-permission"&&B(J,{hostPattern:Y.sandboxPermissionRequestQueue[0].hostPattern,onUserResponse:(D)=>{let{allow:q,persistToSettings:U}=D,N=Y.sandboxPermissionRequestQueue[0];if(!N)return;let L=N.hostPattern.host;if(U){let P={type:"addRules",rules:[{toolName:OW,ruleContent:`domain:${L}`}],behavior:q?"allow":"deny",destination:"localSettings"};Y.setAppState((w)=>({...w,toolPermissionContext:J8(w.toolPermissionContext,P)})),LW(P),eZ.refreshConfig()}Y.setSandboxPermissionRequestQueue((P)=>{let w=P;return w.filter((_)=>_.hostPattern.host===L).forEach((_)=>_.resolvePromise(q)),w.filter((_)=>_.hostPattern.host!==L)});let F=Y.sandboxBridgeCleanupRef.current?.get(L);if(F){for(let P of F)P();Y.sandboxBridgeCleanupRef.current?.delete(L)}}},Y.sandboxPermissionRequestQueue[0].hostPattern.host),Y.focusedInputDialog==="prompt"&&B(dD,{title:Y.promptQueue[0].title,toolInputSummary:Y.promptQueue[0].toolInputSummary,request:Y.promptQueue[0].request,onRespond:(D)=>{let q=Y.promptQueue[0];if(!q)return;q.resolve({prompt_response:q.request.prompt,selected:D}),Y.setPromptQueue(([,...U])=>U)},onAbort:()=>{let D=Y.promptQueue[0];if(!D)return;D.reject(Error("Prompt cancelled by user")),Y.setPromptQueue(([,...q])=>q)}},Y.promptQueue[0].request.prompt),Y.pendingWorkerRequest&&B(NW,{toolName:Y.pendingWorkerRequest.toolName,description:Y.pendingWorkerRequest.description}),Y.pendingSandboxRequest&&B(NW,{toolName:"Network Access",description:`Waiting for leader to approve network access to ${Y.pendingSandboxRequest.host}`}),Y.focusedInputDialog==="worker-sandbox-permission"&&B(J,{hostPattern:{host:Y.workerSandboxPermissions.queue[0].host,port:void 0},onUserResponse:(D)=>{let{allow:q,persistToSettings:U}=D,N=Y.workerSandboxPermissions.queue[0];if(!N)return;let L=N.host;if(oD(N.workerName,N.requestId,L,q,Y.teamContext?.teamName),U&&q){let F={type:"addRules",rules:[{toolName:OW,ruleContent:`domain:${L}`}],behavior:"allow",destination:"localSettings"};Y.setAppState((P)=>({...P,toolPermissionContext:J8(P.toolPermissionContext,F)})),LW(F),eZ.refreshConfig()}Y.setAppState((F)=>({...F,workerSandboxPermissions:{...F.workerSandboxPermissions,queue:F.workerSandboxPermissions.queue.slice(1)}}))}},Y.workerSandboxPermissions.queue[0].requestId),Y.focusedInputDialog==="elicitation"&&B(uD,{event:Y.elicitation.queue[0],onResponse:(D,q)=>{let U=Y.elicitation.queue[0];if(!U)return;if(U.respond({action:D,content:q}),!(U.params.mode==="url"&&D==="accept"))Y.setAppState((L)=>({...L,elicitation:{queue:L.elicitation.queue.slice(1)}}))},onWaitingDismiss:(D)=>{let q=Y.elicitation.queue[0];Y.setAppState((U)=>({...U,elicitation:{queue:U.elicitation.queue.slice(1)}})),q?.onWaitingDismiss?.(D)}},Y.elicitation.queue[0].serverName+":"+String(Y.elicitation.queue[0].requestId)),Y.focusedInputDialog==="cost"&&B(vD,{onDone:()=>{Y.setShowCostDialog(!1),Y.setHaveShownCostDialog(!0),HZ((D)=>({...D,hasAcknowledgedCostThreshold:!0})),Z0("tengu_cost_threshold_acknowledged",{})}}),Y.focusedInputDialog==="idle-return"&&Y.idleReturnPending&&B(SD,{idleMinutes:Y.idleReturnPending.idleMinutes,totalInputTokens:Y.getTotalInputTokens(),onDone:async(D)=>{let q=Y.idleReturnPending;if(Y.setIdleReturnPending(null),Z0("tengu_idle_return_action",{action:D,idleMinutes:Math.round(q.idleMinutes),messageCount:Y.messagesRef.current?.length??0,totalInputTokens:Y.getTotalInputTokens()}),D==="dismiss"){Y.setInputValue(q.input);return}if(D==="never")HZ((U)=>{let N=U;if(N.idleReturnDismissed)return U;return{...N,idleReturnDismissed:!0}});if(D==="clear"){let{clearConversation:U}=await import("./conversation-0.5.7-h7r20gzw.mjs");if(await U({setMessages:Y.setMessages,readFileState:Y.readFileState.current,discoveredSkillNames:Y.discoveredSkillNamesRef.current,loadedNestedMemoryPaths:Y.loadedNestedMemoryPathsRef.current,getAppState:()=>Y.store.getState(),setAppState:Y.setAppState,setConversationId:Y.setConversationId}),Y.haikuTitleAttemptedRef.current!==void 0)Y.haikuTitleAttemptedRef.current=!1;if(Y.setHaikuTitle(void 0),Y.bashTools.current?.clear(),Y.bashToolsProcessedIdx.current!==void 0)Y.bashToolsProcessedIdx.current=0}if(Y.skipIdleCheckRef.current!==void 0)Y.skipIdleCheckRef.current=!0;Y.onSubmitRef.current?.(q.input,{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}})}}),Y.focusedInputDialog==="ide-onboarding"&&B(X,{onDone:()=>Y.setShowIdeOnboarding(!1),installationStatus:Y.ideInstallationStatus}),Y.focusedInputDialog==="effort-callout"&&B(z,{model:Y.mainLoopModel,onDone:(D)=>{if(Y.setShowEffortCallout(!1),D!=="dismiss")Y.setAppState((q)=>({...q,effortValue:D}))}}),Y.focusedInputDialog==="remote-callout"&&B(G,{onDone:(D)=>{Y.setAppState((q)=>{let U=q;if(!U.showRemoteCallout)return q;return{...U,showRemoteCallout:!1,...D==="enable"&&{replBridgeEnabled:!0,replBridgeExplicit:!0,replBridgeOutboundOnly:!1}}})}}),Y.exitFlow,Y.focusedInputDialog==="plugin-hint"&&Y.hintRecommendation&&B(K,{pluginName:Y.hintRecommendation.pluginName,pluginDescription:Y.hintRecommendation.pluginDescription,marketplaceName:Y.hintRecommendation.marketplaceName,sourceCommand:Y.hintRecommendation.sourceCommand,onResponse:Y.handleHintResponse}),Y.focusedInputDialog==="lsp-recommendation"&&Y.lspRecommendation&&B(Q,{pluginName:Y.lspRecommendation.pluginName,pluginDescription:Y.lspRecommendation.pluginDescription,fileExtension:Y.lspRecommendation.fileExtension,onResponse:Y.handleLspResponse}),Y.focusedInputDialog==="desktop-upsell"&&B(V,{onDone:()=>Y.setShowDesktopUpsellStartup(!1)}),null,null]})}function tD(Y){if(Y.isExiting||Y.exitFlow)return;if(Y.isMessageSelectorVisible)return"message-selector";if(Y.promptTypingSuppressionActive)return;if(Y.sandboxPermissionRequestQueue[0])return"sandbox-permission";let Z=!Y.toolJSX||Y.toolJSX.shouldContinueAnimation;if(Z&&Y.toolUseConfirmQueue[0])return"tool-permission";if(Z&&Y.promptQueue[0])return"prompt";if(Z&&Y.workerSandboxPermissions.queue[0])return"worker-sandbox-permission";if(Z&&Y.elicitation.queue[0])return"elicitation";if(Z&&Y.showingCostDialog)return"cost";if(Z&&Y.idleReturnPending)return"idle-return";if(Z&&Y.showIdeOnboarding)return"ide-onboarding";if(Z&&Y.showEffortCallout)return"effort-callout";if(Z&&Y.showRemoteCallout)return"remote-callout";if(Z&&Y.lspRecommendation&&Y.startupChecksStarted)return"lsp-recommendation";if(Z&&Y.hintRecommendation&&Y.startupChecksStarted)return"plugin-hint";if(Z&&Y.showDesktopUpsellStartup&&Y.startupChecksStarted)return"desktop-upsell";return}var X8=x(Q0(),1);EW();cQ();WT();HT();c();var qT=250,BT=1e4;function YU(){let[Y,Z]=X8.useState(null),[J,X]=X8.useState(!1),z=X8.useRef("idle"),G=X8.useRef(0),K=X8.useRef(null),Q=()=>{if(K.current)clearTimeout(K.current),K.current=null},V=X8.useCallback(async()=>{if(z.current==="forced")return;if(z.current==="requested"){if(Date.now()-G.current<qT)return;z.current="forced",Q(),process.kill(process.pid,"SIGKILL");return}if(z.current="requested",G.current=Date.now(),K.current=setTimeout(()=>{z.current="forced",process.kill(process.pid,"SIGKILL")},BT),X(!0),n8()!==null){Z(B(eD,{showWorktree:!0,onDone:()=>{},onCancel:()=>{Z(null),Q(),z.current="idle",X(!1)}}));return}let D=await(await ZU.load()).call(()=>{});if(Z(D),D===null)Q(),z.current="idle",X(!1)},[]);return{exitFlow:Y,isExiting:J,handleExit:V}}var wW=x(Q0(),1);tB();BZ();import{spawn as DT}from"child_process";var UT=300,NT=240000,eY=null,W7=null,h9=0,JU=!1;function XU(){if(h9++,h9===1)KU(),LT()}function zU(){if(h9>0)h9--;if(h9===0)GU(),PW()}function OT(){h9=0,GU(),PW()}function LT(){if(process.platform!=="darwin")return;if(W7!==null)return;W7=setInterval(()=>{if(h9>0)g("Restarting caffeinate to maintain sleep prevention"),PW(),KU()},NT),W7.unref()}function GU(){if(W7!==null)clearInterval(W7),W7=null}function KU(){if(process.platform!=="darwin")return;if(eY!==null)return;if(!JU)JU=!0,zW(async()=>{OT()});try{eY=DT("caffeinate",["-i","-t",String(UT)],{stdio:"ignore"}),eY.unref();let Y=eY;eY.on("error",(Z)=>{if(g(`caffeinate spawn error: ${Z.message}`),eY===Y)eY=null}),eY.on("exit",()=>{if(eY===Y)eY=null}),g("Started caffeinate to prevent sleep")}catch{eY=null}}function PW(){if(eY!==null){let Y=eY;eY=null;try{Y.kill("SIGKILL"),g("Stopped caffeinate, allowing sleep")}catch{}}}EW();function QU(Y){let{isLoading:Z,isWaitingForApproval:J,isShowingLocalJSXCommand:X,toolUseConfirmQueue:z,pendingWorkerRequest:G,pendingSandboxRequest:K}=Y;wW.useEffect(()=>{if(Z&&!J&&!X)return XU(),()=>zU()},[Z,J,X]);let Q=J||X?"waiting":Z?"busy":"idle",V=Q!=="waiting"?void 0:z.length>0?`approve ${z[0].tool.name}`:G?"worker request":K?"sandbox request":X?"dialog open":"input needed";return wW.useEffect(()=>{},[Q,V]),{sessionStatus:Q,waitingFor:V}}HU();DZ();wT();BY();PT();_W();lQ();import{dirname as AT}from"path";EW();rQ();o8();wU();cQ();AZ();FK();UU();async function SU(Y,Z,J,X){let{setAppState:z,store:G,mainThreadAgentDefinition:K,initialMainThreadAgentDefinition:Q,agentDefinitions:V,setMainThreadAgentDefinition:H,mainLoopModel:W,restoreReadFileState:D,resetLoadingState:q,setAbortController:U,setConversationId:N,haikuTitleAttemptedRef:L,setHaikuTitle:F,contentReplacementStateRef:P,setMessages:w,setToolJSX:_,setInputValue:A}=X,j=performance.now();try{let y=PU(Z.messages);{let h=(dQ(),pJ(pQ)).matchSessionMode(Z.mode);if(h){let{getAgentDefinitionsWithOverrides:u,getActiveAgentsFromList:C}=(ET(),pJ(FT));u.cache.clear?.();let a=await u(QY());z((o)=>({...o,agentDefinitions:{...a,allAgents:a.allAgents,activeAgents:C(a.allAgents)}})),y.push(z8(h,"warning"))}}let b=kU();await FU("resume",{getAppState:()=>G.getState(),setAppState:z,signal:AbortSignal.timeout(b),timeoutMs:b});let R=await EU("resume",{sessionId:Y,agentType:K?.agentType,model:W});if(y.push(...R),J==="fork")BU(Z,uQ(Y));else qU(Z,uQ(Y));if(bU(Z,z),Z.fileHistorySnapshots)NU(Z);let{agentDefinition:k}=TU(Z.agentSetting,Q,V);H(k),z((T)=>({...T,agent:k?.agentType})),z((T)=>({...T,standaloneAgentContext:IU(Z.agentName,Z.agentColor)})),_U(Z.agentName),D(y,Z.projectPath??QY()),q(),U(null),N(Y);let f=LU(Y);iQ(),OU(),VU(uQ(Y),Z.fullPath?AT(Z.fullPath):null);let{renameRecordingForSession:$}=await import("./asciicast-0.5.7-rp1h8swq.mjs");if(await $(),await AU(),jU(),RU(Z),L.current=!0,F(void 0),J!=="fork")CU(),vU(Z.worktreeSession),MU(),aQ({abortController:new AbortController,getAppState:()=>G.getState(),setAppState:z});else{let T=n8();if(T)yU(T)}{let{saveMode:T}=(o8(),pJ(_T)),{isCoordinatorMode:h}=(dQ(),pJ(pQ));T(h()?"coordinator":"normal")}if(f)WU(f);if(P.current&&J!=="fork")P.current=DU(y,Z.contentReplacements??[]);let v=P.current?LK(y,P.current.replacements):y;w(()=>v),_(null),A(""),Z0("tengu_session_resumed",{entrypoint:J,success:!0,resume_duration_ms:Math.round(performance.now()-j)})}catch(y){throw Z0("tengu_session_resumed",{entrypoint:J,success:!1}),y}}du();m9();N0();dZ();qW();MQ();QW();JK();Du();AZ();HU();BZ();var TZ=x(Q0(),1),r=x(Q0(),1);import{writeFile as au}from"fs/promises";$U();class AW{_status="idle";_generation=0;_changed=nQ();reserve(){if(this._status!=="idle")return!1;return this._status="dispatching",this._notify(),!0}cancelReservation(){if(this._status!=="dispatching")return;this._status="idle",this._notify()}tryStart(){if(this._status==="running")return null;return this._status="running",++this._generation,this._notify(),this._generation}end(Y){if(this._generation!==Y)return!1;if(this._status!=="running")return!1;return this._status="idle",this._notify(),!0}forceEnd(){if(this._status==="idle")return;this._status="idle",++this._generation,this._notify()}get isActive(){return this._status!=="idle"}get generation(){return this._generation}subscribe=this._changed.subscribe;getSnapshot=()=>{return this._status!=="idle"};_notify(){this._changed.emit()}}rJ();vY();Bu();Kz();mQ();Jq();Y8();XK();LQ();MW();Tu();YZ();G8();o8();var x9=x(Q0(),1);function gU(Y,Z=!1){let J=t((Q)=>Q.teamContext),X=x9.useRef(0),z=x9.useRef(void 0),G=x9.useRef(void 0),K=x9.useRef(0);x9.useEffect(()=>{if(Z)return;let Q=Y[0]?.uuid,V=X.current,H=G.current===void 0,W=Q!==void 0&&!H&&Q===G.current&&V<=Y.length,D=Q!==void 0&&!H&&Q===G.current&&V>Y.length,q=W?V:0;if(q===Y.length)return;let U=q===0?Y:Y.slice(q),N=W?z.current:void 0,L=++K.current;if(xU(U,$Z()?{teamName:J?.teamName,agentName:J?.selfAgentName}:{},N,Y).then((F)=>{if(L!==K.current)return;if(F&&!W)z.current=F}),W||H||D){let F=hU(U,Y).findLast(fU);if(F)z.current=F.uuid}X.current=Y.length,G.current=Q},[Y,Z,J?.teamName,J?.selfAgentName])}AZ();var uY=x(Q0(),1);RW();RT();s8();MT();dZ();N0();qJ();YZ();HJ();BZ();yJ();RJ();BY();g9();MW();c();function mU(Y,Z,J,X,z){let G=uY.useRef(null),K=uY.useRef(void 0),Q=uY.useRef(0),V=uY.useRef(new Set),H=uY.useRef(void 0),W=uY.useRef(0),D=n0(),q=uY.useRef(X);q.current=X;let U=uY.useRef(z);U.current=z;let N=uY.useRef(Y);N.current=Y;let L=pZ(),{addNotification:F}=JZ(),P=!1,w=!1,_=!1,A=void 0;return uY.useEffect(()=>{},[P,_,D,Z,F]),uY.useEffect(()=>{},[Y,w]),{sendBridgeResult:uY.useCallback(()=>{},[])}}s8();EA();DZ();Q7();jW();bJ();EK();var cU=x(Q0(),1),jT=EX(()=>WZ.object({method:WZ.literal("log_event"),params:WZ.object({eventName:WZ.string(),eventData:WZ.object({}).passthrough()})}));function uU(Y){cU.useEffect(()=>{if(!Y.length)return;let Z=kJ(Y);if(Z)Z.client.setNotificationHandler(H7(jT()),(J)=>{let{eventName:X,eventData:z}=J.params;Z0(`tengu_ide_${X}`,z)})},[Y])}bS();IS();var nL=x(v0(),1);YY();GN();iW();WL();jS();FL();RS();MS();ML();$L();hL();mL();PK();PY();PX();N0();YY();DZ();YZ();GN();kW();zN();SW();rZ();dU();$W();lQ();var G5=x(v0(),1),X9=x(Q0(),1);TY();N0();YZ();m9();bJ();Z5();eX();bW();CT();IW();var oU=x(v0(),1),Y5=x(Q0(),1);TY();PY();N0();YY();YZ();m9();bJ();Z5();bW();hQ();IW();var RY=x(Q0(),1);PK();PY();PX();N0();kW();dU();yT();c();var tQ=x(v0(),1),eQ=x(Q0(),1),NJ={topLeft:"┌",topRight:"┐",bottomLeft:"└",bottomRight:"┘",horizontal:"─",vertical:"│",teeLeft:"├",teeRight:"┤"};function lU(Y){let Z=tQ.c(4);if(K8().syntaxHighlightingDisabled){let z;if(Z[0]!==Y)z=B(yW,{...Y,highlight:null}),Z[0]=Y,Z[1]=z;else z=Z[1];return z}let X;if(Z[2]!==Y)X=B(eQ.Suspense,{fallback:B(yW,{...Y,highlight:null}),children:B(kT,{...Y})}),Z[2]=Y,Z[3]=X;else X=Z[3];return X}function kT(Y){let Z=tQ.c(4),J;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))J=oQ(),Z[0]=J;else J=Z[0];let X=eQ.use(J),z;if(Z[1]!==X||Z[2]!==Y)z=B(yW,{...Y,highlight:X}),Z[1]=X,Z[2]=Y,Z[3]=z;else z=Z[3];return z}function yW(Y){let Z=tQ.c(34),{content:J,maxLines:X,minHeight:z,minWidth:G,maxWidth:K,highlight:Q}=Y,V=G===void 0?40:G,{columns:H}=PZ(),[W]=SZ(),D=K??H-4,q=X??20,U;if(Z[0]!==J||Z[1]!==Q||Z[2]!==W)U=sQ(J,W,Q),Z[0]=J,Z[1]=Q,Z[2]=W,Z[3]=U;else U=Z[3];let N=U,L,F,P,w,_,A;if(Z[4]!==q||Z[5]!==D||Z[6]!==z||Z[7]!==V||Z[8]!==N){let R=N.split(`
|
|
20
|
+
`),k=R.length>q,f=k?R.slice(0,q):R,$=Math.min(z??0,q),v=Math.max(0,$-f.length-(k?1:0)),T=v>0?[...f,...Array(v).fill("")]:f,h=Math.max(V,...T.map(bT)),u=Math.min(h+4,D),C=u-4,a;if(Z[15]!==u)a=NJ.horizontal.repeat(u-2),Z[15]=u,Z[16]=a;else a=Z[16];let o=`${NJ.topLeft}${a}${NJ.topRight}`,Y0;if(Z[17]!==u)Y0=NJ.horizontal.repeat(u-2),Z[17]=u,Z[18]=Y0;else Y0=Z[18];if(F=`${NJ.bottomLeft}${Y0}${NJ.bottomRight}`,A=k?(()=>{let p=R.length-q,K0=`${NJ.horizontal.repeat(3)} ✂ ${NJ.horizontal.repeat(3)} ${p} lines hidden `,G0=IZ(K0),J0=Math.max(0,u-2-G0);return`${NJ.teeLeft}${K0}${NJ.horizontal.repeat(J0)}${NJ.teeRight}`})():null,L=M,P="column",Z[19]!==o)w=B(O,{dimColor:!0,children:o}),Z[19]=o,Z[20]=w;else w=Z[20];let d;if(Z[21]!==C)d=(p,K0)=>{let J0=IZ(p)>C?pU(p,0,C):p,P0=" ".repeat(Math.max(0,C-IZ(J0)));return E(M,{flexDirection:"row",children:[E(O,{dimColor:!0,children:[NJ.vertical," "]}),B(wX,{children:J0}),E(O,{dimColor:!0,children:[P0," ",NJ.vertical]})]},K0)},Z[21]=C,Z[22]=d;else d=Z[22];_=T.map(d),Z[4]=q,Z[5]=D,Z[6]=z,Z[7]=V,Z[8]=N,Z[9]=L,Z[10]=F,Z[11]=P,Z[12]=w,Z[13]=_,Z[14]=A}else L=Z[9],F=Z[10],P=Z[11],w=Z[12],_=Z[13],A=Z[14];let j;if(Z[23]!==A)j=A&&B(O,{color:"warning",children:A}),Z[23]=A,Z[24]=j;else j=Z[24];let y;if(Z[25]!==F)y=B(O,{dimColor:!0,children:F}),Z[25]=F,Z[26]=y;else y=Z[26];let b;if(Z[27]!==L||Z[28]!==P||Z[29]!==w||Z[30]!==_||Z[31]!==j||Z[32]!==y)b=E(L,{flexDirection:P,children:[w,_,j,y]}),Z[27]=L,Z[28]=P,Z[29]=w,Z[30]=_,Z[31]=j,Z[32]=y,Z[33]=b;else b=Z[33];return b}function bT(Y){return IZ(Y)}TY();PY();PX();N0();vY();c();var rU=x(v0(),1);function q7(Y){let Z=rU.c(39),{questions:J,currentQuestionIndex:X,answers:z,hideSubmitTab:G}=Y,K=G===void 0?!1:G,{columns:Q}=PZ(),V;if(Z[0]!==Q||Z[1]!==X||Z[2]!==K||Z[3]!==J){Z:{let F=K?"":` ${R0.tick} Submit `,P=IZ("← ")+IZ(" →")+IZ(F),w=Q-P;if(w<=0){let T;if(Z[5]!==X||Z[6]!==J){let h;if(Z[8]!==X)h=(u,C)=>{let a=u?.header||`Q${C+1}`;return C===X?a.slice(0,3):""},Z[8]=X,Z[9]=h;else h=Z[9];T=J.map(h),Z[5]=X,Z[6]=J,Z[7]=T}else T=Z[7];V=T;break Z}let _=J.map(vT);if(_.map(TT).reduce(IT,0)<=w){V=_;break Z}let y=_[X]||"",b=4+IZ(y),R=Math.min(b,w/2),k=w-R,f=J.length-1,$=Math.max(6,Math.floor(k/Math.max(f,1))),v;if(Z[10]!==X||Z[11]!==R||Z[12]!==$)v=(T,h)=>{if(h===X){let u=R-2-2;return CY(T,u)}else{let u=$-2-2;return CY(T,u)}},Z[10]=X,Z[11]=R,Z[12]=$,Z[13]=v;else v=Z[13];V=_.map(v)}Z[0]=Q,Z[1]=X,Z[2]=K,Z[3]=J,Z[4]=V}else V=Z[4];let H=V,W=J.length===1&&K,D;if(Z[14]!==X||Z[15]!==W)D=!W&&E(O,{color:X===0?"inactive":void 0,children:["←"," "]}),Z[14]=X,Z[15]=W,Z[16]=D;else D=Z[16];let q;if(Z[17]!==z||Z[18]!==X||Z[19]!==J||Z[20]!==H){let F;if(Z[22]!==z||Z[23]!==X||Z[24]!==H)F=(P,w)=>{let _=w===X,j=P?.question&&!!z[P.question]?R0.checkboxOn:R0.checkboxOff,y=H[w]||P?.header||`Q${w+1}`;return B(M,{children:_?E(O,{backgroundColor:"permission",color:"inverseText",children:[" ",j," ",y," "]}):E(O,{children:[" ",j," ",y," "]})},P?.question||`question-${w}`)},Z[22]=z,Z[23]=X,Z[24]=H,Z[25]=F;else F=Z[25];q=J.map(F),Z[17]=z,Z[18]=X,Z[19]=J,Z[20]=H,Z[21]=q}else q=Z[21];let U;if(Z[26]!==X||Z[27]!==K||Z[28]!==J.length)U=!K&&B(M,{children:X===J.length?E(O,{backgroundColor:"permission",color:"inverseText",children:[" ",R0.tick," Submit"," "]}):E(O,{children:[" ",R0.tick," Submit "]})},"submit"),Z[26]=X,Z[27]=K,Z[28]=J.length,Z[29]=U;else U=Z[29];let N;if(Z[30]!==X||Z[31]!==W||Z[32]!==J.length)N=!W&&E(O,{color:X===J.length?"inactive":void 0,children:[" ","→"]}),Z[30]=X,Z[31]=W,Z[32]=J.length,Z[33]=N;else N=Z[33];let L;if(Z[34]!==D||Z[35]!==q||Z[36]!==U||Z[37]!==N)L=E(M,{flexDirection:"row",marginBottom:1,children:[D,q,U,N]}),Z[34]=D,Z[35]=q,Z[36]=U,Z[37]=N,Z[38]=L;else L=Z[38];return L}function IT(Y,Z){return Y+Z}function TT(Y){return 4+IZ(Y)}function vT(Y,Z){return Y?.header||`Q${Z+1}`}c();function iU({question:Y,questions:Z,currentQuestionIndex:J,answers:X,questionStates:z,hideSubmitTab:G=!1,minContentHeight:K,minContentWidth:Q,onUpdateQuestionState:V,onAnswer:H,onTextInputFocus:W,onCancel:D,onTabPrev:q,onTabNext:U,onRespondToClaude:N,onFinishPlanInterview:L}){let F=t((l)=>l.toolPermissionContext.mode)==="plan",[P,w]=RY.useState(!1),[_,A]=RY.useState(0),[j,y]=RY.useState(!1),[b,R]=RY.useState(0),k=e8(),f=k?t8(k):null,$=Y.question,v=z[$],T=Y.options,[h,u]=RY.useState(0),C=RY.useRef($);if(C.current!==$){C.current=$;let l=v?.selectedValue,L0=l?T.findIndex((F0)=>F0.label===l):-1;u(L0>=0?L0:0)}let a=T[h],o=v?.selectedValue,Y0=v?.textInputValue||"",d=RY.useCallback((l)=>{let L0=T[l];if(!L0)return;u(l),V($,{selectedValue:L0.label},!1),H($,L0.label)},[T,$,V,H]),p=RY.useCallback((l)=>{if(j)return;let L0;if(typeof l==="number")L0=l;else if(l==="up")L0=h>0?h-1:h;else L0=h<T.length-1?h+1:h;if(L0>=0&&L0<T.length)u(L0)},[h,T.length,j]);KZ("chat:externalEditor",async()=>{let l=v?.textInputValue||"",L0=await Z9(l);if(L0.content!==null&&L0.content!==l)V($,{textInputValue:L0.content},!1)},{context:"Chat",isActive:j&&!!k}),uZ({"tabs:previous":()=>q?.(),"tabs:next":()=>U?.()},{context:"Tabs",isActive:!j&&!P});let K0=RY.useCallback(()=>{if(y(!1),W(!1),o)H($,o)},[o,$,H,W]),G0=RY.useCallback(()=>{w(!0)},[]),J0=RY.useCallback(()=>{w(!1)},[]),P0=RY.useCallback((l)=>{if(P){if(l.key==="up"||l.ctrl&&l.key==="p"){if(l.preventDefault(),_===0)J0();else A(0);return}if(l.key==="down"||l.ctrl&&l.key==="n"){if(l.preventDefault(),F&&_===0)A(1);return}if(l.key==="return"){if(l.preventDefault(),_===0)N();else L();return}if(l.key==="escape")l.preventDefault(),D();return}if(j){if(l.key==="escape")l.preventDefault(),K0();return}if(l.key==="up"||l.ctrl&&l.key==="p"){if(l.preventDefault(),h>0)p("up")}else if(l.key==="down"||l.ctrl&&l.key==="n")if(l.preventDefault(),h===T.length-1)G0();else p("down");else if(l.key==="return")l.preventDefault(),d(h);else if(l.key==="n"&&!l.ctrl&&!l.meta)l.preventDefault(),y(!0),W(!0);else if(l.key==="escape")l.preventDefault(),D();else if(l.key.length===1&&l.key>="1"&&l.key<="9"){l.preventDefault();let L0=parseInt(l.key,10)-1;if(L0<T.length)p(L0)}},[P,_,F,j,h,T.length,J0,G0,p,d,K0,N,L,D,W]),M0=a?.preview||null,I0=30,q0=4,{columns:X0}=PZ(),H0=X0-I0-q0,j0=11,V0=RY.useMemo(()=>{return K?Math.max(1,K-j0):void 0},[K]);return E(M,{flexDirection:"column",marginTop:1,tabIndex:0,autoFocus:!0,onKeyDown:P0,children:[B(Q8,{color:"inactive"}),E(M,{flexDirection:"column",paddingTop:0,children:[B(q7,{questions:Z,currentQuestionIndex:J,answers:X,hideSubmitTab:G}),B(B7,{title:Y.question,color:"text"}),E(M,{flexDirection:"column",minHeight:K,children:[E(M,{marginTop:1,flexDirection:"row",gap:4,children:[B(M,{flexDirection:"column",width:30,children:T.map((l,L0)=>{let F0=h===L0,$0=o===l.label;return E(M,{flexDirection:"row",children:[F0?B(O,{color:"suggestion",children:R0.pointer}):B(O,{children:" "}),E(O,{dimColor:!0,children:[" ",L0+1,"."]}),E(O,{color:$0?"success":F0?"suggestion":void 0,bold:F0,children:[" ",l.label]}),$0&&E(O,{color:"success",children:[" ",R0.tick]})]},l.label)})}),E(M,{flexDirection:"column",flexGrow:1,children:[B(lU,{content:M0||"No preview available",maxLines:V0,minWidth:Q,maxWidth:H0}),E(M,{marginTop:1,flexDirection:"row",gap:1,children:[B(O,{color:"suggestion",children:"Notes:"}),j?B(r8,{value:Y0,placeholder:"Add notes on this design…",onChange:(l)=>{V($,{textInputValue:l},!1)},onSubmit:K0,onExit:K0,focus:!0,showCursor:!0,columns:60,cursorOffset:b,onChangeCursorOffset:R}):B(O,{dimColor:!0,italic:!0,children:Y0||"press n to add notes"})]})]})]}),E(M,{flexDirection:"column",marginTop:1,children:[B(Q8,{color:"inactive"}),E(M,{flexDirection:"row",gap:1,children:[P&&_===0?B(O,{color:"suggestion",children:R0.pointer}):B(O,{children:" "}),B(O,{color:P&&_===0?"suggestion":void 0,children:"Chat about this"})]}),F&&E(M,{flexDirection:"row",gap:1,children:[P&&_===1?B(O,{color:"suggestion",children:R0.pointer}):B(O,{children:" "}),B(O,{color:P&&_===1?"suggestion":void 0,children:"Skip interview and plan immediately"})]})]}),B(M,{marginTop:1,children:E(O,{color:"inactive",dimColor:!0,children:["Enter to select · ",R0.arrowUp,"/",R0.arrowDown," to navigate · n to add notes",Z.length>1&&B(A0,{children:" · Tab to switch questions"}),j&&f&&E(A0,{children:[" · ctrl+g to edit in ",f]})," ","· Esc to cancel"]})})]})]})]})}c();function sU(Y){let Z=oU.c(114),{question:J,questions:X,currentQuestionIndex:z,answers:G,questionStates:K,hideSubmitTab:Q,planFilePath:V,minContentHeight:H,minContentWidth:W,onUpdateQuestionState:D,onAnswer:q,onTextInputFocus:U,onCancel:N,onSubmit:L,onTabPrev:F,onTabNext:P,onRespondToClaude:w,onFinishPlanInterview:_,onImagePaste:A,pastedContents:j,onRemoveImage:y}=Y,b=Q===void 0?!1:Q,R=t(hT)==="plan",[k,f]=Y5.useState(!1),[$,v]=Y5.useState(0),[T,h]=Y5.useState(!1),u;if(Z[0]===Symbol.for("react.memo_cache_sentinel")){let z0=e8();u=z0?t8(z0):null,Z[0]=u}else u=Z[0];let C=u,a;if(Z[1]!==U)a=(z0)=>{let C0=z0==="__other__";h(C0),U(C0)},Z[1]=U,Z[2]=a;else a=Z[2];let o=a,Y0;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))Y0=()=>{v(0),f(!0)},Z[3]=Y0;else Y0=Z[3];let d=Y0,p;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))p=()=>{f(!1)},Z[4]=p;else p=Z[4];let K0=p;lZ((z0,C0,h0)=>{if(!k)return;if(C0.upArrow||C0.ctrl&&z0==="p"){if(h0.stopImmediatePropagation(),$===0)K0();else v(0);return}if(C0.downArrow||C0.ctrl&&z0==="n"){if(h0.stopImmediatePropagation(),R&&$===0)v(1);return}if(C0.return){if(h0.stopImmediatePropagation(),$===0)w();else _();return}if(C0.escape)h0.stopImmediatePropagation(),N()},{isActive:k});let G0,J0,P0;if(Z[12]!==D||Z[13]!==J||Z[14]!==K){let z0=J.options.map(fT);J0=J.question;let C0=K[J0],h0;if(Z[18]!==D||Z[19]!==J.multiSelect||Z[20]!==J0)h0=async(f0,t0)=>{let m0=await Z9(f0);if(m0.content!==null&&m0.content!==f0)t0(m0.content),D(J0,{textInputValue:m0.content},J.multiSelect??!1)},Z[18]=D,Z[19]=J.multiSelect,Z[20]=J0,Z[21]=h0;else h0=Z[21];G0=h0;let wZ=J.multiSelect?"Type something":"Type something.",y0=C0?.textInputValue??"",o0;if(Z[22]!==D||Z[23]!==J.multiSelect||Z[24]!==J0)o0=(f0)=>{D(J0,{textInputValue:f0},J.multiSelect??!1)},Z[22]=D,Z[23]=J.multiSelect,Z[24]=J0,Z[25]=o0;else o0=Z[25];let g0;if(Z[26]!==y0||Z[27]!==o0||Z[28]!==wZ)g0={type:"input",value:"__other__",label:"Other",placeholder:wZ,initialValue:y0,onChange:o0},Z[26]=y0,Z[27]=o0,Z[28]=wZ,Z[29]=g0;else g0=Z[29];let x0=g0;P0=[...z0,x0],Z[12]=D,Z[13]=J,Z[14]=K,Z[15]=G0,Z[16]=J0,Z[17]=P0}else G0=Z[15],J0=Z[16],P0=Z[17];let M0=P0;if(!J.multiSelect&&J.options.some($T)){let z0;if(Z[30]!==G||Z[31]!==z||Z[32]!==b||Z[33]!==H||Z[34]!==W||Z[35]!==q||Z[36]!==N||Z[37]!==_||Z[38]!==w||Z[39]!==P||Z[40]!==F||Z[41]!==U||Z[42]!==D||Z[43]!==J||Z[44]!==K||Z[45]!==X)z0=B(iU,{question:J,questions:X,currentQuestionIndex:z,answers:G,questionStates:K,hideSubmitTab:b,minContentHeight:H,minContentWidth:W,onUpdateQuestionState:D,onAnswer:q,onTextInputFocus:U,onCancel:N,onTabPrev:F,onTabNext:P,onRespondToClaude:w,onFinishPlanInterview:_}),Z[30]=G,Z[31]=z,Z[32]=b,Z[33]=H,Z[34]=W,Z[35]=q,Z[36]=N,Z[37]=_,Z[38]=w,Z[39]=P,Z[40]=F,Z[41]=U,Z[42]=D,Z[43]=J,Z[44]=K,Z[45]=X,Z[46]=z0;else z0=Z[46];return z0}let q0;if(Z[47]!==R||Z[48]!==V)q0=R&&V&&E(M,{flexDirection:"column",gap:0,children:[B(Q8,{color:"inactive"}),E(O,{color:"inactive",children:["Planning: ",B(aU,{filePath:V})]})]}),Z[47]=R,Z[48]=V,Z[49]=q0;else q0=Z[49];let X0;if(Z[50]===Symbol.for("react.memo_cache_sentinel"))X0=B(M,{marginTop:-1,children:B(Q8,{color:"inactive"})}),Z[50]=X0;else X0=Z[50];let H0;if(Z[51]!==G||Z[52]!==z||Z[53]!==b||Z[54]!==X)H0=B(q7,{questions:X,currentQuestionIndex:z,answers:G,hideSubmitTab:b}),Z[51]=G,Z[52]=z,Z[53]=b,Z[54]=X,Z[55]=H0;else H0=Z[55];let j0;if(Z[56]!==J.question)j0=B(B7,{title:J.question,color:"text"}),Z[56]=J.question,Z[57]=j0;else j0=Z[57];let V0;if(Z[58]!==z||Z[59]!==o||Z[60]!==G0||Z[61]!==k||Z[62]!==q||Z[63]!==N||Z[64]!==A||Z[65]!==y||Z[66]!==L||Z[67]!==D||Z[68]!==M0||Z[69]!==j||Z[70]!==J.multiSelect||Z[71]!==J.question||Z[72]!==K||Z[73]!==J0||Z[74]!==X.length)V0=B(M,{marginTop:1,children:J.multiSelect?B(nU,{options:M0,defaultValue:K[J.question]?.selectedValue,onChange:(z0)=>{D(J0,{selectedValue:z0},!0);let C0=z0.includes("__other__")?K[J0]?.textInputValue:void 0,h0=z0.filter(ST).concat(C0?[C0]:[]);q(J0,h0,void 0,!1)},onFocus:o,onCancel:N,submitButtonText:z===X.length-1?"Submit":"Next",onSubmit:L,onDownFromLastItem:d,isDisabled:k,onOpenEditor:G0,onImagePaste:A,pastedContents:j,onRemoveImage:y},J.question):B(qZ,{options:M0,defaultValue:K[J.question]?.selectedValue,onChange:(z0)=>{D(J0,{selectedValue:z0},!1);let C0=z0==="__other__"?K[J0]?.textInputValue:void 0;q(J0,z0,C0)},onFocus:o,onCancel:N,onDownFromLastItem:d,isDisabled:k,layout:"compact-vertical",onOpenEditor:G0,onImagePaste:A,pastedContents:j,onRemoveImage:y},J.question)}),Z[58]=z,Z[59]=o,Z[60]=G0,Z[61]=k,Z[62]=q,Z[63]=N,Z[64]=A,Z[65]=y,Z[66]=L,Z[67]=D,Z[68]=M0,Z[69]=j,Z[70]=J.multiSelect,Z[71]=J.question,Z[72]=K,Z[73]=J0,Z[74]=X.length,Z[75]=V0;else V0=Z[75];let l;if(Z[76]===Symbol.for("react.memo_cache_sentinel"))l=B(Q8,{color:"inactive"}),Z[76]=l;else l=Z[76];let L0;if(Z[77]!==$||Z[78]!==k)L0=k&&$===0?B(O,{color:"suggestion",children:R0.pointer}):B(O,{children:" "}),Z[77]=$,Z[78]=k,Z[79]=L0;else L0=Z[79];let F0=k&&$===0?"suggestion":void 0,$0=M0.length+1,LZ;if(Z[80]!==F0||Z[81]!==$0)LZ=E(O,{color:F0,children:[$0,". Chat about this"]}),Z[80]=F0,Z[81]=$0,Z[82]=LZ;else LZ=Z[82];let n;if(Z[83]!==L0||Z[84]!==LZ)n=E(M,{flexDirection:"row",gap:1,children:[L0,LZ]}),Z[83]=L0,Z[84]=LZ,Z[85]=n;else n=Z[85];let W0;if(Z[86]!==$||Z[87]!==k||Z[88]!==R||Z[89]!==M0.length)W0=R&&E(M,{flexDirection:"row",gap:1,children:[k&&$===1?B(O,{color:"suggestion",children:R0.pointer}):B(O,{children:" "}),E(O,{color:k&&$===1?"suggestion":void 0,children:[M0.length+2,". Skip interview and plan immediately"]})]}),Z[86]=$,Z[87]=k,Z[88]=R,Z[89]=M0.length,Z[90]=W0;else W0=Z[90];let B0;if(Z[91]!==n||Z[92]!==W0)B0=E(M,{flexDirection:"column",children:[l,n,W0]}),Z[91]=n,Z[92]=W0,Z[93]=B0;else B0=Z[93];let w0;if(Z[94]!==X.length)w0=X.length===1?E(A0,{children:[R0.arrowUp,"/",R0.arrowDown," to navigate"]}):"Tab/Arrow keys to navigate",Z[94]=X.length,Z[95]=w0;else w0=Z[95];let S0;if(Z[96]!==T)S0=T&&C&&E(A0,{children:[" · ctrl+g to edit in ",C]}),Z[96]=T,Z[97]=S0;else S0=Z[97];let b0;if(Z[98]!==w0||Z[99]!==S0)b0=B(M,{marginTop:1,children:E(O,{color:"inactive",dimColor:!0,children:["Enter to select ·"," ",w0,S0," ","· Esc to cancel"]})}),Z[98]=w0,Z[99]=S0,Z[100]=b0;else b0=Z[100];let U0;if(Z[101]!==H||Z[102]!==V0||Z[103]!==B0||Z[104]!==b0)U0=E(M,{flexDirection:"column",minHeight:H,children:[V0,B0,b0]}),Z[101]=H,Z[102]=V0,Z[103]=B0,Z[104]=b0,Z[105]=U0;else U0=Z[105];let m;if(Z[106]!==H0||Z[107]!==j0||Z[108]!==U0)m=E(M,{flexDirection:"column",paddingTop:0,children:[H0,j0,U0]}),Z[106]=H0,Z[107]=j0,Z[108]=U0,Z[109]=m;else m=Z[109];let D0;if(Z[111]!==m||Z[112]!==q0)D0=E(M,{flexDirection:"column",marginTop:0,tabIndex:0,autoFocus:!0,children:[q0,X0,m]}),Z[111]=m,Z[112]=q0,Z[113]=D0;else D0=Z[113];return D0}function ST(Y){return Y!=="__other__"}function $T(Y){return Y.preview}function fT(Y){return{type:"text",value:Y.label,label:Y.label,description:Y.description}}function hT(Y){return Y.toolPermissionContext.mode}TY();N0();eX();bW();IW();V8();var ZN=x(v0(),1);c();function YN(Y){let Z=ZN.c(27),{questions:J,currentQuestionIndex:X,answers:z,allQuestionsAnswered:G,permissionResult:K,minContentHeight:Q,onFinalResponse:V}=Y,H;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))H=B(Q8,{color:"inactive"}),Z[0]=H;else H=Z[0];let W;if(Z[1]!==z||Z[2]!==X||Z[3]!==J)W=B(q7,{questions:J,currentQuestionIndex:X,answers:z}),Z[1]=z,Z[2]=X,Z[3]=J,Z[4]=W;else W=Z[4];let D;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))D=B(B7,{title:"Review your answers",color:"text"}),Z[5]=D;else D=Z[5];let q;if(Z[6]!==G)q=!G&&B(M,{marginBottom:1,children:E(O,{color:"warning",children:[R0.warning," You have not answered all questions"]})}),Z[6]=G,Z[7]=q;else q=Z[7];let U;if(Z[8]!==z||Z[9]!==J)U=Object.keys(z).length>0&&B(M,{flexDirection:"column",marginBottom:1,children:J.filter((j)=>j?.question&&z[j.question]).map((j)=>{let y=z[j?.question];return E(M,{flexDirection:"column",marginLeft:1,children:[E(O,{children:[R0.bullet," ",j?.question||"Question"]}),B(M,{marginLeft:2,children:E(O,{color:"success",children:[R0.arrowRight," ",y]})})]},j?.question||"answer")})}),Z[8]=z,Z[9]=J,Z[10]=U;else U=Z[10];let N;if(Z[11]!==K)N=B(SY,{permissionResult:K,toolType:"tool"}),Z[11]=K,Z[12]=N;else N=Z[12];let L;if(Z[13]===Symbol.for("react.memo_cache_sentinel"))L=B(O,{color:"inactive",children:"Ready to submit your answers?"}),Z[13]=L;else L=Z[13];let F;if(Z[14]===Symbol.for("react.memo_cache_sentinel"))F={type:"text",label:"Submit answers",value:"submit"},Z[14]=F;else F=Z[14];let P;if(Z[15]===Symbol.for("react.memo_cache_sentinel"))P=[F,{type:"text",label:"Cancel",value:"cancel"}],Z[15]=P;else P=Z[15];let w;if(Z[16]!==V)w=B(M,{marginTop:1,children:B(qZ,{options:P,onChange:(j)=>V(j),onCancel:()=>V("cancel")})}),Z[16]=V,Z[17]=w;else w=Z[17];let _;if(Z[18]!==Q||Z[19]!==w||Z[20]!==q||Z[21]!==U||Z[22]!==N)_=E(M,{flexDirection:"column",marginTop:1,minHeight:Q,children:[q,U,N,L,w]}),Z[18]=Q,Z[19]=w,Z[20]=q,Z[21]=U,Z[22]=N,Z[23]=_;else _=Z[23];let A;if(Z[24]!==_||Z[25]!==W)A=E(M,{flexDirection:"column",marginTop:1,children:[H,E(M,{flexDirection:"column",borderTop:!0,borderColor:"inactive",paddingTop:0,children:[W,D,_]})]}),Z[24]=_,Z[25]=W,Z[26]=A;else A=Z[26];return A}var J9=x(Q0(),1);function mT(Y,Z){switch(Z.type){case"next-question":return{...Y,currentQuestionIndex:Y.currentQuestionIndex+1,isInTextInput:!1};case"prev-question":return{...Y,currentQuestionIndex:Math.max(0,Y.currentQuestionIndex-1),isInTextInput:!1};case"update-question-state":{let J=Y.questionStates[Z.questionText],X={selectedValue:Z.updates.selectedValue??J?.selectedValue??(Z.isMultiSelect?[]:void 0),textInputValue:Z.updates.textInputValue??J?.textInputValue??""};return{...Y,questionStates:{...Y.questionStates,[Z.questionText]:X}}}case"set-answer":{let J={...Y,answers:{...Y.answers,[Z.questionText]:Z.answer}};if(Z.shouldAdvance)return{...J,currentQuestionIndex:J.currentQuestionIndex+1,isInTextInput:!1};return J}case"set-text-input-mode":return{...Y,isInTextInput:Z.isInInput}}}var cT={currentQuestionIndex:0,answers:{},questionStates:{},isInTextInput:!1};function JN(){let[Y,Z]=J9.useReducer(mT,cT),J=J9.useCallback(()=>{Z({type:"next-question"})},[]),X=J9.useCallback(()=>{Z({type:"prev-question"})},[]),z=J9.useCallback((Q,V,H)=>{Z({type:"update-question-state",questionText:Q,updates:V,isMultiSelect:H})},[]),G=J9.useCallback((Q,V,H=!0)=>{Z({type:"set-answer",questionText:Q,answer:V,shouldAdvance:H})},[]),K=J9.useCallback((Q)=>{Z({type:"set-text-input-mode",isInInput:Q})},[]);return{currentQuestionIndex:Y.currentQuestionIndex,answers:Y.answers,questionStates:Y.questionStates,isInTextInput:Y.isInTextInput,nextQuestion:J,prevQuestion:X,updateQuestionState:z,setAnswer:G,setTextInputMode:K}}c();var XN=12,uT=40,pT=15;function KN(Y){let Z=G5.c(4);if(K8().syntaxHighlightingDisabled){let z;if(Z[0]!==Y)z=B(CW,{...Y,highlight:null}),Z[0]=Y,Z[1]=z;else z=Z[1];return z}let X;if(Z[2]!==Y)X=B(X9.Suspense,{fallback:B(CW,{...Y,highlight:null}),children:B(dT,{...Y})}),Z[2]=Y,Z[3]=X;else X=Z[3];return X}function dT(Y){let Z=G5.c(4),J;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))J=oQ(),Z[0]=J;else J=Z[0];let X=X9.use(J),z;if(Z[1]!==X||Z[2]!==Y)z=B(CW,{...Y,highlight:X}),Z[1]=X,Z[2]=Y,Z[3]=z;else z=Z[3];return z}function CW(Y){let Z=G5.c(115),{toolUseConfirm:J,onDone:X,onReject:z,highlight:G}=Y,K;if(Z[0]!==J.input)K=z5.inputSchema.safeParse(J.input),Z[0]=J.input,Z[1]=K;else K=Z[1];let Q=K,V;if(Z[2]!==Q.data||Z[3]!==Q.success)V=Q.success?Q.data.questions||[]:[],Z[2]=Q.data,Z[3]=Q.success,Z[4]=V;else V=Z[4];let H=V,{rows:W}=PZ(),[D]=SZ(),q=0,U=0,N=Math.max(XN,W-pT);if(Z[5]!==G||Z[6]!==N||Z[7]!==q||Z[8]!==U||Z[9]!==H||Z[10]!==D){for(let x0 of H)if(x0.options.some(oT)){let t0=Math.max(1,N-11),m0=0;for(let hZ of x0.options)if(hZ.preview){let cZ=sQ(hZ.preview,D,G).split(`
|
|
21
|
+
`),KJ=cZ.length>t0,A8=KJ?t0:cZ.length;m0=Math.max(m0,A8+(KJ?1:0)+2);for(let M8 of cZ)U=Math.max(U,IZ(M8))}let VZ=m0+2,yZ=x0.options.length+2,NZ=Math.max(yZ,VZ);q=Math.max(q,NZ+7)}else q=Math.max(q,x0.options.length+3+7);Z[5]=G,Z[6]=N,Z[7]=q,Z[8]=U,Z[9]=H,Z[10]=D,Z[11]=q}else q=Z[11];let L=Math.min(Math.max(q,XN),N),F=Math.max(U,uT),P;if(Z[12]!==L||Z[13]!==F)P={globalContentHeight:L,globalContentWidth:F},Z[12]=L,Z[13]=F,Z[14]=P;else P=Z[14];let{globalContentHeight:w,globalContentWidth:_}=P,A=Q.success?Q.data.metadata?.source:void 0,j;if(Z[15]===Symbol.for("react.memo_cache_sentinel"))j={},Z[15]=j;else j=Z[15];let[y,b]=X9.useState(j),R=X9.useRef(0),k;if(Z[16]===Symbol.for("react.memo_cache_sentinel"))k=function(f0,t0,m0,VZ,yZ,NZ){R.current=R.current+1;let hZ=R.current,oZ={id:hZ,type:"image",content:t0,mediaType:m0||"image/png",filename:VZ||"Pasted image",dimensions:yZ};U7(oZ),N7(oZ),b((cZ)=>({...cZ,[f0]:{...cZ[f0]??{},[hZ]:oZ}}))},Z[16]=k;else k=Z[16];let f=k,$;if(Z[17]===Symbol.for("react.memo_cache_sentinel"))$=(x0,f0)=>{b((t0)=>{let m0={...t0[x0]??{}};return delete m0[f0],{...t0,[x0]:m0}})},Z[17]=$;else $=Z[17];let v=$,T;if(Z[18]!==y)T=Object.values(y).flatMap(nT).filter(aT),Z[18]=y,Z[19]=T;else T=Z[19];let h=T,C=t(iT)==="plan",a;if(Z[20]!==C)a=C?J5():void 0,Z[20]=C,Z[21]=a;else a=Z[21];let o=a,Y0=JN(),{currentQuestionIndex:d,answers:p,questionStates:K0,isInTextInput:G0,nextQuestion:J0,prevQuestion:P0,updateQuestionState:M0,setAnswer:I0,setTextInputMode:q0}=Y0,X0=d<(H?.length||0)?H?.[d]:null,H0=d===(H?.length||0),j0;if(Z[22]!==p||Z[23]!==H)j0=H?.every((x0)=>x0?.question&&!!p[x0.question])??!1,Z[22]=p,Z[23]=H,Z[24]=j0;else j0=Z[24];let V0=j0,l=H.length===1&&!H[0]?.multiSelect,L0;if(Z[25]!==C||Z[26]!==A||Z[27]!==X||Z[28]!==z||Z[29]!==H.length||Z[30]!==J)L0=()=>{if(A)Z0("tengu_ask_user_question_rejected",{source:A,questionCount:H.length,isInPlanMode:C,interviewPhaseEnabled:C&&wY()});X(),z(),J.onReject()},Z[25]=C,Z[26]=A,Z[27]=X,Z[28]=z,Z[29]=H.length,Z[30]=J,Z[31]=L0;else L0=Z[31];let F0=L0,$0;if(Z[32]!==h||Z[33]!==p||Z[34]!==C||Z[35]!==A||Z[36]!==X||Z[37]!==H||Z[38]!==J)$0=async()=>{let f0=`The user wants to clarify these questions.
|
|
22
|
+
This means they may have additional information, context or questions for you.
|
|
23
|
+
Take their response into account and then reformulate the questions if appropriate.
|
|
24
|
+
Start by asking them what they would like to clarify.
|
|
25
|
+
|
|
26
|
+
Questions asked:
|
|
27
|
+
${H.map((m0)=>{let VZ=p[m0.question];if(VZ)return`- "${m0.question}"
|
|
28
|
+
Answer: ${VZ}`;return`- "${m0.question}"
|
|
29
|
+
(No answer provided)`}).join(`
|
|
30
|
+
`)}`;if(A)Z0("tengu_ask_user_question_respond_to_claude",{source:A,questionCount:H.length,isInPlanMode:C,interviewPhaseEnabled:C&&wY()});let t0=await vW(h);X(),J.onReject(f0,t0&&t0.length>0?t0:void 0)},Z[32]=h,Z[33]=p,Z[34]=C,Z[35]=A,Z[36]=X,Z[37]=H,Z[38]=J,Z[39]=$0;else $0=Z[39];let LZ=$0,n;if(Z[40]!==h||Z[41]!==p||Z[42]!==C||Z[43]!==A||Z[44]!==X||Z[45]!==H||Z[46]!==J)n=async()=>{let f0=`The user has indicated they have provided enough answers for the plan interview.
|
|
31
|
+
Stop asking clarifying questions and proceed to finish the plan with the information you have.
|
|
32
|
+
|
|
33
|
+
Questions asked and answers provided:
|
|
34
|
+
${H.map((m0)=>{let VZ=p[m0.question];if(VZ)return`- "${m0.question}"
|
|
35
|
+
Answer: ${VZ}`;return`- "${m0.question}"
|
|
36
|
+
(No answer provided)`}).join(`
|
|
37
|
+
`)}`;if(A)Z0("tengu_ask_user_question_finish_plan_interview",{source:A,questionCount:H.length,isInPlanMode:C,interviewPhaseEnabled:C&&wY()});let t0=await vW(h);X(),J.onReject(f0,t0&&t0.length>0?t0:void 0)},Z[40]=h,Z[41]=p,Z[42]=C,Z[43]=A,Z[44]=X,Z[45]=H,Z[46]=J,Z[47]=n;else n=Z[47];let W0=n,B0;if(Z[48]!==h||Z[49]!==C||Z[50]!==A||Z[51]!==X||Z[52]!==K0||Z[53]!==H||Z[54]!==J)B0=async(x0)=>{if(A)Z0("tengu_ask_user_question_accepted",{source:A,questionCount:H.length,answerCount:Object.keys(x0).length,isInPlanMode:C,interviewPhaseEnabled:C&&wY()});let f0={};for(let VZ of H){let yZ=x0[VZ.question],NZ=K0[VZ.question]?.textInputValue,oZ=(yZ?VZ.options.find((cZ)=>cZ.label===yZ):void 0)?.preview;if(oZ||NZ?.trim())f0[VZ.question]={...oZ&&{preview:oZ},...NZ?.trim()&&{notes:NZ.trim()}}}let t0={...J.input,answers:x0,...Object.keys(f0).length>0&&{annotations:f0}},m0=await vW(h);X(),J.onAllow(t0,[],void 0,m0&&m0.length>0?m0:void 0)},Z[48]=h,Z[49]=C,Z[50]=A,Z[51]=X,Z[52]=K0,Z[53]=H,Z[54]=J,Z[55]=B0;else B0=Z[55];let w0=B0,S0;if(Z[56]!==p||Z[57]!==y||Z[58]!==H.length||Z[59]!==I0||Z[60]!==w0)S0=(x0,f0,t0,m0)=>{let VZ=m0===void 0?!0:m0,yZ,NZ=Array.isArray(f0);if(NZ)yZ=f0.join(", ");else if(t0)yZ=Object.values(y[x0]??{}).filter(rT).length>0?`${t0} (Image attached)`:t0;else if(f0==="__other__")yZ=Object.values(y[x0]??{}).filter(lT).length>0?"(Image attached)":f0;else yZ=f0;let hZ=H.length===1;if(!NZ&&hZ&&VZ){let oZ={...p,[x0]:yZ};w0(oZ).catch(u0);return}I0(x0,yZ,VZ)},Z[56]=p,Z[57]=y,Z[58]=H.length,Z[59]=I0,Z[60]=w0,Z[61]=S0;else S0=Z[61];let b0=S0,U0;if(Z[62]!==p||Z[63]!==F0||Z[64]!==w0)U0=function(f0){if(f0==="cancel"){F0();return}if(f0==="submit")w0(p).catch(u0)},Z[62]=p,Z[63]=F0,Z[64]=w0,Z[65]=U0;else U0=Z[65];let m=U0,D0=l?(H?.length||1)-1:H?.length||0,z0;if(Z[66]!==d||Z[67]!==P0)z0=()=>{if(d>0)P0()},Z[66]=d,Z[67]=P0,Z[68]=z0;else z0=Z[68];let C0=z0,h0;if(Z[69]!==d||Z[70]!==D0||Z[71]!==J0)h0=()=>{if(d<D0)J0()},Z[69]=d,Z[70]=D0,Z[71]=J0,Z[72]=h0;else h0=Z[72];let wZ=h0,y0;if(Z[73]!==wZ||Z[74]!==C0)y0={"tabs:previous":C0,"tabs:next":wZ},Z[73]=wZ,Z[74]=C0,Z[75]=y0;else y0=Z[75];let o0=!(G0&&!H0),g0;if(Z[76]!==o0)g0={context:"Tabs",isActive:o0},Z[76]=o0,Z[77]=g0;else g0=Z[77];if(uZ(y0,g0),X0){let x0;if(Z[78]!==X0.question)x0=(VZ,yZ,NZ,hZ,oZ)=>f(X0.question,VZ,yZ,NZ,hZ,oZ),Z[78]=X0.question,Z[79]=x0;else x0=Z[79];let f0;if(Z[80]!==X0.question||Z[81]!==y)f0=y[X0.question]??{},Z[80]=X0.question,Z[81]=y,Z[82]=f0;else f0=Z[82];let t0;if(Z[83]!==X0.question)t0=(VZ)=>v(X0.question,VZ),Z[83]=X0.question,Z[84]=t0;else t0=Z[84];let m0;if(Z[85]!==p||Z[86]!==X0||Z[87]!==d||Z[88]!==w||Z[89]!==_||Z[90]!==F0||Z[91]!==W0||Z[92]!==b0||Z[93]!==LZ||Z[94]!==wZ||Z[95]!==C0||Z[96]!==l||Z[97]!==J0||Z[98]!==o||Z[99]!==K0||Z[100]!==H||Z[101]!==q0||Z[102]!==x0||Z[103]!==f0||Z[104]!==t0||Z[105]!==M0)m0=B(A0,{children:B(sU,{question:X0,questions:H,currentQuestionIndex:d,answers:p,questionStates:K0,hideSubmitTab:l,minContentHeight:w,minContentWidth:_,planFilePath:o,onUpdateQuestionState:M0,onAnswer:b0,onTextInputFocus:q0,onCancel:F0,onSubmit:J0,onTabPrev:C0,onTabNext:wZ,onRespondToClaude:LZ,onFinishPlanInterview:W0,onImagePaste:x0,pastedContents:f0,onRemoveImage:t0})}),Z[85]=p,Z[86]=X0,Z[87]=d,Z[88]=w,Z[89]=_,Z[90]=F0,Z[91]=W0,Z[92]=b0,Z[93]=LZ,Z[94]=wZ,Z[95]=C0,Z[96]=l,Z[97]=J0,Z[98]=o,Z[99]=K0,Z[100]=H,Z[101]=q0,Z[102]=x0,Z[103]=f0,Z[104]=t0,Z[105]=M0,Z[106]=m0;else m0=Z[106];return m0}if(H0){let x0;if(Z[107]!==V0||Z[108]!==p||Z[109]!==d||Z[110]!==w||Z[111]!==m||Z[112]!==H||Z[113]!==J.permissionResult)x0=B(A0,{children:B(YN,{questions:H,currentQuestionIndex:d,answers:p,allQuestionsAnswered:V0,permissionResult:J.permissionResult,minContentHeight:w,onFinalResponse:m})}),Z[107]=V0,Z[108]=p,Z[109]=d,Z[110]=w,Z[111]=m,Z[112]=H,Z[113]=J.permissionResult,Z[114]=x0;else x0=Z[114];return x0}return null}function lT(Y){return Y.type==="image"}function rT(Y){return Y.type==="image"}function iT(Y){return Y.toolPermissionContext.mode}function aT(Y){return Y.type==="image"}function nT(Y){return Object.values(Y)}function oT(Y){return Y.preview}async function vW(Y){if(Y.length===0)return;return Promise.all(Y.map(async(Z)=>{let J={type:"image",source:{type:"base64",media_type:Z.mediaType||"image/png",data:Z.content}};return(await X5(J)).block}))}TY();N0();YY();qJ();DZ();dJ();YZ();iW();vK();var sW=x(v0(),1),WY=x(Q0(),1);var sT=[{pattern:/\bgit\s+reset\s+--hard\b/,warning:"Note: may discard uncommitted changes"},{pattern:/\bgit\s+push\b[^;&|\n]*[ \t](--force|--force-with-lease|-f)\b/,warning:"Note: may overwrite remote history"},{pattern:/\bgit\s+clean\b(?![^;&|\n]*(?:-[a-zA-Z]*n|--dry-run))[^;&|\n]*-[a-zA-Z]*f/,warning:"Note: may permanently delete untracked files"},{pattern:/\bgit\s+checkout\s+(--\s+)?\.[ \t]*($|[;&|\n])/,warning:"Note: may discard all working tree changes"},{pattern:/\bgit\s+restore\s+(--\s+)?\.[ \t]*($|[;&|\n])/,warning:"Note: may discard all working tree changes"},{pattern:/\bgit\s+stash[ \t]+(drop|clear)\b/,warning:"Note: may permanently remove stashed changes"},{pattern:/\bgit\s+branch\s+(-D[ \t]|--delete\s+--force|--force\s+--delete)\b/,warning:"Note: may force-delete a branch"},{pattern:/\bgit\s+(commit|push|merge)\b[^;&|\n]*--no-verify\b/,warning:"Note: may skip safety hooks"},{pattern:/\bgit\s+commit\b[^;&|\n]*--amend\b/,warning:"Note: may rewrite the last commit"},{pattern:/(^|[;&|\n]\s*)rm\s+-[a-zA-Z]*[rR][a-zA-Z]*f|(^|[;&|\n]\s*)rm\s+-[a-zA-Z]*f[a-zA-Z]*[rR]/,warning:"Note: may recursively force-remove files"},{pattern:/(^|[;&|\n]\s*)rm\s+-[a-zA-Z]*[rR]/,warning:"Note: may recursively remove files"},{pattern:/(^|[;&|\n]\s*)rm\s+-[a-zA-Z]*f/,warning:"Note: may force-remove files"},{pattern:/\b(DROP|TRUNCATE)\s+(TABLE|DATABASE|SCHEMA)\b/i,warning:"Note: may drop or truncate database objects"},{pattern:/\bDELETE\s+FROM\s+\w+[ \t]*(;|"|'|\n|$)/i,warning:"Note: may delete all rows from a database table"},{pattern:/\bkubectl\s+delete\b/,warning:"Note: may delete Kubernetes resources"},{pattern:/\bterraform\s+destroy\b/,warning:"Note: may destroy Terraform infrastructure"}];function QN(Y){for(let{pattern:Z,warning:J}of sT)if(Z.test(Y))return J;return null}NO();EC();var tT=["http://","https://","ftp://"],u9={rg:2,"pre-commit":2,gcloud:4,"gcloud compute":6,"gcloud beta":6,aws:4,az:4,kubectl:3,docker:3,dotnet:3,"git push":2},O7=(Y)=>Array.isArray(Y)?Y:[Y];function fW(Y,Z){if(!Z?.subcommands?.length)return!1;let J=Y.toLowerCase();return Z.subcommands.some((X)=>Array.isArray(X.name)?X.name.some((z)=>z.toLowerCase()===J):X.name.toLowerCase()===J)}function VN(Y,Z,J){if(J?.options){let X=J.options.find((z)=>Array.isArray(z.name)?z.name.includes(Y):z.name===Y);if(X)return!!X.args}if(J?.subcommands?.length&&Z&&!Z.startsWith("-"))return!fW(Z,J);return!1}function eT(Y,Z){for(let J=0;J<Y.length;J++){let X=Y[J];if(!X)continue;if(X.startsWith("-")){if(VN(X,Y[J+1],Z))J++;continue}if(!Z?.subcommands?.length)return X;if(fW(X,Z))return X}return}async function K5(Y,Z,J){let X=await Zv(Y,Z,J),z=[Y],G=!!J?.subcommands?.length,K=!1;for(let Q=0;Q<Z.length;Q++){let V=Z[Q];if(!V||z.length>=X)break;if(V.startsWith("-")){if(V==="-c"&&["python","python3"].includes(Y.toLowerCase()))break;if(J?.options){let H=J.options.find((W)=>Array.isArray(W.name)?W.name.includes(V):W.name===V);if(H?.args&&O7(H.args).some((W)=>W?.isCommand||W?.isModule)){z.push(V);continue}}if(G&&!K){if(VN(V,Z[Q+1],J))Q++;continue}break}if(await Yv(V,Z.slice(0,Q),J))break;if(G&&!K)K=fW(V,J);z.push(V)}return z.join(" ")}async function Zv(Y,Z,J){let X=eT(Z,J),z=Y.toLowerCase(),G=X?`${z} ${X.toLowerCase()}`:z;if(u9[G])return u9[G];if(u9[z])return u9[z];if(!J)return 2;if(J.options&&Z.some((K)=>K?.startsWith("-")))for(let K of Z){if(!K?.startsWith("-"))continue;let Q=J.options.find((V)=>Array.isArray(V.name)?V.name.includes(K):V.name===K);if(Q?.args&&O7(Q.args).some((V)=>V?.isCommand||V?.isModule))return 3}if(X&&J.subcommands?.length){let K=X.toLowerCase(),Q=J.subcommands.find((V)=>Array.isArray(V.name)?V.name.some((H)=>H.toLowerCase()===K):V.name.toLowerCase()===K);if(Q){if(Q.args){let V=O7(Q.args);if(V.some((H)=>H?.isCommand))return 3;if(V.some((H)=>H?.isVariadic))return 2}if(Q.subcommands?.length)return 4;if(!Q.args)return 2;return 3}}if(J.args){let K=O7(J.args);if(K.some((Q)=>Q?.isCommand))return!Array.isArray(J.args)&&J.args.isCommand?2:Math.min(2+K.findIndex((Q)=>Q?.isCommand),3);if(!J.subcommands?.length){if(K.some((Q)=>Q?.isVariadic))return 1;if(K[0]&&!K[0].isOptional)return 2}}return J.args&&O7(J.args).some((K)=>K?.isDangerous)?3:2}async function Yv(Y,Z,J){if(Y.startsWith("-"))return!0;let X=Y.lastIndexOf("."),z=X>0&&X<Y.length-1&&!Y.substring(X+1).includes(":"),G=Y.includes("/")||z,K=tT.some((Q)=>Y.startsWith(Q));if(!G&&!K)return!1;if(J?.options&&Z.length>0&&Z[Z.length-1]==="-m"){let Q=J.options.find((V)=>Array.isArray(V.name)?V.name.includes("-m"):V.name==="-m");if(Q?.args&&O7(Q.args).some((V)=>V?.isModule))return!1}return!0}wN();Hv();Vv();var Jv={name:"alias",description:"Create or list command aliases",args:{name:"definition",description:"Alias definition in the form name=value",isOptional:!0,isVariadic:!0}},WN=Jv;var Xv={name:"nohup",description:"Run a command immune to hangups",args:{name:"command",description:"Command to run with nohup",isCommand:!0}},HN=Xv;var qN={name:"pyright",description:"Type checker for Python",options:[{name:["--help","-h"],description:"Show help message"},{name:"--version",description:"Print pyright version and exit"},{name:["--watch","-w"],description:"Continue to run and watch for changes"},{name:["--project","-p"],description:"Use the configuration file at this location",args:{name:"FILE OR DIRECTORY"}},{name:"-",description:"Read file or directory list from stdin"},{name:"--createstub",description:"Create type stub file(s) for import",args:{name:"IMPORT"}},{name:["--typeshedpath","-t"],description:"Use typeshed type stubs at this location",args:{name:"DIRECTORY"}},{name:"--verifytypes",description:"Verify completeness of types in py.typed package",args:{name:"IMPORT"}},{name:"--ignoreexternal",description:"Ignore external imports for --verifytypes"},{name:"--pythonpath",description:"Path to the Python interpreter",args:{name:"FILE"}},{name:"--pythonplatform",description:"Analyze for platform",args:{name:"PLATFORM"}},{name:"--pythonversion",description:"Analyze for Python version",args:{name:"VERSION"}},{name:["--venvpath","-v"],description:"Directory that contains virtual environments",args:{name:"DIRECTORY"}},{name:"--outputjson",description:"Output results in JSON format"},{name:"--verbose",description:"Emit verbose diagnostics"},{name:"--stats",description:"Print detailed performance stats"},{name:"--dependencies",description:"Emit import dependency information"},{name:"--level",description:"Minimum diagnostic level",args:{name:"LEVEL"}},{name:"--skipunannotated",description:"Skip type analysis of unannotated functions"},{name:"--warnings",description:"Use exit code of 1 if warnings are reported"},{name:"--threads",description:"Use up to N threads to parallelize type checking",args:{name:"N",isOptional:!0}}],args:{name:"files",description:"Specify files or directories to analyze (overrides config file)",isVariadic:!0,isOptional:!0}};var zv={name:"sleep",description:"Delay for a specified amount of time",args:{name:"duration",description:"Duration to sleep (seconds or with suffix like 5s, 2m, 1h)",isOptional:!1}},BN=zv;var Gv={name:"srun",description:"Run a command on SLURM cluster nodes",options:[{name:["-n","--ntasks"],description:"Number of tasks",args:{name:"count",description:"Number of tasks to run"}},{name:["-N","--nodes"],description:"Number of nodes",args:{name:"count",description:"Number of nodes to allocate"}}],args:{name:"command",description:"Command to run on the cluster",isCommand:!0}},DN=Gv;var Kv={name:"time",description:"Time a command",args:{name:"command",description:"Command to time",isCommand:!0}},UN=Kv;var Qv={name:"timeout",description:"Run a command with a time limit",args:[{name:"duration",description:"Duration to wait before timing out (e.g., 10, 5s, 2m)",isOptional:!1},{name:"command",description:"Command to run",isCommand:!0}]},NN=Qv;var hW=[qN,NN,BN,WN,HN,UN,DN];async function Wv(Y){if(!Y||Y.includes("/")||Y.includes("\\"))return null;if(Y.includes(".."))return null;if(Y.startsWith("-")&&Y!=="-")return null;try{let Z=await import(`@withfig/autocomplete/build/${Y}.js`);return Z.default||Z}catch{return null}}var L7=ON(async(Y)=>{return hW.find((J)=>J.name===Y)||await Wv(Y)||null},(Y)=>Y);var qv=/^\d+$/,LN=/^[A-Za-z_][A-Za-z0-9_]*=/,Bv=new Set(["nice"]),_N=(Y)=>Array.isArray(Y)?Y:[Y];function Dv(Y,Z){if(!Z?.subcommands?.length)return!1;return Z.subcommands.some((J)=>Array.isArray(J.name)?J.name.includes(Y):J.name===Y)}async function Q5(Y,Z=0,J=0){if(J>2||Z>10)return null;let X=await FN(Y);if(!X)return null;if(!X.commandNode)return{commandPrefix:null};let{envVars:z,commandNode:G}=X,K=EN(G),[Q,...V]=K;if(!Q)return{commandPrefix:null};let H=await L7(Q),W=Bv.has(Q)||H?.args&&_N(H.args).some((U)=>U?.isCommand);if(W&&V[0]&&Dv(V[0],H))W=!1;let D=W?await Uv(Q,V,Z,J):await K5(Q,V,H);if(D===null&&Z===0&&W)return null;let q=z.length?`${z.join(" ")} `:"";return{commandPrefix:D?q+D:null}}async function Uv(Y,Z,J,X){let z=await L7(Y);if(z?.args){let Q=_N(z.args).findIndex((V)=>V?.isCommand);if(Q!==-1){let V=[Y];for(let H=0;H<Z.length&&H<=Q;H++)if(H===Q){let W=await Q5(Z.slice(H).join(" "),J+1,X+1);if(W?.commandPrefix)return V.push(...W.commandPrefix.split(" ")),V.join(" ");break}else if(Z[H]&&!Z[H].startsWith("-")&&!LN.test(Z[H]))V.push(Z[H])}}let G=Z.find((Q)=>!Q.startsWith("-")&&!qv.test(Q)&&!LN.test(Q));if(!G)return Y;let K=await Q5(Z.slice(Z.indexOf(G)).join(" "),J+1,X+1);return!K?.commandPrefix?null:`${Y} ${K.commandPrefix}`}async function AN(Y,Z){let J=PN(Y);if(J.length<=1){let K=await Q5(Y);return K?.commandPrefix?[K.commandPrefix]:[]}let X=[];for(let K of J){let Q=K.trim();if(Z?.(Q))continue;let V=await Q5(Q);if(V?.commandPrefix)X.push(V.commandPrefix)}if(X.length===0)return[];let z=new Map;for(let K of X){let Q=K.split(" ")[0],V=z.get(Q);if(V)V.push(K);else z.set(Q,[K])}let G=[];for(let[,K]of z)G.push(Nv(K));return G}function Nv(Y){if(Y.length===0)return"";if(Y.length===1)return Y[0];let J=Y[0].split(" "),X=J.length;for(let z=1;z<Y.length;z++){let G=Y[z].split(" "),K=0;while(K<X&&K<G.length&&J[K]===G[K])K++;X=K}return J.slice(0,Math.max(1,X)).join(" ")}MO();a8();u8();LX();IN();TN();G9();D7();TY();N0();YZ();AK();a8();TW();Lv();u8();Ov();c();var MK=x(v0(),1);function MN(Y){if(Y.type==="classifier")return`${d0.bold(Y.classifier)} classifier: ${Y.reason}`;switch(Y.type){case"rule":return`${d0.bold(Y9(Y.rule.ruleValue))} rule from ${RN(Y.rule.source)}`;case"mode":return`${_K(Y.mode)} mode`;case"sandboxOverride":return"Requires permission to bypass sandbox";case"workingDir":return Y.reason;case"safetyCheck":case"other":return Y.reason;case"permissionPromptTool":return`${d0.bold(Y.permissionPromptToolName)} permission prompt tool`;case"hook":return Y.reason?`${d0.bold(Y.hookName)} hook: ${Y.reason}`:`${d0.bold(Y.hookName)} hook`;case"asyncAgent":return Y.reason;default:return""}}function Fv(Y){let Z=MK.c(10),{title:J,decisionReason:X}=Y,[z]=SZ(),G;if(Z[0]!==X||Z[1]!==z)G=function(){switch(X.type){case"subcommandResults":return B(M,{flexDirection:"column",children:Array.from(X.reasons.entries()).map((D)=>{let[q,U]=D,N=U.behavior==="allow"?wK("success",z)(R0.tick):wK("error",z)(R0.cross);return E(M,{flexDirection:"column",children:[E(O,{children:[N," ",q]}),U.decisionReason!==void 0&&U.decisionReason.type!=="subcommandResults"&&E(O,{children:[E(O,{dimColor:!0,children:[" ","⎿"," "]}),B(wX,{children:MN(U.decisionReason)})]}),U.behavior==="ask"&&B(Ev,{suggestions:U.suggestions})]},q)})});default:return B(O,{children:B(wX,{children:MN(X)})})}},Z[0]=X,Z[1]=z,Z[2]=G;else G=Z[2];let K=G,Q;if(Z[3]!==J)Q=J&&B(O,{children:J}),Z[3]=J,Z[4]=Q;else Q=Z[4];let V;if(Z[5]!==K)V=K(),Z[5]=K,Z[6]=V;else V=Z[6];let H;if(Z[7]!==Q||Z[8]!==V)H=E(M,{flexDirection:"column",children:[Q,V]}),Z[7]=Q,Z[8]=V,Z[9]=H;else H=Z[9];return H}function Ev(Y){let Z=MK.c(18),{suggestions:J}=Y,X,z,G,K,Q,V,H;if(Z[0]!==J){H=Symbol.for("react.early_return_sentinel");Z:{let q=p9(J);if(q.length===0){H=null;break Z}if(z=O,Z[8]===Symbol.for("react.memo_cache_sentinel"))K=E(O,{dimColor:!0,children:[" ","⎿"," "]}),Z[8]=K;else K=Z[8];Q="Suggested rules:",V=" ",X=wX,G=q.map(Pv).join(", ")}Z[0]=J,Z[1]=X,Z[2]=z,Z[3]=G,Z[4]=K,Z[5]=Q,Z[6]=V,Z[7]=H}else X=Z[1],z=Z[2],G=Z[3],K=Z[4],Q=Z[5],V=Z[6],H=Z[7];if(H!==Symbol.for("react.early_return_sentinel"))return H;let W;if(Z[9]!==X||Z[10]!==G)W=B(X,{children:G}),Z[9]=X,Z[10]=G,Z[11]=W;else W=Z[11];let D;if(Z[12]!==z||Z[13]!==K||Z[14]!==Q||Z[15]!==V||Z[16]!==W)D=E(z,{children:[K,Q,V,W]}),Z[12]=z,Z[13]=K,Z[14]=Q,Z[15]=V,Z[16]=W,Z[17]=D;else D=Z[17];return D}function Pv(Y){return d0.bold(Y9(Y))}function wv(Y){if(!Y)return[];return Y.flatMap((Z)=>{switch(Z.type){case"addDirectories":return Z.directories;default:return[]}})}function _v(Y){if(!Y)return;let Z=Y.findLast((J)=>J.type==="setMode");return Z?.type==="setMode"?Z.mode:void 0}function Av(Y){let Z=MK.c(22),{suggestions:J,width:X}=Y;if(!J||J.length===0){let K;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))K=B(O,{dimColor:!0,children:"Suggestions "}),Z[0]=K;else K=Z[0];let Q;if(Z[1]!==X)Q=B(M,{justifyContent:"flex-end",minWidth:X,children:K}),Z[1]=X,Z[2]=Q;else Q=Z[2];let V;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))V=B(O,{children:"None"}),Z[3]=V;else V=Z[3];let H;if(Z[4]!==Q)H=E(M,{flexDirection:"row",children:[Q,V]}),Z[4]=Q,Z[5]=H;else H=Z[5];return H}let z,G;if(Z[6]!==J||Z[7]!==X){G=Symbol.for("react.early_return_sentinel");Z:{let K=p9(J),Q=wv(J),V=_v(J);if(K.length===0&&Q.length===0&&!V){let U;if(Z[10]===Symbol.for("react.memo_cache_sentinel"))U=B(O,{dimColor:!0,children:"Suggestion "}),Z[10]=U;else U=Z[10];let N;if(Z[11]!==X)N=B(M,{justifyContent:"flex-end",minWidth:X,children:U}),Z[11]=X,Z[12]=N;else N=Z[12];let L;if(Z[13]===Symbol.for("react.memo_cache_sentinel"))L=B(O,{children:"None"}),Z[13]=L;else L=Z[13];let F;if(Z[14]!==N)F=E(M,{flexDirection:"row",children:[N,L]}),Z[14]=N,Z[15]=F;else F=Z[15];G=F;break Z}let H;if(Z[16]===Symbol.for("react.memo_cache_sentinel"))H=B(O,{dimColor:!0,children:"Suggestions "}),Z[16]=H;else H=Z[16];let W;if(Z[17]!==X)W=B(M,{justifyContent:"flex-end",minWidth:X,children:H}),Z[17]=X,Z[18]=W;else W=Z[18];let D;if(Z[19]===Symbol.for("react.memo_cache_sentinel"))D=B(O,{children:" "}),Z[19]=D;else D=Z[19];let q;if(Z[20]!==W)q=E(M,{flexDirection:"row",children:[W,D]}),Z[20]=W,Z[21]=q;else q=Z[21];z=E(M,{flexDirection:"column",children:[q,K.length>0&&E(M,{flexDirection:"row",children:[B(M,{justifyContent:"flex-end",minWidth:X,children:B(O,{dimColor:!0,children:" Rules "})}),B(M,{flexDirection:"column",children:K.map(Rv)})]}),Q.length>0&&E(M,{flexDirection:"row",children:[B(M,{justifyContent:"flex-end",minWidth:X,children:B(O,{dimColor:!0,children:" Directories "})}),B(M,{flexDirection:"column",children:Q.map(Mv)})]}),V&&E(M,{flexDirection:"row",children:[B(M,{justifyContent:"flex-end",minWidth:X,children:B(O,{dimColor:!0,children:" Mode "})}),B(O,{children:_K(V)})]})]})}Z[6]=J,Z[7]=X,Z[8]=z,Z[9]=G}else z=Z[8],G=Z[9];if(G!==Symbol.for("react.early_return_sentinel"))return G;return z}function Mv(Y,Z){return E(O,{children:[R0.bullet," ",Y]},Z)}function Rv(Y,Z){return E(O,{children:[R0.bullet," ",Y9(Y)]},Z)}function W5(Y){let Z=MK.c(25),{permissionResult:J,toolName:X}=Y,z=t(yv),G=J.decisionReason,K="suggestions"in J?J.suggestions:void 0,Q;if(Z[0]!==K||Z[1]!==X||Z[2]!==z){Z:{let P=eZ.isSandboxingEnabled()&&eZ.isAutoAllowBashIfSandboxedEnabled(),w=jN(z,{sandboxAutoAllowEnabled:P}),_=p9(K);if(_.length>0){Q=w.filter((A)=>_.some((j)=>j.toolName===A.rule.ruleValue.toolName&&j.ruleContent===A.rule.ruleValue.ruleContent));break Z}if(X){let A;if(Z[4]!==X)A=(j)=>j.rule.ruleValue.toolName===X,Z[4]=X,Z[5]=A;else A=Z[5];Q=w.filter(A);break Z}Q=w}Z[0]=K,Z[1]=X,Z[2]=z,Z[3]=Q}else Q=Z[3];let V=Q,H;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))H=B(M,{justifyContent:"flex-end",minWidth:10,children:B(O,{dimColor:!0,children:"Behavior "})}),Z[6]=H;else H=Z[6];let W;if(Z[7]!==J.behavior)W=E(M,{flexDirection:"row",children:[H,B(O,{children:J.behavior})]}),Z[7]=J.behavior,Z[8]=W;else W=Z[8];let D;if(Z[9]!==J.behavior||Z[10]!==J.message)D=J.behavior!=="allow"&&E(M,{flexDirection:"row",children:[B(M,{justifyContent:"flex-end",minWidth:10,children:B(O,{dimColor:!0,children:"Message "})}),B(O,{children:J.message})]}),Z[9]=J.behavior,Z[10]=J.message,Z[11]=D;else D=Z[11];let q;if(Z[12]===Symbol.for("react.memo_cache_sentinel"))q=B(M,{justifyContent:"flex-end",minWidth:10,children:B(O,{dimColor:!0,children:"Reason "})}),Z[12]=q;else q=Z[12];let U;if(Z[13]!==G)U=E(M,{flexDirection:"row",children:[q,G===void 0?B(O,{children:"undefined"}):B(Fv,{decisionReason:G})]}),Z[13]=G,Z[14]=U;else U=Z[14];let N;if(Z[15]!==K)N=B(Av,{suggestions:K,width:10}),Z[15]=K,Z[16]=N;else N=Z[16];let L;if(Z[17]!==V)L=V.length>0&&E(M,{flexDirection:"column",marginTop:1,children:[E(O,{color:"warning",children:[R0.warning," Unreachable Rules (",V.length,")"]}),V.map(jv)]}),Z[17]=V,Z[18]=L;else L=Z[18];let F;if(Z[19]!==W||Z[20]!==D||Z[21]!==U||Z[22]!==N||Z[23]!==L)F=E(M,{flexDirection:"column",children:[W,D,U,N,L]}),Z[19]=W,Z[20]=D,Z[21]=U,Z[22]=N,Z[23]=L,Z[24]=F;else F=Z[24];return F}function jv(Y,Z){return E(M,{flexDirection:"column",marginLeft:2,children:[B(O,{color:"warning",children:Y9(Y.rule.ruleValue)}),E(O,{dimColor:!0,children:[" ",Y.reason]}),E(O,{dimColor:!0,children:[" ","Fix: ",Y.fix]})]},Z)}function yv(Y){return Y.toolPermissionContext}cY();N0();YY();DZ();var RK=x(v0(),1),d9=x(Q0(),1);Q7();DZ();dJ();bZ();BZ();yJ();EK();rZ();_X();kv();uJ();var bv={LOW:1,MEDIUM:2,HIGH:3},Iv=1,Tv=2,vv=3,Cv="Analyze shell commands and explain what they do, why you're running them, and potential risks.",Sv={name:"explain_command",description:"Provide an explanation of a shell command",input_schema:{type:"object",properties:{explanation:{type:"string",description:"What this command does (1-2 sentences)"},reasoning:{type:"string",description:'Why YOU are running this command. Start with "I" - e.g. "I need to check the file contents"'},risk:{type:"string",description:"What could go wrong, under 15 words"},riskLevel:{type:"string",enum:["LOW","MEDIUM","HIGH"],description:"LOW (safe dev workflows), MEDIUM (recoverable changes), HIGH (dangerous/irreversible)"}},required:["explanation","reasoning","risk","riskLevel"]}},$v=EX(()=>WZ.object({riskLevel:WZ.enum(["LOW","MEDIUM","HIGH"]),explanation:WZ.string(),reasoning:WZ.string(),risk:WZ.string()}));function fv(Y){if(typeof Y==="string")return Y;try{return iZ(Y,null,2)}catch{return String(Y)}}function hv(Y,Z=1000){let J=Y.filter((G)=>G.type==="assistant").slice(-3),X=[],z=0;for(let G of J.reverse()){let K=G.message.content.filter((Q)=>Q.type==="text").map((Q)=>("text"in Q)?Q.text:"").join(" ");if(K&&z<Z){let Q=Z-z,V=K.length>Q?K.slice(0,Q)+"...":K;X.unshift(V),z+=V.length}}return X.join(`
|
|
38
|
+
|
|
39
|
+
`)}function xW(){return l0().permissionExplainerEnabled!==!1}async function kN({toolName:Y,toolInput:Z,toolDescription:J,messages:X,signal:z}){if(!xW())return null;let G=Date.now();try{let K=fv(Z),Q=X?.length?hv(X):"",V=`Tool: ${Y}
|
|
40
|
+
${J?`Description: ${J}
|
|
41
|
+
`:""}
|
|
42
|
+
Input:
|
|
43
|
+
${K}
|
|
44
|
+
${Q?`
|
|
45
|
+
Recent conversation context:
|
|
46
|
+
${Q}`:""}
|
|
47
|
+
|
|
48
|
+
Explain this command in context.`,H=K9(),W=await yN({model:H,system:Cv,messages:[{role:"user",content:V}],tools:[Sv],tool_choice:{type:"tool",name:"explain_command"},signal:z,querySource:"permission_explainer"}),D=Date.now()-G;g(`Permission explainer: API returned in ${D}ms, stop_reason=${W.stop_reason}`);let q=W.content.find((U)=>U.type==="tool_use");if(q&&q.type==="tool_use"){g(`Permission explainer: tool input: ${iZ(q.input).slice(0,500)}`);let U=$v().safeParse(q.input);if(U.success){let N={riskLevel:U.data.riskLevel,explanation:U.data.explanation,reasoning:U.data.reasoning,risk:U.data.risk};return Z0("tengu_permission_explainer_generated",{tool_name:gZ(Y),risk_level:bv[N.riskLevel],latency_ms:D}),g(`Permission explainer: ${N.riskLevel} risk for ${Y} (${D}ms)`),N}}return Z0("tengu_permission_explainer_error",{tool_name:gZ(Y),error_type:Iv,latency_ms:D}),g("Permission explainer: no parsed output in response"),null}catch(K){let Q=Date.now()-G;if(z.aborted)return g(`Permission explainer: request aborted for ${Y}`),null;return g(`Permission explainer error: ${lJ(K)}`),u0(K),Z0("tengu_permission_explainer_error",{tool_name:gZ(Y),error_type:K instanceof Error&&K.name==="AbortError"?Tv:vv,latency_ms:Q}),null}}IN();TN();c();var bN="Loading explanation…";function xv(){let Y=RK.c(7),[Z,J]=q5("responding",bN,!1),X;if(Y[0]!==J)X=bN.split("").map((K,Q)=>B(H5,{char:K,index:Q,glimmerIndex:J,messageColor:"inactive",shimmerColor:"text"},Q)),Y[0]=J,Y[1]=X;else X=Y[1];let z;if(Y[2]!==X)z=B(O,{children:X}),Y[2]=X,Y[3]=z;else z=Y[3];let G;if(Y[4]!==Z||Y[5]!==z)G=B(M,{ref:Z,children:z}),Y[4]=Z,Y[5]=z,Y[6]=G;else G=Y[6];return G}function gv(Y){switch(Y){case"LOW":return"success";case"MEDIUM":return"warning";case"HIGH":return"error"}}function mv(Y){switch(Y){case"LOW":return"Low risk";case"MEDIUM":return"Med risk";case"HIGH":return"High risk"}}function cv(Y){return kN({toolName:Y.toolName,toolInput:Y.toolInput,toolDescription:Y.toolDescription,messages:Y.messages,signal:new AbortController().signal}).catch(()=>null)}function B5(Y){let Z=RK.c(9),J;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))J=xW(),Z[0]=J;else J=Z[0];let X=J,[z,G]=d9.useState(!1),[K,Q]=d9.useState(null),V;if(Z[1]!==K||Z[2]!==Y||Z[3]!==z)V=()=>{if(!z){if(Z0("tengu_permission_explainer_shortcut_used",{}),!K)Q(cv(Y))}G(uv)},Z[1]=K,Z[2]=Y,Z[3]=z,Z[4]=V;else V=Z[4];let H;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))H={context:"Confirmation",isActive:X},Z[5]=H;else H=Z[5];KZ("confirm:toggleExplanation",V,H);let W;if(Z[6]!==K||Z[7]!==z)W={visible:z,enabled:X,promise:K},Z[6]=K,Z[7]=z,Z[8]=W;else W=Z[8];return W}function uv(Y){return!Y}function pv(Y){let Z=RK.c(21),{promise:J}=Y,X=d9.use(J);if(!X){let q;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))q=B(M,{marginTop:1,children:B(O,{dimColor:!0,children:"Explanation unavailable"})}),Z[0]=q;else q=Z[0];return q}let z;if(Z[1]!==X.explanation)z=B(O,{children:X.explanation}),Z[1]=X.explanation,Z[2]=z;else z=Z[2];let G;if(Z[3]!==X.reasoning)G=B(M,{marginTop:1,children:B(O,{children:X.reasoning})}),Z[3]=X.reasoning,Z[4]=G;else G=Z[4];let K;if(Z[5]!==X.riskLevel)K=gv(X.riskLevel),Z[5]=X.riskLevel,Z[6]=K;else K=Z[6];let Q;if(Z[7]!==X.riskLevel)Q=mv(X.riskLevel),Z[7]=X.riskLevel,Z[8]=Q;else Q=Z[8];let V;if(Z[9]!==K||Z[10]!==Q)V=E(O,{color:K,children:[Q,":"]}),Z[9]=K,Z[10]=Q,Z[11]=V;else V=Z[11];let H;if(Z[12]!==X.risk)H=E(O,{children:[" ",X.risk]}),Z[12]=X.risk,Z[13]=H;else H=Z[13];let W;if(Z[14]!==V||Z[15]!==H)W=B(M,{marginTop:1,children:E(O,{children:[V,H]})}),Z[14]=V,Z[15]=H,Z[16]=W;else W=Z[16];let D;if(Z[17]!==z||Z[18]!==G||Z[19]!==W)D=E(M,{flexDirection:"column",marginTop:1,children:[z,G,W]}),Z[17]=z,Z[18]=G,Z[19]=W,Z[20]=D;else D=Z[20];return D}function D5(Y){let Z=RK.c(3),{visible:J,promise:X}=Y;if(!J||!X)return null;let z;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))z=B(M,{marginTop:1,children:B(xv,{})}),Z[0]=z;else z=Z[0];let G;if(Z[1]!==X)G=B(d9.Suspense,{fallback:z,children:B(pv,{promise:X})}),Z[1]=X,Z[2]=G;else G=Z[2];return G}V8();var aW=x(v0(),1),F5=x(Q0(),1);import{basename as BC,relative as DC}from"path";PY();N0();uN();U5();rZ();lv();d8();dv();c();var N5=x(v0(),1),E7=x(Q0(),1);function O5(Y){let Z=N5.c(7),J;if(Z[0]!==Y.edits||Z[1]!==Y.file_path)J=()=>iv(Y.file_path,Y.edits),Z[0]=Y.edits,Z[1]=Y.file_path,Z[2]=J;else J=Z[2];let[X]=E7.useState(J),z;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))z=B(pN,{placeholder:!0}),Z[3]=z;else z=Z[3];let G;if(Z[4]!==X||Z[5]!==Y.file_path)G=B(E7.Suspense,{fallback:z,children:B(rv,{promise:X,file_path:Y.file_path})}),Z[4]=X,Z[5]=Y.file_path,Z[6]=G;else G=Z[6];return G}function rv(Y){let Z=N5.c(6),{promise:J,file_path:X}=Y,{patch:z,firstLine:G,fileContent:K}=E7.use(J),{columns:Q}=PZ(),V;if(Z[0]!==Q||Z[1]!==K||Z[2]!==X||Z[3]!==G||Z[4]!==z)V=B(pN,{children:B($N,{hunks:z,dim:!1,width:Q,filePath:X,firstLine:G,fileContent:K})}),Z[0]=Q,Z[1]=K,Z[2]=X,Z[3]=G,Z[4]=z,Z[5]=V;else V=Z[5];return V}function pN(Y){let Z=N5.c(5),{children:J,placeholder:X}=Y,z;if(Z[0]!==J||Z[1]!==X)z=X?B(O,{dimColor:!0,children:"…"}):J,Z[0]=J,Z[1]=X,Z[2]=z;else z=Z[2];let G;if(Z[3]!==z)G=B(M,{flexDirection:"column",children:B(M,{borderColor:"subtle",borderStyle:"dashed",flexDirection:"column",borderLeft:!1,borderRight:!1,children:z})}),Z[3]=z,Z[4]=G;else G=Z[4];return G}async function iv(Y,Z){let J=Z.filter((z)=>z.old_string!=null&&z.new_string!=null),X=J.length===1?J[0]:void 0;if(X&&X.old_string.length>=fN)return jK(Y,[X]);try{let z=await hN(Y);if(z===null)return jK(Y,J);try{if(!X||X.old_string===""){let V=await gN(z);if(V===null)return jK(Y,J);let H=J.map((W)=>vN(V,W));return{patch:Q9({filePath:Y,fileContents:V,edits:H}),firstLine:gW(V),fileContent:V}}let G=await xN(z,X.old_string,CN);if(G.truncated||G.content==="")return jK(Y,[X]);let K=vN(G.content,X),Q=Q9({filePath:Y,fileContents:G.content,edits:[K]});return{patch:SN(Q,G.lineOffset-1),firstLine:G.lineOffset===1?gW(G.content):null,fileContent:G.content}}finally{await z.close()}}catch(z){return u0(z),jK(Y,J)}}function jK(Y,Z){return{patch:Z.flatMap((J)=>Q9({filePath:Y,fileContents:J.old_string,edits:[J]})),firstLine:null,fileContent:void 0}}function vN(Y,Z){let J=mN(Y,Z.old_string)||Z.old_string,X=cN(Z.old_string,J,Z.new_string);return{...Z,old_string:J,new_string:X}}HJ();yJ();uW();rW();N0();iW();NO();var bK=x(Q0(),1);import{relative as qC}from"path";DZ();uW();cW();uN();bZ();U5();yJ();bJ();av();rZ();jQ();var W8=x(Q0(),1);import{randomUUID as nv}from"crypto";import{basename as ov}from"path";function oN({onChange:Y,toolUseContext:Z,filePath:J,edits:X,editMode:z}){let G=W8.useRef(!1),[K,Q]=W8.useState(!1),V=W8.useMemo(()=>nv().slice(0,6),[]),H=W8.useMemo(()=>`✻ [Claude Code] ${ov(J)} (${V}) ⧉`,[J,V]),W=lN(Z.options.mcpClients)&&l0().diffTool==="auto"&&!J.endsWith(".ipynb"),D=rN(Z.options.mcpClients)??"IDE";async function q(){if(!W)return;try{Z0("tengu_ext_will_show_diff",{});let{oldContent:U,newContent:N}=await tv(J,X,Z,H);if(G.current)return;Z0("tengu_ext_diff_accepted",{});let L=sv(J,U,N,z);if(L.length===0){Z0("tengu_ext_diff_rejected",{});let F=kJ(Z.options.mcpClients);if(F)await mW(H,F);Y({type:"reject"},{file_path:J,edits:X});return}Y({type:"accept-once"},{file_path:J,edits:L})}catch(U){u0(U),Q(!0)}}return W8.useEffect(()=>{return q(),()=>{G.current=!0}},[]),{closeTabInIDE(){let U=kJ(Z.options.mcpClients);if(!U)return Promise.resolve();return mW(H,U)},showingDiffInIDE:W&&!K,ideName:D,hasError:K}}function sv(Y,Z,J,X){let z=X==="single",G=iN({filePath:Y,oldContent:Z,newContent:J,singleHunk:z});if(G.length===0)return[];if(z&&G.length>1)u0(Error(`Unexpected number of hunks: ${G.length}. Expected 1 hunk.`));return nN(G)}async function tv(Y,Z,J,X){let z=!1,G=V9(Y),K="";try{K=yK(G)}catch(H){if(!l9(H))throw H}async function Q(){if(z)return;z=!0;try{await mW(X,V)}catch(H){u0(H)}process.off("beforeExit",Q),J.abortController.signal.removeEventListener("abort",Q)}J.abortController.signal.addEventListener("abort",Q),process.on("beforeExit",Q);let V=kJ(J.options.mcpClients);try{let{updatedFile:H}=aN({filePath:G,fileContents:K,edits:Z});if(!V||V.type!=="connected")throw Error("IDE client not available");let W=G,D=V.config.ideRunningInWindows===!0;if(tX()==="wsl"&&D&&process.env.WSL_DISTRO_NAME)W=new dN(process.env.WSL_DISTRO_NAME).toIDEPath(G);let q=await pW("openDiff",{old_file_path:W,new_file_path:W,new_file_contents:H,tab_name:X},V),U=Array.isArray(q)?q:[q];if(YC(U))return Q(),{oldContent:K,newContent:U[1].text};else if(ev(U))return Q(),{oldContent:K,newContent:H};else if(ZC(U))return Q(),{oldContent:K,newContent:K};throw Error("Not accepted")}catch(H){throw u0(H),Q(),H}}async function mW(Y,Z){try{if(!Z||Z.type!=="connected")throw Error("IDE client not available");await pW("close_tab",{tab_name:Y},Z)}catch(J){u0(J)}}function ev(Y){return Array.isArray(Y)&&typeof Y[0]==="object"&&Y[0]!==null&&"type"in Y[0]&&Y[0].type==="text"&&"text"in Y[0]&&Y[0].text==="TAB_CLOSED"}function ZC(Y){return Array.isArray(Y)&&typeof Y[0]==="object"&&Y[0]!==null&&"type"in Y[0]&&Y[0].type==="text"&&"text"in Y[0]&&Y[0].text==="DIFF_REJECTED"}function YC(Y){return Array.isArray(Y)&&Y[0]?.type==="text"&&Y[0].text==="FILE_SAVED"&&typeof Y[1].text==="string"}N0();kW();HJ();rW();cW();eX();N0();HJ();bJ();eX();dW();c();var tN=x(v0(),1);import{basename as JC,relative as XC}from"path";function eN(Y){let Z=tN.c(36),{onChange:J,options:X,input:z,filePath:G,ideName:K,symlinkTarget:Q,rejectFeedback:V,acceptFeedback:H,setFocusedOption:W,onInputModeToggle:D,focusedOption:q,yesInputMode:U,noInputMode:N}=Y,L;if(Z[0]!==K)L=E(O,{bold:!0,color:"permission",children:["Opened changes in ",K," ⧉"]}),Z[0]=K,Z[1]=L;else L=Z[1];let F;if(Z[2]!==Q)F=Q&&B(O,{color:"warning",children:XC(mZ(),Q).startsWith("..")?`This will modify ${Q} (outside working directory) via a symlink`:`Symlink target: ${Q}`}),Z[2]=Q,Z[3]=F;else F=Z[3];let P;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))P=sN()&&B(O,{dimColor:!0,children:"Save file to continue…"}),Z[4]=P;else P=Z[4];let w;if(Z[5]!==G)w=JC(G),Z[5]=G,Z[6]=w;else w=Z[6];let _;if(Z[7]!==w)_=E(O,{children:["Do you want to make this edit to"," ",B(O,{bold:!0,children:w}),"?"]}),Z[7]=w,Z[8]=_;else _=Z[8];let A;if(Z[9]!==H||Z[10]!==z||Z[11]!==J||Z[12]!==X||Z[13]!==V)A=(v)=>{let T=X.find((h)=>h.value===v);if(T){if(T.option.type==="reject"){let h=V.trim();J(T.option,z,h||void 0);return}if(T.option.type==="accept-once"){let h=H.trim();J(T.option,z,h||void 0);return}J(T.option,z)}},Z[9]=H,Z[10]=z,Z[11]=J,Z[12]=X,Z[13]=V,Z[14]=A;else A=Z[14];let j;if(Z[15]!==z||Z[16]!==J)j=()=>J({type:"reject"},z),Z[15]=z,Z[16]=J,Z[17]=j;else j=Z[17];let y;if(Z[18]!==W)y=(v)=>W(v),Z[18]=W,Z[19]=y;else y=Z[19];let b;if(Z[20]!==D||Z[21]!==X||Z[22]!==A||Z[23]!==j||Z[24]!==y)b=B(qZ,{options:X,inlineDescriptions:!0,onChange:A,onCancel:j,onFocus:y,onInputModeToggle:D}),Z[20]=D,Z[21]=X,Z[22]=A,Z[23]=j,Z[24]=y,Z[25]=b;else b=Z[25];let R;if(Z[26]!==_||Z[27]!==b)R=E(M,{flexDirection:"column",children:[_,b]}),Z[26]=_,Z[27]=b,Z[28]=R;else R=Z[28];let k=(q==="yes"&&!U||q==="no"&&!N)&&" · Tab to amend",f;if(Z[29]!==k)f=B(M,{marginTop:1,children:E(O,{dimColor:!0,children:["Esc to cancel",k]})}),Z[29]=k,Z[30]=f;else f=Z[30];let $;if(Z[31]!==L||Z[32]!==R||Z[33]!==f||Z[34]!==F)$=B(P7,{color:"permission",children:E(M,{flexDirection:"column",gap:1,children:[L,F,P,R,f]})}),Z[31]=L,Z[32]=R,Z[33]=f,Z[34]=F,Z[35]=$;else $=Z[35];return $}G9();cY();YZ();YY();DZ();dJ();var pY=x(Q0(),1);AZ();N0();OQ();rJ();cW();L5();c();import{basename as zC,sep as XO}from"path";function GC(Y){let Z=V9(Y),J=V9(`${QY()}/.claudin`),X=kK(Z),z=kK(J);return X.startsWith(z+XO.toLowerCase())||X.startsWith(z+"/")}function KC(Y){let Z=V9(Y),J=ZO(),X=kK(Z),z=kK(J);return X.startsWith(z+XO.toLowerCase())||X.startsWith(z+"/")}function zO({filePath:Y,toolPermissionContext:Z,operationType:J="write",onRejectFeedbackChange:X,onAcceptFeedbackChange:z,yesInputMode:G=!1,noInputMode:K=!1}){let Q=[],V=m8("chat:cycleMode","Chat","shift+tab");if(G&&z)Q.push({type:"input",label:"Yes",value:"yes",placeholder:"and tell Claude what to do next",onChange:z,allowEmptySubmitToCancel:!0,option:{type:"accept-once"}});else Q.push({label:"Yes",value:"yes",option:{type:"accept-once"}});let H=JO(Y,Z),W=GC(Y),D=KC(Y);if((W||D)&&J!=="read")Q.push({label:"Yes, and allow Claude to edit its own settings for this session",value:"yes-claude-folder",option:{type:"accept-session",scope:D?"global-claude-folder":"claude-folder"}});else{let q;if(H)if(J==="read")q="Yes, during this session";else q=E(O,{children:["Yes, allow all edits during this session"," ",E(O,{bold:!0,children:["(",V,")"]})]});else{let U=YO(Y),N=zC(U)||"this directory";if(J==="read")q=E(O,{children:["Yes, allow reading from ",E(O,{bold:!0,children:[N,"/"]})," during this session"]});else q=E(O,{children:["Yes, allow all edits in ",E(O,{bold:!0,children:[N,"/"]})," during this session ",E(O,{bold:!0,children:["(",V,")"]})]})}Q.push({label:q,value:"yes-session",option:{type:"accept-session"}})}if(K&&X)Q.push({type:"input",label:"No",value:"no",placeholder:"and tell Claude what to do differently",onChange:X,allowEmptySubmitToCancel:!0,option:{type:"reject"}});else Q.push({label:"No",value:"no",option:{type:"reject"}});return Q}DZ();dJ();QC();z9();L5();F7();function lW(Y,Z,J,X,z){jY({completion_type:Z,event:Y,metadata:{language_name:J,message_id:X,platform:aZ.platform,hasFeedback:z??!1}})}function VC(Y,Z){let{messageId:J,toolUseConfirm:X,onDone:z,completionType:G,languageName:K}=Y;lW("accept",G,K,J),Z0("tengu_accept_submitted",{toolName:gZ(X.tool.name),isMcp:X.tool.isMcp??!1,has_instructions:!!Z?.feedback,instructions_length:Z?.feedback?.length??0,entered_feedback_mode:Z?.enteredFeedbackMode??!1}),z(),X.onAllow(X.input,[],Z?.feedback)}function WC(Y,Z){let{messageId:J,path:X,toolUseConfirm:z,toolPermissionContext:G,onDone:K,completionType:Q,languageName:V,operationType:H}=Y;if(lW("accept",Q,V,J),Z?.scope==="claude-folder"||Z?.scope==="global-claude-folder"){let D=Z.scope==="global-claude-folder"?QO:KO,q=[{type:"addRules",rules:[{toolName:GO,ruleContent:D}],behavior:"allow",destination:"session"}];K(),z.onAllow(z.input,q);return}let W=X?VO(X,H,G):[];K(),z.onAllow(z.input,W)}function HC(Y,Z){let{messageId:J,toolUseConfirm:X,onDone:z,onReject:G,completionType:K,languageName:Q}=Y;lW("reject",K,Q,J,Z?.hasFeedback),Z0("tengu_reject_submitted",{toolName:gZ(X.tool.name),isMcp:X.tool.isMcp??!1,has_instructions:!!Z?.feedback,instructions_length:Z?.feedback?.length??0,entered_feedback_mode:Z?.enteredFeedbackMode??!1}),z(),G(),X.onReject(Z?.feedback)}var WO={"accept-once":VC,"accept-session":WC,reject:HC};function HO({filePath:Y,completionType:Z,languageName:J,toolUseConfirm:X,onDone:z,onReject:G,parseInput:K,operationType:Q="write"}){let V=t((v)=>v.toolPermissionContext),[H,W]=pY.useState(""),[D,q]=pY.useState(""),[U,N]=pY.useState("yes"),[L,F]=pY.useState(!1),[P,w]=pY.useState(!1),[_,A]=pY.useState(!1),[j,y]=pY.useState(!1),b=pY.useMemo(()=>zO({filePath:Y,toolPermissionContext:V,operationType:Q,onRejectFeedbackChange:q,onAcceptFeedbackChange:W,yesInputMode:L,noInputMode:P}),[Y,V,Q,L,P]),R=pY.useCallback((v,T,h)=>{let u={messageId:X.assistantMessage.message.id,path:Y,toolUseConfirm:X,toolPermissionContext:V,onDone:z,onReject:G,completionType:Z,languageName:J,operationType:Q},C=X.onAllow;X.onAllow=(o,Y0,d)=>{C(T,Y0,d)};let a=WO[v.type];a(u,{feedback:h,hasFeedback:!!h,enteredFeedbackMode:v.type==="accept-once"?_:j,scope:v.type==="accept-session"?v.scope:void 0})},[Y,Z,J,X,V,z,G,Q,_,j]),k=pY.useCallback(()=>{let v=b.find((T)=>T.option.type==="accept-session");if(v){let T=K(X.input);R(v.option,T)}},[b,K,X.input,R]);uZ({"confirm:cycleMode":k},{context:"Confirmation"});let f=pY.useCallback((v)=>{if(v!=="yes"&&L&&!H.trim())F(!1);if(v!=="no"&&P&&!D.trim())w(!1);N(v)},[L,P,H,D]),$=pY.useCallback((v)=>{let T={toolName:gZ(X.tool.name),isMcp:X.tool.isMcp??!1};if(v==="yes")if(L)F(!1),Z0("tengu_accept_feedback_mode_collapsed",T);else F(!0),A(!0),Z0("tengu_accept_feedback_mode_entered",T);else if(v==="no")if(P)w(!1),Z0("tengu_reject_feedback_mode_collapsed",T);else w(!0),y(!0),Z0("tengu_reject_feedback_mode_entered",T)},[L,P,X]);return{options:b,onChange:R,acceptFeedback:H,rejectFeedback:D,focusedOption:U,setFocusedOption:f,handleInputModeToggle:$,yesInputMode:L,noInputMode:P}}c();function AX({toolUseConfirm:Y,toolUseContext:Z,onDone:J,onReject:X,title:z,subtitle:G,question:K="Do you want to proceed?",content:Q,completionType:V="tool_use_single",path:H,parseInput:W,operationType:D="write",ideDiffSupport:q,workerBadge:U,languageName:N}){let L=bK.useMemo(()=>N??(H?BO(H):"none"),[N,H]),F=bK.useMemo(()=>({completion_type:V,language_name:L}),[V,L]);ZJ(Y,F);let P=bK.useMemo(()=>{if(!H||D==="read")return null;let d=V9(H),p=w7(),{resolvedPath:K0,isSymlink:G0}=qO(p,d);if(G0)return K0;return null},[H,D]),w=HO({filePath:H||"",completionType:V,languageName:L,toolUseConfirm:Y,onDone:J,onReject:X,parseInput:W,operationType:D}),{options:_,acceptFeedback:A,rejectFeedback:j,setFocusedOption:y,handleInputModeToggle:b,focusedOption:R,yesInputMode:k,noInputMode:f}=w,$=W(Y.input),v=bK.useMemo(()=>q?q.getConfig(W(Y.input)):null,[q,Y.input]),T=v?{onChange:(d,p)=>{let K0=q.applyChanges($,p.edits);w.onChange(d,K0)},toolUseContext:Z,filePath:v.filePath,edits:(v.edits||[]).map((d)=>({old_string:d.old_string,new_string:d.new_string,replace_all:d.replace_all||!1})),editMode:v.editMode||"single"}:{onChange:()=>{},toolUseContext:Z,filePath:"",edits:[],editMode:"single"},{closeTabInIDE:h,showingDiffInIDE:u,ideName:C}=oN(T),a=(d,p)=>{h?.(),w.onChange(d,$,p?.trim())};if(u&&v&&H)return B(eN,{onChange:(d,p,K0)=>a(d,K0),options:_,filePath:H,input:$,ideName:C,symlinkTarget:P,rejectFeedback:j,acceptFeedback:A,setFocusedOption:y,onInputModeToggle:b,focusedOption:R,yesInputMode:k,noInputMode:f});let o=P!=null&&qC(mZ(),P).startsWith(".."),Y0=P?B(M,{paddingX:1,marginBottom:1,children:B(O,{color:"warning",children:o?`This will modify ${P} (outside working directory) via a symlink`:`Symlink target: ${P}`})}):null;return E(A0,{children:[E(jZ,{title:z,subtitle:G,innerPaddingX:0,workerBadge:U,children:[Y0,Q,E(M,{flexDirection:"column",paddingX:1,children:[typeof K==="string"?B(O,{children:K}):K,B(qZ,{options:_,inlineDescriptions:!0,onChange:(d)=>{let p=_.find((K0)=>K0.value===d);if(p){if(p.option.type==="reject"){let K0=j.trim();a(p.option,K0||void 0);return}if(p.option.type==="accept-once"){let K0=A.trim();a(p.option,K0||void 0);return}a(p.option)}},onCancel:()=>a({type:"reject"}),onFocus:(d)=>y(d),onInputModeToggle:b})]})]}),B(M,{paddingX:1,marginTop:1,children:E(O,{dimColor:!0,children:["Esc to cancel",(R==="yes"&&!k||R==="no"&&!f)&&" · Tab to amend"]})})]})}c();function OO(Y){let Z=aW.c(9),J,X;if(Z[0]!==Y)({sedInfo:X,...J}=Y),Z[0]=Y,Z[1]=J,Z[2]=X;else J=Z[1],X=Z[2];let{filePath:z}=X,G;if(Z[3]!==z)G=(async()=>{let V=DO(z);return{oldContent:(await w7().readFile(z,{encoding:V})).replaceAll(`\r
|
|
49
|
+
`,`
|
|
50
|
+
`),fileExists:!0}})().catch(UC),Z[3]=z,Z[4]=G;else G=Z[4];let K=G,Q;if(Z[5]!==K||Z[6]!==J||Z[7]!==X)Q=B(F5.Suspense,{fallback:null,children:B(NC,{sedInfo:X,contentPromise:K,...J})}),Z[5]=K,Z[6]=J,Z[7]=X,Z[8]=Q;else Q=Z[8];return Q}function UC(Y){if(!l9(Y))throw Y;return{oldContent:"",fileExists:!1}}function NC(Y){let Z=aW.c(35),J,X,z;if(Z[0]!==Y)({sedInfo:z,contentPromise:J,...X}=Y),Z[0]=Y,Z[1]=J,Z[2]=X,Z[3]=z;else J=Z[1],X=Z[2],z=Z[3];let{filePath:G}=z,{oldContent:K,fileExists:Q}=F5.use(J),V;if(Z[4]!==K||Z[5]!==z)V=UO(K,z),Z[4]=K,Z[5]=z,Z[6]=V;else V=Z[6];let H=V,W;Z:{if(K===H){let f;if(Z[7]===Symbol.for("react.memo_cache_sentinel"))f=[],Z[7]=f;else f=Z[7];W=f;break Z}let k;if(Z[8]!==H||Z[9]!==K)k=[{old_string:K,new_string:H,replace_all:!1}],Z[8]=H,Z[9]=K,Z[10]=k;else k=Z[10];W=k}let D=W,q;Z:{if(!Q){q="File does not exist";break Z}q="Pattern did not match any content"}let U=q,N;if(Z[11]!==G||Z[12]!==H)N=(k)=>{return{...iJ.inputSchema.parse(k),_simulatedSedEdit:{filePath:G,newContent:H}}},Z[11]=G,Z[12]=H,Z[13]=N;else N=Z[13];let L=N,F=X.toolUseConfirm,P=X.toolUseContext,w=X.onDone,_=X.onReject,A;if(Z[14]!==G)A=DC(mZ(),G),Z[14]=G,Z[15]=A;else A=Z[15];let j;if(Z[16]!==G)j=BC(G),Z[16]=G,Z[17]=j;else j=Z[17];let y;if(Z[18]!==j)y=E(O,{children:["Do you want to make this edit to"," ",B(O,{bold:!0,children:j}),"?"]}),Z[18]=j,Z[19]=y;else y=Z[19];let b;if(Z[20]!==D||Z[21]!==G||Z[22]!==U)b=D.length>0?B(O5,{file_path:G,edits:D}):B(O,{dimColor:!0,children:U}),Z[20]=D,Z[21]=G,Z[22]=U,Z[23]=b;else b=Z[23];let R;if(Z[24]!==G||Z[25]!==L||Z[26]!==X.onDone||Z[27]!==X.onReject||Z[28]!==X.toolUseConfirm||Z[29]!==X.toolUseContext||Z[30]!==X.workerBadge||Z[31]!==y||Z[32]!==b||Z[33]!==A)R=B(AX,{toolUseConfirm:F,toolUseContext:P,onDone:w,onReject:_,title:"Edit file",subtitle:A,question:y,content:b,path:G,completionType:"str_replace_single",parseInput:L,workerBadge:X.workerBadge}),Z[24]=G,Z[25]=L,Z[26]=X.onDone,Z[27]=X.onReject,Z[28]=X.toolUseConfirm,Z[29]=X.toolUseContext,Z[30]=X.workerBadge,Z[31]=y,Z[32]=b,Z[33]=A,Z[34]=R;else R=Z[34];return R}DZ();dJ();YZ();_7();var W9=x(Q0(),1);function E5({toolUseConfirm:Y,onDone:Z,onReject:J,explainerVisible:X}){let z=n0(),[G,K]=W9.useState(""),[Q,V]=W9.useState(""),[H,W]=W9.useState(!1),[D,q]=W9.useState(!1),[U,N]=W9.useState("yes"),[L,F]=W9.useState(!1),[P,w]=W9.useState(!1);function _(y){Y.onUserInteraction();let b={toolName:gZ(Y.tool.name),isMcp:Y.tool.isMcp??!1};if(y==="yes")if(H)W(!1),Z0("tengu_accept_feedback_mode_collapsed",b);else W(!0),F(!0),Z0("tengu_accept_feedback_mode_entered",b);else if(y==="no")if(D)q(!1),Z0("tengu_reject_feedback_mode_collapsed",b);else q(!0),w(!0),Z0("tengu_reject_feedback_mode_entered",b)}function A(y){let b=y?.trim(),R=!!b;if(!R)Z0("tengu_permission_request_escape",{explainer_visible:X}),z((k)=>({...k,attribution:{...k.attribution,escapeCount:k.attribution.escapeCount+1}}));if(VY("tool_use_single",Y,"reject",R),b)Y.onReject(b);else Y.onReject();J(),Z()}function j(y){if(y!==U)Y.onUserInteraction();if(y!=="yes"&&H&&!Q.trim())W(!1);if(y!=="no"&&D&&!G.trim())q(!1);N(y)}return{yesInputMode:H,noInputMode:D,yesFeedbackModeEntered:L,noFeedbackModeEntered:P,acceptFeedback:Q,rejectFeedback:G,setAcceptFeedback:V,setRejectFeedback:K,focusedOption:U,handleInputModeToggle:_,handleReject:A,handleFocus:j}}_7();w5();wN();A7();AZ();N0();OC();c();import{basename as oW,sep as r9}from"path";function LC(Y){switch(Y.length){case 0:return"";case 1:return B(O,{bold:!0,children:Y[0]});case 2:return E(O,{children:[B(O,{bold:!0,children:Y[0]})," and ",B(O,{bold:!0,children:Y[1]})]});default:return E(O,{children:[B(O,{bold:!0,children:Y.slice(0,-1).join(", ")}),", and"," ",B(O,{bold:!0,children:Y.slice(-1)[0]})]})}}function nW(Y){if(Y.join(", ").length>50)return"similar";return LC(Y)}function IK(Y){if(Y.length===0)return"";let Z=Y.map((J)=>oW(J)||J);if(Z.length===1)return E(O,{children:[B(O,{bold:!0,children:Z[0]}),r9]});if(Z.length===2)return E(O,{children:[B(O,{bold:!0,children:Z[0]}),r9," and ",B(O,{bold:!0,children:Z[1]}),r9]});return E(O,{children:[B(O,{bold:!0,children:Z[0]}),r9,", ",B(O,{bold:!0,children:Z[1]}),r9," and ",Y.length-2," more"]})}function P5(Y,Z,J){let X=Y.filter((q)=>q.type==="addRules").flatMap((q)=>q.rules||[]),z=X.filter((q)=>q.toolName==="Read"),G=X.filter((q)=>q.toolName===Z),K=Y.filter((q)=>q.type==="addDirectories").flatMap((q)=>q.directories||[]),Q=z.map((q)=>q.ruleContent?.replace("/**","")||"").filter((q)=>q),V=[...new Set(G.flatMap((q)=>{if(!q.ruleContent)return[];let U=FO(q.ruleContent)??q.ruleContent;return J?J(U):U}))],H=K.length>0,W=Q.length>0,D=V.length>0;if(W&&!H&&!D){if(Q.length===1){let q=Q[0],U=oW(q)||q;return E(O,{children:["Yes, allow reading from ",B(O,{bold:!0,children:U}),r9," from this project"]})}return E(O,{children:["Yes, allow reading from ",IK(Q)," from this project"]})}if(H&&!W&&!D){if(K.length===1){let q=K[0],U=oW(q)||q;return E(O,{children:["Yes, and always allow access to ",B(O,{bold:!0,children:U}),r9," from this project"]})}return E(O,{children:["Yes, and always allow access to ",IK(K)," from this project"]})}if(D&&!H&&!W)return E(O,{children:["Yes, and don't ask again for ",nW(V)," commands in"," ",B(O,{bold:!0,children:QY()})]});if((H||W)&&!D){let q=[...K,...Q];if(H&&W)return E(O,{children:["Yes, and always allow access to ",IK(q)," from this project"]})}if((H||W)&&D){let q=[...K,...Q];if(q.length===1&&V.length===1)return E(O,{children:["Yes, and allow access to ",IK(q)," and"," ",nW(V)," commands"]});return E(O,{children:["Yes, and allow ",IK(q)," access and"," ",nW(V)," commands"]})}return null}function FC(Y){let{commandWithoutRedirections:Z,redirections:J}=EO(Y);return J.length>0?Z:Y}function PO({suggestions:Y=[],decisionReason:Z,onRejectFeedbackChange:J,onAcceptFeedbackChange:X,onClassifierDescriptionChange:z,classifierDescription:G,initialClassifierDescriptionEmpty:K=!1,existingAllowDescriptions:Q=[],yesInputMode:V=!1,noInputMode:H=!1,editablePrefix:W,onEditablePrefixChange:D}){let q=[];if(V)q.push({type:"input",label:"Yes",value:"yes",placeholder:"and tell Claude what to do next",onChange:X,allowEmptySubmitToCancel:!0});else q.push({label:"Yes",value:"yes"});if(IJ()){let U=Y.some((N)=>N.type==="addDirectories"||N.type==="addRules"&&N.rules?.some((L)=>L.toolName!==H8));if(W!==void 0&&D&&!U&&Y.length>0)q.push({type:"input",label:"Yes, and don’t ask again for",value:"yes-prefix-edited",placeholder:"command prefix (e.g., npm run:*)",initialValue:W,onChange:D,allowEmptySubmitToCancel:!0,showLabelWithValue:!0,labelValueSeparator:": ",resetCursorOnUpdate:!0});else if(Y.length>0){let N=P5(Y,H8,FC);if(N)q.push({label:N,value:"yes-apply-suggestions"})}}if(H)q.push({type:"input",label:"No",value:"no",placeholder:"and tell Claude what to do differently",onChange:J,allowEmptySubmitToCancel:!0});else q.push({label:"No",value:"no"});return q}c();var wO="Attempting to auto-approve…";function PC(){let Y=sW.c(6),[Z,J]=q5("requesting",wO,!1),X;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))X=[...wO],Y[0]=X;else X=Y[0];let z;if(Y[1]!==J)z=B(O,{children:X.map((K,Q)=>B(H5,{char:K,index:Q,glimmerIndex:J,messageColor:"inactive",shimmerColor:"subtle"},Q))}),Y[1]=J,Y[2]=z;else z=Y[2];let G;if(Y[3]!==Z||Y[4]!==z)G=B(M,{ref:Z,children:z}),Y[3]=Z,Y[4]=z,Y[5]=G;else G=Y[5];return G}function bO(Y){let Z=sW.c(21),{toolUseConfirm:J,toolUseContext:X,onDone:z,onReject:G,verbose:K,workerBadge:Q}=Y,V,H,W;if(Z[0]!==J.input)({command:V,description:H}=iJ.inputSchema.parse(J.input)),W=yO(V),Z[0]=J.input,Z[1]=V,Z[2]=H,Z[3]=W;else V=Z[1],H=Z[2],W=Z[3];let D=W;if(D){let U;if(Z[4]!==z||Z[5]!==G||Z[6]!==D||Z[7]!==J||Z[8]!==X||Z[9]!==K||Z[10]!==Q)U=B(OO,{toolUseConfirm:J,toolUseContext:X,onDone:z,onReject:G,verbose:K,workerBadge:Q,sedInfo:D}),Z[4]=z,Z[5]=G,Z[6]=D,Z[7]=J,Z[8]=X,Z[9]=K,Z[10]=Q,Z[11]=U;else U=Z[11];return U}let q;if(Z[12]!==V||Z[13]!==H||Z[14]!==z||Z[15]!==G||Z[16]!==J||Z[17]!==X||Z[18]!==K||Z[19]!==Q)q=B(wC,{toolUseConfirm:J,toolUseContext:X,onDone:z,onReject:G,verbose:K,workerBadge:Q,command:V,description:H}),Z[12]=V,Z[13]=H,Z[14]=z,Z[15]=G,Z[16]=J,Z[17]=X,Z[18]=K,Z[19]=Q,Z[20]=q;else q=Z[20];return q}function wC({toolUseConfirm:Y,toolUseContext:Z,onDone:J,onReject:X,verbose:z,workerBadge:G,command:K,description:Q}){let[V]=SZ(),H=t((X0)=>X0.toolPermissionContext),W=B5({toolName:Y.tool.name,toolInput:Y.input,toolDescription:Y.description,messages:Z.messages}),{yesInputMode:D,noInputMode:q,yesFeedbackModeEntered:U,noFeedbackModeEntered:N,acceptFeedback:L,rejectFeedback:F,setAcceptFeedback:P,setRejectFeedback:w,focusedOption:_,handleInputModeToggle:A,handleReject:j,handleFocus:y}=E5({toolUseConfirm:Y,onDone:J,onReject:X,explainerVisible:W.visible}),[b,R]=WY.useState(!1),[k,f]=WY.useState(Q||""),[$,v]=WY.useState(!Q?.trim());WY.useEffect(()=>{if(!TK())return;let X0=new AbortController;return AO(K,Q,X0.signal).then((H0)=>{if(H0&&!X0.signal.aborted)f(H0),v(!1)}).catch(()=>{}),()=>X0.abort()},[K,Q]);let T=Y.permissionResult.decisionReason?.type==="subcommandResults",[h,u]=WY.useState(()=>{if(T){let j0=p9("suggestions"in Y.permissionResult?Y.permissionResult.suggestions:void 0).filter((V0)=>V0.toolName===iJ.name&&V0.ruleContent);return j0.length===1?j0[0].ruleContent:void 0}let X0=RO(K);if(X0)return`${X0}:*`;let H0=jO(K);if(H0)return`${H0}:*`;return K}),C=WY.useRef(!1),a=WY.useCallback((X0)=>{C.current=!0,u(X0)},[]);WY.useEffect(()=>{if(T)return;let X0=!1;return AN(K,(H0)=>iJ.isReadOnly({command:H0})).then((H0)=>{if(X0||C.current)return;if(H0.length>0)u(`${H0[0]}:*`)}).catch(()=>{}),()=>{X0=!0}},[K,T]);let[o]=WY.useState(!!Y.classifierCheckInProgress),{destructiveWarning:Y0,sandboxingEnabled:d,isSandboxed:p}=WY.useMemo(()=>{let X0=YJ("tengu_destructive_command_warning",!1)?QN(K):null,H0=eZ.isSandboxingEnabled(),j0=H0&&kO(Y.input);return{destructiveWarning:X0,sandboxingEnabled:H0,isSandboxed:j0}},[K,Y.input]),K0=WY.useMemo(()=>({completion_type:"tool_use_single",language_name:"none"}),[]);ZJ(Y,K0);let G0=WY.useMemo(()=>_O(H),[H]),J0=WY.useMemo(()=>PO({suggestions:Y.permissionResult.behavior==="ask"?Y.permissionResult.suggestions:void 0,decisionReason:Y.permissionResult.decisionReason,onRejectFeedbackChange:w,onAcceptFeedbackChange:P,onClassifierDescriptionChange:f,classifierDescription:k,initialClassifierDescriptionEmpty:$,existingAllowDescriptions:G0,yesInputMode:D,noInputMode:q,editablePrefix:h,onEditablePrefixChange:a}),[Y,k,$,G0,D,q,h,a]),P0=WY.useCallback(()=>{R((X0)=>!X0)},[]);KZ("permission:toggleDebug",P0,{context:"Confirmation"});let M0=WY.useCallback(()=>{Y.onDismissCheckmark?.()},[Y]);KZ("confirm:no",M0,{context:"Confirmation",isActive:!!Y.classifierAutoApproved});function I0(X0){let H0={yes:1,"yes-apply-suggestions":2,"yes-prefix-edited":2,no:3};H0={yes:1,"yes-apply-suggestions":2,"yes-prefix-edited":2,"yes-classifier-reviewed":3,no:4},Z0("tengu_permission_request_option_selected",{option_index:H0[X0],explainer_visible:W.visible});let j0=gZ(Y.tool.name);if(X0==="yes-prefix-edited"){let V0=(h??"").trim();if(VY("tool_use_single",Y,"accept"),!V0)Y.onAllow(Y.input,[]);else{let l=[{type:"addRules",rules:[{toolName:iJ.name,ruleContent:V0}],behavior:"allow",destination:"localSettings"}];Y.onAllow(Y.input,l)}J();return}if(X0==="yes-classifier-reviewed"){let V0=k.trim();if(VY("tool_use_single",Y,"accept"),!V0)Y.onAllow(Y.input,[]);else{let l=[{type:"addRules",rules:[{toolName:iJ.name,ruleContent:_5(V0)}],behavior:"allow",destination:"session"}];Y.onAllow(Y.input,l)}J();return}switch(X0){case"yes":{let V0=L.trim();VY("tool_use_single",Y,"accept"),Z0("tengu_accept_submitted",{toolName:j0,isMcp:Y.tool.isMcp??!1,has_instructions:!!V0,instructions_length:V0.length,entered_feedback_mode:U}),Y.onAllow(Y.input,[],V0||void 0),J();break}case"yes-apply-suggestions":{VY("tool_use_single",Y,"accept");let V0="suggestions"in Y.permissionResult?Y.permissionResult.suggestions||[]:[];Y.onAllow(Y.input,V0),J();break}case"no":{let V0=F.trim();Z0("tengu_reject_submitted",{toolName:j0,isMcp:Y.tool.isMcp??!1,has_instructions:!!V0,instructions_length:V0.length,entered_feedback_mode:N}),j(V0||void 0);break}}}let q0=Y.classifierAutoApproved?E(O,{children:[E(O,{color:"success",children:[R0.tick," Auto-approved"]}),Y.classifierMatchedRule&&E(O,{dimColor:!0,children:[' · matched "',Y.classifierMatchedRule,'"']})]}):Y.classifierCheckInProgress?B(PC,{}):o?B(O,{dimColor:!0,children:"Requires manual approval"}):void 0;return E(jZ,{workerBadge:G,title:d&&!p?"Bash command (unsandboxed)":"Bash command",subtitle:q0,children:[E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[B(O,{dimColor:W.visible,children:iJ.renderToolUseMessage({command:K,description:Q},{theme:V,verbose:!0})}),!W.visible&&B(O,{dimColor:!0,children:Y.description}),B(D5,{visible:W.visible,promise:W.promise})]}),b?E(A0,{children:[B(W5,{permissionResult:Y.permissionResult,toolName:"Bash"}),Z.options.debug&&B(M,{justifyContent:"flex-end",marginTop:1,children:B(O,{dimColor:!0,children:"Ctrl-D to hide debug info"})})]}):E(A0,{children:[E(M,{flexDirection:"column",children:[B(SY,{permissionResult:Y.permissionResult,toolType:"command"}),Y0&&B(M,{marginBottom:1,children:B(O,{color:"warning",dimColor:Y.classifierAutoApproved,children:Y0})}),B(O,{dimColor:Y.classifierAutoApproved,children:"Do you want to proceed?"}),B(qZ,{options:Y.classifierAutoApproved?J0.map((X0)=>({...X0,disabled:!0})):J0,isDisabled:Y.classifierAutoApproved,inlineDescriptions:!0,onChange:I0,onCancel:()=>j(),onFocus:y,onInputModeToggle:A})]}),E(M,{justifyContent:"space-between",marginTop:1,children:[E(O,{dimColor:!0,children:["Esc to cancel",(_==="yes"&&!D||_==="no"&&!q)&&" · Tab to amend",W.enabled&&` · ctrl+e to ${W.visible?"hide":"explain"}`]}),Z.options.debug&&B(O,{dimColor:!0,children:"Ctrl+d to show debug info"})]})]})]})}AZ();N0();DZ();YZ();$W();eX();cY();c();var TO=x(v0(),1);function vO(Y){let Z=TO.c(18),{toolUseConfirm:J,onDone:X,onReject:z,workerBadge:G}=Y,K=t(_C),Q;if(Z[0]!==X||Z[1]!==z||Z[2]!==K||Z[3]!==J)Q=function(w){if(w==="yes")Z0("tengu_plan_enter",{interviewPhaseEnabled:wY(),entryMethod:"tool"}),IO(K,"plan"),X(),J.onAllow({},[{type:"setMode",mode:"plan",destination:"session"}]);else X(),z(),J.onReject()},Z[0]=X,Z[1]=z,Z[2]=K,Z[3]=J,Z[4]=Q;else Q=Z[4];let V=Q,H;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))H=B(O,{children:"Claude wants to enter plan mode to explore and design an implementation approach."}),Z[5]=H;else H=Z[5];let W;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))W=E(M,{marginTop:1,flexDirection:"column",children:[B(O,{dimColor:!0,children:"In plan mode, Claude will:"}),B(O,{dimColor:!0,children:" · Explore the codebase thoroughly"}),B(O,{dimColor:!0,children:" · Identify existing patterns"}),B(O,{dimColor:!0,children:" · Design an implementation strategy"}),B(O,{dimColor:!0,children:" · Present a plan for your approval"})]}),Z[6]=W;else W=Z[6];let D;if(Z[7]===Symbol.for("react.memo_cache_sentinel"))D=B(M,{marginTop:1,children:B(O,{dimColor:!0,children:"No code changes will be made until you approve the plan."})}),Z[7]=D;else D=Z[7];let q;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))q={label:"Yes, enter plan mode",value:"yes"},Z[8]=q;else q=Z[8];let U;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))U=[q,{label:"No, start implementing now",value:"no"}],Z[9]=U;else U=Z[9];let N;if(Z[10]!==V)N=()=>V("no"),Z[10]=V,Z[11]=N;else N=Z[11];let L;if(Z[12]!==V||Z[13]!==N)L=E(M,{flexDirection:"column",marginTop:1,paddingX:1,children:[H,W,D,B(M,{marginTop:1,children:B(qZ,{options:U,onChange:V,onCancel:N})})]}),Z[12]=V,Z[13]=N,Z[14]=L;else L=Z[14];let F;if(Z[15]!==L||Z[16]!==G)F=B(jZ,{color:"planMode",title:"Enter plan mode?",workerBadge:G,children:L}),Z[15]=L,Z[16]=G,Z[17]=F;else F=Z[17];return F}function _C(Y){return Y.toolPermissionContext.mode}TY();dZ();DZ();YZ();AZ();cC();uC();N0();fC();hC();xC();G8();aO();m9();$C();bJ();rZ();RJ();BY();_X();MO();AK();g9();$W();lQ();Z5();o8();n9();eX();mC();cY();V8();zN();SW();var HY=x(Q0(),1);D7();KW();HJ();var SK=x(Q0(),1);D7();rJ();var AC=new Set(["ghostty","kitty","WezTerm","iTerm.app","WarpTerminal"]),MC=["kitty","ghostty","wezterm"];function i9(){let Y=process.env.CLAUDIN_NERD_FONT;if(nZ(Y))return!0;if(A5(Y))return!1;let Z=process.env.TERM_PROGRAM;if(Z&&AC.has(Z))return!0;let J=process.env.TERM?.toLowerCase()??"";if(MC.some((X)=>J.includes(X)))return!0;return!1}var M7="",CO="",tW="",RC="",SO="",$O="",jC=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/;function eW(Y){let Z=Y.messageActionsBackground;return Z==="ansi:white"||Z==="ansi:whiteBright"?Y.inactive:Z}function GZ(Y,Z,J){if(Z.startsWith("ansi:")){let z=Z.slice(5);if(J==="fg")return Y[z]??Y;let G=`bg${z[0].toUpperCase()}${z.slice(1)}`;return Y[G]??Y}if(Z.startsWith("#"))return J==="fg"?Y.hex(Z):Y.bgHex(Z);if(Z.startsWith("ansi256(")){let z=parseInt(Z.slice(8));return J==="fg"?Y.ansi256(z):Y.bgAnsi256(z)}let X=jC.exec(Z);if(X){let[z,G,K]=[+X[1],+X[2],+X[3]];return J==="fg"?Y.rgb(z,G,K):Y.bgRgb(z,G,K)}return Y}function fO(Y,Z,J,X,z){if(!i9())return yC(Y,Z,J,X,z);let{suggestion:G,messageActionsBackground:K}=z,Q=K==="ansi:white"||K==="ansi:whiteBright"?z.inactive:K,V=z.inverseText,H=z.suggestion,W=GZ(GZ(d0,G,"bg"),V,"fg").bold,D=GZ(GZ(d0,G,"fg"),Q,"bg"),q=GZ(GZ(d0,Q,"bg"),H,"fg"),U=GZ(d0,Q,"fg"),N=GZ(d0,G,"fg"),L=W(` ${Y} `);if(Z){if(L+=D(M7),L+=q(` ${CO} ${Z}`),J>0||X>0){if(L+=q(" ("),J>0)L+=GZ(GZ(d0,Q,"bg"),z.success,"fg")(`↑${J}`);if(J>0&&X>0)L+=q(" ");if(X>0)L+=GZ(GZ(d0,Q,"bg"),z.warning,"fg")(`↓${X}`);L+=q(")")}L+=q(" "),L+=U(M7)}else L+=N(M7);return L}function hO(Y,Z){if(!i9()){let K=GZ(d0,Z.suggestion,"fg").bold;return`[ ${K(Y)} ]`}let{suggestion:J,inverseText:X}=Z,z=GZ(GZ(d0,J,"bg"),X,"fg").bold,G=GZ(d0,J,"fg");return G(tW)+z(` ${Y} `)+G(M7)}function xO(Y,Z){if(!Y)return"";if(!i9())return`[ ${GZ(d0,Z.suggestion,"fg")(Y.trim())} ]`;let J=eW(Z),X=Z.suggestion,z=GZ(GZ(d0,J,"bg"),X,"fg"),G=GZ(d0,J,"fg");return G(SO)+z(`${Y}`)+G($O)}function gO(Y,Z){if(!Y)return"";if(!i9()){let K=GZ(d0,Z.suggestion,"fg").bold;return`[ ${K(Y.trim())} ]`}let{suggestion:J,inverseText:X}=Z,z=GZ(GZ(d0,J,"bg"),X,"fg").bold,G=GZ(d0,J,"fg");return G(SO)+z(`${Y}`)+G($O)}function mO(Y,Z,J,X){if(!Y)return"";if(!i9()){let W=GZ(d0,X.suggestion,"fg")(Y);if(Z>0||J>0){if(W+=" (",Z>0)W+=GZ(d0,X.success,"fg")(`↑${Z}`);if(Z>0&&J>0)W+=" ";if(J>0)W+=GZ(d0,X.warning,"fg")(`↓${J}`);W+=")"}return`[ ${W} ]`}let z=eW(X),G=X.suggestion,K=GZ(GZ(d0,z,"bg"),G,"fg"),Q=GZ(d0,z,"fg"),V=Q(tW);if(V+=K(` ${CO} ${Y}`),Z>0||J>0){if(V+=K(" ("),Z>0)V+=GZ(GZ(d0,z,"bg"),X.success,"fg")(`↑${Z}`);if(Z>0&&J>0)V+=K(" ");if(J>0)V+=GZ(GZ(d0,z,"bg"),X.warning,"fg")(`↓${J}`);V+=K(")")}return V+=K(" "),V+=Q(M7),V}function cO(Y,Z,J){if(!i9()){let V=Z==="approved"?J.success:Z==="changes_requested"?J.error:Z==="pending"?J.warning:Z==="merged"?J.merged:J.inactive,H=GZ(d0,V,"fg")(`#${Y}`);return`[ ${GZ(d0,J.inactive,"fg")("PR")} ${H} ]`}let X=eW(J),z=Z==="approved"?J.success:Z==="changes_requested"?J.error:Z==="pending"?J.warning:Z==="merged"?J.merged:J.inactive,G=GZ(GZ(d0,X,"bg"),J.inactive,"fg"),K=GZ(GZ(d0,X,"bg"),z,"fg"),Q=GZ(d0,X,"fg");return Q(tW)+G(` ${RC} `)+K(`#${Y}`)+G(" ")+Q(M7)}function yC(Y,Z,J,X,z){let G=GZ(d0,z.suggestion,"fg").bold,K=`[ ${G(Y)} ]`;if(Z){let V=GZ(d0,z.suggestion,"fg")(Z);if(J>0||X>0){if(V+=" (",J>0)V+=GZ(d0,z.success,"fg")(`↑${J}`);if(J>0&&X>0)V+=" ";if(X>0)V+=GZ(d0,z.warning,"fg")(`↓${X}`);V+=")"}K+=` [ ${V} ]`}return K}ZH();PQ();AZ();var H9=x(Q0(),1);uO();ZH();uJ();var kC=5000;function bC(Y,Z){if(Y)return"draft";switch(Z){case"APPROVED":return"approved";case"CHANGES_REQUESTED":return"changes_requested";default:return"pending"}}async function lO(){if(!await pO())return null;let[Z,J]=await Promise.all([R7(),dO()]);if(Z===J)return null;let{stdout:X,code:z}=await CK("gh",["pr","view","--json","number,url,reviewDecision,isDraft,headRefName,state"],{timeout:kC,preserveOutputOnError:!1});if(z!==0||!X.trim())return null;try{let G=h8(X);if(G.headRefName===J||G.headRefName==="main"||G.headRefName==="master")return null;if(G.state==="MERGED"||G.state==="CLOSED")return null;return{number:G.number,url:G.url,reviewState:bC(G.isDraft,G.reviewDecision)}}catch{return null}}var YH=60000,IC=4000,TC=3600000,vC={number:null,url:null,reviewState:null,lastUpdated:0};function M5(Y,Z=!0){let[J,X]=H9.useState(vC),z=H9.useRef(null),G=H9.useRef(!1),K=H9.useRef(0);return H9.useEffect(()=>{if(!Z)return;if(G.current)return;let Q=!1,V=-1,H=Date.now();async function W(){if(Q)return;let q=z7();if(V!==q)V=q,H=Date.now();else if(Date.now()-H>=TC)return;let U=Date.now(),N=await lO();if(Q)return;if(K.current=U,X((L)=>{let F=N?.number??null,P=N?.reviewState??null;if(L.number===F&&L.reviewState===P)return L;return{number:F,url:N?.url??null,reviewState:P,lastUpdated:Date.now()}}),Date.now()-U>IC){G.current=!0;return}if(!Q)z.current=setTimeout(W,YH)}let D=Date.now()-K.current;if(D>=YH)W();else z.current=setTimeout(W,YH-D);return()=>{if(Q=!0,z.current)clearTimeout(z.current),z.current=null}},[Y,Z]),J}var CC={cwd:"",branch:"",pr:"",combined:""};function SC(Y){switch(Y){case"approved":return d0.green;case"changes_requested":return d0.red;case"pending":return d0.yellow;case"merged":return d0.magenta;default:return d0.dim}}function R5(Y={}){let{isLoading:Z=!1,enabled:J=!0,withPr:X=!1}=Y,z=mZ(),[G]=SZ(),[K,Q]=SK.useState(""),[V,H]=SK.useState({ahead:0,behind:0}),W=M5(Z,X&&J);if(SK.useEffect(()=>{if(!J)return;let w=!1,_=()=>{R7().then((j)=>{if(w)return;Q((y)=>y===(j??"")?y:j??"")}).catch(()=>{if(!w)Q("")}),rO().then((j)=>{if(w)return;H((y)=>y.ahead===j.ahead&&y.behind===j.behind?y:j)}).catch(()=>{if(!w)H({ahead:0,behind:0})})};_();let A=setInterval(_,2000);return()=>{w=!0,clearInterval(A)}},[z,Z,J]),!J)return CC;let D=process.env.HOME||"",q=z===D?"~":D&&z.startsWith(D+"/")?"~"+z.slice(D.length):z,U=c8(G),N=hO(q,U),L=mO(K,V.ahead,V.behind,U),F=X&&K&&W.number!==null&&W.url!==null?cO(W.number,W.reviewState,U):"",P=fO(q,K,V.ahead,V.behind,U);if(X&&W.number!==null&&W.url!==null){let w=SC(W.reviewState);P+=" "+d0.dim("PR")+" "+w("#"+W.number)}return{cwd:N,branch:L,pr:F,combined:P}}c();var j7=(sO(),pJ(gC));function j5(Y,Z){let J=[{type:"setMode",mode:b7(Y),destination:"session"}];if(TK()&&Z&&Z.length>0)J.push({type:"addRules",rules:Z.map((X)=>({toolName:X.tool,ruleContent:_5(X.prompt)})),behavior:"allow",destination:"session"});return J}function pC(Y,Z){if(iO()||k5()?.cleanupPeriodDays===0)return;if(!Z&&a9(sY()))return;JL([gY({content:Y.slice(0,1000)})],new AbortController().signal).then(async(J)=>{if(!J||a9(sY()))return;let X=sY(),z=KH();await zL(X,J,z,"auto")}).catch(u0)}function GL({toolUseConfirm:Y,onDone:Z,onReject:J,workerBadge:X,setStickyFooter:z}){let G=t((l)=>l.toolPermissionContext),K=n0(),Q=pZ(),{addNotification:V}=JZ(),[H,W]=HY.useState(""),[D,q]=HY.useState({}),U=HY.useRef(0),N=t((l)=>l.settings.showClearContextOnPlanAccept)??!1,L=t((l)=>l.ultraplanSessionUrl),F=t((l)=>l.ultraplanLaunching),P=!1,w=Y.assistantMessage.message.usage,{mode:_,isAutoModeAvailable:A,isBypassPermissionsModeAvailable:j}=G,y=HY.useMemo(()=>dC({showClearContext:N,showUltraplan:!1,usedPercent:N?lC(w,_):null,isAutoModeAvailable:A,isBypassPermissionsModeAvailable:j,onFeedbackChange:W}),[N,!1,w,_,A,j]);function b(l,L0,F0,$0,LZ){let n=U.current++,W0={id:n,type:"image",content:l,mediaType:L0||"image/png",filename:F0||"Pasted image",dimensions:$0};U7(W0),N7(W0),q((B0)=>({...B0,[n]:W0}))}let R=HY.useCallback((l)=>{q((L0)=>{let F0={...L0};return delete F0[l],F0})},[]),k=Object.values(D).filter((l)=>l.type==="image"),f=k.length>0,$=Y.tool.name===nO,v=$?void 0:Y.input.plan,T=$?J5():void 0,h=Y.input.allowedPrompts,u=v??zH(),C=!u||u.trim()==="",[a]=HY.useState(()=>ZL()??void 0),[o,Y0]=HY.useState(()=>{if(v)return v;return zH()??"No plan found. Please write your plan to the plan file first."}),[d,p]=HY.useState(!1),[K0,G0]=HY.useState(!1);HY.useEffect(()=>{if(d){let l=setTimeout(p,5000,!1);return()=>clearTimeout(l)}},[d]);let J0=(l)=>{if(l.ctrl&&l.key==="g"){l.preventDefault(),Z0("tengu_plan_external_editor_used",{}),(async()=>{if($&&T){let L0=await YL(T);if(L0.error)V({key:"external-editor-error",text:L0.error,color:"warning",priority:"high"});if(L0.content!==null){if(L0.content!==o)G0(!0);Y0(L0.content),p(!0)}}else{let L0=await Z9(o);if(L0.error)V({key:"external-editor-error",text:L0.error,color:"warning",priority:"high"});if(L0.content!==null&&L0.content!==o)Y0(L0.content),p(!0)}})();return}if(l.shift&&l.key==="tab"){l.preventDefault(),P0(N?"yes-accept-edits":"yes-accept-edits-keep-context");return}};async function P0(l){let L0=H.trim(),F0=L0||void 0;if(l==="ultraplan"){Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:"ultraplan",interviewPhaseEnabled:wY(),planStructureVariant:a}),Z(),J(),Y.onReject("Plan being refined via Ultraplan — please wait for the result."),XL({blurb:"",seedPlan:o,getAppState:Q.getState,setAppState:Q.setState,signal:new AbortController().signal}).then((b0)=>ez({value:b0,mode:"task-notification"})).catch(u0);return}let $0=$&&!K0?{}:{plan:o};{let b0=(l==="yes-resume-auto-mode"||l==="yes-auto-clear-context")&&k7(),U0=j7?.isAutoModeActive()??!1;if(l!=="no"&&!b0&&U0)j7?.setAutoModeActive(!1),JH(!0),K((m)=>({...m,toolPermissionContext:{...GH(m.toolPermissionContext),prePlanMode:void 0}}))}let n=l==="yes-accept-edits-keep-context"||l==="yes-default-keep-context"||l==="yes-resume-auto-mode";if(l!=="no")pC(o,!n);if(l!=="no"&&!n){let b0="default";if(l==="yes-bypass-permissions")b0="bypassPermissions";else if(l==="yes-accept-edits")b0="acceptEdits";else if(l==="yes-auto-clear-context"&&k7())b0="auto",j7?.setAutoModeActive(!0);Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:l,clearContext:!0,interviewPhaseEnabled:wY(),planStructureVariant:a,hasFeedback:!!F0});let U0="",D0=`
|
|
51
|
+
|
|
52
|
+
If you need specific details from before exiting plan mode (like exact code snippets, error messages, or content you generated), read the full transcript at: ${KH()}`,z0=$Z()?`
|
|
53
|
+
|
|
54
|
+
If this plan can be broken down into multiple independent tasks, consider using the ${oO} tool to create a team and parallelize the work.`:"",C0=F0?`
|
|
55
|
+
|
|
56
|
+
User feedback on this plan: ${F0}`:"";K((h0)=>({...h0,initialMessage:{message:{...gY({content:`Implement the following plan:
|
|
57
|
+
|
|
58
|
+
${o}${U0}${D0}${z0}${C0}`}),planContent:o},clearContext:!0,mode:b0,allowedPrompts:h}})),y7(!0),Z(),J(),Y.onReject();return}if(l==="yes-resume-auto-mode"&&k7()){Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:l,clearContext:!1,interviewPhaseEnabled:wY(),planStructureVariant:a,hasFeedback:!!F0}),y7(!0),$K(!0),j7?.setAutoModeActive(!0),K((b0)=>({...b0,toolPermissionContext:v5({...b0.toolPermissionContext,mode:"auto",prePlanMode:void 0})})),Z(),Y.onAllow($0,[],F0);return}let B0={"yes-accept-edits-keep-context":G.isBypassPermissionsModeAvailable?"bypassPermissions":"acceptEdits","yes-default-keep-context":"default",...{"yes-resume-auto-mode":"default"}}[l];if(B0){Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:l,clearContext:!1,interviewPhaseEnabled:wY(),planStructureVariant:a,hasFeedback:!!F0}),y7(!0),$K(!0),Z(),Y.onAllow($0,j5(B0,h),F0);return}let S0={"yes-bypass-permissions":"bypassPermissions","yes-accept-edits":"acceptEdits"}[l];if(S0){Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:l,interviewPhaseEnabled:wY(),planStructureVariant:a,hasFeedback:!!F0}),y7(!0),$K(!0),Z(),Y.onAllow($0,j5(S0,h),F0);return}if(l==="no"){if(!L0&&!f)return;Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:"no",interviewPhaseEnabled:wY(),planStructureVariant:a});let b0;if(f)b0=await Promise.all(k.map(async(U0)=>{let m={type:"image",source:{type:"base64",media_type:U0.mediaType||"image/png",data:U0.content}};return(await X5(m)).block}));Z(),J(),Y.onReject(L0||(f?"(See attached image)":void 0),b0&&b0.length>0?b0:void 0)}}let M0=e8(),I0=M0?t8(M0):null,q0=HY.useRef(P0);q0.current=P0;let X0=HY.useRef(void 0);X0.current=()=>{Z0("tengu_plan_exit",{planLengthChars:o.length,outcome:"no",interviewPhaseEnabled:wY(),planStructureVariant:a}),Z(),J(),Y.onReject()};let H0=!C&&!!z,{combined:j0}=R5({enabled:H0}),V0=HY.useMemo(()=>j0?{content:j0,position:"bottom",align:"start",offset:0}:void 0,[j0]);if(HY.useLayoutEffect(()=>{if(!H0)return;return z(E(M,{flexDirection:"column",borderStyle:"round",borderColor:"planMode",borderLeft:!1,borderRight:!1,borderTop:!1,paddingX:1,borderText:V0,children:[B(O,{dimColor:!0,children:"Would you like to proceed?"}),B(M,{marginTop:1,children:B(qZ,{options:y,onChange:(l)=>void q0.current(l),onCancel:()=>X0.current?.(),onImagePaste:b,pastedContents:D,onRemoveImage:R})}),I0&&E(M,{flexDirection:"row",gap:1,marginTop:1,children:[B(O,{dimColor:!0,children:"ctrl-g to edit in "}),B(O,{bold:!0,dimColor:!0,children:I0}),$&&T&&E(O,{dimColor:!0,children:[" · ",XH(T)]}),d&&E(A0,{children:[B(O,{dimColor:!0,children:" · "}),E(O,{color:"success",children:[R0.tick,"Plan saved!"]})]})]})]})),()=>z(null)},[H0,z,y,D,I0,$,T,d,V0]),C)return B(jZ,{color:"planMode",title:"Exit plan mode?",workerBadge:X,children:E(M,{flexDirection:"column",paddingX:1,marginTop:1,children:[B(O,{children:"Claude wants to exit plan mode"}),B(M,{marginTop:1,children:B(qZ,{options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}],onChange:function(L0){if(L0==="yes"){if(Z0("tengu_plan_exit",{planLengthChars:0,outcome:"yes-default",interviewPhaseEnabled:wY(),planStructureVariant:a}),j7?.isAutoModeActive()??!1)j7?.setAutoModeActive(!1),JH(!0),K(($0)=>({...$0,toolPermissionContext:{...GH($0.toolPermissionContext),prePlanMode:void 0}}));y7(!0),$K(!0),Z(),Y.onAllow({},[{type:"setMode",mode:"default",destination:"session"}])}else Z0("tengu_plan_exit",{planLengthChars:0,outcome:"no",interviewPhaseEnabled:wY(),planStructureVariant:a}),Z(),J(),Y.onReject()},onCancel:()=>{Z0("tengu_plan_exit",{planLengthChars:0,outcome:"no",interviewPhaseEnabled:wY(),planStructureVariant:a}),Z(),J(),Y.onReject()}})})]})});return E(M,{flexDirection:"column",tabIndex:0,autoFocus:!0,onKeyDown:J0,children:[B(jZ,{color:"planMode",title:"Ready to code?",innerPaddingX:0,workerBadge:X,children:E(M,{flexDirection:"column",marginTop:1,children:[B(M,{paddingX:1,flexDirection:"column",children:B(O,{children:"Here is Claude's plan:"})}),B(M,{borderColor:"subtle",borderStyle:"dashed",flexDirection:"column",borderLeft:!1,borderRight:!1,paddingX:1,marginBottom:1,children:B(eO,{children:o})}),E(M,{flexDirection:"column",paddingX:1,children:[B(SY,{permissionResult:Y.permissionResult,toolType:"tool"}),TK()&&h&&h.length>0&&E(M,{flexDirection:"column",marginBottom:1,children:[B(O,{bold:!0,children:"Requested permissions:"}),h.map((l,L0)=>E(O,{dimColor:!0,children:[" ","· ",l.tool,"(",tO," ",l.prompt,")"]},L0))]}),!H0&&E(A0,{children:[B(O,{dimColor:!0,children:"Claude has written up a plan and is ready to execute. Would you like to proceed?"}),B(M,{marginTop:1,children:B(qZ,{options:y,onChange:P0,onCancel:()=>X0.current?.(),onImagePaste:b,pastedContents:D,onRemoveImage:R})})]})]})]})}),!H0&&I0&&E(M,{flexDirection:"row",gap:1,paddingX:1,marginTop:1,children:[E(M,{children:[B(O,{dimColor:!0,children:"ctrl-g to edit in "}),B(O,{bold:!0,dimColor:!0,children:I0}),$&&T&&E(O,{dimColor:!0,children:[" · ",XH(T)]})]}),d&&E(M,{children:[B(O,{dimColor:!0,children:" · "}),E(O,{color:"success",children:[R0.tick,"Plan saved!"]})]})]})]})}function dC({showClearContext:Y,showUltraplan:Z,usedPercent:J,isAutoModeAvailable:X,isBypassPermissionsModeAvailable:z,onFeedbackChange:G}){let K=[],Q=J!==null?` (${J}% used)`:"";if(Y)if(X)K.push({label:`Yes, clear context${Q} and use auto mode`,value:"yes-auto-clear-context"});else if(z)K.push({label:`Yes, clear context${Q} and bypass permissions`,value:"yes-bypass-permissions"});else K.push({label:`Yes, clear context${Q} and auto-accept edits`,value:"yes-accept-edits"});if(X)K.push({label:"Yes, and use auto mode",value:"yes-resume-auto-mode"});else if(z)K.push({label:"Yes, and bypass permissions",value:"yes-accept-edits-keep-context"});else K.push({label:"Yes, auto-accept edits",value:"yes-accept-edits-keep-context"});if(K.push({label:"Yes, manually approve edits",value:"yes-default-keep-context"}),Z)K.push({label:"No, refine with Ultraplan on Claude Code on the web",value:"ultraplan"});return K.push({type:"input",label:"No, keep planning",value:"no",placeholder:"Tell Claude what to change",description:"shift+tab to approve with this feedback",onChange:G}),K}function lC(Y,Z){if(!Y)return null;let J=b5({permissionMode:Z,mainLoopModel:K9(),exceeds200kTokens:!1}),X=I5(J,y5()),{used:z}=T5({input_tokens:Y.input_tokens,cache_creation_input_tokens:Y.cache_creation_input_tokens??0,cache_read_input_tokens:Y.cache_read_input_tokens??0},X);return z}AZ();N0();dJ();z9();A7();d8();F7();G9();cY();C5();V8();c();var VL=x(v0(),1);function o9(Y){let Z=VL.c(58),{toolUseConfirm:J,onDone:X,onReject:z,workerBadge:G}=Y,[K]=SZ(),Q,V;if(Z[0]!==J.input||Z[1]!==J.tool)Q=J.tool.userFacingName(J.input),V=Q.endsWith(" (MCP)")?Q.slice(0,-6):Q,Z[0]=J.input,Z[1]=J.tool,Z[2]=Q,Z[3]=V;else Q=Z[2],V=Z[3];let H=V,W;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))W={completion_type:"tool_use_single",language_name:"none"},Z[4]=W;else W=Z[4];ZJ(J,W);let q;if(Z[5]!==X||Z[6]!==z||Z[7]!==J)q=(p,K0)=>{Z:switch(p){case"yes":{jY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onAllow(J.input,[],K0),X();break Z}case"yes-dont-ask-again":{jY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onAllow(J.input,[{type:"addRules",rules:[{toolName:J.tool.name}],behavior:"allow",destination:"localSettings"}]),X();break Z}case"no":jY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onReject(K0),z(),X()}},Z[5]=X,Z[6]=z,Z[7]=J,Z[8]=q;else q=Z[8];let U=q,N;if(Z[9]!==X||Z[10]!==z||Z[11]!==J)N=()=>{jY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onReject(),z(),X()},Z[9]=X,Z[10]=z,Z[11]=J,Z[12]=N;else N=Z[12];let L=N,F;if(Z[13]===Symbol.for("react.memo_cache_sentinel"))F=QY(),Z[13]=F;else F=Z[13];let P=F,w;if(Z[14]===Symbol.for("react.memo_cache_sentinel"))w=IJ(),Z[14]=w;else w=Z[14];let _=w,A;if(Z[15]===Symbol.for("react.memo_cache_sentinel"))A={label:"Yes",value:"yes",feedbackConfig:{type:"accept"}},Z[15]=A;else A=Z[15];let j;if(Z[16]!==H){if(j=[A],_){let K0=B(O,{bold:!0,children:H}),G0;if(Z[18]===Symbol.for("react.memo_cache_sentinel"))G0=B(O,{bold:!0,children:P}),Z[18]=G0;else G0=Z[18];let J0;if(Z[19]!==K0)J0={label:E(O,{children:["Yes, and don't ask again for ",K0," ","commands in ",G0]}),value:"yes-dont-ask-again"},Z[19]=K0,Z[20]=J0;else J0=Z[20];j.push(J0)}let p;if(Z[21]===Symbol.for("react.memo_cache_sentinel"))p={label:"No",value:"no",feedbackConfig:{type:"reject"}},Z[21]=p;else p=Z[21];j.push(p),Z[16]=H,Z[17]=j}else j=Z[17];let y=j,b;if(Z[22]!==J.tool.name)b=gZ(J.tool.name),Z[22]=J.tool.name,Z[23]=b;else b=Z[23];let R=J.tool.isMcp??!1,k;if(Z[24]!==b||Z[25]!==R)k={toolName:b,isMcp:R},Z[24]=b,Z[25]=R,Z[26]=k;else k=Z[26];let f=k,$;if(Z[27]!==K||Z[28]!==J.input||Z[29]!==J.tool)$=J.tool.renderToolUseMessage(J.input,{theme:K,verbose:!0}),Z[27]=K,Z[28]=J.input,Z[29]=J.tool,Z[30]=$;else $=Z[30];let v;if(Z[31]!==Q)v=Q.endsWith(" (MCP)")?B(O,{dimColor:!0,children:" (MCP)"}):"",Z[31]=Q,Z[32]=v;else v=Z[32];let T;if(Z[33]!==$||Z[34]!==v||Z[35]!==H)T=E(O,{children:[H,"(",$,")",v]}),Z[33]=$,Z[34]=v,Z[35]=H,Z[36]=T;else T=Z[36];let h;if(Z[37]!==J.description)h=QL(J.description,3),Z[37]=J.description,Z[38]=h;else h=Z[38];let u;if(Z[39]!==h)u=B(O,{dimColor:!0,children:h}),Z[39]=h,Z[40]=u;else u=Z[40];let C;if(Z[41]!==T||Z[42]!==u)C=E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[T,u]}),Z[41]=T,Z[42]=u,Z[43]=C;else C=Z[43];let a;if(Z[44]!==J.permissionResult)a=B(SY,{permissionResult:J.permissionResult,toolType:"tool"}),Z[44]=J.permissionResult,Z[45]=a;else a=Z[45];let o;if(Z[46]!==L||Z[47]!==U||Z[48]!==y||Z[49]!==f)o=B(I7,{options:y,onSelect:U,onCancel:L,toolAnalyticsContext:f}),Z[46]=L,Z[47]=U,Z[48]=y,Z[49]=f,Z[50]=o;else o=Z[50];let Y0;if(Z[51]!==a||Z[52]!==o)Y0=E(M,{flexDirection:"column",children:[a,o]}),Z[51]=a,Z[52]=o,Z[53]=Y0;else Y0=Z[53];let d;if(Z[54]!==C||Z[55]!==Y0||Z[56]!==G)d=E(jZ,{title:"Tool use",workerBadge:G,children:[C,Y0]}),Z[54]=C,Z[55]=Y0,Z[56]=G,Z[57]=d;else d=Z[57];return d}var HL=x(v0(),1);import{basename as aC,relative as nC}from"path";HJ();N0();WL();function S5(Y,Z,J,X){return{filePath:Y,edits:[{old_string:Z,new_string:J,replace_all:X}],editMode:"single"}}c();var oC={getConfig:(Y)=>S5(Y.file_path,Y.old_string,Y.new_string,Y.replace_all),applyChanges:(Y,Z)=>{let J=Z[0];if(J)return{...Y,old_string:J.old_string,new_string:J.new_string,replace_all:J.replace_all};return Y}};function qL(Y){let Z=HL.c(51),J=sC,X,z,G,K,Q,V,H,W,D,q,U,N,L,F,P,w,_,A;if(Z[0]!==Y.onDone||Z[1]!==Y.onReject||Z[2]!==Y.toolUseConfirm||Z[3]!==Y.toolUseContext||Z[4]!==Y.workerBadge)({file_path:K,old_string:V,new_string:Q,replace_all:H}=J(Y.toolUseConfirm.input)),G=AX,L=Y.toolUseConfirm,F=Y.toolUseContext,P=Y.onDone,w=Y.onReject,_=Y.workerBadge,A="Edit file",q=nC(mZ(),K),z=O,U="Do you want to make this edit to",N=" ",X=O,W=!0,D=aC(K),Z[0]=Y.onDone,Z[1]=Y.onReject,Z[2]=Y.toolUseConfirm,Z[3]=Y.toolUseContext,Z[4]=Y.workerBadge,Z[5]=X,Z[6]=z,Z[7]=G,Z[8]=K,Z[9]=Q,Z[10]=V,Z[11]=H,Z[12]=W,Z[13]=D,Z[14]=q,Z[15]=U,Z[16]=N,Z[17]=L,Z[18]=F,Z[19]=P,Z[20]=w,Z[21]=_,Z[22]=A;else X=Z[5],z=Z[6],G=Z[7],K=Z[8],Q=Z[9],V=Z[10],H=Z[11],W=Z[12],D=Z[13],q=Z[14],U=Z[15],N=Z[16],L=Z[17],F=Z[18],P=Z[19],w=Z[20],_=Z[21],A=Z[22];let j;if(Z[23]!==X||Z[24]!==W||Z[25]!==D)j=B(X,{bold:W,children:D}),Z[23]=X,Z[24]=W,Z[25]=D,Z[26]=j;else j=Z[26];let y;if(Z[27]!==z||Z[28]!==j||Z[29]!==U||Z[30]!==N)y=E(z,{children:[U,N,j,"?"]}),Z[27]=z,Z[28]=j,Z[29]=U,Z[30]=N,Z[31]=y;else y=Z[31];let b=H||!1,R;if(Z[32]!==Q||Z[33]!==V||Z[34]!==b)R=[{old_string:V,new_string:Q,replace_all:b}],Z[32]=Q,Z[33]=V,Z[34]=b,Z[35]=R;else R=Z[35];let k;if(Z[36]!==K||Z[37]!==R)k=B(O5,{file_path:K,edits:R}),Z[36]=K,Z[37]=R,Z[38]=k;else k=Z[38];let f;if(Z[39]!==G||Z[40]!==K||Z[41]!==q||Z[42]!==y||Z[43]!==k||Z[44]!==L||Z[45]!==F||Z[46]!==P||Z[47]!==w||Z[48]!==_||Z[49]!==A)f=B(G,{toolUseConfirm:L,toolUseContext:F,onDone:P,onReject:w,workerBadge:_,title:A,subtitle:q,question:y,content:k,path:K,completionType:"str_replace_single",parseInput:J,ideDiffSupport:oC}),Z[39]=G,Z[40]=K,Z[41]=q,Z[42]=y,Z[43]=k,Z[44]=L,Z[45]=F,Z[46]=P,Z[47]=w,Z[48]=_,Z[49]=A,Z[50]=f;else f=Z[50];return f}function sC(Y){return $5.inputSchema.parse(Y)}N0();var BL=x(v0(),1);c();function tC(Y){let Z=Y.tool;if("getPath"in Z&&typeof Z.getPath==="function")try{return Z.getPath(Y.input)}catch{return null}return null}function DL(Y){let Z=BL.c(30),{toolUseConfirm:J,onDone:X,onReject:z,verbose:G,toolUseContext:K,workerBadge:Q}=Y,[V]=SZ(),H;if(Z[0]!==J)H=tC(J),Z[0]=J,Z[1]=H;else H=Z[1];let W=H,D;if(Z[2]!==J.input||Z[3]!==J.tool)D=J.tool.userFacingName(J.input),Z[2]=J.input,Z[3]=J.tool,Z[4]=D;else D=Z[4];let q=D,U=J.tool.isReadOnly(J.input),L=`${U?"Read":"Edit"} file`,F=eC;if(!W){let y;if(Z[5]!==X||Z[6]!==z||Z[7]!==J||Z[8]!==K||Z[9]!==G||Z[10]!==Q)y=B(o9,{toolUseConfirm:J,toolUseContext:K,onDone:X,onReject:z,verbose:G,workerBadge:Q}),Z[5]=X,Z[6]=z,Z[7]=J,Z[8]=K,Z[9]=G,Z[10]=Q,Z[11]=y;else y=Z[11];return y}let P;if(Z[12]!==V||Z[13]!==J.input||Z[14]!==J.tool||Z[15]!==G)P=J.tool.renderToolUseMessage(J.input,{theme:V,verbose:G}),Z[12]=V,Z[13]=J.input,Z[14]=J.tool,Z[15]=G,Z[16]=P;else P=Z[16];let w;if(Z[17]!==P||Z[18]!==q)w=B(M,{flexDirection:"column",paddingX:2,paddingY:1,children:E(O,{children:[q,"(",P,")"]})}),Z[17]=P,Z[18]=q,Z[19]=w;else w=Z[19];let _=w,A=U?"read":"write",j;if(Z[20]!==_||Z[21]!==X||Z[22]!==z||Z[23]!==W||Z[24]!==A||Z[25]!==L||Z[26]!==J||Z[27]!==K||Z[28]!==Q)j=B(AX,{toolUseConfirm:J,toolUseContext:K,onDone:X,onReject:z,workerBadge:Q,title:L,content:_,path:W,parseInput:F,operationType:A,completionType:"tool_use_single"}),Z[20]=_,Z[21]=X,Z[22]=z,Z[23]=W,Z[24]=A,Z[25]=L,Z[26]=J,Z[27]=K,Z[28]=Q,Z[29]=j;else j=Z[29];return j}function eC(Y){return Y}N0();FL();HJ();yJ();uW();var EL=x(v0(),1);import{basename as YS,relative as JS}from"path";PY();N0();oz();U5();NL();UL();c();var OL=x(v0(),1);function LL(Y){let Z=OL.c(15),{file_path:J,content:X,fileExists:z,oldContent:G}=Y,{columns:K}=PZ(),Q;Z:{if(!z){Q=null;break Z}let U;if(Z[0]!==X||Z[1]!==J||Z[2]!==G)U=Q9({filePath:J,fileContents:G,edits:[{old_string:G,new_string:X,replace_all:!1}]}),Z[0]=X,Z[1]=J,Z[2]=G,Z[3]=U;else U=Z[3];Q=U}let V=Q,H;if(Z[4]!==X)H=X.split(`
|
|
59
|
+
`)[0]??null,Z[4]=X,Z[5]=H;else H=Z[5];let W=H,D;if(Z[6]!==K||Z[7]!==X||Z[8]!==J||Z[9]!==W||Z[10]!==V||Z[11]!==G)D=V?f5(V.map((U)=>B(x5,{patch:U,dim:!1,filePath:J,firstLine:W,fileContent:G,width:K-2},U.newStart)),ZS):B(T7,{code:X||"(No content)",filePath:J}),Z[6]=K,Z[7]=X,Z[8]=J,Z[9]=W,Z[10]=V,Z[11]=G,Z[12]=D;else D=Z[12];let q;if(Z[13]!==D)q=B(M,{flexDirection:"column",children:B(M,{borderColor:"subtle",borderStyle:"dashed",flexDirection:"column",borderLeft:!1,borderRight:!1,paddingX:1,children:D})}),Z[13]=D,Z[14]=q;else q=Z[14];return q}function ZS(Y){return B(h5,{fromLeftEdge:!0,children:B(O,{dimColor:!0,children:"..."})},`ellipsis-${Y}`)}c();var XS={getConfig:(Y)=>{let Z;try{Z=yK(Y.file_path)}catch(J){if(!l9(J))throw J;Z=""}return S5(Y.file_path,Z,Y.content,!1)},applyChanges:(Y,Z)=>{let J=Z[0];if(J)return{...Y,content:J.new_string};return Y}};function PL(Y){let Z=EL.c(30),J=zS,X;if(Z[0]!==Y.toolUseConfirm.input)X=J(Y.toolUseConfirm.input),Z[0]=Y.toolUseConfirm.input,Z[1]=X;else X=Z[1];let z=X,{file_path:G,content:K}=z,Q;if(Z[2]!==G){try{Q={fileExists:!0,oldContent:yK(G)}}catch(b){let R=b;if(!l9(R))throw R;let k;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))k={fileExists:!1,oldContent:""},Z[4]=k;else k=Z[4];Q=k}Z[2]=G,Z[3]=Q}else Q=Z[3];let{fileExists:V,oldContent:H}=Q,W=V?"overwrite":"create",D=Y.toolUseConfirm,q=Y.toolUseContext,U=Y.onDone,N=Y.onReject,L=Y.workerBadge,F=V?"Overwrite file":"Create file",P;if(Z[5]!==G)P=JS(mZ(),G),Z[5]=G,Z[6]=P;else P=Z[6];let w;if(Z[7]!==G)w=YS(G),Z[7]=G,Z[8]=w;else w=Z[8];let _;if(Z[9]!==w)_=B(O,{bold:!0,children:w}),Z[9]=w,Z[10]=_;else _=Z[10];let A;if(Z[11]!==W||Z[12]!==_)A=E(O,{children:["Do you want to ",W," ",_,"?"]}),Z[11]=W,Z[12]=_,Z[13]=A;else A=Z[13];let j;if(Z[14]!==K||Z[15]!==V||Z[16]!==G||Z[17]!==H)j=B(LL,{file_path:G,content:K,fileExists:V,oldContent:H}),Z[14]=K,Z[15]=V,Z[16]=G,Z[17]=H,Z[18]=j;else j=Z[18];let y;if(Z[19]!==G||Z[20]!==Y.onDone||Z[21]!==Y.onReject||Z[22]!==Y.toolUseConfirm||Z[23]!==Y.toolUseContext||Z[24]!==Y.workerBadge||Z[25]!==A||Z[26]!==j||Z[27]!==F||Z[28]!==P)y=B(AX,{toolUseConfirm:D,toolUseContext:q,onDone:U,onReject:N,workerBadge:L,title:F,subtitle:P,question:A,content:j,path:G,completionType:"write_file_single",parseInput:J,ideDiffSupport:XS}),Z[19]=G,Z[20]=Y.onDone,Z[21]=Y.onReject,Z[22]=Y.toolUseConfirm,Z[23]=Y.toolUseContext,Z[24]=Y.workerBadge,Z[25]=A,Z[26]=j,Z[27]=F,Z[28]=P,Z[29]=y;else y=Z[29];return y}function zS(Y){return g5.inputSchema.parse(Y)}N0();ML();rZ();var RL=x(v0(),1);import{basename as BS}from"path";N0();oz();HJ();U5();rW();GS();KS();NL();UL();c();var QH=x(v0(),1),m5=x(Q0(),1);import{relative as QS}from"path";function AL(Y){let Z=QH.c(5),J;if(Z[0]!==Y.notebook_path)J=w7().readFile(Y.notebook_path,{encoding:"utf-8"}).then(WS).catch(VS),Z[0]=Y.notebook_path,Z[1]=J;else J=Z[1];let X=J,z;if(Z[2]!==X||Z[3]!==Y)z=B(m5.Suspense,{fallback:null,children:B(HS,{...Y,promise:X})}),Z[2]=X,Z[3]=Y,Z[4]=z;else z=Z[4];return z}function VS(){return null}function WS(Y){return wL(Y)}function HS(Y){let Z=QH.c(34),{notebook_path:J,cell_id:X,new_source:z,cell_type:G,edit_mode:K,verbose:Q,width:V,promise:H}=Y,W=K===void 0?"replace":K,D=m5.use(H),q;if(Z[0]!==X||Z[1]!==D){Z:{if(!D||!X){q="";break Z}let R=_L(X);if(R!==void 0){if(D.cells[R]){let $=D.cells[R].source,v;if(Z[3]!==$)v=Array.isArray($)?$.join(""):$,Z[3]=$,Z[4]=v;else v=Z[4];q=v;break Z}q="";break Z}let k;if(Z[5]!==X)k=($)=>$.id===X,Z[5]=X,Z[6]=k;else k=Z[6];let f=D.cells.find(k);if(!f){q="";break Z}q=Array.isArray(f.source)?f.source.join(""):f.source}Z[0]=X,Z[1]=D,Z[2]=q}else q=Z[2];let U=q,N;Z:{if(!D||W==="insert"||W==="delete"){N=null;break Z}let R;if(Z[7]!==z||Z[8]!==J||Z[9]!==U)R=Q9({filePath:J,fileContents:U,edits:[{old_string:U,new_string:z,replace_all:!1}],ignoreWhitespace:!1}),Z[7]=z,Z[8]=J,Z[9]=U,Z[10]=R;else R=Z[10];N=R}let L=N,F;Z:switch(W){case"insert":{F="Insert new cell";break Z}case"delete":{F="Delete cell";break Z}default:F="Replace cell contents"}let P;if(Z[11]!==J||Z[12]!==Q)P=Q?J:QS(mZ(),J),Z[11]=J,Z[12]=Q,Z[13]=P;else P=Z[13];let w;if(Z[14]!==P)w=B(O,{bold:!0,children:P}),Z[14]=P,Z[15]=w;else w=Z[15];let _=G?` (${G})`:"",A;if(Z[16]!==X||Z[17]!==F||Z[18]!==_)A=E(O,{dimColor:!0,children:[F," for cell ",X,_]}),Z[16]=X,Z[17]=F,Z[18]=_,Z[19]=A;else A=Z[19];let j;if(Z[20]!==w||Z[21]!==A)j=E(M,{paddingBottom:1,flexDirection:"column",children:[w,A]}),Z[20]=w,Z[21]=A,Z[22]=j;else j=Z[22];let y;if(Z[23]!==G||Z[24]!==W||Z[25]!==L||Z[26]!==z||Z[27]!==J||Z[28]!==U||Z[29]!==V)y=W==="delete"?B(M,{flexDirection:"column",paddingLeft:2,children:B(T7,{code:U,filePath:J})}):W==="insert"?B(M,{flexDirection:"column",paddingLeft:2,children:B(T7,{code:z,filePath:G==="markdown"?"file.md":J})}):L?f5(L.map((R)=>B(x5,{patch:R,dim:!1,width:V,filePath:J,firstLine:z.split(`
|
|
60
|
+
`)[0]??null,fileContent:U},R.newStart)),qS):B(T7,{code:z,filePath:G==="markdown"?"file.md":J}),Z[23]=G,Z[24]=W,Z[25]=L,Z[26]=z,Z[27]=J,Z[28]=U,Z[29]=V,Z[30]=y;else y=Z[30];let b;if(Z[31]!==j||Z[32]!==y)b=B(M,{flexDirection:"column",children:E(M,{borderStyle:"round",flexDirection:"column",paddingX:1,children:[j,y]})}),Z[31]=j,Z[32]=y,Z[33]=b;else b=Z[33];return b}function qS(Y){return B(h5,{fromLeftEdge:!0,children:B(O,{dimColor:!0,children:"..."})},`ellipsis-${Y}`)}c();function jL(Y){let Z=RL.c(52),J=DS,X,z,G,K,Q,V,H,W,D,q,U,N,L,F,P,w,_;if(Z[0]!==Y.onDone||Z[1]!==Y.onReject||Z[2]!==Y.toolUseConfirm||Z[3]!==Y.toolUseContext||Z[4]!==Y.workerBadge){V=J(Y.toolUseConfirm.input);let{notebook_path:k,edit_mode:f,cell_type:$}=V;Q=k,K=$==="markdown"?"markdown":"python";let v=f==="insert"?"insert this cell into":f==="delete"?"delete this cell from":"make this edit to";G=AX,L=Y.toolUseConfirm,F=Y.toolUseContext,P=Y.onDone,w=Y.onReject,_=Y.workerBadge,D="Edit notebook",z=O,q="Do you want to ",U=v,N=" ",X=O,H=!0,W=BS(Q),Z[0]=Y.onDone,Z[1]=Y.onReject,Z[2]=Y.toolUseConfirm,Z[3]=Y.toolUseContext,Z[4]=Y.workerBadge,Z[5]=X,Z[6]=z,Z[7]=G,Z[8]=K,Z[9]=Q,Z[10]=V,Z[11]=H,Z[12]=W,Z[13]=D,Z[14]=q,Z[15]=U,Z[16]=N,Z[17]=L,Z[18]=F,Z[19]=P,Z[20]=w,Z[21]=_}else X=Z[5],z=Z[6],G=Z[7],K=Z[8],Q=Z[9],V=Z[10],H=Z[11],W=Z[12],D=Z[13],q=Z[14],U=Z[15],N=Z[16],L=Z[17],F=Z[18],P=Z[19],w=Z[20],_=Z[21];let A;if(Z[22]!==X||Z[23]!==H||Z[24]!==W)A=B(X,{bold:H,children:W}),Z[22]=X,Z[23]=H,Z[24]=W,Z[25]=A;else A=Z[25];let j;if(Z[26]!==z||Z[27]!==A||Z[28]!==q||Z[29]!==U||Z[30]!==N)j=E(z,{children:[q,U,N,A,"?"]}),Z[26]=z,Z[27]=A,Z[28]=q,Z[29]=U,Z[30]=N,Z[31]=j;else j=Z[31];let y=Y.verbose?120:80,b;if(Z[32]!==V.cell_id||Z[33]!==V.cell_type||Z[34]!==V.edit_mode||Z[35]!==V.new_source||Z[36]!==V.notebook_path||Z[37]!==Y.verbose||Z[38]!==y)b=B(AL,{notebook_path:V.notebook_path,cell_id:V.cell_id,new_source:V.new_source,cell_type:V.cell_type,edit_mode:V.edit_mode,verbose:Y.verbose,width:y}),Z[32]=V.cell_id,Z[33]=V.cell_type,Z[34]=V.edit_mode,Z[35]=V.new_source,Z[36]=V.notebook_path,Z[37]=Y.verbose,Z[38]=y,Z[39]=b;else b=Z[39];let R;if(Z[40]!==G||Z[41]!==K||Z[42]!==Q||Z[43]!==D||Z[44]!==j||Z[45]!==b||Z[46]!==L||Z[47]!==F||Z[48]!==P||Z[49]!==w||Z[50]!==_)R=B(G,{toolUseConfirm:L,toolUseContext:F,onDone:P,onReject:w,workerBadge:_,title:D,question:j,content:b,path:Q,completionType:"tool_use_single",languageName:K,parseInput:J}),Z[40]=G,Z[41]=K,Z[42]=Q,Z[43]=D,Z[44]=j,Z[45]=b,Z[46]=L,Z[47]=F,Z[48]=P,Z[49]=w,Z[50]=_,Z[51]=R;else R=Z[51];return R}function DS(Y){let Z=c5.inputSchema.safeParse(Y);if(!Z.success)return u0(Error(`Failed to parse notebook edit input: ${Z.error.message}`)),{notebook_path:"",new_source:"",cell_id:""};return Z.data}N0();YY();qJ();DZ();dJ();var OJ=x(Q0(),1);var US=[{pattern:/(?:^|[|;&\n({])\s*(Remove-Item|rm|del|rd|rmdir|ri)\b[^|;&\n}]*-Recurse\b[^|;&\n}]*-Force\b/i,warning:"Note: may recursively force-remove files"},{pattern:/(?:^|[|;&\n({])\s*(Remove-Item|rm|del|rd|rmdir|ri)\b[^|;&\n}]*-Force\b[^|;&\n}]*-Recurse\b/i,warning:"Note: may recursively force-remove files"},{pattern:/(?:^|[|;&\n({])\s*(Remove-Item|rm|del|rd|rmdir|ri)\b[^|;&\n}]*-Recurse\b/i,warning:"Note: may recursively remove files"},{pattern:/(?:^|[|;&\n({])\s*(Remove-Item|rm|del|rd|rmdir|ri)\b[^|;&\n}]*-Force\b/i,warning:"Note: may force-remove files"},{pattern:/\bClear-Content\b[^|;&\n]*\*/i,warning:"Note: may clear content of multiple files"},{pattern:/\bFormat-Volume\b/i,warning:"Note: may format a disk volume"},{pattern:/\bClear-Disk\b/i,warning:"Note: may clear a disk"},{pattern:/\bgit\s+reset\s+--hard\b/i,warning:"Note: may discard uncommitted changes"},{pattern:/\bgit\s+push\b[^|;&\n]*\s+(--force|--force-with-lease|-f)\b/i,warning:"Note: may overwrite remote history"},{pattern:/\bgit\s+clean\b(?![^|;&\n]*(?:-[a-zA-Z]*n|--dry-run))[^|;&\n]*-[a-zA-Z]*f/i,warning:"Note: may permanently delete untracked files"},{pattern:/\bgit\s+stash\s+(drop|clear)\b/i,warning:"Note: may permanently remove stashed changes"},{pattern:/\b(DROP|TRUNCATE)\s+(TABLE|DATABASE|SCHEMA)\b/i,warning:"Note: may drop or truncate database objects"},{pattern:/\bStop-Computer\b/i,warning:"Note: will shut down the computer"},{pattern:/\bRestart-Computer\b/i,warning:"Note: will restart the computer"},{pattern:/\bClear-RecycleBin\b/i,warning:"Note: permanently deletes recycled files"}];function yL(Y){for(let{pattern:Z,warning:J}of US)if(Z.test(Y))return J;return null}$L();ES();d8();OS();NS();async function kL(Y){if(Y.nameType==="application")return null;let Z=Y.name;if(!Z)return null;if(TL.has(Z.toLowerCase()))return null;if(Y.nameType==="cmdlet")return Z;if(Y.elementTypes?.[0]!=="StringConstant")return null;for(let K=0;K<Y.args.length;K++){let Q=Y.elementTypes[K+1];if(Q!=="StringConstant"&&Q!=="Parameter")return null}let J=Z.toLowerCase(),X=await L7(J),z=await K5(Z,Y.args,X),G=0;for(let K of z.split(" ").slice(1)){if(K.includes("\\"))return null;while(G<Y.args.length){let Q=Y.args[G];if(Q===K)break;if(Q.startsWith("-")){if(G++,X?.options&&G<Y.args.length&&Y.args[G]!==K&&!Y.args[G].startsWith("-")){let V=Q.toLowerCase();if(X.options.find((W)=>Array.isArray(W.name)?W.name.includes(V):W.name===V)?.args)G++}continue}return null}if(G>=Y.args.length)return null;G++}if(!z.includes(" ")&&(X?.subcommands?.length||u9[J]))return null;return z}async function vL(Y,Z){let J=await bL(Y);if(!J.valid)return[];let X=IL(J).filter((Q)=>Q.elementType==="CommandAst");if(X.length<=1){let Q=X[0]?await kL(X[0]):null;return Q?[Q]:[]}let z=[];for(let Q of X){if(Z?.(Q))continue;let V=await kL(Q);if(V)z.push(V)}if(z.length===0)return[];let G=new Map;for(let Q of z){let H=Q.split(" ")[0].toLowerCase(),W=G.get(H);if(W)W.push(Q);else G.set(H,[Q])}let K=[];for(let[Q,V]of G){let H=LS(V);if((H===""?0:u5(H," ")+1)<=1){if((await L7(Q))?.subcommands?.length||u9[Q])continue}K.push(H)}return K}function LS(Y){if(Y.length===0)return"";if(Y.length===1)return Y[0];let Z=Y[0].split(" "),J=Z.length;for(let X=1;X<Y.length;X++){let z=Y[X].split(" "),G=0;while(G<J&&G<z.length&&z[G].toLowerCase()===Z[G].toLowerCase())G++;if(J=G,J===0)break}return Z.slice(0,J).join(" ")}LX();G9();cY();V8();_7();FS();A7();function CL({suggestions:Y=[],onRejectFeedbackChange:Z,onAcceptFeedbackChange:J,yesInputMode:X=!1,noInputMode:z=!1,editablePrefix:G,onEditablePrefixChange:K}){let Q=[];if(X)Q.push({type:"input",label:"Yes",value:"yes",placeholder:"and tell Claude what to do next",onChange:J,allowEmptySubmitToCancel:!0});else Q.push({label:"Yes",value:"yes"});if(IJ()&&Y.length>0){let V=Y.some((H)=>H.type==="addDirectories"||H.type==="addRules"&&H.rules?.some((W)=>W.toolName!==VH));if(G!==void 0&&K&&!V)Q.push({type:"input",label:"Yes, and don’t ask again for",value:"yes-prefix-edited",placeholder:"command prefix (e.g., Get-Process:*)",initialValue:G,onChange:K,allowEmptySubmitToCancel:!0,showLabelWithValue:!0,labelValueSeparator:": ",resetCursorOnUpdate:!0});else{let H=P5(Y,VH);if(H)Q.push({label:H,value:"yes-apply-suggestions"})}}if(z)Q.push({type:"input",label:"No",value:"no",placeholder:"and tell Claude what to do differently",onChange:Z,allowEmptySubmitToCancel:!0});else Q.push({label:"No",value:"no"});return Q}c();function fL(Y){let{toolUseConfirm:Z,toolUseContext:J,onDone:X,onReject:z,workerBadge:G}=Y,{command:K,description:Q}=v7.inputSchema.parse(Z.input),[V]=SZ(),H=B5({toolName:Z.tool.name,toolInput:Z.input,toolDescription:Z.description,messages:J.messages}),{yesInputMode:W,noInputMode:D,yesFeedbackModeEntered:q,noFeedbackModeEntered:U,acceptFeedback:N,rejectFeedback:L,setAcceptFeedback:F,setRejectFeedback:P,focusedOption:w,handleInputModeToggle:_,handleReject:A,handleFocus:j}=E5({toolUseConfirm:Z,onDone:X,onReject:z,explainerVisible:H.visible}),y=YJ("tengu_destructive_command_warning",!1)?yL(K):null,[b,R]=OJ.useState(!1),[k,f]=OJ.useState(K.includes(`
|
|
61
|
+
`)?void 0:K),$=OJ.useRef(!1);OJ.useEffect(()=>{let a=!1;return vL(K,(o)=>SL(o,o.text)).then((o)=>{if(a||$.current)return;if(o.length>0)f(`${o[0]}:*`)}).catch(()=>{}),()=>{a=!0}},[K]);let v=OJ.useCallback((a)=>{$.current=!0,f(a)},[]),T=OJ.useMemo(()=>({completion_type:"tool_use_single",language_name:"none"}),[]);ZJ(Z,T);let h=OJ.useMemo(()=>CL({suggestions:Z.permissionResult.behavior==="ask"?Z.permissionResult.suggestions:void 0,onRejectFeedbackChange:P,onAcceptFeedbackChange:F,yesInputMode:W,noInputMode:D,editablePrefix:k,onEditablePrefixChange:v}),[Z,W,D,k,v]),u=OJ.useCallback(()=>{R((a)=>!a)},[]);KZ("permission:toggleDebug",u,{context:"Confirmation"});function C(a){Z0("tengu_permission_request_option_selected",{option_index:{yes:1,"yes-apply-suggestions":2,"yes-prefix-edited":2,no:3}[a],explainer_visible:H.visible});let Y0=gZ(Z.tool.name);if(a==="yes-prefix-edited"){let d=(k??"").trim();if(VY("tool_use_single",Z,"accept"),!d)Z.onAllow(Z.input,[]);else{let p=[{type:"addRules",rules:[{toolName:v7.name,ruleContent:d}],behavior:"allow",destination:"localSettings"}];Z.onAllow(Z.input,p)}X();return}switch(a){case"yes":{let d=N.trim();VY("tool_use_single",Z,"accept"),Z0("tengu_accept_submitted",{toolName:Y0,isMcp:Z.tool.isMcp??!1,has_instructions:!!d,instructions_length:d.length,entered_feedback_mode:q}),Z.onAllow(Z.input,[],d||void 0),X();break}case"yes-apply-suggestions":{VY("tool_use_single",Z,"accept");let d="suggestions"in Z.permissionResult?Z.permissionResult.suggestions||[]:[];Z.onAllow(Z.input,d),X();break}case"no":{let d=L.trim();Z0("tengu_reject_submitted",{toolName:Y0,isMcp:Z.tool.isMcp??!1,has_instructions:!!d,instructions_length:d.length,entered_feedback_mode:U}),A(d||void 0);break}}}return E(jZ,{workerBadge:G,title:"PowerShell command",children:[E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[B(O,{dimColor:H.visible,children:v7.renderToolUseMessage({command:K,description:Q},{theme:V,verbose:!0})}),!H.visible&&B(O,{dimColor:!0,children:Z.description}),B(D5,{visible:H.visible,promise:H.promise})]}),b?E(A0,{children:[B(W5,{permissionResult:Z.permissionResult,toolName:"PowerShell"}),J.options.debug&&B(M,{justifyContent:"flex-end",marginTop:1,children:B(O,{dimColor:!0,children:"Ctrl-D to hide debug info"})})]}):E(A0,{children:[E(M,{flexDirection:"column",children:[B(SY,{permissionResult:Z.permissionResult,toolType:"command"}),y&&B(M,{marginBottom:1,children:B(O,{color:"warning",children:y})}),B(O,{children:"Do you want to proceed?"}),B(qZ,{options:h,inlineDescriptions:!0,onChange:C,onCancel:()=>A(),onFocus:j,onInputModeToggle:_})]}),E(M,{justifyContent:"space-between",marginTop:1,children:[E(O,{dimColor:!0,children:["Esc to cancel",(w==="yes"&&!W||w==="no"&&!D)&&" · Tab to amend",H.enabled&&` · ctrl+e to ${H.visible?"hide":"explain"}`]}),J.options.debug&&B(O,{dimColor:!0,children:"Ctrl+d to show debug info"})]})]})]})}rZ();AZ();N0();dJ();PS();hL();z9();A7();F7();G9();cY();C5();V8();c();var xL=x(v0(),1);function gL(Y){let Z=xL.c(51),{toolUseConfirm:J,onDone:X,onReject:z,workerBadge:G}=Y,K=wS,Q;if(Z[0]!==J.input)Q=K(J.input),Z[0]=J.input,Z[1]=Q;else Q=Z[1];let V=Q,H=J.permissionResult.behavior==="ask"&&J.permissionResult.metadata&&"command"in J.permissionResult.metadata?J.permissionResult.metadata.command:void 0,W;if(Z[2]===Symbol.for("react.memo_cache_sentinel"))W={completion_type:"tool_use_single",language_name:"none"},Z[2]=W;else W=Z[2];ZJ(J,W);let q;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))q=QY(),Z[3]=q;else q=Z[3];let U=q,N;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))N=IJ(),Z[4]=N;else N=Z[4];let L=N,F;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))F=[{label:"Yes",value:"yes",feedbackConfig:{type:"accept"}}],Z[5]=F;else F=Z[5];let P=F,w;if(Z[6]!==V){if(w=[],L){let G0=B(O,{bold:!0,children:V}),J0;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))J0=B(O,{bold:!0,children:U}),Z[8]=J0;else J0=Z[8];let P0;if(Z[9]!==G0)P0={label:E(O,{children:["Yes, and don't ask again for ",G0," in"," ",J0]}),value:"yes-exact"},Z[9]=G0,Z[10]=P0;else P0=Z[10];w.push(P0);let M0=V.indexOf(" ");if(M0>0){let q0=V.substring(0,M0)+":*",X0;if(Z[11]!==q0)X0=B(O,{bold:!0,children:q0}),Z[11]=q0,Z[12]=X0;else X0=Z[12];let H0;if(Z[13]===Symbol.for("react.memo_cache_sentinel"))H0=B(O,{bold:!0,children:U}),Z[13]=H0;else H0=Z[13];let j0;if(Z[14]!==X0)j0={label:E(O,{children:["Yes, and don't ask again for"," ",X0," commands in"," ",H0]}),value:"yes-prefix"},Z[14]=X0,Z[15]=j0;else j0=Z[15];w.push(j0)}}Z[6]=V,Z[7]=w}else w=Z[7];let _;if(Z[16]===Symbol.for("react.memo_cache_sentinel"))_={label:"No",value:"no",feedbackConfig:{type:"reject"}},Z[16]=_;else _=Z[16];let A=_,j;if(Z[17]!==w)j=[...P,...w,A],Z[17]=w,Z[18]=j;else j=Z[18];let y=j,b;if(Z[19]!==J.tool.name)b=gZ(J.tool.name),Z[19]=J.tool.name,Z[20]=b;else b=Z[20];let R=J.tool.isMcp??!1,k;if(Z[21]!==b||Z[22]!==R)k={toolName:b,isMcp:R},Z[21]=b,Z[22]=R,Z[23]=k;else k=Z[23];let f=k,$;if(Z[24]!==X||Z[25]!==z||Z[26]!==V||Z[27]!==J)$=(G0,J0)=>{Z:switch(G0){case"yes":{jY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onAllow(J.input,[],J0),X();break Z}case"yes-exact":{jY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onAllow(J.input,[{type:"addRules",rules:[{toolName:WH,ruleContent:V}],behavior:"allow",destination:"localSettings"}]),X();break Z}case"yes-prefix":{jY({completion_type:"tool_use_single",event:"accept",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}});let P0=V.indexOf(" "),M0=P0>0?V.substring(0,P0):V;J.onAllow(J.input,[{type:"addRules",rules:[{toolName:WH,ruleContent:`${M0}:*`}],behavior:"allow",destination:"localSettings"}]),X();break Z}case"no":jY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onReject(J0),z(),X()}},Z[24]=X,Z[25]=z,Z[26]=V,Z[27]=J,Z[28]=$;else $=Z[28];let v=$,T;if(Z[29]!==X||Z[30]!==z||Z[31]!==J)T=()=>{jY({completion_type:"tool_use_single",event:"reject",metadata:{language_name:"none",message_id:J.assistantMessage.message.id,platform:aZ.platform}}),J.onReject(),z(),X()},Z[29]=X,Z[30]=z,Z[31]=J,Z[32]=T;else T=Z[32];let h=T,u=`Use skill "${V}"?`,C;if(Z[33]===Symbol.for("react.memo_cache_sentinel"))C=B(O,{children:"Claude may use instructions, code, or files from this Skill."}),Z[33]=C;else C=Z[33];let a=H?.description,o;if(Z[34]!==a)o=B(M,{flexDirection:"column",paddingX:2,paddingY:1,children:B(O,{dimColor:!0,children:a})}),Z[34]=a,Z[35]=o;else o=Z[35];let Y0;if(Z[36]!==J.permissionResult)Y0=B(SY,{permissionResult:J.permissionResult,toolType:"tool"}),Z[36]=J.permissionResult,Z[37]=Y0;else Y0=Z[37];let d;if(Z[38]!==h||Z[39]!==v||Z[40]!==y||Z[41]!==f)d=B(I7,{options:y,onSelect:v,onCancel:h,toolAnalyticsContext:f}),Z[38]=h,Z[39]=v,Z[40]=y,Z[41]=f,Z[42]=d;else d=Z[42];let p;if(Z[43]!==Y0||Z[44]!==d)p=E(M,{flexDirection:"column",children:[Y0,d]}),Z[43]=Y0,Z[44]=d,Z[45]=p;else p=Z[45];let K0;if(Z[46]!==u||Z[47]!==o||Z[48]!==p||Z[49]!==G)K0=E(jZ,{title:u,workerBadge:G,children:[C,o,p]}),Z[46]=u,Z[47]=o,Z[48]=p,Z[49]=G,Z[50]=K0;else K0=Z[50];return K0}function wS(Y){let Z=p5.inputSchema.safeParse(Y);if(!Z.success)return u0(Error(`Failed to parse skill tool input: ${Z.error.message}`)),"";return Z.data.skill}N0();mL();A7();LX();G9();cY();V8();_7();c();var cL=x(v0(),1);function _S(Y){try{let Z=fK.inputSchema.safeParse(Y);if(!Z.success)return`input:${Y.toString()}`;let{url:J}=Z.data;return`domain:${new URL(J).hostname}`}catch{return`input:${Y.toString()}`}}function uL(Y){let Z=cL.c(41),{toolUseConfirm:J,onDone:X,onReject:z,verbose:G,workerBadge:K}=Y,[Q]=SZ(),{url:V}=J.input,H;if(Z[0]!==V)H=new URL(V),Z[0]=V,Z[1]=H;else H=Z[1];let W=H.hostname,D;if(Z[2]===Symbol.for("react.memo_cache_sentinel"))D={completion_type:"tool_use_single",language_name:"none"},Z[2]=D;else D=Z[2];ZJ(J,D);let U;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))U=IJ(),Z[3]=U;else U=Z[3];let N=U,L;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))L={label:"Yes",value:"yes"},Z[4]=L;else L=Z[4];let F;if(Z[5]!==W){if(F=[L],N){let u=B(O,{bold:!0,children:W}),C;if(Z[7]!==u)C={label:E(O,{children:["Yes, and don't ask again for ",u]}),value:"yes-dont-ask-again-domain"},Z[7]=u,Z[8]=C;else C=Z[8];F.push(C)}let h;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))h={label:E(O,{children:["No, and tell Claude what to do differently ",B(O,{bold:!0,children:"(esc)"})]}),value:"no"},Z[9]=h;else h=Z[9];F.push(h),Z[5]=W,Z[6]=F}else F=Z[6];let P=F,w;if(Z[10]!==X||Z[11]!==z||Z[12]!==J)w=function(u){Z:switch(u){case"yes":{VY("tool_use_single",J,"accept"),J.onAllow(J.input,[]),X();break Z}case"yes-dont-ask-again-domain":{VY("tool_use_single",J,"accept");let C=_S(J.input),a={toolName:J.tool.name,ruleContent:C};J.onAllow(J.input,[{type:"addRules",rules:[a],behavior:"allow",destination:"localSettings"}]),X();break Z}case"no":VY("tool_use_single",J,"reject"),J.onReject(),z(),X()}},Z[10]=X,Z[11]=z,Z[12]=J,Z[13]=w;else w=Z[13];let _=w,A;if(Z[14]!==Q||Z[15]!==J.input||Z[16]!==G)A=fK.renderToolUseMessage(J.input,{theme:Q,verbose:G}),Z[14]=Q,Z[15]=J.input,Z[16]=G,Z[17]=A;else A=Z[17];let j;if(Z[18]!==A)j=B(O,{children:A}),Z[18]=A,Z[19]=j;else j=Z[19];let y;if(Z[20]!==J.description)y=B(O,{dimColor:!0,children:J.description}),Z[20]=J.description,Z[21]=y;else y=Z[21];let b;if(Z[22]!==j||Z[23]!==y)b=E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[j,y]}),Z[22]=j,Z[23]=y,Z[24]=b;else b=Z[24];let R;if(Z[25]!==J.permissionResult)R=B(SY,{permissionResult:J.permissionResult,toolType:"tool"}),Z[25]=J.permissionResult,Z[26]=R;else R=Z[26];let k;if(Z[27]===Symbol.for("react.memo_cache_sentinel"))k=B(O,{children:"Do you want to allow Claude to fetch this content?"}),Z[27]=k;else k=Z[27];let f;if(Z[28]!==_)f=()=>_("no"),Z[28]=_,Z[29]=f;else f=Z[29];let $;if(Z[30]!==_||Z[31]!==P||Z[32]!==f)$=B(qZ,{options:P,onChange:_,onCancel:f}),Z[30]=_,Z[31]=P,Z[32]=f,Z[33]=$;else $=Z[33];let v;if(Z[34]!==R||Z[35]!==$)v=E(M,{flexDirection:"column",children:[R,k,$]}),Z[34]=R,Z[35]=$,Z[36]=v;else v=Z[36];let T;if(Z[37]!==v||Z[38]!==b||Z[39]!==K)T=E(jZ,{title:"Fetch",workerBadge:K,children:[b,v]}),Z[37]=v,Z[38]=b,Z[39]=K,Z[40]=T;else T=Z[40];return T}c();var TS=null,vS=null,CS=null,SS=null,$S=(kS(),pJ(yS)).MonitorTool,fS=(lL(),pJ(dL)).MonitorPermissionRequest;function hS(Y){switch(Y){case $5:return qL;case g5:return PL;case iJ:return bO;case v7:return fL;case TS:return vS??o9;case fK:return uL;case c5:return jL;case qH:return GL;case HH:return vO;case p5:return gL;case z5:return KN;case CS:return SS??o9;case $S:return fS??o9;case iL:case rL:case aL:return DL;default:return o9}}function xS(Y){let Z=Y.tool.userFacingName(Y.input);if(Y.tool===qH)return"Claude Code needs your approval for the plan";if(Y.tool===HH)return"Claude Code wants to enter plan mode";if(!Z||Z.trim()==="")return"Claude Code needs your attention";return`Claude needs your permission to use ${Z}`}function oL(Y){let Z=nL.c(18),{toolUseConfirm:J,toolUseContext:X,onDone:z,onReject:G,verbose:K,workerBadge:Q,setStickyFooter:V}=Y,H;if(Z[0]!==z||Z[1]!==G||Z[2]!==J)H=()=>{z(),G(),J.onReject()},Z[0]=z,Z[1]=G,Z[2]=J,Z[3]=H;else H=Z[3];let W;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))W={context:"Confirmation"},Z[4]=W;else W=Z[4];KZ("app:interrupt",H,W);let D;if(Z[5]!==J)D=xS(J),Z[5]=J,Z[6]=D;else D=Z[6];VK(D,"permission_prompt");let U;if(Z[7]!==J.tool)U=hS(J.tool),Z[7]=J.tool,Z[8]=U;else U=Z[8];let N=U,L;if(Z[9]!==N||Z[10]!==z||Z[11]!==G||Z[12]!==V||Z[13]!==J||Z[14]!==X||Z[15]!==K||Z[16]!==Q)L=B(N,{toolUseContext:X,toolUseConfirm:J,onDone:z,onReject:G,verbose:K,workerBadge:Q,setStickyFooter:V}),Z[9]=N,Z[10]=z,Z[11]=G,Z[12]=V,Z[13]=J,Z[14]=X,Z[15]=K,Z[16]=Q,Z[17]=L;else L=Z[17];return L}D7();dZ();var _8=x(Q0(),1),E0=x(Q0(),1);import*as z_ from"path";rZ();Q7();jW();bJ();EK();var d5=x(Q0(),1),gS="at_mentioned",mS=EX(()=>WZ.object({method:WZ.literal(gS),params:WZ.object({filePath:WZ.string(),lineStart:WZ.number().optional(),lineEnd:WZ.number().optional()})}));function sL(Y,Z){let J=d5.useRef(void 0);d5.useEffect(()=>{let X=kJ(Y);if(J.current!==X)J.current=X;if(X)X.client.setNotificationHandler(H7(mS()),(z)=>{if(J.current!==X)return;try{let G=z.params,K=G.lineStart!==void 0?G.lineStart+1:void 0,Q=G.lineEnd!==void 0?G.lineEnd+1:void 0;Z({filePath:G.filePath,lineStart:K,lineEnd:Q})}catch(G){u0(G)}})},[Y,Z])}DZ();YZ();HJ();RJ();Zg();TY();PY();PX();N0();YZ();bZ();x8();KF();r5();var CH=x(v0(),1),MX=x(Q0(),1);tL();var eL={[BH]:[[" "," __ "," <({E} )___ "," ( ._> "," `--´ "],[" "," __ "," <({E} )___ "," ( ._> "," `--´~ "],[" "," __ "," <({E} )___ "," ( .__> "," `--´ "]],[DH]:[[" "," ({E}> "," || "," _(__)_ "," ^^^^ "],[" "," ({E}> "," || "," _(__)_ "," ^^^^ "],[" "," ({E}>> "," || "," _(__)_ "," ^^^^ "]],[UH]:[[" "," .----. "," ( {E} {E} ) "," ( ) "," `----´ "],[" "," .------. "," ( {E} {E} ) "," ( ) "," `------´ "],[" "," .--. "," ({E} {E}) "," ( ) "," `--´ "]],[NH]:[[" "," /\\_/\\ "," ( {E} {E}) "," ( ω ) ",' (")_(") '],[" "," /\\_/\\ "," ( {E} {E}) "," ( ω ) ",' (")_(")~ '],[" "," /\\-/\\ "," ( {E} {E}) "," ( ω ) ",' (")_(") ']],[OH]:[[" "," /^\\ /^\\ "," < {E} {E} > "," ( ~~ ) "," `-vvvv-´ "],[" "," /^\\ /^\\ "," < {E} {E} > "," ( ) "," `-vvvv-´ "],[" ~ ~ "," /^\\ /^\\ "," < {E} {E} > "," ( ~~ ) "," `-vvvv-´ "]],[LH]:[[" "," .----. "," ( {E} {E} ) "," (______) "," /\\/\\/\\/\\ "],[" "," .----. "," ( {E} {E} ) "," (______) "," \\/\\/\\/\\/ "],[" o "," .----. "," ( {E} {E} ) "," (______) "," /\\/\\/\\/\\ "]],[FH]:[[" "," /\\ /\\ "," (({E})({E})) "," ( >< ) "," `----´ "],[" "," /\\ /\\ "," (({E})({E})) "," ( >< ) "," .----. "],[" "," /\\ /\\ "," (({E})(-)) "," ( >< ) "," `----´ "]],[EH]:[[" "," .---. "," ({E}>{E}) "," /( )\\ "," `---´ "],[" "," .---. "," ({E}>{E}) "," |( )| "," `---´ "],[" .---. "," ({E}>{E}) "," /( )\\ "," `---´ "," ~ ~ "]],[PH]:[[" "," _,--._ "," ( {E} {E} ) "," /[______]\\ "," `` `` "],[" "," _,--._ "," ( {E} {E} ) "," /[______]\\ "," `` `` "],[" "," _,--._ "," ( {E} {E} ) "," /[======]\\ "," `` `` "]],[wH]:[[" "," {E} .--. "," \\ ( @ ) "," \\_`--´ "," ~~~~~~~ "],[" "," {E} .--. "," | ( @ ) "," \\_`--´ "," ~~~~~~~ "],[" "," {E} .--. "," \\ ( @ ) "," \\_`--´ "," ~~~~~~ "]],[_H]:[[" "," .----. "," / {E} {E} \\ "," | | "," ~`~``~`~ "],[" "," .----. "," / {E} {E} \\ "," | | "," `~`~~`~` "],[" ~ ~ "," .----. "," / {E} {E} \\ "," | | "," ~~`~~`~~ "]],[AH]:[[" ","}~(______)~{","}~({E} .. {E})~{"," ( .--. ) "," (_/ \\_) "],[" ","~}(______){~","~}({E} .. {E}){~"," ( .--. ) "," (_/ \\_) "],[" ","}~(______)~{","}~({E} .. {E})~{"," ( -- ) "," ~_/ \\_~ "]],[MH]:[[" "," n______n "," ( {E} {E} ) "," ( oo ) "," `------´ "],[" "," n______n "," ( {E} {E} ) "," ( Oo ) "," `------´ "],[" ~ ~ "," u______n "," ( {E} {E} ) "," ( oo ) "," `------´ "]],[RH]:[[" "," n ____ n "," | |{E} {E}| | "," |_| |_| "," | | "],[" "," ____ "," n |{E} {E}| n "," |_| |_| "," | | "],[" n n "," | ____ | "," | |{E} {E}| | "," |_| |_| "," | | "]],[jH]:[[" "," .[||]. "," [ {E} {E} ] "," [ ==== ] "," `------´ "],[" "," .[||]. "," [ {E} {E} ] "," [ -==- ] "," `------´ "],[" * "," .[||]. "," [ {E} {E} ] "," [ ==== ] "," `------´ "]],[yH]:[[" "," (\\__/) "," ( {E} {E} ) "," =( .. )= ",' (")__(") '],[" "," (|__/) "," ( {E} {E} ) "," =( .. )= ",' (")__(") '],[" "," (\\__/) "," ( {E} {E} ) "," =( . . )= ",' (")__(") ']],[kH]:[[" "," .-o-OO-o-. ","(__________)"," |{E} {E}| "," |____| "],[" "," .-O-oo-O-. ","(__________)"," |{E} {E}| "," |____| "],[" . o . "," .-o-OO-o-. ","(__________)"," |{E} {E}| "," |____| "]],[bH]:[[" "," /\\ /\\ "," ( {E} {E} ) "," ( .. ) "," `------´ "],[" "," /\\ /| "," ( {E} {E} ) "," ( .. ) "," `------´ "],[" "," /\\ /\\ "," ( {E} {E} ) "," ( .. ) "," `------´~ "]]},cS={none:"",crown:" \\^^^/ ",tophat:" [___] ",propeller:" -+- ",halo:" ( ) ",wizard:" /^\\ ",beanie:" (___) ",tinyduck:" ,> "};function ZF(Y,Z=0){let J=eL[Y.species],z=[...J[Z%J.length].map((G)=>G.replaceAll("{E}",Y.eye))];if(Y.hat!=="none"&&!z[0].trim())z[0]=cS[Y.hat];if(!z[0].trim()&&J.every((G)=>!G[0].trim()))z.shift();return z}function YF(Y){return eL[Y].length}function JF(Y){let Z=Y.eye;switch(Y.species){case BH:case DH:return`(${Z}>`;case UH:return`(${Z}${Z})`;case NH:return`=${Z}ω${Z}=`;case OH:return`<${Z}~${Z}>`;case LH:return`~(${Z}${Z})~`;case FH:return`(${Z})(${Z})`;case EH:return`(${Z}>)`;case PH:return`[${Z}_${Z}]`;case wH:return`${Z}(@)`;case _H:return`/${Z}${Z}\\`;case AH:return`}${Z}.${Z}{`;case MH:return`(${Z}oo${Z})`;case RH:return`|${Z} ${Z}|`;case jH:return`[${Z}${Z}]`;case yH:return`(${Z}..${Z})`;case kH:return`|${Z} ${Z}|`;case bH:return`(${Z}.${Z})`}}tL();c();var l5=500,IH=20,QF=6,uS=2500,XF=[0,0,0,0,1,0,0,0,-1,0,0,2,0,0,0],aJ=R0.heart,zF=[` ${aJ} ${aJ} `,` ${aJ} ${aJ} ${aJ} `,` ${aJ} ${aJ} ${aJ} `,`${aJ} ${aJ} ${aJ} `,"· · · "];function pS(Y,Z){let J=Y.split(" "),X=[],z="";for(let G of J)if(z.length+G.length+1>Z&&z)X.push(z),z=G;else z=z?`${z} ${G}`:G;if(z)X.push(z);return X}function VF(Y){let Z=CH.c(31),{text:J,color:X,fading:z,tail:G}=Y,K,Q,V,H,W,D,q,U;if(Z[0]!==X||Z[1]!==z||Z[2]!==J){let w=pS(J,30);Q=z?"inactive":X,K=M,V="column",H="round",W=Q,D=1,q=34;let _;if(Z[11]!==z)_=(A,j)=>B(O,{italic:!0,dimColor:!z,color:z?"inactive":void 0,children:A},j),Z[11]=z,Z[12]=_;else _=Z[12];U=w.map(_),Z[0]=X,Z[1]=z,Z[2]=J,Z[3]=K,Z[4]=Q,Z[5]=V,Z[6]=H,Z[7]=W,Z[8]=D,Z[9]=q,Z[10]=U}else K=Z[3],Q=Z[4],V=Z[5],H=Z[6],W=Z[7],D=Z[8],q=Z[9],U=Z[10];let N;if(Z[13]!==K||Z[14]!==V||Z[15]!==H||Z[16]!==W||Z[17]!==D||Z[18]!==q||Z[19]!==U)N=B(K,{flexDirection:V,borderStyle:H,borderColor:W,paddingX:D,width:q,children:U}),Z[13]=K,Z[14]=V,Z[15]=H,Z[16]=W,Z[17]=D,Z[18]=q,Z[19]=U,Z[20]=N;else N=Z[20];let L=N;if(G==="right"){let w;if(Z[21]!==Q)w=B(O,{color:Q,children:"─"}),Z[21]=Q,Z[22]=w;else w=Z[22];let _;if(Z[23]!==L||Z[24]!==w)_=E(M,{flexDirection:"row",alignItems:"center",children:[L,w]}),Z[23]=L,Z[24]=w,Z[25]=_;else _=Z[25];return _}let F;if(Z[26]!==Q)F=E(M,{flexDirection:"column",alignItems:"flex-end",paddingRight:6,children:[B(O,{color:Q,children:"╲ "}),B(O,{color:Q,children:"╲"})]}),Z[26]=Q,Z[27]=F;else F=Z[27];let P;if(Z[28]!==L||Z[29]!==F)P=E(M,{flexDirection:"column",alignItems:"flex-end",marginRight:1,children:[L,F]}),Z[28]=L,Z[29]=F,Z[30]=P;else P=Z[30];return P}var i5=100,dS=12,lS=2,rS=2,iS=36,GF=24;function WF(Y){return Math.max(dS,Y+lS)}function HF(Y,Z){if(!DY())return 0;let J=C7();if(!J||l0().companionMuted)return 0;if(Y<i5)return 0;let X=IZ(J.name),z=Z&&!TH()?iS:0;return WF(X)+rS+z}function SH(){let Y=t((k)=>k.companionReaction),Z=t((k)=>k.companionPetAt),J=t((k)=>k.footerSelection==="companion"),X=n0(),{columns:z}=PZ(),[G,K]=MX.useState(0),Q=MX.useRef(0),[{petStartTick:V,forPetAt:H},W]=MX.useState({petStartTick:0,forPetAt:Z});if(Z!==H)W({petStartTick:G,forPetAt:Z});if(MX.useEffect(()=>{let k=setInterval((f)=>f(($)=>$+1),l5,K);return()=>clearInterval(k)},[]),MX.useEffect(()=>{if(!Y)return;Q.current=G;let k=setTimeout((f)=>f(($)=>$.companionReaction===void 0?$:{...$,companionReaction:void 0}),IH*l5,X);return()=>clearTimeout(k)},[Y,X]),!DY())return null;let D=C7();if(!D||l0().companionMuted)return null;let q=vH[D.rarity],U=WF(IZ(D.name)),N=Y?G-Q.current:0,L=Y!==void 0&&N>=IH-QF,F=Z?G-V:1/0,P=F*l5<uS;if(z<i5){let k=Y&&Y.length>GF?Y.slice(0,GF-1)+"…":Y,f=k?`"${k}"`:J?` ${D.name} `:D.name;return B(M,{paddingX:1,alignSelf:"flex-end",children:E(O,{children:[P&&E(O,{color:"autoAccept",children:[R0.heart," "]}),B(O,{bold:!0,color:q,children:JF(D)})," ",B(O,{italic:!0,dimColor:!J&&!Y,bold:J,inverse:J&&!Y,color:Y?L?"inactive":q:J?q:void 0,children:f})]})})}let w=YF(D.species),_=P?zF[F%zF.length]:null,A,j=!1;if(Y||P)A=G%w;else{let k=XF[G%XF.length];if(k===-1)A=0,j=!0;else A=k%w}let y=ZF(D,A).map((k)=>j?k.replaceAll(D.eye,"-"):k),b=_?[_,...y]:y,R=E(M,{flexDirection:"column",flexShrink:0,alignItems:"center",width:U,children:[b.map((k,f)=>B(O,{color:f===0&&_?"autoAccept":q,children:k},f)),B(O,{italic:!0,bold:J,dimColor:!J,color:J?q:void 0,inverse:J,children:J?` ${D.name} `:D.name})]});if(!Y)return B(M,{paddingX:1,children:R});if(TH())return B(M,{paddingX:1,children:R});return E(M,{flexDirection:"row",alignItems:"flex-end",paddingX:1,flexShrink:0,children:[B(VF,{text:Y,color:q,fading:L,tail:"right"}),R]})}function qF(){let Y=CH.c(8),Z=t(oS),J;if(Y[0]!==Z)J={tick:0,forReaction:Z},Y[0]=Z,Y[1]=J;else J=Y[1];let[X,z]=MX.useState(J),{tick:G,forReaction:K}=X;if(Z!==K)z({tick:0,forReaction:Z});let Q,V;if(Y[2]!==Z)Q=()=>{if(!Z)return;let q=setInterval(aS,l5,z);return()=>clearInterval(q)},V=[Z],Y[2]=Z,Y[3]=Q,Y[4]=V;else Q=Y[3],V=Y[4];if(MX.useEffect(Q,V),!DY()||!Z)return null;let H=C7();if(!H||l0().companionMuted)return null;let W=G>=IH-QF,D;if(Y[5]!==Z||Y[6]!==W)D=B(VF,{text:Z,color:vH[H.rarity],fading:W,tail:"down"}),Y[5]=Z,Y[6]=W,Y[7]=D;else D=Y[7];return D}function aS(Y){return Y(nS)}function nS(Y){return{...Y,tick:Y.tick+1}}function oS(Y){return Y.companionReaction}r5();dZ();N0();bZ();BF();r5();c();var $H=x(v0(),1),DF=x(Q0(),1);function sS(){let Y=new Date;return Y.getFullYear()===2026&&Y.getMonth()===3&&Y.getDate()<=7}function tS(Y){let Z=$H.c(2),{text:J}=Y,X;if(Z[0]!==J)X=B(A0,{children:[...J].map(eS)}),Z[0]=J,Z[1]=X;else X=Z[1];return X}function eS(Y,Z){return B(O,{color:q8(Z),children:Y},Z)}function UF(){let Y=$H.c(4),{addNotification:Z,removeNotification:J}=JZ(),X,z;if(Y[0]!==Z||Y[1]!==J)X=()=>{if(!DY())return;if(l0().companion||!sS())return;return Z({key:"buddy-teaser",jsx:B(tS,{text:"/buddy"}),priority:"immediate",timeoutMs:15000}),()=>J("buddy-teaser")},z=[Z,J],Y[0]=Z,Y[1]=J,Y[2]=X,Y[3]=z;else X=Y[2],z=Y[3];DF.useEffect(X,z)}function NF(Y){if(!DY())return[];let Z=[],J=/\/buddy\b/g,X;while((X=J.exec(Y))!==null)Z.push({start:X.index,end:X.index+X[0].length});return Z}Hg();Qg();Xg();s8();DX();Ww();B9();mK();dZ();NK();var qY=x(Q0(),1);dZ();DZ();YZ();CF();var $F=x(v0(),1),f7=x(Q0(),1);var OF=x(Q0(),1);function S7(Y){return OF.useMemo(()=>{let Z=Y?.find((z)=>z.name==="ide");if(!Z)return{status:null,ideName:null};let J=Z.config,X=J.type==="sse-ide"||J.type==="ws-ide"?J.ideName:null;if(Z.type==="connected")return{status:"connected",ideName:X};if(Z.type==="pending")return{status:"pending",ideName:X};return{status:"disconnected",ideName:X}},[Y])}xK();YZ();var Y$=x(Q0(),1);qJ();s9();N0();TF();MF();s9();m9();rJ();vY();Q$();bJ();BY();xH();NK();var LF=x(v0(),1);import{basename as J$}from"path";N0();c();function FF(Y){let Z=LF.c(7),{ideSelection:J,mcpClients:X}=Y,{status:z}=S7(X),G=z==="connected"&&(J?.filePath||J?.text&&J.lineCount>0);if(z===null||!G||!J)return null;if(J.text&&J.lineCount>0){let K=J.lineCount===1?"line":"lines",Q;if(Z[0]!==J.lineCount||Z[1]!==K)Q=E(O,{color:"ide",wrap:"truncate",children:["⧉ ",J.lineCount," ",K," selected"]},"selection-indicator"),Z[0]=J.lineCount,Z[1]=K,Z[2]=Q;else Q=Z[2];return Q}if(J.filePath){let K;if(Z[3]!==J.filePath)K=J$(J.filePath),Z[3]=J.filePath,Z[4]=K;else K=Z[4];let Q;if(Z[5]!==K)Q=E(O,{color:"ide",wrap:"truncate",children:["⧉ In ",K]},"selection-indicator"),Z[5]=K,Z[6]=Q;else Q=Z[6];return Q}}K$();N0();qJ();MF();var RF=x(v0(),1),G$=x(Q0(),1);X$();var EF=x(Q0(),1);function PF(){return EF.useSyncExternalStore(fH.subscribe,fH.getState)}z$();c();function jF(Y){let Z=RF.c(13),{tokenUsage:J,model:X}=Y,z;if(Z[0]!==X||Z[1]!==J)z=a5(J,X),Z[0]=X,Z[1]=J,Z[2]=z;else z=Z[2];let{percentLeft:G,isAboveWarningThreshold:K,isAboveErrorThreshold:Q}=z,V=PF();if(!K||V)return null;let H;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))H=AF(),Z[3]=H;else H=Z[3];let W=H,D;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))D=wF("warning"),Z[4]=D;else D=Z[4];let q=D,U=G,N=!1,L=!1;if(N||L){let w=_F(X),_;if(Z[5]!==w||Z[6]!==J)_=Math.round((w-J)/w*100),Z[5]=w,Z[6]=J,Z[7]=_;else _=Z[7];U=Math.max(0,_)}let F=N?`${100-U}% context used`:`${U}% until auto-compact`,P;if(Z[9]!==F||Z[10]!==Q||Z[11]!==G)P=B(M,{flexDirection:"row",children:W?B(O,{dimColor:!0,wrap:"truncate",children:q?`${F} · ${q}`:F}):B(O,{color:Q?"error":"warning",wrap:"truncate",children:q?`Context low (${G}% remaining) · ${q}`:`Context low (${G}% remaining) · Run /compact to compact & continue`})}),Z[9]=F,Z[10]=Q,Z[11]=G,Z[12]=P;else P=Z[12];return P}N0();J7();u8();c();var yF=x(v0(),1),$7=x(Q0(),1);function kF(){let Y=yF.c(6),[Z,J]=$7.useState(0),X=$7.useRef(null),z=MY("app:toggleTranscript","Global","ctrl+o"),G,K;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))G=()=>{if(!eZ.isSandboxingEnabled())return;let H=eZ.getSandboxViolationStore(),W=H.getTotalCount(),D=H.subscribe(()=>{let q=H.getTotalCount(),U=q-W;if(U>0){if(J(U),W=q,X.current)clearTimeout(X.current);X.current=setTimeout(J,5000,0)}});return()=>{if(D(),X.current)clearTimeout(X.current)}},K=[],Y[0]=G,Y[1]=K;else G=Y[0],K=Y[1];if($7.useEffect(G,K),!eZ.isSandboxingEnabled()||Z===0)return null;let Q=Z===1?"operation":"operations",V;if(Y[2]!==z||Y[3]!==Z||Y[4]!==Q)V=B(M,{paddingX:0,paddingY:0,children:E(O,{color:"inactive",wrap:"truncate",children:["⧈ Sandbox blocked ",Z," ",Q," ·"," ",z," for details · /sandbox to disable"]})}),Y[2]=z,Y[3]=Z,Y[4]=Q,Y[5]=V;else V=Y[5];return V}c();var s5=5000;function t5(Y){let Z=$F.c(34),{apiKeyStatus:J,autoUpdaterResult:X,debug:z,isAutoUpdating:G,verbose:K,messages:Q,onAutoUpdaterResult:V,onChangeIsUpdating:H,ideSelection:W,mcpClients:D,isInputWrapped:q,isNarrow:U}=Y,N=q===void 0?!1:q,L=U===void 0?!1:U,F;if(Z[0]!==Q){let I0=gK(Q);F=SF(I0),Z[0]=Q,Z[1]=F}else F=Z[1];let P=F,w=RX(),_;if(Z[2]!==w||Z[3]!==P)_=a5(P,w),Z[2]=w,Z[3]=P,Z[4]=_;else _=Z[4];let A=_.isAboveWarningThreshold,{status:j}=S7(D),y=t(W$),{addNotification:b,removeNotification:R}=JZ(),k=o5(),f,$;if(Z[5]!==b)f=()=>{return hH((I0,q0)=>{b({key:"env-hook",text:I0,color:q0?"error":void 0,priority:q0?"medium":"low",timeoutMs:q0?8000:5000})}),V$},$=[b],Z[5]=b,Z[6]=f,Z[7]=$;else f=Z[6],$=Z[7];f7.useEffect(f,$);let T=!(j==="connected"&&(W?.filePath||W?.text&&W.lineCount>0))||G||X?.status!=="success",h=k.isUsingOverage,u;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))u=n5(),Z[8]=u;else u=Z[8];let C=u,a=C==="team"||C==="enterprise",o;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))o=e8(),Z[9]=o;else o=Z[9];let Y0=o,d=N&&!A&&J!=="invalid"&&J!=="missing"&&Y0!==void 0,p,K0;if(Z[10]!==b||Z[11]!==R||Z[12]!==d)K0=()=>{if(d&&Y0)Z0("tengu_external_editor_hint_shown",{}),b({key:"external-editor-hint",jsx:B(O,{dimColor:!0,children:B(DJ,{action:"chat:externalEditor",context:"Chat",fallback:"ctrl+g",description:`edit in ${t8(Y0)}`})}),priority:"immediate",timeoutMs:5000});else R("external-editor-hint")},p=[d,Y0,b,R],Z[10]=b,Z[11]=R,Z[12]=d,Z[13]=p,Z[14]=K0;else p=Z[13],K0=Z[14];f7.useEffect(K0,p);let G0=L?"flex-start":"flex-end",J0=h??!1,P0;if(Z[15]!==J||Z[16]!==X||Z[17]!==z||Z[18]!==W||Z[19]!==G||Z[20]!==A||Z[21]!==w||Z[22]!==D||Z[23]!==y||Z[24]!==V||Z[25]!==H||Z[26]!==T||Z[27]!==J0||Z[28]!==P||Z[29]!==K)P0=B(H$,{ideSelection:W,mcpClients:D,notifications:y,isInOverageMode:J0,isTeamOrEnterprise:a,apiKeyStatus:J,debug:z,verbose:K,tokenUsage:P,mainLoopModel:w,shouldShowAutoUpdater:T,autoUpdaterResult:X,isAutoUpdating:G,isShowingCompactMessage:A,onAutoUpdaterResult:V,onChangeIsUpdating:H}),Z[15]=J,Z[16]=X,Z[17]=z,Z[18]=W,Z[19]=G,Z[20]=A,Z[21]=w,Z[22]=D,Z[23]=y,Z[24]=V,Z[25]=H,Z[26]=T,Z[27]=J0,Z[28]=P,Z[29]=K,Z[30]=P0;else P0=Z[30];let M0;if(Z[31]!==G0||Z[32]!==P0)M0=B(vF,{fallback:B(M,{children:B(O,{color:"warning",wrap:"truncate",children:"⚠ status unavailable"})}),children:B(M,{flexDirection:"column",alignItems:G0,flexShrink:0,overflowX:"hidden",children:P0})}),Z[31]=G0,Z[32]=P0,Z[33]=M0;else M0=Z[33];return M0}function V$(){return hH(null)}function W$(Y){return Y.notifications}function H$({ideSelection:Y,mcpClients:Z,notifications:J,isInOverageMode:X,isTeamOrEnterprise:z,apiKeyStatus:G,debug:K,verbose:Q,tokenUsage:V,mainLoopModel:H,shouldShowAutoUpdater:W,autoUpdaterResult:D,isAutoUpdating:q,isShowingCompactMessage:U,onAutoUpdaterResult:N,onChangeIsUpdating:L}){let[F,P]=f7.useState(null);f7.useEffect(()=>{if(!bF())return;let y=setInterval((b)=>{let R=IF(),k=R>=1e4?h7(R):null;b((f)=>k===f?f:k)},1000,P);return()=>clearInterval(y)},[]);let w="idle",_=!1,A=null,j=!1;return E(A0,{children:[B(FF,{ideSelection:Y,mcpClients:Z}),J.current&&("jsx"in J.current?B(O,{wrap:"truncate",children:J.current.jsx},J.current.key):B(O,{color:J.current.color,dimColor:!J.current.color,wrap:"truncate",children:J.current.text})),X&&!z&&B(M,{children:B(O,{dimColor:!0,wrap:"truncate",children:"Now using extra usage"})}),F&&E(M,{children:[E(O,{color:"warning",wrap:"truncate",children:["apiKeyHelper is taking a while"," "]}),E(O,{dimColor:!0,wrap:"truncate",children:["(",F,")"]})]}),(G==="invalid"||G==="missing")&&B(M,{children:B(O,{color:"error",wrap:"truncate",children:nZ(process.env.CLAUDE_CODE_REMOTE)?"Authentication error · Try again":"Not logged in · Run /login"})}),K&&B(M,{children:B(O,{color:"warning",wrap:"truncate",children:"Debug mode"})}),G!=="invalid"&&G!=="missing"&&Q&&B(M,{children:E(O,{dimColor:!0,wrap:"truncate",children:[V," tokens"]})}),!j&&B(jF,{tokenUsage:V,model:H}),null,B(kF,{})]})}B9();N0();c();var fF=10,t9=null,e5=0,gH=void 0;async function q$(Y,Z){let J=Math.ceil(Y/fF)*fF;if(t9&&e5>=J&&gH===Z)return t9;if(t9)await t9;e5=J,gH=Z,t9=(async()=>{let X=[],z=0;for await(let G of ZV()){if(Z){if(LJ(G.display)!==Z)continue}if(X.push(G),z++,z>=e5)break}return X})();try{return await t9}finally{t9=null,e5=0,gH=void 0}}function hF(Y,Z,J,X,z){let[G,K]=qY.useState(0),[Q,V]=qY.useState(void 0),H=qY.useRef(!1),{addNotification:W,removeNotification:D}=JZ(),q=qY.useRef([]),U=qY.useRef(void 0),N=qY.useRef(0),L=qY.useRef(void 0),F=qY.useRef(Z),P=qY.useRef(J),w=qY.useRef(z);F.current=Z,P.current=J,w.current=z;let _=qY.useCallback((f,$,v,T=!1)=>{Y(f,$,v),X?.(T?0:f.length)},[Y,X]),A=qY.useCallback((f,$=!1)=>{if(!f||!f.display)return;let v=LJ(f.display),T=v==="bash"?f.display.slice(1):f.display;_(T,v,f.pastedContents??{},$)},[_]),j=qY.useCallback(()=>{W({key:"search-history-hint",jsx:B(O,{dimColor:!0,children:B(DJ,{action:"history:search",context:"Global",fallback:"ctrl+r",description:"search history"})}),priority:"immediate",timeoutMs:s5})},[W]),y=qY.useCallback(()=>{let f=N.current;N.current++;let $=F.current,v=P.current,T=w.current;if(f===0){L.current=T==="bash"?T:void 0;let u=$.trim()!=="";V(u?{display:$,pastedContents:v,mode:T}:void 0)}let h=L.current;(async()=>{let u=f+1;if(U.current!==h)q.current=[],U.current=h,N.current=0;if(q.current.length<u){let a=await q$(u,h);if(a.length>q.current.length)q.current=a}if(f>=q.current.length){N.current--;return}let C=f+1;if(K(C),A(q.current[f],!0),C>=2&&!H.current)H.current=!0,j()})()},[A,j]),b=qY.useCallback(()=>{let f=N.current;if(f>1)N.current--,K(f-1),A(q.current[f-2]);else if(f===1)if(N.current=0,K(0),Q){let $=Q.mode;if($)_(Q.display,$,Q.pastedContents??{});else A(Q)}else _("",L.current??"prompt",{});return f<=0},[Q,A,_]),R=qY.useCallback(()=>{V(void 0),K(0),N.current=0,L.current=void 0,D("search-history-hint"),q.current=[],U.current=void 0},[D]),k=qY.useCallback(()=>{D("search-history-hint")},[D]);return{historyIndex:G,setHistoryIndex:K,onHistoryUp:y,onHistoryDown:b,resetHistory:R,dismissSearchHint:k}}Cw();mK();B9();cH();N0();YY();var fZ=x(Q0(),1);function xF(Y,Z,J,X,z,G,K,Q,V,H,W){let[D,q]=fZ.useState(""),[U,N]=fZ.useState(!1),[L,F]=fZ.useState(""),[P,w]=fZ.useState(0),[_,A]=fZ.useState("prompt"),[j,y]=fZ.useState({}),[b,R]=fZ.useState(void 0),k=fZ.useRef(void 0),f=fZ.useRef(new Set),$=fZ.useRef(null),v=fZ.useCallback(()=>{if(k.current)k.current.return(void 0),k.current=void 0},[]),T=fZ.useCallback(()=>{V(!1),q(""),N(!1),F(""),w(0),A("prompt"),y({}),R(void 0),v(),f.current.clear()},[V,v]),h=fZ.useCallback(async(G0,J0)=>{if(!Q)return;if(D.length===0){v(),f.current.clear(),R(void 0),N(!1),J(L),X(P),G(_),H(j);return}if(!G0)v(),k.current=mH(),f.current.clear();if(!k.current)return;while(!0){if(J0?.aborted)return;let P0=await k.current.next();if(P0.done){N(!0);return}let M0=P0.value.display,I0=M0.lastIndexOf(D);if(I0!==-1&&!f.current.has(M0)){f.current.add(M0),R(P0.value),N(!1);let q0=LJ(M0);G(q0),J(M0),H(P0.value.pastedContents);let H0=TJ(M0).lastIndexOf(D);X(H0!==-1?H0:I0);return}}},[Q,D,v,J,X,G,H,L,P,_,j]),u=fZ.useCallback(()=>{V(!0),F(Z),w(z),A(K),y(W),k.current=mH(),f.current.clear()},[V,Z,z,K,W]),C=fZ.useCallback(()=>{h(!0)},[h]),a=fZ.useCallback(()=>{if(b){let G0=LJ(b.display),J0=TJ(b.display);J(J0),G(G0),H(b.pastedContents)}else H(j);T()},[b,J,G,H,j,T]),o=fZ.useCallback(()=>{J(L),X(P),H(j),T()},[J,X,H,L,P,j,T]),Y0=fZ.useCallback(()=>{if(D.length===0)Y({display:L,pastedContents:j});else if(b){let G0=LJ(b.display),J0=TJ(b.display);G(G0),Y({display:J0,pastedContents:b.pastedContents})}T()},[D,b,Y,G,L,j,T]);KZ("history:search",u,{context:"Global",isActive:!1});let d=fZ.useMemo(()=>({"historySearch:next":C,"historySearch:accept":a,"historySearch:cancel":o,"historySearch:execute":Y0}),[C,a,o,Y0]);uZ(d,{context:"HistorySearch",isActive:Q});let p=(G0)=>{if(!Q)return;if(G0.key==="backspace"&&D==="")G0.preventDefault(),o()};lZ((G0,J0,P0)=>{p(new x7(P0.keypress))},{isActive:Q});let K0=fZ.useRef(h);return K0.current=h,fZ.useEffect(()=>{$.current?.abort();let G0=new AbortController;return $.current=G0,K0.current(!1,G0.signal),()=>{G0.abort()}},[D]),{historyQuery:D,setHistoryQuery:q,historyMatch:b,historyFailedMatch:U,handleKeyDown:p}}var jX=x(Q0(),1);function gF({maxBufferSize:Y,debounceMs:Z}){let[J,X]=jX.useState([]),[z,G]=jX.useState(-1),K=jX.useRef(0),Q=jX.useRef(null),V=jX.useCallback((q,U,N={})=>{let L=Date.now();if(Q.current)clearTimeout(Q.current),Q.current=null;if(L-K.current<Z){Q.current=setTimeout(V,Z,q,U,N);return}K.current=L,X((F)=>{let P=z>=0?F.slice(0,z+1):F,w=P[P.length-1];if(w&&w.text===q)return P;let _=[...P,{text:q,cursorOffset:U,pastedContents:N,timestamp:L}];if(_.length>Y)return _.slice(-Y);return _}),G((F)=>{let P=F>=0?F+1:J.length;return Math.min(P,Y-1)})},[Z,Y,z,J.length]),H=jX.useCallback(()=>{if(z<0||J.length===0)return;let q=Math.max(0,z-1),U=J[q];if(U)return G(q),U;return},[J,z]),W=jX.useCallback(()=>{if(X([]),G(-1),K.current=0,Q.current)clearTimeout(Q.current),Q.current=null},[K,Q]),D=z>0&&J.length>1;return{pushToBuffer:V,undo:H,canUndo:D,clearBuffer:W}}xK();B$();DZ();uH();YZ();var B8=x(Q0(),1);function mF(Y,Z,J){if(J||!Y)return null;if(!Y.toLowerCase().startsWith(Z.toLowerCase()))return null;return Y.slice(Z.length)}function cF({inputValue:Y,isAssistantResponding:Z}){let J=t((A)=>A.promptSuggestion),X=n0(),z=qX(),{text:G,promptId:K,shownAt:Q,acceptedAt:V,generationRequestId:H}=J,W=mF(G,Y,Z),D=Z||Y.length>0?null:G,q=G&&Q>0,U=B8.useRef(0),N=B8.useRef(!0),L=B8.useRef(0);if(Q>0&&Q!==L.current)L.current=Q,N.current=z,U.current=0;else if(Q===0)L.current=0;if(Y.length>0&&U.current===0&&q)U.current=Date.now();let F=B8.useCallback(()=>{g7(X),X((A)=>({...A,promptSuggestion:{text:null,promptId:null,shownAt:0,acceptedAt:0,generationRequestId:null}}))},[X]),P=B8.useCallback(()=>{if(!q)return;X((A)=>{let{promptSuggestion:j}=A;if(j.acceptedAt>0&&j.acceptedAt>=j.shownAt)return A;return{...A,promptSuggestion:{...j,acceptedAt:Date.now()}}})},[q,X]),w=B8.useCallback(()=>{X((A)=>{if(A.promptSuggestion.shownAt!==0||!A.promptSuggestion.text)return A;return{...A,promptSuggestion:{...A.promptSuggestion,shownAt:Date.now()}}})},[X]),_=B8.useCallback((A,j)=>{if(!q)return;let y=V>Q,b=y||A===G,R=b?V||Date.now():Date.now();if(Z0("tengu_prompt_suggestion",{source:"cli",outcome:b?"accepted":"ignored",prompt_id:K,...H&&{generationRequestId:H},...b&&{acceptMethod:y?"tab":"enter"},...b&&{timeToAcceptMs:R-Q},...!b&&{timeToIgnoreMs:R-Q},...U.current>0&&{timeToFirstKeystrokeMs:U.current-Q},wasFocusedWhenShown:N.current,similarity:Math.round(A.length/(G?.length||1)*100)/100}),!j?.skipReset)F()},[q,V,Q,G,K,H,F]);return{suggestion:D,promptSuggestionGhostRemainder:W,markAccepted:P,markShown:w,resetSuggestion:F,logOutcomeAtSubmission:_}}PY();dZ();N0();DZ();PV();s8();mK();DX();cH();N0();GW();YY();J7();YZ();G8();Af();var MZ=x(Q0(),1);U$();BZ();D$();N$();var pH=15,O$=1000,L$=["|","||","&&",";"];function rF(Y){return typeof Y==="object"&&Y!==null&&"op"in Y&&L$.includes(Y.op)}function uF(Y){if(Y.startsWith("$"))return"variable";if(Y.includes("/")||Y.startsWith("~")||Y.startsWith("."))return"file";return"command"}function F$(Y){let Z=Y.findLastIndex((J)=>typeof J==="string");return Z!==-1?{token:Y[Z],index:Z}:null}function E$(Y,Z){if(Z===0)return!0;let J=Y[Z-1];return J!==void 0&&rF(J)}function P$(Y,Z){let J=Y.slice(0,Z),X=J.match(/\$[a-zA-Z_][a-zA-Z0-9_]*$/);if(X)return{prefix:X[0],completionType:"variable"};let z=dF(J);if(!z.success){let V=J.split(/\s+/),H=V[V.length-1]||"",D=V.length===1&&!J.includes(" ")?"command":uF(H);return{prefix:H,completionType:D}}let G=F$(z.tokens);if(!G){let V=z.tokens[z.tokens.length-1];return{prefix:"",completionType:V&&rF(V)?"command":"command"}}if(J.endsWith(" "))return{prefix:"",completionType:"file"};let K=uF(G.token);if(K==="variable"||K==="file")return{prefix:G.token,completionType:K};let Q=E$(z.tokens,G.index)?"command":"file";return{prefix:G.token,completionType:Q}}function w$(Y,Z){if(Z==="variable"){let J=Y.slice(1);return`compgen -v ${e9([J])} 2>/dev/null`}else if(Z==="file")return`compgen -f ${e9([Y])} 2>/dev/null | head -${pH} | while IFS= read -r f; do [ -d "$f" ] && echo "$f/" || echo "$f "; done`;else return`compgen -c ${e9([Y])} 2>/dev/null`}function _$(Y,Z){if(Z==="variable"){let J=Y.slice(1);return`print -rl -- \${(k)parameters[(I)${e9([J])}*]} 2>/dev/null`}else if(Z==="file")return`for f in ${e9([Y])}*(N[1,${pH}]); do [[ -d "$f" ]] && echo "$f/" || echo "$f "; done`;else return`print -rl -- \${(k)commands[(I)${e9([Y])}*]} 2>/dev/null`}async function A$(Y,Z,J,X){let z;if(Y==="bash")z=w$(Z,J);else if(Y==="zsh")z=_$(Z,J);else return[];return(await(await lF(z,X,"bash",{timeout:O$})).result).stdout.split(`
|
|
62
|
+
`).filter((Q)=>Q.trim()).slice(0,pH).map((Q)=>({id:Q,displayText:Q,description:void 0,metadata:{completionType:J}}))}async function iF(Y,Z,J){let X=pF();if(X!=="bash"&&X!=="zsh")return[];try{let{prefix:z,completionType:G}=P$(Y,Z);if(!z)return[];return(await A$(X,z,G,J)).map((Q)=>({...Q,metadata:{...Q.metadata,inputSnapshot:Y}}))}catch(z){return g(`Shell completion failed: ${z}`),[]}}vY();o8();function D9(Y){return!Array.isArray?YE(Y)==="[object Array]":Array.isArray(Y)}function M$(Y){if(typeof Y=="string")return Y;if(typeof Y==="bigint")return Y.toString();let Z=Y+"";return Z=="0"&&1/Y==-1/0?"-0":Z}function dH(Y){return Y==null?"":M$(Y)}function dY(Y){return typeof Y==="string"}function JV(Y){return typeof Y==="number"}function R$(Y){return Y===!0||Y===!1||j$(Y)&&YE(Y)=="[object Boolean]"}function ZE(Y){return typeof Y==="object"}function j$(Y){return ZE(Y)&&Y!==null}function JJ(Y){return Y!==void 0&&Y!==null}function YV(Y){return!Y.trim().length}function YE(Y){return Y==null?Y===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(Y)}var y$="Incorrect 'index' type",k$=(Y)=>`Invalid value for key ${Y}`,b$=(Y)=>`Pattern length exceeds max of ${Y}.`,I$=(Y)=>`Missing ${Y} property in key`,T$=(Y)=>`Property 'weight' in key '${Y}' must be a positive integer`,aF=Object.prototype.hasOwnProperty;class JE{constructor(Y){this._keys=[],this._keyMap={};let Z=0;Y.forEach((J)=>{let X=XE(J);this._keys.push(X),this._keyMap[X.id]=X,Z+=X.weight}),this._keys.forEach((J)=>{J.weight/=Z})}get(Y){return this._keyMap[Y]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function XE(Y){let Z=null,J=null,X=null,z=1,G=null;if(dY(Y)||D9(Y))X=Y,Z=nF(Y),J=lH(Y);else{if(!aF.call(Y,"name"))throw Error(I$("name"));let K=Y.name;if(X=K,aF.call(Y,"weight")){if(z=Y.weight,z<=0)throw Error(T$(K))}Z=nF(K),J=lH(K),G=Y.getFn}return{path:Z,id:J,weight:z,src:X,getFn:G}}function nF(Y){return D9(Y)?Y:Y.split(".")}function lH(Y){return D9(Y)?Y.join("."):Y}function v$(Y,Z){let J=[],X=!1,z=(G,K,Q,V)=>{if(!JJ(G))return;if(!K[Q])J.push(V!==void 0?{v:G,i:V}:G);else{let H=K[Q],W=G[H];if(!JJ(W))return;if(Q===K.length-1&&(dY(W)||JV(W)||R$(W)||typeof W==="bigint"))J.push(V!==void 0?{v:dH(W),i:V}:dH(W));else if(D9(W)){X=!0;for(let D=0,q=W.length;D<q;D+=1)z(W[D],K,Q+1,D)}else if(K.length)z(W,K,Q+1,V)}};return z(Y,dY(Z)?Z.split("."):Z,0),X?J:J[0]}var C$={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},S$={isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(Y,Z)=>Y.score===Z.score?Y.idx<Z.idx?-1:1:Y.score<Z.score?-1:1},$$={location:0,threshold:0.6,distance:100},f$={useExtendedSearch:!1,useTokenSearch:!1,getFn:v$,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},XZ=Object.freeze({...S$,...C$,...$$,...f$}),h$=/[^ ]+/g;function x$(Y=1,Z=3){let J=new Map,X=Math.pow(10,Z);return{get(z){let G=z.match(h$).length;if(J.has(G))return J.get(G);let K=1/Math.pow(G,0.5*Y),Q=parseFloat(Math.round(K*X)/X);return J.set(G,Q),Q},clear(){J.clear()}}}class GV{constructor({getFn:Y=XZ.getFn,fieldNormWeight:Z=XZ.fieldNormWeight}={}){this.norm=x$(Z,3),this.getFn=Y,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(Y=[]){this.docs=Y}setIndexRecords(Y=[]){this.records=Y}setKeys(Y=[]){this.keys=Y,this._keysMap={},Y.forEach((Z,J)=>{this._keysMap[Z.id]=J})}create(){if(this.isCreated||!this.docs.length)return;if(this.isCreated=!0,dY(this.docs[0]))this.docs.forEach((Y,Z)=>{this._addString(Y,Z)});else this.docs.forEach((Y,Z)=>{this._addObject(Y,Z)});this.norm.clear()}add(Y){let Z=this.size();if(dY(Y))this._addString(Y,Z);else this._addObject(Y,Z)}removeAt(Y){this.records.splice(Y,1);for(let Z=Y,J=this.size();Z<J;Z+=1)this.records[Z].i-=1}removeAll(Y){for(let Z=Y.length-1;Z>=0;Z-=1)this.records.splice(Y[Z],1);for(let Z=0,J=this.records.length;Z<J;Z+=1)this.records[Z].i=Z}getValueForItemAtKeyId(Y,Z){return Y[this._keysMap[Z]]}size(){return this.records.length}_addString(Y,Z){if(!JJ(Y)||YV(Y))return;let J={v:Y,i:Z,n:this.norm.get(Y)};this.records.push(J)}_addObject(Y,Z){let J={i:Z,$:{}};this.keys.forEach((X,z)=>{let G=X.getFn?X.getFn(Y):this.getFn(Y,X.path);if(!JJ(G))return;if(D9(G)){let K=[];for(let Q=0,V=G.length;Q<V;Q+=1){let H=G[Q];if(!JJ(H))continue;if(dY(H)){if(!YV(H)){let W={v:H,i:Q,n:this.norm.get(H)};K.push(W)}}else if(JJ(H.v)){let W=dY(H.v)?H.v:dH(H.v);if(!YV(W)){let D={v:W,i:H.i,n:this.norm.get(W)};K.push(D)}}}J.$[z]=K}else if(dY(G)&&!YV(G)){let K={v:G,n:this.norm.get(G)};J.$[z]=K}}),this.records.push(J)}toJSON(){return{keys:this.keys.map(({getFn:Y,...Z})=>Z),records:this.records}}}function zE(Y,Z,{getFn:J=XZ.getFn,fieldNormWeight:X=XZ.fieldNormWeight}={}){let z=new GV({getFn:J,fieldNormWeight:X});return z.setKeys(Y.map(XE)),z.setSources(Z),z.create(),z}function g$(Y,{getFn:Z=XZ.getFn,fieldNormWeight:J=XZ.fieldNormWeight}={}){let{keys:X,records:z}=Y,G=new GV({getFn:Z,fieldNormWeight:J});return G.setKeys(X),G.setIndexRecords(z),G}function m$(Y=[],Z=XZ.minMatchCharLength){let J=[],X=-1,z=-1,G=0;for(let K=Y.length;G<K;G+=1){let Q=Y[G];if(Q&&X===-1)X=G;else if(!Q&&X!==-1){if(z=G-1,z-X+1>=Z)J.push([X,z]);X=-1}}if(Y[G-1]&&G-X>=Z)J.push([X,G-1]);return J}var Zz=32;function c$(Y,Z,J,{location:X=XZ.location,distance:z=XZ.distance,threshold:G=XZ.threshold,findAllMatches:K=XZ.findAllMatches,minMatchCharLength:Q=XZ.minMatchCharLength,includeMatches:V=XZ.includeMatches,ignoreLocation:H=XZ.ignoreLocation}={}){if(Z.length>Zz)throw Error(b$(Zz));let W=Z.length,D=Y.length,q=Math.max(0,Math.min(X,D)),U=G,N=q,L=(R,k)=>{let f=R/W;if(H)return f;let $=Math.abs(q-k);if(!z)return $?1:f;return f+$/z},F=Q>1||V,P=F?Array(D):[],w;while((w=Y.indexOf(Z,N))>-1){let R=L(0,w);if(U=Math.min(R,U),N=w+W,F){let k=0;while(k<W)P[w+k]=1,k+=1}}N=-1;let _=[],A=1,j=W+D,y=1<<W-1;for(let R=0;R<W;R+=1){let k=0,f=j;while(k<f){if(L(R,q+f)<=U)k=f;else j=f;f=Math.floor((j-k)/2+k)}j=f;let $=Math.max(1,q-f+1),v=K?D:Math.min(q+f,D)+W,T=Array(v+2);T[v+1]=(1<<R)-1;for(let u=v;u>=$;u-=1){let C=u-1,a=J[Y[C]];if(F)P[C]=+!!a;if(T[u]=(T[u+1]<<1|1)&a,R)T[u]|=(_[u+1]|_[u])<<1|1|_[u+1];if(T[u]&y){if(A=L(R,C),A<=U){if(U=A,N=C,N<=q)break;$=Math.max(1,2*q-N)}}}if(L(R+1,q)>U)break;_=T}let b={isMatch:N>=0,score:Math.max(0.001,A)};if(F){let R=m$(P,Q);if(!R.length)b.isMatch=!1;else if(V)b.indices=R}return b}function u$(Y){let Z={};for(let J=0,X=Y.length;J<X;J+=1){let z=Y.charAt(J);Z[z]=(Z[z]||0)|1<<X-J-1}return Z}function tH(Y){if(Y.length<=1)return Y;Y.sort((J,X)=>J[0]-X[0]||J[1]-X[1]);let Z=[Y[0]];for(let J=1,X=Y.length;J<X;J+=1){let z=Z[Z.length-1],G=Y[J];if(G[0]<=z[1]+1)z[1]=Math.max(z[1],G[1]);else Z.push(G)}return Z}var GE={"ł":"l","Ł":"L","đ":"d","Đ":"D","ø":"o","Ø":"O","ħ":"h","Ħ":"H","ŧ":"t","Ŧ":"T","ı":"i","ß":"ss"},p$=new RegExp("["+Object.keys(GE).join("")+"]","g"),cK=String.prototype.normalize?(Y)=>Y.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(p$,(Z)=>GE[Z]):(Y)=>Y;class KV{constructor(Y,{location:Z=XZ.location,threshold:J=XZ.threshold,distance:X=XZ.distance,includeMatches:z=XZ.includeMatches,findAllMatches:G=XZ.findAllMatches,minMatchCharLength:K=XZ.minMatchCharLength,isCaseSensitive:Q=XZ.isCaseSensitive,ignoreDiacritics:V=XZ.ignoreDiacritics,ignoreLocation:H=XZ.ignoreLocation}={}){if(this.options={location:Z,threshold:J,distance:X,includeMatches:z,findAllMatches:G,minMatchCharLength:K,isCaseSensitive:Q,ignoreDiacritics:V,ignoreLocation:H},Y=Q?Y:Y.toLowerCase(),Y=V?cK(Y):Y,this.pattern=Y,this.chunks=[],!this.pattern.length)return;let W=(q,U)=>{this.chunks.push({pattern:q,alphabet:u$(q),startIndex:U})},D=this.pattern.length;if(D>Zz){let q=0,U=D%Zz,N=D-U;while(q<N)W(this.pattern.substr(q,Zz),q),q+=Zz;if(U){let L=D-Zz;W(this.pattern.substr(L),L)}}else W(this.pattern,0)}searchIn(Y){let{isCaseSensitive:Z,ignoreDiacritics:J,includeMatches:X}=this.options;if(Y=Z?Y:Y.toLowerCase(),Y=J?cK(Y):Y,this.pattern===Y){let N={isMatch:!0,score:0};if(X)N.indices=[[0,Y.length-1]];return N}let{location:z,distance:G,threshold:K,findAllMatches:Q,minMatchCharLength:V,ignoreLocation:H}=this.options,W=[],D=0,q=!1;this.chunks.forEach(({pattern:N,alphabet:L,startIndex:F})=>{let{isMatch:P,score:w,indices:_}=c$(Y,N,L,{location:z+F,distance:G,threshold:K,findAllMatches:Q,minMatchCharLength:V,includeMatches:X,ignoreLocation:H});if(P)q=!0;if(D+=w,P&&_)W.push(..._)});let U={isMatch:q,score:q?D/this.chunks.length:1};if(q&&X)U.indices=tH(W);return U}}class D8{constructor(Y){this.pattern=Y}static isMultiMatch(Y){return oF(Y,this.multiRegex)}static isSingleMatch(Y){return oF(Y,this.singleRegex)}search(Y){return{isMatch:!1,score:1}}}function oF(Y,Z){let J=Y.match(Z);return J?J[1]:null}class KE extends D8{constructor(Y){super(Y)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(Y){let Z=Y===this.pattern;return{isMatch:Z,score:Z?0:1,indices:[0,this.pattern.length-1]}}}class QE extends D8{constructor(Y){super(Y)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(Y){let J=Y.indexOf(this.pattern)===-1;return{isMatch:J,score:J?0:1,indices:[0,Y.length-1]}}}class VE extends D8{constructor(Y){super(Y)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(Y){let Z=Y.startsWith(this.pattern);return{isMatch:Z,score:Z?0:1,indices:[0,this.pattern.length-1]}}}class WE extends D8{constructor(Y){super(Y)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(Y){let Z=!Y.startsWith(this.pattern);return{isMatch:Z,score:Z?0:1,indices:[0,Y.length-1]}}}class HE extends D8{constructor(Y){super(Y)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(Y){let Z=Y.endsWith(this.pattern);return{isMatch:Z,score:Z?0:1,indices:[Y.length-this.pattern.length,Y.length-1]}}}class qE extends D8{constructor(Y){super(Y)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(Y){let Z=!Y.endsWith(this.pattern);return{isMatch:Z,score:Z?0:1,indices:[0,Y.length-1]}}}class eH extends D8{constructor(Y,{location:Z=XZ.location,threshold:J=XZ.threshold,distance:X=XZ.distance,includeMatches:z=XZ.includeMatches,findAllMatches:G=XZ.findAllMatches,minMatchCharLength:K=XZ.minMatchCharLength,isCaseSensitive:Q=XZ.isCaseSensitive,ignoreDiacritics:V=XZ.ignoreDiacritics,ignoreLocation:H=XZ.ignoreLocation}={}){super(Y);this._bitapSearch=new KV(Y,{location:Z,threshold:J,distance:X,includeMatches:z,findAllMatches:G,minMatchCharLength:K,isCaseSensitive:Q,ignoreDiacritics:V,ignoreLocation:H})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(Y){return this._bitapSearch.searchIn(Y)}}class Z3 extends D8{constructor(Y){super(Y)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(Y){let Z=0,J,X=[],z=this.pattern.length;while((J=Y.indexOf(this.pattern,Z))>-1)Z=J+z,X.push([J,Z-1]);let G=!!X.length;return{isMatch:G,score:G?0:1,indices:X}}}var rH=[KE,Z3,VE,WE,qE,HE,QE,eH],sF=rH.length,d$="\x00",l$="|";function r$(Y){let Z=[],J=Y.length,X=0;while(X<J){while(X<J&&Y[X]===" ")X++;if(X>=J)break;let z=X;while(z<J&&Y[z]!==" "&&Y[z]!=='"')z++;if(z<J&&Y[z]==='"'){z++;while(z<J){if(Y[z]==='"'){let G=z+1;if(G>=J||Y[G]===" "){z++;break}if(Y[G]==="$"&&(G+1>=J||Y[G+1]===" ")){z+=2;break}}z++}Z.push(Y.substring(X,z)),X=z}else{while(z<J&&Y[z]!==" ")z++;Z.push(Y.substring(X,z)),X=z}}return Z}function i$(Y,Z={}){return Y.replace(/\\\|/g,d$).split(l$).map((X)=>{let z=X.replace(/\u0000/g,"|"),G=r$(z.trim()).filter((Q)=>Q&&!!Q.trim()),K=[];for(let Q=0,V=G.length;Q<V;Q+=1){let H=G[Q],W=!1,D=-1;while(!W&&++D<sF){let q=rH[D],U=q.isMultiMatch(H);if(U)K.push(new q(U,Z)),W=!0}if(W)continue;D=-1;while(++D<sF){let q=rH[D],U=q.isSingleMatch(H);if(U){K.push(new q(U,Z));break}}}return K})}var a$=new Set([eH.type,Z3.type]);class BE{constructor(Y,{isCaseSensitive:Z=XZ.isCaseSensitive,ignoreDiacritics:J=XZ.ignoreDiacritics,includeMatches:X=XZ.includeMatches,minMatchCharLength:z=XZ.minMatchCharLength,ignoreLocation:G=XZ.ignoreLocation,findAllMatches:K=XZ.findAllMatches,location:Q=XZ.location,threshold:V=XZ.threshold,distance:H=XZ.distance}={}){this.query=null,this.options={isCaseSensitive:Z,ignoreDiacritics:J,includeMatches:X,minMatchCharLength:z,findAllMatches:K,ignoreLocation:G,location:Q,threshold:V,distance:H},Y=Z?Y:Y.toLowerCase(),Y=J?cK(Y):Y,this.pattern=Y,this.query=i$(this.pattern,this.options)}static condition(Y,Z){return Z.useExtendedSearch}searchIn(Y){let Z=this.query;if(!Z)return{isMatch:!1,score:1};let{includeMatches:J,isCaseSensitive:X,ignoreDiacritics:z}=this.options;Y=X?Y:Y.toLowerCase(),Y=z?cK(Y):Y;let G=0,K=[],Q=0,V=!1;for(let H=0,W=Z.length;H<W;H+=1){let D=Z[H];K.length=0,G=0,V=!1;for(let q=0,U=D.length;q<U;q+=1){let N=D[q],{isMatch:L,indices:F,score:P}=N.search(Y);if(L){G+=1,Q+=P;let w=N.constructor.type;if(w.startsWith("inverse"))V=!0;if(J)if(a$.has(w))K.push(...F);else K.push(F)}else{Q=0,G=0,K.length=0,V=!1;break}}if(G){let q={isMatch:!0,score:Q/G};if(V)q.hasInverse=!0;if(J)q.indices=tH(K);return q}}return{isMatch:!1,score:1}}}var iH=[];function Y3(...Y){iH.push(...Y)}function XV(Y,Z){for(let J=0,X=iH.length;J<X;J+=1){let z=iH[J];if(z.condition(Y,Z))return new z(Y,Z)}return new KV(Y,Z)}var zV={AND:"$and",OR:"$or"},aH={PATH:"$path",PATTERN:"$val"},nH=(Y)=>!!(Y[zV.AND]||Y[zV.OR]),n$=(Y)=>!!Y[aH.PATH],o$=(Y)=>!D9(Y)&&ZE(Y)&&!nH(Y),tF=(Y)=>({[zV.AND]:Object.keys(Y).map((Z)=>({[Z]:Y[Z]}))});function DE(Y,Z,{auto:J=!0}={}){let X=(z)=>{if(dY(z)){let V={keyId:null,pattern:z};if(J)V.searcher=XV(z,Z);return V}let G=Object.keys(z),K=n$(z);if(!K&&G.length>1&&!nH(z))return X(tF(z));if(o$(z)){let V=K?z[aH.PATH]:G[0],H=K?z[aH.PATTERN]:z[V];if(!dY(H))throw Error(k$(V));let W={keyId:lH(V),pattern:H};if(J)W.searcher=XV(H,Z);return W}let Q={children:[],operator:G[0]};return G.forEach((V)=>{let H=z[V];if(D9(H))H.forEach((W)=>{Q.children.push(X(W))})}),Q};if(!nH(Y))Y=tF(Y);return X(Y)}function oH(Y,{ignoreFieldNorm:Z=XZ.ignoreFieldNorm}){let J=1;return Y.forEach(({key:X,norm:z,score:G})=>{let K=X?X.weight:null;J*=Math.pow(G===0&&K?Number.EPSILON:G,(K||1)*(Z?1:z))}),J}function s$(Y,{ignoreFieldNorm:Z=XZ.ignoreFieldNorm}){Y.forEach((J)=>{J.score=oH(J.matches,{ignoreFieldNorm:Z})})}class UE{constructor(Y){this.limit=Y,this.heap=[]}get size(){return this.heap.length}shouldInsert(Y){return this.size<this.limit||Y<this.heap[0].score}insert(Y){if(this.size<this.limit)this.heap.push(Y),this._bubbleUp(this.size-1);else if(Y.score<this.heap[0].score)this.heap[0]=Y,this._sinkDown(0)}extractSorted(Y){return this.heap.sort(Y)}_bubbleUp(Y){let Z=this.heap;while(Y>0){let J=Y-1>>1;if(Z[Y].score<=Z[J].score)break;let X=Z[Y];Z[Y]=Z[J],Z[J]=X,Y=J}}_sinkDown(Y){let Z=this.heap,J=Z.length,X=Y;do{Y=X;let z=2*Y+1,G=2*Y+2;if(z<J&&Z[z].score>Z[X].score)X=z;if(G<J&&Z[G].score>Z[X].score)X=G;if(X!==Y){let K=Z[Y];Z[Y]=Z[X],Z[X]=K}}while(X!==Y)}}function t$(Y,Z){let J=Y.matches;if(Z.matches=[],!JJ(J))return;J.forEach((X)=>{if(!JJ(X.indices)||!X.indices.length)return;let{indices:z,value:G}=X,K={indices:z,value:G};if(X.key)K.key=X.key.src;if(X.idx>-1)K.refIndex=X.idx;Z.matches.push(K)})}function e$(Y,Z){Z.score=Y.score}function Zf(Y,Z,{includeMatches:J=XZ.includeMatches,includeScore:X=XZ.includeScore}={}){let z=[];if(J)z.push(t$);if(X)z.push(e$);return Y.map((G)=>{let{idx:K}=G,Q={item:Z[K],refIndex:K};if(z.length)z.forEach((V)=>{V(G,Q)});return Q})}var Yf=/\b\w+\b/g;function sH({isCaseSensitive:Y=!1,ignoreDiacritics:Z=!1}={}){return{tokenize(J){if(!Y)J=J.toLowerCase();if(Z)J=cK(J);return J.match(Yf)||[]}}}function Jf(Y,Z,J){let X=new Map,z=new Map,G=0;function K(Q,V,H,W){let D=J.tokenize(Q);if(!D.length)return;G++;let q=new Map;for(let U of D)q.set(U,(q.get(U)||0)+1);for(let[U,N]of q){let L={docIdx:V,keyIdx:H,subIdx:W,tf:N},F=X.get(U);if(!F)F=[],X.set(U,F);F.push(L),z.set(U,(z.get(U)||0)+1)}}for(let Q of Y){let{i:V,v:H,$:W}=Q;if(H!==void 0){K(H,V,-1,-1);continue}if(W)for(let D=0;D<Z;D++){let q=W[D];if(!q)continue;if(Array.isArray(q))for(let U of q)K(U.v,V,D,U.i??-1);else K(q.v,V,D,-1)}}return{terms:X,fieldCount:G,df:z}}function Xf(Y,Z,J,X){let{i:z,v:G,$:K}=Z;function Q(V,H,W){let D=X.tokenize(V);if(!D.length)return;Y.fieldCount++;let q=new Map;for(let U of D)q.set(U,(q.get(U)||0)+1);for(let[U,N]of q){let L={docIdx:z,keyIdx:H,subIdx:W,tf:N},F=Y.terms.get(U);if(!F)F=[],Y.terms.set(U,F);F.push(L),Y.df.set(U,(Y.df.get(U)||0)+1)}}if(G!==void 0){Q(G,-1,-1);return}if(K)for(let V=0;V<J;V++){let H=K[V];if(!H)continue;if(Array.isArray(H))for(let W of H)Q(W.v,V,W.i??-1);else Q(H.v,V,-1)}}function eF(Y,Z){for(let[J,X]of Y.terms){let z=X.filter((K)=>K.docIdx!==Z),G=X.length-z.length;if(G>0)if(Y.fieldCount-=G,Y.df.set(J,(Y.df.get(J)||0)-G),z.length===0)Y.terms.delete(J),Y.df.delete(J);else Y.terms.set(J,z)}}class vJ{constructor(Y,Z,J){this.options={...XZ,...Z},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new JE(this.options.keys),this._docs=Y,this._myIndex=null,this._invertedIndex=null,this.setCollection(Y,J),this._lastQuery=null,this._lastSearcher=null}_getSearcher(Y){if(this._lastQuery===Y)return this._lastSearcher;let Z=this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options,J=XV(Y,Z);return this._lastQuery=Y,this._lastSearcher=J,J}setCollection(Y,Z){if(this._docs=Y,Z&&!(Z instanceof GV))throw Error(y$);if(this._myIndex=Z||zE(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){let J=sH({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics});this._invertedIndex=Jf(this._myIndex.records,this._myIndex.keys.length,J)}}add(Y){if(!JJ(Y))return;if(this._docs.push(Y),this._myIndex.add(Y),this._invertedIndex){let Z=this._myIndex.records[this._myIndex.records.length-1],J=sH({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics});Xf(this._invertedIndex,Z,this._myIndex.keys.length,J)}}remove(Y=()=>!1){let Z=[],J=[];for(let X=0,z=this._docs.length;X<z;X+=1)if(Y(this._docs[X],X))Z.push(this._docs[X]),J.push(X);if(J.length){if(this._invertedIndex)for(let X of J)eF(this._invertedIndex,X);for(let X=J.length-1;X>=0;X-=1)this._docs.splice(J[X],1);this._myIndex.removeAll(J)}return Z}removeAt(Y){if(this._invertedIndex)eF(this._invertedIndex,Y);let Z=this._docs.splice(Y,1)[0];return this._myIndex.removeAt(Y),Z}getIndex(){return this._myIndex}search(Y,Z){let{limit:J=-1}=Z||{},{includeMatches:X,includeScore:z,shouldSort:G,sortFn:K,ignoreFieldNorm:Q}=this.options;if(dY(Y)&&!Y.trim()){let W=this._docs.map((D,q)=>({item:D,refIndex:q}));if(JV(J)&&J>-1)W=W.slice(0,J);return W}let V=JV(J)&&J>0&&dY(Y),H;if(V){let W=new UE(J);if(dY(this._docs[0]))this._searchStringList(Y,{heap:W,ignoreFieldNorm:Q});else this._searchObjectList(Y,{heap:W,ignoreFieldNorm:Q});H=W.extractSorted(K)}else{if(H=dY(Y)?dY(this._docs[0])?this._searchStringList(Y):this._searchObjectList(Y):this._searchLogical(Y),s$(H,{ignoreFieldNorm:Q}),G)H.sort(K);if(JV(J)&&J>-1)H=H.slice(0,J)}return Zf(H,this._docs,{includeMatches:X,includeScore:z})}_searchStringList(Y,{heap:Z,ignoreFieldNorm:J}={}){let X=this._getSearcher(Y),{records:z}=this._myIndex,G=Z?null:[];return z.forEach(({v:K,i:Q,n:V})=>{if(!JJ(K))return;let{isMatch:H,score:W,indices:D}=X.searchIn(K);if(H){let q={item:K,idx:Q,matches:[{score:W,value:K,norm:V,indices:D}]};if(Z){if(q.score=oH(q.matches,{ignoreFieldNorm:J}),Z.shouldInsert(q.score))Z.insert(q)}else G.push(q)}}),G}_searchLogical(Y){let Z=DE(Y,this.options),J=(K,Q,V)=>{if(!("children"in K)){let{keyId:q,searcher:U}=K,N;if(q===null)N=[],this._myIndex.keys.forEach((L,F)=>{N.push(...this._findMatches({key:L,value:Q[F],searcher:U}))});else N=this._findMatches({key:this._keyStore.get(q),value:this._myIndex.getValueForItemAtKeyId(Q,q),searcher:U});if(N&&N.length)return[{idx:V,item:Q,matches:N}];return[]}let{children:H,operator:W}=K,D=[];for(let q=0,U=H.length;q<U;q+=1){let N=H[q],L=J(N,Q,V);if(L.length)D.push(...L);else if(W===zV.AND)return[]}return D},X=this._myIndex.records,z=new Map,G=[];return X.forEach(({$:K,i:Q})=>{if(JJ(K)){let V=J(Z,K,Q);if(V.length){if(!z.has(Q))z.set(Q,{idx:Q,item:K,matches:[]}),G.push(z.get(Q));V.forEach(({matches:H})=>{z.get(Q).matches.push(...H)})}}}),G}_searchObjectList(Y,{heap:Z,ignoreFieldNorm:J}={}){let X=this._getSearcher(Y),{keys:z,records:G}=this._myIndex,K=Z?null:[];return G.forEach(({$:Q,i:V})=>{if(!JJ(Q))return;let H=[],W=!1,D=!1;if(z.forEach((q,U)=>{let N=this._findMatches({key:q,value:Q[U],searcher:X});if(N.length){if(H.push(...N),N[0].hasInverse)D=!0}else W=!0}),D&&W)return;if(H.length){let q={idx:V,item:Q,matches:H};if(Z){if(q.score=oH(q.matches,{ignoreFieldNorm:J}),Z.shouldInsert(q.score))Z.insert(q)}else K.push(q)}}),K}_findMatches({key:Y,value:Z,searcher:J}){if(!JJ(Z))return[];let X=[];if(D9(Z))Z.forEach(({v:z,i:G,n:K})=>{if(!JJ(z))return;let{isMatch:Q,score:V,indices:H,hasInverse:W}=J.searchIn(z);if(Q)X.push({score:V,key:Y,value:z,idx:G,norm:K,indices:H,hasInverse:W})});else{let{v:z,n:G}=Z,{isMatch:K,score:Q,indices:V,hasInverse:H}=J.searchIn(z);if(K)X.push({score:Q,key:Y,value:z,norm:G,indices:V,hasInverse:H})}return X}}class NE{static condition(Y,Z){return Z.useTokenSearch}constructor(Y,Z){this.options=Z,this.analyzer=sH({isCaseSensitive:Z.isCaseSensitive,ignoreDiacritics:Z.ignoreDiacritics});let J=this.analyzer.tokenize(Y),X=Z._invertedIndex,{df:z,fieldCount:G}=X;this.termSearchers=[],this.idfWeights=[];for(let K of J){this.termSearchers.push(new KV(K,{location:Z.location,threshold:Z.threshold,distance:Z.distance,includeMatches:Z.includeMatches,findAllMatches:Z.findAllMatches,minMatchCharLength:Z.minMatchCharLength,isCaseSensitive:Z.isCaseSensitive,ignoreDiacritics:Z.ignoreDiacritics,ignoreLocation:!0}));let Q=z.get(K)||0,V=Math.log(1+(G-Q+0.5)/(Q+0.5));this.idfWeights.push(V)}}searchIn(Y){if(!this.termSearchers.length)return{isMatch:!1,score:1};let Z=[],J=0,X=0,z=0;for(let Q=0;Q<this.termSearchers.length;Q++){let V=this.termSearchers[Q].searchIn(Y),H=this.idfWeights[Q];if(X+=H,V.isMatch){if(z++,J+=H*(1-V.score),V.indices)Z.push(...V.indices)}}if(z===0)return{isMatch:!1,score:1};let G=X>0?1-J/X:0,K={isMatch:!0,score:Math.max(0.001,G)};if(this.options.includeMatches&&Z.length)K.indices=tH(Z);return K}}vJ.version="7.3.0";vJ.createIndex=zE;vJ.parseIndex=g$;vJ.config=XZ;vJ.match=function(Y,Z,J){return XV(Y,{...XZ,...J}).searchIn(Z)};vJ.parseQuery=DE;Y3(BE);Y3(NE);vJ.use=function(...Y){Y.forEach((Z)=>Y3(Z))};s8();zf();var Gf=/[:_-]/g,J3=null;function Kf(Y){if(J3?.commands===Y)return J3.fuse;let Z=Y.filter((X)=>!X.isHidden).map((X)=>{let z=GY(X),G=z.split(Gf).filter(Boolean);return{descriptionKey:(X.description??"").split(" ").map((K)=>Hf(K)).filter(Boolean),partKey:G.length>1?G:void 0,commandName:z,command:X,aliasKey:X.aliases}}),J=new vJ(Z,{includeScore:!0,threshold:0.3,location:0,distance:100,keys:[{name:"commandName",weight:3},{name:"partKey",weight:2},{name:"aliasKey",weight:2},{name:"descriptionKey",weight:0.5}]});return J3={commands:Y,fuse:J},J}function FE(Y){return typeof Y==="object"&&Y!==null&&"name"in Y&&typeof Y.name==="string"&&"type"in Y}function VV(Y,Z){if(Y.startsWith("/"))return null;let X=Y.slice(0,Z).match(/\s\/([a-zA-Z0-9_:-]*)$/);if(!X||X.index===void 0)return null;let z=X.index+1,K=Y.slice(z+1).match(/^[a-zA-Z0-9_:-]*/),Q=K?K[0]:"";if(Z>z+1+Q.length)return null;return{token:"/"+Q,startPos:z,partialCommand:Q}}function K3(Y,Z){if(!Y)return null;let J=Q3("/"+Y,Z);if(J.length===0)return null;let X=Y.toLowerCase();for(let z of J){if(!FE(z.metadata))continue;let G=GY(z.metadata);if(G.toLowerCase().startsWith(X)){let K=G.slice(Y.length);if(K)return{suffix:K,fullCommand:G}}}return null}function U8(Y){return Y.startsWith("/")}function Qf(Y){if(!U8(Y))return!1;if(!Y.includes(" "))return!1;if(Y.endsWith(" "))return!1;return!0}function Vf(Y){return`/${Y} `}function QV(Y){let Z=GY(Y);if(Y.type==="prompt"){if(Y.source==="plugin"&&Y.pluginInfo?.repository)return`${Z}:${Y.source}:${Y.pluginInfo.repository}`;return`${Z}:${Y.source}`}return`${Z}:${Y.type}`}function Wf(Y,Z){if(!Z||Z.length===0||Y==="")return;return Z.find((J)=>J.toLowerCase().startsWith(Y))}function X3(Y,Z){let J=GY(Y),X=Z?` (${Z})`:"",z=Y.type==="prompt"&&Y.kind==="workflow",G=(z?Y.description:LE(Y))+(Y.type==="prompt"&&Y.argNames?.length?` (arguments: ${Y.argNames.join(", ")})`:"");return{id:QV(Y),displayText:`/${J}${X}`,tag:z?"workflow":void 0,description:G,metadata:Y}}function z3(Y){let Z=new Map;return Y.map((J)=>{let X=Z.get(J.id)??0;if(Z.set(J.id,X+1),X===0)return J;return{...J,id:`${J.id}#${X+1}`}})}function Q3(Y,Z){if(!U8(Y))return[];if(Qf(Y))return[];let J=Y.slice(1).toLowerCase().trim();if(J===""){let H=Z.filter((_)=>!_.isHidden),W=[],D=H.filter((_)=>_.type==="prompt").map((_)=>({cmd:_,score:G3(GY(_))})).filter((_)=>_.score>0).sort((_,A)=>A.score-_.score);for(let _ of D.slice(0,5))W.push(_.cmd);let q=new Set(W.map((_)=>QV(_))),U=[],N=[],L=[],F=[],P=[];H.forEach((_)=>{if(q.has(QV(_)))return;if(_.type==="local"||_.type==="local-jsx")U.push(_);else if(_.type==="prompt"&&(_.source==="userSettings"||_.source==="localSettings"))N.push(_);else if(_.type==="prompt"&&_.source==="projectSettings")L.push(_);else if(_.type==="prompt"&&_.source==="policySettings")F.push(_);else P.push(_)});let w=(_,A)=>GY(_).localeCompare(GY(A));return U.sort(w),N.sort(w),L.sort(w),F.sort(w),P.sort(w),z3([...W,...U,...N,...L,...F,...P].map((_)=>X3(_)))}let X=Z.find((H)=>H.isHidden&&GY(H).toLowerCase()===J);if(X&&Z.some((H)=>!H.isHidden&&GY(H).toLowerCase()===J))X=void 0;let V=Kf(Z).search(J).map((H)=>{let W=H.item.commandName.toLowerCase(),D=H.item.aliasKey?.map((U)=>U.toLowerCase())??[],q=H.item.command.type==="prompt"?G3(GY(H.item.command)):0;return{r:H,name:W,aliases:D,usage:q}}).sort((H,W)=>{let D=H.name,q=W.name,U=H.aliases,N=W.aliases,L=D===J,F=q===J;if(L&&!F)return-1;if(F&&!L)return 1;let P=U.some((R)=>R===J),w=N.some((R)=>R===J);if(P&&!w)return-1;if(w&&!P)return 1;let _=D.startsWith(J),A=q.startsWith(J);if(_&&!A)return-1;if(A&&!_)return 1;if(_&&A&&D.length!==q.length)return D.length-q.length;let j=U.find((R)=>R.startsWith(J)),y=N.find((R)=>R.startsWith(J));if(j&&!y)return-1;if(y&&!j)return 1;if(j&&y&&j.length!==y.length)return j.length-y.length;let b=(H.r.score??0)-(W.r.score??0);if(Math.abs(b)>0.1)return b;return W.usage-H.usage}).map((H)=>{let W=H.r.item.command,D=Wf(J,W.aliases);return X3(W,D)});if(X){let H=QV(X);if(!V.some((W)=>W.id===H))return z3([X3(X),...V])}return z3(V)}function V3(Y,Z,J,X,z,G){let K,Q;if(typeof Y==="string")K=Y,Q=Z?OE(K,J):void 0;else{if(!FE(Y.metadata))return;K=GY(Y.metadata),Q=Y.metadata}let V=Vf(K);if(X(V),z(V.length),Z&&Q){if(Q.type!=="prompt"||(Q.argNames??[]).length===0)G(V,!0)}}function Hf(Y){return Y.toLowerCase().replace(/[^a-z0-9]/g,"")}function EE(Y){let Z=[],J=/(^|[\s])(\/[a-zA-Z][a-zA-Z0-9:\-_]*)/g,X=null;while((X=J.exec(Y))!==null){let z=X[1]??"",G=X[2]??"",K=X.index+z.length;Z.push({start:K,end:K+G.length})}return Z}Mf();B9();BZ();var Yz=null,PE=0,qf=60000;async function Bf(){let Y=Date.now();if(Yz&&Y-PE<qf)return Yz;let Z=[],J=new Set;try{for await(let X of ZV()){if(X.display&&X.display.startsWith("!")){let z=X.display.slice(1).trim();if(z&&!J.has(z))J.add(z),Z.push(z)}if(Z.length>=50)break}}catch(X){g(`Failed to read shell history: ${X}`)}return Yz=Z,PE=Y,Z}function wE(Y){if(!Yz)return;let Z=Yz.indexOf(Y);if(Z!==-1)Yz.splice(Z,1);Yz.unshift(Y)}async function _E(Y){if(!Y||Y.length<2)return null;if(!Y.trim())return null;let J=await Bf();for(let X of J)if(X.startsWith(Y)&&X!==Y)return{fullCommand:X,suffix:X.slice(Y.length)};return null}Q7();BZ();EK();$U();uJ();var Df="slack_search_channels",m7=new Map,HV=new Set,AE=0,ME=nQ(),RE=ME.subscribe,WV=null,uK=null;function jE(Y){return Y.find((Z)=>Z.type==="connected"&&Z.name.includes("slack"))}async function Uf(Y,Z){let J=jE(Y);if(!J||J.type!=="connected")return[];try{let z=(await J.client.callTool({name:Df,arguments:{query:Z,limit:20,channel_types:"public_channel,private_channel"}},void 0,{timeout:5000})).content;if(!Array.isArray(z))return[];let G=z.filter((K)=>K.type==="text").map((K)=>K.text).join(`
|
|
63
|
+
`);return Lf(Of(G))}catch(X){return g(`Failed to fetch Slack channels: ${X}`),[]}}var Nf=EX(()=>WZ.object({results:WZ.string()}));function Of(Y){let Z=Y.trim();if(!Z.startsWith("{"))return Y;try{let J=Nf().safeParse(h8(Z));if(J.success)return J.data.results}catch{}return Y}function Lf(Y){let Z=[],J=new Set;for(let X of Y.split(`
|
|
64
|
+
`)){let z=X.match(/^Name:\s*#?([a-z0-9][a-z0-9_-]{0,79})\s*$/);if(z&&!J.has(z[1]))J.add(z[1]),Z.push(z[1])}return Z}function qV(Y){return jE(Y)!==void 0}function yE(){return AE}function kE(Y){let Z=[],J=/(^|\s)#([a-z0-9][a-z0-9_-]{0,79})(?=\s|$)/g,X;while((X=J.exec(Y))!==null){if(!HV.has(X[2]))continue;let z=X.index+X[1].length;Z.push({start:z,end:z+1+X[2].length})}return Z}function Ff(Y){let Z=Math.max(Y.lastIndexOf("-"),Y.lastIndexOf("_"));return Z>0?Y.slice(0,Z):Y}function Ef(Y,Z){let J,X=0;for(let[z,G]of m7)if(Y.startsWith(z)&&z.length>X&&G.some((K)=>K.startsWith(Z)))J=G,X=z.length;return J}async function bE(Y,Z){if(!Z)return[];let J=Ff(Z),X=Z.toLowerCase(),z=m7.get(J)??Ef(J,X);if(!z)if(WV===J&&uK)z=await uK;else{WV=J,uK=Uf(Y,J),z=await uK,m7.set(J,z);let G=HV.size;for(let K of z)HV.add(K);if(HV.size!==G)AE++,ME.emit();if(m7.size>50)m7.delete(m7.keys().next().value);if(WV===J)WV=null,uK=null}return z.filter((G)=>G.startsWith(X)).sort().slice(0,10).map((G)=>({id:`slack-channel-${G}`,displayText:`#${G}`}))}EV();H3();H3();c7();vY();rZ();import{basename as Pf}from"path";function IE(Y){switch(Y.type){case"file":return{id:`file-${Y.path}`,displayText:Y.displayText,description:Y.description};case"mcp_resource":return{id:`mcp-resource-${Y.server}__${Y.uri}`,displayText:Y.displayText,description:Y.description};case"agent":return{id:`agent-${Y.agentType}`,displayText:Y.displayText,description:Y.description,color:Y.color}}}var W3=15,wf=60;function TE(Y){return CY(Y,wf)}function _f(Y,Z,J=!1){if(!Z&&!J)return[];try{let X=Y.map((G)=>({type:"agent",displayText:`${G.agentType} (agent)`,description:TE(G.whenToUse),agentType:G.agentType,color:BV(G.agentType)}));if(!Z)return X;let z=Z.toLowerCase();return X.filter((G)=>G.agentType.toLowerCase().includes(z)||G.displayText.toLowerCase().includes(z))}catch(X){return u0(X),[]}}async function q3(Y,Z,J,X=!1){if(!Y&&!X)return[];let[z,G]=await Promise.all([DV(Y,X),Promise.resolve(_f(J,Y,X))]),K=z.map((W)=>({type:"file",displayText:W.displayText,description:W.description,path:W.displayText,filename:Pf(W.displayText),score:W.metadata?.score})),Q=Object.values(Z).flat().map((W)=>({type:"mcp_resource",displayText:`${W.server}:${W.uri}`,description:TE(W.description||W.name||W.uri),server:W.server,uri:W.uri,name:W.name||W.uri}));if(!Y)return[...K,...Q,...G].slice(0,W3).map(IE);let V=[...Q,...G],H=[];for(let W of K)H.push({source:W,score:W.score??0.5});if(V.length>0){let D=new vJ(V,{includeScore:!0,threshold:0.6,keys:[{name:"displayText",weight:2},{name:"name",weight:3},{name:"server",weight:1},{name:"description",weight:1},{name:"agentType",weight:3}]}).search(Y,{limit:W3});for(let q of D)H.push({source:q.item,score:q.score??0.5})}return H.sort((W,D)=>W.score-D.score),H.slice(0,W3).map((W)=>W.source).map(IE)}c();var Rf=/^@[\p{L}\p{N}\p{M}_\-./\\()[\]~:]*/u,vE=/^[\p{L}\p{N}\p{M}_\-./\\()[\]~:]+/u,jf=/(@[\p{L}\p{N}\p{M}_\-./\\()[\]~:]*|[\p{L}\p{N}\p{M}_\-./\\()[\]~:]+)$/u,yf=/[\p{L}\p{N}\p{M}_\-./\\()[\]~:]+$/u,kf=/(^|\s)@([\p{L}\p{N}\p{M}_\-./\\()[\]~:]*|"[^"]*"?)$/u,B3=/(^|\s)#([a-z0-9][a-z0-9_-]*)$/;function UV(Y){return typeof Y==="object"&&Y!==null&&"type"in Y&&(Y.type==="directory"||Y.type==="file")}function Jz(Y,Z,J){if(J.length===0)return-1;if(Z<0)return 0;let X=Y[Z];if(!X)return 0;let z=J.findIndex((G)=>G.id===X.id);return z>=0?z:0}function CE(Y){let Z=Y.metadata;return Z?.sessionId?`/resume ${Z.sessionId}`:`/resume ${Y.displayText}`}function SE(Y){if(Y.isQuoted)return Y.token.slice(2).replace(/"$/,"");else if(Y.token.startsWith("@"))return Y.token.substring(1);else return Y.token}function D3(Y){let{displayText:Z,mode:J,hasAtPrefix:X,needsQuotes:z,isQuoted:G,isComplete:K}=Y,Q=K?" ":"";if(G||z)return J==="bash"?`"${Z}"${Q}`:`@"${Z}"${Q}`;else if(X)return J==="bash"?`${Z}${Q}`:`@${Z}${Q}`;else return Z}function U3(Y,Z,J,X,z,G){let V=Z.slice(0,J).lastIndexOf(" ")+1,H;if(G==="variable")H="$"+Y.displayText+" ";else if(G==="command")H=Y.displayText+" ";else H=Y.displayText;let W=Z.slice(0,V)+H+Z.slice(J);X(W),z(V+H.length)}var $E=/(^|\s)@[\w-]*$/;function NV(Y,Z,J,X,z,G){let K=Z.slice(0,J).match(X);if(!K||K.index===void 0)return;let Q=K.index+(K[1]?.length??0),V=Z.slice(0,Q),H=V+Y.displayText+" "+Z.slice(J);z(H),G(V.length+Y.displayText.length+1)}var OV=null;async function bf(Y,Z){try{if(OV)OV.abort();return OV=new AbortController,await iF(Y,Z,OV.signal)}catch{return Z0("tengu_shell_completion_failed",{}),[]}}function fE(Y,Z,J,X,z){let G=z?"/":" ",K=Y.slice(0,J),Q=Y.slice(J+X),V="@"+Z+G;return{newInput:K+V+Q,cursorPos:K.length+V.length}}function N8(Y,Z,J=!1){if(!Y)return null;let X=Y.substring(0,Z);if(J){let H=/@"([^"]*)"?$/,W=X.match(H);if(W&&W.index!==void 0){let q=Y.substring(Z).match(/^[^"]*"?/),U=q?q[0]:"";return{token:W[0]+U,startPos:W.index,isQuoted:!0}}}if(J){let H=X.lastIndexOf("@");if(H>=0&&(H===0||/\s/.test(X[H-1]))){let W=X.substring(H),D=W.match(Rf);if(D&&D[0].length===W.length){let U=Y.substring(Z).match(vE),N=U?U[0]:"";return{token:D[0]+N,startPos:H,isQuoted:!1}}}}let z=J?jf:yf,G=X.match(z);if(!G||G.index===void 0)return null;let Q=Y.substring(Z).match(vE),V=Q?Q[0]:"";return{token:G[0]+V,startPos:G.index,isQuoted:!1}}function If(Y){if(U8(Y)){let Z=Y.indexOf(" ");if(Z===-1)return{commandName:Y.slice(1),args:""};return{commandName:Y.slice(1,Z),args:Y.slice(Z+1)}}return null}function hE(Y,Z){return!Y&&Z.includes(" ")&&!Z.endsWith(" ")}function oE({commands:Y,onInputChange:Z,onSubmit:J,setCursorOffset:X,input:z,cursorOffset:G,mode:K,agents:Q,setSuggestionsState:V,suggestionsState:{suggestions:H,selectedSuggestion:W,commandArgumentHint:D},suppressSuggestions:q=!1,markAccepted:U,onModeChange:N,promptSuggestionGhost:L,onDismissPromptSuggestion:F}){let P=L?.fullText,w=L?.remainder,{addNotification:_}=JZ(),A=MY("chat:thinkingToggle","Chat","alt+t"),[j,y]=MZ.useState("none"),b=MZ.useMemo(()=>{let m=Y.filter((z0)=>!z0.isHidden);if(m.length===0)return;return Math.max(...m.map((z0)=>GY(z0).length))+6},[Y]),[R,k]=MZ.useState(void 0),f=t((m)=>m.mcp.resources),$=pZ(),v=t((m)=>m.promptSuggestion),T=t((m)=>!!m.viewingAgentTaskId),h=sz(),[u,C]=MZ.useState(void 0),a=MZ.useMemo(()=>{if(K!=="prompt"||q)return;let m=VV(z,G);if(!m)return;let D0=K3(m.partialCommand,Y);if(!D0)return;return{text:D0.suffix,fullCommand:D0.fullCommand,insertPosition:m.startPos+1+m.partialCommand.length}},[z,G,K,Y,q]),o=MZ.useMemo(()=>{if(K!=="prompt"||q)return;if(!P||!w)return;if(G!==z.length)return;return{text:w,fullCommand:P,insertPosition:z.length}},[K,q,P,w,G,z.length]),Y0=q?void 0:K==="prompt"?a??o:u,d=MZ.useRef(G);d.current=G;let p=MZ.useRef(null),K0=MZ.useRef(""),G0=MZ.useRef(""),J0=MZ.useRef(""),P0=MZ.useRef(""),M0=MZ.useRef(H);M0.current=H;let I0=MZ.useRef(null),q0=MZ.useCallback(()=>{V(()=>({commandArgumentHint:void 0,suggestions:[],selectedSuggestion:-1})),y("none"),k(void 0),C(void 0)},[V]),X0=MZ.useCallback(async(m,D0=!1)=>{p.current=m;let z0=await q3(m,f,Q,D0);if(p.current!==m)return;if(z0.length===0){V(()=>({commandArgumentHint:void 0,suggestions:[],selectedSuggestion:-1})),y("none"),k(void 0);return}V((C0)=>({commandArgumentHint:void 0,suggestions:z0,selectedSuggestion:Jz(C0.suggestions,C0.selectedSuggestion,z0)})),y(z0.length>0?"file":"none"),k(void 0)},[f,V,y,k,Q]);MZ.useEffect(()=>{return iE(),lE(()=>{let m=p.current;if(m!==null)p.current=null,X0(m,m==="")})},[X0]);let H0=N3(X0,50),j0=MZ.useCallback(async(m)=>{P0.current=m;let D0=await bE($.getState().mcp.clients,m);if(P0.current!==m)return;V((z0)=>({commandArgumentHint:void 0,suggestions:D0,selectedSuggestion:Jz(z0.suggestions,z0.selectedSuggestion,D0)})),y(D0.length>0?"slack-channel":"none"),k(void 0)},[V]),V0=N3(j0,150),l=MZ.useCallback(async(m,D0)=>{let z0=D0??d.current;if(q){H0.cancel(),q0();return}if(K==="prompt"){let y0=VV(m,z0);if(y0){if(K3(y0.partialCommand,Y)){V(()=>({commandArgumentHint:void 0,suggestions:[],selectedSuggestion:-1})),y("none"),k(void 0);return}}}if(K==="bash"&&m.trim()){J0.current=m;let y0=await _E(m);if(J0.current!==m)return;if(y0){C({text:y0.suffix,fullCommand:y0.fullCommand,insertPosition:m.length}),V(()=>({commandArgumentHint:void 0,suggestions:[],selectedSuggestion:-1})),y("none"),k(void 0);return}else C(void 0)}let C0=K!=="bash"?m.substring(0,z0).match(/(^|\s)@([\w-]*)$/):null;if(C0){let y0=(C0[2]??"").toLowerCase(),o0=$.getState(),g0=[],x0=new Set;if($Z()&&o0.teamContext)for(let f0 of Object.values(o0.teamContext.teammates??{})){if(f0.name===FV)continue;if(!f0.name.toLowerCase().startsWith(y0))continue;x0.add(f0.name),g0.push({id:`dm-${f0.name}`,displayText:`@${f0.name}`,description:"send message"})}for(let[f0,t0]of o0.agentNameRegistry){if(x0.has(f0))continue;if(!f0.toLowerCase().startsWith(y0))continue;let m0=o0.tasks[t0]?.status;g0.push({id:`dm-${f0}`,displayText:`@${f0}`,description:m0?`send message · ${m0}`:"send message"})}if(g0.length>0){H0.cancel(),V((f0)=>({commandArgumentHint:void 0,suggestions:g0,selectedSuggestion:Jz(f0.suggestions,f0.selectedSuggestion,g0)})),y("agent"),k(void 0);return}}if(K==="prompt"){let y0=m.substring(0,z0).match(B3);if(y0&&qV($.getState().mcp.clients)){V0(y0[2]);return}else if(j==="slack-channel")V0.cancel(),q0()}let h0=m.substring(0,z0).match(kf),wZ=z0===m.length&&z0>0&&m.length>0&&m[z0-1]===" ";if(K==="prompt"&&U8(m)&&z0>0){let y0=If(m);if(y0&&y0.commandName==="add-dir"&&y0.args){let{args:o0}=y0;if(o0.match(/\s+$/)){H0.cancel(),q0();return}let g0=await uE(o0);if(g0.length>0){V((x0)=>({suggestions:g0,selectedSuggestion:Jz(x0.suggestions,x0.selectedSuggestion,g0),commandArgumentHint:void 0})),y("directory");return}H0.cancel(),q0();return}if(y0&&y0.commandName==="resume"&&y0.args!==void 0&&m.includes(" ")){let{args:o0}=y0,x0=(await nE(o0,{limit:10})).map((f0)=>{let t0=aE(f0);return{id:`resume-title-${t0}`,displayText:f0.customTitle,description:xE(f0),metadata:{sessionId:t0}}});if(x0.length>0){V((f0)=>({suggestions:x0,selectedSuggestion:Jz(f0.suggestions,f0.selectedSuggestion,x0),commandArgumentHint:void 0})),y("custom-title");return}q0();return}}if(K==="prompt"&&U8(m)&&z0>0&&!hE(wZ,m)){let y0=void 0;if(m.length>1){let g0=m.indexOf(" "),x0=g0===-1?m.slice(1):m.slice(1,g0),f0=g0!==-1&&m.slice(g0+1).trim().length>0,t0=g0!==-1&&m.length===g0+1;if(g0!==-1){let m0=Y.find((VZ)=>GY(VZ)===x0);if(m0||f0){if(m0?.argumentHint&&t0)y0=m0.argumentHint;else if(m0?.type==="prompt"&&m0.argNames?.length&&m.endsWith(" ")){let VZ=m.slice(g0+1),yZ=mE(VZ);y0=cE(m0.argNames,yZ)}V(()=>({commandArgumentHint:y0,suggestions:[],selectedSuggestion:-1})),y("none"),k(void 0);return}}}let o0=Q3(m,Y);if(V(()=>({commandArgumentHint:y0,suggestions:o0,selectedSuggestion:o0.length>0?0:-1})),y(o0.length>0?"command":"none"),o0.length>0)k(b);return}if(j==="command")H0.cancel(),q0();else if(U8(m)&&hE(wZ,m))V((y0)=>y0.commandArgumentHint?{...y0,commandArgumentHint:void 0}:y0);if(j==="custom-title")q0();if(j==="agent"&&M0.current.some((y0)=>y0.id?.startsWith("dm-"))){if(!m.substring(0,z0).match(/(^|\s)@([\w-]*)$/))q0()}if(h0&&K!=="bash"){let y0=N8(m,z0,!0);if(y0&&y0.token.startsWith("@")){let o0=SE(y0);if(pE(o0)){G0.current=o0;let g0=await dE(o0,{maxResults:10});if(G0.current!==o0)return;if(g0.length>0){V((x0)=>({suggestions:g0,selectedSuggestion:Jz(x0.suggestions,x0.selectedSuggestion,g0),commandArgumentHint:void 0})),y("directory");return}}if(p.current===o0)return;H0(o0,!0);return}}if(j==="file"){let y0=N8(m,z0,!0);if(y0){let o0=SE(y0);if(p.current===o0)return;H0(o0,!1)}else H0.cancel(),q0()}if(j==="shell"){let y0=M0.current[0]?.metadata?.inputSnapshot;if(K!=="bash"||m!==y0)H0.cancel(),q0()}},[j,Y,V,q0,H0,V0,K,q,b]);MZ.useEffect(()=>{if(I0.current===z)return;if(K0.current!==z)K0.current=z,p.current=null;I0.current=null,l(z)},[z,l]);let L0=MZ.useCallback(async()=>{if(Y0){if(K==="bash"){Z(Y0.fullCommand),X(Y0.fullCommand.length),C(void 0);return}if(P&&Y0.fullCommand===P){U(),Z(P),X(P.length);return}let m=VV(z,G);if(m){let D0=z.slice(0,m.startPos),z0=z.slice(m.startPos+m.token.length),C0=D0+"/"+Y0.fullCommand+" "+z0,h0=m.startPos+1+Y0.fullCommand.length+1;Z(C0),X(h0);return}}if(H.length>0){H0.cancel(),V0.cancel();let m=W===-1?0:W,D0=H[m];if(j==="command"&&m<H.length){if(D0)V3(D0,!1,Y,Z,X,J),q0()}else if(j==="custom-title"&&H.length>0){if(D0){let z0=CE(D0);Z(z0),X(z0.length),q0()}}else if(j==="directory"&&H.length>0){let z0=H[m];if(z0){let C0=U8(z),h0;if(C0){let wZ=z.indexOf(" "),y0=z.slice(0,wZ+1),o0=UV(z0.metadata)&&z0.metadata.type==="directory"?"/":" ";if(h0=y0+z0.id+o0,Z(h0),X(h0.length),UV(z0.metadata)&&z0.metadata.type==="directory")V((g0)=>({...g0,commandArgumentHint:void 0})),l(h0,h0.length);else q0()}else{let y0=N8(z,G,!0)??N8(z,G,!1);if(y0){let o0=UV(z0.metadata)&&z0.metadata.type==="directory",g0=fE(z,z0.id,y0.startPos,y0.token.length,o0);if(h0=g0.newInput,Z(h0),X(g0.cursorPos),o0)V((x0)=>({...x0,commandArgumentHint:void 0})),l(h0,g0.cursorPos);else q0()}else q0()}}}else if(j==="shell"&&H.length>0){let z0=H[m];if(z0){let C0=z0.metadata;U3(z0,z,G,Z,X,C0?.completionType),q0()}}else if(j==="agent"&&H.length>0&&H[m]?.id?.startsWith("dm-")){let z0=H[m];if(z0)NV(z0,z,G,$E,Z,X),q0()}else if(j==="slack-channel"&&H.length>0){let z0=H[m];if(z0)NV(z0,z,G,B3,Z,X),q0()}else if(j==="file"&&H.length>0){let z0=N8(z,G,!0);if(!z0){q0();return}let C0=rE(H),h0=z0.token.startsWith("@"),wZ;if(z0.isQuoted)wZ=z0.token.slice(2).replace(/"$/,"").length;else if(h0)wZ=z0.token.length-1;else wZ=z0.token.length;if(C0.length>wZ){let y0=D3({displayText:C0,mode:K,hasAtPrefix:h0,needsQuotes:!1,isQuoted:z0.isQuoted,isComplete:!1});LV(y0,z,z0.token,z0.startPos,Z,X),l(z.replace(z0.token,y0),G)}else if(m<H.length){let y0=H[m];if(y0){let o0=y0.displayText.includes(" "),g0=D3({displayText:y0.displayText,mode:K,hasAtPrefix:h0,needsQuotes:o0,isQuoted:z0.isQuoted,isComplete:!0});LV(g0,z,z0.token,z0.startPos,Z,X),q0()}}}}else if(z.trim()!==""){let m,D0;if(K==="bash"){m="shell";let z0=await bf(z,G);if(z0.length===1){let C0=z0[0];if(C0){let h0=C0.metadata;U3(C0,z,G,Z,X,h0?.completionType)}D0=[]}else D0=z0}else{m="file";let z0=N8(z,G,!0);if(z0){let C0=z0.token.startsWith("@"),h0=C0?z0.token.substring(1):z0.token;D0=await q3(h0,f,Q,C0)}else D0=[]}if(D0.length>0)V((z0)=>({commandArgumentHint:void 0,suggestions:D0,selectedSuggestion:Jz(z0.suggestions,z0.selectedSuggestion,D0)})),y(m),k(void 0)}},[H,W,z,j,Y,K,Z,X,J,q0,G,l,f,V,Q,H0,V0,Y0,P,U]),F0=MZ.useCallback(()=>{if(W<0||H.length===0)return;let m=H[W];if(j==="command"&&W<H.length){if(m)V3(m,!0,Y,Z,X,J),H0.cancel(),q0()}else if(j==="custom-title"&&W<H.length){if(m){let D0=CE(m);Z(D0),X(D0.length),J(D0,!0),H0.cancel(),q0()}}else if(j==="shell"&&W<H.length){let D0=H[W];if(D0){let z0=D0.metadata;U3(D0,z,G,Z,X,z0?.completionType),H0.cancel(),q0()}}else if(j==="agent"&&W<H.length&&m?.id?.startsWith("dm-"))NV(m,z,G,$E,Z,X),H0.cancel(),q0();else if(j==="slack-channel"&&W<H.length){if(m)NV(m,z,G,B3,Z,X),V0.cancel(),q0()}else if(j==="file"&&W<H.length){let D0=N8(z,G,!0);if(D0){if(m){let z0=D0.token.startsWith("@"),C0=m.displayText.includes(" "),h0=D3({displayText:m.displayText,mode:K,hasAtPrefix:z0,needsQuotes:C0,isQuoted:D0.isQuoted,isComplete:!0});LV(h0,z,D0.token,D0.startPos,Z,X),H0.cancel(),q0()}}}else if(j==="directory"&&W<H.length){if(m){if(U8(z)){H0.cancel(),q0();return}let z0=N8(z,G,!0)??N8(z,G,!1);if(z0){let C0=UV(m.metadata)&&m.metadata.type==="directory",h0=fE(z,m.id,z0.startPos,z0.token.length,C0);Z(h0.newInput),X(h0.cursorPos)}H0.cancel(),q0()}}},[H,W,j,Y,z,G,K,Z,X,J,q0,H0,V0]),$0=MZ.useCallback(()=>{L0()},[L0]),LZ=MZ.useCallback(()=>{if(H0.cancel(),V0.cancel(),q0(),P&&F)F();I0.current=z},[H0,V0,q0,z,P,F]),n=MZ.useCallback(()=>{V((m)=>({...m,selectedSuggestion:m.suggestions.length===0?-1:m.selectedSuggestion<=0?m.suggestions.length-1:Math.min(m.selectedSuggestion-1,m.suggestions.length-1)}))},[V]),W0=MZ.useCallback(()=>{V((m)=>({...m,selectedSuggestion:m.suggestions.length===0?-1:m.selectedSuggestion>=m.suggestions.length-1?0:Math.max(0,m.selectedSuggestion+1)}))},[V]),B0=MZ.useMemo(()=>({"autocomplete:accept":$0,"autocomplete:dismiss":LZ,"autocomplete:previous":n,"autocomplete:next":W0}),[$0,LZ,n,W0]),w0=H.length>0||!!Y0,S0=tz();mY("autocomplete",w0),gE("Autocomplete",w0),uZ(B0,{context:"Autocomplete",isActive:w0&&!S0});function b0(m){let D0=LJ(m);if(D0!=="prompt"&&N){N(D0);let z0=TJ(m);Z(z0),X(z0.length)}else Z(m),X(m.length)}let U0=(m)=>{if(m.key==="right"&&!T){let{text:z0,shownAt:C0}=v;if(z0&&C0>0&&z===""){U(),b0(z0),m.stopImmediatePropagation();return}}if(m.key==="tab"&&!m.shift){if(H.length>0||Y0)return;let{text:z0,shownAt:C0}=v;if(z0&&C0>0&&z===""&&!T){m.preventDefault(),U(),b0(z0);return}if(z.trim()==="")m.preventDefault(),_({key:"thinking-toggle-hint",jsx:E(O,{dimColor:!0,children:["Use ",A," to toggle thinking"]}),priority:"immediate",timeoutMs:3000});return}if(H.length===0)return;let D0=h?.pendingChord!=null;if(m.ctrl&&m.key==="n"&&!D0){m.preventDefault(),W0();return}if(m.ctrl&&m.key==="p"&&!D0){m.preventDefault(),n();return}if(m.key==="return"&&!m.shift&&!m.meta)m.preventDefault(),F0()};return lZ((m,D0,z0)=>{let C0=new x7(z0.keypress);if(U0(C0),C0.didStopImmediatePropagation())z0.stopImmediatePropagation()}),{suggestions:H,selectedSuggestion:W,suggestionType:j,maxColumnWidth:R,commandArgumentHint:D,inlineGhostText:Y0,handleKeyDown:U0}}PX();N0();GW();OQ();YY();Yg();uH();l3();Z7();XK();Z1();c7();G8();oz();dV();bZ();BZ();function sE(Y){let Z=Y.match(/^@([\w-]+)\s+(.+)$/s);if(!Z)return null;let[,J,X]=Z;if(!J||!X)return null;let z=X.trim();if(!z)return null;return{recipientName:J,message:z}}async function tE(Y,Z,J,X){if(!J||!X)return{success:!1,error:"no_team_context"};if(!Object.values(J.teammates??{}).find((G)=>G.name===Y))return{success:!1,error:"unknown_recipient",recipientName:Y};return await X(Y,{from:"user",text:Z,timestamp:new Date().toISOString()},J.teamName),{success:!0,recipientName:Y}}z9();yJ();Kg();Iw();x8();import{existsSync as Tf}from"fs";import{isAbsolute as vf}from"path";var Cf=/\.(png|jpe?g|gif|webp)$/i;function eE(Y){let Z=Y.split(/ (?=\/|[A-Za-z]:\\)/).flatMap((X)=>X.split(`
|
|
65
|
+
`)).map((X)=>X.trim()).filter(Boolean);if(Z.length===0)return[];let J=[];for(let X of Z){let z=X;if(z.startsWith('"')&&z.endsWith('"')||z.startsWith("'")&&z.endsWith("'"))z=z.slice(1,-1);if(process.platform!=="win32")z=z.replace(/\\(.)/g,"$1");if(Cf.test(z))return[];if(!vf(z))return[];if(!Tf(z))return[];J.push(z)}return J}Jg();SW();var O3={"†":"alt+t",π:"alt+p",ø:"alt+o"};function Z2(Y){return Y in O3}rZ();_X();sO();BZ();g9();function Y2(Y){{let Z=k7(),J=!!Y.isAutoModeAvailable&&Z;if(!J)g(`[auto-mode] canCycleToAuto=false: ctx.isAutoModeAvailable=${Y.isAutoModeAvailable} isAutoModeGateEnabled=${Z} reason=${_V()}`);return J}return!1}function Xz(Y,Z){switch(Y.mode){case"default":return"acceptEdits";case"acceptEdits":return"plan";case"plan":if(Y.isBypassPermissionsModeAvailable)return"bypassPermissions";if(Y2(Y))return"auto";return"default";case"bypassPermissions":if(Y2(Y))return"auto";return"default";case"dontAsk":return"default";default:return"default"}}function J2(Y,Z){let J=Xz(Y,Z);return{nextMode:J,context:wV(Y.mode,J,Y)}}g9();jQ();Z5();n9();zg();aK();Kz();Y8();d3();gV();BF();xw();Sf();AZ();RW();xQ();DX();N0();YY();YZ();bZ();ZH();QK();c();var W2=x(v0(),1),zz=x(Q0(),1);import{basename as $f}from"path";function H2(Y){let Z=W2.c(87),{onDone:J}=Y;mY("bridge-dialog");let X=t(tf),z=t(sf),G=t(of),K=t(nf),Q=t(af),V=t(rf),H=t(lf),W=t(df),D=t(pf),q=t(uf),U=n0(),[N,L]=zz.useState(!1),[F,P]=zz.useState(""),[w,_]=zz.useState(""),A;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))A=$f(QY()),Z[0]=A;else A=Z[0];let j=A,y,b;if(Z[1]===Symbol.for("react.memo_cache_sentinel"))y=()=>{R7().then(_).catch(cf)},b=[],Z[1]=y,Z[2]=b;else y=Z[1],b=Z[2];zz.useEffect(y,b);let R=z?Q:K,k,f;if(Z[3]!==R||Z[4]!==N)k=()=>{if(!N||!R){P("");return}V2(R,{type:"utf8",errorCorrectionLevel:"L",small:!0}).then(P).catch(()=>P(""))},f=[N,R],Z[3]=R,Z[4]=N,Z[5]=k,Z[6]=f;else k=Z[5],f=Z[6];zz.useEffect(k,f);let $;if(Z[7]===Symbol.for("react.memo_cache_sentinel"))$=()=>{L(mf)},Z[7]=$;else $=Z[7];let v;if(Z[8]!==J)v={"confirm:yes":J,"confirm:toggle":$},Z[8]=J,Z[9]=v;else v=Z[9];let T;if(Z[10]===Symbol.for("react.memo_cache_sentinel"))T={context:"Confirmation"},Z[10]=T;else T=Z[10];uZ(v,T);let h;if(Z[11]!==H||Z[12]!==J||Z[13]!==U)h=(l)=>{if(l==="d"){if(H)HZ(gf);U(xf),J()}},Z[11]=H,Z[12]=J,Z[13]=U,Z[14]=h;else h=Z[14];lZ(h);let u;if(Z[15]!==X||Z[16]!==V||Z[17]!==G||Z[18]!==z)u=AV({error:V,connected:X,sessionActive:z,reconnecting:G}),Z[15]=X,Z[16]=V,Z[17]=G,Z[18]=z,Z[19]=u;else u=Z[19];let{label:C,color:a}=u,o=V?z2:X2,Y0,d,p,K0,G0,J0,P0,M0,I0,q0;if(Z[20]!==w||Z[21]!==R||Z[22]!==W||Z[23]!==V||Z[24]!==o||Z[25]!==J||Z[26]!==F||Z[27]!==z||Z[28]!==D||Z[29]!==N||Z[30]!==a||Z[31]!==C||Z[32]!==q){let l=F?F.split(`
|
|
66
|
+
`).filter(hf):[],L0;if(Z[43]!==w){if(L0=[],j)L0.push(j);if(w)L0.push(w);Z[43]=w,Z[44]=L0}else L0=Z[44];let F0=L0.length>0?" · "+L0.join(" · "):"",$0;if(Z[45]!==R||Z[46]!==V||Z[47]!==z)$0=V?Q2:R?z?K2(R):G2(R):void 0,Z[45]=R,Z[46]=V,Z[47]=z,Z[48]=$0;else $0=Z[48];p=$0,d=BJ,M0="Remote Control",I0=J,q0=!0,Y0=M,K0="column",G0=1;let LZ;if(Z[49]!==o||Z[50]!==a||Z[51]!==C)LZ=E(O,{color:a,children:[o," ",C]}),Z[49]=o,Z[50]=a,Z[51]=C,Z[52]=LZ;else LZ=Z[52];let n;if(Z[53]!==F0)n=B(O,{dimColor:!0,children:F0}),Z[53]=F0,Z[54]=n;else n=Z[54];let W0;if(Z[55]!==LZ||Z[56]!==n)W0=E(O,{children:[LZ,n]}),Z[55]=LZ,Z[56]=n,Z[57]=W0;else W0=Z[57];let B0;if(Z[58]!==V)B0=V&&B(O,{color:"error",children:V}),Z[58]=V,Z[59]=B0;else B0=Z[59];let w0;if(Z[60]!==W||Z[61]!==q)w0=q&&W&&E(O,{dimColor:!0,children:["Environment: ",W]}),Z[60]=W,Z[61]=q,Z[62]=w0;else w0=Z[62];let S0;if(Z[63]!==D||Z[64]!==q)S0=q&&D&&E(O,{dimColor:!0,children:["Session: ",D]}),Z[63]=D,Z[64]=q,Z[65]=S0;else S0=Z[65];if(Z[66]!==W0||Z[67]!==B0||Z[68]!==w0||Z[69]!==S0)J0=E(M,{flexDirection:"column",children:[W0,B0,w0,S0]}),Z[66]=W0,Z[67]=B0,Z[68]=w0,Z[69]=S0,Z[70]=J0;else J0=Z[70];P0=N&&l.length>0&&B(M,{flexDirection:"column",children:l.map(ff)}),Z[20]=w,Z[21]=R,Z[22]=W,Z[23]=V,Z[24]=o,Z[25]=J,Z[26]=F,Z[27]=z,Z[28]=D,Z[29]=N,Z[30]=a,Z[31]=C,Z[32]=q,Z[33]=Y0,Z[34]=d,Z[35]=p,Z[36]=K0,Z[37]=G0,Z[38]=J0,Z[39]=P0,Z[40]=M0,Z[41]=I0,Z[42]=q0}else Y0=Z[33],d=Z[34],p=Z[35],K0=Z[36],G0=Z[37],J0=Z[38],P0=Z[39],M0=Z[40],I0=Z[41],q0=Z[42];let X0;if(Z[71]!==p)X0=p&&B(O,{dimColor:!0,children:p}),Z[71]=p,Z[72]=X0;else X0=Z[72];let H0;if(Z[73]===Symbol.for("react.memo_cache_sentinel"))H0=B(O,{dimColor:!0,children:"d to disconnect · space for QR code · Enter/Esc to close"}),Z[73]=H0;else H0=Z[73];let j0;if(Z[74]!==Y0||Z[75]!==K0||Z[76]!==G0||Z[77]!==J0||Z[78]!==P0||Z[79]!==X0)j0=E(Y0,{flexDirection:K0,gap:G0,children:[J0,P0,X0,H0]}),Z[74]=Y0,Z[75]=K0,Z[76]=G0,Z[77]=J0,Z[78]=P0,Z[79]=X0,Z[80]=j0;else j0=Z[80];let V0;if(Z[81]!==d||Z[82]!==M0||Z[83]!==I0||Z[84]!==q0||Z[85]!==j0)V0=B(d,{title:M0,onCancel:I0,hideInputGuide:q0,children:j0}),Z[81]=d,Z[82]=M0,Z[83]=I0,Z[84]=q0,Z[85]=j0,Z[86]=V0;else V0=Z[86];return V0}function ff(Y,Z){return B(O,{children:Y},Z)}function hf(Y){return Y.length>0}function xf(Y){if(!Y.replBridgeEnabled)return Y;return{...Y,replBridgeEnabled:!1}}function gf(Y){if(Y.remoteControlAtStartup===!1)return Y;return{...Y,remoteControlAtStartup:!1}}function mf(Y){return!Y}function cf(){}function uf(Y){return Y.verbose}function pf(Y){return Y.replBridgeSessionId}function df(Y){return Y.replBridgeEnvironmentId}function lf(Y){return Y.replBridgeExplicit}function rf(Y){return Y.replBridgeError}function af(Y){return Y.replBridgeSessionUrl}function nf(Y){return Y.replBridgeConnectUrl}function of(Y){return Y.replBridgeReconnecting}function sf(Y){return Y.replBridgeSessionActive}function tf(Y){return Y.replBridgeConnected}NK();var Zh=x(v0(),1);xQ();PY();PX();N0();YZ();Z7();LQ();vY();ef();MV();c();var RV=x(Q0(),1);function F3(Y){return Object.values(Y).filter((Z)=>q2(Z)&&Z.evictAfter!==0).sort((Z,J)=>Z.startTime-J.startTime)}function jV(){let Y=t(Yh),Z;return Z=0,Z}function Yh(Y){return Y.tasks}o3();Wg();FK();N0();D2();O2();F2();vY();TD();PQ();xH();c();var p7=x(Q0(),1),Jh=2000;function Xh(){let Y=kV();if(!Y)return!1;let Z=N2(CQ(),{githubNativeAnthropic:U2(),openAiBaseUrl:Y.baseUrl});return Z!=="copilot"&&Z!=="ollama"&&Z!=="self-hosted"}function B2(){let Y=L2();return{input:yX(),output:yV(),cacheRead:Y.read,cacheCreation:Y.created,supportsCache:Xh(),cost:u7()}}function zh(Y,Z){return Y.input===Z.input&&Y.output===Z.output&&Y.cacheRead===Z.cacheRead&&Y.cacheCreation===Z.cacheCreation&&Y.supportsCache===Z.supportsCache&&Y.cost===Z.cost}function P2({messages:Y}={}){let[Z,J]=p7.useState(()=>B2()),X=p7.useRef(null);if(p7.useEffect(()=>{let D=setInterval(()=>{J((q)=>{let U=B2();return zh(q,U)?q:U})},Jh);return()=>clearInterval(D)},[]),Z.input+Z.output+Z.cacheRead+Z.cacheCreation>0)X.current=Z;else if(X.current)X.current=null;let G=X.current;if(!G)return null;let K=Y?bV(Y):null,Q=K?K.input_tokens+K.output_tokens+K.cache_creation_input_tokens+K.cache_read_input_tokens:0,V=[];if(Q>0)V.push(`ctx: ${UX(Q)}`);if(G.supportsCache){if(G.cacheCreation>0)V.push(`wrt: ${UX(G.cacheCreation)}`);if(G.cacheRead>0)V.push(`rd: ${UX(G.cacheRead)}`)}else V.push(`in: ${UX(G.input)}`),V.push(`out: ${UX(G.output)}`);let H=G.cost>0?E2(G.cost):null,W=c8();return E(M,{children:[E(O,{dimColor:!0,wrap:"truncate",children:[V.join(" · "),H?" │ ":""]}),H?B(O,{color:W.claude,children:H}):null]})}N0();KW();bZ();Gh();_X();var TV=x(Q0(),1);PQ();rZ();yJ();c();function w2(){let Y;try{Y=A2()}catch(J){return u0(Error(`ProviderModelIndicator: failed to resolve active provider profile: ${L8(J).message}`)),null}if(!Y)return null;let Z="";try{Z=K9()||Y.model||""}catch(J){u0(Error(`ProviderModelIndicator: failed to resolve main loop model, falling back to profile model: ${L8(J).message}`)),Z=Y.model||""}return{provider:Y.name||Y.provider,model:Z?IV(Z):""}}function Kh(Y,Z){if(Y===Z)return!0;if(!Y||!Z)return!1;return Y.provider===Z.provider&&Y.model===Z.model}function M2(){let[Y]=SZ(),[Z,J]=TV.useState(()=>w2());if(TV.useEffect(()=>{let Q=()=>{J((W)=>{let D=w2();return Kh(W,D)?W:D})},V=_2(Q),H=setInterval(Q,1500);return()=>{V(),clearInterval(H)}},[]),!Z)return null;let X=c8(Y),z=xO(Z.provider,X),G=Z.model?gO(Z.model,X):"",K=G?`${z}${G}`:z;return B(M,{children:B(O,{wrap:"truncate",children:K})})}DX();PY();N0();DZ();HJ();m9();vY();var S2=x(v0(),1),FJ=x(Q0(),1);import{resolve as k2}from"path";N0();c();function pK(Y,Z){if(!Z)return Y;let J=Z.toLowerCase(),X=Y.toLowerCase(),z=[],G=0,K=X.indexOf(J,G);if(K===-1)return Y;while(K!==-1){if(K>G)z.push(Y.slice(G,K));z.push(B(O,{inverse:!0,children:Y.slice(K,K+Z.length)},K)),G=K+Z.length,K=X.indexOf(J,G)}if(G<Y.length)z.push(Y.slice(G));return B(A0,{children:z})}L5();T2();Nh();MD();PY();Qh();N0();Wh();fQ();l8();Vh();dW();c();var y2=x(v0(),1),d7=x(Q0(),1),Hh=8,qh=10,Bh=2;function l7({title:Y,placeholder:Z="Type to search…",initialQuery:J,items:X,getKey:z,renderItem:G,renderPreview:K,previewPosition:Q="bottom",visibleCount:V=Hh,direction:H="down",onQueryChange:W,onSelect:D,onTab:q,onShiftTab:U,onFocus:N,onCancel:L,emptyMessage:F="No results",matchLabel:P,selectAction:w="select",extraHints:_}){let A=qX(),{rows:j,columns:y}=PZ(),[b,R]=d7.useState(0),k=Math.max(Bh,Math.min(V,j-qh-(P?1:0))),f=y<120,$=(J0)=>{R((P0)=>vV(P0+J0,0,X.length-1))},{query:v,cursorOffset:T}=yQ({isActive:!0,onExit:()=>{},onCancel:L,initialQuery:J,backspaceExitsOnEmpty:!1}),h=(J0)=>{if(J0.key==="up"||J0.ctrl&&J0.key==="p"){J0.preventDefault(),J0.stopImmediatePropagation(),$(H==="up"?1:-1);return}if(J0.key==="down"||J0.ctrl&&J0.key==="n"){J0.preventDefault(),J0.stopImmediatePropagation(),$(H==="up"?-1:1);return}if(J0.key==="return"){J0.preventDefault(),J0.stopImmediatePropagation();let P0=X[b];if(P0)D(P0);return}if(J0.key==="tab"){J0.preventDefault(),J0.stopImmediatePropagation();let P0=X[b];if(!P0)return;let M0=J0.shift?U??q:q;if(M0)M0.handler(P0);else D(P0)}};d7.useEffect(()=>{W(v),R(0)},[v]),d7.useEffect(()=>{R((J0)=>vV(J0,0,X.length-1))},[X.length]);let u=X[b];d7.useEffect(()=>{N?.(u)},[u]);let C=vV(b-k+1,0,X.length-k),a=X.slice(C,C+k),o=typeof F==="function"?F(v):F,Y0=B(j2,{query:v,cursorOffset:T,placeholder:Z,isFocused:!0,isTerminalFocused:A}),d=B(Dh,{visible:a,windowStart:C,visibleCount:k,total:X.length,focusedIndex:b,direction:H,getKey:z,renderItem:G,emptyText:o}),p=K&&u?B(M,{flexDirection:"column",flexGrow:1,children:K(u)}):null,K0=K&&Q==="right"?E(M,{flexDirection:"row",gap:2,height:k+(P?1:0),children:[E(M,{flexDirection:"column",flexShrink:0,children:[d,P&&B(O,{dimColor:!0,children:P})]}),p??B(M,{flexGrow:1})]}):E(M,{flexDirection:"column",children:[d,P&&B(O,{dimColor:!0,children:P}),p]}),G0=H!=="up";return B(P7,{color:"permission",children:E(M,{flexDirection:"column",gap:1,tabIndex:0,autoFocus:!0,onKeyDown:h,children:[B(O,{bold:!0,color:"permission",children:Y}),G0&&Y0,K0,!G0&&Y0,B(O,{dimColor:!0,children:E(UJ,{children:[B(FZ,{shortcut:"↑/↓",action:f?"nav":"navigate"}),B(FZ,{shortcut:"Enter",action:f?Uh(w):w}),q&&B(FZ,{shortcut:"Tab",action:q.action}),U&&!f&&B(FZ,{shortcut:"shift+tab",action:U.action}),B(FZ,{shortcut:"Esc",action:"cancel"}),_]})})]})})}function Dh(Y){let Z=y2.c(27),{visible:J,windowStart:X,visibleCount:z,total:G,focusedIndex:K,direction:Q,getKey:V,renderItem:H,emptyText:W}=Y;if(J.length===0){let L;if(Z[0]!==W)L=B(O,{dimColor:!0,children:W}),Z[0]=W,Z[1]=L;else L=Z[1];let F;if(Z[2]!==L||Z[3]!==z)F=B(M,{height:z,flexShrink:0,children:L}),Z[2]=L,Z[3]=z,Z[4]=F;else F=Z[4];return F}let D;if(Z[5]!==Q||Z[6]!==K||Z[7]!==V||Z[8]!==H||Z[9]!==G||Z[10]!==J||Z[11]!==z||Z[12]!==X){let L;if(Z[14]!==Q||Z[15]!==K||Z[16]!==V||Z[17]!==H||Z[18]!==G||Z[19]!==J.length||Z[20]!==z||Z[21]!==X)L=(F,P)=>{let _=X+P===K,A=P===0&&X>0,j=P===J.length-1&&X+z<G;return B(R2,{isFocused:_,showScrollUp:Q==="up"?j:A,showScrollDown:Q==="up"?A:j,styled:!1,children:H(F,_)},V(F))},Z[14]=Q,Z[15]=K,Z[16]=V,Z[17]=H,Z[18]=G,Z[19]=J.length,Z[20]=z,Z[21]=X,Z[22]=L;else L=Z[22];D=J.map(L),Z[5]=Q,Z[6]=K,Z[7]=V,Z[8]=H,Z[9]=G,Z[10]=J,Z[11]=z,Z[12]=X,Z[13]=D}else D=Z[13];let q=D,U=Q==="up"?"column-reverse":"column",N;if(Z[23]!==q||Z[24]!==U||Z[25]!==z)N=B(M,{height:z,flexShrink:0,flexDirection:U,children:q}),Z[23]=q,Z[24]=U,Z[25]=z,Z[26]=N;else N=Z[26];return N}function Uh(Y){let Z=Y.indexOf(" ");return Z===-1?Y:Y.slice(0,Z)}C2();c();var Oh=12,Lh=100,b2=4,Fh=10,E3=500;function $2(Y){let Z=S2.c(40),{onDone:J,onInsert:X}=Y;mY("global-search");let{columns:z,rows:G}=PZ(),K=z>=140,Q=Math.min(Oh,Math.max(4,G-14)),V;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))V=[],Z[0]=V;else V=Z[0];let[H,W]=FJ.useState(V),[D,q]=FJ.useState(!1),[U,N]=FJ.useState(!1),[L,F]=FJ.useState(""),[P,w]=FJ.useState(void 0),[_,A]=FJ.useState(null),j=FJ.useRef(null),y=FJ.useRef(null),b,R;if(Z[1]===Symbol.for("react.memo_cache_sentinel"))b=()=>()=>{if(y.current)clearTimeout(y.current);j.current?.abort()},R=[],Z[1]=b,Z[2]=R;else b=Z[1],R=Z[2];FJ.useEffect(b,R);let k,f;if(Z[3]!==P)k=()=>{if(!P){A(null);return}let X0=new AbortController,H0=k2(mZ(),P.file),j0=Math.max(0,P.line-b2-1);return CV(H0,j0,b2*2+1,void 0,X0.signal).then((V0)=>{if(X0.signal.aborted)return;A({file:P.file,line:P.line,content:V0.content})}).catch(()=>{if(X0.signal.aborted)return;A({file:P.file,line:P.line,content:"(preview unavailable)"})}),()=>X0.abort()},f=[P],Z[3]=P,Z[4]=k,Z[5]=f;else k=Z[4],f=Z[5];FJ.useEffect(k,f);let $;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))$=(X0)=>{if(F(X0),y.current)clearTimeout(y.current);if(j.current?.abort(),!X0.trim()){W(_h),N(!1),q(!1);return}let H0=new AbortController;j.current=H0,N(!0),q(!1);let j0=X0.toLowerCase();W((V0)=>{let l=V0.filter((L0)=>L0.text.toLowerCase().includes(j0));return l.length===V0.length?V0:l}),y.current=setTimeout(Eh,Lh,X0,H0,W,q,N)},Z[6]=$;else $=Z[6];let v=$,T=K?Math.floor((z-10)*0.5):z-8,h=Math.max(20,Math.floor(T*0.4)),u=Math.max(20,T-h-4),C=K?Math.max(40,z-T-14):z-6,a;if(Z[7]!==H.length||Z[8]!==J)a=(X0)=>{let H0=i7(k2(mZ(),X0.file),X0.line);Z0("tengu_global_search_select",{result_count:H.length,opened_editor:H0}),J()},Z[7]=H.length,Z[8]=J,Z[9]=a;else a=Z[9];let o=a,Y0;if(Z[10]!==H.length||Z[11]!==J||Z[12]!==X)Y0=(X0,H0)=>{X(H0?`@${X0.file}#L${X0.line} `:`${X0.file}:${X0.line} `),Z0("tengu_global_search_insert",{result_count:H.length,mention:H0}),J()},Z[10]=H.length,Z[11]=J,Z[12]=X,Z[13]=Y0;else Y0=Z[13];let d=Y0,p=H.length>0?`${H.length}${D?"+":""} matches${U?"…":""}`:" ",K0=K?"right":"bottom",G0;if(Z[14]!==d)G0={action:"mention",handler:(X0)=>d(X0,!0)},Z[14]=d,Z[15]=G0;else G0=Z[15];let J0;if(Z[16]!==d)J0={action:"insert path",handler:(X0)=>d(X0,!1)},Z[16]=d,Z[17]=J0;else J0=Z[17];let P0;if(Z[18]!==U)P0=(X0)=>U?"Searching…":X0?"No matches":"Type to search…",Z[18]=U,Z[19]=P0;else P0=Z[19];let M0;if(Z[20]!==h||Z[21]!==u||Z[22]!==L)M0=(X0,H0)=>E(O,{color:H0?"suggestion":void 0,children:[E(O,{dimColor:!0,children:[r7(X0.file,h),":",X0.line]})," ",pK(CY(X0.text.trimStart(),u),L)]}),Z[20]=h,Z[21]=u,Z[22]=L,Z[23]=M0;else M0=Z[23];let I0;if(Z[24]!==_||Z[25]!==C||Z[26]!==L)I0=(X0)=>_?.file===X0.file&&_.line===X0.line?E(A0,{children:[E(O,{dimColor:!0,children:[r7(X0.file,C),":",X0.line]}),_.content.split(`
|
|
67
|
+
`).map((H0,j0)=>B(O,{children:pK(CY(H0,C),L)},j0))]}):B(SV,{message:"Loading…",dimColor:!0}),Z[24]=_,Z[25]=C,Z[26]=L,Z[27]=I0;else I0=Z[27];let q0;if(Z[28]!==o||Z[29]!==p||Z[30]!==H||Z[31]!==J||Z[32]!==G0||Z[33]!==J0||Z[34]!==P0||Z[35]!==M0||Z[36]!==I0||Z[37]!==K0||Z[38]!==Q)q0=B(l7,{title:"Global Search",placeholder:"Type to search…",items:H,getKey:P3,visibleCount:Q,direction:"up",previewPosition:K0,onQueryChange:v,onFocus:w,onSelect:o,onTab:G0,onShiftTab:J0,onCancel:J,emptyMessage:P0,matchLabel:p,selectAction:"open in editor",renderItem:M0,renderPreview:I0}),Z[28]=o,Z[29]=p,Z[30]=H,Z[31]=J,Z[32]=G0,Z[33]=J0,Z[34]=P0,Z[35]=M0,Z[36]=I0,Z[37]=K0,Z[38]=Q,Z[39]=q0;else q0=Z[39];return q0}function Eh(Y,Z,J,X,z){let G=mZ(),K=0;I2(["-n","--no-heading","-i","-m",String(Fh),"-F","-e",Y],G,Z.signal,(Q)=>{if(Z.signal.aborted)return;let V=[];for(let H of Q){let W=Ah(H);if(!W)continue;let D=v2(G,W.file);V.push({...W,file:D.startsWith("..")?W.file:D})}if(!V.length)return;if(K=K+V.length,J((H)=>{let W=new Set(H.map(P3)),D=V.filter((U)=>!W.has(P3(U)));if(!D.length)return H;let q=H.concat(D);return q.length>E3?q.slice(0,E3):q}),K>=E3)Z.abort(),X(!0),z(!1)}).catch(wh).finally(()=>{if(Z.signal.aborted)return;if(K===0)J(Ph);z(!1)})}function Ph(Y){return Y.length?[]:Y}function wh(){}function _h(Y){return Y.length?[]:Y}function P3(Y){return`${Y.file}:${Y.line}`}function Ah(Y){let Z=/^(.*?):(\d+):(.*)$/.exec(Y);if(!Z)return null;let[,J,X,z]=Z,G=Number(X);if(!J||!Number.isFinite(G))return null;return{file:J,line:G,text:z??""}}DX();B9();PY();PX();Mh();N0();DZ();vY();var Gz=x(Q0(),1);c();var $V=6,f2=8;function m2({initialQuery:Y,onSelect:Z,onCancel:J}){mY("history-search");let{columns:X}=PZ(),[z,G]=Gz.useState(null),[K,Q]=Gz.useState(Y??"");Gz.useEffect(()=>{if(z!==null)return;let U=!1;return(async()=>{let N=g2(),L=[];for await(let F of N){if(U){N.return(void 0);return}let P=F.display,w=P.indexOf(`
|
|
68
|
+
`),_=h2(new Date(F.timestamp));L.push({entry:F,display:P,lower:P.toLowerCase(),firstLine:w===-1?P:P.slice(0,w),age:_+" ".repeat(Math.max(0,f2-IZ(_)))})}if(!U)G(L)})(),()=>{U=!0}},[z]);let V=Gz.useMemo(()=>{if(!z)return[];let U=K.trim().toLowerCase();if(!U)return z;let N=[],L=[];for(let F of z)if(F.lower.includes(U))N.push(F);else if(Rh(F.lower,U))L.push(F);return N.concat(L)},[z,K]),H=X>=100,W=H?Math.floor((X-6)*0.5):X-6,D=Math.max(20,W-f2-1),q=H?Math.max(20,X-W-12):Math.max(20,X-10);return B(l7,{title:"Search prompts",placeholder:"Filter history…",initialQuery:Y,items:V,getKey:(U)=>String(U.entry.timestamp),onQueryChange:Q,onSelect:(U)=>{Z0("tengu_history_picker_select",{result_count:V.length,query_length:K.length}),U.entry.resolve().then(Z)},onCancel:J,emptyMessage:(U)=>z===null?"Loading…":U?"No matching prompts":"No history yet",selectAction:"use",direction:"up",previewPosition:H?"right":"bottom",renderItem:(U,N)=>E(O,{children:[B(O,{dimColor:!0,children:U.age}),E(O,{color:N?"suggestion":void 0,children:[" ",CY(U.firstLine,D)]})]}),renderPreview:(U)=>{let N=x2(U.display,q,{hard:!0}).split(`
|
|
69
|
+
`).filter((w)=>w.trim()!==""),L=N.length>$V,F=N.slice(0,L?$V-1:$V),P=N.length-F.length;return E(M,{flexDirection:"column",borderStyle:"round",borderDimColor:!0,paddingX:1,height:$V+2,children:[F.map((w,_)=>B(O,{dimColor:!0,children:w},_)),P>0&&B(O,{dimColor:!0,children:`… +${P} more lines`})]})}})}function Rh(Y,Z){let J=0;for(let X=0;X<Y.length&&J<Z.length;X++)if(Y[X]===Z[J])J++;return J===Z.length}Gg();DX();H3();PY();N0();DZ();HJ();m9();vY();var u2=x(v0(),1),kX=x(Q0(),1);import*as a7 from"path";T2();C2();c();var c2=8,jh=20;function p2(Y){let Z=u2.c(35),{onDone:J,onInsert:X}=Y;mY("quick-open");let{columns:z,rows:G}=PZ(),K=Math.min(c2,Math.max(4,G-14)),Q;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))Q=[],Z[0]=Q;else Q=Z[0];let[V,H]=kX.useState(Q),[W,D]=kX.useState(""),[q,U]=kX.useState(void 0),[N,L]=kX.useState(null),F=kX.useRef(0),P,w;if(Z[1]===Symbol.for("react.memo_cache_sentinel"))P=()=>()=>{return F.current=F.current+1,void F.current},w=[],Z[1]=P,Z[2]=w;else P=Z[1],w=Z[2];kX.useEffect(P,w);let _=z>=120,A=_?c2-1:jh,j;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))j=(p)=>{D(p);let K0=F.current=F.current+1;if(!p.trim()){H([]);return}DV(p,!0).then((G0)=>{if(K0!==F.current)return;let J0=G0.filter(vh).map(Th).filter(Ih).map(bh);H(J0)})},Z[3]=j;else j=Z[3];let y=j,b,R;if(Z[4]!==A||Z[5]!==q)b=()=>{if(!q){L(null);return}let p=new AbortController,K0=a7.resolve(mZ(),q);return CV(K0,0,A,void 0,p.signal).then((G0)=>{if(p.signal.aborted)return;L({path:q,content:G0.content})}).catch(()=>{if(p.signal.aborted)return;L({path:q,content:"(preview unavailable)"})}),()=>p.abort()},R=[q,A],Z[4]=A,Z[5]=q,Z[6]=b,Z[7]=R;else b=Z[6],R=Z[7];kX.useEffect(b,R);let k=_?Math.max(20,Math.floor((z-10)*0.4)):Math.max(20,z-8),f=_?Math.max(40,z-k-14):z-6,$;if(Z[8]!==J||Z[9]!==V.length)$=(p)=>{let K0=i7(a7.resolve(mZ(),p));Z0("tengu_quick_open_select",{result_count:V.length,opened_editor:K0}),J()},Z[8]=J,Z[9]=V.length,Z[10]=$;else $=Z[10];let v=$,T;if(Z[11]!==J||Z[12]!==X||Z[13]!==V.length)T=(p,K0)=>{X(K0?`@${p} `:`${p} `),Z0("tengu_quick_open_insert",{result_count:V.length,mention:K0}),J()},Z[11]=J,Z[12]=X,Z[13]=V.length,Z[14]=T;else T=Z[14];let h=T,u=_?"right":"bottom",C;if(Z[15]!==h)C={action:"mention",handler:(p)=>h(p,!0)},Z[15]=h,Z[16]=C;else C=Z[16];let a;if(Z[17]!==h)a={action:"insert path",handler:(p)=>h(p,!1)},Z[17]=h,Z[18]=a;else a=Z[18];let o;if(Z[19]!==k)o=(p,K0)=>B(O,{color:K0?"suggestion":void 0,children:r7(p,k)}),Z[19]=k,Z[20]=o;else o=Z[20];let Y0;if(Z[21]!==N||Z[22]!==f||Z[23]!==W)Y0=(p)=>N?E(A0,{children:[E(O,{dimColor:!0,children:[r7(p,f),N.path!==p?" · loading…":""]}),N.content.split(`
|
|
70
|
+
`).map((K0,G0)=>B(O,{children:pK(CY(K0,f),W)},G0))]}):B(SV,{message:"Loading preview…",dimColor:!0}),Z[21]=N,Z[22]=f,Z[23]=W,Z[24]=Y0;else Y0=Z[24];let d;if(Z[25]!==v||Z[26]!==J||Z[27]!==V||Z[28]!==C||Z[29]!==a||Z[30]!==o||Z[31]!==Y0||Z[32]!==u||Z[33]!==K)d=B(l7,{title:"Quick Open",placeholder:"Type to search files…",items:V,getKey:kh,visibleCount:K,direction:"up",previewPosition:u,onQueryChange:y,onFocus:U,onSelect:v,onTab:C,onShiftTab:a,onCancel:J,emptyMessage:yh,selectAction:"open in editor",renderItem:o,renderPreview:Y0}),Z[25]=v,Z[26]=J,Z[27]=V,Z[28]=C,Z[29]=a,Z[30]=o,Z[31]=Y0,Z[32]=u,Z[33]=K,Z[34]=d;else d=Z[34];return d}function yh(Y){return Y?"No matching files":"Start typing to search…"}function kh(Y){return Y}function bh(Y){return Y.split(a7.sep).join("/")}function Ih(Y){return!Y.endsWith(a7.sep)}function Th(Y){return Y.displayText}function vh(Y){return Y.id.startsWith("file-")}hQ();d2();N0();YY();NK();eX();fQ();l8();dW();c();var l2=x(v0(),1),r2=x(Q0(),1);function i2(Y){let Z=l2.c(27),{currentValue:J,onSelect:X,onCancel:z,isMidConversation:G}=Y,K=fV(),[Q,V]=r2.useState(null),H;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))H=[{value:"true",label:"Enabled",description:"Claude will think before responding"},{value:"false",label:"Disabled",description:"Claude will respond without extended thinking"}],Z[0]=H;else H=Z[0];let W=H,D;if(Z[1]!==Q||Z[2]!==z)D=()=>{if(Q!==null)V(null);else z?.()},Z[1]=Q,Z[2]=z,Z[3]=D;else D=Z[3];let q;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))q={context:"Confirmation"},Z[4]=q;else q=Z[4];KZ("confirm:no",D,q);let U;if(Z[5]!==Q||Z[6]!==X)U=()=>{if(Q!==null)X(Q)},Z[5]=Q,Z[6]=X,Z[7]=U;else U=Z[7];let N=Q!==null,L;if(Z[8]!==N)L={context:"Confirmation",isActive:N},Z[8]=N,Z[9]=L;else L=Z[9];KZ("confirm:yes",U,L);let F;if(Z[10]!==J||Z[11]!==G||Z[12]!==X)F=function(b){let R=b==="true";if(G&&R!==J)V(R);else X(R)},Z[10]=J,Z[11]=G,Z[12]=X,Z[13]=F;else F=Z[13];let P=F,w;if(Z[14]===Symbol.for("react.memo_cache_sentinel"))w=E(M,{marginBottom:1,flexDirection:"column",children:[B(O,{color:"remember",bold:!0,children:"Toggle thinking mode"}),B(O,{dimColor:!0,children:"Enable or disable thinking for this session."})]}),Z[14]=w;else w=Z[14];let _;if(Z[15]!==Q||Z[16]!==J||Z[17]!==P||Z[18]!==z)_=E(M,{flexDirection:"column",children:[w,Q!==null?E(M,{flexDirection:"column",marginBottom:1,gap:1,children:[B(O,{color:"warning",children:"Changing thinking mode mid-conversation will increase latency and may reduce quality. For best results, set this at the start of a session."}),B(O,{color:"warning",children:"Do you want to proceed?"})]}):B(M,{flexDirection:"column",marginBottom:1,children:B(qZ,{defaultValue:J?"true":"false",defaultFocusValue:J?"true":"false",options:W,onChange:P,onCancel:z??Ch,visibleOptionCount:2})})]}),Z[15]=Q,Z[16]=J,Z[17]=P,Z[18]=z,Z[19]=_;else _=Z[19];let A;if(Z[20]!==Q||Z[21]!==K.keyName||Z[22]!==K.pending)A=B(O,{dimColor:!0,italic:!0,children:K.pending?E(A0,{children:["Press ",K.keyName," again to exit"]}):Q!==null?E(UJ,{children:[B(FZ,{shortcut:"Enter",action:"confirm"}),B(DJ,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})]}):E(UJ,{children:[B(FZ,{shortcut:"Enter",action:"confirm"}),B(DJ,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"exit"})]})}),Z[20]=Q,Z[21]=K.keyName,Z[22]=K.pending,Z[23]=A;else A=Z[23];let j;if(Z[24]!==A||Z[25]!==_)j=E(P7,{color:"permission",children:[_,A]}),Z[24]=A,Z[25]=_,Z[26]=j;else j=Z[26];return j}function Ch(){}Vg();MV();TY();PV();DX();PX();N0();YY();J7();YZ();o7();c7();BZ();uO();vY();var pV=x(v0(),1),EJ=x(Q0(),1);import{randomUUID as $h}from"crypto";AK();uJ();M3();aK();EV();Kz();e2();Sh();Kz();function n2(Y){let Z=n7(Y);if(!Z)return[];let J=new Set(Z.hiddenPaneIds??[]),X=[];for(let z of Z.members){if(z.name==="team-lead")continue;let K=z.isActive!==!1?"running":"idle";X.push({name:z.name,agentId:z.agentId,agentType:z.agentType,model:z.model,prompt:z.prompt,status:K,color:z.color,tmuxPaneId:z.tmuxPaneId,cwd:z.cwd,worktreePath:z.worktreePath,isHidden:J.has(z.tmuxPaneId),backendType:z.backendType&&a2(z.backendType)?z.backendType:void 0,mode:z.mode})}return X}gV();QK();tU();c();function JP({initialTeams:Y,onDone:Z}){mY("teams-dialog");let J=n0(),X=Y?.[0]?.name??"",[z,G]=EJ.useState({type:"teammateList",teamName:X}),[K,Q]=EJ.useState(0),[V,H]=EJ.useState(0),W=EJ.useMemo(()=>{return n2(z.teamName)},[z.teamName,V]);s7(()=>{H((F)=>F+1)},1000);let D=EJ.useMemo(()=>{if(z.type!=="teammateDetail")return null;return W.find((F)=>F.name===z.memberName)??null},[z,W]),q=t((F)=>F.toolPermissionContext.isBypassPermissionsModeAvailable),U=()=>{G({type:"teammateList",teamName:z.teamName}),Q(0)},N=EJ.useCallback(()=>{if(z.type==="teammateDetail"&&D)dh(D,z.teamName,q),H((F)=>F+1);else if(z.type==="teammateList"&&W.length>0)lh(W,z.teamName,q),H((F)=>F+1)},[z,D,W,q]);uZ({"confirm:cycleMode":N},{context:"Confirmation"}),lZ((F,P)=>{if(P.leftArrow){if(z.type==="teammateDetail")U();return}if(P.upArrow||P.downArrow){let w=L();if(P.upArrow)Q((_)=>Math.max(0,_-1));else Q((_)=>Math.min(w,_+1));return}if(P.return){if(z.type==="teammateList"&&W[K])G({type:"teammateDetail",teamName:z.teamName,memberName:W[K].name});else if(z.type==="teammateDetail"&&D)ch(D.tmuxPaneId,D.backendType),Z();return}if(F==="k"){if(z.type==="teammateList"&&W[K])w3(W[K].tmuxPaneId,W[K].backendType,z.teamName,W[K].agentId,W[K].name,J).then(()=>{H((w)=>w+1),Q((w)=>Math.max(0,Math.min(w,W.length-2)))});else if(z.type==="teammateDetail"&&D)w3(D.tmuxPaneId,D.backendType,z.teamName,D.agentId,D.name,J),U();return}if(F==="s"){if(z.type==="teammateList"&&W[K]){let w=W[K];_3(w.name,z.teamName,"Graceful shutdown requested by team lead")}else if(z.type==="teammateDetail"&&D)_3(D.name,z.teamName,"Graceful shutdown requested by team lead"),U();return}if(F==="h"){let w=dK(),_=z.type==="teammateList"?W[K]:z.type==="teammateDetail"?D:null;if(_&&w?.supportsHideShow){if(uh(_,z.teamName).then(()=>{H((A)=>A+1)}),z.type==="teammateDetail")U()}return}if(F==="H"&&z.type==="teammateList"){if(dK()?.supportsHideShow&&W.length>0){let _=W.some((A)=>!A.isHidden);Promise.all(W.map((A)=>_?XP(A,z.teamName):zP(A,z.teamName))).then(()=>{H((A)=>A+1)})}return}if(F==="p"&&z.type==="teammateList"){let w=W.filter((_)=>_.status==="idle");if(w.length>0)Promise.all(w.map((_)=>w3(_.tmuxPaneId,_.backendType,z.teamName,_.agentId,_.name,J))).then(()=>{H((_)=>_+1),Q((_)=>Math.max(0,Math.min(_,W.length-w.length-1)))});return}});function L(){if(z.type==="teammateList")return Math.max(0,W.length-1);return 0}if(z.type==="teammateList")return B(fh,{teamName:z.teamName,teammates:W,selectedIndex:K,onCancel:Z});if(z.type==="teammateDetail"&&D)return B(xh,{teammate:D,teamName:z.teamName,onCancel:U});return null}function fh(Y){let Z=pV.c(13),{teamName:J,teammates:X,selectedIndex:z,onCancel:G}=Y,K=`${X.length} ${X.length===1?"teammate":"teammates"}`,Q=dK()?.supportsHideShow??!1,V=MY("confirm:cycleMode","Confirmation","shift+tab"),H=`Team ${J}`,W;if(Z[0]!==z||Z[1]!==X)W=X.length===0?B(O,{dimColor:!0,children:"No teammates"}):B(M,{flexDirection:"column",children:X.map((N,L)=>B(hh,{teammate:N,isSelected:L===z},N.agentId))}),Z[0]=z,Z[1]=X,Z[2]=W;else W=Z[2];let D;if(Z[3]!==G||Z[4]!==K||Z[5]!==H||Z[6]!==W)D=B(BJ,{title:H,subtitle:K,onCancel:G,color:"background",hideInputGuide:!0,children:W}),Z[3]=G,Z[4]=K,Z[5]=H,Z[6]=W,Z[7]=D;else D=Z[7];let q;if(Z[8]!==V)q=B(M,{marginLeft:1,children:E(O,{dimColor:!0,children:[R0.arrowUp,"/",R0.arrowDown," select · Enter view · k kill · s shutdown · p prune idle",Q&&" · h hide/show · H hide/show all"," · ",V," sync cycle modes for all · Esc close"]})}),Z[8]=V,Z[9]=q;else q=Z[9];let U;if(Z[10]!==D||Z[11]!==q)U=E(A0,{children:[D,q]}),Z[10]=D,Z[11]=q,Z[12]=U;else U=Z[12];return U}function hh(Y){let Z=pV.c(21),{teammate:J,isSelected:X}=Y,z=J.status==="idle",G=z&&!X,K,Q;if(Z[0]!==J.mode){let F=J.mode?Qz(J.mode):"default";K=lK(F),Q=rK(F),Z[0]=J.mode,Z[1]=K,Z[2]=Q}else K=Z[1],Q=Z[2];let V=Q,H=X?"suggestion":void 0,W=X?R0.pointer+" ":" ",D;if(Z[3]!==J.isHidden)D=J.isHidden&&B(O,{dimColor:!0,children:"[hidden] "}),Z[3]=J.isHidden,Z[4]=D;else D=Z[4];let q;if(Z[5]!==z)q=z&&B(O,{dimColor:!0,children:"[idle] "}),Z[5]=z,Z[6]=q;else q=Z[6];let U;if(Z[7]!==V||Z[8]!==K)U=K&&E(O,{color:V,children:[K," "]}),Z[7]=V,Z[8]=K,Z[9]=U;else U=Z[9];let N;if(Z[10]!==J.model)N=J.model&&E(O,{dimColor:!0,children:[" (",J.model,")"]}),Z[10]=J.model,Z[11]=N;else N=Z[11];let L;if(Z[12]!==G||Z[13]!==H||Z[14]!==W||Z[15]!==D||Z[16]!==q||Z[17]!==U||Z[18]!==N||Z[19]!==J.name)L=E(O,{color:H,dimColor:G,children:[W,D,q,U,"@",J.name,N]}),Z[12]=G,Z[13]=H,Z[14]=W,Z[15]=D,Z[16]=q,Z[17]=U,Z[18]=N,Z[19]=J.name,Z[20]=L;else L=Z[20];return L}function xh(Y){let Z=pV.c(39),{teammate:J,teamName:X,onCancel:z}=Y,[G,K]=EJ.useState(!1),Q=MY("confirm:cycleMode","Confirmation","shift+tab"),V=J.color?CJ[J.color]:void 0,H;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))H=[],Z[0]=H;else H=Z[0];let[W,D]=EJ.useState(H),q,U;if(Z[1]!==X||Z[2]!==J.agentId||Z[3]!==J.name)q=()=>{let h=!1;return t2(X).then((u)=>{if(h)return;D(u.filter((C)=>C.owner===J.agentId||C.owner===J.name))}),()=>{h=!0}},U=[X,J.agentId,J.name],Z[1]=X,Z[2]=J.agentId,Z[3]=J.name,Z[4]=q,Z[5]=U;else q=Z[4],U=Z[5];EJ.useEffect(q,U);let N;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))N=(h)=>{if(h==="p")K(mh)},Z[6]=N;else N=Z[6];lZ(N);let L=J.worktreePath||J.cwd,F;if(Z[7]!==J.model||Z[8]!==J.worktreePath||Z[9]!==L){if(F=[],J.model)F.push(J.model);if(L)F.push(J.worktreePath?`worktree: ${L}`:L);Z[7]=J.model,Z[8]=J.worktreePath,Z[9]=L,Z[10]=F}else F=Z[10];let P=F.join(" · ")||void 0,w,_;if(Z[11]!==J.mode){let h=J.mode?Qz(J.mode):"default";w=lK(h),_=rK(h),Z[11]=J.mode,Z[12]=w,Z[13]=_}else w=Z[12],_=Z[13];let A=_,j;if(Z[14]!==A||Z[15]!==w)j=w&&E(O,{color:A,children:[w," "]}),Z[14]=A,Z[15]=w,Z[16]=j;else j=Z[16];let y;if(Z[17]!==J.name||Z[18]!==V)y=V?B(O,{color:V,children:`@${J.name}`}):`@${J.name}`,Z[17]=J.name,Z[18]=V,Z[19]=y;else y=Z[19];let b;if(Z[20]!==j||Z[21]!==y)b=E(A0,{children:[j,y]}),Z[20]=j,Z[21]=y,Z[22]=b;else b=Z[22];let R=b,k;if(Z[23]!==W)k=W.length>0&&E(M,{flexDirection:"column",children:[B(O,{bold:!0,children:"Tasks"}),W.map(gh)]}),Z[23]=W,Z[24]=k;else k=Z[24];let f;if(Z[25]!==G||Z[26]!==J.prompt)f=J.prompt&&E(M,{flexDirection:"column",children:[B(O,{bold:!0,children:"Prompt"}),E(O,{children:[G?J.prompt:CY(J.prompt,80),IZ(J.prompt)>80&&!G&&B(O,{dimColor:!0,children:" (p to expand)"})]})]}),Z[25]=G,Z[26]=J.prompt,Z[27]=f;else f=Z[27];let $;if(Z[28]!==z||Z[29]!==P||Z[30]!==f||Z[31]!==k||Z[32]!==R)$=E(BJ,{title:R,subtitle:P,onCancel:z,color:"background",hideInputGuide:!0,children:[k,f]}),Z[28]=z,Z[29]=P,Z[30]=f,Z[31]=k,Z[32]=R,Z[33]=$;else $=Z[33];let v;if(Z[34]!==Q)v=B(M,{marginLeft:1,children:E(O,{dimColor:!0,children:[R0.arrowLeft," back · Esc close · k kill · s shutdown",dK()?.supportsHideShow&&" · h hide/show"," · ",Q," cycle mode"]})}),Z[34]=Q,Z[35]=v;else v=Z[35];let T;if(Z[36]!==$||Z[37]!==v)T=E(A0,{children:[$,v]}),Z[36]=$,Z[37]=v,Z[38]=T;else T=Z[38];return T}function gh(Y){return E(O,{color:Y.status==="completed"?"success":void 0,children:[Y.status==="completed"?R0.tick:"◼"," ",Y.subject]},Y.id)}function mh(Y){return!Y}async function w3(Y,Z,J,X,z,G){if(Z)try{await mV(),await cV(Z).killPane(Y,!A3())}catch(Q){g(`[TeamsDialog] Failed to kill pane ${Y}: ${Q}`)}else g(`[TeamsDialog] Skipping pane kill for ${Y}: no backendType recorded`);ZP(J,Y);let{notificationMessage:K}=await xV(J,X,z,"terminated");G((Q)=>{if(!Q.teamContext?.teammates)return Q;if(!(X in Q.teamContext.teammates))return Q;let{[X]:V,...H}=Q.teamContext.teammates;return{...Q,teamContext:{...Q.teamContext,teammates:H},inbox:{messages:[...Q.inbox.messages,{id:$h(),from:"system",text:iZ({type:"teammate_terminated",message:K}),timestamp:new Date().toISOString(),status:"pending"}]}}}),g(`[TeamsDialog] Removed ${X} from teamContext`)}async function ch(Y,Z){if(Z==="iterm2")await CK(s2,["session","focus","-s",Y]);else{let J=A3()?["select-pane","-t",Y]:["-L",hV(),"select-pane","-t",Y];await CK(o2,J)}}async function uh(Y,Z){if(Y.isHidden)await zP(Y,Z);else await XP(Y,Z)}async function XP(Y,Z){}async function zP(Y,Z){}function ph(Y,Z,J){uV(Z,Y,J);let X=R3({mode:J,from:"team-lead"});F8(Y,{from:"team-lead",text:iZ(X),timestamp:new Date().toISOString()},Z),g(`[TeamsDialog] Sent mode change to ${Y}: ${J}`)}function dh(Y,Z,J){let X=Y.mode?Qz(Y.mode):"default",z={...iK(),mode:X,isBypassPermissionsModeAvailable:J},G=Xz(z);ph(Y.name,Z,G)}function lh(Y,Z,J){if(Y.length===0)return;let X=Y.map((Q)=>Q.mode?Qz(Q.mode):"default"),G=!X.every((Q)=>Q===X[0])?"default":Xz({...iK(),mode:X[0]??"default",isBypassPermissionsModeAvailable:J}),K=Y.map((Q)=>({memberName:Q.name,mode:G}));YP(Z,K);for(let Q of Y){let V=R3({mode:G,from:"team-lead"});F8(Q.name,{from:"team-lead",text:iZ(V),timestamp:new Date().toISOString()},Z)}g(`[TeamsDialog] Sent mode change to all ${Y.length} teammates: ${G}`)}D7();Hx();var yP=x(v0(),1),kP=x(Q0(),1);dV();j3();var E8=x(Q0(),1);dV();j3();d8();function nK(Y,Z,J){let X=Z;for(let z=0;z<J;z++){let G=rh(Y,X);if(G.equals(X))break;X=G}return X}function rh(Y,Z){switch(Y){case"h":return Z.left();case"l":return Z.right();case"j":return Z.downLogicalLine();case"k":return Z.upLogicalLine();case"gj":return Z.down();case"gk":return Z.up();case"w":return Z.nextVimWord();case"b":return Z.prevVimWord();case"e":return Z.endOfVimWord();case"W":return Z.nextWORD();case"B":return Z.prevWORD();case"E":return Z.endOfWORD();case"0":return Z.startOfLogicalLine();case"^":return Z.firstNonBlankInLogicalLine();case"$":return Z.endOfLogicalLine();case"G":return Z.startOfLastLine();default:return Z}}function GP(Y){return"eE$".includes(Y)}function KP(Y){return"jkG".includes(Y)||Y==="gg"}dV();j3();var ih={"(":["(",")"],")":["(",")"],b:["(",")"],"[":["[","]"],"]":["[","]"],"{":["{","}"],"}":["{","}"],B:["{","}"],"<":["<",">"],">":["<",">"],'"':['"','"'],"'":["'","'"],"`":["`","`"]};function qP(Y,Z,J,X){if(J==="w")return QP(Y,Z,X,WP);if(J==="W")return QP(Y,Z,X,(G)=>!y3(G));let z=ih[J];if(z){let[G,K]=z;return G===K?ah(Y,Z,G,X):nh(Y,Z,G,K,X)}return null}function QP(Y,Z,J,X){let z=[];for(let{segment:U,index:N}of VP().segment(Y))z.push({segment:U,index:N});let G=z.length-1;for(let U=0;U<z.length;U++){let N=z[U],L=U+1<z.length?z[U+1].index:Y.length;if(Z>=N.index&&Z<L){G=U;break}}let K=(U)=>z[U]?.segment??"",Q=(U)=>U<z.length?z[U].index:Y.length,V=(U)=>y3(K(U)),H=(U)=>X(K(U)),W=(U)=>HP(K(U)),D=G,q=G;if(H(G)){while(D>0&&H(D-1))D--;while(q<z.length&&H(q))q++}else if(V(G)){while(D>0&&V(D-1))D--;while(q<z.length&&V(q))q++;return{start:Q(D),end:Q(q)}}else if(W(G)){while(D>0&&W(D-1))D--;while(q<z.length&&W(q))q++}if(!J){if(q<z.length&&V(q))while(q<z.length&&V(q))q++;else if(D>0&&V(D-1))while(D>0&&V(D-1))D--}return{start:Q(D),end:Q(q)}}function ah(Y,Z,J,X){let z=Y.lastIndexOf(`
|
|
71
|
+
`,Z-1)+1,G=Y.indexOf(`
|
|
72
|
+
`,Z),K=G===-1?Y.length:G,Q=Y.slice(z,K),V=Z-z,H=[];for(let W=0;W<Q.length;W++)if(Q[W]===J)H.push(W);for(let W=0;W<H.length-1;W+=2){let D=H[W],q=H[W+1];if(D<=V&&V<=q)return X?{start:z+D+1,end:z+q}:{start:z+D,end:z+q+1}}return null}function nh(Y,Z,J,X,z){let G=0,K=-1;for(let V=Z;V>=0;V--)if(Y[V]===X&&V!==Z)G++;else if(Y[V]===J){if(G===0){K=V;break}G--}if(K===-1)return null;G=0;let Q=-1;for(let V=K+1;V<Y.length;V++)if(Y[V]===J)G++;else if(Y[V]===X){if(G===0){Q=V;break}G--}if(Q===-1)return null;return z?{start:K+1,end:Q}:{start:K,end:Q+1}}function Hz(Y,Z,J,X){let z=nK(Z,X.cursor,J);if(z.equals(X.cursor))return;let G=I3(X.cursor,z,Z,Y,J);sK(Y,G.from,G.to,X,G.linewise),X.recordChange({type:"operator",op:Y,motion:Z,count:J})}function lV(Y,Z,J,X,z){let G=z.cursor.findCharacter(J,Z,X);if(G===null)return;let K=new Wz(z.cursor.measuredText,G),Q=oh(z.cursor,K,Z);sK(Y,Q.from,Q.to,z),z.setLastFind(Z,J),z.recordChange({type:"operatorFind",op:Y,find:Z,char:J,count:X})}function rV(Y,Z,J,X,z){let G=qP(z.text,z.cursor.offset,J,Z==="inner");if(!G)return;sK(Y,G.start,G.end,z),z.recordChange({type:"operatorTextObj",op:Y,objType:J,scope:Z,count:X})}function b3(Y,Z,J){let X=J.text,z=X.split(`
|
|
73
|
+
`),G=u5(X.slice(0,J.cursor.offset),`
|
|
74
|
+
`),K=Math.min(Z,z.length-G),Q=J.cursor.startOfLogicalLine().offset,V=Q;for(let W=0;W<K;W++){let D=X.indexOf(`
|
|
75
|
+
`,V);V=D===-1?X.length:D+1}let H=X.slice(Q,V);if(!H.endsWith(`
|
|
76
|
+
`))H=H+`
|
|
77
|
+
`;if(J.setRegister(H,!0),Y==="yank")J.setOffset(Q);else if(Y==="delete"){let W=Q,D=V;if(D===X.length&&W>0&&X[W-1]===`
|
|
78
|
+
`)W-=1;let q=X.slice(0,W)+X.slice(D);J.setText(q||"");let U=Math.max(0,q.length-(Vz(q).length||1));J.setOffset(Math.min(W,U))}else if(Y==="change")if(z.length===1)J.setText(""),J.enterInsert(0);else{let W=z.slice(0,G),D=z.slice(G+K),q=[...W,"",...D].join(`
|
|
79
|
+
`);J.setText(q),J.enterInsert(Q)}J.recordChange({type:"operator",op:Y,motion:Y[0],count:Z})}function iV(Y,Z){let J=Z.cursor.offset;if(J>=Z.text.length)return;let X=Z.cursor;for(let V=0;V<Y&&!X.isAtEnd();V++)X=X.right();let z=X.offset,G=Z.text.slice(J,z),K=Z.text.slice(0,J)+Z.text.slice(z);Z.setRegister(G,!1),Z.setText(K);let Q=Math.max(0,K.length-(Vz(K).length||1));Z.setOffset(Math.min(J,Q)),Z.recordChange({type:"x",count:Y})}function aV(Y,Z,J){let X=J.cursor.offset,z=J.text;for(let G=0;G<Z&&X<z.length;G++){let K=k3(z.slice(X)).length||1;z=z.slice(0,X)+Y+z.slice(X+K),X+=Y.length}J.setText(z),J.setOffset(Math.max(0,X-Y.length)),J.recordChange({type:"replace",char:Y,count:Z})}function nV(Y,Z){let J=Z.cursor.offset;if(J>=Z.text.length)return;let X=Z.text,z=J,G=0;while(z<X.length&&G<Y){let K=k3(X.slice(z)),Q=K.length,V=K===K.toUpperCase()?K.toLowerCase():K.toUpperCase();X=X.slice(0,z)+V+X.slice(z+Q),z+=V.length,G++}Z.setText(X),Z.setOffset(z),Z.recordChange({type:"toggleCase",count:Y})}function oV(Y,Z){let X=Z.text.split(`
|
|
80
|
+
`),{line:z}=Z.cursor.getPosition();if(z>=X.length-1)return;let G=Math.min(Y,X.length-z-1),K=X[z],Q=K.length;for(let W=1;W<=G;W++){let D=(X[z+W]??"").trimStart();if(D.length>0){if(!K.endsWith(" ")&&K.length>0)K+=" ";K+=D}}let V=[...X.slice(0,z),K,...X.slice(z+G+1)],H=V.join(`
|
|
81
|
+
`);Z.setText(H),Z.setOffset(tV(V,z)+Q),Z.recordChange({type:"join",count:Y})}function BP(Y,Z,J){let X=J.getRegister();if(!X)return;let z=X.endsWith(`
|
|
82
|
+
`),G=z?X.slice(0,-1):X;if(z){let Q=J.text.split(`
|
|
83
|
+
`),{line:V}=J.cursor.getPosition(),H=Y?V+1:V,W=G.split(`
|
|
84
|
+
`),D=[];for(let N=0;N<Z;N++)D.push(...W);let q=[...Q.slice(0,H),...D,...Q.slice(H)],U=q.join(`
|
|
85
|
+
`);J.setText(U),J.setOffset(tV(q,H))}else{let K=G.repeat(Z),Q=Y&&J.cursor.offset<J.text.length?J.cursor.measuredText.nextOffset(J.cursor.offset):J.cursor.offset,V=J.text.slice(0,Q)+K+J.text.slice(Q),H=Vz(K),W=Q+K.length-(H.length||1);J.setText(V),J.setOffset(Math.max(Q,W))}}function sV(Y,Z,J){let z=J.text.split(`
|
|
86
|
+
`),{line:G}=J.cursor.getPosition(),K=Math.min(Z,z.length-G),Q=" ";for(let D=0;D<K;D++){let q=G+D,U=z[q]??"";if(Y===">")z[q]=" "+U;else if(U.startsWith(" "))z[q]=U.slice(2);else if(U.startsWith("\t"))z[q]=U.slice(1);else{let N=0,L=0;while(L<U.length&&N<2&&/\s/.test(U[L]))N++,L++;z[q]=U.slice(L)}}let V=z.join(`
|
|
87
|
+
`),W=((z[G]??"").match(/^\s*/)?.[0]??"").length;J.setText(V),J.setOffset(tV(z,G)+W),J.recordChange({type:"indent",dir:Y,count:Z})}function oK(Y,Z){let X=Z.text.split(`
|
|
88
|
+
`),{line:z}=Z.cursor.getPosition(),G=Y==="below"?z+1:z,K=[...X.slice(0,G),"",...X.slice(G)],Q=K.join(`
|
|
89
|
+
`);Z.setText(Q),Z.enterInsert(tV(K,G)),Z.recordChange({type:"openLine",direction:Y})}function tV(Y,Z){return Y.slice(0,Z).join(`
|
|
90
|
+
`).length+(Z>0?1:0)}function I3(Y,Z,J,X,z){let G=Math.min(Y.offset,Z.offset),K=Math.max(Y.offset,Z.offset),Q=!1;if(X==="change"&&(J==="w"||J==="W")){let V=Y;for(let W=0;W<z-1;W++)V=J==="w"?V.nextVimWord():V.nextWORD();let H=J==="w"?V.endOfVimWord():V.endOfWORD();K=Y.measuredText.nextOffset(H.offset)}else if(KP(J)){Q=!0;let V=Y.text,H=V.indexOf(`
|
|
91
|
+
`,K);if(H===-1){if(K=V.length,G>0&&V[G-1]===`
|
|
92
|
+
`)G-=1}else K=H+1}else if(GP(J)&&Y.offset<=Z.offset)K=Y.measuredText.nextOffset(K);return G=Y.snapOutOfImageRef(G,"start"),K=Y.snapOutOfImageRef(K,"end"),{from:G,to:K,linewise:Q}}function oh(Y,Z,J){let X=Math.min(Y.offset,Z.offset),z=Math.max(Y.offset,Z.offset),G=Y.measuredText.nextOffset(z);return{from:X,to:G}}function sK(Y,Z,J,X,z=!1){let G=X.text.slice(Z,J);if(z&&!G.endsWith(`
|
|
93
|
+
`))G=G+`
|
|
94
|
+
`;if(X.setRegister(G,z),Y==="yank")X.setOffset(Z);else if(Y==="delete"){let K=X.text.slice(0,Z)+X.text.slice(J);X.setText(K);let Q=Math.max(0,K.length-(Vz(K).length||1));X.setOffset(Math.min(Z,Q))}else if(Y==="change"){let K=X.text.slice(0,Z)+X.text.slice(J);X.setText(K),X.enterInsert(Z)}}function DP(Y,Z,J){let X=Z===1?J.cursor.startOfLastLine():J.cursor.goToLine(Z);if(X.equals(J.cursor))return;let z=I3(J.cursor,X,"G",Y,Z);sK(Y,z.from,z.to,J,z.linewise),J.recordChange({type:"operator",op:Y,motion:"G",count:Z})}function UP(Y,Z,J){let X=Z===1?J.cursor.startOfFirstLine():J.cursor.goToLine(Z);if(X.equals(J.cursor))return;let z=I3(J.cursor,X,"gg",Y,Z);sK(Y,z.from,z.to,J,z.linewise),J.recordChange({type:"operator",op:Y,motion:"gg",count:Z})}var T3={d:"delete",c:"change",y:"yank"};function NP(Y){return Y in T3}var v3=new Set(["h","l","j","k","w","b","e","W","B","E","0","^","$"]),C3=new Set(["f","F","t","T"]),S3={i:"inner",a:"around"};function OP(Y){return Y in S3}var LP=new Set(["w","W",'"',"'","`","(",")","b","[","]","{","}","B","<",">"]),$3=1e4;function FP(){return{mode:"INSERT",insertedText:""}}function EP(){return{lastChange:null,lastFind:null,register:"",registerIsLinewise:!1}}function PP(Y,Z,J){switch(Y.type){case"idle":return sh(Z,J);case"count":return th(Y,Z,J);case"operator":return eh(Y,Z,J);case"operatorCount":return Zx(Y,Z,J);case"operatorFind":return Yx(Y,Z,J);case"operatorTextObj":return Jx(Y,Z,J);case"find":return Xx(Y,Z,J);case"g":return zx(Y,Z,J);case"operatorG":return Gx(Y,Z,J);case"replace":return Kx(Y,Z,J);case"indent":return Qx(Y,Z,J)}}function wP(Y,Z,J){if(NP(Y))return{next:{type:"operator",op:T3[Y],count:Z}};if(v3.has(Y))return{execute:()=>{let X=nK(Y,J.cursor,Z);J.setOffset(X.offset)}};if(C3.has(Y))return{next:{type:"find",find:Y,count:Z}};if(Y==="g")return{next:{type:"g",count:Z}};if(Y==="r")return{next:{type:"replace",count:Z}};if(Y===">"||Y==="<")return{next:{type:"indent",dir:Y,count:Z}};if(Y==="~")return{execute:()=>nV(Z,J)};if(Y==="x")return{execute:()=>iV(Z,J)};if(Y==="J")return{execute:()=>oV(Z,J)};if(Y==="p"||Y==="P")return{execute:()=>BP(Y==="p",Z,J)};if(Y==="D")return{execute:()=>Hz("delete","$",1,J)};if(Y==="C")return{execute:()=>Hz("change","$",1,J)};if(Y==="Y")return{execute:()=>b3("yank",Z,J)};if(Y==="G")return{execute:()=>{if(Z===1)J.setOffset(J.cursor.startOfLastLine().offset);else J.setOffset(J.cursor.goToLine(Z).offset)}};if(Y===".")return{execute:()=>J.onDotRepeat?.()};if(Y===";"||Y===",")return{execute:()=>Vx(Y===",",Z,J)};if(Y==="u")return{execute:()=>J.onUndo?.()};if(Y==="i")return{execute:()=>J.enterInsert(J.cursor.offset)};if(Y==="I")return{execute:()=>J.enterInsert(J.cursor.firstNonBlankInLogicalLine().offset)};if(Y==="a")return{execute:()=>{let X=J.cursor.isAtEnd()?J.cursor.offset:J.cursor.right().offset;J.enterInsert(X)}};if(Y==="A")return{execute:()=>J.enterInsert(J.cursor.endOfLogicalLine().offset)};if(Y==="o")return{execute:()=>oK("below",J)};if(Y==="O")return{execute:()=>oK("above",J)};return null}function _P(Y,Z,J,X){if(OP(J))return{next:{type:"operatorTextObj",op:Y,count:Z,scope:S3[J]}};if(C3.has(J))return{next:{type:"operatorFind",op:Y,count:Z,find:J}};if(v3.has(J))return{execute:()=>Hz(Y,J,Z,X)};if(J==="G")return{execute:()=>DP(Y,Z,X)};if(J==="g")return{next:{type:"operatorG",op:Y,count:Z}};return null}function sh(Y,Z){if(/[1-9]/.test(Y))return{next:{type:"count",digits:Y}};if(Y==="0")return{execute:()=>Z.setOffset(Z.cursor.startOfLogicalLine().offset)};let J=wP(Y,1,Z);if(J)return J;return{}}function th(Y,Z,J){if(/[0-9]/.test(Z)){let G=Y.digits+Z,K=Math.min(parseInt(G,10),$3);return{next:{type:"count",digits:String(K)}}}let X=parseInt(Y.digits,10),z=wP(Z,X,J);if(z)return z;return{next:{type:"idle"}}}function eh(Y,Z,J){if(Z===Y.op[0])return{execute:()=>b3(Y.op,Y.count,J)};if(/[0-9]/.test(Z))return{next:{type:"operatorCount",op:Y.op,count:Y.count,digits:Z}};let X=_P(Y.op,Y.count,Z,J);if(X)return X;return{next:{type:"idle"}}}function Zx(Y,Z,J){if(/[0-9]/.test(Z)){let K=Y.digits+Z,Q=Math.min(parseInt(K,10),$3);return{next:{...Y,digits:String(Q)}}}let X=parseInt(Y.digits,10),z=Y.count*X,G=_P(Y.op,z,Z,J);if(G)return G;return{next:{type:"idle"}}}function Yx(Y,Z,J){return{execute:()=>lV(Y.op,Y.find,Z,Y.count,J)}}function Jx(Y,Z,J){if(LP.has(Z))return{execute:()=>rV(Y.op,Y.scope,Z,Y.count,J)};return{next:{type:"idle"}}}function Xx(Y,Z,J){return{execute:()=>{let X=J.cursor.findCharacter(Z,Y.find,Y.count);if(X!==null)J.setOffset(X),J.setLastFind(Y.find,Z)}}}function zx(Y,Z,J){if(Z==="j"||Z==="k")return{execute:()=>{let X=nK(`g${Z}`,J.cursor,Y.count);J.setOffset(X.offset)}};if(Z==="g"){if(Y.count>1)return{execute:()=>{let X=J.text.split(`
|
|
95
|
+
`),z=Math.min(Y.count-1,X.length-1),G=0;for(let K=0;K<z;K++)G+=(X[K]?.length??0)+1;J.setOffset(G)}};return{execute:()=>J.setOffset(J.cursor.startOfFirstLine().offset)}}return{next:{type:"idle"}}}function Gx(Y,Z,J){if(Z==="j"||Z==="k")return{execute:()=>Hz(Y.op,`g${Z}`,Y.count,J)};if(Z==="g")return{execute:()=>UP(Y.op,Y.count,J)};return{next:{type:"idle"}}}function Kx(Y,Z,J){if(Z==="")return{next:{type:"idle"}};return{execute:()=>aV(Z,Y.count,J)}}function Qx(Y,Z,J){if(Z===Y.dir)return{execute:()=>sV(Y.dir,Y.count,J)};return{next:{type:"idle"}}}function Vx(Y,Z,J){let X=J.getLastFind();if(!X)return;let z=X.type;if(Y)z={f:"F",F:"f",t:"T",T:"t"}[z];let G=J.cursor.findCharacter(X.char,z,Z);if(G!==null)J.setOffset(G)}Wx();function MP(Y){let Z=E8.default.useRef(FP()),[J,X]=E8.useState("INSERT"),z=E8.default.useRef(EP()),G=AP({...Y,inputFilter:void 0}),{onModeChange:K,inputFilter:Q}=Y,V=E8.useCallback((N)=>{if(N!==void 0)G.setOffset(N);Z.current={mode:"INSERT",insertedText:""},X("INSERT"),K?.("INSERT")},[G,K]),H=E8.useCallback(()=>{let N=Z.current;if(N.mode==="INSERT"&&N.insertedText)z.current.lastChange={type:"insert",text:N.insertedText};let L=G.offset;if(L>0&&G.value[L-1]!==`
|
|
96
|
+
`)G.setOffset(L-1);Z.current={mode:"NORMAL",command:{type:"idle"}},X("NORMAL"),K?.("NORMAL")},[K,G]);function W(N,L=!1){return{cursor:N,text:G.value,setText:(F)=>G.setValue(F),setOffset:(F)=>G.setOffset(F),enterInsert:(F)=>V(F),getRegister:()=>z.current.register,setRegister:(F,P)=>{z.current.register=F,z.current.registerIsLinewise=P},getLastFind:()=>z.current.lastFind,setLastFind:(F,P)=>{z.current.lastFind={type:F,char:P}},recordChange:L?()=>{}:(F)=>{z.current.lastChange=F}}}function D(){let N=z.current.lastChange;if(!N)return;let L=Wz.fromText(G.value,Y.columns,G.offset),F=W(L,!0);switch(N.type){case"insert":if(N.text){let P=L.insert(N.text);G.setValue(P.text,P.offset)}break;case"x":iV(N.count,F);break;case"replace":aV(N.char,N.count,F);break;case"toggleCase":nV(N.count,F);break;case"indent":sV(N.dir,N.count,F);break;case"join":oV(N.count,F);break;case"openLine":oK(N.direction,F);break;case"operator":Hz(N.op,N.motion,N.count,F);break;case"operatorFind":lV(N.op,N.find,N.char,N.count,F);break;case"operatorTextObj":rV(N.op,N.scope,N.objType,N.count,F);break}}function q(N,L){let F=Z.current,P=Q?Q(N,L):N,w=F.mode==="INSERT"?P:N,_=Wz.fromText(G.value,Y.columns,G.offset);if(L.ctrl){G.onInput(w,L);return}if(L.escape&&F.mode==="INSERT"){H();return}if(L.escape&&F.mode==="NORMAL"){Z.current={mode:"NORMAL",command:{type:"idle"}};return}if(L.return){G.onInput(w,L);return}if(F.mode==="INSERT"){if(L.backspace||L.delete){if(F.insertedText.length>0)Z.current={mode:"INSERT",insertedText:F.insertedText.slice(0,-(Vz(F.insertedText).length||1))}}else Z.current={mode:"INSERT",insertedText:F.insertedText+w};G.onInput(w,L);return}if(F.mode!=="NORMAL")return;if(F.command.type==="idle"&&(L.upArrow||L.downArrow||L.leftArrow||L.rightArrow)){G.onInput(w,L);return}let A={...W(_,!1),onUndo:Y.onUndo,onDotRepeat:D},j=F.command.type==="idle"||F.command.type==="count"||F.command.type==="operator"||F.command.type==="operatorCount",y=w;if(L.leftArrow)y="h";else if(L.rightArrow)y="l";else if(L.upArrow)y="k";else if(L.downArrow)y="j";else if(j&&L.backspace)y="h";else if(j&&F.command.type!=="count"&&L.delete)y="x";let b=PP(F.command,y,A);if(b.execute)b.execute();if(Z.current.mode==="NORMAL"){if(b.next)Z.current={mode:"NORMAL",command:b.next};else if(b.execute)Z.current={mode:"NORMAL",command:{type:"idle"}}}if(w==="?"&&F.mode==="NORMAL"&&F.command.type==="idle")Y.onChange("?")}let U=E8.useCallback((N)=>{if(N==="INSERT")Z.current={mode:"INSERT",insertedText:""};else Z.current={mode:"NORMAL",command:{type:"idle"}};X(N),K?.(N)},[K]);return{...G,onInput:q,mode:J,setMode:U}}N0();qx();c();function f3(Y){let Z=yP.c(38),[J]=SZ(),X=qX();RP(X,!!Y.onImagePaste);let{value:z,onChange:G,onSubmit:K,onExit:Q,onExitMessage:V,onHistoryReset:H,onHistoryUp:W,onHistoryDown:D,onClearInput:q,focus:U,mask:N,multiline:L}=Y,F=Y.showCursor?" ":"",P=Y.highlightPastedText,w=X?d0.inverse:Bx,_;if(Z[0]!==J)_=wK("text",J),Z[0]=J,Z[1]=_;else _=Z[1];let A;if(Z[2]!==Y.columns||Z[3]!==Y.cursorOffset||Z[4]!==Y.disableCursorMovementForUpDownKeys||Z[5]!==Y.disableEscapeDoublePress||Z[6]!==Y.focus||Z[7]!==Y.highlightPastedText||Z[8]!==Y.inputFilter||Z[9]!==Y.mask||Z[10]!==Y.maxVisibleLines||Z[11]!==Y.multiline||Z[12]!==Y.onChange||Z[13]!==Y.onChangeCursorOffset||Z[14]!==Y.onClearInput||Z[15]!==Y.onExit||Z[16]!==Y.onExitMessage||Z[17]!==Y.onHistoryDown||Z[18]!==Y.onHistoryReset||Z[19]!==Y.onHistoryUp||Z[20]!==Y.onImagePaste||Z[21]!==Y.onModeChange||Z[22]!==Y.onSubmit||Z[23]!==Y.onUndo||Z[24]!==Y.value||Z[25]!==F||Z[26]!==w||Z[27]!==_)A={value:z,onChange:G,onSubmit:K,onExit:Q,onExitMessage:V,onHistoryReset:H,onHistoryUp:W,onHistoryDown:D,onClearInput:q,focus:U,mask:N,multiline:L,cursorChar:F,highlightPastedText:P,invert:w,themeText:_,columns:Y.columns,maxVisibleLines:Y.maxVisibleLines,onImagePaste:Y.onImagePaste,disableCursorMovementForUpDownKeys:Y.disableCursorMovementForUpDownKeys,disableEscapeDoublePress:Y.disableEscapeDoublePress,externalOffset:Y.cursorOffset,onOffsetChange:Y.onChangeCursorOffset,inputFilter:Y.inputFilter,onModeChange:Y.onModeChange,onUndo:Y.onUndo},Z[2]=Y.columns,Z[3]=Y.cursorOffset,Z[4]=Y.disableCursorMovementForUpDownKeys,Z[5]=Y.disableEscapeDoublePress,Z[6]=Y.focus,Z[7]=Y.highlightPastedText,Z[8]=Y.inputFilter,Z[9]=Y.mask,Z[10]=Y.maxVisibleLines,Z[11]=Y.multiline,Z[12]=Y.onChange,Z[13]=Y.onChangeCursorOffset,Z[14]=Y.onClearInput,Z[15]=Y.onExit,Z[16]=Y.onExitMessage,Z[17]=Y.onHistoryDown,Z[18]=Y.onHistoryReset,Z[19]=Y.onHistoryUp,Z[20]=Y.onImagePaste,Z[21]=Y.onModeChange,Z[22]=Y.onSubmit,Z[23]=Y.onUndo,Z[24]=Y.value,Z[25]=F,Z[26]=w,Z[27]=_,Z[28]=A;else A=Z[28];let j=MP(A),{mode:y,setMode:b}=j,R,k;if(Z[29]!==y||Z[30]!==Y.initialMode||Z[31]!==b)R=()=>{if(Y.initialMode&&Y.initialMode!==y)b(Y.initialMode)},k=[Y.initialMode,y,b],Z[29]=y,Z[30]=Y.initialMode,Z[31]=b,Z[32]=R,Z[33]=k;else R=Z[32],k=Z[33];kP.default.useEffect(R,k);let f;if(Z[34]!==X||Z[35]!==Y||Z[36]!==j)f=B(M,{flexDirection:"column",children:B(jP,{inputState:j,terminalFocus:X,highlights:Y.highlights,...Y})}),Z[34]=X,Z[35]=Y,Z[36]=j,Z[37]=f;else f=Z[37];return f}function Bx(Y){return Y}mK();Kw();RW();Ww();PK();PY();N0();YZ();x8();var qz=x(Q0(),1);DZ();YZ();AZ();Dx();dZ();FK();xK();PK();N0();$P();bZ();aO();HJ();BZ();x8();_W();BY();_X();o8();xH();cQ();FQ();c();var KY=x(Q0(),1);function h3(Y){return Y?.statusLine!==void 0}function Ux(Y,Z,J,X,z,G,K){let Q=CP(),V=n8(),H=b5({permissionMode:Y,mainLoopModel:G,exceeds200kTokens:Z}),W=J?.outputStyle||fP,D=bV(X),q=I5(H,y5()),U=T5(D,q),N=sY(),L=a9(N),F=SP(),P={...F.five_hour&&{five_hour:{used_percentage:F.five_hour.utilization*100,resets_at:F.five_hour.resets_at}},...F.seven_day&&{seven_day:{used_percentage:F.seven_day.utilization*100,resets_at:F.seven_day.resets_at}}};return{...xP(),...L&&{session_name:L},model:{id:H,display_name:IV(H)},workspace:{current_dir:mZ(),project_dir:QY(),added_dirs:z},version:"99.0.0",output_style:{name:W},cost:{total_cost_usd:u7(),total_duration_ms:IP(),total_api_duration_ms:bP(),total_lines_added:TP(),total_lines_removed:vP()},context_window:{total_input_tokens:yX(),total_output_tokens:yV(),context_window_size:q,current_usage:D,used_percentage:U.used,remaining_percentage:U.remaining},exceeds_200k_tokens:Z,...(P.five_hour||P.seven_day)&&{rate_limits:P},...nX()&&{vim:{mode:K??"INSERT"}},...Q&&{agent:{name:Q}},...UZ()&&{remote:{session_id:sY()}},...V&&{worktree:{name:V.worktreeName,path:V.worktreePath,branch:V.worktreeBranch,original_cwd:V.originalCwd,original_branch:V.originalBranch}}}}function x3(Y){return t7(Y)?.uuid??null}function Nx({messagesRef:Y,lastAssistantMessageId:Z,vimMode:J}){let X=KY.useRef(void 0),z=t((R)=>R.toolPermissionContext.mode),G=t((R)=>R.toolPermissionContext.additionalWorkingDirectories),K=t((R)=>R.statusLineText),Q=n0(),V=K8(),{addNotification:H}=JZ(),W=RX(),D=KY.useRef(V);D.current=V;let q=KY.useRef(J);q.current=J;let U=KY.useRef(z);U.current=z;let N=KY.useRef(G);N.current=G;let L=KY.useRef(W);L.current=W;let F=KY.useRef({messageId:null,exceeds200kTokens:!1,permissionMode:z,vimMode:J,mainLoopModel:W}),P=KY.useRef(void 0),w=KY.useRef(!0),_=KY.useCallback(async()=>{X.current?.abort();let R=new AbortController;X.current=R;let k=Y.current,f=w.current;w.current=!1;try{let $=F.current.exceeds200kTokens,v=x3(k);if(v!==F.current.messageId)$=hP(k),F.current.messageId=v,F.current.exceeds200kTokens=$;let T=Ux(U.current,$,D.current,k,Array.from(N.current.keys()),L.current,q.current),h=await gP(T,R.signal,void 0,f);if(!R.signal.aborted)Q((u)=>{if(u.statusLineText===h)return u;return{...u,statusLineText:h}})}catch{}},[Y,Q]),A=KY.useCallback(()=>{if(P.current!==void 0)clearTimeout(P.current);P.current=setTimeout((R,k)=>{R.current=void 0,k()},300,P,_)},[_]);KY.useEffect(()=>{if(Z!==F.current.messageId||z!==F.current.permissionMode||J!==F.current.vimMode||W!==F.current.mainLoopModel)F.current.permissionMode=z,F.current.vimMode=J,F.current.mainLoopModel=W,A()},[Z,z,J,W,A]);let j=V?.statusLine?.command,y=KY.useRef(!0);KY.useEffect(()=>{if(y.current){y.current=!1;return}w.current=!0,_()},[j,_]),KY.useEffect(()=>{let R=V?.statusLine;if(R){if(Z0("tengu_status_line_mount",{command_length:R.command.length,padding:R.padding}),V.disableAllHooks===!0)g("Status line is configured but disableAllHooks is true",{level:"warn"});if(!eV())H({key:"statusline-trust-blocked",text:"statusline skipped · restart to fix",color:"warning",priority:"low"}),g("Status line command skipped: workspace trust not accepted",{level:"warn"})}},[]),KY.useEffect(()=>{return _(),()=>{if(X.current?.abort(),P.current!==void 0)clearTimeout(P.current)}},[]);let b=V?.statusLine?.padding??0;return B(M,{paddingX:b,gap:2,children:K?B(O,{dimColor:!0,wrap:"truncate",children:B(wX,{children:K})}):_Z()?B(O,{children:" "}):null})}var mP=KY.memo(Nx);N0();TY();FQ();J7();AK();var Xw=x(v0(),1),N9=x(Q0(),1);TY();PY();PX();YZ();Z7();LQ();Ox();Z1();var Y1=x(v0(),1),lP=x(Q0(),1),g3=x(Q0(),1);function cP(Y,Z,J,X,z=!0){let G=Y.length;if(G===0)return{startIndex:0,endIndex:0,showLeftArrow:!1,showRightArrow:!1};let K=Math.max(0,Math.min(X,G-1));if(Y.reduce((U,N)=>U+N,0)<=Z)return{startIndex:0,endIndex:G,showLeftArrow:!1,showRightArrow:!1};let V=[0];for(let U=0;U<G;U++)V.push(V[U]+Y[U]);function H(U,N){let L=V[N]-V[U];if(z&&U>0)return L-1;return L}function W(U,N){let L=Z;if(U>0)L-=J;if(N<G)L-=J;return L}let D=0,q=1;while(q<G&&H(D,q+1)<=W(D,q+1))q++;if(K>=D&&K<q)return{startIndex:D,endIndex:q,showLeftArrow:D>0,showRightArrow:q<G};if(K>=q){q=K+1,D=K;while(D>0&&H(D-1,q)<=W(D-1,q))D--}else{D=K,q=K+1;while(q<G&&H(D,q+1)<=W(D,q+1))q++}return{startIndex:D,endIndex:q,showLeftArrow:D>0,showRightArrow:q<G}}N0();c7();l8();MV();vY();Lx();c();function m3(Y){let Z=Y1.c(48),{tasksSelected:J,isViewingTeammate:X,teammateFooterIndex:z,isLeaderIdle:G,onOpenDialog:K}=Y,Q=z===void 0?0:z,V=G===void 0?!1:G,H=n0(),{columns:W}=PZ(),D=t(kx),q=t(yx),U;if(Z[0]!==D)U=Object.values(D??{}).filter(jx),Z[0]=D,Z[1]=U;else U=Z[1];let N=U,F=t(Rx)==="teammates",P=!F&&N.length>0&&N.every(Mx),w;if(Z[2]!==N)w=N.filter(Ax).sort(_x),Z[2]=N,Z[3]=w;else w=Z[3];let _=w,A;if(Z[4]!==V)A={name:"main",color:void 0,isIdle:V,taskId:void 0},Z[4]=V,Z[5]=A;else A=Z[5];let j=A,y;if(Z[6]!==j||Z[7]!==J||Z[8]!==_){let h=_.map(wx);if(!J)h.sort(Px);y=[j,...h].map(Ex),Z[6]=j,Z[7]=J,Z[8]=_,Z[9]=y}else y=Z[9];let b=y,R;if(Z[10]!==b)R=b.map(Fx),Z[10]=b,Z[11]=R;else R=Z[11];let k=R;if(P||!F&&X){let h=J?Q:-1,u;if(Z[12]!==_||Z[13]!==q)u=q?_.findIndex((j0)=>j0.id===q)+1:0,Z[12]=_,Z[13]=q,Z[14]=u;else u=Z[14];let C=u,a=Math.max(20,W-20-4),o=h>=0?h:0,Y0;if(Z[15]!==a||Z[16]!==k||Z[17]!==o)Y0=cP(k,a,2,o),Z[15]=a,Z[16]=k,Z[17]=o,Z[18]=Y0;else Y0=Z[18];let{startIndex:d,endIndex:p,showLeftArrow:K0,showRightArrow:G0}=Y0,J0;if(Z[19]!==b||Z[20]!==p||Z[21]!==d)J0=b.slice(d,p),Z[19]=b,Z[20]=p,Z[21]=d,Z[22]=J0;else J0=Z[22];let P0=J0,M0;if(Z[23]!==K0)M0=K0&&E(O,{dimColor:!0,children:[R0.arrowLeft," "]}),Z[23]=K0,Z[24]=M0;else M0=Z[24];let I0;if(Z[25]!==h||Z[26]!==H||Z[27]!==C||Z[28]!==P0)I0=P0.map((j0,V0)=>{let l=V0>0;return E(lP.Fragment,{children:[l&&B(O,{children:" "}),B(bx,{name:j0.name,color:j0.color,isSelected:h===j0.idx,isViewed:C===j0.idx,isIdle:j0.isIdle,tokenCount:j0.tokenCount,onClick:()=>j0.taskId?O8(j0.taskId,H):tY(H)})]},j0.name)}),Z[25]=h,Z[26]=H,Z[27]=C,Z[28]=P0,Z[29]=I0;else I0=Z[29];let q0;if(Z[30]!==G0)q0=G0&&E(O,{dimColor:!0,children:[" ",R0.arrowRight]}),Z[30]=G0,Z[31]=q0;else q0=Z[31];let X0;if(Z[32]===Symbol.for("react.memo_cache_sentinel"))X0=E(O,{dimColor:!0,children:[" · ",B(FZ,{shortcut:"shift + ↓",action:"expand"})]}),Z[32]=X0;else X0=Z[32];let H0;if(Z[33]!==M0||Z[34]!==I0||Z[35]!==q0)H0=E(A0,{children:[M0,I0,q0,X0]}),Z[33]=M0,Z[34]=I0,Z[35]=q0,Z[36]=H0;else H0=Z[36];return H0}if(e7(D??{},F))return null;if(N.length===0)return null;let f;if(Z[37]!==N)f=uP(N),Z[37]=N,Z[38]=f;else f=Z[38];let $;if(Z[39]!==K||Z[40]!==f||Z[41]!==J)$=B(Ix,{selected:J,onClick:K,children:f}),Z[39]=K,Z[40]=f,Z[41]=J,Z[42]=$;else $=Z[42];let v;if(Z[43]!==N)v=pP(N)&&E(O,{dimColor:!0,children:[" · ",R0.arrowDown," to view"]}),Z[43]=N,Z[44]=v;else v=Z[44];let T;if(Z[45]!==v||Z[46]!==$)T=E(A0,{children:[$,v]}),Z[45]=v,Z[46]=$,Z[47]=T;else T=Z[47];return T}function Fx(Y,Z){let J=`@${Y.name}`;return IZ(J)+(Z>0?1:0)}function Ex(Y,Z){return{...Y,idx:Z}}function Px(Y,Z){if(Y.isIdle!==Z.isIdle)return Y.isIdle?1:-1;return 0}function wx(Y){return{name:Y.identity.agentName,color:Tx(Y.identity.color),isIdle:Y.isIdle,taskId:Y.id,tokenCount:Y.progress?.tokenCount}}function _x(Y,Z){return Y.identity.agentName.localeCompare(Z.identity.agentName)}function Ax(Y){return Y.type==="in_process_teammate"}function Mx(Y){return Y.type==="in_process_teammate"}function Rx(Y){return Y.expandedView}function jx(Y){return U9(Y)&&!0}function yx(Y){return Y.viewingAgentTaskId}function kx(Y){return Y.tasks}function bx(Y){let Z=Y1.c(20),{name:J,color:X,isSelected:z,isViewed:G,isIdle:K,onClick:Q,tokenCount:V}=Y,[H,W]=g3.useState(!1),D=dP(V??0),q=z||H,U;if(q){let w;if(Z[0]!==X||Z[1]!==G||Z[2]!==J)w=X?E(O,{backgroundColor:X,color:"inverseText",bold:G,children:["@",J]}):E(O,{color:"background",inverse:!0,bold:G,children:["@",J]}),Z[0]=X,Z[1]=G,Z[2]=J,Z[3]=w;else w=Z[3];U=w}else if(K){let w;if(Z[4]!==G||Z[5]!==J)w=E(O,{dimColor:!0,bold:G,children:["@",J]}),Z[4]=G,Z[5]=J,Z[6]=w;else w=Z[6];U=w}else if(G){let w;if(Z[7]!==X||Z[8]!==J)w=E(O,{color:X,bold:!0,children:["@",J]}),Z[7]=X,Z[8]=J,Z[9]=w;else w=Z[9];U=w}else{let w=!X,_;if(Z[10]!==X||Z[11]!==J||Z[12]!==w)_=E(O,{color:X,dimColor:w,children:["@",J]}),Z[10]=X,Z[11]=J,Z[12]=w,Z[13]=_;else _=Z[13];U=_}if(!Q)return U;let N,L;if(Z[14]===Symbol.for("react.memo_cache_sentinel"))N=()=>W(!0),L=()=>W(!1),Z[14]=N,Z[15]=L;else N=Z[14],L=Z[15];let F=!K&&D>0?` ${L3(D)}`:"",P;if(Z[16]!==U||Z[17]!==Q||Z[18]!==F)P=E(M,{onClick:Q,onMouseEnter:N,onMouseLeave:L,children:[U,F&&B(O,{dimColor:!0,children:F})]}),Z[16]=U,Z[17]=Q,Z[18]=F,Z[19]=P;else P=Z[19];return P}function Ix(Y){let Z=Y1.c(8),{selected:J,onClick:X,children:z}=Y,[G,K]=g3.useState(!1),Q=J||G,V;if(Z[0]!==z||Z[1]!==Q)V=B(O,{color:"background",inverse:Q,children:z}),Z[0]=z,Z[1]=Q,Z[2]=V;else V=Z[2];let H=V;if(!X)return H;let W,D;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))W=()=>K(!0),D=()=>K(!1),Z[3]=W,Z[4]=D;else W=Z[3],D=Z[4];let q;if(Z[5]!==H||Z[6]!==X)q=B(M,{onClick:X,onMouseEnter:W,onMouseLeave:D,children:H}),Z[5]=H,Z[6]=X,Z[7]=q;else q=Z[7];return q}function Tx(Y){if(!Y)return;if(P8.includes(Y))return CJ[Y];return}Z1();oz();MV();G8();N0();YZ();c();var rP=x(v0(),1);function iP(Y){let Z=rP.c(14),{teamsSelected:J,showHint:X}=Y,z=t(Cx),G;if(Z[0]!==z)G=z?Object.values(z.teammates).filter(vx).length:0,Z[0]=z,Z[1]=G;else G=Z[1];let K=G;if(K===0)return null;let Q;if(Z[2]!==X||Z[3]!==J)Q=X&&J?E(A0,{children:[B(O,{dimColor:!0,children:"· "}),B(O,{dimColor:!0,children:"Enter to view"})]}):null,Z[2]=X,Z[3]=J,Z[4]=Q;else Q=Z[4];let V=Q,H=`${K} ${K===1?"teammate":"teammates"}`,W=J?"selected":"normal",D;if(Z[5]!==H||Z[6]!==W||Z[7]!==J)D=B(O,{color:"background",inverse:J,children:H},W),Z[5]=H,Z[6]=W,Z[7]=J,Z[8]=D;else D=Z[8];let q;if(Z[9]!==V)q=V?E(O,{children:[" ",V]}):null,Z[9]=V,Z[10]=q;else q=Z[10];let U;if(Z[11]!==D||Z[12]!==q)U=E(A0,{children:[D,q]}),Z[11]=D,Z[12]=q,Z[13]=U;else U=Z[13];return U}function vx(Y){return Y.name!=="team-lead"}function Cx(Y){return Y.teamContext}aK();YZ();AZ();PX();N0();hQ();c();var aP=x(v0(),1);function Sx(Y){let Z=aP.c(9),{value:J,onChange:X,historyFailedMatch:z}=Y,G=z?"no matching prompt:":"search prompts:",K;if(Z[0]!==G)K=B(O,{dimColor:!0,children:G}),Z[0]=G,Z[1]=K;else K=Z[1];let Q=IZ(J)+1,V;if(Z[2]!==X||Z[3]!==Q||Z[4]!==J)V=B(r8,{value:J,onChange:X,cursorOffset:J.length,onChangeCursorOffset:$x,columns:Q,focus:!0,showCursor:!0,multiline:!1,dimColor:!0}),Z[2]=X,Z[3]=Q,Z[4]=J,Z[5]=V;else V=Z[5];let H;if(Z[6]!==K||Z[7]!==V)H=E(M,{gap:1,children:[K,V]}),Z[6]=K,Z[7]=V,Z[8]=H;else H=Z[8];return H}function $x(){}var nP=Sx;l8();fQ();PY();Jw();vY();PK();N0();fx();c();var hx=x(v0(),1);CF();x8();QW();UD();bZ();jQ();c();var xx=(dQ(),pJ(pQ)),oP=null,gx=(Y)=>()=>{},sP=()=>null;function zw(Y){let Z=Xw.c(27),{exitMessage:J,vimMode:X,mode:z,toolPermissionContext:G,suppressHint:K,isLoading:Q,tasksSelected:V,teamsSelected:H,tmuxSelected:W,teammateFooterIndex:D,isPasting:q,isSearching:U,historyQuery:N,setHistoryQuery:L,historyFailedMatch:F,onOpenTasksDialog:P}=Y;if(J.show){let k;if(Z[0]!==J.key)k=E(O,{dimColor:!0,children:["Press ",J.key," again to exit"]},"exit-message"),Z[0]=J.key,Z[1]=k;else k=Z[1];return k}if(q){let k;if(Z[2]===Symbol.for("react.memo_cache_sentinel"))k=B(O,{dimColor:!0,children:"Pasting text…"},"pasting-message"),Z[2]=k;else k=Z[2];return k}let w;if(Z[3]!==U||Z[4]!==X)w=nX()&&X==="INSERT"&&!U,Z[3]=U,Z[4]=X,Z[5]=w;else w=Z[5];let _=w,A;if(Z[6]!==F||Z[7]!==N||Z[8]!==U||Z[9]!==L)A=U&&B(nP,{value:N,onChange:L,historyFailedMatch:F}),Z[6]=F,Z[7]=N,Z[8]=U,Z[9]=L,Z[10]=A;else A=Z[10];let j;if(Z[11]!==_)j=_?B(O,{dimColor:!0,children:"-- INSERT --"},"vim-insert"):null,Z[11]=_,Z[12]=j;else j=Z[12];let y=!K&&!_,b;if(Z[13]!==Q||Z[14]!==z||Z[15]!==P||Z[16]!==y||Z[17]!==V||Z[18]!==D||Z[19]!==H||Z[20]!==W||Z[21]!==G)b=B(mx,{mode:z,toolPermissionContext:G,showHint:y,isLoading:Q,tasksSelected:V,teamsSelected:H,teammateFooterIndex:D,tmuxSelected:W,onOpenTasksDialog:P}),Z[13]=Q,Z[14]=z,Z[15]=P,Z[16]=y,Z[17]=V,Z[18]=D,Z[19]=H,Z[20]=W,Z[21]=G,Z[22]=b;else b=Z[22];let R;if(Z[23]!==A||Z[24]!==j||Z[25]!==b)R=E(M,{justifyContent:"flex-start",gap:1,children:[A,j,b]}),Z[23]=A,Z[24]=j,Z[25]=b,Z[26]=R;else R=Z[26];return R}function mx({mode:Y,toolPermissionContext:Z,showHint:J,isLoading:X,tasksSelected:z,teamsSelected:G,tmuxSelected:K,teammateFooterIndex:Q,onOpenTasksDialog:V}){let{columns:H}=PZ(),W=MY("chat:cycleMode","Chat","shift+tab"),D=t((U0)=>U0.tasks),q=t((U0)=>U0.teamContext),U=pZ(),[N]=N9.useState(()=>U.getState().remoteSessionUrl),L=t((U0)=>U0.viewSelectionMode),F=t((U0)=>U0.viewingAgentTaskId),P=t((U0)=>U0.expandedView),w=P==="teammates",_=M5(X,tP()),A=!1,j=N9.useSyncExternalStore(oP?.subscribeToProactiveChanges??gx,oP?.getNextTickAt??sP,sP),y=!1,b="idle",R=!1,k=Zw(),f=_Q().getState,$=j!==null,v=xx?.isCoordinatorMode()===!0,T=N9.useMemo(()=>jJ(Object.values(D),(U0)=>U9(U0)),[D]),h=Yw(),u=h!==void 0&&h.length>0,C=MY("chat:cancel","Chat","esc").toLowerCase(),a=MY("app:toggleTodos","Global","ctrl+t"),o=MY("chat:killAgents","Chat","ctrl+x ctrl+k"),Y0="",[d]=[!1],p=null;N9.useEffect(()=>{},[!1,d]);let K0=t((U0)=>U0.notifications.current?.key==="kill-agents-confirm"),G0=$Z()&&!ZG()&&q!==void 0&&jJ(Object.values(q.teammates),(U0)=>U0.name!=="team-lead")>0;if(Y==="bash")return B(O,{color:"bashBorder",children:"! for bash mode"});let J0=Z?.mode,P0=!eP(J0),M0=F?D[F]:void 0,I0=L==="viewing-agent"&&M0?.type==="in_process_teammate",q0=I0&&M0!=null&&M0.status!=="running",X0=T>0||I0,H0=(v||P0?1:0)+(X0?1:0)+(G0?1:0),j0=tP()&&_.number!==null&&_.reviewState!==null&&_.url!==null&&H0<2&&(H0===0||H>=80),V0=H0<2,L0=!w&&X0&&Object.values(D).some((U0)=>U0.type==="in_process_teammate")||!w&&I0,F0=J0&&P0&&!UZ()?E(O,{color:rK(J0),children:[lK(J0)," ",_K(J0).toLowerCase()," on",V0&&E(O,{dimColor:!0,children:[" ",B(FZ,{shortcut:W,action:"cycle",parens:!0})]})]},"mode"):null,$0=[...N?[B(X7,{url:N,children:E(O,{color:"ide",children:[R0.circleDouble," remote"]})},"remote")]:[],...$Z()&&G0?[B(iP,{teamsSelected:G,showHint:J&&!X0},"teams")]:[]],LZ=Object.values(D).some((U0)=>U0.type==="in_process_teammate"&&U0.status==="running"),n=Object.values(D).some((U0)=>U0.type==="local_agent"&&U0.status==="running"),W0=J?cx(X,C,a,o,u,P,LZ,n,K0):[];if(q0)$0.push(B(O,{dimColor:!0,children:B(FZ,{shortcut:C,action:"return to team lead"})},"esc-return"));else if(!L0&&J)$0.push(...W0);if(L0){let U0=[...F0?[F0]:[],...$0,...q0?[]:W0];return E(M,{flexDirection:"column",children:[B(M,{children:B(m3,{tasksSelected:z,isViewingTeammate:I0,teammateFooterIndex:Q,isLeaderIdle:!X,onOpenDialog:V})}),U0.length>0&&B(M,{children:B(UJ,{children:U0})})]})}let B0=!1,w0=X0&&!L0&&!e7(D,w)?B(m3,{tasksSelected:z,isViewingTeammate:I0,teammateFooterIndex:Q,isLeaderIdle:!X,onOpenDialog:V}):null;if($0.length===0&&!w0&&!F0&&J)$0.push(B(O,{dimColor:!0,children:"? for shortcuts"},"shortcuts-hint"));let S0=l0().copyOnSelect??!0,b0=k&&(!S0||zK());if(_Z()&&b0){let U0=tX()==="macos",m=U0&&(f()?.lastPressHadAlt??!1);$0.push(B(O,{dimColor:!0,children:E(UJ,{children:[!S0&&B(FZ,{shortcut:"ctrl+c",action:"copy"}),zK()&&(m?B(O,{children:"set macOptionClickForcesSelection in VS Code settings"}):B(FZ,{shortcut:U0?"option+click":"shift+click",action:"native select"}))]})},"selection-copy"))}if((w0||B0)&&J&&!G0)$0.push(B(O,{dimColor:!0,children:z?B(FZ,{shortcut:"Enter",action:"view tasks"}):B(FZ,{shortcut:"↓",action:"manage"})},"manage-tasks"));if($0.length===0&&!w0&&!F0)return _Z()?B(O,{children:" "}):null;return E(M,{height:1,overflow:"hidden",children:[F0&&E(M,{flexShrink:0,children:[F0,(w0||$0.length>0)&&B(O,{dimColor:!0,children:" · "})]}),w0&&E(M,{flexShrink:0,children:[w0,$0.length>0&&B(O,{dimColor:!0,children:" · "})]}),$0.length>0&&B(O,{wrap:"truncate",children:B(UJ,{children:$0})})]})}function cx(Y,Z,J,X,z,G,K,Q,V){let H;if(K)switch(G){case"none":H="show tasks";break;case"tasks":H="show teammates";break;case"teammates":H="hide";break}else H=G==="tasks"?"hide tasks":"show tasks";let W=z||K;return[...Y?[B(O,{dimColor:!0,children:B(FZ,{shortcut:Z,action:"interrupt"})},"esc")]:[],...!Y&&Q&&!V?[B(O,{dimColor:!0,children:B(FZ,{shortcut:X,action:"stop agents"})},"kill-agents")]:[],...W?[B(O,{dimColor:!0,children:B(FZ,{shortcut:J,action:H})},"toggle-tasks")]:[]]}function tP(){return l0().prStatusFooterEnabled??!0}ux();px();c();function dx({apiKeyStatus:Y,debug:Z,exitMessage:J,vimMode:X,mode:z,autoUpdaterResult:G,isAutoUpdating:K,verbose:Q,onAutoUpdaterResult:V,onChangeIsUpdating:H,suggestions:W,selectedSuggestion:D,maxColumnWidth:q,toolPermissionContext:U,helpOpen:N,suppressHint:L,isLoading:F,tasksSelected:P,teamsSelected:w,bridgeSelected:_,tmuxSelected:A,teammateFooterIndex:j,ideSelection:y,mcpClients:b,isPasting:R=!1,isInputWrapped:k=!1,messages:f,isSearching:$,historyQuery:v,setHistoryQuery:T,historyFailedMatch:h,onOpenTasksDialog:u,effortStatusText:C}){let a=K8(),{columns:o,rows:Y0}=PZ(),d=qz.useRef(f);d.current=f;let p=qz.useMemo(()=>x3(f),[f]),K0=o<80,G0=_Z(),J0=G0&&Y0<24,P0=jV(),M0=t((H0)=>H0.coordinatorTaskIndex),I0=P&&(P0===0||M0<0),q0=L||h3(a)||$,X0=qz.useMemo(()=>G0&&W.length?{suggestions:W,selectedSuggestion:D,maxColumnWidth:q}:null,[G0,W,D,q]);if(Vw(X0),W.length&&!G0)return B(M,{paddingX:2,paddingY:0,children:B(Gw,{suggestions:W,selectedSuggestion:D,maxColumnWidth:q})});if(N)return B(Qw,{dimColor:!0,fixedWidth:!0,paddingX:2});return B(A0,{children:E(M,{flexDirection:K0?"column":"row",justifyContent:K0?"flex-start":"space-between",paddingX:2,gap:K0?0:1,children:[E(M,{flexDirection:"column",flexShrink:K0?0:1,children:[z==="prompt"&&!J0&&!J.show&&!R&&h3(a)&&B(mP,{messagesRef:d,lastAssistantMessageId:p,vimMode:X}),B(zw,{exitMessage:J,vimMode:X,mode:z,toolPermissionContext:U,suppressHint:q0,isLoading:F,tasksSelected:I0,teamsSelected:w,teammateFooterIndex:j,tmuxSelected:A,isPasting:R,isSearching:$,historyQuery:v,setHistoryQuery:T,historyFailedMatch:h,onOpenTasksDialog:u})]}),E(M,{flexShrink:1,gap:1,children:[G0?null:B(t5,{apiKeyStatus:Y,autoUpdaterResult:G,debug:Z,isAutoUpdating:K,verbose:Q,messages:f,onAutoUpdaterResult:V,onChangeIsUpdating:H,ideSelection:y,mcpClients:b,isInputWrapped:k,isNarrow:K0}),B(lx,{bridgeSelected:_}),C?B(O,{dimColor:!0,children:C}):null]})]})})}var Hw=qz.memo(dx);function lx({bridgeSelected:Y}){return null}TY();N0();c7();Y8();G8();c();var u3=x(v0(),1);function rx(){if(!$Z())return;let Y=FX();if(!Y)return;if(P8.includes(Y))return CJ[Y];return}function qw(Y){let Z=u3.c(3),{isLoading:J,themeColor:X}=Y,G=X??void 0,K;if(Z[0]!==G||Z[1]!==J)K=E(O,{color:G,dimColor:J,children:[R0.pointer," "]}),Z[0]=G,Z[1]=J,Z[2]=K;else K=Z[2];return K}function p3(Y){let Z=u3.c(6),{mode:J,isLoading:X,viewingAgentName:z,viewingAgentColor:G}=Y,K;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))K=rx(),Z[0]=K;else K=Z[0];let Q=K,V=G?CJ[G]:void 0,H;if(Z[1]!==X||Z[2]!==J||Z[3]!==V||Z[4]!==z)H=B(M,{alignItems:"flex-start",alignSelf:"flex-start",flexWrap:"nowrap",justifyContent:"flex-start",children:z?B(qw,{isLoading:X,themeColor:V}):J==="bash"?B(O,{color:"bashBorder",dimColor:X,children:"! "}):B(qw,{isLoading:X,themeColor:$Z()?Q:void 0})}),Z[1]=X,Z[2]=J,Z[3]=V,Z[4]=z,Z[5]=H;else H=Z[5];return H}TY();N0();c();var Bw=x(v0(),1);function Dw(Y){let Z=Bw.c(1),{hasStash:J}=Y;if(!J)return null;let X;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))X=B(M,{paddingLeft:2,children:E(O,{dimColor:!0,children:[R0.pointerSmall," Stashed (auto-restores after submit)"]})}),Z[0]=X;else X=Z[0];return X}var tK=x(Q0(),1);B9();var ix=1e4,Uw=1000;function ax(Y,Z){if(Y.length<=ix)return{truncatedText:Y,placeholderContent:""};let J=Math.floor(Uw/2),X=Math.floor(Uw/2),z=Y.slice(0,J),G=Y.slice(-X),K=Y.slice(J,-X),Q=J1(K),H=nx(Z,Q);return{truncatedText:z+H+G,placeholderContent:K}}function nx(Y,Z){return`[...Truncated text #${Y} +${Z} lines...]`}function Nw(Y,Z){let J=Object.keys(Z).map(Number),X=J.length>0?Math.max(...J)+1:1,{truncatedText:z,placeholderContent:G}=ax(Y,X);if(!G)return{newInput:Y,newPastedContents:Z};return{newInput:z,newPastedContents:{...Z,[X]:{id:X,type:"text",content:G}}}}function Ow({input:Y,pastedContents:Z,onInputChange:J,setCursorOffset:X,setPastedContents:z}){let[G,K]=tK.useState(!1);tK.useEffect(()=>{if(G)return;if(Y.length<=1e4)return;let{newInput:Q,newPastedContents:V}=Nw(Y,Z);J(Q),X(Q.length),z(V),K(!0)},[Y,G,Z,J,z,X]),tK.useEffect(()=>{if(Y==="")K(!1)},[Y])}var bX=x(Q0(),1);bZ();RJ();var Lw=null,ox=3,Fw=20,Ew=4,sx=6000,tx=35;function ww({input:Y,submitCount:Z,viewingAgentName:J}){let X=BX(),z=bX.useRef([]),[G,K]=bX.useState(0),[Q,V]=bX.useState(0);return bX.useEffect(()=>{if(Z>=1)return;if(Lw?.isProactiveActive())return;z.current=Pw(Ew),V(0);let W=setInterval(()=>{K((D)=>(D+1)%Ew),V(0)},sx);return()=>clearInterval(W)},[Z]),bX.useEffect(()=>{let W=z.current[G]??"";if(Q>=W.length)return;let D=setTimeout(()=>{V((q)=>q+1)},tx);return()=>clearTimeout(D)},[G,Q]),bX.useMemo(()=>{if(Y!=="")return;if(J)return`Message @${J.length>Fw?J.slice(0,Fw-3)+"...":J}…`;if(X.some(S9)&&(l0().queuedCommandUpHintCount||0)<ox)return"Press up to edit queued messages";if(Z<1&&!Lw?.isProactiveActive())return(z.current[G]??z.current[0]??"").slice(0,Q)},[Y,X,Z,J,G,Q])}var X1=x(Q0(),1),ex=5000,_w=!1;function Aw(Y){let[Z,J]=X1.useState(!1);return X1.useEffect(()=>{if(_w||!Y)return;_w=!0,J(!0);let X=setTimeout(J,ex,!1);return()=>{clearTimeout(X),J(!1)}},[Y]),Z}YZ();l3();c7();var Q1=x(Q0(),1);Y8();function Mw(Y){if(i8())return;return Y.standaloneAgentContext?.name}M3();aK();EV();Y8();d3();function jw(){let Y=t((D)=>D.teamContext),Z=t((D)=>D.standaloneAgentContext),J=t((D)=>D.agent);t((D)=>D.viewingAgentTaskId);let X=pZ(),[z,G]=Q1.useState(null);Q1.useEffect(()=>{G1().then(G)},[]);let K=X.getState();if(IX()&&!YG()){let D=Z8();if(D&&i8())return{text:`@${D}`,bgColor:z1(Y?.selfAgentColor??FX())}}if(Y?.teamName&&Y.teammates&&Object.keys(Y.teammates).length>0){let D=JG(K),q=z1(D?.identity.color),U=ZG(),N=Rw()?.isNative??!1;if(z===!1&&!U&&!N)return{text:`View teammates: \`tmux -L ${hV()} a\``,bgColor:q};if((z===!0||U||N)&&D)return{text:`@${D.identity.agentName}`,bgColor:q}}let V=K1(K);if(V.type==="named_agent"){let D=V.task,q;for(let[U,N]of K.agentNameRegistry)if(N===D.id){q=U;break}return{text:q?`@${q}`:D.description,bgColor:BV(D.agentType)??"cyan_FOR_SUBAGENTS_ONLY"}}let H=Mw(K),W=Z?.color;if(H||W)return{text:H??"",bgColor:z1(W)};if(J){let D=K.agentDefinitions.activeAgents.find((q)=>q.agentType===J);return{text:J,bgColor:z1(D?.color,"promptBorder")}}return null}function z1(Y,Z="cyan_FOR_SUBAGENTS_ONLY"){return Y&&P8.includes(Y)?CJ[Y]:Z}FQ();c();var qg=5,Bg=3;function Dg({debug:Y,ideSelection:Z,toolPermissionContext:J,setToolPermissionContext:X,apiKeyStatus:z,commands:G,agents:K,isLoading:Q,verbose:V,messages:H,onAutoUpdaterResult:W,autoUpdaterResult:D,input:q,onInputChange:U,mode:N,onModeChange:L,stashedPrompt:F,setStashedPrompt:P,submitCount:w,onShowMessageSelector:_,onMessageActionsEnter:A,mcpClients:j,pastedContents:y,setPastedContents:b,vimMode:R,setVimMode:k,showBashesDialog:f,setShowBashesDialog:$,onExit:v,getToolUseContext:T,onSubmit:h,onAgentSubmit:u,isSearchingHistory:C,setIsSearchingHistory:a,onDismissSideQuestion:o,isSideQuestionVisible:Y0,helpOpen:d,setHelpOpen:p,hasSuppressedDialogs:K0,isLocalJSXCommandActive:G0=!1,insertTextRef:J0,voiceInterimRange:P0}){let M0=RX(),I0=tz()||G0,[q0,X0]=E0.useState(!1),[H0,j0]=E0.useState({show:!1}),[V0,l]=E0.useState(q.length),L0=_8.useRef(q),F0=_8.useRef(q);_8.useLayoutEffect(()=>{if(q===F0.current)return;if(F0.current=q,q===L0.current)return;L0.current=q,l((I)=>I===q.length?I:q.length)},[q]);let $0=_8.useCallback((I)=>{L0.current=I,U(I)},[U]);if(J0)J0.current={cursorOffset:V0,insert:(I)=>{let _0=V0===q.length&&q.length>0&&!/\s$/.test(q)?" "+I:I,r0=q.slice(0,V0)+_0+q.slice(V0);L0.current=r0,U(r0),l(V0+_0.length)},setInputWithCursor:(I,e)=>{L0.current=I,U(I),l(e)}};let LZ=pZ(),n=n0(),W0=t((I)=>I.tasks),B0=t((I)=>I.replBridgeConnected),w0=t((I)=>I.replBridgeExplicit),S0=t((I)=>I.replBridgeReconnecting),b0=B0&&(w0||S0),U0=!1,m=t((I)=>!1),D0=t((I)=>I.teamContext),z0=BX(),C0=t((I)=>I.promptSuggestion),h0=t((I)=>I.speculation),wZ=t((I)=>I.speculationSessionTimeSavedMs),y0=t((I)=>I.viewingAgentTaskId),o0=t((I)=>I.viewSelectionMode),g0=t((I)=>I.expandedView)==="teammates",{companion:x0,companionMuted:f0}=DY()?l0():{companion:void 0,companionMuted:void 0},t0=!!x0&&!f0,m0=!1,VZ=t((I)=>I.mainLoopModel),yZ=t((I)=>I.mainLoopModelForSession),NZ=t((I)=>I.thinkingEnabled),hZ=t((I)=>TX()?I.fastMode:!1),oZ=t((I)=>I.effortValue),cZ=JG(LZ.getState()),KJ=cZ?.identity.agentName,A8=cZ?.identity.color&&P8.includes(cZ.identity.color)?cZ.identity.color:void 0,M8=E0.useMemo(()=>XG(W0),[W0]),Az=M8.length>0||cZ!==void 0,Mz=E0.useMemo(()=>{if(cZ)return{...J,mode:cZ.permissionMode};return J},[cZ,J]),{historyQuery:PG,setHistoryQuery:L4,historyMatch:lY,historyFailedMatch:y6}=xF((I)=>{b(I.pastedContents),gJ(I.display)},q,$0,l,V0,L,N,C,a,b,y),wG=E0.useRef(-1);if(wG.current===-1)wG.current=Ug(H);let P9=E0.useRef(!1),[k6,b6]=E0.useState(!1),[F4,I6]=E0.useState(!1),[Rz,_G]=E0.useState(0),sJ=t((I)=>I.coordinatorTaskIndex),jz=E0.useCallback((I)=>n((e)=>{let _0=typeof I==="function"?I(e.coordinatorTaskIndex):I;if(_0===e.coordinatorTaskIndex)return e;return{...e,coordinatorTaskIndex:_0}}),[n]),$J=jV(),tJ=E0.useMemo(()=>Object.values(W0).some((I)=>U9(I)),[W0])?-1:0;E0.useEffect(()=>{if(sJ>=$J)jz(Math.max(tJ,$J-1));else if(sJ<tJ)jz(tJ)},[$J,sJ,tJ]);let[AG,yz]=E0.useState(!1),[MG,T6]=E0.useState(!1),[RG,kz]=E0.useState(!1),[PJ,bz]=E0.useState(!1),[R8,w9]=E0.useState(!1),[$X,fX]=E0.useState(!1),[eJ,hX]=E0.useState(!1),[_9,fJ]=E0.useState(!1),[$Y,A9]=E0.useState(!1),[ZX,M9]=E0.useState(!1),[rY,Iz]=E0.useState(null),fY=E0.useRef(null),_Y=E0.useMemo(()=>{let I=q.indexOf(`
|
|
97
|
+
`);if(I===-1)return!0;return V0<=I},[q,V0]),jG=E0.useMemo(()=>{let I=q.lastIndexOf(`
|
|
98
|
+
`);if(I===-1)return!0;return V0>I},[q,V0]),Tz=E0.useMemo(()=>{if(!$Z())return[];if(ZG())return[];if(!D0)return[];let I=jJ(Object.values(D0.teammates),(e)=>e.name!=="team-lead");return[{name:D0.teamName,memberCount:I,runningCount:0,idleCount:0}]},[D0]),OZ=E0.useMemo(()=>jJ(Object.values(W0),(I)=>I.status==="running"),[W0])>0&&!e7(W0,g0),R9=Tz.length>0,xX=E0.useMemo(()=>[OZ&&"tasks",U0&&"tmux",m&&"bagel",R9&&"teams",b0&&"bridge",t0&&"companion"].filter(Boolean),[OZ,U0,m,R9,b0,t0]),hJ=t((I)=>I.footerSelection),XY=hJ&&xX.includes(hJ)?hJ:null;E0.useEffect(()=>{if(hJ&&!XY)n((I)=>I.footerSelection===null?I:{...I,footerSelection:null})},[hJ,XY,n]);let YX=XY==="tasks",vz=XY==="tmux",j8=XY==="bagel",j9=XY==="teams",v6=XY==="bridge";function yY(I){if(n((e)=>e.footerSelection===I?e:{...e,footerSelection:I}),I==="tasks")_G(0),jz(tJ)}function JX(I,e=!1){let _0=XY?xX.indexOf(XY):-1,r0=xX[_0+I];if(r0)return yY(r0),!0;if(I<0&&e)return yY(null),!0;return!1}let{suggestion:Cz,promptSuggestionGhostRemainder:yG,markAccepted:Sz,logOutcomeAtSubmission:kG,markShown:bG,resetSuggestion:E4}=cF({inputValue:q,isAssistantResponding:Q}),sZ=E0.useMemo(()=>C&&lY?TJ(typeof lY==="string"?lY:lY.display):q,[C,lY,q]),kZ=E0.useMemo(()=>Sw(sZ),[sZ]),P4=t((I)=>I.ultraplanSessionUrl),xJ=t((I)=>I.ultraplanLaunching),iY=E0.useMemo(()=>[],[sZ,P4,xJ]),kY=E0.useMemo(()=>a3()?J_(sZ):[],[sZ]),C6=E0.useMemo(()=>rw(sZ),[sZ]),S6=E0.useMemo(()=>NF(sZ),[sZ]),y9=E0.useMemo(()=>{return EE(sZ).filter((e)=>{let _0=sZ.slice(e.start+1,e.end);return Y_(_0,G)})},[sZ,G]),$z=E0.useMemo(()=>hw(sZ),[sZ]),gX=E0.useSyncExternalStore(RE,yE),fz=E0.useMemo(()=>qV(LZ.getState().mcp.clients)?kE(sZ):[],[sZ,gX]),$6=E0.useMemo(()=>{if(!$Z())return[];if(!D0?.teammates)return[];let I=[],e=D0.teammates;if(!e)return I;let _0=/(^|\s)@([\w-]+)/g,r0=Object.values(e),s0;while((s0=_0.exec(sZ))!==null){let EZ=s0[1]??"",zY=s0.index+EZ.length,OY=s0[0].trimStart(),IY=s0[2],xY=r0.find((cJ)=>cJ.name===IY);if(xY?.color){let cJ=CJ[xY.color];if(cJ)I.push({start:zY,end:zY+OY.length,themeColor:cJ})}}return I},[sZ,D0]),hz=E0.useMemo(()=>w8(sZ).filter((I)=>I.match.startsWith("[Image")).map((I)=>({start:I.index,end:I.index+I.match.length})),[sZ]),IG=hz.some((I)=>I.start===V0);E0.useEffect(()=>{let I=hz.find((e)=>V0>e.start&&V0<e.end);if(I){let e=(I.start+I.end)/2;l(V0<e?I.start:I.end)}},[V0,hz,l]);let w4=E0.useMemo(()=>{let I=[];for(let e of hz)if(V0===e.start)I.push({start:e.start,end:e.end,color:void 0,inverse:!0,priority:8});if(C&&lY&&!y6)I.push({start:V0,end:V0+PG.length,color:"warning",priority:20});for(let e of C6)I.push({start:e.start,end:e.end,color:"warning",priority:15});for(let e of y9)I.push({start:e.start,end:e.end,color:"suggestion",priority:5});for(let e of $z)I.push({start:e.start,end:e.end,color:"suggestion",priority:5});for(let e of fz)I.push({start:e.start,end:e.end,color:"suggestion",priority:5});for(let e of $6)I.push({start:e.start,end:e.end,color:e.themeColor,priority:5});if(P0)I.push({start:P0.start,end:P0.end,color:void 0,dimColor:!0,priority:1});if(i3())for(let e of kZ)for(let _0=e.start;_0<e.end;_0++)I.push({start:_0,end:_0+1,color:q8(_0-e.start),shimmerColor:q8(_0-e.start,!0),priority:10});for(let e of kY)for(let _0=e.start;_0<e.end;_0++)I.push({start:_0,end:_0+1,color:q8(_0-e.start),shimmerColor:q8(_0-e.start,!0),priority:10});for(let e of S6)for(let _0=e.start;_0<e.end;_0++)I.push({start:_0,end:_0+1,color:q8(_0-e.start),shimmerColor:q8(_0-e.start,!0),priority:10});return I},[C,PG,lY,y6,V0,C6,hz,$6,y9,$z,fz,sZ,P0,kZ,iY,kY,S6]),{addNotification:xZ,removeNotification:bY}=JZ();E0.useEffect(()=>{if(kZ.length&&i3())xZ({key:"ultrathink-active",text:"Effort set to high for this turn",priority:"immediate",timeoutMs:5000});else bY("ultrathink-active")},[xZ,bY,kZ.length]),E0.useEffect(()=>{bY("ultraplan-active")},[xZ,bY,iY.length]),E0.useEffect(()=>{if(a3()&&kY.length)xZ({key:"ultrareview-active",text:"Run /ultrareview after Claude finishes to review these changes in the cloud",priority:"immediate",timeoutMs:5000})},[xZ,kY.length]);let TG=E0.useRef(q.length),y8=E0.useRef(q.length),vG=E0.useCallback(()=>{bY("stash-hint")},[bY]);E0.useEffect(()=>{let I=TG.current,e=y8.current,_0=q.length;if(TG.current=_0,_0>e){y8.current=_0;return}if(_0===0){y8.current=0;return}let r0=e>=20&&_0<=5,s0=I>=20&&_0<=5;if(r0&&!s0){if(!l0().hasUsedStash)xZ({key:"stash-hint",jsx:E(O,{dimColor:!0,children:["Tip:"," ",B(DJ,{action:"chat:stash",context:"Chat",fallback:"ctrl+s",description:"stash"})]}),priority:"immediate",timeoutMs:s5});y8.current=_0}},[q.length,xZ]);let{pushToBuffer:aY,undo:xz,canUndo:CG,clearBuffer:gz}=gF({maxBufferSize:50,debounceMs:1000});Ow({input:q,pastedContents:y,onInputChange:$0,setCursorOffset:l,setPastedContents:b});let ZB=ww({input:q,submitCount:w,viewingAgentName:KJ}),k8=E0.useCallback((I)=>{if(I==="?"){Z0("tengu_help_toggled",{}),p((EZ)=>!EZ);return}p(!1),vG(),gw(),g7(n);let e=I.length===q.length+1,_0=V0===0,r0=LJ(I);if(_0&&r0!=="prompt"){if(e){L(r0);return}if(q.length===0){L(r0);let EZ=TJ(I).replaceAll("\t"," ");aY(q,V0,y),$0(EZ),l(EZ.length);return}}let s0=I.replaceAll("\t"," ");if(q!==s0)aY(q,V0,y);n((EZ)=>EZ.footerSelection===null?EZ:{...EZ,footerSelection:null}),$0(s0)},[$0,L,q,V0,aY,y,vG,n]),{resetHistory:zZ,onHistoryUp:_4,onHistoryDown:vZ,dismissSearchHint:b8,historyIndex:e0}=hF((I,e,_0)=>{k8(I),L(e),b(_0)},q,y,l,N);E0.useEffect(()=>{if(C)b8()},[C,b8]);function I8(){if(cX.length>1)return;if(!_Y)return;if(z0.some(S9)){XX();return}_4()}function f6(){if(cX.length>1)return;if(!jG)return;if(vZ()&&xX.length>0){let I=xX[0];if(yY(I),I==="tasks"&&!l0().hasSeenTasksHint)HZ((e)=>e.hasSeenTasksHint?e:{...e,hasSeenTasksHint:!0})}}let[mX,A4]=E0.useState({suggestions:[],selectedSuggestion:-1,commandArgumentHint:void 0}),h6=E0.useCallback((I)=>{A4((e)=>typeof I==="function"?I(e):I)},[]),gJ=E0.useCallback(async(I,e=!1)=>{I=I.trimEnd();let _0=LZ.getState();if(_0.footerSelection&&xX.includes(_0.footerSelection))return;if(_0.viewSelectionMode==="selecting-agent")return;let r0=Object.values(y).some((xY)=>xY.type==="image"),s0=C0.text,EZ=!!s0&&s0.toLowerCase().startsWith(I.toLowerCase());if((I.trim()===""||I===s0||EZ)&&s0&&!r0&&!_0.viewingAgentTaskId){if(h0.status==="active"){Sz(),kG(s0,{skipReset:!0}),h(s0,{setCursorOffset:l,clearBuffer:gz,resetHistory:zZ},{state:h0,speculationSessionTimeSavedMs:wZ,setAppState:n});return}if(C0.shownAt>0)Sz(),I=s0}if($Z()){let xY=sE(I);if(xY){let cJ=await tE(xY.recipientName,xY.message,D0,F8);if(cJ.success){xZ({key:"direct-message-sent",text:`Sent to @${cJ.recipientName}`,priority:"immediate",timeoutMs:3000}),$0(""),l(0),gz(),zZ();return}else if(cJ.error==="no_team_context");}}if(I.trim()===""&&!r0)return;let OY=mX.suggestions.length>0&&mX.suggestions.every((xY)=>xY.description==="directory");if(mX.suggestions.length>0&&!e&&!OY){g(`[onSubmit] early return: suggestions showing (count=${mX.suggestions.length})`);return}if(C0.text&&C0.shownAt>0)kG(I);bY("stash-hint");let IY=K1(LZ.getState());if(IY.type!=="leader"&&u){Z0("tengu_transcript_input_to_teammate",{}),await u(I,IY.task,{setCursorOffset:l,clearBuffer:gz,resetHistory:zZ});return}await h(I,{setCursorOffset:l,clearBuffer:gz,resetHistory:zZ})},[C0,h0,wZ,D0,LZ,xX,mX.suggestions,h,u,gz,zZ,kG,n,Sz,y,bY]),{suggestions:cX,selectedSuggestion:YB,commandArgumentHint:T8,inlineGhostText:k9,maxColumnWidth:x6}=oE({commands:G,onInputChange:$0,onSubmit:gJ,setCursorOffset:l,input:q,cursorOffset:V0,mode:N,agents:K,setSuggestionsState:h6,suggestionsState:mX,suppressSuggestions:C||e0>0,markAccepted:Sz,onModeChange:L,promptSuggestionGhost:C0.text&&yG&&!y0?{fullText:C0.text,remainder:yG}:void 0,onDismissPromptSuggestion:E4});if(N==="prompt"&&cX.length===0&&Cz&&!y0)bG();if(C0.text&&!Cz&&C0.shownAt===0&&!y0)mw("timing",C0.text),n((I)=>({...I,promptSuggestion:{text:null,promptId:null,shownAt:0,acceptedAt:0,generationRequestId:null}}));function wJ(I,e,_0,r0,s0){Z0("tengu_paste_image",{}),L("prompt");let EZ=wG.current++,zY={id:EZ,type:"image",content:I,mediaType:e||"image/png",filename:_0||"Pasted image",dimensions:r0,sourcePath:s0};U7(zY),N7(zY),b((IY)=>({...IY,[EZ]:zY}));let OY=P9.current?" ":"";b9(OY+lw(EZ)),P9.current=!0}E0.useEffect(()=>{let I=new Set(w8(q).map((e)=>e.id));b((e)=>{let _0=Object.values(e).filter((s0)=>s0.type==="image"&&!I.has(s0.id));if(_0.length===0)return e;let r0={...e};for(let s0 of _0)delete r0[s0.id];return r0})},[q,b]);function SG(I){P9.current=!1;let e=yw(I).replace(/\r/g,`
|
|
99
|
+
`).replaceAll("\t"," "),_0=eE(e);if(_0.length>0){let EZ=_0.map((IY)=>IY.includes(" ")||IY.includes(":")?`@"${IY}"`:`@${IY}`).join(" "),zY=q[V0-1];e=(zY&&!/\s/.test(zY)?" ":"")+EZ+" "}if(q.length===0){let EZ=LJ(e);if(EZ!=="prompt")L(EZ),e=TJ(e)}let r0=J1(e),s0=Math.min(T9-10,2);if(e.length>cw||r0>s0){let EZ=wG.current++,zY={id:EZ,type:"text",content:e};b((OY)=>({...OY,[EZ]:zY})),b9(dw(EZ,r0))}else b9(e)}let g6=E0.useCallback((I,e)=>{if(!P9.current)return I;if(P9.current=!1,ow(I,e))return" "+I;return I},[]),$G=E0.useRef(V0);$G.current=V0;function b9(I){let e=L0.current,_0=$G.current;aY(e,_0,y);let r0=e.slice(0,_0)+I+e.slice(_0);$0(r0);let s0=_0+I.length;$G.current=s0,l(s0)}let fG=H1(()=>{},()=>_()),XX=E0.useCallback(()=>{let I=q1(q,V0);if(!I)return!1;if($0(I.text),L("prompt"),l(I.cursorOffset),I.images.length>0)b((e)=>{let _0={...e};for(let r0 of I.images)_0[r0.id]=r0;return _0});return!0},[$0,L,q,V0,b]);sL(j,function(I){Z0("tengu_ext_at_mentioned",{});let e,_0=z_.relative(mZ(),I.filePath);if(I.lineStart&&I.lineEnd)e=I.lineStart===I.lineEnd?`@${_0}#L${I.lineStart} `:`@${_0}#L${I.lineStart}-${I.lineEnd} `;else e=`@${_0} `;let r0=q[V0-1]??" ";if(!/\s/.test(r0))e=` ${e}`;b9(e)});let I9=E0.useCallback(()=>{if(CG){let I=xz();if(I)$0(I.text),l(I.cursorOffset),b(I.pastedContents)}},[CG,xz,$0,b]),hG=E0.useCallback(()=>{aY(q,V0,y);let I=q.slice(0,V0)+`
|
|
100
|
+
`+q.slice(V0);$0(I),l(V0+1)},[q,V0,$0,l,aY,y]),NY=E0.useCallback(async()=>{Z0("tengu_external_editor_used",{}),T6(!0);try{let I=await Z9(q,y);if(I.error)xZ({key:"external-editor-error",text:I.error,color:"warning",priority:"high"});if(I.content!==null&&I.content!==q)aY(q,V0,y),$0(I.content),l(I.content.length)}catch(I){if(I instanceof Error)u0(I);xZ({key:"external-editor-error",text:`External editor failed: ${lJ(I)}`,color:"warning",priority:"high"})}finally{T6(!1)}},[q,V0,y,aY,$0,xZ]),m6=E0.useCallback(()=>{if(q.trim()===""&&F!==void 0)$0(F.text),l(F.cursorOffset),b(F.pastedContents),P(void 0);else if(q.trim()!=="")P({text:q,cursorOffset:V0,pastedContents:y}),$0(""),l(0),b({}),HZ((I)=>{if(I.hasUsedStash)return I;return{...I,hasUsedStash:!0}})},[q,V0,F,$0,P,y,b]),uX=E0.useCallback(()=>{if(kz((I)=>!I),d)p(!1)},[d]),c6=E0.useCallback(()=>{if(fJ((I)=>!I),d)p(!1)},[d]),j4=E0.useCallback(()=>{if(A9((I)=>!I),d)p(!1)},[d]),CZ=E0.useCallback(()=>{if($Z()&&cZ&&y0){let r0={...J,mode:cZ.permissionMode},s0=Xz(r0,void 0);Z0("tengu_mode_cycle",{to:s0});let EZ=y0;if(n((zY)=>{let OY=zY.tasks[EZ];if(!OY||OY.type!=="in_process_teammate")return zY;if(OY.permissionMode===s0)return zY;return{...zY,tasks:{...zY.tasks,[EZ]:{...OY,permissionMode:s0}}}}),d)p(!1);return}g(`[auto-mode] handleCycleMode: currentMode=${J.mode} isAutoModeAvailable=${J.isAutoModeAvailable} showAutoModeOptIn=${ZX} timeoutPending=${!!fY.current}`);let I=Xz(J,D0),e=!1;if(e=I==="auto"&&J.mode!=="auto"&&!W1()&&!y0,e){if(Iz(J.mode),n((r0)=>({...r0,toolPermissionContext:{...r0.toolPermissionContext,mode:"auto"}})),X({...J,mode:"auto"}),fY.current)clearTimeout(fY.current);if(fY.current=setTimeout((r0,s0)=>{r0(!0),s0.current=null},400,M9,fY),d)p(!1);return}if(ZX||fY.current){if(ZX)Z0("tengu_auto_mode_opt_in_dialog_decline",{});if(M9(!1),fY.current)clearTimeout(fY.current),fY.current=null;Iz(null)}let{context:_0}=J2(J,D0);if(Z0("tengu_mode_cycle",{to:I}),I==="plan")HZ((r0)=>({...r0,lastPlanModeUse:Date.now()}));if(n((r0)=>({...r0,toolPermissionContext:{..._0,mode:I}})),X({..._0,mode:I}),fw(I,D0?.teamName),d)p(!1)},[J,D0,y0,cZ,n,X,d,ZX]),zX=E0.useCallback(()=>{{M9(!1),Iz(null);let I=wV(rY??J.mode,"auto",J);if(n((e)=>({...e,toolPermissionContext:{...I,mode:"auto"}})),X({...I,mode:"auto"}),d)p(!1)}},[d,p,rY,J,n,X]),GX=E0.useCallback(()=>{if(g(`[auto-mode] handleAutoModeOptInDecline: reverting to ${rY}, setting isAutoModeAvailable=false`),M9(!1),fY.current)clearTimeout(fY.current),fY.current=null;if(rY)$w(!1),n((I)=>({...I,toolPermissionContext:{...I.toolPermissionContext,mode:rY,isAutoModeAvailable:!1}})),X({...J,mode:rY,isAutoModeAvailable:!1}),Iz(null)},[rY,J,n,X]),AY=E0.useCallback(()=>{uw().then((I)=>{if(I)wJ(I.base64,I.mediaType);else{let e=m8("chat:imagePaste","Chat","ctrl+v"),_0=aZ.isSSH()?"No image found in clipboard. You're SSH'd; try scp?":`No image found in clipboard. Use ${e} to paste images.`;xZ({key:"no-image-in-clipboard",text:_0,priority:"immediate",timeoutMs:1000})}})},[xZ,wJ]),pX=sz();E0.useEffect(()=>{if(!pX||I0)return;return pX.registerHandler({action:"chat:submit",context:"Chat",handler:()=>{gJ(q)}})},[pX,I0,gJ,q]);let y4=E0.useMemo(()=>({"chat:undo":I9,"chat:newline":hG,"chat:externalEditor":NY,"chat:stash":m6,"chat:modelPicker":uX,"chat:thinkingToggle":j4,"chat:cycleMode":CZ,"chat:imagePaste":AY}),[I9,hG,NY,m6,uX,j4,CZ,AY]);uZ(y4,{context:"Chat",isActive:!I0}),KZ("chat:messageActions",()=>A?.(),{context:"Chat",isActive:!I0&&!C}),KZ("chat:fastMode",c6,{context:"Chat",isActive:!I0&&TX()&&V1()}),KZ("help:dismiss",()=>{p(!1)},{context:"Help",isActive:d});let v8=!I0;KZ("app:quickOpen",()=>{bz(!0),p(!1)},{context:"Global",isActive:v8}),KZ("app:globalSearch",()=>{w9(!0),p(!1)},{context:"Global",isActive:v8}),KZ("history:search",()=>{fX(!0),hX(!0),p(!1)},{context:"Global",isActive:!I0}),E0.useEffect(()=>{if(!eJ||$X)return;let I=setTimeout(()=>{hX(!1)},300000);return()=>clearTimeout(I)},[eJ,$X]),KZ("app:interrupt",()=>{g7(n)},{context:"Global",isActive:!Q&&h0.status==="active"}),uZ({"footer:up":()=>{JX(-1,!0)},"footer:down":()=>{if(YX&&!Az){$(!0),yY(null);return}JX(1)},"footer:next":()=>{if(YX&&Az){let I=1+M8.length;_G((e)=>(e+1)%I);return}JX(1)},"footer:previous":()=>{if(YX&&Az){let I=1+M8.length;_G((e)=>(e-1+I)%I);return}JX(-1)},"footer:openSelected":()=>{if(o0==="selecting-agent")return;switch(XY){case"companion":if(DY())yY(null),gJ("/buddy");break;case"tasks":if(Az)if(Rz===0)tY(n);else{let I=M8[Rz-1];if(I)O8(I.id,n)}else if(sJ===0&&$J>0)tY(n);else{let I=F3(W0)[sJ-1]?.id;if(I)O8(I,n);else $(!0),yY(null)}break;case"tmux":break;case"bagel":break;case"teams":b6(!0),yY(null);break;case"bridge":I6(!0),yY(null);break}},"footer:clearSelection":()=>{yY(null)},"footer:close":()=>{if(YX&&sJ>=1){let I=F3(W0)[sJ-1];if(!I)return!1;if(o0==="viewing-agent"&&I.id===y0){k8(q.slice(0,V0)+"x"+q.slice(V0)),l(V0+1);return}if(tw(I.id,n),I.status!=="running")jz((e)=>Math.max(tJ,e-1));return}return!1}},{context:"Footer",isActive:!!XY&&!I0}),lZ((I,e)=>{if(k6||PJ||R8||$X)return;if(tX()==="macos"&&Z2(I)){let _0=O3[I],r0=pw();xZ({key:"option-meta-hint",jsx:r0?E(O,{dimColor:!0,children:["To enable ",_0,", set ",B(O,{bold:!0,children:"Option as Meta"})," in"," ",r0," preferences (⌘,)"]}):E(O,{dimColor:!0,children:["To enable ",_0,", run /terminal-setup"]}),priority:"immediate",timeoutMs:5000})}if(XY&&I&&!e.ctrl&&!e.meta&&!e.escape&&!e.return){k8(q.slice(0,V0)+I+q.slice(V0)),l(V0+I.length);return}if(V0===0&&(e.escape||e.backspace||e.delete||e.ctrl&&I==="u"))L("prompt"),p(!1);if(d&&q===""&&(e.backspace||e.delete))p(!1);if(e.escape){if(h0.status==="active"){g7(n);return}if(Y0&&o){o();return}if(d){p(!1);return}if(XY)return;if(z0.some(S9)){XX();return}if(H.length>0&&!q&&!Q)fG()}if(e.return&&d)p(!1)});let KX=jw(),mz=TX()?bw():!1,xG=TX()?hZ&&(V1()||mz):!1,u6=Aw(xG??!1),{cwd:p6,branch:dX,pr:QX}=R5({isLoading:Q,withPr:!0}),QJ=m0?void 0:iw(oZ,M0);UF();let mJ=DY()?t((I)=>I.companionReaction!==void 0):!1,{columns:C8,rows:T9}=PZ(),cz=C8-3-HF(C8,mJ),_J=_Z()?Math.max(Bg,Math.floor(T9/2)-qg):void 0,S8=E0.useCallback((I)=>{if(!q||C)return;let e=Wz.fromText(q,cz,V0),_0=e.getViewportStartLine(_J),r0=e.measuredText.getOffsetFromPosition({line:I.localRow+_0,column:I.localCol});l(r0)},[q,cz,C,V0,_J]),gG=E0.useCallback((I)=>$(I??!0),[$]),uz=ZB,pz=E0.useMemo(()=>q.includes(`
|
|
101
|
+
`),[q]),k4=E0.useCallback((I,e)=>{let _0=!1;n((EZ)=>{return _0=TX()&&!r3(I)&&!!EZ.fastMode,{...EZ,mainLoopModel:I,mainLoopModelForSession:null,..._0&&{fastMode:!1}}}),kz(!1);let r0=(hZ??!1)&&!_0,s0=`Model set to ${vw(I)}`;if(nw(I,r0,Tw()))s0+=" · Billed as extra usage";if(_0)s0+=" · Fast mode OFF";xZ({key:"model-switched",jsx:B(O,{children:s0}),priority:"immediate",timeoutMs:3000}),Z0("tengu_model_picker_hotkey",{model:I})},[n,xZ,hZ]),v9=E0.useCallback(()=>{kz(!1)},[]),mG=E0.useMemo(()=>{if(!RG)return null;return B(M,{flexDirection:"column",marginTop:1,children:B(aw,{initial:VZ,sessionModel:yZ,onSelect:k4,onCancel:v9,isStandaloneCommand:!0,showFastModeNotice:TX()&&hZ&&r3(VZ)&&V1()})})},[RG,VZ,yZ,k4,v9]),cG=E0.useCallback((I)=>{if(fJ(!1),I)xZ({key:"fast-mode-toggled",jsx:B(O,{children:I}),priority:"immediate",timeoutMs:3000})},[xZ]),AJ=E0.useMemo(()=>{if(!_9)return null;return B(M,{flexDirection:"column",marginTop:1,children:B(Z_,{onDone:cG,unavailableReason:kw()})})},[_9,cG]),d6=E0.useCallback((I)=>{n((e)=>({...e,thinkingEnabled:I})),A9(!1),Z0("tengu_thinking_toggled_hotkey",{enabled:I}),xZ({key:"thinking-toggled-hotkey",jsx:E(O,{color:I?"suggestion":void 0,dimColor:!I,children:["Thinking ",I?"on":"off"]}),priority:"immediate",timeoutMs:3000})},[n,xZ]),l6=E0.useCallback(()=>{A9(!1)},[]),C9=E0.useMemo(()=>{if(!$Y)return null;return B(M,{flexDirection:"column",marginTop:1,children:B(i2,{currentValue:NZ??!0,onSelect:d6,onCancel:l6,isMidConversation:H.some((I)=>I.type==="assistant")})})},[$Y,NZ,d6,l6,H.length]),r6=E0.useMemo(()=>ZX?B(X_,{onAccept:zX,onDecline:GX}):null,[ZX,zX,GX]);sw(_Z()?r6:null);let dz=E0.useCallback((I)=>{let e=LJ(I.display),_0=TJ(I.display);L(e),$0(_0),b(I.pastedContents),l(_0.length),fX(!1)},[L,$0,b,l]),i6=E0.useCallback(()=>{fX(!1)},[]),hY=E0.useMemo(()=>eJ?B(E0.Activity,{mode:$X?"visible":"hidden",children:B(m2,{initialQuery:q,onSelect:dz,onCancel:i6})}):null,[eJ,$X,dz,i6]);if(f)return E(A0,{children:[hY,B(ew,{onDone:()=>$(!1),toolUseContext:T(H,[],new AbortController,M0),initialDetailTaskId:typeof f==="string"?f:void 0})]});if($Z()&&k6)return E(A0,{children:[hY,B(JP,{initialTeams:Tz,onDone:()=>{b6(!1)}})]});{let I=(e)=>{let _0=q[V0-1]??" ";b9(/\s/.test(_0)?e:` ${e}`)};if(PJ)return E(A0,{children:[hY,B(p2,{onDone:()=>bz(!1),onInsert:I})]});if(R8)return E(A0,{children:[hY,B($2,{onDone:()=>w9(!1),onInsert:I})]})}if($X)return B(A0,{children:hY});if(mG)return E(A0,{children:[hY,mG]});if(AJ)return E(A0,{children:[hY,AJ]});if(C9)return E(A0,{children:[hY,C9]});if(F4)return E(A0,{children:[hY,B(H2,{onDone:()=>{I6(!1),yY(null)}})]});let lz={multiline:!0,onSubmit:gJ,onChange:k8,value:C&&lY?TJ(typeof lY==="string"?lY:lY.display):q,onHistoryUp:I8,onHistoryDown:f6,onHistoryReset:zZ,placeholder:uz,onExit:v,onExitMessage:(I,e)=>j0({show:I,key:e}),onImagePaste:wJ,columns:cz,maxVisibleLines:_J,disableCursorMovementForUpDownKeys:cX.length>0||!!XY,disableEscapeDoublePress:cX.length>0,cursorOffset:V0,onChangeCursorOffset:l,onPaste:SG,onIsPastingChange:yz,focus:!C&&!I0&&!XY,showCursor:!XY&&!C&&!IG,argumentHint:T8,onUndo:CG?()=>{let I=xz();if(I)$0(I.text),l(I.cursorOffset),b(I.pastedContents)}:void 0,highlights:w4,inlineGhostText:k9,inputFilter:g6},rz=()=>{let I={bash:"bashBorder"};if(I[N])return I[N];if(YG())return"promptBorder";let e=FX();if(e&&P8.includes(e))return CJ[e];return"promptBorder"};if(MG)return E(A0,{children:[hY,B(M,{flexDirection:"row",alignItems:"center",justifyContent:"center",borderColor:rz(),borderStyle:"round",borderLeft:!1,borderRight:!1,borderBottom:!0,width:"100%",children:B(O,{dimColor:!0,italic:!0,children:"Save and close editor to continue..."})})]});let a6=nX()?B(f3,{...lz,initialMode:R,onModeChange:k}):B(r8,{...lz});return E(A0,{children:[hY,E(M,{flexDirection:"column",marginTop:m0?0:1,children:[!_Z()&&B(BQ,{}),K0&&B(M,{marginTop:1,marginLeft:2,children:B(O,{dimColor:!0,children:"Waiting for permission…"})}),B(Dw,{hasStash:F!==void 0}),B(M,{width:"100%",borderStyle:"single",borderTop:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderDimColor:!0}),KX?E(A0,{children:[B(O,{color:KX.bgColor,children:KX.text?E(A0,{children:["─".repeat(Math.max(0,C8-IZ(KX.text)-4)),E(O,{backgroundColor:KX.bgColor,color:"inverseText",children:[" ",KX.text," "]}),"──"]}):"─".repeat(C8)}),E(M,{flexDirection:"row",width:"100%",children:[B(p3,{mode:N,isLoading:Q,viewingAgentName:KJ,viewingAgentColor:A8}),B(M,{flexGrow:1,flexShrink:1,onClick:S8,children:a6})]}),B(O,{color:KX.bgColor,children:"─".repeat(C8)})]}):E(A0,{children:[E(M,{flexDirection:"row",alignItems:"flex-start",justifyContent:"flex-start",width:"100%",paddingBottom:1,children:[B(p3,{mode:N,isLoading:Q,viewingAgentName:KJ,viewingAgentColor:A8}),B(M,{flexGrow:1,flexShrink:1,onClick:S8,children:a6})]}),(()=>{let e=(xG??!1?u6?` ${n3(!0,mz)} ${d0.dim("/fast")} `:` ${n3(!0,mz)} `:"")+p6+dX+QX;return E(M,{width:"100%",flexDirection:"row",justifyContent:"space-between",children:[E(M,{gap:2,children:[B(M2,{}),B(P2,{messages:H})]}),B(M,{flexDirection:"column",alignItems:"flex-end",children:e?B(O,{children:e}):null})]})})()]}),B(Hw,{apiKeyStatus:z,debug:Y,exitMessage:H0,vimMode:nX()?R:void 0,mode:N,autoUpdaterResult:D,isAutoUpdating:q0,verbose:V,onAutoUpdaterResult:W,onChangeIsUpdating:X0,suggestions:cX,selectedSuggestion:YB,maxColumnWidth:x6,toolPermissionContext:Mz,helpOpen:d,suppressHint:q.length>0,isLoading:Q,tasksSelected:YX,teamsSelected:j9,bridgeSelected:v6,tmuxSelected:vz,teammateFooterIndex:Rz,ideSelection:Z,mcpClients:j,isPasting:AG,isInputWrapped:pz,messages:H,isSearching:C,historyQuery:PG,setHistoryQuery:L4,historyFailedMatch:y6,onOpenTasksDialog:_Z()?gG:void 0,effortStatusText:QJ}),_Z()?null:r6,_Z()?B(M,{position:"absolute",marginTop:m0?-2:-1,height:cX.length===0&&!ZX?1:0,width:"100%",paddingLeft:2,paddingRight:1,flexDirection:"column",justifyContent:"flex-end",overflow:"hidden",children:B(t5,{apiKeyStatus:z,autoUpdaterResult:D,debug:Y,isAutoUpdating:q0,verbose:V,messages:H,onAutoUpdaterResult:W,onChangeIsUpdating:X0,ideSelection:Z,mcpClients:j,isInputWrapped:pz})}):null]})]})}function Ug(Y){let Z=0;for(let J of Y)if(J.type==="user"){if(J.imagePasteIds){for(let X of J.imagePasteIds)if(X>Z)Z=X}if(Array.isArray(J.message.content)){for(let X of J.message.content)if(X.type==="text"){let z=w8(X.text);for(let G of z)if(G.id>Z)Z=G.id}}}return Z+1}var G_=_8.memo(Dg);var UY=x(Q0(),1);uJ();import{randomUUID as Ng}from"crypto";function zG(Y,Z){return{type:"assistant",uuid:Ng(),message:{id:`remote-${Z}`,type:"message",role:"assistant",content:[{type:"tool_use",id:Y.tool_use_id,name:Y.tool_name,input:Y.input}],model:"",stop_reason:null,stop_sequence:null,container:null,context_management:null,usage:{input_tokens:0,output_tokens:0,cache_creation_input_tokens:0,cache_read_input_tokens:0}},requestId:void 0,timestamp:new Date().toISOString()}}function GG(Y){return{name:Y,inputSchema:{},isEnabled:()=>!0,userFacingName:()=>Y,renderToolUseMessage:(Z)=>{let J=Object.entries(Z);if(J.length===0)return"";return J.slice(0,3).map(([X,z])=>{let G=typeof z==="string"?z:iZ(z);return`${X}: ${G}`}).join(", ")},call:async()=>({data:""}),description:async()=>"",prompt:()=>"",isReadOnly:()=>!1,isMcp:!1,needsPermissions:()=>!0}}BZ();Og();BY();function Lg(Y){return{type:"assistant",message:Y.message,uuid:Y.uuid,requestId:void 0,timestamp:new Date().toISOString(),error:Y.error}}function Fg(Y){return{type:"stream_event",event:Y.event}}function Eg(Y){let Z=Y.subtype!=="success";return{type:"system",subtype:"informational",content:Z?Y.errors?.join(", ")||"Unknown error":"Session completed successfully",level:Z?"warning":"info",uuid:Y.uuid,timestamp:new Date().toISOString()}}function Pg(Y){return{type:"system",subtype:"informational",content:`Remote session initialized (model: ${Y.model})`,level:"info",uuid:Y.uuid,timestamp:new Date().toISOString()}}function wg(Y){if(!Y.status)return null;return{type:"system",subtype:"informational",content:Y.status==="compacting"?"Compacting conversation…":`Status: ${Y.status}`,level:"info",uuid:Y.uuid,timestamp:new Date().toISOString()}}function _g(Y){return{type:"system",subtype:"informational",content:`Tool ${Y.tool_name} running for ${Y.elapsed_time_seconds}s…`,level:"info",uuid:Y.uuid,timestamp:new Date().toISOString(),toolUseID:Y.tool_use_id}}function Ag(Y){return{type:"system",subtype:"compact_boundary",content:"Conversation compacted",level:"info",uuid:Y.uuid,timestamp:new Date().toISOString(),compactMetadata:K_(Y.compact_metadata)}}function Bz(Y,Z){switch(Y.type){case"assistant":return{type:"message",message:Lg(Y)};case"user":{let J=Y.message?.content,X=Array.isArray(J)&&J.some((z)=>z.type==="tool_result");if(Z?.convertToolResults&&X)return{type:"message",message:gY({content:J,toolUseResult:Y.tool_use_result,uuid:Y.uuid,timestamp:Y.timestamp})};if(Z?.convertUserTextMessages&&!X){if(typeof J==="string"||Array.isArray(J))return{type:"message",message:gY({content:J,toolUseResult:Y.tool_use_result,uuid:Y.uuid,timestamp:Y.timestamp})}}return{type:"ignored"}}case"stream_event":return{type:"stream_event",event:Fg(Y)};case"result":if(Y.subtype!=="success")return{type:"message",message:Eg(Y)};return{type:"ignored"};case"system":if(Y.subtype==="init")return{type:"message",message:Pg(Y)};if(Y.subtype==="status"){let J=wg(Y);return J?{type:"message",message:J}:{type:"ignored"}}if(Y.subtype==="compact_boundary")return{type:"message",message:Ag(Y)};return g(`[sdkMessageAdapter] Ignoring system message subtype: ${Y.subtype}`),{type:"ignored"};case"tool_progress":return{type:"message",message:_g(Y)};case"auth_status":return g("[sdkMessageAdapter] Ignoring auth_status message"),{type:"ignored"};case"tool_use_summary":return g("[sdkMessageAdapter] Ignoring tool_use_summary message"),{type:"ignored"};case"rate_limit_event":return g("[sdkMessageAdapter] Ignoring rate_limit_event message"),{type:"ignored"};default:return g(`[sdkMessageAdapter] Unknown message type: ${Y.type}`),{type:"ignored"}}}function KG(Y){return Y.type==="result"}YZ();o7();BZ();vY();BY();W_();V_();var Mg=60000,Rg=180000;function B_({config:Y,setMessages:Z,setIsLoading:J,onInit:X,setToolUseConfirmQueue:z,tools:G,setStreamingToolUses:K,setStreamMode:Q,setInProgressToolUseIDs:V}){let H=!!Y,W=n0(),D=UY.useCallback((b)=>W((R)=>R.remoteConnectionStatus===b?R:{...R,remoteConnectionStatus:b}),[W]),q=UY.useRef(new Set),U=UY.useCallback(()=>{let b=q.current.size;W((R)=>R.remoteBackgroundTaskCount===b?R:{...R,remoteBackgroundTaskCount:b})},[W]),N=UY.useRef(null),L=UY.useRef(!1),F=UY.useRef(null),P=UY.useRef(!1),w=UY.useRef(new H_(50)),_=UY.useRef(G);UY.useEffect(()=>{_.current=G},[G]),UY.useEffect(()=>{if(!Y)return;g(`[useRemoteSession] Initializing for session ${Y.sessionId}`);let b=new q_(Y,{onMessage:(R)=>{let k=[`type=${R.type}`];if("subtype"in R)k.push(`subtype=${R.subtype}`);if(R.type==="user"){let $=R.message?.content;k.push(`content=${Array.isArray($)?$.map((v)=>v.type).join(","):typeof $}`)}if(g(`[useRemoteSession] Received ${k.join(" ")}`),N.current)clearTimeout(N.current),N.current=null;if(R.type==="user"&&R.uuid&&w.current.has(R.uuid)){g(`[useRemoteSession] Dropping echoed user message ${R.uuid}`);return}if(R.type==="system"&&R.subtype==="init"&&X)g(`[useRemoteSession] Init received with ${R.slash_commands.length} slash commands`),X(R.slash_commands);if(R.type==="system"){if(R.subtype==="task_started"){q.current.add(R.task_id),U();return}if(R.subtype==="task_notification"){q.current.delete(R.task_id),U();return}if(R.subtype==="task_progress")return;if(R.subtype==="status"){let $=L.current;if(L.current=R.status==="compacting",$&&L.current)return}if(R.subtype==="compact_boundary")L.current=!1}if(KG(R))L.current=!1,J(!1);if(V&&R.type==="user"){let $=R.message?.content;if(Array.isArray($)){let v=[];for(let T of $)if(T.type==="tool_result")v.push(T.tool_use_id);if(v.length>0)V((T)=>{let h=new Set(T);for(let u of v)h.delete(u);return h.size===T.size?T:h})}}let f=Bz(R,Y.viewerOnly?{convertToolResults:!0,convertUserTextMessages:!0}:void 0);if(f.type==="message"){if(K?.(($)=>$.length>0?[]:$),V&&f.message.type==="assistant"){let $=f.message.message.content.filter((v)=>v.type==="tool_use").map((v)=>v.id);if($.length>0)V((v)=>{let T=new Set(v);for(let h of $)T.add(h);return T})}Z(($)=>[...$,f.message])}else if(f.type==="stream_event")if(K&&Q)D1(f.event,($)=>Z((v)=>[...v,$]),()=>{},Q,K);else g("[useRemoteSession] Stream event received but streaming callbacks not provided")},onPermissionRequest:(R,k)=>{g(`[useRemoteSession] Permission request for tool: ${R.tool_name}`);let f=O9(_.current,R.tool_name)??GG(R.tool_name),$=zG(R,k),v={behavior:"ask",message:R.description??`${R.tool_name} requires permission`,suggestions:R.permission_suggestions,blockedPath:R.blocked_path},T={assistantMessage:$,tool:f,description:R.description??`${R.tool_name} requires permission`,input:R.input,toolUseContext:{},toolUseID:R.tool_use_id,permissionResult:v,permissionPromptStartTimeMs:Date.now(),onUserInteraction(){},onAbort(){let h={behavior:"deny",message:"User aborted"};b.respondToPermissionRequest(k,h),z((u)=>u.filter((C)=>C.toolUseID!==R.tool_use_id))},onAllow(h,u,C){let a={behavior:"allow",updatedInput:h};b.respondToPermissionRequest(k,a),z((o)=>o.filter((Y0)=>Y0.toolUseID!==R.tool_use_id)),J(!0)},onReject(h){let u={behavior:"deny",message:h??"User denied permission"};b.respondToPermissionRequest(k,u),z((C)=>C.filter((a)=>a.toolUseID!==R.tool_use_id))},async recheckPermission(){}};z((h)=>[...h,T]),J(!1)},onPermissionCancelled:(R,k)=>{g(`[useRemoteSession] Permission request cancelled: ${R}`);let f=k??R;z(($)=>$.filter((v)=>v.toolUseID!==f)),J(!0)},onConnected:()=>{g("[useRemoteSession] Connected"),D("connected")},onReconnecting:()=>{g("[useRemoteSession] Reconnecting"),D("reconnecting"),q.current.clear(),U(),V?.((R)=>R.size>0?new Set:R)},onDisconnected:()=>{g("[useRemoteSession] Disconnected"),D("disconnected"),J(!1),q.current.clear(),U(),V?.((R)=>R.size>0?new Set:R)},onError:(R)=>{g(`[useRemoteSession] Error: ${R.message}`)}});return F.current=b,b.connect(),()=>{if(g("[useRemoteSession] Cleanup - disconnecting"),N.current)clearTimeout(N.current),N.current=null;b.disconnect(),F.current=null}},[Y,Z,J,X,z,K,Q,V,D,U]);let A=UY.useCallback(async(b,R)=>{let k=F.current;if(!k)return g("[useRemoteSession] Cannot send - no manager"),!1;if(N.current)clearTimeout(N.current);if(J(!0),R?.uuid)w.current.add(R.uuid);let f=await k.sendMessage(b,R);if(!f)return J(!1),!1;if(!P.current&&Y&&!Y.hasInitialPrompt&&!Y.viewerOnly){P.current=!0;let $=Y.sessionId,v=typeof b==="string"?b:K7(b," ");if(v)B1(v,new AbortController().signal).then((T)=>{Q_($,T??CY(v,75))})}if(!Y?.viewerOnly){let $=L.current?Rg:Mg;N.current=setTimeout((v,T)=>{g("[useRemoteSession] Response timeout - attempting reconnect");let h=z8("Remote session may be unresponsive. Attempting to reconnect…","warning");v((u)=>[...u,h]),T.reconnect()},$,Z,k)}return f},[Y,J,Z]),j=UY.useCallback(()=>{if(N.current)clearTimeout(N.current),N.current=null;if(!Y?.viewerOnly)F.current?.cancelSession();J(!1)},[Y,J]),y=UY.useCallback(()=>{if(N.current)clearTimeout(N.current),N.current=null;F.current?.disconnect(),F.current=null},[]);return UY.useMemo(()=>({isRemoteMode:H,sendMessage:A,cancelRequest:j,disconnect:y}),[H,A,j,y])}var XJ=x(Q0(),1);BZ();uJ();function jg(Y){return typeof Y==="object"&&Y!==null&&"type"in Y&&typeof Y.type==="string"}class s3{ws=null;config;callbacks;constructor(Y,Z){this.config=Y,this.callbacks=Z}connect(){let Y={};if(this.config.authToken)Y.authorization=`Bearer ${this.config.authToken}`;this.ws=new WebSocket(this.config.wsUrl,{headers:Y}),this.ws.addEventListener("open",()=>{this.callbacks.onConnected?.()}),this.ws.addEventListener("message",(Z)=>{let X=(typeof Z.data==="string"?Z.data:"").split(`
|
|
102
|
+
`).filter((z)=>z.trim());for(let z of X){let G;try{G=h8(z)}catch{continue}if(!jg(G))continue;let K=G;if(K.type==="control_request"){if(K.request.subtype==="can_use_tool")this.callbacks.onPermissionRequest(K.request,K.request_id);else g(`[DirectConnect] Unsupported control request subtype: ${K.request.subtype}`),this.sendErrorResponse(K.request_id,`Unsupported control request subtype: ${K.request.subtype}`);continue}if(K.type!=="control_response"&&K.type!=="keep_alive"&&K.type!=="control_cancel_request"&&K.type!=="streamlined_text"&&K.type!=="streamlined_tool_use_summary"&&!(K.type==="system"&&K.subtype==="post_turn_summary"))this.callbacks.onMessage(K)}}),this.ws.addEventListener("close",()=>{this.callbacks.onDisconnected?.()}),this.ws.addEventListener("error",()=>{this.callbacks.onError?.(Error("WebSocket connection error"))})}sendMessage(Y){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return!1;let Z=iZ({type:"user",message:{role:"user",content:Y},parent_tool_use_id:null,session_id:""});return this.ws.send(Z),!0}respondToPermissionRequest(Y,Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let J=iZ({type:"control_response",response:{subtype:"success",request_id:Y,response:{behavior:Z.behavior,...Z.behavior==="allow"?{updatedInput:Z.updatedInput}:{message:Z.message}}}});this.ws.send(J)}sendInterrupt(){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let Y=iZ({type:"control_request",request_id:crypto.randomUUID(),request:{subtype:"interrupt"}});this.ws.send(Y)}sendErrorResponse(Y,Z){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return;let J=iZ({type:"control_response",response:{subtype:"error",request_id:Y,error:Z}});this.ws.send(J)}disconnect(){if(this.ws)this.ws.close(),this.ws=null}isConnected(){return this.ws?.readyState===WebSocket.OPEN}}o7();BZ();N1();function D_({config:Y,setMessages:Z,setIsLoading:J,setToolUseConfirmQueue:X,tools:z}){let G=!!Y,K=XJ.useRef(null),Q=XJ.useRef(!1),V=XJ.useRef(!1),H=XJ.useRef(z);XJ.useEffect(()=>{H.current=z},[z]),XJ.useEffect(()=>{if(!Y)return;Q.current=!1,g(`[useDirectConnect] Connecting to ${Y.wsUrl}`);let U=new s3(Y,{onMessage:(N)=>{if(KG(N))J(!1);if(N.type==="system"&&N.subtype==="init"){if(Q.current)return;Q.current=!0}let L=Bz(N,{convertToolResults:!0});if(L.type==="message")Z((F)=>[...F,L.message])},onPermissionRequest:(N,L)=>{g(`[useDirectConnect] Permission request for tool: ${N.tool_name}`);let F=O9(H.current,N.tool_name)??GG(N.tool_name),P=zG(N,L),w={behavior:"ask",message:N.description??`${N.tool_name} requires permission`,suggestions:N.permission_suggestions,blockedPath:N.blocked_path},_={assistantMessage:P,tool:F,description:N.description??`${N.tool_name} requires permission`,input:N.input,toolUseContext:{},toolUseID:N.tool_use_id,permissionResult:w,permissionPromptStartTimeMs:Date.now(),onUserInteraction(){},onAbort(){let A={behavior:"deny",message:"User aborted"};U.respondToPermissionRequest(L,A),X((j)=>j.filter((y)=>y.toolUseID!==N.tool_use_id))},onAllow(A,j,y){let b={behavior:"allow",updatedInput:A};U.respondToPermissionRequest(L,b),X((R)=>R.filter((k)=>k.toolUseID!==N.tool_use_id)),J(!0)},onReject(A){let j={behavior:"deny",message:A??"User denied permission"};U.respondToPermissionRequest(L,j),X((y)=>y.filter((b)=>b.toolUseID!==N.tool_use_id))},async recheckPermission(){}};X((A)=>[...A,_]),J(!1)},onConnected:()=>{g("[useDirectConnect] Connected"),V.current=!0},onDisconnected:()=>{if(g("[useDirectConnect] Disconnected"),!V.current)process.stderr.write(`
|
|
103
|
+
Failed to connect to server at ${Y.wsUrl}
|
|
104
|
+
`);else process.stderr.write(`
|
|
105
|
+
Server disconnected.
|
|
106
|
+
`);V.current=!1,U1(1),J(!1)},onError:(N)=>{g(`[useDirectConnect] Error: ${N.message}`)}});return K.current=U,U.connect(),()=>{g("[useDirectConnect] Cleanup - disconnecting"),U.disconnect(),K.current=null}},[Y,Z,J,X]);let W=XJ.useCallback(async(U)=>{let N=K.current;if(!N)return!1;return J(!0),N.sendMessage(U)},[J]),D=XJ.useCallback(()=>{K.current?.sendInterrupt(),J(!1)},[J]),q=XJ.useCallback(()=>{K.current?.disconnect(),K.current=null,V.current=!1},[]);return XJ.useMemo(()=>({isRemoteMode:G,sendMessage:W,cancelRequest:D,disconnect:q}),[G,W,D,q])}var zJ=x(Q0(),1);import{randomUUID as yg}from"crypto";o7();BZ();N1();function U_({session:Y,setMessages:Z,setIsLoading:J,setToolUseConfirmQueue:X,tools:z}){let G=!!Y,K=zJ.useRef(null),Q=zJ.useRef(!1),V=zJ.useRef(!1),H=zJ.useRef(z);zJ.useEffect(()=>{H.current=z},[z]),zJ.useEffect(()=>{if(!Y)return;Q.current=!1,g("[useSSHSession] wiring SSH session manager");let U=Y.createManager({onMessage:(N)=>{if(KG(N))J(!1);if(N.type==="system"&&N.subtype==="init"){if(Q.current)return;Q.current=!0}let L=Bz(N,{convertToolResults:!0});if(L.type==="message")Z((F)=>[...F,L.message])},onPermissionRequest:(N,L)=>{g(`[useSSHSession] permission request: ${N.tool_name}`);let F=O9(H.current,N.tool_name)??GG(N.tool_name),P=zG(N,L),w={behavior:"ask",message:N.description??`${N.tool_name} requires permission`,suggestions:N.permission_suggestions,blockedPath:N.blocked_path},_={assistantMessage:P,tool:F,description:N.description??`${N.tool_name} requires permission`,input:N.input,toolUseContext:{},toolUseID:N.tool_use_id,permissionResult:w,permissionPromptStartTimeMs:Date.now(),onUserInteraction(){},onAbort(){U.respondToPermissionRequest(L,{behavior:"deny",message:"User aborted"}),X((A)=>A.filter((j)=>j.toolUseID!==N.tool_use_id))},onAllow(A){U.respondToPermissionRequest(L,{behavior:"allow",updatedInput:A}),X((j)=>j.filter((y)=>y.toolUseID!==N.tool_use_id)),J(!0)},onReject(A){U.respondToPermissionRequest(L,{behavior:"deny",message:A??"User denied permission"}),X((j)=>j.filter((y)=>y.toolUseID!==N.tool_use_id))},async recheckPermission(){}};X((A)=>[...A,_]),J(!1)},onConnected:()=>{g("[useSSHSession] connected"),V.current=!0},onReconnecting:(N,L)=>{g(`[useSSHSession] ssh dropped, reconnecting (${N}/${L})`),V.current=!1,J(!1);let F={type:"system",subtype:"informational",content:`SSH connection dropped — reconnecting (attempt ${N}/${L})...`,timestamp:new Date().toISOString(),uuid:yg(),level:"warning"};Z((P)=>[...P,F])},onDisconnected:()=>{g("[useSSHSession] ssh process exited (giving up)");let N=Y.getStderrTail().trim(),L=V.current,F=Y.proc.exitCode;V.current=!1,J(!1);let P=L?"Remote session ended.":"SSH session failed before connecting.";if(N&&(!L||F!==0))P+=`
|
|
107
|
+
Remote stderr (exit ${F??"signal "+Y.proc.signalCode}):
|
|
108
|
+
${N}`;U1(1,"other",{finalMessage:P})},onError:(N)=>{g(`[useSSHSession] error: ${N.message}`)}});return K.current=U,U.connect(),()=>{g("[useSSHSession] cleanup"),U.disconnect(),Y.proxy.stop(),K.current=null}},[Y,Z,J,X]);let W=zJ.useCallback(async(U)=>{let N=K.current;if(!N)return!1;return J(!0),N.sendMessage(U)},[J]),D=zJ.useCallback(()=>{K.current?.sendInterrupt(),J(!1)},[J]),q=zJ.useCallback(()=>{K.current?.disconnect(),K.current=null,V.current=!1},[]);return zJ.useMemo(()=>({isRemoteMode:G,sendMessage:W,cancelRequest:D,disconnect:q}),[G,W,D,q])}var O1=x(Q0(),1);kg();BZ();V_();BZ();function N_(Y){return{onBeforeQuery:async()=>!0,onTurnComplete:async()=>{},render:()=>null}}lu();hu();Nu();Uu();FK();FK();t3();var L_=x(Q0(),1);function F_(Y){L_.useEffect(()=>{let Z=()=>{if(L1())process.stdout.write(`
|
|
109
|
+
`+O_()+`
|
|
110
|
+
`);iQ(Y?.())};return process.on("exit",Z),()=>{process.off("exit",Z)}},[])}function E_(){}var Dz=x(Q0(),1);function P_(Y,Z){let J=Dz.useRef(Y??null),X=Dz.useRef(!Y);return Dz.useEffect(()=>{let z=J.current;if(!z)return;let G=!1;return z.then((K)=>{if(G)return;if(X.current=!0,J.current=null,K.length>0)Z((Q)=>[...K,...Q])}),()=>{G=!0}},[Z]),Dz.useCallback(async()=>{if(X.current||!J.current)return;let z=await J.current;if(X.current)return;if(X.current=!0,J.current=null,z.length>0)Z((G)=>[...z,...G])},[Z])}B9();mK();AZ();BW();s9();var Uz=x(Q0(),1);function w_(){if(!hK()||QG())return"valid";let{key:Y,source:Z}=e3({skipRetrievingKeyFromApiKeyHelper:!0});if(Y||Z==="apiKeyHelper")return"loading";return"missing"}function R_(){let[Y,Z]=Uz.useState(w_),[J,X]=Uz.useState(null),z=hK()&&!QG();Uz.useEffect(()=>{let K=z?w_():"valid";if(Z((Q)=>Q===K?Q:K),K!=="error")X(null)},[z]);let G=Uz.useCallback(async()=>{if(!hK()||QG()){Z("valid");return}await A_(__());let{key:K,source:Q}=e3();if(!K){if(Q==="apiKeyHelper"){Z("error"),X(Error("API key helper did not return a valid key"));return}Z("missing");return}try{let H=await M_(K,!1)?"valid":"invalid";Z(H);return}catch(V){X(V),Z("error");return}},[]);return{status:Y,reverify:G,error:J}}yD();OQ();d2();cH();N0();YZ();Z7();XK();eK();Z1();var F1=x(Q0(),1);function bg(Y,Z){Z((J)=>{let X=XG(J.tasks).length;if(X===0)return J;if(J.expandedView!=="teammates")return{...J,expandedView:"teammates",viewSelectionMode:"selecting-agent",selectedIPAgentIndex:-1};let z=X,G=J.selectedIPAgentIndex,K=Y===1?G>=z?-1:G+1:G<=-1?z:G-1;return{...J,selectedIPAgentIndex:K,viewSelectionMode:"selecting-agent"}})}function y_(Y){let Z=t((q)=>q.tasks),J=t((q)=>q.viewSelectionMode),X=t((q)=>q.viewingAgentTaskId),z=t((q)=>q.selectedIPAgentIndex),G=n0(),K=XG(Z),Q=K.length,V=Object.values(Z).some((q)=>U9(q)&&q.type!=="in_process_teammate"),H=F1.useRef(Q);F1.useEffect(()=>{let q=H.current;H.current=Q,G((U)=>{let L=XG(U.tasks).length;if(L===0&&q>0&&U.selectedIPAgentIndex!==-1){if(U.viewSelectionMode==="viewing-agent")return{...U,selectedIPAgentIndex:-1};return{...U,selectedIPAgentIndex:-1,viewSelectionMode:"none"}}let F=U.expandedView==="teammates"?L:L-1;if(L>0&&U.selectedIPAgentIndex>F)return{...U,selectedIPAgentIndex:F};return U})},[Q,G]);let W=()=>{if(Q===0)return null;let U=K[z];if(!U)return null;return{taskId:U.id,task:U}},D=(q)=>{if(q.key==="escape"&&J==="viewing-agent"){q.preventDefault();let U=X;if(U){let N=Z[U];if(vX(N)&&N.status==="running"){N.currentWorkAbortController?.abort();return}}tY(G);return}if(q.key==="escape"&&J==="selecting-agent"){q.preventDefault(),G((U)=>({...U,viewSelectionMode:"none",selectedIPAgentIndex:-1}));return}if(q.shift&&(q.key==="up"||q.key==="down")){if(q.preventDefault(),Q>0)bg(q.key==="down"?1:-1,G);else if(V)Y?.onOpenBackgroundTasks?.();return}if(q.key==="f"&&J==="selecting-agent"&&Q>0){q.preventDefault();let U=W();if(U)O8(U.taskId,G);return}if(q.key==="return"&&J==="selecting-agent"){if(q.preventDefault(),z===-1)tY(G);else if(z>=Q)G((U)=>({...U,expandedView:"none",viewSelectionMode:"none",selectedIPAgentIndex:-1}));else{let U=W();if(U)O8(U.taskId,G)}return}if(q.key==="k"&&J==="selecting-agent"&&z>=0){q.preventDefault();let U=W();if(U&&U.task.status==="running")j_.kill(U.taskId,G);return}};return lZ((q,U,N)=>{D(new x7(N.keypress))}),{handleKeyDown:D}}AZ();G8();var C_=x(Q0(),1);Kz();BZ();Ig();a8();uJ();Y8();gV();Kz();function Zq(Y,Z,J){let{teamName:X,agentId:z,agentName:G}=J,K=n7(X);if(!K){g(`[TeammateInit] Team file not found for team: ${X}`);return}let Q=K.leadAgentId;if(K.teamAllowedPaths&&K.teamAllowedPaths.length>0){g(`[TeammateInit] Found ${K.teamAllowedPaths.length} team-wide allowed path(s)`);for(let W of K.teamAllowedPaths){let D=W.path.startsWith("/")?`/${W.path}/**`:`${W.path}/**`;g(`[TeammateInit] Applying team permission: ${W.toolName} allowed in ${W.path} (rule: ${D})`),Y((q)=>({...q,toolPermissionContext:J8(q.toolPermissionContext,{type:"addRules",rules:[{toolName:W.toolName,ruleContent:D}],behavior:"allow",destination:"session"})}))}}let H=K.members.find((W)=>W.agentId===Q)?.name||"team-lead";if(z===Q){g("[TeammateInit] This agent is the team leader - skipping idle notification hook");return}g(`[TeammateInit] Registering Stop hook for teammate ${G} to notify leader ${H}`),k_(Y,Z,"Stop","",async(W,D)=>{E1(X,G,!1);let q=b_(G,{idleReason:"available",summary:I_(W)});return await F8(H,{from:G,text:iZ(q),timestamp:new Date().toISOString(),color:FX()}),g(`[TeammateInit] Sent idle notification to leader ${H}`),!0},"Failed to send idle notification to team leader",{timeout:1e4})}Y8();function S_(Y,Z,{enabled:J=!0}={}){C_.useEffect(()=>{if(!J)return;if($Z()){let X=Z?.[0],z=X&&"teamName"in X?X.teamName:void 0,G=X&&"agentName"in X?X.agentName:void 0;if(z&&G){v_(Y,z,G);let Q=n7(z)?.members.find((V)=>V.name===G);if(Q)Zq(Y,sY(),{teamName:z,agentId:Q.agentId,agentName:G})}else{let K=T_?.();if(K?.teamName&&K?.agentId&&K?.agentName)Zq(Y,sY(),{teamName:K.teamName,agentId:K.agentId,agentName:K.agentName})}}},[Y,Z,J])}YZ();Z7();eK();var $_=x(Q0(),1);function f_(){let Y=n0(),Z=t((Q)=>Q.viewingAgentTaskId),J=t((Q)=>Q.viewingAgentTaskId?Q.tasks[Q.viewingAgentTaskId]:void 0),X=J&&vX(J)?J:void 0,z=X?.status,G=X?.error,K=J!==void 0;$_.useEffect(()=>{if(!Z)return;if(!K){tY(Y);return}if(!X)return;if(z==="killed"||z==="failed"||G||z!=="running"&&z!=="completed"&&z!=="pending"){tY(Y);return}},[Z,K,X,z,G,Y])}yJ();wu();KA();N0();vK();w5();Sg();Yq();BZ();yJ();rZ();ZA();var qA=x(v0(),1);rZ();async function h_(Y){let{ctx:Z,updatedInput:J,suggestions:X,permissionMode:z}=Y;try{let G=await Z.runHooks(z,X,J);if(G)return G;let K=await Z.tryClassifier?.(Y.pendingClassifierCheck,J);if(K)return K}catch(G){if(G instanceof Error)u0(G);else u0(Error(`Automated permission check failed: ${String(G)}`))}return null}BZ();AZ();s_();Tg();vg();vK();w5();Yq();yJ();ZA();import{randomUUID as Cg}from"crypto";DZ();dJ();vK();w5();Yq();BZ();_W();BY();a8();r_();function w1(Y){let Z=!1,J=!1;return{resolve(X){if(J)return;J=!0,Z=!0,Y(X)},isResolved(){return Z},claim(){if(Z)return!1;return Z=!0,!0}}}function a_(Y,Z,J,X,z,G,K){let Q=X.message.id,V={tool:Y,input:Z,toolUseContext:J,assistantMessage:X,messageId:Q,toolUseID:z,logDecision(H,W){Z6({tool:Y,input:W?.input??Z,toolUseContext:J,messageId:Q,toolUseID:z},H,W?.permissionPromptStartTimeMs)},logCancelled(){Z0("tengu_tool_use_cancelled",{messageID:Q,toolName:gZ(Y.name)})},async persistPermissions(H){if(H.length===0)return!1;d_(H);let W=J.getAppState();return G(P1(W.toolPermissionContext,H)),H.some((D)=>p_(D.destination))},resolveIfAborted(H){if(!J.abortController.signal.aborted)return!1;return this.logCancelled(),H(this.cancelAndAbort(void 0,!0)),!0},cancelAndAbort(H,W,D){let q=!!J.agentId,U=H?`${q?u_:m_}${H}`:q?c_:g_,N=q?U:x_(U);if(W||!H&&!D?.length&&!q)g(`Aborting: tool=${Y.name} isAbort=${W} hasFeedback=${!!H} isSubagent=${q}`),J.abortController.abort();return{behavior:"ask",message:N,contentBlocks:D}},...{async tryClassifier(H,W){if(Y.name!==H8||!H)return null;let D=await l_(H,J.abortController.signal,J.options.isNonInteractiveSession);if(!D)return null;if(D.type==="classifier"){let q=D.reason.match(/^Allowed by prompt rule: "(.+)"$/)?.[1];if(q)VG(z,q)}return Z6({tool:Y,input:Z,toolUseContext:J,messageId:Q,toolUseID:z},{decision:"accept",source:{type:"classifier"}},void 0),{behavior:"allow",updatedInput:W??Z,userModified:!1,decisionReason:D}}},async runHooks(H,W,D,q){for await(let U of i_(Y.name,z,Z,J,H,W,J.abortController.signal))if(U.permissionRequestResult){let N=U.permissionRequestResult;if(N.behavior==="allow"){let L=N.updatedInput??D??Z;return await this.handleHookAllow(L,N.updatedPermissions??[],q)}else if(N.behavior==="deny"){if(this.logDecision({decision:"reject",source:{type:"hook"}},{permissionPromptStartTimeMs:q}),N.interrupt)g(`Hook interrupt: tool=${Y.name} hookMessage=${N.message}`),J.abortController.abort();return this.buildDeny(N.message||"Permission denied by hook",{type:"hook",hookName:"PermissionRequest",reason:N.message})}}return null},buildAllow(H,W){return{behavior:"allow",updatedInput:H,userModified:W?.userModified??!1,...W?.decisionReason&&{decisionReason:W.decisionReason},...W?.acceptFeedback&&{acceptFeedback:W.acceptFeedback},...W?.contentBlocks&&W.contentBlocks.length>0&&{contentBlocks:W.contentBlocks}}},buildDeny(H,W){return{behavior:"deny",message:H,decisionReason:W}},async handleUserAllow(H,W,D,q,U,N){let L=await this.persistPermissions(W);this.logDecision({decision:"accept",source:{type:"user",permanent:L}},{input:H,permissionPromptStartTimeMs:q});let F=Y.inputsEquivalent?!Y.inputsEquivalent(Z,H):!1,P=D?.trim();return this.buildAllow(H,{userModified:F,decisionReason:N,acceptFeedback:P||void 0,contentBlocks:U})},async handleHookAllow(H,W,D){let q=await this.persistPermissions(W);return this.logDecision({decision:"accept",source:{type:"hook",permanent:q}},{input:H,permissionPromptStartTimeMs:D}),this.buildAllow(H,{decisionReason:{type:"hook",hookName:"PermissionRequest"}})},pushToQueue(H){K?.push(H)},removeFromQueue(){K?.remove(z)},updateQueueItem(H){K?.update(z,H)}};return Object.freeze(V)}function n_(Y){return{push(Z){Y((J)=>[...J,Z])},remove(Z){Y((J)=>J.filter((X)=>X.toolUseID!==Z))},update(Z,J){Y((X)=>X.map((z)=>z.toolUseID===Z?{...z,...J}:z))}}}function YA(Y,Z){let{ctx:J,description:X,result:z,awaitAutomatedChecksBeforeDialog:G,bridgeCallbacks:K,channelCallbacks:Q}=Y,{resolve:V,isResolved:H,claim:W}=w1(Z),D=!1,q,U,N=K?Cg():void 0,L,F=Date.now(),P=z.updatedInput??J.input;function w(){J.updateQueueItem({classifierCheckInProgress:!1})}if(J.pushToQueue({assistantMessage:J.assistantMessage,tool:J.tool,description:X,input:P,toolUseContext:J.toolUseContext,toolUseID:J.toolUseID,permissionResult:z,permissionPromptStartTimeMs:F,...{classifierCheckInProgress:!!z.pendingClassifierCheck&&!G},onUserInteraction(){if(Date.now()-F<200)return;D=!0,Nz(J.toolUseID),w()},onDismissCheckmark(){if(q){if(clearTimeout(q),q=void 0,U)J.toolUseContext.abortController.signal.removeEventListener("abort",U),U=void 0;J.removeFromQueue()}},onAbort(){if(!W())return;if(K&&N)K.sendResponse(N,{behavior:"deny",message:"User aborted"}),K.cancelRequest(N);L?.(),J.logCancelled(),J.logDecision({decision:"reject",source:{type:"user_abort"}},{permissionPromptStartTimeMs:F}),V(J.cancelAndAbort(void 0,!0))},async onAllow(_,A,j,y){if(!W())return;if(K&&N)K.sendResponse(N,{behavior:"allow",updatedInput:_,updatedPermissions:A}),K.cancelRequest(N);L?.(),V(await J.handleUserAllow(_,A,j,F,y,z.decisionReason))},onReject(_,A){if(!W())return;if(K&&N)K.sendResponse(N,{behavior:"deny",message:_??"User denied permission"}),K.cancelRequest(N);L?.(),J.logDecision({decision:"reject",source:{type:"user_reject",hasFeedback:!!_}},{permissionPromptStartTimeMs:F}),V(J.cancelAndAbort(_,void 0,A))},async recheckPermission(){if(H())return;let _=await A1(J.tool,J.input,J.toolUseContext,J.assistantMessage,J.toolUseID);if(_.behavior==="allow"){if(!W())return;if(K&&N)K.cancelRequest(N);L?.(),J.removeFromQueue(),J.logDecision({decision:"accept",source:"config"}),V(J.buildAllow(_.updatedInput??J.input))}}}),K&&N){K.sendRequest(N,J.tool.name,P,J.toolUseID,X,z.suggestions,z.blockedPath);let _=J.toolUseContext.abortController.signal,A=K.onResponse(N,(j)=>{if(!W())return;if(_.removeEventListener("abort",A),Nz(J.toolUseID),w(),J.removeFromQueue(),L?.(),j.behavior==="allow"){if(j.updatedPermissions?.length)J.persistPermissions(j.updatedPermissions);J.logDecision({decision:"accept",source:{type:"user",permanent:!!j.updatedPermissions?.length}},{permissionPromptStartTimeMs:F}),V(J.buildAllow(j.updatedInput??P))}else J.logDecision({decision:"reject",source:{type:"user_reject",hasFeedback:!!j.message}},{permissionPromptStartTimeMs:F}),V(J.cancelAndAbort(j.message))});_.addEventListener("abort",A,{once:!0})}if(!G)(async()=>{if(H())return;let _=J.toolUseContext.getAppState(),A=await J.runHooks(_.toolPermissionContext.mode,z.suggestions,z.updatedInput,F);if(!A||!W())return;if(K&&N)K.cancelRequest(N);L?.(),J.removeFromQueue(),V(A)})();if(z.pendingClassifierCheck&&J.tool.name===H8&&!G)t_(J.toolUseID),e_(z.pendingClassifierCheck,J.toolUseContext.abortController.signal,J.toolUseContext.options.isNonInteractiveSession,{shouldContinue:()=>!H()&&!D,onComplete:()=>{Nz(J.toolUseID),w()},onAllow:(_)=>{if(!W())return;if(K&&N)K.cancelRequest(N);L?.(),Nz(J.toolUseID);let A=_.type==="classifier"?_.reason.match(/^Allowed by prompt rule: "(.+)"$/)?.[1]??_.reason:void 0;if(J.updateQueueItem({classifierCheckInProgress:!1,classifierAutoApproved:!0,classifierMatchedRule:A}),_.type==="classifier"){if(_.classifier==="auto-mode")_1(J.toolUseID,_.reason);else if(A)VG(J.toolUseID,A)}J.logDecision({decision:"accept",source:{type:"classifier"}},{permissionPromptStartTimeMs:F}),V(J.buildAllow(J.input,{decisionReason:_}));let j=J.toolUseContext.abortController.signal;U=()=>{if(q)clearTimeout(q),q=void 0,J.removeFromQueue()};let y=o_()?3000:1000;q=setTimeout(()=>{if(q=void 0,U)j.removeEventListener("abort",U),U=void 0;J.removeFromQueue()},y),j.addEventListener("abort",U,{once:!0})}}).catch((_)=>{g(`Async classifier check failed: ${lJ(_)}`,{level:"error"})})}G8();yJ();rZ();mQ();Jq();async function GA(Y){if(!$Z()||!M1())return null;let{ctx:Z,description:J,updatedInput:X,suggestions:z}=Y,G=await Z.tryClassifier?.(Y.pendingClassifierCheck,X);if(G)return G;try{let K=()=>Z.toolUseContext.setAppState((V)=>({...V,pendingWorkerRequest:null}));return await new Promise((V)=>{let{resolve:H,claim:W}=w1(V),D=XA({toolName:Z.tool.name,toolUseId:Z.toolUseID,input:Z.input,description:J,permissionSuggestions:z});JA({requestId:D.id,toolUseId:Z.toolUseID,async onAllow(q,U,N,L){if(!W())return;K();let F=q&&Object.keys(q).length>0?q:Z.input;H(await Z.handleUserAllow(F,U,N,void 0,L))},onReject(q,U){if(!W())return;K(),Z.logDecision({decision:"reject",source:{type:"user_reject",hasFeedback:!!q}}),H(Z.cancelAndAbort(q,void 0,U))}}),zA(D),Z.toolUseContext.setAppState((q)=>({...q,pendingWorkerRequest:{toolName:Z.tool.name,toolUseId:Z.toolUseID,description:J}})),Z.toolUseContext.abortController.signal.addEventListener("abort",()=>{if(!W())return;K(),Z.logCancelled(),H(Z.cancelAndAbort(void 0,!0))},{once:!0})})}catch(K){return u0(L8(K)),null}}r_();c();function $g(Y,Z){let J=qA.c(3),X;if(J[0]!==Z||J[1]!==Y)X=async(z,G,K,Q,V,H)=>new Promise((W)=>{let D=a_(z,G,K,Q,V,Z,n_(Y));if(D.resolveIfAborted(W))return;return(H!==void 0?Promise.resolve(H):A1(z,G,K,Q,V)).then(async(U)=>{if(U.behavior==="allow"){if(D.resolveIfAborted(W))return;if(U.decisionReason?.type==="classifier"&&U.decisionReason.classifier==="auto-mode")_1(V,U.decisionReason.reason);D.logDecision({decision:"accept",source:"config"}),W(D.buildAllow(U.updatedInput??G,{decisionReason:U.decisionReason}));return}let N=K.getAppState(),L=await z.description(G,{isNonInteractiveSession:K.options.isNonInteractiveSession,toolPermissionContext:N.toolPermissionContext,tools:K.options.tools});if(D.resolveIfAborted(W))return;switch(U.behavior){case"deny":{if(Z6({tool:z,input:G,toolUseContext:K,messageId:D.messageId,toolUseID:V},{decision:"reject",source:"config"}),U.decisionReason?.type==="classifier"&&U.decisionReason.classifier==="auto-mode")HA({toolName:z.name,display:L,reason:U.decisionReason.reason??"",timestamp:Date.now()}),K.addNotification?.({key:"auto-mode-denied",priority:"immediate",jsx:E(A0,{children:[E(O,{color:"error",children:[z.userFacingName(G).toLowerCase()," denied by auto mode"]}),B(O,{dimColor:!0,children:" · /permissions"})]})});W(U);return}case"ask":{if(N.toolPermissionContext.awaitAutomatedChecksBeforeDialog){let P=await h_({ctx:D,...{pendingClassifierCheck:U.pendingClassifierCheck},updatedInput:U.updatedInput,suggestions:U.suggestions,permissionMode:N.toolPermissionContext.mode});if(P){W(P);return}}if(D.resolveIfAborted(W))return;let F=await GA({ctx:D,description:L,...{pendingClassifierCheck:U.pendingClassifierCheck},updatedInput:U.updatedInput,suggestions:U.suggestions});if(F){W(F);return}if(U.pendingClassifierCheck&&z.name===H8&&!N.toolPermissionContext.awaitAutomatedChecksBeforeDialog){let P=VA(G.command);if(P){let w=await Promise.race([P.then(hg),new Promise(fg)]);if(D.resolveIfAborted(W))return;if(w.type==="result"&&w.result.matches&&w.result.confidence==="high"){WA(G.command);let _=w.result.matchedDescription??void 0;if(_)VG(V,_);D.logDecision({decision:"accept",source:{type:"classifier"}}),W(D.buildAllow(U.updatedInput??G,{decisionReason:{type:"classifier",classifier:"bash_allow",reason:`Allowed by prompt rule: "${w.result.matchedDescription}"`}}));return}}}YA({ctx:D,description:L,result:U,awaitAutomatedChecksBeforeDialog:N.toolPermissionContext.awaitAutomatedChecksBeforeDialog,bridgeCallbacks:void 0,channelCallbacks:void 0},W);return}}}).catch((U)=>{if(U instanceof QA||U instanceof R1)g(`Permission check threw ${U.constructor.name} for tool=${z.name}: ${U.message}`),D.logCancelled(),W(D.cancelAndAbort(void 0,!0));else u0(U),W(D.cancelAndAbort(void 0,!0))}).finally(()=>{Nz(V)})}),J[0]=Z,J[1]=Y,J[2]=X;else X=J[2];return X}function fg(Y){return setTimeout(Y,2000,{type:"timeout"})}function hg(Y){return{type:"result",result:Y}}var BA=$g;a8();g9();L5();Iu();vK();bZ();t3();DZ();qJ();BY();F2();O2();W_();XW();Eu();N1();DZ();s8();EA();B9();xg();NA();BZ();rQ();N1();RJ();_X();OA();FA();function gg(){Y6(0)}async function b1(Y){let{helpers:Z,queryGuard:J,isExternalLoading:X=!1,commands:z,onInputChange:G,setPastedContents:K,setToolJSX:Q,getToolUseContext:V,messages:H,mainLoopModel:W,ideSelection:D,setUserInputOnProcessing:q,setAbortController:U,onQuery:N,setAppState:L,onBeforeQuery:F,canUseTool:P,queuedCommands:w,uuid:_,skipSlashCommands:A}=Y,{setCursorOffset:j,clearBuffer:y,resetHistory:b}=Z;if(w?.length){Xq(),await DA({queuedCommands:w,messages:H,mainLoopModel:W,ideSelection:D,querySource:Y.querySource,commands:z,queryGuard:J,setToolJSX:Q,getToolUseContext:V,setUserInputOnProcessing:q,setAbortController:U,onQuery:N,setAppState:L,onBeforeQuery:F,resetHistory:b,canUseTool:P,onInputChange:G});return}let R=Y.input??"",k=Y.mode??"prompt",f=Y.pastedContents??{},$=new Set(w8(R).map((Y0)=>Y0.id)),v=Object.fromEntries(Object.entries(f).filter(([,Y0])=>Y0.type!=="image"||$.has(Y0.id))),T=Object.values(v).some(LA);if(R.trim()==="")return;if(!A&&["exit","quit",":q",":q!",":wq",":wq!"].includes(R.trim())){if(z.find((d)=>d.name==="exit"))b1({...Y,input:"/exit"});else gg();return}let h=k1(R,v),u=w8(R).filter((Y0)=>v[Y0.id]?.type==="text"),C=u.length,a=u.reduce((Y0,d)=>Y0+(v[d.id]?.content.length??0),0);if(Z0("tengu_paste_text",{pastedTextCount:C,pastedTextBytes:a}),!A&&h.trim().startsWith("/")){let Y0=h.trim(),d=Y0.indexOf(" "),p=d===-1?Y0.slice(1):Y0.slice(1,d),K0=d===-1?"":Y0.slice(d+1).trim(),G0=z.find((J0)=>J0.immediate&&J6(J0)&&(J0.name===p||J0.aliases?.includes(p)||GY(J0)===p));if(G0&&G0.type==="local-jsx"&&(J.isActive||X)){Z0("tengu_immediate_command_executed",{commandName:G0.name}),G(""),j(0),K({}),y();let J0=V(H,[],nJ(),W),P0=!1,M0=(H0,j0)=>{if(P0=!0,Q({jsx:null,shouldHidePromptInput:!1,clearLocalJSX:!0}),H0&&j0?.display!=="skip"&&Y.addNotification)Y.addNotification({key:`immediate-${G0.name}`,text:H0,priority:"immediate"});if(j0?.nextInput)if(j0.submitNextInput)WG({value:j0.nextInput,mode:"prompt"});else G(j0.nextInput)},I0=y1(),X0=await(await G0.load()).call(M0,J0,K0);if(X0&&!P0)Q({jsx:X0,shouldHidePromptInput:!1,isLocalJSXCommand:!0,isImmediate:!0,generation:I0});return}}if(J.isActive||X){if(k!=="prompt"&&k!=="bash")return;if(k!=="prompt"&&Y.hasInterruptibleToolInProgress)g(`[interrupt] Aborting current turn: streamMode=${Y.streamMode}`),Z0("tengu_cancel",{source:"interrupt_on_submit",streamMode:Y.streamMode}),Y.abortController?.abort("interrupt");WG({value:h.trim(),preExpansionValue:R.trim(),mode:k,pastedContents:T?v:void 0,skipSlashCommands:A,uuid:_}),G(""),j(0),K({}),b(),y();return}Xq(),await DA({queuedCommands:[{value:h,preExpansionValue:R,mode:k,pastedContents:T?v:void 0,skipSlashCommands:A,uuid:_}],messages:H,mainLoopModel:W,ideSelection:D,querySource:Y.querySource,commands:z,queryGuard:J,setToolJSX:Q,getToolUseContext:V,setUserInputOnProcessing:q,setAbortController:U,onQuery:N,setAppState:L,onBeforeQuery:F,resetHistory:b,canUseTool:P,onInputChange:G})}async function DA(Y){let{messages:Z,mainLoopModel:J,ideSelection:X,querySource:z,queryGuard:G,setToolJSX:K,getToolUseContext:Q,setUserInputOnProcessing:V,setAbortController:H,onQuery:W,setAppState:D,onBeforeQuery:q,resetHistory:U,canUseTool:N,queuedCommands:L}=Y,F=nJ();H(F);function P(){return Q(Z,[],F,J)}try{G.reserve(),CX("query_process_user_input_start");let w=[],_=!1,A,j,y,b,R,k=L??[];for(let f=0;f<k.length;f++){let $=k[f],v=f===0,T=await PA({input:$.value,preExpansionInput:$.preExpansionValue,mode:$.mode,setToolJSX:K,context:P(),pastedContents:v?$.pastedContents:void 0,messages:Z,setUserInputOnProcessing:v?V:void 0,isAlreadyProcessing:!v,querySource:z,canUseTool:N,uuid:$.uuid,ideSelection:v?X:void 0,skipSlashCommands:$.skipSlashCommands,bridgeOrigin:$.bridgeOrigin,isMeta:$.isMeta,skipAttachments:!v}),h=$.origin??($.mode==="task-notification"?{kind:"task-notification"}:void 0);if(h){for(let u of T.messages)if(u.type==="user")u.origin=h}if(w.push(...T.messages),v)_=T.shouldQuery,A=T.allowedTools,j=T.model,y=T.effort,b=T.nextInput,R=T.submitNextInput}if(CX("query_process_user_input_end"),HG())CX("query_file_history_snapshot_start"),w.filter(X6).forEach((f)=>{j1(($)=>{D((v)=>({...v,fileHistory:$(v.fileHistory)}))},f.uuid)}),CX("query_file_history_snapshot_end");if(w.length){U(),K({jsx:null,shouldHidePromptInput:!1,clearLocalJSX:!0});let f=k[0],$=f?.mode??"prompt",v=f&&typeof f.value==="string"?f.value:void 0,T=$==="prompt";await W(w,F,_,A??[],j?UA(j,J):J,T?q:void 0,v,y)}else G.cancelReservation(),K({jsx:null,shouldHidePromptInput:!1,clearLocalJSX:!0}),U(),H(null);if(b)if(R)WG({value:b,mode:"prompt"});else Y.onInputChange(b)}finally{G.cancelReservation(),V(void 0)}}RJ();var z6=x(Q0(),1);RJ();function wA(Y){if(typeof Y.value==="string")return Y.value.trim().startsWith("/");for(let Z of Y.value)if(Z.type==="text")return Z.text.trim().startsWith("/");return!1}function RA({executeInput:Y}){let Z=(G)=>G.agentId===void 0,J=AA(Z);if(!J)return{processed:!1};if(wA(J)||J.mode==="bash"){let G=_A(Z);return Y([G]),{processed:!0}}let X=J.mode,z=MA((G)=>Z(G)&&!wA(G)&&G.mode===X);if(z.length===0)return{processed:!1};return Y(z),{processed:!0}}function jA({executeQueuedInput:Y,hasActiveLocalJsxUI:Z,queryGuard:J}){let X=z6.useSyncExternalStore(J.subscribe,J.getSnapshot),z=z6.useSyncExternalStore(HQ,qQ);z6.useEffect(()=>{if(X)return;if(Z)return;if(z.length===0)return;RA({executeInput:Y})},[z,X,Y,Z,J])}mg();var L9=x(Q0(),1);function kA({isLoading:Y,onSubmitMessage:Z}){let J=yA(),X=L9.useMemo(()=>J.subscribe.bind(J),[J]),z=L9.useCallback(()=>J.revision,[J]),G=L9.useSyncExternalStore(X,z);L9.useEffect(()=>{if(Y)return;let K=J.poll();if(K)Z(K.content)},[Y,G,J,Z])}FA();vu();bA();var IA=x(Q0(),1);function T1(Y,Z){if(Y&&Z&&Z.length>0)return I1([...Y,...Z],"name");return Y||[]}function TA(Y,Z){return IA.useMemo(()=>T1(Y,Z),[Y,Z])}Lu();pu();uu();bA();var vA=x(Q0(),1);function v1(Y,Z){return vA.useMemo(()=>{if(Z.length>0)return I1([...Y,...Z],"name");return Y},[Y,Z])}s8();qJ();rZ();var qG=x(Q0(),1);function hA(Y,Z){let J=qG.useCallback(async()=>{if(!Y)return;try{$A();let z=await zq(Y);Z(z)}catch(z){if(z instanceof Error)u0(z)}},[Y,Z]);qG.useEffect(()=>fA.subscribe(J),[J]);let X=qG.useCallback(async()=>{if(!Y)return;try{SA();let z=await zq(Y);Z(z)}catch(z){if(z instanceof Error)u0(z)}},[Y,Z]);qG.useEffect(()=>CA(X),[X])}bD();fu();N0();YZ();l3();lD();l8();cg();c();var gA=x(v0(),1);function mA(){let Y=gA.c(14),Z=t(ug);if(!Z)return null;let J;if(Y[0]!==Z.identity.color)J=gQ(Z.identity.color),Y[0]=Z.identity.color,Y[1]=J;else J=Y[1];let X=J,z;if(Y[2]===Symbol.for("react.memo_cache_sentinel"))z=B(O,{children:"Viewing "}),Y[2]=z;else z=Y[2];let G;if(Y[3]!==X||Y[4]!==Z.identity.agentName)G=E(O,{color:X,bold:!0,children:["@",Z.identity.agentName]}),Y[3]=X,Y[4]=Z.identity.agentName,Y[5]=G;else G=Y[5];let K;if(Y[6]===Symbol.for("react.memo_cache_sentinel"))K=E(O,{dimColor:!0,children:[" · ",B(FZ,{shortcut:"esc",action:"return"})]}),Y[6]=K;else K=Y[6];let Q;if(Y[7]!==G)Q=E(M,{children:[z,G,K]}),Y[7]=G,Y[8]=Q;else Q=Y[8];let V;if(Y[9]!==Z.prompt)V=B(O,{dimColor:!0,children:Z.prompt}),Y[9]=Z.prompt,Y[10]=V;else V=Y[10];let H;if(Y[11]!==Q||Y[12]!==V)H=B(xA,{children:E(M,{flexDirection:"column",marginBottom:1,children:[Q,V]})}),Y[11]=Q,Y[12]=V,Y[13]=H;else H=Y[13];return H}function ug(Y){return JG(Y)}Jw();Su();import{randomUUID as w6}from"crypto";rZ();Q7();jW();bJ();EK();var G6=x(Q0(),1),pg=EX(()=>WZ.object({method:WZ.literal("selection_changed"),params:WZ.object({selection:WZ.object({start:WZ.object({line:WZ.number(),character:WZ.number()}),end:WZ.object({line:WZ.number(),character:WZ.number()})}).nullable().optional(),text:WZ.string().optional(),filePath:WZ.string().optional()})}));function cA(Y,Z){let J=G6.useRef(!1),X=G6.useRef(null);G6.useEffect(()=>{let z=kJ(Y);if(X.current!==(z??null))J.current=!1,X.current=z||null,Z({lineCount:0,lineStart:void 0,text:void 0,filePath:void 0});if(J.current||!z)return;let G=(K)=>{if(K.selection?.start&&K.selection?.end){let{start:Q,end:V}=K.selection,H=V.line-Q.line+1;if(V.character===0)H--;let W={lineCount:H,lineStart:Q.line,text:K.text,filePath:K.filePath};Z(W)}};z.client.setNotificationHandler(H7(pg()),(K)=>{if(X.current!==z)return;try{let Q=K.params;if(Q.selection&&Q.selection.start&&Q.selection.end)G(Q);else if(Q.text!==void 0)G({selection:null,text:Q.text,filePath:Q.filePath})}catch(Q){u0(Q)}}),J.current=!0},[Y,Z])}ZM();ju();xu();xK();YZ();lQ();o8();Cu();Ru();gu();Fu();UU();bu();rQ();_u();o8();eK();wU();PV();XW();MQ();qW();YZ();o7();eK();ZM();BZ();dg();BY();AK();a8();uJ();M3();aK();EV();MW();mQ();Kz();e2();Y8();d3();gV();Jq();var Oz=x(Q0(),1);import{randomUUID as uA}from"crypto";function C1(Y){if(YG())return;if(IX())return Z8();if(BG(Y.teamContext)){let Z=Y.teamContext.leadAgentId;return Y.teamContext.teammates[Z]?.name||"team-lead"}return}var lg=1000;function XM({enabled:Y,isLoading:Z,focusedInputDialog:J,onSubmitMessage:X}){let z=X,G=pZ(),K=n0(),Q=t((q)=>q.inbox.messages.length),V=G7(),H=Oz.useCallback(async()=>{if(!Y)return;let q=G.getState(),U=C1(q);if(!U)return;let N=await dA(U,q.teamContext?.teamName);if(N.length===0)return;if(g(`[InboxPoller] Found ${N.length} unread message(s)`),IX()&&pA())for(let v of N){let T=iA(v.text);if(T&&v.from==="team-lead")if(g(`[InboxPoller] Received plan approval response from team-lead: approved=${T.approved}`),T.approved){let h=T.permissionMode??"default";K((u)=>({...u,toolPermissionContext:J8(u.toolPermissionContext,{type:"setMode",mode:b7(h),destination:"session"})})),g(`[InboxPoller] Plan approved by team lead, exited plan mode to ${h}`)}else g(`[InboxPoller] Plan rejected by team lead: ${T.feedback||"No feedback provided"}`);else if(T)g(`[InboxPoller] Ignoring plan approval response from non-team-lead: ${v.from}`)}let L=()=>{lA(U,q.teamContext?.teamName)},F=[],P=[],w=[],_=[],A=[],j=[],y=[],b=[],R=[],k=[];for(let v of N){let T=S1(v.text),h=Gq(v.text),u=Kq(v.text),C=Qq(v.text),a=rA(v.text),o=Wq(v.text),Y0=Hq(v.text),d=qq(v.text),p=Vq(v.text);if(T)F.push(v);else if(h)P.push(v);else if(u)w.push(v);else if(C)_.push(v);else if(a)A.push(v);else if(o)j.push(v);else if(Y0)y.push(v);else if(d)b.push(v);else if(p)R.push(v);else k.push(v)}if(F.length>0&&BG(q.teamContext)){g(`[InboxPoller] Found ${F.length} permission request(s)`);let v=sA(),T=q.teamContext?.teamName;for(let u of F){let C=S1(u.text);if(!C)continue;if(v){let a=O9(eA(),C.tool_name);if(!a){g(`[InboxPoller] Unknown tool ${C.tool_name}, skipping permission request`);continue}let o={assistantMessage:f1({content:""}),tool:a,description:C.description,input:C.input,toolUseContext:{},toolUseID:C.tool_use_id,permissionResult:{behavior:"ask",message:C.description},permissionPromptStartTimeMs:Date.now(),workerBadge:{name:C.agent_id,color:"cyan"},onUserInteraction(){},onAbort(){$1(C.agent_id,{decision:"rejected",resolvedBy:"leader"},C.request_id,T)},onAllow(Y0,d){$1(C.agent_id,{decision:"approved",resolvedBy:"leader",updatedInput:Y0,permissionUpdates:d},C.request_id,T)},onReject(Y0){$1(C.agent_id,{decision:"rejected",resolvedBy:"leader",feedback:Y0},C.request_id,T)},async recheckPermission(){}};v((Y0)=>{if(Y0.some((d)=>d.toolUseID===C.tool_use_id))return Y0;return[...Y0,o]})}else g(`[InboxPoller] ToolUseConfirmQueue unavailable, dropping permission request from ${C.agent_id}`)}let h=S1(F[0]?.text??"");if(h&&!Z&&!J)p8({message:`${h.agent_id} needs permission for ${h.tool_name}`,notificationType:"worker_permission_prompt"},V)}if(P.length>0&&IX()){g(`[InboxPoller] Found ${P.length} permission response(s)`);for(let v of P){let T=Gq(v.text);if(!T)continue;if(aA(T.request_id))if(g(`[InboxPoller] Processing permission response for ${T.request_id}: ${T.subtype}`),T.subtype==="success")Bq({requestId:T.request_id,decision:"approved",updatedInput:T.response?.updated_input,permissionUpdates:T.response?.permission_updates});else Bq({requestId:T.request_id,decision:"rejected",feedback:T.error})}}if(w.length>0&&BG(q.teamContext)){g(`[InboxPoller] Found ${w.length} sandbox permission request(s)`);let v=[];for(let T of w){let h=Kq(T.text);if(!h)continue;if(!h.hostPattern?.host){g("[InboxPoller] Invalid sandbox permission request: missing hostPattern.host");continue}v.push({requestId:h.requestId,workerId:h.workerId,workerName:h.workerName,workerColor:h.workerColor,host:h.hostPattern.host,createdAt:h.createdAt})}if(v.length>0){K((h)=>({...h,workerSandboxPermissions:{...h.workerSandboxPermissions,queue:[...h.workerSandboxPermissions.queue,...v]}}));let T=v[0];if(T&&!Z&&!J)p8({message:`${T.workerName} needs network access to ${T.host}`,notificationType:"worker_permission_prompt"},V)}}if(_.length>0&&IX()){g(`[InboxPoller] Found ${_.length} sandbox permission response(s)`);for(let v of _){let T=Qq(v.text);if(!T)continue;if(nA(T.requestId))g(`[InboxPoller] Processing sandbox permission response for ${T.requestId}: allow=${T.allow}`),oA({requestId:T.requestId,host:T.host,allow:T.allow}),K((h)=>({...h,pendingSandboxRequest:null}))}}if(y.length>0&&IX()){g(`[InboxPoller] Found ${y.length} team permission update(s)`);for(let v of y){let T=Hq(v.text);if(!T){g(`[InboxPoller] Failed to parse team permission update: ${v.text.substring(0,100)}`);continue}if(!T.permissionUpdate?.rules||!T.permissionUpdate?.behavior){g("[InboxPoller] Invalid team permission update: missing permissionUpdate.rules or permissionUpdate.behavior");continue}g(`[InboxPoller] Applying team permission update: ${T.toolName} allowed in ${T.directoryPath}`),g(`[InboxPoller] Permission update rules: ${iZ(T.permissionUpdate.rules)}`),K((h)=>{let u=J8(h.toolPermissionContext,{type:"addRules",rules:T.permissionUpdate.rules,behavior:T.permissionUpdate.behavior,destination:"session"});return g(`[InboxPoller] Updated session allow rules: ${iZ(u.alwaysAllowRules.session)}`),{...h,toolPermissionContext:u}})}}if(b.length>0&&IX()){g(`[InboxPoller] Found ${b.length} mode set request(s)`);for(let v of b){if(v.from!=="team-lead"){g(`[InboxPoller] Ignoring mode set request from non-team-lead: ${v.from}`);continue}let T=qq(v.text);if(!T){g(`[InboxPoller] Failed to parse mode set request: ${v.text.substring(0,100)}`);continue}let h=Qz(T.mode);g(`[InboxPoller] Applying mode change from team-lead: ${h}`),K((a)=>({...a,toolPermissionContext:J8(a.toolPermissionContext,{type:"setMode",mode:b7(h),destination:"session"})}));let u=q.teamContext?.teamName,C=Z8();if(u&&C)uV(u,C,h)}}if(R.length>0&&BG(q.teamContext)){g(`[InboxPoller] Found ${R.length} plan approval request(s), auto-approving`);let v=q.teamContext?.teamName,T=b7(q.toolPermissionContext.mode),h=T==="plan"?"default":T;for(let u of R){let C=Vq(u.text);if(!C)continue;let a={type:"plan_approval_response",requestId:C.requestId,approved:!0,timestamp:new Date().toISOString(),permissionMode:h};F8(u.from,{from:FV,text:iZ(a),timestamp:new Date().toISOString()},v);let o=YM(u.from,q);if(o)JM(o,{type:"plan_approval_response",requestId:C.requestId,approved:!0,timestamp:new Date().toISOString(),permissionMode:h},K);g(`[InboxPoller] Auto-approved plan from ${u.from} (request ${C.requestId})`),k.push(u)}}if(A.length>0&&IX()){g(`[InboxPoller] Found ${A.length} shutdown request(s)`);for(let v of A)k.push(v)}if(j.length>0&&BG(q.teamContext)){g(`[InboxPoller] Found ${j.length} shutdown approval(s)`);for(let v of j){let T=Wq(v.text);if(!T)continue;if(T.paneId&&T.backendType)(async()=>{try{await mV();let u=await G1(),a=await cV(T.backendType)?.killPane(T.paneId,!u);g(`[InboxPoller] Killed pane ${T.paneId} for ${T.from}: ${a}`)}catch(u){g(`[InboxPoller] Failed to kill pane for ${T.from}: ${u}`)}})();let h=T.from;if(h&&q.teamContext?.teammates){let u=Object.entries(q.teamContext.teammates).find(([,C])=>C.name===h)?.[0];if(u){let C=q.teamContext?.teamName;if(C)tA(C,{agentId:u,name:h});let{notificationMessage:a}=C?await xV(C,u,h,"shutdown"):{notificationMessage:`${h} has shut down.`};K((o)=>{if(!o.teamContext?.teammates)return o;if(!(u in o.teamContext.teammates))return o;let{[u]:Y0,...d}=o.teamContext.teammates,p={...o.tasks};for(let[K0,G0]of Object.entries(p))if(vX(G0)&&G0.identity.agentId===u)p[K0]={...G0,status:"completed",endTime:Date.now()};return{...o,tasks:p,teamContext:{...o.teamContext,teammates:d},inbox:{messages:[...o.inbox.messages,{id:uA(),from:"system",text:iZ({type:"teammate_terminated",message:a}),timestamp:new Date().toISOString(),status:"pending"}]}}}),g(`[InboxPoller] Removed ${h} (${u}) from teamContext`)}}k.push(v)}}if(k.length===0){L();return}let f=k.map((v)=>{let T=v.color?` color="${v.color}"`:"",h=v.summary?` summary="${v.summary}"`:"",u=v.text;return`<${K6} teammate_id="${v.from}"${T}${h}>
|
|
111
|
+
${u}
|
|
112
|
+
</${K6}>`}).join(`
|
|
113
|
+
|
|
114
|
+
`),$=()=>{K((v)=>({...v,inbox:{messages:[...v.inbox.messages,...k.map((T)=>({id:uA(),from:T.from,text:T.text,timestamp:T.timestamp,status:"pending",color:T.color,summary:T.summary}))]}}))};if(!Z&&!J){if(g("[InboxPoller] Session idle, submitting immediately"),!z(f))g("[InboxPoller] Submission rejected, queuing for later delivery"),$()}else g("[InboxPoller] Session busy, queuing for later delivery"),$();L()},[Y,Z,J,z,K,V,G]);Oz.useEffect(()=>{if(!Y)return;if(Z||J)return;let q=G.getState();if(!C1(q))return;let N=q.inbox.messages.filter((w)=>w.status==="pending"),L=q.inbox.messages.filter((w)=>w.status==="processed");if(L.length>0){g(`[InboxPoller] Cleaning up ${L.length} processed message(s) that were delivered mid-turn`);let w=new Set(L.map((_)=>_.id));K((_)=>({..._,inbox:{messages:_.inbox.messages.filter((A)=>!w.has(A.id))}}))}if(N.length===0)return;g(`[InboxPoller] Session idle, delivering ${N.length} pending message(s)`);let F=N.map((w)=>{let _=w.color?` color="${w.color}"`:"",A=w.summary?` summary="${w.summary}"`:"";return`<${K6} teammate_id="${w.from}"${_}${A}>
|
|
115
|
+
${w.text}
|
|
116
|
+
</${K6}>`}).join(`
|
|
117
|
+
|
|
118
|
+
`);if(z(F)){let w=new Set(N.map((_)=>_.id));K((_)=>({..._,inbox:{messages:_.inbox.messages.filter((A)=>!w.has(A.id))}}))}else g("[InboxPoller] Submission rejected, keeping messages queued")},[Y,Z,J,z,K,Q,G]);let W=Y&&!!C1(G.getState());s7(()=>void H(),W?lg:null);let D=Oz.useRef(!1);Oz.useEffect(()=>{if(!Y)return;if(D.current)return;if(C1(G.getState()))D.current=!0,H()},[Y,H,G])}G8();bJ();bZ();rJ();bJ();var GM=x(v0(),1),KM=x(Q0(),1);function QM(Y){let Z=GM.c(7),{autoConnectIdeFlag:J,ideToInstallExtension:X,setDynamicMcpConfig:z,setShowIdeOnboarding:G,setIDEInstallationState:K}=Y,Q,V;if(Z[0]!==J||Z[1]!==X||Z[2]!==z||Z[3]!==K||Z[4]!==G)Q=()=>{zM(function(D){if(!D)return;if(!((l0().autoConnectIde||J||h1()||process.env.CLAUDE_CODE_SSE_PORT||X||nZ(process.env.CLAUDE_CODE_AUTO_CONNECT_IDE))&&!A5(process.env.CLAUDE_CODE_AUTO_CONNECT_IDE)))return;z((N)=>{if(N?.ide)return N;return{...N,ide:{type:D.url.startsWith("ws:")?"ws-ide":"sse-ide",url:D.url,ideName:D.name,authToken:D.authToken,ideRunningInWindows:D.ideRunningInWindows,scope:"dynamic"}}})},X,()=>G(!0),(W)=>K(W))},V=[J,X,z,G,K],Z[0]=J,Z[1]=X,Z[2]=z,Z[3]=K,Z[4]=G,Z[5]=Q,Z[6]=V;else Q=Z[5],V=Z[6];KM.useEffect(Q,V)}cQ();RJ();OA();Cw();N0();YY();J7();YZ();rg();bZ();z9();rJ();l8();c();var WM=x(v0(),1),HM=x(Q0(),1);function qM(Y){let Z=WM.c(10),{onBackgroundSession:J,isLoading:X}=Y,z=n0(),G=pZ(),[K,Q]=HM.useState(!1),V=H1(Q,J,ag),H;if(Z[0]!==G||Z[1]!==V||Z[2]!==X||Z[3]!==z)H=()=>{if(nZ(process.env.CLAUDE_CODE_DISABLE_BACKGROUND_TASKS))return;let _=G.getState();if(Dq(_)){if(VM(()=>G.getState(),z),!l0().hasUsedBackgroundTask)HZ(ig)}else if(nZ("false")&&X)V()},Z[0]=G,Z[1]=V,Z[2]=X,Z[3]=z,Z[4]=H;else H=Z[4];let W=H,D=t(Dq),q;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))q=nZ("false"),Z[5]=q;else q=Z[5];let N=D||q&&X,L;if(Z[6]!==N)L={context:"Task",isActive:N},Z[6]=N,Z[7]=L;else L=Z[7];KZ("task:background",W,L);let F=MY("task:background","Task","ctrl+b"),P=aZ.terminal==="tmux"&&F==="ctrl+b"?"ctrl+b ctrl+b":F;if(!X||!K)return null;let w;if(Z[8]!==P)w=B(M,{paddingLeft:2,children:B(O,{dimColor:!0,children:B(FZ,{shortcut:P,action:"background"})})}),Z[8]=P,Z[9]=w;else w=Z[9];return w}function ig(Y){return Y.hasUsedBackgroundTask?Y:{...Y,hasUsedBackgroundTask:!0}}function ag(){}Pu();YZ();var DG=x(Q0(),1);function BM({setMessages:Y,setIsLoading:Z,resetLoadingState:J,setAbortController:X,onBackgroundQuery:z}){let G=t((W)=>W.foregroundedTaskId),K=t((W)=>W.foregroundedTaskId?W.tasks[W.foregroundedTaskId]:void 0),Q=n0(),V=DG.useRef(0),H=DG.useCallback(()=>{if(G){Q((W)=>{let D=W.foregroundedTaskId;if(!D)return W;let q=W.tasks[D];if(!q)return{...W,foregroundedTaskId:void 0};return{...W,foregroundedTaskId:void 0,tasks:{...W.tasks,[D]:{...q,isBackgrounded:!0}}}}),Y([]),J(),X(null);return}z()},[G,Q,Y,J,X,z]);return DG.useEffect(()=>{if(!G){V.current=0;return}if(!K||K.type!=="local_agent"){Q((D)=>({...D,foregroundedTaskId:void 0})),J(),V.current=0;return}let W=K.messages??[];if(W.length!==V.current)V.current=W.length,Y([...W]);if(K.status==="running"){let D=K.abortController;if(D?.signal.aborted){Q((q)=>{if(!q.foregroundedTaskId)return q;let U=q.tasks[q.foregroundedTaskId];if(!U)return{...q,foregroundedTaskId:void 0};return{...q,foregroundedTaskId:void 0,tasks:{...q.tasks,[q.foregroundedTaskId]:{...U,isBackgrounded:!0}}}}),J(),X(null),V.current=0;return}if(Z(!0),D)X(D)}else Q((D)=>{let q=D.foregroundedTaskId;if(!q)return D;let U=D.tasks[q];if(!U)return{...D,foregroundedTaskId:void 0};return{...D,foregroundedTaskId:void 0,tasks:{...D.tasks,[q]:{...U,isBackgrounded:!0}}}}),J(),X(null),V.current=0},[G,K,Q,Y,Z,J,X]),{handleBackgroundSession:H}}Au();uH();Ou();N0();s9();bZ();EM();_X();n9();LX();o3();cY();c();var p1=x(v0(),1),UG=x(Q0(),1),ng=30000;function PM(Y){let Z=p1.c(18),{model:J,onDone:X}=Y,z;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))z=m1(),Z[0]=z;else z=Z[0];let G=z,K=UG.useRef(X),Q;if(Z[1]!==X)Q=()=>{K.current=X},Z[1]=X,Z[2]=Q;else Q=Z[2];UG.useEffect(Q);let V;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))V=()=>{K.current("dismiss")},Z[3]=V;else V=Z[3];let H=V,W;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))W=[],Z[4]=W;else W=Z[4];UG.useEffect(og,W);let D,q;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))D=()=>{let R=setTimeout(H,ng);return()=>clearTimeout(R)},q=[H],Z[5]=D,Z[6]=q;else D=Z[5],q=Z[6];UG.useEffect(D,q);let U;if(Z[7]!==J){let R=FM(J);U=R?LM(R):"high",Z[7]=J,Z[8]=U}else U=Z[8];let N=U,L;if(Z[9]!==N)L=(R)=>{c1("userSettings",{effortLevel:OM(R===N?void 0:R)}),K.current(R)},Z[9]=N,Z[10]=L;else L=Z[10];let F=L,P;if(Z[11]===Symbol.for("react.memo_cache_sentinel"))P=[{label:B(Uq,{level:"medium",text:"Medium (recommended)"}),value:"medium"},{label:B(Uq,{level:"high",text:"High"}),value:"high"},{label:B(Uq,{level:"low",text:"Low"}),value:"low"}],Z[11]=P;else P=Z[11];let w=P,_;if(Z[12]===Symbol.for("react.memo_cache_sentinel"))_=B(M,{marginBottom:1,flexDirection:"column",children:B(O,{children:G.dialogDescription})}),Z[12]=_;else _=Z[12];let A;if(Z[13]===Symbol.for("react.memo_cache_sentinel"))A=B(x1,{level:"low"}),Z[13]=A;else A=Z[13];let j;if(Z[14]===Symbol.for("react.memo_cache_sentinel"))j=B(x1,{level:"medium"}),Z[14]=j;else j=Z[14];let y;if(Z[15]===Symbol.for("react.memo_cache_sentinel"))y=B(M,{marginBottom:1,children:E(O,{dimColor:!0,children:[A," low ","·"," ",j," medium ","·"," ",B(x1,{level:"high"})," high"]})}),Z[15]=y;else y=Z[15];let b;if(Z[16]!==F)b=B(jZ,{title:G.dialogTitle,children:E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[_,y,B(qZ,{options:w,onChange:F,onCancel:H})]})}),Z[16]=F,Z[17]=b;else b=Z[17];return b}function og(){g1()}function x1(Y){let Z=p1.c(4),{level:J}=Y,X;if(Z[0]!==J)X=u1(J),Z[0]=J,Z[1]=X;else X=Z[1];let z;if(Z[2]!==X)z=B(O,{color:"suggestion",children:X}),Z[2]=X,Z[3]=z;else z=Z[3];return z}function Uq(Y){let Z=p1.c(5),{level:J,text:X}=Y,z;if(Z[0]!==J)z=B(x1,{level:J}),Z[0]=J,Z[1]=z;else z=Z[1];let G;if(Z[2]!==z||Z[3]!==X)G=E(A0,{children:[z," ",X]}),Z[2]=z,Z[3]=X,Z[4]=G;else G=Z[4];return G}function wM(Y){let Z=NG(Y).toLowerCase();if(!Z.includes("opus-4-7")&&!Z.includes("opus-4-6"))return!1;let J=l0();if(J.effortCalloutV2Dismissed)return!1;if(J.numStartups<=1)return g1(),!1;if(NM()){if(J.effortCalloutDismissed)return g1(),!1;return m1().enabled}if(DM()||UM())return m1().enabled;return g1(),!1}function g1(){HZ((Y)=>{if(Y.effortCalloutV2Dismissed)return Y;return{...Y,effortCalloutV2Dismissed:!0}})}Kw();N0();s9();bZ();LX();cY();c();var Lz=x(Q0(),1);function _M({onDone:Y}){let Z=Lz.useRef(Y);Z.current=Y;let J=Lz.useCallback(()=>{Z.current("dismiss")},[]);Lz.useEffect(()=>{HZ((G)=>{if(G.remoteDialogSeen)return G;return{...G,remoteDialogSeen:!0}})},[]);let X=Lz.useCallback((G)=>{Z.current(G)},[]);return B(jZ,{title:"Remote Control",children:E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[E(M,{marginBottom:1,flexDirection:"column",children:[B(O,{children:"Remote Control lets you access this CLI session from the web (claude.ai/code) or the Claude app, so you can pick up where you left off on any device."}),B(O,{children:" "}),B(O,{children:"You can disconnect remote access anytime by running /remote-control again."})]}),B(M,{children:B(qZ,{options:[{label:"Enable Remote Control for this session",description:"Opens a secure connection to claude.ai.",value:"enable"},{label:"Never mind",description:"You can always enable it later with /remote-control.",value:"dismiss"}],onChange:X,onCancel:J})})]})})}$u();NA();cu();var JY=x(Q0(),1);qJ();var Nq=x(Q0(),1);function d1(Y,Z){let[J,X]=Nq.default.useState(Z);return Nq.default.useEffect(()=>{AM(Y,Z).then(X)},[Y,Z]),J}Oq();DZ();yM();bZ();rJ();BY();_X();n9();Lq();async function l1(){return{success:!1}}var SJ=x(Q0(),1);import{randomUUID as MM}from"crypto";function OG({hideThanksAfterMs:Y,onOpen:Z,onSelect:J,shouldShowTranscriptPrompt:X,onTranscriptPromptShown:z,onTranscriptSelect:G}){let[K,Q]=SJ.useState("closed"),[V,H]=SJ.useState(null),W=SJ.useRef(MM()),D=SJ.useRef(null),q=SJ.useCallback(()=>{Q("thanks"),setTimeout((P,w)=>{P("closed"),w(null)},Y,Q,H)},[Y]),U=SJ.useCallback(()=>{Q("submitted"),setTimeout(Q,Y,"closed")},[Y]),N=SJ.useCallback(()=>{if(K!=="closed")return;Q("open"),W.current=MM(),Z(W.current)},[K,Z]),L=SJ.useCallback((P)=>{if(H(P),D.current=P,J(W.current,P),P==="dismissed")Q("closed"),H(null);else if(X?.(P))return Q("transcript_prompt"),z?.(W.current,P),!0;else q();return!1},[q,J,X,z]),F=SJ.useCallback((P)=>{switch(P){case"yes":Q("submitting"),(async()=>{try{if(await G?.(W.current,P,D.current))U();else q()}catch{q()}})();break;case"no":case"dont_ask_again":G?.(W.current,P,D.current),q();break}},[q,U,G]);return{state:K,lastResponse:V,open:N,handleSelect:L,handleTranscriptSelect:F}}var sg={minTimeBeforeFeedbackMs:600000,minTimeBetweenFeedbackMs:3600000,minTimeBetweenGlobalFeedbackMs:1e8,minUserTurnsBeforeFeedback:5,minUserTurnsBetweenFeedback:10,hideThanksAfterMs:3000,onForModels:["*"],probability:0.005},RM={probability:0};function kM(Y,Z,J,X="session",z=!1){let G=JY.useRef("unknown");G.current=t7(Y)?.message?.id||"unknown";let[K,Q]=JY.useState(()=>({timeLastShown:null,submitCountAtLastAppearance:null})),V=d1("tengu_feedback_survey_config",sg),H=d1("tengu_bad_survey_transcript_ask_config",RM),W=d1("tengu_good_survey_transcript_ask_config",RM),D=jM().feedbackSurveyRate,q=JY.useRef(Date.now()),U=JY.useRef(J),N=JY.useRef(J);N.current=J;let L=JY.useRef(Y);L.current=Y;let F=JY.useRef(!1),P=JY.useRef(null),w=JY.useCallback((C,a)=>{if(Q((o)=>{if(o.timeLastShown===C&&o.submitCountAtLastAppearance===a)return o;return{timeLastShown:C,submitCountAtLastAppearance:a}}),l0().feedbackSurveyState?.lastShownTime!==C)HZ((o)=>({...o,feedbackSurveyState:{lastShownTime:C}}))},[]),_=JY.useCallback((C)=>{w(Date.now(),N.current),Z0("tengu_feedback_survey_event",{event_type:"appeared",appearance_id:C,last_assistant_message_id:G.current,survey_type:X}),oJ("feedback_survey",{event_type:"appeared",appearance_id:C,survey_type:X})},[w,X]),A=JY.useCallback((C,a)=>{w(Date.now(),N.current),Z0("tengu_feedback_survey_event",{event_type:"responded",appearance_id:C,response:a,last_assistant_message_id:G.current,survey_type:X}),oJ("feedback_survey",{event_type:"responded",appearance_id:C,response:a,survey_type:X})},[w,X]),j=JY.useCallback((C)=>{if(C!=="bad"&&C!=="good")return!1;if(l0().transcriptShareDismissed)return!1;if(!Q6("allow_product_feedback"))return!1;let a=C==="bad"?H.probability:W.probability;return Math.random()<=a},[H.probability,W.probability]),y=JY.useCallback((C,a)=>{let o=a==="good"?"good_feedback_survey":"bad_feedback_survey";Z0("tengu_feedback_survey_event",{event_type:"transcript_prompt_appeared",appearance_id:C,last_assistant_message_id:G.current,survey_type:X,trigger:o}),oJ("feedback_survey",{event_type:"transcript_prompt_appeared",appearance_id:C,survey_type:X})},[X]),b=JY.useCallback(async(C,a,o)=>{let Y0=o==="good"?"good_feedback_survey":"bad_feedback_survey";if(Z0("tengu_feedback_survey_event",{event_type:`transcript_share_${a}`,appearance_id:C,last_assistant_message_id:G.current,survey_type:X,trigger:Y0}),a==="dont_ask_again")HZ((d)=>({...d,transcriptShareDismissed:!0}));if(a==="yes"){let d=await l1(L.current,Y0,C);return Z0("tengu_feedback_survey_event",{event_type:d.success?"transcript_share_submitted":"transcript_share_failed",appearance_id:C,trigger:Y0}),d.success}return!1},[X]),{state:R,lastResponse:k,open:f,handleSelect:$,handleTranscriptSelect:v}=OG({hideThanksAfterMs:V.hideThanksAfterMs,onOpen:_,onSelect:A,shouldShowTranscriptPrompt:j,onTranscriptPromptShown:y,onTranscriptSelect:b}),T=K9(),h=JY.useMemo(()=>{if(V.onForModels.length===0)return!1;if(V.onForModels.includes("*"))return!0;return V.onForModels.includes(T)},[V.onForModels,T]),u=JY.useMemo(()=>{if(R!=="closed")return!1;if(Z)return!1;if(z)return!1;if(process.env.CLAUDE_FORCE_DISPLAY_SURVEY&&!K.timeLastShown)return!0;if(!h)return!1;if(nZ(process.env.CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY))return!1;if(LG())return!1;if(!Q6("allow_product_feedback"))return!1;if(K.timeLastShown){if(Date.now()-K.timeLastShown<V.minTimeBetweenFeedbackMs)return!1;if(K.submitCountAtLastAppearance!==null&&J<K.submitCountAtLastAppearance+V.minUserTurnsBetweenFeedback)return!1}else{if(Date.now()-q.current<V.minTimeBeforeFeedbackMs)return!1;if(J<U.current+V.minUserTurnsBeforeFeedback)return!1}if(P.current!==J)P.current=J,F.current=Math.random()<=(D??V.probability);if(!F.current)return!1;let C=l0().feedbackSurveyState;if(C?.lastShownTime){if(Date.now()-C.lastShownTime<V.minTimeBetweenGlobalFeedbackMs)return!1}return!0},[R,Z,z,h,K.timeLastShown,K.submitCountAtLastAppearance,J,V.minTimeBetweenFeedbackMs,V.minTimeBetweenGlobalFeedbackMs,V.minUserTurnsBetweenFeedback,V.minTimeBeforeFeedbackMs,V.minUserTurnsBeforeFeedback,V.probability,D]);return JY.useEffect(()=>{if(u)f()},[u,f]),{state:R,lastResponse:k,handleSelect:$,handleTranscriptSelect:v}}Oq();qJ();DZ();tg();yM();eg();bZ();rJ();Zm();BY();Lq();var GJ=x(Q0(),1);var Ym=3000,Jm="tengu_dunwich_bell",V6="tengu_memory_survey_event",Xm=0.2,r1="memory_survey",zm=/\bmemor(?:y|ies)\b/i;function Gm(Y){for(let Z of Y){if(Z.type!=="assistant")continue;let J=Z.message.content;if(!Array.isArray(J))continue;for(let X of J){if(X.type!=="tool_use"||X.name!==IM)continue;let z=X.input;if(typeof z.file_path==="string"&&TM(z.file_path))return!0}}return!1}function vM(Y,Z,J=!1,{enabled:X=!0}={}){let z=GJ.useRef(new Set),G=GJ.useRef(!1),K=GJ.useRef(Y);K.current=Y;let Q=GJ.useCallback((w)=>{Z0(V6,{event_type:"appeared",appearance_id:w}),oJ("feedback_survey",{event_type:"appeared",appearance_id:w,survey_type:"memory"})},[]),V=GJ.useCallback((w,_)=>{Z0(V6,{event_type:"responded",appearance_id:w,response:_}),oJ("feedback_survey",{event_type:"responded",appearance_id:w,response:_,survey_type:"memory"})},[]),H=GJ.useCallback((w)=>{return!1},[]),W=GJ.useCallback((w)=>{Z0(V6,{event_type:"transcript_prompt_appeared",appearance_id:w,trigger:r1}),oJ("feedback_survey",{event_type:"transcript_prompt_appeared",appearance_id:w,survey_type:"memory"})},[]),D=GJ.useCallback(async(w,_)=>{if(Z0(V6,{event_type:`transcript_share_${_}`,appearance_id:w,trigger:r1}),_==="dont_ask_again")HZ((A)=>({...A,transcriptShareDismissed:!0}));if(_==="yes"){let A=await l1(K.current,r1,w);return Z0(V6,{event_type:A.success?"transcript_share_submitted":"transcript_share_failed",appearance_id:w,trigger:r1}),A.success}return!1},[]),{state:q,lastResponse:U,open:N,handleSelect:L,handleTranscriptSelect:F}=OG({hideThanksAfterMs:Ym,onOpen:Q,onSelect:V,shouldShowTranscriptPrompt:H,onTranscriptPromptShown:W,onTranscriptSelect:D}),P=GJ.useMemo(()=>t7(Y),[Y]);return GJ.useEffect(()=>{if(!X)return;if(Y.length===0){G.current=!1,z.current.clear();return}if(q!=="closed"||Z||J)return;if(!YJ(Jm,!1))return;if(!bM())return;if(LG())return;if(!Q6("allow_product_feedback"))return;if(nZ(process.env.CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY))return;if(!P||z.current.has(P.uuid))return;let w=K7(P.message.content," ");if(!zm.test(w))return;if(z.current.add(P.uuid),!G.current)G.current=Gm(Y);if(!G.current)return;if(Math.random()<Xm)N()},[X,q,Z,J,P,Y,N]),{state:q,lastResponse:U,handleSelect:L,handleTranscriptSelect:F}}Oq();qJ();DZ();Km();rJ();BY();Lq();var SM=x(v0(),1),F9=x(Q0(),1);var Qm=3000,Vm="tengu_post_compact_survey",Wm=0.2;function Hm(Y,Z){let J=Y.findIndex((X)=>X.uuid===Z);if(J===-1)return!1;for(let X=J+1;X<Y.length;X++){let z=Y[X];if(z&&(z.type==="user"||z.type==="assistant"))return!0}return!1}function $M(Y,Z,J,X){let z=SM.c(23),G=J===void 0?!1:J,K;if(z[0]!==X)K=X===void 0?{}:X,z[0]=X,z[1]=K;else K=z[1];let{enabled:Q}=K,V=Q===void 0?!0:Q,[H,W]=F9.useState(null),D;if(z[2]===Symbol.for("react.memo_cache_sentinel"))D=new Set,z[2]=D;else D=z[2];let q=F9.useRef(D),U=F9.useRef(null),N=Um,L=Dm,F;if(z[3]===Symbol.for("react.memo_cache_sentinel"))F={hideThanksAfterMs:Qm,onOpen:N,onSelect:L},z[3]=F;else F=z[3];let{state:P,lastResponse:w,open:_,handleSelect:A}=OG(F),j,y;if(z[4]!==V)j=()=>{if(!V)return;W(CM(Vm))},y=[V],z[4]=V,z[5]=j,z[6]=y;else j=z[5],y=z[6];F9.useEffect(j,y);let b;if(z[7]!==Y)b=new Set(Y.filter(Bm).map(qm)),z[7]=Y,z[8]=b;else b=z[8];let R=b,k,f;if(z[9]!==R||z[10]!==V||z[11]!==H||z[12]!==G||z[13]!==Z||z[14]!==Y||z[15]!==_||z[16]!==P)f=()=>{if(!V)return;if(P!=="closed"||Z)return;if(G)return;if(H!==!0)return;if(LG())return;if(nZ(process.env.CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY))return;if(U.current!==null){if(Hm(Y,U.current)){if(U.current=null,Math.random()<Wm)_();return}}let v=Array.from(R).filter((T)=>!q.current.has(T));if(v.length>0)q.current=new Set(R),U.current=v[v.length-1]},k=[V,R,P,Z,G,H,Y,_],z[9]=R,z[10]=V,z[11]=H,z[12]=G,z[13]=Z,z[14]=Y,z[15]=_,z[16]=P,z[17]=k,z[18]=f;else k=z[17],f=z[18];F9.useEffect(f,k);let $;if(z[19]!==A||z[20]!==w||z[21]!==P)$={state:P,lastResponse:w,handleSelect:A},z[19]=A,z[20]=w,z[21]=P,z[22]=$;else $=z[22];return $}function qm(Y){return Y.uuid}function Bm(Y){return W6(Y)}function Dm(Y,Z){let J=Fq();Z0("tengu_post_compact_survey_event",{event_type:"responded",appearance_id:Y,response:Z,session_memory_compaction_enabled:J}),oJ("feedback_survey",{event_type:"responded",appearance_id:Y,response:Z,survey_type:"post_compact"})}function Um(Y){let Z=Fq();Z0("tengu_post_compact_survey_event",{event_type:"appeared",appearance_id:Y,session_memory_compaction_enabled:Z}),oJ("feedback_survey",{event_type:"appeared",appearance_id:Y,survey_type:"post_compact"})}DZ();N0();var Pq=x(v0(),1);N0();var hM=x(v0(),1);d8();var Fz=x(Q0(),1),Nm=400;function FG({inputValue:Y,setInputValue:Z,isValidDigit:J,onDigit:X,enabled:z=!0,once:G=!1,debounceMs:K=Nm}){let Q=Fz.useRef(Y),V=Fz.useRef(!1),H=Fz.useRef(null),W=Fz.useRef({setInputValue:Z,isValidDigit:J,onDigit:X});W.current={setInputValue:Z,isValidDigit:J,onDigit:X},Fz.useEffect(()=>{if(!z||G&&V.current)return;if(H.current!==null)clearTimeout(H.current),H.current=null;if(Y!==Q.current){let D=fM(Y.slice(-1));if(W.current.isValidDigit(D)){let q=Y.slice(0,-1);H.current=setTimeout((U,N,L,F,P)=>{U.current=null,N.current=!0,L.current.setInputValue(F),L.current.onDigit(P)},K,H,V,W,q,D)}}return()=>{if(H.current!==null)clearTimeout(H.current),H.current=null}},[Y,z,G,K])}c();var Om=["0","1","2","3"],Lm={"0":"dismissed","1":"bad","2":"fine","3":"good"},Eq=(Y)=>Om.includes(Y),Fm="How is Claude doing this session? (optional)";function xM(Y){let Z=hM.c(15),{onSelect:J,inputValue:X,setInputValue:z,message:G}=Y,K=G===void 0?Fm:G,Q;if(Z[0]!==J)Q=(F)=>J(Lm[F]),Z[0]=J,Z[1]=Q;else Q=Z[1];let V;if(Z[2]!==X||Z[3]!==z||Z[4]!==Q)V={inputValue:X,setInputValue:z,isValidDigit:Eq,onDigit:Q},Z[2]=X,Z[3]=z,Z[4]=Q,Z[5]=V;else V=Z[5];FG(V);let H;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))H=B(O,{color:"ansi:cyan",children:"● "}),Z[6]=H;else H=Z[6];let W;if(Z[7]!==K)W=E(M,{children:[H,B(O,{bold:!0,children:K})]}),Z[7]=K,Z[8]=W;else W=Z[8];let D;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))D=B(M,{width:10,children:E(O,{children:[B(O,{color:"ansi:cyan",children:"1"}),": Bad"]})}),Z[9]=D;else D=Z[9];let q;if(Z[10]===Symbol.for("react.memo_cache_sentinel"))q=B(M,{width:10,children:E(O,{children:[B(O,{color:"ansi:cyan",children:"2"}),": Fine"]})}),Z[10]=q;else q=Z[10];let U;if(Z[11]===Symbol.for("react.memo_cache_sentinel"))U=B(M,{width:10,children:E(O,{children:[B(O,{color:"ansi:cyan",children:"3"}),": Good"]})}),Z[11]=U;else U=Z[11];let N;if(Z[12]===Symbol.for("react.memo_cache_sentinel"))N=E(M,{marginLeft:2,children:[D,q,U,B(M,{children:E(O,{children:[B(O,{color:"ansi:cyan",children:"0"}),": Dismiss"]})})]}),Z[12]=N;else N=Z[12];let L;if(Z[13]!==W)L=E(M,{flexDirection:"column",marginTop:1,children:[W,N]}),Z[13]=W,Z[14]=L;else L=Z[14];return L}xQ();N0();var gM=x(v0(),1);c();var Em=["1","2","3"],Pm={"1":"yes","2":"no","3":"dont_ask_again"},wm=(Y)=>Em.includes(Y);function mM(Y){let Z=gM.c(11),{onSelect:J,inputValue:X,setInputValue:z}=Y,G;if(Z[0]!==J)G=(q)=>J(Pm[q]),Z[0]=J,Z[1]=G;else G=Z[1];let K;if(Z[2]!==X||Z[3]!==z||Z[4]!==G)K={inputValue:X,setInputValue:z,isValidDigit:wm,onDigit:G},Z[2]=X,Z[3]=z,Z[4]=G,Z[5]=K;else K=Z[5];FG(K);let Q;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))Q=E(M,{children:[E(O,{color:"ansi:cyan",children:[OK," "]}),B(O,{bold:!0,children:"Can Anthropic look at your session transcript to help us improve Claude Code?"})]}),Z[6]=Q;else Q=Z[6];let V;if(Z[7]===Symbol.for("react.memo_cache_sentinel"))V=B(M,{marginLeft:2,children:B(O,{dimColor:!0,children:"Learn more: https://code.claude.com/docs/en/data-usage#session-quality-surveys"})}),Z[7]=V;else V=Z[7];let H;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))H=B(M,{width:10,children:E(O,{children:[B(O,{color:"ansi:cyan",children:"1"}),": Yes"]})}),Z[8]=H;else H=Z[8];let W;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))W=B(M,{width:10,children:E(O,{children:[B(O,{color:"ansi:cyan",children:"2"}),": No"]})}),Z[9]=W;else W=Z[9];let D;if(Z[10]===Symbol.for("react.memo_cache_sentinel"))D=E(M,{flexDirection:"column",marginTop:1,children:[Q,V,E(M,{marginLeft:2,children:[H,W,B(M,{children:E(O,{children:[B(O,{color:"ansi:cyan",children:"3"}),": Don't ask again"]})})]})]}),Z[10]=D;else D=Z[10];return D}c();function H6(Y){let Z=Pq.c(16),{state:J,lastResponse:X,handleSelect:z,handleTranscriptSelect:G,inputValue:K,setInputValue:Q,onRequestFeedback:V,message:H}=Y;if(J==="closed")return null;if(J==="thanks"){let D;if(Z[0]!==K||Z[1]!==X||Z[2]!==V||Z[3]!==Q)D=B(Am,{lastResponse:X,inputValue:K,setInputValue:Q,onRequestFeedback:V}),Z[0]=K,Z[1]=X,Z[2]=V,Z[3]=Q,Z[4]=D;else D=Z[4];return D}if(J==="submitted"){let D;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))D=B(M,{marginTop:1,children:E(O,{color:"success",children:["✓"," Thanks for sharing your transcript!"]})}),Z[5]=D;else D=Z[5];return D}if(J==="submitting"){let D;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))D=B(M,{marginTop:1,children:E(O,{dimColor:!0,children:["Sharing transcript","…"]})}),Z[6]=D;else D=Z[6];return D}if(J==="transcript_prompt"){if(!G)return null;if(K&&!["1","2","3"].includes(K))return null;let D;if(Z[7]!==G||Z[8]!==K||Z[9]!==Q)D=B(mM,{onSelect:G,inputValue:K,setInputValue:Q}),Z[7]=G,Z[8]=K,Z[9]=Q,Z[10]=D;else D=Z[10];return D}if(K&&!Eq(K))return null;let W;if(Z[11]!==z||Z[12]!==K||Z[13]!==H||Z[14]!==Q)W=B(xM,{onSelect:z,inputValue:K,setInputValue:Q,message:H}),Z[11]=z,Z[12]=K,Z[13]=H,Z[14]=Q,Z[15]=W;else W=Z[15];return W}var _m=(Y)=>Y==="1";function Am(Y){let Z=Pq.c(12),{lastResponse:J,inputValue:X,setInputValue:z,onRequestFeedback:G}=Y,K=G&&J==="good",Q=Boolean(K),V;if(Z[0]!==J||Z[1]!==G)V=()=>{Z0("tengu_feedback_survey_event",{event_type:"followup_accepted",response:J}),G?.()},Z[0]=J,Z[1]=G,Z[2]=V;else V=Z[2];let H;if(Z[3]!==X||Z[4]!==z||Z[5]!==Q||Z[6]!==V)H={inputValue:X,setInputValue:z,isValidDigit:_m,enabled:Q,once:!0,onDigit:V},Z[3]=X,Z[4]=z,Z[5]=Q,Z[6]=V,Z[7]=H;else H=Z[7];FG(H);let W="/feedback",D;if(Z[8]===Symbol.for("react.memo_cache_sentinel"))D=B(O,{color:"success",children:"Thanks for the feedback!"}),Z[8]=D;else D=Z[8];let q;if(Z[9]!==J||Z[10]!==K)q=E(M,{marginTop:1,flexDirection:"column",children:[D,K?E(O,{dimColor:!0,children:["(Optional) Press [",B(O,{color:"ansi:cyan",children:"1"}),"] to tell us what went well "," · ",W]}):J==="bad"?B(O,{dimColor:!0,children:"Use /issue to report model behavior issues."}):E(O,{dimColor:!0,children:["Use ",W," to share detailed feedback anytime."]})]}),Z[9]=J,Z[10]=K,Z[11]=q;else q=Z[11];return q}Mm();AZ();dZ();rZ();var q6=x(Q0(),1);function E9(Y){let{addNotification:Z}=JZ(),J=q6.useRef(!1),X=q6.useRef(Y);X.current=Y,q6.useEffect(()=>{if(UZ()||J.current)return;J.current=!0,Promise.resolve().then(()=>X.current()).then((z)=>{if(!z)return;for(let G of Array.isArray(z)?z:[z])Z(G)}).catch(u0)},[Z])}function uM(){E9(Rm)}async function Rm(){return(await cM()).map(jm)}function jm(Y,Z){let J="low";if(Y.type==="error"||Y.userActionRequired)J="high";else if(Y.type==="path"||Y.type==="alias")J="medium";return{key:`install-message-${Z}-${Y.type}`,text:Y.message,priority:J,color:Y.type==="error"?"error":"warning"}}s_();qJ();var SX=x(Q0(),1);KA();o7();BZ();BY();_X();fD();BW();ym();var km=30;function bm(Y){return`${Y?`Session memory (broader context):
|
|
119
|
+
${Y}
|
|
120
|
+
|
|
121
|
+
`:""}The user stepped away and is coming back. Write exactly 1-3 short sentences. Start by stating the high-level task — what they are building or debugging, not implementation details. Next: the concrete next step. Skip status reports and commit recaps.`}async function rM(Y,Z){if(Y.length===0)return null;try{let J=await lM(),X=Y.slice(-km);X.push(gY({content:bm(J)}));let z=await dM({messages:X,systemPrompt:$Q([]),thinkingConfig:{type:"disabled"},tools:[],signal:Z,options:{getToolPermissionContext:async()=>iK(),model:pM(),toolChoice:void 0,isNonInteractiveSession:!1,hasAppendSystemPrompt:!1,agents:[],querySource:"away_summary",mcpTools:[],skipCacheWrite:!0}});if(z.isApiErrorMessage)return g(`[awaySummary] API error: ${wq(z)}`),null;return wq(z)}catch(J){if(J instanceof R1||Z.aborted)return null;return g(`[awaySummary] generation failed: ${J}`),null}}BY();var Im=300000;function Tm(Y){for(let Z=Y.length-1;Z>=0;Z--){let J=Y[Z];if(J.type==="user"&&!J.isMeta&&!J.isCompactSummary)return!1;if(J.type==="system"&&J.subtype==="away_summary")return!0}return!1}function nM(Y,Z,J){let X=SX.useRef(null),z=SX.useRef(null),G=SX.useRef(Y),K=SX.useRef(J),Q=SX.useRef(!1),V=SX.useRef(null);G.current=Y,K.current=J;let H=YJ("tengu_sedge_lantern",!1);SX.useEffect(()=>{if(!H)return;function W(){if(X.current!==null)clearTimeout(X.current),X.current=null}function D(){z.current?.abort(),z.current=null}async function q(){if(Q.current=!1,Tm(G.current))return;D();let F=new AbortController;z.current=F;let P=await rM(G.current,F.signal);if(F.signal.aborted||P===null)return;Z((w)=>[...w,aM(P)])}function U(){if(X.current=null,K.current){Q.current=!0;return}q()}function N(){let F=_q();if(F==="blurred")W(),X.current=setTimeout(U,Im);else if(F==="focused")W(),D(),Q.current=!1}let L=iM(N);return N(),V.current=q,()=>{L(),W(),D(),V.current=null}},[H,Z]),SX.useEffect(()=>{if(J)return;if(!Q.current)return;if(_q()!=="blurred")return;V.current?.()},[J])}N0();BZ();qJ();DZ();bZ();BZ();rJ();yJ();rZ();vm();Cm();D6();Sm();$m();import{join as fm}from"path";function hm(){return nZ(process.env.CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL)}var a1={MAX_ATTEMPTS:10,INITIAL_DELAY_MS:3600000,BACKOFF_MULTIPLIER:2,MAX_DELAY_MS:604800000};function Aq(Y){let Z=a1.INITIAL_DELAY_MS*Math.pow(a1.BACKOFF_MULTIPLIER,Y);return Math.min(Z,a1.MAX_DELAY_MS)}function xm(Y){if(!Y.officialMarketplaceAutoInstallAttempted)return!0;if(Y.officialMarketplaceAutoInstalled)return!1;let Z=Y.officialMarketplaceAutoInstallFailReason,J=Y.officialMarketplaceAutoInstallRetryCount||0,X=Y.officialMarketplaceAutoInstallNextRetryTime,z=Date.now();if(J>=a1.MAX_ATTEMPTS)return!1;if(Z==="policy_blocked")return!1;if(X&&z<X)return!1;return Z==="unknown"||Z==="git_unavailable"||Z==="gcs_unavailable"||Z===void 0}async function XR(){let Y=l0();if(!xm(Y)){let Z=Y.officialMarketplaceAutoInstallFailReason??"already_attempted";return g(`Official marketplace auto-install skipped: ${Z}`),{installed:!1,skipped:!0,reason:Z}}try{if(hm())return g("Official marketplace auto-install disabled via env var, skipping"),HZ((Q)=>({...Q,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!1,officialMarketplaceAutoInstallFailReason:"policy_blocked"})),Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,policy_blocked:!0}),{installed:!1,skipped:!0,reason:"policy_blocked"};if((await Ez())[B6])return g(`Official marketplace '${B6}' already installed, skipping`),HZ((Q)=>({...Q,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!0})),{installed:!1,skipped:!0,reason:"already_installed"};if(!tM(i1))return g("Official marketplace blocked by enterprise policy, skipping"),HZ((Q)=>({...Q,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!1,officialMarketplaceAutoInstallFailReason:"policy_blocked"})),Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,policy_blocked:!0}),{installed:!1,skipped:!0,reason:"policy_blocked"};let J=ZR(),X=fm(J,B6);if(await eM(X,J)!==null){let Q=await Ez();return Q[B6]={source:i1,installLocation:X,lastUpdated:new Date().toISOString()},await YR(Q),HZ((V)=>({...V,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!0,officialMarketplaceAutoInstallFailReason:void 0,officialMarketplaceAutoInstallRetryCount:void 0,officialMarketplaceAutoInstallLastAttemptTime:void 0,officialMarketplaceAutoInstallNextRetryTime:void 0})),Z0("tengu_official_marketplace_auto_install",{installed:!0,skipped:!1,via_gcs:!0}),{installed:!0,skipped:!1}}if(!YJ("tengu_plugin_official_mkt_git_fallback",!0)){g("Official marketplace GCS failed; git fallback disabled by flag — skipping install");let Q=(Y.officialMarketplaceAutoInstallRetryCount||0)+1,V=Date.now(),H=V+Aq(Q);return HZ((W)=>({...W,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!1,officialMarketplaceAutoInstallFailReason:"gcs_unavailable",officialMarketplaceAutoInstallRetryCount:Q,officialMarketplaceAutoInstallLastAttemptTime:V,officialMarketplaceAutoInstallNextRetryTime:H})),Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,gcs_unavailable:!0,retry_count:Q}),{installed:!1,skipped:!0,reason:"gcs_unavailable"}}if(!await oM()){g("Git not available, skipping official marketplace auto-install");let Q=(Y.officialMarketplaceAutoInstallRetryCount||0)+1,V=Date.now(),H=Aq(Q),W=V+H,D=!1;try{HZ((q)=>({...q,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!1,officialMarketplaceAutoInstallFailReason:"git_unavailable",officialMarketplaceAutoInstallRetryCount:Q,officialMarketplaceAutoInstallLastAttemptTime:V,officialMarketplaceAutoInstallNextRetryTime:W}))}catch(q){D=!0;let U=L8(q);u0(U),g(`Failed to save marketplace auto-install git_unavailable state: ${q}`,{level:"error"})}return Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,git_unavailable:!0,retry_count:Q}),{installed:!1,skipped:!0,reason:"git_unavailable",configSaveFailed:D}}g("Attempting to auto-install official marketplace"),await JR(i1),g("Successfully auto-installed official marketplace");let K=Y.officialMarketplaceAutoInstallRetryCount||0;return HZ((Q)=>({...Q,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!0,officialMarketplaceAutoInstallFailReason:void 0,officialMarketplaceAutoInstallRetryCount:void 0,officialMarketplaceAutoInstallLastAttemptTime:void 0,officialMarketplaceAutoInstallNextRetryTime:void 0})),Z0("tengu_official_marketplace_auto_install",{installed:!0,skipped:!1,retry_count:K}),{installed:!0,skipped:!1}}catch(Z){let J=Z instanceof Error?Z.message:String(Z);if(J.includes("xcrun: error:"))return sM(),g("Official marketplace auto-install: git is a non-functional macOS xcrun shim, treating as git_unavailable"),Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,git_unavailable:!0,macos_xcrun_shim:!0}),{installed:!1,skipped:!0,reason:"git_unavailable"};g(`Failed to auto-install official marketplace: ${J}`,{level:"error"}),u0(L8(Z));let X=(Y.officialMarketplaceAutoInstallRetryCount||0)+1,z=Date.now(),G=Aq(X),K=z+G,Q=!1;try{HZ((V)=>({...V,officialMarketplaceAutoInstallAttempted:!0,officialMarketplaceAutoInstalled:!1,officialMarketplaceAutoInstallFailReason:"unknown",officialMarketplaceAutoInstallRetryCount:X,officialMarketplaceAutoInstallLastAttemptTime:z,officialMarketplaceAutoInstallNextRetryTime:K}))}catch(V){Q=!0;let H=L8(V);u0(H),g(`Failed to save marketplace auto-install failure state: ${V}`,{level:"error"})}return Z0("tengu_official_marketplace_auto_install",{installed:!1,skipped:!0,failed:!0,retry_count:X}),{installed:!1,skipped:!0,reason:"unknown",configSaveFailed:Q}}}c();function zR(){E9(gm)}async function gm(){let Y=await XR(),Z=[];if(Y.configSaveFailed)g("Showing marketplace config save failure notification"),Z.push({key:"marketplace-config-save-failed",jsx:B(O,{color:"error",children:"Failed to save marketplace retry info · Check ~/.claudin/config.json permissions"}),priority:"immediate",timeoutMs:1e4});if(Y.installed)g("Showing marketplace installation success notification"),Z.push({key:"marketplace-installed",jsx:B(O,{color:"success",children:"✓ Anthropic marketplace installed · /plugin to see available plugins"}),priority:"immediate",timeoutMs:7000});else if(Y.skipped&&Y.reason==="unknown")g("Showing marketplace installation failure notification"),Z.push({key:"marketplace-install-failed",jsx:B(O,{color:"warning",children:"Failed to install Anthropic marketplace · Will retry on next startup"}),priority:"immediate",timeoutMs:8000});return Z}n9();DZ();function mm(Y){if(Y.length===0)return;if(Y.length===1)return Y[0];let Z=Y.map((J)=>({tip:J,sessions:KR(J.id)}));return Z.sort((J,X)=>X.sessions-J.sessions),Z[0]?.tip}async function VR(Y){if(k5().spinnerTipsEnabled===!1)return;let Z=await QR(Y);if(Z.length===0)return;return mm(Z)}function WR(Y){GR(Y.id),Z0("tengu_tip_shown",{tipIdLength:Y.id,cooldownSessions:Y.cooldownSessions})}function HR(Y,Z){return Y||Z.trim().length>0}function qR(Y){if(Y.isRemoteSession)return!1;if(Y.hasStarted)return!1;if(!Y.hasHadFirstSubmission)return!1;return!0}YZ();AZ();g9();var U6=x(Q0(),1),BR=!1;async function Rq(Y,Z){if(BR)return;if(BR=!0,!Y.isBypassPermissionsModeAvailable)return;if(!await UR())return;Z((X)=>{return{...X,toolPermissionContext:NR(X.toolPermissionContext)}})}function OR(){let Y=t((J)=>J.toolPermissionContext),Z=n0();U6.useEffect(()=>{if(UZ())return;Rq(Y,Z)},[])}var Mq=!1;async function jq(Y,Z,J){{if(Mq)return;Mq=!0;let{updateContext:X,notification:z}=await DR(Y,J);Z((G)=>{let K=X(G.toolPermissionContext),Q=K===G.toolPermissionContext?G:{...G,toolPermissionContext:K};if(!z)return Q;return{...Q,notifications:{...Q.notifications,queue:[...Q.notifications.queue,{key:"auto-mode-gate-notification",text:z,color:"warning",priority:"high"}]}}})}}function cm(){Mq=!1}function LR(){let Y=t((K)=>K.mainLoopModel),Z=t((K)=>K.mainLoopModelForSession),J=t((K)=>K.fastMode),X=n0(),z=pZ(),G=U6.useRef(!0);U6.useEffect(()=>{if(UZ())return;if(G.current)G.current=!1;else cm();jq(z.getState().toolPermissionContext,X,J)},[Y,Z,J])}u8();rQ();var n1=x(Q0(),1);function ER(Y,Z,J){let X=n1.useRef(!1);n1.useEffect(()=>{if(!HG()||X.current)return;if(X.current=!0,Y)FR(Y,J)},[Z,Y,J])}N0();u8();LX();cY();c();var wR=x(v0(),1);function _R(Y){let Z=wR.c(22),{hostPattern:J,onUserResponse:X}=Y,{host:z}=J,G;if(Z[0]!==X)G=function(j){Z:switch(j){case"yes":{X({allow:!0,persistToSettings:!1});break Z}case"yes-dont-ask-again":{X({allow:!0,persistToSettings:!0});break Z}case"no":X({allow:!1,persistToSettings:!1})}},Z[0]=X,Z[1]=G;else G=Z[1];let K=G,Q;if(Z[2]===Symbol.for("react.memo_cache_sentinel"))Q=PR(),Z[2]=Q;else Q=Z[2];let V=Q,H;if(Z[3]===Symbol.for("react.memo_cache_sentinel"))H={label:"Yes",value:"yes"},Z[3]=H;else H=Z[3];let W;if(Z[4]!==z)W=!V?[{label:E(O,{children:["Yes, and don't ask again for ",B(O,{bold:!0,children:z})]}),value:"yes-dont-ask-again"}]:[],Z[4]=z,Z[5]=W;else W=Z[5];let D;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))D={label:E(O,{children:["No, and tell Claude what to do differently ",B(O,{bold:!0,children:"(esc)"})]}),value:"no"},Z[6]=D;else D=Z[6];let q;if(Z[7]!==W)q=[H,...W,D],Z[7]=W,Z[8]=q;else q=Z[8];let U=q,N;if(Z[9]===Symbol.for("react.memo_cache_sentinel"))N=B(O,{dimColor:!0,children:"Host:"}),Z[9]=N;else N=Z[9];let L;if(Z[10]!==z)L=E(M,{children:[N,E(O,{children:[" ",z]})]}),Z[10]=z,Z[11]=L;else L=Z[11];let F;if(Z[12]===Symbol.for("react.memo_cache_sentinel"))F=B(M,{marginTop:1,children:B(O,{children:"Do you want to allow this connection?"})}),Z[12]=F;else F=Z[12];let P;if(Z[13]!==X)P=()=>{X({allow:!1,persistToSettings:!1})},Z[13]=X,Z[14]=P;else P=Z[14];let w;if(Z[15]!==K||Z[16]!==U||Z[17]!==P)w=B(M,{children:B(qZ,{options:U,onChange:K,onCancel:P})}),Z[15]=K,Z[16]=U,Z[17]=P,Z[18]=w;else w=Z[18];let _;if(Z[19]!==w||Z[20]!==L)_=B(jZ,{title:"Network request outside of sandbox",children:E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[L,F,w]})}),Z[19]=w,Z[20]=L,Z[21]=_;else _=Z[21];return _}mu();rZ();dZ();AZ();N0();um();c();var AR=x(v0(),1),MR=x(Q0(),1),pm=[];function RR(Y){let Z=AR.c(4),{mcpClients:J}=Y,X=J===void 0?pm:J,{addNotification:z}=JZ(),G,K;if(Z[0]!==z||Z[1]!==X)G=()=>{try{if(UZ())return;let Q=X.filter(im),V=X.filter(rm),H=X.filter(lm),W=X.filter(dm);if(Q.length===0&&V.length===0&&H.length===0&&W.length===0)return;if(Q.length>0)z({key:"mcp-failed",jsx:E(A0,{children:[E(O,{color:"error",children:[Q.length," MCP"," ",Q.length===1?"server":"servers"," failed"]}),B(O,{dimColor:!0,children:" · /mcp"})]}),priority:"medium"});if(V.length>0)z({key:"mcp-claudeai-failed",jsx:E(A0,{children:[E(O,{color:"error",children:[V.length," claude.ai"," ",V.length===1?"connector":"connectors"," ","unavailable"]}),B(O,{dimColor:!0,children:" · /mcp"})]}),priority:"medium"});if(H.length>0)z({key:"mcp-needs-auth",jsx:E(A0,{children:[E(O,{color:"warning",children:[H.length," MCP"," ",H.length===1?"server needs":"servers need"," ","auth"]}),B(O,{dimColor:!0,children:" · /mcp"})]}),priority:"medium"});if(W.length>0)z({key:"mcp-claudeai-needs-auth",jsx:E(A0,{children:[E(O,{color:"warning",children:[W.length," claude.ai"," ",W.length===1?"connector needs":"connectors need"," ","auth"]}),B(O,{dimColor:!0,children:" · /mcp"})]}),priority:"medium"})}catch(Q){u0(Q)}},K=[z,X],Z[0]=z,Z[1]=X,Z[2]=G,Z[3]=K;else G=Z[2],K=Z[3];MR.useEffect(G,K)}function dm(Y){return Y.type==="needs-auth"&&Y.config.type==="claudeai-proxy"&&yq(Y.name)}function lm(Y){return Y.type==="needs-auth"&&Y.config.type!=="claudeai-proxy"}function rm(Y){return Y.type==="failed"&&Y.config.type==="claudeai-proxy"&&yq(Y.name)}function im(Y){return Y.type==="failed"&&Y.config.type!=="sse-ide"&&Y.config.type!=="ws-ide"&&Y.config.type!=="claudeai-proxy"}dZ();AZ();YZ();g9();n9();var N6=x(Q0(),1);function yR(){let{addNotification:Y}=JZ(),Z=t((G)=>G.toolPermissionContext.mode),J=t((G)=>G.toolPermissionContext.isAutoModeAvailable),X=N6.useRef(!1),z=N6.useRef(Z);N6.useEffect(()=>{let G=z.current;if(z.current=Z,UZ())return;if(X.current)return;if(!(Z==="default"&&G!=="default"&&G!=="auto"&&!J&&W1()))return;let Q=_V();if(!Q)return;X.current=!0,Y({key:"auto-mode-unavailable",text:jR(Q),color:"warning",priority:"medium"})},[Z,J,Y])}PV();AZ();dZ();N0();am();YZ();BZ();rJ();c();var TR=x(v0(),1),EG=x(Q0(),1),nm=5000;function vR(){let Y=TR.c(10),{addNotification:Z}=JZ(),J=n0(),[X,z]=EG.useState(sm),G;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))G=new Set,Y[0]=G;else G=Y[0];let K=EG.useRef(G),Q;if(Y[1]!==Z||Y[2]!==J)Q=(U,N)=>{let L=`${U}:${N}`;if(K.current.has(L))return;K.current.add(L),g(`LSP error: ${U} - ${N}`),J((P)=>{let w=new Set(P.plugins.errors.map(om)),_=`generic-error:${U}:${N}`;if(w.has(_))return P;return{...P,plugins:{...P.plugins,errors:[...P.plugins.errors,{type:"generic-error",source:U,error:N}]}}});let F=U.startsWith("plugin:")?U.split(":")[1]??U:U;Z({key:`lsp-error-${U}`,jsx:E(A0,{children:[E(O,{color:"error",children:["LSP for ",F," failed"]}),B(O,{dimColor:!0,children:" · /plugin for details"})]}),priority:"medium",timeoutMs:8000})},Y[1]=Z,Y[2]=J,Y[3]=Q;else Q=Y[3];let V=Q,H;if(Y[4]!==V)H=()=>{if(UZ())return;if(kR())return;let U=IR();if(U.status==="failed"){V("lsp-manager",U.error.message),z(!1);return}if(U.status==="pending"||U.status==="not-started")return;let N=bR();if(N){let L=N.getAllServers();for(let[F,P]of L)if(P.state==="error"&&P.lastError)V(F,P.lastError.message)}},Y[4]=V,Y[5]=H;else H=Y[5];let W=H;s7(W,X?nm:null);let D,q;if(Y[6]!==W||Y[7]!==X)D=()=>{if(UZ()||!X)return;W()},q=[W,X],Y[6]=W,Y[7]=X,Y[8]=D,Y[9]=q;else D=Y[8],q=Y[9];EG.useEffect(D,q)}function om(Y){if(Y.type==="generic-error")return`generic-error:${Y.source}:${Y.error}`;return`${Y.type}:${Y.source}`}function sm(){return nZ("true")}AZ();dZ();YZ();bZ();BZ();rZ();var sR=x(v0(),1),e1=x(Q0(),1);import{extname as Qc,join as Vc}from"path";import{extname as Yc}from"path";BZ();tm();var CR=new Map;async function $R(Y){if(!Y||!Y.trim())return g("[binaryCheck] Empty command provided, returning false"),!1;let Z=Y.trim(),J=CR.get(Z);if(J!==void 0)return g(`[binaryCheck] Cache hit for '${Z}': ${J}`),J;let X=!1;if(await SR(Z).catch(()=>null))X=!0;return CR.set(Z,X),g(`[binaryCheck] Binary '${Z}' ${X?"found":"not found"}`),X}bZ();BZ();Zc();D6();em();var Jc=5;function Xc(Y){return xR.has(Y.toLowerCase())}function zc(Y){if(!Y)return null;if(typeof Y==="string")return g("[lspRecommendation] Skipping string path lspServers (not readable from marketplace)"),null;if(Array.isArray(Y)){for(let Z of Y){if(typeof Z==="string")continue;let J=hR(Z);if(J)return J}return null}return hR(Y)}function fR(Y){return typeof Y==="object"&&Y!==null}function hR(Y){let Z=new Set,J=null;for(let[X,z]of Object.entries(Y)){if(!fR(z))continue;if(!J&&typeof z.command==="string")J=z.command;let G=z.extensionToLanguage;if(fR(G))for(let K of Object.keys(G))Z.add(K.toLowerCase())}if(!J||Z.size===0)return null;return{extensions:Z,command:J}}async function Gc(){let Y=new Map;try{let Z=await Ez();for(let J of Object.keys(Z))try{let X=await gR(J),z=Xc(J);for(let G of X.plugins){if(!G.lspServers)continue;let K=zc(G.lspServers);if(!K)continue;let Q=`${G.name}@${J}`;Y.set(Q,{entry:G,marketplaceName:J,extensions:K.extensions,command:K.command,isOfficial:z})}}catch(X){g(`[lspRecommendation] Failed to load marketplace ${J}: ${X}`)}}catch(Z){g(`[lspRecommendation] Failed to load marketplaces config: ${Z}`)}return Y}async function cR(Y){if(Kc())return g("[lspRecommendation] Recommendations are disabled"),[];let Z=Yc(Y).toLowerCase();if(!Z)return g("[lspRecommendation] No file extension found"),[];g(`[lspRecommendation] Looking for LSP plugins for ${Z}`);let J=await Gc(),z=l0().lspRecommendationNeverPlugins??[],G=[];for(let[Q,V]of J){if(!V.extensions.has(Z))continue;if(z.includes(Q)){g(`[lspRecommendation] Skipping ${Q} (in never suggest list)`);continue}if(mR(Q)){g(`[lspRecommendation] Skipping ${Q} (already installed)`);continue}G.push({info:V,pluginId:Q})}let K=[];for(let{info:Q,pluginId:V}of G)if(await $R(Q.command))K.push({info:Q,pluginId:V}),g(`[lspRecommendation] Binary '${Q.command}' found for ${V}`);else g(`[lspRecommendation] Skipping ${V} (binary '${Q.command}' not found)`);return K.sort((Q,V)=>{if(Q.info.isOfficial&&!V.info.isOfficial)return-1;if(!Q.info.isOfficial&&V.info.isOfficial)return 1;return 0}),K.map(({info:Q,pluginId:V})=>({pluginId:V,pluginName:Q.entry.name,marketplaceName:Q.marketplaceName,description:Q.entry.description,isOfficial:Q.isOfficial,extensions:Array.from(Q.extensions),command:Q.command}))}function uR(Y){HZ((Z)=>{let J=Z.lspRecommendationNeverPlugins??[];if(J.includes(Y))return Z;return{...Z,lspRecommendationNeverPlugins:[...J,Y]}}),g(`[lspRecommendation] Added ${Y} to never suggest`)}function pR(){HZ((Y)=>{let Z=(Y.lspRecommendationIgnoredCount??0)+1;return{...Y,lspRecommendationIgnoredCount:Z}}),g("[lspRecommendation] Incremented ignored count")}function Kc(){let Y=l0();return Y.lspRecommendationDisabled===!0||(Y.lspRecommendationIgnoredCount??0)>=Jc}oR();n9();TY();AZ();N0();rZ();D6();c();var lR=x(v0(),1),o1=x(Q0(),1);function s1(){let Y=lR.c(6),[Z,J]=o1.useState(null),X=o1.useRef(!1),z;if(Y[0]!==Z)z=(H)=>{if(UZ())return;if(Z)return;if(X.current)return;X.current=!0,H().then((W)=>{if(W)J(W)}).catch(u0).finally(()=>{X.current=!1})},Y[0]=Z,Y[1]=z;else z=Y[1];let G=z,K;if(Y[2]===Symbol.for("react.memo_cache_sentinel"))K=()=>J(null),Y[2]=K;else K=Y[2];let Q=K,V;if(Y[3]!==Z||Y[4]!==G)V={recommendation:Z,clearRecommendation:Q,tryResolve:G},Y[3]=Z,Y[4]=G,Y[5]=V;else V=Y[5];return V}async function t1(Y,Z,J,X,z){try{let G=await dR(Y);if(!G)throw Error(`Plugin ${Y} not found in marketplace`);await z(G),X({key:`${J}-installed`,jsx:E(O,{color:"success",children:[R0.tick," ",Z," installed · restart to apply"]}),priority:"immediate",timeoutMs:5000})}catch(G){u0(G),X({key:`${J}-install-failed`,jsx:E(O,{color:"error",children:["Failed to install ",Z]}),priority:"immediate",timeoutMs:5000})}}var Wc=28000;function tR(){let Y=sR.c(12),Z=t(qc),{addNotification:J}=JZ(),X;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))X=new Set,Y[0]=X;else X=Y[0];let z=e1.useRef(X),{recommendation:G,clearRecommendation:K,tryResolve:Q}=s1(),V,H;if(Y[1]!==Z||Y[2]!==Q)V=()=>{Q(async()=>{if(rR())return null;let U=[];for(let N of Z)if(!z.current.has(N))z.current.add(N),U.push(N);for(let N of U)try{let F=(await cR(N))[0];if(F)return g(`[useLspPluginRecommendation] Found match: ${F.pluginName} for ${N}`),iR(!0),{pluginId:F.pluginId,pluginName:F.pluginName,pluginDescription:F.description,fileExtension:Qc(N),shownAt:Date.now()}}catch(L){u0(L)}return null})},H=[Z,Q],Y[1]=Z,Y[2]=Q,Y[3]=V,Y[4]=H;else V=Y[3],H=Y[4];e1.useEffect(V,H);let W;if(Y[5]!==J||Y[6]!==K||Y[7]!==G)W=(U)=>{if(!G)return;let{pluginId:N,pluginName:L,shownAt:F}=G;g(`[useLspPluginRecommendation] User response: ${U} for ${L}`);Z:switch(U){case"yes":{t1(N,L,"lsp-plugin",J,async(P)=>{g(`[useLspPluginRecommendation] Installing plugin: ${N}`);let w=typeof P.entry.source==="string"?Vc(P.marketplaceInstallLocation,P.entry.source):void 0;await nR(N,P.entry,"user",void 0,w);let _=aR("userSettings");c1("userSettings",{enabledPlugins:{..._?.enabledPlugins,[N]:!0}}),g(`[useLspPluginRecommendation] Plugin installed: ${N}`)});break Z}case"no":{let P=Date.now()-F;if(P>=Wc)g(`[useLspPluginRecommendation] Timeout detected (${P}ms), incrementing ignored count`),pR();break Z}case"never":{uR(N);break Z}case"disable":HZ(Hc)}K()},Y[5]=J,Y[6]=K,Y[7]=G,Y[8]=W;else W=Y[8];let D=W,q;if(Y[9]!==D||Y[10]!==G)q={recommendation:G,handleResponse:D},Y[9]=D,Y[10]=G,Y[11]=q;else q=Y[11];return q}function Hc(Y){if(Y.lspRecommendationDisabled)return Y;return{...Y,lspRecommendationDisabled:!0}}function qc(Y){return Y.fileHistory.trackedFiles}N0();LX();cY();c();var Z4=x(Q0(),1),Bc=30000;function eR({pluginName:Y,pluginDescription:Z,fileExtension:J,onResponse:X}){let z=Z4.useRef(X);z.current=X,Z4.useEffect(()=>{let Q=setTimeout((V)=>V.current("no"),Bc,z);return()=>clearTimeout(Q)},[]);function G(Q){switch(Q){case"yes":X("yes");break;case"no":X("no");break;case"never":X("never");break;case"disable":X("disable");break}}return B(jZ,{title:"LSP Plugin Recommendation",children:E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[B(M,{marginBottom:1,children:B(O,{dimColor:!0,children:"LSP provides code intelligence like go-to-definition and error checking"})}),E(M,{children:[B(O,{dimColor:!0,children:"Plugin:"}),E(O,{children:[" ",Y]})]}),Z&&B(M,{children:B(O,{dimColor:!0,children:Z})}),E(M,{children:[B(O,{dimColor:!0,children:"Triggered by:"}),E(O,{children:[" ",J," files"]})]}),B(M,{marginTop:1,children:B(O,{children:"Would you like to install this LSP plugin?"})}),B(M,{children:B(qZ,{options:[{label:E(O,{children:["Yes, install ",B(O,{bold:!0,children:Y})]}),value:"yes"},{label:"No, not now",value:"no"},{label:E(O,{children:["Never for ",B(O,{bold:!0,children:Y})]}),value:"never"},{label:"Disable all LSP recommendations",value:"disable"}],onChange:G,onCancel:()=>X("no")})})]})})}dZ();DZ();Dc();BZ();Uc();oR();var Qj=x(v0(),1),Y4=x(Q0(),1);function Vj(){let Y=Qj.c(11),Z=Y4.useSyncExternalStore(Jj,kq),{addNotification:J}=JZ(),{recommendation:X,clearRecommendation:z,tryResolve:G}=s1(),K,Q;if(Y[0]!==Z||Y[1]!==G)K=()=>{if(!Z)return;G(async()=>{let D=await Xj(Z);if(D)g(`[useClaudeCodeHintRecommendation] surfacing ${D.pluginId} from ${D.sourceCommand}`),Yj();if(kq()===Z)Zj();return D})},Q=[Z,G],Y[0]=Z,Y[1]=G,Y[2]=K,Y[3]=Q;else K=Y[2],Q=Y[3];Y4.useEffect(K,Q);let V;if(Y[4]!==J||Y[5]!==z||Y[6]!==X)V=(D)=>{if(!X)return;zj(X.pluginId),Z0("tengu_plugin_hint_response",{_PROTO_plugin_name:X.pluginName,_PROTO_marketplace_name:X.marketplaceName,response:D});Z:switch(D){case"yes":{let{pluginId:q,pluginName:U,marketplaceName:N}=X;t1(q,U,"hint-plugin",J,async(L)=>{let F=await Kj({pluginId:q,entry:L.entry,marketplaceName:N,scope:"user",trigger:"hint"});if(!F.success)throw Error(F.error)});break Z}case"disable":{Gj();break Z}case"no":}z()},Y[4]=J,Y[5]=z,Y[6]=X,Y[7]=V;else V=Y[7];let H=V,W;if(Y[8]!==H||Y[9]!==X)W={recommendation:X,handleResponse:H},Y[8]=H,Y[9]=X,Y[10]=W;else W=Y[10];return W}N0();LX();cY();c();var J4=x(Q0(),1),Nc=30000;function Wj({pluginName:Y,pluginDescription:Z,marketplaceName:J,sourceCommand:X,onResponse:z}){let G=J4.useRef(z);G.current=z,J4.useEffect(()=>{let V=setTimeout((H)=>H.current("no"),Nc,G);return()=>clearTimeout(V)},[]);function K(V){switch(V){case"yes":z("yes");break;case"disable":z("disable");break;default:z("no")}}return B(jZ,{title:"Plugin Recommendation",children:E(M,{flexDirection:"column",paddingX:2,paddingY:1,children:[B(M,{marginBottom:1,children:E(O,{dimColor:!0,children:["The ",B(O,{bold:!0,children:X})," command suggests installing a plugin."]})}),E(M,{children:[B(O,{dimColor:!0,children:"Plugin:"}),E(O,{children:[" ",Y]})]}),E(M,{children:[B(O,{dimColor:!0,children:"Marketplace:"}),E(O,{children:[" ",J]})]}),Z&&B(M,{children:B(O,{dimColor:!0,children:Z})}),B(M,{marginTop:1,children:B(O,{children:"Would you like to install it?"})}),B(M,{children:B(qZ,{options:[{label:E(O,{children:["Yes, install ",B(O,{bold:!0,children:Y})]}),value:"yes"},{label:"No",value:"no"},{label:"No, and don't show plugin installation hints again",value:"disable"}],onChange:K,onCancel:()=>z("no")})})]})})}AZ();dZ();N0();YZ();BZ();d8();c();var Hj=x(v0(),1),qj=x(Q0(),1);function Bj(){let Y=Hj.c(20),{addNotification:Z}=JZ(),J=t(Fc),X;Z:{if(!J){let L;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))L={totalFailed:0,failedMarketplacesCount:0,failedPluginsCount:0},Y[0]=L;else L=Y[0];X=L;break Z}let H;if(Y[1]!==J.marketplaces)H=J.marketplaces.filter(Lc),Y[1]=J.marketplaces,Y[2]=H;else H=Y[2];let W=H,D;if(Y[3]!==J.plugins)D=J.plugins.filter(Oc),Y[3]=J.plugins,Y[4]=D;else D=Y[4];let q=D,U=W.length+q.length,N;if(Y[5]!==W.length||Y[6]!==q.length||Y[7]!==U)N={totalFailed:U,failedMarketplacesCount:W.length,failedPluginsCount:q.length},Y[5]=W.length,Y[6]=q.length,Y[7]=U,Y[8]=N;else N=Y[8];X=N}let{totalFailed:z,failedMarketplacesCount:G,failedPluginsCount:K}=X,Q;if(Y[9]!==Z||Y[10]!==G||Y[11]!==K||Y[12]!==J||Y[13]!==z)Q=()=>{if(UZ())return;if(!J){g("No installation status to monitor");return}if(z===0)return;if(g(`Plugin installation status: ${G} failed marketplaces, ${K} failed plugins`),z===0)return;g(`Adding notification for ${z} failed installations`),Z({key:"plugin-install-failed",jsx:E(A0,{children:[E(O,{color:"error",children:[z," ",NX(z,"plugin")," failed to install"]}),B(O,{dimColor:!0,children:" · /plugin for details"})]}),priority:"medium"})},Y[9]=Z,Y[10]=G,Y[11]=K,Y[12]=J,Y[13]=z,Y[14]=Q;else Q=Y[14];let V;if(Y[15]!==Z||Y[16]!==G||Y[17]!==K||Y[18]!==z)V=[Z,z,G,K],Y[15]=Z,Y[16]=G,Y[17]=K,Y[18]=z,Y[19]=V;else V=Y[19];qj.useEffect(Q,V)}function Oc(Y){return Y.status==="failed"}function Lc(Y){return Y.status==="failed"}function Fc(Y){return Y.plugins.installationStatus}AZ();dZ();N0();BZ();Ec();c();var Uj=x(v0(),1),O6=x(Q0(),1);function Nj(){let Y=Uj.c(7),{addNotification:Z}=JZ(),J;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))J=[],Y[0]=J;else J=Y[0];let[X,z]=O6.useState(J),G,K;if(Y[1]===Symbol.for("react.memo_cache_sentinel"))G=()=>{if(UZ())return;return Dj((W)=>{g(`Plugin autoupdate notification: ${W.length} plugin(s) updated`),z(W)})},K=[],Y[1]=G,Y[2]=K;else G=Y[1],K=Y[2];O6.useEffect(G,K);let Q,V;if(Y[3]!==Z||Y[4]!==X)Q=()=>{if(UZ())return;if(X.length===0)return;let H=X.map(Pc),W=H.length<=2?H.join(" and "):`${H.length} plugins`;Z({key:"plugin-autoupdate-restart",jsx:E(A0,{children:[E(O,{color:"success",children:[H.length===1?"Plugin":"Plugins"," updated:"," ",W]}),B(O,{dimColor:!0,children:" · Run /reload-plugins to apply"})]}),priority:"low",timeoutMs:1e4}),g(`Showing plugin autoupdate notification for: ${H.join(", ")}`)},V=[X,Z],Y[3]=Z,Y[4]=X,Y[5]=Q,Y[6]=V;else Q=Y[5],V=Y[6];O6.useEffect(Q,V)}function Pc(Y){let Z=Y.indexOf("@");return Z>0?Y.substring(0,Z):Y}BZ();wc();rZ();D6();Fj();_c();DZ();function bq(Y,Z,J,X){Y((z)=>({...z,plugins:{...z.plugins,installationStatus:{...z.plugins.installationStatus,marketplaces:z.plugins.installationStatus.marketplaces.map((G)=>G.name===Z?{...G,status:J,error:X}:G)}}}))}async function _j(Y){g("performBackgroundPluginInstallations called");try{let Z=Lj(),J=await Ez().catch(()=>({})),X=Pj(Z,J),z=[...X.missing,...X.sourceChanged.map((Q)=>Q.name)];if(Y((Q)=>({...Q,plugins:{...Q.plugins,installationStatus:{marketplaces:z.map((V)=>({name:V,status:"pending"})),plugins:[]}}})),z.length===0)return;g(`Installing ${z.length} marketplace(s) in background`);let G=await wj({onProgress:(Q)=>{switch(Q.type){case"installing":bq(Y,Q.name,"installing");break;case"installed":bq(Y,Q.name,"installed");break;case"failed":bq(Y,Q.name,"failed",Q.error);break}}}),K={installed_count:G.installed.length,updated_count:G.updated.length,failed_count:G.failed.length,up_to_date_count:G.upToDate.length};if(Z0("tengu_marketplace_background_install",K),Oj("info","tengu_marketplace_background_install",K),G.installed.length>0){L6(),g(`Auto-refreshing plugins after ${G.installed.length} new marketplace(s) installed`);try{await Ej(Y)}catch(Q){u0(Q),g(`Auto-refresh failed, falling back to needsRefresh: ${Q}`,{level:"warn"}),F6("performBackgroundPluginInstallations: auto-refresh failed"),Y((V)=>{if(V.plugins.needsRefresh)return V;return{...V,plugins:{...V.plugins,needsRefresh:!0}}})}}else if(G.updated.length>0)L6(),F6("performBackgroundPluginInstallations: marketplaces reconciled"),Y((Q)=>{if(Q.plugins.needsRefresh)return Q;return{...Q,plugins:{...Q.plugins,needsRefresh:!0}}})}catch(Z){u0(Z)}}bZ();BZ();D6();Fj();async function Mj(Y){if(g("performStartupChecks called"),!eV()){g("Trust not accepted for current directory - skipping plugin installations");return}try{if(g("Starting background plugin installations"),await Aj())L6(),F6("performStartupChecks: seed marketplaces changed"),Y((J)=>{if(J.plugins.needsRefresh)return J;return{...J,plugins:{...J.plugins,needsRefresh:!0}}});await _j(Y)}catch(Z){g(`Error initiating background plugin installations: ${Z}`)}}yu();N0();Ac();c();var Rj=x(v0(),1),X4=x(Q0(),1),Mc=/https?:\/\/\S+/;function jj(){let Y=Rj.c(11),Z;if(Y[0]===Symbol.for("react.memo_cache_sentinel"))Z=Iq.getInstance().getStatus(),Y[0]=Z;else Z=Y[0];let[J,X]=X4.useState(Z),z,G;if(Y[1]===Symbol.for("react.memo_cache_sentinel"))z=()=>{return Iq.getInstance().subscribe(X)},G=[],Y[1]=z,Y[2]=G;else z=Y[1],G=Y[2];if(X4.useEffect(z,G),!J.isAuthenticating&&!J.error&&J.output.length===0)return null;if(!J.isAuthenticating&&!J.error)return null;let K;if(Y[3]===Symbol.for("react.memo_cache_sentinel"))K=B(O,{bold:!0,color:"permission",children:"Cloud Authentication"}),Y[3]=K;else K=Y[3];let Q;if(Y[4]!==J.output)Q=J.output.length>0&&B(M,{flexDirection:"column",marginTop:1,children:J.output.slice(-5).map(Rc)}),Y[4]=J.output,Y[5]=Q;else Q=Y[5];let V;if(Y[6]!==J.error)V=J.error&&B(M,{marginTop:1,children:B(O,{color:"error",children:J.error})}),Y[6]=J.error,Y[7]=V;else V=Y[7];let H;if(Y[8]!==Q||Y[9]!==V)H=E(M,{flexDirection:"column",borderStyle:"round",borderColor:"permission",paddingX:1,marginY:1,children:[K,Q,V]}),Y[8]=Q,Y[9]=V,Y[10]=H;else H=Y[10];return H}function Rc(Y,Z){let J=Y.match(Mc);if(!J)return B(O,{dimColor:!0,children:Y},Z);let X=J[0],z=J.index??0,G=Y.slice(0,z),K=Y.slice(z+X.length);return E(O,{dimColor:!0,children:[G,B(X7,{url:X,children:X}),K]},Z)}dZ();N0();$P();TF();s9();t3();AZ();c();var Ij=x(v0(),1),Pz=x(Q0(),1);function Tj(Y){let Z=Ij.c(17),{addNotification:J}=JZ(),X=o5(),z;if(Z[0]!==X||Z[1]!==Y)z=kj(X,Y),Z[0]=X,Z[1]=Y,Z[2]=z;else z=Z[2];let G=z,K;if(Z[3]!==X)K=bj(X),Z[3]=X,Z[4]=K;else K=Z[4];let Q=K,V=Pz.useRef(null),H;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))H=n5(),Z[5]=H;else H=Z[5];let W=H,D;if(Z[6]===Symbol.for("react.memo_cache_sentinel"))D=yj(),Z[6]=D;else D=Z[6];let q=D,U=W==="team"||W==="enterprise",[N,L]=Pz.useState(!1),F,P;if(Z[7]!==J||Z[8]!==X.isUsingOverage||Z[9]!==N||Z[10]!==Q)F=()=>{if(UZ())return;if(X.isUsingOverage&&!N&&(!U||q))J({key:"limit-reached",text:Q,priority:"immediate"}),L(!0);else if(!X.isUsingOverage&&N)L(!1)},P=[X.isUsingOverage,Q,N,J,q,U],Z[7]=J,Z[8]=X.isUsingOverage,Z[9]=N,Z[10]=Q,Z[11]=F,Z[12]=P;else F=Z[11],P=Z[12];Pz.useEffect(F,P);let w,_;if(Z[13]!==J||Z[14]!==G)w=()=>{if(UZ())return;if(G&&G!==V.current)V.current=G,J({key:"rate-limit-warning",jsx:B(O,{children:B(O,{color:"warning",children:G})}),priority:"high"})},_=[G,J],Z[13]=J,Z[14]=G,Z[15]=w,Z[16]=_;else w=Z[15],_=Z[16];Pz.useEffect(w,_)}dZ();var Cj=x(v0(),1),z4=x(Q0(),1);AZ();function Sj(Y){let Z=Cj.c(4),{addNotification:J}=JZ(),X=z4.useRef(null),z,G;if(Z[0]!==J||Z[1]!==Y)z=()=>{if(UZ())return;let K=vj(Y);if(K&&K!==X.current)X.current=K,J({key:"model-deprecation-warning",text:K,color:"warning",priority:"high"});if(!K)X.current=null},G=[Y,J],Z[0]=J,Z[1]=Y,Z[2]=z,Z[3]=G;else z=Z[2],G=Z[3];z4.useEffect(z,G)}function $j(){}dZ();N0();bZ();bJ();AZ();var xj=x(v0(),1),wz=x(Q0(),1);c();var jc=5;function gj(Y){let Z=xj.c(26),{ideSelection:J,mcpClients:X,ideInstallationStatus:z}=Y,{addNotification:G,removeNotification:K}=JZ(),{status:Q,ideName:V}=S7(X),H=wz.useRef(!1),W;if(Z[0]!==z)W=z?fj(z?.ideType):!1,Z[0]=z,Z[1]=W;else W=Z[1];let D=W,q=z?.error||D,U=Q==="connected"&&(J?.filePath||J?.text&&J.lineCount>0),N=Q==="connected"&&!U,L=q&&!D&&!N&&!U,F=q&&D&&!N&&!U,P,w;if(Z[2]!==G||Z[3]!==Q||Z[4]!==K||Z[5]!==F)P=()=>{if(UZ())return;if(h1()||Q!==null||F){K("ide-status-hint");return}if(H.current||(l0().ideHintShownCount??0)>=jc)return;let k=setTimeout(yc,3000,H,G);return()=>clearTimeout(k)},w=[G,K,Q,F],Z[2]=G,Z[3]=Q,Z[4]=K,Z[5]=F,Z[6]=P,Z[7]=w;else P=Z[6],w=Z[7];wz.useEffect(P,w);let _,A;if(Z[8]!==G||Z[9]!==V||Z[10]!==Q||Z[11]!==K||Z[12]!==L||Z[13]!==F)_=()=>{if(UZ())return;if(L||F||Q!=="disconnected"||!V){K("ide-status-disconnected");return}G({key:"ide-status-disconnected",text:`${V} disconnected`,color:"error",priority:"medium"})},A=[G,K,Q,V,L,F],Z[8]=G,Z[9]=V,Z[10]=Q,Z[11]=K,Z[12]=L,Z[13]=F,Z[14]=_,Z[15]=A;else _=Z[14],A=Z[15];wz.useEffect(_,A);let j,y;if(Z[16]!==G||Z[17]!==K||Z[18]!==F)j=()=>{if(UZ())return;if(!F){K("ide-status-jetbrains-disconnected");return}G({key:"ide-status-jetbrains-disconnected",text:"IDE plugin not connected · /status for info",priority:"medium"})},y=[G,K,F],Z[16]=G,Z[17]=K,Z[18]=F,Z[19]=j,Z[20]=y;else j=Z[19],y=Z[20];wz.useEffect(j,y);let b,R;if(Z[21]!==G||Z[22]!==K||Z[23]!==L)b=()=>{if(UZ())return;if(!L){K("ide-status-install-error");return}G({key:"ide-status-install-error",text:"IDE extension install failed (see /status for info)",color:"error",priority:"medium"})},R=[G,K,L],Z[21]=G,Z[22]=K,Z[23]=L,Z[24]=b,Z[25]=R;else b=Z[24],R=Z[25];wz.useEffect(b,R)}function yc(Y,Z){hj(!0).then((J)=>{let X=J[0]?.name;if(X&&!Y.current)Y.current=!0,HZ(kc),Z({key:"ide-status-hint",jsx:E(O,{dimColor:!0,children:["/ide for ",B(O,{color:"ide",children:X})]}),priority:"low"})})}function kc(Y){return{...Y,ideHintShownCount:(Y.ideHintShownCount??0)+1}}bZ();var bc=[(Y)=>{if(!mj(Y.sonnet45To46MigrationTimestamp))return;return{key:"sonnet-46-update",text:"Model updated to Sonnet 4.6",color:"suggestion",priority:"high",timeoutMs:3000}},(Y)=>{let Z=Boolean(Y.legacyOpusMigrationTimestamp),J=Y.legacyOpusMigrationTimestamp??Y.opusProMigrationTimestamp;if(!mj(J))return;return{key:"opus-pro-update",text:Z?"Model updated to Opus 4.8 · Set CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP=1 to opt out":"Model updated to Opus 4.8",color:"suggestion",priority:"high",timeoutMs:Z?8000:3000}}];function cj(){E9(Ic)}function Ic(){let Y=l0(),Z=[];for(let J of bc){let X=J(Y);if(X)Z.push(X)}return Z.length>0?Z:null}function mj(Y){return Y!==void 0&&Date.now()-Y<3000}Tc();s9();N0();DZ();bZ();c();var vc=3;function pj(){E9(Cc)}async function Cc(){if((l0().subscriptionNoticeCount??0)>=vc)return null;let Y=await $c();if(Y===null)return null;return HZ(Sc),Z0("tengu_switch_to_subscription_notice_shown",{}),{key:"switch-to-subscription",jsx:E(O,{color:"suggestion",children:["Use your existing Claude ",Y," plan with Claude Code",E(O,{color:"text",dimColor:!0,children:[" ","· /login to activate"]})]}),priority:"low"}}function Sc(Y){return{...Y,subscriptionNoticeCount:(Y.subscriptionNoticeCount??0)+1}}async function $c(){if(QG())return null;let Y=await uj();if(!Y)return null;if(Y.account.has_claude_max)return"Max";if(Y.account.has_claude_pro)return"Pro";return null}AZ();dZ();YZ();eK();var E6=x(Q0(),1);function dj(Y){if(!("text"in Y))return 1;let Z=Y.text.match(/^(\d+)/);return Z?.[1]?parseInt(Z[1],10):1}function fc(Y,Z){return lj(dj(Y)+1)}function lj(Y){return{key:"teammate-spawn",text:Y===1?"1 agent spawned":`${Y} agents spawned`,priority:"low",timeoutMs:5000,fold:fc}}function hc(Y,Z){return rj(dj(Y)+1)}function rj(Y){return{key:"teammate-shutdown",text:Y===1?"1 agent shut down":`${Y} agents shut down`,priority:"low",timeoutMs:5000,fold:hc}}function ij(){let Y=t((z)=>z.tasks),{addNotification:Z}=JZ(),J=E6.useRef(new Set),X=E6.useRef(new Set);E6.useEffect(()=>{if(UZ())return;for(let[z,G]of Object.entries(Y)){if(!vX(G))continue;if(G.status==="running"&&!J.current.has(z))J.current.add(z),Z(lj(1));if(G.status==="completed"&&!X.current.has(z))X.current.add(z),Z(rj(1))}},[Y,Z])}dZ();YZ();Iw();vY();AZ();var Yy=x(v0(),1),G4=x(Q0(),1),aj="fast-mode-cooldown-started",nj="fast-mode-cooldown-expired",oj="fast-mode-org-changed",xc="fast-mode-overage-rejected";function Jy(){let Y=Yy.c(13),{addNotification:Z}=JZ(),J=t(cc),X=n0(),z,G;if(Y[0]!==Z||Y[1]!==J||Y[2]!==X)z=()=>{if(UZ())return;if(!TX())return;return Zy((W)=>{if(W)Z({key:oj,color:"fastMode",priority:"immediate",text:"Fast mode is now available · /fast to turn on"});else if(J)X(mc),Z({key:oj,color:"warning",priority:"immediate",text:"Fast mode has been disabled by your organization"})})},G=[Z,J,X],Y[0]=Z,Y[1]=J,Y[2]=X,Y[3]=z,Y[4]=G;else z=Y[3],G=Y[4];G4.useEffect(z,G);let K,Q;if(Y[5]!==Z||Y[6]!==X)K=()=>{if(UZ())return;if(!TX())return;return ej((W)=>{X(gc),Z({key:xc,color:"warning",priority:"immediate",text:W})})},Q=[Z,X],Y[5]=Z,Y[6]=X,Y[7]=K,Y[8]=Q;else K=Y[7],Q=Y[8];G4.useEffect(K,Q);let V,H;if(Y[9]!==Z||Y[10]!==J)V=()=>{if(UZ())return;if(!J)return;let W=sj((q,U)=>{let N=h7(q-Date.now(),{hideTrailingZeros:!0}),L=uc(U,N);Z({key:aj,invalidates:[nj],text:L,color:"warning",priority:"immediate"})}),D=tj(()=>{Z({key:nj,invalidates:[aj],color:"fastMode",text:"Fast limit reset · now using fast mode",priority:"immediate"})});return()=>{W(),D()}},H=[Z,J],Y[9]=Z,Y[10]=J,Y[11]=V,Y[12]=H;else V=Y[11],H=Y[12];G4.useEffect(V,H)}function gc(Y){return{...Y,fastMode:!1}}function mc(Y){return{...Y,fastMode:!1}}function cc(Y){return Y.fastMode}function uc(Y,Z){switch(Y){case"overloaded":return`Fast mode overloaded and is temporarily unavailable · resets in ${Z}`;case"rate_limit":return`Fast limit reached and temporarily disabled · resets in ${Z}`}}l8();N0();YY();c();var Xy=x(v0(),1),K4=x(Q0(),1);function zy(Y){let Z=Xy.c(8),{onRun:J,onCancel:X,reason:z}=Y,G=K4.useRef(!1),K;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))K={context:"Confirmation"},Z[0]=K;else K=Z[0];KZ("confirm:no",X,K);let Q,V;if(Z[1]!==J)Q=()=>{if(!G.current)G.current=!0,J()},V=[J],Z[1]=J,Z[2]=Q,Z[3]=V;else Q=Z[2],V=Z[3];K4.useEffect(Q,V);let H;if(Z[4]===Symbol.for("react.memo_cache_sentinel"))H=B(M,{children:B(O,{bold:!0,children:"Running feedback capture..."})}),Z[4]=H;else H=Z[4];let W;if(Z[5]===Symbol.for("react.memo_cache_sentinel"))W=B(M,{children:E(O,{dimColor:!0,children:["Press ",B(FZ,{shortcut:"Esc",action:"cancel"})," anytime"]})}),Z[5]=W;else W=Z[5];let D;if(Z[6]!==z)D=E(M,{flexDirection:"column",marginTop:1,children:[H,W,B(M,{children:E(O,{dimColor:!0,children:["Reason: ",z]})})]}),Z[6]=z,Z[7]=D;else D=Z[7];return D}function Gy(Y){return!1}function Ky(Y){return"/issue"}function Qy(Y){switch(Y){case"feedback_survey_bad":return'You responded "Bad" to the feedback survey';case"feedback_survey_good":return'You responded "Good" to the feedback survey';default:return"Unknown reason"}}function Vy(){return null}function Wy(Y,Z){return!1}r5();bZ();BY();KF();var pc=["I am observing.","I am helping from the corner.","I saw that.","Still here.","Watching closely."],dc=["happy chirp","tiny victory dance","quietly approves","wiggles with joy","looks pleased"];function lc(Y){let Z=2166136261;for(let J=0;J<Y.length;J++)Z^=Y.charCodeAt(J),Z=Math.imul(Z,16777619);return Z>>>0}function Hy(Y,Z){return Y[lc(Z)%Y.length]}async function By(Y,Z){let J=C7();if(!J||l0().companionMuted)return;let X=[...Y].reverse().find((Q)=>Q.type==="user");if(!X)return;let z=qy(X)?.trim();if(!z)return;let G=z.toLowerCase(),K=J.name.toLowerCase();if(G.includes("/buddy")){Z(Hy(dc,z+J.name));return}if(G.includes(K)||G.includes("buddy")||G.includes("companion"))Z(`${J.name}: ${Hy(pc,z+J.personality)}`)}s8();kD();N0();xK();var My=x(Q0(),1);Ny();import ac from"os";Ny();D2();rc();ic();_X();EM();o3();var Dy="—",P6="\x1B[",_z=`${P6}0m`,Q4=`${P6}2m`,nc=`${P6}1m`,oc=`${P6}33m`,sc=(Y,Z,J)=>`${P6}38;2;${Y};${Z};${J}m`,tc=[243,145,175],V4=[225,95,140],ec=[170,65,110],vq=[" ","▐▛███▜▌","▐█████▌"," ▘▘ ▝▝ "],Zu=[tc,V4,V4,V4,ec],CO0=vq[0].length;function Yu(Y){let Z=kV();if(!Z)return{name:"Not configured",model:Y?NG(Y):Dy,baseUrl:Dy,isLocal:!1};let{transport:J,baseUrl:X}=Z,z=Y||Z.model,G=Tq(X),K=Z.extras?.reasoningEffort;switch(J){case"gemini":case"mistral":case"github_copilot":return{name:Z.name,model:z,baseUrl:X,isLocal:!1,effort:K};case"bedrock":case"vertex":case"foundry":return{name:Z.name,model:NG(z),baseUrl:X,isLocal:!1,effort:K};case"anthropic":{let Q=NG(z),V=Oy(Q)?Fy(Q,Ly()):void 0;return{name:Z.name??"Anthropic",model:Q,baseUrl:X,isLocal:G,effort:V}}case"codex_responses":case"openai_compat":default:{let Q=Uy({model:z,baseUrl:X}),V=Q.baseUrl,H=Tq(V),W=Z.name;if(/api\.openai\.com/i.test(V))W="OpenAI";else if(/openrouter/i.test(V))W="OpenRouter";else if(/together/i.test(V))W="Together AI";else if(/groq/i.test(V))W="Groq";else if(/azure/i.test(V))W="Azure OpenAI";else if(/nvidia/i.test(V))W="NVIDIA NIM";else if(/minimax/i.test(V))W="MiniMax";else if(/api\.kimi\.com/i.test(V))W="Moonshot AI - Kimi Code";else if(/moonshot/i.test(V))W="Moonshot AI - API";else if(/deepseek/i.test(V))W="DeepSeek";else if(/mistral/i.test(V))W="Mistral";else if(/nvidia/i.test(z))W="NVIDIA NIM";else if(/minimax/i.test(z))W="MiniMax";else if(/\bkimi-for-coding\b/i.test(z))W="Moonshot AI - Kimi Code";else if(/\bkimi-k/i.test(z)||/moonshot/i.test(z))W="Moonshot AI - API";else if(/deepseek/i.test(z))W="DeepSeek";else if(/mistral/i.test(z))W="Mistral";else if(/llama/i.test(z))W="Meta Llama";else if(/bankr/i.test(V))W="Bankr";else if(/bankr/i.test(z))W="Bankr";else if(H)W=Ey(V);let D=Q.reasoning?.effort??Z.extras?.reasoningEffort;return{name:W,model:Q.resolvedModel,baseUrl:V,isLocal:H,effort:D}}}}function Ju(){let Y=process.cwd(),Z=ac.homedir();if(Y===Z)return"~";if(Y.startsWith(Z+"/"))return"~"+Y.slice(Z.length);return Y}function Xu(Y,Z){return`${sc(...Z)}${Y}${_z}`}var Py=80;function wy(Y,Z){let J=Yu(Y),X=[],z="0.5.7",G=`${Q4}·${_z}`,K=`${nc}Claudin${_z} ${Q4}v0.5.7${_z}`,Q=J.effort?`${J.name} ${G} ${J.model} ${G} ${u1(J.effort)} ${J.effort}`:`${J.name} ${G} ${J.model}`,V=`${Q4}${Ju()}${_z}`,H=[void 0,K,Q,V],W=" ";for(let D=0;D<vq.length;D++){let q=Xu(vq[D],Zu[D]??V4),U=H[D];X.push(U?`${q} ${U}`:q)}if(Z)X.push(`${oc}▲ New version ${Z.latest} available${_z} ${Q4}— run: claudin update${_z}`);return X}c();function zu(){let Y=Sq();if(!Y)return;let Z="0.5.7";if(!Z)return;if(Y.current!==Z)return;try{if(!Cq(Y.latest,Z))return}catch{return}return{latest:Y.latest}}function Ry({modelOverride:Y}){let Z=RX(),J=My.useMemo(()=>{let X=Y??Ay("--model")??Z;return wy(X,zu())},[Y,Z]);return B(M,{flexDirection:"column",flexShrink:0,children:B(_y,{lines:J,width:Py})})}x8();Mu();DD();ku();c();var nu=()=>({state:"closed",handleTranscriptSelect:()=>{}}),ou=()=>{},su=(dQ(),pJ(pQ)).getCoordinatorUserContext,Sy=null,tu=(Y)=>()=>{},eu=()=>!1,Zp=(Y,Z)=>!1;var Yp=(Cy(),pJ(vy)).useScheduledTasks;var $y=[],Jp={maybeLoadOlder:(Y)=>{}},Xp=3000;function wP0({commands:Y,debug:Z,initialTools:J,initialMessages:X,pendingHookMessages:z,initialFileHistorySnapshots:G,initialContentReplacements:K,initialAgentName:Q,initialAgentColor:V,mcpClients:H,dynamicMcpConfig:W,autoConnectIdeFlag:D,strictMcpConfig:q=!1,systemPrompt:U,appendSystemPrompt:N,onBeforeQuery:L,onTurnComplete:F,disabled:P=!1,mainThreadAgentDefinition:w,disableSlashCommands:_=!1,taskListId:A,remoteSessionConfig:j,directConnectConfig:y,sshSession:b,thinkingConfig:R}){let k=!!j,f=r.useRef(()=>{});fV(()=>{f.current()});let $=r.useMemo(()=>nZ(process.env.CLAUDE_CODE_DISABLE_TERMINAL_TITLE),[]),v=r.useMemo(()=>!1,[]),T=r.useMemo(()=>nZ(process.env.CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL),[]),h=r.useMemo(()=>nZ(process.env.CLAUDE_CODE_DISABLE_MESSAGE_ACTIONS),[]),[u,C]=r.useState(w),a=t((S)=>S.toolPermissionContext),o=t((S)=>S.verbose),Y0=t((S)=>S.mcp),d=t((S)=>S.agentDefinitions),p=t((S)=>S.fileHistory),K0=t((S)=>S.initialMessage),G0=BX(),J0=t((S)=>S.spinnerTip),P0=t((S)=>S.expandedView)==="tasks",M0=t((S)=>S.pendingWorkerRequest),I0=t((S)=>S.pendingSandboxRequest),q0=t((S)=>S.teamContext),X0=t((S)=>S.tasks),H0=t((S)=>S.workerSandboxPermissions),j0=t((S)=>S.elicitation),V0=t((S)=>S.ultraplanPendingChoice),l=t((S)=>S.ultraplanLaunchPending),L0=t((S)=>S.viewingAgentTaskId),F0=n0(),$0=L0?X0[L0]:void 0,LZ=j6($0)&&$0.retain&&!$0.diskLoaded;r.useEffect(()=>{if(!L0||!LZ)return;let S=L0;Ob(ry(S)).then((i)=>{F0((s)=>{let O0=s.tasks[S];if(!j6(O0)||O0.diskLoaded||!O0.retain)return s;let k0=O0.messages??[],c0=new Set(k0.map((p0)=>p0.uuid)),T0=i?i.messages.filter((p0)=>!c0.has(p0.uuid)):[];return{...s,tasks:{...s.tasks,[S]:{...O0,messages:[...T0,...k0],diskLoaded:!0}}}})})},[L0,LZ,F0]);let n=pZ(),W0=G7(),B0=RX(),[w0,S0]=r.useState(Y);hA(k?void 0:fy(),S0);let b0=TZ.useSyncExternalStore(Sy?.subscribeToProactiveChanges??tu,Sy?.isProactiveActive??eu),U0=t((S)=>S.isBriefOnly),m=r.useMemo(()=>Yb(a),[a,b0,U0]);OR(),LR();let[D0,z0]=r.useState(W),C0=r.useCallback((S)=>{z0(S)},[z0]),[h0,wZ]=r.useState("prompt"),[y0,o0]=r.useState(!1),[g0,x0]=r.useState(!1),[f0,t0]=r.useState(""),m0=r.useRef(0),VZ=r.useRef(void 0),yZ=r.useRef(!1),{addNotification:NZ,removeNotification:hZ}=JZ(),oZ=Zp,cZ=TA(H,Y0.clients),[KJ,A8]=r.useState(void 0),[M8,Az]=r.useState(null),[Mz,PG]=r.useState(null),[L4,lY]=r.useState(!1),[y6,wG]=r.useState(()=>!1),[P9,k6]=r.useState(()=>wM(B0)),b6=t((S)=>S.showRemoteCallout),[F4,I6]=r.useState(()=>_b());cj(),pj(),gj({ideSelection:KJ,mcpClients:cZ,ideInstallationStatus:Mz}),RR({mcpClients:cZ}),yR(),Bj(),Nj(),Kb(),Tj(B0),Jy(),Sj(B0),$j(),ou(),uM(),zR(),vR(),ij();let{recommendation:Rz,handleResponse:_G}=tR(),{recommendation:sJ,handleResponse:jz}=Vj(),$J=r.useMemo(()=>{return[...m,...J]},[m,J]),tq=wb({enabled:!k}),tJ=ek();S_(F0,X,{enabled:!k});let AG=qb($J,Y0.tools,a),{tools:yz,allowedAgentTypes:MG}=r.useMemo(()=>{if(!u)return{tools:AG,allowedAgentTypes:void 0};let S=rq(u,AG,!1,!0);return{tools:S.resolvedTools,allowedAgentTypes:S.allowedAgentTypes}},[u,AG]),T6=v1(w0,tq),RG=v1(T6,Y0.commands),kz=v1(w0,Y0.commands),PJ=r.useMemo(()=>_?[]:RG,[_,RG]),bz=r.useMemo(()=>_?[]:kz,[_,kz]);uU(k?$y:Y0.clients),cA(k?$y:Y0.clients,A8);let[R8,w9]=r.useState("responding"),$X=r.useRef(R8);$X.current=R8;let[fX,eJ]=r.useState([]),[hX,_9]=r.useState(null);r.useEffect(()=>{if(hX&&!hX.isStreaming&&hX.streamingEndedAt){let i=30000-(Date.now()-hX.streamingEndedAt);if(i>0){let s=setTimeout(_9,i,null);return()=>clearTimeout(s)}else _9(null)}},[hX]);let[fJ,$Y]=r.useState(null),A9=r.useRef(null);A9.current=fJ;let ZX=r.useRef(()=>{}),M9=r.useRef(()=>{}),rY=r.useRef(null),Iz=r.useRef(null),fY=r.useRef(0),_Y=TZ.useRef(new AW).current,jG=TZ.useSyncExternalStore(_Y.subscribe,_Y.getSnapshot),[Tz,eq]=TZ.useState(j?.hasInitialPrompt??!1),OZ=jG||Tz,[R9,xX]=TZ.useState(void 0),hJ=TZ.useRef(0),XY=TZ.useRef(!1),YX=TZ.useRef(0),vz=TZ.useRef(0),j8=TZ.useRef(null),j9=TZ.useCallback(()=>{YX.current=Date.now(),vz.current=0,j8.current=null},[]),v6=TZ.useRef(!1);if(jG&&!v6.current)j9();v6.current=jG;let yY=TZ.useCallback((S)=>{if(eq(S),S)j9()},[j9]),JX=TZ.useRef(null),Cz=TZ.useRef(void 0),yG=TZ.useRef(void 0),Sz=1500,[kG,bG]=TZ.useState(!1),E4=null,sZ=TZ.useCallback(()=>{},[]);r.useEffect(()=>{if(_Z())sy().then((S)=>{if(S)NZ({key:"tmux-mouse-hint",text:S,priority:"low"})})},[]);let[kZ,P4]=r.useState(null);r.useEffect(()=>kk(P4),[]);let xJ=r.useCallback((S)=>{if(S==null){R6({type:"set_null"});return}if(S.clearLocalJSX){R6({type:"clear_local_jsx"});return}let{clearLocalJSX:i,generation:s,...O0}=S;if(S.isLocalJSXCommand){R6({type:"set_local_jsx",payload:O0,generation:s??Number.MAX_SAFE_INTEGER});return}R6({type:"set_regular",payload:O0})},[]),[iY,kY]=r.useState([]),[C6,S6]=r.useState(null),[y9,$z]=r.useState([]),[gX,fz]=r.useState([]),$6=r.useRef(new Map),IG=t((S)=>S.settings.terminalTitleFromRename)!==!1?a9(sY()):void 0,[w4,xZ]=r.useState(),bY=r.useRef((X?.length??0)>0),TG=u?.agentType,y8=IG??TG??w4??"Claudin",vG=iY.length>0||gX.length>0||M0||I0,aY=kZ?.isLocalJSXCommand===!0&&kZ?.jsx!=null,xz=OZ&&!vG&&!aY,{sessionStatus:CG,waitingFor:gz}=QU({isLoading:OZ,isWaitingForApproval:vG,isShowingLocalJSXCommand:aY,toolUseConfirmQueue:iY,pendingWorkerRequest:M0,pendingSandboxRequest:I0}),k8=YJ("tengu_terminal_sidebar",!1)&&(l0().showStatusInTerminalTab??!1);ey($||!k8?null:CG),r.useEffect(()=>{return Ik(kY),()=>Tk()},[kY]);let[zZ,_4]=r.useState(()=>{if(!X)return[];let S=xq(X,K);return S?LK(X,S.replacements):X}),vZ=r.useRef(zZ),b8=r.useRef(!1),e0=r.useCallback((S)=>{let i=vZ.current,s=typeof S==="function"?S(vZ.current):S;if(vZ.current=s,s.length<hJ.current)hJ.current=0;else if(s.length>i.length&&XY.current){let O0=s.length-i.length;if((i.length===0||s[0]===i[0]?s.slice(-O0):s.slice(0,O0)).some(uq))XY.current=!1;else hJ.current=s.length}_4(s)},[]),I8=r.useCallback((S)=>{if(S!==void 0)hJ.current=vZ.current.length,XY.current=!0;else XY.current=!1;xX(S)},[]),f6=r.useCallback((S)=>{if(S.size===0)return;e0((i)=>LK(i,S))},[e0]),{dividerIndex:mX,dividerYRef:A4,onScrollAway:h6,onRepin:gJ,jumpToNew:cX,shiftDivider:YB}=Vb(zZ.length);nM(zZ,e0,OZ);let[T8,k9]=r.useState(null),x6=r.useRef(null),M4=r.useMemo(()=>Wb(zZ,mX),[mX,zZ.length]),wJ=r.useCallback(()=>{rY.current?.scrollToBottom(),gJ(),k9(null)},[gJ,k9]),SG=zZ.at(-1),g6=SG!=null&&uq(SG);r.useEffect(()=>{if(g6)wJ()},[g6,SG,wJ]);let{maybeLoadOlder:$G}=Jp,b9=r.useCallback((S,i)=>{if(fY.current=Date.now(),S)gJ();else if(h6(i),DY())F0((s)=>s.companionReaction===void 0?s:{...s,companionReaction:void 0})},[gJ,h6,$G,F0]),fG=P_(z,e0),XX=r.useDeferredValue(zZ),R4=zZ.length-XX.length;if(R4>0)g(`[useDeferredValue] Messages deferred by ${R4} (${XX.length}→${zZ.length})`);let[I9,hG]=r.useState(null),[NY,m6]=r.useState(()=>oy()),uX=r.useRef(NY);uX.current=NY;let c6=HR(kG,NY),j4=r.useRef(null),CZ=r.useCallback((S)=>{if(oZ(uX.current,S))return;if(uX.current===""&&S!==""&&Date.now()-fY.current>=Xp)wJ();uX.current=S,m6(S),bG(S.trim().length>0)},[bG,wJ,oZ]);r.useEffect(()=>{if(NY.trim().length===0)return;let S=setTimeout(bG,Sz,!1);return()=>clearTimeout(S)},[NY]);let[zX,GX]=r.useState("prompt"),[AY,pX]=r.useState(),y4=r.useCallback((S)=>{let i=new Set(S);S0((s)=>s.filter((O0)=>i.has(O0.name)||Db.has(O0)))},[S0]),[v8,KX]=r.useState(new Set),mz=r.useRef(!1),xG=B_({config:j,setMessages:e0,setIsLoading:yY,onInit:y4,setToolUseConfirmQueue:kY,tools:$J,setStreamingToolUses:eJ,setStreamMode:w9,setInProgressToolUseIDs:KX}),u6=D_({config:y,setMessages:e0,setIsLoading:yY,setToolUseConfirmQueue:kY,tools:$J}),p6=U_({session:b,setMessages:e0,setIsLoading:yY,setToolUseConfirmQueue:kY,tools:$J}),dX=p6.isRemoteMode?p6:u6.isRemoteMode?u6:xG,[QX,QJ]=r.useState({}),[mJ,C8]=r.useState(0),T9=TZ.useRef(!1),cz=(mJ??0)>0;r.useEffect(()=>{if(k)return;if(T9.current)return;if(!qR({isRemoteSession:k,hasStarted:T9.current,hasHadFirstSubmission:cz}))return;T9.current=!0,Mj(F0)},[F0,k,cz]);let _J=r.useRef(0),S8=r.useRef([]),gG=r.useCallback((S)=>{let i=_J.current;if(_J.current=S(i),_J.current>i){let s=S8.current;if(s.length>0){let O0=s.at(-1);O0.lastTokenTime=Date.now(),O0.endResponseLength=_J.current}}},[]),[uz,pz]=r.useState(null),v9=!(t((S)=>S.settings.prefersReducedMotion)??!1)&&!ty(),mG=r.useCallback((S)=>{if(!v9)return;pz(S)},[v9]),cG=uz&&v9?uz:null,[AJ,d6]=r.useState(0),[l6,C9]=r.useState(null),[r6,dz]=r.useState(null),[i6,hY]=r.useState(null),[lz,rz]=r.useState(!1),[a6,I]=r.useState(void 0),[e,_0]=r.useState(!1),[r0,s0]=r.useState(w6()),[EZ,zY]=r.useState(null),OY=r.useRef(!1),IY=r.useRef(AJ);IY.current=AJ;let[xY]=r.useState(()=>({current:xq(X,K)})),[cJ,JB]=r.useState(l0().hasAcknowledgedCostThreshold),[XB,Mb]=r.useState("INSERT"),[uG,b4]=r.useState(!1),[zB,Rb]=r.useState(!1),[GB,jb]=r.useState(!1);r.useEffect(()=>{if(V0&&uG)b4(!1)},[V0,uG]);let KB=qX(),yb=r.useRef(KB);yb.current=KB;let[pG]=SZ(),I4=TZ.useRef(!1),QB=r.useCallback(()=>{if(I4.current)return;I4.current=!0;let S=vZ.current.slice(s6.current);for(let i of iq(S))rG.current.add(i);s6.current=vZ.current.length,VR({theme:pG,readFileState:$8.current,bashTools:rG.current}).then(async(i)=>{if(i){let s=await i.content({theme:pG});F0((O0)=>({...O0,spinnerTip:s})),WR(i)}else F0((s)=>{if(s.spinnerTip===void 0)return s;return{...s,spinnerTip:void 0}})})},[F0,pG]),lX=r.useCallback(()=>{yY(!1),I8(void 0),_J.current=0,S8.current=[],pz(null),eJ([]),C9(null),dz(null),hY(null),QB(),gk(),bk()},[QB]),n6=r.useMemo(()=>lq(X0).some((S)=>S.status==="running"),[X0]);r.useEffect(()=>{if(!n6&&JX.current!==null){let S=Date.now()-JX.current,i=Cz.current;JX.current=null,Cz.current=void 0,e0((s)=>[...s,nq(S,i,jJ(s,oq))])}},[n6,e0]);let T4=r.useRef(!1);r.useEffect(()=>{{if(a.mode!=="auto"){T4.current=!1;return}if(T4.current)return;if((l0().autoPermissionsNotificationCount??0)>=3)return;let s=setTimeout((O0,k0)=>{O0.current=!0,HZ((c0)=>{let T0=c0.autoPermissionsNotificationCount??0;if(T0>=3)return c0;return{...c0,autoPermissionsNotificationCount:T0+1}}),k0((c0)=>[...c0,z8(Eb,"warning")])},800,T4,e0);return()=>clearTimeout(s)}},[a.mode,e0]);let VB=r.useRef(!1);r.useEffect(()=>{if(VB.current)return;let S=n8();if(!S?.creationDurationMs||S.usedSparsePaths)return;if(S.creationDurationMs<15000)return;VB.current=!0;let i=Math.round(S.creationDurationMs/1000);e0((s)=>[...s,z8(`Worktree creation took ${i}s. For large repos, set \`worktree.sparsePaths\` in .claudin/settings.json to check out only the directories you need — e.g. \`{"worktree": {"sparsePaths": ["src", "packages/foo"]}}\`.`,"info")])},[e0]);let kb=r.useMemo(()=>{let S=zZ.findLast((s)=>s.type==="assistant");if(S?.type!=="assistant")return!1;let i=S.message.content.filter((s)=>s.type==="tool_use"&&v8.has(s.id));return i.length>0&&i.every((s)=>s.type==="tool_use"&&s.name===xk)},[zZ,v8]),{onBeforeQuery:WB,onTurnComplete:v4,render:bb}=N_({enabled:v,setMessages:e0,inputValue:NY,setInputValue:CZ,setToolJSX:xJ}),HB=(!kZ||kZ.showSpinner===!0)&&iY.length===0&&gX.length===0&&(OZ||R9||n6||mq()>0)&&!M0&&!kb&&(!cG||U0),o6=iY.length>0||gX.length>0||y9.length>0||j0.queue.length>0||H0.queue.length>0,C4=kM(zZ,OZ,mJ,"session",o6),Ib=Wy(zZ,mJ),dG=r.useMemo(()=>({...C4,handleSelect:(S)=>{g4.current=!1;let i=C4.handleSelect(S);if(S==="bad"&&!i&&Gy("feedback_survey_bad"))x4("feedback_survey_bad"),g4.current=!0}}),[C4]),lG=$M(zZ,OZ,o6,{enabled:!k}),iz=vM(zZ,OZ,o6,{enabled:!k}),S4=nu(zZ,OZ,o6,dG.state!=="closed"||lG.state!=="closed"||iz.state!=="closed");QM({autoConnectIdeFlag:D,ideToInstallExtension:M8,setDynamicMcpConfig:z0,setShowIdeOnboarding:lY,setIDEInstallationState:PG}),ER(G,p,(S)=>F0((i)=>({...i,fileHistory:S})));let qB=r.useCallback(async(S,i,s)=>{await SU(S,i,s,{setAppState:F0,store:n,mainThreadAgentDefinition:u,initialMainThreadAgentDefinition:w,agentDefinitions:d,setMainThreadAgentDefinition:C,mainLoopModel:B0,restoreReadFileState:BB,resetLoadingState:lX,setAbortController:$Y,setConversationId:s0,haikuTitleAttemptedRef:bY,setHaikuTitle:xZ,contentReplacementStateRef:xY,setMessages:e0,setToolJSX:xJ,setInputValue:CZ})},[lX,F0]),[Tb]=r.useState(()=>Jk(gq)),$8=r.useRef(Tb),rG=r.useRef(new Set),s6=r.useRef(0),$4=r.useRef(new Set),f4=r.useRef(new Set),BB=r.useCallback((S,i)=>{let s=pk(S,i,gq);$8.current=Xk($8.current,s);for(let O0 of iq(S))rG.current.add(O0)},[]);r.useEffect(()=>{if(X&&X.length>0)BB(X,QY()),aQ({abortController:new AbortController,getAppState:()=>n.getState(),setAppState:F0})},[]);let{status:vb,reverify:h4}=R_(),[iG,x4]=r.useState(null),g4=r.useRef(!1),{exitFlow:DB,isExiting:UB,handleExit:NB}=YU(),OB=!OZ&&e,tZ=tD({isExiting:UB,exitFlow:DB,isMessageSelectorVisible:lz,promptTypingSuppressionActive:c6,sandboxPermissionRequestQueue:y9,toolJSX:kZ,toolUseConfirmQueue:iY,promptQueue:gX,workerSandboxPermissions:H0,elicitation:j0,showingCostDialog:OB,idleReturnPending:EZ,ultraplanPendingChoice:V0,ultraplanLaunchPending:l,isLoading:OZ,showIdeOnboarding:L4,showEffortCallout:P9,showRemoteCallout:b6,lspRecommendation:Rz,hintRecommendation:sJ,showDesktopUpsellStartup:F4,startupChecksStarted:T9.current}),t6=c6&&(y9[0]||iY[0]||gX[0]||H0.queue[0]||j0.queue[0]||OB);yG.current=tZ,r.useEffect(()=>{if(!OZ)return;let S=tZ==="tool-permission",i=Date.now();if(S&&j8.current===null)j8.current=i;else if(!S&&j8.current!==null)vz.current+=i-j8.current,j8.current=null},[tZ,OZ]);let LB=r.useRef(tZ);r.useLayoutEffect(()=>{if(LB.current==="tool-permission"!==(tZ==="tool-permission"))wJ();LB.current=tZ},[tZ,wJ]);let FB=r.useRef(!!tZ||!!t6);r.useLayoutEffect(()=>{let S=!!tZ||!!t6;if(S!==FB.current)aX.get(process.stdout)?.invalidatePrevFrame(),FB.current=S},[tZ,t6]);function m4(){if(tZ==="elicitation")return;if(g(`[onCancel] focusedInputDialog=${tZ} streamMode=${R8}`),_Y.forceEnd(),OY.current=!1,uz?.trim())e0((S)=>[...S,f1({content:uz})]);if(lX(),q4(null),tZ==="tool-permission")iY[0]?.onAbort(),kY([]);else if(tZ==="prompt"){for(let S of gX)S.reject(Error("Prompt cancelled by user"));fz([]),fJ?.abort("user-cancel")}else if(dX.isRemoteMode)dX.cancelRequest();else fJ?.abort("user-cancel");$Y(null),v4(vZ.current,!0)}let EB=r.useCallback(()=>{let S=q1(NY,0);if(!S)return;if(CZ(S.text),GX("prompt"),S.images.length>0)QJ((i)=>{let s={...i};for(let O0 of S.images)s[O0.id]=O0;return s})},[CZ,GX,NY,QJ]),PB={setToolUseConfirmQueue:kY,onCancel:m4,onAgentsKilled:()=>e0((S)=>[...S,Ub()]),isMessageSelectorVisible:lz||!!uG,screen:h0,abortSignal:fJ?.signal,popCommandFromQueue:EB,vimMode:XB,isLocalJSXCommand:kZ?.isLocalJSXCommand,isSearchingHistory:zB,isHelpOpen:GB,inputMode:zX,inputValue:NY,streamMode:R8};r.useEffect(()=>{if(u7()>=5&&!e&&!cJ){if(Z0("tengu_cost_threshold_reached",{}),JB(!0),L1())_0(!0)}},[zZ,e,cJ]);let Cb=r.useCallback(async(S)=>{if($Z()&&M1()){let i=Sk(),s=await $k(S.host,i);return new Promise((O0)=>{if(!s){$z((k0)=>[...k0,{hostPattern:S,resolvePromise:O0}]);return}Rk({requestId:i,host:S.host,resolve:O0}),F0((k0)=>({...k0,pendingSandboxRequest:{requestId:i,host:S.host}}))})}return new Promise((i)=>{let s=!1;function O0(k0){if(s)return;s=!0,i(k0)}$z((k0)=>[...k0,{hostPattern:S,resolvePromise:O0}])})},[F0,n]);if(r.useEffect(()=>{let S=eZ.getSandboxUnavailableReason();if(!S)return;if(eZ.isSandboxRequired()){process.stderr.write(`
|
|
122
|
+
Error: sandbox required but unavailable: ${S}
|
|
123
|
+
`+` sandbox.failIfUnavailable is set — refusing to start without a working sandbox.
|
|
124
|
+
|
|
125
|
+
`),Y6(1,"other");return}g(`sandbox disabled: ${S}`,{level:"warn"}),NZ({key:"sandbox-unavailable",jsx:E(A0,{children:[B(O,{color:"warning",children:"sandbox disabled"}),B(O,{dimColor:!0,children:" · /sandbox"})]}),priority:"medium"})},[NZ]),eZ.isSandboxingEnabled())eZ.initialize(Cb).catch((S)=>{process.stderr.write(`
|
|
126
|
+
❌ Sandbox Error: ${lJ(S)}
|
|
127
|
+
`),Y6(1,"other")});let e6=r.useCallback((S,i)=>{F0((s)=>({...s,toolPermissionContext:{...S,mode:i?.preserveMode?s.toolPermissionContext.mode:S.mode}})),setImmediate((s)=>{s((O0)=>{return O0.forEach((k0)=>{k0.recheckPermission()}),O0})},kY)},[F0,kY]);r.useEffect(()=>{return vk(e6),()=>Ck()},[e6]);let VX=BA(kY,e6),wB=r.useCallback((S,i)=>(s)=>new Promise((O0,k0)=>{fz((c0)=>[...c0,{request:s,title:S,toolInputSummary:i,resolve:O0,reject:k0}])}),[]),nY=r.useCallback((S,i,s,O0)=>{let k0=n.getState(),c0=()=>{let T0=n.getState(),p0=Jb(T0.toolPermissionContext,T0.mcp.tools),i0=Hb($J,p0,T0.toolPermissionContext.mode);if(!u)return i0;return rq(u,i0,!1,!0).resolvedTools};return{abortController:s,options:{commands:PJ,tools:c0(),debug:Z,verbose:k0.verbose,mainLoopModel:O0,thinkingConfig:k0.thinkingEnabled!==!1?R:{type:"disabled"},mcpClients:T1(H,k0.mcp.clients),mcpResources:k0.mcp.resources,ideInstallationStatus:Mz,isNonInteractiveSession:!1,dynamicMcpConfig:D0,theme:pG,agentDefinitions:MG?{...k0.agentDefinitions,allowedAgentTypes:MG}:k0.agentDefinitions,customSystemPrompt:U,appendSystemPrompt:N,refreshTools:c0},getAppState:()=>n.getState(),setAppState:F0,messages:S,setMessages:e0,updateFileHistoryState(T0){F0((p0)=>{let i0=T0(p0.fileHistory);if(i0===p0.fileHistory)return p0;return{...p0,fileHistory:i0}})},updateAttributionState(T0){F0((p0)=>{let i0=T0(p0.attribution);if(i0===p0.attribution)return p0;return{...p0,attribution:i0}})},openMessageSelector:()=>{if(!P)rz(!0)},onChangeAPIKey:h4,readFileState:$8.current,setToolJSX:xJ,addNotification:NZ,appendSystemMessage:(T0)=>e0((p0)=>[...p0,T0]),sendOSNotification:(T0)=>{p8(T0,W0)},onChangeDynamicMcpConfig:C0,onInstallIDEExtension:Az,nestedMemoryAttachmentTriggers:new Set,loadedNestedMemoryPaths:f4.current,dynamicSkillDirTriggers:new Set,discoveredSkillNames:$4.current,setResponseLength:gG,pushApiMetricsEntry:void 0,setStreamMode:w9,onCompactProgress:(T0)=>{switch(T0.type){case"hooks_start":dz("claudeBlue_FOR_SYSTEM_SPINNER"),hY("claudeBlueShimmer_FOR_SYSTEM_SPINNER"),C9(T0.hookType==="pre_compact"?"Running PreCompact hooks…":T0.hookType==="post_compact"?"Running PostCompact hooks…":"Running SessionStart hooks…");break;case"compact_start":C9("Compacting conversation");break;case"compact_end":C9(null),dz(null),hY(null);break}},setInProgressToolUseIDs:KX,setHasInterruptibleToolInProgress:(T0)=>{mz.current=T0},resume:qB,setConversationId:s0,requestPrompt:wB,contentReplacementState:xY.current,syncToolResultReplacements:f6}},[PJ,$J,u,Z,H,Mz,D0,pG,MG,n,F0,h4,NZ,e0,C0,qB,wB,P,U,N,s0,f6]),Sb=r.useCallback(()=>{fJ?.abort("background");let S=Ok((i)=>i.mode==="task-notification");(async()=>{let i=nY(vZ.current,[],new AbortController,B0),[s,O0,k0]=await Promise.all([N4(i.options.tools,B0,Array.from(a.additionalWorkingDirectories.keys()),i.options.mcpClients),D4(),B4()]),c0=U4({mainThreadAgentDefinition:u,toolUseContext:i,customSystemPrompt:U,defaultSystemPrompt:s,appendSystemPrompt:N});i.renderedSystemPrompt=c0;let p0=(await fk(S).catch(()=>[])).map(Pk),i0=new Set;for(let ZZ of vZ.current)if(ZZ.type==="attachment"&&ZZ.attachment.type==="queued_command"&&ZZ.attachment.commandMode==="task-notification"&&typeof ZZ.attachment.prompt==="string")i0.add(ZZ.attachment.prompt);let a0=p0.filter((ZZ)=>ZZ.attachment.type==="queued_command"&&(typeof ZZ.attachment.prompt!=="string"||!i0.has(ZZ.attachment.prompt)));Lk({messages:[...vZ.current,...a0],queryParams:{systemPrompt:c0,userContext:O0,systemContext:k0,canUseTool:VX,toolUseContext:i,querySource:M6()},description:y8,setAppState:F0,agentDefinition:u})})()},[fJ,B0,a,u,nY,U,N,VX,F0]),{handleBackgroundSession:$b}=BM({setMessages:e0,setIsLoading:yY,resetLoadingState:lX,setAbortController:$Y,onBackgroundQuery:Sb}),_B=r.useCallback((S)=>{D1(S,(i)=>{if(W6(i)){if(_Z())e0((s)=>[...gK(s,{includeSnipped:!0}),i]);else e0(()=>[i]);s0(w6())}else if(i.type==="progress"&&ly(i.data.type))e0((s)=>{let O0=s.at(-1);if(O0?.type==="progress"&&O0.parentToolUseID===i.parentToolUseID&&O0.data.type===i.data.type){let k0=s.slice();return k0[k0.length-1]=i,k0}return[...s,i]});else{let s=Qk(i,vZ.current);e0((O0)=>[...O0,s])}},(i)=>{gG((s)=>s+i.length)},w9,eJ,(i)=>{e0((s)=>s.filter((O0)=>O0!==i)),Nb(i.uuid)},_9,(i)=>{let s=Date.now(),O0=_J.current;S8.current.push({...i,firstTokenTime:s,lastTokenTime:s,responseLengthBaseline:O0,endResponseLength:O0})},mG)},[e0,gG,w9,eJ,_9,mG]),AB=r.useCallback(async(S,i,s,O0,k0,c0,T0)=>{if(O0){let ZY=T1(H,n.getState().mcp.clients);pq.handleQueryStart(ZY);let EY=kJ(ZY);if(EY)Kk(EY)}if(ak(),!$&&!IG&&!TG&&!bY.current){let ZY=i.find((HX)=>HX.type==="user"&&!HX.isMeta),EY=ZY?.type==="user"?hq(ZY.message.content):null;if(EY&&!EY.startsWith(`<${A6}>`)&&!EY.startsWith(`<${py}>`)&&!EY.startsWith(`<${uy}>`)&&!EY.startsWith(`<${dy}>`))bY.current=!0,B1(EY,new AbortController().signal).then((HX)=>{if(HX)xZ(HX);else bY.current=!1},()=>{bY.current=!1})}if(n.setState((ZY)=>{let EY=ZY.toolPermissionContext.alwaysAllowRules.command;if(EY===k0||EY?.length===k0.length&&EY.every((HX,YK)=>HX===k0[YK]))return ZY;return{...ZY,toolPermissionContext:{...ZY.toolPermissionContext,alwaysAllowRules:{...ZY.toolPermissionContext.alwaysAllowRules,command:k0}}}}),!O0){if(i.some(W6))s0(w6());lX(),$Y(null);return}let p0=nY(S,i,s,c0),{tools:i0,mcpClients:a0}=p0.options;if(T0!==void 0){let ZY=p0.getAppState;p0.getAppState=()=>({...ZY(),effortValue:T0})}CX("query_context_loading_start");let[,,ZZ,LY,QZ]=await Promise.all([Rq(a,F0),jq(a,F0,n.getState().fastMode),N4(i0,c0,Array.from(a.additionalWorkingDirectories.keys()),a0),D4(),B4()]),FY={...LY,...su(a0,Xb()?zb():void 0),...{}};CX("query_context_loading_end");let MJ=U4({mainThreadAgentDefinition:u,toolUseContext:p0,customSystemPrompt:U,defaultSystemPrompt:ZZ,appendSystemPrompt:N});p0.renderedSystemPrompt=MJ,CX("query_query_start"),hy(),xy(),gy();for await(let ZY of uk({messages:S,systemPrompt:MJ,userContext:FY,systemContext:QZ,canUseTool:VX,toolUseContext:p0,querySource:M6()}))_B(ZY);let VJ=vZ.current,WJ=Vk(Wk(VJ)),oY=Hk(WJ),f8=qk(oY);if(f8!==VJ)e0(()=>f8);if(Bk(f8,xY.current),DY())By(vZ.current,(ZY)=>F0((EY)=>EY.companionReaction===ZY?EY:{...EY,companionReaction:ZY}));CX("query_end"),lX(),mk(),await F?.(vZ.current)},[H,lX,nY,a,F0,U,F,N,VX,u,_B,IG,$]),rX=r.useCallback(async(S,i,s,O0,k0,c0,T0,p0)=>{if($Z()){let a0=i8(),ZZ=Z8();if(a0&&ZZ)E1(a0,ZZ,!0)}let i0=_Y.tryStart();if(i0===null){Z0("tengu_concurrent_onquery_detected",{}),S.filter((a0)=>a0.type==="user"&&!a0.isMeta).map((a0)=>hq(a0.message.content)).filter((a0)=>a0!==null).forEach((a0,ZZ)=>{if(WG({value:a0,mode:"prompt"}),ZZ===0)Z0("tengu_concurrent_onquery_enqueued",{})});return}try{j9(),dq(),e0((ZZ)=>[...ZZ,...S]),_J.current=0;{let ZZ=T0?ck(T0):null;q4(ZZ??_6())}S8.current=[],eJ([]),pz(null);let a0=vZ.current;if(T0)await WB(T0,a0,S.length);if(c0&&T0){if(!await c0(T0,a0))return}await AB(a0,S,i,s,O0,k0,p0)}finally{if(_Y.end(i0)){d6(Date.now()),OY.current=!1,lX(),await v4(vZ.current,i.signal.aborted),ZX.current();let a0;if(_6()!==null&&_6()>0&&!i.signal.aborted)a0={tokens:my(),limit:_6(),nudges:cy()};q4(null);let ZZ=Date.now()-YX.current-vz.current;if((ZZ>30000||a0!==void 0)&&!i.signal.aborted&&!b0)if(lq(n.getState().tasks).some((QZ)=>QZ.status==="running")){if(JX.current===null)JX.current=YX.current;if(a0)Cz.current=a0}else e0((QZ)=>[...QZ,nq(ZZ,a0,jJ(QZ,oq))]);if(!i.signal.aborted&&!b0){let LY=l0().showCacheStats??"compact";if(LY!=="off"){let QZ=wk();if(QZ.supported||QZ.read>0||QZ.total>0){let FY=LY==="full"?Uk(QZ):Dk(QZ);e0((MJ)=>[...MJ,z8(FY,"info")])}}}dq(),$Y(null)}if(i.signal.reason==="user-cancel"&&!_Y.isActive&&uX.current===""&&mq()===0&&!n.getState().viewingAgentTaskId){let a0=vZ.current,ZZ=a0.findLast(X6);if(ZZ){let LY=a0.lastIndexOf(ZZ);if(sq(a0,LY))ok(),M9.current(ZZ)}}}},[AB,F0,lX,_Y,WB,v4]),c4=r.useRef(!1);r.useEffect(()=>{let S=K0;if(!S||OZ||c4.current)return;c4.current=!0;async function i(s){if(s.clearContext){let k0=s.message.planContent?Zk():void 0,{clearConversation:c0}=await import("./conversation-0.5.7-h7r20gzw.mjs");if(await c0({setMessages:e0,readFileState:$8.current,discoveredSkillNames:$4.current,loadedNestedMemoryPaths:f4.current,getAppState:()=>n.getState(),setAppState:F0,setConversationId:s0}),bY.current=!1,xZ(void 0),rG.current.clear(),s6.current=0,k0)Yk(sY(),k0)}if(F0((k0)=>{let c0=s.mode?P1(k0.toolPermissionContext,j5(s.mode,s.allowedPrompts)):k0.toolPermissionContext;if(s.mode==="auto")c0=v5({...c0,mode:"auto",prePlanMode:void 0});return{...k0,initialMessage:null,toolPermissionContext:c0}}),HG())j1((k0)=>{F0((c0)=>({...c0,fileHistory:k0(c0.fileHistory)}))},s.message.uuid);await fG();let O0=s.message.message.content;if(typeof O0==="string"&&!s.message.planContent)WX(O0,{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}});else{let k0=nJ();$Y(k0),rX([s.message],k0,!0,[],B0)}setTimeout((k0)=>{k0.current=!1},100,c4)}i(S)},[K0,OZ,e0,F0,rX,B0,yz]);let WX=r.useCallback(async(S,i,s,O0)=>{if(wJ(),!s&&S.trim().startsWith("/")){let T0=k1(S,QX).trim(),p0=T0.indexOf(" "),i0=p0===-1?T0.slice(1):T0.slice(1,p0),a0=p0===-1?"":T0.slice(p0+1).trim(),ZZ=PJ.find((QZ)=>J6(QZ)&&(QZ.name===i0||QZ.aliases?.includes(i0)||GY(QZ)===i0));if(ZZ?.name==="clear"&&b8.current)Z0("tengu_idle_return_action",{action:"hint_converted",variant:b8.current,idleMinutes:Math.round((Date.now()-IY.current)/60000),messageCount:vZ.current.length,totalInputTokens:yX()}),b8.current=!1;let LY=_Y.isActive&&(ZZ?.immediate||O0?.fromKeybinding);if(ZZ&&LY&&ZZ.type==="local-jsx"){if(S.trim()===uX.current.trim())CZ(""),i.setCursorOffset(0),i.clearBuffer(),QJ({});let QZ=w8(S).filter((WJ)=>QX[WJ.id]?.type==="text"),FY=QZ.length,MJ=QZ.reduce((WJ,oY)=>WJ+(QX[oY.id]?.content.length??0),0);Z0("tengu_paste_text",{pastedTextCount:FY,pastedTextBytes:MJ}),Z0("tengu_immediate_command_executed",{commandName:ZZ.name,fromKeybinding:O0?.fromKeybinding??!1}),(async()=>{let WJ=!1,oY=(YK,o4)=>{WJ=!0,xJ({jsx:null,shouldHidePromptInput:!1,clearLocalJSX:!0});let KQ=[];if(YK&&o4?.display!=="skip"){if(NZ({key:`immediate-${ZZ.name}`,text:YK,priority:"immediate"}),!_Z())KQ.push(O4(aq(GY(ZZ),a0)),O4(`<${A6}>${cq(YK)}</${A6}>`))}if(o4?.metaMessages?.length)KQ.push(...o4.metaMessages.map((s4)=>gY({content:s4,isMeta:!0})));if(KQ.length)e0((s4)=>[...s4,...KQ]);if(AY!==void 0)CZ(AY.text),i.setCursorOffset(AY.cursorOffset),QJ(AY.pastedContents),pX(void 0)},f8=nY(vZ.current,[],nJ(),B0),ZY=y1(),HX=await(await ZZ.load()).call(oY,f8,a0);if(HX&&!WJ)xJ({jsx:HX,shouldHidePromptInput:!1,isLocalJSXCommand:!0,generation:ZY})})();return}}if(dX.isRemoteMode&&!S.trim())return;{let T0=YJ("tengu_willow_mode","off"),p0=Number(process.env.CLAUDE_CODE_IDLE_THRESHOLD_MINUTES??75),i0=Number(process.env.CLAUDE_CODE_IDLE_TOKEN_THRESHOLD??1e5);if(T0!=="off"&&!l0().idleReturnDismissed&&!OY.current&&!s&&!S.trim().startsWith("/")&&IY.current>0&&yX()>=i0){let ZZ=(Date.now()-IY.current)/60000;if(ZZ>=p0&&T0==="dialog"){zY({input:S,idleMinutes:ZZ}),CZ(""),i.setCursorOffset(0),i.clearBuffer();return}}}if(!O0?.fromKeybinding){if(nk({display:s?S:ik(S,zX),pastedContents:s?{}:QX}),zX==="bash")wE(S.trim())}let k0=!s&&S.trim().startsWith("/"),c0=!OZ||s||dX.isRemoteMode;if(AY!==void 0&&!k0&&c0)CZ(AY.text),i.setCursorOffset(AY.cursorOffset),QJ(AY.pastedContents),pX(void 0);else if(c0){if(!O0?.fromKeybinding)CZ(""),i.setCursorOffset(0);QJ({})}if(c0){if(GX("prompt"),A8(void 0),C8((T0)=>T0+1),i.clearBuffer(),I4.current=!1,!k0&&zX==="prompt"&&!s&&!dX.isRemoteMode)I8(S),j9()}if(s){let{queryRequired:T0}=await dk(s.state,s.speculationSessionTimeSavedMs,s.setAppState,S,{setMessages:e0,readFileState:$8,cwd:QY()});if(T0){let p0=nJ();$Y(p0),rX([],p0,!0,[],B0)}return}if(dX.isRemoteMode&&!(k0&&PJ.find((T0)=>{let p0=S.trim().slice(1).split(/\s/)[0];return J6(T0)&&(T0.name===p0||T0.aliases?.includes(p0)||GY(T0)===p0)})?.type==="local-jsx")){let T0=Object.values(QX),p0=T0.filter((QZ)=>QZ.type==="image"),i0=p0.length>0?p0.map((QZ)=>QZ.id):void 0,a0=S.trim(),ZZ=S.trim();if(T0.length>0){let QZ=[],FY=[],MJ=S.trim();if(MJ)QZ.push({type:"text",text:MJ}),FY.push({type:"text",text:MJ});for(let VJ of T0)if(VJ.type==="image"){let WJ={type:"base64",media_type:VJ.mediaType??"image/png",data:VJ.content};QZ.push({type:"image",source:WJ}),FY.push({type:"image",source:WJ})}else QZ.push({type:"text",text:VJ.content}),FY.push({type:"text",text:VJ.content});a0=QZ,ZZ=FY}let LY=gY({content:a0,imagePasteIds:i0});e0((QZ)=>[...QZ,LY]),await dX.sendMessage(ZZ,{uuid:LY.uuid});return}if(await fG(),await b1({input:S,helpers:i,queryGuard:_Y,isExternalLoading:Tz,mode:zX,commands:PJ,onInputChange:CZ,setPastedContents:QJ,setToolJSX:xJ,getToolUseContext:nY,messages:vZ.current,mainLoopModel:B0,pastedContents:QX,ideSelection:KJ,setUserInputOnProcessing:I8,setAbortController:$Y,abortController:fJ,onQuery:rX,setAppState:F0,querySource:M6(),onBeforeQuery:L,canUseTool:VX,addNotification:NZ,setMessages:e0,streamMode:$X.current,hasInterruptibleToolInProgress:mz.current}),(k0||OZ)&&AY!==void 0)CZ(AY.text),i.setCursorOffset(AY.cursorOffset),QJ(AY.pastedContents),pX(void 0)},[_Y,OZ,Tz,zX,PJ,CZ,GX,QJ,C8,A8,xJ,nY,B0,QX,KJ,I8,$Y,NZ,rX,AY,pX,F0,L,VX,xG,e0,fG,wJ]),fb=r.useCallback(async(S,i,s)=>{if(j6(i))if(rk(i.id,gY({content:S}),F0),i.status==="running")lk(i.id,S,F0);else Zb({agentId:i.id,prompt:S,toolUseContext:nY(vZ.current,[],new AbortController,B0),canUseTool:VX}).catch((O0)=>{g(`resumeAgentBackground failed: ${lJ(O0)}`),NZ({key:`resume-agent-failed-${i.id}`,jsx:E(O,{color:"error",children:["Failed to resume agent: ",lJ(O0)]}),priority:"low"})});else W4(i.id,S,F0);CZ(""),s.setCursorOffset(0),s.clearBuffer()},[F0,CZ,nY,VX,B0,NZ]),hb=r.useCallback(()=>{let S=iG?Ky(iG):"/issue";x4(null),WX(S,{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}}).catch((i)=>{g(`Auto-run ${S} failed: ${lJ(i)}`)})},[WX,iG]),xb=r.useCallback(()=>{x4(null)},[]),u4=r.useCallback(()=>{WX("/feedback",{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}}).catch((i)=>{g(`Survey feedback request failed: ${i instanceof Error?i.message:String(i)}`)})},[WX]),p4=r.useRef(WX);p4.current=WX;let MB=r.useCallback(()=>{p4.current("/rate-limit-options",{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}})},[]);f.current=NB;let gb=r.useCallback(()=>{rz((S)=>!S)},[]),RB=r.useCallback((S)=>{let i=vZ.current,s=i.lastIndexOf(S);if(s===-1)return;Z0("tengu_conversation_rewind",{preRewindMessageCount:i.length,postRewindMessageCount:s,messagesRemoved:i.length-s,rewindToMessageIndex:s}),e0(i.slice(0,s)),s0(w6()),jk(),F0((O0)=>({...O0,toolPermissionContext:S.permissionMode&&O0.toolPermissionContext.mode!==S.permissionMode?{...O0.toolPermissionContext,mode:S.permissionMode}:O0.toolPermissionContext,promptSuggestion:{text:null,promptId:null,shownAt:0,acceptedAt:0,generationRequestId:null}}))},[e0,F0]),d4=r.useCallback((S)=>{RB(S);let i=fq(S);if(i)CZ(i.text),GX(i.mode);if(Array.isArray(S.message.content)&&S.message.content.some((s)=>s.type==="image")){let s=S.message.content.filter((O0)=>O0.type==="image");if(s.length>0){let O0={};s.forEach((k0,c0)=>{if(k0.source.type==="base64"){let T0=S.imagePasteIds?.[c0]??c0+1;O0[T0]={id:T0,type:"image",content:k0.source.data,mediaType:k0.source.media_type}}}),QJ(O0)}}},[RB,CZ]);M9.current=d4;let jB=r.useCallback(async(S)=>{setImmediate((i,s)=>i(s),d4,S)},[d4]),mb=(S)=>{let i=S.slice(0,24);return zZ.findIndex((s)=>s.uuid.slice(0,24)===i)},cb={copy:(S)=>void iy(S).then((i)=>{if(i)process.stdout.write(i);NZ({key:"selection-copied",text:"copied",color:"success",priority:"immediate",timeoutMs:2000})}),edit:async(S)=>{let i=mb(S.uuid),s=i>=0?zZ[i]:void 0;if(!s||!X6(s))return;let O0=!await Ek(p,s.uuid),k0=sq(zZ,i);if(O0&&k0)m4(),jB(s);else I(s),rz(!0)}},{enter:ub,handlers:pb}=_k(T8,k9,x6,cb);async function db(){h4();let S=await zk();if(S.length>0){let i=S.map((s)=>` [${s.type}] ${s.path} (${s.content.length} chars)${s.parent?` (included by ${s.parent})`:""}`).join(`
|
|
128
|
+
`);g(`Loaded ${S.length} CLAUDE.md/rules files:
|
|
129
|
+
${i}`)}else g("No CLAUDE.md/rules files found");for(let i of S)$8.current.set(i.path,{content:i.contentDiffersFromDisk?i.rawContent??i.content:i.content,timestamp:Date.now(),offset:void 0,limit:void 0,isPartialView:i.contentDiffersFromDisk})}F_(Lb()),gU(zZ,zZ.length===X?.length);let{sendBridgeResult:lb}=mU(zZ,e0,A9,PJ,B0);ZX.current=lb,E_();let l4=r.useRef(!1);r.useEffect(()=>{if(G0.length<1){l4.current=!1;return}if(l4.current)return;l4.current=!0,HZ((S)=>({...S,promptQueueUseCount:(S.promptQueueUseCount??0)+1}))},[G0.length]);let rb=r.useCallback(async(S)=>{await b1({helpers:{setCursorOffset:()=>{},clearBuffer:()=>{},resetHistory:()=>{}},queryGuard:_Y,commands:PJ,onInputChange:()=>{},setPastedContents:()=>{},setToolJSX:xJ,getToolUseContext:nY,messages:zZ,mainLoopModel:B0,ideSelection:KJ,setUserInputOnProcessing:I8,setAbortController:$Y,onQuery:rX,setAppState:F0,querySource:M6(),onBeforeQuery:L,canUseTool:VX,addNotification:NZ,setMessages:e0,queuedCommands:S})},[_Y,PJ,xJ,nY,zZ,B0,KJ,I8,VX,$Y,rX,NZ,F0,L]);jA({executeQueuedInput:rb,hasActiveLocalJsxUI:aY,queryGuard:_Y}),r.useEffect(()=>{sk.recordUserActivity(),SQ(!0)},[NY,mJ]),r.useEffect(()=>{if(mJ===1)Pb()},[mJ]),r.useEffect(()=>{if(OZ)return;if(mJ===0)return;if(AJ===0)return;let S=setTimeout((i,s,O0,k0,c0)=>{if(z7()>i)return;let p0=Date.now()-i;if(!s&&!O0&&k0.current===void 0&&p0>=l0().messageIdleNotifThresholdMs)p8({message:"Claude is waiting for your input",notificationType:"idle_prompt"},c0)},l0().messageIdleNotifThresholdMs,AJ,OZ,kZ,yG,W0);return()=>clearTimeout(S)},[OZ,kZ,mJ,AJ,W0]),r.useEffect(()=>{if(AJ===0)return;if(OZ)return;let S=YJ("tengu_willow_mode","off");if(S!=="hint"&&S!=="hint_v2")return;if(l0().idleReturnDismissed)return;let i=Number(process.env.CLAUDE_CODE_IDLE_TOKEN_THRESHOLD??1e5);if(yX()<i)return;let s=Number(process.env.CLAUDE_CODE_IDLE_THRESHOLD_MINUTES??75)*60000,O0=Date.now()-AJ,k0=s-O0,c0=setTimeout((T0,p0,i0,a0,ZZ)=>{if(i0.current.length===0)return;let LY=yX(),QZ=UX(LY),FY=(Date.now()-T0)/60000;p0({key:"idle-return-hint",jsx:a0==="hint_v2"?E(A0,{children:[B(O,{dimColor:!0,children:"new task? "}),B(O,{color:"suggestion",children:"/clear"}),B(O,{dimColor:!0,children:" to save "}),E(O,{color:"suggestion",children:[QZ," tokens"]})]}):E(O,{color:"warning",children:["new task? /clear to save ",QZ," tokens"]}),priority:"medium",timeoutMs:2147483647}),ZZ.current=a0,Z0("tengu_idle_return_action",{action:"hint_shown",variant:a0,idleMinutes:Math.round(FY),messageCount:i0.current.length,totalInputTokens:LY})},Math.max(0,k0),AJ,NZ,vZ,S,b8);return()=>{clearTimeout(c0),hZ("idle-return-hint"),b8.current=!1}},[AJ,OZ,NZ,hZ]);let yB=r.useCallback((S,i)=>{if(_Y.isActive)return!1;if(Nk().some((k0)=>k0.mode==="prompt"||k0.mode==="bash"))return!1;let s=nJ();$Y(s);let O0=gY({content:S,isMeta:i?.isMeta?!0:void 0});return rX([O0],s,!0,[],B0),!0},[rX,B0,n]),ib={stripTrailing:()=>0,handleKeyEvent:()=>{},resetAnchor:()=>{},interimRange:null};XM({enabled:$Z(),isLoading:OZ,focusedInputDialog:tZ,onSubmitMessage:yB}),kA({isLoading:OZ,onSubmitMessage:yB});let ab=n.getState().kairosEnabled;Yp({isLoading:OZ,assistantMode:ab,setMessages:e0}),r.useEffect(()=>{if(G0.some((S)=>S.priority==="now"))A9.current?.abort("interrupt")},[G0]),r.useEffect(()=>{return db(),()=>{pq.shutdown()}},[]);let{internal_eventEmitter:aG}=ny(),[nb,ob]=r.useState(0);r.useEffect(()=>{let S=()=>{process.stdout.write(`
|
|
130
|
+
Claude Code has been suspended. Run \`fg\` to bring Claude Code back.
|
|
131
|
+
Note: ctrl + z now suspends Claude Code, ctrl + _ undoes input.
|
|
132
|
+
`)},i=()=>{ob((s)=>s+1)};return aG?.on("suspend",S),aG?.on("resume",i),()=>{aG?.off("suspend",S),aG?.off("resume",i)}},[aG]);let sb=r.useMemo(()=>{if(!OZ)return null;let S=zZ.filter((i0)=>i0.type==="progress"&&i0.data.type==="hook_progress"&&(i0.data.hookEvent==="Stop"||i0.data.hookEvent==="SubagentStop"));if(S.length===0)return null;let i=S.at(-1)?.toolUseID;if(!i)return null;if(zZ.some((i0)=>i0.type==="system"&&i0.subtype==="stop_hook_summary"&&i0.toolUseID===i))return null;let O0=S.filter((i0)=>i0.toolUseID===i),k0=O0.length,c0=jJ(zZ,(i0)=>{if(i0.type!=="attachment")return!1;let a0=i0.attachment;return"hookEvent"in a0&&(a0.hookEvent==="Stop"||a0.hookEvent==="SubagentStop")&&"toolUseID"in a0&&a0.toolUseID===i}),T0=O0.find((i0)=>i0.data.statusMessage)?.data.statusMessage;if(T0)return k0===1?`${T0}…`:`${T0}… ${c0}/${k0}`;let p0=O0[0]?.data.hookEvent==="SubagentStop"?"subagent stop":"stop";return k0===1?`running ${p0} hook`:`running stop hooks… ${c0}/${k0}`},[zZ,OZ]),tb=r.useCallback(()=>{hG({messagesLength:zZ.length,streamingToolUsesLength:fX.length})},[zZ.length,fX.length]),kB=r.useCallback(()=>{hG(null)},[]),ZQ=_Z()&&!T,nG=r.useRef(null),[az,YQ]=r.useState(!1),[oG,r4]=r.useState(""),[bB,JQ]=r.useState(0),[eb,XQ]=r.useState(0),ZI=r.useCallback((S,i)=>{JQ(S),XQ(i)},[]);lZ((S,i,s)=>{if(i.ctrl||i.meta)return;if(S==="/"){nG.current?.setAnchor(),YQ(!0),s.stopImmediatePropagation();return}let O0=S[0];if((O0==="n"||O0==="N")&&S===O0.repeat(S.length)&&bB>0){let k0=O0==="n"?nG.current?.nextMatch:nG.current?.prevMatch;if(k0)for(let c0=0;c0<S.length;c0++)k0();s.stopImmediatePropagation()}},{isActive:h0==="transcript"&&ZQ&&!az&&!g0});let{setQuery:sG,scanElement:YI,setPositions:i4}=hB(),tG=PZ().columns,IB=TZ.useRef(tG);TZ.useEffect(()=>{if(IB.current!==tG){if(IB.current=tG,oG||az)YQ(!1),r4(""),JQ(0),XQ(0),nG.current?.disarmSearch(),sG("")}},[tG,oG,az,sG]),lZ((S,i,s)=>{if(i.ctrl||i.meta)return;if(S==="q"){kB(),s.stopImmediatePropagation();return}if(S==="["&&!g0)x0(!0),o0(!0),s.stopImmediatePropagation();else if(S==="v"){if(s.stopImmediatePropagation(),yZ.current)return;yZ.current=!0;let O0=m0.current,k0=(c0)=>{if(O0!==m0.current)return;clearTimeout(VZ.current),t0(c0)};k0(`rendering ${XX.length} messages…`),(async()=>{try{let c0=Math.max(80,(process.stdout.columns??80)-6),p0=(await Bb(XX,yz,c0)).replace(/[ \t]+$/gm,""),i0=ru(iu(),`cc-transcript-${Date.now()}.txt`);await au(i0,p0);let a0=i7(i0);k0(a0?`opening ${i0}`:`wrote ${i0} · no $VISUAL/$EDITOR set`)}catch(c0){k0(`render failed: ${c0 instanceof Error?c0.message:String(c0)}`)}if(yZ.current=!1,O0!==m0.current)return;VZ.current=setTimeout((c0)=>c0(""),4000,t0)})()}},{isActive:h0==="transcript"&&ZQ&&!az});let eG=h0==="transcript"&&ZQ;r.useEffect(()=>{if(!eG)r4(""),JQ(0),XQ(0),YQ(!1),m0.current++,clearTimeout(VZ.current),x0(!1),t0("")},[eG]),r.useEffect(()=>{if(sG(eG?oG:""),!eG)i4(null)},[eG,oG,sG,i4]);let TB={screen:h0,setScreen:wZ,showAllInTranscript:y0,setShowAllInTranscript:o0,messageCount:zZ.length,onEnterTranscript:tb,onExitTranscript:kB,virtualScrollActive:ZQ,searchBarOpen:az},JI=I9?XX.slice(0,I9.messagesLength):XX,XI=I9?fX.slice(0,I9.streamingToolUsesLength):fX;if(y_({onOpenBackgroundTasks:aY?void 0:()=>b4(!0)}),f_(),h0==="transcript")return B(ID,{scrollRef:rY,jumpRef:nG,disableVirtualScroll:T,dumpMode:g0,transcriptMessages:JI,tools:yz,renderCommands:bz,inProgressToolUseIDs:v8,conversationId:r0,screen:h0,agentDefinitions:d,transcriptStreamingToolUses:XI,showAllInTranscript:y0,handleOpenRateLimitOptions:MB,isLoading:OZ,streamingThinking:hX,onSearchMatchesChange:ZI,scanElement:YI,setPositions:i4,toolJSX:kZ,titleIsAnimating:xz,terminalTitle:y8,titleDisabled:$,showStatusInTerminalTab:k8,globalKeybindingProps:TB,voiceKeybindingSlot:null,onSubmit:WX,cancelRequestProps:PB,focusedInputDialog:tZ,searchOpen:az,searchCount:bB,searchCurrent:eb,searchQuery:oG,setSearchQuery:r4,setSearchOpen:YQ,setSearchCount:JQ,setSearchCurrent:XQ,setHighlight:sG,editorStatus:f0});let nz=L0?X0[L0]:void 0,zQ=nz&&vX(nz)?nz:void 0,iX=zQ??(nz&&j6(nz)?nz:void 0),vB=iX?iX.messages??[]:v9||!OZ?zZ:XX,CB=R9&&!iX&&vB.length<=hJ.current?R9:void 0,SB=tZ==="tool-permission"?B(oL,{onDone:()=>kY(([S,...i])=>i),onReject:EB,toolUseConfirm:iY[0],toolUseContext:nY(zZ,zZ,fJ??nJ(),B0),verbose:o,workerBadge:iY[0]?.workerBadge,setStickyFooter:_Z()?S6:void 0},iY[0]?.toolUseID):null,ZK=tG<i5,a4=!kZ?.shouldHidePromptInput&&!tZ&&!uG,n4=_Z()&&kZ?.isLocalJSXCommand===!0,GQ=n4?kZ.jsx:null,$B=E(IQ,{children:[B(WQ,{isAnimating:xz,title:y8,disabled:$,noPrefix:k8}),B(DQ,{...TB}),null,B(UQ,{onSubmit:WX,isActive:!kZ?.isLocalJSXCommand}),B(AQ,{scrollRef:rY,isActive:_Z()&&(GQ!=null||!tZ||tZ==="tool-permission"),onScroll:GQ||SB||iX?void 0:b9}),_Z()&&!h?B(Ak,{handlers:pb,isActive:T8!==null}):null,B(EQ,{...PB}),B(Qb,{dynamicMcpConfig:D0,isStrictMcpConfig:q,children:B(TQ,{scrollRef:rY,overlay:SB,bottomFloat:DY()&&a4&&!ZK?B(qF,{}):void 0,modal:GQ,modalScrollRef:Iz,dividerYRef:A4,hidePill:!!iX,hideSticky:!!zQ,newMessageCount:M4?.count??0,onPillClick:()=>{k9(null),cX(rY.current)},scrollable:E(A0,{children:[B(Ry,{}),B(mA,{}),B(vQ,{messages:vB,tools:yz,commands:bz,verbose:o,toolJSX:kZ,toolUseConfirmQueue:iY,inProgressToolUseIDs:zQ?zQ.inProgressToolUseIDs??new Set:v8,isMessageSelectorVisible:lz,conversationId:r0,screen:h0,streamingToolUses:fX,showAllInTranscript:y0,agentDefinitions:d,onOpenRateLimitOptions:MB,isLoading:OZ,streamingText:OZ&&!iX?cG:null,isBriefOnly:iX?!1:U0,unseenDivider:iX?void 0:M4,scrollRef:_Z()?rY:void 0,trackStickyPrompt:_Z()?!0:void 0,cursor:T8,setCursor:k9,cursorNavRef:x6}),B(jj,{}),!P&&CB&&!GQ&&B(yk,{param:{text:CB,type:"text"},addMargin:!0,verbose:o}),kZ&&!(kZ.isLocalJSXCommand&&kZ.isImmediate)&&!n4&&B(M,{flexDirection:"column",width:"100%",children:kZ.jsx}),null,B(sB,{showSpinner:HB,streamMode:R8,spinnerTip:J0,responseLengthRef:_J,apiMetricsRef:S8,spinnerMessage:l6,stopHookSpinnerSuffix:sb,verbose:o,loadingStartTimeRef:YX,totalPausedMsRef:vz,pauseStartTimeRef:j8,spinnerColor:r6,spinnerShimmerColor:i6,hasActiveTools:v8.size>0,leaderIsIdle:!OZ,isLoading:OZ,userInputOnProcessing:R9,hasRunningTeammates:n6,isBriefOnly:U0,viewedAgentTask:iX})]}),bottom:E(M,{flexDirection:DY()&&ZK?"column":"row",width:"100%",alignItems:DY()&&ZK?void 0:"flex-end",children:[DY()&&ZK&&_Z()&&a4?B(SH,{}):null,E(M,{flexDirection:"column",flexGrow:1,children:[C6,kZ?.isLocalJSXCommand&&kZ.isImmediate&&!n4&&B(M,{flexDirection:"column",width:"100%",children:kZ.jsx}),!HB&&!kZ?.isLocalJSXCommand&&P0&&tJ&&tJ.length>0&&B(M,{width:"100%",flexDirection:"column",children:B(tk,{tasks:tJ,isStandalone:!0})}),sD({focusedInputDialog:tZ,sandboxPermissionRequestQueue:y9,setSandboxPermissionRequestQueue:$z,sandboxBridgeCleanupRef:$6,promptQueue:gX,setPromptQueue:fz,pendingWorkerRequest:M0,pendingSandboxRequest:I0,workerSandboxPermissions:H0,teamContext:q0,setAppState:F0,elicitation:j0,setShowCostDialog:_0,setHaveShownCostDialog:JB,idleReturnPending:EZ,setIdleReturnPending:zY,getTotalInputTokens:yX,messagesRef:vZ,setInputValue:CZ,setMessages:e0,readFileState:$8,discoveredSkillNamesRef:$4,loadedNestedMemoryPathsRef:f4,store:n,setConversationId:s0,haikuTitleAttemptedRef:bY,setHaikuTitle:xZ,bashTools:rG,bashToolsProcessedIdx:s6,skipIdleCheckRef:OY,onSubmitRef:p4,setShowIdeOnboarding:lY,ideInstallationStatus:Mz,mainLoopModel:B0,setShowEffortCallout:k6,exitFlow:DB,hintRecommendation:sJ,handleHintResponse:jz,lspRecommendation:Rz,handleLspResponse:_G,setShowDesktopUpsellStartup:I6,ultraplanPendingChoice:V0,ultraplanLaunchPending:l,queryGuard:_Y,createAbortController:nJ,createCommandInputMessage:O4,formatCommandInputTags:aq,escapeXml:cq,LOCAL_COMMAND_STDOUT_TAG:A6,launchUltraplan:()=>Promise.resolve("")},{SandboxPermissionRequest:_R,IdeOnboardingDialog:Gk,EffortCallout:PM,RemoteCallout:_M,PluginHintMenu:Wj,LspRecommendationMenu:eR,DesktopUpsellStartup:Ab,UltraplanChoiceDialog:null,UltraplanLaunchDialog:null}),bb(),!kZ?.shouldHidePromptInput&&!tZ&&!UB&&!P&&!T8&&!ay()&&E(A0,{children:[iG&&B(zy,{onRun:hb,onCancel:xb,reason:Qy(iG)}),lG.state!=="closed"?B(H6,{state:lG.state,lastResponse:lG.lastResponse,handleSelect:lG.handleSelect,inputValue:NY,setInputValue:CZ,onRequestFeedback:u4}):iz.state!=="closed"?B(H6,{state:iz.state,lastResponse:iz.lastResponse,handleSelect:iz.handleSelect,handleTranscriptSelect:iz.handleTranscriptSelect,inputValue:NY,setInputValue:CZ,onRequestFeedback:u4,message:"How well did Claude use its memory? (optional)"}):B(H6,{state:dG.state,lastResponse:dG.lastResponse,handleSelect:dG.handleSelect,handleTranscriptSelect:dG.handleTranscriptSelect,inputValue:NY,setInputValue:CZ,onRequestFeedback:g4.current?void 0:u4}),S4.state!=="closed"&&B(H6,{state:S4.state,lastResponse:null,handleSelect:()=>{},handleTranscriptSelect:S4.handleTranscriptSelect,inputValue:NY,setInputValue:CZ}),Ib&&B(Vy,{}),B(G_,{debug:Z,ideSelection:KJ,hasSuppressedDialogs:!!t6,isLocalJSXCommandActive:aY,getToolUseContext:nY,toolPermissionContext:a,setToolPermissionContext:e6,apiKeyStatus:vb,commands:bz,agents:d.activeAgents,isLoading:OZ,onExit:NB,verbose:o,messages:zZ,onAutoUpdaterResult:sZ,autoUpdaterResult:E4,input:NY,onInputChange:CZ,mode:zX,onModeChange:GX,stashedPrompt:AY,setStashedPrompt:pX,submitCount:mJ,onShowMessageSelector:gb,onMessageActionsEnter:_Z()&&!h?ub:void 0,mcpClients:cZ,pastedContents:QX,setPastedContents:QJ,vimMode:XB,setVimMode:Mb,showBashesDialog:uG,setShowBashesDialog:b4,onSubmit:WX,onAgentSubmit:fb,isSearchingHistory:zB,setIsSearchingHistory:Rb,helpOpen:GB,setHelpOpen:jb,insertTextRef:void 0,voiceInterimRange:ib.interimRange}),B(qM,{onBackgroundSession:$b,isLoading:OZ})]}),T8&&B(Mk,{cursor:T8}),tZ==="message-selector"&&B(Fb,{messages:zZ,preselectedMessage:a6,onPreRestore:m4,onRestoreCode:async(S)=>{await Fk((i)=>{F0((s)=>({...s,fileHistory:i(s.fileHistory)}))},S.uuid)},onSummarize:async(S,i,s="from")=>{let O0=gK(zZ),k0=O0.indexOf(S);if(k0===-1){e0((oY)=>[...oY,z8("That message is no longer in the active context (snipped or pre-compact). Choose a more recent message.","warning")]);return}let c0=nJ(),T0=nY(O0,[],c0,B0),p0=T0.getAppState(),i0=await N4(T0.options.tools,T0.options.mainLoopModel,Array.from(p0.toolPermissionContext.additionalWorkingDirectories.keys()),T0.options.mcpClients),a0=U4({mainThreadAgentDefinition:void 0,toolUseContext:T0,customSystemPrompt:T0.options.customSystemPrompt,defaultSystemPrompt:i0,appendSystemPrompt:T0.options.appendSystemPrompt}),[ZZ,LY]=await Promise.all([D4(),B4()]),QZ=await hk(O0,k0,T0,{systemPrompt:a0,userContext:ZZ,systemContext:LY,toolUseContext:T0,forkContextMessages:O0},i,s),FY=QZ.messagesToKeep??[],MJ=s==="up_to"?[...QZ.summaryMessages,...FY]:[...FY,...QZ.summaryMessages],VJ=[QZ.boundaryMarker,...MJ,...QZ.attachments,...QZ.hookResults];if(_Z()&&s==="from")e0((oY)=>{let f8=oY.findIndex((ZY)=>ZY.uuid===S.uuid);return[...oY.slice(0,f8===-1?0:f8),...VJ]});else e0(VJ);if(s0(w6()),Gb(T0.options.querySource,VJ,xY.current),s==="from"){let oY=fq(S);if(oY)CZ(oY.text),GX(oY.mode)}let WJ=m8("app:toggleTranscript","Global","ctrl+o");NZ({key:"summarize-ctrl-o-hint",text:`Conversation summarized (${WJ} for history)`,priority:"medium",timeoutMs:8000})},onRestoreMessage:jB,onClose:()=>{rz(!1),I(void 0)}})]}),DY()&&!(ZK&&_Z())&&a4?B(SH,{}):null]})})},nb)]});if(_Z())return B(RQ,{mouseTracking:bQ(),children:$B});return $B}
|
|
133
|
+
export{wP0 as ia};
|