@claudiolabs/claudin 1.1.28 → 1.1.29
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/dist/chunks/AgentTool-1.1.29-awhbrkah.mjs +1 -0
- package/dist/chunks/App-1.1.29-pm1xvr3g.mjs +1 -0
- package/dist/chunks/ApproveApiKey-1.1.29-c44twxse.mjs +1 -0
- package/dist/chunks/AssistantSessionChooser-1.1.29-f11by8v4.mjs +1 -0
- package/dist/chunks/AutoModeOptInDialog-1.1.29-vnqj2te2.mjs +1 -0
- package/dist/chunks/BypassPermissionsModeDialog-1.1.29-z2ah9t9j.mjs +1 -0
- package/dist/chunks/ClaudeMdExternalIncludesDialog-1.1.29-30pn689g.mjs +1 -0
- package/dist/chunks/ConsoleOAuthFlow-1.1.29-sja8s9ck.mjs +1 -0
- package/dist/chunks/DiffDialog-1.1.29-k98h1gzp.mjs +6 -0
- package/dist/chunks/Doctor-1.1.29-ab8tjfg7.mjs +1 -0
- package/dist/chunks/ExplorerDialog-1.1.29-16y5q4ta.mjs +6 -0
- package/dist/chunks/ITermBackend-1.1.29-rk6hjgv2.mjs +1 -0
- package/dist/chunks/InvalidConfigDialog-1.1.29-kwjexf2x.mjs +1 -0
- package/dist/chunks/InvalidSettingsDialog-1.1.29-479a268q.mjs +1 -0
- package/dist/chunks/MigrationDialog-1.1.29-vshc8a59.mjs +1 -0
- package/dist/chunks/Onboarding-1.1.29-snkzzfjw.mjs +1 -0
- package/dist/chunks/ProviderManager-1.1.29-x67swksb.mjs +1 -0
- package/dist/chunks/REPL-1.1.29-yw76hfjs.mjs +1 -0
- package/dist/chunks/ResumeConversation-1.1.29-033m6wha.mjs +1 -0
- package/dist/chunks/SnapshotUpdateDialog-1.1.29-kbtx0xa6.mjs +1 -0
- package/dist/chunks/TeleportProgress-1.1.29-dq4fkj22.mjs +1 -0
- package/dist/chunks/TeleportRepoMismatchDialog-1.1.29-x5fsxqa3.mjs +1 -0
- package/dist/chunks/TeleportResumeWrapper-1.1.29-18h9wdn7.mjs +1 -0
- package/dist/chunks/TmuxBackend-1.1.29-42z37x43.mjs +9 -0
- package/dist/chunks/ToolSearchTool-1.1.29-dkk7q8sf.mjs +1 -0
- package/dist/chunks/TrustDialog-1.1.29-944b5g4w.mjs +1 -0
- package/dist/chunks/activeProvider-1.1.29-j7qknp7t.mjs +1 -0
- package/dist/chunks/add-dir-1.1.29-na3kdm45.mjs +1 -0
- package/dist/chunks/agentTypes-1.1.29-fjjae3tn.mjs +1 -0
- package/dist/chunks/agents-1.1.29-gdcf24kq.mjs +110 -0
- package/dist/chunks/agents-1.1.29-hbyggbar.mjs +3 -0
- package/dist/chunks/api-1.1.29-tb280rgw.mjs +1 -0
- package/dist/chunks/asciicast-1.1.29-69mc9agv.mjs +1 -0
- package/dist/chunks/assistant-1.1.29-qmvynqfb.mjs +1 -0
- package/dist/chunks/auth-1.1.29-k2h0c136.mjs +1 -0
- package/dist/chunks/auth-1.1.29-mkh8s4y7.mjs +1 -0
- package/dist/chunks/autoMode-1.1.29-5enddc49.mjs +52 -0
- package/dist/chunks/autoModeSetup-1.1.29-p4hp4dv6.mjs +44 -0
- package/dist/chunks/autoUpdater-1.1.29-sk8rt0mh.mjs +1 -0
- package/dist/chunks/backgroundHousekeeping-1.1.29-qxt8xakt.mjs +1 -0
- package/dist/chunks/branch-1.1.29-0zwfdt6s.mjs +4 -0
- package/dist/chunks/bridge-1.1.29-ee6b7cck.mjs +2 -0
- package/dist/chunks/bridgeConfig-1.1.29-4wseqmtn.mjs +1 -0
- package/dist/chunks/bridgeEnabled-1.1.29-2r501b1s.mjs +1 -0
- package/dist/chunks/bridgeMain-1.1.29-sk2e5ssh.mjs +88 -0
- package/dist/chunks/bridgePointer-1.1.29-mjz0jnns.mjs +1 -0
- package/dist/chunks/btw-1.1.29-arf7x19m.mjs +1 -0
- package/dist/chunks/buddy-1.1.29-awsva6y8.mjs +3 -0
- package/dist/chunks/cache-probe-1.1.29-67egf5jw.mjs +21 -0
- package/dist/chunks/cacheStats-1.1.29-yk1h4vdq.mjs +4 -0
- package/dist/chunks/caches-1.1.29-8ryyt679.mjs +1 -0
- package/dist/chunks/cd-1.1.29-w9gepxqm.mjs +3 -0
- package/dist/chunks/claudeDesktop-1.1.29-7g8vpmk4.mjs +1 -0
- package/dist/chunks/claudemd-1.1.29-z00d07f9.mjs +1 -0
- package/dist/chunks/clear-1.1.29-aj6vgn4b.mjs +1 -0
- package/dist/chunks/clearTerminal-1.1.29-95xqw9gq.mjs +1 -0
- package/dist/chunks/cli-1.1.29-0kfg7hf8.mjs +2 -0
- package/dist/chunks/cli-1.1.29-0rnfn0gy.mjs +2 -0
- package/dist/chunks/cli-1.1.29-0s73ykp6.mjs +3 -0
- package/dist/chunks/cli-1.1.29-0tf52nkw.mjs +8 -0
- package/dist/chunks/cli-1.1.29-0v2ryegc.mjs +2 -0
- package/dist/chunks/cli-1.1.29-0vpcc8vm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-11hr4111.mjs +2 -0
- package/dist/chunks/cli-1.1.29-13gvy0m9.mjs +25 -0
- package/dist/chunks/cli-1.1.29-153rxzts.mjs +2 -0
- package/dist/chunks/cli-1.1.29-17kpfbq0.mjs +2 -0
- package/dist/chunks/cli-1.1.29-1dqp4d2w.mjs +2 -0
- package/dist/chunks/cli-1.1.29-1pqjxrp8.mjs +2 -0
- package/dist/chunks/cli-1.1.29-20bcsb6f.mjs +15 -0
- package/dist/chunks/cli-1.1.29-23gv5dgk.mjs +2 -0
- package/dist/chunks/cli-1.1.29-247v5hpd.mjs +2 -0
- package/dist/chunks/cli-1.1.29-252q86ck.mjs +2 -0
- package/dist/chunks/cli-1.1.29-27h8nqm5.mjs +2 -0
- package/dist/chunks/cli-1.1.29-29svre2k.mjs +133 -0
- package/dist/chunks/cli-1.1.29-2e5s8gsb.mjs +24 -0
- package/dist/chunks/cli-1.1.29-2ezms0yf.mjs +2 -0
- package/dist/chunks/cli-1.1.29-2hejf6pj.mjs +2 -0
- package/dist/chunks/cli-1.1.29-2mcxe125.mjs +2 -0
- package/dist/chunks/cli-1.1.29-2sjtk1zb.mjs +2 -0
- package/dist/chunks/cli-1.1.29-2tyhgmxe.mjs +2 -0
- package/dist/chunks/cli-1.1.29-2yev8mxw.mjs +6 -0
- package/dist/chunks/cli-1.1.29-31y8na35.mjs +2 -0
- package/dist/chunks/cli-1.1.29-34nqdrk5.mjs +2 -0
- package/dist/chunks/cli-1.1.29-35kpvqby.mjs +4 -0
- package/dist/chunks/cli-1.1.29-3776marx.mjs +9 -0
- package/dist/chunks/cli-1.1.29-37j436rz.mjs +2 -0
- package/dist/chunks/cli-1.1.29-3dnft82a.mjs +2 -0
- package/dist/chunks/cli-1.1.29-3fcr0sm5.mjs +2 -0
- package/dist/chunks/cli-1.1.29-3s4wcn65.mjs +4 -0
- package/dist/chunks/cli-1.1.29-40v483aw.mjs +58 -0
- package/dist/chunks/cli-1.1.29-4ahf2sg4.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4bemzx23.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4p953chd.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4pdnzc5j.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4q271q7a.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4w9b7g8h.mjs +3 -0
- package/dist/chunks/cli-1.1.29-4xqgqvwm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-4yztmbcx.mjs +17 -0
- package/dist/chunks/cli-1.1.29-55khgk00.mjs +9 -0
- package/dist/chunks/cli-1.1.29-566mygcr.mjs +2 -0
- package/dist/chunks/cli-1.1.29-57e9kkv7.mjs +12 -0
- package/dist/chunks/cli-1.1.29-57f3k3fp.mjs +5 -0
- package/dist/chunks/cli-1.1.29-5bm4np8j.mjs +2 -0
- package/dist/chunks/cli-1.1.29-5gydp5n7.mjs +6 -0
- package/dist/chunks/cli-1.1.29-5mpj7dft.mjs +2 -0
- package/dist/chunks/cli-1.1.29-5p2zzfpq.mjs +4 -0
- package/dist/chunks/cli-1.1.29-5pbjmqzt.mjs +2 -0
- package/dist/chunks/cli-1.1.29-5svhj1v0.mjs +18 -0
- package/dist/chunks/cli-1.1.29-6g47vtst.mjs +2 -0
- package/dist/chunks/cli-1.1.29-6kvtrk8a.mjs +2 -0
- package/dist/chunks/cli-1.1.29-6mbq5wth.mjs +3 -0
- package/dist/chunks/cli-1.1.29-6ngsfhk3.mjs +17 -0
- package/dist/chunks/cli-1.1.29-6q1q5fa3.mjs +2 -0
- package/dist/chunks/cli-1.1.29-6qykmvew.mjs +2 -0
- package/dist/chunks/cli-1.1.29-6t6n6ctd.mjs +2 -0
- package/dist/chunks/cli-1.1.29-71e5px3b.mjs +2 -0
- package/dist/chunks/cli-1.1.29-740d0ga1.mjs +2 -0
- package/dist/chunks/cli-1.1.29-79tgwbnn.mjs +2 -0
- package/dist/chunks/cli-1.1.29-7p975zzx.mjs +2 -0
- package/dist/chunks/cli-1.1.29-7peev9wq.mjs +3 -0
- package/dist/chunks/cli-1.1.29-7pfvq0z6.mjs +60 -0
- package/dist/chunks/cli-1.1.29-7vrxybxh.mjs +15 -0
- package/dist/chunks/cli-1.1.29-834b4680.mjs +2 -0
- package/dist/chunks/cli-1.1.29-8398r1x1.mjs +2 -0
- package/dist/chunks/cli-1.1.29-842m4sds.mjs +2 -0
- package/dist/chunks/cli-1.1.29-84fpb4zk.mjs +2 -0
- package/dist/chunks/cli-1.1.29-89nqwnk6.mjs +3 -0
- package/dist/chunks/cli-1.1.29-8c371c3k.mjs +2 -0
- package/dist/chunks/cli-1.1.29-8dsnjzad.mjs +2 -0
- package/dist/chunks/cli-1.1.29-8eeh9yez.mjs +2 -0
- package/dist/chunks/cli-1.1.29-8k2xw0ns.mjs +16 -0
- package/dist/chunks/cli-1.1.29-8s0k2ydg.mjs +2 -0
- package/dist/chunks/cli-1.1.29-995n5c8r.mjs +2 -0
- package/dist/chunks/cli-1.1.29-9fkgjjzm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-9n8sz71q.mjs +6 -0
- package/dist/chunks/cli-1.1.29-9qc9kyz8.mjs +6 -0
- package/dist/chunks/cli-1.1.29-9s3rafev.mjs +2 -0
- package/dist/chunks/cli-1.1.29-9s9kgzze.mjs +2 -0
- package/dist/chunks/cli-1.1.29-a1p2bm8x.mjs +4 -0
- package/dist/chunks/cli-1.1.29-a6pnwve8.mjs +206 -0
- package/dist/chunks/cli-1.1.29-aa81cr7r.mjs +2 -0
- package/dist/chunks/cli-1.1.29-aazftc8x.mjs +4 -0
- package/dist/chunks/cli-1.1.29-ajwqka67.mjs +2 -0
- package/dist/chunks/cli-1.1.29-akx5bp37.mjs +2 -0
- package/dist/chunks/cli-1.1.29-am1n3767.mjs +5553 -0
- package/dist/chunks/cli-1.1.29-aptcshv0.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ar7jahd2.mjs +2 -0
- package/dist/chunks/cli-1.1.29-bpvwqqqm.mjs +3 -0
- package/dist/chunks/cli-1.1.29-bzfhb58d.mjs +21 -0
- package/dist/chunks/cli-1.1.29-c67xmzgw.mjs +2 -0
- package/dist/chunks/cli-1.1.29-c7eatffy.mjs +7 -0
- package/dist/chunks/cli-1.1.29-ccmw3ns3.mjs +2 -0
- package/dist/chunks/cli-1.1.29-cgska4m2.mjs +2 -0
- package/dist/chunks/cli-1.1.29-cjy4bmpv.mjs +2 -0
- package/dist/chunks/cli-1.1.29-cwngf5s4.mjs +2 -0
- package/dist/chunks/cli-1.1.29-df0crs3h.mjs +2 -0
- package/dist/chunks/cli-1.1.29-dfra4ygt.mjs +2 -0
- package/dist/chunks/cli-1.1.29-dpzd32s9.mjs +2 -0
- package/dist/chunks/cli-1.1.29-dseazhey.mjs +34 -0
- package/dist/chunks/cli-1.1.29-e7b3rw2q.mjs +2 -0
- package/dist/chunks/cli-1.1.29-enk5zgkk.mjs +2 -0
- package/dist/chunks/cli-1.1.29-eq7p29fp.mjs +2 -0
- package/dist/chunks/cli-1.1.29-erh6v56f.mjs +2 -0
- package/dist/chunks/cli-1.1.29-es8f8tm1.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ex9733z1.mjs +2 -0
- package/dist/chunks/cli-1.1.29-f103mqc1.mjs +133 -0
- package/dist/chunks/cli-1.1.29-f56z0kjj.mjs +2 -0
- package/dist/chunks/cli-1.1.29-f8qh0czy.mjs +24 -0
- package/dist/chunks/cli-1.1.29-fhwjnhs2.mjs +12 -0
- package/dist/chunks/cli-1.1.29-fsht50yz.mjs +2 -0
- package/dist/chunks/cli-1.1.29-g2g0bf6s.mjs +2 -0
- package/dist/chunks/cli-1.1.29-g9nssmee.mjs +2 -0
- package/dist/chunks/cli-1.1.29-gd1bzvdb.mjs +20 -0
- package/dist/chunks/cli-1.1.29-gfwfhh3b.mjs +4 -0
- package/dist/chunks/cli-1.1.29-gfyabc3h.mjs +2 -0
- package/dist/chunks/cli-1.1.29-gycpj0z6.mjs +2 -0
- package/dist/chunks/cli-1.1.29-h1ej5qf0.mjs +2 -0
- package/dist/chunks/cli-1.1.29-h4fg85xm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-hez6jzkx.mjs +2 -0
- package/dist/chunks/cli-1.1.29-hsa1qk75.mjs +2 -0
- package/dist/chunks/cli-1.1.29-j17q2nnf.mjs +2 -0
- package/dist/chunks/cli-1.1.29-j3n6rxnx.mjs +2 -0
- package/dist/chunks/cli-1.1.29-k0yj3sf0.mjs +2 -0
- package/dist/chunks/cli-1.1.29-kcfqkdev.mjs +24 -0
- package/dist/chunks/cli-1.1.29-kd96jtpb.mjs +2 -0
- package/dist/chunks/cli-1.1.29-kjbjanmr.mjs +2 -0
- package/dist/chunks/cli-1.1.29-krg96g94.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ksekfz16.mjs +3 -0
- package/dist/chunks/cli-1.1.29-kywbej24.mjs +3 -0
- package/dist/chunks/cli-1.1.29-m4bwjmrm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-m4j21s8k.mjs +3 -0
- package/dist/chunks/cli-1.1.29-m7rehwdd.mjs +58 -0
- package/dist/chunks/cli-1.1.29-mcacd7ag.mjs +2 -0
- package/dist/chunks/cli-1.1.29-mn3z3w8e.mjs +2 -0
- package/dist/chunks/cli-1.1.29-mwntmkzh.mjs +39 -0
- package/dist/chunks/cli-1.1.29-mxtxy5qg.mjs +2 -0
- package/dist/chunks/cli-1.1.29-mxxghqnd.mjs +2 -0
- package/dist/chunks/cli-1.1.29-nkb4dq83.mjs +2 -0
- package/dist/chunks/cli-1.1.29-nn0hkwgq.mjs +2 -0
- package/dist/chunks/cli-1.1.29-nx6ynaex.mjs +6 -0
- package/dist/chunks/cli-1.1.29-nxbgdt4q.mjs +2 -0
- package/dist/chunks/cli-1.1.29-nxvs12dw.mjs +2 -0
- package/dist/chunks/cli-1.1.29-pbydvpcy.mjs +7 -0
- package/dist/chunks/cli-1.1.29-pf67dsfj.mjs +42 -0
- package/dist/chunks/cli-1.1.29-pwsznt80.mjs +2 -0
- package/dist/chunks/cli-1.1.29-q4fv8e5e.mjs +2 -0
- package/dist/chunks/cli-1.1.29-q7nywp06.mjs +2 -0
- package/dist/chunks/cli-1.1.29-q9atby2h.mjs +2 -0
- package/dist/chunks/cli-1.1.29-qqcjvb8v.mjs +3 -0
- package/dist/chunks/cli-1.1.29-qyg6dttd.mjs +2 -0
- package/dist/chunks/cli-1.1.29-qz5zy9rd.mjs +4 -0
- package/dist/chunks/cli-1.1.29-ra7737c1.mjs +2 -0
- package/dist/chunks/cli-1.1.29-rah0vfkh.mjs +1 -0
- package/dist/chunks/cli-1.1.29-rbtgtxtr.mjs +2 -0
- package/dist/chunks/cli-1.1.29-rcf2pvf2.mjs +2 -0
- package/dist/chunks/cli-1.1.29-rd1s45en.mjs +24 -0
- package/dist/chunks/cli-1.1.29-rfz718th.mjs +6 -0
- package/dist/chunks/cli-1.1.29-rn9a55ga.mjs +2 -0
- package/dist/chunks/cli-1.1.29-rnrvwymv.mjs +2 -0
- package/dist/chunks/cli-1.1.29-rse83jw9.mjs +2 -0
- package/dist/chunks/cli-1.1.29-s7njwf37.mjs +15 -0
- package/dist/chunks/cli-1.1.29-s8attyep.mjs +2 -0
- package/dist/chunks/cli-1.1.29-sb5dzja5.mjs +2 -0
- package/dist/chunks/cli-1.1.29-scf5dmr2.mjs +50 -0
- package/dist/chunks/cli-1.1.29-sgfpybka.mjs +2 -0
- package/dist/chunks/cli-1.1.29-smn5dd7n.mjs +2 -0
- package/dist/chunks/cli-1.1.29-snxnt4nr.mjs +2 -0
- package/dist/chunks/cli-1.1.29-t64smfse.mjs +2 -0
- package/dist/chunks/cli-1.1.29-tf20f72b.mjs +2 -0
- package/dist/chunks/cli-1.1.29-tg84q1yd.mjs +20 -0
- package/dist/chunks/cli-1.1.29-tyew653x.mjs +3 -0
- package/dist/chunks/cli-1.1.29-tz817yh8.mjs +2 -0
- package/dist/chunks/cli-1.1.29-v4wsvara.mjs +2 -0
- package/dist/chunks/cli-1.1.29-v6y1118n.mjs +4 -0
- package/dist/chunks/cli-1.1.29-v9bvr1aw.mjs +5 -0
- package/dist/chunks/cli-1.1.29-vd6b2ckm.mjs +2 -0
- package/dist/chunks/cli-1.1.29-vmmpxa0v.mjs +2 -0
- package/dist/chunks/cli-1.1.29-vp3z0245.mjs +2 -0
- package/dist/chunks/cli-1.1.29-vr34j6s2.mjs +3 -0
- package/dist/chunks/cli-1.1.29-vv1sy2ya.mjs +25 -0
- package/dist/chunks/cli-1.1.29-vws4vx43.mjs +2 -0
- package/dist/chunks/cli-1.1.29-vybx7rvs.mjs +10 -0
- package/dist/chunks/cli-1.1.29-we6vghby.mjs +2 -0
- package/dist/chunks/cli-1.1.29-wscghnfp.mjs +2 -0
- package/dist/chunks/cli-1.1.29-wv5r6reg.mjs +2 -0
- package/dist/chunks/cli-1.1.29-wxg06wve.mjs +2 -0
- package/dist/chunks/cli-1.1.29-xfcy5e42.mjs +2 -0
- package/dist/chunks/cli-1.1.29-xfhxkzzh.mjs +2 -0
- package/dist/chunks/cli-1.1.29-xftqnjy0.mjs +4 -0
- package/dist/chunks/cli-1.1.29-xjh2k6ex.mjs +3 -0
- package/dist/chunks/cli-1.1.29-xrwps5rg.mjs +3 -0
- package/dist/chunks/cli-1.1.29-y3v15ehz.mjs +2 -0
- package/dist/chunks/cli-1.1.29-yddrcp23.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ykat6ksh.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ymcd1d05.mjs +2 -0
- package/dist/chunks/cli-1.1.29-ypgjht1s.mjs +2 -0
- package/dist/chunks/cli-1.1.29-yv3r7f00.mjs +2 -0
- package/dist/chunks/cli-1.1.29-zb1qmpq0.mjs +45 -0
- package/dist/chunks/cli-1.1.29-ze1sanxc.mjs +2 -0
- package/dist/chunks/cli-1.1.29-zf1md9se.mjs +2 -0
- package/dist/chunks/cli-1.1.29-zh2qqpcy.mjs +2 -0
- package/dist/chunks/cli-1.1.29-zqccyb2h.mjs +2 -0
- package/dist/chunks/client-1.1.29-abnv29yp.mjs +1 -0
- package/dist/chunks/color-1.1.29-h2d0ea1p.mjs +1 -0
- package/dist/chunks/compact-1.1.29-071ysk4h.mjs +3 -0
- package/dist/chunks/config-1.1.29-jhy41xna.mjs +1 -0
- package/dist/chunks/config-1.1.29-wzvad2ns.mjs +1 -0
- package/dist/chunks/constants-1.1.29-5536grwb.mjs +1 -0
- package/dist/chunks/context-1.1.29-qxvktpnx.mjs +1 -0
- package/dist/chunks/context-noninteractive-1.1.29-rypt767r.mjs +1 -0
- package/dist/chunks/conversation-1.1.29-yr51bv23.mjs +1 -0
- package/dist/chunks/copilotHeaders-1.1.29-h3z6avxk.mjs +1 -0
- package/dist/chunks/copy-1.1.29-ze2g86qn.mjs +9 -0
- package/dist/chunks/cost-1.1.29-bn9nefss.mjs +1 -0
- package/dist/chunks/createSSHSession-1.1.29-5fe73ss4.mjs +1 -0
- package/dist/chunks/createSession-1.1.29-rscwvwx3.mjs +1 -0
- package/dist/chunks/debug-1.1.29-hsa8740f.mjs +1 -0
- package/dist/chunks/defaultActionDeps-1.1.29-nrkya6cw.mjs +1534 -0
- package/dist/chunks/desktop-1.1.29-wzh1a3fx.mjs +1 -0
- package/dist/chunks/detectRepository-1.1.29-tgssqtyy.mjs +1 -0
- package/dist/chunks/detection-1.1.29-f3hp0x2s.mjs +1 -0
- package/dist/chunks/diff-1.1.29-h7fm7n04.mjs +1 -0
- package/dist/chunks/doctor-1.1.29-5ccr1m55.mjs +1 -0
- package/dist/chunks/doctorDiagnostic-1.1.29-vmnf895k.mjs +1 -0
- package/dist/chunks/earlyInput-1.1.29-d0ktjabf.mjs +1 -0
- package/dist/chunks/effort-1.1.29-xxzxaym4.mjs +13 -0
- package/dist/chunks/engine-1.1.29-9ekq4v2g.mjs +1 -0
- package/dist/chunks/envLessBridgeConfig-1.1.29-8c9jjpjy.mjs +1 -0
- package/dist/chunks/envUtils-1.1.29-593t90q5.mjs +1 -0
- package/dist/chunks/environmentSelection-1.1.29-g5qpphd9.mjs +1 -0
- package/dist/chunks/environments-1.1.29-x2aa2eet.mjs +1 -0
- package/dist/chunks/errors-1.1.29-jgx19cvb.mjs +1 -0
- package/dist/chunks/exampleCommands-1.1.29-wxzjn2xw.mjs +1 -0
- package/dist/chunks/execFileNoThrow-1.1.29-hexzsnhv.mjs +1 -0
- package/dist/chunks/exit-1.1.29-h788x2yv.mjs +1 -0
- package/dist/chunks/explorer-1.1.29-wtr7bga1.mjs +1 -0
- package/dist/chunks/export-1.1.29-42ve1rgm.mjs +2 -0
- package/dist/chunks/extra-usage-1.1.29-y1e1m369.mjs +1 -0
- package/dist/chunks/extra-usage-noninteractive-1.1.29-gq3g80nm.mjs +1 -0
- package/dist/chunks/fast-1.1.29-h6r42366.mjs +1 -0
- package/dist/chunks/feedback-1.1.29-st43crhj.mjs +14 -0
- package/dist/chunks/firstPartyEventLogger-1.1.29-ckcepqgc.mjs +1 -0
- package/dist/chunks/git-1.1.29-j563zwhc.mjs +1 -0
- package/dist/chunks/githubModelsCredentials-1.1.29-vk8m9ket.mjs +1 -0
- package/dist/chunks/goal-1.1.29-p7hzmh24.mjs +4 -0
- package/dist/chunks/growthbook-1.1.29-3549rcjz.mjs +1 -0
- package/dist/chunks/headless-1.1.29-5vx8fpbe.mjs +2 -0
- package/dist/chunks/heapdump-1.1.29-rp203g47.mjs +6 -0
- package/dist/chunks/help-1.1.29-3y5b0e2g.mjs +1 -0
- package/dist/chunks/hookChains-1.1.29-ga4rejj3.mjs +3 -0
- package/dist/chunks/hooks-1.1.29-b38tdtzk.mjs +1 -0
- package/dist/chunks/hooks-1.1.29-ygwx2459.mjs +79 -0
- package/dist/chunks/ide-1.1.29-67nmghjh.mjs +3 -0
- package/dist/chunks/image-processor-napi-1.1.29-z1xa8jsd.mjs +1 -0
- package/dist/chunks/import-1.1.29-627psf8x.mjs +261 -0
- package/dist/chunks/inboundAttachments-1.1.29-9dtr0d37.mjs +1 -0
- package/dist/chunks/index-1.1.29-101dgedk.mjs +9 -0
- package/dist/chunks/index-1.1.29-3mknam1s.mjs +1 -0
- package/dist/chunks/index-1.1.29-3rjcfsf3.mjs +1 -0
- package/dist/chunks/index-1.1.29-4ye92se8.mjs +1 -0
- package/dist/chunks/index-1.1.29-568ncn0w.mjs +1 -0
- package/dist/chunks/index-1.1.29-5zbg7qfm.mjs +1 -0
- package/dist/chunks/index-1.1.29-6pe6cr8p.mjs +1 -0
- package/dist/chunks/index-1.1.29-cpvbfs32.mjs +5 -0
- package/dist/chunks/index-1.1.29-e90xbdas.mjs +23 -0
- package/dist/chunks/index-1.1.29-efsdrxv3.mjs +1 -0
- package/dist/chunks/index-1.1.29-gy6pctgv.mjs +1 -0
- package/dist/chunks/index-1.1.29-jghqwznd.mjs +1 -0
- package/dist/chunks/index-1.1.29-k42kw8w5.mjs +1 -0
- package/dist/chunks/index-1.1.29-kvaapa6z.mjs +1 -0
- package/dist/chunks/index-1.1.29-mwtftmry.mjs +9 -0
- package/dist/chunks/index-1.1.29-q7ydx0h2.mjs +2 -0
- package/dist/chunks/index-1.1.29-r4y0qs9x.mjs +1 -0
- package/dist/chunks/index-1.1.29-rgsmqr6q.mjs +1 -0
- package/dist/chunks/index-1.1.29-tfnnf0k2.mjs +1 -0
- package/dist/chunks/index-1.1.29-v640rrh6.mjs +1 -0
- package/dist/chunks/index-1.1.29-v7vcnkxr.mjs +30 -0
- package/dist/chunks/index-1.1.29-xwekv48p.mjs +2 -0
- package/dist/chunks/index-1.1.29-z8a1fx6p.mjs +1 -0
- package/dist/chunks/init-1.1.29-h07twh7g.mjs +1 -0
- package/dist/chunks/initReplBridge-1.1.29-ae1e53vd.mjs +1 -0
- package/dist/chunks/ink-1.1.29-jkk9zn2g.mjs +1 -0
- package/dist/chunks/insights-1.1.29-awyethqq.mjs +870 -0
- package/dist/chunks/install-1.1.29-yhkejpep.mjs +1 -0
- package/dist/chunks/install-github-app-1.1.29-jsrj24s4.mjs +149 -0
- package/dist/chunks/install-slack-app-1.1.29-gts768ac.mjs +1 -0
- package/dist/chunks/instrumentation-1.1.29-mhgk5gm7.mjs +1 -0
- package/dist/chunks/interactiveHelpers-1.1.29-nz689brn.mjs +1 -0
- package/dist/chunks/keybindings-1.1.29-gh9axh60.mjs +2 -0
- package/dist/chunks/knowledge-1.1.29-hfwtr4gz.mjs +2 -0
- package/dist/chunks/latestVersionCache-1.1.29-hfeprnvk.mjs +1 -0
- package/dist/chunks/loadAgentsDir-1.1.29-m2np7bm8.mjs +1 -0
- package/dist/chunks/loadPluginHooks-1.1.29-zpz05b3t.mjs +1 -0
- package/dist/chunks/log-1.1.29-fw86q3jh.mjs +1 -0
- package/dist/chunks/main-1.1.29-w3b4z9p1.mjs +1 -0
- package/dist/chunks/managedEnv-1.1.29-r7qb1f8v.mjs +1 -0
- package/dist/chunks/mcp-1.1.29-jyq80had.mjs +4 -0
- package/dist/chunks/mcp-1.1.29-rj6rmrwj.mjs +17 -0
- package/dist/chunks/mcp-1.1.29-v1dw736k.mjs +1 -0
- package/dist/chunks/mcpb-1.1.29-2eqhsr4h.mjs +1 -0
- package/dist/chunks/memory-1.1.29-f9bfe5q1.mjs +77 -0
- package/dist/chunks/model-1.1.29-3cbf7nj8.mjs +1 -0
- package/dist/chunks/model-1.1.29-65mwx0jt.mjs +2 -0
- package/dist/chunks/node-1.1.29-9gdbqzzb.mjs +15 -0
- package/dist/chunks/node-1.1.29-g8j45zsn.mjs +1 -0
- package/dist/chunks/oauth-1.1.29-rzdyddzx.mjs +1 -0
- package/dist/chunks/openaiShim-1.1.29-3v0weah8.mjs +14 -0
- package/dist/chunks/output-style-1.1.29-kh5kpq0r.mjs +1 -0
- package/dist/chunks/package-OS7RONXY-1.1.29-wartca0p.mjs +1 -0
- package/dist/chunks/parseConnectUrl-1.1.29-1pk3egnf.mjs +1 -0
- package/dist/chunks/parser-1.1.29-j664c2gz.mjs +1 -0
- package/dist/chunks/passes-1.1.29-daz9sxtn.mjs +1 -0
- package/dist/chunks/permissions-1.1.29-2t8t5tw7.mjs +1 -0
- package/dist/chunks/permissions-1.1.29-yrdqzbx5.mjs +3 -0
- package/dist/chunks/plan-1.1.29-bz008b9p.mjs +1 -0
- package/dist/chunks/plist-1.1.29-35acgftn.mjs +1 -0
- package/dist/chunks/plugin-1.1.29-8f04719q.mjs +29 -0
- package/dist/chunks/pluginStartupCheck-1.1.29-xb113h6m.mjs +1 -0
- package/dist/chunks/plugins-1.1.29-qvtkwvvz.mjs +9 -0
- package/dist/chunks/preActionHook-1.1.29-y3pz26pa.mjs +2 -0
- package/dist/chunks/print-1.1.29-efswnrv9.mjs +57 -0
- package/dist/chunks/process-1.1.29-58f1e2bp.mjs +1 -0
- package/dist/chunks/processBashCommand-1.1.29-d1jsv2w2.mjs +1 -0
- package/dist/chunks/processSlashCommand-1.1.29-b3y0q14a.mjs +9 -0
- package/dist/chunks/prompt-1.1.29-62tsknn0.mjs +1 -0
- package/dist/chunks/prompt-1.1.29-jhbfphh7.mjs +1 -0
- package/dist/chunks/prompts-1.1.29-3z4c3ek4.mjs +1 -0
- package/dist/chunks/protocolHandler-1.1.29-rdwh19s1.mjs +13 -0
- package/dist/chunks/provider-1.1.29-3zvq773g.mjs +2 -0
- package/dist/chunks/providerProfiles-1.1.29-607et4qp.mjs +1 -0
- package/dist/chunks/providerValidation-1.1.29-yenzyrfm.mjs +6 -0
- package/dist/chunks/rate-limit-options-1.1.29-298ja1r1.mjs +1 -0
- package/dist/chunks/registerSubcommands-1.1.29-4jd1spvm.mjs +26 -0
- package/dist/chunks/registry-1.1.29-m25stkr0.mjs +1 -0
- package/dist/chunks/release-notes-1.1.29-22baamfx.mjs +5 -0
- package/dist/chunks/reload-plugins-1.1.29-phv53y08.mjs +2 -0
- package/dist/chunks/remote-env-1.1.29-2ey2vymh.mjs +1 -0
- package/dist/chunks/remoteBridgeCore-1.1.29-eafsxes0.mjs +1 -0
- package/dist/chunks/remoteSession-1.1.29-hs2wyhc3.mjs +1 -0
- package/dist/chunks/rename-1.1.29-75kb3avp.mjs +1 -0
- package/dist/chunks/replBridgeHandle-1.1.29-dz6hhgez.mjs +1 -0
- package/dist/chunks/replLauncher-1.1.29-09a6pk1q.mjs +1 -0
- package/dist/chunks/resume-1.1.29-685rb92g.mjs +2 -0
- package/dist/chunks/rewind-1.1.29-7nw7f08p.mjs +1 -0
- package/dist/chunks/rootOptions-1.1.29-9cr8rvbr.mjs +1 -0
- package/dist/chunks/runWorkflowHeadless-1.1.29-xmaezf6n.mjs +10 -0
- package/dist/chunks/sandbox-adapter-1.1.29-db9nwpd6.mjs +1 -0
- package/dist/chunks/sandbox-toggle-1.1.29-wzeynybm.mjs +1 -0
- package/dist/chunks/session-1.1.29-m8fppsh2.mjs +2 -0
- package/dist/chunks/sessionDiscovery-1.1.29-ast9gceq.mjs +1 -0
- package/dist/chunks/sessionFileAccessHooks-1.1.29-h1eqvpq2.mjs +1 -0
- package/dist/chunks/sessionStorage-1.1.29-aykc0gmj.mjs +1 -0
- package/dist/chunks/settings-1.1.29-0c2fyzj5.mjs +1 -0
- package/dist/chunks/setup-1.1.29-y2wjm0r9.mjs +12 -0
- package/dist/chunks/sinks-1.1.29-5rs2f8yn.mjs +1 -0
- package/dist/chunks/skills-1.1.29-cp2813x4.mjs +1 -0
- package/dist/chunks/startupProfiler-1.1.29-kh45g8fh.mjs +1 -0
- package/dist/chunks/startupUpdateCheck-1.1.29-82s33sqm.mjs +1 -0
- package/dist/chunks/state-1.1.29-p67vvgkh.mjs +1 -0
- package/dist/chunks/stats-1.1.29-by56pge2.mjs +1 -0
- package/dist/chunks/status-1.1.29-hw493zns.mjs +1 -0
- package/dist/chunks/stickers-1.1.29-8s1sjy27.mjs +1 -0
- package/dist/chunks/subprocessEnv-1.1.29-qz9p5e81.mjs +1 -0
- package/dist/chunks/tasks-1.1.29-337vzgbz.mjs +1 -0
- package/dist/chunks/teamHelpers-1.1.29-85qvaaf6.mjs +1 -0
- package/dist/chunks/teammateModeSnapshot-1.1.29-k78c522w.mjs +1 -0
- package/dist/chunks/teleport-1.1.29-c44n1v9b.mjs +1 -0
- package/dist/chunks/terminalSetup-1.1.29-rrwvk8ab.mjs +1 -0
- package/dist/chunks/theme-1.1.29-y04xza5k.mjs +1 -0
- package/dist/chunks/thinkback-1.1.29-s3hjbm7q.mjs +1 -0
- package/dist/chunks/thinkback-play-1.1.29-2bhrtfq9.mjs +1 -0
- package/dist/chunks/toolPool-1.1.29-gfpcfj2x.mjs +1 -0
- package/dist/chunks/toolSearch-1.1.29-vfnsb7j0.mjs +1 -0
- package/dist/chunks/tools-1.1.29-w11mxfwv.mjs +1 -0
- package/dist/chunks/trustedDevice-1.1.29-qwyypx3m.mjs +1 -0
- package/dist/chunks/turndown.cjs-1.1.29-yxqqz6t4.mjs +69 -0
- package/dist/chunks/types-1.1.29-2v59e63g.mjs +1 -0
- package/dist/chunks/ultrareviewCommand-1.1.29-a115pcna.mjs +4 -0
- package/dist/chunks/update-1.1.29-3zmwqt73.mjs +72 -0
- package/dist/chunks/upgrade-1.1.29-xpe0b67z.mjs +1 -0
- package/dist/chunks/upload-1.1.29-d3tkf4nc.mjs +7 -0
- package/dist/chunks/upstreamproxy-1.1.29-fqatj32w.mjs +14 -0
- package/dist/chunks/url-handler-napi-1.1.29-9w1d0vdc.mjs +1 -0
- package/dist/chunks/usage-1.1.29-6mr5tsjn.mjs +1 -0
- package/dist/chunks/util-1.1.29-94aahqex.mjs +1 -0
- package/dist/chunks/utils-1.1.29-jg1xnwx8.mjs +1 -0
- package/dist/chunks/vim-1.1.29-hf5m1934.mjs +1 -0
- package/dist/chunks/watchLoop-1.1.29-7z8smp5m.mjs +13 -0
- package/dist/chunks/watcher-1.1.29-qeqe2296.mjs +1 -0
- package/dist/chunks/wiki-1.1.29-cr99gpcx.mjs +132 -0
- package/dist/chunks/workflows-1.1.29-v6f0e3am.mjs +1 -0
- package/dist/chunks/worktree-1.1.29-qf1zfstj.mjs +1 -0
- package/dist/chunks/worktreeModeEnabled-1.1.29-qxpsmfqy.mjs +1 -0
- package/dist/chunks/wrapper-1.1.29-b7y6s4vd.mjs +7 -0
- package/dist/cli.mjs +2 -2
- package/package.json +9 -9
- package/dist/chunks/AgentTool-1.1.28-hdgcephe.mjs +0 -1
- package/dist/chunks/App-1.1.28-rdhr58j6.mjs +0 -1
- package/dist/chunks/ApproveApiKey-1.1.28-dn460p70.mjs +0 -1
- package/dist/chunks/AssistantSessionChooser-1.1.28-k16de89c.mjs +0 -1
- package/dist/chunks/AutoModeOptInDialog-1.1.28-19td2te8.mjs +0 -1
- package/dist/chunks/BypassPermissionsModeDialog-1.1.28-011pgh7b.mjs +0 -1
- package/dist/chunks/ClaudeMdExternalIncludesDialog-1.1.28-ych5693j.mjs +0 -1
- package/dist/chunks/ConsoleOAuthFlow-1.1.28-7p5bx0b5.mjs +0 -1
- package/dist/chunks/DiffDialog-1.1.28-nkct57y5.mjs +0 -6
- package/dist/chunks/Doctor-1.1.28-xerfvzx5.mjs +0 -1
- package/dist/chunks/ExplorerDialog-1.1.28-ne9ftnxx.mjs +0 -6
- package/dist/chunks/ITermBackend-1.1.28-07enf929.mjs +0 -1
- package/dist/chunks/InvalidConfigDialog-1.1.28-mcsd53vd.mjs +0 -1
- package/dist/chunks/InvalidSettingsDialog-1.1.28-rmrgfzbv.mjs +0 -1
- package/dist/chunks/MigrationDialog-1.1.28-w5mh2w2b.mjs +0 -1
- package/dist/chunks/Onboarding-1.1.28-7q9nc8c9.mjs +0 -1
- package/dist/chunks/ProviderManager-1.1.28-08ytr6ma.mjs +0 -1
- package/dist/chunks/REPL-1.1.28-pxy1ag0k.mjs +0 -1
- package/dist/chunks/ResumeConversation-1.1.28-b2pk1nan.mjs +0 -1
- package/dist/chunks/SnapshotUpdateDialog-1.1.28-xa772x92.mjs +0 -1
- package/dist/chunks/TeleportProgress-1.1.28-6x6ca6kq.mjs +0 -1
- package/dist/chunks/TeleportRepoMismatchDialog-1.1.28-vy7p3j3e.mjs +0 -1
- package/dist/chunks/TeleportResumeWrapper-1.1.28-egnv67by.mjs +0 -1
- package/dist/chunks/TmuxBackend-1.1.28-y1ss2e0h.mjs +0 -9
- package/dist/chunks/ToolSearchTool-1.1.28-7w099741.mjs +0 -1
- package/dist/chunks/TrustDialog-1.1.28-49aey2f6.mjs +0 -1
- package/dist/chunks/activeProvider-1.1.28-gw9e23bc.mjs +0 -1
- package/dist/chunks/add-dir-1.1.28-5j989gf2.mjs +0 -1
- package/dist/chunks/agentTypes-1.1.28-hxk0wpj5.mjs +0 -1
- package/dist/chunks/agents-1.1.28-3yth9sa4.mjs +0 -110
- package/dist/chunks/agents-1.1.28-4qdh001q.mjs +0 -3
- package/dist/chunks/api-1.1.28-znpy0eyy.mjs +0 -1
- package/dist/chunks/asciicast-1.1.28-r6dsend4.mjs +0 -1
- package/dist/chunks/assistant-1.1.28-16hn1f6b.mjs +0 -1
- package/dist/chunks/auth-1.1.28-bw7dane8.mjs +0 -1
- package/dist/chunks/auth-1.1.28-ht6j3ag3.mjs +0 -1
- package/dist/chunks/autoMode-1.1.28-nyaf1s0s.mjs +0 -52
- package/dist/chunks/autoModeSetup-1.1.28-sjjeha2m.mjs +0 -44
- package/dist/chunks/autoUpdater-1.1.28-070wmr6y.mjs +0 -1
- package/dist/chunks/backgroundHousekeeping-1.1.28-y5mjznxx.mjs +0 -1
- package/dist/chunks/branch-1.1.28-5d97ysjr.mjs +0 -4
- package/dist/chunks/bridge-1.1.28-62qv0wgq.mjs +0 -2
- package/dist/chunks/bridgeConfig-1.1.28-m986jcxg.mjs +0 -1
- package/dist/chunks/bridgeEnabled-1.1.28-0fs5tkxx.mjs +0 -1
- package/dist/chunks/bridgeMain-1.1.28-pyr5gvmx.mjs +0 -88
- package/dist/chunks/bridgePointer-1.1.28-wpzz2yca.mjs +0 -1
- package/dist/chunks/btw-1.1.28-p1tk901s.mjs +0 -1
- package/dist/chunks/buddy-1.1.28-thrnzpdp.mjs +0 -3
- package/dist/chunks/cache-probe-1.1.28-bb4xsnev.mjs +0 -21
- package/dist/chunks/cacheStats-1.1.28-9p9fmxas.mjs +0 -4
- package/dist/chunks/caches-1.1.28-t6dq2xtp.mjs +0 -1
- package/dist/chunks/cd-1.1.28-84z1kqam.mjs +0 -3
- package/dist/chunks/claudeDesktop-1.1.28-3x0y2w87.mjs +0 -1
- package/dist/chunks/claudemd-1.1.28-skmb6ar5.mjs +0 -1
- package/dist/chunks/clear-1.1.28-78f1rnc5.mjs +0 -1
- package/dist/chunks/clearTerminal-1.1.28-sx5qqtxb.mjs +0 -1
- package/dist/chunks/cli-1.1.28-01g60h7m.mjs +0 -2
- package/dist/chunks/cli-1.1.28-040xb4f8.mjs +0 -2
- package/dist/chunks/cli-1.1.28-0c0kb6x2.mjs +0 -24
- package/dist/chunks/cli-1.1.28-0njtm2nf.mjs +0 -60
- package/dist/chunks/cli-1.1.28-0vgve5rw.mjs +0 -24
- package/dist/chunks/cli-1.1.28-12g8qyfk.mjs +0 -58
- package/dist/chunks/cli-1.1.28-130w2y17.mjs +0 -50
- package/dist/chunks/cli-1.1.28-13j6r7pz.mjs +0 -2
- package/dist/chunks/cli-1.1.28-14abe08r.mjs +0 -4
- package/dist/chunks/cli-1.1.28-1jd8x2af.mjs +0 -2
- package/dist/chunks/cli-1.1.28-1mscaejt.mjs +0 -2
- package/dist/chunks/cli-1.1.28-1q409efb.mjs +0 -2
- package/dist/chunks/cli-1.1.28-1rrn1mhr.mjs +0 -2
- package/dist/chunks/cli-1.1.28-1vrff9a3.mjs +0 -5
- package/dist/chunks/cli-1.1.28-2arzkhzs.mjs +0 -2
- package/dist/chunks/cli-1.1.28-2dafhgjv.mjs +0 -34
- package/dist/chunks/cli-1.1.28-2esp2ssp.mjs +0 -6
- package/dist/chunks/cli-1.1.28-2q7dztmb.mjs +0 -2
- package/dist/chunks/cli-1.1.28-2wem9fnx.mjs +0 -2
- package/dist/chunks/cli-1.1.28-2ykcw73j.mjs +0 -2
- package/dist/chunks/cli-1.1.28-2zhmwh7t.mjs +0 -2
- package/dist/chunks/cli-1.1.28-30yw5q4z.mjs +0 -4
- package/dist/chunks/cli-1.1.28-347ygvzg.mjs +0 -6
- package/dist/chunks/cli-1.1.28-36891pwy.mjs +0 -2
- package/dist/chunks/cli-1.1.28-36y6830c.mjs +0 -2
- package/dist/chunks/cli-1.1.28-37rkgevh.mjs +0 -2
- package/dist/chunks/cli-1.1.28-3bj091x6.mjs +0 -2
- package/dist/chunks/cli-1.1.28-3fssr567.mjs +0 -2
- package/dist/chunks/cli-1.1.28-3p6j7k4a.mjs +0 -2
- package/dist/chunks/cli-1.1.28-4kda7s33.mjs +0 -2
- package/dist/chunks/cli-1.1.28-4kxqqtpz.mjs +0 -2
- package/dist/chunks/cli-1.1.28-4mpm44jj.mjs +0 -9
- package/dist/chunks/cli-1.1.28-4qh42y9g.mjs +0 -2
- package/dist/chunks/cli-1.1.28-4sx3zr2c.mjs +0 -3
- package/dist/chunks/cli-1.1.28-58rs1ja0.mjs +0 -2
- package/dist/chunks/cli-1.1.28-5edzsdcr.mjs +0 -6
- package/dist/chunks/cli-1.1.28-5y1xeh89.mjs +0 -206
- package/dist/chunks/cli-1.1.28-638dshxx.mjs +0 -42
- package/dist/chunks/cli-1.1.28-6bc84c0n.mjs +0 -2
- package/dist/chunks/cli-1.1.28-6x9c71q9.mjs +0 -2
- package/dist/chunks/cli-1.1.28-6y7vtevf.mjs +0 -17
- package/dist/chunks/cli-1.1.28-75thpvfa.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7amn29ks.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7e3nqd5c.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7fz4fqgd.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7g65bppm.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7nye6zs7.mjs +0 -4
- package/dist/chunks/cli-1.1.28-7pmtq82j.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7vvtkeeh.mjs +0 -25
- package/dist/chunks/cli-1.1.28-7x94aewp.mjs +0 -2
- package/dist/chunks/cli-1.1.28-7zpfvkxq.mjs +0 -2
- package/dist/chunks/cli-1.1.28-81p0zmxc.mjs +0 -2
- package/dist/chunks/cli-1.1.28-83k0knzj.mjs +0 -2
- package/dist/chunks/cli-1.1.28-8ahmbnjh.mjs +0 -2
- package/dist/chunks/cli-1.1.28-8avwqt1z.mjs +0 -4
- package/dist/chunks/cli-1.1.28-8jrfznkw.mjs +0 -2
- package/dist/chunks/cli-1.1.28-8v2vx373.mjs +0 -2
- package/dist/chunks/cli-1.1.28-943993zt.mjs +0 -2
- package/dist/chunks/cli-1.1.28-94sk1z8g.mjs +0 -5
- package/dist/chunks/cli-1.1.28-95fs05hq.mjs +0 -2
- package/dist/chunks/cli-1.1.28-9e74kqtd.mjs +0 -2
- package/dist/chunks/cli-1.1.28-9s4pee5a.mjs +0 -2
- package/dist/chunks/cli-1.1.28-a00k75hj.mjs +0 -2
- package/dist/chunks/cli-1.1.28-a79xcdg3.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ad15rvp0.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ak2bzv1v.mjs +0 -16
- package/dist/chunks/cli-1.1.28-atrbc4s7.mjs +0 -2
- package/dist/chunks/cli-1.1.28-avxe0zxq.mjs +0 -15
- package/dist/chunks/cli-1.1.28-b2jq83aj.mjs +0 -15
- package/dist/chunks/cli-1.1.28-be8cxh1e.mjs +0 -2
- package/dist/chunks/cli-1.1.28-bfs5hmfp.mjs +0 -3
- package/dist/chunks/cli-1.1.28-bqtpnyqr.mjs +0 -2
- package/dist/chunks/cli-1.1.28-brh6rw23.mjs +0 -2
- package/dist/chunks/cli-1.1.28-bsqgt8m4.mjs +0 -2
- package/dist/chunks/cli-1.1.28-bwbz3v3j.mjs +0 -2
- package/dist/chunks/cli-1.1.28-bwgr7j8z.mjs +0 -2
- package/dist/chunks/cli-1.1.28-by5acg3a.mjs +0 -2
- package/dist/chunks/cli-1.1.28-c9nh8cpr.mjs +0 -2
- package/dist/chunks/cli-1.1.28-cb5wemmj.mjs +0 -7
- package/dist/chunks/cli-1.1.28-cfq2wwx5.mjs +0 -2
- package/dist/chunks/cli-1.1.28-cyrrpdkd.mjs +0 -2
- package/dist/chunks/cli-1.1.28-d5h3kve6.mjs +0 -24
- package/dist/chunks/cli-1.1.28-davs3ve8.mjs +0 -58
- package/dist/chunks/cli-1.1.28-denmqz0s.mjs +0 -2
- package/dist/chunks/cli-1.1.28-dqsxqszf.mjs +0 -2
- package/dist/chunks/cli-1.1.28-dy3tnnyd.mjs +0 -3
- package/dist/chunks/cli-1.1.28-e2mfhtpx.mjs +0 -2
- package/dist/chunks/cli-1.1.28-egskcwa5.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ek683x01.mjs +0 -2
- package/dist/chunks/cli-1.1.28-epzkhgww.mjs +0 -2
- package/dist/chunks/cli-1.1.28-erqn7gwg.mjs +0 -6
- package/dist/chunks/cli-1.1.28-es8var4t.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ev0gfjgf.mjs +0 -24
- package/dist/chunks/cli-1.1.28-evvcbjb6.mjs +0 -2
- package/dist/chunks/cli-1.1.28-f0vrbk1t.mjs +0 -2
- package/dist/chunks/cli-1.1.28-f1n8p9v2.mjs +0 -12
- package/dist/chunks/cli-1.1.28-f3rdt4zg.mjs +0 -2
- package/dist/chunks/cli-1.1.28-f8av9yzr.mjs +0 -39
- package/dist/chunks/cli-1.1.28-fetsedc8.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ffy07rnm.mjs +0 -2
- package/dist/chunks/cli-1.1.28-fjbefwwe.mjs +0 -2
- package/dist/chunks/cli-1.1.28-fnd6z5bq.mjs +0 -2
- package/dist/chunks/cli-1.1.28-fv1twt9b.mjs +0 -8
- package/dist/chunks/cli-1.1.28-h00s5n5y.mjs +0 -2
- package/dist/chunks/cli-1.1.28-h7p3dmnv.mjs +0 -2
- package/dist/chunks/cli-1.1.28-hb02sa63.mjs +0 -2
- package/dist/chunks/cli-1.1.28-hkfays5k.mjs +0 -2
- package/dist/chunks/cli-1.1.28-hx5j3q23.mjs +0 -17
- package/dist/chunks/cli-1.1.28-hxbkncxe.mjs +0 -2
- package/dist/chunks/cli-1.1.28-hyd7kkyr.mjs +0 -2
- package/dist/chunks/cli-1.1.28-j5m0kc75.mjs +0 -3
- package/dist/chunks/cli-1.1.28-j6nysca9.mjs +0 -2
- package/dist/chunks/cli-1.1.28-jqnzq23v.mjs +0 -3
- package/dist/chunks/cli-1.1.28-jr3jtfkf.mjs +0 -2
- package/dist/chunks/cli-1.1.28-jwg70mjs.mjs +0 -2
- package/dist/chunks/cli-1.1.28-k0ewezmj.mjs +0 -20
- package/dist/chunks/cli-1.1.28-k10f3f7z.mjs +0 -3
- package/dist/chunks/cli-1.1.28-k7pnt9ba.mjs +0 -2
- package/dist/chunks/cli-1.1.28-kaddwxsy.mjs +0 -2
- package/dist/chunks/cli-1.1.28-kc8f0nz7.mjs +0 -3
- package/dist/chunks/cli-1.1.28-khcgtk4a.mjs +0 -2
- package/dist/chunks/cli-1.1.28-knfg26kb.mjs +0 -2
- package/dist/chunks/cli-1.1.28-m6k4d2wx.mjs +0 -2
- package/dist/chunks/cli-1.1.28-mdexghj2.mjs +0 -2
- package/dist/chunks/cli-1.1.28-mk8zwqb2.mjs +0 -4
- package/dist/chunks/cli-1.1.28-mkm05wf9.mjs +0 -2
- package/dist/chunks/cli-1.1.28-mpjz8znf.mjs +0 -3
- package/dist/chunks/cli-1.1.28-mqmy0gy0.mjs +0 -2
- package/dist/chunks/cli-1.1.28-mvkxhjmj.mjs +0 -2
- package/dist/chunks/cli-1.1.28-mx413hqd.mjs +0 -3
- package/dist/chunks/cli-1.1.28-n2jx5w3n.mjs +0 -2
- package/dist/chunks/cli-1.1.28-n7v87yyn.mjs +0 -2
- package/dist/chunks/cli-1.1.28-n8d1x31e.mjs +0 -2
- package/dist/chunks/cli-1.1.28-neqd5cwa.mjs +0 -2
- package/dist/chunks/cli-1.1.28-nq2qxnzx.mjs +0 -10
- package/dist/chunks/cli-1.1.28-nqjbqqb6.mjs +0 -4
- package/dist/chunks/cli-1.1.28-nyvjfkx6.mjs +0 -2
- package/dist/chunks/cli-1.1.28-p11zcjmv.mjs +0 -2
- package/dist/chunks/cli-1.1.28-pabfwpqr.mjs +0 -2
- package/dist/chunks/cli-1.1.28-pdxwmetp.mjs +0 -25
- package/dist/chunks/cli-1.1.28-pfnc9p9n.mjs +0 -2
- package/dist/chunks/cli-1.1.28-prd0t983.mjs +0 -9
- package/dist/chunks/cli-1.1.28-pykx8k1j.mjs +0 -4
- package/dist/chunks/cli-1.1.28-q14qmewe.mjs +0 -2
- package/dist/chunks/cli-1.1.28-q43r6snq.mjs +0 -2
- package/dist/chunks/cli-1.1.28-q6dv65zx.mjs +0 -2
- package/dist/chunks/cli-1.1.28-qb921m5a.mjs +0 -3
- package/dist/chunks/cli-1.1.28-qf1qq8t0.mjs +0 -3
- package/dist/chunks/cli-1.1.28-qhqkr80z.mjs +0 -45
- package/dist/chunks/cli-1.1.28-qj312jgw.mjs +0 -2
- package/dist/chunks/cli-1.1.28-qjn28vhw.mjs +0 -2
- package/dist/chunks/cli-1.1.28-qrx5ata3.mjs +0 -2
- package/dist/chunks/cli-1.1.28-qvpamm5s.mjs +0 -4
- package/dist/chunks/cli-1.1.28-qvr8rkg2.mjs +0 -2
- package/dist/chunks/cli-1.1.28-qzg6n6hj.mjs +0 -2
- package/dist/chunks/cli-1.1.28-r81y1681.mjs +0 -3
- package/dist/chunks/cli-1.1.28-rbjeq16x.mjs +0 -2
- package/dist/chunks/cli-1.1.28-rbne7wtq.mjs +0 -4
- package/dist/chunks/cli-1.1.28-rez81jab.mjs +0 -6
- package/dist/chunks/cli-1.1.28-rq49kn4q.mjs +0 -2
- package/dist/chunks/cli-1.1.28-rt0aect8.mjs +0 -2
- package/dist/chunks/cli-1.1.28-rwfwz209.mjs +0 -2
- package/dist/chunks/cli-1.1.28-s1pbcd86.mjs +0 -3
- package/dist/chunks/cli-1.1.28-s2pcpdyc.mjs +0 -2
- package/dist/chunks/cli-1.1.28-s6w8jb6z.mjs +0 -2
- package/dist/chunks/cli-1.1.28-smb1frk6.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ss8nzmnb.mjs +0 -12
- package/dist/chunks/cli-1.1.28-sx3mmc5d.mjs +0 -2
- package/dist/chunks/cli-1.1.28-sz8sgxj4.mjs +0 -2
- package/dist/chunks/cli-1.1.28-t5yawarz.mjs +0 -2
- package/dist/chunks/cli-1.1.28-tt0c354s.mjs +0 -2
- package/dist/chunks/cli-1.1.28-v1p12e3g.mjs +0 -2
- package/dist/chunks/cli-1.1.28-v5r7bmzh.mjs +0 -2
- package/dist/chunks/cli-1.1.28-v5ypq0r2.mjs +0 -2
- package/dist/chunks/cli-1.1.28-v6ewa1y0.mjs +0 -2
- package/dist/chunks/cli-1.1.28-vctvnrwx.mjs +0 -133
- package/dist/chunks/cli-1.1.28-vf3j29kt.mjs +0 -2
- package/dist/chunks/cli-1.1.28-vgfss8e4.mjs +0 -2
- package/dist/chunks/cli-1.1.28-vje1ac31.mjs +0 -7
- package/dist/chunks/cli-1.1.28-vphadsag.mjs +0 -2
- package/dist/chunks/cli-1.1.28-vyzp74xh.mjs +0 -3
- package/dist/chunks/cli-1.1.28-w0kxa99b.mjs +0 -2
- package/dist/chunks/cli-1.1.28-w6cd3j36.mjs +0 -20
- package/dist/chunks/cli-1.1.28-wew8jymx.mjs +0 -2
- package/dist/chunks/cli-1.1.28-wmyy1pdj.mjs +0 -2
- package/dist/chunks/cli-1.1.28-wvj52k91.mjs +0 -2
- package/dist/chunks/cli-1.1.28-wze93r29.mjs +0 -2
- package/dist/chunks/cli-1.1.28-x04zkwy5.mjs +0 -18
- package/dist/chunks/cli-1.1.28-x0ypcq4e.mjs +0 -2
- package/dist/chunks/cli-1.1.28-x13sctb2.mjs +0 -2
- package/dist/chunks/cli-1.1.28-xv2tg10n.mjs +0 -2
- package/dist/chunks/cli-1.1.28-y173v5ak.mjs +0 -133
- package/dist/chunks/cli-1.1.28-y4k1f7he.mjs +0 -2
- package/dist/chunks/cli-1.1.28-y5w3ev7m.mjs +0 -2
- package/dist/chunks/cli-1.1.28-yaa1gft3.mjs +0 -15
- package/dist/chunks/cli-1.1.28-ypzyse5q.mjs +0 -2
- package/dist/chunks/cli-1.1.28-yv5gzenz.mjs +0 -2
- package/dist/chunks/cli-1.1.28-yyk292aq.mjs +0 -6
- package/dist/chunks/cli-1.1.28-z4kzjv3v.mjs +0 -21
- package/dist/chunks/cli-1.1.28-z5mbbt38.mjs +0 -2
- package/dist/chunks/cli-1.1.28-zarbrcn7.mjs +0 -2
- package/dist/chunks/cli-1.1.28-ze1j03ww.mjs +0 -1
- package/dist/chunks/cli-1.1.28-zhftjycn.mjs +0 -5553
- package/dist/chunks/cli-1.1.28-zqpvgqxf.mjs +0 -2
- package/dist/chunks/cli-1.1.28-zv9zfwz9.mjs +0 -2
- package/dist/chunks/client-1.1.28-59t63af8.mjs +0 -1
- package/dist/chunks/color-1.1.28-gmbrq89g.mjs +0 -1
- package/dist/chunks/compact-1.1.28-14hmkmd6.mjs +0 -3
- package/dist/chunks/config-1.1.28-b69ey9g1.mjs +0 -1
- package/dist/chunks/config-1.1.28-cryax439.mjs +0 -1
- package/dist/chunks/constants-1.1.28-63cv4s6z.mjs +0 -1
- package/dist/chunks/context-1.1.28-09kfp2sa.mjs +0 -1
- package/dist/chunks/context-noninteractive-1.1.28-h9279pbh.mjs +0 -1
- package/dist/chunks/conversation-1.1.28-qnj7ywxq.mjs +0 -1
- package/dist/chunks/copilotHeaders-1.1.28-yjrmx9z1.mjs +0 -1
- package/dist/chunks/copy-1.1.28-az1n9y3n.mjs +0 -9
- package/dist/chunks/cost-1.1.28-507xt42s.mjs +0 -1
- package/dist/chunks/createSSHSession-1.1.28-m9ecjhc1.mjs +0 -1
- package/dist/chunks/createSession-1.1.28-gbrmw9ad.mjs +0 -1
- package/dist/chunks/debug-1.1.28-k9m06yz6.mjs +0 -1
- package/dist/chunks/defaultActionDeps-1.1.28-4sxh2jyw.mjs +0 -1534
- package/dist/chunks/desktop-1.1.28-ycc1hv5c.mjs +0 -1
- package/dist/chunks/detectRepository-1.1.28-mxrqqjv6.mjs +0 -1
- package/dist/chunks/detection-1.1.28-06p2mev8.mjs +0 -1
- package/dist/chunks/diff-1.1.28-d9a2n60t.mjs +0 -1
- package/dist/chunks/doctor-1.1.28-qef12k2p.mjs +0 -1
- package/dist/chunks/doctorDiagnostic-1.1.28-v5rq4x27.mjs +0 -1
- package/dist/chunks/earlyInput-1.1.28-xr89w719.mjs +0 -1
- package/dist/chunks/effort-1.1.28-yjbwr68r.mjs +0 -13
- package/dist/chunks/engine-1.1.28-yv6qdcgp.mjs +0 -1
- package/dist/chunks/envLessBridgeConfig-1.1.28-tpjzc2ar.mjs +0 -1
- package/dist/chunks/envUtils-1.1.28-n17cxj8h.mjs +0 -1
- package/dist/chunks/environmentSelection-1.1.28-c7vj172q.mjs +0 -1
- package/dist/chunks/environments-1.1.28-08b7gpg6.mjs +0 -1
- package/dist/chunks/errors-1.1.28-eysc80qa.mjs +0 -1
- package/dist/chunks/exampleCommands-1.1.28-gk1ma509.mjs +0 -1
- package/dist/chunks/execFileNoThrow-1.1.28-4nc53n56.mjs +0 -1
- package/dist/chunks/exit-1.1.28-7rjnfzc2.mjs +0 -1
- package/dist/chunks/explorer-1.1.28-hf7jvkfg.mjs +0 -1
- package/dist/chunks/export-1.1.28-3xgdy7gr.mjs +0 -2
- package/dist/chunks/extra-usage-1.1.28-6wkgsscs.mjs +0 -1
- package/dist/chunks/extra-usage-noninteractive-1.1.28-03hnqa8n.mjs +0 -1
- package/dist/chunks/fast-1.1.28-gf0rb9by.mjs +0 -1
- package/dist/chunks/feedback-1.1.28-dvdyq5v7.mjs +0 -14
- package/dist/chunks/firstPartyEventLogger-1.1.28-rd6eskzg.mjs +0 -1
- package/dist/chunks/git-1.1.28-ktf61jaz.mjs +0 -1
- package/dist/chunks/githubModelsCredentials-1.1.28-re8t0b2z.mjs +0 -1
- package/dist/chunks/goal-1.1.28-s7n55rqn.mjs +0 -4
- package/dist/chunks/growthbook-1.1.28-jcs0qzz8.mjs +0 -1
- package/dist/chunks/headless-1.1.28-yzfk04g2.mjs +0 -2
- package/dist/chunks/heapdump-1.1.28-hgfac8pe.mjs +0 -6
- package/dist/chunks/help-1.1.28-yhrv28x1.mjs +0 -1
- package/dist/chunks/hookChains-1.1.28-9y5pz734.mjs +0 -3
- package/dist/chunks/hooks-1.1.28-pwy1h39c.mjs +0 -79
- package/dist/chunks/hooks-1.1.28-xhtrbwa5.mjs +0 -1
- package/dist/chunks/ide-1.1.28-27vb56tk.mjs +0 -3
- package/dist/chunks/image-processor-napi-1.1.28-b092deny.mjs +0 -1
- package/dist/chunks/import-1.1.28-bqs6ebec.mjs +0 -261
- package/dist/chunks/inboundAttachments-1.1.28-0jb4nc2j.mjs +0 -1
- package/dist/chunks/index-1.1.28-0p3tfhd7.mjs +0 -23
- package/dist/chunks/index-1.1.28-30ges9rx.mjs +0 -1
- package/dist/chunks/index-1.1.28-3kg2kmpd.mjs +0 -1
- package/dist/chunks/index-1.1.28-76ztpb54.mjs +0 -1
- package/dist/chunks/index-1.1.28-a6fzpa8n.mjs +0 -1
- package/dist/chunks/index-1.1.28-ac1sbem8.mjs +0 -9
- package/dist/chunks/index-1.1.28-axnrgqkq.mjs +0 -1
- package/dist/chunks/index-1.1.28-b5b1qact.mjs +0 -1
- package/dist/chunks/index-1.1.28-bqm5cnw1.mjs +0 -1
- package/dist/chunks/index-1.1.28-bt937784.mjs +0 -1
- package/dist/chunks/index-1.1.28-bxtzy977.mjs +0 -2
- package/dist/chunks/index-1.1.28-dgnx1m4x.mjs +0 -9
- package/dist/chunks/index-1.1.28-dtfxav1q.mjs +0 -1
- package/dist/chunks/index-1.1.28-gk3v69b8.mjs +0 -1
- package/dist/chunks/index-1.1.28-m2nnkj3d.mjs +0 -1
- package/dist/chunks/index-1.1.28-qk8rhq5n.mjs +0 -1
- package/dist/chunks/index-1.1.28-vgc6r0g0.mjs +0 -1
- package/dist/chunks/index-1.1.28-w2a4k4md.mjs +0 -2
- package/dist/chunks/index-1.1.28-wajajmmp.mjs +0 -1
- package/dist/chunks/index-1.1.28-xaw4tf13.mjs +0 -30
- package/dist/chunks/index-1.1.28-y7jd8m9f.mjs +0 -1
- package/dist/chunks/index-1.1.28-ymg3kz4x.mjs +0 -5
- package/dist/chunks/index-1.1.28-z85wbmey.mjs +0 -1
- package/dist/chunks/init-1.1.28-vt168swt.mjs +0 -1
- package/dist/chunks/initReplBridge-1.1.28-vtkc85kf.mjs +0 -1
- package/dist/chunks/ink-1.1.28-8bcvzs97.mjs +0 -1
- package/dist/chunks/insights-1.1.28-hcccjwbm.mjs +0 -870
- package/dist/chunks/install-1.1.28-azeaj14w.mjs +0 -1
- package/dist/chunks/install-github-app-1.1.28-jr58yj7c.mjs +0 -149
- package/dist/chunks/install-slack-app-1.1.28-ca73e004.mjs +0 -1
- package/dist/chunks/instrumentation-1.1.28-v5fj6zfn.mjs +0 -1
- package/dist/chunks/interactiveHelpers-1.1.28-k8pjx51r.mjs +0 -1
- package/dist/chunks/keybindings-1.1.28-szefym9t.mjs +0 -2
- package/dist/chunks/knowledge-1.1.28-twc2bf6q.mjs +0 -2
- package/dist/chunks/latestVersionCache-1.1.28-swqk1ppm.mjs +0 -1
- package/dist/chunks/loadAgentsDir-1.1.28-gvzkk593.mjs +0 -1
- package/dist/chunks/loadPluginHooks-1.1.28-j5fvzh5b.mjs +0 -1
- package/dist/chunks/log-1.1.28-744tvnnz.mjs +0 -1
- package/dist/chunks/main-1.1.28-ngd4qj24.mjs +0 -1
- package/dist/chunks/managedEnv-1.1.28-v3t5y08t.mjs +0 -1
- package/dist/chunks/mcp-1.1.28-bjtwbjwv.mjs +0 -17
- package/dist/chunks/mcp-1.1.28-k0p4t3rs.mjs +0 -1
- package/dist/chunks/mcp-1.1.28-pxxge6kd.mjs +0 -4
- package/dist/chunks/mcpb-1.1.28-rjvsf8d4.mjs +0 -1
- package/dist/chunks/memory-1.1.28-437zyh3m.mjs +0 -77
- package/dist/chunks/model-1.1.28-1weg50dg.mjs +0 -2
- package/dist/chunks/model-1.1.28-qbnnaa17.mjs +0 -1
- package/dist/chunks/node-1.1.28-f9q7m0bb.mjs +0 -15
- package/dist/chunks/node-1.1.28-q18jbvyv.mjs +0 -1
- package/dist/chunks/oauth-1.1.28-nv1bmgrh.mjs +0 -1
- package/dist/chunks/openaiShim-1.1.28-qt0bgn0p.mjs +0 -14
- package/dist/chunks/output-style-1.1.28-xpmnvzvz.mjs +0 -1
- package/dist/chunks/package-OS7RONXY-1.1.28-s8fma63p.mjs +0 -1
- package/dist/chunks/parseConnectUrl-1.1.28-9e7g8r3q.mjs +0 -1
- package/dist/chunks/parser-1.1.28-hahczgmc.mjs +0 -1
- package/dist/chunks/passes-1.1.28-73vxd2mh.mjs +0 -1
- package/dist/chunks/permissions-1.1.28-4dzfyh6m.mjs +0 -1
- package/dist/chunks/permissions-1.1.28-mh27xg9k.mjs +0 -3
- package/dist/chunks/plan-1.1.28-awnhzrk0.mjs +0 -1
- package/dist/chunks/plist-1.1.28-yf5fjx19.mjs +0 -1
- package/dist/chunks/plugin-1.1.28-m9j8cnkz.mjs +0 -29
- package/dist/chunks/pluginStartupCheck-1.1.28-w4yvsmat.mjs +0 -1
- package/dist/chunks/plugins-1.1.28-rgr19gwa.mjs +0 -9
- package/dist/chunks/preActionHook-1.1.28-bq157gz5.mjs +0 -2
- package/dist/chunks/print-1.1.28-g8smjzce.mjs +0 -57
- package/dist/chunks/process-1.1.28-tk5w2b0a.mjs +0 -1
- package/dist/chunks/processBashCommand-1.1.28-0a601ws2.mjs +0 -1
- package/dist/chunks/processSlashCommand-1.1.28-2mq2y7nd.mjs +0 -9
- package/dist/chunks/prompt-1.1.28-tj8v37yx.mjs +0 -1
- package/dist/chunks/prompt-1.1.28-x4mxe7n2.mjs +0 -1
- package/dist/chunks/prompts-1.1.28-z2rx5cb6.mjs +0 -1
- package/dist/chunks/protocolHandler-1.1.28-cvce24s6.mjs +0 -13
- package/dist/chunks/provider-1.1.28-wd0k9dj9.mjs +0 -2
- package/dist/chunks/providerProfiles-1.1.28-ansdm0bp.mjs +0 -1
- package/dist/chunks/providerValidation-1.1.28-xkpar3nj.mjs +0 -6
- package/dist/chunks/rate-limit-options-1.1.28-kv8762wq.mjs +0 -1
- package/dist/chunks/registerSubcommands-1.1.28-464hjqs0.mjs +0 -26
- package/dist/chunks/registry-1.1.28-a9wz892f.mjs +0 -1
- package/dist/chunks/release-notes-1.1.28-3dsn738r.mjs +0 -5
- package/dist/chunks/reload-plugins-1.1.28-8kfgxbx6.mjs +0 -2
- package/dist/chunks/remote-env-1.1.28-x46beyd7.mjs +0 -1
- package/dist/chunks/remoteBridgeCore-1.1.28-1pr9890h.mjs +0 -1
- package/dist/chunks/remoteSession-1.1.28-0dbsb9gr.mjs +0 -1
- package/dist/chunks/rename-1.1.28-m7z3qe6s.mjs +0 -1
- package/dist/chunks/replBridgeHandle-1.1.28-h8cn3e2b.mjs +0 -1
- package/dist/chunks/replLauncher-1.1.28-dc94xnm0.mjs +0 -1
- package/dist/chunks/resume-1.1.28-mr6necqk.mjs +0 -2
- package/dist/chunks/rewind-1.1.28-dk5z09nd.mjs +0 -1
- package/dist/chunks/rootOptions-1.1.28-g6c2bc4a.mjs +0 -1
- package/dist/chunks/runWorkflowHeadless-1.1.28-2r5z099n.mjs +0 -10
- package/dist/chunks/sandbox-adapter-1.1.28-9gkyj8zg.mjs +0 -1
- package/dist/chunks/sandbox-toggle-1.1.28-mvyww40e.mjs +0 -1
- package/dist/chunks/session-1.1.28-8xwfxnzq.mjs +0 -2
- package/dist/chunks/sessionDiscovery-1.1.28-6twnc7gm.mjs +0 -1
- package/dist/chunks/sessionFileAccessHooks-1.1.28-w6yt6st1.mjs +0 -1
- package/dist/chunks/sessionStorage-1.1.28-rfvff5qy.mjs +0 -1
- package/dist/chunks/settings-1.1.28-b3wrgfej.mjs +0 -1
- package/dist/chunks/setup-1.1.28-6vt58sg8.mjs +0 -12
- package/dist/chunks/sinks-1.1.28-rdvsx829.mjs +0 -1
- package/dist/chunks/skills-1.1.28-b53h2c2v.mjs +0 -1
- package/dist/chunks/startupProfiler-1.1.28-mk4vmdef.mjs +0 -1
- package/dist/chunks/startupUpdateCheck-1.1.28-0p8x3xh5.mjs +0 -1
- package/dist/chunks/state-1.1.28-fd27gqw0.mjs +0 -1
- package/dist/chunks/stats-1.1.28-fmezsyc4.mjs +0 -1
- package/dist/chunks/status-1.1.28-67a4bkc3.mjs +0 -1
- package/dist/chunks/stickers-1.1.28-0g68m8nd.mjs +0 -1
- package/dist/chunks/subprocessEnv-1.1.28-548a2kyv.mjs +0 -1
- package/dist/chunks/tasks-1.1.28-h3xfz4f4.mjs +0 -1
- package/dist/chunks/teamHelpers-1.1.28-4twfmqhf.mjs +0 -1
- package/dist/chunks/teammateModeSnapshot-1.1.28-7p6f8wg0.mjs +0 -1
- package/dist/chunks/teleport-1.1.28-zdrc7v25.mjs +0 -1
- package/dist/chunks/terminalSetup-1.1.28-fbkk7v65.mjs +0 -1
- package/dist/chunks/theme-1.1.28-tj36fh0f.mjs +0 -1
- package/dist/chunks/thinkback-1.1.28-x1bq9k3h.mjs +0 -1
- package/dist/chunks/thinkback-play-1.1.28-3jdfk2q7.mjs +0 -1
- package/dist/chunks/toolPool-1.1.28-fpt8xrnv.mjs +0 -1
- package/dist/chunks/toolSearch-1.1.28-mvqt18a8.mjs +0 -1
- package/dist/chunks/tools-1.1.28-a9t3fc6d.mjs +0 -1
- package/dist/chunks/trustedDevice-1.1.28-9e0gqehg.mjs +0 -1
- package/dist/chunks/turndown.cjs-1.1.28-dhs0afg7.mjs +0 -69
- package/dist/chunks/types-1.1.28-51fcbp8c.mjs +0 -1
- package/dist/chunks/ultrareviewCommand-1.1.28-d4ca5c58.mjs +0 -4
- package/dist/chunks/update-1.1.28-t9v2gpbh.mjs +0 -72
- package/dist/chunks/upgrade-1.1.28-12174ed0.mjs +0 -1
- package/dist/chunks/upload-1.1.28-whe18m8m.mjs +0 -7
- package/dist/chunks/upstreamproxy-1.1.28-bnjrek99.mjs +0 -14
- package/dist/chunks/url-handler-napi-1.1.28-0gh9dbnj.mjs +0 -1
- package/dist/chunks/usage-1.1.28-6m1bv4x5.mjs +0 -1
- package/dist/chunks/util-1.1.28-cvpx898d.mjs +0 -1
- package/dist/chunks/utils-1.1.28-ztac8cf7.mjs +0 -1
- package/dist/chunks/vim-1.1.28-rrv9qbr2.mjs +0 -1
- package/dist/chunks/watchLoop-1.1.28-rtznty0c.mjs +0 -13
- package/dist/chunks/watcher-1.1.28-7v4bd9pm.mjs +0 -1
- package/dist/chunks/wiki-1.1.28-m0y2n8rc.mjs +0 -132
- package/dist/chunks/workflows-1.1.28-k9wt163q.mjs +0 -1
- package/dist/chunks/worktree-1.1.28-5bjehwgc.mjs +0 -1
- package/dist/chunks/worktreeModeEnabled-1.1.28-d1yy7627.mjs +0 -1
- package/dist/chunks/wrapper-1.1.28-qgyry9mh.mjs +0 -7
- /package/dist/chunks/{cli-1.1.28-m37hk495.mjs → cli-1.1.29-09pf4n9h.mjs} +0 -0
- /package/dist/chunks/{cli-1.1.28-f658tc1w.mjs → cli-1.1.29-8zfk7gyk.mjs} +0 -0
- /package/dist/chunks/{cli-1.1.28-m7x3ax7z.mjs → cli-1.1.29-h0m93zmw.mjs} +0 -0
- /package/dist/chunks/{cli-1.1.28-7d7hz6b4.mjs → cli-1.1.29-skjcgaw2.mjs} +0 -0
- /package/dist/chunks/{cli-1.1.28-qzdtd4w8.mjs → cli-1.1.29-v507w0kc.mjs} +0 -0
- /package/dist/chunks/{cli-1.1.28-43p679k7.mjs → cli-1.1.29-vk67t66v.mjs} +0 -0
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import{ea as yJ,fa as xz,ga as rz,ha as cz,ia as iz,ja as kJ}from"./cli-1.1.28-hxbkncxe.mjs";import{la as Tz}from"./cli-1.1.28-a79xcdg3.mjs";import{va as EJ,wa as TJ,xa as xJ,ya as MJ,za as wJ}from"./cli-1.1.28-x0ypcq4e.mjs";import{Ba as fJ}from"./cli-1.1.28-zqpvgqxf.mjs";import{ie as LJ,ke as oz,me as RK}from"./cli-1.1.28-8v2vx373.mjs";import{Oe as mz,Qe as UJ,Ue as OJ}from"./cli-1.1.28-13j6r7pz.mjs";import{qf as jJ,rf as cJ}from"./cli-1.1.28-yaa1gft3.mjs";import{Em as DJ,Fm as vz,Jm as NK,lI as JJ,mI as Cz,nI as KJ,oI as ZJ,oo as AJ,po as PK,qI as $J,rI as YJ,sI as XJ,tI as QJ,tk as CJ,uI as WJ,uk as FK}from"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import{cW as RJ,iW as _K}from"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import{rX as az,vX as CK}from"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import{h3 as pz,k3 as BK}from"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import"./cli-1.1.28-v5ypq0r2.mjs";import"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import{I8 as i,J8 as OK}from"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import{i_ as V,j_ as gJ}from"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import{$ha as Ez,Hca as PJ,Ica as HK,M$ as Wz,O$ as GK,hda as fz,hia as qK,ida as ez,jda as zJ,kda as pJ}from"./cli-1.1.28-5y1xeh89.mjs";import{Eia as jK,mia as sz,nia as uJ,pia as Rz,wia as qz}from"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import{jja as BJ,rja as VK}from"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import{Dka as zz,Eka as _J,Gka as XK}from"./cli-1.1.28-knfg26kb.mjs";import{Gla as q,Jla as tz,jla as qJ,kla as uz,ola as aJ}from"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import{ema as g,lma as WK}from"./cli-1.1.28-pykx8k1j.mjs";import{rma as NJ,zma as QK}from"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import{Wta as I}from"./cli-1.1.28-3fssr567.mjs";PK();FK();_K();VK();XK();HK();tz();GK();QK();WK();jK();qK();OK();NK();import{randomUUID as Sz}from"crypto";import{hostname as bJ,tmpdir as DK}from"os";import{basename as AK,join as UK,resolve as lz}from"path";WJ();gJ();cJ();pJ();uJ();tz();WJ();var lJ={type:"utf8",errorCorrectionLevel:"L",small:!0};async function dJ(z){return(await jJ(z,lJ)).split(`
|
|
2
|
-
`).filter((K)=>K.length>0)}function VJ(z){let J=z.write??(($)=>process.stdout.write($)),K=z.verbose,Y=0,O="idle",Z="Ready",R="",B="",U="",F="",L="",A=null,_=[],M=!1,y=null,P=0,x=0,N=1,f=null,k="single-session",b=new Map,d=null,S=0;function Xz($){let G=process.stdout.columns||80,w=0;for(let Vz of $.split(`
|
|
3
|
-
`)){if(Vz.length===0){w++;continue}let _z=sz(Vz);w+=Math.max(1,Math.ceil(_z/G))}if($.endsWith(`
|
|
4
|
-
`))w--;return w}function m($){J($),Y+=Xz($)}function a(){if(Y<=0)return;q(`[bridge:ui] clearStatusLines count=${Y}`),J(`\x1B[${Y}A`),J("\x1B[J"),Y=0}function $z($){a(),J($)}function n($){dJ($).then((G)=>{_=G,p()}).catch((G)=>{q(`QR code generation failed: ${G}`,{level:"error"})})}function o(){a();let $=fz[S%fz.length],G="";if(R)G+=V.dim(" · ")+V.dim(R);if(B)G+=V.dim(" · ")+V.dim(B);m(`${V.yellow($)} ${V.yellow("Connecting")}${G}
|
|
5
|
-
`)}function jz(){t(),o(),d=setInterval(()=>{S++,o()},150)}function t(){if(d)clearInterval(d),d=null}function p(){if(O==="reconnecting"||O==="failed")return;a();let $=O==="idle";if(M)for(let Jz of _)m(`${V.dim(Jz)}
|
|
6
|
-
`);let G=ez,w=$?V.green:V.cyan,_z=($?V.green:V.cyan)(Z),Oz="";if(R)Oz+=V.dim(" · ")+V.dim(R);if(B&&k!=="worktree")Oz+=V.dim(" · ")+V.dim(B);if(m(`${w(G)} ${_z}${Oz}
|
|
7
|
-
`),N>1){let Jz=k==="worktree"?"New sessions will be created in an isolated worktree":"New sessions will be created in the current directory";m(` ${V.dim(`Capacity: ${x}/${N} · ${Jz}`)}
|
|
8
|
-
`);for(let[,Kz]of b){let r=Kz.title?Rz(Kz.title,35):V.dim("Attached"),Mz=QJ(r,Kz.url),Fz=Kz.activity,j=Fz&&Fz.type!=="result"&&Fz.type!=="error"?V.dim(` ${Rz(Fz.summary,40)}`):"";m(` ${Mz}${j}
|
|
9
|
-
`)}}if(N===1){let Jz=k==="single-session"?"Single session · exits when complete":k==="worktree"?`Capacity: ${x}/1 · New sessions will be created in an isolated worktree`:`Capacity: ${x}/1 · New sessions will be created in the current directory`;m(` ${V.dim(Jz)}
|
|
10
|
-
`)}if(N===1&&!$&&y&&Date.now()-P<JJ)m(` ${V.dim(Rz(y,60))}
|
|
11
|
-
`);let Qz=A??U;if(Qz){m(`
|
|
12
|
-
`);let Jz=$?$J(Qz):YJ(Qz),Kz=M?V.dim.italic("space to hide QR code"):V.dim.italic("space to show QR code"),r=f?V.dim.italic(" · w to toggle spawn mode"):"";m(`${V.dim(Jz)}
|
|
13
|
-
`),m(`${Kz}${r}
|
|
14
|
-
`)}}return{printBanner($,G){if(F=$.sessionIngressUrl,L=G,U=KJ(G,F),n(U),K)J(V.dim("Remote Control")+` v99.0.0
|
|
15
|
-
`);if(K){if($.spawnMode!=="single-session")J(V.dim("Spawn mode: ")+`${$.spawnMode}
|
|
16
|
-
`),J(V.dim("Max concurrent sessions: ")+`${$.maxSessions}
|
|
17
|
-
`);J(V.dim("Environment ID: ")+`${G}
|
|
18
|
-
`)}if($.sandbox)J(V.dim("Sandbox: ")+`${V.green("Enabled")}
|
|
19
|
-
`);J(`
|
|
20
|
-
`),jz()},logSessionStart($,G){if(K){let w=Rz(G,80);$z(V.dim(`[${Cz()}]`)+` Session started: ${V.white(`"${w}"`)} (${V.dim($)})
|
|
21
|
-
`)}},logSessionComplete($,G){$z(V.dim(`[${Cz()}]`)+` Session ${V.green("completed")} (${qz(G)}) ${V.dim($)}
|
|
22
|
-
`)},logSessionFailed($,G){$z(V.dim(`[${Cz()}]`)+` Session ${V.red("failed")}: ${G} ${V.dim($)}
|
|
23
|
-
`)},logStatus($){$z(V.dim(`[${Cz()}]`)+` ${$}
|
|
24
|
-
`)},logVerbose($){if(K)$z(V.dim(`[${Cz()}] ${$}`)+`
|
|
25
|
-
`)},logError($){$z(V.red(`[${Cz()}] Error: ${$}`)+`
|
|
26
|
-
`)},logReconnected($){$z(V.dim(`[${Cz()}]`)+` ${V.green("Reconnected")} after ${qz($)}
|
|
27
|
-
`)},setRepoInfo($,G){R=$,B=G},updateIdleStatus(){t(),O="idle",Z="Ready",y=null,P=0,A=null,n(U),p()},setAttached($){if(t(),O="attached",Z="Connected",y=null,P=0,N<=1)A=ZJ($,L,F),n(A);p()},updateReconnectingStatus($,G){if(t(),a(),O="reconnecting",M)for(let Vz of _)m(`${V.dim(Vz)}
|
|
28
|
-
`);let w=fz[S%fz.length];S++,m(`${V.yellow(w)} ${V.yellow("Reconnecting")} ${V.dim("·")} ${V.dim(`retrying in ${$}`)} ${V.dim("·")} ${V.dim(`disconnected ${G}`)}
|
|
29
|
-
`)},updateFailedStatus($){t(),a(),O="failed";let G="";if(R)G+=V.dim(" · ")+V.dim(R);if(B)G+=V.dim(" · ")+V.dim(B);if(m(`${V.red(zJ)} ${V.red("Remote Control Failed")}${G}
|
|
30
|
-
`),m(`${V.dim(XJ)}
|
|
31
|
-
`),$)m(`${V.red($)}
|
|
32
|
-
`)},updateSessionStatus($,G,w,Vz){if(w.type==="tool_start")y=w.summary,P=Date.now();p()},clearStatus(){t(),a()},toggleQr(){M=!M,p()},updateSessionCount($,G,w){if(x===$&&N===G&&k===w)return;x=$,N=G,k=w},setSpawnModeDisplay($){if(f===$)return;if(f=$,$)k=$},addSession($,G){b.set($,{url:G})},updateSessionActivity($,G){let w=b.get($);if(!w)return;w.activity=G},setSessionTitle($,G){let w=b.get($);if(!w)return;if(w.title=G,O==="reconnecting"||O==="failed")return;if(N===1)O="titled",Z=Rz(G,40);p()},removeSession($){b.delete($)},refreshDisplay(){if(O==="reconnecting"||O==="failed")return;p()}}}OJ();BK();aJ();OJ();import{spawn as oJ}from"child_process";import{createWriteStream as rJ}from"fs";import{tmpdir as iJ}from"os";import{dirname as nJ,join as GJ}from"path";import{createInterface as HJ}from"readline";var tJ=10,sJ=10,eJ=new Set(["PATH","HOME","USERPROFILE","HOMEPATH","HOMEDRIVE","USERNAME","USER","LOGNAME","TEMP","TMP","TMPDIR","SYSTEMROOT","SYSTEMDRIVE","COMSPEC","WINDIR","LANG","LC_ALL","LC_CTYPE","NODE_OPTIONS","NODE_PATH","NODE_ENV","CLAUDE_CODE_ENVIRONMENT_KIND","CLAUDE_CODE_FORCE_SANDBOX","CLAUDIN_BUBBLEWRAP","CLAUDE_CODE_ENTRYPOINT","CLAUDIN_COORDINATOR_MODE","CLAUDE_CODE_PERMISSIONS_VERSION","CLAUDE_CODE_PERMISSIONS_SETTING","TERM","COLORTERM","FORCE_COLOR","NO_COLOR"]);function zK(z,J){let K={};for(let Y of Object.keys(z))if(eJ.has(Y))K[Y]=z[Y];if(K.CLAUDE_CODE_OAUTH_TOKEN=void 0,K.CLAUDE_CODE_ENVIRONMENT_KIND="bridge",J.sandbox)K.CLAUDE_CODE_FORCE_SANDBOX="1";if(K.CLAUDE_CODE_SESSION_ACCESS_TOKEN=J.accessToken,K.CLAUDE_CODE_POST_FOR_SESSION_INGRESS_V2="1",J.useCcrV2)K.CLAUDE_CODE_USE_CCR_V2="1",K.CLAUDE_CODE_WORKER_EPOCH=String(J.workerEpoch);return K}function Iz(z){return z.replace(/[^a-zA-Z0-9_-]/g,"_")}var JK={Read:"Reading",Write:"Writing",Edit:"Editing",MultiEdit:"Editing",Bash:"Running",Glob:"Searching",Grep:"Searching",WebFetch:"Fetching",WebSearch:"Searching",Task:"Running task",FileReadTool:"Reading",FileWriteTool:"Writing",FileEditTool:"Editing",GlobTool:"Searching",GrepTool:"Searching",BashTool:"Running",NotebookEditTool:"Editing notebook",LSP:"LSP"};function KK(z,J){let K=JK[z]??z,Y=J.file_path??J.filePath??J.pattern??J.command?.slice(0,60)??J.url??J.query??"";if(Y)return`${K} ${Y}`;return K}function ZK(z,J,K){let Y;try{Y=uz(z)}catch{return[]}if(!Y||typeof Y!=="object")return[];let O=Y,Z=[],R=Date.now();switch(O.type){case"assistant":{let B=O.message;if(!B)break;let U=B.content;if(!Array.isArray(U))break;for(let F of U){if(!F||typeof F!=="object")continue;let L=F;if(L.type==="tool_use"){let A=L.name??"Tool",_=L.input??{},M=KK(A,_);Z.push({type:"tool_start",summary:M,timestamp:R}),K(`[bridge:activity] sessionId=${J} tool_use name=${A} ${YK(_)}`)}else if(L.type==="text"){let A=L.text??"";if(A.length>0)Z.push({type:"text",summary:A.slice(0,80),timestamp:R}),K(`[bridge:activity] sessionId=${J} text "${A.slice(0,100)}"`)}}break}case"result":{let B=O.subtype;if(B==="success")Z.push({type:"result",summary:"Session completed",timestamp:R}),K(`[bridge:activity] sessionId=${J} result subtype=success`);else if(B){let F=O.errors?.[0]??`Error: ${B}`;Z.push({type:"error",summary:F,timestamp:R}),K(`[bridge:activity] sessionId=${J} result subtype=${B} error="${F}"`)}else K(`[bridge:activity] sessionId=${J} result subtype=undefined`);break}default:break}return Z}function $K(z){if(z.parent_tool_use_id!=null||z.isSynthetic||z.isReplay)return;let K=z.message?.content,Y;if(typeof K==="string")Y=K;else if(Array.isArray(K)){for(let O of K)if(O&&typeof O==="object"&&O.type==="text"){Y=O.text;break}}return Y=Y?.trim(),Y?Y:void 0}function YK(z){let J=[];for(let[K,Y]of Object.entries(z)){if(typeof Y==="string")J.push(`${K}="${Y.slice(0,100)}"`);if(J.length>=3)break}return J.join(" ")}function gz(z){return{spawn(J,K){let Y=Iz(J.sessionId),O;if(z.debugFile){let N=z.debugFile.lastIndexOf(".");if(N>0)O=`${z.debugFile.slice(0,N)}-${Y}${z.debugFile.slice(N)}`;else O=`${z.debugFile}-${Y}`}else if(z.verbose)O=GJ(iJ(),"claude",`bridge-session-${Y}.log`);let Z=null,R;if(z.debugFile)R=GJ(nJ(z.debugFile),`bridge-transcript-${Y}.jsonl`),Z=rJ(R,{flags:"a"}),Z.on("error",(N)=>{z.onDebug(`[bridge:session] Transcript write error: ${N.message}`),Z=null}),z.onDebug(`[bridge:session] Transcript log: ${R}`);let B=[...z.scriptArgs,"--print","--sdk-url",J.sdkUrl,"--session-id",J.sessionId,"--input-format","stream-json","--output-format","stream-json","--replay-user-messages",...z.verbose?["--verbose"]:[],...O?["--debug-file",O]:[],...z.permissionMode?["--permission-mode",z.permissionMode]:[]],U=zK(z.env,{accessToken:J.accessToken,useCcrV2:J.useCcrV2??!1,workerEpoch:J.workerEpoch,sandbox:z.sandbox});if(z.onDebug(`[bridge:session] Spawning sessionId=${J.sessionId} sdkUrl=${J.sdkUrl} accessToken=${J.accessToken?"present":"MISSING"}`),z.onDebug(`[bridge:session] Child args: ${B.join(" ")}`),O)z.onDebug(`[bridge:session] Debug log: ${O}`);let F=oJ(z.execPath,B,{cwd:K,stdio:["pipe","pipe","pipe"],env:U,windowsHide:!0});z.onDebug(`[bridge:session] sessionId=${J.sessionId} pid=${F.pid}`);let L=[],A=null,_=[],M=!1,y=!1;if(F.stderr)HJ({input:F.stderr}).on("line",(f)=>{if(z.verbose)process.stderr.write(f+`
|
|
33
|
-
`);if(_.length>=sJ)_.shift();_.push(f)});if(F.stdout)HJ({input:F.stdout}).on("line",(f)=>{if(Z)Z.write(f+`
|
|
34
|
-
`);if(z.onDebug(`[bridge:ws] sessionId=${J.sessionId} <<< ${mz(f)}`),z.verbose)process.stderr.write(f+`
|
|
35
|
-
`);let k=ZK(f,J.sessionId,z.onDebug);for(let b of k){if(L.length>=tJ)L.shift();L.push(b),A=b,z.onActivity?.(J.sessionId,b)}{let b;try{b=uz(f)}catch{}if(b&&typeof b==="object"){let d=b;if(d.type==="control_request"){if(d.request?.subtype==="can_use_tool"&&z.onPermissionRequest)z.onPermissionRequest(J.sessionId,b,J.accessToken)}else if(d.type==="user"&&!y&&J.onFirstUserMessage){let S=$K(d);if(S)y=!0,J.onFirstUserMessage(S)}}}});let P=new Promise((N)=>{F.on("close",(f,k)=>{if(Z)Z.end(),Z=null;if(k==="SIGTERM"||k==="SIGINT")z.onDebug(`[bridge:session] sessionId=${J.sessionId} interrupted signal=${k} pid=${F.pid}`),N("interrupted");else if(f===0)z.onDebug(`[bridge:session] sessionId=${J.sessionId} completed exit_code=0 pid=${F.pid}`),N("completed");else z.onDebug(`[bridge:session] sessionId=${J.sessionId} failed exit_code=${f} pid=${F.pid}`),N("failed")}),F.on("error",(f)=>{z.onDebug(`[bridge:session] sessionId=${J.sessionId} spawn error: ${f.message}`),N("failed")})}),x={sessionId:J.sessionId,done:P,activities:L,accessToken:J.accessToken,lastStderr:_,get currentActivity(){return A},kill(){if(!F.killed)if(z.onDebug(`[bridge:session] Sending SIGTERM to sessionId=${J.sessionId} pid=${F.pid}`),process.platform==="win32")F.kill();else F.kill("SIGTERM")},forceKill(){if(!M&&F.pid)if(M=!0,z.onDebug(`[bridge:session] Sending SIGKILL to sessionId=${J.sessionId} pid=${F.pid}`),process.platform==="win32")F.kill();else F.kill("SIGKILL")},writeStdin(N){if(F.stdin&&!F.stdin.destroyed)z.onDebug(`[bridge:ws] sessionId=${J.sessionId} >>> ${mz(N)}`),F.stdin.write(N)},updateAccessToken(N){x.accessToken=N,x.writeStdin(qJ({type:"update_environment_variables",variables:{CLAUDE_CODE_SESSION_ACCESS_TOKEN:N}})+`
|
|
36
|
-
`),z.onDebug(`[bridge:session] Sent token refresh via stdin for sessionId=${J.sessionId}`)}};return x}}}CK();RK();var LK={connInitialMs:2000,connCapMs:120000,connGiveUpMs:600000,generalInitialMs:500,generalCapMs:30000,generalGiveUpMs:600000},yK=1000,IJ=32;async function vJ(){return BJ("tengu_ccr_bridge_multi_session")}function FJ(z){return z.connCapMs*2}function hJ(){if(PJ()||!process.argv[1])return[];return[process.argv[1]]}function EK(z,J,K){try{return z.spawn(J,K)}catch(Y){let O=g(Y);return Ez(Error(`Session spawn failed: ${O}`)),O}}async function SJ(z,J,K,Y,O,Z,R,B=LK,U,F){let L=new AbortController;if(R.aborted)L.abort();else R.addEventListener("abort",()=>L.abort(),{once:!0});let A=L.signal,_=new Map,M=new Map,y=new Map,P=new Map,x=new Map,N=new Map,f=new Set,k=new Map,b=new Set,d=new Set,S=kJ(A);async function Xz(){let Q=!1,j=!1,E=[];for(let[H]of _){let D=y.get(H),v=x.get(H);if(!D||!v)continue;try{await Y.heartbeatWork(J,D,v),Q=!0}catch(u){if(q(`[bridge:heartbeat] Failed for sessionId=${H} workId=${D}: ${g(u)}`),u instanceof xz)if(zz("",{status:u.status,error_type:u.status===401||u.status===403?"auth_failed":"fatal"}),u.status===401||u.status===403)E.push(H);else j=!0}}for(let H of E){Z.logVerbose(`Session ${H} token expired — re-queuing via bridge/reconnect`);try{await Y.reconnectSession(J,H),q(`[bridge:heartbeat] Re-queued sessionId=${H} via bridge/reconnect`)}catch(D){Z.logError(`Failed to refresh session ${H} token: ${g(D)}`),q(`[bridge:heartbeat] reconnectSession(${H}) failed: ${g(D)}`,{level:"error"})}}if(j)return"fatal";if(E.length>0)return"auth_failed";return Q?"ok":"failed"}let m=new Set,a=F?fJ({getAccessToken:F,onRefresh:(Q,j)=>{let E=_.get(Q);if(!E)return;if(m.has(Q))Z.logVerbose(`Refreshing session ${Q} token via bridge/reconnect`),Y.reconnectSession(J,Q).catch((H)=>{Z.logError(`Failed to refresh session ${Q} token: ${g(H)}`),q(`[bridge:token] reconnectSession(${Q}) failed: ${g(H)}`,{level:"error"})});else E.updateAccessToken(j)},label:"bridge"}):null,$z=Date.now(),n=new Set;function o(Q){n.add(Q),Q.finally(()=>n.delete(Q))}let jz=0,t=0,p=null,$=null,G=null,w=null,Vz=!1;if(q(`[bridge:work] Starting poll loop spawnMode=${z.spawnMode} maxSessions=${z.maxSessions} environmentId=${J}`),Wz("info","bridge_loop_started",{max_sessions:z.maxSessions,spawn_mode:z.spawnMode}),Z.printBanner(z,J),Z.updateSessionCount(0,z.maxSessions,z.spawnMode),U)Z.setAttached(U);function _z(){Z.updateSessionCount(_.size,z.maxSessions,z.spawnMode);for(let[u,X]of _){let T=X.currentActivity;if(T)Z.updateSessionActivity(P.get(u)??u,T)}if(_.size===0){Z.updateIdleStatus();return}let[Q,j]=[..._.entries()].pop(),E=M.get(Q);if(!E)return;let H=j.currentActivity;if(!H||H.type==="result"||H.type==="error"){if(z.maxSessions>1)Z.refreshDisplay();return}let D=qz(Date.now()-E),v=j.activities.filter((u)=>u.type==="tool_start").slice(-5).map((u)=>u.summary);Z.updateSessionStatus(Q,D,H,v)}function Oz(){Qz(),_z(),w=setInterval(_z,yK)}function Qz(){if(w)clearInterval(w),w=null}function Jz(Q,j,E){return(H)=>{let D=y.get(Q);_.delete(Q),M.delete(Q),y.delete(Q),x.delete(Q);let v=P.get(Q)??Q;P.delete(Q),Z.removeSession(v),d.delete(v),m.delete(Q);let u=N.get(Q);if(u)clearTimeout(u),N.delete(Q);a?.cancel(Q),S.wake();let X=b.delete(Q),T=X&&H==="interrupted"?"failed":H,c=Date.now()-j;q(`[bridge:session] sessionId=${Q} workId=${D??"unknown"} exited status=${T} duration=${qz(c)}`),zz("",{status:T,duration_ms:c}),Wz("info","bridge_session_done",{status:T,duration_ms:c}),Z.clearStatus(),Qz();let s=E.lastStderr.length>0?E.lastStderr.join(`
|
|
37
|
-
`):void 0,Yz;switch(T){case"completed":Z.logSessionComplete(Q,c);break;case"failed":if(!X&&!A.aborted)Yz=s??"Process exited with error",Z.logSessionFailed(Q,Yz),Ez(Error(`Bridge session failed: ${Yz}`));break;case"interrupted":Z.logVerbose(`Session ${Q} interrupted`);break}if(T!=="interrupted"&&D)o(kz(Y,J,D,Z,B.stopWorkBaseDelayMs)),f.add(D);let Zz=k.get(Q);if(Zz)k.delete(Q),o(vz(Zz.worktreePath,Zz.worktreeBranch,Zz.gitRoot,Zz.hookBased).catch((l)=>Z.logVerbose(`Failed to remove worktree ${Zz.worktreePath}: ${g(l)}`)));if(T!=="interrupted"&&!A.aborted)if(z.spawnMode!=="single-session")o(Y.archiveSession(v).catch((l)=>Z.logVerbose(`Failed to archive session ${Q}: ${g(l)}`))),q(`[bridge:session] Session ${T}, returning to idle (multi-session mode)`);else{q(`[bridge:session] Session ${T}, aborting poll loop to tear down environment`),L.abort();return}if(!A.aborted)Oz()}}if(!U)Oz();while(!A.aborted){let Q=Tz();try{let j=await Y.pollForWork(J,K,A,Q.reclaim_older_than_ms);if(p!==null||$!==null){let X=Date.now()-(p??$??Date.now());Z.logReconnected(X),q(`[bridge:poll] Reconnected after ${qz(X)}`),zz("",{disconnected_ms:X})}if(jz=0,t=0,p=null,$=null,G=null,!j){if(_.size>=z.maxSessions){let T=Q.multisession_poll_interval_ms_at_capacity;if(Q.non_exclusive_heartbeat_interval_ms>0){zz("",{active_sessions:_.size,heartbeat_interval_ms:Q.non_exclusive_heartbeat_interval_ms});let c=T>0?Date.now()+T:null,s="ok",Yz=0;while(!A.aborted&&_.size>=z.maxSessions&&(c===null||Date.now()<c)){let l=Tz();if(l.non_exclusive_heartbeat_interval_ms<=0)break;let Nz=S.signal();if(s=await Xz(),s==="auth_failed"||s==="fatal"){Nz.cleanup();break}Yz++,await i(l.non_exclusive_heartbeat_interval_ms,Nz.signal),Nz.cleanup()}let Zz=s==="auth_failed"||s==="fatal"?s:A.aborted?"shutdown":_.size<z.maxSessions?"capacity_changed":c!==null&&Date.now()>=c?"poll_due":"config_disabled";if(zz("",{reason:Zz,heartbeat_cycles:Yz,active_sessions:_.size}),Zz==="poll_due")q(`[bridge:poll] Heartbeat poll_due after ${Yz} cycles — falling through to pollForWork`);if(s==="auth_failed"||s==="fatal"){let l=S.signal();await i(T>0?T:Q.non_exclusive_heartbeat_interval_ms,l.signal),l.cleanup()}}else if(T>0){let c=S.signal();await i(T,c.signal),c.cleanup()}}else{let T=_.size>0?Q.multisession_poll_interval_ms_partial_capacity:Q.multisession_poll_interval_ms_not_at_capacity;await i(T,A)}continue}let H=_.size>=z.maxSessions;if(f.has(j.id)){if(q(`[bridge:work] Skipping already-completed workId=${j.id}`),H){let X=S.signal();if(Q.non_exclusive_heartbeat_interval_ms>0)await Xz(),await i(Q.non_exclusive_heartbeat_interval_ms,X.signal);else if(Q.multisession_poll_interval_ms_at_capacity>0)await i(Q.multisession_poll_interval_ms_at_capacity,X.signal);X.cleanup()}else await i(1000,A);continue}let D;try{D=EJ(j.secret)}catch(X){let T=g(X);if(Z.logError(`Failed to decode work secret for workId=${j.id}: ${T}`),zz("",{}),f.add(j.id),o(kz(Y,J,j.id,Z,B.stopWorkBaseDelayMs)),H){let c=S.signal();if(Q.non_exclusive_heartbeat_interval_ms>0)await Xz(),await i(Q.non_exclusive_heartbeat_interval_ms,c.signal);else if(Q.multisession_poll_interval_ms_at_capacity>0)await i(Q.multisession_poll_interval_ms_at_capacity,c.signal);c.cleanup()}continue}let v=async()=>{q(`[bridge:work] Acknowledging workId=${j.id}`);try{await Y.acknowledgeWork(J,j.id,D.session_ingress_token)}catch(X){q(`[bridge:work] Acknowledge failed workId=${j.id}: ${g(X)}`)}},u=j.data.type;switch(j.data.type){case"healthcheck":await v(),q("[bridge:work] Healthcheck received"),Z.logVerbose("Healthcheck received");break;case"session":{let X=j.data.id;try{yJ(X,"session_id")}catch{await v(),Z.logError(`Invalid session_id received: ${X}`);break}let T=_.get(X);if(T){T.updateAccessToken(D.session_ingress_token),x.set(X,D.session_ingress_token),y.set(X,j.id),a?.schedule(X,D.session_ingress_token),q(`[bridge:work] Updated access token for existing sessionId=${X} workId=${j.id}`),await v();break}if(_.size>=z.maxSessions){q(`[bridge:work] At capacity (${_.size}/${z.maxSessions}), cannot spawn new session for workId=${j.id}`);break}await v();let c=Date.now(),s,Yz=!1,Zz;if(D.use_code_sessions===!0||NJ(process.env.CLAUDE_BRIDGE_USE_CCR_V2)){s=MJ(z.apiBaseUrl,X);for(let W=1;W<=2;W++)try{Zz=await wJ(s,D.session_ingress_token),Yz=!0,q(`[bridge:session] CCR v2: registered worker sessionId=${X} epoch=${Zz} attempt=${W}`);break}catch(C){let h=g(C);if(W<2){if(q(`[bridge:session] CCR v2: registerWorker attempt ${W} failed, retrying: ${h}`),await i(2000,A),A.aborted)break;continue}Z.logError(`CCR v2 worker registration failed for session ${X}: ${h}`),Ez(Error(`registerWorker failed: ${h}`)),f.add(j.id),o(kz(Y,J,j.id,Z,B.stopWorkBaseDelayMs))}if(!Yz)break}else s=TJ(z.sessionIngressUrl,X);let{spawnMode:l,dir:Nz}=z,Uz=0;if(l==="worktree"&&(U===void 0||!xJ(X,U))){let W=Date.now();try{let C=await DJ(`bridge-${Iz(X)}`);Uz=Date.now()-W,k.set(X,{worktreePath:C.worktreePath,worktreeBranch:C.worktreeBranch,gitRoot:C.gitRoot,hookBased:C.hookBased}),Nz=C.worktreePath,q(`[bridge:session] Created worktree for sessionId=${X} at ${C.worktreePath}`)}catch(C){let h=g(C);Z.logError(`Failed to create worktree for session ${X}: ${h}`),Ez(Error(`Worktree creation failed: ${h}`)),f.add(j.id),o(kz(Y,J,j.id,Z,B.stopWorkBaseDelayMs));break}}q(`[bridge:session] Spawning sessionId=${X} sdkUrl=${s}`);let e=pz(X),Lz=EK(O,{sessionId:X,sdkUrl:s,accessToken:D.session_ingress_token,useCcrV2:Yz,workerEpoch:Zz,onFirstUserMessage:(W)=>{if(d.has(e))return;d.add(e);let C=SK(W);Z.setSessionTitle(e,C),q(`[bridge:title] derived title for ${e}: ${C}`),import("./createSession-1.1.28-gbrmw9ad.mjs").then(({updateBridgeSessionTitle:h})=>h(e,C,{baseUrl:z.apiBaseUrl})).catch((h)=>q(`[bridge:title] failed to update title for ${e}: ${h}`,{level:"error"}))}},Nz);if(typeof Lz==="string"){Z.logError(`Failed to spawn session ${X}: ${Lz}`);let W=k.get(X);if(W)k.delete(X),o(vz(W.worktreePath,W.worktreeBranch,W.gitRoot,W.hookBased).catch((C)=>Z.logVerbose(`Failed to remove worktree ${W.worktreePath}: ${g(C)}`)));f.add(j.id),o(kz(Y,J,j.id,Z,B.stopWorkBaseDelayMs));break}let Dz=Lz,Az=Date.now()-c;zz("",{active_sessions:_.size,spawn_mode:l,in_worktree:k.has(X),spawn_duration_ms:Az,worktree_create_ms:Uz}),Wz("info","bridge_session_started",{spawn_mode:l,in_worktree:k.has(X),spawn_duration_ms:Az,worktree_create_ms:Uz}),_.set(X,Dz),y.set(X,j.id),x.set(X,D.session_ingress_token),P.set(X,e);let wz=Date.now();M.set(X,wz),Z.logSessionStart(X,`Session ${X}`);let yz=Iz(X),Gz;if(z.debugFile){let W=z.debugFile.lastIndexOf(".");if(W>0)Gz=`${z.debugFile.slice(0,W)}-${yz}${z.debugFile.slice(W)}`;else Gz=`${z.debugFile}-${yz}`}else if(z.verbose)Gz=UK(DK(),"claude",`bridge-session-${yz}.log`);if(Gz)Z.logVerbose(`Debug log: ${Gz}`);Z.addSession(e,AJ(e,z.sessionIngressUrl)),Oz(),Z.setAttached(e),mK(e,z.apiBaseUrl).then((W)=>{if(W&&_.has(X))d.add(e),Z.setSessionTitle(e,W),q(`[bridge:title] server title for ${e}: ${W}`)}).catch((W)=>q(`[bridge:title] failed to fetch title for ${e}: ${W}`,{level:"error"}));let Bz=z.sessionTimeoutMs??LJ;if(Bz>0){let W=setTimeout(wK,Bz,X,Bz,Z,b,Dz);N.set(X,W)}if(Yz)m.add(X);a?.schedule(X,D.session_ingress_token),Dz.done.then(Jz(X,wz,Dz));break}default:await v(),q(`[bridge:work] Unknown work type: ${u}, skipping`);break}if(H){let X=S.signal();if(Q.non_exclusive_heartbeat_interval_ms>0)await Xz(),await i(Q.non_exclusive_heartbeat_interval_ms,X.signal);else if(Q.multisession_poll_interval_ms_at_capacity>0)await i(Q.multisession_poll_interval_ms_at_capacity,X.signal);X.cleanup()}}catch(j){if(A.aborted)break;if(j instanceof xz){if(Vz=!0,cz(j.errorType))Z.logStatus(j.message);else if(iz(j))q(`[bridge:work] Suppressed 403 error: ${j.message}`);else Z.logError(j.message),Ez(j);zz("",{status:j.status,error_type:j.errorType}),Wz(cz(j.errorType)?"info":"error","bridge_fatal_error",{status:j.status,error_type:j.errorType});break}let E=UJ(j);if(xK(j)||MK(j)){let H=Date.now();if(G!==null&&H-G>FJ(B))q(`[bridge:work] Detected system sleep (${Math.round((H-G)/1000)}s gap), resetting error budget`),Wz("info","bridge_poll_sleep_detected",{gapMs:H-G}),p=null,jz=0,$=null,t=0;if(G=H,!p)p=H;let D=H-p;if(D>=B.connGiveUpMs){Z.logError(`Server unreachable for ${Math.round(D/60000)} minutes, giving up.`),zz("",{error_type:"connection",elapsed_ms:D}),Wz("error","bridge_poll_give_up",{error_type:"connection",elapsed_ms:D}),Vz=!0;break}$=null,t=0,jz=jz?Math.min(jz*2,B.connCapMs):B.connInitialMs;let v=dz(jz);if(Z.logVerbose(`Connection error, retrying in ${bz(v)} (${Math.round(D/1000)}s elapsed): ${E}`),Z.updateReconnectingStatus(bz(v),qz(D)),Tz().non_exclusive_heartbeat_interval_ms>0)await Xz();await i(v,A)}else{let H=Date.now();if(G!==null&&H-G>FJ(B))q(`[bridge:work] Detected system sleep (${Math.round((H-G)/1000)}s gap), resetting error budget`),Wz("info","bridge_poll_sleep_detected",{gapMs:H-G}),p=null,jz=0,$=null,t=0;if(G=H,!$)$=H;let D=H-$;if(D>=B.generalGiveUpMs){Z.logError(`Persistent errors for ${Math.round(D/60000)} minutes, giving up.`),zz("",{error_type:"general",elapsed_ms:D}),Wz("error","bridge_poll_give_up",{error_type:"general",elapsed_ms:D}),Vz=!0;break}p=null,jz=0,t=t?Math.min(t*2,B.generalCapMs):B.generalInitialMs;let v=dz(t);if(Z.logVerbose(`Poll failed, retrying in ${bz(v)} (${Math.round(D/1000)}s elapsed): ${E}`),Z.updateReconnectingStatus(bz(v),qz(D)),Tz().non_exclusive_heartbeat_interval_ms>0)await Xz();await i(v,A)}}}Qz(),Z.clearStatus();let Kz=Date.now()-$z;zz("",{active_sessions:_.size,loop_duration_ms:Kz}),Wz("info","bridge_shutdown",{active_sessions:_.size,loop_duration_ms:Kz});let r=new Set(_.keys());if(U)r.add(U);let Mz=new Map(P);if(_.size>0){q(`[bridge:shutdown] Shutting down ${_.size} active session(s)`),Z.logStatus(`Shutting down ${_.size} active session(s)…`);let Q=new Map(y);for(let[E,H]of _.entries())q(`[bridge:shutdown] Sending SIGTERM to sessionId=${E}`),H.kill();let j=new AbortController;await Promise.race([Promise.allSettled([..._.values()].map((E)=>E.done)),i(B.shutdownGraceMs??30000,j.signal)]),j.abort();for(let[E,H]of _.entries())q(`[bridge:shutdown] Force-killing stuck sessionId=${E}`),H.forceKill();for(let E of N.values())clearTimeout(E);if(N.clear(),a?.cancelAll(),k.size>0){let E=[...k.values()];k.clear(),q(`[bridge:shutdown] Cleaning up ${E.length} worktree(s)`),await Promise.allSettled(E.map((H)=>vz(H.worktreePath,H.worktreeBranch,H.gitRoot,H.hookBased)))}await Promise.allSettled([...Q.entries()].map(([E,H])=>{return Y.stopWork(J,H,!0).catch((D)=>Z.logVerbose(`Failed to stop work ${H} for session ${E}: ${g(D)}`))}))}if(n.size>0)await Promise.allSettled([...n]);if(r.size>0)q(`[bridge:shutdown] Archiving ${r.size} session(s)`),await Promise.allSettled([...r].map((Q)=>Y.archiveSession(Mz.get(Q)??pz(Q)).catch((j)=>Z.logVerbose(`Failed to archive session ${Q}: ${g(j)}`))));try{await Y.deregisterEnvironment(J),q("[bridge:shutdown] Environment deregistered, bridge offline"),Z.logVerbose("Environment deregistered.")}catch(Q){Z.logVerbose(`Failed to deregister environment: ${g(Q)}`)}let{clearBridgePointer:Fz}=await import("./bridgePointer-1.1.28-wpzz2yca.mjs");await Fz(z.dir),Z.logVerbose("Environment offline.")}var TK=new Set(["ECONNREFUSED","ECONNRESET","ETIMEDOUT","ENETUNREACH","EHOSTUNREACH"]);function xK(z){if(z&&typeof z==="object"&&"code"in z&&typeof z.code==="string"&&TK.has(z.code))return!0;return!1}function MK(z){return!!z&&typeof z==="object"&&"code"in z&&typeof z.code==="string"&&z.code==="ERR_BAD_RESPONSE"}function dz(z){return Math.max(0,z+z*0.25*(2*Math.random()-1))}function bz(z){return z>=1000?`${(z/1000).toFixed(1)}s`:`${Math.round(z)}ms`}async function kz(z,J,K,Y,O=1000){for(let R=1;R<=3;R++)try{await z.stopWork(J,K,!1),q(`[bridge:work] stopWork succeeded for workId=${K} on attempt ${R}/3`);return}catch(B){if(B instanceof xz){if(iz(B))q(`[bridge:work] Suppressed stopWork 403 for ${K}: ${B.message}`);else Y.logError(`Failed to stop work ${K}: ${B.message}`);Wz("error","bridge_stop_work_failed",{attempts:R,fatal:!0});return}let U=g(B);if(R<3){let F=dz(O*Math.pow(2,R-1));Y.logVerbose(`Failed to stop work ${K} (attempt ${R}/3), retrying in ${bz(F)}: ${U}`),await i(F)}else Y.logError(`Failed to stop work ${K} after 3 attempts: ${U}`),Wz("error","bridge_stop_work_failed",{attempts:3})}}function wK(z,J,K,Y,O){q(`[bridge:session] sessionId=${z} timed out after ${qz(J)}`),zz("",{timeout_ms:J}),K.logSessionFailed(z,`Session timed out after ${qz(J)}`),Y.add(z),O.kill()}var fK=["session","same-dir","worktree"];function kK(z){if(z==="session")return"single-session";if(z==="same-dir")return"same-dir";if(z==="worktree")return"worktree";return`--spawn requires one of: ${fK.join(", ")} (got: ${z??"<missing>"})`}function bK(z){let J=z===void 0?NaN:parseInt(z,10);if(isNaN(J)||J<1)return`--capacity requires a positive integer (got: ${z??"<missing>"})`;return J}function IK(z){let J=!1,K=!1,Y,O,Z,R,B=!1,U,F,L,A,_=!1;for(let y=0;y<z.length;y++){let P=z[y];if(P==="--help"||P==="-h")B=!0;else if(P==="--verbose"||P==="-v")J=!0;else if(P==="--sandbox")K=!0;else if(P==="--no-sandbox")K=!1;else if(P==="--debug-file"&&y+1<z.length)Y=lz(z[++y]);else if(P.startsWith("--debug-file="))Y=lz(P.slice(13));else if(P==="--session-timeout"&&y+1<z.length)O=parseInt(z[++y],10)*1000;else if(P.startsWith("--session-timeout="))O=parseInt(P.slice(18),10)*1000;else if(P==="--permission-mode"&&y+1<z.length)Z=z[++y];else if(P.startsWith("--permission-mode="))Z=P.slice(18);else if(P==="--name"&&y+1<z.length)R=z[++y];else if(P.startsWith("--name="))R=P.slice(7);else if(P==="--spawn"||P.startsWith("--spawn=")){if(U!==void 0)return M("--spawn may only be specified once");let x=P.startsWith("--spawn=")?P.slice(8):z[++y],N=kK(x);if(N==="single-session"||N==="same-dir"||N==="worktree")U=N;else return M(N)}else if(P==="--capacity"||P.startsWith("--capacity=")){if(F!==void 0)return M("--capacity may only be specified once");let x=P.startsWith("--capacity=")?P.slice(11):z[++y],N=bK(x);if(typeof N==="number")F=N;else return M(N)}else if(P==="--create-session-in-dir")L=!0;else if(P==="--no-create-session-in-dir")L=!1;else return M(`Unknown argument: ${P}
|
|
38
|
-
Run 'claudin remote-control --help' for usage.`)}if(U==="single-session"&&F!==void 0)return M("--capacity cannot be used with --spawn=session (single-session mode has fixed capacity 1).");if((A||_)&&(U!==void 0||F!==void 0||L!==void 0))return M("--session-id and --continue cannot be used with --spawn, --capacity, or --create-session-in-dir.");if(A&&_)return M("--session-id and --continue cannot be used together.");return{verbose:J,sandbox:K,debugFile:Y,sessionTimeoutMs:O,permissionMode:Z,name:R,spawnMode:U,capacity:F,createSessionInDir:L,sessionId:A,continueSession:_,help:B};function M(y){return{verbose:J,sandbox:K,debugFile:Y,sessionTimeoutMs:O,permissionMode:Z,name:R,spawnMode:U,capacity:F,createSessionInDir:L,sessionId:A,continueSession:_,help:B,error:y}}}async function vK(){let{EXTERNAL_PERMISSION_MODES:z}=await import("./permissions-1.1.28-4dzfyh6m.mjs"),J=z.join(", "),K=await vJ(),Y=K?` --spawn <mode> Spawn mode: same-dir, worktree, session
|
|
39
|
-
(default: same-dir)
|
|
40
|
-
--capacity <N> Max concurrent sessions in worktree or
|
|
41
|
-
same-dir mode (default: ${IJ})
|
|
42
|
-
--[no-]create-session-in-dir Pre-create a session in the current
|
|
43
|
-
directory; in worktree mode this session
|
|
44
|
-
stays in cwd while on-demand sessions get
|
|
45
|
-
isolated worktrees (default: on)
|
|
46
|
-
`:"",R=`
|
|
47
|
-
Remote Control - Connect your local environment to claude.ai/code
|
|
48
|
-
|
|
49
|
-
USAGE
|
|
50
|
-
claudin remote-control [options]
|
|
51
|
-
OPTIONS
|
|
52
|
-
--name <name> Name for the session (shown in claude.ai/code)
|
|
53
|
-
--permission-mode <mode> Permission mode for spawned sessions
|
|
54
|
-
(${J})
|
|
55
|
-
--debug-file <path> Write debug logs to file
|
|
56
|
-
-v, --verbose Enable verbose output
|
|
57
|
-
-h, --help Show this help
|
|
58
|
-
${Y}
|
|
59
|
-
DESCRIPTION
|
|
60
|
-
Remote Control allows you to control sessions on your local device from
|
|
61
|
-
claude.ai/code (https://claude.ai/code). Run this command in the
|
|
62
|
-
directory you want to work in, then connect from the Claude app or web.
|
|
63
|
-
${K?`
|
|
64
|
-
Remote Control runs as a persistent server that accepts multiple concurrent
|
|
65
|
-
sessions in the current directory. One session is pre-created on start so
|
|
66
|
-
you have somewhere to type immediately. Use --spawn=worktree to isolate
|
|
67
|
-
each on-demand session in its own git worktree, or --spawn=session for
|
|
68
|
-
the classic single-session mode (exits when that session ends). Press 'w'
|
|
69
|
-
during runtime to toggle between same-dir and worktree.
|
|
70
|
-
`:""}
|
|
71
|
-
NOTES
|
|
72
|
-
- You must be logged in with a Claude account that has a subscription
|
|
73
|
-
- Run \`claudin\` first in the directory to accept the workspace trust dialog
|
|
74
|
-
${K?` - Worktree mode requires a git repository or WorktreeCreate/WorktreeRemove hooks
|
|
75
|
-
`:""}`;console.log(R)}var hK=80;function SK(z){let J=z.replace(/\s+/g," ").trim();return Rz(J,hK)}async function mK(z,J){let{getBridgeSession:K}=await import("./createSession-1.1.28-gbrmw9ad.mjs");return(await K(z,{baseUrl:J}))?.title||void 0}async function fZ(z){let J=IK(z);if(J.help){await vK();return}if(J.error)console.error(`Error: ${J.error}`),process.exit(1);let{verbose:K,sandbox:Y,debugFile:O,sessionTimeoutMs:Z,permissionMode:R,name:B,spawnMode:U,capacity:F,createSessionInDir:L,sessionId:A,continueSession:_}=J,M=A,y,P=U!==void 0||F!==void 0||L!==void 0;if(R!==void 0){let{PERMISSION_MODES:W}=await import("./permissions-1.1.28-4dzfyh6m.mjs"),C=W;if(!C.includes(R))console.error(`Error: Invalid permission mode '${R}'. Valid modes: ${C.join(", ")}`),process.exit(1)}let x=lz("."),{enableConfigs:N,checkHasTrustDialogAccepted:f}=await import("./config-1.1.28-cryax439.mjs");N();let{initSinks:k}=await import("./sinks-1.1.28-rdvsx829.mjs");k();let b=await vJ();if(P&&!b)await _J("",{used_spawn:U!==void 0,used_capacity:F!==void 0,used_create_session_in_dir:L!==void 0}),await Promise.race([Promise.all([RJ(),CJ()]),i(500,void 0,{unref:!0})]).catch(()=>{}),console.error("Error: Multi-session Remote Control is not enabled for your account yet."),process.exit(1);let{setOriginalCwd:d,setCwdState:S}=await import("./state-1.1.28-fd27gqw0.mjs");if(d(x),S(x),!f())console.error(`Error: Workspace not trusted. Please run \`claude\` in ${x} first to review and accept the workspace trust dialog.`),process.exit(1);let{clearOAuthTokenCache:Xz,checkAndRefreshOAuthTokenIfNeeded:m}=await import("./auth-1.1.28-ht6j3ag3.mjs"),{getBridgeAccessToken:a,getBridgeBaseUrl:$z}=await import("./bridgeConfig-1.1.28-m986jcxg.mjs");if(!a())console.error(oz),process.exit(1);let{getGlobalConfig:o,saveGlobalConfig:jz,getCurrentProjectConfig:t,saveCurrentProjectConfig:p}=await import("./config-1.1.28-cryax439.mjs");if(!o().remoteDialogSeen){let C=(await import("readline")).createInterface({input:process.stdin,output:process.stdout});console.log(`
|
|
76
|
-
Remote Control lets you access this CLI session from the web (claude.ai/code)
|
|
77
|
-
or the Claude app, so you can pick up where you left off on any device.
|
|
78
|
-
|
|
79
|
-
You can disconnect remote access anytime by running /remote-control again.
|
|
80
|
-
`);let h=await new Promise((Hz)=>{C.question("Enable Remote Control? (y/n) ",Hz)});if(C.close(),jz((Hz)=>{if(Hz.remoteDialogSeen)return Hz;return{...Hz,remoteDialogSeen:!0}}),h.toLowerCase()!=="y"&&h.toLowerCase()!=="yes")process.exit(0)}let $=$z();if($.startsWith("http://")&&!$.includes("localhost")&&!$.includes("127.0.0.1"))console.error("Error: Remote Control base URL uses HTTP. Only HTTPS or localhost HTTP is allowed."),process.exit(1);let G=process.env.CLAUDE_BRIDGE_SESSION_INGRESS_URL||$,{getBranch:w,getRemoteUrl:Vz,findGitRoot:_z}=await import("./git-1.1.28-ktf61jaz.mjs"),{hasWorktreeCreateHook:Oz}=await import("./hooks-1.1.28-xhtrbwa5.mjs"),Qz=Oz()||_z(x)!==null,Jz=b?t().remoteControlSpawnMode:void 0;if(Jz==="worktree"&&!Qz)console.error("Warning: Saved spawn mode is worktree but this directory is not a git repository. Falling back to same-dir."),Jz=void 0,p((W)=>{if(W.remoteControlSpawnMode===void 0)return W;return{...W,remoteControlSpawnMode:void 0}});if(b&&!Jz&&Qz&&U===void 0&&!M&&process.stdin.isTTY){let C=(await import("readline")).createInterface({input:process.stdin,output:process.stdout});console.log(`
|
|
81
|
-
Claude Remote Control is launching in spawn mode which lets you create new sessions in this project from Claude Code on Web or your Mobile app. Learn more here: https://code.claude.com/docs/en/remote-control
|
|
82
|
-
|
|
83
|
-
Spawn mode for this project:
|
|
84
|
-
`+` [1] same-dir — sessions share the current directory (default)
|
|
85
|
-
`+` [2] worktree — each session gets an isolated git worktree
|
|
86
|
-
|
|
87
|
-
`+`This can be changed later or explicitly set with --spawn=same-dir or --spawn=worktree.
|
|
88
|
-
`);let h=await new Promise((Pz)=>{C.question("Choose [1/2] (default: 1): ",Pz)});C.close();let Hz=h.trim()==="2"?"worktree":"same-dir";Jz=Hz,zz("",{spawn_mode:Hz}),p((Pz)=>{if(Pz.remoteControlSpawnMode===Hz)return Pz;return{...Pz,remoteControlSpawnMode:Hz}})}let Kz,r;if(M)r="single-session",Kz="resume";else if(U!==void 0)r=U,Kz="flag";else if(Jz!==void 0)r=Jz,Kz="saved";else r=b?"same-dir":"single-session",Kz="gate_default";let Mz=r==="single-session"?1:F??IJ,Fz=L??!0;if(!M){let{clearBridgePointer:W}=await import("./bridgePointer-1.1.28-wpzz2yca.mjs");await W(x)}if(r==="worktree"&&!Qz)console.error("Error: Worktree mode requires a git repository or WorktreeCreate hooks configured. Use --spawn=session for single-session mode."),process.exit(1);let Q=await w(),j=await Vz(),E=bJ(),H=Sz(),{handleOAuth401Error:D}=await import("./auth-1.1.28-ht6j3ag3.mjs"),v=rz({baseUrl:$,getAccessToken:a,runnerVersion:"99.0.0",onDebug:q,onAuth401:D,getTrustedDeviceToken:az}),u,X={dir:x,machineName:E,branch:Q,gitRepoUrl:j,maxSessions:Mz,spawnMode:r,verbose:K,sandbox:Y,bridgeId:H,workerType:"claude_code",environmentId:Sz(),reuseEnvironmentId:u,apiBaseUrl:$,sessionIngressUrl:G,debugFile:O,sessionTimeoutMs:Z};q(`[bridge:init] bridgeId=${H}${u?` reuseEnvironmentId=${u}`:""} dir=${x} branch=${Q} gitRepoUrl=${j} machine=${E}`),q(`[bridge:init] apiBaseUrl=${$} sessionIngressUrl=${G}`),q(`[bridge:init] sandbox=${Y}${O?` debugFile=${O}`:""}`);let T,c;try{let W=await v.registerBridgeEnvironment(X);T=W.environment_id,c=W.environment_secret}catch(W){zz("",{status:W instanceof xz?W.status:void 0}),console.error(W instanceof xz&&W.status===404?"Remote Control environments are not available for your account.":`Error: ${g(W)}`),process.exit(1)}let s;q(`[bridge:init] Registered, server environmentId=${T}`);let Yz=Tz();zz("",{max_sessions:X.maxSessions,has_debug_file:!!X.debugFile,sandbox:X.sandbox,verbose:X.verbose,heartbeat_interval_ms:Yz.non_exclusive_heartbeat_interval_ms,spawn_mode:X.spawnMode,spawn_mode_source:Kz,multi_session_gate:b,pre_create_session:Fz,worktree_available:Qz}),Wz("info","bridge_started",{max_sessions:X.maxSessions,sandbox:X.sandbox,spawn_mode:X.spawnMode});let Zz=gz({execPath:process.execPath,scriptArgs:hJ(),env:process.env,verbose:K,sandbox:Y,debugFile:O,permissionMode:R,onDebug:q,onActivity:(W,C)=>{q(`[bridge:activity] sessionId=${W} ${C.type} ${C.summary}`)},onPermissionRequest:(W,C,h)=>{q(`[bridge:perm] sessionId=${W} tool=${C.request.tool_name} request_id=${C.request_id} (not auto-approving)`)}}),l=VJ({verbose:K}),{parseGitHubRepository:Nz}=await import("./detectRepository-1.1.28-mxrqqjv6.mjs"),Uz=j?Nz(j):null,e=Uz?Uz.split("/").pop():AK(x);l.setRepoInfo(e,Q);let Lz=r!=="single-session"&&Qz;if(Lz)l.setSpawnModeDisplay(r);let Dz=(W)=>{if(W[0]===3||W[0]===4){process.emit("SIGINT");return}if(W[0]===32){l.toggleQr();return}if(W[0]===119){if(!Lz)return;let C=X.spawnMode==="same-dir"?"worktree":"same-dir";X.spawnMode=C,zz("",{spawn_mode:C}),l.logStatus(C==="worktree"?"Spawn mode: worktree (new sessions get isolated git worktrees)":"Spawn mode: same-dir (new sessions share the current directory)"),l.setSpawnModeDisplay(C),l.refreshDisplay(),p((h)=>{if(h.remoteControlSpawnMode===C)return h;return{...h,remoteControlSpawnMode:C}});return}};if(process.stdin.isTTY)process.stdin.setRawMode(!0),process.stdin.resume(),process.stdin.on("data",Dz);let Az=new AbortController,wz=()=>{q("[bridge:shutdown] SIGINT received, shutting down"),Az.abort()},yz=()=>{q("[bridge:shutdown] SIGTERM received, shutting down"),Az.abort()};process.on("SIGINT",wz),process.on("SIGTERM",yz);let Gz=null;if(Fz){let{createBridgeSession:W}=await import("./createSession-1.1.28-gbrmw9ad.mjs");try{if(Gz=await W({environmentId:T,title:B,events:[],gitRepoUrl:j,branch:Q,signal:Az.signal,baseUrl:$,getAccessToken:a,permissionMode:R}),Gz)q(`[bridge:init] Created initial session ${Gz}`)}catch(C){q(`[bridge:init] Session creation failed (non-fatal): ${g(C)}`)}}let Bz=null;if(Gz&&r==="single-session"){let{writeBridgePointer:W}=await import("./bridgePointer-1.1.28-wpzz2yca.mjs"),C={sessionId:Gz,environmentId:T,source:"standalone"};await W(X.dir,C),Bz=setInterval(W,3600000,X.dir,C),Bz.unref?.()}try{await SJ(X,T,c,v,Zz,l,Az.signal,void 0,Gz??void 0,async()=>{return Xz(),await m(),a()})}finally{if(Bz!==null)clearInterval(Bz);if(process.off("SIGINT",wz),process.off("SIGTERM",yz),process.stdin.off("data",Dz),process.stdin.isTTY)process.stdin.setRawMode(!1);process.stdin.pause()}process.exit(0)}class hz extends Error{constructor(z){super(z);this.name="BridgeHeadlessPermanentError"}}async function kZ(z,J){let{dir:K,log:Y}=z;process.chdir(K);let{setOriginalCwd:O,setCwdState:Z}=await import("./state-1.1.28-fd27gqw0.mjs");O(K),Z(K);let{enableConfigs:R,checkHasTrustDialogAccepted:B}=await import("./config-1.1.28-cryax439.mjs");R();let{initSinks:U}=await import("./sinks-1.1.28-rdvsx829.mjs");if(U(),!B())throw new hz(`Workspace not trusted: ${K}. Run \`claude\` in that directory first to accept the trust dialog.`);if(!z.getAccessToken())throw Error(oz);let{getBridgeBaseUrl:F}=await import("./bridgeConfig-1.1.28-m986jcxg.mjs"),L=F();if(L.startsWith("http://")&&!L.includes("localhost")&&!L.includes("127.0.0.1"))throw new hz("Remote Control base URL uses HTTP. Only HTTPS or localhost HTTP is allowed.");let A=process.env.CLAUDE_BRIDGE_SESSION_INGRESS_URL||L,{getBranch:_,getRemoteUrl:M,findGitRoot:y}=await import("./git-1.1.28-ktf61jaz.mjs"),{hasWorktreeCreateHook:P}=await import("./hooks-1.1.28-xhtrbwa5.mjs");if(z.spawnMode==="worktree"){if(!(P()||y(K)!==null))throw new hz(`Worktree mode requires a git repository or WorktreeCreate hooks. Directory ${K} has neither.`)}let x=await _(),N=await M(),f=bJ(),k=Sz(),b={dir:K,machineName:f,branch:x,gitRepoUrl:N,maxSessions:z.capacity,spawnMode:z.spawnMode,verbose:!1,sandbox:z.sandbox,bridgeId:k,workerType:"claude_code",environmentId:Sz(),apiBaseUrl:L,sessionIngressUrl:A,sessionTimeoutMs:z.sessionTimeoutMs},d=rz({baseUrl:L,getAccessToken:z.getAccessToken,runnerVersion:"99.0.0",onDebug:Y,onAuth401:z.onAuth401,getTrustedDeviceToken:az}),S,Xz;try{let n=await d.registerBridgeEnvironment(b);S=n.environment_id,Xz=n.environment_secret}catch(n){throw Error(`Bridge registration failed: ${g(n)}`)}let m=gz({execPath:process.execPath,scriptArgs:hJ(),env:process.env,verbose:!1,sandbox:z.sandbox,permissionMode:z.permissionMode,onDebug:Y}),a=uK(Y);a.printBanner(b,S);let $z;if(z.createSessionOnStart){let{createBridgeSession:n}=await import("./createSession-1.1.28-gbrmw9ad.mjs");try{let o=await n({environmentId:S,title:z.name,events:[],gitRepoUrl:N,branch:x,signal:J,baseUrl:L,getAccessToken:z.getAccessToken,permissionMode:z.permissionMode});if(o)$z=o,Y(`created initial session ${o}`)}catch(o){Y(`session pre-creation failed (non-fatal): ${g(o)}`)}}await SJ(b,S,Xz,d,m,a,J,void 0,$z,async()=>z.getAccessToken())}function uK(z){let J=()=>{};return{printBanner:(K,Y)=>z(`registered environmentId=${Y} dir=${K.dir} spawnMode=${K.spawnMode} capacity=${K.maxSessions}`),logSessionStart:(K,Y)=>z(`session start ${K}`),logSessionComplete:(K,Y)=>z(`session complete ${K} (${Y}ms)`),logSessionFailed:(K,Y)=>z(`session failed ${K}: ${Y}`),logStatus:z,logVerbose:z,logError:(K)=>z(`error: ${K}`),logReconnected:(K)=>z(`reconnected after ${K}ms`),addSession:(K,Y)=>z(`session attached ${K}`),removeSession:(K)=>z(`session detached ${K}`),updateIdleStatus:J,updateReconnectingStatus:J,updateSessionStatus:J,updateSessionActivity:J,updateSessionCount:J,updateFailedStatus:J,setSpawnModeDisplay:J,setRepoInfo:J,setAttached:J,setSessionTitle:J,clearStatus:J,toggleQr:J,refreshDisplay:J}}export{SJ as runBridgeLoop,kZ as runBridgeHeadless,IK as parseArgs,MK as isServerError,xK as isConnectionError,fZ as bridgeMain,hz as BridgeHeadlessPermanentError};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{cX as S,dX as c}from"./cli-1.1.28-qb921m5a.mjs";import{Bja as G,Cja as A,Gja as M,Jja as Y,Kja as O,Lja as N,Mja as _}from"./cli-1.1.28-12g8qyfk.mjs";import{Gla as C,Jla as k,jla as K,kla as W,ola as R}from"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import{gma as y,lma as j}from"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-3fssr567.mjs";O();k();j();c();_();M();R();import{mkdir as z,readFile as E,stat as T,unlink as m,writeFile as B}from"fs/promises";import{dirname as b,join as f}from"path";var I=50,u=14400000,D=N(()=>Y.object({sessionId:Y.string(),environmentId:Y.string(),source:Y.enum(["standalone","repl"])}));function J(q){return f(A(),G(q),"bridge-pointer.json")}async function g(q,x){let v=J(q);try{await z(b(v),{recursive:!0}),await B(v,K(x),"utf8"),C(`[bridge:pointer] wrote ${v}`)}catch(V){C(`[bridge:pointer] write failed: ${V}`,{level:"warn"})}}async function U(q){let x=J(q),v,V;try{V=(await T(x)).mtimeMs,v=await E(x,"utf8")}catch{return null}let Z=D().safeParse(F(v));if(!Z.success)return C(`[bridge:pointer] invalid schema, clearing: ${x}`),await X(q),null;let $=Math.max(0,Date.now()-V);if($>u)return C(`[bridge:pointer] stale (>4h mtime), clearing: ${x}`),await X(q),null;return{...Z.data,ageMs:$}}async function s(q){let x=await U(q);if(x)return{pointer:x,dir:q};let v=await S(q);if(v.length<=1)return null;if(v.length>I)return C(`[bridge:pointer] ${v.length} worktrees exceeds fanout cap ${I}, skipping`),null;let V=G(q),Z=v.filter((H)=>G(H)!==V),$=await Promise.all(Z.map(async(H)=>{let L=await U(H);return L?{pointer:L,dir:H}:null})),Q=null;for(let H of $)if(H&&(!Q||H.pointer.ageMs<Q.pointer.ageMs))Q=H;if(Q)C(`[bridge:pointer] fanout found pointer in worktree ${Q.dir} (ageMs=${Q.pointer.ageMs})`);return Q}async function X(q){let x=J(q);try{await m(x),C(`[bridge:pointer] cleared ${x}`)}catch(v){if(!y(v))C(`[bridge:pointer] clear failed: ${v}`,{level:"warn"})}}function F(q){try{return W(q)}catch{return null}}export{g as writeBridgePointer,s as readBridgePointerAcrossWorktrees,U as readBridgePointer,J as getBridgePointerPath,X as clearBridgePointer,u as BRIDGE_POINTER_TTL_MS};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Gi as a,Hi as AJ}from"./cli-1.1.28-z4kzjv3v.mjs";import{Ii as x,Ji as vJ}from"./cli-1.1.28-q6dv65zx.mjs";import{$y as HJ,AS as o,CI as $,DI as bJ,IR as TJ,Kx as u,Lx as IJ,PS as hJ,TU as s,UU as t,VU as DJ,Zy as m,jF as c,pF as WJ,wo as g,xR as r,xo as UJ}from"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import{YY as i,ZY as QJ,tZ as l,vZ as kJ}from"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import{L1 as W,N1 as b,c2 as S,e2 as KJ,m0 as GJ,q2 as NJ}from"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import{b5 as F,c5 as H,d5 as _}from"./cli-1.1.28-v5ypq0r2.mjs";import{e5 as zJ}from"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import{Bga as FJ,Tca as j,Uca as p,dga as C,kda as ZJ}from"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import{ema as f,lma as YJ}from"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import{Rta as R,Vta as XJ}from"./cli-1.1.28-3fssr567.mjs";function BJ(V){let J=n.c(25),{question:Y,context:z,onDone:G}=V,[Z,e]=N.useState(null),[K,y]=N.useState(null),[P,JJ]=N.useState(0),T=N.useRef(null),{rows:VJ}=l(i()),v;if(J[0]===Symbol.for("react.memo_cache_sentinel"))v=()=>JJ(EJ),J[0]=v;else v=J[0];S(v,Z||K?null:80);let A;if(J[1]!==G)A=function(X){if(X.key==="escape"||X.key==="return"||X.key===" "||X.ctrl&&(X.key==="c"||X.key==="d")){X.preventDefault(),G(void 0,{display:"skip"});return}if(X.key==="up"||X.ctrl&&X.key==="p")X.preventDefault(),T.current?.scrollBy(-d);if(X.key==="down"||X.ctrl&&X.key==="n")X.preventDefault(),T.current?.scrollBy(d)},J[1]=G,J[2]=A;else A=J[2];let h=A,w,L;if(J[3]!==z||J[4]!==Y)w=()=>{let q=g();return async function(){try{let O=await MJ(z),M=await a({question:Y,cacheSafeParams:O});if(!q.signal.aborted)if(M.response)e(M.response);else y("No response received")}catch(O){let M=O;if(!q.signal.aborted)y(f(M)||"Failed to get response")}}(),()=>{q.abort()}},L=[Y,z],J[3]=z,J[4]=Y,J[5]=w,J[6]=L;else w=J[5],L=J[6];N.useEffect(w,L);let D=Math.max(5,VJ-wJ-LJ),B;if(J[7]===Symbol.for("react.memo_cache_sentinel"))B=H(b,{color:"warning",bold:!0,children:["/btw"," "]}),J[7]=B;else B=J[7];let Q;if(J[8]!==Y)Q=H(W,{children:[B,F(b,{dimColor:!0,children:Y})]}),J[8]=Y,J[9]=Q;else Q=J[9];let U;if(J[10]!==K||J[11]!==P||J[12]!==Z)U=F(x,{ref:T,flexDirection:"column",flexGrow:1,children:K?F(b,{color:"error",children:K}):Z?F(m,{children:Z}):H(W,{children:[F($,{frame:P,messageColor:"warning"}),F(b,{color:"warning",children:"Answering..."})]})}),J[10]=K,J[11]=P,J[12]=Z,J[13]=U;else U=J[13];let k;if(J[14]!==D||J[15]!==U)k=F(W,{marginTop:1,marginLeft:2,maxHeight:D,children:U}),J[14]=D,J[15]=U,J[16]=k;else k=J[16];let I;if(J[17]!==K||J[18]!==Z)I=(Z||K)&&F(W,{marginTop:1,children:H(b,{dimColor:!0,children:[j,"/",p," to scroll · Space, Enter, or Escape to dismiss"]})}),J[17]=K,J[18]=Z,J[19]=I;else I=J[19];let E;if(J[20]!==h||J[21]!==Q||J[22]!==k||J[23]!==I)E=H(W,{flexDirection:"column",paddingLeft:2,marginTop:1,tabIndex:0,autoFocus:!0,onKeyDown:h,children:[Q,k,I]}),J[20]=h,J[21]=Q,J[22]=k,J[23]=I,J[24]=E;else E=J[24];return E}function EJ(V){return V+1}function qJ(V){let J=V.at(-1);if(J?.type==="assistant"&&J.message.stop_reason===null)return V.slice(0,-1);return V}async function MJ(V){let J=o(qJ(V.messages)),Y=c();if(Y)return{systemPrompt:Y.systemPrompt,userContext:Y.userContext,systemContext:Y.systemContext,toolUseContext:V,forkContextMessages:J};let[z,G,Z]=await Promise.all([r(V.options.tools,V.options.mainLoopModel,[],V.options.mcpClients),t(),s()]);return{systemPrompt:u(z),userContext:G,systemContext:Z,toolUseContext:V,forkContextMessages:J}}async function aJ(V,J,Y){let z=Y?.trim();if(!z)return V("Usage: /btw <your question>",{display:"system"}),null;return C((G)=>({...G,btwUseCount:G.btwUseCount+1})),F(BJ,{question:z,context:J,onDone:V})}var n,N,wJ=5,LJ=6,d=3;var PJ=XJ(()=>{KJ();HJ();bJ();ZJ();TJ();kJ();DJ();QJ();vJ();NJ();UJ();FJ();YJ();WJ();hJ();AJ();IJ();_();n=R(GJ(),1),N=R(zJ(),1)});PJ();export{aJ as call};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{UY as p,VY as f,WY as a,XY as S}from"./cli-1.1.28-j6nysca9.mjs";import{Bga as C,dga as d}from"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import{qka as m,rka as y,ska as b}from"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import{Vta as g}from"./cli-1.1.28-3fssr567.mjs";function R(t){let o=2166136261;for(let s=0;s<t.length;s++)o^=t.charCodeAt(s),o=Math.imul(o,16777619);return o>>>0}function r(t,o){return t[R(o)%t.length]}function M(t){return t.charAt(0).toUpperCase()+t.slice(1)}function O(){let t=f(),{bones:o}=p(`${t}:buddy`),s=r($,`${t}:prefix`),n=r(A,`${t}:suffix`),i=r(w,`${t}:personality`);return{name:`${s}${n}`,personality:`${i}.`,hatchedAt:Date.now()}}function l(t,o,s=!1){t.setAppState((n)=>({...n,companionReaction:o,companionPetAt:s?Date.now():n.companionPetAt}))}function c(t){t(`Usage: /buddy [status|mute|unmute]
|
|
2
|
-
|
|
3
|
-
Run /buddy with no args to hatch your companion the first time, then pet it on later runs.`,{display:"system"})}async function X(t,o,s){let n=s?.trim().toLowerCase()??"";if(m.includes(n)||n===""){let e=a();if(n!==""||e){if(n!=="")return c(t),null}}if(m.includes(n))return c(t),null;if(y.includes(n)||n==="status"){let e=a();if(!e)return t("No buddy hatched yet. Run /buddy to hatch one.",{display:"system"}),null;return t(`${e.name} is your ${M(e.rarity)} ${e.species}. ${e.personality}`,{display:"system"}),null}if(n==="mute"||n==="unmute"){let e=n==="mute";if(d((u)=>({...u,companionMuted:e})),e)l(o,void 0);return t(`Buddy ${e?"muted":"unmuted"}.`,{display:"system"}),null}if(n!=="")return c(t),null;let i=a();if(!i){let e=O();return d((u)=>({...u,companion:e,companionMuted:!1})),i={...p(`${f()}:buddy`).bones,...e},l(o,`${i.name} the ${i.species} has hatched.`,!0),t(`${i.name} the ${i.species} is now your buddy. Run /buddy again to pet them.`,{display:"system"}),null}let h=`${i.name} ${r(E,`${Date.now()}:${i.name}`)}`;return l(o,h,!0),t(void 0,{display:"skip"}),null}var $,A,w,E;var L=g(()=>{C();S();b();$=["Byte","Echo","Glint","Miso","Nova","Pixel","Rune","Static","Vector","Whisk"],A=["bean","bit","bud","dot","ling","loop","moss","patch","puff","spark"],w=["Curious and quietly encouraging","A patient little watcher with strong debugging instincts","Playful, observant, and suspicious of flaky tests","Calm under pressure and fond of clean diffs","A tiny terminal gremlin who likes successful builds"],E=["leans into the headpat","does a proud little bounce","emits a content beep","looks delighted","wiggles happily"]});L();export{X as call};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import{W3 as h,_3 as zz}from"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import{F7 as m,d8 as e}from"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import{Bha as y,Jha as s,Mha as v,Pha as r}from"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import{Gla as k,Jla as o}from"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import{csa as a,doa as b}from"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import{Vta as n}from"./cli-1.1.28-3fssr567.mjs";function Nz(J){if(!J)return"unknown";return J.replace(/-\d{4,}$/,"").replace(/-latest$/,"").replace(/-preview$/,"")}function Y(J,Q){return Q.split(".").reduce((X,O)=>X!=null?X[O]:void 0,J)}async function R(J,Q,X,O){let q=Date.now(),V;try{V=await fetch(J,{method:"POST",headers:Q,body:JSON.stringify(X)})}catch(B){return{label:O,status:0,elapsed:Date.now()-q,headers:{},usage:null,responseId:null,error:B.message}}let A=Date.now()-q,U={};if(V.headers.forEach((B,w)=>{U[w]=B}),!V.ok){let B=await V.text().catch(()=>"");return{label:O,status:V.status,elapsed:A,headers:U,usage:null,responseId:null,error:B}}let L=await V.text(),$=null,T=null,_=J.endsWith("/responses");for(let B of L.split(`
|
|
2
|
-
|
|
3
|
-
`)){let w=B.split(`
|
|
4
|
-
`).map((x)=>x.trim()).filter(Boolean);if(_){let x=w.find((z)=>z.startsWith("event: ")),j=w.filter((z)=>z.startsWith("data: "));if(!x||!j.length)continue;let C=x.slice(7).trim();if(C==="response.completed"||C==="response.incomplete")try{let z=JSON.parse(j.map((W)=>W.slice(6)).join(`
|
|
5
|
-
`));$=z?.response?.usage??null,T=z?.response?.id??null}catch{}}else for(let x of w){if(!x.startsWith("data: "))continue;let j=x.slice(6).trim();if(j==="[DONE]")continue;try{let C=JSON.parse(j);if(C.usage)$=C.usage,T=C.id??null}catch{}}}return{label:O,status:V.status,elapsed:A,headers:U,usage:$,responseId:T,error:null}}function S(J){let Q=[`--- ${J.label} ---`];if(J.error)return Q.push(` ERROR (HTTP ${J.status}): ${J.error.slice(0,200)}`),Q.join(`
|
|
6
|
-
`);if(Q.push(` HTTP ${J.status} — ${J.elapsed}ms`),J.responseId)Q.push(` response.id: ${J.responseId}`);if(J.usage)Q.push(" Usage:"),Q.push(` ${JSON.stringify(J.usage,null,2).replace(/\n/g,`
|
|
7
|
-
`)}`);else Q.push(" Usage: null");for(let X of["openai-processing-ms","x-ratelimit-remaining","x-ratelimit-limit","x-ms-region","x-github-request-id","x-request-id"])if(J.headers[X])Q.push(` ${X}: ${J.headers[X]}`);return Q.join(`
|
|
8
|
-
`)}var Jz,K,M='Say "hello" and nothing else.',g=3000,jz=async(J)=>{let Q=(J??"").trim().split(/\s+/).filter(Boolean),X=Q.includes("--no-key"),q=(Q.find((N)=>!N.startsWith("--"))||void 0)??m(),V=y({model:q}),A=v(),U=A?.transport==="github_copilot";if(U)h();let L=A?.apiKey??A?.extras?.githubToken??"";if(!L)return{type:"text",value:`No API key found. Make sure you are in an active OpenAI-compatible or GitHub Copilot session.
|
|
9
|
-
For GitHub Copilot: run /provider and choose GitHub Copilot.
|
|
10
|
-
For OpenAI-compatible: configure a profile via /provider.`};let $=V.transport==="codex_responses",T=$?"/responses":"/chat/completions",_=`${V.baseUrl}${T}`,B=Nz(V.resolvedModel),w=`${b()}:${B}`,x={"Content-Type":"application/json",Authorization:`Bearer ${L}`,originator:"claudin"};if(U)Object.assign(x,Jz);let j;if($)j={model:V.resolvedModel,instructions:K,input:[{type:"message",role:"user",content:[{type:"input_text",text:M}]}],stream:!0,...X?{}:{store:!1,prompt_cache_key:w}};else j={model:V.resolvedModel,messages:[{role:"system",content:K},{role:"user",content:M}],stream:!0,stream_options:{include_usage:!0},max_tokens:20,...X?{}:{store:!1,prompt_cache_key:w}};let C=[`[cache-probe] Starting cache probe${X?" (--no-key: cache params OMITTED)":""}`,` model: ${V.resolvedModel} (family: ${B})`,` transport: ${V.transport}`,` endpoint: ${_}`,` prompt_cache_key: ${X?"NOT SENT":w}`,` store: ${X?"NOT SENT":"false"}`,` system prompt: ~${Math.round(K.length/4)} tokens`,` delay between calls: ${g}ms`].join(`
|
|
11
|
-
`);k(C);let z=await R(_,x,j,"CALL 1 — Cold (no cache)");if(k(`[cache-probe]
|
|
12
|
-
${S(z)}`),z.error)return{type:"text",value:`Cache probe failed on first call: HTTP ${z.status}
|
|
13
|
-
${z.error.slice(0,300)}
|
|
14
|
-
|
|
15
|
-
Full details in debug log.`};await new Promise((N)=>setTimeout(N,g));let W=await R(_,x,j,"CALL 2 — Warm (cache expected)");k(`[cache-probe]
|
|
16
|
-
${S(W)}`);let c=["input_tokens","output_tokens","total_tokens","prompt_tokens","completion_tokens","input_tokens_details.cached_tokens","prompt_tokens_details.cached_tokens","output_tokens_details.reasoning_tokens"],Z=["[cache-probe] COMPARISON"];Z.push(` ${"Field".padEnd(42)} ${"Call 1".padStart(8)} ${"Call 2".padStart(8)} ${"Delta".padStart(8)}`),Z.push(` ${"-".repeat(72)}`);for(let N of c){let H=Y(z.usage,N),I=Y(W.usage,N);if(H===void 0&&I===void 0)continue;let i=typeof H==="number"&&typeof I==="number"?I-H:"";Z.push(` ${N.padEnd(42)} ${String(H??"-").padStart(8)} ${String(I??"-").padStart(8)} ${String(i).padStart(8)}`)}Z.push(""),Z.push(` Latency: ${z.elapsed}ms → ${W.elapsed}ms (${W.elapsed-z.elapsed>0?"+":""}${W.elapsed-z.elapsed}ms)`);for(let N of["openai-processing-ms","x-ms-region","x-ratelimit-remaining"]){let H=z.headers[N],I=W.headers[N];if(H||I)Z.push(` ${N}: ${H??"-"} → ${I??"-"}`)}let D=Y(W.usage,"input_tokens_details.cached_tokens")??Y(W.usage,"prompt_tokens_details.cached_tokens")??0,F=z.usage?.input_tokens??z.usage?.prompt_tokens??0,P=W.usage?.input_tokens??W.usage?.prompt_tokens??0,G;if(D>0){let N=P>0?Math.round(D/P*100):"?";G=`CACHE HIT: ${D} cached tokens (${N}% of input)`}else if(F===0&&P===0)G="INCONCLUSIVE: Server returns 0 input_tokens — cannot measure";else if(W.elapsed<z.elapsed*0.6&&F>100)G=`POSSIBLE SILENT CACHING: Call 2 was ${Math.round((1-W.elapsed/z.elapsed)*100)}% faster but no cached_tokens reported`;else G="NO CACHE DETECTED";Z.push(`
|
|
17
|
-
Verdict: ${G}`);function u(N){return{input_tokens:N?.input_tokens??0,output_tokens:N?.output_tokens??0,cache_creation_input_tokens:0,cache_read_input_tokens:0}}function p(N){return{input_tokens:N?.prompt_tokens??0,output_tokens:N?.completion_tokens??0,cache_creation_input_tokens:0,cache_read_input_tokens:N?.prompt_tokens_details?.cached_tokens??0}}let f=$?u:p,d=f(z.usage),E=f(W.usage);if(Z.push(""),Z.push(` --- What main's shim reports (${$?"codexShim.makeUsage":"openaiShim.convertChunkUsage"}) ---`),Z.push(` Call 1: cache_read_input_tokens=${d.cache_read_input_tokens}`),Z.push(` Call 2: cache_read_input_tokens=${E.cache_read_input_tokens}`),$&&D>0)Z.push(` BUG: Server returned ${D} cached tokens but main's makeUsage() drops it → reports 0`);else if(!$&&E.cache_read_input_tokens>0)Z.push(" OK: Chat Completions path on main correctly reads cached_tokens");k(Z.join(`
|
|
18
|
-
`));let t=X?" (NO cache key sent)":"",l=$?"codexShim.makeUsage()":"openaiShim.convertChunkUsage()";return{type:"text",value:[`Cache Probe — ${V.resolvedModel} via ${$?"Responses API":"Chat Completions"}${t}`,"",`Call 1: ${z.elapsed}ms, input=${F}, cached=${Y(z.usage,"input_tokens_details.cached_tokens")??Y(z.usage,"prompt_tokens_details.cached_tokens")??0}`,`Call 2: ${W.elapsed}ms, input=${P}, cached=${D}`,"",G,"",`What main's ${l} reports:`,` Call 2 cache_read_input_tokens = ${E.cache_read_input_tokens}${$&&D>0?" ← BUG: server sent "+D+" but main drops it":""}`,"","Full details written to debug log."].join(`
|
|
19
|
-
`)}};var Qz=n(()=>{a();r();s();o();zz();e();Jz={"User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.99.3","Editor-Plugin-Version":"copilot-chat/0.26.7","Copilot-Integration-Id":"vscode-chat"},K=["You are a coding assistant. Answer concisely.","CONTEXT: User is working on a TypeScript project with Bun runtime.",...Array.from({length:80},(J,Q)=>`Rule ${Q+1}: Follow best practices for TypeScript including strict typing, error handling, testing, and clean code. Prefer explicit types over any. Use const assertions. Await all async operations.`)].join(`
|
|
20
|
-
|
|
21
|
-
`)});Qz();export{jz as call};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{C3 as V,D3 as Y,E3 as Z,F3 as A,o3 as P,p3 as Q,r3 as w,y3 as U}from"./cli-1.1.28-83k0knzj.mjs";import{Vta as j}from"./cli-1.1.28-3fssr567.mjs";function H(k,D){let I=new Date(k.timestamp).toISOString(),B=`${I.slice(0,10)} ${I.slice(11,19)}`,J=P(k.metrics);return` #${String(D+1).padStart(3)} ${B} ${k.label.padEnd(28).slice(0,28)} ${J}`}function L(k,D){return`${k.padEnd(18)}${Q(D)}`}var F=20,b=async()=>{let k=Z(),D=Y(),I=U();if(k.length===0)return{type:"text",value:`Cache stats
|
|
2
|
-
No API requests yet this session.
|
|
3
|
-
Start a turn and re-run /cache-stats to see results.`};let B=k.slice(-F),J=k.length-B.length,q=["Cache stats",""];q.push(L("Current turn:",I)),q.push(L("Session total:",D));let G=V();if(G.events>0)q.push(`${"Server clears:".padEnd(18)}${G.events} event${G.events===1?"":"s"}, ${G.clearedToolUses} tool results, ${G.clearedInputTokens.toLocaleString("en-US")} input tokens cleared`);q.push(""),q.push(`Recent requests (${B.length}${J>0?` of ${k.length}, ${J} older omitted`:""}):`),q.push(" # time model cache");for(let[K,$]of B.entries())q.push(H($,k.length-B.length+K));if(B.some((K)=>!K.metrics.supported))q.push(""),q.push(" N/A rows: provider API does not expose cache usage (GitHub Copilot, Ollama)."),q.push(" The request still ran normally — only the metric is unavailable.");return{type:"text",value:q.join(`
|
|
4
|
-
`)}};var N=j(()=>{A();w()});N();export{b as call};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{dh as a,eh as b}from"./cli-1.1.28-6x9c71q9.mjs";import"./cli-1.1.28-davs3ve8.mjs";import"./cli-1.1.28-mk8zwqb2.mjs";import"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import"./cli-1.1.28-v5ypq0r2.mjs";import"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import"./cli-1.1.28-3fssr567.mjs";b();export{a as clearSessionCaches};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{$m as s,Cn as Uz,DU as P,Gp as v,Hp as Vz,ID as Z,JD as Bz,Jm as Qz,QU as Kz,VL as j,WL as Ez,Wm as M,Zk as F,_k as r,om as c,rn as W,sn as e,tP as n,vP as Xz,vu as x,wP as p,wu as zz,xn as u,yP as l,zP as Yz}from"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import"./cli-1.1.28-v5ypq0r2.mjs";import"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import{i_ as E,j_ as Lz}from"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import{$ha as g,Paa as o,hia as Nz,saa as q,ufa as R,xfa as t}from"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import{Dja as y,Gja as d}from"./cli-1.1.28-12g8qyfk.mjs";import{Pja as Y,Rja as f}from"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import{Gra as m,Hra as w,Rqa as C,csa as O,doa as G,goa as H,ioa as T,joa as b,loa as A,moa as I}from"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import{Vta as $}from"./cli-1.1.28-3fssr567.mjs";function h(){return k}function S(J){let B=Y();Z(J);let z=Y();try{process.chdir(z)}catch(N){throw Z(B),N}return H(G(),T()??y(b())),A(z),I(z),k=B,Jz(),{previousCwd:B,newCwd:z}}function Jz(){W(),P(),M.cache.clear?.(),F(),j.cache?.clear?.(),R.cache?.clear?.(),q.cache?.clear?.(),x()}var k=null;var D=$(()=>{s();e();r();Kz();Ez();t();O();zz();d();f();Bz();o()});import{dirname as Zz}from"node:path";function _z(J){let B=J.trim();if(!B)return{kind:"empty"};if(B==="-")return{kind:"previous"};return{kind:"path",path:B}}function $z(J,B,z){let N=[B?`${J.previousCwd} kept accessible for this session`:null,"transcript stays under the original project",z?"cancelled the pending /loop wakeup":null,"/cd - to return"].filter((V)=>V!==null);return`Moved this session to ${E.bold(J.newCwd)}
|
|
2
|
-
${E.dim(N.join(" · "))}`}function L(J){return{type:"text",value:J}}async function uz(J,B,z=Gz){let N=_z(J);if(N.kind==="empty")return L(`Usage: ${E.bold("/cd <path>")} — moves this session to another directory.
|
|
3
|
-
${E.dim("/cd - returns to the previous one.")}`);if(z.currentWorktreeSession())return L(`This session is inside a worktree. Use ${E.bold("ExitWorktree")} to leave it first, then ${E.bold("/cd")}.`);let V;if(N.kind==="previous"){let U=z.previousDir();if(!U)return L("This session has not moved yet, so there is no previous directory.");V=U}else V=N.path;let K=await z.resolveDirectory(V);if(K.resultType!=="success"){if(K.resultType==="notADirectory")return L(`${E.bold(K.directoryPath)} is not a directory. Did you mean ${E.bold(Zz(K.absolutePath))}?`);return L(l(K))}if(K.absolutePath===z.currentCwd())return L(`Already in ${E.bold(K.absolutePath)}.`);let a=z.hasPendingWakeup(),Q;try{Q=z.reroot(K.absolutePath)}catch(U){let X=U instanceof Error?U.message:"Unknown error";return g(Error(`/cd failed to move to ${K.absolutePath}: ${X}`)),L(`Could not move to ${E.bold(K.absolutePath)}: ${X}`)}let _=!n(Q.previousCwd,Q.newCwd);if(_){let U=u(B.getAppState().toolPermissionContext,{type:"addDirectories",directories:[Q.previousCwd],destination:"session"});B.setAppState((i)=>({...i,toolPermissionContext:U}));let X=m();if(!X.includes(Q.previousCwd))w([...X,Q.previousCwd])}return z.refreshSandbox(),L($z(Q,_,a))}var Gz;var Hz=$(()=>{Lz();Yz();Uz();Xz();O();Vz();D();f();Nz();Qz();Gz={currentWorktreeSession:c,resolveDirectory:p,reroot:S,previousDir:h,hasPendingWakeup:()=>C()!==null,currentCwd:Y,refreshSandbox:()=>v.refreshConfig()}});Hz();export{_z as parseCdTarget,$z as formatCdResult,uz as call};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$ha as X,Dda as x,Gda as A,Qaa as V,Raa as W,Saa as J,aca as k,fca as N,hia as H}from"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import{fma as b,lma as y}from"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-3fssr567.mjs";A();y();N();H();J();import{readdir as L,readFile as U,stat as Z}from"fs/promises";import{homedir as _}from"os";import{join as $}from"path";async function F(){let B=W();if(!V.includes(B))throw Error(`Unsupported platform: ${B} - Claude Desktop integration only works on macOS and WSL.`);if(B==="macos")return $(_(),"Library","Application Support","Claude","claude_desktop_config.json");let K=process.env.USERPROFILE?process.env.USERPROFILE.replace(/\\/g,"/"):null;if(K){let q=`/mnt/c${K.replace(/^[A-Z]:/,"")}/AppData/Roaming/Claude/claude_desktop_config.json`;try{return await Z(q),q}catch{}}try{try{let q=await L("/mnt/c/Users",{withFileTypes:!0});for(let z of q){if(z.name==="Public"||z.name==="Default"||z.name==="Default User"||z.name==="All Users")continue;let I=$("/mnt/c/Users",z.name,"AppData","Roaming","Claude","claude_desktop_config.json");try{return await Z(I),I}catch{}}}catch{}}catch(G){X(G)}throw Error("Could not find Claude Desktop config file in Windows. Make sure Claude Desktop is installed on Windows.")}async function v(){if(!V.includes(W()))throw Error("Unsupported platform - Claude Desktop integration only works on macOS and WSL.");try{let B=await F(),K;try{K=await U(B,{encoding:"utf8"})}catch(I){if(b(I)==="ENOENT")return{};throw I}let G=k(K);if(!G||typeof G!=="object")return{};let q=G.mcpServers;if(!q||typeof q!=="object")return{};let z={};for(let[I,Q]of Object.entries(q)){if(!Q||typeof Q!=="object")continue;let Y=x().safeParse(Q);if(Y.success)z[I]=Y.data}return z}catch(B){return X(B),{}}}export{v as readClaudeDesktopMcpServers,F as getClaudeDesktopConfigPath};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{AU as b,BU as c,CU as d,DU as e,EU as f,FU as g,GU as h,HU as i,IU as j,JU as k,KU as l,LU as m,MU as n,NU as o,OU as p,PU as q,QU as r,zU as a}from"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import"./cli-1.1.28-v5ypq0r2.mjs";import"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import"./cli-1.1.28-3fssr567.mjs";r();export{p as shouldShowClaudeMdExternalIncludesWarning,f as resetGetMemoryFilesCache,b as processMemoryFile,c as processMdRules,m as processConditionedMdRules,q as isMemoryFilePath,o as hasExternalClaudeMdIncludes,k as getMemoryFilesForNestedDirectory,d as getMemoryFiles,j as getManagedAndUserConditionalRules,g as getLargeMemoryFiles,n as getExternalClaudeMdIncludes,l as getConditionalRulesForCwdLevelDirectory,i as getClaudeMds,h as filterInjectedMemoryFiles,e as clearMemoryFileCaches,a as MAX_MEMORY_CHARACTER_COUNT};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{bh as b,ch as h}from"./cli-1.1.28-evvcbjb6.mjs";import"./cli-1.1.28-6x9c71q9.mjs";import"./cli-1.1.28-x04zkwy5.mjs";import"./cli-1.1.28-davs3ve8.mjs";import"./cli-1.1.28-mk8zwqb2.mjs";import"./cli-1.1.28-zhftjycn.mjs";import"./cli-1.1.28-1rrn1mhr.mjs";import"./cli-1.1.28-avxe0zxq.mjs";import"./cli-1.1.28-k7pnt9ba.mjs";import"./cli-1.1.28-ffy07rnm.mjs";import"./cli-1.1.28-e2mfhtpx.mjs";import"./cli-1.1.28-hx5j3q23.mjs";import"./cli-1.1.28-wew8jymx.mjs";import"./cli-1.1.28-pfnc9p9n.mjs";import"./cli-1.1.28-cfq2wwx5.mjs";import"./cli-1.1.28-qb921m5a.mjs";import"./cli-1.1.28-4kxqqtpz.mjs";import"./cli-1.1.28-8jrfznkw.mjs";import"./cli-1.1.28-qf1qq8t0.mjs";import"./cli-1.1.28-smb1frk6.mjs";import"./cli-1.1.28-mvkxhjmj.mjs";import"./cli-1.1.28-d5h3kve6.mjs";import"./cli-1.1.28-bwbz3v3j.mjs";import"./cli-1.1.28-f0vrbk1t.mjs";import"./cli-1.1.28-j6nysca9.mjs";import"./cli-1.1.28-n2jx5w3n.mjs";import"./cli-1.1.28-2dafhgjv.mjs";import"./cli-1.1.28-0njtm2nf.mjs";import"./cli-1.1.28-kc8f0nz7.mjs";import"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-a00k75hj.mjs";import"./cli-1.1.28-83k0knzj.mjs";import"./cli-1.1.28-zarbrcn7.mjs";import"./cli-1.1.28-95fs05hq.mjs";import"./cli-1.1.28-5edzsdcr.mjs";import"./cli-1.1.28-hb02sa63.mjs";import"./cli-1.1.28-wmyy1pdj.mjs";import"./cli-1.1.28-atrbc4s7.mjs";import"./cli-1.1.28-347ygvzg.mjs";import"./cli-1.1.28-v5ypq0r2.mjs";import"./cli-1.1.28-yv5gzenz.mjs";import"./cli-1.1.28-tt0c354s.mjs";import"./cli-1.1.28-58rs1ja0.mjs";import"./cli-1.1.28-brh6rw23.mjs";import"./cli-1.1.28-j5m0kc75.mjs";import"./cli-1.1.28-ak2bzv1v.mjs";import"./cli-1.1.28-ss8nzmnb.mjs";import"./cli-1.1.28-erqn7gwg.mjs";import"./cli-1.1.28-y173v5ak.mjs";import"./cli-1.1.28-jr3jtfkf.mjs";import"./cli-1.1.28-rt0aect8.mjs";import"./cli-1.1.28-5y1xeh89.mjs";import"./cli-1.1.28-8avwqt1z.mjs";import"./cli-1.1.28-7e3nqd5c.mjs";import"./cli-1.1.28-3bj091x6.mjs";import"./cli-1.1.28-es8var4t.mjs";import"./cli-1.1.28-12g8qyfk.mjs";import"./cli-1.1.28-4kda7s33.mjs";import"./cli-1.1.28-q43r6snq.mjs";import"./cli-1.1.28-knfg26kb.mjs";import"./cli-1.1.28-2esp2ssp.mjs";import"./cli-1.1.28-x13sctb2.mjs";import"./cli-1.1.28-pykx8k1j.mjs";import"./cli-1.1.28-khcgtk4a.mjs";import"./cli-1.1.28-wvj52k91.mjs";import"./cli-1.1.28-fetsedc8.mjs";import"./cli-1.1.28-638dshxx.mjs";import"./cli-1.1.28-ev0gfjgf.mjs";import"./cli-1.1.28-yyk292aq.mjs";import"./cli-1.1.28-943993zt.mjs";import{Vta as g}from"./cli-1.1.28-3fssr567.mjs";var u=async(p,f)=>{return await b(f),{type:"text",value:""}};var k=g(()=>{h()});k();export{u as call};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d3 as a,e3 as b,f3 as c}from"./cli-1.1.28-81p0zmxc.mjs";import"./cli-1.1.28-3fssr567.mjs";c();export{a as getClearTerminalSequence,b as clearTerminal};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Mo as X,No as h,WG as Y,bH as p}from"./cli-1.1.28-zhftjycn.mjs";import{N1 as B,m0 as v,q2 as D}from"./cli-1.1.28-0njtm2nf.mjs";import{b5 as I,c5 as J,d5 as W}from"./cli-1.1.28-v5ypq0r2.mjs";import{Bga as b,dga as U}from"./cli-1.1.28-5y1xeh89.mjs";import{Rta as G}from"./cli-1.1.28-3fssr567.mjs";D();b();p();h();W();var Z=G(v(),1);function C(S){let k=Z.c(17),{customApiKeyTruncated:q,onDone:L}=S,M;if(k[0]!==q||k[1]!==L)M=function(f){k:switch(f){case"yes":{U((z)=>({...z,customApiKeyResponses:{...z.customApiKeyResponses,approved:[...z.customApiKeyResponses?.approved??[],q]}})),L(!0);break k}case"no":U((z)=>({...z,customApiKeyResponses:{...z.customApiKeyResponses,rejected:[...z.customApiKeyResponses?.rejected??[],q]}})),L(!1)}},k[0]=q,k[1]=L,k[2]=M;else M=k[2];let w=M,E;if(k[3]!==w)E=()=>w("no"),k[3]=w,k[4]=E;else E=k[4];let N;if(k[5]===Symbol.for("react.memo_cache_sentinel"))N=I(B,{bold:!0,children:"ANTHROPIC_API_KEY"}),k[5]=N;else N=k[5];let F;if(k[6]!==q)F=J(B,{children:[N,J(B,{children:[": sk-ant-...",q]})]}),k[6]=q,k[7]=F;else F=k[7];let O;if(k[8]===Symbol.for("react.memo_cache_sentinel"))O=I(B,{children:"Do you want to use this API key?"}),k[8]=O;else O=k[8];let P;if(k[9]===Symbol.for("react.memo_cache_sentinel"))P={label:"Yes",value:"yes"},k[9]=P;else P=k[9];let Q;if(k[10]===Symbol.for("react.memo_cache_sentinel"))Q=[P,{label:J(B,{children:["No (",I(B,{bold:!0,children:"recommended"}),")"]}),value:"no"}],k[10]=Q;else Q=k[10];let H;if(k[11]!==w)H=I(Y,{defaultValue:"no",defaultFocusValue:"no",options:Q,onChange:(V)=>w(V),onCancel:()=>w("no")}),k[11]=w,k[12]=H;else H=k[12];let R;if(k[13]!==E||k[14]!==F||k[15]!==H)R=J(X,{title:"Detected a custom API key in your environment",color:"warning",onCancel:E,children:[F,O,H]}),k[13]=E,k[14]=F,k[15]=H,k[16]=R;else R=k[16];return R}
|
|
2
|
-
export{C as $};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{AV as b,BV as H,DV as N,EV as K,zV as m}from"./cli-1.1.28-k7pnt9ba.mjs";import{P9 as x,Q9 as M,T9 as D,V9 as R,d_ as L,f_ as O,g_ as _}from"./cli-1.1.28-ss8nzmnb.mjs";import{Bga as G,Zea as X,cfa as Y,gga as Z,nca as j,pca as P,pfa as A}from"./cli-1.1.28-5y1xeh89.mjs";import{rma as $,zma as I}from"./cli-1.1.28-khcgtk4a.mjs";import{Vta as F}from"./cli-1.1.28-3fssr567.mjs";function V(q){if(!q||!process.env.ANTHROPIC_UNIX_SOCKET)return q||{};let{ANTHROPIC_UNIX_SOCKET:z,ANTHROPIC_BASE_URL:B,ANTHROPIC_API_KEY:Q,ANTHROPIC_AUTH_TOKEN:w,CLAUDE_CODE_OAUTH_TOKEN:C,...U}=q;return U}function k(q){if(!q)return{};if(!$(process.env.CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST))return q;let z={};for(let[B,Q]of Object.entries(q))if(!H(B))z[B]=Q;return z}function p(q){if(!q||!W)return q||{};let z={};for(let[B,Q]of Object.entries(q))if(!W.has(B))z[B]=Q;return z}function J(q){return p(k(V(q)))}function S(){if(W===void 0)W=process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"?new Set(Object.keys(process.env)):null;Object.assign(process.env,J(Z().env));for(let z of h){if(z==="policySettings")continue;if(!j(z))continue;Object.assign(process.env,J(X(z)?.env))}m(),Object.assign(process.env,J(X("policySettings")?.env));let q=J(Y()?.env);for(let[z,B]of Object.entries(q))if(N.has(z.toUpperCase()))process.env[z]=B}function a(){Object.assign(process.env,J(Z().env)),Object.assign(process.env,J(Y()?.env)),x(),D(),O(),L()}var W,h;var T=F(()=>{b();M();G();I();K();R();_();P();A();h=["userSettings","flagSettings","policySettings"]});
|
|
2
|
-
export{S as qd,a as rd,T as sd};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import{Hb as vY}from"./cli-1.1.28-m7x3ax7z.mjs";import{Ad as iQ,xd as BY}from"./cli-1.1.28-w0kxa99b.mjs";import{jh as Q0,kh as u6}from"./cli-1.1.28-x04zkwy5.mjs";import{Xi as MY,Yi as G6}from"./cli-1.1.28-1mscaejt.mjs";import{$K as o,Al as eZ,Aw as s0,Bk as j0,Bl as v9,Bn as UZ,Bw as HQ,CB as JY,Cl as QZ,Cn as f0,Cz as FY,DB as lQ,Dl as Z0,El as q9,FM as $9,Fl as D9,Fz as W6,Gk as EY,Gl as oY,HE as HY,HM as P9,IB as OY,IE as aQ,KB as X6,LM as F9,OI as I0,Ou as h0,PC as IY,PI as o9,PS as jZ,Pu as KQ,QC as J6,Qu as GY,Ru as gQ,SE as a,SM as r6,Su as PY,UE as N6,Vt as P0,WB as bY,WG as M0,XG as r9,XL as iY,XQ as fY,YB as K6,Yt as F0,Zt as TZ,_L as j6,aT as kY,bu as n9,eR as hY,fL as RY,gR as SY,hD as CY,iD as H6,iP as NY,jT as xY,kP as nQ,kR as B6,kq as E9,kw as k0,lq as i6,lr as nZ,lw as x0,mL as TY,mr as pY,mw as u0,nT as LY,nr as PZ,nw as p0,or as $Y,ow as c0,oy as b0,pB as wY,pw as m0,qB as jY,qT as zY,qw as uZ,rB as Q6,rw as pZ,ry as i9,sw as d0,tS as SZ,tw as g0,uw as l0,vl as B9,vw as a0,wl as x6,ww as n0,xS as kZ,xl as L9,xw as i0,yk as WZ,yl as z9,yn as yZ,yw as r0,zl as bZ,zw as o0}from"./cli-1.1.28-zhftjycn.mjs";import{SX as Y9,WX as R6}from"./cli-1.1.28-d5h3kve6.mjs";import{YY as O0,ZY as d9,kZ as y0,lZ as U0,mZ as g9,pZ as E0,qZ as l9,wZ as $0,xZ as a9}from"./cli-1.1.28-n2jx5w3n.mjs";import{L1 as u,N1 as b,m0 as c9,q2 as m9}from"./cli-1.1.28-0njtm2nf.mjs";import{a5 as l,b5 as y,c5 as M,d5 as K0}from"./cli-1.1.28-v5ypq0r2.mjs";import{e5 as p9}from"./cli-1.1.28-yv5gzenz.mjs";import{O9 as w6,R8 as nY,j7 as aY,n7 as _6}from"./cli-1.1.28-ak2bzv1v.mjs";import{$ha as t,A$ as AZ,B$ as S9,M$ as KY,O$ as dQ,Oda as U9,Paa as l6,Uha as _0,Vda as n6,Wba as a6,Xha as u9,aca as Z9,cfa as lY,eea as dY,fca as C6,fea as gY,hea as D6,hia as w0,naa as O9,pfa as A6,uba as CZ,wba as k9,zba as y9}from"./cli-1.1.28-5y1xeh89.mjs";import{Aia as N0,Eia as h9,sia as H0}from"./cli-1.1.28-8avwqt1z.mjs";import{gja as rY,rja as U6}from"./cli-1.1.28-es8var4t.mjs";import{Jja as Y,Kja as JZ,Lja as D,Mja as OZ}from"./cli-1.1.28-12g8qyfk.mjs";import{$ja as q0,Pja as mY,Rja as q6,Tja as RZ,Wja as B0,Xja as L0,Yja as z0,Zja as v0,aka as D0,mka as A0,ska as x9}from"./cli-1.1.28-4kda7s33.mjs";import{Dka as d,Gka as wZ}from"./cli-1.1.28-knfg26kb.mjs";import{Gla as I,Jka as eY,Jla as GZ,Lka as I6,jla as e,kla as VY,ola as $Z}from"./cli-1.1.28-2esp2ssp.mjs";import{Lla as WY,Pla as mQ}from"./cli-1.1.28-x13sctb2.mjs";import{Sla as XY,ema as j9,fma as oZ,lma as dZ}from"./cli-1.1.28-pykx8k1j.mjs";import{$ra as _Y,Mqa as G9,Nqa as vZ,Oqa as J9,Qqa as H9,Rqa as Y0,Tqa as N9,csa as HZ,doa as NZ,joa as X0,koa as tY,upa as cY}from"./cli-1.1.28-wvj52k91.mjs";import{Rta as J0,Uta as hZ,Vta as _Z,Wta as aZ}from"./cli-1.1.28-3fssr567.mjs";var VQ={};hZ(VQ,{selectableUserMessagesFilter:()=>T0,messagesAfterAreOnlySynthetic:()=>XQ,MessageSelector:()=>t9});import{randomUUID as s9}from"crypto";import*as YZ from"path";function C0(Q){return Q.type==="text"}function fZ(Q){return Q==="summarize"||Q==="summarize_up_to"}function t9({messages:Q,onPreRestore:Z,onRestoreMessage:X,onRestoreCode:W,onSummarize:V,onClose:H,preselectedMessage:G}){let K=b0((j)=>j.fileHistory),[B,z]=R.useState(void 0),J=P0(),L=R.useMemo(s9,[]),_=R.useMemo(()=>[...Q.filter(T0),{...o({content:""}),uuid:L}],[Q,L]),[O,q]=R.useState(_.length-1),P=Math.max(0,Math.min(O-Math.floor(IZ/2),_.length-IZ)),f=_.length>1,[v,F]=R.useState(G),[U,h]=R.useState(void 0);R.useEffect(()=>{if(!G||!J)return;let j=!1;return TZ(K,G.uuid).then((T)=>{if(!j)h(T)}),()=>{j=!0}},[G,J,K]);let[E,w]=R.useState(!1),[p,i]=R.useState(null),[r,C]=R.useState("both"),[S,k]=R.useState(""),[A,$]=R.useState("");function N(j){let T=j?[{value:"both",label:"Restore code and conversation"},{value:"conversation",label:"Restore conversation"},{value:"code",label:"Restore code"}]:[{value:"conversation",label:"Restore conversation"}],c={type:"input",placeholder:"add context (optional)",initialValue:"",allowEmptySubmitToCancel:!0,showLabelWithValue:!0,labelValueSeparator:": "};return T.push({value:"summarize",label:"Summarize from here",...c,onChange:k}),T.push({value:"nevermind",label:"Never mind"}),T}R.useEffect(()=>{d("",{})},[]);async function x(j){Z(),w(!0);try{await X(j),w(!1),H()}catch(T){t(T),w(!1),z(`Failed to restore the conversation:
|
|
2
|
-
${T}`)}}async function g(j){let T=Q.indexOf(j),c=Q.length-1-T;if(d("",{index_from_end:c,message_type:j.type,is_current_prompt:!1}),!Q.includes(j)){H();return}if(!J){await x(j);return}let m=await TZ(K,j.uuid);F(j),h(m)}async function XZ(j){if(d("",{option:j}),!v){z("Message not found.");return}if(j==="nevermind"){if(G)H();else F(void 0);return}if(fZ(j)){Z(),w(!0),i(j),z(void 0);try{let m=j==="summarize_up_to"?"up_to":"from",ZZ=(m==="up_to"?A:S).trim()||void 0;await V(v,ZZ,m),w(!1),i(null),F(void 0),H()}catch(m){t(m),w(!1),i(null),F(void 0),z(`Failed to summarize:
|
|
3
|
-
${m}`)}return}Z(),w(!0),z(void 0);let T=null,c=null;if(j==="code"||j==="both")try{await W(v)}catch(m){T=m,t(T)}if(j==="conversation"||j==="both")try{await X(v)}catch(m){c=m,t(c)}if(w(!1),F(void 0),c&&T)z(`Failed to restore the conversation and code:
|
|
4
|
-
${c}
|
|
5
|
-
${T}`);else if(c)z(`Failed to restore the conversation:
|
|
6
|
-
${c}`);else if(T)z(`Failed to restore the code:
|
|
7
|
-
${T}`);else H()}let VZ=E0(),s=R.useCallback(()=>{if(v&&!G){F(void 0);return}d("",{}),H()},[H,v,G]),M9=R.useCallback(()=>q((j)=>Math.max(0,j-1)),[]),I9=R.useCallback(()=>q((j)=>Math.min(_.length-1,j+1)),[_.length]),C9=R.useCallback(()=>q(0),[]),R9=R.useCallback(()=>q(_.length-1),[_.length]),T9=R.useCallback(()=>{let j=_[O];if(j)g(j)},[_,O,g]);y0("confirm:no",s,{context:"Confirmation",isActive:!v}),U0({"messageSelector:up":M9,"messageSelector:down":I9,"messageSelector:top":C9,"messageSelector:bottom":R9,"messageSelector:select":T9},{context:"MessageSelector",isActive:!E&&!B&&!v&&f});let[V0,W0]=R.useState({});R.useEffect(()=>{async function j(){if(!J)return;Promise.all(_.map(async(T,c)=>{if(T.uuid!==L){let m=F0(K,T.uuid),ZZ=_.at(c+1),DZ=m?QQ(Q,T.uuid,ZZ?.uuid!==L?ZZ?.uuid:void 0):void 0;if(DZ!==void 0)W0((n)=>({...n,[c]:DZ}));else W0((n)=>({...n,[c]:void 0}))}}))}j()},[_,Q,L,K,J]);let qZ=J&&U?.filesChanged&&U.filesChanged.length>0,f9=!B&&!v&&!G&&f;return M(u,{flexDirection:"column",width:"100%",children:[y($0,{color:"suggestion"}),M(u,{flexDirection:"column",marginX:1,gap:1,children:[y(b,{bold:!0,color:"suggestion",children:"Rewind"}),B&&y(l,{children:M(b,{color:"error",children:["Error: ",B]})}),!f&&y(l,{children:y(b,{children:"Nothing to rewind to yet."})}),!B&&v&&f&&M(l,{children:[M(b,{children:["Confirm you want to restore"," ",!U&&"the conversation ","to the point before you sent this message:"]}),M(u,{flexDirection:"column",paddingLeft:1,borderStyle:"single",borderRight:!1,borderTop:!1,borderBottom:!1,borderLeft:!0,borderLeftDimColor:!0,children:[y(G0,{userMessage:v,color:"text",isCurrent:!1}),M(b,{dimColor:!0,children:["(",N0(new Date(v.timestamp)),")"]})]}),y(ZQ,{selectedRestoreOption:r,canRestoreCode:!!qZ,diffStatsForRestore:U}),E&&fZ(p)?M(u,{flexDirection:"row",gap:1,children:[y(I0,{}),y(b,{children:"Summarizing…"})]}):y(M0,{isDisabled:E,options:N(!!qZ),defaultFocusValue:qZ?"both":"conversation",onFocus:(j)=>C(j),onChange:(j)=>XZ(j),onCancel:()=>G?H():F(void 0)}),qZ&&y(u,{marginBottom:1,children:M(b,{dimColor:!0,children:[AZ.warning," Rewinding does not affect files edited manually or via bash."]})})]}),f9&&M(l,{children:[J?y(b,{children:"Restore the code and/or conversation to the point before…"}):y(b,{children:"Restore and fork the conversation to the point before…"}),y(u,{width:"100%",flexDirection:"column",children:_.slice(P,P+IZ).map((j,T)=>{let c=P+T,m=c===O,ZZ=j.uuid===L,DZ=c in V0,n=V0[c],MZ=n?.filesChanged&&n.filesChanged.length;return M(u,{height:J?3:2,overflow:"hidden",width:"100%",flexDirection:"row",children:[y(u,{width:2,minWidth:2,children:m?M(b,{color:"permission",bold:!0,children:[AZ.pointer," "]}):y(b,{children:" "})}),M(u,{flexDirection:"column",children:[y(u,{flexShrink:1,height:1,overflow:"hidden",children:y(G0,{userMessage:j,color:m?"suggestion":void 0,isCurrent:ZZ,paddingRight:10})}),J&&DZ&&y(u,{height:1,flexDirection:"row",children:n?y(l,{children:y(b,{dimColor:!m,color:"inactive",children:MZ?M(l,{children:[MZ===1&&n.filesChanged[0]?`${YZ.basename(n.filesChanged[0])} `:`${MZ} files changed `,y(R0,{diffStats:n})]}):y(l,{children:"No code changes"})})}):M(b,{dimColor:!0,color:"warning",children:[AZ.warning," No code restore"]})})]})]},j.uuid)})})]}),!v&&y(b,{dimColor:!0,italic:!0,children:VZ.pending?M(l,{children:["Press ",VZ.keyName," again to exit"]}):M(l,{children:[!B&&f&&"Enter to continue · ","Esc to exit"]})})]})]})}function e9(Q){switch(Q){case"summarize":return"Messages after this point will be summarized.";case"summarize_up_to":return"Preceding messages will be summarized. This and subsequent messages will remain unchanged — you will stay at the end of the conversation.";case"both":case"conversation":return"The conversation will be forked.";case"code":case"nevermind":return"The conversation will be unchanged."}}function ZQ(Q){let Z=KZ.c(11),{selectedRestoreOption:X,canRestoreCode:W,diffStatsForRestore:V}=Q,H=W&&(X==="both"||X==="code"),G;if(Z[0]!==X)G=e9(X),Z[0]=X,Z[1]=G;else G=Z[1];let K;if(Z[2]!==G)K=y(b,{dimColor:!0,children:G}),Z[2]=G,Z[3]=K;else K=Z[3];let B;if(Z[4]!==V||Z[5]!==X||Z[6]!==H)B=!fZ(X)&&(H?y(YQ,{diffStatsForRestore:V}):y(b,{dimColor:!0,children:"The code will be unchanged."})),Z[4]=V,Z[5]=X,Z[6]=H,Z[7]=B;else B=Z[7];let z;if(Z[8]!==K||Z[9]!==B)z=M(u,{flexDirection:"column",children:[K,B]}),Z[8]=K,Z[9]=B,Z[10]=z;else z=Z[10];return z}function YQ(Q){let Z=KZ.c(14),{diffStatsForRestore:X}=Q;if(X===void 0)return;if(!X.filesChanged||!X.filesChanged[0]){let K;if(Z[0]===Symbol.for("react.memo_cache_sentinel"))K=y(b,{dimColor:!0,children:"The code has not changed (nothing will be restored)."}),Z[0]=K;else K=Z[0];return K}let W=X.filesChanged.length,V;if(W===1){let K;if(Z[1]!==X.filesChanged[0])K=YZ.basename(X.filesChanged[0]||""),Z[1]=X.filesChanged[0],Z[2]=K;else K=Z[2];V=K}else if(W===2){let K;if(Z[3]!==X.filesChanged[0])K=YZ.basename(X.filesChanged[0]||""),Z[3]=X.filesChanged[0],Z[4]=K;else K=Z[4];let B=K,z;if(Z[5]!==X.filesChanged[1])z=YZ.basename(X.filesChanged[1]||""),Z[5]=X.filesChanged[1],Z[6]=z;else z=Z[6];V=`${B} and ${z}`}else{let K;if(Z[7]!==X.filesChanged[0])K=YZ.basename(X.filesChanged[0]||""),Z[7]=X.filesChanged[0],Z[8]=K;else K=Z[8];V=`${K} and ${X.filesChanged.length-1} other files`}let H;if(Z[9]!==X)H=y(R0,{diffStats:X}),Z[9]=X,Z[10]=H;else H=Z[10];let G;if(Z[11]!==V||Z[12]!==H)G=y(l,{children:M(b,{dimColor:!0,children:["The code will be restored"," ",H," in ",V,"."]})}),Z[11]=V,Z[12]=H,Z[13]=G;else G=Z[13];return G}function R0(Q){let Z=KZ.c(7),{diffStats:X}=Q;if(!X||!X.filesChanged)return;let W;if(Z[0]!==X.insertions)W=M(b,{color:"diffAddedWord",children:["+",X.insertions," "]}),Z[0]=X.insertions,Z[1]=W;else W=Z[1];let V;if(Z[2]!==X.deletions)V=M(b,{color:"diffRemovedWord",children:["-",X.deletions]}),Z[2]=X.deletions,Z[3]=V;else V=Z[3];let H;if(Z[4]!==W||Z[5]!==V)H=M(l,{children:[W,V]}),Z[4]=W,Z[5]=V,Z[6]=H;else H=Z[6];return H}function G0(Q){let Z=KZ.c(31),{userMessage:X,color:W,dimColor:V,isCurrent:H,paddingRight:G}=Q,{columns:K}=O0();if(H){let h;if(Z[0]!==W||Z[1]!==V)h=y(u,{width:"100%",children:y(b,{italic:!0,color:W,dimColor:V,children:"(current)"})}),Z[0]=W,Z[1]=V,Z[2]=h;else h=Z[2];return h}let B=X.message.content,z=typeof B==="string"?null:B[B.length-1],J,L,_,O,q,P,f,v;if(Z[3]!==W||Z[4]!==K||Z[5]!==B||Z[6]!==V||Z[7]!==z||Z[8]!==G){v=Symbol.for("react.early_return_sentinel");Z:{let h=typeof B==="string"?B.trim():z&&C0(z)?z.text.trim():"(no prompt)",E=_0(h);if(j0(E)){let w;if(Z[17]!==W||Z[18]!==V)w=y(u,{flexDirection:"row",width:"100%",children:y(b,{italic:!0,color:W,dimColor:V,children:"((empty message))"})}),Z[17]=W,Z[18]=V,Z[19]=w;else w=Z[19];v=w;break Z}if(E.includes("<bash-input>")){let w=WZ(E,"bash-input");if(w){let p;if(Z[20]===Symbol.for("react.memo_cache_sentinel"))p=y(b,{color:"bashBorder",children:"!"}),Z[20]=p;else p=Z[20];v=M(u,{flexDirection:"row",width:"100%",children:[p,M(b,{color:W,dimColor:V,children:[" ",w]})]});break Z}}if(E.includes(`<${RZ}>`)){let w=WZ(E,RZ),p=WZ(E,"command-args"),i=WZ(E,"skill-format")==="true";if(w)if(i){v=y(u,{flexDirection:"row",width:"100%",children:M(b,{color:W,dimColor:V,children:["Skill(",w,")"]})});break Z}else{v=y(u,{flexDirection:"row",width:"100%",children:M(b,{color:W,dimColor:V,children:["/",w," ",p]})});break Z}}L=u,P="row",f="100%",J=b,_=W,O=V,q=G?H0(E,K-G,!0):E.slice(0,500).split(`
|
|
8
|
-
`).slice(0,4).join(`
|
|
9
|
-
`)}Z[3]=W,Z[4]=K,Z[5]=B,Z[6]=V,Z[7]=z,Z[8]=G,Z[9]=J,Z[10]=L,Z[11]=_,Z[12]=O,Z[13]=q,Z[14]=P,Z[15]=f,Z[16]=v}else J=Z[9],L=Z[10],_=Z[11],O=Z[12],q=Z[13],P=Z[14],f=Z[15],v=Z[16];if(v!==Symbol.for("react.early_return_sentinel"))return v;let F;if(Z[21]!==J||Z[22]!==_||Z[23]!==O||Z[24]!==q)F=y(J,{color:_,dimColor:O,children:q}),Z[21]=J,Z[22]=_,Z[23]=O,Z[24]=q,Z[25]=F;else F=Z[25];let U;if(Z[26]!==L||Z[27]!==P||Z[28]!==f||Z[29]!==F)U=y(L,{flexDirection:P,width:f,children:F}),Z[26]=L,Z[27]=P,Z[28]=f,Z[29]=F,Z[30]=U;else U=Z[30];return U}function QQ(Q,Z,X){let W=Q.findIndex((B)=>B.uuid===Z);if(W===-1)return;let V=X?Q.findIndex((B)=>B.uuid===X):Q.length;if(V===-1)V=Q.length;let H=[],G=0,K=0;for(let B=W+1;B<V;B++){let z=Q[B];if(!z||!kZ(z))continue;let J=z.toolUseResult;if(!J||!J.filePath||!J.structuredPatch)continue;if(!H.includes(J.filePath))H.push(J.filePath);try{if("type"in J&&J.type==="create")G+=J.content.split(/\r?\n/).length;else for(let L of J.structuredPatch){let _=CZ(L.lines,(q)=>q.startsWith("+")),O=CZ(L.lines,(q)=>q.startsWith("-"));G+=_,K+=O}}catch{continue}}return{filesChanged:H,insertions:G,deletions:K}}function T0(Q){if(Q.type!=="user")return!1;if(Array.isArray(Q.message.content)&&Q.message.content[0]?.type==="tool_result")return!1;if(SZ(Q))return!1;if(Q.isMeta)return!1;if(Q.isCompactSummary||Q.isVisibleInTranscriptOnly)return!1;let Z=Q.message.content,X=typeof Z==="string"?null:Z[Z.length-1],W=typeof Z==="string"?Z.trim():X&&C0(X)?X.text.trim():"";if(W.indexOf(`<${z0}>`)!==-1||W.indexOf(`<${v0}>`)!==-1||W.indexOf(`<${B0}>`)!==-1||W.indexOf(`<${L0}>`)!==-1||W.indexOf(`<${D0}>`)!==-1||W.indexOf(`<${q0}>`)!==-1||W.indexOf(`<${A0}`)!==-1)return!1;return!0}function XQ(Q,Z){for(let X=Z+1;X<Q.length;X++){let W=Q[X];if(!W)continue;if(SZ(W))continue;if(kZ(W))continue;if(W.type==="progress")continue;if(W.type==="system")continue;if(W.type==="attachment")continue;if(W.type==="user"&&W.isMeta)continue;if(W.type==="assistant"){let V=W.message.content;if(Array.isArray(V)){if(V.some((G)=>G.type==="text"&&G.text.trim()||G.type==="tool_use"))return!1}continue}if(W.type==="user")return!1}return!0}var KZ,R,IZ=7;var WQ=_Z(()=>{S9();wZ();i9();n9();w0();l9();m9();g9();u9();jZ();r9();o9();d9();x9();k9();h9();a9();K0();KZ=J0(c9(),1),R=J0(p9(),1)});var b6={};hZ(b6,{getCronJitterConfig:()=>F6});function F6(){let Q=rY("tengu_kairos_cron_config",QZ,E6),Z=P6().safeParse(Q);return Z.success?Z.data:QZ}var E6=60000,iZ=1800000,$6=2592000000,P6;var M6=_Z(()=>{JZ();U6();oY();OZ();P6=D(()=>Y.object({recurringFrac:Y.number().min(0).max(1),recurringCapMs:Y.number().int().min(0).max(iZ),oneShotMaxMs:Y.number().int().min(0).max(iZ),oneShotFloorMs:Y.number().int().min(0).max(iZ),oneShotMinuteMod:Y.number().int().min(1).max(60),recurringMaxAgeMs:Y.number().int().min(0).max($6).default(QZ.recurringMaxAgeMs)}).refine((Q)=>Q.oneShotFloorMs<=Q.oneShotMaxMs))});import{mkdir as T6,readFile as f6,unlink as Q9,writeFile as sZ}from"fs/promises";import{dirname as h6,join as X9}from"path";function LZ(Q){return X9(Q??tY(),S6)}async function V9(Q){let Z;try{Z=await f6(LZ(Q),"utf8")}catch{return}let X=k6().safeParse(Z9(Z,!1));return X.success?X.data:void 0}async function sY(Q,Z){let X=LZ(Z),W=e(Q);try{return await sZ(X,W,{flag:"wx"}),!0}catch(V){let H=oZ(V);if(H==="EEXIST")return!1;if(H==="ENOENT"){await T6(h6(X),{recursive:!0});try{return await sZ(X,W,{flag:"wx"}),!0}catch(G){if(oZ(G)==="EEXIST")return!1;throw G}}throw V}}function rZ(Q){FZ?.(),FZ=eY(async()=>{await zZ(Q)})}async function tZ(Q){let Z=Q?.dir,X=Q?.lockIdentity??NZ(),W={sessionId:X,pid:process.pid,acquiredAt:Date.now()};if(await sY(W,Z))return BZ=void 0,rZ(Q),I(`[ScheduledTasks] acquired scheduler lock (PID ${process.pid})`),!0;let V=await V9(Z);if(V?.sessionId===X){if(V.pid!==process.pid)await sZ(LZ(Z),e(W)),rZ(Q);return!0}if(V&&Y9(V.pid)){if(BZ!==V.sessionId)BZ=V.sessionId,I(`[ScheduledTasks] scheduler lock held by session ${V.sessionId} (PID ${V.pid})`);return!1}if(V)I(`[ScheduledTasks] recovering stale scheduler lock from PID ${V.pid}`);if(await Q9(LZ(Z)).catch(()=>{}),await sY(W,Z))return BZ=void 0,rZ(Q),!0;return!1}async function zZ(Q){FZ?.(),FZ=void 0,BZ=void 0;let Z=Q?.dir,X=Q?.lockIdentity??NZ(),W=await V9(Z);if(!W||W.sessionId!==X)return;try{await Q9(LZ(Z)),I("[ScheduledTasks] released scheduler lock")}catch{}}var S6,k6,FZ,BZ;var W9=_Z(()=>{JZ();HZ();I6();GZ();dZ();R6();C6();OZ();$Z();S6=X9(".claudin","scheduled_tasks.lock"),k6=D(()=>Y.object({sessionId:Y.string(),pid:Y.number(),acquiredAt:Y.number()}))});var d6={};hZ(d6,{takeDueSessionWakeup:()=>_9,isRecurringTaskAged:()=>A9,createCronScheduler:()=>m6,buildMissedTaskNotification:()=>w9});function A9(Q,Z,X){if(X===0)return!1;return Boolean(Q.recurring&&!Q.permanent&&Z-Q.createdAt>=X)}function _9(Q){let Z=Y0();if(!Z||Q<Z.fireAtMs)return null;return N9(),{prompt:Q0(Z.prompt),reason:Z.reason}}function m6(Q){let{onFire:Z,isLoading:X,assistantMode:W=!1,onFireTask:V,onMissed:H,onWakeupFire:G,dir:K,lockIdentity:B,getJitterConfig:z,isKilled:J,filter:L}=Q,_=K||B?{dir:K,lockIdentity:B}:void 0,O=[],q=new Map,P=new Set,f=new Set,v=null,F=null,U=null,h=null,E=!1,w=!1;async function p(C){let S=await z9(K);if(E)return;if(O=S,!C)return;let k=Date.now(),A=D9(S,k).filter(($)=>!$.recurring&&!P.has($.id)&&(!L||L($)));if(A.length>0){for(let $ of A)P.add($.id),q.set($.id,1/0);if(d("",{count:A.length,taskIds:A.map(($)=>$.id).join(",")}),H)H(A);else Z(w9(A));eZ(A.map(($)=>$.id),K).catch(($)=>I(`[ScheduledTasks] failed to remove missed tasks: ${$}`)),I(`[ScheduledTasks] surfaced ${A.length} missed one-shot task(s)`)}}function i(){if(J?.())return;if(X()&&!W)return;let C=Date.now(),S=new Set,k=[],A=z?.()??QZ;function $(N,x){if(L&&!L(N))return;if(S.add(N.id),f.has(N.id))return;let g=q.get(N.id);if(g===void 0)g=N.recurring?Z0(N.cron,N.lastFiredAt??N.createdAt,N.id,A)??1/0:q9(N.cron,N.createdAt,N.id,A)??1/0,q.set(N.id,g),I(`[ScheduledTasks] scheduled ${N.id} for ${g===1/0?"never":new Date(g).toISOString()}`);if(C<g)return;I(`[ScheduledTasks] firing ${N.id}${N.recurring?" (recurring)":""}`),d("",{recurring:N.recurring??!1,taskId:N.id});let XZ=K===void 0?Q0(N.prompt,void 0,N.agentId):N.prompt;if(V)V(XZ===N.prompt?N:{...N,prompt:XZ});else Z(XZ);let VZ=A9(N,C,A.recurringMaxAgeMs);if(VZ){let s=Math.floor((C-N.createdAt)/1000/60/60);I(`[ScheduledTasks] recurring task ${N.id} aged out (${s}h since creation), deleting after final fire`),d("",{taskId:N.id,ageHours:s})}if(N.recurring&&!VZ){let s=Z0(N.cron,C,N.id,A)??1/0;if(q.set(N.id,s),!x)k.push(N.id)}else if(x)H9([N.id]),q.delete(N.id);else f.add(N.id),eZ([N.id],K).catch((s)=>I(`[ScheduledTasks] failed to remove task ${N.id}: ${s}`)).finally(()=>f.delete(N.id)),q.delete(N.id)}if(w){for(let N of O)$(N,!1);if(k.length>0){for(let N of k)f.add(N);v9(k,C,K).catch((N)=>I(`[ScheduledTasks] failed to persist lastFiredAt: ${N}`)).finally(()=>{for(let N of k)f.delete(N)})}}if(K===void 0){for(let x of J9())$(x,!0);let N=_9(C);if(N!==null)if(I("[ScheduledTasks] firing pending ScheduleWakeup"),d("",{}),G)G(N.prompt,N.reason);else Z(N.prompt)}if(S.size===0){q.clear();return}for(let N of q.keys())if(!S.has(N))q.delete(N)}async function r(){if(E)return;if(v)clearInterval(v),v=null;let{default:C}=await import("./index-1.1.28-bqm5cnw1.mjs");if(E)return;if(w=await tZ(_).catch(()=>!1),E){if(w)w=!1,zZ(_);return}if(!w)U=setInterval(()=>{tZ(_).then((k)=>{if(E){if(k)zZ(_);return}if(k){if(w=!0,U)clearInterval(U),U=null}}).catch((k)=>I(String(k),{level:"error"}))},c6),U.unref?.();p(!0);let S=L9(K);h=C.watch(S,{persistent:!1,ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:p6},ignorePermissionErrors:!0}),h.on("add",()=>void p(!1)),h.on("change",()=>void p(!1)),h.on("unlink",()=>{if(!E)O=[],q.clear()}),F=setInterval(i,K9),F.unref?.()}return{start(){if(E=!1,K!==void 0){I(`[ScheduledTasks] scheduler start() — dir=${K}, hasTasks=${bZ(K)}`),r();return}if(I(`[ScheduledTasks] scheduler start() — enabled=${vZ()}, hasTasks=${bZ()}`),!vZ()&&(W||bZ()))G9(!0);if(vZ()){r();return}v=setInterval((C)=>{if(vZ())C()},K9,r),v.unref?.()},stop(){if(E=!0,v)clearInterval(v),v=null;if(F)clearInterval(F),F=null;if(U)clearInterval(U),U=null;if(h?.close(),h=null,w)w=!1,zZ(_)},getNextFireTime(){let C=1/0;for(let S of q.values())if(S<C)C=S;if(K===void 0){let S=Y0();if(S&&S.fireAtMs<C)C=S.fireAtMs}return C===1/0?null:C}}}function w9(Q){let Z=Q.length>1,X=`The following one-shot scheduled task${Z?"s were":" was"} missed while Claude was not running. ${Z?"They have":"It has"} already been removed from .claudin/scheduled_tasks.json.
|
|
10
|
-
|
|
11
|
-
Do NOT execute ${Z?"these prompts":"this prompt"} yet. First use the AskUserQuestion tool to ask whether to run ${Z?"each one":"it"} now. Only execute if the user confirms.`,W=Q.map((V)=>{let H=`[${B9(V.cron)}, created ${new Date(V.createdAt).toLocaleString()}]`,G=(V.prompt.match(/`+/g)??[]).reduce((B,z)=>Math.max(B,z.length),0),K="`".repeat(Math.max(3,G+1));return`${H}
|
|
12
|
-
${K}
|
|
13
|
-
${V.prompt}
|
|
14
|
-
${K}`});return`${X}
|
|
15
|
-
|
|
16
|
-
${W.join(`
|
|
17
|
-
|
|
18
|
-
`)}`}var K9=1000,p6=300,c6=5000;var g6=_Z(()=>{HZ();wZ();x6();oY();W9();GZ();u6()});JZ();GZ();OZ();f0();KQ();var UX=D(()=>Y.object({tool_name:Y.string().describe("The name of the tool requesting permission"),input:Y.record(Y.string(),Y.unknown()).describe("The input for the tool"),tool_use_id:Y.string().optional().describe("The unique tool use request ID")})),S0=D(()=>Y.enum(["user_temporary","user_permanent","user_reject"]).optional().catch(void 0)),GQ=D(()=>Y.object({behavior:Y.literal("allow"),updatedInput:Y.record(Y.string(),Y.unknown()),updatedPermissions:Y.array(h0()).optional().catch((Q)=>{I(`Malformed updatedPermissions from SDK host ignored: ${Q.error.issues[0]?.message??"unknown"}`,{level:"warn"});return}),toolUseID:Y.string().optional(),decisionClassification:S0()})),JQ=D(()=>Y.object({behavior:Y.literal("deny"),message:Y.string(),interrupt:Y.boolean().optional(),toolUseID:Y.string().optional(),decisionClassification:S0()})),xZ=D(()=>Y.union([GQ(),JQ()]));function EZ(Q,Z,X,W){let V={type:"permissionPromptTool",permissionPromptToolName:Z.name,toolResult:Q};if(Q.behavior==="allow"){let H=Q.updatedPermissions;if(H)W.setAppState((K)=>({...K,toolPermissionContext:yZ(K.toolPermissionContext,H)})),UZ(H);let G=Object.keys(Q.updatedInput).length>0?Q.updatedInput:X;return{...Q,updatedInput:G,decisionReason:V}}else if(Q.behavior==="deny"&&Q.interrupt)I(`SDK permission prompt deny+interrupt: tool=${Z.name} message=${Q.message}`),W.abortController.abort();return{...Q,decisionReason:V}}import{randomUUID as mZ}from"crypto";JZ();OZ();HQ();var NQ=D(()=>Y.unknown()),BQ=D(()=>Y.object({matcher:Y.string().optional(),hookCallbackIds:Y.array(Y.string()),timeout:Y.number().optional()}).describe("Configuration for matching and routing hook callbacks.")),LQ=D(()=>Y.object({subtype:Y.literal("initialize"),hooks:Y.record(c0(),Y.array(BQ())).optional(),sdkMcpServers:Y.array(Y.string()).optional(),jsonSchema:Y.record(Y.string(),Y.unknown()).optional(),systemPrompt:Y.string().optional(),appendSystemPrompt:Y.string().optional(),agents:Y.record(Y.string(),l0()).optional(),promptSuggestions:Y.boolean().optional(),agentProgressSummaries:Y.boolean().optional()}).describe("Initializes the SDK session with hooks, MCP servers, and agent configuration.")),bX=D(()=>Y.object({commands:Y.array(uZ()),agents:Y.array(pZ()),output_style:Y.string(),available_output_styles:Y.array(Y.string()),models:Y.array(d0()),account:g0(),pid:Y.number().optional().describe("@internal CLI process PID for tmux socket isolation"),fast_mode_state:s0().optional()}).describe("Response from session initialization with available commands, models, and account info.")),zQ=D(()=>Y.object({subtype:Y.literal("interrupt")}).describe("Interrupts the currently running conversation turn.")),vQ=D(()=>Y.object({subtype:Y.literal("can_use_tool"),tool_name:Y.string(),input:Y.record(Y.string(),Y.unknown()),permission_suggestions:Y.array(u0()).optional(),blocked_path:Y.string().optional(),decision_reason:Y.string().optional(),title:Y.string().optional(),display_name:Y.string().optional(),tool_use_id:Y.string(),agent_id:Y.string().optional(),description:Y.string().optional()}).describe("Requests permission to use a tool with the given input.")),qQ=D(()=>Y.object({subtype:Y.literal("set_permission_mode"),mode:p0(),ultraplan:Y.boolean().optional().describe("@internal CCR ultraplan session marker.")}).describe("Sets the permission mode for tool execution handling.")),DQ=D(()=>Y.object({subtype:Y.literal("set_model"),model:Y.string().optional()}).describe("Sets the model to use for subsequent conversation turns.")),AQ=D(()=>Y.object({subtype:Y.literal("set_max_thinking_tokens"),max_thinking_tokens:Y.number().nullable()}).describe("Sets the maximum number of thinking tokens for extended thinking.")),_Q=D(()=>Y.object({subtype:Y.literal("mcp_status")}).describe("Requests the current status of all MCP server connections.")),wQ=D(()=>Y.object({subtype:Y.literal("get_context_usage")}).describe("Requests a breakdown of current context window usage by category.")),jQ=D(()=>Y.object({name:Y.string(),tokens:Y.number(),color:Y.string(),isDeferred:Y.boolean().optional()})),OQ=D(()=>Y.object({color:Y.string(),isFilled:Y.boolean(),categoryName:Y.string(),tokens:Y.number(),percentage:Y.number(),squareFullness:Y.number()})),MX=D(()=>Y.object({categories:Y.array(jQ()),totalTokens:Y.number(),maxTokens:Y.number(),rawMaxTokens:Y.number(),percentage:Y.number(),gridRows:Y.array(Y.array(OQ())),model:Y.string(),memoryFiles:Y.array(Y.object({path:Y.string(),type:Y.string(),tokens:Y.number()})),mcpTools:Y.array(Y.object({name:Y.string(),serverName:Y.string(),tokens:Y.number(),isLoaded:Y.boolean().optional()})),deferredBuiltinTools:Y.array(Y.object({name:Y.string(),tokens:Y.number(),isLoaded:Y.boolean()})).optional(),systemTools:Y.array(Y.object({name:Y.string(),tokens:Y.number()})).optional(),systemPromptSections:Y.array(Y.object({name:Y.string(),tokens:Y.number()})).optional(),agents:Y.array(Y.object({agentType:Y.string(),source:Y.string(),tokens:Y.number()})),slashCommands:Y.object({totalCommands:Y.number(),includedCommands:Y.number(),tokens:Y.number()}).optional(),skills:Y.object({totalSkills:Y.number(),includedSkills:Y.number(),tokens:Y.number(),skillFrontmatter:Y.array(Y.object({name:Y.string(),source:Y.string(),tokens:Y.number()}))}).optional(),autoCompactThreshold:Y.number().optional(),isAutoCompactEnabled:Y.boolean(),messageBreakdown:Y.object({toolCallTokens:Y.number(),toolResultTokens:Y.number(),attachmentTokens:Y.number(),assistantMessageTokens:Y.number(),userMessageTokens:Y.number(),toolCallsByType:Y.array(Y.object({name:Y.string(),callTokens:Y.number(),resultTokens:Y.number()})),attachmentsByType:Y.array(Y.object({name:Y.string(),tokens:Y.number()}))}).optional(),apiUsage:Y.object({input_tokens:Y.number(),output_tokens:Y.number(),cache_creation_input_tokens:Y.number(),cache_read_input_tokens:Y.number()}).nullable()}).describe("Breakdown of current context window usage by category (system prompt, tools, messages, etc.).")),yQ=D(()=>Y.object({subtype:Y.literal("rewind_files"),user_message_id:Y.string(),dry_run:Y.boolean().optional()}).describe("Rewinds file changes made since a specific user message.")),UQ=D(()=>Y.object({subtype:Y.literal("cancel_async_message"),message_uuid:Y.string()}).describe("Drops a pending async user message from the command queue by uuid. No-op if already dequeued for execution.")),EQ=D(()=>Y.object({subtype:Y.literal("seed_read_state"),path:Y.string(),mtime:Y.number()}).describe("Seeds the readFileState cache with a path+mtime entry. Use when a prior Read was removed from context (e.g. by snip) so Edit validation would fail despite the client having observed the Read. The mtime lets the CLI detect if the file changed since the seeded Read — same staleness check as the normal path.")),$Q=D(()=>Y.object({subtype:Y.literal("hook_callback"),callback_id:Y.string(),input:m0(),tool_use_id:Y.string().optional()}).describe("Delivers a hook callback with its input data.")),PQ=D(()=>Y.object({subtype:Y.literal("mcp_message"),server_name:Y.string(),message:NQ()}).describe("Sends a JSON-RPC message to a specific MCP server.")),FQ=D(()=>Y.object({subtype:Y.literal("mcp_set_servers"),servers:Y.record(Y.string(),k0())}).describe("Replaces the set of dynamically managed MCP servers.")),IX=D(()=>Y.object({added:Y.array(Y.string()),removed:Y.array(Y.string()),errors:Y.record(Y.string(),Y.string())}).describe("Result of replacing the set of dynamically managed MCP servers.")),bQ=D(()=>Y.object({subtype:Y.literal("reload_plugins")}).describe("Reloads plugins from disk and returns the refreshed session components.")),CX=D(()=>Y.object({commands:Y.array(uZ()),agents:Y.array(pZ()),plugins:Y.array(Y.object({name:Y.string(),path:Y.string(),source:Y.string().optional()})),mcpServers:Y.array(x0()),error_count:Y.number()}).describe("Refreshed commands, agents, plugins, and MCP server status after reload.")),MQ=D(()=>Y.object({subtype:Y.literal("mcp_reconnect"),serverName:Y.string()}).describe("Reconnects a disconnected or failed MCP server.")),IQ=D(()=>Y.object({subtype:Y.literal("mcp_toggle"),serverName:Y.string(),enabled:Y.boolean()}).describe("Enables or disables an MCP server.")),CQ=D(()=>Y.object({subtype:Y.literal("stop_task"),task_id:Y.string()}).describe("Stops a running task.")),RQ=D(()=>Y.object({subtype:Y.literal("apply_flag_settings"),settings:Y.record(Y.string(),Y.unknown())}).describe("Merges the provided settings into the flag settings layer, updating the active configuration.")),TQ=D(()=>Y.object({subtype:Y.literal("get_settings")}).describe("Returns the effective merged settings and the raw per-source settings.")),RX=D(()=>Y.object({effective:Y.record(Y.string(),Y.unknown()),sources:Y.array(Y.object({source:Y.enum(["userSettings","projectSettings","localSettings","flagSettings","policySettings"]),settings:Y.record(Y.string(),Y.unknown())})).describe("Ordered low-to-high priority — later entries override earlier ones."),applied:Y.object({model:Y.string(),effort:Y.enum(["low","medium","high","max"]).nullable()}).optional().describe("Runtime-resolved values after env overrides, session state, and model-specific defaults are applied. Unlike `effective` (disk merge), these reflect what will actually be sent to the API.")}).describe("Effective merged settings plus raw per-source settings in merge order.")),fQ=D(()=>Y.object({subtype:Y.literal("elicitation"),mcp_server_name:Y.string(),message:Y.string(),mode:Y.enum(["form","url"]).optional(),url:Y.string().optional(),elicitation_id:Y.string().optional(),requested_schema:Y.record(Y.string(),Y.unknown()).optional()}).describe("Requests the SDK consumer to handle an MCP elicitation (user input request).")),t0=D(()=>Y.object({action:Y.enum(["accept","decline","cancel"]),content:Y.record(Y.string(),Y.unknown()).optional()}).describe("Response from the SDK consumer for an elicitation request.")),hQ=D(()=>Y.union([zQ(),vQ(),LQ(),qQ(),DQ(),AQ(),_Q(),wQ(),$Q(),PQ(),yQ(),UQ(),EQ(),FQ(),bQ(),MQ(),IQ(),CQ(),RQ(),TQ(),fQ()])),cZ=D(()=>Y.object({type:Y.literal("control_request"),request_id:Y.string(),request:hQ()})),SQ=D(()=>Y.object({subtype:Y.literal("success"),request_id:Y.string(),response:Y.record(Y.string(),Y.unknown()).optional()})),kQ=D(()=>Y.object({subtype:Y.literal("error"),request_id:Y.string(),error:Y.string(),pending_permission_requests:Y.array(Y.lazy(()=>cZ())).optional()})),e0=D(()=>Y.object({type:Y.literal("control_response"),response:Y.union([SQ(),kQ()])})),xQ=D(()=>Y.object({type:Y.literal("control_cancel_request"),request_id:Y.string()}).describe("Cancels a currently open control request.")),ZY=D(()=>Y.object({type:Y.literal("keep_alive")}).describe("Keep-alive message to maintain WebSocket connection.")),uQ=D(()=>Y.object({type:Y.literal("update_environment_variables"),variables:Y.record(Y.string(),Y.string())}).describe("Updates environment variables at runtime.")),TX=D(()=>Y.union([o0(),n0(),i0(),r0(),e0(),cZ(),xQ(),ZY()])),fX=D(()=>Y.union([a0(),cZ(),e0(),ZY(),uQ()]));gQ();GZ();dQ();dZ();nQ();mQ();$Z();JZ();aQ();zY();f0();iQ();$Z();lQ();$Z();var pQ=/\u2028|\u2029/g;function cQ(Q){return Q.replace(pQ,(Z)=>Z==="\u2028"?"\\u2028":"\\u2029")}function YY(Q){return cQ(e(Q))}var rQ="SandboxNetworkAccess";function oQ(Q){if(!Q)return;if(Q.type==="classifier")return Q.reason;switch(Q.type){case"rule":case"mode":case"subcommandResults":case"permissionPromptTool":return;case"hook":case"asyncAgent":case"sandboxOverride":case"workingDir":case"safetyCheck":case"other":return Q.reason}}function sQ(Q,Z,X,W){let V;try{V=Q.getActivityDescription?.(Z)??Q.getToolUseSummary?.(Z)??Q.userFacingName(Z)}catch{V=Q.name}return{tool_name:Q.name,action_description:V,tool_use_id:X,request_id:W,input:Z}}var tQ=1000;class eQ{input;replayUserMessages;structuredInput;pendingRequests=new Map;restoredWorkerState=Promise.resolve(null);inputClosed=!1;unexpectedResponseCallback;resolvedToolUseIds=new Set;prependedLines=[];onControlRequestSent;onControlRequestResolved;outbound=new JY;constructor(Q,Z){this.input=Q;this.replayUserMessages=Z;this.input=Q,this.structuredInput=this.read()}trackResolvedToolUseId(Q){if(Q.request.subtype==="can_use_tool"){if(this.resolvedToolUseIds.add(Q.request.tool_use_id),this.resolvedToolUseIds.size>tQ){let Z=this.resolvedToolUseIds.values().next().value;if(Z!==void 0)this.resolvedToolUseIds.delete(Z)}}}flushInternalEvents(){return Promise.resolve()}get internalEventsPending(){return 0}prependUserMessage(Q){this.prependedLines.push(e({type:"user",session_id:"",message:{role:"user",content:Q},parent_tool_use_id:null})+`
|
|
19
|
-
`)}async*read(){let Q="",Z=async function*(){for(;;){if(this.prependedLines.length>0)Q=this.prependedLines.join("")+Q,this.prependedLines=[];let X=Q.indexOf(`
|
|
20
|
-
`);if(X===-1)break;let W=Q.slice(0,X);Q=Q.slice(X+1);let V=await this.processLine(W);if(V)KY("info","cli_stdin_message_parsed",{type:V.type}),yield V}}.bind(this);yield*Z();for await(let X of this.input)Q+=X,yield*Z();if(Q){let X=await this.processLine(Q);if(X)yield X}this.inputClosed=!0;for(let X of this.pendingRequests.values())X.reject(Error("Tool permission stream closed before response received"))}getPendingPermissionRequests(){return Array.from(this.pendingRequests.values()).map((Q)=>Q.request).filter((Q)=>Q.request.subtype==="can_use_tool")}setUnexpectedResponseCallback(Q){this.unexpectedResponseCallback=Q}injectControlResponse(Q){let Z=Q.response?.request_id;if(!Z)return;let X=this.pendingRequests.get(Z);if(!X)return;if(this.trackResolvedToolUseId(X.request),this.pendingRequests.delete(Z),this.write({type:"control_cancel_request",request_id:Z}),Q.response.subtype==="error")X.reject(Error(Q.response.error));else{let W=Q.response.response;if(X.schema)try{X.resolve(X.schema.parse(W))}catch(V){X.reject(V)}else X.resolve({})}}setOnControlRequestSent(Q){this.onControlRequestSent=Q}setOnControlRequestResolved(Q){this.onControlRequestResolved=Q}async processLine(Q){if(!Q)return;try{let Z=vY(VY(Q));if(Z.type==="keep_alive")return;if(Z.type==="update_environment_variables"){let W=Object.keys(Z.variables);for(let[V,H]of Object.entries(Z.variables))process.env[V]=H;I(`[structuredIO] applied update_environment_variables: ${W.join(", ")}`);return}if(Z.type==="control_response"){let W="uuid"in Z&&typeof Z.uuid==="string"?Z.uuid:void 0;if(W)HY(W,"completed");let V=this.pendingRequests.get(Z.response.request_id);if(!V){let K=(Z.response.subtype==="success"?Z.response.response:void 0)?.toolUseID;if(typeof K==="string"&&this.resolvedToolUseIds.has(K)){I(`Ignoring duplicate control_response for already-resolved toolUseID=${K} request_id=${Z.response.request_id}`);return}if(this.unexpectedResponseCallback)await this.unexpectedResponseCallback(Z);return}if(this.trackResolvedToolUseId(V.request),this.pendingRequests.delete(Z.response.request_id),V.request.request.subtype==="can_use_tool"&&this.onControlRequestResolved)this.onControlRequestResolved(Z.response.request_id);if(Z.response.subtype==="error"){V.reject(Error(Z.response.error));return}let H=Z.response.response;if(V.schema)try{V.resolve(V.schema.parse(H))}catch(G){V.reject(G)}else V.resolve({});if(this.replayUserMessages)return Z;return}if(Z.type!=="user"&&Z.type!=="control_request"&&Z.type!=="assistant"&&Z.type!=="system"){I(`Ignoring unknown message type: ${Z.type}`,{level:"warn"});return}if(Z.type==="control_request"){if(!Z.request)QY("Error: Missing request on control_request");return Z}if(Z.type==="assistant"||Z.type==="system")return Z;let X=Z.message;if(X.role!=="user")QY(`Error: Expected message role 'user', got '${String(X.role)}'`);return Z}catch(Z){console.error(`Error parsing streaming input line: ${Q}: ${Z}`),process.exit(1)}}async write(Q){WY(YY(Q)+`
|
|
21
|
-
`)}async sendRequest(Q,Z,X,W=mZ()){let V={type:"control_request",request_id:W,request:Q};if(this.inputClosed)throw Error("Stream closed");if(X?.aborted)throw Error("Request aborted");if(this.outbound.enqueue(V),Q.subtype==="can_use_tool"&&this.onControlRequestSent)this.onControlRequestSent(V);let H=()=>{this.outbound.enqueue({type:"control_cancel_request",request_id:W});let G=this.pendingRequests.get(W);if(G)this.trackResolvedToolUseId(G.request),G.reject(new XY)};if(X)X.addEventListener("abort",H,{once:!0});try{return await new Promise((G,K)=>{this.pendingRequests.set(W,{request:{type:"control_request",request_id:W,request:Q},resolve:(B)=>{G(B)},reject:K,schema:Z})})}finally{if(X)X.removeEventListener("abort",H);this.pendingRequests.delete(W)}}createCanUseTool(Q){return async(Z,X,W,V,H,G)=>{let K=G??await NY(Z,X,W,V,H);if(K.behavior==="allow"||K.behavior==="deny")return K;let B=new AbortController,z=W.abortController.signal,J=()=>B.abort();z.addEventListener("abort",J,{once:!0});try{let L=Z6(Z.name,H,X,W,K.suggestions).then((P)=>({source:"hook",decision:P})),_=mZ();Q?.(sQ(Z,X,H,_));let O=this.sendRequest({subtype:"can_use_tool",tool_name:Z.name,input:X,permission_suggestions:K.suggestions,blocked_path:K.blockedPath,decision_reason:oQ(K.decisionReason),tool_use_id:H,agent_id:W.agentId},xZ(),B.signal,_).then((P)=>({source:"sdk",result:P})),q=await Promise.race([L,O]);if(q.source==="hook"){if(q.decision)return O.catch(()=>{}),B.abort(),q.decision;let P=await O;return EZ(P.result,Z,X,W)}return EZ(q.result,Z,X,W)}catch(L){return EZ({behavior:"deny",message:`Tool permission request failed: ${L}`,toolUseID:H},Z,X,W)}finally{if(this.getPendingPermissionRequests().length===0)BY("running");z.removeEventListener("abort",J)}}}createHookCallback(Q,Z){return{type:"callback",timeout:Z,callback:async(X,W,V)=>{try{return await this.sendRequest({subtype:"hook_callback",callback_id:Q,input:X,tool_use_id:W||void 0},GY(),V)}catch(H){return console.error(`Error in hook callback ${Q}:`,H),{}}}}}async handleElicitation(Q,Z,X,W,V,H,G){try{return await this.sendRequest({subtype:"elicitation",mcp_server_name:Q,message:Z,mode:V,url:H,elicitation_id:G,requested_schema:X},t0(),W)}catch{return{action:"cancel"}}}createSandboxAskCallback(){return async(Q)=>{try{return(await this.sendRequest({subtype:"can_use_tool",tool_name:rQ,input:{host:Q.host},tool_use_id:mZ(),description:`Allow network connection to ${Q.host}?`},xZ())).behavior==="allow"}catch{return!1}}}async sendMcpMessage(Q,Z){return(await this.sendRequest({subtype:"mcp_message",server_name:Q,message:Z},Y.object({mcp_response:Y.any()}))).mcp_response}}function QY(Q){console.error(Q),process.exit(1)}async function Z6(Q,Z,X,W,V){let G=W.getAppState().toolPermissionContext.mode,K=LY(Q,Z,X,W,G,V,W.abortController.signal);for await(let B of K)if(B.permissionRequestResult&&(B.permissionRequestResult.behavior==="allow"||B.permissionRequestResult.behavior==="deny")){let z=B.permissionRequestResult;if(z.behavior==="allow"){let J=z.updatedInput||X,L=z.updatedPermissions??[];if(L.length>0){UZ(L);let _=W.getAppState(),O=yZ(_.toolPermissionContext,L);W.setAppState((q)=>{if(q.toolPermissionContext===O)return q;return{...q,toolPermissionContext:O}})}return{behavior:"allow",updatedInput:J,userModified:!1,decisionReason:{type:"hook",hookName:"PermissionRequest"}}}else return{behavior:"deny",message:z.message||"Permission denied by PermissionRequest hook",decisionReason:{type:"hook",hookName:"PermissionRequest"}}}return}var qY={"`":"`",'"':'"',"<":">","{":"}","[":"]","(":")","'":"'"};function Y6(Q,Z){if(!new RegExp(Z,"i").test(Q))return[];if(Q.startsWith("/"))return[];let W=[],V=null,H=0,G=(J)=>!!J&&/[\p{L}\p{N}_]/u.test(J);for(let J=0;J<Q.length;J++){let L=Q[J];if(V){if(V==="["&&L==="["){H=J;continue}if(L!==qY[V])continue;if(V==="'"&&G(Q[J+1]))continue;W.push({start:H,end:J+1}),V=null}else if(L==="<"&&J+1<Q.length&&/[a-zA-Z/]/.test(Q[J+1])||L==="'"&&!G(Q[J-1])||L!=="<"&&L!=="'"&&L in qY)V=L,H=J}let K=[],B=new RegExp(`\\b${Z}\\b`,"gi"),z=Q.matchAll(B);for(let J of z){if(J.index===void 0)continue;let L=J.index,_=L+J[0].length;if(W.some((P)=>L>=P.start&&L<P.end))continue;let O=Q[L-1],q=Q[_];if(O==="/"||O==="\\"||O==="-")continue;if(q==="/"||q==="\\"||q==="-"||q==="?")continue;if(q==="."&&G(Q[_+1]))continue;K.push({word:J[0],start:L,end:_})}return K}function VV(Q){return Y6(Q,"ultrareview")}wZ();jZ();B6();J6();H6();K6();zY();$Y();W6();jZ();N6();G6();import{randomUUID as L6}from"crypto";HZ();wZ();jZ();Q6();X6();import{randomUUID as V6}from"crypto";function DY(Q){let Z=Q.toLowerCase();return/\b(wtf|wth|ffs|omfg|shit(ty|tiest)?|dumbass|horrible|awful|piss(ed|ing)? off|piece of (shit|crap|junk)|what the (fuck|hell)|fucking? (broken|useless|terrible|awful|horrible)|fuck you|screw (this|you)|so frustrating|this sucks|damn it)\b/.test(Z)}function AY(Q){let Z=Q.toLowerCase().trim();if(Z==="continue")return!0;return/\b(keep going|go on)\b/.test(Z)}function yY(Q,Z,X,W,V,H,G){let K=V6();_Y(K);let B=typeof Q==="string"?Q:Q.find((O)=>O.type==="text")?.text||"";OY(B);let z=typeof Q==="string"?Q:Q.findLast((O)=>O.type==="text")?.text||"";if(z)jY("user_prompt",{prompt_length:String(z.length),prompt:wY(z),"prompt.id":K});let J=DY(B),L=AY(B);if(d("",{is_negative:J,is_keep_going:L}),Z.length>0){let O=typeof Q==="string"?Q.trim()?[{type:"text",text:Q}]:[]:Q;return{messages:[o({content:[...O,...Z],uuid:V,imagePasteIds:X.length>0?X:void 0,permissionMode:H,isMeta:G||void 0}),...W],shouldQuery:!0}}return{messages:[o({content:Q,uuid:V,permissionMode:H,isMeta:G||void 0}),...W],shouldQuery:!0}}async function RV({input:Q,preExpansionInput:Z,mode:X,setToolJSX:W,context:V,pastedContents:H,ideSelection:G,messages:K,setUserInputOnProcessing:B,uuid:z,isAlreadyProcessing:J,querySource:L,canUseTool:_,skipSlashCommands:O,bridgeOrigin:q,isMeta:P,skipAttachments:f}){let v=typeof Q==="string"?Q:null;if(X==="prompt"&&v!==null&&!P)B?.(v);a("query_process_user_input_base_start");let F=V.getAppState(),U=await z6(Q,X,W,V,H,G,K,z,J,L,_,F.toolPermissionContext.mode,O,q,P,f,Z);if(a("query_process_user_input_base_end"),!U.shouldQuery)return U;a("query_hooks_start");let h=EY(Q)||"";for await(let E of xY(h,F.toolPermissionContext.mode,V,V.requestPrompt)){if(E.message?.type==="progress")continue;if(E.blockingError){let p=kY(E.blockingError);return{messages:[RY(`${p}
|
|
22
|
-
|
|
23
|
-
Original prompt: ${Q}`,"warning")],shouldQuery:!1,allowedTools:U.allowedTools}}if(E.preventContinuation){let p=E.stopReason?`Operation stopped by hook: ${E.stopReason}`:"Operation stopped by hook";return U.messages.push(o({content:p})),U.shouldQuery=!1,U}if(E.additionalContexts&&E.additionalContexts.length>0)U.messages.push(PY({type:"hook_additional_context",content:E.additionalContexts.map(UY),hookName:"UserPromptSubmit",toolUseID:`hook-${L6()}`,hookEvent:"UserPromptSubmit"}));let w=E.message;if(w&&w.type==="attachment")switch(w.attachment.type){case"hook_success":if(!w.attachment.content)break;U.messages.push({...w,attachment:{...w.attachment,content:UY(w.attachment.content)}});break;default:U.messages.push(w);break}else if(w)U.messages.push(w)}return a("query_hooks_end"),U}var gZ=1e4;function UY(Q){if(Q.length>gZ)return`${Q.substring(0,gZ)}… [output truncated - exceeded ${gZ} characters]`;return Q}async function z6(Q,Z,X,W,V,H,G,K,B,z,J,L,_,O,q,P,f){let v=null,F=[],U=[],h=Q;if(typeof Q==="string")v=Q;else if(Q.length>0){a("query_image_processing_start");let A=[];for(let N of Q)if(N.type==="image"){let x=await nZ(N);if(x.dimensions){let g=PZ(x.dimensions);if(g)U.push(g)}A.push(x.block)}else A.push(N);h=A,a("query_image_processing_end");let $=A[A.length-1];if($?.type==="text")v=$.text,F=A.slice(0,-1);else F=A}if(v===null&&Z!=="prompt")throw Error(`Mode: ${Z} requires a string input.`);let E=V?Object.values(V).filter(IY):[],w=E.map((A)=>A.id),p=V?await FY(V):new Map;a("query_pasted_image_processing_start");let i=await Promise.all(E.map(async(A)=>{let $={type:"image",source:{type:"base64",media_type:A.mediaType||"image/png",data:A.content}};return d("",{original_size_bytes:A.content.length}),{resized:await nZ($),originalDimensions:A.dimensions,sourcePath:A.sourcePath??p.get(A.id)}})),r=[];for(let{resized:A,originalDimensions:$,sourcePath:N}of i){if(A.dimensions){let x=PZ(A.dimensions,N);if(x)U.push(x)}else if($){let x=PZ($,N);if(x)U.push(x)}else if(N)U.push(`[Image source: ${N}]`);r.push(A.block)}a("query_pasted_image_processing_end");let C=_;if(O&&v!==null&&v.startsWith("/")){let A=MY(v),$=A?SY(A.commandName,W.options.commands):void 0;if($)if(hY($))C=!1;else{let N=`/${fY($)} isn't available over Remote Control.`;return{messages:[o({content:v,uuid:K}),TY(`<local-command-stdout>${N}</local-command-stdout>`)],shouldQuery:!1,resultText:N}}}let S=!P&&v!==null&&(Z!=="prompt"||C||!v.startsWith("/"));a("query_attachment_loading_start");let k=S?await bY(CY(v,W,H??null,[],G,z)):[];if(a("query_attachment_loading_end"),v!==null&&Z==="bash"){let{processBashCommand:A}=await import("./processBashCommand-1.1.28-0a601ws2.mjs");return lZ(await A(v,F,k,W,X),U)}if(v!==null&&!C&&v.startsWith("/")){let{processSlashCommand:A}=await import("./processSlashCommand-1.1.28-2mq2y7nd.mjs"),$=await A(v,F,r,k,W,X,K,B,J);return lZ($,U)}if(v!==null&&Z==="prompt"){let A=v.trim(),$=k.find((N)=>N.attachment.type==="agent_mention");if($){let N=`@agent-${$.attachment.agentType}`,x=A===N,g=A.startsWith(N)&&!x;d("",{is_subagent_only:x,is_prefix:g})}}return lZ(yY(h,r,w,k,K,L,q),U)}function lZ(Q,Z){if(Z.length>0)Q.messages.push(o({content:Z.map((X)=>({type:"text",text:X})),isMeta:!0}));return Q}$Y();function hV(Q){if(Q.type!=="user")return;let Z=Q.message?.content;if(!Z)return;if(Array.isArray(Z)&&Z.length===0)return;let X="uuid"in Q&&typeof Q.uuid==="string"?Q.uuid:void 0;return{content:Array.isArray(Z)?v6(Z):Z,uuid:X}}function v6(Q){if(!Q.some(uY))return Q;return Q.map((Z)=>{if(!uY(Z))return Z;let X=Z.source,W=typeof X.mediaType==="string"&&X.mediaType?X.mediaType:pY(Z.source.data);return{...Z,source:{type:"base64",media_type:W,data:Z.source.data}}})}function uY(Q){if(Q.type!=="image"||Q.source?.type!=="base64")return!1;return!Q.source.media_type}HZ();j6();D6();w6();q6();_6();A6();import{randomUUID as O6}from"crypto";function y6(Q){return Q===dY?gY:Q}function lV(Q){let X=lY()?.outputStyle??iY,W={type:"system",subtype:"init",cwd:mY(),session_id:NZ(),tools:Q.tools.map((V)=>y6(V.name)),mcp_servers:Q.mcpClients.map((V)=>({name:V.name,status:V.type})),model:Q.model,permissionMode:Q.permissionMode,slash_commands:Q.commands.filter((V)=>V.userInvocable!==!1).map((V)=>V.name),apiKeySource:nY().source,betas:cY(),claude_code_version:"99.0.0",output_style:X,agents:Q.agents.map((V)=>V.agentType),skills:Q.skills.filter((V)=>V.userInvocable!==!1).map((V)=>V.name),plugins:Q.plugins.map((V)=>({name:V.name,path:V.path,source:V.source})),uuid:O6()};return W.fast_mode_state=aY(Q.model,Q.fastMode),W}i6();HZ();GZ();dZ();a6();l6();w0();r6();n6();import{isAbsolute as o6,resolve as s6}from"path";function t6(Q,Z,X){let W=[],V=[],H=[];for(let[G,K]of Object.entries(Q)){let B=Z[G],z=b9(K.source,X?.projectRoot);if(!B)W.push(G);else if(K.sourceIsFallback)H.push(G);else if(!E9(z,B.source))V.push({name:G,declaredSource:z,materializedSource:B.source});else H.push(G)}return{missing:W,sourceChanged:V,upToDate:H}}async function PW(Q){let Z=$9();if(Object.keys(Z).length===0)return{installed:[],updated:[],failed:[],upToDate:[],skipped:[]};let X;try{X=await P9()}catch(J){t(J),X={}}let W=t6(Z,X,{projectRoot:X0()}),V=[...W.missing.map((J)=>({name:J,source:b9(Z[J].source),action:"install"})),...W.sourceChanged.map(({name:J,declaredSource:L})=>({name:J,source:L,action:"update"}))],H=[],G=[];for(let J of V){if(Q?.skip?.(J.name,J.source)){H.push(J.name);continue}if(J.action==="update"&&U9(J.source)&&!await y9(J.source.path)){I(`[reconcile] '${J.name}' declared path does not exist; keeping materialized entry`),H.push(J.name);continue}G.push(J)}if(G.length===0)return{installed:[],updated:[],failed:[],upToDate:W.upToDate,skipped:H};I(`[reconcile] ${G.length} marketplace(s): ${G.map((J)=>`${J.name}(${J.action})`).join(", ")}`);let K=[],B=[],z=[];for(let J=0;J<G.length;J++){let{name:L,source:_,action:O}=G[J];Q?.onProgress?.({type:"installing",name:L,action:O,index:J+1,total:G.length});try{let q=await F9(_);if(O==="install")K.push(L);else B.push(L);Q?.onProgress?.({type:"installed",name:L,alreadyMaterialized:q.alreadyMaterialized})}catch(q){let P=j9(q);z.push({name:L,error:P}),Q?.onProgress?.({type:"failed",name:L,error:P}),t(q)}}return{installed:K,updated:B,failed:z,upToDate:W.upToDate,skipped:H}}function b9(Q,Z){if((Q.source==="directory"||Q.source==="file")&&!o6(Q.path)){let X=Z??X0(),W=O9(X);return{...Q,path:s6(W??X,Q.path)}}return Q}
|
|
24
|
-
export{xZ as Qa,EZ as Ra,YY as Sa,rQ as Ta,eQ as Ua,t9 as Va,T0 as Wa,XQ as Xa,VQ as Ya,WQ as Za,VV as _a,RV as $a,hV as ab,y6 as bb,lV as cb,t6 as db,PW as eb,F6 as fb,b6 as gb,M6 as hb,m6 as ib,d6 as jb,g6 as kb};
|