@claudiolabs/claudin 1.1.30 → 1.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/AgentTool-1.1.31-6e06310w.mjs +1 -0
- package/dist/chunks/App-1.1.31-bp57fthj.mjs +1 -0
- package/dist/chunks/ApproveApiKey-1.1.31-ptx7r5x2.mjs +1 -0
- package/dist/chunks/AutoModeOptInDialog-1.1.31-0d22j8k7.mjs +1 -0
- package/dist/chunks/BypassPermissionsModeDialog-1.1.31-v2cfafqt.mjs +1 -0
- package/dist/chunks/ClaudeMdExternalIncludesDialog-1.1.31-a8e8ar2n.mjs +1 -0
- package/dist/chunks/ConsoleOAuthFlow-1.1.31-zq76tmk2.mjs +1 -0
- package/dist/chunks/DiffDialog-1.1.31-r1mknqwv.mjs +6 -0
- package/dist/chunks/Doctor-1.1.31-t4n9k4nc.mjs +1 -0
- package/dist/chunks/ExplorerDialog-1.1.31-41a3c01z.mjs +6 -0
- package/dist/chunks/ITermBackend-1.1.31-y9f8hq45.mjs +1 -0
- package/dist/chunks/InvalidConfigDialog-1.1.31-xpdggxkf.mjs +1 -0
- package/dist/chunks/InvalidSettingsDialog-1.1.31-0bg1r1g6.mjs +1 -0
- package/dist/chunks/MigrationDialog-1.1.31-w8fpbc16.mjs +1 -0
- package/dist/chunks/Onboarding-1.1.31-23zjjspn.mjs +1 -0
- package/dist/chunks/ProviderManager-1.1.31-504qgqkc.mjs +1 -0
- package/dist/chunks/REPL-1.1.31-nyzbwycm.mjs +1 -0
- package/dist/chunks/ResumeConversation-1.1.31-dqkxr7bz.mjs +1 -0
- package/dist/chunks/SnapshotUpdateDialog-1.1.31-htqfbpbp.mjs +1 -0
- package/dist/chunks/TeleportProgress-1.1.31-27h2np2z.mjs +1 -0
- package/dist/chunks/TeleportRepoMismatchDialog-1.1.31-41nwynfk.mjs +1 -0
- package/dist/chunks/TeleportResumeWrapper-1.1.31-ea5827ce.mjs +1 -0
- package/dist/chunks/TmuxBackend-1.1.31-jvrhermf.mjs +9 -0
- package/dist/chunks/ToolSearchTool-1.1.31-c0sya3fj.mjs +1 -0
- package/dist/chunks/TrustDialog-1.1.31-28w5033t.mjs +1 -0
- package/dist/chunks/activeProvider-1.1.31-dbrkwgfw.mjs +1 -0
- package/dist/chunks/add-dir-1.1.31-r6x72g59.mjs +1 -0
- package/dist/chunks/agentTypes-1.1.31-kb6srdzm.mjs +1 -0
- package/dist/chunks/agents-1.1.31-1jetdejb.mjs +110 -0
- package/dist/chunks/agents-1.1.31-mfr4h93c.mjs +3 -0
- package/dist/chunks/api-1.1.31-hp3y91t9.mjs +1 -0
- package/dist/chunks/asciicast-1.1.31-t0xrwnqn.mjs +1 -0
- package/dist/chunks/auth-1.1.31-76rswxwe.mjs +1 -0
- package/dist/chunks/auth-1.1.31-yhv86kw0.mjs +1 -0
- package/dist/chunks/autoMode-1.1.31-qma18egk.mjs +52 -0
- package/dist/chunks/autoModeSetup-1.1.31-egrmqsva.mjs +44 -0
- package/dist/chunks/autoUpdater-1.1.31-417m125q.mjs +1 -0
- package/dist/chunks/backgroundHousekeeping-1.1.31-e5emh88x.mjs +1 -0
- package/dist/chunks/branch-1.1.31-bxrg1svq.mjs +4 -0
- package/dist/chunks/bridge-1.1.31-1rsj352r.mjs +2 -0
- package/dist/chunks/bridgeConfig-1.1.31-r9vnvw71.mjs +1 -0
- package/dist/chunks/bridgeEnabled-1.1.31-d9mxn4g0.mjs +1 -0
- package/dist/chunks/bridgeMain-1.1.31-7sf093b0.mjs +88 -0
- package/dist/chunks/bridgePointer-1.1.31-n1t53nem.mjs +1 -0
- package/dist/chunks/btw-1.1.31-skw1dhb5.mjs +1 -0
- package/dist/chunks/buddy-1.1.31-wtmggn5p.mjs +3 -0
- package/dist/chunks/cache-probe-1.1.31-pgss169p.mjs +21 -0
- package/dist/chunks/cacheStats-1.1.31-af3nkg2b.mjs +4 -0
- package/dist/chunks/caches-1.1.31-yvqtsfx3.mjs +1 -0
- package/dist/chunks/cd-1.1.31-9t47yj0z.mjs +3 -0
- package/dist/chunks/claudeDesktop-1.1.31-b7a99nfq.mjs +1 -0
- package/dist/chunks/claudemd-1.1.31-h72v8r12.mjs +1 -0
- package/dist/chunks/clear-1.1.31-ndp0q9t9.mjs +1 -0
- package/dist/chunks/clearTerminal-1.1.31-d6d2q7kn.mjs +1 -0
- package/dist/chunks/cli-1.1.31-03xjvk1e.mjs +3 -0
- package/dist/chunks/cli-1.1.31-0fnqd3bq.mjs +25 -0
- package/dist/chunks/cli-1.1.31-0mmyq6jx.mjs +2 -0
- package/dist/chunks/cli-1.1.31-0yagz4xw.mjs +2 -0
- package/dist/chunks/cli-1.1.31-1192t9cm.mjs +2 -0
- package/dist/chunks/cli-1.1.31-13cx7z8n.mjs +60 -0
- package/dist/chunks/cli-1.1.31-1dv9ay7v.mjs +2 -0
- package/dist/chunks/cli-1.1.31-1q4btmra.mjs +2 -0
- package/dist/chunks/cli-1.1.31-1qw0s3a8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-1wxttnqr.mjs +2 -0
- package/dist/chunks/cli-1.1.31-2csxt0x3.mjs +2 -0
- package/dist/chunks/cli-1.1.31-2ffqcy85.mjs +2 -0
- package/dist/chunks/cli-1.1.31-2j93x895.mjs +24 -0
- package/dist/chunks/cli-1.1.31-2mfapzkq.mjs +2 -0
- package/dist/chunks/cli-1.1.31-2pdbmb7w.mjs +3 -0
- package/dist/chunks/cli-1.1.31-2zvm1tgs.mjs +2 -0
- package/dist/chunks/cli-1.1.31-312b3zf6.mjs +2 -0
- package/dist/chunks/cli-1.1.31-32mahfs2.mjs +2 -0
- package/dist/chunks/cli-1.1.31-3dy87m85.mjs +2 -0
- package/dist/chunks/cli-1.1.31-3ehzwm1n.mjs +2 -0
- package/dist/chunks/cli-1.1.31-3jzsv5dy.mjs +2 -0
- package/dist/chunks/cli-1.1.31-3s51hvv0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-3zy5yd1t.mjs +133 -0
- package/dist/chunks/cli-1.1.31-44jshpbd.mjs +2 -0
- package/dist/chunks/cli-1.1.31-4awnya8e.mjs +2 -0
- package/dist/chunks/cli-1.1.31-4cp1xkaj.mjs +2 -0
- package/dist/chunks/cli-1.1.31-4ja5kbt5.mjs +4 -0
- package/dist/chunks/cli-1.1.31-4tneme0y.mjs +2 -0
- package/dist/chunks/cli-1.1.31-528vtf9a.mjs +2 -0
- package/dist/chunks/cli-1.1.31-52wt9w8w.mjs +15 -0
- package/dist/chunks/cli-1.1.31-556xnzb4.mjs +2 -0
- package/dist/chunks/cli-1.1.31-562nqgh7.mjs +2 -0
- package/dist/chunks/cli-1.1.31-58anwssk.mjs +2 -0
- package/dist/chunks/cli-1.1.31-5ab9cpbt.mjs +3 -0
- package/dist/chunks/cli-1.1.31-5kgkq6vm.mjs +2 -0
- package/dist/chunks/cli-1.1.31-5ma2m26d.mjs +2 -0
- package/dist/chunks/cli-1.1.31-5tgfa7xy.mjs +2 -0
- package/dist/chunks/cli-1.1.31-5xd2j6e7.mjs +2 -0
- package/dist/chunks/cli-1.1.31-612bpjx6.mjs +2 -0
- package/dist/chunks/cli-1.1.31-619zan4w.mjs +2 -0
- package/dist/chunks/cli-1.1.31-6m1k9909.mjs +2 -0
- package/dist/chunks/cli-1.1.31-6pxakyvg.mjs +2 -0
- package/dist/chunks/cli-1.1.31-6qm466ss.mjs +2 -0
- package/dist/chunks/cli-1.1.31-706cv7fx.mjs +2 -0
- package/dist/chunks/cli-1.1.31-7692zxpg.mjs +2 -0
- package/dist/chunks/cli-1.1.31-774jqp88.mjs +2 -0
- package/dist/chunks/cli-1.1.31-777381m0.mjs +34 -0
- package/dist/chunks/cli-1.1.31-7hmq6k3a.mjs +26 -0
- package/dist/chunks/cli-1.1.31-7wdp9ve5.mjs +3 -0
- package/dist/chunks/cli-1.1.31-8bcb1d1y.mjs +2 -0
- package/dist/chunks/cli-1.1.31-8esfq0f2.mjs +2 -0
- package/dist/chunks/cli-1.1.31-8h9zps1d.mjs +2 -0
- package/dist/chunks/cli-1.1.31-8sw4prf8.mjs +22 -0
- package/dist/chunks/cli-1.1.31-8syj0cmx.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9493f46x.mjs +9 -0
- package/dist/chunks/cli-1.1.31-978dpg39.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9a1gsrx2.mjs +24 -0
- package/dist/chunks/cli-1.1.31-9adq5rjd.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9d5v98td.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9e4vtbvh.mjs +3 -0
- package/dist/chunks/cli-1.1.31-9efpx64n.mjs +20 -0
- package/dist/chunks/cli-1.1.31-9gf60j86.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9gzbwjb8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9m6ef5kb.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9m6gmh2w.mjs +2 -0
- package/dist/chunks/cli-1.1.31-9x9gaa7g.mjs +2 -0
- package/dist/chunks/cli-1.1.31-a4vvez04.mjs +2 -0
- package/dist/chunks/cli-1.1.31-a5wav9hq.mjs +2 -0
- package/dist/chunks/cli-1.1.31-a611zwj5.mjs +10 -0
- package/dist/chunks/cli-1.1.31-adnn5x8c.mjs +16 -0
- package/dist/chunks/cli-1.1.31-afzdmcrq.mjs +2 -0
- package/dist/chunks/cli-1.1.31-ahbyaapz.mjs +12 -0
- package/dist/chunks/cli-1.1.31-aqm3wayg.mjs +2 -0
- package/dist/chunks/cli-1.1.31-b2pt6rsc.mjs +2 -0
- package/dist/chunks/cli-1.1.31-b7258j1y.mjs +2 -0
- package/dist/chunks/cli-1.1.31-b8rbgfhm.mjs +2 -0
- package/dist/chunks/cli-1.1.31-bdt0j0zj.mjs +4 -0
- package/dist/chunks/cli-1.1.31-bfsa3dvr.mjs +2 -0
- package/dist/chunks/cli-1.1.31-bx3e5rv6.mjs +3 -0
- package/dist/chunks/cli-1.1.31-c17g88x0.mjs +9 -0
- package/dist/chunks/cli-1.1.31-c9707zjx.mjs +63 -0
- package/dist/chunks/cli-1.1.31-can8wyac.mjs +2 -0
- package/dist/chunks/cli-1.1.31-cpay8r5h.mjs +2 -0
- package/dist/chunks/cli-1.1.31-cpeph4zm.mjs +6 -0
- package/dist/chunks/cli-1.1.31-d9sxj86f.mjs +2 -0
- package/dist/chunks/cli-1.1.31-dc4fq4s3.mjs +2 -0
- package/dist/chunks/cli-1.1.31-dctwr6q4.mjs +5 -0
- package/dist/chunks/cli-1.1.31-dcyx3536.mjs +39 -0
- package/dist/chunks/cli-1.1.31-dhecyw04.mjs +3 -0
- package/dist/chunks/cli-1.1.31-dmghye74.mjs +4 -0
- package/dist/chunks/cli-1.1.31-ek449yjc.mjs +6 -0
- package/dist/chunks/cli-1.1.31-emhqeb1g.mjs +2 -0
- package/dist/chunks/cli-1.1.31-eqfmzrxc.mjs +2 -0
- package/dist/chunks/cli-1.1.31-eqvc58gw.mjs +2 -0
- package/dist/chunks/cli-1.1.31-ewhwdszf.mjs +2 -0
- package/dist/chunks/cli-1.1.31-f1zfyp44.mjs +2 -0
- package/dist/chunks/cli-1.1.31-f2abkvxa.mjs +4 -0
- package/dist/chunks/cli-1.1.31-fbdr0297.mjs +2 -0
- package/dist/chunks/cli-1.1.31-fdjs93ba.mjs +2 -0
- package/dist/chunks/cli-1.1.31-fdk7yhs0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-fjdb444f.mjs +7 -0
- package/dist/chunks/cli-1.1.31-fk787pkf.mjs +15 -0
- package/dist/chunks/cli-1.1.31-fpqqpyrw.mjs +3 -0
- package/dist/chunks/cli-1.1.31-fr8t4a7n.mjs +2 -0
- package/dist/chunks/cli-1.1.31-fy2x8k7r.mjs +2 -0
- package/dist/chunks/cli-1.1.31-g41zancj.mjs +3 -0
- package/dist/chunks/cli-1.1.31-g58b1jfa.mjs +5473 -0
- package/dist/chunks/cli-1.1.31-ggtvemxf.mjs +2 -0
- package/dist/chunks/cli-1.1.31-gk7te1jt.mjs +2 -0
- package/dist/chunks/cli-1.1.31-gq54djk0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-h102y1at.mjs +8 -0
- package/dist/chunks/cli-1.1.31-h1sv3apa.mjs +4 -0
- package/dist/chunks/cli-1.1.31-h41m4yrw.mjs +2 -0
- package/dist/chunks/cli-1.1.31-h5a78vp8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-hfdt80w2.mjs +50 -0
- package/dist/chunks/cli-1.1.31-hk88wxhm.mjs +2 -0
- package/dist/chunks/cli-1.1.31-hpxjvh3j.mjs +3 -0
- package/dist/chunks/cli-1.1.31-hvnwvzhh.mjs +58 -0
- package/dist/chunks/cli-1.1.31-j0fbn8aw.mjs +2 -0
- package/dist/chunks/cli-1.1.31-jfj1gvgy.mjs +2 -0
- package/dist/chunks/cli-1.1.31-jh2sb5nk.mjs +42 -0
- package/dist/chunks/cli-1.1.31-jnyr50hq.mjs +2 -0
- package/dist/chunks/cli-1.1.31-jwa8f70w.mjs +2 -0
- package/dist/chunks/cli-1.1.31-jyzz7q1c.mjs +2 -0
- package/dist/chunks/cli-1.1.31-k0zfy1nt.mjs +2 -0
- package/dist/chunks/cli-1.1.31-kfw3q4sp.mjs +133 -0
- package/dist/chunks/cli-1.1.31-kp8hq72m.mjs +2 -0
- package/dist/chunks/cli-1.1.31-kzh4darh.mjs +2 -0
- package/dist/chunks/cli-1.1.31-m5w2d13z.mjs +2 -0
- package/dist/chunks/cli-1.1.31-m9yqg6jg.mjs +2 -0
- package/dist/chunks/cli-1.1.31-mcekc48f.mjs +2 -0
- package/dist/chunks/cli-1.1.31-mtcbc6g3.mjs +4 -0
- package/dist/chunks/cli-1.1.31-n130x03f.mjs +2 -0
- package/dist/chunks/cli-1.1.31-n305h9qd.mjs +25 -0
- package/dist/chunks/cli-1.1.31-n4g6s1bz.mjs +2 -0
- package/dist/chunks/cli-1.1.31-n5vytp0f.mjs +2 -0
- package/dist/chunks/cli-1.1.31-nh2cfavp.mjs +2 -0
- package/dist/chunks/cli-1.1.31-njfyxwfr.mjs +2 -0
- package/dist/chunks/cli-1.1.31-nvecb8c6.mjs +2 -0
- package/dist/chunks/cli-1.1.31-nyvjx813.mjs +24 -0
- package/dist/chunks/cli-1.1.31-nyvz0ev8.mjs +5 -0
- package/dist/chunks/cli-1.1.31-p99fz46k.mjs +206 -0
- package/dist/chunks/cli-1.1.31-pb50hb6v.mjs +12 -0
- package/dist/chunks/cli-1.1.31-pg2ntz9b.mjs +17 -0
- package/dist/chunks/cli-1.1.31-pgde5349.mjs +2 -0
- package/dist/chunks/cli-1.1.31-pp98t7k8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-ptvddvjv.mjs +2 -0
- package/dist/chunks/cli-1.1.31-pzz7j17y.mjs +3 -0
- package/dist/chunks/cli-1.1.31-q67trvk0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-q6k8ems6.mjs +21 -0
- package/dist/chunks/cli-1.1.31-qj8vksz8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-qq0sng13.mjs +2 -0
- package/dist/chunks/cli-1.1.31-qsftejzk.mjs +2 -0
- package/dist/chunks/cli-1.1.31-qv6x2hht.mjs +2 -0
- package/dist/chunks/cli-1.1.31-qyztdyg2.mjs +2 -0
- package/dist/chunks/cli-1.1.31-r5g0ns02.mjs +2 -0
- package/dist/chunks/cli-1.1.31-r7jps0tn.mjs +3 -0
- package/dist/chunks/cli-1.1.31-rqyqyvdn.mjs +2 -0
- package/dist/chunks/cli-1.1.31-rspa4dsq.mjs +6 -0
- package/dist/chunks/cli-1.1.31-rw3xn3tc.mjs +4 -0
- package/dist/chunks/cli-1.1.31-s1a6vw53.mjs +2 -0
- package/dist/chunks/cli-1.1.31-s1vgm3hb.mjs +2 -0
- package/dist/chunks/cli-1.1.31-s246tb6v.mjs +15 -0
- package/dist/chunks/cli-1.1.31-satbt91m.mjs +18 -0
- package/dist/chunks/cli-1.1.31-sc82f8hw.mjs +6 -0
- package/dist/chunks/cli-1.1.31-sn0x975f.mjs +24 -0
- package/dist/chunks/cli-1.1.31-sn2bmgwr.mjs +2 -0
- package/dist/chunks/cli-1.1.31-t2y2tkme.mjs +2 -0
- package/dist/chunks/cli-1.1.31-t6m64e0q.mjs +6 -0
- package/dist/chunks/cli-1.1.31-t96rrv1m.mjs +2 -0
- package/dist/chunks/cli-1.1.31-tc6xppyr.mjs +2 -0
- package/dist/chunks/cli-1.1.31-tctd36c8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-thhdw5e1.mjs +2 -0
- package/dist/chunks/cli-1.1.31-v02fpzs5.mjs +2 -0
- package/dist/chunks/cli-1.1.31-v7nswcm8.mjs +2 -0
- package/dist/chunks/cli-1.1.31-var05xaf.mjs +2 -0
- package/dist/chunks/cli-1.1.31-vbch5rht.mjs +2 -0
- package/dist/chunks/cli-1.1.31-vf004w21.mjs +2 -0
- package/dist/chunks/cli-1.1.31-vhstdnfa.mjs +7 -0
- package/dist/chunks/cli-1.1.31-vphyv007.mjs +2 -0
- package/dist/chunks/cli-1.1.31-vpkbqj90.mjs +4 -0
- package/dist/chunks/cli-1.1.31-vr977n4j.mjs +2 -0
- package/dist/chunks/cli-1.1.31-w0vfcfhs.mjs +2 -0
- package/dist/chunks/cli-1.1.31-w225x38q.mjs +2 -0
- package/dist/chunks/cli-1.1.31-war7w6d7.mjs +2 -0
- package/dist/chunks/cli-1.1.31-wba64b2s.mjs +2 -0
- package/dist/chunks/cli-1.1.31-wfv9e9p4.mjs +2 -0
- package/dist/chunks/cli-1.1.31-wmt8ywr9.mjs +2 -0
- package/dist/chunks/cli-1.1.31-wnpf6e90.mjs +2 -0
- package/dist/chunks/cli-1.1.31-x1wr5k0p.mjs +2 -0
- package/dist/chunks/cli-1.1.31-x96s38b0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-xqdypd2k.mjs +6 -0
- package/dist/chunks/cli-1.1.31-xv09f0k4.mjs +2 -0
- package/dist/chunks/cli-1.1.31-yte5f9f9.mjs +45 -0
- package/dist/chunks/cli-1.1.31-yz72mhbg.mjs +2 -0
- package/dist/chunks/cli-1.1.31-z3s1pnd3.mjs +1 -0
- package/dist/chunks/cli-1.1.31-z6qe8e42.mjs +2 -0
- package/dist/chunks/cli-1.1.31-z7hdz84q.mjs +17 -0
- package/dist/chunks/cli-1.1.31-zsjs5eq0.mjs +2 -0
- package/dist/chunks/cli-1.1.31-zvbpmw2y.mjs +2 -0
- package/dist/chunks/cli-1.1.31-zy7nrvt9.mjs +2 -0
- package/dist/chunks/cli-1.1.31-zzd4cheh.mjs +2 -0
- package/dist/chunks/client-1.1.31-3bn971t2.mjs +1 -0
- package/dist/chunks/color-1.1.31-n3q45hw4.mjs +1 -0
- package/dist/chunks/compact-1.1.31-zkekkcjq.mjs +3 -0
- package/dist/chunks/config-1.1.31-1t6yz96k.mjs +1 -0
- package/dist/chunks/config-1.1.31-enwx50r9.mjs +1 -0
- package/dist/chunks/constants-1.1.31-5peb81d1.mjs +1 -0
- package/dist/chunks/context-1.1.31-9crzemp8.mjs +1 -0
- package/dist/chunks/context-noninteractive-1.1.31-twqynyp7.mjs +1 -0
- package/dist/chunks/conversation-1.1.31-yw2es9kq.mjs +1 -0
- package/dist/chunks/copilotHeaders-1.1.31-axfr0ar5.mjs +1 -0
- package/dist/chunks/copy-1.1.31-y97hza01.mjs +9 -0
- package/dist/chunks/cost-1.1.31-wtp1fp62.mjs +1 -0
- package/dist/chunks/createSSHSession-1.1.31-tsfe2dea.mjs +1 -0
- package/dist/chunks/createSession-1.1.31-pddv01ds.mjs +1 -0
- package/dist/chunks/debug-1.1.31-5awffxcd.mjs +1 -0
- package/dist/chunks/defaultActionDeps-1.1.31-6a742vb3.mjs +1480 -0
- package/dist/chunks/desktop-1.1.31-zq54hfwy.mjs +2 -0
- package/dist/chunks/detectRepository-1.1.31-s6pe6c1x.mjs +1 -0
- package/dist/chunks/detection-1.1.31-zss1hfbq.mjs +1 -0
- package/dist/chunks/diff-1.1.31-ksj17xmk.mjs +1 -0
- package/dist/chunks/doctor-1.1.31-v4djfk2w.mjs +1 -0
- package/dist/chunks/doctorDiagnostic-1.1.31-gs3rsn7y.mjs +1 -0
- package/dist/chunks/earlyInput-1.1.31-s1vpzgtx.mjs +1 -0
- package/dist/chunks/effort-1.1.31-6z9vjdd8.mjs +13 -0
- package/dist/chunks/engine-1.1.31-rv1fs549.mjs +1 -0
- package/dist/chunks/envLessBridgeConfig-1.1.31-5p5f4zyz.mjs +1 -0
- package/dist/chunks/envUtils-1.1.31-ntcm9cr0.mjs +1 -0
- package/dist/chunks/environmentSelection-1.1.31-hh2weytc.mjs +1 -0
- package/dist/chunks/environments-1.1.31-yvgyx900.mjs +1 -0
- package/dist/chunks/errors-1.1.31-n434b94a.mjs +1 -0
- package/dist/chunks/exampleCommands-1.1.31-gntd6p22.mjs +1 -0
- package/dist/chunks/execFileNoThrow-1.1.31-s2n0jxqw.mjs +1 -0
- package/dist/chunks/exit-1.1.31-rgrjhztt.mjs +1 -0
- package/dist/chunks/explorer-1.1.31-cyken2c0.mjs +1 -0
- package/dist/chunks/export-1.1.31-nmjy9qp1.mjs +2 -0
- package/dist/chunks/fast-1.1.31-58c4aeze.mjs +1 -0
- package/dist/chunks/feedback-1.1.31-m0vj61dd.mjs +16 -0
- package/dist/chunks/git-1.1.31-9ytjvad9.mjs +1 -0
- package/dist/chunks/githubModelsCredentials-1.1.31-7pk651pz.mjs +1 -0
- package/dist/chunks/goal-1.1.31-2a9eh1dv.mjs +4 -0
- package/dist/chunks/headless-1.1.31-btcvy308.mjs +2 -0
- package/dist/chunks/heapdump-1.1.31-3d2namke.mjs +6 -0
- package/dist/chunks/help-1.1.31-sewrb4nb.mjs +1 -0
- package/dist/chunks/hookChains-1.1.31-72mrrs9j.mjs +3 -0
- package/dist/chunks/hooks-1.1.31-0gf2fwcn.mjs +1 -0
- package/dist/chunks/hooks-1.1.31-t1v6dwz6.mjs +79 -0
- package/dist/chunks/ide-1.1.31-rfvpxf98.mjs +3 -0
- package/dist/chunks/image-processor-napi-1.1.31-6m3111th.mjs +1 -0
- package/dist/chunks/import-1.1.31-n4khxgen.mjs +261 -0
- package/dist/chunks/inboundAttachments-1.1.31-js74nw49.mjs +1 -0
- package/dist/chunks/index-1.1.31-1d2w0stv.mjs +1 -0
- package/dist/chunks/index-1.1.31-7xyvb71n.mjs +1 -0
- package/dist/chunks/index-1.1.31-b35axgfq.mjs +1 -0
- package/dist/chunks/index-1.1.31-bb3ds6px.mjs +5 -0
- package/dist/chunks/index-1.1.31-d8kmfk8g.mjs +1 -0
- package/dist/chunks/index-1.1.31-djqjbcj1.mjs +1 -0
- package/dist/chunks/index-1.1.31-fbcpgjqr.mjs +1 -0
- package/dist/chunks/index-1.1.31-fzj8sx04.mjs +1 -0
- package/dist/chunks/index-1.1.31-h4jmtajm.mjs +9 -0
- package/dist/chunks/index-1.1.31-hxatxhrm.mjs +1 -0
- package/dist/chunks/index-1.1.31-jjp83m1j.mjs +1 -0
- package/dist/chunks/index-1.1.31-jk9pvxkr.mjs +1 -0
- package/dist/chunks/index-1.1.31-jy33bsc3.mjs +2 -0
- package/dist/chunks/index-1.1.31-kdnrzq4a.mjs +1 -0
- package/dist/chunks/index-1.1.31-kv3bfsq2.mjs +23 -0
- package/dist/chunks/index-1.1.31-mxjtqbfj.mjs +1 -0
- package/dist/chunks/index-1.1.31-p8xpgawg.mjs +1 -0
- package/dist/chunks/index-1.1.31-phw15bz8.mjs +1 -0
- package/dist/chunks/index-1.1.31-pr2zcv22.mjs +30 -0
- package/dist/chunks/index-1.1.31-q75y58jp.mjs +2 -0
- package/dist/chunks/index-1.1.31-qhsyqcg4.mjs +1 -0
- package/dist/chunks/index-1.1.31-tzvhzkcd.mjs +1 -0
- package/dist/chunks/index-1.1.31-wgdk68t3.mjs +9 -0
- package/dist/chunks/init-1.1.31-4ayzds5h.mjs +2 -0
- package/dist/chunks/initReplBridge-1.1.31-ebns690c.mjs +1 -0
- package/dist/chunks/ink-1.1.31-rx0229yp.mjs +1 -0
- package/dist/chunks/insights-1.1.31-t8z4k64x.mjs +870 -0
- package/dist/chunks/install-1.1.31-fvw0rbqj.mjs +1 -0
- package/dist/chunks/install-github-app-1.1.31-zmtxtda9.mjs +149 -0
- package/dist/chunks/install-slack-app-1.1.31-j04t1paw.mjs +1 -0
- package/dist/chunks/interactiveHelpers-1.1.31-xq2br8z8.mjs +1 -0
- package/dist/chunks/keybindings-1.1.31-a0dfh2gb.mjs +2 -0
- package/dist/chunks/knowledge-1.1.31-g087p4dy.mjs +2 -0
- package/dist/chunks/latestVersionCache-1.1.31-vyesmh7x.mjs +1 -0
- package/dist/chunks/loadAgentsDir-1.1.31-39mbd67g.mjs +1 -0
- package/dist/chunks/loadPluginHooks-1.1.31-7pnfkxj8.mjs +1 -0
- package/dist/chunks/log-1.1.31-75wjvmg7.mjs +1 -0
- package/dist/chunks/main-1.1.31-htavj2vh.mjs +1 -0
- package/dist/chunks/managedEnv-1.1.31-3t5j20s3.mjs +1 -0
- package/dist/chunks/mcp-1.1.31-g8q13cfk.mjs +1 -0
- package/dist/chunks/mcp-1.1.31-gnbrx51d.mjs +17 -0
- package/dist/chunks/mcp-1.1.31-tb2yw0fm.mjs +4 -0
- package/dist/chunks/mcpb-1.1.31-an4y7m57.mjs +1 -0
- package/dist/chunks/memory-1.1.31-6ebsap62.mjs +77 -0
- package/dist/chunks/model-1.1.31-dfs178qb.mjs +1 -0
- package/dist/chunks/model-1.1.31-yjsxjv0f.mjs +2 -0
- package/dist/chunks/node-1.1.31-4gqzhhpj.mjs +15 -0
- package/dist/chunks/node-1.1.31-bknsrjhq.mjs +1 -0
- package/dist/chunks/oauth-1.1.31-0dfgbykp.mjs +1 -0
- package/dist/chunks/openaiShim-1.1.31-bx5cgqc0.mjs +14 -0
- package/dist/chunks/output-style-1.1.31-fqg3pscb.mjs +1 -0
- package/dist/chunks/package-D2QZMRW7-1.1.31-tbwnz9re.mjs +1 -0
- package/dist/chunks/parseConnectUrl-1.1.31-htt07xve.mjs +1 -0
- package/dist/chunks/parser-1.1.31-22dqq9cd.mjs +1 -0
- package/dist/chunks/permissions-1.1.31-2jt71rmf.mjs +1 -0
- package/dist/chunks/permissions-1.1.31-8eevgx6v.mjs +3 -0
- package/dist/chunks/plan-1.1.31-sgds3thc.mjs +1 -0
- package/dist/chunks/plist-1.1.31-50ff60z2.mjs +1 -0
- package/dist/chunks/plugin-1.1.31-j5n91qc0.mjs +29 -0
- package/dist/chunks/pluginStartupCheck-1.1.31-28rvz0zj.mjs +1 -0
- package/dist/chunks/plugins-1.1.31-cq05wg0h.mjs +9 -0
- package/dist/chunks/preActionHook-1.1.31-xmrm67ge.mjs +2 -0
- package/dist/chunks/print-1.1.31-4n5d0cdk.mjs +57 -0
- package/dist/chunks/process-1.1.31-7c3jtep7.mjs +1 -0
- package/dist/chunks/processBashCommand-1.1.31-ycb3ehgr.mjs +1 -0
- package/dist/chunks/processSlashCommand-1.1.31-0bwjc7n4.mjs +9 -0
- package/dist/chunks/prompt-1.1.31-1krmkgep.mjs +1 -0
- package/dist/chunks/prompt-1.1.31-vsft6hz3.mjs +1 -0
- package/dist/chunks/prompts-1.1.31-jp2k44tp.mjs +1 -0
- package/dist/chunks/protocolHandler-1.1.31-yc5dejjn.mjs +13 -0
- package/dist/chunks/provider-1.1.31-sba30ytt.mjs +2 -0
- package/dist/chunks/providerProfiles-1.1.31-8g3p4ntd.mjs +1 -0
- package/dist/chunks/providerValidation-1.1.31-rnj0xtqw.mjs +6 -0
- package/dist/chunks/registerSubcommands-1.1.31-rtx2e9wp.mjs +26 -0
- package/dist/chunks/registry-1.1.31-ecyhakd2.mjs +1 -0
- package/dist/chunks/release-notes-1.1.31-gf017wax.mjs +5 -0
- package/dist/chunks/reload-plugins-1.1.31-de7agwmx.mjs +2 -0
- package/dist/chunks/remote-env-1.1.31-x3aaeh2d.mjs +1 -0
- package/dist/chunks/remoteBridgeCore-1.1.31-37k3bw33.mjs +1 -0
- package/dist/chunks/remoteSession-1.1.31-tkas2k4z.mjs +1 -0
- package/dist/chunks/rename-1.1.31-4q58stc8.mjs +1 -0
- package/dist/chunks/replBridgeHandle-1.1.31-64getkgv.mjs +1 -0
- package/dist/chunks/replLauncher-1.1.31-0n74v295.mjs +1 -0
- package/dist/chunks/resume-1.1.31-btzfzzf4.mjs +2 -0
- package/dist/chunks/rewind-1.1.31-9m2a508m.mjs +1 -0
- package/dist/chunks/rootOptions-1.1.31-bftj813f.mjs +1 -0
- package/dist/chunks/runWorkflowHeadless-1.1.31-tra2r0dx.mjs +10 -0
- package/dist/chunks/sandbox-adapter-1.1.31-6nyy2rag.mjs +1 -0
- package/dist/chunks/sandbox-toggle-1.1.31-h1n35f5k.mjs +1 -0
- package/dist/chunks/session-1.1.31-xb800b9s.mjs +2 -0
- package/dist/chunks/sessionFileAccessHooks-1.1.31-gkkyesrj.mjs +1 -0
- package/dist/chunks/sessionStorage-1.1.31-s7gez2t6.mjs +1 -0
- package/dist/chunks/settings-1.1.31-w7zfpg83.mjs +1 -0
- package/dist/chunks/setup-1.1.31-b6kjgetf.mjs +12 -0
- package/dist/chunks/sinks-1.1.31-g9n7r1nh.mjs +1 -0
- package/dist/chunks/skills-1.1.31-ag9r3asv.mjs +1 -0
- package/dist/chunks/startupProfiler-1.1.31-h19httmy.mjs +1 -0
- package/dist/chunks/startupUpdateCheck-1.1.31-f3g7de65.mjs +1 -0
- package/dist/chunks/state-1.1.31-tbc1c6c2.mjs +1 -0
- package/dist/chunks/stats-1.1.31-71xjrkax.mjs +1 -0
- package/dist/chunks/status-1.1.31-n65g11nc.mjs +1 -0
- package/dist/chunks/stickers-1.1.31-eze0atpf.mjs +1 -0
- package/dist/chunks/subprocessEnv-1.1.31-r788gbdf.mjs +1 -0
- package/dist/chunks/tasks-1.1.31-tbc0x51m.mjs +1 -0
- package/dist/chunks/teamHelpers-1.1.31-yt18sjr2.mjs +1 -0
- package/dist/chunks/teammateModeSnapshot-1.1.31-f3bgkc7m.mjs +1 -0
- package/dist/chunks/teleport-1.1.31-4mvcqr5j.mjs +1 -0
- package/dist/chunks/terminalSetup-1.1.31-y574v0gj.mjs +1 -0
- package/dist/chunks/theme-1.1.31-2nth8fxb.mjs +1 -0
- package/dist/chunks/thinkback-1.1.31-yt5309kx.mjs +1 -0
- package/dist/chunks/thinkback-play-1.1.31-n61vtr8q.mjs +1 -0
- package/dist/chunks/toolPool-1.1.31-2wrjcf13.mjs +1 -0
- package/dist/chunks/toolSearch-1.1.31-vr7hen30.mjs +1 -0
- package/dist/chunks/tools-1.1.31-xgrxwk7j.mjs +1 -0
- package/dist/chunks/trustedDevice-1.1.31-ad2f2kvj.mjs +1 -0
- package/dist/chunks/turndown.cjs-1.1.31-mtgg85tg.mjs +69 -0
- package/dist/chunks/types-1.1.31-ery244ea.mjs +1 -0
- package/dist/chunks/ultrareviewCommand-1.1.31-fs3fn2qp.mjs +4 -0
- package/dist/chunks/update-1.1.31-j79f7es2.mjs +72 -0
- package/dist/chunks/upload-1.1.31-ehqzz7x7.mjs +7 -0
- package/dist/chunks/upstreamproxy-1.1.31-z70ctdj3.mjs +14 -0
- package/dist/chunks/url-handler-napi-1.1.31-e0hbcnyw.mjs +1 -0
- package/dist/chunks/usage-1.1.31-qgmy1ktr.mjs +1 -0
- package/dist/chunks/util-1.1.31-jy81jvt3.mjs +1 -0
- package/dist/chunks/utils-1.1.31-3jpj59nn.mjs +1 -0
- package/dist/chunks/vim-1.1.31-wbbckx93.mjs +1 -0
- package/dist/chunks/watchLoop-1.1.31-v994wq2d.mjs +13 -0
- package/dist/chunks/watcher-1.1.31-zr0darq0.mjs +1 -0
- package/dist/chunks/wiki-1.1.31-7gcn31zm.mjs +132 -0
- package/dist/chunks/workflows-1.1.31-ek8twhyg.mjs +1 -0
- package/dist/chunks/worktree-1.1.31-krxr11er.mjs +1 -0
- package/dist/chunks/worktreeModeEnabled-1.1.31-m3t752mj.mjs +1 -0
- package/dist/chunks/wrapper-1.1.31-037s1v4h.mjs +7 -0
- package/dist/cli.mjs +2 -2
- package/package.json +9 -9
- package/dist/chunks/AgentTool-1.1.30-3wq8zzaa.mjs +0 -1
- package/dist/chunks/App-1.1.30-ywb53g2c.mjs +0 -1
- package/dist/chunks/ApproveApiKey-1.1.30-wtpe9n8e.mjs +0 -1
- package/dist/chunks/AssistantSessionChooser-1.1.30-776xks64.mjs +0 -1
- package/dist/chunks/AutoModeOptInDialog-1.1.30-bjm91hx0.mjs +0 -1
- package/dist/chunks/BypassPermissionsModeDialog-1.1.30-rcy7msd9.mjs +0 -1
- package/dist/chunks/ClaudeMdExternalIncludesDialog-1.1.30-bexsqxcb.mjs +0 -1
- package/dist/chunks/ConsoleOAuthFlow-1.1.30-jfhq3h4z.mjs +0 -1
- package/dist/chunks/DiffDialog-1.1.30-kqds97f2.mjs +0 -6
- package/dist/chunks/Doctor-1.1.30-48qzfckm.mjs +0 -1
- package/dist/chunks/ExplorerDialog-1.1.30-tfv4wc5m.mjs +0 -6
- package/dist/chunks/ITermBackend-1.1.30-z31ecx5v.mjs +0 -1
- package/dist/chunks/InvalidConfigDialog-1.1.30-f17w1kzx.mjs +0 -1
- package/dist/chunks/InvalidSettingsDialog-1.1.30-fzajgngq.mjs +0 -1
- package/dist/chunks/MigrationDialog-1.1.30-15c4h452.mjs +0 -1
- package/dist/chunks/Onboarding-1.1.30-xajg2p3r.mjs +0 -1
- package/dist/chunks/ProviderManager-1.1.30-8jrhxd1r.mjs +0 -1
- package/dist/chunks/REPL-1.1.30-74pzzw1d.mjs +0 -1
- package/dist/chunks/ResumeConversation-1.1.30-8bmshptz.mjs +0 -1
- package/dist/chunks/SnapshotUpdateDialog-1.1.30-v5fnwt30.mjs +0 -1
- package/dist/chunks/TeleportProgress-1.1.30-v55nsv7g.mjs +0 -1
- package/dist/chunks/TeleportRepoMismatchDialog-1.1.30-2hg56v1b.mjs +0 -1
- package/dist/chunks/TeleportResumeWrapper-1.1.30-r2hwd3a6.mjs +0 -1
- package/dist/chunks/TmuxBackend-1.1.30-y6hny4s2.mjs +0 -9
- package/dist/chunks/ToolSearchTool-1.1.30-cq18pvam.mjs +0 -1
- package/dist/chunks/TrustDialog-1.1.30-qp3cr0fk.mjs +0 -1
- package/dist/chunks/activeProvider-1.1.30-ydaqb760.mjs +0 -1
- package/dist/chunks/add-dir-1.1.30-gta8twv0.mjs +0 -1
- package/dist/chunks/agentTypes-1.1.30-rxcmv28v.mjs +0 -1
- package/dist/chunks/agents-1.1.30-d5hxfnnt.mjs +0 -3
- package/dist/chunks/agents-1.1.30-q3f25044.mjs +0 -110
- package/dist/chunks/api-1.1.30-30hng0e4.mjs +0 -1
- package/dist/chunks/asciicast-1.1.30-mhcedd5b.mjs +0 -1
- package/dist/chunks/assistant-1.1.30-1zxsr09t.mjs +0 -1
- package/dist/chunks/auth-1.1.30-mmymct98.mjs +0 -1
- package/dist/chunks/auth-1.1.30-ntfwzwxz.mjs +0 -1
- package/dist/chunks/autoMode-1.1.30-9jd1avyj.mjs +0 -52
- package/dist/chunks/autoModeSetup-1.1.30-8cnp296z.mjs +0 -44
- package/dist/chunks/autoUpdater-1.1.30-f0wbf5ha.mjs +0 -1
- package/dist/chunks/backgroundHousekeeping-1.1.30-b7t4y9th.mjs +0 -1
- package/dist/chunks/branch-1.1.30-x77nhthz.mjs +0 -4
- package/dist/chunks/bridge-1.1.30-scfmh172.mjs +0 -2
- package/dist/chunks/bridgeConfig-1.1.30-8hd92b6p.mjs +0 -1
- package/dist/chunks/bridgeEnabled-1.1.30-n5c6p8kd.mjs +0 -1
- package/dist/chunks/bridgeMain-1.1.30-9cpc29zx.mjs +0 -88
- package/dist/chunks/bridgePointer-1.1.30-gsa0eerc.mjs +0 -1
- package/dist/chunks/btw-1.1.30-gyh84rd1.mjs +0 -1
- package/dist/chunks/buddy-1.1.30-vzfs4xt1.mjs +0 -3
- package/dist/chunks/cache-probe-1.1.30-qjppzj5p.mjs +0 -21
- package/dist/chunks/cacheStats-1.1.30-w1c0ekr4.mjs +0 -4
- package/dist/chunks/caches-1.1.30-6rye5cdg.mjs +0 -1
- package/dist/chunks/cd-1.1.30-tn402589.mjs +0 -3
- package/dist/chunks/claudeDesktop-1.1.30-sm5ncwqz.mjs +0 -1
- package/dist/chunks/claudemd-1.1.30-36eyf63s.mjs +0 -1
- package/dist/chunks/clear-1.1.30-p5p9kp96.mjs +0 -1
- package/dist/chunks/clearTerminal-1.1.30-nrdembs6.mjs +0 -1
- package/dist/chunks/cli-1.1.30-053d5ph7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-092dkm0p.mjs +0 -2
- package/dist/chunks/cli-1.1.30-0e0e9msg.mjs +0 -17
- package/dist/chunks/cli-1.1.30-0fz758j0.mjs +0 -2
- package/dist/chunks/cli-1.1.30-0qcyzbs1.mjs +0 -2
- package/dist/chunks/cli-1.1.30-0yafp3ky.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1j4dyr5r.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1k2bwved.mjs +0 -3
- package/dist/chunks/cli-1.1.30-1qczaqkt.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1wfffyq2.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1xmhk219.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1ybfyckn.mjs +0 -2
- package/dist/chunks/cli-1.1.30-1zsgv3yp.mjs +0 -2
- package/dist/chunks/cli-1.1.30-2af3eeg6.mjs +0 -2
- package/dist/chunks/cli-1.1.30-2cmsx74f.mjs +0 -26
- package/dist/chunks/cli-1.1.30-2hw4vdpg.mjs +0 -2
- package/dist/chunks/cli-1.1.30-2pqs37e0.mjs +0 -3
- package/dist/chunks/cli-1.1.30-2y4yj9sd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-2yd2af56.mjs +0 -50
- package/dist/chunks/cli-1.1.30-2zq3aea6.mjs +0 -2
- package/dist/chunks/cli-1.1.30-322advqh.mjs +0 -4
- package/dist/chunks/cli-1.1.30-3b1nw95m.mjs +0 -2
- package/dist/chunks/cli-1.1.30-3c6j35rs.mjs +0 -2
- package/dist/chunks/cli-1.1.30-3x86c2pa.mjs +0 -24
- package/dist/chunks/cli-1.1.30-489cr054.mjs +0 -2
- package/dist/chunks/cli-1.1.30-4d90v0pd.mjs +0 -6
- package/dist/chunks/cli-1.1.30-4kytbyxq.mjs +0 -15
- package/dist/chunks/cli-1.1.30-4t03vay7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-4wqfr0ya.mjs +0 -2
- package/dist/chunks/cli-1.1.30-4zrfbe17.mjs +0 -2
- package/dist/chunks/cli-1.1.30-51kze0eh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-569esepc.mjs +0 -60
- package/dist/chunks/cli-1.1.30-57b410qh.mjs +0 -25
- package/dist/chunks/cli-1.1.30-5cc6nada.mjs +0 -2
- package/dist/chunks/cli-1.1.30-5f76gnk2.mjs +0 -2
- package/dist/chunks/cli-1.1.30-5j2mdj81.mjs +0 -2
- package/dist/chunks/cli-1.1.30-5pn20fxz.mjs +0 -2
- package/dist/chunks/cli-1.1.30-5r9pakw5.mjs +0 -2
- package/dist/chunks/cli-1.1.30-63ndyxgm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-6eaj3n76.mjs +0 -9
- package/dist/chunks/cli-1.1.30-6phpx599.mjs +0 -2
- package/dist/chunks/cli-1.1.30-6pp4z5px.mjs +0 -2
- package/dist/chunks/cli-1.1.30-7a064pfm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-7bdj31x8.mjs +0 -2
- package/dist/chunks/cli-1.1.30-7dtpd1ra.mjs +0 -2
- package/dist/chunks/cli-1.1.30-7h45a0x6.mjs +0 -6
- package/dist/chunks/cli-1.1.30-7ma427qh.mjs +0 -8
- package/dist/chunks/cli-1.1.30-7q8f7mp7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-84cemtwn.mjs +0 -4
- package/dist/chunks/cli-1.1.30-87zsgch6.mjs +0 -21
- package/dist/chunks/cli-1.1.30-8a5gwcde.mjs +0 -2
- package/dist/chunks/cli-1.1.30-8e36e2c1.mjs +0 -2
- package/dist/chunks/cli-1.1.30-8hcc4gax.mjs +0 -15
- package/dist/chunks/cli-1.1.30-8t3c3a4k.mjs +0 -20
- package/dist/chunks/cli-1.1.30-8vr9ea9g.mjs +0 -2
- package/dist/chunks/cli-1.1.30-8zyep40e.mjs +0 -2
- package/dist/chunks/cli-1.1.30-902jyjpx.mjs +0 -2
- package/dist/chunks/cli-1.1.30-917y0q4m.mjs +0 -2
- package/dist/chunks/cli-1.1.30-92t0b3hs.mjs +0 -2
- package/dist/chunks/cli-1.1.30-94vhzqcd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-9685r12p.mjs +0 -2
- package/dist/chunks/cli-1.1.30-9h8mm4pg.mjs +0 -2
- package/dist/chunks/cli-1.1.30-9m8jc7as.mjs +0 -4
- package/dist/chunks/cli-1.1.30-9rn8qz9x.mjs +0 -2
- package/dist/chunks/cli-1.1.30-9s9qp1m7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-a1phf5vm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-a2ww16zh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-a2xctbvc.mjs +0 -18
- package/dist/chunks/cli-1.1.30-amecp2v0.mjs +0 -3
- package/dist/chunks/cli-1.1.30-aqvjv0jh.mjs +0 -4
- package/dist/chunks/cli-1.1.30-aw93z4yt.mjs +0 -2
- package/dist/chunks/cli-1.1.30-b1mqmct7.mjs +0 -4
- package/dist/chunks/cli-1.1.30-bfqnz691.mjs +0 -2
- package/dist/chunks/cli-1.1.30-bgrp9j3q.mjs +0 -2
- package/dist/chunks/cli-1.1.30-bwdw42tf.mjs +0 -24
- package/dist/chunks/cli-1.1.30-bzjamz5p.mjs +0 -2
- package/dist/chunks/cli-1.1.30-c0b5kmhr.mjs +0 -2
- package/dist/chunks/cli-1.1.30-c2e2yeaj.mjs +0 -2
- package/dist/chunks/cli-1.1.30-c44kpd39.mjs +0 -2
- package/dist/chunks/cli-1.1.30-c70p43p6.mjs +0 -133
- package/dist/chunks/cli-1.1.30-c9xtenrd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ca1a9ntm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-cb34mrvh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-cgcdnarw.mjs +0 -2
- package/dist/chunks/cli-1.1.30-cjetc80p.mjs +0 -2
- package/dist/chunks/cli-1.1.30-cwc68erm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-d3n6dp6r.mjs +0 -2
- package/dist/chunks/cli-1.1.30-d8chymja.mjs +0 -2
- package/dist/chunks/cli-1.1.30-d9sphwgb.mjs +0 -3
- package/dist/chunks/cli-1.1.30-dbbhdfn1.mjs +0 -2
- package/dist/chunks/cli-1.1.30-dv38qw87.mjs +0 -3
- package/dist/chunks/cli-1.1.30-dy1jvt4f.mjs +0 -2
- package/dist/chunks/cli-1.1.30-e0fcx44n.mjs +0 -2
- package/dist/chunks/cli-1.1.30-e15hq24m.mjs +0 -2
- package/dist/chunks/cli-1.1.30-eg5krttf.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ehk76t59.mjs +0 -2
- package/dist/chunks/cli-1.1.30-em031y3s.mjs +0 -2
- package/dist/chunks/cli-1.1.30-endh0hmx.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ensp6hjk.mjs +0 -2
- package/dist/chunks/cli-1.1.30-erqva8zn.mjs +0 -2
- package/dist/chunks/cli-1.1.30-etnn22zf.mjs +0 -2
- package/dist/chunks/cli-1.1.30-f6tarbyn.mjs +0 -2
- package/dist/chunks/cli-1.1.30-f8qnd0hw.mjs +0 -20
- package/dist/chunks/cli-1.1.30-f9cckkn6.mjs +0 -7
- package/dist/chunks/cli-1.1.30-f9tp1b8r.mjs +0 -6
- package/dist/chunks/cli-1.1.30-fa5djn9v.mjs +0 -2
- package/dist/chunks/cli-1.1.30-facztg9n.mjs +0 -133
- package/dist/chunks/cli-1.1.30-fct5wt67.mjs +0 -2
- package/dist/chunks/cli-1.1.30-fm4mj7wy.mjs +0 -2
- package/dist/chunks/cli-1.1.30-fpa799y4.mjs +0 -3
- package/dist/chunks/cli-1.1.30-fzan6qjf.mjs +0 -2
- package/dist/chunks/cli-1.1.30-g17zgmea.mjs +0 -3
- package/dist/chunks/cli-1.1.30-g3qd3ec3.mjs +0 -2
- package/dist/chunks/cli-1.1.30-g4c9mx6r.mjs +0 -2
- package/dist/chunks/cli-1.1.30-g9qsgq1r.mjs +0 -2
- package/dist/chunks/cli-1.1.30-gdmbygdz.mjs +0 -2
- package/dist/chunks/cli-1.1.30-gev0f31f.mjs +0 -24
- package/dist/chunks/cli-1.1.30-gk8x7f6m.mjs +0 -2
- package/dist/chunks/cli-1.1.30-gncy6j5b.mjs +0 -2
- package/dist/chunks/cli-1.1.30-gv4z21b9.mjs +0 -4
- package/dist/chunks/cli-1.1.30-gvp1pabq.mjs +0 -2
- package/dist/chunks/cli-1.1.30-h5yj1axw.mjs +0 -6
- package/dist/chunks/cli-1.1.30-h9pfkdf2.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ha9qd4n4.mjs +0 -2
- package/dist/chunks/cli-1.1.30-he73pyqy.mjs +0 -2
- package/dist/chunks/cli-1.1.30-hncb22wm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-hxy861gq.mjs +0 -2
- package/dist/chunks/cli-1.1.30-j29r8pgr.mjs +0 -4
- package/dist/chunks/cli-1.1.30-j2wahkcp.mjs +0 -6
- package/dist/chunks/cli-1.1.30-j46p2me4.mjs +0 -3
- package/dist/chunks/cli-1.1.30-jb34rbbt.mjs +0 -7
- package/dist/chunks/cli-1.1.30-jevxd0jk.mjs +0 -2
- package/dist/chunks/cli-1.1.30-jgxnrbme.mjs +0 -2
- package/dist/chunks/cli-1.1.30-jvqc1jfc.mjs +0 -2
- package/dist/chunks/cli-1.1.30-jyvb3jrk.mjs +0 -3
- package/dist/chunks/cli-1.1.30-kx2svwf6.mjs +0 -2
- package/dist/chunks/cli-1.1.30-kzbhw1mf.mjs +0 -2
- package/dist/chunks/cli-1.1.30-m5fx6y02.mjs +0 -2
- package/dist/chunks/cli-1.1.30-m5ta5zwh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-m62yy9h8.mjs +0 -2
- package/dist/chunks/cli-1.1.30-mebteknr.mjs +0 -206
- package/dist/chunks/cli-1.1.30-mef66hvr.mjs +0 -10
- package/dist/chunks/cli-1.1.30-mgj06132.mjs +0 -2
- package/dist/chunks/cli-1.1.30-mpmg84pk.mjs +0 -3
- package/dist/chunks/cli-1.1.30-mz5a585j.mjs +0 -9
- package/dist/chunks/cli-1.1.30-n306djbd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-naaxghkh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-nhfsct38.mjs +0 -2
- package/dist/chunks/cli-1.1.30-p3m6d618.mjs +0 -2
- package/dist/chunks/cli-1.1.30-p63h2njx.mjs +0 -42
- package/dist/chunks/cli-1.1.30-p6bsj13y.mjs +0 -2
- package/dist/chunks/cli-1.1.30-pc2wp50b.mjs +0 -5504
- package/dist/chunks/cli-1.1.30-pc6nevmd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-pez1sh7w.mjs +0 -2
- package/dist/chunks/cli-1.1.30-pg6jbgcq.mjs +0 -12
- package/dist/chunks/cli-1.1.30-pgx35gqd.mjs +0 -2
- package/dist/chunks/cli-1.1.30-pw08jvvr.mjs +0 -3
- package/dist/chunks/cli-1.1.30-pzp496y6.mjs +0 -2
- package/dist/chunks/cli-1.1.30-q00wdmf9.mjs +0 -2
- package/dist/chunks/cli-1.1.30-q51sf5gk.mjs +0 -2
- package/dist/chunks/cli-1.1.30-q8sd13v9.mjs +0 -2
- package/dist/chunks/cli-1.1.30-q8xgmv1x.mjs +0 -39
- package/dist/chunks/cli-1.1.30-qcwzchrc.mjs +0 -2
- package/dist/chunks/cli-1.1.30-qdnzwgr7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-qjdmnkfj.mjs +0 -2
- package/dist/chunks/cli-1.1.30-qm4vn98q.mjs +0 -2
- package/dist/chunks/cli-1.1.30-qn71nvqn.mjs +0 -2
- package/dist/chunks/cli-1.1.30-qykdr3bk.mjs +0 -2
- package/dist/chunks/cli-1.1.30-r4ap6bq3.mjs +0 -4
- package/dist/chunks/cli-1.1.30-rdbwn1xc.mjs +0 -2
- package/dist/chunks/cli-1.1.30-rdgv4qpw.mjs +0 -2
- package/dist/chunks/cli-1.1.30-s27erhy7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-s2b0zbj0.mjs +0 -1
- package/dist/chunks/cli-1.1.30-s7f7x42j.mjs +0 -2
- package/dist/chunks/cli-1.1.30-sdxgwxfm.mjs +0 -2
- package/dist/chunks/cli-1.1.30-sgm7bcet.mjs +0 -58
- package/dist/chunks/cli-1.1.30-sr3wnzt7.mjs +0 -17
- package/dist/chunks/cli-1.1.30-syea4bx7.mjs +0 -2
- package/dist/chunks/cli-1.1.30-t27wxks6.mjs +0 -6
- package/dist/chunks/cli-1.1.30-tc8vq728.mjs +0 -15
- package/dist/chunks/cli-1.1.30-tcz89gqa.mjs +0 -2
- package/dist/chunks/cli-1.1.30-tt85hxby.mjs +0 -25
- package/dist/chunks/cli-1.1.30-ty0pw373.mjs +0 -24
- package/dist/chunks/cli-1.1.30-vcexen3n.mjs +0 -2
- package/dist/chunks/cli-1.1.30-vda14n5e.mjs +0 -2
- package/dist/chunks/cli-1.1.30-vf6wrqmh.mjs +0 -2
- package/dist/chunks/cli-1.1.30-vhh5kt6v.mjs +0 -2
- package/dist/chunks/cli-1.1.30-vrgnzjd2.mjs +0 -2
- package/dist/chunks/cli-1.1.30-w9wdamqc.mjs +0 -34
- package/dist/chunks/cli-1.1.30-wfs29rd9.mjs +0 -12
- package/dist/chunks/cli-1.1.30-wgmdrp34.mjs +0 -2
- package/dist/chunks/cli-1.1.30-wjx6yhry.mjs +0 -2
- package/dist/chunks/cli-1.1.30-wmpgbhw0.mjs +0 -16
- package/dist/chunks/cli-1.1.30-x76str7r.mjs +0 -3
- package/dist/chunks/cli-1.1.30-x8wzmxay.mjs +0 -2
- package/dist/chunks/cli-1.1.30-x960htw5.mjs +0 -2
- package/dist/chunks/cli-1.1.30-xhk0n48x.mjs +0 -2
- package/dist/chunks/cli-1.1.30-xqb55m51.mjs +0 -2
- package/dist/chunks/cli-1.1.30-xrrzhx6s.mjs +0 -5
- package/dist/chunks/cli-1.1.30-xxvagrpc.mjs +0 -2
- package/dist/chunks/cli-1.1.30-y1pn2vb5.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ycv7a9hg.mjs +0 -2
- package/dist/chunks/cli-1.1.30-ygdwz4ed.mjs +0 -4
- package/dist/chunks/cli-1.1.30-yt59tc1t.mjs +0 -2
- package/dist/chunks/cli-1.1.30-yw5qpt76.mjs +0 -2
- package/dist/chunks/cli-1.1.30-yy92v8yq.mjs +0 -63
- package/dist/chunks/cli-1.1.30-z1e7k65a.mjs +0 -5
- package/dist/chunks/cli-1.1.30-z9xfs5zq.mjs +0 -2
- package/dist/chunks/cli-1.1.30-zfz29t3v.mjs +0 -3
- package/dist/chunks/cli-1.1.30-zj3nk96z.mjs +0 -2
- package/dist/chunks/cli-1.1.30-zm2e2zvb.mjs +0 -2
- package/dist/chunks/cli-1.1.30-zpss0nht.mjs +0 -3
- package/dist/chunks/cli-1.1.30-zxkfqcvj.mjs +0 -2
- package/dist/chunks/cli-1.1.30-zych8w4z.mjs +0 -45
- package/dist/chunks/client-1.1.30-6xd07jrd.mjs +0 -1
- package/dist/chunks/color-1.1.30-yhxh49s0.mjs +0 -1
- package/dist/chunks/compact-1.1.30-wxxb111z.mjs +0 -3
- package/dist/chunks/config-1.1.30-4gdp5w7v.mjs +0 -1
- package/dist/chunks/config-1.1.30-s02sv9vf.mjs +0 -1
- package/dist/chunks/constants-1.1.30-g1xm727k.mjs +0 -1
- package/dist/chunks/context-1.1.30-pepgc836.mjs +0 -1
- package/dist/chunks/context-noninteractive-1.1.30-ahdmm09h.mjs +0 -1
- package/dist/chunks/conversation-1.1.30-93marv3a.mjs +0 -1
- package/dist/chunks/copilotHeaders-1.1.30-ypx3j03s.mjs +0 -1
- package/dist/chunks/copy-1.1.30-bsfx33za.mjs +0 -9
- package/dist/chunks/cost-1.1.30-rhgx2a0h.mjs +0 -1
- package/dist/chunks/createSSHSession-1.1.30-p5qve4c1.mjs +0 -1
- package/dist/chunks/createSession-1.1.30-rwvvv9na.mjs +0 -1
- package/dist/chunks/debug-1.1.30-j1zw0q5b.mjs +0 -1
- package/dist/chunks/defaultActionDeps-1.1.30-5gkcnqp5.mjs +0 -1481
- package/dist/chunks/desktop-1.1.30-rwbfgek7.mjs +0 -1
- package/dist/chunks/detectRepository-1.1.30-2xwvggy6.mjs +0 -1
- package/dist/chunks/detection-1.1.30-kkar89w6.mjs +0 -1
- package/dist/chunks/diff-1.1.30-t1r0x9g4.mjs +0 -1
- package/dist/chunks/doctor-1.1.30-cvqts45f.mjs +0 -1
- package/dist/chunks/doctorDiagnostic-1.1.30-smg0046q.mjs +0 -1
- package/dist/chunks/earlyInput-1.1.30-cpx4e858.mjs +0 -1
- package/dist/chunks/effort-1.1.30-jdxyeqz7.mjs +0 -13
- package/dist/chunks/engine-1.1.30-8qhtasfe.mjs +0 -1
- package/dist/chunks/envLessBridgeConfig-1.1.30-jnz4sy6x.mjs +0 -1
- package/dist/chunks/envUtils-1.1.30-y5dyaydm.mjs +0 -1
- package/dist/chunks/environmentSelection-1.1.30-w1z47qad.mjs +0 -1
- package/dist/chunks/environments-1.1.30-sjscvfn9.mjs +0 -1
- package/dist/chunks/errors-1.1.30-7cmbc98j.mjs +0 -1
- package/dist/chunks/exampleCommands-1.1.30-jx9hvt2q.mjs +0 -1
- package/dist/chunks/execFileNoThrow-1.1.30-dqrsra7k.mjs +0 -1
- package/dist/chunks/exit-1.1.30-m2yzbcth.mjs +0 -1
- package/dist/chunks/explorer-1.1.30-5tat30es.mjs +0 -1
- package/dist/chunks/export-1.1.30-545a0v8x.mjs +0 -2
- package/dist/chunks/extra-usage-1.1.30-5k9b4t6b.mjs +0 -1
- package/dist/chunks/extra-usage-noninteractive-1.1.30-h5fqbtg3.mjs +0 -1
- package/dist/chunks/fast-1.1.30-91wr1vy4.mjs +0 -1
- package/dist/chunks/feedback-1.1.30-36xrb399.mjs +0 -14
- package/dist/chunks/firstPartyEventLogger-1.1.30-be1ke8r3.mjs +0 -1
- package/dist/chunks/git-1.1.30-sxa8xf85.mjs +0 -1
- package/dist/chunks/githubModelsCredentials-1.1.30-m7a8kdwg.mjs +0 -1
- package/dist/chunks/goal-1.1.30-71sj2735.mjs +0 -4
- package/dist/chunks/growthbook-1.1.30-rx44zvrq.mjs +0 -1
- package/dist/chunks/headless-1.1.30-h98t9mfb.mjs +0 -2
- package/dist/chunks/heapdump-1.1.30-82m1rvjw.mjs +0 -6
- package/dist/chunks/help-1.1.30-vnsg1001.mjs +0 -1
- package/dist/chunks/hookChains-1.1.30-tc5ff3xr.mjs +0 -3
- package/dist/chunks/hooks-1.1.30-2sctf45c.mjs +0 -79
- package/dist/chunks/hooks-1.1.30-707b390t.mjs +0 -1
- package/dist/chunks/ide-1.1.30-e8neepsj.mjs +0 -3
- package/dist/chunks/image-processor-napi-1.1.30-gcqgfeec.mjs +0 -1
- package/dist/chunks/import-1.1.30-g0p9rj63.mjs +0 -261
- package/dist/chunks/inboundAttachments-1.1.30-a5p4ftqg.mjs +0 -1
- package/dist/chunks/index-1.1.30-00d73fwg.mjs +0 -1
- package/dist/chunks/index-1.1.30-0sdck5q1.mjs +0 -9
- package/dist/chunks/index-1.1.30-38597fv3.mjs +0 -5
- package/dist/chunks/index-1.1.30-3z58evcj.mjs +0 -1
- package/dist/chunks/index-1.1.30-5k081eyt.mjs +0 -1
- package/dist/chunks/index-1.1.30-8n15b4e3.mjs +0 -2
- package/dist/chunks/index-1.1.30-9nx8fm72.mjs +0 -1
- package/dist/chunks/index-1.1.30-9zfyk995.mjs +0 -23
- package/dist/chunks/index-1.1.30-ba27qy75.mjs +0 -1
- package/dist/chunks/index-1.1.30-cddndqaa.mjs +0 -1
- package/dist/chunks/index-1.1.30-cnbcr7zp.mjs +0 -1
- package/dist/chunks/index-1.1.30-f65yg5kz.mjs +0 -9
- package/dist/chunks/index-1.1.30-fwvhky1a.mjs +0 -1
- package/dist/chunks/index-1.1.30-hmnpjmd5.mjs +0 -1
- package/dist/chunks/index-1.1.30-nemv1gaj.mjs +0 -1
- package/dist/chunks/index-1.1.30-pnpy7v0s.mjs +0 -1
- package/dist/chunks/index-1.1.30-q4x054c8.mjs +0 -2
- package/dist/chunks/index-1.1.30-racdqjba.mjs +0 -1
- package/dist/chunks/index-1.1.30-scb66j47.mjs +0 -1
- package/dist/chunks/index-1.1.30-tfz6950h.mjs +0 -30
- package/dist/chunks/index-1.1.30-tx381qq5.mjs +0 -1
- package/dist/chunks/index-1.1.30-w4zhj1qd.mjs +0 -1
- package/dist/chunks/index-1.1.30-xxh224ea.mjs +0 -1
- package/dist/chunks/init-1.1.30-txzpz2vm.mjs +0 -1
- package/dist/chunks/initReplBridge-1.1.30-hkrhwfr3.mjs +0 -1
- package/dist/chunks/ink-1.1.30-av1t4b54.mjs +0 -1
- package/dist/chunks/insights-1.1.30-nbs0zndp.mjs +0 -870
- package/dist/chunks/install-1.1.30-kd3vnaat.mjs +0 -1
- package/dist/chunks/install-github-app-1.1.30-ea78ytf6.mjs +0 -149
- package/dist/chunks/install-slack-app-1.1.30-v2q1py01.mjs +0 -1
- package/dist/chunks/instrumentation-1.1.30-20686d7h.mjs +0 -1
- package/dist/chunks/interactiveHelpers-1.1.30-rd0zzjyp.mjs +0 -1
- package/dist/chunks/keybindings-1.1.30-157aap7w.mjs +0 -2
- package/dist/chunks/knowledge-1.1.30-4mcx1txk.mjs +0 -2
- package/dist/chunks/latestVersionCache-1.1.30-65qvjpys.mjs +0 -1
- package/dist/chunks/loadAgentsDir-1.1.30-nfrca2zv.mjs +0 -1
- package/dist/chunks/loadPluginHooks-1.1.30-wa8regkc.mjs +0 -1
- package/dist/chunks/log-1.1.30-nh81h0jz.mjs +0 -1
- package/dist/chunks/main-1.1.30-87zf4enf.mjs +0 -1
- package/dist/chunks/managedEnv-1.1.30-p38nd6r6.mjs +0 -1
- package/dist/chunks/mcp-1.1.30-egynhffm.mjs +0 -17
- package/dist/chunks/mcp-1.1.30-gaz9mgmq.mjs +0 -4
- package/dist/chunks/mcp-1.1.30-r6q89d8c.mjs +0 -1
- package/dist/chunks/mcpb-1.1.30-qxpx83j6.mjs +0 -1
- package/dist/chunks/memory-1.1.30-72gbfb3b.mjs +0 -77
- package/dist/chunks/model-1.1.30-7nsbqqvm.mjs +0 -2
- package/dist/chunks/model-1.1.30-f7d6dbt2.mjs +0 -1
- package/dist/chunks/node-1.1.30-nbnhkya6.mjs +0 -15
- package/dist/chunks/node-1.1.30-vaaf7x0g.mjs +0 -1
- package/dist/chunks/oauth-1.1.30-g201gbyg.mjs +0 -1
- package/dist/chunks/openaiShim-1.1.30-rz4xax1e.mjs +0 -14
- package/dist/chunks/output-style-1.1.30-ms4eck90.mjs +0 -1
- package/dist/chunks/package-D2QZMRW7-1.1.30-08c7mgpt.mjs +0 -1
- package/dist/chunks/parseConnectUrl-1.1.30-bd7ade4m.mjs +0 -1
- package/dist/chunks/parser-1.1.30-qe7n0vnw.mjs +0 -1
- package/dist/chunks/passes-1.1.30-3cz64bpa.mjs +0 -1
- package/dist/chunks/permissions-1.1.30-28z7ax7g.mjs +0 -3
- package/dist/chunks/permissions-1.1.30-vgtb4qf9.mjs +0 -1
- package/dist/chunks/plan-1.1.30-s865r5b5.mjs +0 -1
- package/dist/chunks/plist-1.1.30-pxa62mce.mjs +0 -1
- package/dist/chunks/plugin-1.1.30-6apj9sf8.mjs +0 -29
- package/dist/chunks/pluginStartupCheck-1.1.30-gmcab9kx.mjs +0 -1
- package/dist/chunks/plugins-1.1.30-40c7sagf.mjs +0 -9
- package/dist/chunks/preActionHook-1.1.30-q2g48qsk.mjs +0 -2
- package/dist/chunks/print-1.1.30-drvg0v0c.mjs +0 -57
- package/dist/chunks/process-1.1.30-f6y2msx6.mjs +0 -1
- package/dist/chunks/processBashCommand-1.1.30-5bzgcejg.mjs +0 -1
- package/dist/chunks/processSlashCommand-1.1.30-2bwd1kpt.mjs +0 -9
- package/dist/chunks/prompt-1.1.30-9rbbx5vr.mjs +0 -1
- package/dist/chunks/prompt-1.1.30-phmv317m.mjs +0 -1
- package/dist/chunks/prompts-1.1.30-1myv5ewh.mjs +0 -1
- package/dist/chunks/protocolHandler-1.1.30-d6jkd0dk.mjs +0 -13
- package/dist/chunks/provider-1.1.30-cwkzb2t8.mjs +0 -2
- package/dist/chunks/providerProfiles-1.1.30-qe0y7b6e.mjs +0 -1
- package/dist/chunks/providerValidation-1.1.30-rzg2nkx3.mjs +0 -6
- package/dist/chunks/rate-limit-options-1.1.30-4q04y9f7.mjs +0 -1
- package/dist/chunks/registerSubcommands-1.1.30-k3ar1dyg.mjs +0 -26
- package/dist/chunks/registry-1.1.30-epdyxcsa.mjs +0 -1
- package/dist/chunks/release-notes-1.1.30-k11yp5hh.mjs +0 -5
- package/dist/chunks/reload-plugins-1.1.30-n7qhqqr3.mjs +0 -2
- package/dist/chunks/remote-env-1.1.30-f8e03jpx.mjs +0 -1
- package/dist/chunks/remoteBridgeCore-1.1.30-fqankvvx.mjs +0 -1
- package/dist/chunks/remoteSession-1.1.30-fc5x1bz4.mjs +0 -1
- package/dist/chunks/rename-1.1.30-vw8eyfha.mjs +0 -1
- package/dist/chunks/replBridgeHandle-1.1.30-bagtg7fm.mjs +0 -1
- package/dist/chunks/replLauncher-1.1.30-318vaq80.mjs +0 -1
- package/dist/chunks/resume-1.1.30-jrj1wpvj.mjs +0 -2
- package/dist/chunks/rewind-1.1.30-z97mdn25.mjs +0 -1
- package/dist/chunks/rootOptions-1.1.30-ybrgmmyy.mjs +0 -1
- package/dist/chunks/runWorkflowHeadless-1.1.30-w3gn8w75.mjs +0 -10
- package/dist/chunks/sandbox-adapter-1.1.30-4rd9w5by.mjs +0 -1
- package/dist/chunks/sandbox-toggle-1.1.30-zmtfq25w.mjs +0 -1
- package/dist/chunks/session-1.1.30-sbykpbav.mjs +0 -2
- package/dist/chunks/sessionDiscovery-1.1.30-dd680nx7.mjs +0 -1
- package/dist/chunks/sessionFileAccessHooks-1.1.30-4rhdr018.mjs +0 -1
- package/dist/chunks/sessionStorage-1.1.30-cwb5a83p.mjs +0 -1
- package/dist/chunks/settings-1.1.30-xxee6nzb.mjs +0 -1
- package/dist/chunks/setup-1.1.30-p2wwqw6v.mjs +0 -12
- package/dist/chunks/sinks-1.1.30-phkc3yep.mjs +0 -1
- package/dist/chunks/skills-1.1.30-vsg5twx1.mjs +0 -1
- package/dist/chunks/startupProfiler-1.1.30-wa0xbx1z.mjs +0 -1
- package/dist/chunks/startupUpdateCheck-1.1.30-9cgnvwtt.mjs +0 -1
- package/dist/chunks/state-1.1.30-ge0kb9gr.mjs +0 -1
- package/dist/chunks/stats-1.1.30-n5w7ehyg.mjs +0 -1
- package/dist/chunks/status-1.1.30-snsvg4xb.mjs +0 -1
- package/dist/chunks/stickers-1.1.30-7ffpw08c.mjs +0 -1
- package/dist/chunks/subprocessEnv-1.1.30-5efpmhgz.mjs +0 -1
- package/dist/chunks/tasks-1.1.30-ykgkx7d8.mjs +0 -1
- package/dist/chunks/teamHelpers-1.1.30-cjjzmnj6.mjs +0 -1
- package/dist/chunks/teammateModeSnapshot-1.1.30-e2mh88ze.mjs +0 -1
- package/dist/chunks/teleport-1.1.30-9y1akw6m.mjs +0 -1
- package/dist/chunks/terminalSetup-1.1.30-mwbzfrfc.mjs +0 -1
- package/dist/chunks/theme-1.1.30-9dqykgv2.mjs +0 -1
- package/dist/chunks/thinkback-1.1.30-3pbzqt97.mjs +0 -1
- package/dist/chunks/thinkback-play-1.1.30-83akae4q.mjs +0 -1
- package/dist/chunks/toolPool-1.1.30-3kvrwtxa.mjs +0 -1
- package/dist/chunks/toolSearch-1.1.30-s60zcj4t.mjs +0 -1
- package/dist/chunks/tools-1.1.30-by0ddhf4.mjs +0 -1
- package/dist/chunks/trustedDevice-1.1.30-ecq2hfrc.mjs +0 -1
- package/dist/chunks/turndown.cjs-1.1.30-m5hyejns.mjs +0 -69
- package/dist/chunks/types-1.1.30-mrv5q877.mjs +0 -1
- package/dist/chunks/ultrareviewCommand-1.1.30-5etzjedp.mjs +0 -4
- package/dist/chunks/update-1.1.30-ax60cy72.mjs +0 -72
- package/dist/chunks/upgrade-1.1.30-hrny7f12.mjs +0 -1
- package/dist/chunks/upload-1.1.30-s0z8kw2s.mjs +0 -7
- package/dist/chunks/upstreamproxy-1.1.30-tkvbafsh.mjs +0 -14
- package/dist/chunks/url-handler-napi-1.1.30-enhczdhm.mjs +0 -1
- package/dist/chunks/usage-1.1.30-ew9dakf2.mjs +0 -1
- package/dist/chunks/util-1.1.30-knp77fm5.mjs +0 -1
- package/dist/chunks/utils-1.1.30-74ykpfac.mjs +0 -1
- package/dist/chunks/vim-1.1.30-y01vnb23.mjs +0 -1
- package/dist/chunks/watchLoop-1.1.30-sjecqqx4.mjs +0 -13
- package/dist/chunks/watcher-1.1.30-qnfq5sma.mjs +0 -1
- package/dist/chunks/wiki-1.1.30-qddcp6x2.mjs +0 -132
- package/dist/chunks/workflows-1.1.30-j5wcb76g.mjs +0 -1
- package/dist/chunks/worktree-1.1.30-m6gvqkc9.mjs +0 -1
- package/dist/chunks/worktreeModeEnabled-1.1.30-nma5ggmd.mjs +0 -1
- package/dist/chunks/wrapper-1.1.30-c8vm3try.mjs +0 -7
- /package/dist/chunks/{cli-1.1.30-vxh27fdj.mjs → cli-1.1.31-d930nxk6.mjs} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{$$ as M,Z$ as T}from"./cli-1.1.31-p99fz46k.mjs";import{Aka as y,Ska as O,Vka as x,wka as L}from"./cli-1.1.31-t6m64e0q.mjs";import{qla as C,xla as k}from"./cli-1.1.31-dmghye74.mjs";x();M();k();y();function N(W){if(W<60000)return`${Math.round(W/1000)}s`;let Z=Math.floor(W/60000),z=Math.round(W%60000/1000);return z>0?`${Z}m ${z}s`:`${Z}m`}function c(W){let z=(W.startsWith("sk-ant-si-")?W.slice(10):W).split(".");if(z.length!==3||!z[1])return null;try{return L(Buffer.from(z[1],"base64url").toString("utf8"))}catch{return null}}function p(W){let Z=c(W);if(Z!==null&&typeof Z==="object"&&"exp"in Z&&typeof Z.exp==="number")return Z.exp;return null}var E=300000,j=1800000,H=3,F=60000;function u({getAccessToken:W,onRefresh:Z,label:z,refreshBufferMs:P=E}){let J=new Map,Y=new Map,w=new Map;function U(q){let Q=(w.get(q)??0)+1;return w.set(q,Q),Q}function B(q,Q){let $=p(Q);if(!$){O(`[${z}:token] Could not decode JWT expiry for sessionId=${q}, token prefix=${Q.slice(0,15)}…, keeping existing timer`);return}let V=J.get(q);if(V)clearTimeout(V);let v=U(q),X=new Date($*1000).toISOString(),G=$*1000-Date.now()-P;if(G<=0){O(`[${z}:token] Token for sessionId=${q} expires=${X} (past or within buffer), refreshing immediately`),K(q,v);return}O(`[${z}:token] Scheduled token refresh for sessionId=${q} in ${N(G)} (expires=${X}, buffer=${P/1000}s)`);let _=setTimeout(K,G,q,v);J.set(q,_)}function A(q,Q){let $=J.get(q);if($)clearTimeout($);let V=U(q),v=Math.max(Q*1000-P,30000);O(`[${z}:token] Scheduled token refresh for sessionId=${q} in ${N(v)} (expires_in=${Q}s, buffer=${P/1000}s)`);let X=setTimeout(K,v,q,V);J.set(q,X)}async function K(q,Q){let $;try{$=await W()}catch(v){O(`[${z}:token] getAccessToken threw for sessionId=${q}: ${C(v)}`,{level:"error"})}if(w.get(q)!==Q){O(`[${z}:token] doRefresh for sessionId=${q} stale (gen ${Q} vs ${w.get(q)}), skipping`);return}if(!$){let v=(Y.get(q)??0)+1;if(Y.set(q,v),O(`[${z}:token] No OAuth token available for refresh, sessionId=${q} (failure ${v}/${H})`,{level:"error"}),T("error","bridge_token_refresh_no_oauth"),v<H){let X=setTimeout(K,F,q,Q);J.set(q,X)}return}Y.delete(q),O(`[${z}:token] Refreshing token for sessionId=${q}: new token prefix=${$.slice(0,15)}…`),Z(q,$);let V=setTimeout(K,j,q,Q);J.set(q,V),O(`[${z}:token] Scheduled follow-up refresh for sessionId=${q} in ${N(j)}`)}function D(q){U(q);let Q=J.get(q);if(Q)clearTimeout(Q),J.delete(q);Y.delete(q)}function S(){for(let q of w.keys())U(q);for(let q of J.values())clearTimeout(q);J.clear(),Y.clear()}return{schedule:B,scheduleFromExpiresIn:A,cancel:D,cancelAll:S}}
|
|
2
|
+
export{p as yb,u as zb};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{RQ as x,UQ as B}from"./cli-1.1.31-g58b1jfa.mjs";import{lsa as z}from"./cli-1.1.31-qj8vksz8.mjs";function H(q){if(!q)return 0;return q.activeAgents.filter((b)=>b.source!=="built-in").reduce((b,w)=>{let y=`${w.agentType}: ${w.whenToUse}`;return b+x(y)},0)}var G=15000;var A=z(()=>{B()});
|
|
2
|
+
export{G as Og,H as Pg,A as Qg};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{e_ as H,w_ as N}from"./cli-1.1.31-nyvjx813.mjs";import{Aka as M,vka as E,wka as F}from"./cli-1.1.31-t6m64e0q.mjs";N();M();function V(z){let C=Buffer.from(z,"base64url").toString("utf-8"),q=F(C);if(!q||typeof q!=="object"||!("version"in q)||q.version!==1)throw Error(`Unsupported work secret version: ${q&&typeof q==="object"&&"version"in q?q.version:"unknown"}`);let A=q;if(typeof A.session_ingress_token!=="string"||A.session_ingress_token.length===0)throw Error("Invalid work secret: missing or empty session_ingress_token");if(typeof A.api_base_url!=="string")throw Error("Invalid work secret: missing api_base_url");return q}function W(z,C){let q=new URL(z).hostname,A=q==="localhost"||q==="127.0.0.1",D=A?"ws":"wss",J=A?"v2":"v1",K=z.replace(/^https?:\/\//,"").replace(/\/+$/,"");return`${D}://${K}/${J}/session_ingress/ws/${C}`}function X(z,C){if(z===C)return!0;let q=z.slice(z.lastIndexOf("_")+1),A=C.slice(C.lastIndexOf("_")+1);return q.length>=4&&q===A}function Y(z,C){return`${z.replace(/\/+$/,"")}/v1/code/sessions/${C}`}async function Z(z,C){let q=await H.post(`${z}/worker/register`,{},{headers:{Authorization:`Bearer ${C}`,"Content-Type":"application/json","anthropic-version":"2023-06-01"},timeout:1e4}),A=q.data?.worker_epoch,D=typeof A==="string"?Number(A):A;if(typeof D!=="number"||!Number.isFinite(D)||!Number.isSafeInteger(D))throw Error(`registerWorker: invalid worker_epoch in response: ${E(q.data)}`);return D}
|
|
2
|
+
export{V as tb,W as ub,X as vb,Y as wb,Z as xb};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{Xa as j}from"./cli-1.1.31-fbdr0297.mjs";import{Af as lq,vf as Aq}from"./cli-1.1.31-fpqqpyrw.mjs";import{JT as E,LT as aq,cM as Nq,kM as uq}from"./cli-1.1.31-g58b1jfa.mjs";import{H1 as l,N1 as Cq,O1 as a,P1 as hq}from"./cli-1.1.31-9m6ef5kb.mjs";import{C7 as Lq,H5 as Hq,M5 as P,N3 as U,O5 as Kq,S3 as x,T5 as Qq,o7 as Wq,q7 as Uq,r5 as Yq,s7 as A,v5 as Zq,z5 as $q}from"./cli-1.1.31-adnn5x8c.mjs";import{Y7 as y,Z7 as Fq}from"./cli-1.1.31-sc82f8hw.mjs";import{$$ as pq,B$ as jq,Bfa as B,Ica as p,Kha as V,Mca as bq,Q$ as Y,S$ as J,Sha as _,Z$ as T,dca as r,eca as t,gca as xq,jfa as H,kga as W,lfa as Z,ofa as _q,rfa as o,s$ as d,x$ as Eq,y$ as c}from"./cli-1.1.31-p99fz46k.mjs";import{uia as F,yia as cq}from"./cli-1.1.31-vpkbqj90.mjs";import{Aka as Iq,Bka as m,Eka as S,Ika as Pq,yka as v}from"./cli-1.1.31-t6m64e0q.mjs";import{$ka as Mq,_ka as u}from"./cli-1.1.31-pp98t7k8.mjs";import{qla as R,sla as f,xla as Rq}from"./cli-1.1.31-dmghye74.mjs";import{Dla as Oq,Lla as dq}from"./cli-1.1.31-wba64b2s.mjs";import{Hpa as C,Rpa as h,Uoa as G,Woa as O,Yqa as k,jpa as D,npa as Dq,opa as Gq}from"./cli-1.1.31-b8rbgfhm.mjs";Fq();Cq();k();jq();Rq();Pq();Eq();_();Mq();bq();Dq();Iq();hq();import{readFileSync as fq}from"node:fs";var vq=/--inspect(-brk)?/,b=/--inspect(-brk)?|--debug(-brk)?/;function Jz(){let q=c()?vq:b,K=process.execArgv.some((X)=>q.test(X)),Q=!!process.env.NODE_OPTIONS&&b.test(process.env.NODE_OPTIONS);try{return!!global.require("inspector").url()||K||Q}catch{return K||Q}}function Vz(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(l)}function Bz(z){if(typeof z!=="object"||z===null)return{};let q=z,K=q.teammateMode;return{agentId:typeof q.agentId==="string"?q.agentId:void 0,agentName:typeof q.agentName==="string"?q.agentName:void 0,teamName:typeof q.teamName==="string"?q.teamName:void 0,agentColor:typeof q.agentColor==="string"?q.agentColor:void 0,planModeRequired:typeof q.planModeRequired==="boolean"?q.planModeRequired:void 0,parentSessionId:typeof q.parentSessionId==="string"?q.parentSessionId:void 0,teammateMode:K==="auto"||K==="tmux"||K==="in-process"?K:void 0,agentType:typeof q.agentType==="string"?q.agentType:void 0}}function g(z){try{let q=z.trim(),K=q.startsWith("{")&&q.endsWith("}"),Q;if(K){if(!d(q))process.stderr.write(y.red(`Error: Invalid JSON provided to --settings
|
|
2
|
+
`)),process.exit(1);Q=a("claude-settings",".json",{contentHash:q}),v(Q,q,"utf8")}else{let{resolvedPath:X}=m(S(),z);try{fq(X,"utf8")}catch($){if(f($))process.stderr.write(y.red(`Error: Settings file not found: ${X}
|
|
3
|
+
`)),process.exit(1);throw $}Q=X}C(Q),D()}catch(q){if(q instanceof Error)V(q);process.stderr.write(y.red(`Error processing settings: ${R(q)}
|
|
4
|
+
`)),process.exit(1)}}function n(z){try{let q=p(z);h(q),D()}catch(q){if(q instanceof Error)V(q);process.stderr.write(y.red(`Error processing --setting-sources: ${R(q)}
|
|
5
|
+
`)),process.exit(1)}}async function Wz(z,q){if(!process.stdin.isTTY&&!process.argv.includes("mcp")){if(q==="stream-json")return process.stdin;process.stdin.setEncoding("utf8");let K="",Q=($)=>{K+=$};process.stdin.on("data",Q);let X=await u(process.stdin,3000);if(process.stdin.off("data",Q),X)process.stderr.write(`Warning: no stdin data received in 3s, proceeding without it. If piping from a slow command, redirect stdin explicitly: < /dev/null to skip, or wait longer.
|
|
6
|
+
`);return[z,K].filter(Boolean).join(`
|
|
7
|
+
`)}return z}cq();aq();W();pq();dq();W();_();B();function i(){let z=J();if(z.autoUpdates!==!1||z.autoUpdatesProtectedForNative===!0)return;try{let q=H("userSettings")||{};Z("userSettings",{...q,env:{...q.env,DISABLE_AUTOUPDATER:"1"}}),process.env.DISABLE_AUTOUPDATER="1",Y((K)=>{let{autoUpdates:Q,autoUpdatesProtectedForNative:X,...$}=K;return $})}catch(q){V(Error(`Failed to migrate auto-updates: ${q}`))}}W();_();B();function s(){if(!J().bypassPermissionsModeAccepted)return;try{if(!o())Z("userSettings",{skipDangerousModePermissionPrompt:!0});Y((q)=>{if(!("bypassPermissionsModeAccepted"in q))return q;let{bypassPermissionsModeAccepted:K,...Q}=q;return Q})}catch(q){V(Error(`Failed to migrate bypass permissions accepted: ${q}`))}}W();_();B();function e(){let z=r(),q=z.enableAllProjectMcpServers!==void 0,K=z.enabledMcpjsonServers&&z.enabledMcpjsonServers.length>0,Q=z.disabledMcpjsonServers&&z.disabledMcpjsonServers.length>0;if(!q&&!K&&!Q)return;try{let X=H("localSettings")||{},$={},L=[];if(q&&X.enableAllProjectMcpServers===void 0)$.enableAllProjectMcpServers=z.enableAllProjectMcpServers,L.push("enableAllProjectMcpServers");else if(q)L.push("enableAllProjectMcpServers");if(K&&z.enabledMcpjsonServers){let N=X.enabledMcpjsonServers||[];$.enabledMcpjsonServers=[...new Set([...N,...z.enabledMcpjsonServers])],L.push("enabledMcpjsonServers")}if(Q&&z.disabledMcpjsonServers){let N=X.disabledMcpjsonServers||[];$.disabledMcpjsonServers=[...new Set([...N,...z.disabledMcpjsonServers])],L.push("disabledMcpjsonServers")}if(Object.keys($).length>0)Z("localSettings",$);if(L.includes("enableAllProjectMcpServers")||L.includes("enabledMcpjsonServers")||L.includes("disabledMcpjsonServers"))t((N)=>{let{enableAllProjectMcpServers:gq,enabledMcpjsonServers:nq,disabledMcpjsonServers:iq,...Tq}=N;return Tq})}catch(X){V(X)}}k();W();B();var I=new Map([["claude-fable-5","claude-fable-5-1"],["anthropic.claude-fable-5","anthropic.claude-fable-5-1"]]);function w(z){return I.get(z)??z}function mq(z){if(!z)return null;let q={};if(z.model!==void 0){let K=w(z.model);if(K!==z.model)q.model=K}if(z.advisorModel!==void 0){let K=w(z.advisorModel);if(K!==z.advisorModel)q.advisorModel=K}if(z.availableModels){let K=z.availableModels.map(w);if(K.some((Q,X)=>Q!==z.availableModels?.[X]))q.availableModels=K}if(z.modelOverrides){let K=Object.entries(z.modelOverrides),Q=K.filter(([X])=>I.has(X));if(Q.length>0)q.modelOverrides={...Object.fromEntries(Q.map(([X])=>[X,void 0])),...Object.fromEntries(K.map(([X,$])=>[w(X),$]))}}return Object.keys(q).length>0?q:null}function Sq(z){if(!z)return null;let K=Object.entries(z).filter(([,X])=>X.activeModelForProject!==void 0&&I.has(X.activeModelForProject));if(K.length===0)return null;let Q={...z};for(let[X,$]of K)Q[X]={...$,activeModelForProject:w($.activeModelForProject)};return Q}function qq(){let z=mq(H("userSettings"));if(z)Z("userSettings",z);let q=Sq(J().projects);if(q)Y((Q)=>({...Q,projects:q}));let K=G();if(K){let Q=w(K);if(Q!==K)O(Q)}}B();function zq(){let q=H("userSettings")?.model;if(typeof q==="string"){if(q.startsWith("fennec-latest[1m]"))Z("userSettings",{model:"opus[1m]"});else if(q.startsWith("fennec-latest"))Z("userSettings",{model:"opus"});else if(q.startsWith("fennec-fast-latest")||q.startsWith("opus-4-5-fast"))Z("userSettings",{model:"opus[1m]",fastMode:!0})}}W();Qq();x();B();function Xq(){if(U()!=="firstParty")return;if(!Kq())return;let z=H("userSettings")?.model;if(z!=="claude-opus-4-20250514"&&z!=="claude-opus-4-1-20250805"&&z!=="claude-opus-4-0"&&z!=="claude-opus-4-1")return;Z("userSettings",{model:"opus"}),Y((q)=>({...q,legacyOpusMigrationTimestamp:Date.now()}))}Qq();B();function Jq(){if(!Hq())return;if(H("userSettings")?.model!=="opus")return;if(Yq(Zq()))return;let q="opus[1m]",K=P(q)===P($q())?void 0:q;Z("userSettings",{model:K})}W();function Vq(){Y((z)=>{let q=z.replBridgeEnabled;if(q===void 0)return z;if(z.remoteControlAtStartup!==void 0)return z;let K={...z,remoteControlAtStartup:Boolean(q)};return delete K.replBridgeEnabled,K})}k();W();x();B();function Bq(){if(U()!=="firstParty")return;if(J().sonnet1m45MigrationComplete)return;if(H("userSettings")?.model==="sonnet[1m]")Z("userSettings",{model:"sonnet-4-5-20250929[1m]"});if(G()==="sonnet[1m]")O("sonnet-4-5-20250929[1m]");Y((Q)=>({...Q,sonnet1m45MigrationComplete:!0}))}Lq();W();x();B();function wq(){if(U()!=="firstParty")return;if(!A()&&!Wq()&&!Uq())return;let z=H("userSettings")?.model;if(z!=="claude-sonnet-4-5-20250929"&&z!=="claude-sonnet-4-5-20250929[1m]"&&z!=="sonnet-4-5-20250929"&&z!=="sonnet-4-5-20250929[1m]")return;let q=z.endsWith("[1m]");if(Z("userSettings",{model:q?"sonnet[1m]":"sonnet"}),J().numStartups>1)Y((Q)=>({...Q,sonnet45To46MigrationTimestamp:Date.now()}))}W();_();uq();B();function yq(){if(J().hasResetAutoModeOptInForDefaultOffer)return;if(Nq()!=="enabled")return;try{let q=H("userSettings");if(q?.skipAutoPermissionPrompt&&q?.permissions?.defaultMode!=="auto")Z("userSettings",{skipAutoPermissionPrompt:void 0});Y((K)=>{if(K.hasResetAutoModeOptInForDefaultOffer)return K;return{...K,hasResetAutoModeOptInForDefaultOffer:!0}})}catch(q){V(Error(`Failed to reset auto mode opt-in: ${q}`))}}Lq();W();x();B();function kq(){if(J().opusProMigrationComplete)return;if(U()!=="firstParty"||!A()){Y((Q)=>({...Q,opusProMigrationComplete:!0}));return}if(_q()?.model===void 0){let Q=Date.now();Y((X)=>({...X,opusProMigrationComplete:!0,opusProMigrationTimestamp:Q}))}else Y((Q)=>({...Q,opusProMigrationComplete:!0}))}lq();k();var M=13;function FK(){if(J().migrationVersion!==M)i(),s(),e(),kq(),Bq(),Xq(),wq(),zq(),Jq(),Vq(),qq(),yq(),Y((z)=>z.migrationVersion===M?z:{...z,migrationVersion:M});Aq().catch(()=>{})}function EK(){if(Gq()){T("info","prefetch_system_context_non_interactive"),E();return}if(xq())T("info","prefetch_system_context_has_trust"),E();else T("info","prefetch_system_context_skipped_no_trust")}function jK(){F("eagerLoadSettings_start");let z=j("--settings");if(z)g(z);let q=j("--setting-sources");if(q!==void 0)n(q);F("eagerLoadSettings_end")}function bK(z){if(process.env.CLAUDE_CODE_ENTRYPOINT)return;let q=process.argv.slice(2),K=q.indexOf("mcp");if(K!==-1&&q[K+1]==="serve"){process.env.CLAUDE_CODE_ENTRYPOINT="mcp";return}if(Oq(process.env.CLAUDE_CODE_ACTION)){process.env.CLAUDE_CODE_ENTRYPOINT="claude-code-github-action";return}process.env.CLAUDE_CODE_ENTRYPOINT=z?"sdk-cli":"cli"}
|
|
8
|
+
export{Jz as H,Vz as I,Bz as J,Wz as K,FK as L,EK as M,jK as N,bK as O};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{AF as E,Cv as zr,Io as kr,KF as Kr,Ks as k,Ll as F,Ls as qr,PS as s,Pl as Gr,RF as o,VF as Qr,am as L,em as Sr,hy as O,jT as Zr,jo as V,kP as l,lv as M,nv as f,pv as u,py as Ir,rF as Q,sF as Jr,so as Y,sv as C,tv as T,uv as d,wv as A,zo as D}from"./cli-1.1.31-g58b1jfa.mjs";import{KW as n,LW as Xr}from"./cli-1.1.31-sn0x975f.mjs";import{JX as i,PX as Wr}from"./cli-1.1.31-777381m0.mjs";import{dZ as z,eZ as jr}from"./cli-1.1.31-13cx7z8n.mjs";import{C7 as wr,T5 as yr,j7 as Z,s5 as H,t5 as B}from"./cli-1.1.31-adnn5x8c.mjs";import{Y7 as b,Z7 as g}from"./cli-1.1.31-sc82f8hw.mjs";import{Bfa as rr,Fba as h,L$ as j,N$ as t,Q$ as R,S$ as G,Vba as m,aaa as q,aca as e,jfa as p,kga as v,maa as _,ofa as K,uaa as X,vaa as c}from"./cli-1.1.31-p99fz46k.mjs";import{Ska as U,Vka as a}from"./cli-1.1.31-t6m64e0q.mjs";v();function Pr(r){let y=G().numStartups;R((w)=>{let S=w.tipsHistory??{};if(S[r]===y)return w;return{...w,tipsHistory:{...S,[r]:y}}})}function N(r){let y=G(),w=y.tipsHistory?.[r];if(!w)return 1/0;return y.numStartups-w}g();a();Ir();rr();Wr();jr();qr();Gr();wr();Xr();v();kr();t();Sr();e();zr();yr();c();Qr();Kr();Jr();Zr();_();var W;async function $r(){if(W!==void 0)return W;let r=await E();return W=Q in r,W}async function P(r,y,w){if(!await $r())return!1;if(o(`${r}@${Q}`))return!1;let{bashTools:S}=y??{};if(w.cli&&S?.size){if(w.cli.some((I)=>S.has(I)))return!0}if(w.filePath&&y?.readFileState){if(L(y.readFileState).some(($)=>w.filePath.test($)))return!0}return!1}var hr=[{id:"new-user-warmup",content:async()=>"Start with small features or bug fixes, tell Claudin to propose a plan, and verify its suggested edits",cooldownSessions:3,async isRelevant(){return G().numStartups<10}},{id:"plan-mode-for-complex-tasks",content:async()=>`Use Plan Mode to prepare for a complex request before making changes. Press ${k("chat:cycleMode","Chat","shift+tab")} twice to enable.`,cooldownSessions:5,isRelevant:async()=>{let r=G();return(r.lastPlanModeUse?(Date.now()-r.lastPlanModeUse)/86400000:1/0)>7}},{id:"default-permission-mode-config",content:async()=>"Use /config to change your default permission mode (including Plan Mode)",cooldownSessions:10,isRelevant:async()=>{try{let r=G(),y=K(),w=Boolean(r.lastPlanModeUse),S=Boolean(y?.permissions?.defaultMode);return w&&!S}catch(r){return U(`Failed to check default-permission-mode-config tip relevance: ${r}`,{level:"warn"}),!1}}},{id:"git-worktrees",content:async()=>"Use git worktrees to run multiple Claudin sessions in parallel.",cooldownSessions:10,isRelevant:async()=>{try{let r=G();return await m()<=1&&r.numStartups>50}catch(r){return!1}}},{id:"diff-reviewer",content:async()=>`Review local changes, stashes and the git log side by side — run /diff or hit ${k("chat:openDiff","Chat","ctrl+g")}.`,cooldownSessions:10,isRelevant:async()=>{try{return await h()}catch(r){return!1}}},{id:"diff-git-log",content:async()=>`Scroll back through your git log and open any commit's diff in /diff (or hit ${k("chat:openDiff","Chat","ctrl+g")}).`,cooldownSessions:15,isRelevant:async()=>{try{return await h()}catch(r){return!1}}},{id:"file-explorer",content:async()=>`Browse and edit files without leaving the REPL — run /explorer or hit ${k("chat:openExplorer","Chat","ctrl+e")} for a file tree with a built-in nvim-style editor.`,cooldownSessions:10,isRelevant:async()=>!0},{id:"explorer-fuzzy-find",content:async()=>"Inside /explorer, press / to fuzzy-find any file by name, or @ to drop it into your prompt.",cooldownSessions:15,isRelevant:async()=>!0},{id:"explorer-create-delete",content:async()=>"Inside /explorer, press a to create, r to rename, or d to delete the selected file.",cooldownSessions:15,isRelevant:async()=>!0},{id:"bash-output-filter-token-saving",content:async()=>"Bash output filter is active — redundant command output is trimmed before reaching the model, reducing token usage. Disable in /config.",cooldownSessions:20,async isRelevant(){let r=G();return r.numStartups>5&&r.bashOutputFilterEnabled!==!1}},{id:"color-when-multi-clauding",content:async()=>"Running multiple Claudin sessions? Use /color and /rename to tell them apart at a glance.",cooldownSessions:10,isRelevant:async()=>{if(s())return!1;return await n()>=2}},{id:"terminal-setup",content:async()=>j.terminal==="Apple_Terminal"?"Run /terminal-setup to enable convenient terminal integration like Option + Enter for new line and more":"Run /terminal-setup to enable convenient terminal integration like Shift + Enter for new line and more",cooldownSessions:10,async isRelevant(){let r=G();if(j.terminal==="Apple_Terminal")return!r.optionAsMetaKeyInstalled;return!r.shiftEnterKeyBindingInstalled}},{id:"shift-enter",content:async()=>j.terminal==="Apple_Terminal"?"Press Option+Enter to send a multi-line message":"Press Shift+Enter to send a multi-line message",cooldownSessions:10,async isRelevant(){let r=G();return Boolean((j.terminal==="Apple_Terminal"?r.optionAsMetaKeyInstalled:r.shiftEnterKeyBindingInstalled)&&r.numStartups>3)}},{id:"shift-enter-setup",content:async()=>j.terminal==="Apple_Terminal"?"Run /terminal-setup to enable Option+Enter for new lines":"Run /terminal-setup to enable Shift+Enter for new lines",cooldownSessions:10,async isRelevant(){if(!i())return!1;let r=G();return!(j.terminal==="Apple_Terminal"?r.optionAsMetaKeyInstalled:r.shiftEnterKeyBindingInstalled)}},{id:"memory-command",content:async()=>"Use /memory to view and manage Claudin memory",cooldownSessions:15,async isRelevant(){return G().memoryUsageCount<=0}},{id:"theme-command",content:async()=>"Use /theme to change the color theme",cooldownSessions:20,isRelevant:async()=>!0},{id:"colorterm-truecolor",content:async()=>"Try setting environment variable COLORTERM=truecolor for richer colors",cooldownSessions:30,isRelevant:async()=>!process.env.COLORTERM&&b.level<3},{id:"powershell-tool-env",content:async()=>"Set CLAUDIN_USE_POWERSHELL_TOOL=1 to enable the PowerShell tool (preview)",cooldownSessions:10,isRelevant:async()=>X()==="windows"&&process.env.CLAUDIN_USE_POWERSHELL_TOOL===void 0},{id:"status-line",content:async()=>"Use /statusline to set up a custom status line that will display beneath the input box",cooldownSessions:25,isRelevant:async()=>K().statusLine===void 0},{id:"prompt-queue",content:async()=>"Hit Enter to queue up additional messages while Claudin is working.",cooldownSessions:5,async isRelevant(){return G().promptQueueUseCount<=3}},{id:"enter-to-steer-in-relatime",content:async()=>"Send messages to Claudin while it works to steer Claudin in real-time",cooldownSessions:20,isRelevant:async()=>!0},{id:"todo-list",content:async()=>"Ask Claudin to create a todo list when working on complex tasks to track progress and remain on track",cooldownSessions:20,isRelevant:async()=>!0},{id:"vscode-command-install",content:async()=>`Open the Command Palette (Cmd+Shift+P) and run "Shell Command: Install '${j.terminal==="vscode"?"code":j.terminal}' command in PATH" to enable IDE integration`,cooldownSessions:0,async isRelevant(){if(!M())return!1;if(X()!=="macos")return!1;switch(j.terminal){case"vscode":return!await d();case"cursor":return!await C();case"windsurf":return!await T();default:return!1}}},{id:"ide-upsell-external-terminal",content:async()=>"Connect Claudin to your IDE · /ide",cooldownSessions:4,async isRelevant(){if(f())return!1;if((await u()).length!==0)return!1;return(await A()).length>0}},{id:"install-github-app",content:async()=>"Run /install-github-app to tag @claude right from your Github issues and PRs",cooldownSessions:10,isRelevant:async()=>!G().githubActionSetupCount},{id:"install-slack-app",content:async()=>"Run /install-slack-app to use Claude in Slack",cooldownSessions:10,isRelevant:async()=>!G().slackAppInstallCount},{id:"permissions",content:async()=>"Use /permissions to pre-approve and pre-deny bash, edit, and MCP tools",cooldownSessions:10,async isRelevant(){return G().numStartups>10}},{id:"drag-and-drop-images",content:async()=>"Did you know you can drag and drop image files into your terminal?",cooldownSessions:10,isRelevant:async()=>!j.isSSH()},{id:"paste-images-mac",content:async()=>"Paste images into Claudin using control+v (not cmd+v!)",cooldownSessions:10,isRelevant:async()=>X()==="macos"},{id:"double-esc",content:async()=>"Double-tap esc to rewind the conversation to a previous point in time",cooldownSessions:10,isRelevant:async()=>!O()},{id:"double-esc-code-restore",content:async()=>"Double-tap esc to rewind the code and/or conversation to a previous point in time",cooldownSessions:10,isRelevant:async()=>O()},{id:"continue",content:async()=>"Run claudin --continue or claudin --resume to resume a conversation",cooldownSessions:10,isRelevant:async()=>!0},{id:"rename-conversation",content:async()=>"Name your conversations with /rename to find them easily in /resume later",cooldownSessions:15,isRelevant:async()=>l()&&G().numStartups>10},{id:"custom-commands",content:async()=>"Create skills by adding .md files to .claudin/skills/ in your project or ~/.claudin/skills/ for skills that work in any project",cooldownSessions:15,async isRelevant(){return G().numStartups>10}},{id:"shift-tab",content:async()=>`Hit ${k("chat:cycleMode","Chat","shift+tab")} to cycle between default mode, auto-accept edit mode, and plan mode`,cooldownSessions:10,isRelevant:async()=>!0},{id:"image-paste",content:async()=>`Use ${k("chat:imagePaste","Chat","ctrl+v")} to paste images from your clipboard`,cooldownSessions:20,isRelevant:async()=>!0},{id:"custom-agents",content:async()=>"Use /agents to optimize specific tasks. Eg. Software Architect, Code Writer, Code Reviewer",cooldownSessions:15,async isRelevant(){return G().numStartups>5}},{id:"agent-flag",content:async()=>"Use --agent <agent_name> to directly start a conversation with a subagent",cooldownSessions:15,async isRelevant(){return G().numStartups>5}},{id:"opusplan-mode-reminder",content:async()=>`Your default model setting is Opus Plan Mode. Press ${k("chat:cycleMode","Chat","shift+tab")} twice to activate Plan Mode and plan with Claude Opus.`,cooldownSessions:2,async isRelevant(){let r=G(),w=H()==="opusplan",S=r.lastPlanModeUse?(Date.now()-r.lastPlanModeUse)/86400000:1/0;return w&&S>3}},{id:"frontend-design-plugin",content:async(r)=>{return`Working with HTML/CSS? Install the frontend-design plugin:
|
|
2
|
+
${z("suggestion",r.theme)(`/plugin install frontend-design@${Q}`)}`},cooldownSessions:3,isRelevant:async(r)=>P("frontend-design",r,{filePath:/\.(html|css|htm)$/i})},{id:"vercel-plugin",content:async(r)=>{return`Working with Vercel? Install the vercel plugin:
|
|
3
|
+
${z("suggestion",r.theme)(`/plugin install vercel@${Q}`)}`},cooldownSessions:3,isRelevant:async(r)=>P("vercel",r,{filePath:/(?:^|[/\\])vercel\.json$/i,cli:["vercel"]})},{id:"effort-high-nudge",content:async(r)=>{let w=z("suggestion",r.theme)("/effort high");return q("tengu_tide_elm","off")==="copy_b"?`Use ${w} for better one-shot answers. Claudin thinks it through first.`:`Working on something tricky? ${w} gives better first answers`},cooldownSessions:3,isRelevant:async()=>{if(!Z())return!1;if(!V(B()))return!1;if(p("policySettings")?.effortLevel!==void 0)return!1;if(D()!==void 0)return!1;let r=Y();if(r==="high"||r==="max")return!1;return q("tengu_tide_elm","off")!=="off"}},{id:"subagent-fanout-nudge",content:async(r)=>{let y=z("suggestion",r.theme);return q("tengu_tern_alloy","off")==="copy_b"?`For big tasks, tell Claudin to ${y("use subagents")}. They work in parallel and keep your main thread clean.`:`Say ${y('"fan out subagents"')} and Claudin sends a team. Each one digs deep so nothing gets missed.`},cooldownSessions:3,isRelevant:async()=>{if(!Z())return!1;return q("tengu_tern_alloy","off")!=="off"}},{id:"loop-command-nudge",content:async(r)=>{let y=z("suggestion",r.theme);return q("tengu_timber_lark","off")==="copy_b"?`Use ${y("/loop 5m check the deploy")} to run any prompt on a schedule. Set it and forget it.`:`${y("/loop")} runs any prompt on a recurring schedule. Great for monitoring deploys, babysitting PRs, or polling status.`},cooldownSessions:3,isRelevant:async()=>{if(!Z())return!1;if(!F())return!1;return q("tengu_timber_lark","off")!=="off"}},{id:"feedback-command",content:async()=>"Use /feedback to help us improve!",cooldownSessions:15,async isRelevant(){return G().numStartups>5}}],Or=[];function Rr(){let y=K().spinnerTipsOverride;if(!y?.tips?.length)return[];return y.tips.map((w,S)=>({id:`custom-tip-${S}`,content:async()=>w,cooldownSessions:0,isRelevant:async()=>!0}))}async function ar(r){let w=K().spinnerTipsOverride,S=Rr();if(w?.excludeDefault&&S.length>0)return S;let I=[...hr,...Or],$=await Promise.all(I.map((J)=>J.isRelevant(r)));return[...I.filter((J,x)=>$[x]).filter((J)=>N(J.id)>=J.cooldownSessions),...S]}
|
|
4
|
+
export{Pr as Ta,N as Ua,ar as Va};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Dj as M,Ej as W,aO as O,bO as P,cO as Q,dO as U,gO as X}from"./cli-1.1.31-g58b1jfa.mjs";import{lsa as V}from"./cli-1.1.31-qj8vksz8.mjs";function Y(f){return f==="projectSettings"||f==="policySettings"||f==="command"}function J(f){return O(f)}function L(f,G,q){let v=J(G.source),z=J(q.source),j=G.ruleValue.toolName;if(f==="deny")return`Remove the "${j}" deny rule from ${v}, or remove the specific allow rule from ${z}`;return`Remove the "${j}" ask rule from ${v}, or remove the specific allow rule from ${z}`}function Z(f,G,q){let{toolName:v,ruleContent:z}=f.ruleValue;if(z===void 0)return{shadowed:!1};let j=G.find((E)=>E.ruleValue.toolName===v&&E.ruleValue.ruleContent===void 0);if(!j)return{shadowed:!1};if(v===M&&q.sandboxAutoAllowEnabled){if(!Y(j.source))return{shadowed:!1}}return{shadowed:!0,shadowedBy:j,shadowType:"ask"}}function _(f,G){let{toolName:q,ruleContent:v}=f.ruleValue;if(v===void 0)return{shadowed:!1};let z=G.find((j)=>j.ruleValue.toolName===q&&j.ruleValue.ruleContent===void 0);if(!z)return{shadowed:!1};return{shadowed:!0,shadowedBy:z,shadowType:"deny"}}function F(f,G){let q=[],v=P(f),z=U(f),j=Q(f);for(let E of v){let H=_(E,j);if(H.shadowed){let K=J(H.shadowedBy.source);q.push({rule:E,reason:`Blocked by "${H.shadowedBy.ruleValue.toolName}" deny rule (from ${K})`,shadowedBy:H.shadowedBy,shadowType:"deny",fix:L("deny",H.shadowedBy,E)});continue}let I=Z(E,z,G);if(I.shadowed){let K=J(I.shadowedBy.source);q.push({rule:E,reason:`Shadowed by "${I.shadowedBy.ruleValue.toolName}" ask rule (from ${K})`,shadowedBy:I.shadowedBy,shadowType:"ask",fix:L("ask",I.shadowedBy,E)})}}return q}var $=V(()=>{W();X()});
|
|
2
|
+
export{F as Mg,$ as Ng};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{lsa as M}from"./cli-1.1.31-qj8vksz8.mjs";function J(){return"prod"}function W(){if(process.env.CLAUDE_CODE_CUSTOM_OAUTH_URL)return"-custom-oauth";switch(J()){case"local":return"-local-oauth";case"staging":return"-staging-oauth";case"prod":return""}}function $(){let k=process.env.CLAUDE_LOCAL_OAUTH_API_BASE?.replace(/\/$/,"")??"http://localhost:8000",x=process.env.CLAUDE_LOCAL_OAUTH_APPS_BASE?.replace(/\/$/,"")??"http://localhost:4000",q=process.env.CLAUDE_LOCAL_OAUTH_CONSOLE_BASE?.replace(/\/$/,"")??"http://localhost:3000";return{BASE_API_URL:k,CONSOLE_AUTHORIZE_URL:`${q}/oauth/authorize`,CLAUDE_AI_AUTHORIZE_URL:`${x}/oauth/authorize`,CLAUDE_AI_ORIGIN:x,TOKEN_URL:`${k}/v1/oauth/token`,API_KEY_URL:`${k}/api/oauth/claude_cli/create_api_key`,ROLES_URL:`${k}/api/oauth/claude_cli/roles`,CONSOLE_SUCCESS_URL:`${q}/buy_credits?returnUrl=/oauth/code/success%3Fapp%3Dclaude-code`,CLAUDEAI_SUCCESS_URL:`${q}/oauth/code/success?app=claude-code`,MANUAL_REDIRECT_URL:`${q}/oauth/code/callback`,CLIENT_ID:"22422756-60c9-4084-8eb7-27705fd5cf9a",OAUTH_FILE_SUFFIX:"-local-oauth",MCP_PROXY_URL:"http://localhost:8205",MCP_PROXY_PATH:"/v1/toolbox/shttp/mcp/{server_id}"}}function h(){let k=(()=>{switch(J()){case"local":return $();case"staging":return z;case"prod":return z}})(),x=process.env.CLAUDE_CODE_CUSTOM_OAUTH_URL;if(x){let j=x.replace(/\/$/,"");if(!m.includes(j))throw Error("CLAUDE_CODE_CUSTOM_OAUTH_URL is not an approved endpoint.");k={...k,BASE_API_URL:j,CONSOLE_AUTHORIZE_URL:`${j}/oauth/authorize`,CLAUDE_AI_AUTHORIZE_URL:`${j}/oauth/authorize`,CLAUDE_AI_ORIGIN:j,TOKEN_URL:`${j}/v1/oauth/token`,API_KEY_URL:`${j}/api/oauth/claude_cli/create_api_key`,ROLES_URL:`${j}/api/oauth/claude_cli/roles`,CONSOLE_SUCCESS_URL:`${j}/oauth/code/success?app=claude-code`,CLAUDEAI_SUCCESS_URL:`${j}/oauth/code/success?app=claude-code`,MANUAL_REDIRECT_URL:`${j}/oauth/code/callback`,OAUTH_FILE_SUFFIX:"-custom-oauth"}}let q=process.env.CLAUDE_CODE_OAUTH_CLIENT_ID;if(q)k={...k,CLIENT_ID:q};return k}var Q="user:inference",K="user:profile",V="org:create_api_key",X="oauth-2025-04-20",Y,Z,y,z,G="https://claude.ai/oauth/claude-code-client-metadata",m;var w=M(()=>{Y=[V,K],Z=[K,Q,"user:sessions:claude_code","user:mcp_servers","user:file_upload"],y=Array.from(new Set([...Y,...Z])),z={BASE_API_URL:"https://api.anthropic.com",CONSOLE_AUTHORIZE_URL:"https://platform.claude.com/oauth/authorize",CLAUDE_AI_AUTHORIZE_URL:"https://claude.com/cai/oauth/authorize",CLAUDE_AI_ORIGIN:"https://claude.ai",TOKEN_URL:"https://platform.claude.com/v1/oauth/token",API_KEY_URL:"https://api.anthropic.com/api/oauth/claude_cli/create_api_key",ROLES_URL:"https://api.anthropic.com/api/oauth/claude_cli/roles",CONSOLE_SUCCESS_URL:"https://platform.claude.com/buy_credits?returnUrl=/oauth/code/success%3Fapp%3Dclaude-code",CLAUDEAI_SUCCESS_URL:"https://platform.claude.com/oauth/code/success?app=claude-code",MANUAL_REDIRECT_URL:"https://platform.claude.com/oauth/code/callback",CLIENT_ID:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",OAUTH_FILE_SUFFIX:"",MCP_PROXY_URL:"https://mcp-proxy.anthropic.com",MCP_PROXY_PATH:"/v1/mcp/{server_id}"};m=["https://beacon.claude-ai.staging.ant.dev","https://claude.fedstart.com","https://claude-staging.fedstart.com"]});
|
|
2
|
+
export{W as Jja,Q as Kja,K as Lja,X as Mja,Y as Nja,Z as Oja,y as Pja,G as Qja,h as Rja,w as Sja};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import{vc as K2,wc as sq}from"./cli-1.1.31-b2pt6rsc.mjs";import{Ac as y2,Cc as rq,xc as m2,yc as X2,zc as a0}from"./cli-1.1.31-6pxakyvg.mjs";import{Dc as _0,Gc as tq}from"./cli-1.1.31-8bcb1d1y.mjs";import{Eh as V2,Fh as iq}from"./cli-1.1.31-x1wr5k0p.mjs";import{$I as nq,CH as I4,DH as dq,Oy as Z2,Po as $2,Qo as xq,Qy as pq,SH as Wz,TH as Vq,UH as Vz,Us as t,VH as mz,WH as Xz,Ws as cq,XH as mq,YI as r4,ZI as r2,aJ as aq,cB as N2,dB as G2,eB as Y2,ev as J2,fB as W2,fv as lq,gB as vq,mH as L0,nH as t4,wH as f,xH as t2}from"./cli-1.1.31-g58b1jfa.mjs";import{NZ as x4,fZ as w,hZ as N}from"./cli-1.1.31-13cx7z8n.mjs";import{A0 as Lq,B0 as Bz,C0 as jz,D0 as Uz,E0 as Iz,F0 as Z0,G0 as X4,H0 as Fq,I0 as U4,K0 as Ez,L0 as Q2,N0 as uz,h0 as Cz,i0 as fz,j0 as gz,k0 as xz,l0 as q2,m0 as G0,n0 as K4,o0 as cz,p0 as lz,q0 as Pq,r0 as j4,t0 as az,u0 as R2,w0 as iz,z0 as wz}from"./cli-1.1.31-5kgkq6vm.mjs";import{R0 as c4,S0 as l4,T0 as p4,U0 as v4,V0 as d4,W0 as i2,Z0 as n4,b1 as a4,c1 as z2,d1 as i4}from"./cli-1.1.31-556xnzb4.mjs";import{f1 as l0,g1 as Hz}from"./cli-1.1.31-g41zancj.mjs";import{o3 as N0,p3 as $,q3 as X,r3 as g0}from"./cli-1.1.31-eqfmzrxc.mjs";import{s3 as P0}from"./cli-1.1.31-9d5v98td.mjs";import{A5 as n0,K3 as g4,M3 as a2,T5 as gq}from"./cli-1.1.31-adnn5x8c.mjs";import{$ga as bz,Bga as J0,Cga as M4,Ega as _4,Iga as f4,Nga as W4,Oga as Jz,Pga as Zz,Qga as x0,Rga as V4,Sga as Nz,Tga as Y4,Uga as Gz,Vga as Yz,Wga as Wq,X_ as F0,Xga as w4,Y_ as Aq,Yga as Kz,Zga as B4,bha as ez,cha as t0,lga as oz,mga as M0,nga as Cq,oga as i0,pga as i,rga as v,sga as d0,sha as fq,uga as D0,vga as F4,wga as Q0,xga as $0}from"./cli-1.1.31-p99fz46k.mjs";import{Fla as s,Lla as c0}from"./cli-1.1.31-wba64b2s.mjs";import{hsa as I0,isa as Sq,lsa as a}from"./cli-1.1.31-qj8vksz8.mjs";function o2(z,q=J4,R,J){let G=J?.activate??!0,W=i().find((H)=>H.provider==="openai"&&H.extras?.githubToken!==void 0);if(W){if(!$0(W.id,{provider:"openai",name:W.name,baseUrl:R||W.baseUrl,model:W.model||q,apiKey:z,extras:{...W.extras,githubToken:z}}))return{mode:"failed"};if(G)J0(W.id);return{mode:"updated"}}if(!Q0({provider:"openai",name:"GitHub Copilot",baseUrl:R||s2,model:q,apiKey:z,extras:{githubToken:z}},{makeActive:G}))return{mode:"failed"};return{mode:"created"}}function s4({onDone:z,onBack:q,onChangeAPIKey:R,activateOnSave:J=!0}){let G=n4()?.trim()?"already-authed":"menu",[W,L]=r.useState(G),[H,F]=r.useState(null),[y,_]=r.useState(""),[h,P]=r.useState(0),[k,O]=r.useState(null),K=r.useCallback(async(g,E=J4,I,x)=>{let V0=a4(g,I,x?.enterpriseDomain);if(!V0.success){F(V0.warning??"Could not save token to secure storage."),L("error");return}if(o2(g,E,x?.baseUrl,{activate:J}).mode==="failed"){F("Could not save the GitHub Copilot provider profile."),L("error");return}g4(),R?.(),z(J?"GitHub Copilot onboard complete. Copilot token stored in secure storage and as the active /provider profile.":'GitHub Copilot sign-in complete. Copilot token stored in secure storage; the profile was saved without changing the active provider — activate it from "Set active provider".',{display:"user"})},[J,R,z]),d=r.useCallback(async(g)=>{L("device-busy"),F(null),O(null);try{let E=await l4({domain:g});O({user_code:E.user_code,verification_uri:E.verification_uri}),await v4(E.verification_uri);let I=await p4(E.device_code,{initialInterval:E.interval,timeoutSeconds:E.expires_in,domain:g}),x=await d4(I,{domain:g});await K(x.token,J4,I,{baseUrl:x.endpoints.api?.replace(/\/+$/,"")||void 0,enterpriseDomain:g})}catch(E){F(E instanceof Error?E.message:String(E)),L("error")}},[K]);if(W==="already-authed")return X(w,{flexDirection:"column",gap:1,children:[$(N,{bold:!0,children:"GitHub Copilot"}),$(N,{children:"You are already signed in to GitHub Copilot."}),$(N,{dimColor:!0,children:'Choose "Sign in again" to refresh your token, or go back to the provider menu.'}),$(f,{options:[{label:"Sign in again",value:"sign-in-again"},{label:"Sign in with GitHub Enterprise",value:"enterprise"},{label:q?"Back to /provider menu":"Cancel",value:"back"}],onChange:(E)=>{if(E==="sign-in-again"){d();return}if(E==="enterprise"){L("enterprise-domain");return}if(q){q();return}z("GitHub onboard cancelled",{display:"system"})}})]});if(W==="enterprise-domain")return X(w,{flexDirection:"column",gap:1,children:[$(N,{bold:!0,children:"GitHub Enterprise sign-in"}),$(N,{dimColor:!0,children:"Enter your GitHub Enterprise domain (e.g. github.acme.com). Leave empty for github.com."}),X(w,{flexDirection:"row",gap:1,children:[$(N,{children:">"}),$(L0,{value:y,onChange:_,onSubmit:()=>{let E=c4(y);if(!E){d();return}d(E)},onExit:()=>L(G),focus:!0,showCursor:!0,placeholder:"github.acme.com",columns:80,cursorOffset:h,onChangeCursorOffset:P})]}),$(N,{dimColor:!0,children:"Press Enter to continue. Press Esc to go back."})]});if(W==="error"&&H)return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"error",children:H}),$(f,{options:[{label:q?"Back to /provider menu":"Back to menu",value:"back"},{label:"Exit",value:"exit"}],onChange:(E)=>{if(E==="back"){if(q){q();return}L("menu"),F(null);return}z("GitHub onboard cancelled",{display:"system"})}})]});if(W==="device-busy")return X(w,{flexDirection:"column",gap:1,children:[$(N,{children:"GitHub Copilot sign-in"}),k?X(N0,{children:[X(N,{children:["Enter code ",$(N,{bold:!0,children:k.user_code})," at"," ",k.verification_uri]}),$(N,{dimColor:!0,children:"A browser window may have opened. Waiting for authorization..."})]}):$(N,{dimColor:!0,children:"Requesting device code from GitHub..."}),$(r4,{})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{bold:!0,children:"GitHub Copilot setup"}),$(N,{dimColor:!0,children:"Stores your token in the OS credential store (macOS Keychain when available) and creates a /provider profile so Copilot is the active provider — no manual env exports required."}),$(f,{options:[{label:"Sign in with browser",value:"device"},{label:"Sign in with GitHub Enterprise",value:"enterprise"},{label:q?"Back to /provider menu":"Cancel",value:"cancel"}],onChange:(g)=>{if(g==="cancel"){if(q){q();return}z("GitHub onboard cancelled",{display:"system"});return}if(g==="enterprise"){L("enterprise-domain");return}d()}})]})}var r,J4="github:copilot",s2="https://api.githubcopilot.com";var o4=a(()=>{t2();r2();t4();x4();i2();i4();a2();f4();g0();r=I0(P0(),1)});function zz(z){return[z.name,z.family??"",...z.families??[],z.parameterSize??"",z.quantizationLevel??""].join(" ").toLowerCase()}function h0(z,q){return q.some((R)=>z.includes(R))}function Rq(z){return!h0(zz(z),e4)}function Qq(z){return z.find(Rq)??null}function Z4(z){let R=`${z.parameterSize??""} ${z.name}`.toLowerCase().match(/(\d+(?:\.\d+)?)\s*b\b/);if(R?.[1])return Number(R[1]);if(typeof z.sizeBytes==="number"&&z.sizeBytes>0)return Number((z.sizeBytes/1e9).toFixed(1));return null}function $q(z){return(z.quantizationLevel??z.name).toLowerCase()}function Jq(z,q,R){if(z===null)return R.push("unknown size"),0;if(q==="latency"){if(z<=4)return R.push("tiny model for low latency"),32;if(z<=8)return R.push("small model for fast responses"),26;if(z<=14)return R.push("mid-sized model with acceptable latency"),16;if(z<=24)return R.push("larger model may be slower"),8;return R.push("large model likely slower locally"),z<=40?0:-8}if(q==="coding"){if(z>=7&&z<=14)return R.push("strong coding size tier"),24;if(z>14&&z<=34)return R.push("large coding-capable size tier"),28;if(z>34)return R.push("very large model with higher quality potential"),18;return R.push("compact model may trade off coding depth"),12}if(z>=7&&z<=14)return R.push("great balanced size tier"),26;if(z>=3&&z<7)return R.push("compact balanced size tier"),18;if(z>14&&z<=24)return R.push("high quality balanced size tier"),20;if(z>24)return R.push("large model for quality-first usage"),10;return R.push("very small model for general usage"),8}function Zq(z,q,R){let J=$q(z);if(J.includes("q4"))return R.push("efficient Q4 quantization"),q==="latency"?8:4;if(J.includes("q5"))return R.push("balanced Q5 quantization"),q==="latency"?6:5;if(J.includes("q8"))return R.push("higher quality Q8 quantization"),q==="latency"?2:5;return 0}function Nq(z,q,R){if(q.score!==z.score)return q.score-z.score;let J=Z4(z)??Number.POSITIVE_INFINITY,G=Z4(q)??Number.POSITIVE_INFINITY;if(R==="latency")return J-G;if(R==="coding")return G-J;let W=14;return Math.abs(J-W)-Math.abs(G-W)}function N4(z,q){return z.map((R)=>{let J=zz(R),G=[],W=0;if(h0(J,e4))W-=40,G.push("not a chat-first model");if(h0(J,e2))W+=q==="coding"?24:q==="balanced"?10:4,G.push("coding-oriented model family");if(h0(J,zq))W+=q==="latency"?4:q==="coding"?6:8,G.push("strong general-purpose model family");if(h0(J,qq))W+=q==="latency"?2:6,G.push("chat/instruct tuned");if(J.includes("vision")||J.includes("vl"))W-=2,G.push("vision model adds extra overhead");W+=Jq(Z4(R),q,G),W+=Zq(R,q,G);let L=G.slice(0,3).join(", ");return{...R,score:W,reasons:G,summary:L}}).sort((R,J)=>Nq(R,J,q))}function qz(z,q){return Qq(N4(z,q))}var e2,zq,qq,e4;var Rz=a(()=>{e2=["coder","codellama","codegemma","codestral","devstral","starcoder","deepseek-coder","qwen2.5-coder","qwen-coder"],zq=["llama","qwen","mistral","gemma","phi","deepseek"],qq=["instruct","chat","assistant"],e4=["embed","embedding","rerank","bge","whisper"]});function Yq(z){let q=z.toLowerCase();return Gq.some((R)=>q.includes(R))}function G4(z){try{let q=new URL(z);if(q.username)q.username="redacted";if(q.password)q.password="redacted";for(let R of q.searchParams.keys())if(Yq(R))q.searchParams.set(R,"redacted");return q.toString()}catch{return z.replace(/\/\/[^/@\s]+(?::[^/@\s]*)?@/g,"//redacted@").replace(/([?&](?:token|access_token|refresh_token|api_key|apikey|key|password|passwd|pwd|auth|authorization|signature|sig|secret)=)[^&#]*/gi,"$1redacted")}}var Gq;var Qz=a(()=>{Gq=["api_key","apikey","key","token","access_token","refresh_token","signature","sig","secret","password","passwd","pwd","auth","authorization"]});function Xq(z){let q=`http://localhost:${z.port}/auth/callback`,R=new URL(`${W4}/oauth/authorize`);return R.searchParams.append("response_type","code"),R.searchParams.append("client_id",V4()),R.searchParams.append("redirect_uri",q),R.searchParams.append("scope",Jz),R.searchParams.append("code_challenge",z.codeChallenge),R.searchParams.append("code_challenge_method","S256"),R.searchParams.append("id_token_add_organizations","true"),R.searchParams.append("codex_cli_simplified_flow","true"),R.searchParams.append("state",z.state),R.searchParams.append("originator",Zz),R.toString()}function yq(){return`<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<title>Codex Login Complete</title>
|
|
6
|
+
<style>
|
|
7
|
+
body { font-family: sans-serif; padding: 32px; line-height: 1.5; color: #111827; }
|
|
8
|
+
h1 { margin: 0 0 12px; font-size: 22px; }
|
|
9
|
+
p { margin: 0 0 10px; }
|
|
10
|
+
</style>
|
|
11
|
+
</head>
|
|
12
|
+
<body>
|
|
13
|
+
<h1>Codex login complete</h1>
|
|
14
|
+
<p>You can return to Claudin now.</p>
|
|
15
|
+
<p>Claudin will finish activating your new Codex OAuth login.</p>
|
|
16
|
+
</body>
|
|
17
|
+
</html>`}function Kq(z){return`<!doctype html>
|
|
18
|
+
<html lang="en">
|
|
19
|
+
<head>
|
|
20
|
+
<meta charset="utf-8" />
|
|
21
|
+
<title>Codex Login Failed</title>
|
|
22
|
+
<style>
|
|
23
|
+
body { font-family: sans-serif; padding: 32px; line-height: 1.5; color: #111827; }
|
|
24
|
+
h1 { margin: 0 0 12px; font-size: 22px; color: #991b1b; }
|
|
25
|
+
p { margin: 0 0 10px; }
|
|
26
|
+
</style>
|
|
27
|
+
</head>
|
|
28
|
+
<body>
|
|
29
|
+
<h1>Codex login failed</h1>
|
|
30
|
+
<p>${Gz(z)}</p>
|
|
31
|
+
<p>You can close this window and try again in Claudin.</p>
|
|
32
|
+
</body>
|
|
33
|
+
</html>`}function $z(){return`<!doctype html>
|
|
34
|
+
<html lang="en">
|
|
35
|
+
<head>
|
|
36
|
+
<meta charset="utf-8" />
|
|
37
|
+
<title>Codex Login Cancelled</title>
|
|
38
|
+
<style>
|
|
39
|
+
body { font-family: sans-serif; padding: 32px; line-height: 1.5; color: #111827; }
|
|
40
|
+
h1 { margin: 0 0 12px; font-size: 22px; }
|
|
41
|
+
p { margin: 0 0 10px; }
|
|
42
|
+
</style>
|
|
43
|
+
</head>
|
|
44
|
+
<body>
|
|
45
|
+
<h1>Codex login cancelled</h1>
|
|
46
|
+
<p>You can close this window and retry in Claudin.</p>
|
|
47
|
+
</body>
|
|
48
|
+
</html>`}async function bq(z){let q=`http://localhost:${z.port}/auth/callback`,R=new URLSearchParams({grant_type:"authorization_code",code:z.authorizationCode,redirect_uri:q,client_id:V4(),code_verifier:z.codeVerifier}),J=await fetch(`${W4}/oauth/token`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:R,signal:z.signal?AbortSignal.any([z.signal,AbortSignal.timeout(15000)]):AbortSignal.timeout(15000)});if(!J.ok){let y=await J.text().catch(()=>"");throw Error(y.trim()?`Codex OAuth token exchange failed (${J.status}): ${y.trim()}`:`Codex OAuth token exchange failed with status ${J.status}.`)}let G=await J.json(),W=x0(G.access_token),L=x0(G.refresh_token);if(!W||!L)throw Error("Codex OAuth completed, but the token response was missing credentials.");let H=x0(G.id_token);return{apiKey:H?await Yz(H).catch(()=>{return}):void 0,accessToken:W,refreshToken:L,idToken:H,accountId:Y4(H)??Y4(W)}}class m4{authCodeListener=null;port=null;tokenExchangeAbortController=null;buildCancellationError(){return Error("Codex OAuth flow was cancelled.")}async startOAuthFlow(z){let q=Vz(),R=Nz(),J=new Wz("/auth/callback");this.authCodeListener=J,this.port=null;try{let G=await J.start(R);this.port=G;let W=Xz(),L=await mz(q),H=Xq({port:G,codeChallenge:L,state:W});try{let F=await J.waitForAuthorization(W,async()=>{await z(H)}),y=new AbortController;this.tokenExchangeAbortController=y;let _;try{_=await bq({authorizationCode:F,codeVerifier:q,port:G,signal:y.signal})}finally{if(this.tokenExchangeAbortController===y)this.tokenExchangeAbortController=null}if(this.authCodeListener!==J)throw this.buildCancellationError();return J.handleSuccessRedirect([],(h)=>{h.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),h.end(yq())}),_}catch(F){let y=this.authCodeListener===J?F:this.buildCancellationError();if(J.hasPendingResponse()){let _=y instanceof Error&&y.message==="Codex OAuth flow was cancelled.";J.handleErrorRedirect((h)=>{h.writeHead(_?200:400,{"Content-Type":"text/html; charset=utf-8"}),h.end(_?$z():Kq(y instanceof Error?y.message:String(y)))})}throw y}finally{this.cleanup()}}catch(G){let W=G instanceof Error?G.message:String(G);if(W.includes("EADDRINUSE")||W.includes(String(R)))throw Error(`Codex OAuth needs localhost:${R} for its callback. Close any app already using that port and try again.`);throw G}}cleanup(){let z=this.buildCancellationError();if(this.tokenExchangeAbortController?.abort(z),this.tokenExchangeAbortController=null,this.authCodeListener?.hasPendingResponse())this.authCodeListener.handleErrorRedirect((q)=>{q.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),q.end($z())});this.authCodeListener?.cancelPendingAuthorization(z),this.authCodeListener=null,this.port=null}}var yz=a(()=>{Vq();mq();Wq()});function Hq(){return new m4}function Lz(z){let{onAuthenticated:q}=z,R=z.deps?.createOAuthService??Hq,J=z.deps?.openBrowser??l0,G=z.deps?.saveCodexCredentials??Kz,W=z.deps?.isBareMode??s,[L,H]=p0.useState({state:"starting"});return p0.useEffect(()=>{if(W()){H({state:"error",message:"Codex OAuth is unavailable in --bare because secure storage is disabled."});return}let F=!1,y=R();return y.startOAuthFlow(async(_)=>{if(F)return;H({state:"waiting",authUrl:_,browserOpened:null});let h=await J(_);if(F)return;H({state:"waiting",authUrl:_,browserOpened:h})}).then(async(_)=>{if(F)return;await q(_,(P)=>{let k=G({apiKey:_.apiKey,accessToken:_.accessToken,refreshToken:_.refreshToken,idToken:_.idToken,accountId:_.accountId,profileId:P?.profileId});if(!k.success)throw Error(k.warning??"Codex OAuth succeeded, but credentials could not be saved securely.")})}).catch((_)=>{if(F)return;H({state:"error",message:_ instanceof Error?_.message:String(_)})}),()=>{F=!0,y.cleanup()}},[R,W,q,J,G]),L}var p0;var Fz=a(()=>{yz();Hz();bz();c0();p0=I0(P0(),1)});function Dz(){return{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":wz()}}function _z(z,q){let R=Number(z);return Number.isFinite(R)&&R>0?R*1000:q}function Bq(z,q){if(q?.aborted)return Promise.resolve();return new Promise((R)=>{let J=setTimeout(()=>{q?.removeEventListener("abort",G),R()},z),G=()=>{clearTimeout(J),R()};q?.addEventListener("abort",G,{once:!0})})}async function jq(z){let q=z?.fetchImpl??fetch,R=z?.signal?AbortSignal.any([z.signal,AbortSignal.timeout(15000)]):AbortSignal.timeout(15000),J=await q(jz,{method:"POST",headers:Dz(),body:new URLSearchParams({client_id:X4(),scope:Iz}).toString(),signal:R});if(!J.ok){let F=await J.text().catch(()=>"");throw Error(`xAI device code request failed (${J.status})${F?`: ${F.trim()}`:""}`)}let G=await J.json(),W=Z0(G.device_code),L=Z0(G.user_code),H=Z0(G.verification_uri);if(!W||!L||!H)throw Error("xAI device code response is missing device_code / user_code / verification_uri.");return{device_code:W,user_code:L,verification_uri:H,verification_uri_complete:Z0(G.verification_uri_complete),expires_in:typeof G.expires_in==="number"&&G.expires_in>0?G.expires_in:hz/1000,interval:typeof G.interval==="number"&&G.interval>0?G.interval:Pz/1000}}async function Uq(z,q){let R=q?.fetchImpl??fetch,J=q?.sleep??Bq,G=q?.now??(()=>Date.now()),W=_z(z.expires_in,hz),L=G()+W,H=Math.max(_z(z.interval,Pz),Mq);while(G()<L){if(q?.signal?.aborted)throw Error("xAI device authorization was cancelled.");let F=await R(Bz,{method:"POST",headers:Dz(),body:new URLSearchParams({grant_type:Uz,client_id:X4(),device_code:z.device_code}).toString(),signal:q?.signal});if(F.ok){let P=await F.json(),k=Z0(P.access_token),O=Z0(P.refresh_token);if(!k||!O)throw Error("xAI OAuth completed, but the token response was missing credentials.");let K=typeof P.expires_in==="number"&&Number.isFinite(P.expires_in)&&P.expires_in>0?P.expires_in:3600;return{accessToken:k,refreshToken:O,idToken:Z0(P.id_token),expiresAt:G()+K*1000}}let y=await F.json().catch(()=>({})),_=Math.max(0,L-G());if(y.error==="authorization_pending"){await J(Math.min(H+Mz,_),q?.signal);continue}if(y.error==="slow_down"){H=Math.min(H+_q,wq),await J(Math.min(H+Mz,_),q?.signal);continue}if(y.error==="access_denied"||y.error==="authorization_denied")throw Error("xAI device authorization was denied.");if(y.error==="expired_token")throw Error("xAI device code expired - please re-run login.");let h=y.error_description??y.error??"";throw Error(`xAI device token exchange failed (${F.status})${h?`: ${h}`:""}`)}throw Error("xAI device authorization timed out.")}class y4{abortController=null;async startDeviceFlow(z){let q=new AbortController;this.abortController=q;try{let R=await jq({signal:q.signal});return await z(R),await Uq(R,{signal:q.signal})}finally{if(this.abortController===q)this.abortController=null}}cleanup(){this.abortController?.abort(Error("xAI device authorization was cancelled.")),this.abortController=null}}var Pz=5000,Mq=1000,_q=5000,wq=60000,hz=300000,Mz=3000;var Oz=a(()=>{Lq();Fq()});function Iq(){return new y4}function Tz(z){let{onAuthenticated:q}=z,R=z.deps?.createOAuthService??Iq,J=z.deps?.saveXaiCredentials??Ez,G=z.deps?.isBareMode??s,[W,L]=v0.useState({state:"starting"});return v0.useEffect(()=>{if(G()){L({state:"error",message:"xAI OAuth is unavailable in --bare because secure storage is disabled."});return}let H=!1,F=R();return F.startDeviceFlow(async(y)=>{if(H)return;L({state:"waiting",userCode:y.user_code,verificationUri:y.verification_uri,verificationUriComplete:y.verification_uri_complete})}).then(async(y)=>{if(H)return;await q(y,(h)=>{let P=J({accessToken:y.accessToken,refreshToken:y.refreshToken,idToken:y.idToken,expiresAt:y.expiresAt,profileId:h?.profileId});if(!P.success)throw Error(P.warning??"xAI OAuth succeeded, but credentials could not be saved securely.")})}).catch((y)=>{if(H)return;L({state:"error",message:y instanceof Error?y.message:String(y)})}),()=>{H=!0,F.cleanup()}},[R,G,q,J]),W}var v0;var kz=a(()=>{Oz();c0();uz();v0=I0(P0(),1)});async function dz(){return{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":xz,...await lz()}}function Az(z,q){let R=Number(z);return Number.isFinite(R)&&R>0?R*1000:q}function Eq(z,q){if(q?.aborted)return Promise.resolve();return new Promise((R)=>{let J=setTimeout(()=>{q?.removeEventListener("abort",G),R()},z),G=()=>{clearTimeout(J),R()};q?.addEventListener("abort",G,{once:!0})})}async function uq(z){let q=z?.fetchImpl??fetch,R=z?.signal?AbortSignal.any([z.signal,AbortSignal.timeout(15000)]):AbortSignal.timeout(15000),J=await q(Cz,{method:"POST",headers:await dz(),body:new URLSearchParams({client_id:K4()}).toString(),signal:R});if(!J.ok){let F=await J.text().catch(()=>"");throw Error(`Kimi device code request failed (${J.status})${F?`: ${F.trim()}`:""}`)}let G=await J.json(),W=G0(G.device_code),L=G0(G.user_code),H=G0(G.verification_uri);if(!W||!L||!H)throw Error("Kimi device code response is missing device_code / user_code / verification_uri.");return{device_code:W,user_code:L,verification_uri:H,verification_uri_complete:G0(G.verification_uri_complete),expires_in:typeof G.expires_in==="number"&&G.expires_in>0?G.expires_in:vz/1000,interval:typeof G.interval==="number"&&G.interval>0?G.interval:pz/1000}}async function Tq(z,q){let R=q?.fetchImpl??fetch,J=q?.sleep??Eq,G=q?.now??(()=>Date.now()),W=Az(z.expires_in,vz),L=G()+W,H=Math.max(Az(z.interval,pz),hq);while(G()<L){if(q?.signal?.aborted)throw Error("Kimi device authorization was cancelled.");let F=await R(fz,{method:"POST",headers:await dz(),body:new URLSearchParams({grant_type:gz,client_id:K4(),device_code:z.device_code}).toString(),signal:q?.signal});if(F.ok){let P=await F.json(),k=G0(P.access_token),O=G0(P.refresh_token);if(!k||!O)throw Error("Kimi OAuth completed, but the token response was missing credentials.");let K=typeof P.expires_in==="number"&&Number.isFinite(P.expires_in)&&P.expires_in>0?P.expires_in:900;return{accessToken:k,refreshToken:O,expiresAt:G()+K*1000}}let y=await F.json().catch(()=>({})),_=Math.max(0,L-G());if(y.error==="authorization_pending"){await J(Math.min(H+Sz,_),q?.signal);continue}if(y.error==="slow_down"){H=Math.min(H+Dq,Oq),await J(Math.min(H+Sz,_),q?.signal);continue}if(y.error==="access_denied"||y.error==="authorization_denied")throw Error("Kimi device authorization was denied.");if(y.error==="expired_token")throw Error("Kimi device code expired - please re-run login.");let h=y.error_description??y.error??"";throw Error(`Kimi device token exchange failed (${F.status})${h?`: ${h}`:""}`)}throw Error("Kimi device authorization timed out.")}class b4{abortController=null;async startDeviceFlow(z){let q=new AbortController;this.abortController=q;try{let R=await uq({signal:q.signal});return await z(R),await Tq(R,{signal:q.signal})}finally{if(this.abortController===q)this.abortController=null}}cleanup(){this.abortController?.abort(Error("Kimi device authorization was cancelled.")),this.abortController=null}}var pz=5000,hq=1000,Dq=5000,Oq=60000,vz=1800000,Sz=3000;var nz=a(()=>{Pq();cz()});function kq(){return new b4}function tz(z){let{onAuthenticated:q}=z,R=z.deps?.createOAuthService??kq,J=z.deps?.saveKimiCredentials??az,G=z.deps?.isBareMode??s,[W,L]=Y0.useState({state:"starting"}),H=Y0.useRef(!1);return Y0.useEffect(()=>{if(G()){L({state:"error",message:"Kimi Code OAuth is unavailable in --bare because secure storage is disabled."});return}let F=!1,y=R();return y.startDeviceFlow(async(_)=>{if(F)return;L({state:"waiting",userCode:_.user_code,verificationUri:_.verification_uri,verificationUriComplete:_.verification_uri_complete})}).then(async(_)=>{if(F)return;await q(_,(P)=>{let k=J({accessToken:_.accessToken,refreshToken:_.refreshToken,expiresAt:_.expiresAt,profileId:P?.profileId});if(!k.success)throw Error(k.warning??"Kimi Code OAuth succeeded, but credentials could not be saved securely.")})}).catch((_)=>{if(F)return;L({state:"error",message:_ instanceof Error?_.message:String(_)})}),()=>{F=!0,y.cleanup()}},[R,G,q,J]),Y0.useEffect(()=>{if(W.state!=="waiting")return;if(H.current)return;let F=W.verificationUriComplete??W.verificationUri;if(!F)return;H.current=!0,l0(F).catch(()=>{})},[W]),W}var Y0;var rz=a(()=>{nz();Hz();c0();iz();Y0=I0(P0(),1)});function Z1(z){return{name:z.name,baseUrl:z.baseUrl,model:z.model,apiKey:z.apiKey??""}}function N1(z){let q=i0(z);return{name:q.name,baseUrl:q.baseUrl,model:q.model,apiKey:q.apiKey??""}}function G1(z){let q={};for(let R of z.split(/\r?\n/)){let J=R.trim();if(!J)continue;let G=J.indexOf(":");if(G<=0)continue;let W=J.slice(0,G).trim(),L=J.slice(G+1).trim();if(W&&L)q[W]=L}return q}function Y1(z){if(!z)return"";return Object.entries(z).map(([q,R])=>`${q}: ${R}`).join(`
|
|
49
|
+
`)}function W1(z,q){let R={},J=z.awsRegion?.trim();if(J)R.awsRegion=J;let G=z.gcpProject?.trim();if(G)R.gcpProject=G;let W=z.gcpRegion?.trim();if(W)R.gcpRegion=W;let L=z.azureResource?.trim();if(L)R.azureResource=L;let H=G1(q);if(Object.keys(H).length>0)R.customHeaders=H;return Object.keys(R).length>0?R:void 0}function m1(z,q){let R=q?" (active)":"",J=z.apiKey?"key set":"no key",G=z.provider==="anthropic"?"anthropic":"openai-compatible",W=oz(z.model),L=W.length<=3?W.join(", "):`${W[0]}, ${W[1]} + ${W.length-2} more`;return`${G} · ${z.baseUrl} · ${L} · ${J}${R}`}function X1(z,q){if(z.state==="unreachable")return`Could not reach Atomic Chat at ${G4(q)}. Start the Atomic Chat app first, or enter the endpoint manually.`;if(z.state==="no_models")return"Atomic Chat is running, but no models are loaded. Download and load a model inside the Atomic Chat app first, or enter details manually.";return""}function y1(z,q){if(z.state==="unreachable")return`Could not reach Ollama at ${G4(q)}. Start Ollama first, or enter the endpoint manually.`;if(z.state==="no_models")return"Ollama is running, but no installed models were found. Pull a chat model such as qwen2.5-coder:7b or llama3.1:8b first, or enter details manually.";if(z.state==="generation_failed"){let R=z.probeModel??"the selected model",J=z.detail?` Details: ${z.detail}.`:"";return`Ollama is reachable and models are installed, but a generation probe failed for ${R}.${J} Run "ollama run ${R}" once and retry, or enter details manually.`}return""}function L4(z,q){if(!q)return;return z.find((R)=>R.id===q)}function sz(z,q){return Boolean(z&&q&&z.id===q)}function K1(z,q){if(q){let R=z.find((J)=>J.id===q);if(R)return R}return z.find((R)=>R.provider==="openai"&&R.baseUrl===P4&&!R.apiKey)}function b1(z,q){if(q){let R=z.find((J)=>J.id===q);if(R)return R}return z.find((R)=>R.provider==="openai"&&R.baseUrl===t0&&!R.apiKey)}function H1(z,q){return z.find((R)=>R.provider==="anthropic"&&R.baseUrl===q&&!R.apiKey)}function L1({onBack:z,onConfigured:q}){let R=M.useCallback(async(G,W)=>{await q(G,W)},[q]);t("confirm:no",z);let J=Lz({onAuthenticated:R});if(J.state==="error")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"error",bold:!0,children:"Codex OAuth failed"}),$(N,{children:J.message}),$(N,{dimColor:!0,children:"Press Enter or Esc to go back."}),$(f,{options:[{value:"back",label:"Back",description:"Return to provider presets"}],onChange:z,onCancel:z,visibleOptionCount:1})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Codex OAuth"}),$(N,{children:"Sign in with your ChatGPT account in the browser. Claudin will store the resulting Codex credentials securely and switch this session to the new Codex login when setup completes."}),J.state==="starting"?$(N,{dimColor:!0,children:"Starting local callback and preparing your browser..."}):J.browserOpened===!1?X(N0,{children:[$(N,{color:"warning",children:"Browser did not open automatically. Visit this URL to continue:"}),$(N,{children:J.authUrl})]}):J.browserOpened===!0?X(N0,{children:[$(N,{dimColor:!0,children:"Browser opened. Finish the ChatGPT sign-in there and this setup will complete automatically."}),$(N,{children:J.authUrl})]}):$(N,{dimColor:!0,children:"Opening your browser..."}),$(N,{dimColor:!0,children:"Press Esc to cancel and go back."})]})}function F1({onBack:z,onConfigured:q}){let R=M.useCallback(async(G,W)=>{await q(G,W)},[q]);t("confirm:no",z);let J=Tz({onAuthenticated:R});if(J.state==="error")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"error",bold:!0,children:"xAI OAuth failed"}),$(N,{children:J.message}),$(N,{dimColor:!0,children:"Press Enter or Esc to go back."}),$(f,{options:[{value:"back",label:"Back",description:"Return to provider presets"}],onChange:z,onCancel:z,visibleOptionCount:1})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"xAI / Grok OAuth"}),J.state==="starting"?$(N,{dimColor:!0,children:"Requesting a device code from xAI..."}):X(N0,{children:[X(N,{children:["Open this URL on any device:"," ",$(N,{bold:!0,children:J.verificationUri})]}),X(N,{children:["Enter code ",$(N,{bold:!0,children:J.userCode})]}),J.verificationUriComplete&&J.verificationUriComplete!==J.verificationUri?X(N,{dimColor:!0,children:["Or open this prefilled URL: ",J.verificationUriComplete]}):null,$(N,{dimColor:!0,children:"Waiting for you to authorize in the browser..."})]}),$(N,{dimColor:!0,children:"Press Esc to cancel and go back."})]})}function M1({onBack:z,onConfigured:q}){let R=M.useCallback(async(G,W)=>{await q(G,W)},[q]);t("confirm:no",z);let J=tz({onAuthenticated:R});if(J.state==="error")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"error",bold:!0,children:"Kimi Code OAuth failed"}),$(N,{children:J.message}),$(N,{dimColor:!0,children:"Press Enter or Esc to go back."}),$(f,{options:[{value:"back",label:"Back",description:"Return to Moonshot AI authentication choices"}],onChange:z,onCancel:z,visibleOptionCount:1})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Moonshot AI · Kimi Code"}),J.state==="starting"?$(N,{dimColor:!0,children:"Requesting a device code from Kimi..."}):X(N0,{children:[X(N,{children:["Open this URL on any device:"," ",$(N,{bold:!0,children:J.verificationUri})]}),X(N,{children:["Enter code ",$(N,{bold:!0,children:J.userCode})]}),J.verificationUriComplete&&J.verificationUriComplete!==J.verificationUri?X(N,{dimColor:!0,children:["Or open this prefilled URL: ",J.verificationUriComplete]}):null,$(N,{dimColor:!0,children:"Waiting for you to authorize in the browser..."})]}),$(N,{dimColor:!0,children:"Press Esc to cancel and go back."})]})}function T8({mode:z,onDone:q}){let R=Z2(),[J,G]=M.useState([]),[W,L]=M.useState(),[H,F]=M.useState(),[y,_]=M.useState(!1),[h,P]=M.useState(),k=M.useRef(0),[O,K]=M.useState(z==="first-run"?"select-preset":"menu"),[d,O0]=M.useState(null),[g,E]=M.useState("openai"),[I,x]=M.useState(()=>N1("ollama")),[V0,w0]=M.useState({}),[h4,r0]=M.useState(""),[b2,H2]=M.useState(0),[L2,F2]=M.useState(0),[s0,D4]=M.useState(null),[m0,B0]=M.useState(0),[X0,o]=M.useState(0),[M2,e]=M.useState(0),[O4,A]=M.useState(),[y0,B]=M.useState(),[_2,w2]=M.useState(),[E4,E0]=M.useState(!1),[j0,U0]=M.useState(),[z0,u0]=M.useState({state:"idle"}),[q0,T0]=M.useState({state:"idle"}),[R0,o0]=M.useState({state:"idle"}),[B2,j2]=M.useState(!0),[U2,p]=M.useState(!1),e0=M.useRef(!1),[I2,u4]=M.useState(()=>a0()),[T4,P2]=M.useState(()=>y2());M.useEffect(()=>{queueMicrotask(()=>{let Q=i(),Z=v()?.id;G(Q),L(Z),F(d0()),P(F4()),_(D0()),j2(!1)})},[]);let K0=W0[X0]??W0[0],k0=K0.key,h2=I[k0],z4=J.length>0,S0=z4,k4=M.useMemo(()=>[{value:"add",label:"Add provider",description:"Create a new provider profile"},{value:"activate",label:"Set active provider (Global)",description:h?`Currently: ${J.find((Q)=>Q.id===h)?.name??"unknown"}`:"Default profile for projects without an override",disabled:!S0},{value:"activate-project",label:"Set active provider (Project)",description:H?`Currently: ${J.find((Q)=>Q.id===H)?.name??"unknown"} (this project)`:"Override the global default for this project only",disabled:!S0},...y?[{value:"clear-project-override",label:"Clear project provider override",description:H?"Stop overriding for this project; fall back to global":"Project override points to a missing profile; clear it"}]:[],{value:"edit",label:"Edit provider",description:"Update URL, model, or key",disabled:!z4},{value:"delete",label:"Delete provider",description:"Remove a provider profile",disabled:!S0},...E4?[{value:"logout-codex-oauth",label:"Log out Codex OAuth",description:"Clear securely stored Codex OAuth credentials"}]:[],{value:"done",label:"Done",description:"Return to chat"}],[S0,z4,E4,h,H,J]),q4=M.useCallback(()=>{if(s()){k.current+=1,E0(!1),U0(void 0);return}let Q=++k.current;(async()=>{let Z=await w4();if(Q!==k.current)return;E0(Boolean(Z?.apiKey||Z?.accessToken||Z?.refreshToken||Z?.idToken)),U0(Z?.profileId)})()},[]);M.useEffect(()=>{return q4(),()=>{k.current+=1}},[q4]),M.useEffect(()=>{if(O!=="select-ollama-model")return;let Q=!1;return u0({state:"loading"}),(async()=>{let Z=await W2({baseUrl:I.baseUrl});if(Z.state!=="ready"){if(!Q)u0({state:"unavailable",message:y1(Z,I.baseUrl)});return}let Y=N4(Z.models,"balanced"),V=qz(Z.models,"balanced");if(!Q)u0({state:"ready",defaultValue:V?.name??Y[0]?.name,options:Y.map((b)=>({label:b.name,value:b.name,description:b.summary}))})})(),()=>{Q=!0}},[I.baseUrl,O]),M.useEffect(()=>{if(O!=="select-atomic-chat-model")return;let Q=!1;return T0({state:"loading"}),(async()=>{let Z=await Y2({baseUrl:I.baseUrl});if(Z.state!=="ready"){if(!Q)T0({state:"unavailable",message:X1(Z,I.baseUrl)});return}if(!Q)T0({state:"ready",defaultValue:Z.models[0],options:Z.models.map((Y)=>({label:Y,value:Y}))})})(),()=>{Q=!0}},[I.baseUrl,O]),M.useEffect(()=>{if(O!=="select-openai-model")return;let Q=!1;return o0({state:"loading"}),(async()=>{let Z=await N2({baseUrl:I.baseUrl,apiKey:I.apiKey||void 0});if(Q)return;if(!Z||Z.length===0){o0({state:"unavailable",message:"Couldn't list models from this provider. Enter the model id manually, or go back to check the base URL and API key."});return}let{options:Y,defaultValue:V}=G2(Z,I.model);o0({state:"ready",options:Y,defaultValue:V})})(),()=>{Q=!0}},[I.baseUrl,I.apiKey,O]);function C(){if(e0.current)return;e0.current=!0,queueMicrotask(()=>{let Q=i();G(Q),L(v()?.id),F(d0()),P(F4()),_(D0()),q4(),e0.current=!1})}function b0(){return null}function R4(Q){if(Q.activationWarning)return`${Q.prefix}. Saved for next startup. Warning: ${Q.warnings.join("; ")}.`;if(Q.warnings.length>0)return`${Q.prefix}. Claudin switched to it for this session with warnings: ${Q.warnings.join("; ")}.`;return`${Q.prefix}. Claudin switched to it for this session.`}async function Q4(Q){if(Q?.accessToken&&Q.accountId)return null;let Z=await w4();if(!Z)return"stored Codex OAuth credentials could not be loaded";if(!Z.accountId)return"stored Codex OAuth credentials are missing a ChatGPT account id";return null}function S4(){$2()}async function D2(Q){let Z="provider";p(!0),A("Activating provider...");try{await new Promise((n)=>queueMicrotask(n));let Y=D0(),V=J0(Q);if(!V){B("Could not change active provider."),p(!1),U();return}let b=Y?v()??V:V,m=M0(b.model)||n0();if(!Y)R((n)=>({...n,mainLoopModel:m,mainLoopModelForSession:null}));Z=V.name;let j=b0(),D=sz(V,j0),u=D?await Q4():null;C();let c=Y&&b.id!==V.id?` (project override still active — this project keeps using ${b.name}; use "Clear project provider override" to apply the new default here)`:"",T=D?R4({prefix:`Active provider: ${V.name}${c}`,activationWarning:u,warnings:[u,j?`could not clear startup provider override (${j})`:null].filter((n)=>Boolean(n))}):j?`Active provider: ${V.name}${c}. Warning: could not clear startup provider override (${j}).`:`Active provider: ${V.name}${c}`;A(T),p(!1),q({action:"activated",activeProfileId:V.id,activeProviderName:V.name,activeProviderModel:m,message:`Provider switched to ${V.name} (${m})`}),U()}catch(Y){C(),A(void 0),p(!1);let V=Y instanceof Error?Y.message:String(Y);B(`Could not finish activating ${Z}: ${V}`),U()}}async function O2(){p(!0),A("Clearing project provider override...");try{await new Promise((Z)=>queueMicrotask(Z)),M4(null),C();let Q=v();if(Q){let Z=M0(Q.model)||n0();_0(),R((Y)=>({...Y,mainLoopModel:Z,mainLoopModelForSession:null})),A(`Project override cleared. Using global default: ${Q.name}.`),p(!1),q({action:"activated",activeProfileId:Q.id,activeProviderName:Q.name,activeProviderModel:Z,message:`Project override cleared — using ${Q.name} (${Z})`}),U()}else A("Project provider override cleared. No global default set."),p(!1),q({action:"saved",message:"Project provider override cleared. No global default set."}),U()}catch(Q){C(),A(void 0),p(!1);let Z=Q instanceof Error?Q.message:String(Q);B(`Could not clear project provider override: ${Z}`),U()}}async function E2(Q){let Z="provider";p(!0),A("Setting provider for this project...");try{await new Promise((T)=>queueMicrotask(T));let Y=d0(),V=M4(Q);if(!V){B("Could not set project provider override."),p(!1),U();return}let b=M0(V.model)||n0();if(Y===V.id)_0();R((T)=>({...T,mainLoopModel:b,mainLoopModelForSession:null})),Z=V.name;let m=b0(),j=sz(V,j0),D=j?await Q4():null;C();let u=`Active provider for this project: ${V.name}. Other projects keep the global default.`,c=j?R4({prefix:u,activationWarning:D,warnings:[D,m?`could not clear startup provider override (${m})`:null].filter((T)=>Boolean(T))}):m?`${u} Warning: could not clear startup provider override (${m}).`:u;A(c),p(!1),q({action:"activated",activeProfileId:V.id,activeProviderName:V.name,activeProviderModel:b,message:`Provider switched to ${V.name} (${b}) for this project`}),U()}catch(Y){C(),A(void 0),p(!1);let V=Y instanceof Error?Y.message:String(Y);B(`Could not finish setting ${Z} for this project: ${V}`),U()}}function U(){w2("done"),K("menu")}function A0(Q){q({action:"cancelled",message:Q})}function A4(Q){let Z=i0(Q),Y={name:Z.name,baseUrl:Z.baseUrl,model:Z.model,apiKey:Z.apiKey??""};if(O0(null),E(Z.provider??"openai"),x(Y),w0({}),r0(""),D4(Q),o(0),B0(0),e(Y.name.length),B(void 0),Q==="ollama"){u0({state:"loading"}),K("select-ollama-model");return}if(Q==="atomic-chat"){T0({state:"loading"}),K("select-atomic-chat-model");return}if(Q==="anthropic"){K("anthropic-auth-choice");return}if(Q==="bedrock"||Q==="vertex"||Q==="foundry"){K("cloud-extras");return}K("form")}function u2(Q){let Z=J.find((V)=>V.id===Q);if(!Z)return;let Y=Z1(Z);O0(Q),E(Z.provider??"openai"),x(Y),w0({awsRegion:Z.extras?.awsRegion,gcpProject:Z.extras?.gcpProject,gcpRegion:Z.extras?.gcpRegion,azureResource:Z.extras?.azureResource}),r0(Y1(Z.extras?.customHeaders)),D4(null),o(0),B0(0),e(Y.name.length),B(void 0),K("form")}function C0(Q=I){let Z=W1(V0,h4),Y={provider:g,name:Q.name,baseUrl:Q.baseUrl,model:Q.model,apiKey:Q.apiKey,extras:Z},V=d?$0(d,Y):Q0(Y,{makeActive:z==="first-run"});if(!V){B("Could not save provider. Fill all required fields.");return}let b=v()?.id===V.id;if(b)_0(),R((T)=>({...T,mainLoopModel:M0(V.model),mainLoopModelForSession:null}));let m=b?b0():null;C();let j=z==="first-run"&&!d&&D0()&&!b,D=j?v()?.name??"override target":null,u=z==="first-run"?`Added provider: ${V.name} (now active)`:`Added provider: ${V.name} (active provider unchanged)`,c=d?`Updated provider: ${V.name}`:j?`Added provider: ${V.name} (now global default — project keeps using ${D}; use "Clear project provider override" to apply here)`:u;if(A(m?`${c}. Warning: could not clear startup provider override (${m}).`:c),z==="first-run"){q({action:"saved",activeProfileId:V.id,message:`Provider configured: ${V.name}`});return}O0(null),o(0),B(void 0),U()}function T2(){if(q0.state==="loading"||q0.state==="idle")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Checking Atomic Chat"}),$(N,{dimColor:!0,children:"Looking for loaded Atomic Chat models..."})]});if(q0.state==="unavailable")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Atomic Chat setup"}),$(N,{dimColor:!0,children:q0.message}),$(f,{options:[{value:"manual",label:"Enter manually",description:"Fill in the base URL and model yourself"},{value:"back",label:"Back",description:"Choose another provider preset"}],onChange:(Q)=>{if(Q==="manual"){o(0),e(I.name.length),K("form");return}K("select-preset")},onCancel:()=>K("select-preset"),visibleOptionCount:2})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Choose an Atomic Chat model"}),$(N,{dimColor:!0,children:"Pick one of the models loaded in Atomic Chat to save into a local provider profile."}),$(f,{options:q0.options,defaultValue:q0.defaultValue,defaultFocusValue:q0.defaultValue,inlineDescriptions:!0,visibleOptionCount:Math.min(8,q0.options.length),onChange:(Q)=>{let Z={...I,model:Q};x(Z),C0(Z)},onCancel:()=>K("select-preset")})]})}function k2(){if(z0.state==="loading"||z0.state==="idle")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Checking Ollama"}),$(N,{dimColor:!0,children:"Looking for installed Ollama models..."})]});if(z0.state==="unavailable")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Ollama setup"}),$(N,{dimColor:!0,children:z0.message}),$(f,{options:[{value:"manual",label:"Enter manually",description:"Fill in the base URL and model yourself"},{value:"back",label:"Back",description:"Choose another provider preset"}],onChange:(Q)=>{if(Q==="manual"){o(0),e(I.name.length),K("form");return}K("select-preset")},onCancel:()=>K("select-preset"),visibleOptionCount:2})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Choose an Ollama model"}),$(N,{dimColor:!0,children:"Pick one of the installed Ollama models to save into a local provider profile."}),$(f,{options:z0.options,defaultValue:z0.defaultValue,defaultFocusValue:z0.defaultValue,inlineDescriptions:!0,visibleOptionCount:Math.min(8,z0.options.length),onChange:(Q)=>{let Z={...I,model:Q};x(Z),C0(Z)},onCancel:()=>K("select-preset")})]})}function H0(Q){let Z=W0.findIndex((Y)=>Y.key===Q);o(Z<0?0:Z),e(I[Q].length),B(void 0),K("form")}function S2(){if(R0.state==="loading"||R0.state==="idle")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Fetching models"}),$(N,{dimColor:!0,children:"Looking for models on your OpenAI-compatible provider…"}),$(N,{dimColor:!0,children:"Press Esc to enter the model manually."})]});if(R0.state==="unavailable")return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Choose a model"}),$(N,{dimColor:!0,children:R0.message}),$(f,{options:[{value:"manual",label:"Enter manually",description:"Type the model id yourself"},{value:"back",label:"Back",description:"Return to the API key step"}],onChange:(Y)=>{if(Y==="manual"){H0("model");return}H0("apiKey")},onCancel:()=>H0("apiKey"),visibleOptionCount:2})]});let Q=[...R0.options,{value:H4,label:"Enter a model id manually",description:"Type an id the provider did not list"}],Z=R0.defaultValue??H4;return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Choose a model"}),$(N,{dimColor:!0,children:"Models from your OpenAI-compatible provider."}),$(f,{options:Q,defaultValue:Z,defaultFocusValue:Z,inlineDescriptions:!0,visibleOptionCount:Math.min(8,Q.length),onChange:(Y)=>{if(Y===H4){H0("model");return}let V={...I,model:Y};x(V),C4(V)},onCancel:()=>H0("apiKey")}),$(N,{dimColor:!0,children:"Enter to select · Esc to go back"})]})}function C4(Q){if(s0==="anthropic"||s0==="custom"){x(Q),K("custom-headers");return}C0(Q)}function A2(Q){let Z=Q.trim();if(!K0.optional&&Z.length===0){B(`${K0.label} is required.`);return}let Y={...I,[k0]:Z};if(x(Y),B(void 0),X0<W0.length-1){let V=X0+1,b=W0[V]?.key??"name";if(b==="model"&&!oq.has(g)&&Y.baseUrl.trim().length>0){K("select-openai-model");return}o(V),e(Y[b].length);return}C4(Y)}function C2(){if(B(void 0),X0>0){let Q=X0-1,Z=W0[Q]?.key??"name";o(Q),e(I[Z].length);return}if(z==="first-run"){K("select-preset");return}U()}t("confirm:no",C2,{context:"Settings",isActive:O==="form"}),t("confirm:no",()=>H0("model"),{context:"Settings",isActive:O==="select-openai-model"&&(R0.state==="loading"||R0.state==="idle")});function f2(){if(B(void 0),m0>0){B0(m0-1);return}K("select-preset")}t("confirm:no",f2,{context:"Settings",isActive:O==="cloud-extras"}),t("confirm:no",()=>K("form"),{context:"Settings",isActive:O==="custom-headers"}),t("confirm:no",()=>K("select-preset"),{context:"Settings",isActive:O==="anthropic-auth-choice"||O==="anthropic-oauth"||O==="kimi-auth-choice"}),t("confirm:no",()=>K("kimi-auth-choice"),{context:"Settings",isActive:O==="kimi-oauth"});function g2(){let Q=!s(),Z=[...I2?[{value:"import-legacy",label:"Reuse Claude Code sign-in",description:"Copy ~/.claude/ API tokens and provider profiles. /import brings the rest."}]:[],{value:"dashscope-intl",label:"Alibaba Coding Plan",description:"Alibaba DashScope International endpoint"},{value:"dashscope-cn",label:"Alibaba Coding Plan (China)",description:"Alibaba DashScope China endpoint"},{value:"anthropic",label:"Anthropic",description:"Native Claude API (x-api-key auth)"},{value:"atomic-chat",label:"Atomic Chat",description:"Local Model Provider"},{value:"azure-openai",label:"Azure OpenAI",description:"Azure OpenAI endpoint (model=deployment name)"},{value:"foundry",label:"Azure AI Foundry",description:"Anthropic models hosted on Azure AI Foundry (resource-scoped)"},{value:"bedrock",label:"AWS Bedrock",description:"Anthropic models on AWS Bedrock (region-scoped, AWS creds)"},{value:"bankr",label:"Bankr",description:"Bankr LLM Gateway (OpenAI-compatible)"},{value:"cloudflare-workers-ai",label:"Cloudflare Workers AI",description:"Cloudflare Workers AI (OpenAI-compatible); set your account ID in the base URL"},{value:"cloudflare-ai-gateway",label:"Cloudflare AI Gateway",description:"Cloudflare AI Gateway unified endpoint; set your account ID in the base URL"},...Q?[{value:"codex-oauth",label:"Codex OAuth",description:"Sign in with ChatGPT in your browser and store Codex credentials securely"},{value:"xai-oauth",label:"xAI / Grok (OAuth)",description:"Sign in with xAI in your browser and store Grok credentials securely"}]:[],{value:"github-onboard",label:"GitHub Copilot",description:"Sign in with GitHub in your browser to use Copilot models"},{value:"deepseek",label:"DeepSeek",description:"DeepSeek OpenAI-compatible endpoint"},{value:"gemini",label:"Google Gemini",description:"Gemini OpenAI-compatible endpoint"},{value:"vertex",label:"Google Vertex AI",description:"Anthropic models on Vertex AI (project + region, ADC)"},{value:"groq",label:"Groq",description:"Groq OpenAI-compatible endpoint"},{value:"lmstudio",label:"LM Studio",description:"Local LM Studio endpoint"},{value:"minimax",label:"MiniMax",description:"MiniMax API endpoint"},{value:"mistral",label:"Mistral",description:"Mistral OpenAI-compatible endpoint"},{value:"moonshotai",label:"Moonshot AI",description:"API key or Kimi Code OAuth sign-in"},{value:"nvidia-nim",label:"NVIDIA NIM",description:"NVIDIA NIM endpoint"},{value:"opencode-go",label:"OpenCode GO",description:"OpenCode GO OpenAI-compatible endpoint"},{value:"opencode-zen",label:"OpenCode Zen",description:"OpenCode Zen OpenAI-compatible endpoint"},{value:"ollama",label:"Ollama",description:"Local or remote Ollama endpoint"},{value:"openai",label:"OpenAI",description:"OpenAI API with API key"},{value:"openrouter",label:"OpenRouter",description:"OpenRouter OpenAI-compatible endpoint"},{value:"together",label:"Together AI",description:"Together chat/completions endpoint"},{value:"zai",label:"Z.AI (GLM Coding Plan)",description:"Z.AI GLM Coding Plan (OpenAI-compatible)"},{value:"custom",label:"Custom",description:"Any OpenAI-compatible provider"},...z==="first-run"?[{value:"skip",label:"Skip for now",description:"Continue with current defaults"}]:[]];return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:z==="first-run"?"Set up provider":"Choose provider preset"}),$(N,{dimColor:!0,children:"Pick a preset, then confirm base URL, model, and API key."}),$(I4,{options:Z,searchPlaceholder:"Search presets…",onChange:(Y)=>{if(Y==="skip"){A0("Provider setup skipped");return}if(Y==="codex-oauth"){K("codex-oauth");return}if(Y==="xai-oauth"){K("xai-oauth");return}if(Y==="moonshotai"){K("kimi-auth-choice");return}if(Y==="github-onboard"){K("github-onboard");return}if(Y==="import-legacy"){(async()=>{let V=await m2({force:!0});u4(a0()),C();let b=X2(V);if(V.errors.length>0){B(b);return}let m=v();if(z==="first-run"&&m){q({action:"saved",activeProfileId:m.id,activeProviderName:m.name,activeProviderModel:m.model,message:b});return}if(A(b),B(void 0),z==="manage")U()})();return}A4(Y)},onCancel:()=>{if(z==="first-run"){A0("Provider setup skipped");return}U()},visibleOptionCount:Math.min(13,Z.length)})]})}function x2(){return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Anthropic — choose authentication"}),$(N,{dimColor:!0,children:"Sign in with your Anthropic account in the browser, or paste an API key."}),$(f,{options:[{value:"oauth",label:"Sign in with web (OAuth)",description:"Open a browser, sign in to Claude, and store tokens in ~/.claudin/.credentials.json"},{value:"apiKey",label:"Use API key",description:"Paste an x-api-key value (sk-ant-…)"},{value:"back",label:"Back",description:"Choose a different provider"}],onChange:(Q)=>{if(Q==="oauth"){K("anthropic-oauth");return}if(Q==="apiKey"){K("form");return}K("select-preset")},onCancel:()=>K("select-preset"),visibleOptionCount:3})]})}function c2(){return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Moonshot AI — choose authentication"}),$(N,{dimColor:!0,children:"Sign in with your Kimi Code subscription in the browser, or paste a Moonshot AI API key."}),$(f,{options:[{value:"oauth",label:"Sign in with web (OAuth)",description:"Open a browser, sign in to Kimi Code, and store tokens in ~/.claudin/.credentials.json"},{value:"apiKey",label:"Use API key",description:"Paste a Moonshot AI API key (sk-…)"},{value:"back",label:"Back",description:"Choose a different provider"}],onChange:(Q)=>{if(Q==="oauth"){K("kimi-oauth");return}if(Q==="apiKey"){A4("moonshotai");return}K("select-preset")},onCancel:()=>K("select-preset"),visibleOptionCount:3})]})}function l2(){let Q=(aq(),Sq(nq)).ConsoleOAuthFlow;return $(w,{flexDirection:"column",gap:1,children:$(Q,{mode:"login",onDone:()=>{let Z=i0("anthropic"),Y={provider:"anthropic",name:Z.name,baseUrl:Z.baseUrl,model:Z.model},V=H1(i(),Z.baseUrl),b=z==="first-run",m=V?$0(V.id,Y):Q0(Y,{makeActive:b});if(!m){B("OAuth completed, but the Anthropic profile could not be saved."),K("select-preset");return}let j=b&&V&&W!==m.id?J0(m.id):m;if(!j){B("OAuth completed, but the Anthropic profile could not be set as the startup provider."),K("select-preset");return}let D=`Anthropic OAuth configured: ${j.name}`;if(C(),z==="first-run"){q({action:"saved",activeProfileId:j.id,message:D});return}A(D),B(void 0),U()}})})}function p2(){let Q=s0;if(Q!=="bedrock"&&Q!=="vertex"&&Q!=="foundry")return null;let Z=V1[Q],Y=Z[m0]??Z[0],V=V0[Y.key]??"";function b(m){let j=m.trim();if(j.length===0){B(`${Y.label} is required.`);return}let D={...V0,[Y.key]:j};if(w0(D),B(void 0),m0<Z.length-1){B0(m0+1);return}B0(0),K("form")}return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:`${Q==="bedrock"?"AWS Bedrock":Q==="vertex"?"Google Vertex AI":"Azure AI Foundry"} setup`}),$(N,{dimColor:!0,children:Y.helpText}),X(N,{dimColor:!0,children:["Step ",m0+1," of ",Z.length,": ",Y.label]}),X(w,{flexDirection:"row",gap:1,children:[$(N,{children:F0.pointer}),$(L0,{value:V,onChange:(m)=>w0((j)=>({...j,[Y.key]:m})),onSubmit:b,focus:!0,showCursor:!0,placeholder:`${Y.placeholder}${F0.ellipsis}`,columns:80,cursorOffset:b2,onChangeCursorOffset:H2})]}),y0&&$(N,{color:"error",children:y0}),$(N,{dimColor:!0,children:"Press Enter to continue. Press Esc to go back."})]})}function v2(){return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Custom headers (optional)"}),X(N,{dimColor:!0,children:["Add HTTP headers sent on every request. One header per line as"," ",$(N,{children:"Header: Value"}),". Leave empty to skip."]}),X(w,{flexDirection:"row",gap:1,children:[$(N,{children:F0.pointer}),$(L0,{value:h4,onChange:r0,onSubmit:()=>C0(I),focus:!0,showCursor:!0,placeholder:"X-Header: value",columns:80,multiline:!0,cursorOffset:L2,onChangeCursorOffset:F2})]}),y0&&$(N,{color:"error",children:y0}),$(N,{dimColor:!0,children:"Press Enter on a blank line to save. Press Esc to go back."})]})}function d2(){return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:d?"Edit provider profile":"Create provider profile"}),$(N,{dimColor:!0,children:K0.helpText}),X(N,{dimColor:!0,children:["Provider type:"," ",g==="anthropic"?"Anthropic native API":"OpenAI-compatible API"]}),X(N,{dimColor:!0,children:["Step ",X0+1," of ",W0.length,": ",K0.label]}),X(w,{flexDirection:"row",gap:1,children:[$(N,{children:F0.pointer}),$(L0,{value:h2,onChange:(Q)=>x((Z)=>({...Z,[k0]:Q})),onSubmit:A2,focus:!0,showCursor:!0,placeholder:`${K0.placeholder}${F0.ellipsis}`,mask:k0==="apiKey"?"*":void 0,columns:80,cursorOffset:M2,onChangeCursorOffset:e})]}),y0&&$(N,{color:"error",children:y0}),$(N,{dimColor:!0,children:"Press Enter to continue. Press Esc to go back."})]})}function n2(){let Q=J.length>0,Z=Q;return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Provider manager"}),$(N,{dimColor:!0,children:"Active profile controls base URL, model, and API key used by this session."}),O4&&$(N,{children:O4}),$(w,{flexDirection:"column",children:J.length===0?$(N,{dimColor:!0,children:"No provider profiles configured yet."}):J.map((Y)=>X(N,{dimColor:!0,children:["- ",Y.name,": ",m1(Y,Y.id===W)]},Y.id))}),$(f,{options:k4,onChange:(Y)=>{switch(B(void 0),Y){case"add":K("select-preset");break;case"activate":if(Z)K("select-active");break;case"activate-project":if(Z)K("select-active-project");break;case"clear-project-override":O2();break;case"edit":if(Q)K("select-edit");break;case"delete":if(Z)K("select-delete");break;case"logout-codex-oauth":{let V=B4();if(!V.success){B(V.warning??"Could not clear Codex OAuth credentials.");break}E0(!1),U0(void 0);let b=L4(i(),j0),m=null;if(b){let j=_4(b.id);if(!j.removed){B("Codex OAuth credentials were cleared, but the Codex profile could not be removed."),C();break}S4(),m=j.activeProfileId?b0():null}C(),A(m?`Codex OAuth logged out. Warning: could not clear startup provider override (${m}).`:"Codex OAuth logged out.");break}default:A0("Provider manager closed");break}},onCancel:()=>A0("Provider manager closed"),defaultFocusValue:_2,visibleOptionCount:k4.length})]})}function f0(Q,Z,Y){let V=J.map((b)=>{let m=[];if(b.id===W)m.push("active");if(H&&b.id===H)m.push("this project");if(h&&b.id===h)m.push("global default");let j=m.length>0?` (${m.join(", ")})`:"";return{value:b.id,label:`${b.name}${j}`,description:`${b.provider==="anthropic"?"anthropic":"openai-compatible"} · ${b.baseUrl} · ${b.model}`}});if(V.length===0)return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:Q}),$(N,{dimColor:!0,children:Z}),$(f,{options:[{value:"back",label:"Back",description:"Return to provider manager"}],onChange:()=>U(),onCancel:()=>U(),visibleOptionCount:1})]});return X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:Q}),$(I4,{options:V,favorites:J1,searchPlaceholder:"Search providers…",onChange:Y,onCancel:()=>U(),visibleOptionCount:Math.min(10,Math.max(2,V.length))})]})}let S;switch(O){case"select-preset":S=g2();break;case"select-ollama-model":S=k2();break;case"select-openai-model":S=S2();break;case"select-atomic-chat-model":S=T2();break;case"codex-oauth":S=$(L1,{onBack:()=>K("select-preset"),onConfigured:async(Q,Z)=>{let Y={provider:"openai",name:eq,baseUrl:ez,model:z1,apiKey:""},V=L4(i(),j0),b=z==="first-run",m=V?$0(V.id,Y):Q0(Y,{makeActive:b});if(!m){B("Codex OAuth login finished, but the provider profile could not be saved."),U();return}let j=b&&V&&W!==m.id?J0(m.id):m;if(!j){B("Codex OAuth login finished, but the provider could not be set as the startup provider."),U();return}Z({profileId:m.id}),E0(!0),U0(m.id),C();let D;if(!b)D=`Codex OAuth configured: ${m.name} (active provider unchanged — activate it from "Set active provider")`;else{let u=b0(),c=await Q4(Q),T=[c,u?`could not clear startup provider override (${u})`:null].filter((n)=>Boolean(n));D=R4({prefix:"Codex OAuth configured",activationWarning:c,warnings:T})}if(z==="first-run"){q({action:"saved",activeProfileId:j.id,message:D});return}A(D),B(void 0),U()}});break;case"xai-oauth":S=$(F1,{onBack:()=>K("select-preset"),onConfigured:async(Q,Z)=>{let Y={provider:"openai",name:q1,baseUrl:t0,model:R1,apiKey:""},V=b1(i(),U4()?.profileId),b=z==="first-run",m=V?$0(V.id,Y):Q0(Y,{makeActive:b});if(!m){B("xAI OAuth login finished, but the provider profile could not be saved."),U();return}let j=b&&V&&W!==m.id?J0(m.id):m;if(!j){B("xAI OAuth login finished, but the provider could not be set as the startup provider."),U();return}try{Z({profileId:m.id})}catch(u){B(u instanceof Error?u.message:String(u)),U();return}C();let D=b?"xAI / Grok configured. Claudin switched to it for this session.":`xAI / Grok configured: ${m.name} (active provider unchanged — activate it from "Set active provider")`;if(z==="first-run"){q({action:"saved",activeProfileId:j.id,message:D});return}A(D),B(void 0),U()}});break;case"kimi-auth-choice":S=c2();break;case"kimi-oauth":S=$(M1,{onBack:()=>K("kimi-auth-choice"),onConfigured:async(Q,Z)=>{let Y={provider:"openai",name:Q1,baseUrl:P4,model:$1,apiKey:""},V=K1(i(),j4()?.profileId),b=z==="first-run",m=V?$0(V.id,Y):Q0(Y,{makeActive:b});if(!m){B("Kimi Code OAuth login finished, but the provider profile could not be saved."),U();return}let j=b&&V&&W!==m.id?J0(m.id):m;if(!j){B("Kimi Code OAuth login finished, but the provider could not be set as the startup provider."),U();return}try{Z({profileId:m.id})}catch(u){B(u instanceof Error?u.message:String(u)),U();return}C();let D=b?"Kimi Code configured. Claudin switched to it for this session.":`Kimi Code configured: ${m.name} (active provider unchanged — activate it from "Set active provider")`;if(z==="first-run"){q({action:"saved",activeProfileId:j.id,message:D});return}A(D),B(void 0),U()}});break;case"github-onboard":S=$(s4,{activateOnSave:z==="first-run",onDone:(Q)=>{if(Q)A(Q),B(void 0);C(),U()},onBack:()=>K("select-preset"),onChangeAPIKey:C});break;case"anthropic-auth-choice":S=x2();break;case"anthropic-oauth":S=l2();break;case"cloud-extras":S=p2();break;case"custom-headers":S=v2();break;case"form":S=d2();break;case"select-active":S=f0("Set active provider (Global)","No providers available. Add one first.",(Q)=>{D2(Q)});break;case"select-active-project":S=f0("Set active provider (Project)","No providers available. Add one first.",(Q)=>{E2(Q)});break;case"select-edit":S=f0("Edit provider","No providers available. Add one first.",(Q)=>{u2(Q)});break;case"select-delete":S=f0("Delete provider","No providers available. Add one first.",(Q)=>{let Z=J.find((T)=>T.id===Q),Y=Z?.provider==="openai"&&Z?.extras?.githubToken!==void 0,V=L4(J,j0)?.id===Q,b=U4()?.profileId,m=Z?.provider==="openai"&&Z.baseUrl===t0&&!Z.apiKey&&b===Q,j=j4()?.profileId,D=Z?.provider==="openai"&&Z.baseUrl===P4&&!Z.apiKey&&j===Q,u=v()?.id===Q,c=_4(Q);if(!c.removed)B("Could not delete provider.");else{let T=[];if(V){let l=B4();if(!l.success)T.push(l.warning??"could not clear Codex OAuth credentials");else U0(void 0);S4()}if(Y){let l=z2();if(!l.success)T.push(l.warning??"could not clear GitHub Copilot token")}if(m){let l=Q2();if(!l.success)T.push(l.warning??"could not clear xAI OAuth credentials")}if(D){let l=R2();if(!l.success)T.push(l.warning??"could not clear Kimi Code OAuth credentials")}let n=c.activeProfileId?b0():null;if(n)T.push(`could not clear startup provider override (${n})`);if(C(),u){let l=v();if(l)_0(),R(($4)=>({...$4,mainLoopModel:M0(l.model),mainLoopModelForSession:null}));else _0(),R(($4)=>({...$4,mainLoopModel:null,mainLoopModelForSession:null}))}A(T.length>0?`Provider deleted. Warning: ${T.join("; ")}.`:"Provider deleted")}U()});break;case"menu":default:S=n2();break}return X(J2,{color:"permission",children:[$(K2,{enabled:T4,onDismiss:(Q)=>{u4(a0()),P2(!1),C();let Z=v();if(Q==="migrated"&&z==="first-run"&&Z)q({action:"saved",activeProfileId:Z.id,activeProviderName:Z.name,activeProviderModel:Z.model})}}),T4?null:B2?X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Loading providers..."}),$(N,{dimColor:!0,children:"Reading provider profiles from disk."})]}):U2?X(w,{flexDirection:"column",gap:1,children:[$(N,{color:"remember",bold:!0,children:"Activating provider..."}),$(N,{dimColor:!0,children:"Please wait while the provider is being configured."})]}):S]})}var M,W0,H4="\x00__manual__",oq,eq="Codex OAuth",z1="codexplan",q1="xAI / Grok (OAuth)",R1="grok-4",Q1="Moonshot AI",$1,P4="https://api.kimi.com/coding/v1",J1,V1;var _1=a(()=>{Aq();o4();fq();x4();cq();pq();tq();bz();c0();Cq();gq();xq();f4();i4();vq();Rz();Qz();dq();iq();lq();sq();t4();Fz();kz();rz();uz();iz();cz();rq();g0();M=I0(P0(),1),W0=[{key:"name",label:"Provider name",placeholder:"e.g. Ollama Home, OpenAI Work",helpText:"A short label shown in /provider and startup setup."},{key:"baseUrl",label:"Base URL",placeholder:"e.g. http://localhost:11434/v1",helpText:"API base URL used for this provider profile."},{key:"apiKey",label:"API key",placeholder:"Leave empty if your provider does not require one",helpText:"Optional. Press Enter with empty value to skip.",optional:!0},{key:"model",label:"Default model",placeholder:"e.g. llama3.1:8b or glm-4.7; glm-4.7-flash",helpText:'Model name(s) to use. Separate multiple with ";" or ","; first is default.'}],oq=new Set(["anthropic","bedrock","vertex","foundry"]),$1=q2,J1=V2("providerProfile",(z)=>z);V1={bedrock:[{key:"awsRegion",label:"AWS region",placeholder:"e.g. us-east-1",helpText:"Region of your Bedrock-enabled AWS account. Credentials are picked up from the AWS SDK chain."}],vertex:[{key:"gcpProject",label:"GCP project ID",placeholder:"e.g. my-project-123456",helpText:"Google Cloud project where Vertex AI is enabled. Credentials are picked up from ADC."},{key:"gcpRegion",label:"GCP region",placeholder:"e.g. us-central1",helpText:"Vertex AI region for the model."}],foundry:[{key:"azureResource",label:"Azure resource",placeholder:"e.g. my-foundry-resource",helpText:"Name of your Azure AI Foundry resource. Credentials are picked up from DefaultAzureCredential."}]}});
|
|
50
|
+
export{G4 as qc,Qz as rc,G1 as sc,T8 as tc,_1 as uc};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{cd as Q,dd as Y}from"./cli-1.1.31-9x9gaa7g.mjs";import{$t as X,Tl as H,Tt as K,Ul as B,Yl as U,Zl as V,vp as J,wp as W}from"./cli-1.1.31-g58b1jfa.mjs";import{isa as q,lsa as v}from"./cli-1.1.31-qj8vksz8.mjs";function P(k){return x.some((h)=>k.endsWith(h))}function C(k){return k.filter((h)=>H.has(h.name)||P(h.name))}function A(k,h,E){let[Z,$]=Q(J([...k,...h],"name"),K),w=(g,j)=>g.name.localeCompare(j.name),z=[...$.sort(w),...Z.sort(w)];if(G){if(G.isCoordinatorMode())return C(z)}return z}var x,G;var D=v(()=>{Y();W();B();X();x=["subscribe_pr_activity","unsubscribe_pr_activity"];G=(V(),q(U))});
|
|
2
|
+
export{P as _c,C as $c,A as ad,D as bd};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{l3 as k,n3 as w}from"./cli-1.1.31-t96rrv1m.mjs";import{C7 as v,i7 as j}from"./cli-1.1.31-adnn5x8c.mjs";import{aaa as d,gaa as h,maa as s}from"./cli-1.1.31-p99fz46k.mjs";import{Lla as q}from"./cli-1.1.31-wba64b2s.mjs";import{lsa as p}from"./cli-1.1.31-qj8vksz8.mjs";function m(){return y()||!!process.env.CLAUDE_BRIDGE_OAUTH_TOKEN}function x(){return m()}async function O(){return x()}async function P(){if(!m())return"Remote Control needs an Anthropic web login (a claude.ai OAuth token with the user:profile scope). Run `/provider` and sign in with your claude.ai account. Note: an inference API key alone is not enough — the bridge token is separate.";return null}function y(){try{return j()}catch{return!1}}function Q(){return d("tengu_bridge_repl_v2",!1)}function R(){return d("tengu_bridge_repl_v2_cse_shim_enabled",!0)}function U(){{let b=h("tengu_bridge_min_version",{minVersion:"0.0.0"});if(b.minVersion&&k("99.0.0",b.minVersion))return`Your version of Claudin (99.0.0) is too old for Remote Control.
|
|
2
|
+
Version ${b.minVersion} or higher is required. Run \`claudin update\` to update.`}return null}function W(){return!1}function X(){return!1}var z=p(()=>{s();v();q();w()});
|
|
3
|
+
export{x as gW,O as hW,P as iW,Q as jW,R as kW,U as lW,W as mW,X as nW,z as oW};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import{GR as a,Hj as $,Kj as h,bm as F,em as m,mD as O,mR as P,nD as I,sL as U,uM as A,vM as p}from"./cli-1.1.31-g58b1jfa.mjs";import{y3 as b,z3 as T}from"./cli-1.1.31-adnn5x8c.mjs";import{Eka as R,Ika as x}from"./cli-1.1.31-t6m64e0q.mjs";import{vla as k,xla as M}from"./cli-1.1.31-dmghye74.mjs";import{Ala as N,Lla as _}from"./cli-1.1.31-wba64b2s.mjs";import{lsa as v}from"./cli-1.1.31-qj8vksz8.mjs";import{join as E}from"path";function g(){return`IMPORTANT: This message and these instructions are NOT part of the actual user conversation. Do NOT include any references to "documentation updates", "magic docs", or these update instructions in the document content.
|
|
2
|
+
|
|
3
|
+
Based on the user conversation above (EXCLUDING this documentation update instruction message), update the Magic Doc file to incorporate any NEW learnings, insights, or information that would be valuable to preserve.
|
|
4
|
+
|
|
5
|
+
The file {{docPath}} has already been read for you. Here are its current contents:
|
|
6
|
+
<current_doc_content>
|
|
7
|
+
{{docContents}}
|
|
8
|
+
</current_doc_content>
|
|
9
|
+
|
|
10
|
+
Document title: {{docTitle}}
|
|
11
|
+
{{customInstructions}}
|
|
12
|
+
|
|
13
|
+
Your ONLY task is to use the Edit tool to update the documentation file if there is substantial new information to add, then stop. You can make multiple edits (update multiple sections as needed) - make all Edit tool calls in parallel in a single message. If there's nothing substantial to add, simply respond with a brief explanation and do not call any tools.
|
|
14
|
+
|
|
15
|
+
CRITICAL RULES FOR EDITING:
|
|
16
|
+
- Preserve the Magic Doc header exactly as-is: # MAGIC DOC: {{docTitle}}
|
|
17
|
+
- If there's an italicized line immediately after the header, preserve it exactly as-is
|
|
18
|
+
- Keep the document CURRENT with the latest state of the codebase - this is NOT a changelog or history
|
|
19
|
+
- Update information IN-PLACE to reflect the current state - do NOT append historical notes or track changes over time
|
|
20
|
+
- Remove or replace outdated information rather than adding "Previously..." or "Updated to..." notes
|
|
21
|
+
- Clean up or DELETE sections that are no longer relevant or don't align with the document's purpose
|
|
22
|
+
- Fix obvious errors: typos, grammar mistakes, broken formatting, incorrect information, or confusing statements
|
|
23
|
+
- Keep the document well organized: use clear headings, logical section order, consistent formatting, and proper nesting
|
|
24
|
+
|
|
25
|
+
DOCUMENTATION PHILOSOPHY - READ CAREFULLY:
|
|
26
|
+
- BE TERSE. High signal only. No filler words or unnecessary elaboration.
|
|
27
|
+
- Documentation is for OVERVIEWS, ARCHITECTURE, and ENTRY POINTS - not detailed code walkthroughs
|
|
28
|
+
- Do NOT duplicate information that's already obvious from reading the source code
|
|
29
|
+
- Do NOT document every function, parameter, or line number reference
|
|
30
|
+
- Focus on: WHY things exist, HOW components connect, WHERE to start reading, WHAT patterns are used
|
|
31
|
+
- Skip: detailed implementation steps, exhaustive API docs, play-by-play narratives
|
|
32
|
+
|
|
33
|
+
What TO document:
|
|
34
|
+
- High-level architecture and system design
|
|
35
|
+
- Non-obvious patterns, conventions, or gotchas
|
|
36
|
+
- Key entry points and where to start reading code
|
|
37
|
+
- Important design decisions and their rationale
|
|
38
|
+
- Critical dependencies or integration points
|
|
39
|
+
- References to related files, docs, or code (like a wiki) - help readers navigate to relevant context
|
|
40
|
+
|
|
41
|
+
What NOT to document:
|
|
42
|
+
- Anything obvious from reading the code itself
|
|
43
|
+
- Exhaustive lists of files, functions, or parameters
|
|
44
|
+
- Step-by-step implementation details
|
|
45
|
+
- Low-level code mechanics
|
|
46
|
+
- Information already in CLAUDE.md or other project docs
|
|
47
|
+
|
|
48
|
+
Use the Edit tool with file_path: {{docPath}}
|
|
49
|
+
|
|
50
|
+
REMEMBER: Only update if there is substantial new information. The Magic Doc header (# MAGIC DOC: {{docTitle}}) must remain unchanged.`}async function D(){let w=R(),z=E(N(),"magic-docs","prompt.md");try{return await w.readFile(z,{encoding:"utf-8"})}catch{return g()}}function f(w,z){return w.replace(/\{\{(\w+)\}\}/g,(B,J)=>Object.prototype.hasOwnProperty.call(z,J)?z[J]:B)}async function S(w,z,B,J){let Y=await D(),K=J?`
|
|
51
|
+
|
|
52
|
+
DOCUMENT-SPECIFIC UPDATE INSTRUCTIONS:
|
|
53
|
+
The document author has provided specific instructions for how this file should be updated. Pay extra attention to these instructions and follow them carefully:
|
|
54
|
+
|
|
55
|
+
"${J}"
|
|
56
|
+
|
|
57
|
+
These instructions take priority over the general rules below. Make sure your updates align with these specific guidelines.`:"";return f(Y,{docContents:w,docPath:z,docTitle:B,customInstructions:K})}var y=v(()=>{_();x()});function Xw(){G.clear()}function r(w){let z=w.match(u);if(!z||!z[1])return null;let B=z[1].trim(),J=z.index+z[0].length,K=w.slice(J).match(/^\s*\n(?:\s*\n)?(.+?)(?:\n|$)/);if(K&&K[1]){let X=K[1].match(l);if(X&&X[1]){let Z=X[1].trim();return{title:B,instructions:Z}}}return{title:B}}function d(){return{agentType:"magic-docs",whenToUse:"Update Magic Docs",tools:[$],model:"sonnet",source:"built-in",baseDir:"built-in",getSystemPrompt:()=>""}}async function i(w,z){let{messages:B,systemPrompt:J,userContext:Y,systemContext:K,toolUseContext:V}=z,X=F(V.readFileState);X.delete(w.path);let Z={...V,readFileState:X},q="";try{let W=(await A.call({file_path:w.path},Z)).data;if(W.type==="text")q=W.file.content}catch(Q){if(k(Q)||Q instanceof Error&&Q.message.startsWith("File does not exist")){G.delete(w.path);return}throw Q}let H=r(q);if(!H){G.delete(w.path);return}let L=await S(q,w.path,H.title,H.instructions),C=async(Q,W)=>{if(Q.name===$&&typeof W==="object"&&W!==null&&"file_path"in W){let j=W.file_path;if(typeof j==="string"&&j===w.path)return{behavior:"allow",updatedInput:W}}return{behavior:"deny",message:`only ${$} is allowed for ${w.path}`,decisionReason:{type:"other",reason:`only ${$} is allowed`}}};for await(let Q of O({agentDefinition:d(),promptMessages:[U({content:L})],toolUseContext:Z,canUseTool:C,isAsync:!0,forkContextMessages:B,querySource:"magic_docs",override:{systemPrompt:J,userContext:Y,systemContext:K},availableTools:Z.options.tools}));}async function Zw(){}var u,l,G,Yw;var s=v(()=>{I();h();p();M();m();a();T();y();u=/^#\s*MAGIC\s+DOC:\s*(.+)$/im,l=/^[_*](.+?)[_*]\s*$/m,G=new Map;Yw=b(async function(w){let{messages:z,querySource:B}=w;if(B!=="repl_main_thread")return;if(P(z))return;if(G.size===0)return;for(let K of Array.from(G.values()))await i(K,w)})});
|
|
58
|
+
export{Xw as zi,Zw as Ai,s as Bi};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Oq as R,Pq as T,Qq as $,lB as U,mB as V,pB as f}from"./cli-1.1.31-g58b1jfa.mjs";import{n5 as Q,o5 as _}from"./cli-1.1.31-adnn5x8c.mjs";import{Fca as L,Kha as G,Mca as Y,Sha as Z}from"./cli-1.1.31-p99fz46k.mjs";import{lsa as X}from"./cli-1.1.31-qj8vksz8.mjs";function S(q,j){let z=new Map;for(let x of j)z.set(x.agentType,x);let H=new Set,J=[];for(let x of q){let K=`${x.agentType}:${x.source}`;if(H.has(K))continue;H.add(K);let E=z.get(x.agentType),W=E&&E.source!==x.source?E.source:void 0;J.push({...x,overriddenBy:W})}return J}function I(q){let j=q.model||U();if(!j)return;if(j==="inherit")return"inherit";if(j==="haiku"||j==="sonnet"||j==="opus"){try{if(!V())return"inherit";if(!Q(j))return"inherit"}catch(z){G(z)}return j}return T(j,`agent:${q.agentType}`,{getAvailableModelIds:R,logDebug:()=>{},logErr:G})??j}function N(q){return L(q).toLowerCase()}function P(q,j){return q.agentType.localeCompare(j.agentType,void 0,{sensitivity:"base"})}var O;var h=X(()=>{f();_();Z();Y();$();O=[{label:"User agents",source:"userSettings"},{label:"Project agents",source:"projectSettings"},{label:"Local agents",source:"localSettings"},{label:"Managed agents",source:"policySettings"},{label:"Plugin agents",source:"plugin"},{label:"CLI arg agents",source:"flagSettings"},{label:"Built-in agents",source:"built-in"}]});
|
|
2
|
+
export{O as Sc,S as Tc,I as Uc,N as Vc,P as Wc,h as Xc};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{td as o,ud as kq}from"./cli-1.1.31-n4g6s1bz.mjs";import{Ai as a,Bi as Lq}from"./cli-1.1.31-hvnwvzhh.mjs";import{$m as P,Jm as C,Mm as e,QG as m,RG as Xq,VM as Tq,WM as bq,XM as f,YM as vq,ek as j,en as qq,jT as $q,mI as u,nn as y,qI as Bq,rI as p,sI as Zq,tn as Gq,vC as g,wC as Qq}from"./cli-1.1.31-g58b1jfa.mjs";import{aV as c,bV as I,mV as Jq}from"./cli-1.1.31-44jshpbd.mjs";import{Afa as h,Bfa as s,Bha as T,Cha as r,Kha as V,Sha as t,ofa as S}from"./cli-1.1.31-p99fz46k.mjs";import{Eka as x,Ika as l,Ska as E,Vka as i}from"./cli-1.1.31-t6m64e0q.mjs";import{Ala as U,Lla as n}from"./cli-1.1.31-wba64b2s.mjs";import{Ooa as v,Yqa as Aq,ppa as L}from"./cli-1.1.31-b8rbgfhm.mjs";import{isa as wq}from"./cli-1.1.31-qj8vksz8.mjs";vq();Lq();Aq();r();i();n();l();Qq();t();Xq();qq();$q();Zq();Jq();s();Gq();e();import{join as K}from"path";var zq=30;function N(){let Q=((S()||{}).cleanupPeriodDays??zq)*24*60*60*1000;return new Date(Date.now()-Q)}function d(G,q){return{messages:G.messages+q.messages,errors:G.errors+q.errors}}function Kq(G){let q=G.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(q)}async function R(G,q,Q){let J={messages:0,errors:0};try{let X=await x().readdir(G);for(let Z of X)try{if(Kq(Z.name)<q)if(await x().unlink(K(G,Z.name)),Q)J.messages++;else J.errors++}catch(z){V(z)}}catch(X){if(X instanceof Error&&"code"in X&&X.code!=="ENOENT")V(X)}return J}async function Yq(){let G=x(),q=N(),Q=T.errors(),J=T.baseLogs(),X=await R(Q,q,!1);try{let Z;try{Z=await G.readdir(J)}catch{return X}let z=Z.filter(($)=>$.isDirectory()&&$.name.startsWith("mcp-logs-")).map(($)=>K(J,$.name));for(let $ of z)X=d(X,await R($,q,!0)),await Y($,G)}catch(Z){if(Z instanceof Error&&"code"in Z&&Z.code!=="ENOENT")V(Z)}return X}async function M(G,q,Q){if((await Q.stat(G)).mtime<q)return await Q.unlink(G),!0;return!1}async function Y(G,q){try{await q.rmdir(G)}catch{}}async function xq(){let G=N(),q={messages:0,errors:0},Q=j(),J=x(),X;try{X=await J.readdir(Q)}catch{return q}for(let Z of X){if(!Z.isDirectory())continue;let z=K(Q,Z.name),$;try{$=await J.readdir(z)}catch{q.errors++;continue}for(let W of $)if(W.isFile()){if(!W.name.endsWith(".jsonl")&&!W.name.endsWith(".cast"))continue;try{if(await M(K(z,W.name),G,J))q.messages++}catch{q.errors++}}else if(W.isDirectory()){let A=K(z,W.name),_=K(A,y),k;try{k=await J.readdir(_)}catch{await Y(A,J);continue}for(let w of k)if(w.isFile())try{if(await M(K(_,w.name),G,J))q.messages++}catch{q.errors++}else if(w.isDirectory()){let B=K(_,w.name),H;try{H=await J.readdir(B)}catch{continue}for(let F of H){if(!F.isFile())continue;try{if(await M(K(B,F.name),G,J))q.messages++}catch{q.errors++}}await Y(B,J)}await Y(_,J),await Y(A,J)}await Y(z,J)}return q}async function O(G,q,Q=!0){let J=N(),X={messages:0,errors:0},Z=x(),z;try{z=await Z.readdir(G)}catch{return X}for(let $ of z){if(!$.isFile()||!$.name.endsWith(q))continue;try{if(await M(K(G,$.name),J,Z))X.messages++}catch{X.errors++}}if(Q)await Y(G,Z);return X}async function Wq(){let G=P(),q=await O(G,".md"),Q=K(U(),"plans");if(Q!==G){let J=await O(Q,".md");return d(q,J)}return q}async function Nq(){let G=N(),q={messages:0,errors:0},Q=x();try{let J=U(),X=K(J,"file-history"),Z;try{Z=await Q.readdir(X)}catch{return q}let z=Z.filter(($)=>$.isDirectory()).map(($)=>K(X,$.name));await Promise.all(z.map(async($)=>{try{if((await Q.stat($)).mtime<G)await Q.rm($,{recursive:!0,force:!0}),q.messages++}catch{q.errors++}})),await Y(X,Q)}catch(J){V(J)}return q}async function Vq(){let G=N(),q={messages:0,errors:0},Q=x();try{let J=U(),X=K(J,"session-env"),Z;try{Z=await Q.readdir(X)}catch{return q}let z=Z.filter(($)=>$.isDirectory()).map(($)=>K(X,$.name));for(let $ of z)try{if((await Q.stat($)).mtime<G)await Q.rm($,{recursive:!0,force:!0}),q.messages++}catch{q.errors++}await Y(X,Q)}catch(J){V(J)}return q}async function Uq(){let G=N(),q={messages:0,errors:0},Q=x();try{let J=K(U(),"tasks"),X=I(c()),Z;try{Z=await Q.readdir(J)}catch{return q}for(let z of Z){if(!z.isDirectory()||z.name===X)continue;let $=K(J,z.name);try{if(await Mq($,Q)<G)await Q.rm($,{recursive:!0,force:!0}),q.messages++}catch{q.errors++}}await Y(J,Q)}catch(J){V(J)}return q}async function Mq(G,q){let Q=(await q.stat(G)).mtime,J=await q.readdir(G).catch(()=>[]);for(let X of J){if(!X.isFile())continue;try{let{mtime:Z}=await q.stat(K(G,X.name));if(Z>Q)Q=Z}catch{}}return Q}async function _q(){let G=N(),q={messages:0,errors:0},Q=x(),J=K(U(),"debug"),X;try{X=await Q.readdir(J)}catch{return q}for(let Z of X){if(!Z.isFile()||!Z.name.endsWith(".txt")||Z.name==="latest")continue;try{if(await M(K(J,Z.name),G,Q))q.messages++}catch{q.errors++}}return q}async function D(){let{errors:G}=p();if(G.length>0&&h("cleanupPeriodDays")){E("Skipping cleanup: settings have validation errors but cleanupPeriodDays was explicitly set. Fix settings errors to enable cleanup.");return}await Yq(),await xq(),await Wq(),await Nq(),await Vq(),await Uq(),await _q(),await g(),await m(N());let q=await C(N())}Bq();kq();var Hq=(bq(),wq(Tq));var b=600000;function lq(){a(),Hq.initExtractMemories(),f(),o();let G=!0;async function q(){if(L()&&v()>Date.now()-60000){setTimeout(q,b).unref();return}if(G)G=!1,await D();if(L()&&v()>Date.now()-60000){setTimeout(q,b).unref();return}await u()}setTimeout(q,b).unref()}
|
|
2
|
+
export{lq as Ha};
|