@tencent-ai/codebuddy-code 2.59.0 → 2.61.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +50 -0
- package/dist/codebuddy-headless.js +385 -219
- package/dist/codebuddy.js +302 -134
- package/dist/web-ui/assets/{index-DWfrqSMa.js → index-CHm8JS1N.js} +109 -102
- package/dist/web-ui/assets/index-CcElCyHg.css +32 -0
- package/dist/web-ui/index.html +2 -2
- package/package.json +1 -1
- package/product.cloudhosted.json +9 -4
- package/product.internal.json +9 -4
- package/product.ioa.json +9 -4
- package/product.json +21 -8
- package/product.selfhosted.json +9 -4
- package/dist/web-ui/assets/index-BNoVPAG4.css +0 -32
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-right-1\.5{right:-.375rem}.-top-1\.5{top:-.375rem}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1\.5{margin-top:.375rem;margin-bottom:.375rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2\.5{margin-left:.625rem}.ml-3{margin-left:.75rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[100dvh\]{height:100dvh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-52{max-height:13rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-\[280px\]{max-height:280px}.max-h-\[320px\]{max-height:320px}.max-h-\[90vh\]{max-height:90vh}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[280px\]{width:280px}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0px}.min-w-\[140px\]{min-width:140px}.min-w-\[360px\]{min-width:360px}.max-w-3xl{max-width:48rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[400px\]{max-width:400px}.max-w-\[70\%\]{max-width:70%}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes borderGlow{0%,to{border-color:color-mix(in srgb,var(--color-accent-brand) 40%,transparent);box-shadow:0 0 0 0 transparent}50%{border-color:color-mix(in srgb,var(--color-accent-brand) 70%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--color-accent-brand) 15%,transparent)}}.animate-\[borderGlow_2s_ease-in-out_infinite\]{animation:borderGlow 2s ease-in-out infinite}.animate-\[dotPulse_1\.4s_ease-in-out_0\.2s_infinite\]{animation:dotPulse 1.4s ease-in-out .2s infinite}.animate-\[dotPulse_1\.4s_ease-in-out_0\.4s_infinite\]{animation:dotPulse 1.4s ease-in-out .4s infinite}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.animate-\[dotPulse_1\.4s_ease-in-out_0s_infinite\]{animation:dotPulse 1.4s ease-in-out 0s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-zoom-out{cursor:zoom-out}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-none{overscroll-behavior:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[24px\]{border-radius:24px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-tr-sm{border-top-right-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[color-mix\(in_srgb\,var\(--color-accent-brand\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-accent-brand) 30%,transparent)}.border-accent-brand{border-color:var(--color-accent-brand)}.border-border-default{border-color:var(--color-border-default)}.border-border-input{border-color:var(--color-border-input)}.border-border-muted{border-color:var(--color-border-muted)}.border-current{border-color:currentColor}.border-transparent{border-color:transparent}.bg-\[color-mix\(in_srgb\,var\(--color-accent-brand\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--color-accent-brand) 10%,transparent)}.bg-accent-brand{background-color:var(--color-accent-brand)}.bg-accent-green{background-color:var(--color-accent-green)}.bg-accent-purple{background-color:var(--color-accent-purple)}.bg-accent-red{background-color:var(--color-accent-red)}.bg-accent-yellow{background-color:var(--color-accent-yellow)}.bg-bg-card{background-color:var(--color-bg-card)}.bg-bg-code{background-color:var(--color-bg-code)}.bg-bg-diff-add{background-color:var(--color-bg-diff-add)}.bg-bg-diff-del{background-color:var(--color-bg-diff-del)}.bg-bg-input{background-color:var(--color-bg-input)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-bg-user{background-color:var(--color-bg-user)}.bg-black\/40{background-color:#0006}.bg-black\/70{background-color:#000000b3}.bg-border-muted{background-color:var(--color-border-muted)}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-text-primary{background-color:var(--color-text-primary)}.bg-text-tertiary{background-color:var(--color-text-tertiary)}.bg-transparent{background-color:transparent}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[6px\]{padding-top:6px;padding-bottom:6px}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-3{padding-left:.75rem}.pr-2{padding-right:.5rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.font-sans{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-chat{font-size:14px;line-height:24px}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:12px;line-height:16px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[18px\]{line-height:18px}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-accent-blue{color:var(--color-accent-blue)}.text-accent-brand{color:var(--color-accent-brand)}.text-accent-green{color:var(--color-accent-green)}.text-accent-purple{color:var(--color-accent-purple)}.text-accent-red{color:var(--color-accent-red)}.text-accent-yellow{color:var(--color-accent-yellow)}.text-bg-primary{color:var(--color-bg-primary)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-text-tertiary{color:var(--color-text-tertiary)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.placeholder-text-tertiary::-moz-placeholder{color:var(--color-text-tertiary)}.placeholder-text-tertiary::placeholder{color:var(--color-text-tertiary)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.will-change-transform{will-change:transform}[data-theme=light]{--color-bg-primary: #ffffff;--color-bg-secondary: #f5f5f7;--color-bg-tertiary: #f3f3f3;--color-bg-input: #ffffff;--color-bg-card: #ffffff;--color-bg-user: #eef2ff;--color-bg-hover: #f5f5f5;--color-bg-code: #f8f9fa;--color-border-default: #eef0f2;--color-border-muted: #f4f5f7;--color-border-input: #e5e7eb;--color-text-primary: #1a1a1a;--color-text-secondary: #5c5c5c;--color-text-tertiary: #8e8e93;--color-text-user: #1e3a8a;--color-text-link: #1677ff;--color-accent-green: #52c41a;--color-accent-red: #ff4d4f;--color-accent-yellow: #faad14;--color-accent-brand: #28B894;--color-accent-blue: #1677ff;--color-accent-purple: #6c4dff;--color-inline-code: #d63384;--color-scrollbar: rgba(0, 0, 0, .12);--color-scrollbar-hover: rgba(0, 0, 0, .2);--color-bg-diff-add: rgba(52, 211, 153, .08);--color-bg-diff-del: rgba(248, 113, 113, .08)}[data-theme=dark]{--color-bg-primary: #121212;--color-bg-secondary: #1c1c1e;--color-bg-tertiary: #242424;--color-bg-input: #1a1a1a;--color-bg-card: #1a1a1a;--color-bg-user: #1e293b;--color-bg-hover: #2a2a2a;--color-bg-code: #161616;--color-border-default: #333333;--color-border-muted: #262626;--color-border-input: #3a3a3a;--color-text-primary: #e5e5e5;--color-text-secondary: #a3a3a3;--color-text-tertiary: #7c7c82;--color-text-user: #bfdbfe;--color-text-link: #4dabf7;--color-accent-green: #4ade80;--color-accent-red: #f87171;--color-accent-yellow: #fbbf24;--color-accent-brand: #34d399;--color-accent-blue: #60a5fa;--color-accent-purple: #8b7dff;--color-inline-code: #e879a5;--color-scrollbar: rgba(255, 255, 255, .12);--color-scrollbar-hover: rgba(255, 255, 255, .2);--color-bg-diff-add: rgba(74, 222, 128, .1);--color-bg-diff-del: rgba(248, 113, 113, .1)}body,html{margin:0;padding:0;height:100%;width:100%;overflow:hidden}body{background:var(--color-bg-primary);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.6;transition:background-color .2s,color .2s}*{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}pre{background:var(--color-bg-code)!important;border:none;border-radius:12px;padding:12px;overflow-x:auto;font-size:13.5px;line-height:1.6;margin:16px 0}code{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9em}:not(pre)>code{background:var(--color-bg-tertiary);padding:3px 6px;border-radius:6px;font-size:13.5px;color:var(--color-inline-code);margin:0 2px}.markdown-body a{color:var(--color-text-link);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body ul,.markdown-body ol{padding-left:1.5rem;margin:12px 0}.markdown-body li{margin:6px 0}.markdown-body ol{list-style-type:decimal}.markdown-body ul{list-style-type:disc}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:24px 0 12px;font-weight:600;color:var(--color-text-primary);line-height:1.4}.markdown-body h1{font-size:1.6rem}.markdown-body h2{font-size:1.4rem}.markdown-body h3{font-size:1.2rem}.markdown-body h4{font-size:1.1rem}.markdown-body p{margin:12px 0}.markdown-body p:last-child{margin-bottom:0}.markdown-body p:first-child{margin-top:0}.markdown-body table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14px}.markdown-body th,.markdown-body td{border:1px solid var(--color-border-default);padding:10px 16px;text-align:left}.markdown-body th{background:var(--color-bg-secondary);font-weight:600}.markdown-body blockquote{border-left:4px solid var(--color-border-default);padding-left:16px;margin:16px 0;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding-top:8px;padding-bottom:8px;border-radius:0 8px 8px 0}.markdown-body strong{font-weight:600;color:var(--color-text-primary)}.markdown-body hr{border:none;border-top:1px solid var(--color-border-default);margin:24px 0}.thinking-block{margin-bottom:12px;overflow:hidden}.thinking-block-header{display:flex;align-items:center;gap:4px;padding:4px 0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:14px;color:var(--color-text-tertiary);transition:color .15s}.thinking-block-header:hover{color:var(--color-text-secondary)}.thinking-block-header-text{font-size:14px}.thinking-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-accent-purple);animation:thinking-pulse 1.2s ease-in-out infinite;margin-left:2px}@keyframes thinking-pulse{0%,to{opacity:.3}50%{opacity:1}}.thinking-block-content{padding:8px 0 4px 16px;font-size:14px;line-height:1.7;color:var(--color-text-tertiary);white-space:pre-wrap;word-break:break-word;max-height:400px;overflow-y:auto;position:relative;border-left:2px solid var(--color-border-muted)}.thinking-block-streaming .thinking-block-content:after{content:"";position:sticky;bottom:0;left:0;right:0;display:block;height:40px;margin-top:-40px;background:linear-gradient(transparent,var(--color-bg-primary));pointer-events:none}.thinking-block-toggle{transition:transform .2s ease;flex-shrink:0;transform:rotate(-90deg)}.thinking-block-toggle.expanded{transform:rotate(0)}@keyframes thinking-dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.thinking-text:after{content:"...";animation:thinking-dots 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--color-border-muted) 0%,var(--color-bg-hover) 40%,var(--color-border-muted) 80%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fadeIn{animation:fadeIn .3s ease-out}.xterm{height:100%;width:100%;overflow:hidden}.xterm-helper-textarea{caret-color:transparent!important;ime-mode:disabled!important;-webkit-ime-mode:disabled!important}textarea:not(:focus){ime-mode:inactive}.split-sash{flex-shrink:0;background:var(--color-border-muted);transition:background-color .15s;z-index:5}.split-sash:hover,.split-sash.dragging{background:var(--color-accent-blue)}.split-sash-horizontal{width:4px;cursor:col-resize}.split-sash-vertical{height:4px;cursor:row-resize}.terminal-pane{position:relative;overflow:hidden;border:1px solid transparent;transition:border-color .15s}.terminal-pane.active{border-color:color-mix(in srgb,var(--color-accent-brand) 50%,transparent)}.terminal-pane-toolbar{position:absolute;top:4px;right:4px;z-index:10;display:flex;gap:2px;opacity:0;transition:opacity .15s}.terminal-pane:hover .terminal-pane-toolbar{opacity:1}.empty-result-container:empty:after{content:"(empty)";display:block;font-size:12px;color:var(--color-text-tertiary);padding:6px 10px;background:color-mix(in srgb,var(--color-bg-secondary) 40%,transparent);border-radius:6px}.placeholder\:text-text-tertiary::-moz-placeholder{color:var(--color-text-tertiary)}.placeholder\:text-text-tertiary::placeholder{color:var(--color-text-tertiary)}.focus-within\:shadow-md:focus-within{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent-red:hover{border-color:var(--color-accent-red)}.hover\:border-border-default:hover{border-color:var(--color-border-default)}.hover\:bg-accent-red:hover{background-color:var(--color-accent-red)}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-primary:hover{background-color:var(--color-bg-primary)}.hover\:bg-bg-secondary:hover{background-color:var(--color-bg-secondary)}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:text-accent-red:hover{color:var(--color-accent-red)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-accent-brand:focus{border-color:var(--color-accent-brand)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:max-w-\[75\%\]{max-width:75%}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}/**
|
|
2
|
+
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
|
|
3
|
+
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
|
|
4
|
+
* https://github.com/chjj/term.js
|
|
5
|
+
* @license MIT
|
|
6
|
+
*
|
|
7
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
8
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
9
|
+
* in the Software without restriction, including without limitation the rights
|
|
10
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
11
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
12
|
+
* furnished to do so, subject to the following conditions:
|
|
13
|
+
*
|
|
14
|
+
* The above copyright notice and this permission notice shall be included in
|
|
15
|
+
* all copies or substantial portions of the Software.
|
|
16
|
+
*
|
|
17
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
18
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
19
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
20
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
21
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
22
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
23
|
+
* THE SOFTWARE.
|
|
24
|
+
*
|
|
25
|
+
* Originally forked from (with the author's permission):
|
|
26
|
+
* Fabrice Bellard's javascript vt100 for jslinux:
|
|
27
|
+
* http://bellard.org/jslinux/
|
|
28
|
+
* Copyright (c) 2011 Fabrice Bellard
|
|
29
|
+
* The original design remains. The terminal itself
|
|
30
|
+
* has been extended to include xterm CSI codes, among
|
|
31
|
+
* other features.
|
|
32
|
+
*/.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}
|
package/dist/web-ui/index.html
CHANGED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
|
6
6
|
<title>CodeBuddy Code Remote Control</title>
|
|
7
7
|
<link rel="icon" type="image/svg+xml" href="/assets/small-icon-COgkmynj.svg">
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-CHm8JS1N.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/markdown-Ce2Umeb2.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/vendor-DpYitQz5.js">
|
|
11
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
11
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CcElCyHg.css">
|
|
12
12
|
</head>
|
|
13
13
|
<body class="bg-bg-primary text-text-primary min-h-screen overscroll-none">
|
|
14
14
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tencent-ai/codebuddy-code",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.61.0",
|
|
4
4
|
"description": "Use CodeBuddy, Tencent's AI assistant, right from your terminal. CodeBuddy can understand your codebase, edit files, run terminal commands, and handle entire workflows for you.",
|
|
5
5
|
"main": "lib/node/index.js",
|
|
6
6
|
"typings": "lib/node/index.d.ts",
|
package/product.cloudhosted.json
CHANGED
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
"AskUserQuestion",
|
|
44
44
|
"StructuredOutput",
|
|
45
45
|
"ToolSearch",
|
|
46
|
+
"DeferExecuteTool",
|
|
46
47
|
"SendMessage",
|
|
47
48
|
"TeamCreate",
|
|
48
49
|
"TeamDelete",
|
|
@@ -83,6 +84,7 @@
|
|
|
83
84
|
"Skill",
|
|
84
85
|
"AskUserQuestion",
|
|
85
86
|
"ToolSearch",
|
|
87
|
+
"DeferExecuteTool",
|
|
86
88
|
"SendMessage",
|
|
87
89
|
"NotebookEdit",
|
|
88
90
|
"LSP"
|
|
@@ -175,7 +177,8 @@
|
|
|
175
177
|
"Read",
|
|
176
178
|
"Write",
|
|
177
179
|
"Edit",
|
|
178
|
-
"ToolSearch"
|
|
180
|
+
"ToolSearch",
|
|
181
|
+
"DeferExecuteTool"
|
|
179
182
|
],
|
|
180
183
|
"asTool": true,
|
|
181
184
|
"tags": [
|
|
@@ -203,7 +206,8 @@
|
|
|
203
206
|
"WebSearch",
|
|
204
207
|
"Skill",
|
|
205
208
|
"SendMessage",
|
|
206
|
-
"ToolSearch"
|
|
209
|
+
"ToolSearch",
|
|
210
|
+
"DeferExecuteTool"
|
|
207
211
|
],
|
|
208
212
|
"asTool": true,
|
|
209
213
|
"tags": [
|
|
@@ -248,6 +252,7 @@
|
|
|
248
252
|
"WebSearch",
|
|
249
253
|
"Skill",
|
|
250
254
|
"ToolSearch",
|
|
255
|
+
"DeferExecuteTool",
|
|
251
256
|
"TeamCreate",
|
|
252
257
|
"TeamDelete",
|
|
253
258
|
"SendMessage"
|
|
@@ -395,6 +400,6 @@
|
|
|
395
400
|
"ImageGen": true,
|
|
396
401
|
"ScheduledTasks": true
|
|
397
402
|
},
|
|
398
|
-
"commit": "
|
|
399
|
-
"date": "2026-03-
|
|
403
|
+
"commit": "379e6f742e5446805c0eb7c040efebb7731d7edd",
|
|
404
|
+
"date": "2026-03-12T13:23:15.064Z"
|
|
400
405
|
}
|
package/product.internal.json
CHANGED
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
"AskUserQuestion",
|
|
47
47
|
"StructuredOutput",
|
|
48
48
|
"ToolSearch",
|
|
49
|
+
"DeferExecuteTool",
|
|
49
50
|
"SendMessage",
|
|
50
51
|
"TeamCreate",
|
|
51
52
|
"TeamDelete",
|
|
@@ -86,6 +87,7 @@
|
|
|
86
87
|
"Skill",
|
|
87
88
|
"AskUserQuestion",
|
|
88
89
|
"ToolSearch",
|
|
90
|
+
"DeferExecuteTool",
|
|
89
91
|
"SendMessage",
|
|
90
92
|
"NotebookEdit",
|
|
91
93
|
"LSP"
|
|
@@ -178,7 +180,8 @@
|
|
|
178
180
|
"Read",
|
|
179
181
|
"Write",
|
|
180
182
|
"Edit",
|
|
181
|
-
"ToolSearch"
|
|
183
|
+
"ToolSearch",
|
|
184
|
+
"DeferExecuteTool"
|
|
182
185
|
],
|
|
183
186
|
"asTool": true,
|
|
184
187
|
"tags": [
|
|
@@ -206,7 +209,8 @@
|
|
|
206
209
|
"WebSearch",
|
|
207
210
|
"Skill",
|
|
208
211
|
"SendMessage",
|
|
209
|
-
"ToolSearch"
|
|
212
|
+
"ToolSearch",
|
|
213
|
+
"DeferExecuteTool"
|
|
210
214
|
],
|
|
211
215
|
"asTool": true,
|
|
212
216
|
"tags": [
|
|
@@ -251,6 +255,7 @@
|
|
|
251
255
|
"WebSearch",
|
|
252
256
|
"Skill",
|
|
253
257
|
"ToolSearch",
|
|
258
|
+
"DeferExecuteTool",
|
|
254
259
|
"TeamCreate",
|
|
255
260
|
"TeamDelete",
|
|
256
261
|
"SendMessage"
|
|
@@ -485,6 +490,6 @@
|
|
|
485
490
|
}
|
|
486
491
|
}
|
|
487
492
|
},
|
|
488
|
-
"commit": "
|
|
489
|
-
"date": "2026-03-
|
|
493
|
+
"commit": "379e6f742e5446805c0eb7c040efebb7731d7edd",
|
|
494
|
+
"date": "2026-03-12T13:23:14.754Z"
|
|
490
495
|
}
|
package/product.ioa.json
CHANGED
|
@@ -66,6 +66,7 @@
|
|
|
66
66
|
"AskUserQuestion",
|
|
67
67
|
"StructuredOutput",
|
|
68
68
|
"ToolSearch",
|
|
69
|
+
"DeferExecuteTool",
|
|
69
70
|
"SendMessage",
|
|
70
71
|
"TeamCreate",
|
|
71
72
|
"TeamDelete",
|
|
@@ -107,6 +108,7 @@
|
|
|
107
108
|
"Skill",
|
|
108
109
|
"AskUserQuestion",
|
|
109
110
|
"ToolSearch",
|
|
111
|
+
"DeferExecuteTool",
|
|
110
112
|
"SendMessage",
|
|
111
113
|
"NotebookEdit",
|
|
112
114
|
"LSP"
|
|
@@ -208,7 +210,8 @@
|
|
|
208
210
|
"Read",
|
|
209
211
|
"Write",
|
|
210
212
|
"Edit",
|
|
211
|
-
"ToolSearch"
|
|
213
|
+
"ToolSearch",
|
|
214
|
+
"DeferExecuteTool"
|
|
212
215
|
],
|
|
213
216
|
"asTool": true,
|
|
214
217
|
"tags": [
|
|
@@ -236,7 +239,8 @@
|
|
|
236
239
|
"WebSearch",
|
|
237
240
|
"Skill",
|
|
238
241
|
"SendMessage",
|
|
239
|
-
"ToolSearch"
|
|
242
|
+
"ToolSearch",
|
|
243
|
+
"DeferExecuteTool"
|
|
240
244
|
],
|
|
241
245
|
"asTool": true,
|
|
242
246
|
"tags": [
|
|
@@ -281,6 +285,7 @@
|
|
|
281
285
|
"WebSearch",
|
|
282
286
|
"Skill",
|
|
283
287
|
"ToolSearch",
|
|
288
|
+
"DeferExecuteTool",
|
|
284
289
|
"TeamCreate",
|
|
285
290
|
"TeamDelete",
|
|
286
291
|
"SendMessage"
|
|
@@ -790,6 +795,6 @@
|
|
|
790
795
|
}
|
|
791
796
|
}
|
|
792
797
|
},
|
|
793
|
-
"commit": "
|
|
794
|
-
"date": "2026-03-
|
|
798
|
+
"commit": "379e6f742e5446805c0eb7c040efebb7731d7edd",
|
|
799
|
+
"date": "2026-03-12T13:23:14.986Z"
|
|
795
800
|
}
|
package/product.json
CHANGED
|
@@ -439,9 +439,9 @@
|
|
|
439
439
|
"emergency": 0.9
|
|
440
440
|
},
|
|
441
441
|
"inputTokens": {
|
|
442
|
-
"warning": 0.
|
|
443
|
-
"critical": 0.
|
|
444
|
-
"emergency": 0.
|
|
442
|
+
"warning": 0.6,
|
|
443
|
+
"critical": 0.7,
|
|
444
|
+
"emergency": 0.8
|
|
445
445
|
}
|
|
446
446
|
},
|
|
447
447
|
"requestMaxStepLimit": 100,
|
|
@@ -740,7 +740,11 @@
|
|
|
740
740
|
},
|
|
741
741
|
{
|
|
742
742
|
"name": "tool-toolsearch-description",
|
|
743
|
-
"template": "Search for available tools using natural language queries.\n\nUse this tool when you need to discover tools that can help with a specific task. Some tools are not loaded by default to save context space - use this to find and
|
|
743
|
+
"template": "Search for available tools using natural language queries.\n\nUse this tool when you need to discover tools that can help with a specific task. Some tools are not loaded by default to save context space - use this to find and learn about them.\n\nUsage:\n- Provide a natural language description of what you want to do\n- Returns a list of matching tools sorted by relevance\n- Results include the tool's full parameter schema so you know how to call it\n- Found tools can be invoked using DeferExecuteTool by passing the tool name and parameters\n\nIMPORTANT: Tools listed below as \"Available deferred tools\" are NOT directly callable. You MUST call ToolSearch first to discover a deferred tool, then use DeferExecuteTool to invoke it. Calling a deferred tool directly will result in a \"Tool not found\" error.\n\nNote: Some listed tools may not appear in search results if they are unavailable due to environment restrictions, disabled features, or model limitations.\n\n{% if toolSearchDeferredTools %}\n\nAvailable deferred tools (use ToolSearch to discover their schemas):\n{{toolSearchDeferredTools}}\n{% endif %}\n{%- if toolSearchMcpServers %}\n\nAvailable MCP servers (use ToolSearch to discover their tools):\n{{toolSearchMcpServers}}\n{%- endif %}\n"
|
|
744
|
+
},
|
|
745
|
+
{
|
|
746
|
+
"name": "tool-deferexecutetool-description",
|
|
747
|
+
"template": "Execute a deferred tool by name. Use this to invoke tools discovered via ToolSearch without needing them in the active tools list.\n\nUsage:\n- First use ToolSearch to discover a tool and learn its parameter schema\n- Then call this tool with the exact tool name and parameters\n- Parameters are validated against the tool's schema before execution\n- The target tool's permission checks and hooks are applied normally\n\nExample:\nDeferExecuteTool({ toolName: \"ImageGen\", params: { prompt: \"a sunset over mountains\" } })\n\nNotes:\n- If parameter validation fails, a detailed error with the expected schema is returned\n- You can skip ToolSearch if you already know the tool name and parameters from a previous turn\n- This tool follows standard permission checks (may require approval depending on permissions configuration)\n"
|
|
744
748
|
},
|
|
745
749
|
{
|
|
746
750
|
"name": "tool-describetool-description",
|
|
@@ -860,6 +864,7 @@
|
|
|
860
864
|
"AskUserQuestion",
|
|
861
865
|
"StructuredOutput",
|
|
862
866
|
"ToolSearch",
|
|
867
|
+
"DeferExecuteTool",
|
|
863
868
|
"SendMessage",
|
|
864
869
|
"TeamCreate",
|
|
865
870
|
"TeamDelete",
|
|
@@ -901,6 +906,7 @@
|
|
|
901
906
|
"Skill",
|
|
902
907
|
"AskUserQuestion",
|
|
903
908
|
"ToolSearch",
|
|
909
|
+
"DeferExecuteTool",
|
|
904
910
|
"SendMessage",
|
|
905
911
|
"NotebookEdit",
|
|
906
912
|
"LSP"
|
|
@@ -1002,7 +1008,8 @@
|
|
|
1002
1008
|
"Read",
|
|
1003
1009
|
"Write",
|
|
1004
1010
|
"Edit",
|
|
1005
|
-
"ToolSearch"
|
|
1011
|
+
"ToolSearch",
|
|
1012
|
+
"DeferExecuteTool"
|
|
1006
1013
|
],
|
|
1007
1014
|
"asTool": true,
|
|
1008
1015
|
"tags": [
|
|
@@ -1030,7 +1037,8 @@
|
|
|
1030
1037
|
"WebSearch",
|
|
1031
1038
|
"Skill",
|
|
1032
1039
|
"SendMessage",
|
|
1033
|
-
"ToolSearch"
|
|
1040
|
+
"ToolSearch",
|
|
1041
|
+
"DeferExecuteTool"
|
|
1034
1042
|
],
|
|
1035
1043
|
"asTool": true,
|
|
1036
1044
|
"tags": [
|
|
@@ -1075,6 +1083,7 @@
|
|
|
1075
1083
|
"WebSearch",
|
|
1076
1084
|
"Skill",
|
|
1077
1085
|
"ToolSearch",
|
|
1086
|
+
"DeferExecuteTool",
|
|
1078
1087
|
"TeamCreate",
|
|
1079
1088
|
"TeamDelete",
|
|
1080
1089
|
"SendMessage"
|
|
@@ -1373,6 +1382,10 @@
|
|
|
1373
1382
|
"name": "ToolSearch",
|
|
1374
1383
|
"description": "tool-toolsearch-description"
|
|
1375
1384
|
},
|
|
1385
|
+
{
|
|
1386
|
+
"name": "DeferExecuteTool",
|
|
1387
|
+
"description": "tool-deferexecutetool-description"
|
|
1388
|
+
},
|
|
1376
1389
|
{
|
|
1377
1390
|
"name": "ImageGen",
|
|
1378
1391
|
"description": "tool-imagegen-description",
|
|
@@ -1414,6 +1427,6 @@
|
|
|
1414
1427
|
"description": "tool-cronlist-description"
|
|
1415
1428
|
}
|
|
1416
1429
|
],
|
|
1417
|
-
"commit": "
|
|
1418
|
-
"date": "2026-03-
|
|
1430
|
+
"commit": "379e6f742e5446805c0eb7c040efebb7731d7edd",
|
|
1431
|
+
"date": "2026-03-12T13:23:14.918Z"
|
|
1419
1432
|
}
|
package/product.selfhosted.json
CHANGED
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
"AskUserQuestion",
|
|
40
40
|
"StructuredOutput",
|
|
41
41
|
"ToolSearch",
|
|
42
|
+
"DeferExecuteTool",
|
|
42
43
|
"SendMessage",
|
|
43
44
|
"TeamCreate",
|
|
44
45
|
"TeamDelete",
|
|
@@ -78,6 +79,7 @@
|
|
|
78
79
|
"Skill",
|
|
79
80
|
"AskUserQuestion",
|
|
80
81
|
"ToolSearch",
|
|
82
|
+
"DeferExecuteTool",
|
|
81
83
|
"SendMessage",
|
|
82
84
|
"NotebookEdit",
|
|
83
85
|
"LSP"
|
|
@@ -170,7 +172,8 @@
|
|
|
170
172
|
"Read",
|
|
171
173
|
"Write",
|
|
172
174
|
"Edit",
|
|
173
|
-
"ToolSearch"
|
|
175
|
+
"ToolSearch",
|
|
176
|
+
"DeferExecuteTool"
|
|
174
177
|
],
|
|
175
178
|
"asTool": true,
|
|
176
179
|
"tags": [
|
|
@@ -198,7 +201,8 @@
|
|
|
198
201
|
"WebSearch",
|
|
199
202
|
"Skill",
|
|
200
203
|
"SendMessage",
|
|
201
|
-
"ToolSearch"
|
|
204
|
+
"ToolSearch",
|
|
205
|
+
"DeferExecuteTool"
|
|
202
206
|
],
|
|
203
207
|
"asTool": true,
|
|
204
208
|
"tags": [
|
|
@@ -243,6 +247,7 @@
|
|
|
243
247
|
"WebSearch",
|
|
244
248
|
"Skill",
|
|
245
249
|
"ToolSearch",
|
|
250
|
+
"DeferExecuteTool",
|
|
246
251
|
"TeamCreate",
|
|
247
252
|
"TeamDelete",
|
|
248
253
|
"SendMessage"
|
|
@@ -284,6 +289,6 @@
|
|
|
284
289
|
"DeferToolLoading": true,
|
|
285
290
|
"ScheduledTasks": true
|
|
286
291
|
},
|
|
287
|
-
"commit": "
|
|
288
|
-
"date": "2026-03-
|
|
292
|
+
"commit": "379e6f742e5446805c0eb7c040efebb7731d7edd",
|
|
293
|
+
"date": "2026-03-12T13:23:14.717Z"
|
|
289
294
|
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.-right-1\.5{right:-.375rem}.-top-1\.5{top:-.375rem}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.right-3{right:.75rem}.top-0{top:0}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1\.5{margin-top:.375rem;margin-bottom:.375rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2\.5{margin-left:.625rem}.ml-3{margin-left:.75rem}.ml-6{margin-left:1.5rem}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[100dvh\]{height:100dvh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-52{max-height:13rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-\[280px\]{max-height:280px}.max-h-\[320px\]{max-height:320px}.max-h-\[90vh\]{max-height:90vh}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[280px\]{width:280px}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0px}.min-w-\[140px\]{min-width:140px}.min-w-\[360px\]{min-width:360px}.max-w-3xl{max-width:48rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[400px\]{max-width:400px}.max-w-\[70\%\]{max-width:70%}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes borderGlow{0%,to{border-color:color-mix(in srgb,var(--color-accent-brand) 40%,transparent);box-shadow:0 0 0 0 transparent}50%{border-color:color-mix(in srgb,var(--color-accent-brand) 70%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--color-accent-brand) 15%,transparent)}}.animate-\[borderGlow_2s_ease-in-out_infinite\]{animation:borderGlow 2s ease-in-out infinite}.animate-\[dotPulse_1\.4s_ease-in-out_0\.2s_infinite\]{animation:dotPulse 1.4s ease-in-out .2s infinite}.animate-\[dotPulse_1\.4s_ease-in-out_0\.4s_infinite\]{animation:dotPulse 1.4s ease-in-out .4s infinite}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.animate-\[dotPulse_1\.4s_ease-in-out_0s_infinite\]{animation:dotPulse 1.4s ease-in-out 0s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-zoom-out{cursor:zoom-out}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-none{overscroll-behavior:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[24px\]{border-radius:24px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-tr-sm{border-top-right-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[color-mix\(in_srgb\,var\(--color-accent-brand\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--color-accent-brand) 30%,transparent)}.border-accent-brand{border-color:var(--color-accent-brand)}.border-border-default{border-color:var(--color-border-default)}.border-border-input{border-color:var(--color-border-input)}.border-border-muted{border-color:var(--color-border-muted)}.border-current{border-color:currentColor}.border-transparent{border-color:transparent}.bg-\[color-mix\(in_srgb\,var\(--color-accent-brand\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--color-accent-brand) 10%,transparent)}.bg-accent-brand{background-color:var(--color-accent-brand)}.bg-accent-green{background-color:var(--color-accent-green)}.bg-accent-purple{background-color:var(--color-accent-purple)}.bg-accent-red{background-color:var(--color-accent-red)}.bg-accent-yellow{background-color:var(--color-accent-yellow)}.bg-bg-card{background-color:var(--color-bg-card)}.bg-bg-code{background-color:var(--color-bg-code)}.bg-bg-diff-add{background-color:var(--color-bg-diff-add)}.bg-bg-diff-del{background-color:var(--color-bg-diff-del)}.bg-bg-input{background-color:var(--color-bg-input)}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-bg-user{background-color:var(--color-bg-user)}.bg-black\/40{background-color:#0006}.bg-black\/70{background-color:#000000b3}.bg-border-muted{background-color:var(--color-border-muted)}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-text-primary{background-color:var(--color-text-primary)}.bg-text-tertiary{background-color:var(--color-text-tertiary)}.bg-transparent{background-color:transparent}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[6px\]{padding-top:6px;padding-bottom:6px}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-3{padding-left:.75rem}.pr-2{padding-right:.5rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.font-sans{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-chat{font-size:14px;line-height:24px}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:12px;line-height:16px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[18px\]{line-height:18px}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-accent-blue{color:var(--color-accent-blue)}.text-accent-brand{color:var(--color-accent-brand)}.text-accent-green{color:var(--color-accent-green)}.text-accent-purple{color:var(--color-accent-purple)}.text-accent-red{color:var(--color-accent-red)}.text-accent-yellow{color:var(--color-accent-yellow)}.text-bg-primary{color:var(--color-bg-primary)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-text-tertiary{color:var(--color-text-tertiary)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.placeholder-text-tertiary::-moz-placeholder{color:var(--color-text-tertiary)}.placeholder-text-tertiary::placeholder{color:var(--color-text-tertiary)}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.will-change-transform{will-change:transform}[data-theme=light]{--color-bg-primary: #ffffff;--color-bg-secondary: #f5f5f7;--color-bg-tertiary: #f3f3f3;--color-bg-input: #ffffff;--color-bg-card: #ffffff;--color-bg-user: #eef2ff;--color-bg-hover: #f5f5f5;--color-bg-code: #f8f9fa;--color-border-default: #eef0f2;--color-border-muted: #f4f5f7;--color-border-input: #e5e7eb;--color-text-primary: #1a1a1a;--color-text-secondary: #5c5c5c;--color-text-tertiary: #8e8e93;--color-text-user: #1e3a8a;--color-text-link: #1677ff;--color-accent-green: #52c41a;--color-accent-red: #ff4d4f;--color-accent-yellow: #faad14;--color-accent-brand: #28B894;--color-accent-blue: #1677ff;--color-accent-purple: #6c4dff;--color-inline-code: #d63384;--color-scrollbar: rgba(0, 0, 0, .12);--color-scrollbar-hover: rgba(0, 0, 0, .2);--color-bg-diff-add: rgba(52, 211, 153, .08);--color-bg-diff-del: rgba(248, 113, 113, .08)}[data-theme=dark]{--color-bg-primary: #121212;--color-bg-secondary: #1c1c1e;--color-bg-tertiary: #242424;--color-bg-input: #1a1a1a;--color-bg-card: #1a1a1a;--color-bg-user: #1e293b;--color-bg-hover: #2a2a2a;--color-bg-code: #161616;--color-border-default: #333333;--color-border-muted: #262626;--color-border-input: #3a3a3a;--color-text-primary: #e5e5e5;--color-text-secondary: #a3a3a3;--color-text-tertiary: #7c7c82;--color-text-user: #bfdbfe;--color-text-link: #4dabf7;--color-accent-green: #4ade80;--color-accent-red: #f87171;--color-accent-yellow: #fbbf24;--color-accent-brand: #34d399;--color-accent-blue: #60a5fa;--color-accent-purple: #8b7dff;--color-inline-code: #e879a5;--color-scrollbar: rgba(255, 255, 255, .12);--color-scrollbar-hover: rgba(255, 255, 255, .2);--color-bg-diff-add: rgba(74, 222, 128, .1);--color-bg-diff-del: rgba(248, 113, 113, .1)}body,html{margin:0;padding:0;height:100%;width:100%;overflow:hidden}body{background:var(--color-bg-primary);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.6;transition:background-color .2s,color .2s}*{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover)}pre{background:var(--color-bg-code)!important;border:none;border-radius:12px;padding:12px;overflow-x:auto;font-size:13.5px;line-height:1.6;margin:16px 0}code{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.9em}:not(pre)>code{background:var(--color-bg-tertiary);padding:3px 6px;border-radius:6px;font-size:13.5px;color:var(--color-inline-code);margin:0 2px}.markdown-body a{color:var(--color-text-link);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body ul,.markdown-body ol{padding-left:1.5rem;margin:12px 0}.markdown-body li{margin:6px 0}.markdown-body ol{list-style-type:decimal}.markdown-body ul{list-style-type:disc}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:24px 0 12px;font-weight:600;color:var(--color-text-primary);line-height:1.4}.markdown-body h1{font-size:1.6rem}.markdown-body h2{font-size:1.4rem}.markdown-body h3{font-size:1.2rem}.markdown-body h4{font-size:1.1rem}.markdown-body p{margin:12px 0}.markdown-body p:last-child{margin-bottom:0}.markdown-body p:first-child{margin-top:0}.markdown-body table{border-collapse:collapse;width:100%;margin:16px 0;font-size:14px}.markdown-body th,.markdown-body td{border:1px solid var(--color-border-default);padding:10px 16px;text-align:left}.markdown-body th{background:var(--color-bg-secondary);font-weight:600}.markdown-body blockquote{border-left:4px solid var(--color-border-default);padding-left:16px;margin:16px 0;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding-top:8px;padding-bottom:8px;border-radius:0 8px 8px 0}.markdown-body strong{font-weight:600;color:var(--color-text-primary)}.markdown-body hr{border:none;border-top:1px solid var(--color-border-default);margin:24px 0}.thinking-block{margin-bottom:12px;overflow:hidden}.thinking-block-header{display:flex;align-items:center;gap:4px;padding:4px 0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:14px;color:var(--color-text-tertiary);transition:color .15s}.thinking-block-header:hover{color:var(--color-text-secondary)}.thinking-block-header-text{font-size:14px}.thinking-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-accent-purple);animation:thinking-pulse 1.2s ease-in-out infinite;margin-left:2px}@keyframes thinking-pulse{0%,to{opacity:.3}50%{opacity:1}}.thinking-block-content{padding:8px 0 4px 16px;font-size:14px;line-height:1.7;color:var(--color-text-tertiary);white-space:pre-wrap;word-break:break-word;max-height:400px;overflow-y:auto;position:relative;border-left:2px solid var(--color-border-muted)}.thinking-block-streaming .thinking-block-content:after{content:"";position:sticky;bottom:0;left:0;right:0;display:block;height:40px;margin-top:-40px;background:linear-gradient(transparent,var(--color-bg-primary));pointer-events:none}.thinking-block-toggle{transition:transform .2s ease;flex-shrink:0;transform:rotate(-90deg)}.thinking-block-toggle.expanded{transform:rotate(0)}@keyframes thinking-dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.thinking-text:after{content:"...";animation:thinking-dots 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--color-border-muted) 0%,var(--color-bg-hover) 40%,var(--color-border-muted) 80%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fadeIn{animation:fadeIn .3s ease-out}.xterm{height:100%;width:100%;overflow:hidden}.xterm-helper-textarea{caret-color:transparent!important;ime-mode:disabled!important;-webkit-ime-mode:disabled!important}textarea:not(:focus){ime-mode:inactive}.split-sash{flex-shrink:0;background:var(--color-border-muted);transition:background-color .15s;z-index:5}.split-sash:hover,.split-sash.dragging{background:var(--color-accent-blue)}.split-sash-horizontal{width:4px;cursor:col-resize}.split-sash-vertical{height:4px;cursor:row-resize}.terminal-pane{position:relative;overflow:hidden;border:1px solid transparent;transition:border-color .15s}.terminal-pane.active{border-color:color-mix(in srgb,var(--color-accent-brand) 50%,transparent)}.terminal-pane-toolbar{position:absolute;top:4px;right:4px;z-index:10;display:flex;gap:2px;opacity:0;transition:opacity .15s}.terminal-pane:hover .terminal-pane-toolbar{opacity:1}.empty-result-container:empty:after{content:"(empty)";display:block;font-size:12px;color:var(--color-text-tertiary);padding:6px 10px;background:color-mix(in srgb,var(--color-bg-secondary) 40%,transparent);border-radius:6px}.placeholder\:text-text-tertiary::-moz-placeholder{color:var(--color-text-tertiary)}.placeholder\:text-text-tertiary::placeholder{color:var(--color-text-tertiary)}.focus-within\:shadow-md:focus-within{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent-red:hover{border-color:var(--color-accent-red)}.hover\:border-border-default:hover{border-color:var(--color-border-default)}.hover\:bg-accent-red:hover{background-color:var(--color-accent-red)}.hover\:bg-bg-hover:hover{background-color:var(--color-bg-hover)}.hover\:bg-bg-primary:hover{background-color:var(--color-bg-primary)}.hover\:bg-bg-secondary:hover{background-color:var(--color-bg-secondary)}.hover\:bg-bg-tertiary:hover{background-color:var(--color-bg-tertiary)}.hover\:text-accent-red:hover{color:var(--color-accent-red)}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-accent-brand:focus{border-color:var(--color-accent-brand)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:max-w-\[75\%\]{max-width:75%}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}/**
|
|
2
|
-
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
|
|
3
|
-
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
|
|
4
|
-
* https://github.com/chjj/term.js
|
|
5
|
-
* @license MIT
|
|
6
|
-
*
|
|
7
|
-
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
8
|
-
* of this software and associated documentation files (the "Software"), to deal
|
|
9
|
-
* in the Software without restriction, including without limitation the rights
|
|
10
|
-
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
11
|
-
* copies of the Software, and to permit persons to whom the Software is
|
|
12
|
-
* furnished to do so, subject to the following conditions:
|
|
13
|
-
*
|
|
14
|
-
* The above copyright notice and this permission notice shall be included in
|
|
15
|
-
* all copies or substantial portions of the Software.
|
|
16
|
-
*
|
|
17
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
18
|
-
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
19
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
20
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
21
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
22
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
23
|
-
* THE SOFTWARE.
|
|
24
|
-
*
|
|
25
|
-
* Originally forked from (with the author's permission):
|
|
26
|
-
* Fabrice Bellard's javascript vt100 for jslinux:
|
|
27
|
-
* http://bellard.org/jslinux/
|
|
28
|
-
* Copyright (c) 2011 Fabrice Bellard
|
|
29
|
-
* The original design remains. The terminal itself
|
|
30
|
-
* has been extended to include xterm CSI codes, among
|
|
31
|
-
* other features.
|
|
32
|
-
*/.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}
|