blade-code 0.10.205 → 0.10.206
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/blade.js +2 -2
- package/dist/chunk-09kqfdpa.js +3 -0
- package/dist/{chunk-efjjkha8.js → chunk-0ef47wgr.js} +2 -2
- package/dist/chunk-1j39te3t.js +23 -0
- package/dist/{chunk-fdr4fcrf.js → chunk-1n4v80hy.js} +1 -1
- package/dist/{chunk-ynd1v33f.js → chunk-28n945me.js} +2 -2
- package/dist/{chunk-ys8gysg8.js → chunk-28tzj187.js} +1 -1
- package/dist/{chunk-qtwgm95z.js → chunk-3crwyd2r.js} +3 -3
- package/dist/{chunk-zfxcef0z.js → chunk-50vwafn5.js} +1 -1
- package/dist/chunk-514va7ce.js +2 -0
- package/dist/{chunk-kkzznz4w.js → chunk-53vh6vpt.js} +1 -1
- package/dist/chunk-5k8k56f2.js +731 -0
- package/dist/{chunk-515yj7mt.js → chunk-65wc1h38.js} +1 -1
- package/dist/{chunk-xbs91jd8.js → chunk-67wy9mm7.js} +2 -2
- package/dist/chunk-6p0hkf4f.js +1 -0
- package/dist/{chunk-qdbbke8f.js → chunk-6xzk4hsg.js} +1 -1
- package/dist/chunk-793wjhvz.js +332 -0
- package/dist/{chunk-rtwd35gd.js → chunk-826xegd8.js} +2 -2
- package/dist/chunk-867bpjzg.js +1 -0
- package/dist/{chunk-zj1g4nbq.js → chunk-870szc6v.js} +1 -1
- package/dist/chunk-983hqzat.js +1 -0
- package/dist/{chunk-0eajnhrj.js → chunk-9kj19a8t.js} +1 -1
- package/dist/{chunk-430b319j.js → chunk-9sf1t8gw.js} +1 -1
- package/dist/chunk-9tpzmy8v.js +4 -0
- package/dist/chunk-af0m5227.js +1 -0
- package/dist/{chunk-f8kjdxz7.js → chunk-asgmmaec.js} +2 -2
- package/dist/{chunk-vz88tqtd.js → chunk-av799ng5.js} +2 -2
- package/dist/{chunk-bwe49m6n.js → chunk-az3rehz9.js} +360 -360
- package/dist/{chunk-p0wyhp5a.js → chunk-dnpkf5mv.js} +2 -2
- package/dist/chunk-dpg006xj.js +1 -0
- package/dist/{chunk-xmymx75h.js → chunk-e0ft3vwg.js} +1 -1
- package/dist/chunk-e45r1a8r.js +25 -0
- package/dist/{chunk-g01mth5d.js → chunk-ebpg1srd.js} +2 -2
- package/dist/{chunk-4wx5sya5.js → chunk-ed2hdrwe.js} +1 -1
- package/dist/{chunk-7ajvrtb3.js → chunk-erhaedch.js} +1 -1
- package/dist/{chunk-kehgewqh.js → chunk-ewwrss2w.js} +1 -1
- package/dist/{chunk-kf9gj2gn.js → chunk-fc1gz532.js} +2 -2
- package/dist/{chunk-9jz1q7bk.js → chunk-fd0a8h55.js} +2 -2
- package/dist/{chunk-qp2qc4p2.js → chunk-fnmqxhv1.js} +2 -2
- package/dist/chunk-g7tphxme.js +6 -0
- package/dist/{chunk-eg3ms291.js → chunk-gmpsfkgg.js} +1 -1
- package/dist/chunk-gpnkxh4c.js +1 -0
- package/dist/{chunk-b8ast0cp.js → chunk-gz84aewr.js} +1 -1
- package/dist/{chunk-xxbxc31z.js → chunk-h4k69z1b.js} +1 -1
- package/dist/{chunk-17d4m89n.js → chunk-h6ahwwpa.js} +2 -2
- package/dist/chunk-hpge30p8.js +8 -0
- package/dist/{chunk-1cy4ab77.js → chunk-hv8nt7wj.js} +1 -1
- package/dist/chunk-mtvbm7xe.js +1 -0
- package/dist/chunk-mys9mmcp.js +1 -0
- package/dist/{chunk-wezr6wfq.js → chunk-n34qsnks.js} +1 -1
- package/dist/chunk-n5jzmwhy.js +25 -0
- package/dist/chunk-new78c3h.js +1 -0
- package/dist/{chunk-8pd1hp4r.js → chunk-nj6kpdte.js} +2 -2
- package/dist/chunk-nng1xbsm.js +10 -0
- package/dist/{chunk-xyypxrad.js → chunk-p2y1zqsb.js} +2 -2
- package/dist/chunk-p8vpvx07.js +12 -0
- package/dist/{chunk-w42j9p3t.js → chunk-pdna2qvv.js} +2 -2
- package/dist/{chunk-gn9er641.js → chunk-pga8gxtf.js} +1 -1
- package/dist/chunk-pt0y4zrg.js +14 -0
- package/dist/{chunk-5zmp7p0n.js → chunk-q6abav45.js} +51 -51
- package/dist/chunk-r4em0ha7.js +1 -0
- package/dist/chunk-rdzbd5vk.js +1 -0
- package/dist/chunk-sbfe9vh3.js +94 -0
- package/dist/chunk-sqk8cnej.js +44 -0
- package/dist/{chunk-5yyp6njq.js → chunk-t0gm0pn1.js} +1 -1
- package/dist/{chunk-egss0m1x.js → chunk-tsm8rhmd.js} +1 -1
- package/dist/chunk-tzvb0nd2.js +2 -0
- package/dist/{chunk-kvp523gt.js → chunk-v4cxk10d.js} +1 -1
- package/dist/{chunk-ak5xvsxr.js → chunk-v5vx6nz9.js} +1 -1
- package/dist/{chunk-qq5y7b2r.js → chunk-vx2g1faw.js} +1 -1
- package/dist/chunk-w6zat4v4.js +1 -0
- package/dist/chunk-wsd3rn0q.js +1 -0
- package/dist/{chunk-c51wwnh2.js → chunk-xcq0cehr.js} +5 -6
- package/dist/chunk-yjjxv7fn.js +352 -0
- package/dist/{chunk-6169xxb4.js → chunk-yzf2jpam.js} +2 -2
- package/dist/web/assets/{ChatView-BF6HUrBw.js → ChatView-lUD-61n0.js} +4 -4
- package/dist/web/assets/{CodeBlockHighlighter-C4CgCiRf.js → CodeBlockHighlighter--TbfcBxW.js} +1 -1
- package/dist/web/assets/FilePreview-R6OKQPf2.js +55 -0
- package/dist/web/assets/{KanbanBoard-DDXB-yq1.js → KanbanBoard-BHOKtiv5.js} +1 -1
- package/dist/web/assets/{MarkdownRenderer-DS7RznBE.js → MarkdownRenderer-DqxNq8pa.js} +3 -3
- package/dist/web/assets/{ScrollArea-BM9NzGZM.js → ScrollArea-Dhu0B-zB.js} +1 -1
- package/dist/web/assets/{SessionHistorySurface-DnRySeLE.js → SessionHistorySurface-aZvoj3ma.js} +1 -1
- package/dist/web/assets/{SettingsModal-D5YLUtIo.js → SettingsModal-C7QBnIqa.js} +1 -1
- package/dist/web/assets/{Sidebar-BZC6OkDJ.js → Sidebar-Bznnq91x.js} +1 -1
- package/dist/web/assets/{TaskSwitcher-WewOkw5m.js → TaskSwitcher-DJczhDRp.js} +1 -1
- package/dist/web/assets/{TerminalPanel-C5SGdRNr.js → TerminalPanel-Vk4p0V3p.js} +1 -1
- package/dist/web/assets/{archive-DkczUU08.js → archive-0hLYBKQf.js} +1 -1
- package/dist/web/assets/{arrow-left-9pBiQwu7.js → arrow-left-CXb6Gqf3.js} +1 -1
- package/dist/web/assets/{calendar-clock-BFnUlxrU.js → calendar-clock-DiaFI9Jk.js} +1 -1
- package/dist/web/assets/{chevron-right-yCVkAEcj.js → chevron-right-CcPXH37D.js} +1 -1
- package/dist/web/assets/{clock-3-CcoWoRQs.js → clock-3-D6VR6gJc.js} +1 -1
- package/dist/web/assets/{copy-HJF0oQBS.js → copy-C3eUAQgp.js} +1 -1
- package/dist/web/assets/{download-DSBCIqk3.js → download-DHvS9tI3.js} +1 -1
- package/dist/web/assets/{external-link-zIgEO0KB.js → external-link-BDVaEuqY.js} +1 -1
- package/dist/web/assets/{folder-BdRo64o3.js → folder-B80Ac6rr.js} +1 -1
- package/dist/web/assets/index-VwIiNjc8.css +1 -0
- package/dist/web/assets/{index-BVDkKudh.js → index-YqughEZk.js} +4 -4
- package/dist/web/assets/{message-square-plus-3klTXO0S.js → message-square-plus-D15quyPH.js} +1 -1
- package/dist/web/assets/{pause-B9Q5JWvH.js → pause-BjMlj6Bx.js} +1 -1
- package/dist/web/assets/{pencil-CbYIz1b1.js → pencil-BMoJvcB7.js} +1 -1
- package/dist/web/assets/{play-CZMTj43e.js → play-BHh4py3p.js} +1 -1
- package/dist/web/assets/{plus-Cc7I8fhb.js → plus-DeFz_gQq.js} +1 -1
- package/dist/web/assets/session-events-DCHBz9We.js +25 -0
- package/dist/web/assets/{settings-DSF3exX2.js → settings-CI8xbId2.js} +1 -1
- package/dist/web/assets/{team-qfeJHL9s.js → team-zZ803hH9.js} +1 -1
- package/dist/web/assets/{teamService-Bs9qBKI8.js → teamService-CgLBXgmv.js} +1 -1
- package/dist/web/assets/{terminal-DQLqe-Ed.js → terminal-1WxSJ47E.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/chunk-18swytk4.js +0 -25
- package/dist/chunk-3297ghav.js +0 -1
- package/dist/chunk-33ck9ryb.js +0 -1
- package/dist/chunk-4fa11h6f.js +0 -94
- package/dist/chunk-535s1mm8.js +0 -1
- package/dist/chunk-57939tb3.js +0 -8
- package/dist/chunk-6v0cdqkw.js +0 -1
- package/dist/chunk-8kwj6px8.js +0 -1
- package/dist/chunk-a8z11yd2.js +0 -3
- package/dist/chunk-aatfjx15.js +0 -2
- package/dist/chunk-b2ek44t5.js +0 -12
- package/dist/chunk-b9d0ex8n.js +0 -4
- package/dist/chunk-ccgtbzrz.js +0 -14
- package/dist/chunk-jgxfhk9k.js +0 -733
- package/dist/chunk-jhpwwwjt.js +0 -1
- package/dist/chunk-jjj86dej.js +0 -1
- package/dist/chunk-kejvty9z.js +0 -23
- package/dist/chunk-mhe1zppc.js +0 -1
- package/dist/chunk-pb1q26gw.js +0 -181
- package/dist/chunk-pc5f77qh.js +0 -1
- package/dist/chunk-pkx6kfy6.js +0 -1
- package/dist/chunk-qjptyj18.js +0 -1
- package/dist/chunk-shgxzmdw.js +0 -1
- package/dist/chunk-thytjs86.js +0 -44
- package/dist/chunk-tm3789m3.js +0 -2
- package/dist/chunk-tnmcrvk2.js +0 -25
- package/dist/chunk-wejthch2.js +0 -1
- package/dist/chunk-xv6ejk2z.js +0 -353
- package/dist/chunk-yvgef7rp.js +0 -10
- package/dist/chunk-zj48897e.js +0 -6
- package/dist/web/assets/FilePreview-BS4PgFKb.js +0 -55
- package/dist/web/assets/index-CaCifsSK.css +0 -1
- package/dist/web/assets/session-events-NEjosinC.js +0 -31
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import{dg as G0}from"./chunk-t0gm0pn1.js";import{Fh as Y0,Pi as l,Si as Z0,qi as W}from"./chunk-sqk8cnej.js";import{aj as z0}from"./chunk-6xzk4hsg.js";import{Oj as u}from"./chunk-3crwyd2r.js";import{devtools as B0,subscribeWithSelector as q0}from"zustand/middleware";import{createStore as D0}from"zustand/vanilla";var a=[{id:"ayu-dark",label:"Ayu Dark",theme:{name:"ayu-dark",colors:{primary:"#ffcc66",secondary:"#bae67e",accent:"#73d0ff",success:"#bae67e",warning:"#ffcc66",error:"#ff3333",info:"#73d0ff",light:"#f0f0f0",dark:"#000000",muted:"#5c6773",highlight:"#2d323b",text:{primary:"#e6e1cf",secondary:"#bae67e",muted:"#5c6773",light:"#ffffff"},background:{primary:"#0f1419",secondary:"#14191f",dark:"#000000"},border:{light:"#2d323b",dark:"#000000"},syntax:{comment:"#5c6773",string:"#bae67e",number:"#ffcc66",keyword:"#ff8f40",function:"#73d0ff",variable:"#e6e1cf",operator:"#f29e74",type:"#73d0ff",tag:"#ff8f40",attr:"#ffd580",default:"#e6e1cf"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.2)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.3), 0 1px 2px 0 rgba(0, 0, 0, 0.2)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2)"}},tags:["dark","popular"]},{id:"dracula",label:"Dracula",theme:{name:"dracula",colors:{primary:"#bd93f9",secondary:"#ffb86c",accent:"#ff79c6",success:"#50fa7b",warning:"#f1fa8c",error:"#ff5555",info:"#8be9fd",light:"#f8f8f2",dark:"#282a36",muted:"#6272a4",highlight:"#44475a",text:{primary:"#f8f8f2",secondary:"#f1fa8c",muted:"#6272a4",light:"#ffffff"},background:{primary:"#282a36",secondary:"#44475a",dark:"#21222c"},border:{light:"#44475a",dark:"#000000"},syntax:{comment:"#6272a4",string:"#f1fa8c",number:"#bd93f9",keyword:"#ff79c6",function:"#50fa7b",variable:"#f8f8f2",operator:"#ff79c6",type:"#8be9fd",tag:"#ff79c6",attr:"#50fa7b",default:"#f8f8f2"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(40, 42, 54, 0.2)",base:"0 1px 3px 0 rgba(40, 42, 54, 0.3), 0 1px 2px 0 rgba(40, 42, 54, 0.2)",lg:"0 10px 15px -3px rgba(40, 42, 54, 0.3), 0 4px 6px -2px rgba(40, 42, 54, 0.2)"}},tags:["dark","popular"]},{id:"monokai",label:"Monokai",theme:{name:"monokai",colors:{primary:"#66d9ef",secondary:"#a6e22e",accent:"#f92672",success:"#a6e22e",warning:"#e6db74",error:"#f92672",info:"#66d9ef",light:"#f8f8f2",dark:"#272822",muted:"#75715e",highlight:"#3e3d32",text:{primary:"#f8f8f2",secondary:"#e6db74",muted:"#75715e",light:"#ffffff"},background:{primary:"#272822",secondary:"#3e3d32",dark:"#1e1f1c"},border:{light:"#3e3d32",dark:"#000000"},syntax:{comment:"#75715e",string:"#e6db74",number:"#ae81ff",keyword:"#f92672",function:"#a6e22e",variable:"#f8f8f2",operator:"#f92672",type:"#66d9ef",tag:"#f92672",attr:"#a6e22e",default:"#f8f8f2"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(39, 40, 34, 0.2)",base:"0 1px 3px 0 rgba(39, 40, 34, 0.3), 0 1px 2px 0 rgba(39, 40, 34, 0.2)",lg:"0 10px 15px -3px rgba(39, 40, 34, 0.3), 0 4px 6px -2px rgba(39, 40, 34, 0.2)"}},tags:["dark","classic"]},{id:"nord",label:"Nord",theme:{name:"nord",colors:{primary:"#88c0d0",secondary:"#81a1c1",accent:"#b48ead",success:"#a3be8c",warning:"#ebcb8b",error:"#bf616a",info:"#88c0d0",light:"#eceff4",dark:"#2e3440",muted:"#4c566a",highlight:"#434c5e",text:{primary:"#eceff4",secondary:"#d8dee9",muted:"#4c566a",light:"#ffffff"},background:{primary:"#2e3440",secondary:"#3b4252",dark:"#242933"},border:{light:"#434c5e",dark:"#000000"},syntax:{comment:"#616e88",string:"#a3be8c",number:"#b48ead",keyword:"#81a1c1",function:"#88c0d0",variable:"#d8dee9",operator:"#81a1c1",type:"#8fbcbb",tag:"#81a1c1",attr:"#8fbcbb",default:"#eceff4"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(46, 52, 64, 0.2)",base:"0 1px 3px 0 rgba(46, 52, 64, 0.3), 0 1px 2px 0 rgba(46, 52, 64, 0.2)",lg:"0 10px 15px -3px rgba(46, 52, 64, 0.3), 0 4px 6px -2px rgba(46, 52, 64, 0.2)"}},tags:["dark","minimal"]},{id:"solarized-light",label:"Solarized Light",theme:{name:"solarized-light",colors:{primary:"#268bd2",secondary:"#2aa198",accent:"#d33682",success:"#859900",warning:"#cb4b16",error:"#dc322f",info:"#268bd2",light:"#fdf6e3",dark:"#073642",muted:"#93a1a1",highlight:"#eee8d5",text:{primary:"#586e75",secondary:"#657b83",muted:"#93a1a1",light:"#002b36"},background:{primary:"#fdf6e3",secondary:"#eee8d5",dark:"#073642"},border:{light:"#eee8d5",dark:"#073642"},syntax:{comment:"#93a1a1",string:"#2aa198",number:"#d33682",keyword:"#859900",function:"#268bd2",variable:"#657b83",operator:"#859900",type:"#b58900",tag:"#268bd2",attr:"#93a1a1",default:"#657b83"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(253, 246, 227, 0.2)",base:"0 1px 3px 0 rgba(253, 246, 227, 0.3), 0 1px 2px 0 rgba(253, 246, 227, 0.2)",lg:"0 10px 15px -3px rgba(253, 246, 227, 0.3), 0 4px 6px -2px rgba(253, 246, 227, 0.2)"}},tags:["light"]},{id:"solarized-dark",label:"Solarized Dark",theme:{name:"solarized-dark",colors:{primary:"#268bd2",secondary:"#2aa198",accent:"#d33682",success:"#859900",warning:"#b58900",error:"#dc322f",info:"#268bd2",light:"#fdf6e3",dark:"#073642",muted:"#586e75",highlight:"#073642",text:{primary:"#839496",secondary:"#93a1a1",muted:"#586e75",light:"#fdf6e3"},background:{primary:"#002b36",secondary:"#073642",dark:"#001f29"},border:{light:"#073642",dark:"#000000"},syntax:{comment:"#586e75",string:"#2aa198",number:"#d33682",keyword:"#859900",function:"#268bd2",variable:"#839496",operator:"#859900",type:"#b58900",tag:"#268bd2",attr:"#93a1a1",default:"#839496"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(0, 43, 54, 0.2)",base:"0 1px 3px 0 rgba(0, 43, 54, 0.3), 0 1px 2px 0 rgba(0, 43, 54, 0.2)",lg:"0 10px 15px -3px rgba(0, 43, 54, 0.3), 0 4px 6px -2px rgba(0, 43, 54, 0.2)"}},tags:["dark"]},{id:"tokyo-night",label:"Tokyo Night",theme:{name:"tokyo-night",colors:{primary:"#7aa2f7",secondary:"#7dcfff",accent:"#bb9af7",success:"#9ece6a",warning:"#e0af68",error:"#f7768e",info:"#7aa2f7",light:"#c0caf5",dark:"#1a1b26",muted:"#565f89",highlight:"#292e42",text:{primary:"#a9b1d6",secondary:"#c0caf5",muted:"#565f89",light:"#ffffff"},background:{primary:"#1a1b26",secondary:"#292e42",dark:"#16161e"},border:{light:"#292e42",dark:"#000000"},syntax:{comment:"#565f89",string:"#9ece6a",number:"#ff9e64",keyword:"#bb9af7",function:"#7aa2f7",variable:"#c0caf5",operator:"#89ddff",type:"#7dcfff",tag:"#f7768e",attr:"#7aa2f7",default:"#a9b1d6"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(26, 27, 38, 0.2)",base:"0 1px 3px 0 rgba(26, 27, 38, 0.3), 0 1px 2px 0 rgba(26, 27, 38, 0.2)",lg:"0 10px 15px -3px rgba(26, 27, 38, 0.3), 0 4px 6px -2px rgba(26, 27, 38, 0.2)"}},tags:["dark","popular"]},{id:"github",label:"GitHub",theme:{name:"github",colors:{primary:"#0969da",secondary:"#8250df",accent:"#bc4c00",success:"#1a7f37",warning:"#bc4c00",error:"#d1242f",info:"#0969da",light:"#f6f8fa",dark:"#24292f",muted:"#6e7781",highlight:"#ddf4ff",text:{primary:"#24292f",secondary:"#57606a",muted:"#6e7781",light:"#ffffff"},background:{primary:"#ffffff",secondary:"#f6f8fa",dark:"#24292f"},border:{light:"#d0d7de",dark:"#24292f"},syntax:{comment:"#6e7781",string:"#0a3069",number:"#0550ae",keyword:"#cf222e",function:"#8250df",variable:"#24292f",operator:"#cf222e",type:"#0550ae",tag:"#116329",attr:"#0550ae",default:"#24292f"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(255, 255, 255, 0.2)",base:"0 1px 3px 0 rgba(255, 255, 255, 0.3), 0 1px 2px 0 rgba(255, 255, 255, 0.2)",lg:"0 10px 15px -3px rgba(255, 255, 255, 0.3), 0 4px 6px -2px rgba(255, 255, 255, 0.2)"}},tags:["light","minimal"]},{id:"gruvbox",label:"Gruvbox",theme:{name:"gruvbox",colors:{primary:"#83a598",secondary:"#8ec07c",accent:"#d3869b",success:"#b8bb26",warning:"#fabd2f",error:"#fb4934",info:"#83a598",light:"#fbf1c7",dark:"#282828",muted:"#928374",highlight:"#3c3836",text:{primary:"#ebdbb2",secondary:"#d5c4a1",muted:"#928374",light:"#ffffff"},background:{primary:"#282828",secondary:"#3c3836",dark:"#1d2021"},border:{light:"#3c3836",dark:"#000000"},syntax:{comment:"#928374",string:"#b8bb26",number:"#d3869b",keyword:"#fb4934",function:"#8ec07c",variable:"#ebdbb2",operator:"#fe8019",type:"#fabd2f",tag:"#fb4934",attr:"#b8bb26",default:"#ebdbb2"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(40, 40, 40, 0.2)",base:"0 1px 3px 0 rgba(40, 40, 40, 0.3), 0 1px 2px 0 rgba(40, 40, 40, 0.2)",lg:"0 10px 15px -3px rgba(40, 40, 40, 0.3), 0 4px 6px -2px rgba(40, 40, 40, 0.2)"}},tags:["dark","warm"]},{id:"one-dark",label:"One Dark",theme:{name:"one-dark",colors:{primary:"#61afef",secondary:"#c678dd",accent:"#e5c07b",success:"#98c379",warning:"#e5c07b",error:"#e06c75",info:"#56b6c2",light:"#abb2bf",dark:"#282c34",muted:"#5c6370",highlight:"#3e4451",text:{primary:"#abb2bf",secondary:"#c6c8d0",muted:"#5c6370",light:"#ffffff"},background:{primary:"#282c34",secondary:"#3e4451",dark:"#21252b"},border:{light:"#3e4451",dark:"#000000"},syntax:{comment:"#5c6370",string:"#98c379",number:"#d19a66",keyword:"#c678dd",function:"#61afef",variable:"#e06c75",operator:"#56b6c2",type:"#e5c07b",tag:"#e06c75",attr:"#d19a66",default:"#abb2bf"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(40, 44, 52, 0.2)",base:"0 1px 3px 0 rgba(40, 44, 52, 0.3), 0 1px 2px 0 rgba(40, 44, 52, 0.2)",lg:"0 10px 15px -3px rgba(40, 44, 52, 0.3), 0 4px 6px -2px rgba(40, 44, 52, 0.2)"}},tags:["dark","popular"]},{id:"catppuccin",label:"Catppuccin",theme:{name:"catppuccin",colors:{primary:"#89b4fa",secondary:"#cba6f7",accent:"#f5c2e7",success:"#a6e3a1",warning:"#f9e2af",error:"#f38ba8",info:"#89dceb",light:"#cdd6f4",dark:"#11111b",muted:"#6c7086",highlight:"#181825",text:{primary:"#cdd6f4",secondary:"#bac2de",muted:"#6c7086",light:"#ffffff"},background:{primary:"#1e1e2e",secondary:"#181825",dark:"#11111b"},border:{light:"#181825",dark:"#000000"},syntax:{comment:"#6c7086",string:"#a6e3a1",number:"#fab387",keyword:"#cba6f7",function:"#89b4fa",variable:"#cdd6f4",operator:"#89dceb",type:"#f5c2e7",tag:"#f38ba8",attr:"#89b4fa",default:"#cdd6f4"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(30, 30, 46, 0.2)",base:"0 1px 3px 0 rgba(30, 30, 46, 0.3), 0 1px 2px 0 rgba(30, 30, 46, 0.2)",lg:"0 10px 15px -3px rgba(30, 30, 46, 0.3), 0 4px 6px -2px rgba(30, 30, 46, 0.2)"}},tags:["dark","pastel"]},{id:"rose-pine",label:"Rose Pine",theme:{name:"rose-pine",colors:{primary:"#9ccfd8",secondary:"#c4a7e7",accent:"#f6c177",success:"#31748f",warning:"#f6c177",error:"#eb6f92",info:"#9ccfd8",light:"#e0def4",dark:"#191724",muted:"#6e6a86",highlight:"#1f1d2e",text:{primary:"#e0def4",secondary:"#cecacd",muted:"#6e6a86",light:"#ffffff"},background:{primary:"#191724",secondary:"#1f1d2e",dark:"#12101a"},border:{light:"#1f1d2e",dark:"#000000"},syntax:{comment:"#6e6a86",string:"#9ccfd8",number:"#ea9a97",keyword:"#c4a7e7",function:"#31748f",variable:"#e0def4",operator:"#f6c177",type:"#9ccfd8",tag:"#eb6f92",attr:"#f6c177",default:"#e0def4"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(25, 23, 36, 0.2)",base:"0 1px 3px 0 rgba(25, 23, 36, 0.3), 0 1px 2px 0 rgba(25, 23, 36, 0.2)",lg:"0 10px 15px -3px rgba(25, 23, 36, 0.3), 0 4px 6px -2px rgba(25, 23, 36, 0.2)"}},tags:["dark","elegant"]},{id:"kanagawa",label:"Kanagawa",theme:{name:"kanagawa",colors:{primary:"#8ba4b0",secondary:"#a292a3",accent:"#c47fd5",success:"#76946a",warning:"#c0a36e",error:"#c34043",info:"#7e9cd8",light:"#dcd7ba",dark:"#1f1f28",muted:"#727169",highlight:"#2a2a37",text:{primary:"#dcd7ba",secondary:"#c8c093",muted:"#727169",light:"#ffffff"},background:{primary:"#1f1f28",secondary:"#2a2a37",dark:"#16161d"},border:{light:"#2a2a37",dark:"#000000"},syntax:{comment:"#727169",string:"#98bb6c",number:"#d27e99",keyword:"#957fb8",function:"#7e9cd8",variable:"#dcd7ba",operator:"#c0a36e",type:"#7aa89f",tag:"#c34043",attr:"#7fb4ca",default:"#dcd7ba"}},spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(31, 31, 40, 0.2)",base:"0 1px 3px 0 rgba(31, 31, 40, 0.3), 0 1px 2px 0 rgba(31, 31, 40, 0.2)",lg:"0 10px 15px -3px rgba(31, 31, 40, 0.3), 0 4px 6px -2px rgba(31, 31, 40, 0.2)"}},tags:["dark","japanese"]}];var o=a;var n={primary:"#0066cc",secondary:"#6c757d",accent:"#e83e8c",success:"#28a745",warning:"#ffc107",error:"#dc3545",info:"#17a2b8",light:"#f8f9fa",dark:"#343a40",muted:"#6c757d",highlight:"#fff3cd",text:{primary:"#212529",secondary:"#6c757d",muted:"#6c757d",light:"#ffffff"},background:{primary:"#ffffff",secondary:"#f8f9fa",dark:"#343a40"},border:{light:"#dee2e6",dark:"#495057"},syntax:{comment:"#6c757d",string:"#28a745",number:"#e83e8c",keyword:"#007bff",function:"#17a2b8",variable:"#495057",operator:"#ffc107",type:"#007bff",tag:"#dc3545",attr:"#ffc107",default:"#212529"}},S={name:"default",colors:n,spacing:{xs:0.25,sm:0.5,md:1,lg:1.5,xl:2},typography:{fontSize:{xs:0.75,sm:0.875,base:1,lg:1.125,xl:1.25,"2xl":1.5,"3xl":1.875},fontWeight:{light:300,normal:400,medium:500,semibold:600,bold:700}},borderRadius:{sm:0.125,base:0.25,lg:0.5,xl:0.75},boxShadow:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)"}},V0={...S,name:"dark",colors:{...n,text:{primary:"#ffffff",secondary:"#e2e8f0",muted:"#94a3b8",light:"#000000"},background:{primary:"#1e293b",secondary:"#334155",dark:"#0f172a"},border:{light:"#475569",dark:"#64748b"},syntax:{comment:"#94a3b8",string:"#34d399",number:"#f472b6",keyword:"#60a5fa",function:"#06b6d4",variable:"#e2e8f0",operator:"#fbbf24",type:"#60a5fa",tag:"#fb7185",attr:"#fbbf24",default:"#ffffff"}}};class s{currentTheme=S;themes=new Map;constructor(){this.themes.set("default",S),this.themes.set("dark",V0);for(let f of o)this.themes.set(f.id,f.theme)}setTheme(f){let y=this.themes.get(f);if(y)this.currentTheme=y;else throw Error(`Theme '${f}' not found`)}getTheme(){return this.currentTheme}getAvailableThemes(){return Array.from(this.themes.keys())}getCurrentThemeName(){return this.currentTheme.name}getThemeByName(f){return this.themes.get(f)}hasTheme(f){return this.themes.has(f)}}var e=new s;var H0={initializationStatus:"idle",initializationError:null,activeModal:"none",sessionSelectorData:void 0,sessionHistoryViewerData:void 0,taskAttentionStatus:"idle",taskAttentionUnreadKeys:[],followUpQueue:null,followUpQueueOwner:null,followUpQueueMutation:{pending:!1,supersededVersions:[]},modelEditorTarget:null,tasks:[],awaitingSecondCtrlC:!1,reasoningEffort:"off",serviceTier:"auto",responseVerbosity:"auto",communicationStyle:"auto",subagentProgress:null,subagentProgresses:{},sideConversation:null,teams:[]},g=(f)=>({...H0,actions:{setInitializationStatus:(y)=>{f((b)=>({app:{...b.app,initializationStatus:y}}))},setInitializationError:(y)=>{f((b)=>({app:{...b.app,initializationError:y}}))},setActiveModal:(y)=>{f((b)=>({app:{...b.app,activeModal:y}}))},showSessionSelector:(y,b="resume")=>{f((x)=>({app:{...x.app,activeModal:"sessionSelector",sessionSelectorData:{intent:b,sessions:y},sessionHistoryViewerData:void 0}}))},showSessionHistoryViewer:(y,b="resume")=>{f((x)=>({app:{...x.app,activeModal:"sessionHistoryViewer",sessionSelectorData:void 0,sessionHistoryViewerData:{intent:b,session:y}}}))},showModelEditWizard:(y)=>{f((b)=>({app:{...b.app,activeModal:"modelEditWizard",modelEditorTarget:y}}))},closeModal:()=>{f((y)=>({app:{...y.app,activeModal:"none",sessionSelectorData:void 0,sessionHistoryViewerData:void 0,modelEditorTarget:null}}))},setTasks:(y)=>{f((b)=>({app:{...b.app,tasks:y}}))},updateTask:(y)=>{f((b)=>({app:{...b.app,tasks:b.app.tasks.map((x)=>x.id===y.id?y:x)}}))},setAwaitingSecondCtrlC:(y)=>{f((b)=>({app:{...b.app,awaitingSecondCtrlC:y}}))},projectTaskAttentionState:(y,b,x)=>{f((p)=>({app:{...p.app,taskAttentionStatus:y,taskAttentionUnreadKeys:[...b],sessionSelectorData:y==="ready"&&p.app.activeModal==="sessionSelector"&&p.app.sessionSelectorData?{...p.app.sessionSelectorData,sessions:[...x]}:p.app.sessionSelectorData}}))},projectFollowUpQueue:(y,b)=>{f((x)=>{let p=[x.session.workspaceRoot,x.session.sessionId,""].join("\x00");if(b!==void 0&&!b.startsWith(p))return x;if(b!==void 0&&x.app.followUpQueueOwner!==null&&x.app.followUpQueueOwner!==b)return x;let h=x.app.followUpQueueMutation.supersededVersions??[];if(h.includes(y.version))return x;let F=x.app.followUpQueue&&x.app.followUpQueue.version!==y.version?[...h,x.app.followUpQueue.version].slice(-16):h;return{app:{...x.app,followUpQueue:y,followUpQueueOwner:b??x.app.followUpQueueOwner,followUpQueueMutation:{pending:x.app.followUpQueueMutation.pending,...x.app.followUpQueueMutation.messageId?{messageId:x.app.followUpQueueMutation.messageId}:{},supersededVersions:F}},command:{...x.command,followUpPresentations:Object.fromEntries(Object.entries(x.command.followUpPresentations).filter(([z])=>y.items.some((G)=>G.id===z)))}}})},claimFollowUpQueueOwner:(y)=>{f((b)=>{let x=[b.session.workspaceRoot,b.session.sessionId,""].join("\x00");if(!y.startsWith(x))return b;if(b.app.followUpQueueOwner===y)return b;return{app:{...b.app,followUpQueue:null,followUpQueueOwner:y,followUpQueueMutation:{pending:!1,supersededVersions:[]}},command:{...b.command,followUpPresentations:{}}}})},setFollowUpQueueMutation:(y,b)=>{f((x)=>{let p=[x.session.workspaceRoot,x.session.sessionId,""].join("\x00");if(b!==void 0&&!b.startsWith(p))return x;if(b!==void 0&&x.app.followUpQueueOwner!==null&&x.app.followUpQueueOwner!==b)return x;return{app:{...x.app,followUpQueueMutation:{...y,supersededVersions:y.supersededVersions??x.app.followUpQueueMutation.supersededVersions}}}})},clearFollowUpQueue:(y)=>{f((b)=>{if(y!==void 0&&b.app.followUpQueueOwner!==y)return b;return{app:{...b.app,followUpQueue:null,followUpQueueOwner:null,followUpQueueMutation:{pending:!1,supersededVersions:[]}},command:{...b.command,followUpPresentations:{}}}})},setReasoningEffort:(y)=>{f((b)=>({app:{...b.app,reasoningEffort:y}}))},setServiceTier:(y)=>{f((b)=>({app:{...b.app,serviceTier:y}}))},setResponseVerbosity:(y)=>{f((b)=>({app:{...b.app,responseVerbosity:y}}))},setCommunicationStyle:(y)=>{f((b)=>({app:{...b.app,communicationStyle:y}}))},setThinkingModeEnabled:(y)=>{f((b)=>({app:{...b.app,reasoningEffort:y?"auto":"off"}}))},toggleThinkingMode:()=>{f((y)=>({app:{...y.app,reasoningEffort:y.app.reasoningEffort==="off"?"auto":"off"}}))},startSubagentProgress:(y,b,x)=>{f((p)=>({app:{...p.app,subagentProgresses:{...p.app.subagentProgresses,[y]:{id:y,type:b,description:x,status:"running",startTime:Date.now()}},subagentProgress:{id:y,type:b,description:x,status:"running",startTime:Date.now()}}}))},updateSubagentTool:(y,b)=>{f((x)=>{let p=x.app.subagentProgresses[y];if(!p)return x;let h={...p,currentTool:b};return{app:{...x.app,subagentProgresses:{...x.app.subagentProgresses,[y]:h},subagentProgress:x.app.subagentProgress?.id===y?h:x.app.subagentProgress}}})},completeSubagentProgress:(y,b,x)=>{f((p)=>{let h=p.app.subagentProgresses[y];if(!h)return p;let F=x?.trim(),z={...h,status:b?"completed":"failed",currentTool:void 0,...!b&&F?{terminalSummary:F.slice(0,200)}:{}};return{app:{...p.app,subagentProgresses:{...p.app.subagentProgresses,[y]:z},subagentProgress:p.app.subagentProgress?.id===y?z:p.app.subagentProgress}}}),setTimeout(()=>{f((p)=>{let h=p.app.subagentProgresses[y];if(!h||h.status==="running")return p;let F={...p.app.subagentProgresses};delete F[y];let z=Object.values(F);return{app:{...p.app,subagentProgresses:F,subagentProgress:p.app.subagentProgress?.id===y?z[z.length-1]??null:p.app.subagentProgress}}})},1500)},startSideConversation:(y,b)=>{f((x)=>({app:{...x.app,sideConversation:{requestId:y,question:b,status:"loading"}}}))},completeSideConversation:(y,b)=>{f((x)=>{if(x.app.sideConversation?.requestId!==y)return x;return{app:{...x.app,sideConversation:{requestId:y,question:x.app.sideConversation.question,status:"completed",response:b.response,durationMs:b.durationMs}}}})},failSideConversation:(y,b)=>{f((x)=>{if(x.app.sideConversation?.requestId!==y)return x;return{app:{...x.app,sideConversation:{requestId:y,question:x.app.sideConversation.question,status:"error",error:b}}}})},dismissSideConversation:()=>{f((y)=>({app:{...y.app,sideConversation:null}}))},setTeams:(y)=>{f((b)=>({app:{...b.app,teams:y}}))}}});var U0={isProcessing:!1,abortController:null,followUpPresentations:{},recoveredSteeringCount:0},T=(f,y)=>({...U0,actions:{setProcessing:(b)=>{f((x)=>({command:{...x.command,isProcessing:b},...!b?{session:{...x.session,providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,providerRecovery:null,turnActivity:null,actionStationarity:null}}:{}}))},createAbortController:()=>{let b=y().command.abortController;if(b&&!b.signal.aborted)b.abort("interrupted-by-new-command");let x=new AbortController;return f((p)=>({command:{...p.command,abortController:x}})),x},getAbortController:()=>{return y().command.abortController},clearAbortController:(b)=>{let x=y().command.abortController;if(b!==void 0&&x!==b)return;f((p)=>({command:{...p.command,abortController:null}}))},abort:(b)=>{let{abortController:x}=y().command;if(x&&!x.signal.aborted)x.abort(b??"user-cancel");f((p)=>({command:{...p.command,isProcessing:!1},session:{...p.session,providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,providerRecovery:null,turnActivity:null,actionStationarity:null}}))},rememberFollowUpPresentation:(b,x)=>{f((p)=>({command:{...p.command,followUpPresentations:Object.fromEntries([...Object.entries(p.command.followUpPresentations),[b,x]].slice(-20))}}))},takeFollowUpPresentation:(b)=>{let x=y().command.followUpPresentations[b];if(!x)return;return f((p)=>({command:{...p.command,followUpPresentations:Object.fromEntries(Object.entries(p.command.followUpPresentations).filter(([h])=>h!==b))}})),x},clearFollowUpPresentations:()=>{f((b)=>({command:{...b.command,followUpPresentations:{}}}))},setRecoveredSteeringCount:(b)=>{f((x)=>({command:{...x.command,recoveredSteeringCount:Math.max(0,b)}}))}}});var j0={config:null},C=(f,y)=>({...j0,actions:{setConfig:(b)=>{u().configureModelProviders(b.modelProviders,b.models),f((x)=>({config:{...x.config,config:b}}))},updateConfig:(b)=>{let x=y().config.config;if(!x)throw Error(`[ConfigSlice] Config not initialized. Cannot update: ${JSON.stringify(b)}`);let p={...x,...b};if(b.modelProviders||b.models)u().configureModelProviders(p.modelProviders,p.models);f((h)=>({config:{...h.config,config:p}}))}}});var _0={currentFocus:"main-input",previousFocus:null},v=(f)=>({..._0,actions:{setFocus:(y)=>{f((b)=>({focus:{...b.focus,currentFocus:y,previousFocus:b.focus.currentFocus}}))},restorePreviousFocus:()=>{f((y)=>({focus:{...y.focus,currentFocus:y.focus.previousFocus||"main-input",previousFocus:null}}))}}});function I(f,y,b,x){let p=f.messages.find((F)=>F.id===y);if(p)return p;let h={id:y,role:b,content:"",timestamp:x};return f.messages.push(h),h}function t(f,y){let b=Date.parse(y.timestamp)||Date.now();switch(y.type){case"message_created":return I(f,y.data.messageId,y.data.role,b),f;case"part_created":case"part_updated":{let{messageId:x,partType:p,payload:h,partId:F}=y.data,z=f.messages.find((G)=>G.id===x)??I(f,x,"assistant",b);if(p==="text"){let G=h.text??"";f.streamingText.delete(F),z.content=G}else if(p==="image")z.content=z.content?`${z.content}
|
|
2
|
+
[Image]`:"[Image]";return f}default:return f}}function x0(f,y){if(y.channel!=="content")return f;let b=f.messages.find((h)=>h.id===y.messageId)??I(f,y.messageId,"assistant",Date.now()),p=(f.streamingText.get(y.partId)?.text??"")+y.delta;return f.streamingText.set(y.partId,{messageId:y.messageId,text:p}),b.content=p,f}function b0(f,y,b,x=0,p=0,h){let F=u(),z=h?F.models.getModel(h,f):F.models.getModels().find(($)=>$.id===f);if(!z)return 0;let G=z.cost,Z=y/1e6*G.input+b/1e6*G.output+x/1e6*G.cacheRead+p/1e6*G.cacheWrite;return Math.round(Z*1e6)/1e6}var J={codeBlock:/^```(\w+)?\s*$/,heading:/^ *(#{1,4}) +(.+)/,blockquote:/^(>+)\s?(.*)/,ulItem:/^([ \t]*)([-*+]) +(.+)/,olItem:/^([ \t]*)(\d+)\. +(.+)/,hr:/^ *([-*_] *){3,} *$/,table:/^\|(.+)\|$/,tableSeparator:/^\|[\s]*:?-+:?[\s]*(\|[\s]*:?-+:?[\s]*)+\|?$/,diffStart:/^<<<DIFF>>>$/,diffEnd:/^<<<\/DIFF>>>$/,commandMessage:/<command-message>(.*?)<\/command-message>/};function M0(f){let y=[],b=f.split(/\r?\n/),x=!1,p=[],h=null,F=0,z=!1,G=[],Z=[],$=!1,U=[],w=!1,Y=[],Q=0,X=!0;for(let j=0;j<b.length;j++){let H=b[j];if($){if(H.match(J.diffEnd)){try{let _=JSON.parse(U.join(`
|
|
3
|
+
`));y.push({type:"diff",content:"",diffData:{patch:_.patch,startLine:_.startLine,matchLine:_.matchLine}})}catch(_){y.push({type:"text",content:U.join(`
|
|
4
|
+
`)})}$=!1,U=[],X=!1;continue}U.push(H);continue}if(H.match(J.diffStart)){$=!0,U=[],X=!1;continue}if(x){let _=H.match(J.codeBlock),O=H.trim()==="```";if(_&&_[1])F++,p.push(H);else if(O)if(F>0)F--,p.push(H);else{let $0=p.join(`
|
|
5
|
+
`);y.push({type:"code",content:$0,language:h||void 0}),x=!1,p=[],h=null,F=0,X=!1}else p.push(H);continue}let L=H.match(J.codeBlock);if(L){x=!0,h=L[1]||null,F=0,X=!1;continue}let q=H.match(J.table),r=H.match(J.tableSeparator);if(q&&!z){if(j+1<b.length){if(b[j+1].match(J.tableSeparator)){z=!0,G=q[1].split("|").map((O)=>O.trim()).filter((O)=>O.length>0),Z=[],X=!1;continue}}}if(z&&r)continue;if(z&&q){let _=q[1].split("|").map((O)=>O.trim()).filter((O)=>O.length>0);while(_.length<G.length)_.push("");if(_.length>G.length)_.length=G.length;Z.push(_);continue}if(z&&!q){if(G.length>0&&Z.length>0)y.push({type:"table",content:"",tableData:{headers:G,rows:Z}});z=!1,G=[],Z=[]}let N=H.match(J.blockquote);if(N){let _=N[1].length,O=N[2]||"";if(w&&_===Q)Y.push(O);else{if(w)y.push({type:"blockquote",content:Y.join(`
|
|
6
|
+
`),blockquoteLevel:Q,blockquoteLines:[...Y]});w=!0,Q=_,Y=[O]}X=!1;continue}if(w)y.push({type:"blockquote",content:Y.join(`
|
|
7
|
+
`),blockquoteLevel:Q,blockquoteLines:[...Y]}),w=!1,Y=[],Q=0;let R=H.match(J.heading);if(R){y.push({type:"heading",content:R[2],level:R[1].length}),X=!1;continue}let P=H.match(J.ulItem);if(P){y.push({type:"list",content:P[3],listType:"ul",marker:P[2],indentation:P[1].length}),X=!1;continue}let k=H.match(J.olItem);if(k){y.push({type:"list",content:k[3],listType:"ol",marker:k[2],indentation:k[1].length}),X=!1;continue}if(H.match(J.hr)){y.push({type:"hr",content:""}),X=!1;continue}if(H.trim().length===0){if(!X)y.push({type:"empty",content:""}),X=!0;continue}let i=H.match(J.commandMessage);if(i){y.push({type:"command-message",content:i[1]}),X=!1;continue}y.push({type:"text",content:H}),X=!1}if(x){let j=p.join(`
|
|
8
|
+
`);y.push({type:"code",content:j,language:h||void 0})}if(z&&G.length>0&&Z.length>0)y.push({type:"table",content:"",tableData:{headers:G,rows:Z}});if(w&&Y.length>0)y.push({type:"blockquote",content:Y.join(`
|
|
9
|
+
`),blockquoteLevel:Q,blockquoteLines:[...Y]});while(y.length>0&&y[y.length-1].type==="empty")y.pop();return y}var B=new Map;function W0(){return{inCodeBlock:!1,codeBlockContent:[],codeBlockLang:null,codeBlockDepth:0,inTable:!1,tableHeaders:[],tableRows:[],inDiff:!1,diffContent:[],inBlockquote:!1,blockquoteLines:[],blockquoteLevel:0,lastLineEmpty:!0,pendingTableHeader:null}}function K0(f){let y=B.get(f);if(y)return y;let b={state:W0(),blocks:[],pendingLine:"",finalized:!1};return B.set(f,b),b}function f0(f){return f.endsWith("\r")?f.slice(0,-1):f}function y0(f,y){if(f.tableHeaders.length>0&&f.tableRows.length>0)y.push({type:"table",content:"",tableData:{headers:f.tableHeaders,rows:f.tableRows}});f.inTable=!1,f.tableHeaders=[],f.tableRows=[]}function M(f,y){if(f.blockquoteLines.length>0)y.push({type:"blockquote",content:f.blockquoteLines.join(`
|
|
10
|
+
`),blockquoteLevel:f.blockquoteLevel,blockquoteLines:[...f.blockquoteLines]});f.inBlockquote=!1,f.blockquoteLines=[],f.blockquoteLevel=0}function p0(f,y){let b=f.codeBlockContent.join(`
|
|
11
|
+
`);y.push({type:"code",content:b,language:f.codeBlockLang||void 0}),f.inCodeBlock=!1,f.codeBlockContent=[],f.codeBlockLang=null,f.codeBlockDepth=0,f.lastLineEmpty=!1}function c(f,y,b=!0){let{state:x,blocks:p}=y;if(x.pendingTableHeader!==null){if(f.match(J.tableSeparator)){x.inTable=!0,x.tableHeaders=x.pendingTableHeader.slice(1,-1).split("|").map((Q)=>Q.trim()).filter((Q)=>Q.length>0),x.tableRows=[],x.pendingTableHeader=null,x.lastLineEmpty=!1;return}p.push({type:"text",content:x.pendingTableHeader}),x.pendingTableHeader=null,x.lastLineEmpty=!1}if(x.inDiff){if(f.match(J.diffEnd)){try{let Q=JSON.parse(x.diffContent.join(`
|
|
12
|
+
`));p.push({type:"diff",content:"",diffData:{patch:Q.patch,startLine:Q.startLine,matchLine:Q.matchLine}})}catch(Q){p.push({type:"text",content:x.diffContent.join(`
|
|
13
|
+
`)})}x.inDiff=!1,x.diffContent=[],x.lastLineEmpty=!1;return}x.diffContent.push(f);return}if(f.match(J.diffStart)){x.inDiff=!0,x.diffContent=[],x.lastLineEmpty=!1;return}if(x.inCodeBlock){let Q=f.match(J.codeBlock),X=f.trim()==="```";if(Q&&Q[1])x.codeBlockDepth++,x.codeBlockContent.push(f);else if(X)if(x.codeBlockDepth>0)x.codeBlockDepth--,x.codeBlockContent.push(f);else p0(x,p);else x.codeBlockContent.push(f);return}let h=f.match(J.codeBlock);if(h){x.inCodeBlock=!0,x.codeBlockLang=h[1]||null,x.codeBlockDepth=0,x.lastLineEmpty=!1;return}let F=f.match(J.table),z=f.match(J.tableSeparator);if(F&&!x.inTable){x.pendingTableHeader=f;return}if(x.inTable&&z)return;if(x.inTable&&F){let Q=F[1].split("|").map((X)=>X.trim()).filter((X)=>X.length>0);while(Q.length<x.tableHeaders.length)Q.push("");if(Q.length>x.tableHeaders.length)Q.length=x.tableHeaders.length;x.tableRows.push(Q);return}if(x.inTable&&!F){if(y0(x,p),b){c(f,y,!1);return}}let G=f.match(J.blockquote);if(G){let Q=G[1].length,X=G[2]||"";if(x.inBlockquote&&Q===x.blockquoteLevel)x.blockquoteLines.push(X);else{if(x.inBlockquote)M(x,p);x.inBlockquote=!0,x.blockquoteLevel=Q,x.blockquoteLines=[X]}x.lastLineEmpty=!1;return}if(x.inBlockquote)M(x,p);let Z=f.match(J.heading);if(Z){p.push({type:"heading",content:Z[2],level:Z[1].length}),x.lastLineEmpty=!1;return}let $=f.match(J.ulItem);if($){p.push({type:"list",content:$[3],listType:"ul",marker:$[2],indentation:$[1].length}),x.lastLineEmpty=!1;return}let U=f.match(J.olItem);if(U){p.push({type:"list",content:U[3],listType:"ol",marker:U[2],indentation:U[1].length}),x.lastLineEmpty=!1;return}if(f.match(J.hr)){p.push({type:"hr",content:""}),x.lastLineEmpty=!1;return}if(f.trim().length===0){if(!x.lastLineEmpty)p.push({type:"empty",content:""}),x.lastLineEmpty=!0;return}let Y=f.match(J.commandMessage);if(Y){p.push({type:"command-message",content:Y[1]}),x.lastLineEmpty=!1;return}p.push({type:"text",content:f}),x.lastLineEmpty=!1}function l0(f,y){if(!f||!y)return;let b=K0(f);if(b.finalized)return;let x=b.pendingLine+y,p=x.split(`
|
|
14
|
+
`),h=x.endsWith(`
|
|
15
|
+
`),F=h?p:p.slice(0,-1);b.pendingLine=h?"":p[p.length-1]??"";for(let z of F)c(f0(z),b)}function i0(f){let y=B.get(f);if(!y||y.finalized)return;if(y.pendingLine)c(f0(y.pendingLine),y),y.pendingLine="";if(y.state.pendingTableHeader!==null)y.blocks.push({type:"text",content:y.state.pendingTableHeader}),y.state.pendingTableHeader=null;if(y.state.inCodeBlock)p0(y.state,y.blocks);if(y.state.inTable)y0(y.state,y.blocks);if(y.state.inBlockquote)M(y.state,y.blocks);if(y.state.inDiff)y.blocks.push({type:"text",content:y.state.diffContent.join(`
|
|
16
|
+
`)}),y.state.inDiff=!1,y.state.diffContent=[];while(y.blocks.length>0&&y.blocks[y.blocks.length-1].type==="empty")y.blocks.pop();y.finalized=!0}function a0(f){let y=B.get(f);if(!y||!y.finalized)return null;return y.blocks}function o0(f){let y=B.get(f);if(!y)return null;return y.blocks}function w0(f){let y=B.get(f);if(!y)return null;let b=[],x=y.state;if(x.inDiff)b.push("<<<DIFF>>>"),b.push(...x.diffContent);else if(x.inCodeBlock){let p=x.codeBlockLang?`\`\`\`${x.codeBlockLang}`:"```";b.push(p),b.push(...x.codeBlockContent)}else if(x.inTable){if(x.tableHeaders.length>0){b.push(`| ${x.tableHeaders.join(" | ")} |`),b.push(`| ${x.tableHeaders.map(()=>"---").join(" | ")} |`);for(let p of x.tableRows)b.push(`| ${p.join(" | ")} |`)}}else if(x.inBlockquote){let p=">".repeat(x.blockquoteLevel)+" ";for(let h of x.blockquoteLines)b.push(p+h)}else if(x.pendingTableHeader)b.push(x.pendingTableHeader);if(y.pendingLine)b.push(y.pendingLine);return b.length>0?b:null}function n0(f){let y=B.get(f);if(!y)return null;let b="text";if(y.state.inDiff)b="diff";else if(y.state.inCodeBlock)b="code";else if(y.state.inTable||y.state.pendingTableHeader)b="table";let x=w0(f);if(!x||x.length===0)return null;return{lines:x,mode:b}}function s0(f){B.delete(f)}function A(){B.clear()}var h0=2000,m=[];function O0(){let f=m;return m=[],f}var E={messages:[],streamingText:new Map};function u0(){E={messages:[],streamingText:new Map}}var Q0={inputTokens:0,outputTokens:0,totalTokens:0,maxContextTokens:0,totalInputTokens:0,totalOutputTokens:0,cacheReadTokens:0,cacheWriteTokens:0,turnCount:0,estimatedCostUsd:0},F0={sessionId:G0("tui"),workspaceRoot:z0(),messages:[],restoredContextMessages:null,restoredVisibleMessageCount:0,isCompacting:!1,currentCommand:null,error:null,isActive:!0,tokenUsage:{...Q0},currentThinkingContent:null,thinkingExpanded:!1,clearCount:0,historyExpanded:!1,expandedMessageCount:100,currentStreamingMessageId:null,currentStreamingChunks:[],currentStreamingLines:[],currentStreamingTail:"",currentStreamingLineCount:0,currentStreamingVersion:0,finalizingStreamingMessageId:null,providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,providerRecovery:null,turnActivity:null,actionStationarity:null},d=(f,y)=>({...F0,actions:{addMessage:(b)=>{f((x)=>({session:{...x.session,messages:[...x.session.messages,b],error:null}}))},addUserMessage:(b)=>{let x={id:`user-${Date.now()}-${Math.random()}`,role:"user",content:b,timestamp:Date.now()};y().session.actions.addMessage(x)},addAssistantMessage:(b,x)=>{let p={id:`assistant-${Date.now()}-${Math.random()}`,role:"assistant",content:b,timestamp:Date.now(),thinkingContent:x};y().session.actions.addMessage(p)},replaceLastAssistantMessage:(b)=>{f((x)=>{let p=x.session.messages.findLastIndex((h)=>h.role==="assistant");if(p<0)return{session:{...x.session,messages:[...x.session.messages,{id:`assistant-${Date.now()}-${Math.random()}`,role:"assistant",content:b,timestamp:Date.now()}]}};return{session:{...x.session,messages:x.session.messages.map((h,F)=>F===p?{...h,content:b}:h)}}})},addAssistantMessageAndClearThinking:(b)=>{let x=y().session.currentThinkingContent,p={id:`assistant-${Date.now()}-${Math.random()}`,role:"assistant",content:b,timestamp:Date.now(),thinkingContent:x||void 0};f((h)=>({session:{...h.session,messages:[...h.session.messages,p],currentThinkingContent:null,error:null}}))},addToolMessage:(b,x)=>{let p={id:`tool-${Date.now()}-${Math.random()}`,role:"tool",content:b,timestamp:Date.now(),metadata:x};y().session.actions.addMessage(p)},setCompacting:(b)=>{f((x)=>({session:{...x.session,isCompacting:b}}))},setCommand:(b)=>{f((x)=>({session:{...x.session,currentCommand:b}}))},setError:(b)=>{f((x)=>({session:{...x.session,error:b}}))},clearMessages:()=>{A(),f((b)=>({session:{...b.session,messages:[],restoredContextMessages:null,restoredVisibleMessageCount:0,error:null,clearCount:b.session.clearCount+1}}))},setCompactedContext:(b)=>{f((x)=>({session:{...x.session,restoredContextMessages:[...b],restoredVisibleMessageCount:x.session.messages.length}}))},resetSession:()=>{A(),f((b)=>({session:{...b.session,...F0,sessionId:b.session.sessionId,isActive:!0},app:{...b.app,followUpQueue:null,followUpQueueOwner:null,followUpQueueMutation:{pending:!1,supersededVersions:[]}},command:{...b.command,followUpPresentations:{}}}))},restoreSession:(b,x,p,h)=>{A(),f((F)=>({session:{...F.session,sessionId:b,workspaceRoot:h??F.session.workspaceRoot,messages:x,restoredContextMessages:p??null,restoredVisibleMessageCount:p?x.length:0,error:null,isActive:!0},app:{...F.app,followUpQueue:null,followUpQueueOwner:null,followUpQueueMutation:{pending:!1,supersededVersions:[]}},command:{...F.command,followUpPresentations:{}}}))},updateTokenUsage:(b)=>{f((x)=>{let p=x.session.tokenUsage,{costUsd:h,scope:F,...z}=b,G=Math.max(0,b.inputTokens??0),Z=Math.max(0,b.outputTokens??0),$=Math.max(0,b.cacheReadTokens??0),U=Math.max(0,b.cacheWriteTokens??0),w=p.totalInputTokens+G,Y=p.totalOutputTokens+Z,Q=p.cacheReadTokens+$,X=p.cacheWriteTokens+U,j=x.config?.config,H=j?.models?.find((r)=>r.id===j.currentModelId),L=H?.model??"",q=h??b0(L,Math.max(0,G-$-U),Z,$,U,H?.provider);return{session:{...x.session,tokenUsage:{...p,...F==="auxiliary"?{}:z,totalInputTokens:w,totalOutputTokens:Y,cacheReadTokens:Q,cacheWriteTokens:X,estimatedCostUsd:p.estimatedCostUsd+Math.max(0,q)}}}})},resetContextUsage:()=>{f((b)=>({session:{...b.session,tokenUsage:{...b.session.tokenUsage,inputTokens:0,outputTokens:0,totalTokens:0}}}))},resetTokenUsage:()=>{f((b)=>({session:{...b.session,tokenUsage:{...Q0}}}))},setCurrentThinkingContent:(b)=>{if(y().session.currentThinkingContent===b)return;f((x)=>({session:{...x.session,currentThinkingContent:b}}))},appendThinkingContent:(b)=>{f((x)=>({session:{...x.session,currentThinkingContent:(x.session.currentThinkingContent||"")+b}}))},setThinkingExpanded:(b)=>{f((x)=>({session:{...x.session,thinkingExpanded:b}}))},toggleThinkingExpanded:()=>{f((b)=>({session:{...b.session,thinkingExpanded:!b.session.thinkingExpanded}}))},setHistoryExpanded:(b)=>{f((x)=>({session:{...x.session,historyExpanded:b}}))},toggleHistoryExpanded:()=>{f((b)=>({session:{...b.session,historyExpanded:!b.session.historyExpanded}}))},setExpandedMessageCount:(b)=>{f((x)=>({session:{...x.session,expandedMessageCount:b}}))},incrementClearCount:()=>{f((b)=>({session:{...b.session,clearCount:b.session.clearCount+1}}))},startStreamingAssistantMessage:()=>{let b=`assistant-${Date.now()}-${Math.random()}`,x={id:b,role:"assistant",content:"",timestamp:Date.now()};return m=[],f((p)=>({session:{...p.session,messages:[...p.session.messages,x],currentStreamingMessageId:b,currentStreamingChunks:[],currentStreamingLines:[],currentStreamingTail:"",currentStreamingLineCount:0,currentStreamingVersion:0,error:null}})),b},appendAssistantContent:(b)=>{let x=y().session.currentStreamingMessageId,p=x??`assistant-${Date.now()}-${Math.random()}`;return m.push(b),f((h)=>{let F=(j)=>j.endsWith("\r")?j.slice(0,-1):j,z=x?h.session.currentStreamingLines:[],G=x?h.session.currentStreamingTail:"",Z=x?h.session.currentStreamingLineCount:0,$=x?h.session.currentStreamingVersion:0,w=(G+b).split(`
|
|
17
|
+
`),Y=w.slice(0,-1).map(F),Q=F(w[w.length-1]??""),X=z;if(Y.length>0){if(X=[...z,...Y],X.length>h0){let j=X.length-h0;X=X.slice(j)}}return{session:{...h.session,currentStreamingMessageId:p,currentStreamingLines:X,currentStreamingTail:Q,currentStreamingLineCount:Z+Y.length,currentStreamingVersion:$+1,error:null}}}),p},finalizeStreamingMessage:(b,x)=>{let p=O0();f((h)=>{let F=h.session.currentStreamingMessageId,G=p.join("")+(b||""),Z=(h.session.currentThinkingContent||"")+(x||"");if(G.length>0){let $={id:F||`assistant-${Date.now()}-${Math.random()}`,role:"assistant",content:G,timestamp:Date.now(),thinkingContent:Z||void 0};return{session:{...h.session,messages:[...h.session.messages,$],currentStreamingMessageId:null,currentStreamingChunks:[],currentStreamingLines:[],currentStreamingTail:"",currentStreamingLineCount:0,currentStreamingVersion:0,currentThinkingContent:null,finalizingStreamingMessageId:$.id}}}return{session:{...h.session,currentStreamingMessageId:null,currentStreamingChunks:[],currentStreamingLines:[],currentStreamingTail:"",currentStreamingLineCount:0,currentStreamingVersion:0,currentThinkingContent:null,finalizingStreamingMessageId:h.session.finalizingStreamingMessageId}}})},clearFinalizingStreamingMessageId:()=>{f((b)=>({session:{...b.session,finalizingStreamingMessageId:null}}))},discardStreamingMessage:()=>{m=[],f((b)=>({session:{...b.session,currentStreamingMessageId:null,currentStreamingChunks:[],currentStreamingLines:[],currentStreamingTail:"",currentStreamingLineCount:0,currentStreamingVersion:0,finalizingStreamingMessageId:null}}))},setProviderAdmission:(b)=>{f((x)=>({session:{...x.session,providerAdmission:b}}))},setProviderCircuit:(b)=>{f((x)=>({session:{...x.session,providerCircuit:b}}))},setProviderRetry:(b)=>{f((x)=>({session:{...x.session,providerRetry:b}}))},setProviderStall:(b)=>{f((x)=>({session:{...x.session,providerStall:b}}))},setProviderRecovery:(b)=>{f((x)=>({session:{...x.session,providerRecovery:b}}))},setTurnActivity:(b)=>{f((x)=>({session:{...x.session,turnActivity:b}}))},setActionStationarity:(b)=>{f((x)=>({session:{...x.session,actionStationarity:b}}))},applyCommittedEvent:(b)=>{t(E,b),f((x)=>({session:{...x.session,messages:[...E.messages],error:null}}))},applyStreamingDelta:(b)=>{x0(E,b),f((x)=>({session:{...x.session,messages:[...E.messages]}}))},resetConversationProjection:()=>{u0()}}});var E0=D0()(B0(q0((...f)=>({session:d(...f),app:g(...f),config:C(...f),focus:v(...f),command:T(...f)})),{name:"BladeStore",enabled:!0})),V=()=>E0.getState(),_2=()=>V().session.actions,W2=()=>V().app.actions,K2=()=>V().session.messages,K=()=>V().config.config,D=null;async function w2(){if(K()!==null)return;if(D)return D;return D=(async()=>{try{let b=await Z0.getInstance().initialize();V().config.actions.setConfig(b)}catch(y){throw D=null,Error(`[FAIL] Store 未初始化且无法自动初始化
|
|
18
|
+
|
|
19
|
+
`+`原因: ${y instanceof Error?y.message:"未知错误"}
|
|
20
|
+
|
|
21
|
+
`+`请确保:
|
|
22
|
+
`+`1. 配置文件格式正确 (~/.blade/config.json)
|
|
23
|
+
`+`2. 运行 blade 进行首次配置
|
|
24
|
+
`+"3. 配置文件权限正确")}finally{D=null}})(),D}var O2=()=>V().config.config?.models??[],u2=()=>{let f=K();if(!f)return;let y=f.currentModelId;return f.models.find((x)=>x.id===y)??f.models[0]},B2=(f)=>{let y=K();if(!y)return;return y.models.find((b)=>b.id===f)},q2=()=>V().config.config?.mcpServers??{},D2=()=>V().app.reasoningEffort!=="off",X0=()=>({setPermissionMode:async(f)=>{V().config.actions.updateConfig({permissionMode:f})},setTheme:async(f,y={})=>{try{e.setTheme(f)}catch{return}V().config.actions.updateConfig({codeTheme:f}),await W().save({codeTheme:f},{scope:"global",...y})},setLanguage:async(f,y={})=>{V().config.actions.updateConfig({language:f}),await W().save({language:f},{scope:"global",...y})},setDebug:async(f,y={})=>{V().config.actions.updateConfig({debug:f}),await W().save({debug:f},{scope:"global",...y})},setTemperature:async(f,y={})=>{V().config.actions.updateConfig({temperature:f}),await W().save({temperature:f},{scope:"global",...y})},updateConfig:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");let x={...b};V().config.actions.updateConfig(f);try{await W().save(f,y)}catch(p){throw V().config.actions.setConfig(x),p}},flush:async()=>{await W().flush()},appendPermissionAllowRule:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");let x=b.permissions?.allow||[];if(!x.includes(f)){let p=[...x,f];V().config.actions.updateConfig({permissions:{...b.permissions,allow:p}})}await W().appendPermissionRule(f,y)},appendLocalPermissionAllowRule:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");let x=b.permissions?.allow||[];if(!x.includes(f)){let p=[...x,f];V().config.actions.updateConfig({permissions:{...b.permissions,allow:p}})}await W().appendLocalPermissionRule(f,y)},setCurrentModel:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");if(!b.models.find((p)=>p.id===f))throw Error(`Model not found: ${f}`);V().config.actions.updateConfig({currentModelId:f}),await W().save({currentModelId:f},{scope:"global",...y})},addModel:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");let x="id"in f?f:{id:l(f,b.models),...f};if(b.models.find((z)=>z.provider===x.provider&&z.model===x.model))throw Error(`Model already configured: ${x.provider}/${x.model}`);let F={models:[...b.models,x]};if(b.models.length===0)F.currentModelId=x.id;return V().config.actions.updateConfig(F),await W().save(F,{scope:"global",...y}),x},addModelWithProvider:async(f,y,b={})=>{let x=K();if(!x)throw Error("Config not initialized");let p=f.provider;if(x.modelProviders[p])throw Error(`Model provider already configured: ${p}`);let h="id"in f?f:{id:l(f,x.models),...f};if(x.models.find(($)=>$.provider===p&&$.model===h.model))throw Error(`Model already configured: ${p}/${h.model}`);let z=x,G=[...x.models,h],Z={modelProviders:{...x.modelProviders,[p]:y},models:G};if(x.models.length===0)Z.currentModelId=h.id;u().registerModelProvider(p,y,[h.model]),V().config.actions.updateConfig(Z);try{return await W().save(Z,{scope:"global",...b}),h}catch($){throw V().config.actions.setConfig(z),u().configureModelProviders(z.modelProviders,z.models),$}},updateModelWithProvider:async(f,y,b,x={})=>{let p=K();if(!p)throw Error("Config not initialized");let h=y.provider;if(!h)throw Error("Model provider is required");if(p.modelProviders[h])throw Error(`Model provider already configured: ${h}`);let F=p.models.findIndex((U)=>U.id===f);if(F===-1)throw Error(`Model not found: ${f}`);let z={...p.models[F],...y};if(!z.model)throw Error("Model ID is required");let G=p,Z=[...p.models];Z[F]=z;let $={modelProviders:{...p.modelProviders,[h]:b},models:Z};u().registerModelProvider(h,b,[z.model]),V().config.actions.updateConfig($);try{await W().save($,{scope:"global",...x})}catch(U){throw V().config.actions.setConfig(G),u().configureModelProviders(G.modelProviders,G.models),U}},updateModelProvider:async(f,y,b={})=>{let x=K();if(!x)throw Error("Config not initialized");if(!x.modelProviders[f])throw Error(`Model provider not found: ${f}`);let p=x.models.filter((h)=>h.provider===f).map((h)=>h.model);u().registerModelProvider(f,y,p),await X0().updateConfig({modelProviders:{...x.modelProviders,[f]:y}},{scope:"global",immediate:!0,...b})},removeModelProvider:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");if(!b.modelProviders[f])throw Error(`Model provider not found: ${f}`);let x=b.models.filter((Y)=>Y.provider===f),p=b.models.filter((Y)=>Y.fallbackModels?.some((Q)=>Q.provider===f));if(!y.removeModels&&(x.length>0||p.length>0))throw Error(`Model provider is still referenced by ${x.length} model(s) and ${p.length} fallback configuration(s)`);let h=x.map((Y)=>Y.id),F=b.models.filter((Y)=>Y.provider!==f).map((Y)=>{let Q=Y.fallbackModels?.filter((H)=>H.provider!==f),{fallbackModels:X,...j}=Y;return Q?.length?{...j,fallbackModels:Q}:j});if(F.length===0)throw Error("Cannot remove the provider that owns the only model");let z={...b.modelProviders};delete z[f];let G={modelProviders:z,models:F};if(h.includes(b.currentModelId))G.currentModelId=F[0].id;let Z=u(),$=await Z.credentials.read(f);await Z.credentials.delete(f);let{removeModels:U,...w}=y;try{return await X0().updateConfig(G,{scope:"global",immediate:!0,...w}),{removedModelIds:h}}catch(Y){if($)await Z.credentials.modify(f,async()=>$);throw Y}},updateModel:async(f,y,b={})=>{let x=K();if(!x)throw Error("Config not initialized");let p=x.models.findIndex((F)=>F.id===f);if(p===-1)throw Error(`Model not found: ${f}`);let h=[...x.models];h[p]={...h[p],...y},V().config.actions.updateConfig({models:h}),await W().save({models:h},{scope:"global",...b})},removeModel:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");if(b.models.length===1)throw Error("Cannot remove the only model");let x=b.models.filter((h)=>h.id!==f),p={models:x};if(b.currentModelId===f)p.currentModelId=x[0].id;V().config.actions.updateConfig(p),await W().save(p,{scope:"global",...y})},addMcpServer:async(f,y,b={})=>{let x=K();if(!x)throw Error("Config not initialized");let p=x.mcpServers??{},h=Y0(y),F={...y,...h?{oauth:h}:{}},z={...p,[f]:F};V().config.actions.updateConfig({mcpServers:z}),await W().save({mcpServers:z},{scope:"project",...b})},removeMcpServer:async(f,y={})=>{let b=K();if(!b)throw Error("Config not initialized");let p={...b.mcpServers??{}};delete p[f],V().config.actions.updateConfig({mcpServers:p}),await W().save({mcpServers:p},{scope:"project",...y})}});
|
|
25
|
+
export{o as If,e as Jf,J as Kf,M0 as Lf,l0 as Mf,i0 as Nf,a0 as Of,o0 as Pf,n0 as Qf,s0 as Rf,E0 as Sf,V as Tf,_2 as Uf,W2 as Vf,K2 as Wf,K as Xf,w2 as Yf,O2 as Zf,u2 as _f,B2 as $f,q2 as ag,D2 as bg,X0 as cg};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$g as k,Rg as a,Sg as b,Tg as c,Ug as d,Vg as e,Wg as f,Xg as g,Yg as h,Zg as i,_g as j}from"./chunk-5k8k56f2.js";import"./chunk-ewwrss2w.js";import"./chunk-53vh6vpt.js";import"./chunk-hv8nt7wj.js";import"./chunk-erhaedch.js";import"./chunk-xcq0cehr.js";import"./chunk-28tzj187.js";import"./chunk-sqk8cnej.js";import"./chunk-514va7ce.js";import"./chunk-6xzk4hsg.js";import"./chunk-n34qsnks.js";import"./chunk-09kqfdpa.js";import"./chunk-3crwyd2r.js";import"./chunk-9kj19a8t.js";import"./chunk-yzf2jpam.js";import"./chunk-asgmmaec.js";import"./chunk-ed2hdrwe.js";import"./chunk-gmpsfkgg.js";export{g as withWorkspaceAgentResources,i as snapshotWorkspaceAgentResources,f as resolveWorkspaceAgentResources,k as resetWorkspaceAgentResources,d as refreshWorkspaceCommunicationStyles,h as getWorkspaceAgentResourceCacheStats,j as createEmptySessionAgentResources,e as configureInvocationPluginDirs,c as WorkspaceAgentResourceCapacityError,a as MAX_RESIDENT_WORKSPACE_AGENT_RESOURCES,b as MAX_ACTIVE_WORKSPACE_AGENT_RESOURCES};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
2
|
-
export{Z as
|
|
1
|
+
import{vh as Q}from"./chunk-erhaedch.js";import{Ej as F,Gj as k,Jj as G}from"./chunk-09kqfdpa.js";var V=k.String({minLength:1,maxLength:128,pattern:"^[A-Za-z0-9][A-Za-z0-9_-]*$"}),K=k.Array(k.String({minLength:1,maxLength:200,pattern:".*\\S.*"}),{maxItems:128}),W=k.Object({description:k.String({minLength:1,maxLength:4096,pattern:".*\\S.*"}),prompt:k.String({minLength:1,maxLength:1e5,pattern:".*\\S.*"}),tools:k.Optional(K),disallowedTools:k.Optional(K),model:k.Optional(k.String({minLength:1,maxLength:200,pattern:".*\\S.*"})),permissionMode:k.Optional(G(["default","acceptEdits","dontAsk","bypassPermissions","plan","ignore"])),maxTurns:k.Optional(k.Integer({minimum:1})),isolation:k.Optional(G(["none","worktree"]))},{additionalProperties:!1});function Z(R){let w;try{w=JSON.parse(R)}catch{throw Error("Invalid JSON provided to --agents")}if(w===null||Array.isArray(w)||typeof w!=="object")throw Error("--agents must be a JSON object");let H=Object.entries(w);if(H.length>64)throw Error("--agents supports at most 64 definitions");return H.map(([z,U])=>{if(!F(V,z).success)throw Error(`Invalid --agents name "${z}": use letters, numbers, hyphens, or underscores`);let I=F(W,U);if(!I.success)throw Error(`Invalid --agents definition for "${z}"`);let q=I.data;return{name:z,description:q.description.trim(),systemPrompt:q.prompt.trim(),tools:q.tools?[...new Set(q.tools.map((B)=>B.trim()))]:void 0,disallowedTools:q.disallowedTools?[...new Set(q.disallowedTools.map((B)=>B.trim()))]:void 0,model:q.model?.trim(),permissionMode:q.permissionMode===void 0?void 0:Q(q.permissionMode),maxTurns:q.maxTurns,isolation:q.isolation,source:"flag"}})}
|
|
2
|
+
export{Z as Af};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import{a as T,b as W,c as X,d as Y}from"./chunk-pt0y4zrg.js";import"./chunk-gz84aewr.js";import"./chunk-870szc6v.js";import"./chunk-tzvb0nd2.js";import"./chunk-fnmqxhv1.js";import"./chunk-h6ahwwpa.js";import"./chunk-az3rehz9.js";import"./chunk-ebpg1srd.js";import"./chunk-e45r1a8r.js";import"./chunk-fc1gz532.js";import"./chunk-793wjhvz.js";import"./chunk-1n4v80hy.js";import"./chunk-sbfe9vh3.js";import"./chunk-tsm8rhmd.js";import"./chunk-yjjxv7fn.js";import"./chunk-0ef47wgr.js";import{Cf as R}from"./chunk-67wy9mm7.js";import"./chunk-dnpkf5mv.js";import{Yf as Q}from"./chunk-n5jzmwhy.js";import"./chunk-t0gm0pn1.js";import"./chunk-v508x7cg.js";import"./chunk-hpge30p8.js";import"./chunk-28n945me.js";import"./chunk-pdna2qvv.js";import"./chunk-50vwafn5.js";import"./chunk-p2y1zqsb.js";import"./chunk-5k8k56f2.js";import"./chunk-ewwrss2w.js";import"./chunk-53vh6vpt.js";import"./chunk-hv8nt7wj.js";import"./chunk-erhaedch.js";import"./chunk-xcq0cehr.js";import"./chunk-28tzj187.js";import"./chunk-sqk8cnej.js";import"./chunk-514va7ce.js";import"./chunk-6xzk4hsg.js";import"./chunk-n34qsnks.js";import"./chunk-09kqfdpa.js";import"./chunk-3crwyd2r.js";import"./chunk-9kj19a8t.js";import{Wj as M}from"./chunk-yzf2jpam.js";import"./chunk-asgmmaec.js";import"./chunk-ed2hdrwe.js";import"./chunk-gmpsfkgg.js";import m from"chalk";import K from"open";var A=`
|
|
2
|
+
____ _ _
|
|
3
|
+
| __ )| | __ _ __| | ___
|
|
4
|
+
| _ \\| |/ _\` |/ _\` |/ _ \\
|
|
5
|
+
| |_) | | (_| | (_| | __/
|
|
6
|
+
|____/|_|\\__,_|\\__,_|\\___|
|
|
7
|
+
`,C={command:"web",describe:"Start Blade server and open web interface",builder:T,handler:async(Z)=>{let H=W(Z);if(await Q(),!process.env.BLADE_SERVER_PASSWORD)console.log(m.yellow("[WARN] BLADE_SERVER_PASSWORD is not set; server is unsecured.")),console.log(m.gray(` Set this environment variable to enable Basic Auth.
|
|
8
|
+
`));let F=await Y.listenAsync(H);if(console.log(m.cyan(A)),console.log(m.gray(` v${M()}
|
|
9
|
+
`)),H.hostname==="0.0.0.0"){let q=`http://localhost:${F.port}`;console.log(m.blue.bold(" Local access: "),m.white(q));let x=X();for(let z of x)console.log(m.blue.bold(" Network access: "),m.white(`http://${z}:${F.port}`));K(q).catch(()=>{})}else{let q=F.url.toString();console.log(m.blue.bold(" Web interface: "),m.white(q)),K(q).catch(()=>{})}console.log(""),console.log(m.gray(` Press Ctrl+C to stop the server.
|
|
10
|
+
`));let J,$=new Promise((q)=>{J=q}),b=R(async()=>{await F.stop(),J()});try{await $}finally{b(),await F.stop()}}};export{C as webCommand};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
2
|
-
export{D as
|
|
1
|
+
import{Si as I}from"./chunk-sqk8cnej.js";import{Nj as G,Oj as H}from"./chunk-3crwyd2r.js";import B from"node:path";function A(b){if(Array.isArray(b))return b.map((q)=>A(q));if(b!==null&&typeof b==="object"&&Object.getPrototypeOf(b)===Object.prototype)return Object.fromEntries(Object.entries(b).map(([q,w])=>[q,A(w)]));return b}function D(b){return A(b)}function E(b,q){let w=new G(q?.credentials??H().credentials);return w.configureModelProviders(b.modelProviders,b.models),w}async function Q(b,q){let w=B.resolve(b),x=I.getInstance(),[J,K]=await Promise.all([x.loadWorkspaceModelConfig(w,q),x.loadWorkspaceRuntimeSettings(w,q)]),z={...D(q),...J,...K},F=E(z);return x.validateConfig(z,F),{projectRoot:w,config:z,catalog:F}}function T(b){let q=D(b.config);return{projectRoot:B.resolve(b.projectRoot),config:q,catalog:E(q,b.catalog)}}function U(b,q){let w=D(q);return{projectRoot:B.resolve(b),config:w,catalog:E(w)}}
|
|
2
|
+
export{D as xg,Q as yg,T as zg,U as Ag};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import{p as g,q as R,r as c,s as v,t as d,u as m,v as l}from"./chunk-9tpzmy8v.js";import{ga as O,na as h}from"./chunk-az3rehz9.js";import"./chunk-ebpg1srd.js";import"./chunk-e45r1a8r.js";import"./chunk-fc1gz532.js";import{ac as w,lc as _}from"./chunk-793wjhvz.js";import"./chunk-1n4v80hy.js";import{le as L}from"./chunk-sbfe9vh3.js";import"./chunk-tsm8rhmd.js";import{Qe as P}from"./chunk-yjjxv7fn.js";import"./chunk-0ef47wgr.js";import{vf as y}from"./chunk-fd0a8h55.js";import{xf as C,yf as I,zf as S}from"./chunk-826xegd8.js";import{Af as M}from"./chunk-nj6kpdte.js";import"./chunk-dnpkf5mv.js";import{Xf as A}from"./chunk-n5jzmwhy.js";import"./chunk-t0gm0pn1.js";import"./chunk-v508x7cg.js";import"./chunk-hpge30p8.js";import"./chunk-28n945me.js";import"./chunk-pdna2qvv.js";import"./chunk-50vwafn5.js";import"./chunk-p2y1zqsb.js";import"./chunk-5k8k56f2.js";import"./chunk-ewwrss2w.js";import"./chunk-53vh6vpt.js";import"./chunk-hv8nt7wj.js";import"./chunk-erhaedch.js";import"./chunk-xcq0cehr.js";import"./chunk-28tzj187.js";import{Dh as F}from"./chunk-sqk8cnej.js";import"./chunk-514va7ce.js";import{aj as z}from"./chunk-6xzk4hsg.js";import"./chunk-n34qsnks.js";import"./chunk-09kqfdpa.js";import"./chunk-3crwyd2r.js";import"./chunk-9kj19a8t.js";import"./chunk-yzf2jpam.js";import"./chunk-asgmmaec.js";import"./chunk-ed2hdrwe.js";import"./chunk-gmpsfkgg.js";import i from"yargs";import{hideBin as e}from"yargs/helpers";var s=new Set(Object.values(F));function t(j){if(j&&s.has(j))return j;return}function x(j){if(j.options.outputFormat==="json")j.io.stdout.write(`${JSON.stringify({response:j.response,...j.structuredOutput?{structured_output:j.structuredOutput,output_schema_digest:j.structuredOutputSchemaDigest}:{},input:j.requestInput,model:j.options.model,timestamp:new Date().toISOString()},null,2)}
|
|
2
|
+
`);else if(j.options.outputFormat==="stream-json")j.io.stdout.write(`${JSON.stringify(j.structuredOutput?{type:"structured_output",output:j.structuredOutput,schema_digest:j.structuredOutputSchemaDigest}:{type:"response",content:j.response})}
|
|
3
|
+
`);else j.io.stdout.write(`${j.response}
|
|
4
|
+
`)}function o(j){return j.command("* [message]","Print response and exit (useful for pipes)",(q)=>q.positional("message",{describe:"Message to process",type:"string"}).option("p",{alias:"print",describe:"Print response and exit (useful for pipes)",type:"boolean"}).option("output-format",{describe:'Output format: "text", "json", "stream-json"',type:"string",default:"text"}).option("include-partial-messages",{describe:"Include partial message chunks as they arrive",type:"boolean"}).option("input-format",{describe:'Input format: "text", "stream-json"',type:"string",default:"text"}).option("json-schema",{alias:["jsonSchema"],describe:"Inline JSON Schema for the structured final response",type:"string"}).option("output-schema",{alias:["outputSchema"],describe:"Path to a JSON Schema file for the structured final response",type:"string"}).option("model",{describe:"Model for the current session",type:"string"}).option("append-system-prompt",{describe:"Append a system prompt to the default system prompt",type:"string"}).option("system-prompt",{describe:"Replace the default system prompt",type:"string"}).option("max-turns",{alias:["maxTurns"],describe:"Maximum conversation turns (-1: unlimited, N>0: limit to N turns)",type:"number"}),async(q)=>{if(!q.p)return;let G=await jj(q);process.exit(G)})}async function jj(j,q=process){let G;try{await g();let U=j.forkSession!==!0&&(j.continue===!0||typeof j.resume==="string"&&j.resume.length>0)?await c({message:j.message,_:j._}):await R({message:j.message,_:j._,defaultMessage:"Hello"}),Y=U===void 0,K=Y?{mode:"agent",content:""}:await v(U);if(K.mode==="output"){if(K.content)q.stdout.write(`${K.content}
|
|
5
|
+
`);return K.exitCode??0}let J=K.content,T=await m(j),V=J.trimStart().startsWith("!")?J.trimStart().slice(1).trim():void 0;if(V!==void 0&&T)throw Error("Output schemas cannot be combined with user shell commands");let{sessionId:H,messages:a,metadata:D}=await l({sessionId:j.sessionId,continue:j.continue,resume:j.resume,forkSession:j.forkSession,fallbackSessionPrefix:"print"}),W=D?.projectPath??z(),Z=t(j.permissionMode)??D?.permissionMode??A()?.permissionMode??"default";await L.setSessionPermissionMode(H,W,Z);let E=await _.cancelPendingNonInteractive(W,H)?await L.loadSessionModelContext(H,W):a;G=await O.create({sessionId:H,workspaceRoot:W,modelId:j.model,permissionMode:Z,mcpConfig:j.mcpConfig,strictMcpConfig:j.strictMcpConfig,agents:j.agents?M(j.agents):void 0,...E.length>0?{sessionStart:{isResume:!0,resumeSessionId:H}}:{}});let{pendingInputOnly:u,goalContinuationOnly:r,finalRecovery:N,recoveryAssessment:$,recoveredFinalResponse:b}=await d(G,Y);if(N&&$.state==="requires_attention")throw q.stderr.write(`[turn-recovery:${$.state}] ${$.turnId}
|
|
6
|
+
`),Error("Turn recovery requires explicit user attention before continuation");if(N){if(!b)throw Error("No unfinished turn or active goal to resume");let B=$;if(B.state!=="none")q.stderr.write(`[turn-recovery:${B.state}] ${B.turnId}
|
|
7
|
+
`);return x({io:q,options:j,response:b.content,requestInput:J,structuredOutput:b.structuredOutput,structuredOutputSchemaDigest:b.structuredOutputSchemaDigest}),0}if(V!==void 0){let B=await G.executeUserShellCommand(V);if(j.outputFormat==="json")q.stdout.write(`${JSON.stringify(B,null,2)}
|
|
8
|
+
`);else if(j.outputFormat==="stream-json")q.stdout.write(`${JSON.stringify({type:"user_shell_completed",executionId:B.executionId,record:B.record})}
|
|
9
|
+
`);else q.stdout.write(`${P(B.record)}
|
|
10
|
+
`);return B.record.status==="completed"?0:B.record.status==="aborted"?130:B.record.exitCode??1}let f=await h.createWithRuntime(G,{sessionId:H,systemPrompt:j.systemPrompt,appendSystemPrompt:j.appendSystemPrompt,maxTurns:j.maxTurns,modelId:j.model,permissionMode:Z,toolWhitelist:j.allowedTools,toolBlacklist:j.disallowedTools,mcpConfig:j.mcpConfig,strictMcpConfig:j.strictMcpConfig}),k={messages:[...E],userId:"cli-user",sessionId:H,workspaceRoot:W,permissionMode:Z},Q=await w(T||Y?f.chatStream(J,k,{...T?{outputSchema:T}:{},pendingInputOnly:u,goalContinuationOnly:r}):f.chatStream(J,k),(B)=>{if(B.kind!=="turn_recovery")return;q.stderr.write(`[turn-recovery:${B.assessment.state}] ${B.assessment.turnId}
|
|
11
|
+
`)});if(Q.metadata?.recoveryAttention)throw Error("Turn recovery requires explicit user attention before continuation");if(!Q.success)throw Error(Q.error?.message??"Agent execution failed");let p=Q.finalMessage||"",n=Q.metadata?.structuredOutput;return x({io:q,options:j,response:p,requestInput:J,structuredOutput:n,structuredOutputSchemaDigest:Q.metadata?.structuredOutputSchemaDigest}),0}catch(X){return q.stderr.write(`Error: ${X instanceof Error?X.message:"未知错误"}
|
|
12
|
+
`),1}finally{await G?.dispose()}}async function Ej(){if(process.argv.slice(2).findIndex((G)=>G==="--print"||G==="-p")===-1)return!1;try{let{print:G,"output-format":X,"include-partial-messages":U,"input-format":Y,"system-prompt":K,"append-system-prompt":J,"max-turns":T,...V}=y,H=i(e(process.argv)).scriptName("blade").strict(!1).options(V).middleware([I,C,S]);return o(H),await H.parse(),!0}catch(G){console.error(`Print mode error: ${G instanceof Error?G.message:"未知错误"}`),process.exit(1)}}export{jj as runPrint,Ej as handlePrintMode};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
2
|
-
export{D as
|
|
1
|
+
import{wg as B}from"./chunk-50vwafn5.js";import{Oj as Y}from"./chunk-3crwyd2r.js";import{Rj as Z,Uj as $}from"./chunk-9kj19a8t.js";import{createHash as H}from"node:crypto";var N="fast-mode-2026-02-01";function R(q,x,z){if(x.api!=="anthropic-messages"||z.providerValue!=="fast")return q;let J={...q},w=Object.keys(J).find((G)=>G.toLowerCase()==="anthropic-beta")??"anthropic-beta",Q=new Set((J[w]??"").split(",").map((G)=>G.trim()).filter(Boolean));return Q.add(N),J[w]=[...Q].join(","),J}function D(q){return`BLADE_MODEL_API_KEY_${H("sha256").update(q).digest("hex").slice(0,32).toUpperCase()}`}function F(q,x){if(!q.fallbackModels?.length)return;return q.fallbackModels.map((z)=>{let J=(x.models??[]).filter((G)=>G.provider===z.provider&&G.model===z.model),w=z.configId?(x.models??[]).find((G)=>G.id===z.configId):J.length===1?J[0]:void 0;if(z.configId&&!w)throw Error(`Unknown fallback model config ID: ${z.configId}`);if(w&&(w.provider!==z.provider||w.model!==z.model))throw Error(`Fallback model config ${w.id} does not match ${z.provider}/${z.model}`);if(!z.configId&&J.length>1)throw Error(`Fallback model ${z.provider}/${z.model} is ambiguous; set configId`);if(!w)return z;let Q=w.provider===q.provider;return{...z,configId:w.id,channel:{apiKey:process.env[D(w.id)]??(Q?process.env.BLADE_API_KEY:void 0),baseUrl:w.overrides?.baseUrl??(Q?process.env.BLADE_BASE_URL:void 0),temperature:w.overrides?.temperature??x.temperature,maxOutputTokens:w.overrides?.maxOutputTokens,timeout:w.overrides?.timeout??x.timeout,streamIdleTimeout:w.overrides?.streamIdleTimeout,apiVersion:w.overrides?.apiVersion,customHeaders:w.overrides?.customHeaders,enablePromptCaching:w.overrides?.enablePromptCaching}}})}function h(q,x,z,J=Y(),w="auto",Q="auto"){let G=J.resolveConfig(q),U=B(G,z),W=$(G,w),X=Z(G,Q),L=q.overrides;return{config:q,model:G,displayName:q.displayName??G.name,chat:{provider:q.provider,model:q.model,apiKey:process.env[D(q.id)]??process.env.BLADE_API_KEY,baseUrl:process.env.BLADE_BASE_URL??L?.baseUrl,temperature:L?.temperature??x.temperature,maxContextTokens:G.contextWindow,maxOutputTokens:L?.maxOutputTokens,timeout:L?.timeout??x.timeout,streamIdleTimeout:L?.streamIdleTimeout,reasoningEnabled:U.effective!=="off",...U.effective==="off"?{}:{reasoningEffort:U.effective},...W.providerValue?{serviceTier:W.providerValue}:{},...X.providerValue?{responseVerbosity:X.providerValue}:{},fallbackModels:F(q,x),enablePromptCaching:L?.enablePromptCaching,customHeaders:R(L?.customHeaders,G,W),apiVersion:L?.apiVersion,maxRetries:L?.maxRetries,providerCircuitBreakerOpenMs:x.providerCircuitBreakerOpenMs,providerRequestConcurrency:x.providerRequestConcurrency,providerGlobalConcurrency:x.providerGlobalConcurrency,providerOwnerConcurrency:x.providerOwnerConcurrency,providerRequestAdmissionMs:x.providerRequestAdmissionMs,providerRequestPendingBytes:x.providerRequestPendingBytes,modelCatalog:J},reasoning:U,serviceTier:W,responseVerbosity:X}}function j(q,x=Y()){try{return q.displayName??x.getModel(q.provider,q.model).name}catch{return q.displayName??q.model}}
|
|
2
|
+
export{D as sg,h as tg,j as ug};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{k as o}from"./chunk-
|
|
1
|
+
import{k as o}from"./chunk-65wc1h38.js";import"./chunk-yzf2jpam.js";import"./chunk-gmpsfkgg.js";import{execSync as r}from"child_process";var l={command:"update",describe:"Check for updates and install if available",handler:async()=>{console.log("Checking for updates...");try{let e=await o(!0);if(console.log(`Current version: ${e.currentVersion}`),e.error){console.log(`Warning: ${e.error}`);return}if(e.latestVersion)console.log(`Latest version: ${e.latestVersion}`);if(e.hasUpdate&&e.latestVersion){console.log(""),console.log(`\x1B[33mUpdate available: ${e.currentVersion} -> ${e.latestVersion}\x1B[0m`),console.log(""),console.log("Updating...");try{r("npm install -g blade-code@latest --registry https://registry.npmjs.org",{stdio:"inherit"}),console.log(""),console.log("Update complete!")}catch(t){console.error("Error: Update failed. Please run manually:"),console.error(" npm install -g blade-code@latest"),process.exit(1)}}else console.log("You are running the latest version of Blade")}catch(e){console.error(`Error: Failed to check for updates: ${e instanceof Error?e.message:"未知错误"}`),process.exit(1)}}};export{l as updateCommands};
|