claude-code-best 1.0.3 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +104 -369
- package/dist/{chunk-5wxspfct.js → chunk-01qzvbp3.js} +8 -2
- package/dist/chunk-053bj0m0.js +247 -0
- package/dist/chunk-05tt9tt1.js +653 -0
- package/dist/chunk-06sq1vz3.js +403 -0
- package/dist/chunk-07069jq1.js +30 -0
- package/dist/chunk-0dac8msw.js +135 -0
- package/dist/{chunk-52n4py3b.js → chunk-0ja0y3at.js} +6 -6
- package/dist/chunk-0jzdwbdc.js +14 -0
- package/dist/chunk-0nrq46nf.js +313 -0
- package/dist/chunk-0qz705wz.js +192 -0
- package/dist/{chunk-by7ezad6.js → chunk-0rn4v8sg.js} +42 -28
- package/dist/{chunk-1cbn5kxf.js → chunk-0rpb2bdp.js} +3 -2
- package/dist/{chunk-zz21rvr7.js → chunk-127cmycn.js} +8 -5
- package/dist/chunk-12vk6z7z.js +109 -0
- package/dist/chunk-15y014gg.js +102 -0
- package/dist/{chunk-44fpr6jq.js → chunk-168xb8v1.js} +4 -2
- package/dist/{chunk-8fmbf525.js → chunk-16bnxyz0.js} +1 -1
- package/dist/{chunk-wsqhnjj3.js → chunk-1atfzck5.js} +24 -24
- package/dist/chunk-1cbhkqxg.js +310 -0
- package/dist/chunk-1csq8bf1.js +295 -0
- package/dist/{chunk-0e1xsncc.js → chunk-1cwdhk7a.js} +1 -1
- package/dist/{chunk-36k3f7pn.js → chunk-1ebqpwhn.js} +79 -59
- package/dist/{chunk-ap2a2er6.js → chunk-1mh5vt6v.js} +102 -80
- package/dist/chunk-1qf125vg.js +123 -0
- package/dist/{chunk-fcz5eche.js → chunk-1sp6713v.js} +139 -170
- package/dist/{chunk-d18z9pna.js → chunk-1thgdca1.js} +2 -2
- package/dist/chunk-1z1gfx2c.js +443 -0
- package/dist/{chunk-7z8j9qfn.js → chunk-21z7acxh.js} +3 -3
- package/dist/chunk-229pcf6p.js +509 -0
- package/dist/chunk-238g70xa.js +1 -1
- package/dist/{chunk-vpb723tx.js → chunk-23ad5t92.js} +5 -5
- package/dist/chunk-28043j1k.js +68 -0
- package/dist/chunk-299r6d9v.js +141 -0
- package/dist/{chunk-5r3ak65p.js → chunk-2bw5nqsw.js} +4 -4
- package/dist/chunk-2mxstrx5.js +445 -0
- package/dist/{chunk-w2z5pqd3.js → chunk-2q39ej51.js} +6 -6
- package/dist/chunk-2qwgfjcj.js +5370 -0
- package/dist/chunk-2ss23j0q.js +3587 -0
- package/dist/{chunk-k9c3888e.js → chunk-2wvxddsg.js} +9 -7
- package/dist/chunk-2x2aznpc.js +134 -0
- package/dist/{chunk-bqq4zamw.js → chunk-2ys5wcxk.js} +3 -3
- package/dist/{chunk-2kbk09sb.js → chunk-3cvcwgsr.js} +79 -59
- package/dist/{chunk-rs45skes.js → chunk-3xv7rjsy.js} +15 -11
- package/dist/chunk-42x5tjk2.js +42 -0
- package/dist/{chunk-n78qmqpq.js → chunk-436r0x2n.js} +8 -8
- package/dist/{chunk-k3vpzx3c.js → chunk-44q4jkwa.js} +27 -67
- package/dist/{chunk-qnbdekts.js → chunk-44w22kyx.js} +111 -132
- package/dist/{chunk-7m2nd8da.js → chunk-46fcr28b.js} +31 -10
- package/dist/{chunk-wm2f2f1z.js → chunk-474y75ga.js} +2 -2
- package/dist/{chunk-6fkwz9yk.js → chunk-478rpnqm.js} +8 -8
- package/dist/chunk-48w0df8a.js +32 -0
- package/dist/chunk-4cp6193g.js +9076 -0
- package/dist/chunk-4d0de73v.js +436 -0
- package/dist/chunk-4eecm90d.js +1030 -0
- package/dist/{chunk-jfv3zczw.js → chunk-4f4ccg1h.js} +10 -115
- package/dist/chunk-4h102wt5.js +65 -0
- package/dist/{chunk-6n2qgm9v.js → chunk-4hv90qcz.js} +1 -1
- package/dist/{chunk-4gj6zzg1.js → chunk-4jcqmf9w.js} +43 -29
- package/dist/{chunk-067wa5sn.js → chunk-4kk7vxed.js} +8 -6
- package/dist/chunk-4nspekjp.js +69 -0
- package/dist/chunk-4xmb7bvy.js +125 -0
- package/dist/{chunk-nrp9yaq6.js → chunk-4xy0c1dz.js} +16 -12
- package/dist/{chunk-77g09znh.js → chunk-53c9gb9c.js} +23 -16
- package/dist/{chunk-03nqtgyr.js → chunk-53zsn91p.js} +42 -30
- package/dist/{chunk-gkrx7ptx.js → chunk-548g1d6z.js} +113 -114
- package/dist/chunk-559yvwh1.js +63 -0
- package/dist/chunk-5a6ahhvy.js +594 -0
- package/dist/{chunk-h2j4t3fk.js → chunk-5c6man70.js} +9692 -17630
- package/dist/chunk-5hb5ev7b.js +74 -0
- package/dist/{chunk-hx2tr4ep.js → chunk-5z28bqne.js} +34 -475
- package/dist/{chunk-p7g7pf3f.js → chunk-61ahbn23.js} +8 -6
- package/dist/chunk-64c1avct.js +13 -0
- package/dist/{chunk-0sb5scxx.js → chunk-652wnf1z.js} +5 -5
- package/dist/{chunk-1w361mz1.js → chunk-66jkaz3q.js} +109 -213
- package/dist/{chunk-q25bjaev.js → chunk-677as3nh.js} +2 -2
- package/dist/chunk-68ksfahx.js +386 -0
- package/dist/{chunk-xs0hwvpa.js → chunk-68pfxvxt.js} +14 -9
- package/dist/{chunk-epmheefa.js → chunk-69hys77v.js} +8 -8
- package/dist/{chunk-404wc7d4.js → chunk-6ayqcq3h.js} +126 -119
- package/dist/chunk-6kpbgc5w.js +23 -0
- package/dist/chunk-6mpsxxsf.js +362 -0
- package/dist/chunk-6nze0g86.js +119 -0
- package/dist/{chunk-v1mgv1et.js → chunk-6p4cyhb3.js} +4 -3
- package/dist/{chunk-w2qfgzzh.js → chunk-6t62dbnb.js} +61 -100
- package/dist/chunk-6t87a3q6.js +2842 -0
- package/dist/{chunk-q6av622g.js → chunk-6xana182.js} +18 -13
- package/dist/{chunk-fpf4cgbt.js → chunk-7bfach0x.js} +9 -9
- package/dist/{chunk-g6e1ab2k.js → chunk-7f1ggjr2.js} +81 -61
- package/dist/chunk-7fxjmmfw.js +1172 -0
- package/dist/{chunk-ckcagq32.js → chunk-7gqf9wej.js} +5 -5
- package/dist/chunk-7j3dkjqq.js +38 -0
- package/dist/chunk-7ns74x0q.js +475 -0
- package/dist/chunk-7qmknpkq.js +272 -0
- package/dist/chunk-7rzepn9c.js +83 -0
- package/dist/chunk-7tdcwje9.js +68 -0
- package/dist/{chunk-201dvaa3.js → chunk-8201tnhf.js} +11 -5
- package/dist/{chunk-dv1wfr85.js → chunk-8225arm6.js} +5 -4
- package/dist/chunk-822wfv88.js +70 -0
- package/dist/chunk-837tm8ht.js +183 -0
- package/dist/chunk-8a2ajt5d.js +878 -0
- package/dist/{chunk-drv8qvwz.js → chunk-8bymxfn4.js} +43 -29
- package/dist/chunk-8cwbzk7h.js +118 -0
- package/dist/chunk-8d0ev0m2.js +111 -0
- package/dist/chunk-8g5pe1gr.js +37 -0
- package/dist/{chunk-g0j0t6qk.js → chunk-8g747a8x.js} +1 -1
- package/dist/chunk-8kfwb79z.js +436 -0
- package/dist/{chunk-xyqr1cww.js → chunk-8me0yq6v.js} +12 -12
- package/dist/{chunk-qdrwxg3e.js → chunk-8n8285ax.js} +91 -71
- package/dist/{chunk-sdj9b9wh.js → chunk-8pn8tvgg.js} +9 -154
- package/dist/{chunk-ha0xq3e9.js → chunk-8qhr4n77.js} +64 -106
- package/dist/{chunk-fpjzr5jj.js → chunk-8s9bbk3r.js} +62 -45
- package/dist/{chunk-e3g8q4cn.js → chunk-905d2hee.js} +10 -8
- package/dist/{chunk-3psth3ez.js → chunk-91xq5y4a.js} +9 -9
- package/dist/{chunk-rq1kckze.js → chunk-93xsyzsp.js} +1 -1
- package/dist/chunk-99pmbfqp.js +230 -0
- package/dist/chunk-9f14bkn9.js +33068 -0
- package/dist/{chunk-ex978bsn.js → chunk-9m78gjpd.js} +1 -1
- package/dist/{chunk-hpwa620w.js → chunk-9pm2d2gv.js} +251 -306
- package/dist/chunk-a136cvvz.js +27 -0
- package/dist/{chunk-n5t9m8h9.js → chunk-a1bjde7d.js} +7 -7
- package/dist/chunk-a2evk7n1.js +168 -0
- package/dist/{chunk-6heqkcjx.js → chunk-a3k4w4cm.js} +42 -28
- package/dist/chunk-a3mcc1sb.js +1403 -0
- package/dist/{chunk-8hq5kk3y.js → chunk-a4twdmhf.js} +3 -2
- package/dist/chunk-a8eaey19.js +66 -0
- package/dist/chunk-abkb5pw6.js +426 -0
- package/dist/chunk-ae76ded0.js +30 -0
- package/dist/{chunk-2v1br2x0.js → chunk-agx5w9ce.js} +14 -8
- package/dist/chunk-ah46h8rp.js +70 -0
- package/dist/chunk-aj3azy6z.js +409 -0
- package/dist/chunk-an6z4rzv.js +158 -0
- package/dist/{chunk-r6b58y3x.js → chunk-ase86y73.js} +1 -3
- package/dist/{chunk-e6s36z54.js → chunk-avfjb6pd.js} +17 -557
- package/dist/{chunk-1hhdpn3t.js → chunk-az5x70pn.js} +8 -5
- package/dist/{chunk-91gk0g2y.js → chunk-b6rg3egp.js} +33 -18
- package/dist/chunk-b73r6ngr.js +125 -0
- package/dist/{chunk-8bedvdm1.js → chunk-b81hd3m6.js} +1 -1
- package/dist/{chunk-ebfsjcvm.js → chunk-b9mhpc0v.js} +3 -3
- package/dist/chunk-b9ndqcdv.js +139 -0
- package/dist/{chunk-w7wgpqcp.js → chunk-bd8zk9tn.js} +7 -7
- package/dist/chunk-bdy6n17s.js +343 -0
- package/dist/{chunk-s8y2tfzf.js → chunk-bf1j3azq.js} +156 -119
- package/dist/{chunk-j5j6nrfq.js → chunk-bfcet2mw.js} +2 -2
- package/dist/{chunk-jy35mvy3.js → chunk-bmjmrk76.js} +7 -7
- package/dist/{chunk-ra0r65nx.js → chunk-bsj8e2mb.js} +11 -11
- package/dist/{chunk-jce5r25x.js → chunk-bt64sq5y.js} +5 -4
- package/dist/{chunk-vyc0rjyx.js → chunk-bwg7582d.js} +1 -1
- package/dist/{chunk-3be7ka25.js → chunk-bxcfz5gy.js} +1 -1
- package/dist/{chunk-7wm1rjfm.js → chunk-c1k9tg7h.js} +518 -810
- package/dist/{chunk-qwvrkydc.js → chunk-c5pxerks.js} +13 -11
- package/dist/chunk-c6sjhj89.js +1284 -0
- package/dist/{chunk-brcnd1j0.js → chunk-c9q0phsg.js} +9 -6
- package/dist/chunk-caj0ab74.js +129 -0
- package/dist/chunk-chsyvavm.js +3435 -0
- package/dist/chunk-cjpt035a.js +269 -0
- package/dist/chunk-cmcbatgz.js +147 -0
- package/dist/chunk-cnsj3vq2.js +35 -0
- package/dist/chunk-cqjmxeqv.js +269 -0
- package/dist/{chunk-cdz5yb0r.js → chunk-crmjpsqe.js} +13 -2
- package/dist/{chunk-2mcp388c.js → chunk-cvb1v08x.js} +38 -32
- package/dist/{chunk-w0r5627q.js → chunk-cxhvyf7c.js} +234 -363
- package/dist/{chunk-s0wvh65m.js → chunk-cxx0e4nv.js} +1343 -2839
- package/dist/chunk-cy2hswr1.js +15 -0
- package/dist/{chunk-g9q2cznf.js → chunk-cy6ezb6j.js} +125994 -138958
- package/dist/{chunk-ks0m9njy.js → chunk-d2jekryq.js} +8 -8
- package/dist/chunk-d4mdda98.js +94 -0
- package/dist/{chunk-hgtf13es.js → chunk-d6ve5pze.js} +10 -10
- package/dist/{chunk-55wgxwa9.js → chunk-d7886r6a.js} +6928 -6935
- package/dist/{chunk-4bgz02m1.js → chunk-d83tmb5h.js} +87 -64
- package/dist/{chunk-hdwh7ncw.js → chunk-d8meetqc.js} +84 -63
- package/dist/{chunk-128nh5j9.js → chunk-d8r0q4ps.js} +547 -866
- package/dist/chunk-d95k8xkm.js +84 -0
- package/dist/chunk-dd4m7t1v.js +112 -0
- package/dist/{chunk-rcdpvnxh.js → chunk-dekbr08w.js} +24 -20
- package/dist/{chunk-cvge4pvp.js → chunk-dk8287aa.js} +1 -1
- package/dist/chunk-dm3n2qgd.js +24 -0
- package/dist/{chunk-b0105v1f.js → chunk-dmxte86x.js} +3 -3
- package/dist/{chunk-zkmxtgc3.js → chunk-dqvwn28p.js} +19 -15
- package/dist/chunk-drkm8yx2.js +34 -0
- package/dist/chunk-dsbewdgm.js +148 -0
- package/dist/{chunk-w7h2yphx.js → chunk-dwekpr47.js} +2 -2
- package/dist/{chunk-hg776v69.js → chunk-e3299veq.js} +16 -68
- package/dist/{chunk-wqpr7002.js → chunk-e5hcyxae.js} +132 -18
- package/dist/chunk-e7h0nd5w.js +106 -0
- package/dist/{chunk-7qwme3ab.js → chunk-eaemyebz.js} +5 -5
- package/dist/{chunk-hjhc4cpt.js → chunk-edzkkadh.js} +2 -2
- package/dist/chunk-em99fnet.js +128 -0
- package/dist/{chunk-hfzj1m07.js → chunk-epyaq1z0.js} +13 -4
- package/dist/{chunk-r8f13sz1.js → chunk-eqmkajs4.js} +102 -195
- package/dist/{chunk-gax0fcbx.js → chunk-ergam9ft.js} +5 -5
- package/dist/chunk-es2fdse0.js +63 -0
- package/dist/{chunk-grdvmq7q.js → chunk-esn3tgm2.js} +8 -6
- package/dist/{chunk-ptmcaxqn.js → chunk-et8ybmt2.js} +9 -7
- package/dist/chunk-ew9rp41b.js +300 -0
- package/dist/{chunk-dvfb4qwt.js → chunk-ewx6xfzb.js} +2 -2
- package/dist/chunk-eyjtbtt0.js +137 -0
- package/dist/chunk-f0jd2p9n.js +797 -0
- package/dist/{chunk-vzqrbsd1.js → chunk-f69rgsm2.js} +5 -5
- package/dist/{chunk-45kxdsp8.js → chunk-f6rbj3gz.js} +17 -12
- package/dist/chunk-fbhyqxdg.js +1182 -0
- package/dist/chunk-feyzykye.js +10 -0
- package/dist/chunk-ffhejx56.js +107 -0
- package/dist/{chunk-cpe70sxw.js → chunk-fhx6nt2a.js} +42 -28
- package/dist/chunk-fkkysfev.js +158 -0
- package/dist/chunk-fn510gqw.js +216 -0
- package/dist/chunk-ftsg8bjm.js +117 -0
- package/dist/{chunk-s39js2d3.js → chunk-fyts9grb.js} +2 -2
- package/dist/{chunk-bjqw6798.js → chunk-fz0ch109.js} +6 -5
- package/dist/{chunk-q1e6pzwh.js → chunk-g1jarkx9.js} +38 -8
- package/dist/chunk-g9f19ttm.js +15 -0
- package/dist/chunk-g9qte35t.js +341 -0
- package/dist/chunk-gaav53dc.js +105 -0
- package/dist/chunk-gfx3cwrk.js +75 -0
- package/dist/chunk-gk2d1x2a.js +946 -0
- package/dist/chunk-gkbat1p9.js +121 -0
- package/dist/{chunk-cg43nnpk.js → chunk-gmnyk2t8.js} +8 -6
- package/dist/{chunk-m23b51r2.js → chunk-gnmdprq3.js} +191 -338
- package/dist/{chunk-bq6x1ehp.js → chunk-gpz0ddyz.js} +8 -8
- package/dist/{chunk-yt6z8030.js → chunk-gv1csnc3.js} +217 -355
- package/dist/{chunk-nx6nds18.js → chunk-gv37c8ax.js} +3 -3
- package/dist/{chunk-h6c8cms4.js → chunk-gzr2601k.js} +10 -10
- package/dist/{chunk-2tkt52mz.js → chunk-h3pda469.js} +37 -82
- package/dist/{chunk-qqfa0dqg.js → chunk-h4b85amj.js} +20 -32
- package/dist/chunk-h5zv78zq.js +352 -0
- package/dist/{chunk-2x3gmbws.js → chunk-h7edytkc.js} +5 -5
- package/dist/{chunk-as261f01.js → chunk-ha0wbzc3.js} +13 -11
- package/dist/{chunk-nxsh6de2.js → chunk-hcgkak1j.js} +20 -125
- package/dist/{chunk-tjaqa99q.js → chunk-hezj20qy.js} +3 -3
- package/dist/{chunk-7ahman84.js → chunk-hf85ht0m.js} +2 -2
- package/dist/{chunk-w0hx9v3y.js → chunk-ht1nfygk.js} +42 -28
- package/dist/chunk-j316jjby.js +108 -0
- package/dist/chunk-j3fge71v.js +115 -0
- package/dist/{chunk-v4h5psgs.js → chunk-j4x0t6k2.js} +46 -31
- package/dist/{chunk-9gbamk79.js → chunk-j5bth84e.js} +5 -1
- package/dist/chunk-j783d5af.js +134 -0
- package/dist/chunk-j7pbwf9x.js +108 -0
- package/dist/{chunk-rf2w4x97.js → chunk-j8rnrm5n.js} +120 -142
- package/dist/{chunk-vratq94g.js → chunk-j9gxwbe3.js} +1 -1
- package/dist/{chunk-3r24h7t6.js → chunk-jaaxk89e.js} +1 -1
- package/dist/{chunk-y47cg3kz.js → chunk-jaew3662.js} +18 -13
- package/dist/{chunk-q1txr206.js → chunk-jbbj16w2.js} +128 -185
- package/dist/chunk-jerew25v.js +148 -0
- package/dist/{chunk-v399mzxk.js → chunk-jf0p00fz.js} +2 -2
- package/dist/{chunk-97r68x5g.js → chunk-jfsah2w3.js} +1065 -1762
- package/dist/{chunk-av73dywf.js → chunk-jna2tcvj.js} +8 -8
- package/dist/{chunk-yym1e1dr.js → chunk-jng0mb4r.js} +10 -10
- package/dist/chunk-jrrmwfp4.js +66 -0
- package/dist/{chunk-0rc2rn3b.js → chunk-jt6fa514.js} +14 -12
- package/dist/chunk-jvkyx1b7.js +911 -0
- package/dist/{chunk-41xeh3t9.js → chunk-jy6c07wa.js} +4 -4
- package/dist/chunk-k1fvb16y.js +269 -0
- package/dist/{chunk-bqfnp99q.js → chunk-k3s4yk22.js} +1 -1
- package/dist/{chunk-madfgr3n.js → chunk-k46gxg21.js} +68 -8
- package/dist/chunk-k8wwyz2t.js +110 -0
- package/dist/{chunk-mnx3wyv4.js → chunk-ka3fdfyb.js} +83 -62
- package/dist/{chunk-k5c8ssc6.js → chunk-ka4x7mhn.js} +42 -28
- package/dist/chunk-kb99zpps.js +216 -0
- package/dist/{chunk-1dyeexvn.js → chunk-kd3mmsd2.js} +4 -4
- package/dist/{chunk-1xkekb9y.js → chunk-kfd89dsd.js} +5 -3
- package/dist/{chunk-g7fxbqsc.js → chunk-km1wcchx.js} +87 -68
- package/dist/{chunk-248szg6m.js → chunk-kmhwx18d.js} +3 -3
- package/dist/{chunk-pabnr66n.js → chunk-kq91dwkq.js} +8 -6
- package/dist/chunk-m17m84b7.js +111 -0
- package/dist/chunk-m1a0s9fd.js +1070 -0
- package/dist/{chunk-jafes477.js → chunk-m2bcpk8j.js} +4 -3
- package/dist/{chunk-t0brxw87.js → chunk-m7jtn7dk.js} +80 -60
- package/dist/chunk-mq2mgyt9.js +103 -0
- package/dist/chunk-msv3w4qp.js +1811 -0
- package/dist/chunk-mx28h61f.js +1147 -0
- package/dist/{chunk-wf7yz2j0.js → chunk-mxe1f4jg.js} +13 -11
- package/dist/{chunk-n5crdyay.js → chunk-mzwjvfr2.js} +137 -124
- package/dist/{chunk-gf96dtb6.js → chunk-n2n0sq7r.js} +71 -77
- package/dist/{chunk-m06q12hg.js → chunk-n8mpqdje.js} +1 -1
- package/dist/chunk-n9e984ba.js +132 -0
- package/dist/chunk-netzwgv1.js +154 -0
- package/dist/{chunk-xszk7n10.js → chunk-nh3cd07f.js} +1 -1
- package/dist/chunk-njrz6mbe.js +66 -0
- package/dist/{chunk-sb2sew2f.js → chunk-nv7pfr7k.js} +2 -2
- package/dist/{chunk-g9xf7jc4.js → chunk-nwd8pb55.js} +85 -65
- package/dist/{chunk-5hva0tsg.js → chunk-p2yv7m0g.js} +6 -6
- package/dist/chunk-p5t2vy90.js +259 -0
- package/dist/{chunk-zk2wsm7d.js → chunk-p7vkh4wx.js} +2 -2
- package/dist/{chunk-da4ve9t5.js → chunk-p8crqj70.js} +10 -10
- package/dist/{chunk-02y0y853.js → chunk-pcngtzr8.js} +12 -6
- package/dist/{chunk-3vpqaqc6.js → chunk-pdjem6h1.js} +53 -71
- package/dist/{chunk-7rgwp44r.js → chunk-pmxdzjq0.js} +11 -9
- package/dist/{chunk-3s5r02ps.js → chunk-pnkcecq2.js} +31 -57
- package/dist/{chunk-zsfxha74.js → chunk-pshjyzq4.js} +8 -7
- package/dist/chunk-pt1yj9zf.js +107 -0
- package/dist/{chunk-rxwb7b78.js → chunk-py6b9d5b.js} +2331 -4219
- package/dist/chunk-q7n8d91g.js +67 -0
- package/dist/{chunk-e5pntxye.js → chunk-q7tpyeb3.js} +6 -4
- package/dist/{chunk-7ymfj7m3.js → chunk-q82r31er.js} +1 -1
- package/dist/chunk-qajrkk97.js +298 -0
- package/dist/chunk-qbrh24cn.js +119 -0
- package/dist/chunk-qd9ntz7c.js +230 -0
- package/dist/chunk-qfr5tcd5.js +2537 -0
- package/dist/chunk-qpzfmkct.js +456 -0
- package/dist/{chunk-ywxd4qw4.js → chunk-qtfc6wdh.js} +2 -5
- package/dist/chunk-r032587e.js +83 -0
- package/dist/chunk-r2k2jy0y.js +51 -0
- package/dist/{chunk-8mqwac85.js → chunk-r4dnnggx.js} +22 -16
- package/dist/{chunk-5wnn3t3a.js → chunk-r5n8fvw0.js} +7 -7
- package/dist/{chunk-pxvatg16.js → chunk-r7kh03er.js} +231 -190
- package/dist/{chunk-z4wtem3z.js → chunk-rfs0mfg8.js} +147 -151
- package/dist/{chunk-hrzerbfw.js → chunk-rgbbtszq.js} +14 -14
- package/dist/{chunk-ctw5jwcd.js → chunk-rkak3kjw.js} +10 -10
- package/dist/chunk-rp568bfw.js +111 -0
- package/dist/chunk-rtv718sv.js +146 -0
- package/dist/{chunk-8d5eyjse.js → chunk-rvkvehat.js} +5284 -3093
- package/dist/chunk-s1baskk7.js +14 -0
- package/dist/{chunk-tse7q7k1.js → chunk-s1eb67v3.js} +79 -59
- package/dist/{chunk-7rn4t7tx.js → chunk-s59kx26r.js} +87 -64
- package/dist/chunk-s6yk6m3b.js +109 -0
- package/dist/{chunk-bsk44136.js → chunk-sca71yv8.js} +11 -9
- package/dist/chunk-sfrwm87k.js +151 -0
- package/dist/chunk-sgaknx21.js +123 -0
- package/dist/{chunk-4y62603j.js → chunk-snyaz093.js} +9 -15
- package/dist/{chunk-ytg914ra.js → chunk-sq8wkk3z.js} +1 -3
- package/dist/chunk-sxqj7s2h.js +54 -0
- package/dist/chunk-t2m6cjp1.js +264 -0
- package/dist/chunk-t6hmvb6k.js +1021 -0
- package/dist/chunk-t72x960a.js +125 -0
- package/dist/chunk-t9kashay.js +440 -0
- package/dist/chunk-t9wzf009.js +151 -0
- package/dist/chunk-ta1dgyj1.js +154 -0
- package/dist/chunk-tavxhayf.js +149 -0
- package/dist/{chunk-2tw2ve8h.js → chunk-tcdv4gp8.js} +18 -12
- package/dist/chunk-td3b74vm.js +362 -0
- package/dist/{chunk-mt25echc.js → chunk-tezak8rx.js} +1 -1
- package/dist/chunk-tgcw0rzx.js +262 -0
- package/dist/{chunk-9rcbyag3.js → chunk-tmdbrszg.js} +2 -2
- package/dist/{chunk-avwewk4v.js → chunk-v17qee2y.js} +12 -8
- package/dist/{chunk-njtjmsx7.js → chunk-v1jd31dw.js} +2 -2
- package/dist/chunk-var1et7e.js +66 -0
- package/dist/{chunk-j5zq8axt.js → chunk-ve9wswz4.js} +7 -131
- package/dist/{chunk-hqmz36b3.js → chunk-vf612n57.js} +21 -101
- package/dist/chunk-vfhabc5j.js +109 -0
- package/dist/{chunk-wszmas1q.js → chunk-vgy0w6tt.js} +2 -2
- package/dist/chunk-vh02fvz1.js +375 -0
- package/dist/{chunk-jz6sqm8m.js → chunk-vm935era.js} +1083 -881
- package/dist/{chunk-e7393td6.js → chunk-vtb8z6as.js} +14 -9
- package/dist/chunk-w2kf9sxn.js +115 -0
- package/dist/chunk-w7trx259.js +132 -0
- package/dist/chunk-w92b262y.js +1072 -0
- package/dist/chunk-w9zqjhvm.js +103 -0
- package/dist/{chunk-0he1tqj5.js → chunk-wb2fvy1k.js} +81 -61
- package/dist/chunk-ws2d81aj.js +123 -0
- package/dist/{chunk-k808gmhk.js → chunk-wssgdcck.js} +2 -2
- package/dist/{chunk-t9z6njcr.js → chunk-wtycm8km.js} +9 -9
- package/dist/chunk-wz0d8mna.js +108 -0
- package/dist/chunk-x01wtn3p.js +144 -0
- package/dist/{chunk-ze747xz6.js → chunk-x2sp7rcv.js} +73 -105
- package/dist/{chunk-7vtykt4v.js → chunk-xbprynsc.js} +18 -46
- package/dist/{chunk-p196v9d0.js → chunk-xext3y2y.js} +8 -6
- package/dist/{chunk-r66hz8j6.js → chunk-xycy3c8q.js} +15 -12
- package/dist/{chunk-npv8q5qr.js → chunk-y01ys1vm.js} +25 -74
- package/dist/{chunk-spqaamnc.js → chunk-y78t50v0.js} +2 -2
- package/dist/chunk-y9bgt2k1.js +78 -0
- package/dist/{chunk-j8rw3m89.js → chunk-ydm0nfsv.js} +6 -6
- package/dist/{chunk-3cn070p7.js → chunk-yetebjek.js} +291 -502
- package/dist/chunk-ym5r3jnk.js +2007 -0
- package/dist/chunk-ysks0ewj.js +237 -0
- package/dist/chunk-yv3evkgg.js +68 -0
- package/dist/chunk-yw79dz62.js +164 -0
- package/dist/{chunk-ea18z8vr.js → chunk-yy59gvs4.js} +159 -183
- package/dist/{chunk-def1dc97.js → chunk-yyax4hdg.js} +10 -8
- package/dist/chunk-yzx3mhfd.js +110 -0
- package/dist/chunk-z0q85m5f.js +108 -0
- package/dist/chunk-z1bs6d7k.js +24 -0
- package/dist/chunk-z6e5jp2w.js +119 -0
- package/dist/chunk-z7ssqvt6.js +6886 -0
- package/dist/chunk-z95yxwyb.js +61 -0
- package/dist/{chunk-5a3cw988.js → chunk-z9aqj026.js} +5 -5
- package/dist/chunk-zc6dxhk9.js +169 -0
- package/dist/{chunk-2t3vw4tx.js → chunk-ze6zvkg6.js} +10 -10
- package/dist/{chunk-t0rgmccj.js → chunk-zejm280k.js} +1 -1
- package/dist/chunk-zfapazzd.js +37 -0
- package/dist/chunk-zj4fqmnc.js +219 -0
- package/dist/chunk-zkrpbswn.js +1608 -0
- package/dist/chunk-zktbb38m.js +112 -0
- package/dist/{chunk-2mcrd0rj.js → chunk-zptcqa7t.js} +92 -71
- package/dist/{chunk-a3csma98.js → chunk-zvnsjbt8.js} +1 -1
- package/dist/chunk-zwaanw8y.js +110 -0
- package/dist/{chunk-g3t0act8.js → chunk-zzm33q8x.js} +1 -1
- package/dist/{chunk-3gqdqmzb.js → chunk-zzzc1ead.js} +17 -12
- package/dist/cli.js +39 -10
- package/dist/download-ripgrep.js +24821 -0
- package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
- package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
- package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
- package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
- package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
- package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
- package/package.json +25 -15
- package/scripts/download-ripgrep.ts +335 -0
- package/scripts/postinstall.cjs +319 -0
- package/dist/chunk-07ysf2mw.js +0 -184
- package/dist/chunk-0ewgfms5.js +0 -117
- package/dist/chunk-165b9y9k.js +0 -70
- package/dist/chunk-17g3drrw.js +0 -121
- package/dist/chunk-1jv1ckhg.js +0 -1152
- package/dist/chunk-1pxd1xfp.js +0 -103
- package/dist/chunk-1tzexy7d.js +0 -258
- package/dist/chunk-271zt54b.js +0 -1871
- package/dist/chunk-2a27tvzp.js +0 -281
- package/dist/chunk-2g1zxpt7.js +0 -2833
- package/dist/chunk-2jb48txn.js +0 -98
- package/dist/chunk-2kc13eta.js +0 -88
- package/dist/chunk-2tme3s1c.js +0 -114
- package/dist/chunk-4491abz9.js +0 -99
- package/dist/chunk-4dfmgx6h.js +0 -69
- package/dist/chunk-4fbyr2hm.js +0 -279
- package/dist/chunk-5dsvtbwb.js +0 -87
- package/dist/chunk-5t59fqg3.js +0 -127
- package/dist/chunk-60nc5bh3.js +0 -1579
- package/dist/chunk-6dcq96a3.js +0 -128
- package/dist/chunk-6tm5941a.js +0 -152
- package/dist/chunk-79zmgkg5.js +0 -750
- package/dist/chunk-7d35rxr3.js +0 -69
- package/dist/chunk-7enxknwt.js +0 -442
- package/dist/chunk-7j0wpf4m.js +0 -89
- package/dist/chunk-7q6pjeyp.js +0 -1493
- package/dist/chunk-7whgbwhx.js +0 -584
- package/dist/chunk-9egdc8n4.js +0 -463
- package/dist/chunk-9rr0wepz.js +0 -56
- package/dist/chunk-ajp7hmws.js +0 -422
- package/dist/chunk-bm1qb16p.js +0 -17
- package/dist/chunk-bmvzacx5.js +0 -998
- package/dist/chunk-bw093kge.js +0 -129
- package/dist/chunk-c4q9x8t2.js +0 -105
- package/dist/chunk-c6421kme.js +0 -54
- package/dist/chunk-cdajcgne.js +0 -195
- package/dist/chunk-ch8avrbh.js +0 -86
- package/dist/chunk-chkyv40s.js +0 -2642
- package/dist/chunk-d049dd11.js +0 -348
- package/dist/chunk-d7tw94h4.js +0 -114
- package/dist/chunk-daeav7vb.js +0 -418
- package/dist/chunk-dxnv8hfn.js +0 -536
- package/dist/chunk-dy3tzxgq.js +0 -91
- package/dist/chunk-exy9bnjf.js +0 -212
- package/dist/chunk-f1f3dmd5.js +0 -713
- package/dist/chunk-f7yg1atj.js +0 -47
- package/dist/chunk-fakajzny.js +0 -372
- package/dist/chunk-ftrm87vt.js +0 -467
- package/dist/chunk-ftsp0cj3.js +0 -105
- package/dist/chunk-fv7hhcns.js +0 -345
- package/dist/chunk-fvcwxb8x.js +0 -83
- package/dist/chunk-g00hs992.js +0 -90
- package/dist/chunk-g5fpkpeg.js +0 -520
- package/dist/chunk-g9qyg278.js +0 -88
- package/dist/chunk-gkjdjqfs.js +0 -112
- package/dist/chunk-gqk545se.js +0 -6107
- package/dist/chunk-gyj242zr.js +0 -20
- package/dist/chunk-gzmjp1eb.js +0 -696
- package/dist/chunk-hbh17tng.js +0 -1013
- package/dist/chunk-hdfzyzk4.js +0 -85
- package/dist/chunk-hdtb5jce.js +0 -101
- package/dist/chunk-j99mjxam.js +0 -220
- package/dist/chunk-jaqg0k7h.js +0 -271
- package/dist/chunk-jdew773m.js +0 -115
- package/dist/chunk-jjsx6t78.js +0 -169
- package/dist/chunk-jpr8js4w.js +0 -328
- package/dist/chunk-jx817w05.js +0 -11
- package/dist/chunk-k0g3jve7.js +0 -89
- package/dist/chunk-k1g3g183.js +0 -128
- package/dist/chunk-k1p54aq6.js +0 -54
- package/dist/chunk-kexj9c6y.js +0 -5398
- package/dist/chunk-kgg1gq3t.js +0 -113
- package/dist/chunk-kwkrek4t.js +0 -95
- package/dist/chunk-m4gcjpj3.js +0 -103
- package/dist/chunk-m6rk1r6q.js +0 -194
- package/dist/chunk-mb2xmb0d.js +0 -53
- package/dist/chunk-mv1pbf3a.js +0 -297
- package/dist/chunk-my7r0cca.js +0 -469
- package/dist/chunk-nprycdaa.js +0 -525
- package/dist/chunk-p2pztr2r.js +0 -104
- package/dist/chunk-p68nf56z.js +0 -92
- package/dist/chunk-p6pc9xrz.js +0 -3443
- package/dist/chunk-p7skftb4.js +0 -108
- package/dist/chunk-pa2235xc.js +0 -160
- package/dist/chunk-pmzbyaat.js +0 -99
- package/dist/chunk-pqzk7nbh.js +0 -91
- package/dist/chunk-pvvew193.js +0 -802
- package/dist/chunk-pvx0x5zm.js +0 -2057
- package/dist/chunk-py77warv.js +0 -66
- package/dist/chunk-q43gccx5.js +0 -92
- package/dist/chunk-rse6x10x.js +0 -89
- package/dist/chunk-rxdhy7ve.js +0 -131
- package/dist/chunk-scb48p4v.js +0 -496
- package/dist/chunk-sjqtqj35.js +0 -28
- package/dist/chunk-sq0wf7jj.js +0 -1919
- package/dist/chunk-sy1hkkty.js +0 -400
- package/dist/chunk-sy9jf9v2.js +0 -109
- package/dist/chunk-t2km9bn3.js +0 -87
- package/dist/chunk-t4afbt2j.js +0 -88
- package/dist/chunk-t4c5qtdc.js +0 -42
- package/dist/chunk-t94jxd0x.js +0 -100
- package/dist/chunk-tb2g2bba.js +0 -192
- package/dist/chunk-tdpvdzbf.js +0 -97
- package/dist/chunk-tf4dw2e2.js +0 -142
- package/dist/chunk-tp40437d.js +0 -90
- package/dist/chunk-vabm7x8v.js +0 -61
- package/dist/chunk-veaq13qy.js +0 -490
- package/dist/chunk-vmz3wcnv.js +0 -641
- package/dist/chunk-vsgv16zj.js +0 -756
- package/dist/chunk-vxa0avb0.js +0 -105
- package/dist/chunk-x14dq3v1.js +0 -722
- package/dist/chunk-x6bg700t.js +0 -88
- package/dist/chunk-x8b7vft8.js +0 -132
- package/dist/chunk-xmdcxa8r.js +0 -374
- package/dist/chunk-y42a2xmv.js +0 -1316
- package/dist/chunk-y56ckcf8.js +0 -44
- package/dist/chunk-ybgghjqa.js +0 -602
- package/dist/chunk-zacq47b2.js +0 -84
- package/dist/chunk-zv3hxg5y.js +0 -267
- package/dist/chunk-zw2x3xxq.js +0 -96
- package/dist/chunk-zyf9epwn.js +0 -642
- package/dist/{chunk-whvdag1y.js → chunk-3bfs3x0h.js} +9 -9
- package/dist/{chunk-27xc1csx.js → chunk-dggvswz1.js} +3 -3
- package/dist/{chunk-0wftg29n.js → chunk-f9nt10jh.js} +3 -3
|
@@ -1,80 +1,85 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-
|
|
2
|
+
import"./chunk-jng0mb4r.js";
|
|
3
3
|
import {
|
|
4
4
|
cliError,
|
|
5
5
|
cliOk
|
|
6
6
|
} from "./chunk-z2dp53wn.js";
|
|
7
|
+
import {
|
|
8
|
+
buildDeepLinkBanner
|
|
9
|
+
} from "./chunk-28043j1k.js";
|
|
7
10
|
import {
|
|
8
11
|
filterExistingPaths,
|
|
9
12
|
getKnownPathsForRepo,
|
|
10
13
|
updateGithubRepoPathMapping
|
|
11
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-eaemyebz.js";
|
|
12
15
|
import {
|
|
13
16
|
computeInitialTeamContext,
|
|
14
17
|
createRemoteSessionConfig,
|
|
15
18
|
getModelDeprecationWarning,
|
|
16
19
|
getRelevantTips,
|
|
17
20
|
refreshExampleCommands
|
|
18
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-eqmkajs4.js";
|
|
19
22
|
import {
|
|
20
23
|
processResumedConversation,
|
|
21
24
|
skillChangeDetector
|
|
22
|
-
} from "./chunk-
|
|
23
|
-
import"./chunk-cdajcgne.js";
|
|
25
|
+
} from "./chunk-gzr2601k.js";
|
|
24
26
|
import {
|
|
25
27
|
installAsciicastRecorder
|
|
26
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-ergam9ft.js";
|
|
29
|
+
import"./chunk-mq2mgyt9.js";
|
|
27
30
|
import {
|
|
28
31
|
getBaseRenderOptions
|
|
29
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-jf0p00fz.js";
|
|
30
33
|
import {
|
|
31
34
|
createStatsStore
|
|
32
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-44q4jkwa.js";
|
|
33
36
|
import {
|
|
34
|
-
applyConfigEnvironmentVariables,
|
|
35
|
-
applySafeConfigEnvironmentVariables,
|
|
36
37
|
onChangeAppState
|
|
37
|
-
} from "./chunk-
|
|
38
|
-
import"./chunk-
|
|
39
|
-
import
|
|
40
|
-
|
|
38
|
+
} from "./chunk-4f4ccg1h.js";
|
|
39
|
+
import"./chunk-fyts9grb.js";
|
|
40
|
+
import {
|
|
41
|
+
seedEarlyInput,
|
|
42
|
+
stopCapturingEarlyInput
|
|
43
|
+
} from "./chunk-46fcr28b.js";
|
|
44
|
+
import"./chunk-4hv90qcz.js";
|
|
45
|
+
import {
|
|
46
|
+
init_partition,
|
|
47
|
+
partition_default
|
|
48
|
+
} from "./chunk-v1jd31dw.js";
|
|
41
49
|
import {
|
|
42
50
|
init_setup,
|
|
43
51
|
setupClaudeInChrome,
|
|
44
52
|
shouldAutoEnableClaudeInChrome,
|
|
45
53
|
shouldEnableClaudeInChrome
|
|
46
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-jt6fa514.js";
|
|
47
55
|
import {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
} from "./chunk-
|
|
56
|
+
VALID_INSTALLABLE_SCOPES,
|
|
57
|
+
VALID_UPDATE_SCOPES
|
|
58
|
+
} from "./chunk-2wvxddsg.js";
|
|
59
|
+
import"./chunk-436r0x2n.js";
|
|
51
60
|
import {
|
|
52
61
|
init_releaseNotes,
|
|
53
62
|
migrateChangelogFromConfig
|
|
54
|
-
} from "./chunk-
|
|
63
|
+
} from "./chunk-0ja0y3at.js";
|
|
64
|
+
import"./chunk-66jkaz3q.js";
|
|
65
|
+
import"./chunk-rtv718sv.js";
|
|
66
|
+
import"./chunk-h7edytkc.js";
|
|
55
67
|
import {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
} from "./chunk-
|
|
59
|
-
import"./chunk-n78qmqpq.js";
|
|
60
|
-
import"./chunk-tb2g2bba.js";
|
|
61
|
-
import"./chunk-1w361mz1.js";
|
|
62
|
-
import"./chunk-tdpvdzbf.js";
|
|
63
|
-
import"./chunk-2x3gmbws.js";
|
|
68
|
+
BROWSER_TOOLS,
|
|
69
|
+
init_src as init_src2
|
|
70
|
+
} from "./chunk-ym5r3jnk.js";
|
|
64
71
|
import {
|
|
65
72
|
init_sink,
|
|
66
73
|
initializeAnalyticsGates
|
|
67
|
-
} from "./chunk-
|
|
68
|
-
import {
|
|
69
|
-
BROWSER_TOOLS,
|
|
70
|
-
init_src
|
|
71
|
-
} from "./chunk-gyj242zr.js";
|
|
74
|
+
} from "./chunk-wssgdcck.js";
|
|
72
75
|
import {
|
|
73
76
|
ASK_USER_QUESTION_TOOL_NAME,
|
|
74
77
|
AppStateProvider,
|
|
75
78
|
CLAUDE_CODE_GUIDE_AGENT_TYPE,
|
|
76
79
|
CRON_CREATE_TOOL_NAME,
|
|
77
80
|
CRON_DELETE_TOOL_NAME,
|
|
81
|
+
CRON_LIST_TOOL_NAME,
|
|
82
|
+
ConfigurableShortcutHint,
|
|
78
83
|
DEFAULT_BINDINGS,
|
|
79
84
|
DEFAULT_MAX_AGE_DAYS,
|
|
80
85
|
ENTER_PLAN_MODE_TOOL_NAME,
|
|
@@ -83,6 +88,7 @@ import {
|
|
|
83
88
|
KeybindingSetup,
|
|
84
89
|
MACOS_RESERVED,
|
|
85
90
|
NON_REBINDABLE,
|
|
91
|
+
REMOTE_TRIGGER_TOOL_NAME,
|
|
86
92
|
SKILL_TOOL_NAME,
|
|
87
93
|
SandboxManager,
|
|
88
94
|
Select,
|
|
@@ -91,14 +97,17 @@ import {
|
|
|
91
97
|
acquireIdpIdToken,
|
|
92
98
|
addMcpConfig,
|
|
93
99
|
addToHistory,
|
|
100
|
+
applyConfigEnvironmentVariables,
|
|
101
|
+
applySafeConfigEnvironmentVariables,
|
|
94
102
|
areMcpConfigsAllowedWithEnterpriseMcpConfig,
|
|
95
103
|
asSessionId,
|
|
96
|
-
|
|
104
|
+
buildConsolidationPrompt,
|
|
97
105
|
cacheSessionTitle,
|
|
98
106
|
canUserConfigureAdvisor,
|
|
99
107
|
checkAndDisableBypassPermissions,
|
|
100
108
|
checkOutTeleportedSessionBranch,
|
|
101
109
|
checkQuotaStatus,
|
|
110
|
+
checkRepoForRemoteAccess,
|
|
102
111
|
cleanupOrphanedPluginVersionsInBackground,
|
|
103
112
|
clearIdpClientSecret,
|
|
104
113
|
clearIdpIdToken,
|
|
@@ -106,6 +115,7 @@ import {
|
|
|
106
115
|
clearServerCache,
|
|
107
116
|
countConcurrentSessions,
|
|
108
117
|
countFilesRoundedRg,
|
|
118
|
+
createDefaultCloudEnvironment,
|
|
109
119
|
createStore,
|
|
110
120
|
createSyntheticOutputTool,
|
|
111
121
|
createSystemMessage,
|
|
@@ -122,6 +132,7 @@ import {
|
|
|
122
132
|
exports_BriefTool,
|
|
123
133
|
exports_teammatePromptAddendum,
|
|
124
134
|
fetchClaudeAIMcpConfigsIfEligible,
|
|
135
|
+
fetchEnvironments,
|
|
125
136
|
filterCommandsForRemoteMode,
|
|
126
137
|
filterMcpServersByPolicy,
|
|
127
138
|
generateTempFilePath,
|
|
@@ -144,6 +155,7 @@ import {
|
|
|
144
155
|
getMemoryFiles,
|
|
145
156
|
getMessagesAfterCompactBoundary,
|
|
146
157
|
getPluginSeedDirs,
|
|
158
|
+
getProjectDir,
|
|
147
159
|
getProjectMcpServerStatus,
|
|
148
160
|
getRemoteSessionUrl,
|
|
149
161
|
getSessionIdFromLog,
|
|
@@ -161,6 +173,7 @@ import {
|
|
|
161
173
|
init_AppState,
|
|
162
174
|
init_AppStateStore,
|
|
163
175
|
init_BriefTool,
|
|
176
|
+
init_ConfigurableShortcutHint,
|
|
164
177
|
init_CustomSelect,
|
|
165
178
|
init_KeybindingProviderSetup,
|
|
166
179
|
init_SelectMulti,
|
|
@@ -170,7 +183,6 @@ import {
|
|
|
170
183
|
init_allErrors,
|
|
171
184
|
init_api as init_api2,
|
|
172
185
|
init_auth as init_auth2,
|
|
173
|
-
init_autoUpdater,
|
|
174
186
|
init_bundledSkills,
|
|
175
187
|
init_cacheUtils,
|
|
176
188
|
init_changeDetector,
|
|
@@ -182,6 +194,8 @@ import {
|
|
|
182
194
|
init_commands1 as init_commands,
|
|
183
195
|
init_concurrentSessions,
|
|
184
196
|
init_config as init_config3,
|
|
197
|
+
init_consolidationLock,
|
|
198
|
+
init_consolidationPrompt,
|
|
185
199
|
init_constants2 as init_constants3,
|
|
186
200
|
init_constants3 as init_constants4,
|
|
187
201
|
init_constants5,
|
|
@@ -189,6 +203,7 @@ import {
|
|
|
189
203
|
init_conversationRecovery,
|
|
190
204
|
init_defaultBindings,
|
|
191
205
|
init_effort,
|
|
206
|
+
init_environments,
|
|
192
207
|
init_filesApi,
|
|
193
208
|
init_filesystem,
|
|
194
209
|
init_frontmatterParser,
|
|
@@ -202,6 +217,7 @@ import {
|
|
|
202
217
|
init_internalLogging,
|
|
203
218
|
init_loadAgentsDir,
|
|
204
219
|
init_loadUserBindings,
|
|
220
|
+
init_managedEnv,
|
|
205
221
|
init_managedPlugins,
|
|
206
222
|
init_manager,
|
|
207
223
|
init_mapValues,
|
|
@@ -212,10 +228,12 @@ import {
|
|
|
212
228
|
init_pluginLoader,
|
|
213
229
|
init_pluginTelemetry,
|
|
214
230
|
init_policyLimits,
|
|
231
|
+
init_preconditions,
|
|
215
232
|
init_product,
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
233
|
+
init_prompt12 as init_prompt5,
|
|
234
|
+
init_prompt6 as init_prompt2,
|
|
235
|
+
init_prompt8 as init_prompt3,
|
|
236
|
+
init_prompt9 as init_prompt4,
|
|
219
237
|
init_promptSuggestion,
|
|
220
238
|
init_remoteManagedSettings,
|
|
221
239
|
init_reservedShortcuts,
|
|
@@ -274,11 +292,13 @@ import {
|
|
|
274
292
|
parseMcpConfig,
|
|
275
293
|
parseMcpConfigFromFilePath,
|
|
276
294
|
parsePRReference,
|
|
295
|
+
parseToolListFromCLI,
|
|
277
296
|
prefetchAllMcpResources,
|
|
278
297
|
processMessagesForTeleportResume,
|
|
279
298
|
processSessionStartHooks,
|
|
280
299
|
processSetupHooks,
|
|
281
300
|
readClientSecret,
|
|
301
|
+
recordConsolidation,
|
|
282
302
|
refreshPolicyLimits,
|
|
283
303
|
refreshRemoteManagedSettings,
|
|
284
304
|
registerBundledSkill,
|
|
@@ -306,49 +326,45 @@ import {
|
|
|
306
326
|
validateUuid,
|
|
307
327
|
waitForPolicyLimitsToLoad,
|
|
308
328
|
waitForRemoteManagedSettingsToLoad
|
|
309
|
-
} from "./chunk-
|
|
329
|
+
} from "./chunk-cy6ezb6j.js";
|
|
330
|
+
import"./chunk-zejm280k.js";
|
|
310
331
|
import {
|
|
311
332
|
getSessionIngressAuthToken,
|
|
312
333
|
init_sessionIngressAuth
|
|
313
|
-
} from "./chunk-
|
|
314
|
-
import"./chunk-
|
|
334
|
+
} from "./chunk-g1jarkx9.js";
|
|
335
|
+
import"./chunk-yyax4hdg.js";
|
|
336
|
+
import"./chunk-4nspekjp.js";
|
|
315
337
|
import {
|
|
316
338
|
exports_teammateModeSnapshot,
|
|
317
339
|
init_teammateModeSnapshot
|
|
318
|
-
} from "./chunk-
|
|
319
|
-
import"./chunk-t0rgmccj.js";
|
|
320
|
-
import"./chunk-def1dc97.js";
|
|
340
|
+
} from "./chunk-kmhwx18d.js";
|
|
321
341
|
import {
|
|
322
342
|
BASE_CHROME_PROMPT,
|
|
323
|
-
Byline,
|
|
324
343
|
CLAUDE_IN_CHROME_SKILL_HINT,
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
init_Byline,
|
|
329
|
-
init_ConfigurableShortcutHint,
|
|
330
|
-
init_Dialog,
|
|
331
|
-
init_KeyboardShortcutHint,
|
|
332
|
-
init_prompt as init_prompt4
|
|
333
|
-
} from "./chunk-9egdc8n4.js";
|
|
344
|
+
init_prompt as init_prompt6
|
|
345
|
+
} from "./chunk-var1et7e.js";
|
|
346
|
+
import"./chunk-2gzv8nrw.js";
|
|
334
347
|
import"./chunk-ehtwnxpg.js";
|
|
335
|
-
import"./chunk-
|
|
348
|
+
import"./chunk-dmxte86x.js";
|
|
336
349
|
import {
|
|
337
350
|
createEmptyAttributionState,
|
|
338
351
|
init_commitAttribution
|
|
339
|
-
} from "./chunk-
|
|
340
|
-
import"./chunk-
|
|
352
|
+
} from "./chunk-d6ve5pze.js";
|
|
353
|
+
import"./chunk-bxcfz5gy.js";
|
|
341
354
|
import {
|
|
342
355
|
DEFAULT_TASKS_MODE_TASK_LIST_ID,
|
|
343
356
|
TASK_STATUSES,
|
|
344
357
|
init_tasks
|
|
345
|
-
} from "./chunk-
|
|
346
|
-
import"./chunk-2gzv8nrw.js";
|
|
358
|
+
} from "./chunk-dekbr08w.js";
|
|
347
359
|
import {
|
|
348
360
|
CLAUDE_IN_CHROME_MCP_SERVER_NAME,
|
|
349
361
|
init_common,
|
|
350
362
|
isClaudeInChromeMCPServer
|
|
351
|
-
} from "./chunk-
|
|
363
|
+
} from "./chunk-f6rbj3gz.js";
|
|
364
|
+
import {
|
|
365
|
+
initSentry,
|
|
366
|
+
init_sentry
|
|
367
|
+
} from "./chunk-9f14bkn9.js";
|
|
352
368
|
import {
|
|
353
369
|
init_worktreeModeEnabled,
|
|
354
370
|
isWorktreeModeEnabled
|
|
@@ -356,58 +372,51 @@ import {
|
|
|
356
372
|
import {
|
|
357
373
|
init_referral,
|
|
358
374
|
prefetchPassesEligibility
|
|
359
|
-
} from "./chunk-
|
|
360
|
-
import"./chunk-
|
|
361
|
-
import"./chunk-
|
|
362
|
-
import"./chunk-
|
|
363
|
-
import"./chunk-
|
|
364
|
-
import"./chunk-
|
|
365
|
-
import {
|
|
366
|
-
Link,
|
|
367
|
-
SHOW_CURSOR,
|
|
368
|
-
ThemedBox_default,
|
|
369
|
-
ThemedText,
|
|
370
|
-
init_dec,
|
|
371
|
-
init_ink,
|
|
372
|
-
init_terminal,
|
|
373
|
-
isSynchronizedOutputSupported,
|
|
374
|
-
require_compiler_runtime
|
|
375
|
-
} from "./chunk-8d5eyjse.js";
|
|
376
|
-
import {
|
|
377
|
-
init_earlyInput,
|
|
378
|
-
seedEarlyInput,
|
|
379
|
-
stopCapturingEarlyInput
|
|
380
|
-
} from "./chunk-7m2nd8da.js";
|
|
375
|
+
} from "./chunk-k46gxg21.js";
|
|
376
|
+
import"./chunk-j5bth84e.js";
|
|
377
|
+
import"./chunk-8qhr4n77.js";
|
|
378
|
+
import"./chunk-az5x70pn.js";
|
|
379
|
+
import"./chunk-epyaq1z0.js";
|
|
380
|
+
import"./chunk-0jzdwbdc.js";
|
|
381
381
|
import"./chunk-ps49ymvj.js";
|
|
382
|
-
import
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
import"./chunk-
|
|
386
|
-
import"./chunk-
|
|
382
|
+
import"./chunk-p7vkh4wx.js";
|
|
383
|
+
import"./chunk-cmcbatgz.js";
|
|
384
|
+
import"./chunk-agx5w9ce.js";
|
|
385
|
+
import"./chunk-48w0df8a.js";
|
|
386
|
+
import"./chunk-y78t50v0.js";
|
|
387
|
+
import"./chunk-4jm600zv.js";
|
|
388
|
+
import"./chunk-n8mpqdje.js";
|
|
387
389
|
import {
|
|
388
390
|
fetchSession,
|
|
389
391
|
init_api,
|
|
390
392
|
prepareApiRequest
|
|
391
|
-
} from "./chunk-
|
|
392
|
-
import"./chunk-m06q12hg.js";
|
|
393
|
+
} from "./chunk-dqvwn28p.js";
|
|
393
394
|
import {
|
|
394
395
|
getTelemetryAttributes,
|
|
395
396
|
init_betaSessionTracing,
|
|
396
397
|
init_telemetryAttributes,
|
|
397
398
|
isBetaTracingEnabled
|
|
398
|
-
} from "./chunk-
|
|
399
|
+
} from "./chunk-esn3tgm2.js";
|
|
400
|
+
import"./chunk-mx28h61f.js";
|
|
401
|
+
import"./chunk-dsbewdgm.js";
|
|
402
|
+
import"./chunk-sxqj7s2h.js";
|
|
403
|
+
import"./chunk-8201tnhf.js";
|
|
404
|
+
import"./chunk-2qwgfjcj.js";
|
|
405
|
+
import"./chunk-chsyvavm.js";
|
|
406
|
+
import"./chunk-w92b262y.js";
|
|
399
407
|
import {
|
|
400
408
|
AGENT_TOOL_NAME,
|
|
401
|
-
PERMISSION_MODES,
|
|
402
409
|
SettingsSchema,
|
|
403
410
|
checkHasTrustDialogAccepted,
|
|
404
411
|
enableConfigs,
|
|
405
412
|
ensureKeychainPrefetchCompleted,
|
|
406
413
|
ensureMdmSettingsLoaded,
|
|
407
414
|
ensureModelStringsInitialized,
|
|
415
|
+
exports_prompt,
|
|
408
416
|
filterAllowedSdkBetas,
|
|
409
417
|
getAPIProvider,
|
|
410
418
|
getAnthropicApiKey,
|
|
419
|
+
getAutoMemPath,
|
|
411
420
|
getClaudeAIOAuthTokens,
|
|
412
421
|
getClaudeCodeUserAgent,
|
|
413
422
|
getContextWindowForModel,
|
|
@@ -455,11 +464,11 @@ import {
|
|
|
455
464
|
init_officialRegistry,
|
|
456
465
|
init_paths,
|
|
457
466
|
init_pickBy,
|
|
467
|
+
init_prompt1 as init_prompt,
|
|
458
468
|
init_providers,
|
|
459
469
|
init_rawRead,
|
|
460
470
|
init_settings,
|
|
461
471
|
init_settings1 as init_settings2,
|
|
462
|
-
init_source,
|
|
463
472
|
init_stringUtils,
|
|
464
473
|
init_types,
|
|
465
474
|
init_user,
|
|
@@ -496,145 +505,172 @@ import {
|
|
|
496
505
|
resolveFastModeStatusFromCache,
|
|
497
506
|
saveCurrentProjectConfig,
|
|
498
507
|
saveGlobalConfig,
|
|
499
|
-
source_default,
|
|
500
508
|
startKeychainPrefetch,
|
|
501
509
|
startMdmRawRead,
|
|
502
510
|
updateSettingsForSource,
|
|
503
511
|
validateForceLoginOrg,
|
|
504
512
|
withOAuth401Retry
|
|
505
|
-
} from "./chunk-
|
|
513
|
+
} from "./chunk-c1k9tg7h.js";
|
|
506
514
|
import {
|
|
507
515
|
init_json,
|
|
508
516
|
safeParseJSON
|
|
509
|
-
} from "./chunk-
|
|
517
|
+
} from "./chunk-905d2hee.js";
|
|
510
518
|
import {
|
|
511
519
|
init_windowsPaths,
|
|
512
520
|
setShellIfWindows
|
|
513
|
-
} from "./chunk-
|
|
514
|
-
import"./chunk-vratq94g.js";
|
|
521
|
+
} from "./chunk-rkak3kjw.js";
|
|
515
522
|
import {
|
|
516
523
|
configureGlobalAgents,
|
|
517
524
|
configureGlobalMTLS,
|
|
518
525
|
init_mtls,
|
|
519
526
|
init_proxy
|
|
520
|
-
} from "./chunk-
|
|
527
|
+
} from "./chunk-p2yv7m0g.js";
|
|
521
528
|
import {
|
|
522
529
|
count,
|
|
523
530
|
exports_teammate,
|
|
524
531
|
init_array,
|
|
525
532
|
init_teammate,
|
|
526
533
|
uniq
|
|
527
|
-
} from "./chunk-
|
|
534
|
+
} from "./chunk-1cwdhk7a.js";
|
|
535
|
+
import"./chunk-j9gxwbe3.js";
|
|
528
536
|
import {
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
537
|
+
init_lazySchema,
|
|
538
|
+
lazySchema
|
|
539
|
+
} from "./chunk-64c1avct.js";
|
|
540
|
+
import {
|
|
541
|
+
PERMISSION_MODES
|
|
542
|
+
} from "./chunk-6kpbgc5w.js";
|
|
543
|
+
import"./chunk-8g5pe1gr.js";
|
|
532
544
|
import {
|
|
533
545
|
getPlatform,
|
|
534
546
|
init_platform
|
|
535
|
-
} from "./chunk-
|
|
547
|
+
} from "./chunk-hezj20qy.js";
|
|
548
|
+
import"./chunk-4cp6193g.js";
|
|
549
|
+
import {
|
|
550
|
+
init_v4
|
|
551
|
+
} from "./chunk-8g747a8x.js";
|
|
536
552
|
import {
|
|
537
553
|
exports_external,
|
|
538
|
-
init_lazySchema,
|
|
539
|
-
lazySchema,
|
|
540
554
|
toJSONSchema
|
|
541
|
-
} from "./chunk-
|
|
542
|
-
import"./chunk-
|
|
543
|
-
import"./chunk-
|
|
555
|
+
} from "./chunk-d7886r6a.js";
|
|
556
|
+
import"./chunk-f5ma3nh5.js";
|
|
557
|
+
import"./chunk-qz2x630m.js";
|
|
558
|
+
import"./chunk-dk8287aa.js";
|
|
559
|
+
import"./chunk-r2k2jy0y.js";
|
|
560
|
+
import"./chunk-3c25bcsw.js";
|
|
544
561
|
import {
|
|
545
562
|
init_bundledMode,
|
|
546
563
|
isInBundledMode
|
|
547
|
-
} from "./chunk-
|
|
564
|
+
} from "./chunk-2q39ej51.js";
|
|
548
565
|
import {
|
|
549
566
|
OAUTH_BETA_HEADER,
|
|
550
567
|
getOauthConfig,
|
|
551
568
|
init_oauth
|
|
552
|
-
} from "./chunk-
|
|
553
|
-
import"./chunk-f5ma3nh5.js";
|
|
554
|
-
import"./chunk-qz2x630m.js";
|
|
555
|
-
import"./chunk-cvge4pvp.js";
|
|
569
|
+
} from "./chunk-q82r31er.js";
|
|
556
570
|
import"./chunk-p2816w9z.js";
|
|
557
571
|
import"./chunk-v9smspw2.js";
|
|
558
572
|
import"./chunk-v1kzp02e.js";
|
|
559
|
-
import"./chunk-0vkfrmqm.js";
|
|
560
|
-
import"./chunk-0xjaqda8.js";
|
|
561
573
|
import {
|
|
562
574
|
formatFileSize,
|
|
563
575
|
init_format,
|
|
564
576
|
init_startupProfiler,
|
|
565
577
|
profileCheckpoint,
|
|
566
578
|
profileReport
|
|
567
|
-
} from "./chunk-
|
|
568
|
-
import"./chunk-
|
|
579
|
+
} from "./chunk-qpzfmkct.js";
|
|
580
|
+
import"./chunk-crmjpsqe.js";
|
|
581
|
+
import {
|
|
582
|
+
Byline,
|
|
583
|
+
Dialog,
|
|
584
|
+
KeyboardShortcutHint,
|
|
585
|
+
Link,
|
|
586
|
+
SHOW_CURSOR,
|
|
587
|
+
ThemedBox_default,
|
|
588
|
+
ThemedText,
|
|
589
|
+
init_source,
|
|
590
|
+
init_src,
|
|
591
|
+
isSynchronizedOutputSupported,
|
|
592
|
+
source_default
|
|
593
|
+
} from "./chunk-rvkvehat.js";
|
|
594
|
+
import {
|
|
595
|
+
require_jsx_dev_runtime,
|
|
596
|
+
require_react
|
|
597
|
+
} from "./chunk-g338npwr.js";
|
|
569
598
|
import {
|
|
570
599
|
init_analytics,
|
|
571
600
|
logEvent
|
|
572
601
|
} from "./chunk-h0rbjg6x.js";
|
|
602
|
+
import"./chunk-0vkfrmqm.js";
|
|
603
|
+
import"./chunk-0xjaqda8.js";
|
|
573
604
|
import {
|
|
574
605
|
detectCurrentRepository,
|
|
575
|
-
|
|
576
|
-
|
|
606
|
+
detectCurrentRepositoryWithHost,
|
|
607
|
+
init_detectRepository,
|
|
608
|
+
parseGitRemote
|
|
609
|
+
} from "./chunk-21z7acxh.js";
|
|
577
610
|
import {
|
|
578
611
|
findGitRoot,
|
|
579
612
|
getBranch,
|
|
580
613
|
getIsGit,
|
|
614
|
+
getRemoteUrl,
|
|
581
615
|
getWorktreeCount,
|
|
582
616
|
init_diagLogs,
|
|
583
617
|
init_git,
|
|
584
|
-
init_gitFilesystem,
|
|
585
618
|
logForDiagnosticsNoPII
|
|
586
|
-
} from "./chunk-
|
|
587
|
-
import"./chunk-
|
|
619
|
+
} from "./chunk-rgbbtszq.js";
|
|
620
|
+
import"./chunk-1thgdca1.js";
|
|
588
621
|
import"./chunk-qnfx3qtx.js";
|
|
622
|
+
import"./chunk-yw79dz62.js";
|
|
589
623
|
import {
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
} from "./chunk-
|
|
593
|
-
import"./chunk-vyc0rjyx.js";
|
|
594
|
-
import {
|
|
595
|
-
execa,
|
|
596
|
-
init_execa
|
|
597
|
-
} from "./chunk-hx2tr4ep.js";
|
|
624
|
+
getCwd,
|
|
625
|
+
init_cwd
|
|
626
|
+
} from "./chunk-b81hd3m6.js";
|
|
598
627
|
import {
|
|
599
628
|
init_log,
|
|
600
629
|
init_privacyLevel,
|
|
601
630
|
isEssentialTrafficOnly,
|
|
602
631
|
logError
|
|
603
|
-
} from "./chunk-
|
|
632
|
+
} from "./chunk-61ahbn23.js";
|
|
604
633
|
import"./chunk-8tnsngw2.js";
|
|
605
634
|
import {
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
} from "./chunk-
|
|
609
|
-
import"./chunk-
|
|
635
|
+
init_which,
|
|
636
|
+
which
|
|
637
|
+
} from "./chunk-edzkkadh.js";
|
|
638
|
+
import"./chunk-bwg7582d.js";
|
|
639
|
+
import {
|
|
640
|
+
execa,
|
|
641
|
+
init_execa
|
|
642
|
+
} from "./chunk-5z28bqne.js";
|
|
643
|
+
import"./chunk-qajrkk97.js";
|
|
610
644
|
import {
|
|
611
|
-
ConfigParseError,
|
|
612
|
-
TeleportOperationError,
|
|
613
645
|
enableDebugLogging,
|
|
614
|
-
errorMessage,
|
|
615
646
|
getDebugLogPath,
|
|
616
|
-
getErrnoCode,
|
|
617
647
|
getFsImplementation,
|
|
618
648
|
init_cleanupRegistry,
|
|
619
649
|
init_debug,
|
|
620
|
-
init_errors,
|
|
621
650
|
init_fsOperations,
|
|
622
651
|
init_slowOperations,
|
|
623
|
-
isENOENT,
|
|
624
652
|
jsonParse,
|
|
625
653
|
jsonStringify,
|
|
626
654
|
logForDebugging,
|
|
627
655
|
registerCleanup,
|
|
628
656
|
safeResolvePath,
|
|
629
657
|
setHasFormattedOutput,
|
|
630
|
-
toError,
|
|
631
658
|
writeFileSync_DEPRECATED
|
|
632
|
-
} from "./chunk-
|
|
659
|
+
} from "./chunk-hcgkak1j.js";
|
|
633
660
|
import {
|
|
634
661
|
init_process,
|
|
635
662
|
peekForStdinData,
|
|
636
663
|
writeToStderr
|
|
637
664
|
} from "./chunk-fbv4apne.js";
|
|
665
|
+
import {
|
|
666
|
+
ConfigParseError,
|
|
667
|
+
TeleportOperationError,
|
|
668
|
+
errorMessage,
|
|
669
|
+
getErrnoCode,
|
|
670
|
+
init_errors,
|
|
671
|
+
isENOENT,
|
|
672
|
+
toError
|
|
673
|
+
} from "./chunk-z6e5jp2w.js";
|
|
638
674
|
import {
|
|
639
675
|
hasNodeOption,
|
|
640
676
|
init_envUtils,
|
|
@@ -643,7 +679,7 @@ import {
|
|
|
643
679
|
isInProtectedNamespace,
|
|
644
680
|
isRunningOnHomespace,
|
|
645
681
|
parseEnvVars
|
|
646
|
-
} from "./chunk-
|
|
682
|
+
} from "./chunk-jaaxk89e.js";
|
|
647
683
|
import {
|
|
648
684
|
getInitialMainLoopModel,
|
|
649
685
|
getIsNonInteractiveSession,
|
|
@@ -652,6 +688,7 @@ import {
|
|
|
652
688
|
getSdkBetas,
|
|
653
689
|
getSessionCounter,
|
|
654
690
|
getSessionId,
|
|
691
|
+
getUserMsgOptIn,
|
|
655
692
|
init_settingsCache,
|
|
656
693
|
init_state,
|
|
657
694
|
resetSettingsCache,
|
|
@@ -678,20 +715,26 @@ import {
|
|
|
678
715
|
setTeleportedSessionInfo,
|
|
679
716
|
setUserMsgOptIn,
|
|
680
717
|
switchSession
|
|
681
|
-
} from "./chunk-
|
|
718
|
+
} from "./chunk-h4b85amj.js";
|
|
719
|
+
import"./chunk-07069jq1.js";
|
|
682
720
|
import {
|
|
683
721
|
init_memoize,
|
|
684
722
|
memoize_default
|
|
685
|
-
} from "./chunk-
|
|
723
|
+
} from "./chunk-vf612n57.js";
|
|
724
|
+
import"./chunk-d4mdda98.js";
|
|
725
|
+
import"./chunk-7wm5s02e.js";
|
|
686
726
|
import"./chunk-4g3v8y12.js";
|
|
687
727
|
import"./chunk-7739pg2c.js";
|
|
688
728
|
import {
|
|
689
729
|
axios_default,
|
|
690
730
|
init_axios
|
|
691
|
-
} from "./chunk-
|
|
692
|
-
import"./chunk-
|
|
731
|
+
} from "./chunk-nh3cd07f.js";
|
|
732
|
+
import"./chunk-8pn8tvgg.js";
|
|
733
|
+
import"./chunk-netzwgv1.js";
|
|
693
734
|
import {
|
|
694
735
|
__commonJS,
|
|
736
|
+
__esm,
|
|
737
|
+
__export,
|
|
695
738
|
__require,
|
|
696
739
|
__toCommonJS,
|
|
697
740
|
__toESM
|
|
@@ -2748,6 +2791,367 @@ var require_extra_typings = __commonJS((exports, module) => {
|
|
|
2748
2791
|
exports.createArgument = (name, description) => new commander.Argument(name, description);
|
|
2749
2792
|
});
|
|
2750
2793
|
|
|
2794
|
+
// src/skills/bundled/scheduleRemoteAgents.ts
|
|
2795
|
+
var exports_scheduleRemoteAgents = {};
|
|
2796
|
+
__export(exports_scheduleRemoteAgents, {
|
|
2797
|
+
registerScheduleRemoteAgentsSkill: () => registerScheduleRemoteAgentsSkill
|
|
2798
|
+
});
|
|
2799
|
+
function taggedIdToUUID(taggedId) {
|
|
2800
|
+
const prefix = "mcpsrv_";
|
|
2801
|
+
if (!taggedId.startsWith(prefix)) {
|
|
2802
|
+
return null;
|
|
2803
|
+
}
|
|
2804
|
+
const rest = taggedId.slice(prefix.length);
|
|
2805
|
+
const base58Data = rest.slice(2);
|
|
2806
|
+
let n = 0n;
|
|
2807
|
+
for (const c of base58Data) {
|
|
2808
|
+
const idx = BASE58.indexOf(c);
|
|
2809
|
+
if (idx === -1) {
|
|
2810
|
+
return null;
|
|
2811
|
+
}
|
|
2812
|
+
n = n * 58n + BigInt(idx);
|
|
2813
|
+
}
|
|
2814
|
+
const hex = n.toString(16).padStart(32, "0");
|
|
2815
|
+
return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20, 32)}`;
|
|
2816
|
+
}
|
|
2817
|
+
function getConnectedClaudeAIConnectors(mcpClients) {
|
|
2818
|
+
const connectors = [];
|
|
2819
|
+
for (const client of mcpClients) {
|
|
2820
|
+
if (client.type !== "connected") {
|
|
2821
|
+
continue;
|
|
2822
|
+
}
|
|
2823
|
+
if (client.config.type !== "claudeai-proxy") {
|
|
2824
|
+
continue;
|
|
2825
|
+
}
|
|
2826
|
+
const uuid = taggedIdToUUID(client.config.id);
|
|
2827
|
+
if (!uuid) {
|
|
2828
|
+
continue;
|
|
2829
|
+
}
|
|
2830
|
+
connectors.push({
|
|
2831
|
+
uuid,
|
|
2832
|
+
name: client.name,
|
|
2833
|
+
url: client.config.url
|
|
2834
|
+
});
|
|
2835
|
+
}
|
|
2836
|
+
return connectors;
|
|
2837
|
+
}
|
|
2838
|
+
function sanitizeConnectorName(name) {
|
|
2839
|
+
return name.replace(/^claude[.\s-]ai[.\s-]/i, "").replace(/[^a-zA-Z0-9_-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "");
|
|
2840
|
+
}
|
|
2841
|
+
function formatConnectorsInfo(connectors) {
|
|
2842
|
+
if (connectors.length === 0) {
|
|
2843
|
+
return "No connected MCP connectors found. The user may need to connect servers at https://claude.ai/settings/connectors";
|
|
2844
|
+
}
|
|
2845
|
+
const lines = ["Connected connectors (available for triggers):"];
|
|
2846
|
+
for (const c of connectors) {
|
|
2847
|
+
const safeName = sanitizeConnectorName(c.name);
|
|
2848
|
+
lines.push(`- ${c.name} (connector_uuid: ${c.uuid}, name: ${safeName}, url: ${c.url})`);
|
|
2849
|
+
}
|
|
2850
|
+
return lines.join(`
|
|
2851
|
+
`);
|
|
2852
|
+
}
|
|
2853
|
+
function formatSetupNotes(notes) {
|
|
2854
|
+
const items = notes.map((n) => `- ${n}`).join(`
|
|
2855
|
+
`);
|
|
2856
|
+
return `\u26A0 Heads-up:
|
|
2857
|
+
${items}`;
|
|
2858
|
+
}
|
|
2859
|
+
async function getCurrentRepoHttpsUrl() {
|
|
2860
|
+
const remoteUrl = await getRemoteUrl();
|
|
2861
|
+
if (!remoteUrl) {
|
|
2862
|
+
return null;
|
|
2863
|
+
}
|
|
2864
|
+
const parsed = parseGitRemote(remoteUrl);
|
|
2865
|
+
if (!parsed) {
|
|
2866
|
+
return null;
|
|
2867
|
+
}
|
|
2868
|
+
return `https://${parsed.host}/${parsed.owner}/${parsed.name}`;
|
|
2869
|
+
}
|
|
2870
|
+
function buildPrompt3(opts) {
|
|
2871
|
+
const {
|
|
2872
|
+
userTimezone,
|
|
2873
|
+
connectorsInfo,
|
|
2874
|
+
gitRepoUrl,
|
|
2875
|
+
environmentsInfo,
|
|
2876
|
+
createdEnvironment,
|
|
2877
|
+
setupNotes,
|
|
2878
|
+
needsGitHubAccessReminder,
|
|
2879
|
+
userArgs
|
|
2880
|
+
} = opts;
|
|
2881
|
+
const setupNotesSection = userArgs && setupNotes.length > 0 ? `
|
|
2882
|
+
## Setup Notes
|
|
2883
|
+
|
|
2884
|
+
${formatSetupNotes(setupNotes)}
|
|
2885
|
+
` : "";
|
|
2886
|
+
const initialQuestion = setupNotes.length > 0 ? `${formatSetupNotes(setupNotes)}
|
|
2887
|
+
|
|
2888
|
+
${BASE_QUESTION}` : BASE_QUESTION;
|
|
2889
|
+
const firstStep = userArgs ? `The user has already told you what they want (see User Request at the bottom). Skip the initial question and go directly to the matching workflow.` : `Your FIRST action must be a single ${ASK_USER_QUESTION_TOOL_NAME} tool call (no preamble). Use this EXACT string for the \`question\` field \u2014 do not paraphrase or shorten it:
|
|
2890
|
+
|
|
2891
|
+
${jsonStringify(initialQuestion)}
|
|
2892
|
+
|
|
2893
|
+
Set \`header: "Action"\` and offer the four actions (create/list/update/run) as options. After the user picks, follow the matching workflow below.`;
|
|
2894
|
+
return `# Schedule Remote Agents
|
|
2895
|
+
|
|
2896
|
+
You are helping the user schedule, update, list, or run **remote** Claude Code agents. These are NOT local cron jobs \u2014 each trigger spawns a fully isolated remote session (CCR) in Anthropic's cloud infrastructure on a cron schedule. The agent runs in a sandboxed environment with its own git checkout, tools, and optional MCP connections.
|
|
2897
|
+
|
|
2898
|
+
## First Step
|
|
2899
|
+
|
|
2900
|
+
${firstStep}
|
|
2901
|
+
${setupNotesSection}
|
|
2902
|
+
|
|
2903
|
+
## What You Can Do
|
|
2904
|
+
|
|
2905
|
+
Use the \`${REMOTE_TRIGGER_TOOL_NAME}\` tool (load it first with \`ToolSearch select:${REMOTE_TRIGGER_TOOL_NAME}\`; auth is handled in-process \u2014 do not use curl):
|
|
2906
|
+
|
|
2907
|
+
- \`{action: "list"}\` \u2014 list all triggers
|
|
2908
|
+
- \`{action: "get", trigger_id: "..."}\` \u2014 fetch one trigger
|
|
2909
|
+
- \`{action: "create", body: {...}}\` \u2014 create a trigger
|
|
2910
|
+
- \`{action: "update", trigger_id: "...", body: {...}}\` \u2014 partial update
|
|
2911
|
+
- \`{action: "run", trigger_id: "..."}\` \u2014 run a trigger now
|
|
2912
|
+
|
|
2913
|
+
You CANNOT delete triggers. If the user asks to delete, direct them to: https://claude.ai/code/scheduled
|
|
2914
|
+
|
|
2915
|
+
## Create body shape
|
|
2916
|
+
|
|
2917
|
+
\`\`\`json
|
|
2918
|
+
{
|
|
2919
|
+
"name": "AGENT_NAME",
|
|
2920
|
+
"cron_expression": "CRON_EXPR",
|
|
2921
|
+
"enabled": true,
|
|
2922
|
+
"job_config": {
|
|
2923
|
+
"ccr": {
|
|
2924
|
+
"environment_id": "ENVIRONMENT_ID",
|
|
2925
|
+
"session_context": {
|
|
2926
|
+
"model": "claude-sonnet-4-6",
|
|
2927
|
+
"sources": [
|
|
2928
|
+
{"git_repository": {"url": "${gitRepoUrl || "https://github.com/ORG/REPO"}"}}
|
|
2929
|
+
],
|
|
2930
|
+
"allowed_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep"]
|
|
2931
|
+
},
|
|
2932
|
+
"events": [
|
|
2933
|
+
{"data": {
|
|
2934
|
+
"uuid": "<lowercase v4 uuid>",
|
|
2935
|
+
"session_id": "",
|
|
2936
|
+
"type": "user",
|
|
2937
|
+
"parent_tool_use_id": null,
|
|
2938
|
+
"message": {"content": "PROMPT_HERE", "role": "user"}
|
|
2939
|
+
}}
|
|
2940
|
+
]
|
|
2941
|
+
}
|
|
2942
|
+
}
|
|
2943
|
+
}
|
|
2944
|
+
\`\`\`
|
|
2945
|
+
|
|
2946
|
+
Generate a fresh lowercase UUID for \`events[].data.uuid\` yourself.
|
|
2947
|
+
|
|
2948
|
+
## Available MCP Connectors
|
|
2949
|
+
|
|
2950
|
+
These are the user's currently connected claude.ai MCP connectors:
|
|
2951
|
+
|
|
2952
|
+
${connectorsInfo}
|
|
2953
|
+
|
|
2954
|
+
When attaching connectors to a trigger, use the \`connector_uuid\` and \`name\` shown above (the name is already sanitized to only contain letters, numbers, hyphens, and underscores), and the connector's URL. The \`name\` field in \`mcp_connections\` must only contain \`[a-zA-Z0-9_-]\` \u2014 dots and spaces are NOT allowed.
|
|
2955
|
+
|
|
2956
|
+
**Important:** Infer what services the agent needs from the user's description. For example, if they say "check Datadog and Slack me errors," the agent needs both Datadog and Slack connectors. Cross-reference against the list above and warn if any required service isn't connected. If a needed connector is missing, direct the user to https://claude.ai/settings/connectors to connect it first.
|
|
2957
|
+
|
|
2958
|
+
## Environments
|
|
2959
|
+
|
|
2960
|
+
Every trigger requires an \`environment_id\` in the job config. This determines where the remote agent runs. Ask the user which environment to use.
|
|
2961
|
+
|
|
2962
|
+
${environmentsInfo}
|
|
2963
|
+
|
|
2964
|
+
Use the \`id\` value as the \`environment_id\` in \`job_config.ccr.environment_id\`.
|
|
2965
|
+
${createdEnvironment ? `
|
|
2966
|
+
**Note:** A new environment \`${createdEnvironment.name}\` (id: \`${createdEnvironment.environment_id}\`) was just created for the user because they had none. Use this id for \`job_config.ccr.environment_id\` and mention the creation when you confirm the trigger config.
|
|
2967
|
+
` : ""}
|
|
2968
|
+
|
|
2969
|
+
## API Field Reference
|
|
2970
|
+
|
|
2971
|
+
### Create Trigger \u2014 Required Fields
|
|
2972
|
+
- \`name\` (string) \u2014 A descriptive name
|
|
2973
|
+
- \`cron_expression\` (string) \u2014 5-field cron. **Minimum interval is 1 hour.**
|
|
2974
|
+
- \`job_config\` (object) \u2014 Session configuration (see structure above)
|
|
2975
|
+
|
|
2976
|
+
### Create Trigger \u2014 Optional Fields
|
|
2977
|
+
- \`enabled\` (boolean, default: true)
|
|
2978
|
+
- \`mcp_connections\` (array) \u2014 MCP servers to attach:
|
|
2979
|
+
\`\`\`json
|
|
2980
|
+
[{"connector_uuid": "uuid", "name": "server-name", "url": "https://..."}]
|
|
2981
|
+
\`\`\`
|
|
2982
|
+
|
|
2983
|
+
### Update Trigger \u2014 Optional Fields
|
|
2984
|
+
All fields optional (partial update):
|
|
2985
|
+
- \`name\`, \`cron_expression\`, \`enabled\`, \`job_config\`
|
|
2986
|
+
- \`mcp_connections\` \u2014 Replace MCP connections
|
|
2987
|
+
- \`clear_mcp_connections\` (boolean) \u2014 Remove all MCP connections
|
|
2988
|
+
|
|
2989
|
+
### Cron Expression Examples
|
|
2990
|
+
|
|
2991
|
+
The user's local timezone is **${userTimezone}**. Cron expressions are always in UTC. When the user says a local time, convert it to UTC for the cron expression but confirm with them: "9am ${userTimezone} = Xam UTC, so the cron would be \`0 X * * 1-5\`."
|
|
2992
|
+
|
|
2993
|
+
- \`0 9 * * 1-5\` \u2014 Every weekday at 9am **UTC**
|
|
2994
|
+
- \`0 */2 * * *\` \u2014 Every 2 hours
|
|
2995
|
+
- \`0 0 * * *\` \u2014 Daily at midnight **UTC**
|
|
2996
|
+
- \`30 14 * * 1\` \u2014 Every Monday at 2:30pm **UTC**
|
|
2997
|
+
- \`0 8 1 * *\` \u2014 First of every month at 8am **UTC**
|
|
2998
|
+
|
|
2999
|
+
Minimum interval is 1 hour. \`*/30 * * * *\` will be rejected.
|
|
3000
|
+
|
|
3001
|
+
## Workflow
|
|
3002
|
+
|
|
3003
|
+
### CREATE a new trigger:
|
|
3004
|
+
|
|
3005
|
+
1. **Understand the goal** \u2014 Ask what they want the remote agent to do. What repo(s)? What task? Remind them that the agent runs remotely \u2014 it won't have access to their local machine, local files, or local environment variables.
|
|
3006
|
+
2. **Craft the prompt** \u2014 Help them write an effective agent prompt. Good prompts are:
|
|
3007
|
+
- Specific about what to do and what success looks like
|
|
3008
|
+
- Clear about which files/areas to focus on
|
|
3009
|
+
- Explicit about what actions to take (open PRs, commit, just analyze, etc.)
|
|
3010
|
+
3. **Set the schedule** \u2014 Ask when and how often. The user's timezone is ${userTimezone}. When they say a time (e.g., "every morning at 9am"), assume they mean their local time and convert to UTC for the cron expression. Always confirm the conversion: "9am ${userTimezone} = Xam UTC."
|
|
3011
|
+
4. **Choose the model** \u2014 Default to \`claude-sonnet-4-6\`. Tell the user which model you're defaulting to and ask if they want a different one.
|
|
3012
|
+
5. **Validate connections** \u2014 Infer what services the agent will need from the user's description. For example, if they say "check Datadog and Slack me errors," the agent needs both Datadog and Slack MCP connectors. Cross-reference with the connectors list above. If any are missing, warn the user and link them to https://claude.ai/settings/connectors to connect first.${gitRepoUrl ? ` The default git repo is already set to \`${gitRepoUrl}\`. Ask the user if this is the right repo or if they need a different one.` : " Ask which git repos the remote agent needs cloned into its environment."}
|
|
3013
|
+
6. **Review and confirm** \u2014 Show the full configuration before creating. Let them adjust.
|
|
3014
|
+
7. **Create it** \u2014 Call \`${REMOTE_TRIGGER_TOOL_NAME}\` with \`action: "create"\` and show the result. The response includes the trigger ID. Always output a link at the end: \`https://claude.ai/code/scheduled/{TRIGGER_ID}\`
|
|
3015
|
+
|
|
3016
|
+
### UPDATE a trigger:
|
|
3017
|
+
|
|
3018
|
+
1. List triggers first so they can pick one
|
|
3019
|
+
2. Ask what they want to change
|
|
3020
|
+
3. Show current vs proposed value
|
|
3021
|
+
4. Confirm and update
|
|
3022
|
+
|
|
3023
|
+
### LIST triggers:
|
|
3024
|
+
|
|
3025
|
+
1. Fetch and display in a readable format
|
|
3026
|
+
2. Show: name, schedule (human-readable), enabled/disabled, next run, repo(s)
|
|
3027
|
+
|
|
3028
|
+
### RUN NOW:
|
|
3029
|
+
|
|
3030
|
+
1. List triggers if they haven't specified which one
|
|
3031
|
+
2. Confirm which trigger
|
|
3032
|
+
3. Execute and confirm
|
|
3033
|
+
|
|
3034
|
+
## Important Notes
|
|
3035
|
+
|
|
3036
|
+
- These are REMOTE agents \u2014 they run in Anthropic's cloud, not on the user's machine. They cannot access local files, local services, or local environment variables.
|
|
3037
|
+
- Always convert cron to human-readable when displaying
|
|
3038
|
+
- Default to \`enabled: true\` unless user says otherwise
|
|
3039
|
+
- Accept GitHub URLs in any format (https://github.com/org/repo, org/repo, etc.) and normalize to the full HTTPS URL (without .git suffix)
|
|
3040
|
+
- The prompt is the most important part \u2014 spend time getting it right. The remote agent starts with zero context, so the prompt must be self-contained.
|
|
3041
|
+
- To delete a trigger, direct users to https://claude.ai/code/scheduled
|
|
3042
|
+
${needsGitHubAccessReminder ? `- If the user's request seems to require GitHub repo access (e.g. cloning a repo, opening PRs, reading code), remind them that ${getFeatureValue_CACHED_MAY_BE_STALE("tengu_cobalt_lantern", false) ? "they should run /web-setup to connect their GitHub account (or install the Claude GitHub App on the repo as an alternative) \u2014 otherwise the remote agent won't be able to access it" : "they need the Claude GitHub App installed on the repo \u2014 otherwise the remote agent won't be able to access it"}.` : ""}
|
|
3043
|
+
${userArgs ? `
|
|
3044
|
+
## User Request
|
|
3045
|
+
|
|
3046
|
+
The user said: "${userArgs}"
|
|
3047
|
+
|
|
3048
|
+
Start by understanding their intent and working through the appropriate workflow above.` : ""}`;
|
|
3049
|
+
}
|
|
3050
|
+
function registerScheduleRemoteAgentsSkill() {
|
|
3051
|
+
registerBundledSkill({
|
|
3052
|
+
name: "schedule",
|
|
3053
|
+
description: "Create, update, list, or run scheduled remote agents (triggers) that execute on a cron schedule.",
|
|
3054
|
+
whenToUse: "When the user wants to schedule a recurring remote agent, set up automated tasks, create a cron job for Claude Code, or manage their scheduled agents/triggers.",
|
|
3055
|
+
userInvocable: true,
|
|
3056
|
+
isEnabled: () => getFeatureValue_CACHED_MAY_BE_STALE("tengu_surreal_dali", false) && isPolicyAllowed("allow_remote_sessions"),
|
|
3057
|
+
allowedTools: [REMOTE_TRIGGER_TOOL_NAME, ASK_USER_QUESTION_TOOL_NAME],
|
|
3058
|
+
async getPromptForCommand(args, context) {
|
|
3059
|
+
if (!getClaudeAIOAuthTokens()?.accessToken) {
|
|
3060
|
+
return [
|
|
3061
|
+
{
|
|
3062
|
+
type: "text",
|
|
3063
|
+
text: "You need to authenticate with a claude.ai account first. API accounts are not supported. Run /login, then try /schedule again."
|
|
3064
|
+
}
|
|
3065
|
+
];
|
|
3066
|
+
}
|
|
3067
|
+
let environments;
|
|
3068
|
+
try {
|
|
3069
|
+
environments = await fetchEnvironments();
|
|
3070
|
+
} catch (err) {
|
|
3071
|
+
logForDebugging(`[schedule] Failed to fetch environments: ${err}`, {
|
|
3072
|
+
level: "warn"
|
|
3073
|
+
});
|
|
3074
|
+
return [
|
|
3075
|
+
{
|
|
3076
|
+
type: "text",
|
|
3077
|
+
text: "We're having trouble connecting with your remote claude.ai account to set up a scheduled task. Please try /schedule again in a few minutes."
|
|
3078
|
+
}
|
|
3079
|
+
];
|
|
3080
|
+
}
|
|
3081
|
+
let createdEnvironment = null;
|
|
3082
|
+
if (environments.length === 0) {
|
|
3083
|
+
try {
|
|
3084
|
+
createdEnvironment = await createDefaultCloudEnvironment("claude-code-default");
|
|
3085
|
+
environments = [createdEnvironment];
|
|
3086
|
+
} catch (err) {
|
|
3087
|
+
logForDebugging(`[schedule] Failed to create environment: ${err}`, {
|
|
3088
|
+
level: "warn"
|
|
3089
|
+
});
|
|
3090
|
+
return [
|
|
3091
|
+
{
|
|
3092
|
+
type: "text",
|
|
3093
|
+
text: "No remote environments found, and we could not create one automatically. Visit https://claude.ai/code to set one up, then run /schedule again."
|
|
3094
|
+
}
|
|
3095
|
+
];
|
|
3096
|
+
}
|
|
3097
|
+
}
|
|
3098
|
+
const setupNotes = [];
|
|
3099
|
+
let needsGitHubAccessReminder = false;
|
|
3100
|
+
const repo = await detectCurrentRepositoryWithHost();
|
|
3101
|
+
if (repo === null) {
|
|
3102
|
+
setupNotes.push(`Not in a git repo \u2014 you'll need to specify a repo URL manually (or skip repos entirely).`);
|
|
3103
|
+
} else if (repo.host === "github.com") {
|
|
3104
|
+
const { hasAccess } = await checkRepoForRemoteAccess(repo.owner, repo.name);
|
|
3105
|
+
if (!hasAccess) {
|
|
3106
|
+
needsGitHubAccessReminder = true;
|
|
3107
|
+
const webSetupEnabled = getFeatureValue_CACHED_MAY_BE_STALE("tengu_cobalt_lantern", false);
|
|
3108
|
+
const msg = webSetupEnabled ? `GitHub not connected for ${repo.owner}/${repo.name} \u2014 run /web-setup to sync your GitHub credentials, or install the Claude GitHub App at https://claude.ai/code/onboarding?magic=github-app-setup.` : `Claude GitHub App not installed on ${repo.owner}/${repo.name} \u2014 install at https://claude.ai/code/onboarding?magic=github-app-setup if your trigger needs this repo.`;
|
|
3109
|
+
setupNotes.push(msg);
|
|
3110
|
+
}
|
|
3111
|
+
}
|
|
3112
|
+
const connectors = getConnectedClaudeAIConnectors(context.options.mcpClients);
|
|
3113
|
+
if (connectors.length === 0) {
|
|
3114
|
+
setupNotes.push(`No MCP connectors \u2014 connect at https://claude.ai/settings/connectors if needed.`);
|
|
3115
|
+
}
|
|
3116
|
+
const userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
3117
|
+
const connectorsInfo = formatConnectorsInfo(connectors);
|
|
3118
|
+
const gitRepoUrl = await getCurrentRepoHttpsUrl();
|
|
3119
|
+
const lines = ["Available environments:"];
|
|
3120
|
+
for (const env of environments) {
|
|
3121
|
+
lines.push(`- ${env.name} (id: ${env.environment_id}, kind: ${env.kind})`);
|
|
3122
|
+
}
|
|
3123
|
+
const environmentsInfo = lines.join(`
|
|
3124
|
+
`);
|
|
3125
|
+
const prompt = buildPrompt3({
|
|
3126
|
+
userTimezone,
|
|
3127
|
+
connectorsInfo,
|
|
3128
|
+
gitRepoUrl,
|
|
3129
|
+
environmentsInfo,
|
|
3130
|
+
createdEnvironment,
|
|
3131
|
+
setupNotes,
|
|
3132
|
+
needsGitHubAccessReminder,
|
|
3133
|
+
userArgs: args
|
|
3134
|
+
});
|
|
3135
|
+
return [{ type: "text", text: prompt }];
|
|
3136
|
+
}
|
|
3137
|
+
});
|
|
3138
|
+
}
|
|
3139
|
+
var BASE58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz", BASE_QUESTION = "What would you like to do with scheduled remote agents?";
|
|
3140
|
+
var init_scheduleRemoteAgents = __esm(() => {
|
|
3141
|
+
init_growthbook();
|
|
3142
|
+
init_policyLimits();
|
|
3143
|
+
init_prompt3();
|
|
3144
|
+
init_prompt5();
|
|
3145
|
+
init_auth();
|
|
3146
|
+
init_preconditions();
|
|
3147
|
+
init_debug();
|
|
3148
|
+
init_detectRepository();
|
|
3149
|
+
init_git();
|
|
3150
|
+
init_slowOperations();
|
|
3151
|
+
init_environments();
|
|
3152
|
+
init_bundledSkills();
|
|
3153
|
+
});
|
|
3154
|
+
|
|
2751
3155
|
// src/main.tsx
|
|
2752
3156
|
init_startupProfiler();
|
|
2753
3157
|
init_rawRead();
|
|
@@ -2856,12 +3260,14 @@ init_envDynamic();
|
|
|
2856
3260
|
init_envUtils();
|
|
2857
3261
|
init_errors();
|
|
2858
3262
|
init_gracefulShutdown();
|
|
3263
|
+
init_managedEnv();
|
|
2859
3264
|
init_mtls();
|
|
2860
3265
|
init_filesystem();
|
|
2861
3266
|
init_proxy();
|
|
2862
3267
|
init_betaSessionTracing();
|
|
2863
3268
|
init_telemetryAttributes();
|
|
2864
3269
|
init_windowsPaths();
|
|
3270
|
+
init_sentry();
|
|
2865
3271
|
var telemetryInitialized = false;
|
|
2866
3272
|
var init = memoize_default(async () => {
|
|
2867
3273
|
const initStartTime = Date.now();
|
|
@@ -2884,8 +3290,8 @@ var init = memoize_default(async () => {
|
|
|
2884
3290
|
setupGracefulShutdown();
|
|
2885
3291
|
profileCheckpoint("init_after_graceful_shutdown");
|
|
2886
3292
|
Promise.all([
|
|
2887
|
-
import("./chunk-
|
|
2888
|
-
import("./chunk-
|
|
3293
|
+
import("./chunk-gfx3cwrk.js"),
|
|
3294
|
+
import("./chunk-0rn4v8sg.js")
|
|
2889
3295
|
]).then(([fp, gb]) => {
|
|
2890
3296
|
fp.initialize1PEventLogging();
|
|
2891
3297
|
gb.onGrowthBookRefresh(() => {
|
|
@@ -2921,11 +3327,12 @@ var init = memoize_default(async () => {
|
|
|
2921
3327
|
});
|
|
2922
3328
|
logForDebugging("[init] configureGlobalAgents complete");
|
|
2923
3329
|
profileCheckpoint("init_network_configured");
|
|
3330
|
+
initSentry();
|
|
2924
3331
|
preconnectAnthropicApi();
|
|
2925
3332
|
if (isEnvTruthy(process.env.CLAUDE_CODE_REMOTE)) {
|
|
2926
3333
|
try {
|
|
2927
|
-
const { initUpstreamProxy, getUpstreamProxyEnv } = await import("./chunk-
|
|
2928
|
-
const { registerUpstreamProxyEnvFn } = await import("./chunk-
|
|
3334
|
+
const { initUpstreamProxy, getUpstreamProxyEnv } = await import("./chunk-68pfxvxt.js");
|
|
3335
|
+
const { registerUpstreamProxyEnvFn } = await import("./chunk-6p4cyhb3.js");
|
|
2929
3336
|
registerUpstreamProxyEnvFn(getUpstreamProxyEnv);
|
|
2930
3337
|
await initUpstreamProxy();
|
|
2931
3338
|
} catch (err) {
|
|
@@ -2935,7 +3342,7 @@ var init = memoize_default(async () => {
|
|
|
2935
3342
|
setShellIfWindows();
|
|
2936
3343
|
registerCleanup(shutdownLspServerManager);
|
|
2937
3344
|
registerCleanup(async () => {
|
|
2938
|
-
const { cleanupSessionTeams } = await import("./chunk-
|
|
3345
|
+
const { cleanupSessionTeams } = await import("./chunk-r4dnnggx.js");
|
|
2939
3346
|
await cleanupSessionTeams();
|
|
2940
3347
|
});
|
|
2941
3348
|
if (isScratchpadEnabled()) {
|
|
@@ -2957,7 +3364,7 @@ var init = memoize_default(async () => {
|
|
|
2957
3364
|
gracefulShutdownSync(1);
|
|
2958
3365
|
return;
|
|
2959
3366
|
}
|
|
2960
|
-
return import("./chunk-
|
|
3367
|
+
return import("./chunk-zj4fqmnc.js").then((m) => m.showInvalidConfigDialog({ error }));
|
|
2961
3368
|
} else {
|
|
2962
3369
|
throw error;
|
|
2963
3370
|
}
|
|
@@ -2997,7 +3404,7 @@ async function doInitializeTelemetry() {
|
|
|
2997
3404
|
}
|
|
2998
3405
|
}
|
|
2999
3406
|
async function setMeterState() {
|
|
3000
|
-
const { initializeTelemetry } = await import("./chunk-
|
|
3407
|
+
const { initializeTelemetry } = await import("./chunk-gk2d1x2a.js");
|
|
3001
3408
|
const meter = await initializeTelemetry();
|
|
3002
3409
|
if (meter) {
|
|
3003
3410
|
const createAttributedCounter = (name, options) => {
|
|
@@ -3024,12 +3431,8 @@ init_history();
|
|
|
3024
3431
|
// src/replLauncher.tsx
|
|
3025
3432
|
var jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
|
|
3026
3433
|
async function launchRepl(root, appProps, replProps, renderAndRun) {
|
|
3027
|
-
const {
|
|
3028
|
-
|
|
3029
|
-
} = await import("./chunk-6tm5941a.js");
|
|
3030
|
-
const {
|
|
3031
|
-
REPL
|
|
3032
|
-
} = await import("./chunk-tf4dw2e2.js");
|
|
3434
|
+
const { App } = await import("./chunk-b9ndqcdv.js");
|
|
3435
|
+
const { REPL } = await import("./chunk-a2evk7n1.js");
|
|
3033
3436
|
await renderAndRun(root, /* @__PURE__ */ jsx_dev_runtime.jsxDEV(App, {
|
|
3034
3437
|
...appProps,
|
|
3035
3438
|
children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(REPL, {
|
|
@@ -3155,9 +3558,9 @@ init_agentSwarmsEnabled();
|
|
|
3155
3558
|
init_array();
|
|
3156
3559
|
init_auth();
|
|
3157
3560
|
init_config2();
|
|
3158
|
-
init_earlyInput();
|
|
3159
3561
|
init_effort();
|
|
3160
3562
|
init_fastMode();
|
|
3563
|
+
init_managedEnv();
|
|
3161
3564
|
init_messages();
|
|
3162
3565
|
init_platform();
|
|
3163
3566
|
init_sessionIngressAuth();
|
|
@@ -3230,7 +3633,7 @@ init_gracefulShutdown();
|
|
|
3230
3633
|
init_state();
|
|
3231
3634
|
import { appendFileSync } from "fs";
|
|
3232
3635
|
init_context2();
|
|
3233
|
-
|
|
3636
|
+
init_src();
|
|
3234
3637
|
init_KeybindingProviderSetup();
|
|
3235
3638
|
init_growthbook();
|
|
3236
3639
|
init_grove();
|
|
@@ -3239,324 +3642,189 @@ init_grove();
|
|
|
3239
3642
|
init_analytics();
|
|
3240
3643
|
init_settings2();
|
|
3241
3644
|
init_CustomSelect();
|
|
3242
|
-
|
|
3243
|
-
var import_compiler_runtime2 = __toESM(require_compiler_runtime(), 1);
|
|
3645
|
+
init_src();
|
|
3244
3646
|
|
|
3245
3647
|
// src/components/MCPServerDialogCopy.tsx
|
|
3246
|
-
|
|
3247
|
-
var import_compiler_runtime = __toESM(require_compiler_runtime(), 1);
|
|
3648
|
+
init_src();
|
|
3248
3649
|
var jsx_dev_runtime2 = __toESM(require_jsx_dev_runtime(), 1);
|
|
3249
3650
|
function MCPServerDialogCopy() {
|
|
3250
|
-
|
|
3251
|
-
|
|
3252
|
-
|
|
3253
|
-
|
|
3254
|
-
|
|
3255
|
-
"
|
|
3256
|
-
" "
|
|
3257
|
-
|
|
3258
|
-
|
|
3259
|
-
|
|
3260
|
-
|
|
3261
|
-
"."
|
|
3262
|
-
]
|
|
3263
|
-
}, undefined, true, undefined, this);
|
|
3264
|
-
$[0] = t0;
|
|
3265
|
-
} else {
|
|
3266
|
-
t0 = $[0];
|
|
3267
|
-
}
|
|
3268
|
-
return t0;
|
|
3651
|
+
return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
|
|
3652
|
+
children: [
|
|
3653
|
+
"MCP servers may execute code or access system resources. All tool calls require approval. Learn more in the",
|
|
3654
|
+
" ",
|
|
3655
|
+
/* @__PURE__ */ jsx_dev_runtime2.jsxDEV(Link, {
|
|
3656
|
+
url: "https://code.claude.com/docs/en/mcp",
|
|
3657
|
+
children: "MCP documentation"
|
|
3658
|
+
}, undefined, false, undefined, this),
|
|
3659
|
+
"."
|
|
3660
|
+
]
|
|
3661
|
+
}, undefined, true, undefined, this);
|
|
3269
3662
|
}
|
|
3270
3663
|
|
|
3271
3664
|
// src/components/MCPServerApprovalDialog.tsx
|
|
3272
3665
|
var jsx_dev_runtime3 = __toESM(require_jsx_dev_runtime(), 1);
|
|
3273
|
-
function MCPServerApprovalDialog(
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
const enabledServers = currentSettings_0.enabledMcpjsonServers || [];
|
|
3291
|
-
if (!enabledServers.includes(serverName)) {
|
|
3292
|
-
updateSettingsForSource("localSettings", {
|
|
3293
|
-
enabledMcpjsonServers: [...enabledServers, serverName]
|
|
3294
|
-
});
|
|
3295
|
-
}
|
|
3296
|
-
if (value === "yes_all") {
|
|
3297
|
-
updateSettingsForSource("localSettings", {
|
|
3298
|
-
enableAllProjectMcpServers: true
|
|
3299
|
-
});
|
|
3300
|
-
}
|
|
3301
|
-
onDone();
|
|
3302
|
-
break bb2;
|
|
3303
|
-
}
|
|
3304
|
-
case "no": {
|
|
3305
|
-
const currentSettings = getSettings_DEPRECATED() || {};
|
|
3306
|
-
const disabledServers = currentSettings.disabledMcpjsonServers || [];
|
|
3307
|
-
if (!disabledServers.includes(serverName)) {
|
|
3308
|
-
updateSettingsForSource("localSettings", {
|
|
3309
|
-
disabledMcpjsonServers: [...disabledServers, serverName]
|
|
3310
|
-
});
|
|
3311
|
-
}
|
|
3312
|
-
onDone();
|
|
3313
|
-
}
|
|
3666
|
+
function MCPServerApprovalDialog({
|
|
3667
|
+
serverName,
|
|
3668
|
+
onDone
|
|
3669
|
+
}) {
|
|
3670
|
+
function onChange(value) {
|
|
3671
|
+
logEvent("tengu_mcp_dialog_choice", {
|
|
3672
|
+
choice: value
|
|
3673
|
+
});
|
|
3674
|
+
switch (value) {
|
|
3675
|
+
case "yes":
|
|
3676
|
+
case "yes_all": {
|
|
3677
|
+
const currentSettings = getSettings_DEPRECATED() || {};
|
|
3678
|
+
const enabledServers = currentSettings.enabledMcpjsonServers || [];
|
|
3679
|
+
if (!enabledServers.includes(serverName)) {
|
|
3680
|
+
updateSettingsForSource("localSettings", {
|
|
3681
|
+
enabledMcpjsonServers: [...enabledServers, serverName]
|
|
3682
|
+
});
|
|
3314
3683
|
}
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3327
|
-
|
|
3328
|
-
|
|
3329
|
-
|
|
3330
|
-
|
|
3331
|
-
|
|
3332
|
-
|
|
3333
|
-
|
|
3334
|
-
|
|
3335
|
-
$[5] = t4;
|
|
3336
|
-
} else {
|
|
3337
|
-
t4 = $[5];
|
|
3338
|
-
}
|
|
3339
|
-
let t5;
|
|
3340
|
-
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
|
|
3341
|
-
t5 = [{
|
|
3342
|
-
label: "Use this and all future MCP servers in this project",
|
|
3343
|
-
value: "yes_all"
|
|
3344
|
-
}, {
|
|
3345
|
-
label: "Use this MCP server",
|
|
3346
|
-
value: "yes"
|
|
3347
|
-
}, {
|
|
3348
|
-
label: "Continue without using this MCP server",
|
|
3349
|
-
value: "no"
|
|
3350
|
-
}];
|
|
3351
|
-
$[6] = t5;
|
|
3352
|
-
} else {
|
|
3353
|
-
t5 = $[6];
|
|
3354
|
-
}
|
|
3355
|
-
let t6;
|
|
3356
|
-
if ($[7] !== onChange) {
|
|
3357
|
-
t6 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Select, {
|
|
3358
|
-
options: t5,
|
|
3359
|
-
onChange: (value_0) => onChange(value_0),
|
|
3360
|
-
onCancel: () => onChange("no")
|
|
3361
|
-
}, undefined, false, undefined, this);
|
|
3362
|
-
$[7] = onChange;
|
|
3363
|
-
$[8] = t6;
|
|
3364
|
-
} else {
|
|
3365
|
-
t6 = $[8];
|
|
3366
|
-
}
|
|
3367
|
-
let t7;
|
|
3368
|
-
if ($[9] !== t2 || $[10] !== t3 || $[11] !== t6) {
|
|
3369
|
-
t7 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Dialog, {
|
|
3370
|
-
title: t2,
|
|
3371
|
-
color: "warning",
|
|
3372
|
-
onCancel: t3,
|
|
3373
|
-
children: [
|
|
3374
|
-
t4,
|
|
3375
|
-
t6
|
|
3376
|
-
]
|
|
3377
|
-
}, undefined, true, undefined, this);
|
|
3378
|
-
$[9] = t2;
|
|
3379
|
-
$[10] = t3;
|
|
3380
|
-
$[11] = t6;
|
|
3381
|
-
$[12] = t7;
|
|
3382
|
-
} else {
|
|
3383
|
-
t7 = $[12];
|
|
3684
|
+
if (value === "yes_all") {
|
|
3685
|
+
updateSettingsForSource("localSettings", {
|
|
3686
|
+
enableAllProjectMcpServers: true
|
|
3687
|
+
});
|
|
3688
|
+
}
|
|
3689
|
+
onDone();
|
|
3690
|
+
break;
|
|
3691
|
+
}
|
|
3692
|
+
case "no": {
|
|
3693
|
+
const currentSettings = getSettings_DEPRECATED() || {};
|
|
3694
|
+
const disabledServers = currentSettings.disabledMcpjsonServers || [];
|
|
3695
|
+
if (!disabledServers.includes(serverName)) {
|
|
3696
|
+
updateSettingsForSource("localSettings", {
|
|
3697
|
+
disabledMcpjsonServers: [...disabledServers, serverName]
|
|
3698
|
+
});
|
|
3699
|
+
}
|
|
3700
|
+
onDone();
|
|
3701
|
+
break;
|
|
3702
|
+
}
|
|
3703
|
+
}
|
|
3384
3704
|
}
|
|
3385
|
-
return
|
|
3705
|
+
return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Dialog, {
|
|
3706
|
+
title: `New MCP server found in .mcp.json: ${serverName}`,
|
|
3707
|
+
color: "warning",
|
|
3708
|
+
onCancel: () => onChange("no"),
|
|
3709
|
+
children: [
|
|
3710
|
+
/* @__PURE__ */ jsx_dev_runtime3.jsxDEV(MCPServerDialogCopy, {}, undefined, false, undefined, this),
|
|
3711
|
+
/* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Select, {
|
|
3712
|
+
options: [
|
|
3713
|
+
{
|
|
3714
|
+
label: `Use this and all future MCP servers in this project`,
|
|
3715
|
+
value: "yes_all"
|
|
3716
|
+
},
|
|
3717
|
+
{ label: `Use this MCP server`, value: "yes" },
|
|
3718
|
+
{ label: `Continue without using this MCP server`, value: "no" }
|
|
3719
|
+
],
|
|
3720
|
+
onChange: (value) => onChange(value),
|
|
3721
|
+
onCancel: () => onChange("no")
|
|
3722
|
+
}, undefined, false, undefined, this)
|
|
3723
|
+
]
|
|
3724
|
+
}, undefined, true, undefined, this);
|
|
3386
3725
|
}
|
|
3387
3726
|
|
|
3388
3727
|
// src/components/MCPServerMultiselectDialog.tsx
|
|
3389
3728
|
init_partition();
|
|
3390
3729
|
init_analytics();
|
|
3391
|
-
|
|
3730
|
+
init_src();
|
|
3392
3731
|
init_settings2();
|
|
3393
3732
|
init_ConfigurableShortcutHint();
|
|
3394
3733
|
init_SelectMulti();
|
|
3395
|
-
|
|
3396
|
-
|
|
3397
|
-
init_KeyboardShortcutHint();
|
|
3398
|
-
var import_compiler_runtime3 = __toESM(require_compiler_runtime(), 1);
|
|
3734
|
+
init_src();
|
|
3735
|
+
var import_react = __toESM(require_react(), 1);
|
|
3399
3736
|
var jsx_dev_runtime4 = __toESM(require_jsx_dev_runtime(), 1);
|
|
3400
|
-
function MCPServerMultiselectDialog(
|
|
3401
|
-
|
|
3402
|
-
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3406
|
-
|
|
3407
|
-
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
|
|
3737
|
+
function MCPServerMultiselectDialog({
|
|
3738
|
+
serverNames,
|
|
3739
|
+
onDone
|
|
3740
|
+
}) {
|
|
3741
|
+
function onSubmit(selectedServers) {
|
|
3742
|
+
const currentSettings = getSettings_DEPRECATED() || {};
|
|
3743
|
+
const enabledServers = currentSettings.enabledMcpjsonServers || [];
|
|
3744
|
+
const disabledServers = currentSettings.disabledMcpjsonServers || [];
|
|
3745
|
+
const [approvedServers, rejectedServers] = partition_default(serverNames, (server) => selectedServers.includes(server));
|
|
3746
|
+
logEvent("tengu_mcp_multidialog_choice", {
|
|
3747
|
+
approved: approvedServers.length,
|
|
3748
|
+
rejected: rejectedServers.length
|
|
3749
|
+
});
|
|
3750
|
+
if (approvedServers.length > 0) {
|
|
3751
|
+
const newEnabledServers = [
|
|
3752
|
+
...new Set([...enabledServers, ...approvedServers])
|
|
3753
|
+
];
|
|
3754
|
+
updateSettingsForSource("localSettings", {
|
|
3755
|
+
enabledMcpjsonServers: newEnabledServers
|
|
3416
3756
|
});
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
}
|
|
3423
|
-
if (rejectedServers.length > 0) {
|
|
3424
|
-
const newDisabledServers = [...new Set([...disabledServers, ...rejectedServers])];
|
|
3425
|
-
updateSettingsForSource("localSettings", {
|
|
3426
|
-
disabledMcpjsonServers: newDisabledServers
|
|
3427
|
-
});
|
|
3428
|
-
}
|
|
3429
|
-
onDone();
|
|
3430
|
-
};
|
|
3431
|
-
$[0] = onDone;
|
|
3432
|
-
$[1] = serverNames;
|
|
3433
|
-
$[2] = t1;
|
|
3434
|
-
} else {
|
|
3435
|
-
t1 = $[2];
|
|
3436
|
-
}
|
|
3437
|
-
const onSubmit = t1;
|
|
3438
|
-
let t2;
|
|
3439
|
-
if ($[3] !== onDone || $[4] !== serverNames) {
|
|
3440
|
-
t2 = () => {
|
|
3441
|
-
const currentSettings_0 = getSettings_DEPRECATED() || {};
|
|
3442
|
-
const disabledServers_0 = currentSettings_0.disabledMcpjsonServers || [];
|
|
3443
|
-
const newDisabledServers_0 = [...new Set([...disabledServers_0, ...serverNames])];
|
|
3757
|
+
}
|
|
3758
|
+
if (rejectedServers.length > 0) {
|
|
3759
|
+
const newDisabledServers = [
|
|
3760
|
+
...new Set([...disabledServers, ...rejectedServers])
|
|
3761
|
+
];
|
|
3444
3762
|
updateSettingsForSource("localSettings", {
|
|
3445
|
-
disabledMcpjsonServers:
|
|
3763
|
+
disabledMcpjsonServers: newDisabledServers
|
|
3446
3764
|
});
|
|
3447
|
-
|
|
3448
|
-
|
|
3449
|
-
$[3] = onDone;
|
|
3450
|
-
$[4] = serverNames;
|
|
3451
|
-
$[5] = t2;
|
|
3452
|
-
} else {
|
|
3453
|
-
t2 = $[5];
|
|
3454
|
-
}
|
|
3455
|
-
const handleEscRejectAll = t2;
|
|
3456
|
-
const t3 = `${serverNames.length} new MCP servers found in .mcp.json`;
|
|
3457
|
-
let t4;
|
|
3458
|
-
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
|
|
3459
|
-
t4 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPServerDialogCopy, {}, undefined, false, undefined, this);
|
|
3460
|
-
$[6] = t4;
|
|
3461
|
-
} else {
|
|
3462
|
-
t4 = $[6];
|
|
3765
|
+
}
|
|
3766
|
+
onDone();
|
|
3463
3767
|
}
|
|
3464
|
-
|
|
3465
|
-
|
|
3466
|
-
|
|
3467
|
-
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
|
|
3480
|
-
|
|
3481
|
-
|
|
3482
|
-
|
|
3483
|
-
|
|
3484
|
-
|
|
3485
|
-
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3489
|
-
|
|
3490
|
-
|
|
3491
|
-
|
|
3492
|
-
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
|
|
3502
|
-
|
|
3503
|
-
|
|
3504
|
-
|
|
3505
|
-
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
|
|
3510
|
-
|
|
3511
|
-
|
|
3512
|
-
|
|
3513
|
-
|
|
3514
|
-
|
|
3515
|
-
|
|
3516
|
-
|
|
3517
|
-
|
|
3518
|
-
|
|
3519
|
-
|
|
3520
|
-
|
|
3521
|
-
}, undefined, false, undefined, this),
|
|
3522
|
-
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(KeyboardShortcutHint, {
|
|
3523
|
-
shortcut: "Enter",
|
|
3524
|
-
action: "confirm"
|
|
3525
|
-
}, undefined, false, undefined, this),
|
|
3526
|
-
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ConfigurableShortcutHint, {
|
|
3527
|
-
action: "confirm:no",
|
|
3528
|
-
context: "Confirmation",
|
|
3529
|
-
fallback: "Esc",
|
|
3530
|
-
description: "reject all"
|
|
3531
|
-
}, undefined, false, undefined, this)
|
|
3532
|
-
]
|
|
3533
|
-
}, undefined, true, undefined, this)
|
|
3768
|
+
const handleEscRejectAll = import_react.useCallback(() => {
|
|
3769
|
+
const currentSettings = getSettings_DEPRECATED() || {};
|
|
3770
|
+
const disabledServers = currentSettings.disabledMcpjsonServers || [];
|
|
3771
|
+
const newDisabledServers = [
|
|
3772
|
+
...new Set([...disabledServers, ...serverNames])
|
|
3773
|
+
];
|
|
3774
|
+
updateSettingsForSource("localSettings", {
|
|
3775
|
+
disabledMcpjsonServers: newDisabledServers
|
|
3776
|
+
});
|
|
3777
|
+
onDone();
|
|
3778
|
+
}, [serverNames, onDone]);
|
|
3779
|
+
return /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(jsx_dev_runtime4.Fragment, {
|
|
3780
|
+
children: [
|
|
3781
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Dialog, {
|
|
3782
|
+
title: `${serverNames.length} new MCP servers found in .mcp.json`,
|
|
3783
|
+
subtitle: "Select any you wish to enable.",
|
|
3784
|
+
color: "warning",
|
|
3785
|
+
onCancel: handleEscRejectAll,
|
|
3786
|
+
hideInputGuide: true,
|
|
3787
|
+
children: [
|
|
3788
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPServerDialogCopy, {}, undefined, false, undefined, this),
|
|
3789
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SelectMulti, {
|
|
3790
|
+
options: serverNames.map((server) => ({
|
|
3791
|
+
label: server,
|
|
3792
|
+
value: server
|
|
3793
|
+
})),
|
|
3794
|
+
defaultValue: serverNames,
|
|
3795
|
+
onSubmit,
|
|
3796
|
+
onCancel: handleEscRejectAll,
|
|
3797
|
+
hideIndexes: true
|
|
3798
|
+
}, undefined, false, undefined, this)
|
|
3799
|
+
]
|
|
3800
|
+
}, undefined, true, undefined, this),
|
|
3801
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedBox_default, {
|
|
3802
|
+
paddingX: 1,
|
|
3803
|
+
children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
|
|
3804
|
+
dimColor: true,
|
|
3805
|
+
italic: true,
|
|
3806
|
+
children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Byline, {
|
|
3807
|
+
children: [
|
|
3808
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(KeyboardShortcutHint, {
|
|
3809
|
+
shortcut: "Space",
|
|
3810
|
+
action: "select"
|
|
3811
|
+
}, undefined, false, undefined, this),
|
|
3812
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(KeyboardShortcutHint, {
|
|
3813
|
+
shortcut: "Enter",
|
|
3814
|
+
action: "confirm"
|
|
3815
|
+
}, undefined, false, undefined, this),
|
|
3816
|
+
/* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ConfigurableShortcutHint, {
|
|
3817
|
+
action: "confirm:no",
|
|
3818
|
+
context: "Confirmation",
|
|
3819
|
+
fallback: "Esc",
|
|
3820
|
+
description: "reject all"
|
|
3821
|
+
}, undefined, false, undefined, this)
|
|
3822
|
+
]
|
|
3823
|
+
}, undefined, true, undefined, this)
|
|
3824
|
+
}, undefined, false, undefined, this)
|
|
3534
3825
|
}, undefined, false, undefined, this)
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
} else {
|
|
3538
|
-
t8 = $[18];
|
|
3539
|
-
}
|
|
3540
|
-
let t9;
|
|
3541
|
-
if ($[19] !== t7) {
|
|
3542
|
-
t9 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(jsx_dev_runtime4.Fragment, {
|
|
3543
|
-
children: [
|
|
3544
|
-
t7,
|
|
3545
|
-
t8
|
|
3546
|
-
]
|
|
3547
|
-
}, undefined, true, undefined, this);
|
|
3548
|
-
$[19] = t7;
|
|
3549
|
-
$[20] = t9;
|
|
3550
|
-
} else {
|
|
3551
|
-
t9 = $[20];
|
|
3552
|
-
}
|
|
3553
|
-
return t9;
|
|
3554
|
-
}
|
|
3555
|
-
function _temp(server_0) {
|
|
3556
|
-
return {
|
|
3557
|
-
label: server_0,
|
|
3558
|
-
value: server_0
|
|
3559
|
-
};
|
|
3826
|
+
]
|
|
3827
|
+
}, undefined, true, undefined, this);
|
|
3560
3828
|
}
|
|
3561
3829
|
|
|
3562
3830
|
// src/services/mcpServerApproval.tsx
|
|
@@ -3566,9 +3834,7 @@ init_config3();
|
|
|
3566
3834
|
init_utils();
|
|
3567
3835
|
var jsx_dev_runtime5 = __toESM(require_jsx_dev_runtime(), 1);
|
|
3568
3836
|
async function handleMcpjsonServerApprovals(root) {
|
|
3569
|
-
const {
|
|
3570
|
-
servers: projectServers
|
|
3571
|
-
} = getMcpConfigsByScope("project");
|
|
3837
|
+
const { servers: projectServers } = getMcpConfigsByScope("project");
|
|
3572
3838
|
const pendingServers = Object.keys(projectServers).filter((serverName) => getProjectMcpServerStatus(serverName) === "pending");
|
|
3573
3839
|
if (pendingServers.length === 0) {
|
|
3574
3840
|
return;
|
|
@@ -3607,6 +3873,30 @@ init_config2();
|
|
|
3607
3873
|
// src/utils/deepLink/terminalPreference.ts
|
|
3608
3874
|
init_config2();
|
|
3609
3875
|
init_debug();
|
|
3876
|
+
var TERM_PROGRAM_TO_APP = {
|
|
3877
|
+
iterm: "iTerm",
|
|
3878
|
+
"iterm.app": "iTerm",
|
|
3879
|
+
ghostty: "Ghostty",
|
|
3880
|
+
kitty: "kitty",
|
|
3881
|
+
alacritty: "Alacritty",
|
|
3882
|
+
wezterm: "WezTerm",
|
|
3883
|
+
apple_terminal: "Terminal"
|
|
3884
|
+
};
|
|
3885
|
+
function updateDeepLinkTerminalPreference() {
|
|
3886
|
+
if (process.platform !== "darwin")
|
|
3887
|
+
return;
|
|
3888
|
+
const termProgram = process.env.TERM_PROGRAM;
|
|
3889
|
+
if (!termProgram)
|
|
3890
|
+
return;
|
|
3891
|
+
const app = TERM_PROGRAM_TO_APP[termProgram.toLowerCase()];
|
|
3892
|
+
if (!app)
|
|
3893
|
+
return;
|
|
3894
|
+
const config = getGlobalConfig();
|
|
3895
|
+
if (config.deepLinkTerminal === app)
|
|
3896
|
+
return;
|
|
3897
|
+
saveGlobalConfig((current) => ({ ...current, deepLinkTerminal: app }));
|
|
3898
|
+
logForDebugging(`Stored deep link terminal preference: ${app}`);
|
|
3899
|
+
}
|
|
3610
3900
|
|
|
3611
3901
|
// src/interactiveHelpers.tsx
|
|
3612
3902
|
init_envUtils();
|
|
@@ -3646,6 +3936,7 @@ class FpsTracker {
|
|
|
3646
3936
|
}
|
|
3647
3937
|
|
|
3648
3938
|
// src/interactiveHelpers.tsx
|
|
3939
|
+
init_managedEnv();
|
|
3649
3940
|
init_allErrors();
|
|
3650
3941
|
init_settings2();
|
|
3651
3942
|
var jsx_dev_runtime6 = __toESM(require_jsx_dev_runtime(), 1);
|
|
@@ -3663,15 +3954,10 @@ function showDialog(root, renderer) {
|
|
|
3663
3954
|
});
|
|
3664
3955
|
}
|
|
3665
3956
|
async function exitWithError(root, message, beforeExit) {
|
|
3666
|
-
return exitWithMessage(root, message, {
|
|
3667
|
-
color: "error",
|
|
3668
|
-
beforeExit
|
|
3669
|
-
});
|
|
3957
|
+
return exitWithMessage(root, message, { color: "error", beforeExit });
|
|
3670
3958
|
}
|
|
3671
3959
|
async function exitWithMessage(root, message, options) {
|
|
3672
|
-
const {
|
|
3673
|
-
Text
|
|
3674
|
-
} = await import("./chunk-5t59fqg3.js");
|
|
3960
|
+
const { Text } = await import("./chunk-cqjmxeqv.js");
|
|
3675
3961
|
const color = options?.color;
|
|
3676
3962
|
const exitCode = options?.exitCode ?? 1;
|
|
3677
3963
|
root.render(color ? /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(Text, {
|
|
@@ -3706,23 +3992,17 @@ async function showSetupScreens(root, permissionMode, allowDangerouslySkipPermis
|
|
|
3706
3992
|
let onboardingShown = false;
|
|
3707
3993
|
if (!config.theme || !config.hasCompletedOnboarding) {
|
|
3708
3994
|
onboardingShown = true;
|
|
3709
|
-
const {
|
|
3710
|
-
Onboarding
|
|
3711
|
-
} = await import("./chunk-yt6z8030.js");
|
|
3995
|
+
const { Onboarding } = await import("./chunk-gv1csnc3.js");
|
|
3712
3996
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(Onboarding, {
|
|
3713
3997
|
onDone: () => {
|
|
3714
3998
|
completeOnboarding();
|
|
3715
3999
|
done();
|
|
3716
4000
|
}
|
|
3717
|
-
}, undefined, false, undefined, this), {
|
|
3718
|
-
onChangeAppState
|
|
3719
|
-
});
|
|
4001
|
+
}, undefined, false, undefined, this), { onChangeAppState });
|
|
3720
4002
|
}
|
|
3721
4003
|
if (!isEnvTruthy(process.env.CLAUBBIT)) {
|
|
3722
4004
|
if (!checkHasTrustDialogAccepted()) {
|
|
3723
|
-
const {
|
|
3724
|
-
TrustDialog
|
|
3725
|
-
} = await import("./chunk-ybgghjqa.js");
|
|
4005
|
+
const { TrustDialog } = await import("./chunk-8kfwb79z.js");
|
|
3726
4006
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(TrustDialog, {
|
|
3727
4007
|
commands,
|
|
3728
4008
|
onDone: done
|
|
@@ -3732,17 +4012,13 @@ async function showSetupScreens(root, permissionMode, allowDangerouslySkipPermis
|
|
|
3732
4012
|
resetGrowthBook();
|
|
3733
4013
|
initializeGrowthBook();
|
|
3734
4014
|
getSystemContext();
|
|
3735
|
-
const {
|
|
3736
|
-
errors: allErrors
|
|
3737
|
-
} = getSettingsWithAllErrors();
|
|
4015
|
+
const { errors: allErrors } = getSettingsWithAllErrors();
|
|
3738
4016
|
if (allErrors.length === 0) {
|
|
3739
4017
|
await handleMcpjsonServerApprovals(root);
|
|
3740
4018
|
}
|
|
3741
4019
|
if (await shouldShowClaudeMdExternalIncludesWarning()) {
|
|
3742
4020
|
const externalIncludes = getExternalClaudeMdIncludes(await getMemoryFiles(true));
|
|
3743
|
-
const {
|
|
3744
|
-
ClaudeMdExternalIncludesDialog
|
|
3745
|
-
} = await import("./chunk-ch8avrbh.js");
|
|
4021
|
+
const { ClaudeMdExternalIncludesDialog } = await import("./chunk-e7h0nd5w.js");
|
|
3746
4022
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(ClaudeMdExternalIncludesDialog, {
|
|
3747
4023
|
onDone: done,
|
|
3748
4024
|
isStandaloneDialog: true,
|
|
@@ -3751,13 +4027,13 @@ async function showSetupScreens(root, permissionMode, allowDangerouslySkipPermis
|
|
|
3751
4027
|
}
|
|
3752
4028
|
}
|
|
3753
4029
|
updateGithubRepoPathMapping();
|
|
3754
|
-
if (
|
|
4030
|
+
if (true) {
|
|
4031
|
+
updateDeepLinkTerminalPreference();
|
|
4032
|
+
}
|
|
3755
4033
|
applyConfigEnvironmentVariables();
|
|
3756
4034
|
setImmediate(() => initializeTelemetryAfterTrust());
|
|
3757
4035
|
if (await isQualifiedForGrove()) {
|
|
3758
|
-
const {
|
|
3759
|
-
GroveDialog
|
|
3760
|
-
} = await import("./chunk-x6bg700t.js");
|
|
4036
|
+
const { GroveDialog } = await import("./chunk-j316jjby.js");
|
|
3761
4037
|
const decision = await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(GroveDialog, {
|
|
3762
4038
|
showIfAlreadyViewed: false,
|
|
3763
4039
|
location: onboardingShown ? "onboarding" : "policy_update_modal",
|
|
@@ -3773,21 +4049,15 @@ async function showSetupScreens(root, permissionMode, allowDangerouslySkipPermis
|
|
|
3773
4049
|
const customApiKeyTruncated = normalizeApiKeyForConfig(process.env.ANTHROPIC_API_KEY);
|
|
3774
4050
|
const keyStatus = getCustomApiKeyStatus(customApiKeyTruncated);
|
|
3775
4051
|
if (keyStatus === "new") {
|
|
3776
|
-
const {
|
|
3777
|
-
ApproveApiKey
|
|
3778
|
-
} = await import("./chunk-fvcwxb8x.js");
|
|
4052
|
+
const { ApproveApiKey } = await import("./chunk-w9zqjhvm.js");
|
|
3779
4053
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(ApproveApiKey, {
|
|
3780
4054
|
customApiKeyTruncated,
|
|
3781
4055
|
onDone: done
|
|
3782
|
-
}, undefined, false, undefined, this), {
|
|
3783
|
-
onChangeAppState
|
|
3784
|
-
});
|
|
4056
|
+
}, undefined, false, undefined, this), { onChangeAppState });
|
|
3785
4057
|
}
|
|
3786
4058
|
}
|
|
3787
4059
|
if ((permissionMode === "bypassPermissions" || allowDangerouslySkipPermissions) && !hasSkipDangerousModePermissionPrompt()) {
|
|
3788
|
-
const {
|
|
3789
|
-
BypassPermissionsModeDialog
|
|
3790
|
-
} = await import("./chunk-j99mjxam.js");
|
|
4060
|
+
const { BypassPermissionsModeDialog } = await import("./chunk-0qz705wz.js");
|
|
3791
4061
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(BypassPermissionsModeDialog, {
|
|
3792
4062
|
onAccept: done
|
|
3793
4063
|
}, undefined, false, undefined, this));
|
|
@@ -3795,9 +4065,7 @@ async function showSetupScreens(root, permissionMode, allowDangerouslySkipPermis
|
|
|
3795
4065
|
if (false) {}
|
|
3796
4066
|
if (false) {}
|
|
3797
4067
|
if (claudeInChrome && !getGlobalConfig().hasCompletedClaudeInChromeOnboarding) {
|
|
3798
|
-
const {
|
|
3799
|
-
ClaudeInChromeOnboarding
|
|
3800
|
-
} = await import("./chunk-1tzexy7d.js");
|
|
4068
|
+
const { ClaudeInChromeOnboarding } = await import("./chunk-zc6dxhk9.js");
|
|
3801
4069
|
await showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime6.jsxDEV(ClaudeInChromeOnboarding, {
|
|
3802
4070
|
onDone: done
|
|
3803
4071
|
}, undefined, false, undefined, this));
|
|
@@ -3858,9 +4126,7 @@ function getRenderContext(exitOnCtrlC) {
|
|
|
3858
4126
|
init_KeybindingProviderSetup();
|
|
3859
4127
|
var jsx_dev_runtime7 = __toESM(require_jsx_dev_runtime(), 1);
|
|
3860
4128
|
async function launchInvalidSettingsDialog(root, props) {
|
|
3861
|
-
const {
|
|
3862
|
-
InvalidSettingsDialog
|
|
3863
|
-
} = await import("./chunk-m6rk1r6q.js");
|
|
4129
|
+
const { InvalidSettingsDialog } = await import("./chunk-an6z4rzv.js");
|
|
3864
4130
|
return showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime7.jsxDEV(InvalidSettingsDialog, {
|
|
3865
4131
|
settingsErrors: props.settingsErrors,
|
|
3866
4132
|
onContinue: done,
|
|
@@ -3868,9 +4134,7 @@ async function launchInvalidSettingsDialog(root, props) {
|
|
|
3868
4134
|
}, undefined, false, undefined, this));
|
|
3869
4135
|
}
|
|
3870
4136
|
async function launchTeleportResumeWrapper(root) {
|
|
3871
|
-
const {
|
|
3872
|
-
TeleportResumeWrapper
|
|
3873
|
-
} = await import("./chunk-w0r5627q.js");
|
|
4137
|
+
const { TeleportResumeWrapper } = await import("./chunk-cxhvyf7c.js");
|
|
3874
4138
|
return showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime7.jsxDEV(TeleportResumeWrapper, {
|
|
3875
4139
|
onComplete: done,
|
|
3876
4140
|
onCancel: () => done(null),
|
|
@@ -3878,9 +4142,7 @@ async function launchTeleportResumeWrapper(root) {
|
|
|
3878
4142
|
}, undefined, false, undefined, this));
|
|
3879
4143
|
}
|
|
3880
4144
|
async function launchTeleportRepoMismatchDialog(root, props) {
|
|
3881
|
-
const {
|
|
3882
|
-
TeleportRepoMismatchDialog
|
|
3883
|
-
} = await import("./chunk-zv3hxg5y.js");
|
|
4145
|
+
const { TeleportRepoMismatchDialog } = await import("./chunk-qd9ntz7c.js");
|
|
3884
4146
|
return showSetupDialog(root, (done) => /* @__PURE__ */ jsx_dev_runtime7.jsxDEV(TeleportRepoMismatchDialog, {
|
|
3885
4147
|
targetRepo: props.targetRepo,
|
|
3886
4148
|
initialPaths: props.initialPaths,
|
|
@@ -3889,11 +4151,11 @@ async function launchTeleportRepoMismatchDialog(root, props) {
|
|
|
3889
4151
|
}, undefined, false, undefined, this));
|
|
3890
4152
|
}
|
|
3891
4153
|
async function launchResumeChooser(root, appProps, worktreePathsPromise, resumeProps) {
|
|
3892
|
-
const [worktreePaths, {
|
|
3893
|
-
|
|
3894
|
-
|
|
3895
|
-
|
|
3896
|
-
|
|
4154
|
+
const [worktreePaths, { ResumeConversation }, { App }] = await Promise.all([
|
|
4155
|
+
worktreePathsPromise,
|
|
4156
|
+
import("./chunk-9pm2d2gv.js"),
|
|
4157
|
+
import("./chunk-b9ndqcdv.js")
|
|
4158
|
+
]);
|
|
3897
4159
|
await renderAndRun(root, /* @__PURE__ */ jsx_dev_runtime7.jsxDEV(App, {
|
|
3898
4160
|
getFpsMetrics: appProps.getFpsMetrics,
|
|
3899
4161
|
stats: appProps.stats,
|
|
@@ -3908,7 +4170,7 @@ async function launchResumeChooser(root, appProps, worktreePathsPromise, resumeP
|
|
|
3908
4170
|
}
|
|
3909
4171
|
|
|
3910
4172
|
// src/main.tsx
|
|
3911
|
-
|
|
4173
|
+
init_src();
|
|
3912
4174
|
|
|
3913
4175
|
// src/plugins/bundled/index.ts
|
|
3914
4176
|
function initBuiltinPlugins() {}
|
|
@@ -3922,7 +4184,7 @@ init_setup();
|
|
|
3922
4184
|
|
|
3923
4185
|
// src/skills/bundled/batch.ts
|
|
3924
4186
|
init_constants2();
|
|
3925
|
-
|
|
4187
|
+
init_prompt3();
|
|
3926
4188
|
init_constants4();
|
|
3927
4189
|
init_constants3();
|
|
3928
4190
|
init_constants5();
|
|
@@ -4037,8 +4299,8 @@ function registerBatchSkill() {
|
|
|
4037
4299
|
}
|
|
4038
4300
|
|
|
4039
4301
|
// src/skills/bundled/claudeInChrome.ts
|
|
4040
|
-
|
|
4041
|
-
|
|
4302
|
+
init_src2();
|
|
4303
|
+
init_prompt6();
|
|
4042
4304
|
init_setup();
|
|
4043
4305
|
init_bundledSkills();
|
|
4044
4306
|
var CLAUDE_IN_CHROME_MCP_TOOLS = BROWSER_TOOLS.map((tool) => `mcp__claude-in-chrome__${tool.name}`);
|
|
@@ -5275,8 +5537,58 @@ ${args}
|
|
|
5275
5537
|
});
|
|
5276
5538
|
}
|
|
5277
5539
|
|
|
5540
|
+
// src/skills/bundled/cronManage.ts
|
|
5541
|
+
init_prompt4();
|
|
5542
|
+
init_bundledSkills();
|
|
5543
|
+
function registerCronListSkill() {
|
|
5544
|
+
registerBundledSkill({
|
|
5545
|
+
name: "cron-list",
|
|
5546
|
+
description: "List all scheduled cron jobs in this session",
|
|
5547
|
+
whenToUse: "When the user wants to see their scheduled/recurring tasks, check active cron jobs, or review what is currently looping.",
|
|
5548
|
+
userInvocable: true,
|
|
5549
|
+
isEnabled: isKairosCronEnabled,
|
|
5550
|
+
async getPromptForCommand() {
|
|
5551
|
+
return [
|
|
5552
|
+
{
|
|
5553
|
+
type: "text",
|
|
5554
|
+
text: `Call ${CRON_LIST_TOOL_NAME} to list all scheduled cron jobs. Display the results in a table with columns: ID, Schedule, Prompt, Recurring, Durable. If no jobs exist, say "No scheduled tasks."`
|
|
5555
|
+
}
|
|
5556
|
+
];
|
|
5557
|
+
}
|
|
5558
|
+
});
|
|
5559
|
+
}
|
|
5560
|
+
function registerCronDeleteSkill() {
|
|
5561
|
+
registerBundledSkill({
|
|
5562
|
+
name: "cron-delete",
|
|
5563
|
+
description: "Cancel a scheduled cron job by ID",
|
|
5564
|
+
whenToUse: "When the user wants to cancel, stop, or remove a scheduled/recurring task or cron job.",
|
|
5565
|
+
argumentHint: "<job-id>",
|
|
5566
|
+
userInvocable: true,
|
|
5567
|
+
isEnabled: isKairosCronEnabled,
|
|
5568
|
+
async getPromptForCommand(args) {
|
|
5569
|
+
const id = args.trim();
|
|
5570
|
+
if (!id) {
|
|
5571
|
+
return [
|
|
5572
|
+
{
|
|
5573
|
+
type: "text",
|
|
5574
|
+
text: `Usage: /cron-delete <job-id>
|
|
5575
|
+
|
|
5576
|
+
Provide the job ID to cancel. Use /cron-list to see active jobs and their IDs.`
|
|
5577
|
+
}
|
|
5578
|
+
];
|
|
5579
|
+
}
|
|
5580
|
+
return [
|
|
5581
|
+
{
|
|
5582
|
+
type: "text",
|
|
5583
|
+
text: `Call ${CRON_DELETE_TOOL_NAME} with id "${id}" to cancel that scheduled job. Confirm the result to the user.`
|
|
5584
|
+
}
|
|
5585
|
+
];
|
|
5586
|
+
}
|
|
5587
|
+
});
|
|
5588
|
+
}
|
|
5589
|
+
|
|
5278
5590
|
// src/skills/bundled/loop.ts
|
|
5279
|
-
|
|
5591
|
+
init_prompt4();
|
|
5280
5592
|
init_bundledSkills();
|
|
5281
5593
|
var DEFAULT_INTERVAL = "10m";
|
|
5282
5594
|
var USAGE_MESSAGE = `Usage: /loop [interval] <prompt>
|
|
@@ -5358,6 +5670,43 @@ function registerLoopSkill() {
|
|
|
5358
5670
|
});
|
|
5359
5671
|
}
|
|
5360
5672
|
|
|
5673
|
+
// src/skills/bundled/dream.ts
|
|
5674
|
+
init_paths();
|
|
5675
|
+
init_consolidationPrompt();
|
|
5676
|
+
init_consolidationLock();
|
|
5677
|
+
init_state();
|
|
5678
|
+
init_sessionStorage();
|
|
5679
|
+
init_bundledSkills();
|
|
5680
|
+
var DREAM_PROMPT_PREFIX = `# Dream: Memory Consolidation (manual run)
|
|
5681
|
+
|
|
5682
|
+
You are performing a manual dream \u2014 a reflective pass over your memory files. Unlike the automatic background dream, this run has full tool permissions and the user is watching. Synthesize what you've learned recently into durable, well-organized memories so that future sessions can orient quickly.
|
|
5683
|
+
|
|
5684
|
+
`;
|
|
5685
|
+
function registerDreamSkill() {
|
|
5686
|
+
registerBundledSkill({
|
|
5687
|
+
name: "dream",
|
|
5688
|
+
description: "Manually trigger memory consolidation \u2014 review, organize, and prune your auto-memory files.",
|
|
5689
|
+
whenToUse: "Use when the user says /dream or wants to manually consolidate memories, organize memory files, or clean up stale entries.",
|
|
5690
|
+
userInvocable: true,
|
|
5691
|
+
isEnabled: () => isAutoMemoryEnabled(),
|
|
5692
|
+
async getPromptForCommand(args) {
|
|
5693
|
+
const memoryRoot = getAutoMemPath();
|
|
5694
|
+
const transcriptDir = getProjectDir(getOriginalCwd());
|
|
5695
|
+
await recordConsolidation();
|
|
5696
|
+
const basePrompt = buildConsolidationPrompt(memoryRoot, transcriptDir, "");
|
|
5697
|
+
let prompt = DREAM_PROMPT_PREFIX + basePrompt;
|
|
5698
|
+
if (args) {
|
|
5699
|
+
prompt += `
|
|
5700
|
+
|
|
5701
|
+
## Additional context from user
|
|
5702
|
+
|
|
5703
|
+
${args}`;
|
|
5704
|
+
}
|
|
5705
|
+
return [{ type: "text", text: prompt }];
|
|
5706
|
+
}
|
|
5707
|
+
});
|
|
5708
|
+
}
|
|
5709
|
+
|
|
5361
5710
|
// src/skills/bundled/updateConfig.ts
|
|
5362
5711
|
init_v4();
|
|
5363
5712
|
init_types();
|
|
@@ -5893,9 +6242,16 @@ function initBundledSkills() {
|
|
|
5893
6242
|
registerBatchSkill();
|
|
5894
6243
|
registerStuckSkill();
|
|
5895
6244
|
registerLoopSkill();
|
|
6245
|
+
registerCronListSkill();
|
|
6246
|
+
registerCronDeleteSkill();
|
|
6247
|
+
registerDreamSkill();
|
|
5896
6248
|
if (false) {}
|
|
5897
|
-
if (
|
|
5898
|
-
|
|
6249
|
+
if (true) {
|
|
6250
|
+
const {
|
|
6251
|
+
registerScheduleRemoteAgentsSkill: registerScheduleRemoteAgentsSkill2
|
|
6252
|
+
} = (init_scheduleRemoteAgents(), __toCommonJS(exports_scheduleRemoteAgents));
|
|
6253
|
+
registerScheduleRemoteAgentsSkill2();
|
|
6254
|
+
}
|
|
5899
6255
|
if (false) {}
|
|
5900
6256
|
if (shouldAutoEnableClaudeInChrome()) {
|
|
5901
6257
|
registerClaudeInChromeSkill();
|
|
@@ -5905,19 +6261,10 @@ function initBundledSkills() {
|
|
|
5905
6261
|
|
|
5906
6262
|
// src/main.tsx
|
|
5907
6263
|
init_loadAgentsDir();
|
|
5908
|
-
|
|
5909
|
-
init_prompt4();
|
|
6264
|
+
init_prompt6();
|
|
5910
6265
|
init_setup();
|
|
5911
6266
|
init_context();
|
|
5912
6267
|
init_conversationRecovery();
|
|
5913
|
-
|
|
5914
|
-
// src/utils/deepLink/banner.ts
|
|
5915
|
-
init_format();
|
|
5916
|
-
init_gitFilesystem();
|
|
5917
|
-
init_git();
|
|
5918
|
-
var STALE_FETCH_WARN_MS = 7 * 24 * 60 * 60 * 1000;
|
|
5919
|
-
|
|
5920
|
-
// src/main.tsx
|
|
5921
6268
|
init_envUtils();
|
|
5922
6269
|
init_getWorktreePaths();
|
|
5923
6270
|
init_git();
|
|
@@ -5963,7 +6310,7 @@ init_pluginTelemetry();
|
|
|
5963
6310
|
// src/utils/telemetry/skillLoadedEvent.ts
|
|
5964
6311
|
init_commands();
|
|
5965
6312
|
init_analytics();
|
|
5966
|
-
|
|
6313
|
+
init_prompt2();
|
|
5967
6314
|
async function logSkillsLoaded(cwd, contextWindowTokens) {
|
|
5968
6315
|
const skills = await getSkillToolCommands(cwd);
|
|
5969
6316
|
const skillBudget = getCharBudget(contextWindowTokens);
|
|
@@ -6297,46 +6644,6 @@ init_constants();
|
|
|
6297
6644
|
init_stringUtils();
|
|
6298
6645
|
init_state();
|
|
6299
6646
|
|
|
6300
|
-
// src/migrations/migrateAutoUpdatesToSettings.ts
|
|
6301
|
-
init_analytics();
|
|
6302
|
-
init_config2();
|
|
6303
|
-
init_log();
|
|
6304
|
-
init_settings2();
|
|
6305
|
-
function migrateAutoUpdatesToSettings() {
|
|
6306
|
-
const globalConfig = getGlobalConfig();
|
|
6307
|
-
if (globalConfig.autoUpdates !== false || globalConfig.autoUpdatesProtectedForNative === true) {
|
|
6308
|
-
return;
|
|
6309
|
-
}
|
|
6310
|
-
try {
|
|
6311
|
-
const userSettings = getSettingsForSource("userSettings") || {};
|
|
6312
|
-
updateSettingsForSource("userSettings", {
|
|
6313
|
-
...userSettings,
|
|
6314
|
-
env: {
|
|
6315
|
-
...userSettings.env,
|
|
6316
|
-
DISABLE_AUTOUPDATER: "1"
|
|
6317
|
-
}
|
|
6318
|
-
});
|
|
6319
|
-
logEvent("tengu_migrate_autoupdates_to_settings", {
|
|
6320
|
-
was_user_preference: true,
|
|
6321
|
-
already_had_env_var: !!userSettings.env?.DISABLE_AUTOUPDATER
|
|
6322
|
-
});
|
|
6323
|
-
process.env.DISABLE_AUTOUPDATER = "1";
|
|
6324
|
-
saveGlobalConfig((current) => {
|
|
6325
|
-
const {
|
|
6326
|
-
autoUpdates: _,
|
|
6327
|
-
autoUpdatesProtectedForNative: __,
|
|
6328
|
-
...updatedConfig
|
|
6329
|
-
} = current;
|
|
6330
|
-
return updatedConfig;
|
|
6331
|
-
});
|
|
6332
|
-
} catch (error) {
|
|
6333
|
-
logError(new Error(`Failed to migrate auto-updates: ${error}`));
|
|
6334
|
-
logEvent("tengu_migrate_autoupdates_error", {
|
|
6335
|
-
has_error: true
|
|
6336
|
-
});
|
|
6337
|
-
}
|
|
6338
|
-
}
|
|
6339
|
-
|
|
6340
6647
|
// src/migrations/migrateBypassPermissionsAcceptedToSettings.ts
|
|
6341
6648
|
init_analytics();
|
|
6342
6649
|
init_config2();
|
|
@@ -6680,10 +6987,7 @@ function logManagedSettings() {
|
|
|
6680
6987
|
function logSessionTelemetry() {
|
|
6681
6988
|
const model = parseUserSpecifiedModel(getInitialMainLoopModel() ?? getDefaultMainLoopModel());
|
|
6682
6989
|
logSkillsLoaded(getCwd(), getContextWindowForModel(model, getSdkBetas()));
|
|
6683
|
-
loadAllPluginsCacheOnly().then(({
|
|
6684
|
-
enabled,
|
|
6685
|
-
errors
|
|
6686
|
-
}) => {
|
|
6990
|
+
loadAllPluginsCacheOnly().then(({ enabled, errors }) => {
|
|
6687
6991
|
const managedNames = getManagedPluginNames();
|
|
6688
6992
|
logPluginsEnabledForSession(enabled, managedNames, getPluginSeedDirs());
|
|
6689
6993
|
logPluginLoadErrors(errors, managedNames);
|
|
@@ -6708,7 +7012,11 @@ function getCertEnvVarTelemetry() {
|
|
|
6708
7012
|
async function logStartupTelemetry() {
|
|
6709
7013
|
if (isAnalyticsDisabled())
|
|
6710
7014
|
return;
|
|
6711
|
-
const [isGit, worktreeCount, ghAuthStatus] = await Promise.all([
|
|
7015
|
+
const [isGit, worktreeCount, ghAuthStatus] = await Promise.all([
|
|
7016
|
+
getIsGit(),
|
|
7017
|
+
getWorktreeCount(),
|
|
7018
|
+
getGhAuthStatus()
|
|
7019
|
+
]);
|
|
6712
7020
|
logEvent("tengu_startup_telemetry", {
|
|
6713
7021
|
is_git: isGit,
|
|
6714
7022
|
worktree_count: worktreeCount,
|
|
@@ -6724,7 +7032,6 @@ async function logStartupTelemetry() {
|
|
|
6724
7032
|
var CURRENT_MIGRATION_VERSION = 11;
|
|
6725
7033
|
function runMigrations() {
|
|
6726
7034
|
if (getGlobalConfig().migrationVersion !== CURRENT_MIGRATION_VERSION) {
|
|
6727
|
-
migrateAutoUpdatesToSettings();
|
|
6728
7035
|
migrateBypassPermissionsAcceptedToSettings();
|
|
6729
7036
|
migrateEnableAllProjectMcpServersToSettings();
|
|
6730
7037
|
resetProToOpusDefault();
|
|
@@ -6737,10 +7044,7 @@ function runMigrations() {
|
|
|
6737
7044
|
if (process.env.USER_TYPE === "ant") {
|
|
6738
7045
|
migrateFennecToOpus();
|
|
6739
7046
|
}
|
|
6740
|
-
saveGlobalConfig((prev) => prev.migrationVersion === CURRENT_MIGRATION_VERSION ? prev : {
|
|
6741
|
-
...prev,
|
|
6742
|
-
migrationVersion: CURRENT_MIGRATION_VERSION
|
|
6743
|
-
});
|
|
7047
|
+
saveGlobalConfig((prev) => prev.migrationVersion === CURRENT_MIGRATION_VERSION ? prev : { ...prev, migrationVersion: CURRENT_MIGRATION_VERSION });
|
|
6744
7048
|
}
|
|
6745
7049
|
migrateChangelogFromConfig().catch(() => {});
|
|
6746
7050
|
}
|
|
@@ -6802,9 +7106,7 @@ function loadSettingsFromFlag(settingsFile) {
|
|
|
6802
7106
|
});
|
|
6803
7107
|
writeFileSync_DEPRECATED(settingsPath, trimmedSettings, "utf8");
|
|
6804
7108
|
} else {
|
|
6805
|
-
const {
|
|
6806
|
-
resolvedPath: resolvedSettingsPath
|
|
6807
|
-
} = safeResolvePath(getFsImplementation(), settingsFile);
|
|
7109
|
+
const { resolvedPath: resolvedSettingsPath } = safeResolvePath(getFsImplementation(), settingsFile);
|
|
6808
7110
|
try {
|
|
6809
7111
|
readFileSync(resolvedSettingsPath, "utf8");
|
|
6810
7112
|
} catch (e) {
|
|
@@ -6885,7 +7187,24 @@ async function main() {
|
|
|
6885
7187
|
});
|
|
6886
7188
|
profileCheckpoint("main_warning_handler_initialized");
|
|
6887
7189
|
if (false) {}
|
|
6888
|
-
if (
|
|
7190
|
+
if (true) {
|
|
7191
|
+
const handleUriIdx = process.argv.indexOf("--handle-uri");
|
|
7192
|
+
if (handleUriIdx !== -1 && process.argv[handleUriIdx + 1]) {
|
|
7193
|
+
const { enableConfigs: enableConfigs2 } = await import("./chunk-ht1nfygk.js");
|
|
7194
|
+
enableConfigs2();
|
|
7195
|
+
const uri = process.argv[handleUriIdx + 1];
|
|
7196
|
+
const { handleDeepLinkUri } = await import("./chunk-7ns74x0q.js");
|
|
7197
|
+
const exitCode = await handleDeepLinkUri(uri);
|
|
7198
|
+
process.exit(exitCode);
|
|
7199
|
+
}
|
|
7200
|
+
if (process.platform === "darwin" && process.env.__CFBundleIdentifier === "com.anthropic.claude-code-url-handler") {
|
|
7201
|
+
const { enableConfigs: enableConfigs2 } = await import("./chunk-ht1nfygk.js");
|
|
7202
|
+
enableConfigs2();
|
|
7203
|
+
const { handleUrlSchemeLaunch } = await import("./chunk-7ns74x0q.js");
|
|
7204
|
+
const urlSchemeResult = await handleUrlSchemeLaunch();
|
|
7205
|
+
process.exit(urlSchemeResult ?? 1);
|
|
7206
|
+
}
|
|
7207
|
+
}
|
|
6889
7208
|
if (false) {}
|
|
6890
7209
|
if (false) {}
|
|
6891
7210
|
const cliArgs = process.argv.slice(2);
|
|
@@ -6962,10 +7281,7 @@ async function run() {
|
|
|
6962
7281
|
profileCheckpoint("run_function_start");
|
|
6963
7282
|
function createSortedHelpConfig() {
|
|
6964
7283
|
const getOptionSortKey = (opt) => opt.long?.replace(/^--/, "") ?? opt.short?.replace(/^-/, "") ?? "";
|
|
6965
|
-
return Object.assign({
|
|
6966
|
-
sortSubcommands: true,
|
|
6967
|
-
sortOptions: true
|
|
6968
|
-
}, {
|
|
7284
|
+
return Object.assign({ sortSubcommands: true, sortOptions: true }, {
|
|
6969
7285
|
compareOptions: (a, b) => getOptionSortKey(a).localeCompare(getOptionSortKey(b))
|
|
6970
7286
|
});
|
|
6971
7287
|
}
|
|
@@ -6973,16 +7289,17 @@ async function run() {
|
|
|
6973
7289
|
profileCheckpoint("run_commander_initialized");
|
|
6974
7290
|
program2.hook("preAction", async (thisCommand) => {
|
|
6975
7291
|
profileCheckpoint("preAction_start");
|
|
6976
|
-
await Promise.all([
|
|
7292
|
+
await Promise.all([
|
|
7293
|
+
ensureMdmSettingsLoaded(),
|
|
7294
|
+
ensureKeychainPrefetchCompleted()
|
|
7295
|
+
]);
|
|
6977
7296
|
profileCheckpoint("preAction_after_mdm");
|
|
6978
7297
|
await init();
|
|
6979
7298
|
profileCheckpoint("preAction_after_init");
|
|
6980
7299
|
if (!isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_TERMINAL_TITLE)) {
|
|
6981
7300
|
process.title = "claude";
|
|
6982
7301
|
}
|
|
6983
|
-
const {
|
|
6984
|
-
initSinks
|
|
6985
|
-
} = await import("./chunk-f7yg1atj.js");
|
|
7302
|
+
const { initSinks } = await import("./chunk-559yvwh1.js");
|
|
6986
7303
|
initSinks();
|
|
6987
7304
|
profileCheckpoint("preAction_after_sinks");
|
|
6988
7305
|
const pluginDir = thisCommand.getOptionValue("pluginDir");
|
|
@@ -7033,9 +7350,7 @@ async function run() {
|
|
|
7033
7350
|
prompt = undefined;
|
|
7034
7351
|
}
|
|
7035
7352
|
if (prompt && typeof prompt === "string" && !/\s/.test(prompt) && prompt.length > 0) {
|
|
7036
|
-
logEvent("tengu_single_word_prompt", {
|
|
7037
|
-
length: prompt.length
|
|
7038
|
-
});
|
|
7353
|
+
logEvent("tengu_single_word_prompt", { length: prompt.length });
|
|
7039
7354
|
}
|
|
7040
7355
|
let kairosEnabled = false;
|
|
7041
7356
|
let assistantTeamContext;
|
|
@@ -7300,10 +7615,7 @@ ${addendum}` : addendum;
|
|
|
7300
7615
|
if (errors.length > 0) {
|
|
7301
7616
|
allErrors.push(...errors);
|
|
7302
7617
|
} else if (configs) {
|
|
7303
|
-
allConfigs = {
|
|
7304
|
-
...allConfigs,
|
|
7305
|
-
...configs
|
|
7306
|
-
};
|
|
7618
|
+
allConfigs = { ...allConfigs, ...configs };
|
|
7307
7619
|
}
|
|
7308
7620
|
}
|
|
7309
7621
|
if (allErrors.length > 0) {
|
|
@@ -7322,7 +7634,15 @@ ${formattedErrors}
|
|
|
7322
7634
|
let reservedNameError = null;
|
|
7323
7635
|
if (nonSdkConfigNames.some(isClaudeInChromeMCPServer)) {
|
|
7324
7636
|
reservedNameError = `Invalid MCP configuration: "${CLAUDE_IN_CHROME_MCP_SERVER_NAME}" is a reserved MCP name.`;
|
|
7325
|
-
} else if (
|
|
7637
|
+
} else if (true) {
|
|
7638
|
+
const {
|
|
7639
|
+
isComputerUseMCPServer,
|
|
7640
|
+
COMPUTER_USE_MCP_SERVER_NAME
|
|
7641
|
+
} = await import("./chunk-zfapazzd.js");
|
|
7642
|
+
if (nonSdkConfigNames.some(isComputerUseMCPServer)) {
|
|
7643
|
+
reservedNameError = `Invalid MCP configuration: "${COMPUTER_USE_MCP_SERVER_NAME}" is a reserved MCP name.`;
|
|
7644
|
+
}
|
|
7645
|
+
}
|
|
7326
7646
|
if (reservedNameError) {
|
|
7327
7647
|
process.stderr.write(`Error: ${reservedNameError}
|
|
7328
7648
|
`);
|
|
@@ -7332,18 +7652,12 @@ ${formattedErrors}
|
|
|
7332
7652
|
...config,
|
|
7333
7653
|
scope: "dynamic"
|
|
7334
7654
|
}));
|
|
7335
|
-
const {
|
|
7336
|
-
allowed,
|
|
7337
|
-
blocked
|
|
7338
|
-
} = filterMcpServersByPolicy(scopedConfigs);
|
|
7655
|
+
const { allowed, blocked } = filterMcpServersByPolicy(scopedConfigs);
|
|
7339
7656
|
if (blocked.length > 0) {
|
|
7340
7657
|
process.stderr.write(`Warning: MCP ${plural(blocked.length, "server")} blocked by enterprise policy: ${blocked.join(", ")}
|
|
7341
7658
|
`);
|
|
7342
7659
|
}
|
|
7343
|
-
dynamicMcpConfig = {
|
|
7344
|
-
...dynamicMcpConfig,
|
|
7345
|
-
...allowed
|
|
7346
|
-
};
|
|
7660
|
+
dynamicMcpConfig = { ...dynamicMcpConfig, ...allowed };
|
|
7347
7661
|
}
|
|
7348
7662
|
}
|
|
7349
7663
|
const chromeOpts = options;
|
|
@@ -7382,9 +7696,7 @@ ${appendSystemPrompt}` : chromeSystemPrompt;
|
|
|
7382
7696
|
}
|
|
7383
7697
|
} else if (autoEnableClaudeInChrome) {
|
|
7384
7698
|
try {
|
|
7385
|
-
const {
|
|
7386
|
-
mcpConfig: chromeMcpConfig
|
|
7387
|
-
} = setupClaudeInChrome();
|
|
7699
|
+
const { mcpConfig: chromeMcpConfig } = setupClaudeInChrome();
|
|
7388
7700
|
dynamicMcpConfig = {
|
|
7389
7701
|
...dynamicMcpConfig,
|
|
7390
7702
|
...chromeMcpConfig
|
|
@@ -7408,11 +7720,33 @@ ${hint}` : hint;
|
|
|
7408
7720
|
process.exit(1);
|
|
7409
7721
|
}
|
|
7410
7722
|
}
|
|
7411
|
-
if (
|
|
7723
|
+
if (getPlatform() !== "unknown" && !getIsNonInteractiveSession()) {
|
|
7724
|
+
try {
|
|
7725
|
+
const { getChicagoEnabled } = await import("./chunk-njrz6mbe.js");
|
|
7726
|
+
if (getChicagoEnabled()) {
|
|
7727
|
+
const { setupComputerUseMCP } = await import("./chunk-15y014gg.js");
|
|
7728
|
+
const { mcpConfig: mcpConfig2, allowedTools: cuTools } = setupComputerUseMCP();
|
|
7729
|
+
dynamicMcpConfig = {
|
|
7730
|
+
...dynamicMcpConfig,
|
|
7731
|
+
...mcpConfig2
|
|
7732
|
+
};
|
|
7733
|
+
allowedTools.push(...cuTools);
|
|
7734
|
+
}
|
|
7735
|
+
} catch (error) {
|
|
7736
|
+
logForDebugging(`[Computer Use MCP] Setup failed: ${errorMessage(error)}`);
|
|
7737
|
+
}
|
|
7738
|
+
}
|
|
7412
7739
|
setAdditionalDirectoriesForClaudeMd(addDir);
|
|
7413
7740
|
let devChannels;
|
|
7414
7741
|
if (false) {}
|
|
7415
|
-
if (
|
|
7742
|
+
if (baseTools.length > 0) {
|
|
7743
|
+
const { BRIEF_TOOL_NAME, LEGACY_BRIEF_TOOL_NAME } = (init_prompt(), __toCommonJS(exports_prompt));
|
|
7744
|
+
const { isBriefEntitled } = (init_BriefTool(), __toCommonJS(exports_BriefTool));
|
|
7745
|
+
const parsed = parseToolListFromCLI(baseTools);
|
|
7746
|
+
if ((parsed.includes(BRIEF_TOOL_NAME) || parsed.includes(LEGACY_BRIEF_TOOL_NAME)) && isBriefEntitled()) {
|
|
7747
|
+
setUserMsgOptIn(true);
|
|
7748
|
+
}
|
|
7749
|
+
}
|
|
7416
7750
|
const initResult = await initializeToolPermissionContext({
|
|
7417
7751
|
allowedToolsCli: allowedTools,
|
|
7418
7752
|
disallowedToolsCli: disallowedTools,
|
|
@@ -7437,12 +7771,8 @@ ${hint}` : hint;
|
|
|
7437
7771
|
warnings.forEach((warning) => {
|
|
7438
7772
|
console.error(warning);
|
|
7439
7773
|
});
|
|
7440
|
-
assertMinVersion();
|
|
7441
7774
|
const claudeaiConfigPromise = isNonInteractiveSession && !strictMcpConfig && !doesEnterpriseMcpConfigExist() && !isBareMode() ? fetchClaudeAIMcpConfigsIfEligible().then((configs) => {
|
|
7442
|
-
const {
|
|
7443
|
-
allowed,
|
|
7444
|
-
blocked
|
|
7445
|
-
} = filterMcpServersByPolicy(configs);
|
|
7775
|
+
const { allowed, blocked } = filterMcpServersByPolicy(configs);
|
|
7446
7776
|
if (blocked.length > 0) {
|
|
7447
7777
|
process.stderr.write(`Warning: claude.ai MCP ${plural(blocked.length, "server")} blocked by enterprise policy: ${blocked.join(", ")}
|
|
7448
7778
|
`);
|
|
@@ -7496,9 +7826,7 @@ ${hint}` : hint;
|
|
|
7496
7826
|
if (false) {}
|
|
7497
7827
|
profileCheckpoint("action_tools_loaded");
|
|
7498
7828
|
let jsonSchema;
|
|
7499
|
-
if (isSyntheticOutputToolEnabled({
|
|
7500
|
-
isNonInteractiveSession
|
|
7501
|
-
}) && options.jsonSchema) {
|
|
7829
|
+
if (isSyntheticOutputToolEnabled({ isNonInteractiveSession }) && options.jsonSchema) {
|
|
7502
7830
|
jsonSchema = jsonParse(options.jsonSchema);
|
|
7503
7831
|
}
|
|
7504
7832
|
if (jsonSchema) {
|
|
@@ -7518,9 +7846,7 @@ ${hint}` : hint;
|
|
|
7518
7846
|
profileCheckpoint("action_before_setup");
|
|
7519
7847
|
logForDebugging("[STARTUP] Running setup()...");
|
|
7520
7848
|
const setupStart = Date.now();
|
|
7521
|
-
const {
|
|
7522
|
-
setup
|
|
7523
|
-
} = await import("./chunk-ap2a2er6.js");
|
|
7849
|
+
const { setup } = await import("./chunk-1mh5vt6v.js");
|
|
7524
7850
|
const messagingSocketPath = undefined;
|
|
7525
7851
|
const preSetupCwd = getCwd();
|
|
7526
7852
|
if (process.env.CLAUDE_CODE_ENTRYPOINT !== "local-agent") {
|
|
@@ -7556,7 +7882,10 @@ ${hint}` : hint;
|
|
|
7556
7882
|
const currentCwd = worktreeEnabled ? getCwd() : preSetupCwd;
|
|
7557
7883
|
logForDebugging("[STARTUP] Loading commands and agents...");
|
|
7558
7884
|
const commandsStart = Date.now();
|
|
7559
|
-
const [commands, agentDefinitionsResult] = await Promise.all([
|
|
7885
|
+
const [commands, agentDefinitionsResult] = await Promise.all([
|
|
7886
|
+
commandsPromise ?? getCommands(currentCwd),
|
|
7887
|
+
agentDefsPromise ?? getAgentDefinitionsWithOverrides(currentCwd)
|
|
7888
|
+
]);
|
|
7560
7889
|
logForDebugging(`[STARTUP] Commands and agents loaded in ${Date.now() - commandsStart}ms`);
|
|
7561
7890
|
profileCheckpoint("action_commands_loaded");
|
|
7562
7891
|
let cliAgents = [];
|
|
@@ -7570,7 +7899,10 @@ ${hint}` : hint;
|
|
|
7570
7899
|
logError(error);
|
|
7571
7900
|
}
|
|
7572
7901
|
}
|
|
7573
|
-
const allAgents = [
|
|
7902
|
+
const allAgents = [
|
|
7903
|
+
...agentDefinitionsResult.allAgents,
|
|
7904
|
+
...cliAgents
|
|
7905
|
+
];
|
|
7574
7906
|
const agentDefinitions = {
|
|
7575
7907
|
...agentDefinitionsResult,
|
|
7576
7908
|
allAgents,
|
|
@@ -7672,7 +8004,12 @@ ${customInstructions}` : customInstructions;
|
|
|
7672
8004
|
}
|
|
7673
8005
|
}
|
|
7674
8006
|
maybeActivateBrief(options);
|
|
7675
|
-
if (
|
|
8007
|
+
if (!getIsNonInteractiveSession() && !getUserMsgOptIn() && getInitialSettings().defaultView === "chat") {
|
|
8008
|
+
const { isBriefEntitled } = (init_BriefTool(), __toCommonJS(exports_BriefTool));
|
|
8009
|
+
if (isBriefEntitled()) {
|
|
8010
|
+
setUserMsgOptIn(true);
|
|
8011
|
+
}
|
|
8012
|
+
}
|
|
7676
8013
|
if (false) {}
|
|
7677
8014
|
if (false) {}
|
|
7678
8015
|
let root;
|
|
@@ -7685,9 +8022,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7685
8022
|
if (process.env.USER_TYPE === "ant") {
|
|
7686
8023
|
installAsciicastRecorder();
|
|
7687
8024
|
}
|
|
7688
|
-
const {
|
|
7689
|
-
createRoot
|
|
7690
|
-
} = await import("./chunk-5t59fqg3.js");
|
|
8025
|
+
const { createRoot } = await import("./chunk-cqjmxeqv.js");
|
|
7691
8026
|
root = await createRoot(ctx.renderOptions);
|
|
7692
8027
|
logEvent("tengu_timer", {
|
|
7693
8028
|
event: "startup",
|
|
@@ -7707,7 +8042,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7707
8042
|
refreshPolicyLimits();
|
|
7708
8043
|
resetUserCache();
|
|
7709
8044
|
refreshGrowthBookAfterAuthChange();
|
|
7710
|
-
import("./chunk-
|
|
8045
|
+
import("./chunk-7tdcwje9.js").then((m) => {
|
|
7711
8046
|
m.clearTrustedDeviceToken();
|
|
7712
8047
|
return m.enrollTrustedDevice();
|
|
7713
8048
|
});
|
|
@@ -7723,9 +8058,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7723
8058
|
}
|
|
7724
8059
|
initializeLspServerManager();
|
|
7725
8060
|
if (!isNonInteractiveSession) {
|
|
7726
|
-
const {
|
|
7727
|
-
errors
|
|
7728
|
-
} = getSettingsWithErrors();
|
|
8061
|
+
const { errors } = getSettingsWithErrors();
|
|
7729
8062
|
const nonMcpErrors = errors.filter((e) => !e.mcpErrorMetadata);
|
|
7730
8063
|
if (nonMcpErrors.length > 0) {
|
|
7731
8064
|
await launchInvalidSettingsDialog(root, {
|
|
@@ -7761,9 +8094,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7761
8094
|
if (!isNonInteractiveSession) {
|
|
7762
8095
|
refreshExampleCommands();
|
|
7763
8096
|
}
|
|
7764
|
-
const {
|
|
7765
|
-
servers: existingMcpConfigs
|
|
7766
|
-
} = await mcpConfigPromise;
|
|
8097
|
+
const { servers: existingMcpConfigs } = await mcpConfigPromise;
|
|
7767
8098
|
logForDebugging(`[STARTUP] MCP configs resolved in ${mcpConfigResolvedMs}ms (awaited at +${Date.now() - mcpConfigStart}ms)`);
|
|
7768
8099
|
const allMcpConfigs = {
|
|
7769
8100
|
...existingMcpConfigs,
|
|
@@ -7780,21 +8111,12 @@ ${customInstructions}` : customInstructions;
|
|
|
7780
8111
|
}
|
|
7781
8112
|
}
|
|
7782
8113
|
profileCheckpoint("action_mcp_configs_loaded");
|
|
7783
|
-
const localMcpPromise = isNonInteractiveSession ? Promise.resolve({
|
|
7784
|
-
|
|
7785
|
-
|
|
7786
|
-
|
|
7787
|
-
|
|
7788
|
-
|
|
7789
|
-
clients: [],
|
|
7790
|
-
tools: [],
|
|
7791
|
-
commands: []
|
|
7792
|
-
}) : claudeaiConfigPromise.then((configs) => Object.keys(configs).length > 0 ? prefetchAllMcpResources(configs) : {
|
|
7793
|
-
clients: [],
|
|
7794
|
-
tools: [],
|
|
7795
|
-
commands: []
|
|
7796
|
-
});
|
|
7797
|
-
const mcpPromise = Promise.all([localMcpPromise, claudeaiMcpPromise]).then(([local, claudeai]) => ({
|
|
8114
|
+
const localMcpPromise = isNonInteractiveSession ? Promise.resolve({ clients: [], tools: [], commands: [] }) : prefetchAllMcpResources(regularMcpConfigs);
|
|
8115
|
+
const claudeaiMcpPromise = isNonInteractiveSession ? Promise.resolve({ clients: [], tools: [], commands: [] }) : claudeaiConfigPromise.then((configs) => Object.keys(configs).length > 0 ? prefetchAllMcpResources(configs) : { clients: [], tools: [], commands: [] });
|
|
8116
|
+
const mcpPromise = Promise.all([
|
|
8117
|
+
localMcpPromise,
|
|
8118
|
+
claudeaiMcpPromise
|
|
8119
|
+
]).then(([local, claudeai]) => ({
|
|
7798
8120
|
clients: [...local.clients, ...claudeai.clients],
|
|
7799
8121
|
tools: uniqBy_default([...local.tools, ...claudeai.tools], "name"),
|
|
7800
8122
|
commands: uniqBy_default([...local.commands, ...claudeai.commands], "name")
|
|
@@ -7809,21 +8131,13 @@ ${customInstructions}` : customInstructions;
|
|
|
7809
8131
|
const mcpTools = [];
|
|
7810
8132
|
const mcpCommands = [];
|
|
7811
8133
|
let thinkingEnabled = shouldEnableThinkingByDefault();
|
|
7812
|
-
let thinkingConfig = thinkingEnabled !== false ? {
|
|
7813
|
-
type: "adaptive"
|
|
7814
|
-
} : {
|
|
7815
|
-
type: "disabled"
|
|
7816
|
-
};
|
|
8134
|
+
let thinkingConfig = thinkingEnabled !== false ? { type: "adaptive" } : { type: "disabled" };
|
|
7817
8135
|
if (options.thinking === "adaptive" || options.thinking === "enabled") {
|
|
7818
8136
|
thinkingEnabled = true;
|
|
7819
|
-
thinkingConfig = {
|
|
7820
|
-
type: "adaptive"
|
|
7821
|
-
};
|
|
8137
|
+
thinkingConfig = { type: "adaptive" };
|
|
7822
8138
|
} else if (options.thinking === "disabled") {
|
|
7823
8139
|
thinkingEnabled = false;
|
|
7824
|
-
thinkingConfig = {
|
|
7825
|
-
type: "disabled"
|
|
7826
|
-
};
|
|
8140
|
+
thinkingConfig = { type: "disabled" };
|
|
7827
8141
|
} else {
|
|
7828
8142
|
const maxThinkingTokens = process.env.MAX_THINKING_TOKENS ? parseInt(process.env.MAX_THINKING_TOKENS, 10) : options.maxThinkingTokens;
|
|
7829
8143
|
if (maxThinkingTokens !== undefined) {
|
|
@@ -7835,9 +8149,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7835
8149
|
};
|
|
7836
8150
|
} else if (maxThinkingTokens === 0) {
|
|
7837
8151
|
thinkingEnabled = false;
|
|
7838
|
-
thinkingConfig = {
|
|
7839
|
-
type: "disabled"
|
|
7840
|
-
};
|
|
8152
|
+
thinkingConfig = { type: "disabled" };
|
|
7841
8153
|
}
|
|
7842
8154
|
}
|
|
7843
8155
|
}
|
|
@@ -7903,9 +8215,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7903
8215
|
const setupTrigger = initOnly || init2 ? "init" : maintenance ? "maintenance" : null;
|
|
7904
8216
|
if (initOnly) {
|
|
7905
8217
|
applyConfigEnvironmentVariables();
|
|
7906
|
-
await processSetupHooks("init", {
|
|
7907
|
-
forceSyncExecution: true
|
|
7908
|
-
});
|
|
8218
|
+
await processSetupHooks("init", { forceSyncExecution: true });
|
|
7909
8219
|
await processSessionStartHooks("startup", {
|
|
7910
8220
|
forceSyncExecution: true
|
|
7911
8221
|
});
|
|
@@ -7942,9 +8252,7 @@ ${customInstructions}` : customInstructions;
|
|
|
7942
8252
|
...isFastModeEnabled() && {
|
|
7943
8253
|
fastMode: getInitialFastModeSetting(effectiveModel ?? null)
|
|
7944
8254
|
},
|
|
7945
|
-
...isAdvisorEnabled() && advisorModel && {
|
|
7946
|
-
advisorModel
|
|
7947
|
-
},
|
|
8255
|
+
...isAdvisorEnabled() && advisorModel && { advisorModel },
|
|
7948
8256
|
...{}
|
|
7949
8257
|
};
|
|
7950
8258
|
const headlessStore = createStore(headlessInitialState, onChangeAppState);
|
|
@@ -7963,18 +8271,17 @@ ${customInstructions}` : customInstructions;
|
|
|
7963
8271
|
...prev,
|
|
7964
8272
|
mcp: {
|
|
7965
8273
|
...prev.mcp,
|
|
7966
|
-
clients: [
|
|
7967
|
-
|
|
7968
|
-
|
|
7969
|
-
|
|
7970
|
-
|
|
8274
|
+
clients: [
|
|
8275
|
+
...prev.mcp.clients,
|
|
8276
|
+
...Object.entries(configs).map(([name, config]) => ({
|
|
8277
|
+
name,
|
|
8278
|
+
type: "pending",
|
|
8279
|
+
config
|
|
8280
|
+
}))
|
|
8281
|
+
]
|
|
7971
8282
|
}
|
|
7972
8283
|
}));
|
|
7973
|
-
return getMcpToolsCommandsAndResources(({
|
|
7974
|
-
client,
|
|
7975
|
-
tools: tools2,
|
|
7976
|
-
commands: commands2
|
|
7977
|
-
}) => {
|
|
8284
|
+
return getMcpToolsCommandsAndResources(({ client, tools: tools2, commands: commands2 }) => {
|
|
7978
8285
|
headlessStore.setState((prev) => ({
|
|
7979
8286
|
...prev,
|
|
7980
8287
|
mcp: {
|
|
@@ -8041,15 +8348,16 @@ ${customInstructions}` : customInstructions;
|
|
|
8041
8348
|
}
|
|
8042
8349
|
}
|
|
8043
8350
|
const nonPluginConfigs = pickBy_default(regularMcpConfigs, (_, n) => !n.startsWith("plugin:"));
|
|
8044
|
-
const {
|
|
8045
|
-
servers: dedupedClaudeAi
|
|
8046
|
-
} = dedupClaudeAiMcpServers(claudeaiConfigs, nonPluginConfigs);
|
|
8351
|
+
const { servers: dedupedClaudeAi } = dedupClaudeAiMcpServers(claudeaiConfigs, nonPluginConfigs);
|
|
8047
8352
|
return connectMcpBatch(dedupedClaudeAi, "claudeai");
|
|
8048
8353
|
});
|
|
8049
8354
|
let claudeaiTimer;
|
|
8050
|
-
const claudeaiTimedOut = await Promise.race([
|
|
8051
|
-
|
|
8052
|
-
|
|
8355
|
+
const claudeaiTimedOut = await Promise.race([
|
|
8356
|
+
claudeaiConnect.then(() => false),
|
|
8357
|
+
new Promise((resolve2) => {
|
|
8358
|
+
claudeaiTimer = setTimeout((r) => r(true), CLAUDE_AI_MCP_TIMEOUT_MS, resolve2);
|
|
8359
|
+
})
|
|
8360
|
+
]);
|
|
8053
8361
|
if (claudeaiTimer)
|
|
8054
8362
|
clearTimeout(claudeaiTimer);
|
|
8055
8363
|
if (claudeaiTimedOut) {
|
|
@@ -8058,16 +8366,14 @@ ${customInstructions}` : customInstructions;
|
|
|
8058
8366
|
profileCheckpoint("after_connectMcp_claudeai");
|
|
8059
8367
|
if (!isBareMode()) {
|
|
8060
8368
|
startDeferredPrefetches();
|
|
8061
|
-
import("./chunk-
|
|
8369
|
+
import("./chunk-j7pbwf9x.js").then((m) => m.startBackgroundHousekeeping());
|
|
8062
8370
|
if (process.env.USER_TYPE === "ant") {
|
|
8063
8371
|
import("./chunk-3nk79af8.js").then((m) => m.startSdkMemoryMonitor());
|
|
8064
8372
|
}
|
|
8065
8373
|
}
|
|
8066
8374
|
logSessionTelemetry();
|
|
8067
8375
|
profileCheckpoint("before_print_import");
|
|
8068
|
-
const {
|
|
8069
|
-
runHeadless
|
|
8070
|
-
} = await import("./chunk-s8y2tfzf.js");
|
|
8376
|
+
const { runHeadless } = await import("./chunk-bf1j3azq.js");
|
|
8071
8377
|
profileCheckpoint("after_print_import");
|
|
8072
8378
|
runHeadless(inputPrompt, () => headlessStore.getState(), headlessStore.setState, commandsHeadless, tools, sdkMcpConfigs, agentDefinitions.activeAgents, {
|
|
8073
8379
|
continue: options.continue,
|
|
@@ -8080,9 +8386,7 @@ ${customInstructions}` : customInstructions;
|
|
|
8080
8386
|
thinkingConfig,
|
|
8081
8387
|
maxTurns: options.maxTurns,
|
|
8082
8388
|
maxBudgetUsd: options.maxBudgetUsd,
|
|
8083
|
-
taskBudget: options.taskBudget ? {
|
|
8084
|
-
total: options.taskBudget
|
|
8085
|
-
} : undefined,
|
|
8389
|
+
taskBudget: options.taskBudget ? { total: options.taskBudget } : undefined,
|
|
8086
8390
|
systemPrompt,
|
|
8087
8391
|
appendSystemPrompt,
|
|
8088
8392
|
userSpecifiedModel: effectiveModel,
|
|
@@ -8142,7 +8446,7 @@ ${customInstructions}` : customInstructions;
|
|
|
8142
8446
|
...toolPermissionContext,
|
|
8143
8447
|
mode: isAgentSwarmsEnabled() && getTeammateUtils().isPlanModeRequired() ? "plan" : toolPermissionContext.mode
|
|
8144
8448
|
};
|
|
8145
|
-
const initialIsBriefOnly =
|
|
8449
|
+
const initialIsBriefOnly = getUserMsgOptIn();
|
|
8146
8450
|
const fullRemoteControl = remoteControl || getRemoteControlAtStartup() || kairosEnabled;
|
|
8147
8451
|
let ccrMirrorEnabled = false;
|
|
8148
8452
|
if (false) {}
|
|
@@ -8247,10 +8551,8 @@ ${customInstructions}` : customInstructions;
|
|
|
8247
8551
|
effortValue: parseEffortValue(options.effort) ?? getInitialEffortSetting(),
|
|
8248
8552
|
activeOverlays: new Set,
|
|
8249
8553
|
fastMode: getInitialFastModeSetting(resolvedInitialModel),
|
|
8250
|
-
...isAdvisorEnabled() && advisorModel && {
|
|
8251
|
-
|
|
8252
|
-
},
|
|
8253
|
-
teamContext: computeInitialTeamContext?.() || undefined
|
|
8554
|
+
...isAdvisorEnabled() && advisorModel && { advisorModel },
|
|
8555
|
+
teamContext: computeInitialTeamContext?.()
|
|
8254
8556
|
};
|
|
8255
8557
|
if (inputPrompt) {
|
|
8256
8558
|
addToHistory(String(inputPrompt));
|
|
@@ -8298,9 +8600,7 @@ ${customInstructions}` : customInstructions;
|
|
|
8298
8600
|
let resumeSucceeded = false;
|
|
8299
8601
|
try {
|
|
8300
8602
|
const resumeStart = performance.now();
|
|
8301
|
-
const {
|
|
8302
|
-
clearSessionCaches
|
|
8303
|
-
} = await import("./chunk-g9qyg278.js");
|
|
8603
|
+
const { clearSessionCaches } = await import("./chunk-ffhejx56.js");
|
|
8304
8604
|
clearSessionCaches();
|
|
8305
8605
|
const result = await loadConversationForResume(undefined, undefined);
|
|
8306
8606
|
if (!result) {
|
|
@@ -8347,16 +8647,14 @@ ${customInstructions}` : customInstructions;
|
|
|
8347
8647
|
process.exit(1);
|
|
8348
8648
|
}
|
|
8349
8649
|
} else if (false) {} else if (false) {} else if (false) {} else if (options.resume || options.fromPr || teleport || remote !== null) {
|
|
8350
|
-
const {
|
|
8351
|
-
clearSessionCaches
|
|
8352
|
-
} = await import("./chunk-g9qyg278.js");
|
|
8650
|
+
const { clearSessionCaches } = await import("./chunk-ffhejx56.js");
|
|
8353
8651
|
clearSessionCaches();
|
|
8354
8652
|
let messages = null;
|
|
8355
|
-
let processedResume
|
|
8653
|
+
let processedResume;
|
|
8356
8654
|
let maybeSessionId = validateUuid(options.resume);
|
|
8357
|
-
let searchTerm
|
|
8655
|
+
let searchTerm;
|
|
8358
8656
|
let matchedLog = null;
|
|
8359
|
-
let filterByPr
|
|
8657
|
+
let filterByPr;
|
|
8360
8658
|
if (options.fromPr) {
|
|
8361
8659
|
if (options.fromPr === true) {
|
|
8362
8660
|
filterByPr = true;
|
|
@@ -8424,16 +8722,12 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8424
8722
|
logError(toError(error));
|
|
8425
8723
|
return await exitWithError(root, `Error: ${errorMessage(error) || "Failed to authenticate"}`, () => gracefulShutdown(1));
|
|
8426
8724
|
}
|
|
8427
|
-
const {
|
|
8428
|
-
getClaudeAIOAuthTokens: getTokensForRemote
|
|
8429
|
-
} = await import("./chunk-6heqkcjx.js");
|
|
8725
|
+
const { getClaudeAIOAuthTokens: getTokensForRemote } = await import("./chunk-a3k4w4cm.js");
|
|
8430
8726
|
const getAccessTokenForRemote = () => getTokensForRemote()?.accessToken ?? apiCreds.accessToken;
|
|
8431
8727
|
const remoteSessionConfig = createRemoteSessionConfig(createdSession.id, getAccessTokenForRemote, apiCreds.orgUUID, hasInitialPrompt);
|
|
8432
8728
|
const remoteSessionUrl = `${getRemoteSessionUrl(createdSession.id)}?m=0`;
|
|
8433
8729
|
const remoteInfoMessage = createSystemMessage(`/remote-control is active. Code in CLI or at ${remoteSessionUrl}`, "info");
|
|
8434
|
-
const initialUserMessage = hasInitialPrompt ? createUserMessage({
|
|
8435
|
-
content: remote
|
|
8436
|
-
}) : null;
|
|
8730
|
+
const initialUserMessage = hasInitialPrompt ? createUserMessage({ content: remote }) : null;
|
|
8437
8731
|
const remoteInitialState = {
|
|
8438
8732
|
...initialState,
|
|
8439
8733
|
remoteSessionUrl
|
|
@@ -8465,9 +8759,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8465
8759
|
await gracefulShutdown(0);
|
|
8466
8760
|
process.exit(0);
|
|
8467
8761
|
}
|
|
8468
|
-
const {
|
|
8469
|
-
branchError
|
|
8470
|
-
} = await checkOutTeleportedSessionBranch(teleportResult.branch);
|
|
8762
|
+
const { branchError } = await checkOutTeleportedSessionBranch(teleportResult.branch);
|
|
8471
8763
|
messages = processMessagesForTeleportResume(teleportResult.log, branchError);
|
|
8472
8764
|
} else if (typeof teleport === "string") {
|
|
8473
8765
|
logEvent("tengu_teleport_resume_session", {
|
|
@@ -8503,13 +8795,9 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8503
8795
|
`));
|
|
8504
8796
|
}
|
|
8505
8797
|
await validateGitState();
|
|
8506
|
-
const {
|
|
8507
|
-
teleportWithProgress
|
|
8508
|
-
} = await import("./chunk-4fbyr2hm.js");
|
|
8798
|
+
const { teleportWithProgress } = await import("./chunk-99pmbfqp.js");
|
|
8509
8799
|
const result = await teleportWithProgress(root, teleport);
|
|
8510
|
-
setTeleportedSessionInfo({
|
|
8511
|
-
sessionId: teleport
|
|
8512
|
-
});
|
|
8800
|
+
setTeleportedSessionInfo({ sessionId: teleport });
|
|
8513
8801
|
messages = result.messages;
|
|
8514
8802
|
} catch (error) {
|
|
8515
8803
|
if (error instanceof TeleportOperationError) {
|
|
@@ -8526,10 +8814,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8526
8814
|
}
|
|
8527
8815
|
if (process.env.USER_TYPE === "ant") {
|
|
8528
8816
|
if (options.resume && typeof options.resume === "string" && !maybeSessionId) {
|
|
8529
|
-
const {
|
|
8530
|
-
parseCcshareId,
|
|
8531
|
-
loadCcshare
|
|
8532
|
-
} = await import("./chunk-9x5zgy22.js");
|
|
8817
|
+
const { parseCcshareId, loadCcshare } = await import("./chunk-9x5zgy22.js");
|
|
8533
8818
|
const ccshareId = parseCcshareId(options.resume);
|
|
8534
8819
|
if (ccshareId) {
|
|
8535
8820
|
try {
|
|
@@ -8680,11 +8965,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8680
8965
|
initialAgentColor: resumeData.agentColor
|
|
8681
8966
|
}, renderAndRun);
|
|
8682
8967
|
} else {
|
|
8683
|
-
await launchResumeChooser(root, {
|
|
8684
|
-
getFpsMetrics,
|
|
8685
|
-
stats,
|
|
8686
|
-
initialState
|
|
8687
|
-
}, getWorktreePaths(getOriginalCwd()), {
|
|
8968
|
+
await launchResumeChooser(root, { getFpsMetrics, stats, initialState }, getWorktreePaths(getOriginalCwd()), {
|
|
8688
8969
|
...sessionConfig,
|
|
8689
8970
|
initialSearchQuery: searchTerm,
|
|
8690
8971
|
forkSession: options.forkSession,
|
|
@@ -8698,13 +8979,24 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8698
8979
|
maybeActivateBrief(options);
|
|
8699
8980
|
if (false) {}
|
|
8700
8981
|
let deepLinkBanner = null;
|
|
8701
|
-
if (
|
|
8982
|
+
if (true) {
|
|
8983
|
+
if (options.deepLinkOrigin) {
|
|
8984
|
+
logEvent("tengu_deep_link_opened", {
|
|
8985
|
+
has_prefill: Boolean(options.prefill),
|
|
8986
|
+
has_repo: Boolean(options.deepLinkRepo)
|
|
8987
|
+
});
|
|
8988
|
+
deepLinkBanner = createSystemMessage(buildDeepLinkBanner({
|
|
8989
|
+
cwd: getCwd(),
|
|
8990
|
+
prefillLength: options.prefill?.length,
|
|
8991
|
+
repo: options.deepLinkRepo,
|
|
8992
|
+
lastFetch: options.deepLinkLastFetch !== undefined ? new Date(options.deepLinkLastFetch) : undefined
|
|
8993
|
+
}), "warning");
|
|
8994
|
+
} else if (options.prefill) {
|
|
8995
|
+
deepLinkBanner = createSystemMessage("Launched with a pre-filled prompt \u2014 review it before pressing Enter.", "warning");
|
|
8996
|
+
}
|
|
8997
|
+
}
|
|
8702
8998
|
const initialMessages = deepLinkBanner ? [deepLinkBanner, ...hookMessages] : hookMessages.length > 0 ? hookMessages : undefined;
|
|
8703
|
-
await launchRepl(root, {
|
|
8704
|
-
getFpsMetrics,
|
|
8705
|
-
stats,
|
|
8706
|
-
initialState
|
|
8707
|
-
}, {
|
|
8999
|
+
await launchRepl(root, { getFpsMetrics, stats, initialState }, {
|
|
8708
9000
|
...sessionConfig,
|
|
8709
9001
|
initialMessages,
|
|
8710
9002
|
pendingHookMessages
|
|
@@ -8720,19 +9012,17 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8720
9012
|
program2.addOption(new Option("--delegate-permissions", "[ANT-ONLY] Alias for --permission-mode auto.").implies({
|
|
8721
9013
|
permissionMode: "auto"
|
|
8722
9014
|
}));
|
|
8723
|
-
program2.addOption(new Option("--dangerously-skip-permissions-with-classifiers", "[ANT-ONLY] Deprecated alias for --permission-mode auto.").hideHelp().implies({
|
|
8724
|
-
|
|
8725
|
-
}));
|
|
8726
|
-
program2.addOption(new Option("--afk", "[ANT-ONLY] Deprecated alias for --permission-mode auto.").hideHelp().implies({
|
|
8727
|
-
permissionMode: "auto"
|
|
8728
|
-
}));
|
|
9015
|
+
program2.addOption(new Option("--dangerously-skip-permissions-with-classifiers", "[ANT-ONLY] Deprecated alias for --permission-mode auto.").hideHelp().implies({ permissionMode: "auto" }));
|
|
9016
|
+
program2.addOption(new Option("--afk", "[ANT-ONLY] Deprecated alias for --permission-mode auto.").hideHelp().implies({ permissionMode: "auto" }));
|
|
8729
9017
|
program2.addOption(new Option("--tasks [id]", '[ANT-ONLY] Tasks mode: watch for tasks and auto-process them. Optional id is used as both the task list ID and agent ID (defaults to "tasklist").').argParser(String).hideHelp());
|
|
8730
9018
|
program2.option("--agent-teams", "[ANT-ONLY] Force Claude to use multi-agent mode for solving problems", () => true);
|
|
8731
9019
|
}
|
|
8732
9020
|
if (false) {}
|
|
8733
9021
|
if (false) {}
|
|
8734
9022
|
if (false) {}
|
|
8735
|
-
if (
|
|
9023
|
+
if (true) {
|
|
9024
|
+
program2.addOption(new Option("--brief", "Enable SendUserMessage tool for agent-to-user communication"));
|
|
9025
|
+
}
|
|
8736
9026
|
if (false) {}
|
|
8737
9027
|
if (false) {}
|
|
8738
9028
|
program2.addOption(new Option("--agent-id <id>", "Teammate agent ID").hideHelp());
|
|
@@ -8762,52 +9052,35 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8762
9052
|
debug,
|
|
8763
9053
|
verbose
|
|
8764
9054
|
}) => {
|
|
8765
|
-
const {
|
|
8766
|
-
|
|
8767
|
-
} = await import("./chunk-m23b51r2.js");
|
|
8768
|
-
await mcpServeHandler({
|
|
8769
|
-
debug,
|
|
8770
|
-
verbose
|
|
8771
|
-
});
|
|
9055
|
+
const { mcpServeHandler } = await import("./chunk-gnmdprq3.js");
|
|
9056
|
+
await mcpServeHandler({ debug, verbose });
|
|
8772
9057
|
});
|
|
8773
9058
|
registerMcpAddCommand(mcp);
|
|
8774
9059
|
if (isXaaEnabled()) {
|
|
8775
9060
|
registerMcpXaaIdpCommand(mcp);
|
|
8776
9061
|
}
|
|
8777
9062
|
mcp.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>", "Configuration scope (local, user, or project) - if not specified, removes from whichever scope it exists in").action(async (name, options) => {
|
|
8778
|
-
const {
|
|
8779
|
-
mcpRemoveHandler
|
|
8780
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9063
|
+
const { mcpRemoveHandler } = await import("./chunk-gnmdprq3.js");
|
|
8781
9064
|
await mcpRemoveHandler(name, options);
|
|
8782
9065
|
});
|
|
8783
9066
|
mcp.command("list").description("List configured MCP servers. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async () => {
|
|
8784
|
-
const {
|
|
8785
|
-
mcpListHandler
|
|
8786
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9067
|
+
const { mcpListHandler } = await import("./chunk-gnmdprq3.js");
|
|
8787
9068
|
await mcpListHandler();
|
|
8788
9069
|
});
|
|
8789
9070
|
mcp.command("get <name>").description("Get details about an MCP server. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async (name) => {
|
|
8790
|
-
const {
|
|
8791
|
-
mcpGetHandler
|
|
8792
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9071
|
+
const { mcpGetHandler } = await import("./chunk-gnmdprq3.js");
|
|
8793
9072
|
await mcpGetHandler(name);
|
|
8794
9073
|
});
|
|
8795
9074
|
mcp.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>", "Configuration scope (local, user, or project)", "local").option("--client-secret", "Prompt for OAuth client secret (or set MCP_CLIENT_SECRET env var)").action(async (name, json, options) => {
|
|
8796
|
-
const {
|
|
8797
|
-
mcpAddJsonHandler
|
|
8798
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9075
|
+
const { mcpAddJsonHandler } = await import("./chunk-gnmdprq3.js");
|
|
8799
9076
|
await mcpAddJsonHandler(name, json, options);
|
|
8800
9077
|
});
|
|
8801
9078
|
mcp.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop (Mac and WSL only)").option("-s, --scope <scope>", "Configuration scope (local, user, or project)", "local").action(async (options) => {
|
|
8802
|
-
const {
|
|
8803
|
-
mcpAddFromDesktopHandler
|
|
8804
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9079
|
+
const { mcpAddFromDesktopHandler } = await import("./chunk-gnmdprq3.js");
|
|
8805
9080
|
await mcpAddFromDesktopHandler(options);
|
|
8806
9081
|
});
|
|
8807
9082
|
mcp.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async () => {
|
|
8808
|
-
const {
|
|
8809
|
-
mcpResetChoicesHandler
|
|
8810
|
-
} = await import("./chunk-m23b51r2.js");
|
|
9083
|
+
const { mcpResetChoicesHandler } = await import("./chunk-gnmdprq3.js");
|
|
8811
9084
|
await mcpResetChoicesHandler();
|
|
8812
9085
|
});
|
|
8813
9086
|
if (false) {}
|
|
@@ -8820,110 +9093,74 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8820
9093
|
console: useConsole,
|
|
8821
9094
|
claudeai
|
|
8822
9095
|
}) => {
|
|
8823
|
-
const {
|
|
8824
|
-
|
|
8825
|
-
} = await import("./chunk-dy3tzxgq.js");
|
|
8826
|
-
await authLogin({
|
|
8827
|
-
email,
|
|
8828
|
-
sso,
|
|
8829
|
-
console: useConsole,
|
|
8830
|
-
claudeai
|
|
8831
|
-
});
|
|
9096
|
+
const { authLogin } = await import("./chunk-rp568bfw.js");
|
|
9097
|
+
await authLogin({ email, sso, console: useConsole, claudeai });
|
|
8832
9098
|
});
|
|
8833
9099
|
auth.command("status").description("Show authentication status").option("--json", "Output as JSON (default)").option("--text", "Output as human-readable text").action(async (opts) => {
|
|
8834
|
-
const {
|
|
8835
|
-
authStatus
|
|
8836
|
-
} = await import("./chunk-dy3tzxgq.js");
|
|
9100
|
+
const { authStatus } = await import("./chunk-rp568bfw.js");
|
|
8837
9101
|
await authStatus(opts);
|
|
8838
9102
|
});
|
|
8839
9103
|
auth.command("logout").description("Log out from your Anthropic account").action(async () => {
|
|
8840
|
-
const {
|
|
8841
|
-
authLogout
|
|
8842
|
-
} = await import("./chunk-dy3tzxgq.js");
|
|
9104
|
+
const { authLogout } = await import("./chunk-rp568bfw.js");
|
|
8843
9105
|
await authLogout();
|
|
8844
9106
|
});
|
|
8845
9107
|
const coworkOption = () => new Option("--cowork", "Use cowork_plugins directory").hideHelp();
|
|
8846
9108
|
const pluginCmd = program2.command("plugin").alias("plugins").description("Manage Claude Code plugins").configureHelp(createSortedHelpConfig());
|
|
8847
9109
|
pluginCmd.command("validate <path>").description("Validate a plugin or marketplace manifest").addOption(coworkOption()).action(async (manifestPath, options) => {
|
|
8848
|
-
const {
|
|
8849
|
-
pluginValidateHandler
|
|
8850
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9110
|
+
const { pluginValidateHandler } = await import("./chunk-zptcqa7t.js");
|
|
8851
9111
|
await pluginValidateHandler(manifestPath, options);
|
|
8852
9112
|
});
|
|
8853
9113
|
pluginCmd.command("list").description("List installed plugins").option("--json", "Output as JSON").option("--available", "Include available plugins from marketplaces (requires --json)").addOption(coworkOption()).action(async (options) => {
|
|
8854
|
-
const {
|
|
8855
|
-
pluginListHandler
|
|
8856
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9114
|
+
const { pluginListHandler } = await import("./chunk-zptcqa7t.js");
|
|
8857
9115
|
await pluginListHandler(options);
|
|
8858
9116
|
});
|
|
8859
9117
|
const marketplaceCmd = pluginCmd.command("marketplace").description("Manage Claude Code marketplaces").configureHelp(createSortedHelpConfig());
|
|
8860
9118
|
marketplaceCmd.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").addOption(coworkOption()).option("--sparse <paths...>", "Limit checkout to specific directories via git sparse-checkout (for monorepos). Example: --sparse .claude-plugin plugins").option("--scope <scope>", "Where to declare the marketplace: user (default), project, or local").action(async (source, options) => {
|
|
8861
|
-
const {
|
|
8862
|
-
marketplaceAddHandler
|
|
8863
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9119
|
+
const { marketplaceAddHandler } = await import("./chunk-zptcqa7t.js");
|
|
8864
9120
|
await marketplaceAddHandler(source, options);
|
|
8865
9121
|
});
|
|
8866
9122
|
marketplaceCmd.command("list").description("List all configured marketplaces").option("--json", "Output as JSON").addOption(coworkOption()).action(async (options) => {
|
|
8867
|
-
const {
|
|
8868
|
-
marketplaceListHandler
|
|
8869
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9123
|
+
const { marketplaceListHandler } = await import("./chunk-zptcqa7t.js");
|
|
8870
9124
|
await marketplaceListHandler(options);
|
|
8871
9125
|
});
|
|
8872
9126
|
marketplaceCmd.command("remove <name>").alias("rm").description("Remove a configured marketplace").addOption(coworkOption()).action(async (name, options) => {
|
|
8873
|
-
const {
|
|
8874
|
-
marketplaceRemoveHandler
|
|
8875
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9127
|
+
const { marketplaceRemoveHandler } = await import("./chunk-zptcqa7t.js");
|
|
8876
9128
|
await marketplaceRemoveHandler(name, options);
|
|
8877
9129
|
});
|
|
8878
9130
|
marketplaceCmd.command("update [name]").description("Update marketplace(s) from their source - updates all if no name specified").addOption(coworkOption()).action(async (name, options) => {
|
|
8879
|
-
const {
|
|
8880
|
-
marketplaceUpdateHandler
|
|
8881
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9131
|
+
const { marketplaceUpdateHandler } = await import("./chunk-zptcqa7t.js");
|
|
8882
9132
|
await marketplaceUpdateHandler(name, options);
|
|
8883
9133
|
});
|
|
8884
9134
|
pluginCmd.command("install <plugin>").alias("i").description("Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)").option("-s, --scope <scope>", "Installation scope: user, project, or local", "user").addOption(coworkOption()).action(async (plugin, options) => {
|
|
8885
|
-
const {
|
|
8886
|
-
pluginInstallHandler
|
|
8887
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9135
|
+
const { pluginInstallHandler } = await import("./chunk-zptcqa7t.js");
|
|
8888
9136
|
await pluginInstallHandler(plugin, options);
|
|
8889
9137
|
});
|
|
8890
9138
|
pluginCmd.command("uninstall <plugin>").alias("remove").alias("rm").description("Uninstall an installed plugin").option("-s, --scope <scope>", "Uninstall from scope: user, project, or local", "user").option("--keep-data", "Preserve the plugin's persistent data directory (~/.claude/plugins/data/{id}/)").addOption(coworkOption()).action(async (plugin, options) => {
|
|
8891
|
-
const {
|
|
8892
|
-
pluginUninstallHandler
|
|
8893
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9139
|
+
const { pluginUninstallHandler } = await import("./chunk-zptcqa7t.js");
|
|
8894
9140
|
await pluginUninstallHandler(plugin, options);
|
|
8895
9141
|
});
|
|
8896
9142
|
pluginCmd.command("enable <plugin>").description("Enable a disabled plugin").option("-s, --scope <scope>", `Installation scope: ${VALID_INSTALLABLE_SCOPES.join(", ")} (default: auto-detect)`).addOption(coworkOption()).action(async (plugin, options) => {
|
|
8897
|
-
const {
|
|
8898
|
-
pluginEnableHandler
|
|
8899
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9143
|
+
const { pluginEnableHandler } = await import("./chunk-zptcqa7t.js");
|
|
8900
9144
|
await pluginEnableHandler(plugin, options);
|
|
8901
9145
|
});
|
|
8902
9146
|
pluginCmd.command("disable [plugin]").description("Disable an enabled plugin").option("-a, --all", "Disable all enabled plugins").option("-s, --scope <scope>", `Installation scope: ${VALID_INSTALLABLE_SCOPES.join(", ")} (default: auto-detect)`).addOption(coworkOption()).action(async (plugin, options) => {
|
|
8903
|
-
const {
|
|
8904
|
-
pluginDisableHandler
|
|
8905
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9147
|
+
const { pluginDisableHandler } = await import("./chunk-zptcqa7t.js");
|
|
8906
9148
|
await pluginDisableHandler(plugin, options);
|
|
8907
9149
|
});
|
|
8908
9150
|
pluginCmd.command("update <plugin>").description("Update a plugin to the latest version (restart required to apply)").option("-s, --scope <scope>", `Installation scope: ${VALID_UPDATE_SCOPES.join(", ")} (default: user)`).addOption(coworkOption()).action(async (plugin, options) => {
|
|
8909
|
-
const {
|
|
8910
|
-
pluginUpdateHandler
|
|
8911
|
-
} = await import("./chunk-2mcrd0rj.js");
|
|
9151
|
+
const { pluginUpdateHandler } = await import("./chunk-zptcqa7t.js");
|
|
8912
9152
|
await pluginUpdateHandler(plugin, options);
|
|
8913
9153
|
});
|
|
8914
9154
|
program2.command("setup-token").description("Set up a long-lived authentication token (requires Claude subscription)").action(async () => {
|
|
8915
|
-
const [{
|
|
8916
|
-
|
|
8917
|
-
|
|
8918
|
-
|
|
8919
|
-
}] = await Promise.all([import("./chunk-gkrx7ptx.js"), import("./chunk-5t59fqg3.js")]);
|
|
9155
|
+
const [{ setupTokenHandler }, { createRoot }] = await Promise.all([
|
|
9156
|
+
import("./chunk-548g1d6z.js"),
|
|
9157
|
+
import("./chunk-cqjmxeqv.js")
|
|
9158
|
+
]);
|
|
8920
9159
|
const root = await createRoot(getBaseRenderOptions(false));
|
|
8921
9160
|
await setupTokenHandler(root);
|
|
8922
9161
|
});
|
|
8923
9162
|
program2.command("agents").description("List configured agents").option("--setting-sources <sources>", "Comma-separated list of setting sources to load (user, project, local).").action(async () => {
|
|
8924
|
-
const {
|
|
8925
|
-
agentsHandler
|
|
8926
|
-
} = await import("./chunk-g6e1ab2k.js");
|
|
9163
|
+
const { agentsHandler } = await import("./chunk-7f1ggjr2.js");
|
|
8927
9164
|
await agentsHandler();
|
|
8928
9165
|
process.exit(0);
|
|
8929
9166
|
});
|
|
@@ -8931,25 +9168,16 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
8931
9168
|
if (false) {}
|
|
8932
9169
|
if (false) {}
|
|
8933
9170
|
program2.command("doctor").description("Check the health of your Claude Code auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async () => {
|
|
8934
|
-
const [{
|
|
8935
|
-
|
|
8936
|
-
|
|
8937
|
-
|
|
8938
|
-
}] = await Promise.all([import("./chunk-gkrx7ptx.js"), import("./chunk-5t59fqg3.js")]);
|
|
9171
|
+
const [{ doctorHandler }, { createRoot }] = await Promise.all([
|
|
9172
|
+
import("./chunk-548g1d6z.js"),
|
|
9173
|
+
import("./chunk-cqjmxeqv.js")
|
|
9174
|
+
]);
|
|
8939
9175
|
const root = await createRoot(getBaseRenderOptions(false));
|
|
8940
9176
|
await doctorHandler(root);
|
|
8941
9177
|
});
|
|
8942
|
-
program2.command("update").alias("upgrade").description("Check for updates and install if available").action(async () => {
|
|
8943
|
-
const {
|
|
8944
|
-
update
|
|
8945
|
-
} = await import("./chunk-ftrm87vt.js");
|
|
8946
|
-
await update();
|
|
8947
|
-
});
|
|
8948
9178
|
if (process.env.USER_TYPE === "ant") {
|
|
8949
9179
|
program2.command("up").description('[ANT-ONLY] Initialize or upgrade the local dev environment using the "# claude up" section of the nearest CLAUDE.md').action(async () => {
|
|
8950
|
-
const {
|
|
8951
|
-
up
|
|
8952
|
-
} = await import("./chunk-ppwjyveh.js");
|
|
9180
|
+
const { up } = await import("./chunk-ppwjyveh.js");
|
|
8953
9181
|
await up();
|
|
8954
9182
|
});
|
|
8955
9183
|
}
|
|
@@ -8960,16 +9188,12 @@ Examples:
|
|
|
8960
9188
|
claude rollback Go 1 version back from current
|
|
8961
9189
|
claude rollback 3 Go 3 versions back from current
|
|
8962
9190
|
claude rollback 2.0.73-dev.20251217.t190658 Roll back to a specific version`).option("-l, --list", "List recent published versions with ages").option("--dry-run", "Show what would be installed without installing").option("--safe", "Roll back to the server-pinned safe version (set by oncall during incidents)").action(async (target, options) => {
|
|
8963
|
-
const {
|
|
8964
|
-
rollback
|
|
8965
|
-
} = await import("./chunk-x6r4v44b.js");
|
|
9191
|
+
const { rollback } = await import("./chunk-x6r4v44b.js");
|
|
8966
9192
|
await rollback(target, options);
|
|
8967
9193
|
});
|
|
8968
9194
|
}
|
|
8969
9195
|
program2.command("install [target]").description("Install Claude Code native build. Use [target] to specify version (stable, latest, or specific version)").option("--force", "Force installation even if already installed").action(async (target, options) => {
|
|
8970
|
-
const {
|
|
8971
|
-
installHandler
|
|
8972
|
-
} = await import("./chunk-gkrx7ptx.js");
|
|
9196
|
+
const { installHandler } = await import("./chunk-548g1d6z.js");
|
|
8973
9197
|
await installHandler(target, options);
|
|
8974
9198
|
});
|
|
8975
9199
|
if (process.env.USER_TYPE === "ant") {
|
|
@@ -8980,15 +9204,11 @@ Examples:
|
|
|
8980
9204
|
return Number(value);
|
|
8981
9205
|
};
|
|
8982
9206
|
program2.command("log").description("[ANT-ONLY] Manage conversation logs.").argument("[number|sessionId]", "A number (0, 1, 2, etc.) to display a specific log, or the sesssion ID (uuid) of a log", validateLogId).action(async (logId) => {
|
|
8983
|
-
const {
|
|
8984
|
-
logHandler
|
|
8985
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9207
|
+
const { logHandler } = await import("./chunk-2fwze72g.js");
|
|
8986
9208
|
await logHandler(logId);
|
|
8987
9209
|
});
|
|
8988
9210
|
program2.command("error").description("[ANT-ONLY] View error logs. Optionally provide a number (0, -1, -2, etc.) to display a specific log.").argument("[number]", "A number (0, 1, 2, etc.) to display a specific log", parseInt).action(async (number) => {
|
|
8989
|
-
const {
|
|
8990
|
-
errorHandler
|
|
8991
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9211
|
+
const { errorHandler } = await import("./chunk-2fwze72g.js");
|
|
8992
9212
|
await errorHandler(number);
|
|
8993
9213
|
});
|
|
8994
9214
|
program2.command("export").description("[ANT-ONLY] Export a conversation to a text file.").usage("<source> <outputFile>").argument("<source>", "Session ID, log index (0, 1, 2...), or path to a .json/.jsonl log file").argument("<outputFile>", "Output file path for the exported text").addHelpText("after", `
|
|
@@ -8997,50 +9217,34 @@ Examples:
|
|
|
8997
9217
|
$ claude export <uuid> conversation.txt Export conversation by session ID
|
|
8998
9218
|
$ claude export input.json output.txt Render JSON log file to text
|
|
8999
9219
|
$ claude export <uuid>.jsonl output.txt Render JSONL session file to text`).action(async (source, outputFile) => {
|
|
9000
|
-
const {
|
|
9001
|
-
exportHandler
|
|
9002
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9220
|
+
const { exportHandler } = await import("./chunk-2fwze72g.js");
|
|
9003
9221
|
await exportHandler(source, outputFile);
|
|
9004
9222
|
});
|
|
9005
9223
|
if (process.env.USER_TYPE === "ant") {
|
|
9006
9224
|
const taskCmd = program2.command("task").description("[ANT-ONLY] Manage task list tasks");
|
|
9007
9225
|
taskCmd.command("create <subject>").description("Create a new task").option("-d, --description <text>", "Task description").option("-l, --list <id>", 'Task list ID (defaults to "tasklist")').action(async (subject, opts) => {
|
|
9008
|
-
const {
|
|
9009
|
-
taskCreateHandler
|
|
9010
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9226
|
+
const { taskCreateHandler } = await import("./chunk-2fwze72g.js");
|
|
9011
9227
|
await taskCreateHandler(subject, opts);
|
|
9012
9228
|
});
|
|
9013
9229
|
taskCmd.command("list").description("List all tasks").option("-l, --list <id>", 'Task list ID (defaults to "tasklist")').option("--pending", "Show only pending tasks").option("--json", "Output as JSON").action(async (opts) => {
|
|
9014
|
-
const {
|
|
9015
|
-
taskListHandler
|
|
9016
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9230
|
+
const { taskListHandler } = await import("./chunk-2fwze72g.js");
|
|
9017
9231
|
await taskListHandler(opts);
|
|
9018
9232
|
});
|
|
9019
9233
|
taskCmd.command("get <id>").description("Get details of a task").option("-l, --list <id>", 'Task list ID (defaults to "tasklist")').action(async (id, opts) => {
|
|
9020
|
-
const {
|
|
9021
|
-
taskGetHandler
|
|
9022
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9234
|
+
const { taskGetHandler } = await import("./chunk-2fwze72g.js");
|
|
9023
9235
|
await taskGetHandler(id, opts);
|
|
9024
9236
|
});
|
|
9025
9237
|
taskCmd.command("update <id>").description("Update a task").option("-l, --list <id>", 'Task list ID (defaults to "tasklist")').option("-s, --status <status>", `Set status (${TASK_STATUSES.join(", ")})`).option("--subject <text>", "Update subject").option("-d, --description <text>", "Update description").option("--owner <agentId>", "Set owner").option("--clear-owner", "Clear owner").action(async (id, opts) => {
|
|
9026
|
-
const {
|
|
9027
|
-
taskUpdateHandler
|
|
9028
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9238
|
+
const { taskUpdateHandler } = await import("./chunk-2fwze72g.js");
|
|
9029
9239
|
await taskUpdateHandler(id, opts);
|
|
9030
9240
|
});
|
|
9031
9241
|
taskCmd.command("dir").description("Show the tasks directory path").option("-l, --list <id>", 'Task list ID (defaults to "tasklist")').action(async (opts) => {
|
|
9032
|
-
const {
|
|
9033
|
-
taskDirHandler
|
|
9034
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9242
|
+
const { taskDirHandler } = await import("./chunk-2fwze72g.js");
|
|
9035
9243
|
await taskDirHandler(opts);
|
|
9036
9244
|
});
|
|
9037
9245
|
}
|
|
9038
|
-
program2.command("completion <shell>", {
|
|
9039
|
-
|
|
9040
|
-
}).description("Generate shell completion script (bash, zsh, or fish)").option("--output <file>", "Write completion script directly to a file instead of stdout").action(async (shell, opts) => {
|
|
9041
|
-
const {
|
|
9042
|
-
completionHandler
|
|
9043
|
-
} = await import("./chunk-2fwze72g.js");
|
|
9246
|
+
program2.command("completion <shell>", { hidden: true }).description("Generate shell completion script (bash, zsh, or fish)").option("--output <file>", "Write completion script directly to a file instead of stdout").action(async (shell, opts) => {
|
|
9247
|
+
const { completionHandler } = await import("./chunk-2fwze72g.js");
|
|
9044
9248
|
await completionHandler(shell, opts, program2);
|
|
9045
9249
|
});
|
|
9046
9250
|
}
|
|
@@ -9129,15 +9333,13 @@ function maybeActivateProactive(options) {
|
|
|
9129
9333
|
if (false) {}
|
|
9130
9334
|
}
|
|
9131
9335
|
function maybeActivateBrief(options) {
|
|
9132
|
-
if (
|
|
9133
|
-
|
|
9336
|
+
if (false)
|
|
9337
|
+
;
|
|
9134
9338
|
const briefFlag = options.brief;
|
|
9135
9339
|
const briefEnv = isEnvTruthy(process.env.CLAUDE_CODE_BRIEF);
|
|
9136
9340
|
if (!briefFlag && !briefEnv)
|
|
9137
9341
|
return;
|
|
9138
|
-
const {
|
|
9139
|
-
isBriefEntitled
|
|
9140
|
-
} = (init_BriefTool(), __toCommonJS(exports_BriefTool));
|
|
9342
|
+
const { isBriefEntitled } = (init_BriefTool(), __toCommonJS(exports_BriefTool));
|
|
9141
9343
|
const entitled = isBriefEntitled();
|
|
9142
9344
|
if (entitled) {
|
|
9143
9345
|
setUserMsgOptIn(true);
|