@onescience/onecode-web 1.14.50-202609221817 → 1.14.50-202609231524
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/assets/{3Dmol-BsEAvJJT.js → 3Dmol-DXEZvgyx.js} +1 -1
- package/assets/{account-system-DiQ43XYM.js → account-system-BYTE9t3Y.js} +1 -1
- package/assets/{alert-04-CMvQt9YO.js → alert-01-DsWcbob2.js} +1 -1
- package/assets/{alert-05-BuZ4ONbx.js → alert-02-DEj38sAR.js} +1 -1
- package/assets/{alert-01-Dn1lt-23.js → alert-04-D9QRnNFq.js} +1 -1
- package/assets/{alert-02-BVcnUKqP.js → alert-05-CEVbS9oO.js} +1 -1
- package/assets/alert-06-bfG0uhkO.js +1 -0
- package/assets/alert-07-B8MeP48b.js +1 -0
- package/assets/alert-08-D1wG6oUj.js +1 -0
- package/assets/alert-10-CaxGukAb.js +1 -0
- package/assets/{bip-bop-03-4jcBzF8h.js → bip-bop-03-CeCrcemU.js} +1 -1
- package/assets/{bip-bop-04-DfgUZgta.js → bip-bop-04-DIxLUbgF.js} +1 -1
- package/assets/{bip-bop-06-BAvWApt6.js → bip-bop-06-Cnc5GVGi.js} +1 -1
- package/assets/{bip-bop-08-D1tI7d2f.js → bip-bop-08-BrldKFPx.js} +1 -1
- package/assets/bip-bop-09-BX98rSZU.js +1 -0
- package/assets/{center-CmhqrIem.js → center-Beqkliva.js} +1 -1
- package/assets/{dialog-fork-1UR5k-w8.js → dialog-fork-CptqNFic.js} +1 -1
- package/assets/{dialog-project-upload-D-wvY6iD.js → dialog-project-upload-m8Ha9h24.js} +1 -1
- package/assets/{dialog-select-file-CR_StcqM.js → dialog-select-file-CO3DuSyf.js} +1 -1
- package/assets/{dialog-select-model-BpX6uM7r.js → dialog-select-model-CW_mRoyU.js} +2 -2
- package/assets/{dialog-terminal-unavailable-hYEjkAq9.js → dialog-terminal-unavailable-B2VBH2_m.js} +2 -2
- package/assets/{docs-BrsMBLYm.js → docs-ETKBE2lc.js} +1 -1
- package/assets/{ghostty-web-p6Coj6WO.js → ghostty-web-CN5alEz7.js} +1 -1
- package/assets/{index-Dpgmsczc.js → index-CceAmj5n.js} +242 -242
- package/assets/{index-B0k_SkHg.css → index-M0WaSURg.css} +1 -1
- package/assets/{intro-JaE96jzy.js → intro-JC827eek.js} +1 -1
- package/assets/{nope-02-C_-Y3-mF.js → nope-02-B4I4eYzt.js} +1 -1
- package/assets/{nope-05-lcfB0mtD.js → nope-05-5HIX24lG.js} +1 -1
- package/assets/{nope-08-b9u698-Z.js → nope-08-B4GN9Wk2.js} +1 -1
- package/assets/{nope-11-BEsBkxfC.js → nope-11-MTcSfKYS.js} +1 -1
- package/assets/nope-12-DhW4giqh.js +1 -0
- package/assets/{onescience-BgZyNiiY.js → onescience-CuviILLJ.js} +1 -1
- package/assets/resources-V0T7-WVr.js +2 -0
- package/assets/{skills-DutAE-oY.js → skills-DYdqdcS1.js} +1 -1
- package/assets/{staplebops-03-M4GTBAFi.js → staplebops-03-BFiVg887.js} +1 -1
- package/assets/{staplebops-04-jEIMQKA5.js → staplebops-04-mCuQViVQ.js} +1 -1
- package/assets/{staplebops-06-CH_TevWY.js → staplebops-06-D5LUpEUt.js} +1 -1
- package/assets/{staplebops-07-Cr6Z2j9h.js → staplebops-07-C4bFbAj1.js} +1 -1
- package/assets/{wizard-CLnd28Qq.js → wizard-Cu2z69xN.js} +1 -1
- package/assets/{yup-01-DeHCxT4g.js → yup-01-DNE9iBKC.js} +1 -1
- package/assets/{yup-03-B8mEAsxe.js → yup-03-DNvVnF_M.js} +1 -1
- package/assets/{yup-04-DpVd_BWH.js → yup-04-3W7jgoqO.js} +1 -1
- package/assets/{yup-05-CvplgYBG.js → yup-05-BWNK0scC.js} +1 -1
- package/assets/{zh-BYE0GSdB.js → zh-CeyiMO0Y.js} +2 -2
- package/assets/{zht-BKS1U5o_.js → zht-DTzXWbT4.js} +3 -3
- package/index.html +11 -11
- package/package.json +2 -2
- package/assets/alert-06-BFTTZd0Z.js +0 -1
- package/assets/alert-07-B7WKK0qY.js +0 -1
- package/assets/alert-08-BM53SVAf.js +0 -1
- package/assets/alert-10-BiZMLgy2.js +0 -1
- package/assets/bip-bop-09-DlixXWqa.js +0 -1
- package/assets/nope-12-LAR7PGn_.js +0 -1
- package/assets/resources-Fvo_ZMY4.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{cz as N,O as Q,i,a as e,t as r,aH as n,S as b,F as p,aI as P,b as T,x as U,b6 as I,H as V,cA as X,cB as Y,g as Z}from"./index-
|
|
1
|
+
import{cz as N,O as Q,i,a as e,t as r,aH as n,S as b,F as p,aI as P,b as T,x as U,b6 as I,H as V,cA as X,cB as Y,g as Z}from"./index-CceAmj5n.js";var ii=r("<div class=os-client-capability-intro-overlay role=dialog aria-modal=true aria-label=能力介绍>"),ti=r("<section class=os-client-capability-intro-dialog><p>未找到该能力。"),ei=r("<p class=os-client-capability-unavailable-hint>暂无 OneScience 源码或魔搭映射,当前不可使用。"),li=r("<section class=os-client-capability-intro-scenarios aria-label=快捷场景><div class=os-client-capability-intro-scenarios-copy><h3></h3><p></p></div><div class=os-client-capability-intro-scenario-grid>"),ai=r("<section class=os-client-capability-intro-dialog><header class=os-client-capability-intro-head><div><span></span><h2></h2><p></p></div></header><div class=os-client-capability-intro-matrix><article class=os-client-capability-intro-block data-tone=suited><h3>适合解决</h3><div class=os-client-capability-intro-chips></div></article><article class=os-client-capability-intro-block data-tone=not-for><h3>不建议直接用在</h3><div class=os-client-capability-intro-chips></div></article><article class=os-client-capability-intro-block data-tone=prepare><h3>需要准备什么</h3><ul></ul></article><article class=os-client-capability-intro-block data-tone=flow aria-label=使用流程><h3>怎么用</h3><ol class=os-client-capability-intro-flow></ol></article></div><footer class=os-client-capability-intro-footer><a class=os-client-capability-intro-docs-link target=_blank rel=noreferrer>深入资料"),O=r("<span>"),ri=r("<li>"),ni=r("<li><span>.</span><strong>"),ci=r("<strong>"),si=r("<p>");function oi(h){return h==="hpc"?{title:"不用手写复杂作业脚本",body:"选择一个常见软件任务,系统会把输入文件、HPC 资源、运行脚本和审批步骤整理成可执行任务。"}:{title:"不用理解复杂模型细节",body:"选择一个常见能力,系统会把研究对象、输入数据、目标和运行偏好整理成可执行任务。"}}function pi(){const h=N(),v=Q(),g=()=>Z(h.id??""),C=()=>Y(v.search),_=()=>X(v.search,{category:g()?.category??"onemodel",domain:g()?.domain??"materials"});return(()=>{var S=ii();return i(S,e(b,{get when(){return g()},get fallback(){return[e(n,{class:"os-client-capability-intro-backdrop",get href(){return I()},"aria-label":"关闭介绍"}),(()=>{var t=ti();return t.firstChild,i(t,e(n,{get href(){return I()},children:"返回能力中心"}),null),t})()]},children:t=>{const x=()=>oi(t().category),$=()=>V(t());return[e(n,{class:"os-client-capability-intro-backdrop",get href(){return _()},"aria-label":"关闭介绍"}),(()=>{var u=ai(),f=u.firstChild,k=f.firstChild,w=k.firstChild,H=w.nextSibling,B=H.nextSibling,z=f.nextSibling,A=z.firstChild,E=A.firstChild,L=E.nextSibling,F=A.nextSibling,W=F.firstChild,j=W.nextSibling,R=F.nextSibling,q=R.firstChild,D=q.nextSibling,G=R.nextSibling,J=G.firstChild,K=J.nextSibling,y=z.nextSibling,M=y.firstChild;return i(w,()=>t().intro.title||"30 秒看懂模型"),i(H,()=>t().name),i(B,()=>t().intro.subtitle),i(k,e(b,{get when(){return!$()},get children(){return ei()}}),null),i(f,e(n,{class:"os-client-capability-intro-close",get href(){return _()},"aria-label":"关闭",children:"×"}),null),i(L,e(p,{get each(){return t().intro.suited},children:a=>(()=>{var l=O();return i(l,a),l})()})),i(j,e(p,{get each(){return t().intro.notFor},children:a=>(()=>{var l=O();return i(l,a),l})()})),i(D,e(p,{get each(){return t().intro.prepare},children:a=>(()=>{var l=ri();return i(l,a),l})()})),i(K,e(p,{get each(){return t().intro.steps},children:(a,l)=>(()=>{var c=ni(),s=c.firstChild,m=s.firstChild,o=s.nextSibling;return i(s,()=>l()+1,m),i(o,a),c})()})),i(u,e(b,{get when(){return $()},get children(){var a=li(),l=a.firstChild,c=l.firstChild,s=c.nextSibling,m=l.nextSibling;return i(c,()=>x().title),i(s,()=>x().body),i(m,e(p,{get each(){return t().scenarios},children:o=>e(n,{class:"os-client-capability-intro-scenario-card",get href(){return P(t().id,o.id,C())},get children(){return[(()=>{var d=ci();return i(d,()=>o.title),d})(),(()=>{var d=si();return i(d,()=>o.summary),d})()]}})})),a}}),y),i(y,e(b,{get when(){return $()},get fallback(){return e(n,{class:"os-client-capability-intro-wizard-link",get href(){return _()},children:"返回模型库"})},get children(){return e(n,{class:"os-client-capability-intro-wizard-link",get href(){return P(t().id,void 0,C())},"data-primary":"true",children:"进入能力向导"})}}),null),T(()=>U(M,"href",t().docsHref)),u})()]}})),S})()}export{pi as CapabilityIntroPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/nope-02-EygnDbCM.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/nope-05-DZsXzrQW.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/nope-08-COPo0uNf.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/nope-11-CVdXg8G-.aac";export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/nope-12-BJR1Ka3c.aac";export{e as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{d as At,a as n,aJ as bt,i,an as Oe,S as y,b as E,x as R,v as ne,c as _,z as ge,F as de,t as o,u as mt,aK as ks,aL as er,aM as Da,aN as jt,aO as Ja,m as Ds,p as As,n as xs,aP as Ms,aQ as tr,aR as Is,A as Be,aS as It,aH as Ze,ag as Ft,aT as Fs,D as j,B as pa,aU as ga,aV as Ua,K as nt,k as ft,a5 as ar,ap as gt,aW as jr,aX as Wr,aY as $i,aZ as Ci,a_ as Ts,a$ as Es,b0 as na,b1 as Si,b2 as Vr,P as wt,O as Kt,L as Et,N as fa,af as Kr,C as Xr,b3 as Os,b4 as Ns,b5 as Rs,aj as et,b6 as ir,b7 as Ls,b8 as Jr,b9 as Qr,ba as Zr,ak as Yr,aE as Us,bb as ri,bc as Gs,bd as Bs,be as Hs,h as en,bf as qs,bg as zs,bh as rr,ao as ca,bi as js,bj as Aa,bk as nr,bl as Ws,bm as ht,bn as xt,bo as Ta,bp as ni,Q as _i,bq as Pi,br as Vs,l as tn,bs as Ks,bt as Xs,bu as Js,bv as Qs,bw as Zs,bx as Ea,by as oa,bz as Ys,bA as Qa,bB as Za,bC as eo,bD as to,bE as ia,bF as ao,bG as io,bH as ro,bI as no,bJ as ki,bK as so,bL as oo,bM as lo,U as co,aF as uo,$ as mo,bN as Di,bO as Ai,bP as an,bQ as rn,bR as si,bS as ho,bT as oi,bU as po,bV as go,bW as fo,bX as zt,bY as bo,bZ as vo,b_ as nn,b$ as sn,c0 as on,c1 as ln,c2 as cn,c3 as yo,c4 as dn,at as wo,c5 as $o,c6 as Co,c7 as So,c8 as _o,c9 as kt,ca as Po,cb as ko,cc as Do,cd as sr,ce as Ao,cf as li,cg as xo,ch as un,ci as mn,cj as Mo,ck as hn,cl as or,cm as lr,cn as cr,o as la,co as xi,j as Io,cp as Fo,cq as To,am as Eo,al as dr,cr as pn,cs as Oo,ct as No,w as Ro,cu as Lo,cv as ur,cw as Uo,cx as Go,cy as Bo}from"./index-Dpgmsczc.js";import{d as Ho}from"./onescience-docs-CH5KBTI9.js";var qo=o("<div><div class=os-download-path-hint-title></div><ul class=os-download-path-hint-list>"),zo=o("<li class=break-all>"),jo=o("<div class=os-download-env-row><div class=os-download-env-field><span class=os-field-label-row><span class=os-field-label>下载到环境</span></span><div>"),Wo=o("<p class=os-section-copy>确认将 <strong></strong> <!>以下路径吗?"),Vo=o("<p class=os-section-copy data-testid=download-register-guide>下载完成不会自动登记。请到 OneData「原始数据」确认接入后再加工或训练。"),Ko=o("<p class=os-section-copy>SCNet 侧无法直接访问 ModelScope。确认后将打开科研开发会话,由 Agent 使用 scnet MCP 工具完成下载与传输。"),Xo=o("<div class=os-dataset-download-info-row><span></span><strong>"),Jo=o("<div class=os-upload-error>可用空间不足,无法下载该数据集"),mr=o("<div class=os-upload-error>"),Qo=o("<div class=os-upload-error>无法从魔搭获取数据集大小,暂不可下载"),Zo=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow>数据集</div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><div class=os-dataset-download-info><div class=os-dataset-download-info-row><span>数据集大小(预估)</span><strong></strong></div></div><div class=os-upload-actions><button type=button class="os-button os-button-secondary">取消</button><button type=button class="os-button os-button-primary">'),Yo=o("<label><span class=os-field-label-row><span class=os-field-label><span class=os-field-required aria-hidden=true> *</span></span></span><input>"),el=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow>取消下载</div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><p class=os-section-copy>确认取消 <strong></strong> 的下载吗?已下载的部分文件将被保留,你可以稍后重新下载。</p><div class=os-upload-actions><button type=button class="os-button os-button-secondary">继续下载</button><button type=button class="os-button os-button-primary">'),tl=o("<p class=os-section-copy>正在删除所选副本…"),al=o("<p class=os-section-copy>"),il=o("<button type=button class=os-download-copy-all>"),rl=o("<div class=os-download-copy-list role=group aria-label=选择要删除的环境>"),nl=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow></div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><div class=os-upload-actions><button type=button class="os-button os-button-secondary">取消</button><button type=button class="os-button os-button-primary">'),hr=o("<strong>"),sl=o("<span class=os-download-copy-partial> 未完成"),ol=o("<button type=button class=os-download-copy-item><span class=os-download-copy-item-title></span><span class=os-download-copy-item-path>"),ll=o('<span class="os-download-copy-path break-all">');function pr(e){const t=()=>e.paths.filter(a=>a.trim());return n(y,{get when(){return t().length>0},get children(){var a=qo(),r=a.firstChild,s=r.nextSibling;return i(r,()=>e.confirmed?"数据集位置":"数据集实际位置(随 ModelScope 版本可能不同)"),i(s,n(de,{get each(){return t()},children:d=>(()=>{var l=zo();return i(l,d),l})()})),E(()=>mt(a,`os-download-path-hint ${e.class??""}`.trim())),a}})}function cl(e){const t=()=>e.actionLabel??"下载",a=()=>e.environment??{kind:"local"},r=()=>e.diskLoading?"加载中...":er(e.availableBytes),s=()=>e.sizeLoading?"加载中...":e.datasetBytes===void 0?"无法从魔搭获取数据集大小":er(e.datasetBytes),d=()=>{if(a().kind==="ssh")return e.remotePath??"";if(a().kind==="scnet")return e.remotePath?.trim()||"(SCNet 默认缓存目录)";const h=`/${e.datasetId}`;return e.targetPath.endsWith(h)?e.targetPath.slice(0,-h.length):e.targetPath},l=()=>{const h=(e.actualPaths??[]).map(f=>f.trim()).filter(Boolean);return h.length>0?{paths:[...new Set(h)],confirmed:!0}:{paths:ks(d(),e.datasetId),confirmed:!1}},c=()=>e.busy?a().kind==="ssh"?"正在提交到远端...":"正在提交下载...":a().kind==="scnet"?"创建下载任务":t()==="更新"?"确认更新":"确认下载",p=()=>!!e.sizeLoading||e.datasetBytes===void 0,v=()=>{if(a().kind==="scnet")return!1;const h=e.datasetBytes,f=e.availableBytes;return h===void 0||f===void 0||f<=0?!1:h>f},b=()=>a().kind==="scnet"||e.diskLoading?!1:e.availableBytes===void 0,u=()=>!!e.busy||!!e.confirmDisabled||a().kind==="ssh"&&!(e.remotePath??"").trim()||p()||!!e.diskLoading||b()||v();return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var h=Zo(),f=h.firstChild,w=f.firstChild,S=w.firstChild,g=S.firstChild,A=g.firstChild,N=g.nextSibling,L=S.nextSibling,W=w.nextSibling,O=W.firstChild,H=O.firstChild,D=H.nextSibling,T=W.nextSibling,G=T.firstChild,z=G.nextSibling;return f.$$click=P=>P.stopPropagation(),i(g,t,A),i(N,()=>e.title),Oe(L,"click",e.onClose,!0),i(f,n(y,{get when(){return e.environmentSelector},get children(){var P=jo(),F=P.firstChild,B=F.firstChild,re=B.nextSibling;return i(re,()=>e.environmentSelector),P}}),W),i(f,n(y,{get when(){return a().kind==="local"},get fallback(){return[(()=>{var P=Yo(),F=P.firstChild,B=F.firstChild,re=B.firstChild,ue=F.nextSibling;return i(B,()=>a().kind==="ssh"?"远端存储目录":"SCNet 目标目录",re),ue.$$input=J=>e.onRemotePathChange?.(J.currentTarget.value),E(()=>R(ue,"placeholder",a().kind==="ssh"?"/work/you/modelscope/hub/datasets":"modelscope/hub/datasets")),E(()=>ue.value=e.remotePath??""),P})(),n(pr,{get paths(){return l().paths},get confirmed(){return l().confirmed}})]},get children(){return[(()=>{var P=Wo(),F=P.firstChild,B=F.nextSibling,re=B.nextSibling,ue=re.nextSibling;return ue.nextSibling,i(B,()=>e.datasetId),i(P,()=>t()==="更新"?"更新到":"下载到",ue),P})(),n(pr,{get paths(){return l().paths},get confirmed(){return l().confirmed}})]}}),W),i(f,n(y,{get when(){return l().confirmed},get children(){return Vo()}}),W),i(f,n(y,{get when(){return a().kind==="scnet"},get children(){return Ko()}}),W),i(D,s),i(W,n(y,{get when(){return a().kind!=="scnet"},get children(){var P=Xo(),F=P.firstChild,B=F.nextSibling;return i(F,()=>a().kind==="ssh"?"远端可用空间":"项目路径可用空间"),i(B,r),P}}),null),i(f,n(y,{get when(){return v()},get children(){return Jo()}}),T),i(f,n(y,{get when(){return b()},get children(){var P=mr();return i(P,()=>a().kind==="ssh"?"无法获取远端可用空间,暂不可下载":"无法获取项目路径可用空间,暂不可下载"),P}}),T),i(f,n(y,{get when(){return ne(()=>!e.sizeLoading)()&&e.datasetBytes===void 0},get children(){return Qo()}}),T),i(f,n(y,{get when(){return e.error},get children(){var P=mr();return i(P,()=>e.error),P}}),T),Oe(G,"click",e.onClose,!0),Oe(z,"click",e.onConfirm,!0),i(z,c),E(P=>{var F=v()?"":void 0,B=b()?"":void 0,re=e.busy,ue=u();return F!==P.e&&R(W,"data-insufficient",P.e=F),B!==P.t&&R(W,"data-unknown",P.t=B),re!==P.a&&(G.disabled=P.a=re),ue!==P.o&&(z.disabled=P.o=ue),P},{e:void 0,t:void 0,a:void 0,o:void 0}),h}})}})}function dl(e){return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var t=el(),a=t.firstChild,r=a.firstChild,s=r.firstChild,d=s.firstChild,l=d.nextSibling,c=s.nextSibling,p=r.nextSibling,v=p.firstChild,b=v.nextSibling,u=p.nextSibling,h=u.firstChild,f=h.nextSibling;return a.$$click=w=>w.stopPropagation(),i(l,()=>e.title),Oe(c,"click",e.onClose,!0),i(b,()=>e.datasetId),Oe(h,"click",e.onClose,!0),Oe(f,"click",e.onConfirm,!0),i(f,()=>e.busy?"正在取消...":"确认取消"),E(w=>{var S=e.busy,g=e.busy;return S!==w.e&&(h.disabled=w.e=S),g!==w.t&&(f.disabled=w.t=g),w},{e:void 0,t:void 0}),t}})}})}function ul(e){const[t,a]=_();ge(()=>{if(!e.open){a(void 0);return}e.busy||a(e.copies)});const r=()=>e.busy?t()??e.copies:e.copies,s=()=>new Set(e.selectedKeys),d=()=>r().filter(u=>s().has(u.key)),l=()=>r().length>0&&d().length===r().length,c=()=>{const u=d();return u.length>0&&u.every(h=>h.partial)},p=()=>!!e.busy||d().length===0,v=u=>{if(e.busy)return;const h=new Set(s());h.has(u)?h.delete(u):h.add(u),e.onSelectedKeysChange([...h])},b=()=>{e.busy||e.onSelectedKeysChange(l()?[]:r().map(u=>u.key))};return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var u=nl(),h=u.firstChild,f=h.firstChild,w=f.firstChild,S=w.firstChild,g=S.nextSibling,A=w.nextSibling,N=f.nextSibling,L=N.firstChild,W=L.nextSibling;return h.$$click=O=>O.stopPropagation(),i(S,()=>c()?"清理残留文件":"删除数据集"),i(g,()=>e.title),Oe(A,"click",e.onClose,!0),i(h,n(y,{get when(){return e.busy},get children(){return tl()}}),N),i(h,n(y,{get when(){return!e.busy},get children(){return[(()=>{var O=al();return i(O,(()=>{var H=ne(()=>r().length>1);return()=>H()?"该数据集已下载到多个环境。请选择要删除的副本,此操作不可恢复。":ne(()=>!!c())()?["确认清理 ",(()=>{var D=hr();return i(D,()=>e.datasetId),D})()," 未完成的下载残留吗?请选择环境后继续。"]:["请选择要删除 ",(()=>{var D=hr();return i(D,()=>e.datasetId),D})()," 的环境。此操作不可恢复。"]})()),O})(),n(y,{get when(){return r().length>1},get children(){var O=il();return O.$$click=b,i(O,()=>l()?"取消全选":"全选"),E(()=>O.disabled=e.busy),O}}),(()=>{var O=rl();return i(O,n(de,{get each(){return r()},children:H=>(()=>{var D=ol(),T=D.firstChild,G=T.nextSibling;return D.$$click=()=>v(H.key),i(T,()=>H.label,null),i(T,n(y,{get when(){return H.partial},get children(){return sl()}}),null),i(G,n(de,{get each(){return H.paths},children:z=>(()=>{var P=ll();return i(P,z),P})()})),E(z=>{var P=s().has(H.key)?"":void 0,F=s().has(H.key),B=e.busy;return P!==z.e&&R(D,"data-selected",z.e=P),F!==z.t&&R(D,"aria-pressed",z.t=F),B!==z.a&&(D.disabled=z.a=B),z},{e:void 0,t:void 0,a:void 0}),D})()})),O})()]}}),N),Oe(L,"click",e.onClose,!0),Oe(W,"click",e.onConfirm,!0),i(W,(()=>{var O=ne(()=>!!e.busy);return()=>O()?"正在删除...":c()?"确认清理":"确认删除"})()),E(O=>{var H=e.busy,D=e.busy,T=p();return H!==O.e&&(A.disabled=O.e=H),D!==O.t&&(L.disabled=O.t=D),T!==O.a&&(W.disabled=O.a=T),O},{e:void 0,t:void 0,a:void 0}),u}})}})}At(["click","input"]);const St=`请按照下面的内容,使用OneScience,进行后续工作。
|
|
1
|
+
import{d as At,a as n,aJ as bt,i,an as Oe,S as y,b as E,x as R,v as ne,c as _,z as ge,F as de,t as o,u as mt,aK as ks,aL as er,aM as Da,aN as jt,aO as Ja,m as Ds,p as As,n as xs,aP as Ms,aQ as tr,aR as Is,A as Be,aS as It,aH as Ze,ag as Ft,aT as Fs,D as j,B as pa,aU as ga,aV as Ua,K as nt,k as ft,a5 as ar,ap as gt,aW as jr,aX as Wr,aY as $i,aZ as Ci,a_ as Ts,a$ as Es,b0 as na,b1 as Si,b2 as Vr,P as wt,O as Kt,L as Et,N as fa,af as Kr,C as Xr,b3 as Os,b4 as Ns,b5 as Rs,aj as et,b6 as ir,b7 as Ls,b8 as Jr,b9 as Qr,ba as Zr,ak as Yr,aE as Us,bb as ri,bc as Gs,bd as Bs,be as Hs,h as en,bf as qs,bg as zs,bh as rr,ao as ca,bi as js,bj as Aa,bk as nr,bl as Ws,bm as ht,bn as xt,bo as Ta,bp as ni,Q as _i,bq as Pi,br as Vs,l as tn,bs as Ks,bt as Xs,bu as Js,bv as Qs,bw as Zs,bx as Ea,by as oa,bz as Ys,bA as Qa,bB as Za,bC as eo,bD as to,bE as ia,bF as ao,bG as io,bH as ro,bI as no,bJ as ki,bK as so,bL as oo,bM as lo,U as co,aF as uo,$ as mo,bN as Di,bO as Ai,bP as an,bQ as rn,bR as si,bS as ho,bT as oi,bU as po,bV as go,bW as fo,bX as zt,bY as bo,bZ as vo,b_ as nn,b$ as sn,c0 as on,c1 as ln,c2 as cn,c3 as yo,c4 as dn,at as wo,c5 as $o,c6 as Co,c7 as So,c8 as _o,c9 as kt,ca as Po,cb as ko,cc as Do,cd as sr,ce as Ao,cf as li,cg as xo,ch as un,ci as mn,cj as Mo,ck as hn,cl as or,cm as lr,cn as cr,o as la,co as xi,j as Io,cp as Fo,cq as To,am as Eo,al as dr,cr as pn,cs as Oo,ct as No,w as Ro,cu as Lo,cv as ur,cw as Uo,cx as Go,cy as Bo}from"./index-CceAmj5n.js";import{d as Ho}from"./onescience-docs-CH5KBTI9.js";var qo=o("<div><div class=os-download-path-hint-title></div><ul class=os-download-path-hint-list>"),zo=o("<li class=break-all>"),jo=o("<div class=os-download-env-row><div class=os-download-env-field><span class=os-field-label-row><span class=os-field-label>下载到环境</span></span><div>"),Wo=o("<p class=os-section-copy>确认将 <strong></strong> <!>以下路径吗?"),Vo=o("<p class=os-section-copy data-testid=download-register-guide>下载完成不会自动登记。请到 OneData「原始数据」确认接入后再加工或训练。"),Ko=o("<p class=os-section-copy>SCNet 侧无法直接访问 ModelScope。确认后将打开科研开发会话,由 Agent 使用 scnet MCP 工具完成下载与传输。"),Xo=o("<div class=os-dataset-download-info-row><span></span><strong>"),Jo=o("<div class=os-upload-error>可用空间不足,无法下载该数据集"),mr=o("<div class=os-upload-error>"),Qo=o("<div class=os-upload-error>无法从魔搭获取数据集大小,暂不可下载"),Zo=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow>数据集</div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><div class=os-dataset-download-info><div class=os-dataset-download-info-row><span>数据集大小(预估)</span><strong></strong></div></div><div class=os-upload-actions><button type=button class="os-button os-button-secondary">取消</button><button type=button class="os-button os-button-primary">'),Yo=o("<label><span class=os-field-label-row><span class=os-field-label><span class=os-field-required aria-hidden=true> *</span></span></span><input>"),el=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow>取消下载</div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><p class=os-section-copy>确认取消 <strong></strong> 的下载吗?已下载的部分文件将被保留,你可以稍后重新下载。</p><div class=os-upload-actions><button type=button class="os-button os-button-secondary">继续下载</button><button type=button class="os-button os-button-primary">'),tl=o("<p class=os-section-copy>正在删除所选副本…"),al=o("<p class=os-section-copy>"),il=o("<button type=button class=os-download-copy-all>"),rl=o("<div class=os-download-copy-list role=group aria-label=选择要删除的环境>"),nl=o('<div class=os-modal-backdrop role=presentation><div class="os-upload-dialog os-download-dialog"><div class=os-upload-head><div><div class=os-eyebrow></div><h2></h2></div><button type=button class="os-button os-button-secondary os-button-square">×</button></div><div class=os-upload-actions><button type=button class="os-button os-button-secondary">取消</button><button type=button class="os-button os-button-primary">'),hr=o("<strong>"),sl=o("<span class=os-download-copy-partial> 未完成"),ol=o("<button type=button class=os-download-copy-item><span class=os-download-copy-item-title></span><span class=os-download-copy-item-path>"),ll=o('<span class="os-download-copy-path break-all">');function pr(e){const t=()=>e.paths.filter(a=>a.trim());return n(y,{get when(){return t().length>0},get children(){var a=qo(),r=a.firstChild,s=r.nextSibling;return i(r,()=>e.confirmed?"数据集位置":"数据集实际位置(随 ModelScope 版本可能不同)"),i(s,n(de,{get each(){return t()},children:d=>(()=>{var l=zo();return i(l,d),l})()})),E(()=>mt(a,`os-download-path-hint ${e.class??""}`.trim())),a}})}function cl(e){const t=()=>e.actionLabel??"下载",a=()=>e.environment??{kind:"local"},r=()=>e.diskLoading?"加载中...":er(e.availableBytes),s=()=>e.sizeLoading?"加载中...":e.datasetBytes===void 0?"无法从魔搭获取数据集大小":er(e.datasetBytes),d=()=>{if(a().kind==="ssh")return e.remotePath??"";if(a().kind==="scnet")return e.remotePath?.trim()||"(SCNet 默认缓存目录)";const h=`/${e.datasetId}`;return e.targetPath.endsWith(h)?e.targetPath.slice(0,-h.length):e.targetPath},l=()=>{const h=(e.actualPaths??[]).map(f=>f.trim()).filter(Boolean);return h.length>0?{paths:[...new Set(h)],confirmed:!0}:{paths:ks(d(),e.datasetId),confirmed:!1}},c=()=>e.busy?a().kind==="ssh"?"正在提交到远端...":"正在提交下载...":a().kind==="scnet"?"创建下载任务":t()==="更新"?"确认更新":"确认下载",p=()=>!!e.sizeLoading||e.datasetBytes===void 0,v=()=>{if(a().kind==="scnet")return!1;const h=e.datasetBytes,f=e.availableBytes;return h===void 0||f===void 0||f<=0?!1:h>f},b=()=>a().kind==="scnet"||e.diskLoading?!1:e.availableBytes===void 0,u=()=>!!e.busy||!!e.confirmDisabled||a().kind==="ssh"&&!(e.remotePath??"").trim()||p()||!!e.diskLoading||b()||v();return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var h=Zo(),f=h.firstChild,w=f.firstChild,S=w.firstChild,g=S.firstChild,A=g.firstChild,N=g.nextSibling,L=S.nextSibling,W=w.nextSibling,O=W.firstChild,H=O.firstChild,D=H.nextSibling,T=W.nextSibling,G=T.firstChild,z=G.nextSibling;return f.$$click=P=>P.stopPropagation(),i(g,t,A),i(N,()=>e.title),Oe(L,"click",e.onClose,!0),i(f,n(y,{get when(){return e.environmentSelector},get children(){var P=jo(),F=P.firstChild,B=F.firstChild,re=B.nextSibling;return i(re,()=>e.environmentSelector),P}}),W),i(f,n(y,{get when(){return a().kind==="local"},get fallback(){return[(()=>{var P=Yo(),F=P.firstChild,B=F.firstChild,re=B.firstChild,ue=F.nextSibling;return i(B,()=>a().kind==="ssh"?"远端存储目录":"SCNet 目标目录",re),ue.$$input=J=>e.onRemotePathChange?.(J.currentTarget.value),E(()=>R(ue,"placeholder",a().kind==="ssh"?"/work/you/modelscope/hub/datasets":"modelscope/hub/datasets")),E(()=>ue.value=e.remotePath??""),P})(),n(pr,{get paths(){return l().paths},get confirmed(){return l().confirmed}})]},get children(){return[(()=>{var P=Wo(),F=P.firstChild,B=F.nextSibling,re=B.nextSibling,ue=re.nextSibling;return ue.nextSibling,i(B,()=>e.datasetId),i(P,()=>t()==="更新"?"更新到":"下载到",ue),P})(),n(pr,{get paths(){return l().paths},get confirmed(){return l().confirmed}})]}}),W),i(f,n(y,{get when(){return l().confirmed},get children(){return Vo()}}),W),i(f,n(y,{get when(){return a().kind==="scnet"},get children(){return Ko()}}),W),i(D,s),i(W,n(y,{get when(){return a().kind!=="scnet"},get children(){var P=Xo(),F=P.firstChild,B=F.nextSibling;return i(F,()=>a().kind==="ssh"?"远端可用空间":"项目路径可用空间"),i(B,r),P}}),null),i(f,n(y,{get when(){return v()},get children(){return Jo()}}),T),i(f,n(y,{get when(){return b()},get children(){var P=mr();return i(P,()=>a().kind==="ssh"?"无法获取远端可用空间,暂不可下载":"无法获取项目路径可用空间,暂不可下载"),P}}),T),i(f,n(y,{get when(){return ne(()=>!e.sizeLoading)()&&e.datasetBytes===void 0},get children(){return Qo()}}),T),i(f,n(y,{get when(){return e.error},get children(){var P=mr();return i(P,()=>e.error),P}}),T),Oe(G,"click",e.onClose,!0),Oe(z,"click",e.onConfirm,!0),i(z,c),E(P=>{var F=v()?"":void 0,B=b()?"":void 0,re=e.busy,ue=u();return F!==P.e&&R(W,"data-insufficient",P.e=F),B!==P.t&&R(W,"data-unknown",P.t=B),re!==P.a&&(G.disabled=P.a=re),ue!==P.o&&(z.disabled=P.o=ue),P},{e:void 0,t:void 0,a:void 0,o:void 0}),h}})}})}function dl(e){return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var t=el(),a=t.firstChild,r=a.firstChild,s=r.firstChild,d=s.firstChild,l=d.nextSibling,c=s.nextSibling,p=r.nextSibling,v=p.firstChild,b=v.nextSibling,u=p.nextSibling,h=u.firstChild,f=h.nextSibling;return a.$$click=w=>w.stopPropagation(),i(l,()=>e.title),Oe(c,"click",e.onClose,!0),i(b,()=>e.datasetId),Oe(h,"click",e.onClose,!0),Oe(f,"click",e.onConfirm,!0),i(f,()=>e.busy?"正在取消...":"确认取消"),E(w=>{var S=e.busy,g=e.busy;return S!==w.e&&(h.disabled=w.e=S),g!==w.t&&(f.disabled=w.t=g),w},{e:void 0,t:void 0}),t}})}})}function ul(e){const[t,a]=_();ge(()=>{if(!e.open){a(void 0);return}e.busy||a(e.copies)});const r=()=>e.busy?t()??e.copies:e.copies,s=()=>new Set(e.selectedKeys),d=()=>r().filter(u=>s().has(u.key)),l=()=>r().length>0&&d().length===r().length,c=()=>{const u=d();return u.length>0&&u.every(h=>h.partial)},p=()=>!!e.busy||d().length===0,v=u=>{if(e.busy)return;const h=new Set(s());h.has(u)?h.delete(u):h.add(u),e.onSelectedKeysChange([...h])},b=()=>{e.busy||e.onSelectedKeysChange(l()?[]:r().map(u=>u.key))};return n(y,{get when(){return e.open},get children(){return n(bt,{get children(){var u=nl(),h=u.firstChild,f=h.firstChild,w=f.firstChild,S=w.firstChild,g=S.nextSibling,A=w.nextSibling,N=f.nextSibling,L=N.firstChild,W=L.nextSibling;return h.$$click=O=>O.stopPropagation(),i(S,()=>c()?"清理残留文件":"删除数据集"),i(g,()=>e.title),Oe(A,"click",e.onClose,!0),i(h,n(y,{get when(){return e.busy},get children(){return tl()}}),N),i(h,n(y,{get when(){return!e.busy},get children(){return[(()=>{var O=al();return i(O,(()=>{var H=ne(()=>r().length>1);return()=>H()?"该数据集已下载到多个环境。请选择要删除的副本,此操作不可恢复。":ne(()=>!!c())()?["确认清理 ",(()=>{var D=hr();return i(D,()=>e.datasetId),D})()," 未完成的下载残留吗?请选择环境后继续。"]:["请选择要删除 ",(()=>{var D=hr();return i(D,()=>e.datasetId),D})()," 的环境。此操作不可恢复。"]})()),O})(),n(y,{get when(){return r().length>1},get children(){var O=il();return O.$$click=b,i(O,()=>l()?"取消全选":"全选"),E(()=>O.disabled=e.busy),O}}),(()=>{var O=rl();return i(O,n(de,{get each(){return r()},children:H=>(()=>{var D=ol(),T=D.firstChild,G=T.nextSibling;return D.$$click=()=>v(H.key),i(T,()=>H.label,null),i(T,n(y,{get when(){return H.partial},get children(){return sl()}}),null),i(G,n(de,{get each(){return H.paths},children:z=>(()=>{var P=ll();return i(P,z),P})()})),E(z=>{var P=s().has(H.key)?"":void 0,F=s().has(H.key),B=e.busy;return P!==z.e&&R(D,"data-selected",z.e=P),F!==z.t&&R(D,"aria-pressed",z.t=F),B!==z.a&&(D.disabled=z.a=B),z},{e:void 0,t:void 0,a:void 0}),D})()})),O})()]}}),N),Oe(L,"click",e.onClose,!0),Oe(W,"click",e.onConfirm,!0),i(W,(()=>{var O=ne(()=>!!e.busy);return()=>O()?"正在删除...":c()?"确认清理":"确认删除"})()),E(O=>{var H=e.busy,D=e.busy,T=p();return H!==O.e&&(A.disabled=O.e=H),D!==O.t&&(L.disabled=O.t=D),T!==O.a&&(W.disabled=O.a=T),O},{e:void 0,t:void 0,a:void 0}),u}})}})}At(["click","input"]);const St=`请按照下面的内容,使用OneScience,进行后续工作。
|
|
2
2
|
————————
|
|
3
3
|
`,gn={training:{id:"training",label:"模型训练",description:"准备训练配置并做小规模验证"},inference:{id:"inference",label:"推理",description:"加载权重并完成推理验证"},"secondary-development":{id:"secondary-development",label:"二次开发",description:"改结构、做适配或扩展能力"},"parallel-expansion":{id:"parallel-expansion",label:"并行扩展",description:"改造为分布式或多卡训练"},"scientific-research":{id:"scientific-research",label:"科研开发",description:"选择论文或 GitHub 案例,复现并验证"}},ml=Object.values(gn),hl={training:`3)围绕 {title} 完成训练或微调准备与小规模验证:定位训练入口与配置方式,生成 training_config,优先 smoke training(小样本、少步数)。
|
|
4
4
|
能跑则跑通并汇报;不能跑则列出阻塞项与最小补齐方案。
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{L as Fe,af as Te,bv as De,cX as be,K as Me,c as E,at as qe,D as ie,ag as Ae,i as r,a as c,b as M,x as ce,S as v,F as de,v as B,cY as I,cZ as R,c_ as Ke,t as p,o as J,j as He,k as Oe,c$ as ze,c5 as Qe,d as ve,bi as Re,aH as Be,d0 as Ge}from"./index-CceAmj5n.js";function ue(){return{name:"",transport:"local",command:"",environment:"",url:"",headers:"",oauth:!0,enabled:!0}}function N(a){if(!a||typeof a!="object"||!("type"in a))return!1;const o=a.type;return o==="local"||o==="remote"}function $e(a){const o=[],g=/"([^"]*)"|'([^']*)'|(\S+)/g;let e;for(;e=g.exec(a);)o.push(e[1]??e[2]??e[3]??"");return o.filter(f=>f.length>0)}function _e(a){return a.map(o=>/[\s"]/.test(o)?`"${o.replaceAll('"','\\"')}"`:o).join(" ")}function me(a){const o={};for(const g of a.split(/\r?\n/)){const e=g.trim();if(!e||e.startsWith("#"))continue;const f=e.indexOf("=");if(f<=0)continue;const b=e.slice(0,f).trim();b&&(o[b]=e.slice(f+1).trim())}return Object.keys(o).length>0?o:void 0}function pe(a){return a?Object.entries(a).map(([o,g])=>`${o}=${g}`).join(`
|
|
2
|
+
`):""}function Ve(a,o){return o.type==="local"?{name:a,transport:"local",command:_e(o.command??[]),environment:pe(o.environment),url:"",headers:"",oauth:!0,enabled:o.enabled!==!1}:{name:a,transport:"remote",command:"",environment:"",url:o.url??"",headers:pe(o.headers),oauth:o.oauth!==!1,enabled:o.enabled!==!1}}function We(a,o,g){const e=a.name.trim();if(!e)return"name";if(e!==(g&&g!=="__new__"?g:void 0)&&o?.[e])return"duplicate";if(a.transport==="local")return $e(a.command).length===0?"command":void 0;const b=a.url.trim();if(!b||!/^https?:\/\//i.test(b))return"url"}function Ue(a){const o=a.name.trim(),g=a.enabled;if(a.transport==="local"){const b=me(a.environment),q={type:"local",command:$e(a.command),...b?{environment:b}:{},enabled:g};return{name:o,value:q}}const e=me(a.headers),f={type:"remote",url:a.url.trim(),...e?{headers:e}:{},...a.oauth?{}:{oauth:!1},enabled:g};return{name:o,value:f}}function ge(a){return a.type==="local"?_e(a.command??[]):a.url}var Xe=p('<div class=os-wb-mcp-toolbar><input class=os-wb-mcp-search><button type=button class="os-wb-ssh-action os-wb-ssh-action-primary">'),Ye=p('<p class="text-12-regular text-text-weak leading-snug">'),Ze=p("<div class=os-wb-mcp-grid>"),Ie=p('<div class="os-wb-mcp-panel relative">'),Je=p('<p class="text-12-regular text-text-critical-base">'),Ne=p('<div class=os-wb-ssh-form-shell><button type=button class=os-wb-ssh-form-back>← </button><h3 class="text-14-medium text-text-strong"></h3><p class="text-12-regular text-text-weak leading-snug"></p><div class=os-wb-ssh-form-card><div class="flex flex-col gap-1"><span class="text-12-regular text-text-base"></span></div><p class="text-12-regular text-text-weak"></p></div><div class=os-wb-ssh-form-actions><button type=button class=os-wb-ssh-action></button><button type=button class="os-wb-ssh-action os-wb-ssh-action-primary">'),et=p('<p class="text-12-regular text-text-weak">'),tt=p("<div class=os-wb-mcp-empty>"),rt=p("<p class=os-wb-mcp-card-error>"),nt=p("<div class=os-wb-mcp-tools><span class=os-wb-mcp-tools-label>"),he=p("<p class=os-wb-mcp-tool-empty>"),at=p("<button type=button class=os-wb-ssh-action>"),lt=p("<article class=os-wb-mcp-card><header class=os-wb-mcp-card-head><div class=min-w-0><h3></h3><p></p></div></header><div class=os-wb-mcp-card-meta><span></span></div><footer class=os-wb-mcp-card-actions><button type=button class=os-wb-ssh-action></button><button type=button class=os-wb-ssh-action>"),fe=p("<span>"),ot=p("<div class=os-wb-mcp-tool><strong>"),st=p('<div class="absolute inset-0 z-30 flex items-center justify-center bg-black/40 p-4"><div class="os-wb-ssh-identity-prompt flex w-full max-w-md flex-col gap-3 p-5"role=dialog><h3 class="text-14-medium text-text-strong"></h3><p class="text-12-regular text-text-weak"></p><div class="os-wb-ssh-toolbar pt-1"><button type=button class=os-wb-ssh-action></button><button type=button class="os-wb-ssh-action os-wb-ssh-action-primary">');const ee={connected:"mcp.status.connected",failed:"mcp.status.failed",needs_auth:"mcp.status.needs_auth",needs_client_registration:"mcp.status.needs_client_registration",disabled:"mcp.status.disabled"};function it(){const a=Fe(),o=Te(),g=De(),e=be(),f=Me(),[b,q]=E(""),[P,L]=E(),[A,F]=E(""),[h,w]=E(""),[T,x]=E(),[re,ne]=E({}),[we,ae]=E({}),[$,y]=qe(ue()),z=ie(()=>a.data.config.mcp??{}),le=ie(()=>{const l=b().trim().toLowerCase();return Object.entries(z()).map(([t,n])=>({name:t,config:n})).filter(t=>{if(!l)return!0;const n=N(t.config)?ge(t.config):"";return`${t.name} ${n}`.toLowerCase().includes(l)}).sort((t,n)=>t.name.localeCompare(n.name))});function oe(){const l=He(Oe())?.trim();return l||(a.data.project.find(t=>t.worktree?.trim())?.worktree??"")}function ye(){const l={},t=f.current;t?.http.password&&(l.Authorization=`Basic ${ze({username:t.http.username,password:t.http.password})}`);const n=Qe();return n&&(l["x-platform-auth-token"]=n),l}async function X(){const l=oe();if(!l){ne({}),ae({});return}const n=await o.createClient({directory:l,throwOnError:!1}).mcp.status({directory:l});ne(n.data??{});const d=await fetch(`${o.url}/mcp/catalog?directory=${encodeURIComponent(l)}`,{headers:ye()});if(!d.ok)return;const u=await d.json();ae(u??{})}Ae(()=>{X().catch(()=>{})});async function Y(l){await a.updateConfig({mcp:l}),await g.refetchQueries({predicate:t=>Array.isArray(t.queryKey)&&t.queryKey.includes("mcp")}).catch(()=>{}),await X()}function G(l){J({variant:"error",title:e.t("common.requestFailed"),description:l instanceof Error?l.message:String(l)})}function xe(){y(ue()),F(""),L("__new__")}function Ce(l,t){if(!N(t)){F(e.t("dialog.mcp.error.missingConfig"));return}y(Ve(l,t)),F(""),L(l)}async function Se(){const l=We($,z(),P());if(l){F(e.t(`dialog.mcp.error.${l}`));return}const t=Ue($),n={...z()},d=P();d&&d!=="__new__"&&d!==t.name&&delete n[d],n[t.name]=t.value,w(t.name);try{await Y(n),L(void 0),J({title:e.t("dialog.mcp.toast.saved")})}catch(u){G(u)}finally{w("")}}async function ke(l,t,n){const d={...z(),[l]:{...t,enabled:n}};w(l);try{await Y(d)}catch(u){G(u)}finally{w("")}}async function Pe(l){const t={...z()};delete t[l],w(l);try{await Y(t),x(void 0),J({title:e.t("dialog.mcp.toast.saved")})}catch(n){G(n)}finally{w("")}}async function je(l){const t=oe();if(t){w(l);try{await o.createClient({directory:t,throwOnError:!0}).mcp.connect({name:l,directory:t}),await X()}catch(n){G(n)}finally{w("")}}}const Ee=()=>P()==="__new__"?e.t("dialog.mcp.addTitle"):e.t("dialog.mcp.editTitle");return(()=>{var l=Ie();return r(l,c(v,{get when(){return!P()},get fallback(){return(()=>{var t=Ne(),n=t.firstChild;n.firstChild;var d=n.nextSibling,u=d.nextSibling,_=u.nextSibling,C=_.firstChild,j=C.firstChild,m=C.nextSibling,D=_.nextSibling,K=D.firstChild,H=K.nextSibling;return n.$$click=()=>L(void 0),r(n,()=>e.t("dialog.mcp.title"),null),r(d,Ee),r(u,()=>e.t("dialog.mcp.form.hint")),r(_,c(R,{required:!0,get label(){return e.t("dialog.mcp.form.name")},get placeholder(){return e.t("dialog.mcp.form.namePlaceholder")},get value(){return $.name},get disabled(){return!!h()},get error(){return B(()=>!!(A()&&!$.name.trim()))()?A():void 0},onChange:s=>y("name",s)}),C),r(j,()=>e.t("dialog.mcp.form.transport")),r(C,c(Ke,{options:["local","remote"],get current(){return $.transport},value:s=>s,label:s=>e.t(`dialog.mcp.form.transport.${s}`),onSelect:s=>{(s==="local"||s==="remote")&&y("transport",s)},get disabled(){return!!h()},variant:"secondary",size:"large",class:"justify-between"}),null),r(_,c(v,{get when(){return $.transport==="local"},get fallback(){return[c(R,{required:!0,get label(){return e.t("dialog.mcp.form.url")},get placeholder(){return e.t("dialog.mcp.form.urlPlaceholder")},get value(){return $.url},get disabled(){return!!h()},onChange:s=>y("url",s)}),c(R,{multiline:!0,get label(){return e.t("dialog.mcp.form.headers")},get placeholder(){return e.t("dialog.mcp.form.headersPlaceholder")},get value(){return $.headers},get disabled(){return!!h()},onChange:s=>y("headers",s)}),c(I,{get checked(){return $.oauth},get disabled(){return!!h()},onChange:s=>y("oauth",s),get children(){return e.t("dialog.mcp.form.oauth")}}),(()=>{var s=et();return r(s,()=>e.t("dialog.mcp.form.oauthDescription")),s})()]},get children(){return[c(R,{required:!0,get label(){return e.t("dialog.mcp.form.command")},get placeholder(){return e.t("dialog.mcp.form.commandPlaceholder")},get value(){return $.command},get disabled(){return!!h()},onChange:s=>y("command",s)}),c(R,{multiline:!0,get label(){return e.t("dialog.mcp.form.environment")},get placeholder(){return e.t("dialog.mcp.form.environmentPlaceholder")},get value(){return $.environment},get disabled(){return!!h()},onChange:s=>y("environment",s)})]}}),m),r(_,c(I,{get checked(){return $.enabled},get disabled(){return!!h()},onChange:s=>y("enabled",s),get children(){return e.t("dialog.mcp.form.enabled")}}),m),r(m,()=>e.t("dialog.mcp.form.enabledDescription")),r(_,c(v,{get when(){return A()},get children(){var s=Je();return r(s,A),s}}),null),K.$$click=()=>L(void 0),r(K,()=>e.t("common.cancel")),H.$$click=()=>void Se(),r(H,()=>e.t("common.save")),M(s=>{var O=!!h(),V=!!h();return O!==s.e&&(K.disabled=s.e=O),V!==s.t&&(H.disabled=s.t=V),s},{e:void 0,t:void 0}),t})()},get children(){return[(()=>{var t=Xe(),n=t.firstChild,d=n.nextSibling;return n.$$input=u=>q(u.currentTarget.value),d.$$click=xe,r(d,()=>e.t("dialog.mcp.addButton")),M(()=>ce(n,"placeholder",e.t("common.search.placeholder"))),M(()=>n.value=b()),t})(),(()=>{var t=Ye();return r(t,()=>e.t("dialog.mcp.form.hint")),t})(),c(v,{get when(){return le().length>0},get fallback(){return(()=>{var t=tt();return r(t,()=>e.t("dialog.mcp.empty")),t})()},get children(){var t=Ze();return r(t,c(de,{get each(){return le()},children:n=>{const d=()=>N(n.config)?n.config:void 0,u=()=>re()[n.name]?.status,_=()=>{const m=u();if(m&&m in ee)return ee[m];if(d()?.enabled===!1)return ee.disabled},C=()=>{const m=re()[n.name];if(m&&"error"in m)return m.error},j=()=>we()[n.name]??[];return(()=>{var m=lt(),D=m.firstChild,K=D.firstChild,H=K.firstChild,s=H.nextSibling,O=D.nextSibling,V=O.firstChild,Q=O.nextSibling,W=Q.firstChild,U=W.nextSibling;return r(H,()=>n.name),r(s,(()=>{var i=B(()=>!!d());return()=>i()?ge(d()):e.t("dialog.mcp.error.missingConfig")})()),r(D,c(v,{get when(){return d()},children:i=>c(I,{get checked(){return i().enabled!==!1},get disabled(){return h()===n.name},onChange:S=>void ke(n.name,i(),S)})}),null),r(V,(()=>{var i=B(()=>d()?.type==="remote");return()=>i()?e.t("dialog.mcp.form.transport.remote"):e.t("dialog.mcp.form.transport.local")})()),r(O,c(v,{get when(){return _()},children:i=>(()=>{var S=fe();return r(S,()=>e.t(i())),S})()}),null),r(m,c(v,{get when(){return C()},get children(){var i=rt();return r(i,C),i}}),Q),r(m,c(v,{get when(){return u()==="connected"},get children(){var i=nt(),S=i.firstChild;return r(S,()=>e.t("dialog.mcp.card.tools")),r(i,c(v,{get when(){return j().length>0},get fallback(){return(()=>{var k=he();return r(k,()=>e.t("dialog.mcp.card.toolsEmpty")),k})()},get children(){return c(de,{get each(){return j().slice(0,12)},children:k=>(()=>{var Z=ot(),Le=Z.firstChild;return r(Le,()=>k.name),r(Z,c(v,{get when(){return k.description},get children(){var se=fe();return r(se,()=>k.description),se}}),null),Z})()})}}),null),i}}),Q),r(m,c(v,{get when(){return B(()=>d()?.enabled!==!1&&u()!=="connected")()&&!u()},get children(){var i=he();return r(i,()=>e.t("dialog.mcp.card.toolsPending")),i}}),Q),W.$$click=()=>Ce(n.name,n.config),r(W,()=>e.t("common.edit")),r(Q,c(v,{get when(){return u()==="failed"||u()==="needs_auth"},get children(){var i=at();return i.$$click=()=>void je(n.name),r(i,()=>e.t("dialog.mcp.retry")),M(()=>i.disabled=!!h()),i}}),U),U.$$click=()=>x(n.name),r(U,()=>e.t("common.delete")),M(i=>{var S=!d()||!!h(),k=!!h();return S!==i.e&&(W.disabled=i.e=S),k!==i.t&&(U.disabled=i.t=k),i},{e:void 0,t:void 0}),m})()}})),t}})]}}),null),r(l,c(v,{get when(){return T()},children:t=>(()=>{var n=st(),d=n.firstChild,u=d.firstChild,_=u.nextSibling,C=_.nextSibling,j=C.firstChild,m=j.nextSibling;return n.$$click=()=>x(void 0),d.$$click=D=>D.stopPropagation(),r(u,()=>e.t("common.delete")),r(_,()=>e.t("dialog.mcp.deleteConfirm",{name:t()})),j.$$click=()=>x(void 0),r(j,()=>e.t("common.cancel")),m.$$click=()=>void Pe(t()),r(m,()=>e.t("common.confirm")),n})()}),null),M(()=>ce(l,"data-mode",P()?"form":"list")),l})()}ve(["input","click"]);var ct=p('<div class="os-client-capability-page os-client-resources-page"><header class=os-client-resources-head><div class=os-client-resources-head-copy><h2>资源配置</h2><p>SSH 连接与 MCP 工具。各登录账号的配置彼此隔离。</p></div></header><section class=os-client-capability-selector aria-label=资源配置><div class=os-client-capability-domain-row></div><div class=os-client-capability-current-domain><span>当前配置:</span><strong></strong><small></small></div></section><div class="os-client-capability-page-body os-client-resources-body">'),dt=p("<button type=button>");const te=[{id:"ssh",label:"SSH 连接"},{id:"mcp",label:"MCP 工具"}];function mt(){const a=be(),[o,g]=E("ssh"),e=()=>te.find(f=>f.id===o())??te[0];return(()=>{var f=ct(),b=f.firstChild;b.firstChild;var q=b.nextSibling,P=q.firstChild,L=P.nextSibling,A=L.firstChild,F=A.nextSibling,h=F.nextSibling,w=q.nextSibling;return r(b,c(Be,{get href(){return Re()},class:"os-client-resources-close","aria-label":"关闭资源配置",children:"×"}),null),r(P,()=>te.map(T=>(()=>{var x=dt();return x.$$click=()=>g(T.id),r(x,()=>T.label),M(()=>x.classList.toggle("is-active",o()===T.id)),x})())),r(F,()=>e().label),r(h,(()=>{var T=B(()=>o()==="ssh");return()=>T()?a.t("dialog.ssh.description"):"本地 stdio 或远程 HTTP,仅当前登录账号可见。"})()),r(w,c(v,{get when(){return o()==="ssh"},get fallback(){return c(it,{})},get children(){return c(Ge,{variant:"page"})}})),f})()}ve(["click"]);export{mt as WorkbenchResourcesPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{O as F,P as q,K as H,c as E,D as g,ag as I,i as a,a as o,t as v,cU as u,d as O,k as _,R as z,j as K,cl as y,cm as C,cn as L,A as N,aH as V,cV as A,S as B,b as G,x as J,F as Q,v as X,cW as Y}from"./index-
|
|
1
|
+
import{O as F,P as q,K as H,c as E,D as g,ag as I,i as a,a as o,t as v,cU as u,d as O,k as _,R as z,j as K,cl as y,cm as C,cn as L,A as N,aH as V,cV as A,S as B,b as G,x as J,F as Q,v as X,cW as Y}from"./index-CceAmj5n.js";var Z=v("<p class=os-client-skills-login-hint>登录后可同步个人空间技能。 "),ee=v('<div class="os-client-capability-page os-client-skills-page"><section class=os-client-capability-selector aria-label=技能设置><div class=os-client-capability-current-domain><span>技能设置:</span><strong></strong><small></small></div><div class="os-client-capability-tabs os-client-skills-tabs"role=tablist aria-label=技能管理视图></div></section><div class=os-client-capability-page-body>'),te=v("<button type=button><strong></strong><small>");function ae(c){const s=new URLSearchParams(c).get("tab");if(s==="list"||s==="plaza"||s==="repo"||s==="upload")return s}function ne(){const c=F(),s=q(),P=H(),[p,x]=E(0),R=g(()=>(p(),!!_())),d=g(()=>!R()),[n,T]=E(ae(c.search)??"list"),M=g(()=>{p();const e=_();return e&&(z(e,P.projects.lastCode())||K(e))||""}),b=e=>{T(e),s(A(e),{replace:!0})};I(()=>{const e=()=>x(i=>i+1);window.addEventListener(y,e),window.addEventListener(C,e),window.addEventListener(L,e),N(()=>{window.removeEventListener(y,e),window.removeEventListener(C,e),window.removeEventListener(L,e)})});const h=()=>u.find(e=>e.id===n())??u[0];return(()=>{var e=ee(),i=e.firstChild,m=i.firstChild,U=m.firstChild,f=U.nextSibling,W=f.nextSibling,w=m.nextSibling,j=i.nextSibling;return a(f,()=>h().label),a(W,()=>h().hint),a(i,o(B,{get when(){return d()},get children(){var t=Z();return t.firstChild,a(t,o(V,{get href(){return`/login?redirect=${encodeURIComponent(A(n()))}`},children:"去登录"}),null),t}}),w),a(w,o(Q,{each:u,children:t=>(()=>{var r=te(),S=r.firstChild,D=S.nextSibling;return r.$$click=()=>b(t.id),a(S,()=>t.label),a(D,()=>t.hint),G(l=>{var $=n()===t.id,k=n()===t.id;return $!==l.e&&r.classList.toggle("is-active",l.e=$),k!==l.t&&J(r,"aria-pressed",l.t=k),l},{e:void 0,t:void 0}),r})()})),a(j,o(Y,{get directory(){return X(()=>!!d())()?void 0:M()||void 0},get loginRequired(){return d()},get tab(){return n()},onTabChange:b,variant:"page-body"})),e})()}O(["click"]);export{ne as WorkbenchSkillsPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/staplebops-03-Aug82oH0.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/staplebops-04-olyHi8qQ.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/staplebops-06-Cj_2vOI4.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/staplebops-07-cqQEvbIf.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as Ve,c as Ge,at as Ke,cC as He,z as tt,D as E,cD as Ne,cE as Be,cF as at,cG as De,cH as xe,cI as it,an as me,i as t,aD as Qe,a as i,b as C,F as N,x as q,S as h,v as lt,cJ as rt,cK as nt,cL as qe,cM as st,t as r,cN as Je,cz as ct,O as ot,cO as dt,P as ut,L as pt,N as gt,K as ht,ag as bt,r as ze,h as ke,j as Ie,k as fe,l as Pe,m as Le,p as Fe,n as Te,o as Re,w as Ee,cP as $t,cQ as vt,aC as de,cR as mt,cS as _t,g as Xe,H as Ye,cT as ft,az as yt,aH as K,b6 as Ae,cA as St,aG as wt,cB as Ct,Q as xt}from"./index-Dpgmsczc.js";var zt=r("<button type=button class=os-client-capability-wizard-papers-more>"),kt=r("<div class=os-client-capability-wizard-papers><h3>相关论文</h3><ul>"),It=r("<div class=os-client-capability-wizard-papers><h3>HPC 软件</h3><span>"),Pt=r("<p class=os-client-capability-wizard-note>工作目录与运行环境由系统自动识别,本步只需填写下列业务参数。"),Lt=r("<p class=os-client-capability-wizard-missing>还有 <!> 个必填参数未填,可先创建;缺口将由智能体追问,也可点左侧步骤提前补全。"),Ft=r("<small>"),Tt=r("<ul class=os-client-capability-wizard-output-list>"),Rt=r("<div class=os-client-capability-wizard-quality><strong>质量门禁</strong><p>"),Et=r('<div class=os-client-capability-wizard-overlay role=dialog aria-modal=true aria-label=场景向导><button type=button class=os-client-capability-wizard-backdrop aria-label=关闭场景></button><section class=os-client-capability-wizard-dialog><header class=os-client-capability-wizard-head><button type=button class=os-client-capability-wizard-intro-back>返回场景列表</button><div class=os-client-capability-wizard-head-title><h2></h2><p></p></div><button type=button class=os-client-capability-wizard-close aria-label=关闭>×</button></header><div class=os-client-capability-wizard-columns><aside class=os-client-capability-wizard-column aria-label=工作流><h3>工作流</h3><p class=os-client-capability-wizard-note>点击步骤查看对应参数与产出;创建后将自动按序执行。</p><ol class=os-client-capability-wizard-workflow></ol></aside><section class=os-client-capability-wizard-column aria-label=补充信息><div class=os-client-capability-wizard-column-head><h3>本步参数</h3><small>/<!> · 已填 <!>/</small></div><div class=os-client-capability-wizard-fields></div><div class=os-client-capability-wizard-step-nav><button type=button>上一步</button><button type=button>下一步</button></div></section><section class=os-client-capability-wizard-column aria-label="本步产出与 Prompt"><div class=os-client-capability-wizard-outputs aria-label=本步产出><div class=os-client-capability-wizard-outputs-head><span>本步产出</span></div></div><div class=os-client-capability-wizard-column-head><h3>本步 Prompt</h3><small>第 <!> 步</small></div><textarea class=os-client-capability-wizard-prompt rows=12 readonly></textarea></section></div><footer class=os-client-capability-wizard-footer><button type=button>返回能力中心</button><button type=button data-primary=true>创建任务并自动逐步执行'),Wt=r("<li><button type=button class=os-client-capability-wizard-step><span></span><div><p>"),jt=r('<li><a target=_blank rel="noopener noreferrer">'),Ht=r("<p>"),Dt=r("<div class=os-client-capability-wizard-step-banner><strong>"),qt=r("<p class=os-client-capability-wizard-note>本步无需额外用户参数。"),At=r("<em>*"),Mt=r("<textarea rows=3>"),Ot=r("<em class=os-client-capability-wizard-field-hint>,智能体将尝试自动修正"),Ut=r("<em class=os-client-capability-wizard-field-hint>未填时由智能体追问"),Vt=r("<label class=os-client-capability-wizard-field><span>"),Gt=r("<input type=text>"),Kt=r("<p class=os-client-capability-wizard-outputs-empty>本步暂无结构化产出清单。"),Nt=r("<li>");const Me=2;function Bt(e){const[c,z]=Ge(!1),[n,k]=Ke({values:He(e.scenario),activeStepIndex:0});tt(()=>{k({values:He(e.scenario),activeStepIndex:0}),z(!1)});const F=E(()=>Ne(e.scenario)),I=E(()=>F()[n.activeStepIndex]??F()[0]),x=E(()=>{const b=I();return b?Be(e.scenario,b):e.scenario.user_input}),ue=E(()=>at(e.scenario,n.values)),B=E(()=>x().filter(b=>De(b)?!String(n.values[xe(b)]??"").trim():!1)),ye=E(()=>x().filter(b=>String(n.values[xe(b)]??"").trim()).length),T=E(()=>{const O=I()?.prompt||e.scenario.ai_prompt?.template||"";return it(O,n.values)}),M=E(()=>I()?.outputs??[]),H=E(()=>(e.scenario.related_papers??[]).filter(b=>!!String(b.url??"").trim())),ae=E(()=>c()?H():H().slice(0,Me)),A=E(()=>Math.max(0,H().length-Me)),Q=(b,O)=>{k("values",b,O)},ie=b=>{k("activeStepIndex",b)},pe=()=>{const b=Je(e.scenario.user_input,n.values);k("values",b),e.onSubmit({values:b})};return(()=>{var b=Et(),O=b.firstChild,Se=O.nextSibling,le=Se.firstChild,ge=le.firstChild,he=ge.nextSibling,l=he.firstChild,p=l.nextSibling,f=he.nextSibling,$=le.nextSibling,P=$.firstChild,U=P.firstChild,be=U.nextSibling,$e=be.nextSibling,J=P.nextSibling,re=J.firstChild,ne=re.firstChild,V=ne.nextSibling,Y=V.firstChild,ve=Y.nextSibling,we=ve.nextSibling,se=we.nextSibling;se.nextSibling;var G=re.nextSibling,ce=G.nextSibling,d=ce.firstChild,v=d.nextSibling,m=J.nextSibling,S=m.firstChild,R=S.firstChild;R.firstChild;var D=S.nextSibling,W=D.firstChild,X=W.nextSibling,Z=X.firstChild,j=Z.nextSibling;j.nextSibling;var ee=D.nextSibling,te=$.nextSibling,oe=te.firstChild,Ce=oe.nextSibling;return me(O,"click",e.onClose,!0),me(ge,"click",e.onClose,!0),t(l,()=>e.scenario.name),t(p,()=>Qe(e.scenario.problem_and_applicability)),me(f,"click",e.onClose,!0),t($e,i(N,{get each(){return F()},children:(a,s)=>(()=>{var u=Wt(),w=u.firstChild,g=w.firstChild,y=g.nextSibling,L=y.firstChild;return w.$$click=()=>ie(s()),t(g,()=>s()+1),t(L,()=>a.name),C(()=>u.classList.toggle("is-active",n.activeStepIndex===s())),u})()})),t(P,i(h,{get when(){return H().length>0},get children(){var a=kt(),s=a.firstChild,u=s.nextSibling;return t(u,i(N,{get each(){return ae()},children:w=>(()=>{var g=jt(),y=g.firstChild;return t(y,()=>w.title),C(L=>{var o=w.url,_=w.title;return o!==L.e&&q(y,"href",L.e=o),_!==L.t&&q(y,"title",L.t=_),L},{e:void 0,t:void 0}),g})()})),t(a,i(h,{get when(){return A()>0},get children(){var w=zt();return w.$$click=()=>z(g=>!g),t(w,(()=>{var g=lt(()=>!!c());return()=>g()?"收起":`展开其余 ${A()} 篇`})()),w}}),null),C(()=>u.classList.toggle("is-expanded",!!(c()&&A()>0))),a}}),null),t(P,i(h,{get when(){return e.scenario.HPC},get children(){var a=It(),s=a.firstChild,u=s.nextSibling;return t(u,()=>e.scenario.HPC),a}}),null),t(V,()=>n.activeStepIndex+1,Y),t(V,()=>F().length,ve),t(V,ye,se),t(V,()=>x().length,null),t(J,i(h,{get when(){return I()},children:a=>(()=>{var s=Dt(),u=s.firstChild;return t(u,()=>a().name),t(s,i(h,{get when(){return a().purpose?.trim()},get children(){var w=Ht();return t(w,()=>a().purpose),w}}),null),s})()}),G),t(J,i(h,{get when(){return e.scenario.system_auto_detection?.fields?.length},get children(){return Pt()}}),G),t(J,i(h,{get when(){return B().length>0||ue().length>0},get children(){var a=Lt(),s=a.firstChild,u=s.nextSibling;return u.nextSibling,t(a,()=>ue().length,u),a}}),G),t(G,i(h,{get when(){return x().length>0},get fallback(){return qt()},get children(){return i(N,{get each(){return x()},children:a=>{const s=xe(a),u=De(a),w=u&&!String(n.values[s]??"").trim(),g=String(n.values[s]??"").trim()&&rt(a,n.values[s]??"");return(()=>{var y=Vt(),L=y.firstChild;return y.classList.toggle("is-required",!!u),y.classList.toggle("is-gap",!!w),t(L,()=>nt(a),null),t(L,i(h,{when:u,get children(){return At()}}),null),t(y,i(h,{get when(){return st(a)},get fallback(){return(()=>{var o=Gt();return o.$$input=_=>Q(s,_.currentTarget.value),C(_=>{var We=a.input_type==="int"||a.input_type==="float"?"decimal":void 0,je=qe(a);return We!==_.e&&q(o,"inputmode",_.e=We),je!==_.t&&q(o,"placeholder",_.t=je),_},{e:void 0,t:void 0}),C(()=>o.value=n.values[s]??""),o})()},get children(){var o=Mt();return o.$$input=_=>Q(s,_.currentTarget.value),C(()=>q(o,"placeholder",qe(a))),C(()=>o.value=n.values[s]??""),o}}),null),t(y,i(h,{when:g,get children(){var o=Ot(),_=o.firstChild;return t(o,g,_),o}}),null),t(y,i(h,{when:w,get children(){return Ut()}}),null),y})()}})}})),d.$$click=()=>ie(Math.max(0,n.activeStepIndex-1)),v.$$click=()=>ie(Math.min(F().length-1,n.activeStepIndex+1)),t(R,i(h,{get when(){return I()?.result_subfolder},get children(){var a=Ft();return t(a,()=>I()?.result_subfolder),C(()=>q(a,"title",I()?.result_subfolder)),a}}),null),t(S,i(h,{get when(){return M().length>0},get fallback(){return Kt()},get children(){var a=Tt();return t(a,i(N,{get each(){return M()},children:s=>(()=>{var u=Nt();return t(u,s),u})()})),a}}),null),t(S,i(h,{get when(){return I()?.quality_gate},get children(){var a=Rt(),s=a.firstChild,u=s.nextSibling;return t(u,()=>I()?.quality_gate),a}}),null),t(X,()=>n.activeStepIndex+1,j),me(oe,"click",e.onClose,!0),Ce.$$click=pe,C(a=>{var s=n.activeStepIndex<=0,u=n.activeStepIndex>=F().length-1;return s!==a.e&&(d.disabled=a.e=s),u!==a.t&&(v.disabled=a.t=u),a},{e:void 0,t:void 0}),C(()=>ee.value=T()),b})()}Ve(["click","input"]);function Qt(e,c){return e.replace(/\{\{(\w+)\}\}/g,(z,n)=>c[n]??"")}var Jt=r("<div class=os-client-capability-wizard-overlay role=dialog aria-modal=true aria-label=能力向导>"),Xt=r("<section class=os-client-capability-wizard-dialog><p>未找到该能力。"),Yt=r("<div class=os-client-capability-wizard-scenario-group><span>完整工作流场景 · "),Zt=r("<section class=os-client-capability-wizard-dialog><header class=os-client-capability-wizard-head><div class=os-client-capability-wizard-head-title><h2></h2></div></header><div class=os-client-capability-wizard-columns><aside class=os-client-capability-wizard-column aria-label=你想做什么?><h3>你想做什么?</h3><div class=os-client-capability-wizard-scenarios></div></aside><section class=os-client-capability-wizard-column aria-label=补充信息><h3>补充信息</h3></section><section class=os-client-capability-wizard-column aria-label=起始任务><div class=os-client-capability-wizard-column-head><h3>起始任务</h3><button type=button>重新生成</button></div><textarea class=os-client-capability-wizard-prompt rows=14></textarea></section></div><footer class=os-client-capability-wizard-footer><button type=button data-primary=true>创建任务"),ea=r("<section class=os-client-capability-wizard-dialog><p>「<!>」暂无 OneScience 源码或魔搭映射,当前不可使用。"),ta=r("<button type=button><strong></strong><p>"),aa=r("<button type=button><strong></strong><p></p><small> · <!> 步"),Oe=r("<p class=os-client-capability-wizard-empty>请先选择任务场景。"),ia=r("<div class=os-client-capability-wizard-required aria-label=该能力需要什么数据><h4>该能力需要什么数据</h4><ul>"),la=r("<div class=os-client-capability-wizard-middle><div class=os-client-capability-wizard-fields></div><div class=os-client-capability-wizard-summary aria-label=当前能力配置><h4>当前能力配置</h4><dl><div><dt>当前能力</dt><dd></dd></div><div><dt>关键配置</dt><dd></dd></div><div><dt>运行资源</dt><dd></dd></div><div><dt>交付结果</dt><dd>"),ra=r("<textarea rows=3>"),na=r("<label class=os-client-capability-wizard-field><span>"),sa=r("<input type=text>"),ca=r("<li>"),oa=r("<div class=os-client-capability-wizard-right-head><strong></strong><p>"),da=r("<div class=os-client-capability-wizard-outputs aria-label=预计产出><span>预计产出</span><p>");function ua(e){return e==="hpc"?"软件介绍":"模型介绍"}function pa(e){return`使用 ${e} 开始科研任务`}function ga(e){if(!ze({navigate:e.navigate,action:{type:"prompt",prompt:e.prompt,title:e.title,workflow:e.workflow},isLoggedIn:e.isLoggedIn}))return!1;const c=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!c)return!1;const z=Le(c);return Fe(z,e.prompt),Te(z),e.openProject?.(c),e.touchCode?.(c),Re({variant:"success",title:`已为你创建「${e.title}」任务`}),e.navigate(Ee(c)),!0}function Ze(e){const c=$t(e.scenario),z=c[0];if(!z?.promptTemplate.trim()||!ze({navigate:e.navigate,action:{type:"scenario-run",scenarioId:e.scenario.id||e.scenario.scenario_id,values:e.values},isLoggedIn:e.isLoggedIn}))return!1;const n=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!n)return!1;const k=Le(n),F=Ne(e.scenario),I=F[0]?Be(e.scenario,F[0]):e.scenario.user_input,x=Je(e.scenario.user_input,e.values);return vt(k,{title:e.scenario.name,scenarioId:de(e.scenario),values:x,steps:c}),mt("todo"),Fe(k,_t(z,x,I)),Te(k),e.openProject?.(n),e.touchCode?.(n),Re({variant:"success",title:`已创建「${e.scenario.name}」`,description:`将按 ${c.length} 步自动依次执行,缺参或失败时暂停`}),e.navigate(Ee(n)),!0}function et(e){if(!ze({navigate:e.navigate,action:{type:"wizard",resourceId:e.resourceId,scenarioId:e.scenarioId,values:e.values,prompt:e.prompt},isLoggedIn:e.isLoggedIn}))return!1;const c=Xe(e.resourceId),z=c?.scenarios.find(F=>F.id===e.scenarioId);if(!c||!z||!Ye(c))return!1;const n=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!n)return!1;const k=Le(n);return Fe(k,e.prompt),Te(k),e.openProject?.(n),e.touchCode?.(n),Re({variant:"success",title:`已为你创建 ${c.name}「${z.title}」任务`}),e.navigate(Ee(n)),!0}function _e(e,c){return Qt(e.promptTemplate,c)}function Ue(e){return Object.fromEntries(e.fields.map(c=>[c.id,ha(c)]))}function ha(e){return e.default?.trim()?e.default:e.placeholder?.replace(/^例如[::]\s*/,"").trim()??""}function ba(){const e=ct(),c=ot(),[z]=dt(),n=ut(),k=pt(),F=gt(),I=ht(),x=()=>Xe(e.id??""),ue=()=>Ct(c.search),B=()=>St(c.search,{category:x()?.category??"onemodel",domain:x()?.domain??"materials"}),ye=()=>wt(e.id??"",ue()),[T,M]=Ke({scenarioId:"",values:{},prompt:""}),[H,ae]=Ge(""),A=()=>x()?.scenarios.find(l=>l.id===T.scenarioId),Q=E(()=>{const l=x();return l?ft({domain:l.domain,name:l.name,id:l.id,category:l.category}):[]}),ie=E(()=>{const l=H();if(l)return yt(l)??Q().find(p=>de(p)===l)}),pe=()=>({navigate:n,isLoggedIn:!!fe(),path:k.data.path,recent:xt(k.data.project),lastCodeWorkspace:I.projects.lastCode(),openProject:l=>F.projects.open(l),touchCode:l=>I.projects.touchCode(l)}),b=()=>{const l=A();l&&M("prompt",_e(l,T.values))};bt(()=>{const l=x();if(!l?.scenarios.length)return;const p=z.scenario,$=(p?l.scenarios.find(U=>U.id===p):void 0)??l.scenarios[0],P=Ue($);M({scenarioId:$.id,values:P,prompt:_e($,P)})});const O=l=>{const f=x()?.scenarios.find(P=>P.id===l);if(!f)return;ae("");const $=Ue(f);M({scenarioId:f.id,values:$,prompt:_e(f,$)})},Se=l=>{ae(l)},le=(l,p)=>{const f=A();if(!f)return;const $={...T.values,[l]:p};M({values:$,prompt:_e(f,$)})},ge=()=>{const l=x(),p=A();!l||!p||et({resourceId:l.id,scenarioId:p.id,values:{...T.values},prompt:T.prompt,...pe()})},he=(l,p)=>{Ze({scenario:l,values:p.values,...pe()})};return(()=>{var l=Jt();return t(l,i(h,{get when(){return x()},get fallback(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return Ae()},"aria-label":"关闭向导"}),(()=>{var p=Xt();return p.firstChild,t(p,i(K,{get href(){return Ae()},children:"返回能力中心"}),null),p})()]},children:p=>i(h,{get when(){return Ye(p())},get fallback(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return B()},"aria-label":"关闭向导"}),(()=>{var f=ea(),$=f.firstChild,P=$.firstChild,U=P.nextSibling;return U.nextSibling,t($,()=>p().name,U),t(f,i(K,{get href(){return B()},children:"返回模型库"}),null),f})()]},get children(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return B()},"aria-label":"关闭向导"}),(()=>{var f=Zt(),$=f.firstChild,P=$.firstChild,U=P.firstChild,be=$.nextSibling,$e=be.firstChild,J=$e.firstChild,re=J.nextSibling,ne=$e.nextSibling;ne.firstChild;var V=ne.nextSibling,Y=V.firstChild,ve=Y.firstChild,we=ve.nextSibling,se=Y.nextSibling,G=be.nextSibling,ce=G.firstChild;return t($,i(K,{class:"os-client-capability-wizard-intro-back",get href(){return ye()},get children(){return ua(p().category)}}),P),t(U,()=>pa(p().name)),t($,i(K,{class:"os-client-capability-wizard-close",get href(){return B()},"aria-label":"关闭",children:"×"}),null),t(re,i(N,{get each(){return p().scenarios},children:d=>(()=>{var v=ta(),m=v.firstChild,S=m.nextSibling;return v.$$click=()=>O(d.id),t(m,()=>d.title),t(S,()=>d.summary),C(R=>{var D=!H()&&T.scenarioId===d.id,W=!H()&&T.scenarioId===d.id;return D!==R.e&&v.classList.toggle("is-active",R.e=D),W!==R.t&&q(v,"aria-pressed",R.t=W),R},{e:void 0,t:void 0}),v})()}),null),t(re,i(h,{get when(){return Q().length>0},get children(){var d=Yt(),v=d.firstChild;return v.firstChild,t(v,()=>Q().length,null),t(d,i(N,{get each(){return Q()},children:m=>(()=>{var S=aa(),R=S.firstChild,D=R.nextSibling,W=D.nextSibling,X=W.firstChild,Z=X.nextSibling;return Z.nextSibling,S.$$click=()=>Se(de(m)),t(R,()=>m.name),t(D,()=>Qe(m.problem_and_applicability)),t(W,()=>m.scenario_id,X),t(W,()=>m.workflow_steps?.length||m.workflow.length,Z),C(j=>{var ee=H()===de(m),te=H()===de(m);return ee!==j.e&&S.classList.toggle("is-active",j.e=ee),te!==j.t&&q(S,"aria-pressed",j.t=te),j},{e:void 0,t:void 0}),S})()}),null),d}}),null),t(ne,i(h,{get when(){return A()},keyed:!0,get fallback(){return Oe()},children:d=>(()=>{var v=la(),m=v.firstChild,S=m.nextSibling,R=S.firstChild,D=R.nextSibling,W=D.firstChild,X=W.firstChild,Z=X.nextSibling,j=W.nextSibling,ee=j.firstChild,te=ee.nextSibling,oe=j.nextSibling,Ce=oe.firstChild,a=Ce.nextSibling,s=oe.nextSibling,u=s.firstChild,w=u.nextSibling;return t(m,i(N,{get each(){return d.fields},children:g=>(()=>{var y=na(),L=y.firstChild;return t(L,()=>g.label),t(y,i(h,{get when(){return g.multiline},get fallback(){return(()=>{var o=sa();return o.$$input=_=>le(g.id,_.currentTarget.value),C(()=>q(o,"placeholder",g.placeholder)),C(()=>o.value=T.values[g.id]??""),o})()},get children(){var o=ra();return o.$$input=_=>le(g.id,_.currentTarget.value),C(()=>q(o,"placeholder",g.placeholder)),C(()=>o.value=T.values[g.id]??""),o}}),null),y})()})),t(Z,()=>d.capabilitySummary.current),t(te,()=>d.capabilitySummary.keyConfig),t(a,()=>d.capabilitySummary.resources),t(w,()=>d.capabilitySummary.deliverables),t(v,i(h,{get when(){return d.requiredData?.length},get children(){var g=ia(),y=g.firstChild,L=y.nextSibling;return t(L,i(N,{get each(){return d.requiredData},children:o=>(()=>{var _=ca();return t(_,o),_})()})),g}}),null),v})()}),null),t(V,i(h,{get when(){return A()},keyed:!0,get fallback(){return Oe()},children:d=>[(()=>{var v=oa(),m=v.firstChild,S=m.nextSibling;return t(m,()=>d.title),t(S,()=>d.summary),v})(),(()=>{var v=da(),m=v.firstChild,S=m.nextSibling;return t(S,()=>d.expectedOutputs),v})()]}),Y),we.$$click=b,se.$$input=d=>M("prompt",d.currentTarget.value),t(G,i(K,{get href(){return B()},children:"返回能力中心"}),ce),ce.$$click=ge,C(()=>ce.disabled=!T.prompt.trim()),C(()=>se.value=T.prompt),f})(),i(h,{get when(){return ie()},children:f=>i(Bt,{get scenario(){return f()},onClose:()=>ae(""),onSubmit:$=>he(f(),$)})})]}})})),l})()}Ve(["click","input"]);const va=Object.freeze(Object.defineProperty({__proto__:null,CapabilityWizardPage:ba,startCapabilityPromptTask:ga,startCapabilityScenarioRunTask:Ze,startCapabilityWizardTask:et},Symbol.toStringTag,{value:"Module"}));export{Bt as S,Ze as a,et as b,ga as s,va as w};
|
|
1
|
+
import{d as Ve,c as Ge,at as Ke,cC as He,z as tt,D as E,cD as Ne,cE as Be,cF as at,cG as De,cH as xe,cI as it,an as me,i as t,aD as Qe,a as i,b as C,F as N,x as q,S as h,v as lt,cJ as rt,cK as nt,cL as qe,cM as st,t as r,cN as Je,cz as ct,O as ot,cO as dt,P as ut,L as pt,N as gt,K as ht,ag as bt,r as ze,h as ke,j as Ie,k as fe,l as Pe,m as Le,p as Fe,n as Te,o as Re,w as Ee,cP as $t,cQ as vt,aC as de,cR as mt,cS as _t,g as Xe,H as Ye,cT as ft,az as yt,aH as K,b6 as Ae,cA as St,aG as wt,cB as Ct,Q as xt}from"./index-CceAmj5n.js";var zt=r("<button type=button class=os-client-capability-wizard-papers-more>"),kt=r("<div class=os-client-capability-wizard-papers><h3>相关论文</h3><ul>"),It=r("<div class=os-client-capability-wizard-papers><h3>HPC 软件</h3><span>"),Pt=r("<p class=os-client-capability-wizard-note>工作目录与运行环境由系统自动识别,本步只需填写下列业务参数。"),Lt=r("<p class=os-client-capability-wizard-missing>还有 <!> 个必填参数未填,可先创建;缺口将由智能体追问,也可点左侧步骤提前补全。"),Ft=r("<small>"),Tt=r("<ul class=os-client-capability-wizard-output-list>"),Rt=r("<div class=os-client-capability-wizard-quality><strong>质量门禁</strong><p>"),Et=r('<div class=os-client-capability-wizard-overlay role=dialog aria-modal=true aria-label=场景向导><button type=button class=os-client-capability-wizard-backdrop aria-label=关闭场景></button><section class=os-client-capability-wizard-dialog><header class=os-client-capability-wizard-head><button type=button class=os-client-capability-wizard-intro-back>返回场景列表</button><div class=os-client-capability-wizard-head-title><h2></h2><p></p></div><button type=button class=os-client-capability-wizard-close aria-label=关闭>×</button></header><div class=os-client-capability-wizard-columns><aside class=os-client-capability-wizard-column aria-label=工作流><h3>工作流</h3><p class=os-client-capability-wizard-note>点击步骤查看对应参数与产出;创建后将自动按序执行。</p><ol class=os-client-capability-wizard-workflow></ol></aside><section class=os-client-capability-wizard-column aria-label=补充信息><div class=os-client-capability-wizard-column-head><h3>本步参数</h3><small>/<!> · 已填 <!>/</small></div><div class=os-client-capability-wizard-fields></div><div class=os-client-capability-wizard-step-nav><button type=button>上一步</button><button type=button>下一步</button></div></section><section class=os-client-capability-wizard-column aria-label="本步产出与 Prompt"><div class=os-client-capability-wizard-outputs aria-label=本步产出><div class=os-client-capability-wizard-outputs-head><span>本步产出</span></div></div><div class=os-client-capability-wizard-column-head><h3>本步 Prompt</h3><small>第 <!> 步</small></div><textarea class=os-client-capability-wizard-prompt rows=12 readonly></textarea></section></div><footer class=os-client-capability-wizard-footer><button type=button>返回能力中心</button><button type=button data-primary=true>创建任务并自动逐步执行'),Wt=r("<li><button type=button class=os-client-capability-wizard-step><span></span><div><p>"),jt=r('<li><a target=_blank rel="noopener noreferrer">'),Ht=r("<p>"),Dt=r("<div class=os-client-capability-wizard-step-banner><strong>"),qt=r("<p class=os-client-capability-wizard-note>本步无需额外用户参数。"),At=r("<em>*"),Mt=r("<textarea rows=3>"),Ot=r("<em class=os-client-capability-wizard-field-hint>,智能体将尝试自动修正"),Ut=r("<em class=os-client-capability-wizard-field-hint>未填时由智能体追问"),Vt=r("<label class=os-client-capability-wizard-field><span>"),Gt=r("<input type=text>"),Kt=r("<p class=os-client-capability-wizard-outputs-empty>本步暂无结构化产出清单。"),Nt=r("<li>");const Me=2;function Bt(e){const[c,z]=Ge(!1),[n,k]=Ke({values:He(e.scenario),activeStepIndex:0});tt(()=>{k({values:He(e.scenario),activeStepIndex:0}),z(!1)});const F=E(()=>Ne(e.scenario)),I=E(()=>F()[n.activeStepIndex]??F()[0]),x=E(()=>{const b=I();return b?Be(e.scenario,b):e.scenario.user_input}),ue=E(()=>at(e.scenario,n.values)),B=E(()=>x().filter(b=>De(b)?!String(n.values[xe(b)]??"").trim():!1)),ye=E(()=>x().filter(b=>String(n.values[xe(b)]??"").trim()).length),T=E(()=>{const O=I()?.prompt||e.scenario.ai_prompt?.template||"";return it(O,n.values)}),M=E(()=>I()?.outputs??[]),H=E(()=>(e.scenario.related_papers??[]).filter(b=>!!String(b.url??"").trim())),ae=E(()=>c()?H():H().slice(0,Me)),A=E(()=>Math.max(0,H().length-Me)),Q=(b,O)=>{k("values",b,O)},ie=b=>{k("activeStepIndex",b)},pe=()=>{const b=Je(e.scenario.user_input,n.values);k("values",b),e.onSubmit({values:b})};return(()=>{var b=Et(),O=b.firstChild,Se=O.nextSibling,le=Se.firstChild,ge=le.firstChild,he=ge.nextSibling,l=he.firstChild,p=l.nextSibling,f=he.nextSibling,$=le.nextSibling,P=$.firstChild,U=P.firstChild,be=U.nextSibling,$e=be.nextSibling,J=P.nextSibling,re=J.firstChild,ne=re.firstChild,V=ne.nextSibling,Y=V.firstChild,ve=Y.nextSibling,we=ve.nextSibling,se=we.nextSibling;se.nextSibling;var G=re.nextSibling,ce=G.nextSibling,d=ce.firstChild,v=d.nextSibling,m=J.nextSibling,S=m.firstChild,R=S.firstChild;R.firstChild;var D=S.nextSibling,W=D.firstChild,X=W.nextSibling,Z=X.firstChild,j=Z.nextSibling;j.nextSibling;var ee=D.nextSibling,te=$.nextSibling,oe=te.firstChild,Ce=oe.nextSibling;return me(O,"click",e.onClose,!0),me(ge,"click",e.onClose,!0),t(l,()=>e.scenario.name),t(p,()=>Qe(e.scenario.problem_and_applicability)),me(f,"click",e.onClose,!0),t($e,i(N,{get each(){return F()},children:(a,s)=>(()=>{var u=Wt(),w=u.firstChild,g=w.firstChild,y=g.nextSibling,L=y.firstChild;return w.$$click=()=>ie(s()),t(g,()=>s()+1),t(L,()=>a.name),C(()=>u.classList.toggle("is-active",n.activeStepIndex===s())),u})()})),t(P,i(h,{get when(){return H().length>0},get children(){var a=kt(),s=a.firstChild,u=s.nextSibling;return t(u,i(N,{get each(){return ae()},children:w=>(()=>{var g=jt(),y=g.firstChild;return t(y,()=>w.title),C(L=>{var o=w.url,_=w.title;return o!==L.e&&q(y,"href",L.e=o),_!==L.t&&q(y,"title",L.t=_),L},{e:void 0,t:void 0}),g})()})),t(a,i(h,{get when(){return A()>0},get children(){var w=zt();return w.$$click=()=>z(g=>!g),t(w,(()=>{var g=lt(()=>!!c());return()=>g()?"收起":`展开其余 ${A()} 篇`})()),w}}),null),C(()=>u.classList.toggle("is-expanded",!!(c()&&A()>0))),a}}),null),t(P,i(h,{get when(){return e.scenario.HPC},get children(){var a=It(),s=a.firstChild,u=s.nextSibling;return t(u,()=>e.scenario.HPC),a}}),null),t(V,()=>n.activeStepIndex+1,Y),t(V,()=>F().length,ve),t(V,ye,se),t(V,()=>x().length,null),t(J,i(h,{get when(){return I()},children:a=>(()=>{var s=Dt(),u=s.firstChild;return t(u,()=>a().name),t(s,i(h,{get when(){return a().purpose?.trim()},get children(){var w=Ht();return t(w,()=>a().purpose),w}}),null),s})()}),G),t(J,i(h,{get when(){return e.scenario.system_auto_detection?.fields?.length},get children(){return Pt()}}),G),t(J,i(h,{get when(){return B().length>0||ue().length>0},get children(){var a=Lt(),s=a.firstChild,u=s.nextSibling;return u.nextSibling,t(a,()=>ue().length,u),a}}),G),t(G,i(h,{get when(){return x().length>0},get fallback(){return qt()},get children(){return i(N,{get each(){return x()},children:a=>{const s=xe(a),u=De(a),w=u&&!String(n.values[s]??"").trim(),g=String(n.values[s]??"").trim()&&rt(a,n.values[s]??"");return(()=>{var y=Vt(),L=y.firstChild;return y.classList.toggle("is-required",!!u),y.classList.toggle("is-gap",!!w),t(L,()=>nt(a),null),t(L,i(h,{when:u,get children(){return At()}}),null),t(y,i(h,{get when(){return st(a)},get fallback(){return(()=>{var o=Gt();return o.$$input=_=>Q(s,_.currentTarget.value),C(_=>{var We=a.input_type==="int"||a.input_type==="float"?"decimal":void 0,je=qe(a);return We!==_.e&&q(o,"inputmode",_.e=We),je!==_.t&&q(o,"placeholder",_.t=je),_},{e:void 0,t:void 0}),C(()=>o.value=n.values[s]??""),o})()},get children(){var o=Mt();return o.$$input=_=>Q(s,_.currentTarget.value),C(()=>q(o,"placeholder",qe(a))),C(()=>o.value=n.values[s]??""),o}}),null),t(y,i(h,{when:g,get children(){var o=Ot(),_=o.firstChild;return t(o,g,_),o}}),null),t(y,i(h,{when:w,get children(){return Ut()}}),null),y})()}})}})),d.$$click=()=>ie(Math.max(0,n.activeStepIndex-1)),v.$$click=()=>ie(Math.min(F().length-1,n.activeStepIndex+1)),t(R,i(h,{get when(){return I()?.result_subfolder},get children(){var a=Ft();return t(a,()=>I()?.result_subfolder),C(()=>q(a,"title",I()?.result_subfolder)),a}}),null),t(S,i(h,{get when(){return M().length>0},get fallback(){return Kt()},get children(){var a=Tt();return t(a,i(N,{get each(){return M()},children:s=>(()=>{var u=Nt();return t(u,s),u})()})),a}}),null),t(S,i(h,{get when(){return I()?.quality_gate},get children(){var a=Rt(),s=a.firstChild,u=s.nextSibling;return t(u,()=>I()?.quality_gate),a}}),null),t(X,()=>n.activeStepIndex+1,j),me(oe,"click",e.onClose,!0),Ce.$$click=pe,C(a=>{var s=n.activeStepIndex<=0,u=n.activeStepIndex>=F().length-1;return s!==a.e&&(d.disabled=a.e=s),u!==a.t&&(v.disabled=a.t=u),a},{e:void 0,t:void 0}),C(()=>ee.value=T()),b})()}Ve(["click","input"]);function Qt(e,c){return e.replace(/\{\{(\w+)\}\}/g,(z,n)=>c[n]??"")}var Jt=r("<div class=os-client-capability-wizard-overlay role=dialog aria-modal=true aria-label=能力向导>"),Xt=r("<section class=os-client-capability-wizard-dialog><p>未找到该能力。"),Yt=r("<div class=os-client-capability-wizard-scenario-group><span>完整工作流场景 · "),Zt=r("<section class=os-client-capability-wizard-dialog><header class=os-client-capability-wizard-head><div class=os-client-capability-wizard-head-title><h2></h2></div></header><div class=os-client-capability-wizard-columns><aside class=os-client-capability-wizard-column aria-label=你想做什么?><h3>你想做什么?</h3><div class=os-client-capability-wizard-scenarios></div></aside><section class=os-client-capability-wizard-column aria-label=补充信息><h3>补充信息</h3></section><section class=os-client-capability-wizard-column aria-label=起始任务><div class=os-client-capability-wizard-column-head><h3>起始任务</h3><button type=button>重新生成</button></div><textarea class=os-client-capability-wizard-prompt rows=14></textarea></section></div><footer class=os-client-capability-wizard-footer><button type=button data-primary=true>创建任务"),ea=r("<section class=os-client-capability-wizard-dialog><p>「<!>」暂无 OneScience 源码或魔搭映射,当前不可使用。"),ta=r("<button type=button><strong></strong><p>"),aa=r("<button type=button><strong></strong><p></p><small> · <!> 步"),Oe=r("<p class=os-client-capability-wizard-empty>请先选择任务场景。"),ia=r("<div class=os-client-capability-wizard-required aria-label=该能力需要什么数据><h4>该能力需要什么数据</h4><ul>"),la=r("<div class=os-client-capability-wizard-middle><div class=os-client-capability-wizard-fields></div><div class=os-client-capability-wizard-summary aria-label=当前能力配置><h4>当前能力配置</h4><dl><div><dt>当前能力</dt><dd></dd></div><div><dt>关键配置</dt><dd></dd></div><div><dt>运行资源</dt><dd></dd></div><div><dt>交付结果</dt><dd>"),ra=r("<textarea rows=3>"),na=r("<label class=os-client-capability-wizard-field><span>"),sa=r("<input type=text>"),ca=r("<li>"),oa=r("<div class=os-client-capability-wizard-right-head><strong></strong><p>"),da=r("<div class=os-client-capability-wizard-outputs aria-label=预计产出><span>预计产出</span><p>");function ua(e){return e==="hpc"?"软件介绍":"模型介绍"}function pa(e){return`使用 ${e} 开始科研任务`}function ga(e){if(!ze({navigate:e.navigate,action:{type:"prompt",prompt:e.prompt,title:e.title,workflow:e.workflow},isLoggedIn:e.isLoggedIn}))return!1;const c=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!c)return!1;const z=Le(c);return Fe(z,e.prompt),Te(z),e.openProject?.(c),e.touchCode?.(c),Re({variant:"success",title:`已为你创建「${e.title}」任务`}),e.navigate(Ee(c)),!0}function Ze(e){const c=$t(e.scenario),z=c[0];if(!z?.promptTemplate.trim()||!ze({navigate:e.navigate,action:{type:"scenario-run",scenarioId:e.scenario.id||e.scenario.scenario_id,values:e.values},isLoggedIn:e.isLoggedIn}))return!1;const n=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!n)return!1;const k=Le(n),F=Ne(e.scenario),I=F[0]?Be(e.scenario,F[0]):e.scenario.user_input,x=Je(e.scenario.user_input,e.values);return vt(k,{title:e.scenario.name,scenarioId:de(e.scenario),values:x,steps:c}),mt("todo"),Fe(k,_t(z,x,I)),Te(k),e.openProject?.(n),e.touchCode?.(n),Re({variant:"success",title:`已创建「${e.scenario.name}」`,description:`将按 ${c.length} 步自动依次执行,缺参或失败时暂停`}),e.navigate(Ee(n)),!0}function et(e){if(!ze({navigate:e.navigate,action:{type:"wizard",resourceId:e.resourceId,scenarioId:e.scenarioId,values:e.values,prompt:e.prompt},isLoggedIn:e.isLoggedIn}))return!1;const c=Xe(e.resourceId),z=c?.scenarios.find(F=>F.id===e.scenarioId);if(!c||!z||!Ye(c))return!1;const n=ke({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||Ie(fe())||Pe(document,e.path);if(!n)return!1;const k=Le(n);return Fe(k,e.prompt),Te(k),e.openProject?.(n),e.touchCode?.(n),Re({variant:"success",title:`已为你创建 ${c.name}「${z.title}」任务`}),e.navigate(Ee(n)),!0}function _e(e,c){return Qt(e.promptTemplate,c)}function Ue(e){return Object.fromEntries(e.fields.map(c=>[c.id,ha(c)]))}function ha(e){return e.default?.trim()?e.default:e.placeholder?.replace(/^例如[::]\s*/,"").trim()??""}function ba(){const e=ct(),c=ot(),[z]=dt(),n=ut(),k=pt(),F=gt(),I=ht(),x=()=>Xe(e.id??""),ue=()=>Ct(c.search),B=()=>St(c.search,{category:x()?.category??"onemodel",domain:x()?.domain??"materials"}),ye=()=>wt(e.id??"",ue()),[T,M]=Ke({scenarioId:"",values:{},prompt:""}),[H,ae]=Ge(""),A=()=>x()?.scenarios.find(l=>l.id===T.scenarioId),Q=E(()=>{const l=x();return l?ft({domain:l.domain,name:l.name,id:l.id,category:l.category}):[]}),ie=E(()=>{const l=H();if(l)return yt(l)??Q().find(p=>de(p)===l)}),pe=()=>({navigate:n,isLoggedIn:!!fe(),path:k.data.path,recent:xt(k.data.project),lastCodeWorkspace:I.projects.lastCode(),openProject:l=>F.projects.open(l),touchCode:l=>I.projects.touchCode(l)}),b=()=>{const l=A();l&&M("prompt",_e(l,T.values))};bt(()=>{const l=x();if(!l?.scenarios.length)return;const p=z.scenario,$=(p?l.scenarios.find(U=>U.id===p):void 0)??l.scenarios[0],P=Ue($);M({scenarioId:$.id,values:P,prompt:_e($,P)})});const O=l=>{const f=x()?.scenarios.find(P=>P.id===l);if(!f)return;ae("");const $=Ue(f);M({scenarioId:f.id,values:$,prompt:_e(f,$)})},Se=l=>{ae(l)},le=(l,p)=>{const f=A();if(!f)return;const $={...T.values,[l]:p};M({values:$,prompt:_e(f,$)})},ge=()=>{const l=x(),p=A();!l||!p||et({resourceId:l.id,scenarioId:p.id,values:{...T.values},prompt:T.prompt,...pe()})},he=(l,p)=>{Ze({scenario:l,values:p.values,...pe()})};return(()=>{var l=Jt();return t(l,i(h,{get when(){return x()},get fallback(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return Ae()},"aria-label":"关闭向导"}),(()=>{var p=Xt();return p.firstChild,t(p,i(K,{get href(){return Ae()},children:"返回能力中心"}),null),p})()]},children:p=>i(h,{get when(){return Ye(p())},get fallback(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return B()},"aria-label":"关闭向导"}),(()=>{var f=ea(),$=f.firstChild,P=$.firstChild,U=P.nextSibling;return U.nextSibling,t($,()=>p().name,U),t(f,i(K,{get href(){return B()},children:"返回模型库"}),null),f})()]},get children(){return[i(K,{class:"os-client-capability-wizard-backdrop",get href(){return B()},"aria-label":"关闭向导"}),(()=>{var f=Zt(),$=f.firstChild,P=$.firstChild,U=P.firstChild,be=$.nextSibling,$e=be.firstChild,J=$e.firstChild,re=J.nextSibling,ne=$e.nextSibling;ne.firstChild;var V=ne.nextSibling,Y=V.firstChild,ve=Y.firstChild,we=ve.nextSibling,se=Y.nextSibling,G=be.nextSibling,ce=G.firstChild;return t($,i(K,{class:"os-client-capability-wizard-intro-back",get href(){return ye()},get children(){return ua(p().category)}}),P),t(U,()=>pa(p().name)),t($,i(K,{class:"os-client-capability-wizard-close",get href(){return B()},"aria-label":"关闭",children:"×"}),null),t(re,i(N,{get each(){return p().scenarios},children:d=>(()=>{var v=ta(),m=v.firstChild,S=m.nextSibling;return v.$$click=()=>O(d.id),t(m,()=>d.title),t(S,()=>d.summary),C(R=>{var D=!H()&&T.scenarioId===d.id,W=!H()&&T.scenarioId===d.id;return D!==R.e&&v.classList.toggle("is-active",R.e=D),W!==R.t&&q(v,"aria-pressed",R.t=W),R},{e:void 0,t:void 0}),v})()}),null),t(re,i(h,{get when(){return Q().length>0},get children(){var d=Yt(),v=d.firstChild;return v.firstChild,t(v,()=>Q().length,null),t(d,i(N,{get each(){return Q()},children:m=>(()=>{var S=aa(),R=S.firstChild,D=R.nextSibling,W=D.nextSibling,X=W.firstChild,Z=X.nextSibling;return Z.nextSibling,S.$$click=()=>Se(de(m)),t(R,()=>m.name),t(D,()=>Qe(m.problem_and_applicability)),t(W,()=>m.scenario_id,X),t(W,()=>m.workflow_steps?.length||m.workflow.length,Z),C(j=>{var ee=H()===de(m),te=H()===de(m);return ee!==j.e&&S.classList.toggle("is-active",j.e=ee),te!==j.t&&q(S,"aria-pressed",j.t=te),j},{e:void 0,t:void 0}),S})()}),null),d}}),null),t(ne,i(h,{get when(){return A()},keyed:!0,get fallback(){return Oe()},children:d=>(()=>{var v=la(),m=v.firstChild,S=m.nextSibling,R=S.firstChild,D=R.nextSibling,W=D.firstChild,X=W.firstChild,Z=X.nextSibling,j=W.nextSibling,ee=j.firstChild,te=ee.nextSibling,oe=j.nextSibling,Ce=oe.firstChild,a=Ce.nextSibling,s=oe.nextSibling,u=s.firstChild,w=u.nextSibling;return t(m,i(N,{get each(){return d.fields},children:g=>(()=>{var y=na(),L=y.firstChild;return t(L,()=>g.label),t(y,i(h,{get when(){return g.multiline},get fallback(){return(()=>{var o=sa();return o.$$input=_=>le(g.id,_.currentTarget.value),C(()=>q(o,"placeholder",g.placeholder)),C(()=>o.value=T.values[g.id]??""),o})()},get children(){var o=ra();return o.$$input=_=>le(g.id,_.currentTarget.value),C(()=>q(o,"placeholder",g.placeholder)),C(()=>o.value=T.values[g.id]??""),o}}),null),y})()})),t(Z,()=>d.capabilitySummary.current),t(te,()=>d.capabilitySummary.keyConfig),t(a,()=>d.capabilitySummary.resources),t(w,()=>d.capabilitySummary.deliverables),t(v,i(h,{get when(){return d.requiredData?.length},get children(){var g=ia(),y=g.firstChild,L=y.nextSibling;return t(L,i(N,{get each(){return d.requiredData},children:o=>(()=>{var _=ca();return t(_,o),_})()})),g}}),null),v})()}),null),t(V,i(h,{get when(){return A()},keyed:!0,get fallback(){return Oe()},children:d=>[(()=>{var v=oa(),m=v.firstChild,S=m.nextSibling;return t(m,()=>d.title),t(S,()=>d.summary),v})(),(()=>{var v=da(),m=v.firstChild,S=m.nextSibling;return t(S,()=>d.expectedOutputs),v})()]}),Y),we.$$click=b,se.$$input=d=>M("prompt",d.currentTarget.value),t(G,i(K,{get href(){return B()},children:"返回能力中心"}),ce),ce.$$click=ge,C(()=>ce.disabled=!T.prompt.trim()),C(()=>se.value=T.prompt),f})(),i(h,{get when(){return ie()},children:f=>i(Bt,{get scenario(){return f()},onClose:()=>ae(""),onSubmit:$=>he(f(),$)})})]}})})),l})()}Ve(["click","input"]);const va=Object.freeze(Object.defineProperty({__proto__:null,CapabilityWizardPage:ba,startCapabilityPromptTask:ga,startCapabilityScenarioRunTask:Ze,startCapabilityWizardTask:et},Symbol.toStringTag,{value:"Module"}));export{Bt as S,Ze as a,et as b,ga as s,va as w};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/yup-01-BtRq6dLN.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/yup-03-BHLEoqSS.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/yup-04-C7yadpJT.aac";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-
|
|
1
|
+
const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609231524/assets/yup-05-CuuaeyjC.aac";export{e as default};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const e={"command.category.suggested":"建议","command.category.view":"视图","command.category.project":"项目","command.category.provider":"提供商","command.category.server":"服务器","command.category.session":"会话","command.category.theme":"主题","command.category.language":"语言","command.category.file":"文件","command.category.context":"上下文","command.category.terminal":"终端","command.category.model":"模型","command.category.mcp":"MCP","command.category.agent":"智能体","command.category.permissions":"权限","command.category.workspace":"工作区","command.category.settings":"设置","theme.scheme.system":"系统","theme.scheme.light":"浅色","theme.scheme.dark":"深色","command.sidebar.toggle":"切换侧边栏","titlebar.sidebar.label":"会话列表","command.project.open":"打开项目","command.project.createFolder":"新建项目","command.project.upload":"上传本地文件到项目","command.provider.connect":"连接提供商","command.server.switch":"切换服务器","command.settings.open":"打开设置","command.session.previous":"上一个会话","command.session.next":"下一个会话","command.session.previous.unseen":"上一个未读会话","command.session.next.unseen":"下一个未读会话","command.session.archive":"归档会话","command.palette":"命令面板","command.theme.cycle":"切换主题","command.theme.set":"使用主题:{{theme}}","command.theme.scheme.cycle":"切换配色方案","command.theme.scheme.set":"使用配色方案:{{scheme}}","command.language.cycle":"切换语言","command.language.set":"使用语言:{{language}}","command.session.new":"新建会话","command.file.open":"打开文件","command.tab.close":"关闭标签页","command.context.addSelection":"将所选内容添加到上下文","command.context.addSelection.description":"添加当前文件中选中的行","command.input.focus":"聚焦输入框","command.terminal.toggle":"切换终端","command.fileTree.toggle":"切换文件树","command.fileTree.sync":"同步文件","command.fileTree.sync.description":"从磁盘刷新文件树和更改列表","command.review.toggle":"切换审查面板","command.terminal.new":"新建终端","command.terminal.new.description":"创建新的终端标签页","terminal.fullscreen.enter":"全屏终端","terminal.fullscreen.exit":"退出全屏","command.steps.toggle":"切换步骤","command.steps.toggle.description":"显示或隐藏当前消息的步骤","command.message.previous":"上一条消息","command.message.previous.description":"跳转到上一条用户消息","command.message.next":"下一条消息","command.message.next.description":"跳转到下一条用户消息","command.model.choose":"选择模型","command.model.choose.description":"选择不同的模型","command.mcp.toggle":"切换 MCPs","command.mcp.toggle.description":"切换 MCPs","command.agent.cycle":"切换智能体","command.agent.cycle.description":"切换到下一个智能体","command.agent.cycle.reverse":"反向切换智能体","command.agent.cycle.reverse.description":"切换到上一个智能体","command.model.variant.cycle":"切换思考强度","command.model.variant.cycle.description":"切换到下一个强度等级","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"自动接受权限","command.permissions.autoaccept.disable":"停止自动接受权限","command.workspace.toggle":"切换工作区","command.workspace.toggle.description":"在侧边栏启用或禁用多个工作区","command.session.undo":"撤销","command.session.undo.description":"撤销上一条消息","command.session.redo":"重做","command.session.redo.description":"重做上一条撤销的消息","command.session.compact":"精简会话","command.session.compact.description":"总结会话以减少上下文大小","command.session.fork":"从消息分叉","command.session.fork.description":"从之前的消息创建新会话","command.session.share":"分享会话","command.session.share.description":"分享此会话并将链接复制到剪贴板","command.session.unshare":"取消分享会话","command.session.unshare.description":"停止分享此会话","palette.search.placeholder":"搜索文件、命令和会话","palette.empty":"未找到结果","palette.group.commands":"命令","palette.group.files":"文件","dialog.provider.search.placeholder":"搜索提供商","dialog.provider.empty":"未找到提供商","dialog.provider.group.popular":"热门","dialog.provider.group.other":"其他","dialog.provider.tag.recommended":"推荐","dialog.provider.tag.connected":"已连接","dialog.provider.opencode.note":"使用 OpenCode Zen 或 API 密钥连接","dialog.provider.opencode.tagline":"可靠的优化模型","dialog.provider.opencodeGo.tagline":"适合所有人的低成本订阅","dialog.provider.anthropic.note":"使用 Claude Pro/Max 或 API 密钥连接","dialog.provider.copilot.note":"使用 Copilot 或 API 密钥连接","dialog.provider.openai.note":"远程/网页请用 headless 或 API 密钥;browser 登录仅限本机 OneCode","dialog.provider.google.note":"使用 Google 账号或 API 密钥连接","dialog.provider.openrouter.note":"使用 OpenRouter 账号或 API 密钥连接","dialog.provider.vercel.note":"使用 Vercel 账号或 API 密钥连接","dialog.model.select.title":"选择模型","dialog.model.search.placeholder":"搜索模型","dialog.model.empty":"未找到模型","dialog.model.manage":"管理模型","dialog.model.manage.description":"自定义模型选择器中显示的模型。","dialog.model.manage.provider.toggle":"切换所有 {{provider}} 模型","dialog.model.provider.edit":"编辑此提供商","dialog.model.unpaid.freeModels.title":"OpenCode 提供的免费模型","dialog.model.unpaid.addMore.title":"从热门提供商添加更多模型","dialog.provider.viewAll":"查看更多提供商","provider.connect.title":"连接 {{provider}}","provider.connect.title.anthropicProMax":"使用 Claude Pro/Max 登录","provider.connect.selectMethod":"选择 {{provider}} 的登录方式。","provider.connect.method.apiKey":"API 密钥","provider.connect.status.inProgress":"正在授权...","provider.connect.status.connecting":"正在连接...","provider.connect.status.waiting":"等待授权...","provider.connect.status.failed":"授权失败:{{error}}","provider.connect.apiKey.description":"输入你的 {{provider}} API 密钥以连接帐户,并在 OpenCode 中使用 {{provider}} 模型。","provider.connect.apiKey.label":"{{provider}} API 密钥","provider.connect.apiKey.placeholder":"API 密钥","provider.connect.apiKey.required":"API 密钥为必填项","provider.connect.opencodeZen.line1":"OpenCode Zen 为你提供一组精选的可靠优化模型,用于代码智能体。","provider.connect.opencodeZen.line2":"只需一个 API 密钥,你就能使用 Claude、GPT、Gemini、GLM 等模型。","provider.connect.opencodeZen.visit.prefix":"访问 ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":" 获取你的 API 密钥。","provider.connect.oauth.code.visit.prefix":"访问 ","provider.connect.oauth.code.visit.link":"此链接","provider.connect.oauth.code.visit.suffix":" 获取授权码,以连接你的帐户并在 OpenCode 中使用 {{provider}} 模型。","provider.connect.oauth.code.label":"{{method}} 授权码","provider.connect.oauth.code.placeholder":"授权码","provider.connect.oauth.code.required":"授权码为必填项","provider.connect.oauth.code.invalid":"授权码无效","provider.connect.oauth.auto.visit.prefix":"访问 ","provider.connect.oauth.auto.visit.link":"此链接","provider.connect.oauth.auto.visit.suffix":" 并输入以下代码,以连接你的帐户并在 OpenCode 中使用 {{provider}} 模型。","provider.connect.oauth.auto.confirmationCode":"确认码","provider.connect.toast.connected.title":"{{provider}} 已连接","provider.connect.toast.connected.description":"现在可以使用 {{provider}} 模型了。","provider.custom.title":"自定义提供商","provider.custom.description.prefix":"配置与 OpenAI 兼容的提供商。请查看","provider.custom.description.link":"提供商配置文档","provider.custom.description.suffix":"。","provider.custom.field.providerID.label":"提供商 ID","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"使用小写字母、数字、连字符或下划线","provider.custom.field.providerID.hint":"本条配置的内部标识。同一中转站配置多个模型时请使用不同标识以便区分,通常可保留自动生成的值。","provider.custom.field.name.label":"名称","provider.custom.field.name.placeholder":"我的 AI 提供商","provider.custom.field.name.hint":"列表里显示的名称。默认取基础 URL 的域名;内部标识会按地址自动生成。","provider.custom.field.providerID.readonly":"内部标识:{{id}}(编辑时不可更改)","provider.custom.field.baseURL.label":"基础 URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.baseURL.hint":"中转站 / OpenAI 兼容地址,一般以 /v1 结尾。","provider.custom.field.apiKey.label":"API 密钥","provider.custom.field.apiKey.placeholder":"API 密钥","provider.custom.field.apiKey.description":"可选。如果你通过请求头管理认证,可留空。","provider.custom.field.apiKey.hint":"中转站提供的密钥。多数情况下需要填写。","provider.custom.field.apiKey.keepPlaceholder":"留空则保持原密钥","provider.custom.field.apiKey.keepDescription":"可选。留空将保留已配置的 API 密钥。","provider.custom.field.apiKey.configuredHint":"已配置 API 密钥,留空将保持不变。重新填写会覆盖原密钥。","provider.custom.simple.hint":"填写中转站地址和 API 密钥,查询并勾选可用模型即可。名称可按需修改,默认取自地址域名。","provider.custom.advanced.show":"显示高级选项","provider.custom.advanced.hide":"隐藏高级选项","provider.custom.advanced.hint":"提供商 ID、显示名称与请求头为可选项;默认分别使用自动标识 / 域名 / 模型 ID。","provider.custom.models.label":"模型","provider.custom.models.id.label":"模型 ID","provider.custom.models.id.placeholder":"gpt-5.6-luna","provider.custom.models.id.hint":"可手动填写,或点击下方按钮从中转站 /v1/models 查询后勾选。","provider.custom.models.query":"查询当前中转站的可用模型","provider.custom.models.query.loading":"正在查询…","provider.custom.models.query.empty":"中转站未返回可用模型,请手动填写模型 ID。","provider.custom.models.query.needURL":"请先填写基础 URL。","provider.custom.models.query.needKey":"请先填写 API 密钥后再查询。","provider.custom.models.query.picked":"已选择 {{count}} 个模型","provider.custom.models.name.label":"显示名称","provider.custom.models.name.placeholder":"显示名称","provider.custom.models.name.section":"模型显示名称(可选)","provider.custom.models.name.hint":"出现在模型下拉里。留空则直接使用模型 ID。","provider.custom.models.remove":"移除模型","provider.custom.models.add":"添加模型","provider.custom.headers.label":"请求头(可选)","provider.custom.headers.hint":"多数中转站无需填写。仅在服务商要求额外 Header 时添加。","provider.custom.headers.key.label":"请求头","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"值","provider.custom.headers.value.placeholder":"value","provider.custom.headers.remove":"移除请求头","provider.custom.headers.add":"添加请求头","provider.custom.error.providerID.required":"提供商 ID 为必填项","provider.custom.error.providerID.format":"请使用小写字母、数字、连字符或下划线","provider.custom.error.providerID.exists":"该提供商 ID 已存在","provider.custom.error.name.required":"显示名称为必填项","provider.custom.error.baseURL.required":"基础 URL 为必填项","provider.custom.error.baseURL.format":"必须以 http:// 或 https:// 开头","provider.custom.error.required":"必填","provider.custom.error.duplicate":"重复","provider.custom.error.probe.auth":"API 密钥认证失败,未保存完整密钥。","provider.custom.error.probe.network":"无法连接基础 URL,请检查地址与网络。","provider.custom.error.probe.timeout":"连接超时,请检查基础 URL 与网络。","provider.custom.error.probe.failed":"提供商接口探测失败。","provider.custom.edit.title":"编辑自定义提供商","provider.custom.toast.updated.title":"{{provider}} 已更新","provider.custom.toast.updated.description":"后续调用将使用新的配置。","provider.disconnect.toast.disconnected.title":"{{provider}} 已断开连接","provider.disconnect.toast.disconnected.description":"{{provider}} 模型已不再可用。","model.tag.free":"免费","model.tag.limited":"限免","model.tag.latest":"最新","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"文本","model.input.image":"图像","model.input.audio":"音频","model.input.video":"视频","model.input.pdf":"pdf","model.tooltip.allows":"支持:{{inputs}}","model.tooltip.reasoning.allowed":"支持推理","model.tooltip.reasoning.none":"不支持推理","model.tooltip.context":"上下文上限 {{limit}}","common.search.placeholder":"搜索","common.goBack":"返回","common.goForward":"前进","common.loading":"加载中","common.loading.ellipsis":"...","common.cancel":"取消","common.confirm":"确认","common.confirming":"确认中...","common.connect":"连接","common.disconnect":"断开连接","common.continue":"提交","common.submit":"提交","common.save":"保存","common.saving":"保存中...","common.default":"默认","common.attachment":"附件","prompt.placeholder.shell":"输入 shell 命令... {{example}}","prompt.placeholder.normal":"使用 OneScience {{example}}","prompt.placeholder.simple":"使用 OneScience...","prompt.placeholder.summarizeComments":"总结评论…","prompt.placeholder.summarizeComment":"总结该评论…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"按 esc 退出","prompt.example.1":"修复代码库中的一个 TODO","prompt.example.2":"这个项目的技术栈是什么?","prompt.example.3":"修复失败的测试","prompt.example.4":"解释认证是如何工作的","prompt.example.5":"查找并修复安全漏洞","prompt.example.6":"为用户服务添加单元测试","prompt.example.7":"重构这个函数,让它更易读","prompt.example.8":"这个错误是什么意思?","prompt.example.9":"帮我调试这个问题","prompt.example.10":"生成 API 文档","prompt.example.11":"优化数据库查询","prompt.example.12":"添加输入校验","prompt.example.13":"创建一个新的组件用于...","prompt.example.14":"我该如何部署这个项目?","prompt.example.15":"审查我的代码并给出最佳实践建议","prompt.example.16":"为这个函数添加错误处理","prompt.example.17":"解释这个正则表达式","prompt.example.18":"把它转换成 TypeScript","prompt.example.19":"在整个代码库中添加日志","prompt.example.20":"哪些依赖已经过期?","prompt.example.21":"帮我写一个迁移脚本","prompt.example.22":"为这个接口实现缓存","prompt.example.23":"给这个列表添加分页","prompt.example.24":"创建一个 CLI 命令用于...","prompt.example.25":"这里的环境变量是怎么工作的?","prompt.popover.emptyResults":"没有匹配的结果","prompt.popover.emptyCommands":"没有匹配的命令","prompt.dropzone.label":"将文件拖放到此处","prompt.dropzone.file.label":"拖放以 @提及文件","prompt.slash.badge.custom":"自定义","prompt.slash.badge.skill":"技能","prompt.slash.badge.mcp":"mcp","prompt.context.active":"当前","prompt.context.includeActiveFile":"包含当前文件","prompt.context.removeActiveFile":"从上下文移除活动文件","prompt.context.removeFile":"从上下文移除文件","prompt.context.removeSkill":"从上下文移除技能","prompt.toast.skillUnavailable.description":"当前工作区未加载该技能,请确认技能已同步后再发送。","prompt.action.attachFile":"附加文件","prompt.attachment.remove":"移除附件","prompt.attachment.uploading":"正在上传文件…","prompt.attachment.uploadingProgress":"正在上传文件… {{progress}}%","prompt.attachment.uploadFailed":"文件上传失败","prompt.attachment.ready":"可以发送","prompt.attachment.unsupported":"当前模型不支持此附件","prompt.attachment.unavailable":"附件不可用","prompt.action.waitForAttachments":"请等待文件上传完成","prompt.action.unsupportedAttachments":"{{model}} 不支持 {{modalities}} 附件","prompt.upload.status.uploading":"上传中…","prompt.upload.status.success":"已上传","prompt.upload.status.error":"上传失败","prompt.upload.retry":"重试上传","prompt.upload.dismiss":"收起","prompt.toast.attachmentReadFailed.title":"读取附件失败","prompt.toast.attachmentReadFailed.description":"无法读取该文件,请重试或更换文件。","prompt.toast.attachmentUploadFailed.title":"文件上传失败","prompt.toast.attachmentUploadFailed.description":"无法上传该文件,请重试或更换文件。","prompt.toast.attachmentUploadFailed.multiple":`{{count}} 个文件上传失败:
|
|
2
|
-
{{details}}`,"prompt.toast.attachmentUploadFailed.more":"另外还有 {{count}} 个失败","prompt.toast.attachmentTooLarge.description":"对话框单文件上限 {{limit}}MB,当前约 {{size}}MB。","prompt.toast.folderNotAllowed.title":"不支持上传文件夹","prompt.toast.folderNotAllowed.description":"对话框只能传文件。请使用项目面板右侧 ⋯ 中的上传来传文件夹。","prompt.toast.attachmentsUploading.title":"附件仍在加载","prompt.toast.attachmentsUploading.description":"请等待所有附件加载完成后再发送。","prompt.toast.attachmentUnavailable.title":"附件不可用","prompt.toast.attachmentUnavailable.description":"请重新附加文件后再发送。","prompt.action.send":"发送","prompt.action.stop":"停止","prompt.toast.pasteUnsupported.title":"不支持的附件","prompt.toast.pasteUnsupported.description":"此处仅能附加文件。","prompt.toast.modelAgentRequired.title":"请选择智能体和模型","prompt.toast.modelAgentRequired.description":"发送提示前请先选择智能体和模型。","prompt.toast.remoteModelNotReady.title":"远端模型尚未就绪","prompt.toast.remoteModelNotReady.description":"连接已建立,模型列表还在从远端加载。请稍后再发送。","prompt.toast.worktreeCreateFailed.title":"创建工作树失败","prompt.toast.sessionCreateFailed.title":"创建会话失败","prompt.toast.shellSendFailed.title":"发送 shell 命令失败","prompt.toast.commandSendFailed.title":"发送命令失败","prompt.toast.promptSendFailed.title":"发送提示失败","prompt.toast.promptSendFailed.description":"无法获取会话","prompt.toast.unsupportedAttachment.title":"当前模型不支持该附件","prompt.toast.unsupportedAttachment.description":"{{model}} 不支持 {{modalities}} 输入。对于 PDF,请先提取文本,或切换到支持 PDF 的模型。","dialog.mcp.title":"MCPs","dialog.mcp.description":"已启用 {{enabled}} / {{total}}","dialog.mcp.empty":"未配置 MCPs","dialog.mcp.addTitle":"添加 MCP 服务器","dialog.mcp.editTitle":"编辑 MCP 服务器","dialog.mcp.addButton":"添加 MCP 服务器","dialog.mcp.form.hint":"按业界通用方式配置 MCP:本地 stdio(command + env)或远程 HTTP(url + headers
|
|
3
|
-
REGION=...`,"dialog.mcp.form.url":"服务器 URL","dialog.mcp.form.urlPlaceholder":"https://api.example.com/mcp","dialog.mcp.form.headers":"请求头(可选,每行 KEY=VALUE)","dialog.mcp.form.headersPlaceholder":"Authorization=Bearer ...","dialog.mcp.form.enabled":"保存后启用","dialog.mcp.form.enabledDescription":"保存后立即连接此 MCP 服务器。","dialog.mcp.error.name":"请填写服务器名称","dialog.mcp.error.command":"请填写本地启动命令","dialog.mcp.error.url":"请填写远程 URL","dialog.mcp.error.duplicate":"已存在同名 MCP 服务器","dialog.mcp.error.missingConfig":"无法加载该 MCP 配置进行编辑","dialog.mcp.toast.saved":"MCP 配置已保存","dialog.ssh.title":"SSH 配置","dialog.ssh.description":"配置供智能体提交远程作业使用的 SSH 目标(仅当前登录账号可见)。","dialog.ssh.empty":"未配置 SSH 目标","dialog.ssh.addTitle":"添加 SSH 配置","dialog.ssh.editTitle":"编辑 SSH 配置","dialog.ssh.error.missingConfig":"无法加载该 SSH 配置进行编辑","dialog.ssh.addButton":"添加 SSH 配置","dialog.ssh.import":"一键导入 SSH Config","dialog.ssh.importDescription":"粘贴 SSH Config 后自动填充 Host、HostName、端口、用户、密钥和远程目录。","dialog.ssh.importAction":"一键导入","dialog.ssh.importPlaceholder":"粘贴 SSH Config,例如 Host、HostName、Port、User、IdentityFile、# RemoteWorkDir","dialog.ssh.name":"配置名称","dialog.ssh.nameDescription":"在列表中显示的名称,用来区分多套 SSH 目标。","dialog.ssh.hostName":"服务器地址","dialog.ssh.hostNamePlaceholder":"1.2.3.4","dialog.ssh.hostNameDescription":"实际连接的 IP 或域名。例如 1.2.3.4 或 cluster.example.com。","dialog.ssh.username":"登录用户名","dialog.ssh.usernamePlaceholder":"ubuntu","dialog.ssh.usernameDescription":"SSH 登录账号,例如 ubuntu、root。","dialog.ssh.port":"端口","dialog.ssh.remotePath":"远程工作目录(可选)","dialog.ssh.remotePathDescription":"智能体登录后进入的目录。留空则使用 SSH 登录后的默认家目录。","dialog.ssh.auth":"认证方式","dialog.ssh.auth.key":"密钥文件","dialog.ssh.auth.keyDescription":"使用上传到 OneCode 服务端的私钥文件。","dialog.ssh.auth.password":"密码","dialog.ssh.auth.passwordDescription":"用 SSH 登录密码连接。密码保存在 OneCode 服务端配置中,不会写入 ~/.ssh/config。","dialog.ssh.password":"SSH 密码","dialog.ssh.passwordPlaceholder":"your-password","dialog.ssh.passwordHint":"仅用于当前 SSH 目标。集群允许密钥登录时建议改用密钥。","dialog.ssh.passwordRequired":"请填写 SSH 密码","dialog.ssh.keyRequired":"请上传或填写私钥文件","dialog.ssh.keyPath":"Identity File","dialog.ssh.keyPathPlaceholder":"服务器端密钥路径,选择文件后会立即上传并自动填入","dialog.ssh.identity.upload":"选择并上传 IdentityFile","dialog.ssh.identity.uploading":"上传中","dialog.ssh.identity.uploaded":"IdentityFile 已上传到服务器","dialog.ssh.identity.ingested":"已从 OneCode 服务器导入密钥","dialog.ssh.identity.uploadFailed":"IdentityFile 上传失败","dialog.ssh.identity.hint":"选择文件后会立即上传到服务器;测试使用上传后的服务器路径。","dialog.ssh.identity.missingTitle":"服务器上找不到密钥文件","dialog.ssh.identity.missingDescription":"一键导入的 IdentityFile 路径在当前 OneCode 服务器上不存在,请先上传密钥后再测试。","dialog.ssh.identity.missingEmpty":"未解析到 IdentityFile,请上传密钥后再测试。","dialog.ssh.identity.missingLocalPath":"后台未能读取该 IdentityFile(本机 Windows 路径服务器上不存在)。请点击「选择并上传 IdentityFile」手动选择后上传。","dialog.ssh.identity.pickPromptTitle":"密钥不在 OneCode 所在环境","dialog.ssh.identity.pickPromptDescription":"导入的 IdentityFile 无法在当前 OneCode 服务器上读取。请选择本机密钥文件并上传。","dialog.ssh.identity.pickPromptAction":"选择密钥文件","dialog.ssh.identity.pickPromptLater":"稍后","dialog.ssh.identity.missingUnverified":"无法确认服务器上的密钥文件是否存在,请先上传密钥后再测试。","dialog.ssh.identity.missingInline":"当前密钥在服务器上不可用,请先上传后再测试。","dialog.ssh.identity.needsUploadTitle":"请上传密钥文件","dialog.ssh.identity.needsUploadDescription":"本机已找到导入的 IdentityFile,请点击「选择并上传 IdentityFile」后再测试。","dialog.ssh.identity.needsUploadInline":"本机已找到该密钥,请先上传后再测试。","dialog.ssh.identity.notFoundTitle":"密钥文件不存在","dialog.ssh.identity.notFoundDescription":"本机找不到导入的 IdentityFile 路径,请选择正确的密钥文件并上传。","dialog.ssh.identity.notFoundInline":"本机找不到该密钥文件,请选择正确的密钥并上传。","dialog.ssh.options":"SSH 选项(每行 KEY=VALUE)","dialog.ssh.status.enabled":"已启用","dialog.ssh.status.disabled":"已禁用","dialog.ssh.required":"请填写配置名称、服务器地址、登录用户名和端口","dialog.ssh.portInvalid":"端口必须是 1-65535 的整数","dialog.ssh.connectivity.action":"检测连通性","dialog.ssh.connectivity.running":"检测中...","dialog.ssh.connectivity.progress":"检测中...({current}/{total})· {name}","dialog.ssh.connectivity.itemAction":"检测","dialog.ssh.connectivity.itemRunning":"检测中","dialog.ssh.test.action":"测试","dialog.ssh.test.running":"测试中","dialog.ssh.test.passed":"SSH 配置可用","dialog.ssh.test.failed":"SSH 配置不可用","dialog.ssh.test.description":"服务器已成功连接 SSH 目标,并确认远程工作目录可访问。","dialog.ssh.test.serverMissing":"当前 opencode server 未加载 SSH 测试接口,请重启 server 服务后再试。","dialog.ssh.test.detail.message":"原因","dialog.ssh.test.detail.stderr":"错误输出","dialog.ssh.test.detail.stdout":"标准输出","dialog.ssh.fixKnownHosts.action":"修复 known_hosts","dialog.ssh.fixKnownHosts.running":"修复中…","dialog.ssh.fixKnownHosts.done":"已重写 known_hosts 忽略并重新检测","dialog.ssh.fixKnownHosts.missing":"找不到要修复的 SSH 配置","dialog.ssh.fixPublicKey.action":"修复密钥认证","dialog.ssh.fixPublicKey.running":"修复中…","dialog.ssh.fixPublicKey.done":"密钥检查通过,连通性正常","dialog.ssh.fixPublicKey.failed":"密钥认证仍失败","dialog.ssh.fixPublicKey.missing":"找不到要修复的 SSH 配置","dialog.ssh.fixPublicKey.needKey":"未配置 IdentityFile,请上传私钥后再测","dialog.ssh.fixPublicKey.missingFile":"服务器上找不到密钥文件:{{path}}。请重新上传。","dialog.ssh.fixPublicKey.stillDenied":"本地密钥 {{path}} 可读,但远端仍拒绝公钥。请确认该私钥对应的公钥已写入远端 ~/.ssh/authorized_keys。详情:{{detail}}","dialog.ssh.toast.saved":"SSH 配置已保存","dialog.ssh.toast.removed":"SSH 配置已删除","dialog.ssh.usage.ok":"知道了","dialog.ssh.usage.connectedBanner":"以下项目正在连接此配置,请先断开后再重命名、禁用、删除或修改主机/用户/认证:{{projects}}","dialog.ssh.usage.blocked.title":"无法修改 SSH 配置","dialog.ssh.usage.blocked.delete.title":"无法删除 SSH 配置","dialog.ssh.usage.blocked.delete":"以下项目正在连接 SSH 配置「{{name}}」,请先断开:{{projects}}","dialog.ssh.usage.blocked.delete.bound":`以下项目仍绑定 SSH 配置「{{name}}」:
|
|
2
|
+
{{details}}`,"prompt.toast.attachmentUploadFailed.more":"另外还有 {{count}} 个失败","prompt.toast.attachmentTooLarge.description":"对话框单文件上限 {{limit}}MB,当前约 {{size}}MB。","prompt.toast.folderNotAllowed.title":"不支持上传文件夹","prompt.toast.folderNotAllowed.description":"对话框只能传文件。请使用项目面板右侧 ⋯ 中的上传来传文件夹。","prompt.toast.attachmentsUploading.title":"附件仍在加载","prompt.toast.attachmentsUploading.description":"请等待所有附件加载完成后再发送。","prompt.toast.attachmentUnavailable.title":"附件不可用","prompt.toast.attachmentUnavailable.description":"请重新附加文件后再发送。","prompt.action.send":"发送","prompt.action.stop":"停止","prompt.toast.pasteUnsupported.title":"不支持的附件","prompt.toast.pasteUnsupported.description":"此处仅能附加文件。","prompt.toast.modelAgentRequired.title":"请选择智能体和模型","prompt.toast.modelAgentRequired.description":"发送提示前请先选择智能体和模型。","prompt.toast.remoteModelNotReady.title":"远端模型尚未就绪","prompt.toast.remoteModelNotReady.description":"连接已建立,模型列表还在从远端加载。请稍后再发送。","prompt.toast.worktreeCreateFailed.title":"创建工作树失败","prompt.toast.sessionCreateFailed.title":"创建会话失败","prompt.toast.shellSendFailed.title":"发送 shell 命令失败","prompt.toast.commandSendFailed.title":"发送命令失败","prompt.toast.promptSendFailed.title":"发送提示失败","prompt.toast.promptSendFailed.description":"无法获取会话","prompt.toast.unsupportedAttachment.title":"当前模型不支持该附件","prompt.toast.unsupportedAttachment.description":"{{model}} 不支持 {{modalities}} 输入。对于 PDF,请先提取文本,或切换到支持 PDF 的模型。","dialog.mcp.title":"MCPs","dialog.mcp.description":"已启用 {{enabled}} / {{total}}","dialog.mcp.empty":"未配置 MCPs","dialog.mcp.addTitle":"添加 MCP 服务器","dialog.mcp.editTitle":"编辑 MCP 服务器","dialog.mcp.addButton":"添加 MCP 服务器","dialog.mcp.form.hint":"按业界通用方式配置 MCP:本地 stdio(command + env)或远程 HTTP(url + headers)。写入当前登录账号的配置,仅本人可见。远程项目需重新连接后才会加载新的 MCP。","dialog.mcp.form.name":"名称","dialog.mcp.form.namePlaceholder":"filesystem","dialog.mcp.form.transport":"连接类型","dialog.mcp.form.transport.local":"本地 (stdio)","dialog.mcp.form.transport.remote":"远程 (HTTP)","dialog.mcp.form.command":"启动命令","dialog.mcp.form.commandPlaceholder":"npx -y @modelcontextprotocol/server-filesystem /data","dialog.mcp.form.environment":"环境变量(可选,每行 KEY=VALUE)","dialog.mcp.form.environmentPlaceholder":`API_KEY=...
|
|
3
|
+
REGION=...`,"dialog.mcp.form.url":"服务器 URL","dialog.mcp.form.urlPlaceholder":"https://api.example.com/mcp","dialog.mcp.form.headers":"请求头(可选,每行 KEY=VALUE)","dialog.mcp.form.headersPlaceholder":"Authorization=Bearer ...","dialog.mcp.form.enabled":"保存后启用","dialog.mcp.form.enabledDescription":"保存后立即连接此 MCP 服务器。","dialog.mcp.error.name":"请填写服务器名称","dialog.mcp.error.command":"请填写本地启动命令","dialog.mcp.error.url":"请填写远程 URL","dialog.mcp.error.duplicate":"已存在同名 MCP 服务器","dialog.mcp.error.missingConfig":"无法加载该 MCP 配置进行编辑","dialog.mcp.toast.saved":"MCP 配置已保存","dialog.mcp.form.oauth":"OAuth","dialog.mcp.form.oauthDescription":"远程服务器默认尝试 OAuth。关闭后写入 oauth: false。","dialog.mcp.deleteConfirm":"删除 MCP 服务器 {{name}}?已连接的会话会在下次使用时断开它。","dialog.mcp.retry":"重试连接","dialog.mcp.card.tools":"工具","dialog.mcp.card.toolsEmpty":"已连接,但这个服务器没有暴露工具。","dialog.mcp.card.toolsPending":"保存后会按 OpenCode 的方式连接,并在这里列出工具。","mcp.status.needs_client_registration":"需要注册客户端","dialog.ssh.title":"SSH 配置","dialog.ssh.description":"配置供智能体提交远程作业使用的 SSH 目标(仅当前登录账号可见)。","dialog.ssh.empty":"未配置 SSH 目标","dialog.ssh.addTitle":"添加 SSH 配置","dialog.ssh.editTitle":"编辑 SSH 配置","dialog.ssh.error.missingConfig":"无法加载该 SSH 配置进行编辑","dialog.ssh.addButton":"添加 SSH 配置","dialog.ssh.import":"一键导入 SSH Config","dialog.ssh.importDescription":"粘贴 SSH Config 后自动填充 Host、HostName、端口、用户、密钥和远程目录。","dialog.ssh.importAction":"一键导入","dialog.ssh.importPlaceholder":"粘贴 SSH Config,例如 Host、HostName、Port、User、IdentityFile、# RemoteWorkDir","dialog.ssh.name":"配置名称","dialog.ssh.nameDescription":"在列表中显示的名称,用来区分多套 SSH 目标。","dialog.ssh.hostName":"服务器地址","dialog.ssh.hostNamePlaceholder":"1.2.3.4","dialog.ssh.hostNameDescription":"实际连接的 IP 或域名。例如 1.2.3.4 或 cluster.example.com。","dialog.ssh.username":"登录用户名","dialog.ssh.usernamePlaceholder":"ubuntu","dialog.ssh.usernameDescription":"SSH 登录账号,例如 ubuntu、root。","dialog.ssh.port":"端口","dialog.ssh.remotePath":"远程工作目录(可选)","dialog.ssh.remotePathDescription":"智能体登录后进入的目录。留空则使用 SSH 登录后的默认家目录。","dialog.ssh.auth":"认证方式","dialog.ssh.auth.key":"密钥文件","dialog.ssh.auth.keyDescription":"使用上传到 OneCode 服务端的私钥文件。","dialog.ssh.auth.password":"密码","dialog.ssh.auth.passwordDescription":"用 SSH 登录密码连接。密码保存在 OneCode 服务端配置中,不会写入 ~/.ssh/config。","dialog.ssh.password":"SSH 密码","dialog.ssh.passwordPlaceholder":"your-password","dialog.ssh.passwordHint":"仅用于当前 SSH 目标。集群允许密钥登录时建议改用密钥。","dialog.ssh.passwordRequired":"请填写 SSH 密码","dialog.ssh.keyRequired":"请上传或填写私钥文件","dialog.ssh.keyPath":"Identity File","dialog.ssh.keyPathPlaceholder":"服务器端密钥路径,选择文件后会立即上传并自动填入","dialog.ssh.identity.upload":"选择并上传 IdentityFile","dialog.ssh.identity.uploading":"上传中","dialog.ssh.identity.uploaded":"IdentityFile 已上传到服务器","dialog.ssh.identity.ingested":"已从 OneCode 服务器导入密钥","dialog.ssh.identity.uploadFailed":"IdentityFile 上传失败","dialog.ssh.identity.hint":"选择文件后会立即上传到服务器;测试使用上传后的服务器路径。","dialog.ssh.identity.missingTitle":"服务器上找不到密钥文件","dialog.ssh.identity.missingDescription":"一键导入的 IdentityFile 路径在当前 OneCode 服务器上不存在,请先上传密钥后再测试。","dialog.ssh.identity.missingEmpty":"未解析到 IdentityFile,请上传密钥后再测试。","dialog.ssh.identity.missingLocalPath":"后台未能读取该 IdentityFile(本机 Windows 路径服务器上不存在)。请点击「选择并上传 IdentityFile」手动选择后上传。","dialog.ssh.identity.pickPromptTitle":"密钥不在 OneCode 所在环境","dialog.ssh.identity.pickPromptDescription":"导入的 IdentityFile 无法在当前 OneCode 服务器上读取。请选择本机密钥文件并上传。","dialog.ssh.identity.pickPromptAction":"选择密钥文件","dialog.ssh.identity.pickPromptLater":"稍后","dialog.ssh.identity.missingUnverified":"无法确认服务器上的密钥文件是否存在,请先上传密钥后再测试。","dialog.ssh.identity.missingInline":"当前密钥在服务器上不可用,请先上传后再测试。","dialog.ssh.identity.needsUploadTitle":"请上传密钥文件","dialog.ssh.identity.needsUploadDescription":"本机已找到导入的 IdentityFile,请点击「选择并上传 IdentityFile」后再测试。","dialog.ssh.identity.needsUploadInline":"本机已找到该密钥,请先上传后再测试。","dialog.ssh.identity.notFoundTitle":"密钥文件不存在","dialog.ssh.identity.notFoundDescription":"本机找不到导入的 IdentityFile 路径,请选择正确的密钥文件并上传。","dialog.ssh.identity.notFoundInline":"本机找不到该密钥文件,请选择正确的密钥并上传。","dialog.ssh.options":"SSH 选项(每行 KEY=VALUE)","dialog.ssh.status.enabled":"已启用","dialog.ssh.status.disabled":"已禁用","dialog.ssh.required":"请填写配置名称、服务器地址、登录用户名和端口","dialog.ssh.portInvalid":"端口必须是 1-65535 的整数","dialog.ssh.connectivity.action":"检测连通性","dialog.ssh.connectivity.running":"检测中...","dialog.ssh.connectivity.progress":"检测中...({current}/{total})· {name}","dialog.ssh.connectivity.itemAction":"检测","dialog.ssh.connectivity.itemRunning":"检测中","dialog.ssh.test.action":"测试","dialog.ssh.test.running":"测试中","dialog.ssh.test.passed":"SSH 配置可用","dialog.ssh.test.failed":"SSH 配置不可用","dialog.ssh.test.description":"服务器已成功连接 SSH 目标,并确认远程工作目录可访问。","dialog.ssh.test.serverMissing":"当前 opencode server 未加载 SSH 测试接口,请重启 server 服务后再试。","dialog.ssh.test.detail.message":"原因","dialog.ssh.test.detail.stderr":"错误输出","dialog.ssh.test.detail.stdout":"标准输出","dialog.ssh.fixKnownHosts.action":"修复 known_hosts","dialog.ssh.fixKnownHosts.running":"修复中…","dialog.ssh.fixKnownHosts.done":"已重写 known_hosts 忽略并重新检测","dialog.ssh.fixKnownHosts.missing":"找不到要修复的 SSH 配置","dialog.ssh.fixPublicKey.action":"修复密钥认证","dialog.ssh.fixPublicKey.running":"修复中…","dialog.ssh.fixPublicKey.done":"密钥检查通过,连通性正常","dialog.ssh.fixPublicKey.failed":"密钥认证仍失败","dialog.ssh.fixPublicKey.missing":"找不到要修复的 SSH 配置","dialog.ssh.fixPublicKey.needKey":"未配置 IdentityFile,请上传私钥后再测","dialog.ssh.fixPublicKey.missingFile":"服务器上找不到密钥文件:{{path}}。请重新上传。","dialog.ssh.fixPublicKey.stillDenied":"本地密钥 {{path}} 可读,但远端仍拒绝公钥。请确认该私钥对应的公钥已写入远端 ~/.ssh/authorized_keys。详情:{{detail}}","dialog.ssh.toast.saved":"SSH 配置已保存","dialog.ssh.toast.removed":"SSH 配置已删除","dialog.ssh.usage.ok":"知道了","dialog.ssh.usage.connectedBanner":"以下项目正在连接此配置,请先断开后再重命名、禁用、删除或修改主机/用户/认证:{{projects}}","dialog.ssh.usage.blocked.title":"无法修改 SSH 配置","dialog.ssh.usage.blocked.delete.title":"无法删除 SSH 配置","dialog.ssh.usage.blocked.delete":"以下项目正在连接 SSH 配置「{{name}}」,请先断开:{{projects}}","dialog.ssh.usage.blocked.delete.bound":`以下项目仍绑定 SSH 配置「{{name}}」:
|
|
4
4
|
{{projects}}
|
|
5
5
|
请先删除这些远程项目后,再删除此配置。`,"dialog.ssh.usage.blocked.rename":"以下项目正在连接 SSH 配置「{{name}}」,无法重命名。请先断开:{{projects}}","dialog.ssh.usage.blocked.identity":"以下项目正在连接 SSH 配置「{{name}}」,无法修改主机、用户或认证。请先断开:{{projects}}","dialog.ssh.usage.blocked.disable":"以下项目正在连接 SSH 配置「{{name}}」,无法禁用。请先断开:{{projects}}","dialog.ssh.usage.confirm.delete.title":"删除 SSH 配置","dialog.ssh.usage.confirm.delete":"删除「{{name}}」后,以下远程项目仍保持远程绑定,但无法连接,直到重新添加同名配置:{{projects}}","dialog.ssh.usage.confirm.delete.empty":"确定删除 SSH 配置「{{name}}」?","dialog.ssh.usage.confirm.rename":"将把以下项目的绑定从「{{from}}」更新为「{{to}}」:{{projects}}","dialog.ssh.usage.confirm.identity":"保存后,以下项目下次连接将使用新的主机/用户/认证;各项目记录的远程路径不变:{{projects}}","dialog.ssh.usage.confirm.disable":"禁用后,以下已绑定项目将无法连接,直到重新启用:{{projects}}","dialog.ssh.usage.confirm.save":"确认保存 SSH 配置","dialog.lsp.empty":"已从文件类型自动检测到 LSPs","dialog.plugins.empty":"在 opencode.json 中配置的插件","mcp.status.connected":"已连接","mcp.status.failed":"失败","mcp.status.needs_auth":"需要授权","mcp.status.disabled":"已禁用","dialog.fork.empty":"没有可用于分叉的消息","dialog.directory.search.placeholder":"搜索文件夹","dialog.directory.empty":"未找到文件夹","dialog.directory.browse":"工作区项目","dialog.directory.other":"其他项目","dialog.server.title":"后端连接","dialog.server.description":"切换此应用连接的 OneCode 后端(高级)。","dialog.server.search.placeholder":"搜索后端","dialog.server.empty":"暂无后端连接","dialog.server.group.http":"本地/HTTP","dialog.server.group.ssh":"SSH 配置","dialog.server.group.mcp":"MCP 工具","dialog.server.mcp.description":"MCP 是工具连接,作为远程执行和部署能力提供给会话使用。","dialog.server.mcp.manage":"管理 MCP","dialog.server.ssh.add":"新增 SSH 配置","dialog.server.add.title":"添加后端","dialog.server.add.url":"后端地址 (URL)","dialog.server.add.placeholder":"http://127.0.0.1:4096","dialog.server.add.error":"无法连接到后端","dialog.server.add.checking":"检查中...","dialog.server.add.button":"添加后端地址","dialog.server.add.name":"名称(可选)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Basic 用户名(通常留空)","dialog.server.add.password":"访问令牌 / 密码(可选)","dialog.server.add.usernamePlaceholder":"仅当服务端用了 --username 时填写","dialog.server.add.passwordPlaceholder":"远程服务器可选密码","dialog.server.add.auth.hint":"日常使用可全部留空。仅当连接需要 HTTP Basic 认证的远程服务器时,再填写「访问令牌 / 密码」;通常不要填用户名。","dialog.server.edit.title":"编辑后端","dialog.server.default.title":"默认后端","dialog.server.default.description":"应用启动时连接此后端,而不是启动本地服务。需要重启。","dialog.server.default.none":"未选择后端","dialog.server.default.set":"将当前后端设为默认","dialog.server.default.clear":"清除","dialog.server.action.remove":"移除后端","dialog.server.menu.edit":"编辑","dialog.server.menu.reconnect":"重连","dialog.server.menu.default":"设为默认","dialog.server.menu.defaultRemove":"取消默认","dialog.server.menu.delete":"删除","dialog.server.current":"当前后端","dialog.server.status.default":"默认","dialog.project.createFolder.name":"文件夹名称","dialog.project.createFolder.placeholder":"例如 my_proj 或 team/proj","dialog.project.createFolder.path":"将创建在 {{path}}","dialog.project.createFolder.existing.title":"已有文件夹","dialog.project.createFolder.existing.inParent":"「{{parent}}」下已有文件夹","dialog.project.createFolder.existing.empty":"此层级暂无同级文件夹","dialog.project.createFolder.error.exists":"文件夹「{{name}}」已存在,请换一个名称。","dialog.project.createFolder.error.invalid":"名称无效,请使用字母、数字、下划线或连字符,可用 / 创建子目录。","dialog.project.createFolder.error.permission":"没有权限在此位置创建文件夹。","dialog.project.createFolder.error.server":"服务器错误({{status}}),请稍后重试。","dialog.project.createFolder.error.network":"请求失败,请检查网络连接后重试。","dialog.project.createFolder.failed":"无法创建文件夹,可能已存在或名称无效。","dialog.project.createFolder.environment":"执行环境","dialog.project.createFolder.nameAsFolder":"此文件夹将作为项目使用。","dialog.project.createFolder.nameRemote":"项目名称","dialog.project.createFolder.localIdentityUnique":"本地已有同名文件夹,将另建独立项目对应远端,远端路径不变。","dialog.project.createFolder.remotePath":"远端项目路径","dialog.project.createFolder.remotePathPlaceholder":"例如 ~/onecode_remote/workspaces/alice/my_proj","dialog.project.createFolder.remotePathEdit":"修改","dialog.project.createFolder.remotePathReset":"恢复默认","dialog.project.environment.title":"项目执行环境","dialog.project.environment.hint":"这是项目级设置,会影响该项目下所有新建会话。已绑定其它环境的会话不能继续提问。","dialog.project.environment.disconnectWarning":"当前仍连着远端 {{target}}。确认后会断开远端进程,该项目下其它远端会话将无法继续提问(仍可查看已同步的记录)。","sidebar.project.environment":"执行环境","session.environment.mismatch":"此会话的执行环境与项目不一致,不能继续提问。请新建会话。","session.environment.session":"本会话","session.environment.project":"项目","session.environment.align":"对齐到本会话","session.environment.align.title":"对齐项目执行环境","session.environment.align.body":"这会修改整个项目的执行环境,不只是当前会话。项目环境将改为「{{env}}」。绑定其它环境的会话将无法继续提问。","session.environment.align.disconnect":"当前仍连着远端 {{target}},确认后会断开远端进程。","session.environment.align.confirm":"确认对齐","session.environment.connectFirst":"远端未连接,无法继续对话。请先连接后再输入。","session.environment.copy":"复制路径","session.environment.copied":"已复制路径","session.environment.copyFailed":"复制失败","dialog.project.upload.destinationLabel":"上传目标(当前项目目录)","dialog.project.upload.eyebrow":"工作区上传","dialog.project.upload.destinationHint":"将把这台电脑上选择的文件或文件夹上传到该项目路径下(OneCode 所在环境)。","dialog.project.upload.destinationRisk":"当前目标不在账号默认工作区内。同机其他账号若知道路径,可能读取或覆盖该目录中的文件,请确认路径与权限后再上传。","dialog.project.upload.pickFiles":"选择文件","dialog.project.upload.pickFolder":"选择文件夹","dialog.project.upload.summary":"{{count}} 项 · {{size}}","dialog.project.upload.folderSummary":"文件夹 {{folder}} · {{count}} 个文件 · {{size}}","dialog.project.upload.folderHint":"将上传整个文件夹及其内容,确认后按文件数量逐个传输。","dialog.project.upload.moreFiles":"…还有 {{count}} 项","dialog.project.upload.tooManyFiles":"所选 {{selected}} 个文件超过上限 {{max}},仅保留前 {{max}} 个。","dialog.project.upload.truncatedHint":"已截断到最多 {{max}} 个文件。","dialog.project.upload.fileTooLarge":"「{{path}}」大小为 {{size}},超过单文件上限 {{max}}。更大文件请放到工作区路径后点「接入」登记。","dialog.project.upload.totalTooLarge":"本次合计 {{size}},超过浏览器上传上限 {{max}}。更大数据请放到工作区路径后点「接入」登记。","dialog.project.upload.diskSpace":"可用空间:{{space}}","dialog.project.upload.diskInsufficient":"所选内容超过可用磁盘空间。","dialog.project.upload.overwrite":"覆盖已存在的文件","dialog.project.upload.progress":"正在上传 {{done}} / {{total}}","dialog.project.upload.confirm":"确认上传","dialog.project.upload.uploading":"上传中…","dialog.project.upload.failed":"上传失败","dialog.project.upload.partialFailed":"完成 {{written}},跳过 {{skipped}},失败 {{failed}}。","toast.project.upload.success":"已上传 {{written}} 个文件,跳过 {{skipped}} 个","dialog.project.edit.title":"编辑项目","dialog.project.edit.name":"名称","dialog.project.edit.icon":"图标","dialog.project.edit.icon.alt":"项目图标","dialog.project.edit.icon.hint":"点击或拖拽图片","dialog.project.edit.icon.recommended":"建议:128x128px","dialog.project.edit.color":"颜色","dialog.project.edit.color.select":"选择{{color}}颜色","dialog.project.edit.worktree.startup":"工作区启动脚本","dialog.project.edit.worktree.startup.description":"在创建新的工作区 (worktree) 后运行。","dialog.project.edit.worktree.startup.placeholder":"例如 bun install","dialog.project.rename.title":"重命名项目","dialog.project.rename.name":"项目名称","dialog.project.rename.path":"项目路径 {{path}}","context.breakdown.title":"上下文拆分","context.breakdown.note":"输入 token 的大致拆分。“其他”包含工具定义和开销。","context.breakdown.system":"系统","context.breakdown.user":"用户","context.breakdown.assistant":"助手","context.breakdown.tool":"工具调用","context.breakdown.other":"其他","context.systemPrompt.title":"系统提示词","context.rawMessages.title":"原始消息","context.stats.session":"会话","context.stats.messages":"消息数","context.stats.provider":"提供商","context.stats.model":"模型","context.stats.limit":"上下文限制","context.stats.totalTokens":"总 token","context.stats.usage":"使用率","context.stats.inputTokens":"输入 token","context.stats.outputTokens":"输出 token","context.stats.reasoningTokens":"推理 token","context.stats.cacheTokens":"缓存 token(读/写)","context.stats.userMessages":"用户消息","context.stats.assistantMessages":"助手消息","context.stats.totalCost":"总成本","context.stats.sessionCreated":"创建时间","context.stats.lastActivity":"最后活动","context.usage.tokens":"Token","context.usage.usage":"使用率","context.usage.cost":"成本","context.usage.clickToView":"点击查看上下文","context.usage.view":"查看上下文用量","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"语言","toast.language.description":"已切换到{{language}}","toast.theme.title":"主题已切换","toast.scheme.title":"颜色方案","toast.workspace.enabled.title":"工作区已启用","toast.workspace.enabled.description":"侧边栏现在显示多个工作树","toast.workspace.disabled.title":"工作区已禁用","toast.workspace.disabled.description":"侧边栏只显示主工作树","toast.permissions.autoaccept.on.title":"正在自动接受权限","toast.permissions.autoaccept.on.description":"权限请求将被自动批准","toast.permissions.autoaccept.off.title":"已停止自动接受权限","toast.permissions.autoaccept.off.description":"权限请求将需要批准","toast.model.none.title":"未选择模型","toast.model.none.description":"请先连接提供商以总结此会话","toast.provider.catalogLoading.title":"正在加载模型目录","toast.provider.catalogLoading.description":"正在拉取厂商与模型列表,可能需要几秒…","toast.file.loadFailed.title":"加载文件失败","toast.file.listFailed.title":"列出文件失败","toast.file.remoteNotReady.description":"远端正在初始化,请稍后再试","toast.context.noLineSelection.title":"未选择行","toast.context.noLineSelection.description":"请先在文件标签中选择行范围。","toast.session.share.copyFailed.title":"无法复制链接到剪贴板","toast.session.share.success.title":"会话已分享","toast.session.share.success.description":"分享链接已复制到剪贴板","toast.session.share.failed.title":"分享会话失败","toast.project.copyPath.failed":"无法复制路径到剪贴板","toast.session.share.failed.description":"分享会话时发生错误","toast.session.unshare.success.title":"已取消分享会话","toast.session.unshare.success.description":"会话已成功取消分享","toast.session.unshare.failed.title":"取消分享失败","toast.session.unshare.failed.description":"取消分享会话时发生错误","toast.session.listFailed.title":"无法加载 {{project}} 的会话","toast.update.title":"有可用更新","toast.update.description":"OneCode 有新版本 ({{version}}) 可安装。","toast.update.action.installRestart":"安装并重启","toast.update.action.notYet":"稍后","error.page.title":"出了点问题","error.page.description":"加载应用程序时发生错误。","error.page.details.label":"错误详情","error.page.action.restart":"重启","error.page.action.report":"上报错误","error.page.action.reported":"错误已上报","error.page.action.checking":"检查中...","error.page.action.checkUpdates":"检查更新","error.page.action.updateTo":"更新到 {{version}}","error.page.report.prefix":"请将此错误报告给 OpenCode 团队","error.page.report.discord":"在 Discord 上","error.page.version":"版本:{{version}}","error.dev.rootNotFound":"未找到根元素。你是不是忘了把它添加到 index.html?或者 id 属性拼写错了?","error.globalSync.connectFailed":"无法连接到服务器。是否有服务器正在 `{{url}}` 运行?","directory.error.invalidUrl":"URL 中的目录无效。","error.chain.unknown":"未知错误","error.chain.causedBy":"原因:","error.chain.apiError":"API 错误","error.chain.status":"状态:{{status}}","error.chain.retryable":"可重试:{{retryable}}","error.chain.responseBody":`响应内容:
|
|
6
6
|
{{body}}`,"error.chain.didYouMean":"你是不是想输入:{{suggestions}}","error.chain.modelNotFound":"未找到模型:{{provider}}/{{model}}","error.chain.checkConfig":"请检查你的配置 (opencode.json) 中的 provider/model 名称","error.chain.mcpFailed":'MCP 服务器 "{{name}}" 启动失败。注意: OpenCode 暂不支持 MCP 认证。',"error.chain.providerAuthFailed":"提供商认证失败({{provider}}):{{message}}","error.chain.providerInitFailed":'无法初始化提供商 "{{provider}}"。请检查凭据和配置。',"error.chain.configJsonInvalid":"配置文件 {{path}} 不是有效的 JSON(C)","error.chain.configJsonInvalidWithMessage":"配置文件 {{path}} 不是有效的 JSON(C):{{message}}","error.chain.configDirectoryTypo":'{{path}} 中的目录 "{{dir}}" 无效。请将目录重命名为 "{{suggestion}}" 或移除它。这是一个常见拼写错误。',"error.chain.configFrontmatterError":`无法解析 {{path}} 中的 frontmatter:
|