@onescience/onecode-web 1.14.50-202609020913 → 1.14.50-202609020932

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.
Files changed (105) hide show
  1. package/assets/account-system-CdLg3pKW.js +1 -0
  2. package/assets/{alert-05-D1IWFO_i.js → alert-01-BOoRj25G.js} +1 -1
  3. package/assets/{alert-01-ImzJnM2f.js → alert-02-Bkr1qirU.js} +1 -1
  4. package/assets/{alert-02-DM5DjRTn.js → alert-04-Cntc_GD0.js} +1 -1
  5. package/assets/{alert-04-BOZydbs5.js → alert-05-Bl8njajc.js} +1 -1
  6. package/assets/alert-06-DKcTO8SC.js +1 -0
  7. package/assets/alert-07-DuaaPhy4.js +1 -0
  8. package/assets/alert-08-Db7RcnOO.js +1 -0
  9. package/assets/alert-10-CWJZrK2o.js +1 -0
  10. package/assets/ar-CRS0YItR.js +3 -0
  11. package/assets/{bip-bop-03-CdTAnbed.js → bip-bop-03-uhYGDH17.js} +1 -1
  12. package/assets/{bip-bop-04-2YPkB6EQ.js → bip-bop-04-Bh4cNFTB.js} +1 -1
  13. package/assets/{bip-bop-06-CAXCdaqV.js → bip-bop-06-Cw-vGoPK.js} +1 -1
  14. package/assets/{bip-bop-08-CGLaYnIr.js → bip-bop-08-CmxH5qOK.js} +1 -1
  15. package/assets/bip-bop-09-Tl9LULYQ.js +1 -0
  16. package/assets/br-C2b1ZzN8.js +3 -0
  17. package/assets/bs-DlPORdH0.js +3 -0
  18. package/assets/catalog-Cz3JtNfO.js +273 -0
  19. package/assets/center-DbXC0qGn.js +1 -0
  20. package/assets/da-CgZKWPLe.js +3 -0
  21. package/assets/de-WHP5Q3QL.js +3 -0
  22. package/assets/dialog-edit-project-DK9kgMU9.js +1 -0
  23. package/assets/dialog-fork-BQprfhHP.js +1 -0
  24. package/assets/dialog-project-upload-bq54ULi_.js +2 -0
  25. package/assets/dialog-select-file-BIwldBl-.js +1 -0
  26. package/assets/dialog-select-model-PdGraPN8.js +2 -0
  27. package/assets/dialog-terminal-unavailable-DjjbI2FV.js +3 -0
  28. package/assets/docs-CGjz1sDz.js +1 -0
  29. package/assets/es-BNvaGpG5.js +3 -0
  30. package/assets/fr-C1I6lhhO.js +3 -0
  31. package/assets/ghostty-web-CW4JZJ_z.js +13 -0
  32. package/assets/home-AeX4sJBp.js +1 -0
  33. package/assets/index-BA1jwG_A.js +2494 -0
  34. package/assets/index-Bpc6ia3z.css +1 -0
  35. package/assets/intro-CaWNHH2V.js +1 -0
  36. package/assets/ja-CTlM540D.js +3 -0
  37. package/assets/ko-BXzqqq2m.js +3 -0
  38. package/assets/no-CGCSQg0e.js +3 -0
  39. package/assets/{nope-02-Rk-bufQI.js → nope-02-BejrPVJn.js} +1 -1
  40. package/assets/{nope-05-Bj_PwYFA.js → nope-05-B6HACZcF.js} +1 -1
  41. package/assets/{nope-08-CWtWXclo.js → nope-08-CUZdkhuT.js} +1 -1
  42. package/assets/{nope-11-BIRm-gY5.js → nope-11-HqRoevb2.js} +1 -1
  43. package/assets/nope-12-CjOQ8jCx.js +1 -0
  44. package/assets/onescience/onescience-logo.png +0 -0
  45. package/assets/onescience-BpKf7M0Q.js +82 -0
  46. package/assets/onescience-docs-CH5KBTI9.js +1 -0
  47. package/assets/onescience-skill-detail-dialog-CPXWVuLj.js +1 -0
  48. package/assets/pl-Cb8jpwrH.js +3 -0
  49. package/assets/resources-CMhdiU1T.js +2 -0
  50. package/assets/ru-0WdMlTHS.js +3 -0
  51. package/assets/shell-BH0laPPE.js +2 -0
  52. package/assets/skills-Dsu1SSpr.js +1 -0
  53. package/assets/{staplebops-03-Dv8q46Xf.js → staplebops-03-BFNSaaN1.js} +1 -1
  54. package/assets/{staplebops-04-Djf2xuEn.js → staplebops-04-C1lCJhbW.js} +1 -1
  55. package/assets/{staplebops-06-Dc23JLVv.js → staplebops-06-Cj3ptVIB.js} +1 -1
  56. package/assets/{staplebops-07-BPycXvWV.js → staplebops-07-BbrHCuYa.js} +1 -1
  57. package/assets/status-popover-body-DIJtSAoV.js +2 -0
  58. package/assets/th-De3uKpxt.js +3 -0
  59. package/assets/tr-CgwEwxOR.js +3 -0
  60. package/assets/wizard-BsJBhDp_.js +1 -0
  61. package/assets/{yup-01-BCft7bMi.js → yup-01-CZlscUiz.js} +1 -1
  62. package/assets/{yup-03-BELNb0mF.js → yup-03-_cQ6zYSx.js} +1 -1
  63. package/assets/{yup-04-CXuIcnhN.js → yup-04-Dy9AqZzo.js} +1 -1
  64. package/assets/{yup-05-CMLdNtGP.js → yup-05-WrE2LRAl.js} +1 -1
  65. package/assets/zh-Dqvial9G.js +5 -0
  66. package/assets/zht-D5OqTOhl.js +4 -0
  67. package/index.html +11 -11
  68. package/package.json +2 -2
  69. package/workbench-shell-preview.html +88 -0
  70. package/assets/account-system-BUUxUyj2.js +0 -1
  71. package/assets/alert-06-DLolO-kG.js +0 -1
  72. package/assets/alert-07-CFbEfR4h.js +0 -1
  73. package/assets/alert-08-CGO5F2Ie.js +0 -1
  74. package/assets/alert-10-z3R22nyn.js +0 -1
  75. package/assets/ar-ngSPIv5X.js +0 -3
  76. package/assets/bip-bop-09-N00EcNSI.js +0 -1
  77. package/assets/br-DxpogF86.js +0 -3
  78. package/assets/bs-CqJGNDi-.js +0 -3
  79. package/assets/da-DF3QwPzK.js +0 -3
  80. package/assets/de-D5xa6B41.js +0 -3
  81. package/assets/dialog-create-project-folder-CMPt3ozV.js +0 -1
  82. package/assets/dialog-edit-project-DoL-Ez7C.js +0 -1
  83. package/assets/dialog-fork-CE0DvWUd.js +0 -1
  84. package/assets/dialog-project-upload-Ci2jAnxe.js +0 -2
  85. package/assets/dialog-select-directory-Bp3ZhnZ3.js +0 -4
  86. package/assets/dialog-select-file-DGRyOXkY.js +0 -1
  87. package/assets/dialog-select-mcp-CPyIwRn3.js +0 -2
  88. package/assets/dialog-select-model-BDamoYUk.js +0 -2
  89. package/assets/dialog-terminal-unavailable-ZrAz6UCQ.js +0 -3
  90. package/assets/es-CvyAguO4.js +0 -3
  91. package/assets/fr-clDbSE9o.js +0 -3
  92. package/assets/ghostty-web-BCuhkIU7.js +0 -13
  93. package/assets/index-BkP6Yi9h.js +0 -2576
  94. package/assets/index-XyIgYjWh.css +0 -1
  95. package/assets/ja-9HOMN5MO.js +0 -3
  96. package/assets/ko-CuZDWRP0.js +0 -3
  97. package/assets/no-C3loBrd4.js +0 -3
  98. package/assets/nope-12-VkiLEhL8.js +0 -1
  99. package/assets/pl-Dr_rjW4y.js +0 -3
  100. package/assets/ru-CFMdbrLR.js +0 -3
  101. package/assets/status-popover-body-CfgEKCW8.js +0 -2
  102. package/assets/th-BzujCzA2.js +0 -3
  103. package/assets/tr-Cn1UypYx.js +0 -3
  104. package/assets/zh-D4XY_6IZ.js +0 -5
  105. package/assets/zht-BPEX960-.js +0 -4
@@ -0,0 +1 @@
1
+ import{be as q,a0 as ce,bb as oe,a2 as G,af as de,l as ue,p as ge,n as pe,b9 as F,bl as he,d as ye,E as J,D as Z,H as ee,J as te,c as H,v as X,ac as ae,r as ve,Q as be,i as a,b as r,m as V,S as f,F as O,f as W,s as M,ch as Ie,X as Se,t as c,bf as we,bg as B,e as Le,a5 as De,ci as xe,G as Ee,aW as Pe,a as Oe,ca as je,cj as Re,A as ie,ck as We}from"./index-BA1jwG_A.js";import{g as le,c as z}from"./catalog-Cz3JtNfO.js";import{S as He,s as Me}from"./onescience-skill-detail-dialog-CPXWVuLj.js";import{startCapabilityWizardTask as Fe}from"./wizard-BsJBhDp_.js";function Ue(e){const t=le(e);if(!t)throw new Error(`Unknown capability resource: ${e}`);return{banner:t.install.banner,prompt:t.install.prompt}}function me(e){if(!q({navigate:e.navigate,action:{type:"install",resourceId:e.resourceId},isLoggedIn:e.isLoggedIn})||!le(e.resourceId))return!1;const{banner:i,prompt:s}=Ue(e.resourceId),n=ce({path:e.path,recent:e.recent,lastCodeWorkspace:e.lastCodeWorkspace})||oe(G())||de(document,e.path);if(!n)return!1;const g=ue(n);return ge(g,s),pe(g),e.openProject?.(n),e.touchCode?.(n),F({variant:"success",title:i}),e.navigate(he(n)),!0}var Ae=c('<article class="os-client-capability-card os-client-capability-skill-card"><div class=os-client-capability-skill-card-head><h4></h4></div><p></p><div class=os-client-capability-meta><span class=os-client-capability-skill-provider></span></div><div class=os-client-capability-actions><button type=button>详情</button><button type=button data-primary=true>开发'),$e=c("<span>"),Ge=c("<div>"),Te=c("<button type=button class=os-client-capability-oneskills-expand>"),Ve=c("<section class=os-client-capability-oneskills-section><header class=os-client-capability-oneskills-section-head><div class=os-client-capability-oneskills-section-title><h3></h3></div><p>"),ze=c("<p class=os-client-capability-empty>当前分类暂无技能卡片。"),Ne=c("<span class=os-client-capability-oneskills-count> 个技能"),Qe=c("<p class=os-client-capability-oneskills-error>"),Be=c("<div class=os-client-capability-oneskills-top-row>"),Ke=c("<div class=os-client-capability-oneskills-overview>"),qe=c('<section class="os-client-capability-resource-panel os-client-capability-oneskills-panel"><header class=os-client-capability-oneskills-toolbar><div class=os-client-capability-oneskills-toolbar-copy><p>按 OneSkills 分层浏览官方技能,查看详情或进入开发。</p></div><div class=os-client-capability-oneskills-actions><span class=inline-flex><button type=button class=os-client-capability-oneskills-upgrade>'),Xe=c("<p class=os-client-capability-empty>正在加载 OneSkills 技能..."),Ye=c("<p class=os-client-capability-empty>暂无可展示的 OneSkills 技能,请先安装或更新技能。");const re=4,Y=new Set(["orchestrator","resource"]);function Je(e,t){return e.layer===t.title||e.tags.includes(t.title)||e.tags.includes(t.id)}function Ze(e){return ce(e)||Ie(G(),e.lastCodeWorkspace)||oe(G())||de(document,e.path)}function et(e){const t=()=>e.item.tags.filter(i=>i!==e.item.layer&&i!==e.item.provider).slice(0,3);return(()=>{var i=Ae(),s=i.firstChild,n=s.firstChild,g=s.nextSibling,h=g.nextSibling,S=h.firstChild,b=h.nextSibling,m=b.firstChild,w=m.nextSibling;return Le(i,"click",e.onOpen,!0),a(n,()=>e.item.title),a(g,()=>e.item.copy),a(S,()=>e.item.provider),a(h,r(O,{get each(){return t()},children:d=>(()=>{var o=$e();return a(o,d),o})()}),null),m.$$click=d=>{d.stopPropagation(),e.onOpen()},w.$$click=d=>{d.stopPropagation(),e.onDevelop()},W(d=>{var o=e.layerId,l=e.canDevelop?void 0:"登录后使用";return o!==d.e&&M(i,"data-layer",d.e=o),l!==d.t&&M(w,"title",d.t=l),d},{e:void 0,t:void 0}),i})()}function ne(e){const[t,i]=H(!1),s=()=>e.items.length,n=()=>Math.max(0,s()-re),g=()=>t()||n()===0?e.items:e.items.slice(0,re),h=()=>Y.has(e.group.id);return(()=>{var S=Ve(),b=S.firstChild,m=b.firstChild,w=m.firstChild,d=m.nextSibling;return a(w,()=>e.group.title),a(m,r(f,{get when(){return s()>0},get children(){var o=$e();return a(o,s),o}}),null),a(d,()=>e.group.copy),a(S,r(f,{get when(){return s()>0},get fallback(){return ze()},get children(){return[(()=>{var o=Ge();return a(o,r(O,{get each(){return g()},children:l=>r(et,{item:l,get layerId(){return e.group.id},get canDevelop(){return e.canDevelop},onOpen:()=>e.onOpen(l),onDevelop:()=>e.onDevelop(l)})})),W(l=>{var _=!h(),u=!!h();return _!==l.e&&o.classList.toggle("os-client-capability-page-grid",l.e=_),u!==l.t&&o.classList.toggle("os-client-capability-oneskills-compact-grid",l.t=u),l},{e:void 0,t:void 0}),o})(),r(f,{get when(){return V(()=>!h())()&&n()>0},get children(){var o=Te();return o.$$click=()=>i(l=>!l),a(o,(()=>{var l=V(()=>!!t());return()=>l()?"收起":`展开其余 ${n()} 个`})()),W(()=>M(o,"aria-expanded",t())),o}})]}}),null),W(o=>{var l=e.group.id,_=!!e.compact,u=e.group.id;return l!==o.e&&M(S,"id",o.e=l),_!==o.t&&S.classList.toggle("is-compact",o.t=_),u!==o.a&&M(S,"data-layer",o.a=u),o},{e:void 0,t:void 0,a:void 0}),S})()}function tt(){const e=J(),t=Z(),i=ee(),s=te(),[n,g]=H([]),[h,S]=H(!1),[b,m]=H(!1),[w,d]=H(),[o,l]=H(!1),[_,u]=H(),I=X(()=>!!G()?.account.id),x=X(()=>Ze({path:i.data.path,recent:ae(i.data.project),lastCodeWorkspace:t.projects.lastCode()})),p=async()=>{const y=t.current;if(!y){g([]),S(!0);return}const k=await Se(y.http.url,{limit:100});g(k.loaded?k.items:[]),S(!0)};ve(()=>{e(be("oneskills"),{replace:!0}),p()});const $=y=>n().filter(k=>Je(k,y)),j=()=>De.filter(y=>$(y).length>0),L=()=>{const y=j();return{pair:y.filter(k=>Y.has(k.id)),rest:y.filter(k=>!Y.has(k.id))}},D=y=>{u(y),l(!0)},E=()=>{l(!1),u(void 0)},U=y=>{if(!q({navigate:e,action:{type:"prompt",prompt:""},isLoggedIn:I()}))return;const k=x();if(!k){F({variant:"error",title:"无法开发",description:"未检测到工作目录"});return}const v=Me({id:y.id,title:y.title,copy:y.copy,layer:y.layer,tags:y.tags,provider:y.provider}),P=ue(k);ge(P,v.prompt,{skill:v.skill}),pe(P),s.projects.open(k),t.projects.touchCode(k),l(!1),u(void 0),F({variant:"success",title:`已为你创建「${y.title}」开发任务`}),e(he(k))},Ce=async()=>{if(!q({navigate:e,action:{type:"install",resourceId:"oneskills"},isLoggedIn:I()}))return;const y=t.current,k=x();if(!y){const v=B();d(v),F({variant:"error",title:"更新失败",description:v});return}if(!k){const v=B();d(v),F({variant:"error",title:"更新失败",description:v});return}m(!0),d(void 0);try{const v=await we(y.http.url,k);await p();const P=v.version?`版本 ${v.version} · ${v.skillCount} 个技能`:`${v.skillCount} 个技能`,A=v.seedSource==="bundled"&&v.seedFallbackReason?"原语已回退内置 seed":v.seedSource==="disk"?"原语已同步磁盘 oneskills":void 0;F({variant:"success",title:"OneSkills 已更新",description:A?`${P} · ${A}`:P})}catch(v){const P=B(v instanceof Error?v.message:"更新 OneSkills 失败");d(P),F({variant:"error",title:"更新失败",description:P})}finally{m(!1)}};return(()=>{var y=qe(),k=y.firstChild,v=k.firstChild;v.firstChild;var P=v.nextSibling,A=P.firstChild,Q=A.firstChild;return a(v,r(f,{get when(){return V(()=>!!h())()&&n().length>0},get children(){var C=Ne(),R=C.firstChild;return a(C,()=>n().length,R),C}}),null),a(P,r(f,{get when(){return w()},get children(){var C=Qe();return a(C,w),C}}),A),Q.$$click=()=>void Ce(),a(Q,()=>b()?"更新中...":"更新 OneSkills"),a(y,r(f,{get when(){return h()},get fallback(){return Xe()},get children(){return r(f,{get when(){return n().length>0},get fallback(){return Ye()},get children(){var C=Ke();return a(C,r(f,{get when(){return L().pair.length>0},get children(){var R=Be();return a(R,r(O,{get each(){return L().pair},children:T=>r(ne,{group:T,get items(){return $(T)},compact:!0,get canDevelop(){return I()},onOpen:D,onDevelop:U})})),R}}),null),a(C,r(O,{get each(){return L().rest},children:R=>r(ne,{group:R,get items(){return $(R)},get canDevelop(){return I()},onOpen:D,onDevelop:U})}),null),C}})}}),null),a(y,r(He,{variant:"workbench",get item(){return _()},get open(){return o()},get serverUrl(){return t.current?.http.url},onClose:E,onDevelop:()=>{const C=_();C&&(E(),U(C))}}),null),W(C=>{var R=I()?void 0:"登录后使用",T=b();return R!==C.e&&M(A,"title",C.e=R),T!==C.t&&(Q.disabled=C.t=T),C},{e:void 0,t:void 0}),y})()}ye(["click"]);function at(e){const t=new URLSearchParams(e).get("category");if(t==="onemodel"||t==="hpc"||t==="onedata"||t==="oneskills")return t}function lt(e){const t=new URLSearchParams(e).get("domain");if(t==="materials"||t==="weather"||t==="fluid"||t==="bio")return t;if(t==="all")return"all"}function se(e,t){const i=at(t),s=lt(t);if(i)return{categoryId:i,domainId:s??(i==="onemodel"||i==="hpc"?"all":"materials")};const n=new RegExp(`^${xe.capabilities}/([^/]+)`).exec(e),g=n?.[1]?le(n[1]):void 0;return g?{categoryId:g.category,domainId:g.domain}:{categoryId:"onemodel",domainId:"materials"}}var it=c("<span>当前范围:"),rt=c("<strong>全领域"),nt=c("<small>"),st=c("<div class=os-client-capability-domain-row role=tablist aria-label=能力中心领域>"),ct=c("<div class=os-client-capability-page><section class=os-client-capability-selector aria-label=能力中心筛选><div class=os-client-capability-current-domain></div><div class=os-client-capability-tabs role=tablist aria-label=能力中心产品能力></div></section><div class=os-client-capability-page-body>"),ot=c("<span>当前领域:"),dt=c("<strong>"),ut=c("<small>切换领域后,下方模型、HPC 软件内容同步刷新"),gt=c("<button type=button>"),pt=c("<button type=button><strong></strong><small>"),ht=c("<button type=button>安装"),yt=c('<section class=os-client-capability-resource-panel><header class="os-client-capability-page-section-head os-client-capability-page-section-head-active"><p></p></header><p class=os-client-capability-empty>onedata 卡片即将上线,敬请期待。'),vt=c("<label class=os-client-capability-catalog-search><span>搜索</span><input type=search placeholder=按名称、简介或标签筛选>"),bt=c("<div class=os-client-capability-catalog-toolbar><div class=os-client-capability-catalog-toolbar-side><span class=os-client-capability-catalog-count></span><div class=os-client-capability-view-switch role=tablist aria-label=模型展示方式>"),mt=c('<section class=os-client-capability-resource-panel><header class="os-client-capability-page-section-head os-client-capability-page-section-head-active"><p>'),$t=c("<p class=os-client-capability-empty>当前「<!>」领域暂无<!>卡片。"),ft=c("<button type=button role=tab>"),_t=c("<p class=os-client-capability-empty>没有匹配的模型,试试换个关键词。"),kt=c("<div class=os-client-capability-catalog role=list>"),Ct=c("<article class=os-client-capability-catalog-row role=listitem>"),It=c("<div class=os-client-capability-page-grid>"),St=c("<div class=os-client-capability-meta>"),wt=c("<article class=os-client-capability-card><div class=os-client-capability-card-body><div class=os-client-capability-card-head><h4></h4></div><p>"),fe=c("<span>"),Lt=c("<div class=os-client-capability-catalog-copy><h4></h4><p>"),Dt=c("<div class=os-client-capability-catalog-tags>"),xt=c("<div>");const K=[{id:"all",label:"全部"},{id:"materials",label:"材料"},{id:"weather",label:"气象"},{id:"fluid",label:"流体"},{id:"bio",label:"生信"}],N=new Set(["oneskills"]),Et=new Set(["onedata"]),Pt=[{id:"cards",label:"卡片"},{id:"list",label:"列表"}],_e="os-capability-view-mode";function Qt(e){const t=Ee(),i=J(),s=se(t.pathname,t.search),[n,g]=Pe({domainId:s.domainId,categoryId:s.categoryId}),h=()=>n.domainId==="all"?z():z(n.domainId),S=()=>h().find(l=>l.id===n.categoryId)??h()[0],b=()=>K.find(l=>l.id===n.domainId)??K[0],m=ee(),w=te(),d=Z(),o=l=>{i(be(l.categoryId,N.has(l.categoryId)?void 0:l.domainId),{replace:!0})};return Oe(()=>{const l=se(t.pathname,t.search);g({domainId:l.domainId,categoryId:l.categoryId})}),ve(()=>{const l=je();if(!l)return;const _={navigate:i,isLoggedIn:!!G(),path:m.data.path,recent:ae(m.data.project),lastCodeWorkspace:d.projects.lastCode(),openProject:u=>w.projects.open(u),touchCode:u=>d.projects.touchCode(u)};try{if(l.type==="install"){if(l.resourceId==="oneskills"){g("categoryId","oneskills"),o({domainId:n.domainId,categoryId:"oneskills"});return}if(l.resourceId.startsWith("__"))return;me({resourceId:l.resourceId,..._});return}l.type==="wizard"&&Fe({resourceId:l.resourceId,scenarioId:l.scenarioId,values:l.values,prompt:l.prompt,..._})}catch{}}),(()=>{var l=ct(),_=l.firstChild,u=_.firstChild,I=u.nextSibling,x=_.nextSibling;return a(u,r(f,{get when(){return N.has(n.categoryId)},get fallback(){return[ot(),(()=>{var p=dt();return a(p,()=>b().label),p})(),ut()]},get children(){return[it(),rt(),(()=>{var p=nt();return a(p,()=>Ot(n.categoryId)),p})()]}})),a(_,r(f,{get when(){return!N.has(n.categoryId)},get children(){var p=st();return a(p,r(O,{each:K,children:$=>(()=>{var j=gt();return j.$$click=()=>{const L=$.id==="all"?z():z($.id),D=N.has(n.categoryId)?n.categoryId:L.find(E=>E.id===n.categoryId&&E.items.length>0)?.id??L.find(E=>E.items.length>0)?.id??"onemodel";g({domainId:$.id,categoryId:D}),o({domainId:$.id,categoryId:D})},a(j,()=>$.label),W(L=>{var D=$.id===n.domainId,E=$.id===n.domainId;return D!==L.e&&j.classList.toggle("is-active",L.e=D),E!==L.t&&M(j,"aria-pressed",L.t=E),L},{e:void 0,t:void 0}),j})()})),p}}),I),a(I,r(O,{get each(){return h()},children:p=>(()=>{var $=pt(),j=$.firstChild,L=j.nextSibling;return $.$$click=()=>{g("categoryId",p.id),o({domainId:n.domainId,categoryId:p.id})},a(j,()=>p.label),a(L,()=>p.title),W(D=>{var E=n.categoryId===p.id,U=n.categoryId===p.id;return E!==D.e&&$.classList.toggle("is-active",D.e=E),U!==D.t&&M($,"aria-pressed",D.t=U),D},{e:void 0,t:void 0}),$})()})),a(x,r(f,{get when(){return S()},children:p=>r(f,{get when(){return p().id==="oneskills"},get fallback(){return r(f,{get when(){return!Et.has(p().id)},get fallback(){return r(Rt,{get category(){return p()}})},get children(){return r(Wt,{get category(){return p()},get domainLabel(){return b().label}})}})},get children(){return r(tt,{})}})})),a(l,()=>e.children,null),l})()}function Ot(e){return e==="oneskills"?"OneSkills 原语跨领域通用,不区分材料 / 气象 / 流体 / 生信":"基础设施能力跨领域通用,不随领域切换而变化"}function jt(e){const t=J(),i=ee(),s=te(),n=Z();return(()=>{var g=ht();return g.$$click=()=>me({resourceId:e.resourceId,navigate:t,isLoggedIn:!!G(),path:i.data.path,recent:ae(i.data.project),lastCodeWorkspace:n.projects.lastCode(),openProject:h=>s.projects.open(h),touchCode:h=>n.projects.touchCode(h)}),g})()}function Rt(e){return(()=>{var t=yt(),i=t.firstChild,s=i.firstChild;return a(s,()=>e.category.copy.replace(/[。.]$/,"")),t})()}function Wt(e){const[t,i]=H(""),[s,n]=H(At()),g=()=>t().trim().toLowerCase(),h=X(()=>{const b=g();return b?e.category.items.filter(m=>[m.name,m.blurb,...m.tags].some(w=>w.toLowerCase().includes(b))):e.category.items}),S=b=>{n(b),Gt(b)};return(()=>{var b=mt(),m=b.firstChild,w=m.firstChild;return a(w,()=>e.category.copy.replace(/[。.]$/,"")),a(b,r(f,{get when(){return e.category.items.length>0},get fallback(){return(()=>{var d=$t(),o=d.firstChild,l=o.nextSibling,_=l.nextSibling,u=_.nextSibling;return u.nextSibling,a(d,()=>e.domainLabel,l),a(d,(()=>{var I=V(()=>e.category.id==="hpc");return()=>I()?" HPC 软件":e.category.id==="onemodel"?"模型":""})(),u),d})()},get children(){return[(()=>{var d=bt(),o=d.firstChild,l=o.firstChild,_=l.nextSibling;return a(d,r(f,{get when(){return e.category.items.length>=6},get children(){var u=vt(),I=u.firstChild,x=I.nextSibling;return x.$$input=p=>i(p.currentTarget.value),W(()=>x.value=t()),u}}),o),a(l,(()=>{var u=V(()=>h().length===e.category.items.length);return()=>u()?`共 ${e.category.items.length} 项`:`${h().length} / ${e.category.items.length} 项`})()),a(_,r(O,{each:Pt,children:u=>(()=>{var I=ft();return I.$$click=()=>S(u.id),a(I,()=>u.label),W(x=>{var p=s()===u.id,$=s()===u.id;return p!==x.e&&M(I,"aria-selected",x.e=p),$!==x.t&&I.classList.toggle("is-active",x.t=$),x},{e:void 0,t:void 0}),I})()})),d})(),r(f,{get when(){return h().length>0},get fallback(){return _t()},get children(){return[r(f,{get when(){return s()==="list"},get children(){return r(Ht,{get items(){return h()}})}}),r(f,{get when(){return s()==="cards"},get children(){return r(Mt,{get items(){return h()}})}})]}})]}}),null),b})()}function Ht(e){return(()=>{var t=kt();return a(t,r(O,{get each(){return e.items},children:i=>(()=>{var s=Ct();return a(s,r(Ft,{item:i}),null),a(s,r(ke,{item:i}),null),s})()})),t})()}function Mt(e){return(()=>{var t=It();return a(t,r(O,{get each(){return e.items},children:i=>(()=>{var s=wt(),n=s.firstChild,g=n.firstChild,h=g.firstChild,S=g.nextSibling;return a(h,()=>i.name),a(g,r(f,{get when(){return i.tags.length>0},get children(){var b=St();return a(b,r(O,{get each(){return i.tags},children:m=>(()=>{var w=fe();return a(w,m),w})()})),b}}),null),a(S,()=>i.blurb),a(s,r(ke,{item:i,variant:"card"}),null),s})()})),t})()}function Ft(e){return(()=>{var t=Lt(),i=t.firstChild,s=i.nextSibling;return a(i,()=>e.item.name),a(s,()=>e.item.blurb),a(t,r(f,{get when(){return e.item.tags.length>0},get children(){return r(Ut,{get item(){return e.item}})}}),null),t})()}function Ut(e){return(()=>{var t=Dt();return a(t,r(O,{get each(){return e.item.tags},children:i=>(()=>{var s=fe();return a(s,i),s})()})),t})()}function ke(e){return(()=>{var t=xt();return a(t,r(ie,{get href(){return Re(e.item.id)},children:"详情"}),null),a(t,r(jt,{get resourceId(){return e.item.id}}),null),a(t,r(ie,{get href(){return We(e.item.id)},"data-primary":"true",children:"使用"}),null),W(i=>{var s=e.variant!=="card",n=e.variant==="card";return s!==i.e&&t.classList.toggle("os-client-capability-catalog-actions",i.e=s),n!==i.t&&t.classList.toggle("os-client-capability-actions",i.t=n),i},{e:void 0,t:void 0}),t})()}function At(){if(typeof localStorage>"u")return"cards";const e=localStorage.getItem(_e);return e==="cards"||e==="list"?e:"cards"}function Gt(e){typeof localStorage>"u"||localStorage.setItem(_e,e)}ye(["click","input"]);export{Qt as CapabilityCenterPage};
@@ -0,0 +1,3 @@
1
+ const e={"command.category.suggested":"Foreslået","command.category.view":"Vis","command.category.project":"Projekt","command.category.provider":"Udbyder","command.category.server":"Server","command.category.session":"Session","command.category.theme":"Tema","command.category.language":"Sprog","command.category.file":"Fil","command.category.context":"Kontekst","command.category.terminal":"Terminal","command.category.model":"Model","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Tilladelser","command.category.workspace":"Arbejdsområde","command.category.settings":"Indstillinger","theme.scheme.system":"System","theme.scheme.light":"Lys","theme.scheme.dark":"Mørk","command.sidebar.toggle":"Skift sidebjælke","command.project.open":"Åbn projekt","command.provider.connect":"Tilslut udbyder","command.server.switch":"Skift server","command.settings.open":"Åbn indstillinger","command.session.previous":"Forrige session","command.session.next":"Næste session","command.session.previous.unseen":"Forrige ulæste session","command.session.next.unseen":"Næste ulæste session","command.session.archive":"Arkivér session","command.palette":"Kommandopalette","command.theme.cycle":"Skift tema","command.theme.set":"Brug tema: {{theme}}","command.theme.scheme.cycle":"Skift farveskema","command.theme.scheme.set":"Brug farveskema: {{scheme}}","command.language.cycle":"Skift sprog","command.language.set":"Brug sprog: {{language}}","command.session.new":"Ny session","command.file.open":"Åbn fil","command.tab.close":"Luk fane","command.context.addSelection":"Tilføj markering til kontekst","command.context.addSelection.description":"Tilføj markerede linjer fra den aktuelle fil","command.input.focus":"Fokuser inputfelt","command.terminal.toggle":"Skift terminal","command.fileTree.toggle":"Skift filtræ","command.review.toggle":"Skift gennemgang","command.terminal.new":"Ny terminal","command.terminal.new.description":"Opret en ny terminalfane","command.steps.toggle":"Skift trin","command.steps.toggle.description":"Vis eller skjul trin for den aktuelle besked","command.message.previous":"Forrige besked","command.message.previous.description":"Gå til den forrige brugerbesked","command.message.next":"Næste besked","command.message.next.description":"Gå til den næste brugerbesked","command.model.choose":"Vælg model","command.model.choose.description":"Vælg en anden model","command.mcp.toggle":"Skift MCP'er","command.mcp.toggle.description":"Skift MCP'er","command.agent.cycle":"Skift agent","command.agent.cycle.description":"Skift til næste agent","command.agent.cycle.reverse":"Skift agent baglæns","command.agent.cycle.reverse.description":"Skift til forrige agent","command.model.variant.cycle":"Skift tænkeindsats","command.model.variant.cycle.description":"Skift til næste indsatsniveau","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Accepter tilladelser automatisk","command.permissions.autoaccept.disable":"Stop med at acceptere tilladelser automatisk","command.workspace.toggle":"Skift arbejdsområder","command.workspace.toggle.description":"Aktiver eller deaktiver flere arbejdsområder i sidebjælken","command.session.undo":"Fortryd","command.session.undo.description":"Fortryd den sidste besked","command.session.redo":"Omgør","command.session.redo.description":"Omgør den sidste fortrudte besked","command.session.compact":"Komprimér session","command.session.compact.description":"Opsummer sessionen for at reducere kontekststørrelsen","command.session.fork":"Forgren fra besked","command.session.fork.description":"Opret en ny session fra en tidligere besked","command.session.share":"Del session","command.session.share.description":"Del denne session og kopier URL'en til udklipsholderen","command.session.unshare":"Stop deling af session","command.session.unshare.description":"Stop med at dele denne session","palette.search.placeholder":"Søg i filer, kommandoer og sessioner","palette.empty":"Ingen resultater fundet","palette.group.commands":"Kommandoer","palette.group.files":"Filer","dialog.provider.search.placeholder":"Søg udbydere","dialog.provider.empty":"Ingen udbydere fundet","dialog.provider.group.popular":"Populære","dialog.provider.group.other":"Andre","dialog.provider.tag.recommended":"Anbefalet","dialog.provider.tag.connected":"Forbundet","dialog.provider.opencode.note":"Udvalgte modeller inklusive Claude, GPT, Gemini og flere","dialog.provider.opencode.tagline":"Pålidelige optimerede modeller","dialog.provider.opencodeGo.tagline":"Billigt abonnement for alle","dialog.provider.anthropic.note":"Direkte adgang til Claude-modeller, inklusive Pro og Max","dialog.provider.copilot.note":"AI-modeller til kodningsassistance via GitHub Copilot","dialog.provider.openai.note":"GPT-modeller til hurtige, kompetente generelle AI-opgaver","dialog.provider.google.note":"Gemini-modeller til hurtige, strukturerede svar","dialog.provider.openrouter.note":"Få adgang til alle understøttede modeller fra én udbyder","dialog.provider.vercel.note":"Samlet adgang til AI-modeller med smart routing","dialog.model.select.title":"Vælg model","dialog.model.search.placeholder":"Søg modeller","dialog.model.empty":"Ingen modeller fundet","dialog.model.manage":"Administrer modeller","dialog.model.manage.description":"Tilpas hvilke modeller der vises i modelvælgeren.","dialog.model.manage.provider.toggle":"Skift alle {{provider}}-modeller","dialog.model.unpaid.freeModels.title":"Gratis modeller leveret af OpenCode","dialog.model.unpaid.addMore.title":"Tilføj flere modeller fra populære udbydere","dialog.provider.viewAll":"Vis flere udbydere","provider.connect.title":"Forbind {{provider}}","provider.connect.title.anthropicProMax":"Log ind med Claude Pro/Max","provider.connect.selectMethod":"Vælg loginmetode for {{provider}}.","provider.connect.method.apiKey":"API-nøgle","provider.connect.status.inProgress":"Godkendelse i gang...","provider.connect.status.waiting":"Venter på godkendelse...","provider.connect.status.failed":"Godkendelse mislykkedes: {{error}}","provider.connect.apiKey.description":"Indtast din {{provider}} API-nøgle for at forbinde din konto og bruge {{provider}} modeller i OpenCode.","provider.connect.apiKey.label":"{{provider}} API-nøgle","provider.connect.apiKey.placeholder":"API-nøgle","provider.connect.apiKey.required":"API-nøgle er påkrævet","provider.connect.opencodeZen.line1":"OpenCode Zen giver dig adgang til et udvalg af pålidelige optimerede modeller til kodningsagenter.","provider.connect.opencodeZen.line2":"Med en enkelt API-nøgle får du adgang til modeller som Claude, GPT, Gemini, GLM og flere.","provider.connect.opencodeZen.visit.prefix":"Besøg ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":" for at hente din API-nøgle.","provider.connect.oauth.code.visit.prefix":"Besøg ","provider.connect.oauth.code.visit.link":"dette link","provider.connect.oauth.code.visit.suffix":" for at hente din godkendelseskode for at forbinde din konto og bruge {{provider}} modeller i OpenCode.","provider.connect.oauth.code.label":"{{method}} godkendelseskode","provider.connect.oauth.code.placeholder":"Godkendelseskode","provider.connect.oauth.code.required":"Godkendelseskode er påkrævet","provider.connect.oauth.code.invalid":"Ugyldig godkendelseskode","provider.connect.oauth.auto.visit.prefix":"Besøg ","provider.connect.oauth.auto.visit.link":"dette link","provider.connect.oauth.auto.visit.suffix":" og indtast koden nedenfor for at forbinde din konto og bruge {{provider}} modeller i OpenCode.","provider.connect.oauth.auto.confirmationCode":"Bekræftelseskode","provider.connect.toast.connected.title":"{{provider}} forbundet","provider.connect.toast.connected.description":"{{provider}} modeller er nu tilgængelige.","provider.custom.title":"Brugerdefineret udbyder","provider.custom.description.prefix":"Konfigurer en OpenAI-kompatibel udbyder. Se ","provider.custom.description.link":"dokumentation for udbyderkonfiguration","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"Udbyder-ID","provider.custom.field.providerID.placeholder":"minudbyder","provider.custom.field.providerID.description":"Små bogstaver, tal, bindestreger eller understregninger","provider.custom.field.name.label":"Visningsnavn","provider.custom.field.name.placeholder":"Min AI-udbyder","provider.custom.field.baseURL.label":"Basis-URL","provider.custom.field.baseURL.placeholder":"https://api.minudbyder.dk/v1","provider.custom.field.apiKey.label":"API-nøgle","provider.custom.field.apiKey.placeholder":"API-nøgle","provider.custom.field.apiKey.description":"Valgfri. Lad være tom, hvis du administrerer godkendelse via headers.","provider.custom.models.label":"Modeller","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Navn","provider.custom.models.name.placeholder":"Visningsnavn","provider.custom.models.remove":"Fjern model","provider.custom.models.add":"Tilføj model","provider.custom.headers.label":"Headers (valgfri)","provider.custom.headers.key.label":"Header","provider.custom.headers.key.placeholder":"Header-Navn","provider.custom.headers.value.label":"Værdi","provider.custom.headers.value.placeholder":"værdi","provider.custom.headers.remove":"Fjern header","provider.custom.headers.add":"Tilføj header","provider.custom.error.providerID.required":"Udbyder-ID er påkrævet","provider.custom.error.providerID.format":"Brug små bogstaver, tal, bindestreger eller understregninger","provider.custom.error.providerID.exists":"Dette udbyder-ID findes allerede","provider.custom.error.name.required":"Visningsnavn er påkrævet","provider.custom.error.baseURL.required":"Basis-URL er påkrævet","provider.custom.error.baseURL.format":"Skal starte med http:// eller https://","provider.custom.error.required":"Påkrævet","provider.custom.error.duplicate":"Duplikeret","provider.disconnect.toast.disconnected.title":"{{provider}} frakoblet","provider.disconnect.toast.disconnected.description":"Modeller fra {{provider}} er ikke længere tilgængelige.","model.tag.free":"Gratis","model.tag.latest":"Nyeste","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"tekst","model.input.image":"billede","model.input.audio":"lyd","model.input.video":"video","model.input.pdf":"pdf","model.tooltip.allows":"Tillader: {{inputs}}","model.tooltip.reasoning.allowed":"Tillader tænkning","model.tooltip.reasoning.none":"Ingen tænkning","model.tooltip.context":"Kontekstgrænse {{limit}}","common.search.placeholder":"Søg","common.goBack":"Gå tilbage","common.goForward":"Naviger fremad","common.loading":"Indlæser","common.loading.ellipsis":"...","common.cancel":"Annuller","common.connect":"Forbind","common.disconnect":"Frakobl","common.continue":"Indsend","common.submit":"Indsend","common.save":"Gem","common.saving":"Gemmer...","common.default":"Standard","common.attachment":"vedhæftning","prompt.placeholder.shell":"Indtast shell-kommando... {{example}}","prompt.placeholder.normal":'Spørg om hvad som helst... "{{example}}"',"prompt.placeholder.simple":"Spørg om hvad som helst...","prompt.placeholder.summarizeComments":"Opsummér kommentarer…","prompt.placeholder.summarizeComment":"Opsummér kommentar…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc for at afslutte","prompt.example.1":"Ret en TODO i koden","prompt.example.2":"Hvad er teknologistakken for dette projekt?","prompt.example.3":"Ret ødelagte tests","prompt.example.4":"Forklar hvordan godkendelse fungerer","prompt.example.5":"Find og ret sikkerhedshuller","prompt.example.6":"Tilføj enhedstests for brugerservice","prompt.example.7":"Refaktorer denne funktion så den er mere læsbar","prompt.example.8":"Hvad betyder denne fejl?","prompt.example.9":"Hjælp mig med at debugge dette problem","prompt.example.10":"Generer API-dokumentation","prompt.example.11":"Optimer databaseforespørgsler","prompt.example.12":"Tilføj validering af input","prompt.example.13":"Opret en ny komponent til...","prompt.example.14":"Hvordan deployerer jeg dette projekt?","prompt.example.15":"Gennemgå min kode for bedste praksis","prompt.example.16":"Tilføj fejlhåndtering til denne funktion","prompt.example.17":"Forklar dette regex-mønster","prompt.example.18":"Konverter dette til TypeScript","prompt.example.19":"Tilføj logning i hele koden","prompt.example.20":"Hvilke afhængigheder er forældede?","prompt.example.21":"Hjælp mig med at skrive et migreringsscript","prompt.example.22":"Implementer caching for dette endpoint","prompt.example.23":"Tilføj sideinddeling til denne liste","prompt.example.24":"Opret en CLI-kommando til...","prompt.example.25":"Hvordan fungerer miljøvariabler her?","prompt.popover.emptyResults":"Ingen matchende resultater","prompt.popover.emptyCommands":"Ingen matchende kommandoer","prompt.dropzone.label":"Slip billeder, PDF'er eller tekstfiler her","prompt.dropzone.file.label":"Slip for at @nævne fil","prompt.slash.badge.custom":"brugerdefineret","prompt.slash.badge.skill":"skill","prompt.slash.badge.mcp":"mcp","prompt.context.active":"aktiv","prompt.context.includeActiveFile":"Inkluder aktiv fil","prompt.context.removeActiveFile":"Fjern aktiv fil fra kontekst","prompt.context.removeFile":"Fjern fil fra kontekst","prompt.action.attachFile":"Vedhæft fil","prompt.attachment.remove":"Fjern vedhæftning","prompt.action.send":"Send","prompt.action.stop":"Stop","prompt.toast.pasteUnsupported.title":"Ikke understøttet vedhæftning","prompt.toast.pasteUnsupported.description":"Kun billeder, PDF'er eller tekstfiler kan vedhæftes her.","prompt.toast.modelAgentRequired.title":"Vælg en agent og model","prompt.toast.modelAgentRequired.description":"Vælg en agent og model før du sender en forespørgsel.","prompt.toast.worktreeCreateFailed.title":"Kunne ikke oprette worktree","prompt.toast.sessionCreateFailed.title":"Kunne ikke oprette session","prompt.toast.shellSendFailed.title":"Kunne ikke sende shell-kommando","prompt.toast.commandSendFailed.title":"Kunne ikke sende kommando","prompt.toast.promptSendFailed.title":"Kunne ikke sende forespørgsel","prompt.toast.promptSendFailed.description":"Kunne ikke hente session","dialog.mcp.title":"MCP'er","dialog.mcp.description":"{{enabled}} af {{total}} aktiveret","dialog.mcp.empty":"Ingen MCP'er konfigureret","dialog.lsp.empty":"LSP'er registreret automatisk fra filtyper","dialog.plugins.empty":"Plugins konfigureret i opencode.json","mcp.status.connected":"forbundet","mcp.status.failed":"mislykkedes","mcp.status.needs_auth":"kræver godkendelse","mcp.status.disabled":"deaktiveret","dialog.fork.empty":"Ingen beskeder at forgrene fra","dialog.directory.search.placeholder":"Søg mapper","dialog.directory.empty":"Ingen mapper fundet","dialog.server.title":"Servere","dialog.server.description":"Skift hvilken OneCode-server denne app forbinder til.","dialog.server.search.placeholder":"Søg servere","dialog.server.empty":"Ingen servere endnu","dialog.server.add.title":"Tilføj en server","dialog.server.add.url":"Server URL","dialog.server.add.placeholder":"http://127.0.0.1:4096","dialog.server.add.error":"Kunne ikke forbinde til server","dialog.server.add.checking":"Tjekker...","dialog.server.add.button":"Tilføj server","dialog.server.add.name":"Servernavn (valgfrit)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Brugernavn (valgfrit)","dialog.server.add.password":"Adgangskode (valgfrit)","dialog.server.edit.title":"Rediger server","dialog.server.default.title":"Standardserver","dialog.server.default.description":"Forbind til denne server ved start af app i stedet for at starte en lokal server. Kræver genstart.","dialog.server.default.none":"Ingen server valgt","dialog.server.default.set":"Sæt nuværende server som standard","dialog.server.default.clear":"Ryd","dialog.server.action.remove":"Fjern server","dialog.server.menu.edit":"Rediger","dialog.server.menu.default":"Sæt som standard","dialog.server.menu.defaultRemove":"Fjern som standard","dialog.server.menu.delete":"Slet","dialog.server.current":"Nuværende server","dialog.server.status.default":"Standard","dialog.project.edit.title":"Rediger projekt","dialog.project.edit.name":"Navn","dialog.project.edit.icon":"Ikon","dialog.project.edit.icon.alt":"Projektikon","dialog.project.edit.icon.hint":"Klik eller træk et billede","dialog.project.edit.icon.recommended":"Anbefalet: 128x128px","dialog.project.edit.color":"Farve","dialog.project.edit.color.select":"Vælg farven {{color}}","dialog.project.edit.worktree.startup":"Opstartsscript for arbejdsområde","dialog.project.edit.worktree.startup.description":"Køres efter oprettelse af et nyt arbejdsområde (worktree).","dialog.project.edit.worktree.startup.placeholder":"f.eks. bun install","context.breakdown.title":"Kontekstfordeling","context.breakdown.note":'Omtrentlig fordeling af input-tokens. "Andre" inkluderer værktøjsdefinitioner og overhead.',"context.breakdown.system":"System","context.breakdown.user":"Bruger","context.breakdown.assistant":"Assistent","context.breakdown.tool":"Værktøjskald","context.breakdown.other":"Andre","context.systemPrompt.title":"Systemprompt","context.rawMessages.title":"Rå beskeder","context.stats.session":"Session","context.stats.messages":"Beskeder","context.stats.provider":"Udbyder","context.stats.model":"Model","context.stats.limit":"Kontekstgrænse","context.stats.totalTokens":"Samlede tokens","context.stats.usage":"Forbrug","context.stats.inputTokens":"Input-tokens","context.stats.outputTokens":"Output-tokens","context.stats.reasoningTokens":"Tænke Tokens","context.stats.cacheTokens":"Cache Tokens (læs/skriv)","context.stats.userMessages":"Brugerbeskeder","context.stats.assistantMessages":"Assistentbeskeder","context.stats.totalCost":"Samlede omkostninger","context.stats.sessionCreated":"Session oprettet","context.stats.lastActivity":"Seneste aktivitet","context.usage.tokens":"Tokens","context.usage.usage":"Forbrug","context.usage.cost":"Omkostning","context.usage.clickToView":"Klik for at se kontekst","context.usage.view":"Se kontekstforbrug","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":"Sprog","toast.language.description":"Skiftede til {{language}}","toast.theme.title":"Tema skiftet","toast.scheme.title":"Farveskema","toast.permissions.autoaccept.on.title":"Accepterer tilladelser automatisk","toast.permissions.autoaccept.on.description":"Anmodninger om tilladelse godkendes automatisk","toast.permissions.autoaccept.off.title":"Stoppet med at acceptere tilladelser automatisk","toast.permissions.autoaccept.off.description":"Anmodninger om tilladelse vil kræve godkendelse","toast.workspace.enabled.title":"Arbejdsområder aktiveret","toast.workspace.enabled.description":"Flere worktrees vises nu i sidepanelet","toast.workspace.disabled.title":"Arbejdsområder deaktiveret","toast.workspace.disabled.description":"Kun hoved-worktree vises i sidepanelet","toast.model.none.title":"Ingen model valgt","toast.model.none.description":"Forbind en udbyder for at opsummere denne session","toast.file.loadFailed.title":"Kunne ikke indlæse fil","toast.file.listFailed.title":"Kunne ikke liste filer","toast.context.noLineSelection.title":"Ingen linjevalg","toast.context.noLineSelection.description":"Vælg først et linjeinterval i en filfane.","toast.session.share.copyFailed.title":"Kunne ikke kopiere URL til udklipsholder","toast.session.share.success.title":"Session delt","toast.session.share.success.description":"Delings-URL kopieret til udklipsholder!","toast.session.share.failed.title":"Kunne ikke dele session","toast.session.share.failed.description":"Der opstod en fejl under deling af sessionen","toast.session.unshare.success.title":"Deling af session stoppet","toast.session.unshare.success.description":"Deling af session blev stoppet!","toast.session.unshare.failed.title":"Kunne ikke stoppe deling af session","toast.session.unshare.failed.description":"Der opstod en fejl under stop af sessionsdeling","toast.session.listFailed.title":"Kunne ikke indlæse sessioner for {{project}}","toast.update.title":"Opdatering tilgængelig","toast.update.description":"En ny version af OneCode ({{version}}) er nu tilgængelig til installation.","toast.update.action.installRestart":"Installer og genstart","toast.update.action.notYet":"Ikke endnu","error.page.title":"Noget gik galt","error.page.description":"Der opstod en fejl under indlæsning af applikationen.","error.page.details.label":"Fejldetaljer","error.page.action.restart":"Genstart","error.page.action.report":"Rapportér fejl","error.page.action.reported":"Fejl rapporteret","error.page.action.checking":"Tjekker...","error.page.action.checkUpdates":"Tjek for opdateringer","error.page.action.updateTo":"Opdater til {{version}}","error.page.report.prefix":"Rapporter venligst denne fejl til OpenCode-teamet","error.page.report.discord":"på Discord","error.page.version":"Version: {{version}}","error.dev.rootNotFound":"Rodelement ikke fundet. Har du glemt at tilføje det til din index.html? Eller måske er id-attributten stavet forkert?","error.globalSync.connectFailed":"Kunne ikke forbinde til server. Kører der en server på `{{url}}`?","directory.error.invalidUrl":"Ugyldig mappe i URL.","error.chain.unknown":"Ukendt fejl","error.chain.causedBy":"Forårsaget af:","error.chain.apiError":"API-fejl","error.chain.status":"Status: {{status}}","error.chain.retryable":"Kan forsøges igen: {{retryable}}","error.chain.responseBody":`Svarindhold:
2
+ {{body}}`,"error.chain.didYouMean":"Mente du: {{suggestions}}","error.chain.modelNotFound":"Model ikke fundet: {{provider}}/{{model}}","error.chain.checkConfig":"Tjek dine konfigurations (opencode.json) udbyder/modelnavne","error.chain.mcpFailed":'MCP-server "{{name}}" fejlede. Bemærk, OpenCode understøtter ikke MCP-godkendelse endnu.',"error.chain.providerAuthFailed":"Udbydergodkendelse mislykkedes ({{provider}}): {{message}}","error.chain.providerInitFailed":'Kunne ikke initialisere udbyder "{{provider}}". Tjek legitimationsoplysninger og konfiguration.',"error.chain.configJsonInvalid":"Konfigurationsfil på {{path}} er ikke gyldig JSON(C)","error.chain.configJsonInvalidWithMessage":"Konfigurationsfil på {{path}} er ikke gyldig JSON(C): {{message}}","error.chain.configDirectoryTypo":'Mappe "{{dir}}" i {{path}} er ikke gyldig. Omdøb mappen til "{{suggestion}}" eller fjern den. Dette er en almindelig slåfejl.',"error.chain.configFrontmatterError":`Kunne ikke parse frontmatter i {{path}}:
3
+ {{message}}`,"error.chain.configInvalid":"Konfigurationsfil på {{path}} er ugyldig","error.chain.configInvalidWithMessage":"Konfigurationsfil på {{path}} er ugyldig: {{message}}","notification.permission.title":"Tilladelse påkrævet","notification.permission.description":"{{sessionTitle}} i {{projectName}} kræver tilladelse","notification.question.title":"Spørgsmål","notification.question.description":"{{sessionTitle}} i {{projectName}} har et spørgsmål","notification.action.goToSession":"Gå til session","notification.session.responseReady.title":"Svar klar","notification.session.error.title":"Sessionsfejl","notification.session.error.fallbackDescription":"Der opstod en fejl","home.recentProjects":"Seneste projekter","home.empty.title":"Ingen seneste projekter","home.empty.description":"Kom i gang ved at åbne et lokalt projekt","session.tab.session":"Session","session.tab.review":"Gennemgang","session.tab.context":"Kontekst","session.panel.reviewAndFiles":"Gennemgang og filer","session.review.filesChanged":"{{count}} Filer ændret","session.review.change.one":"Ændring","session.review.change.other":"Ændringer","session.review.loadingChanges":"Indlæser ændringer...","session.review.empty":"Ingen ændringer i denne session endnu","session.review.noVcs":"Intet Git versionsstyringssystem fundet, ændringer vises ikke","session.review.noSnapshot":"Snapshot-sporing er deaktiveret i konfigurationen, så sessionsændringer er ikke tilgængelige","session.review.noChanges":"Ingen ændringer","session.files.selectToOpen":"Vælg en fil at åbne","session.files.all":"Alle filer","session.files.empty":"Ingen filer","session.files.binaryContent":"Binær fil (indhold kan ikke vises)","session.messages.renderEarlier":"Vis tidligere beskeder","session.messages.loadingEarlier":"Indlæser tidligere beskeder...","session.messages.loadEarlier":"Indlæs tidligere beskeder","session.messages.loading":"Indlæser beskeder...","session.messages.jumpToLatest":"Gå til seneste","session.context.addToContext":"Tilføj {{selection}} til kontekst","session.todo.title":"Opgaver","session.todo.collapse":"Skjul","session.todo.expand":"Udvid","session.followupDock.summary.one":"{{count}} besked i kø","session.followupDock.summary.other":"{{count}} beskeder i kø","session.followupDock.sendNow":"Send nu","session.followupDock.edit":"Rediger","session.followupDock.collapse":"Skjul beskeder i kø","session.followupDock.expand":"Udvid beskeder i kø","session.revertDock.summary.one":"{{count}} tilbagerullet besked","session.revertDock.summary.other":"{{count}} tilbagerullede beskeder","session.revertDock.collapse":"Skjul tilbagerullede beskeder","session.revertDock.expand":"Udvid tilbagerullede beskeder","session.revertDock.restore":"Gendan besked","session.new.title":"Byg hvad som helst","session.new.worktree.main":"Hovedgren","session.new.worktree.mainWithBranch":"Hovedgren ({{branch}})","session.new.worktree.create":"Opret nyt worktree","session.new.lastModified":"Sidst ændret","session.header.search.placeholder":"Søg {{project}}","session.header.searchFiles":"Søg efter filer","session.header.openIn":"Åbn i","session.header.open.action":"Åbn {{app}}","session.header.open.ariaLabel":"Åbn i {{app}}","session.header.open.menu":"Åbningsmuligheder","session.header.open.copyPath":"Kopier sti","status.popover.trigger":"Status","status.popover.ariaLabel":"Serverkonfigurationer","status.popover.tab.servers":"Servere","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Plugins","status.popover.action.manageServers":"Administrer servere","session.share.popover.title":"Udgiv på nettet","session.share.popover.description.shared":"Denne session er offentlig på nettet. Den er tilgængelig for alle med linket.","session.share.popover.description.unshared":"Del session offentligt på nettet. Den vil være tilgængelig for alle med linket.","session.share.action.share":"Del","session.share.action.publish":"Udgiv","session.share.action.publishing":"Udgiver...","session.share.action.unpublish":"Afpublicer","session.share.action.unpublishing":"Afpublicerer...","session.share.action.view":"Vis","session.share.copy.copied":"Kopieret","session.share.copy.copyLink":"Kopier link","lsp.tooltip.none":"Ingen LSP-servere","lsp.label.connected":"{{count}} LSP","prompt.loading":"Indlæser prompt...","terminal.loading":"Indlæser terminal...","terminal.title":"Terminal","terminal.title.numbered":"Terminal {{number}}","terminal.close":"Luk terminal","terminal.connectionLost.title":"Forbindelse mistet","terminal.connectionLost.description":"Terminalforbindelsen blev afbrudt. Dette kan ske, når serveren genstarter.","common.closeTab":"Luk fane","common.dismiss":"Afvis","common.requestFailed":"Forespørgsel mislykkedes","common.moreOptions":"Flere muligheder","common.learnMore":"Lær mere","common.rename":"Omdøb","common.reset":"Nulstil","common.archive":"Arkivér","common.delete":"Slet","common.close":"Luk","common.edit":"Rediger","common.loadMore":"Indlæs flere","common.key.esc":"ESC","sidebar.menu.toggle":"Skift menu","sidebar.nav.projectsAndSessions":"Projekter og sessioner","sidebar.settings":"Indstillinger","sidebar.help":"Hjælp","sidebar.workspaces.enable":"Aktiver arbejdsområder","sidebar.workspaces.disable":"Deaktiver arbejdsområder","sidebar.gettingStarted.title":"Kom i gang","sidebar.gettingStarted.line1":"OpenCode inkluderer gratis modeller så du kan starte med det samme.","sidebar.gettingStarted.line2":"Forbind enhver udbyder for at bruge modeller, inkl. Claude, GPT, Gemini osv.","sidebar.project.recentSessions":"Seneste sessioner","sidebar.project.viewAllSessions":"Vis alle sessioner","sidebar.project.clearNotifications":"Ryd notifikationer","app.name.desktop":"OneCode Desktop","settings.section.desktop":"Desktop","settings.section.server":"Server","settings.tab.general":"Generelt","settings.tab.shortcuts":"Genveje","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"WSL integration","settings.desktop.wsl.description":"Kør OneCode-serveren inde i WSL på Windows.","settings.general.section.appearance":"Udseende","settings.general.section.notifications":"Systemmeddelelser","settings.general.section.updates":"Opdateringer","settings.general.section.sounds":"Lydeffekter","settings.general.section.feed":"Feed","settings.general.section.display":"Skærm","settings.general.row.language.title":"Sprog","settings.general.row.language.description":"Ændr visningssproget for OneCode","settings.general.row.appearance.title":"Udseende","settings.general.row.appearance.description":"Tilpas hvordan OneCode ser ud på din enhed","settings.general.row.colorScheme.title":"Farveskema","settings.general.row.colorScheme.description":"Vælg om OneCode følger systemets, lyst eller mørkt tema","settings.general.row.theme.title":"Tema","settings.general.row.theme.description":"Tilpas hvordan OneCode er temabestemt.","settings.general.row.font.title":"Kode-skrifttype","settings.general.row.font.description":"Tilpas skrifttypen, der bruges i kodeblokke","settings.general.row.terminalFont.title":"Terminal Font","settings.general.row.terminalFont.description":"Customise the font used in the terminal","settings.general.row.uiFont.title":"UI-skrifttype","settings.general.row.uiFont.description":"Tilpas skrifttypen, der bruges i hele brugerfladen","settings.general.row.followup.title":"Opfølgningsadfærd","settings.general.row.followup.description":"Vælg om opfølgende forespørgsler skal styre straks eller vente i kø","settings.general.row.followup.option.queue":"Kø","settings.general.row.followup.option.steer":"Styr","settings.general.row.reasoningSummaries.title":"Vis tænkeoversigter","settings.general.row.reasoningSummaries.description":"Vis model tænkeoversigter i tidslinjen","settings.general.row.shellToolPartsExpanded.title":"Udvid shell-værktøjsdele","settings.general.row.shellToolPartsExpanded.description":"Vis shell-værktøjsdele udvidet som standard i tidslinjen","settings.general.row.editToolPartsExpanded.title":"Udvid edit-værktøjsdele","settings.general.row.editToolPartsExpanded.description":"Vis edit-, write- og patch-værktøjsdele udvidet som standard i tidslinjen","settings.general.row.showSessionProgressBar.title":"Vis sessionens fremdriftslinje","settings.general.row.showSessionProgressBar.description":"Vis den animerede fremdriftslinje øverst i sessionen, når agenten arbejder","settings.general.row.wayland.title":"Brug native Wayland","settings.general.row.wayland.description":"Deaktiver X11-fallback på Wayland. Kræver genstart.","settings.general.row.wayland.tooltip":"På Linux med skærme med blandet opdateringshastighed kan native Wayland være mere stabilt.","settings.general.row.releaseNotes.title":"Udgivelsesnoter","settings.general.row.releaseNotes.description":'Vis "Hvad er nyt"-popups efter opdateringer',"settings.updates.row.startup.title":"Tjek for opdateringer ved opstart","settings.updates.row.startup.description":"Tjek automatisk for opdateringer, når OneCode starter","settings.updates.row.check.title":"Tjek for opdateringer","settings.updates.row.check.description":"Tjek manuelt for opdateringer og installer, hvis tilgængelig","settings.updates.action.checkNow":"Tjek nu","settings.updates.action.checking":"Tjekker...","settings.updates.toast.latest.title":"Du er opdateret","settings.updates.toast.latest.description":"Du kører den nyeste version af OneCode.","sound.option.none":"Ingen","sound.option.alert01":"Alarm 01","sound.option.alert02":"Alarm 02","sound.option.alert03":"Alarm 03","sound.option.alert04":"Alarm 04","sound.option.alert05":"Alarm 05","sound.option.alert06":"Alarm 06","sound.option.alert07":"Alarm 07","sound.option.alert08":"Alarm 08","sound.option.alert09":"Alarm 09","sound.option.alert10":"Alarm 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nej 01","sound.option.nope02":"Nej 02","sound.option.nope03":"Nej 03","sound.option.nope04":"Nej 04","sound.option.nope05":"Nej 05","sound.option.nope06":"Nej 06","sound.option.nope07":"Nej 07","sound.option.nope08":"Nej 08","sound.option.nope09":"Nej 09","sound.option.nope10":"Nej 10","sound.option.nope11":"Nej 11","sound.option.nope12":"Nej 12","sound.option.yup01":"Ja 01","sound.option.yup02":"Ja 02","sound.option.yup03":"Ja 03","sound.option.yup04":"Ja 04","sound.option.yup05":"Ja 05","sound.option.yup06":"Ja 06","settings.general.notifications.agent.title":"Agent","settings.general.notifications.agent.description":"Vis systemmeddelelse når agenten er færdig eller kræver opmærksomhed","settings.general.notifications.permissions.title":"Tilladelser","settings.general.notifications.permissions.description":"Vis systemmeddelelse når en tilladelse er påkrævet","settings.general.notifications.errors.title":"Fejl","settings.general.notifications.errors.description":"Vis systemmeddelelse når der opstår en fejl","settings.general.sounds.agent.title":"Agent","settings.general.sounds.agent.description":"Afspil lyd når agenten er færdig eller kræver opmærksomhed","settings.general.sounds.permissions.title":"Tilladelser","settings.general.sounds.permissions.description":"Afspil lyd når en tilladelse er påkrævet","settings.general.sounds.errors.title":"Fejl","settings.general.sounds.errors.description":"Afspil lyd når der opstår en fejl","settings.shortcuts.title":"Tastaturgenveje","settings.shortcuts.reset.button":"Nulstil til standard","settings.shortcuts.reset.toast.title":"Genveje nulstillet","settings.shortcuts.reset.toast.description":"Tastaturgenveje er blevet nulstillet til standard.","settings.shortcuts.conflict.title":"Genvej allerede i brug","settings.shortcuts.conflict.description":"{{keybind}} er allerede tildelt til {{titles}}.","settings.shortcuts.unassigned":"Ikke tildelt","settings.shortcuts.pressKeys":"Tryk på taster","settings.shortcuts.search.placeholder":"Søg genveje","settings.shortcuts.search.empty":"Ingen genveje fundet","settings.shortcuts.group.general":"Generelt","settings.shortcuts.group.session":"Session","settings.shortcuts.group.navigation":"Navigation","settings.shortcuts.group.modelAndAgent":"Model og agent","settings.shortcuts.group.terminal":"Terminal","settings.shortcuts.group.prompt":"Prompt","settings.providers.title":"Udbydere","settings.providers.description":"Udbyderindstillinger vil kunne konfigureres her.","settings.providers.section.connected":"Forbundne udbydere","settings.providers.connected.empty":"Ingen forbundne udbydere","settings.providers.section.popular":"Populære udbydere","settings.providers.tag.environment":"Miljø","settings.providers.tag.config":"Konfiguration","settings.providers.tag.custom":"Brugerdefineret","settings.providers.tag.other":"Andet","settings.models.title":"Modeller","settings.models.description":"Modelindstillinger vil kunne konfigureres her.","settings.agents.title":"Agenter","settings.agents.description":"Agentindstillinger vil kunne konfigureres her.","settings.commands.title":"Kommandoer","settings.commands.description":"Kommandoindstillinger vil kunne konfigureres her.","settings.mcp.title":"MCP","settings.mcp.description":"MCP-indstillinger vil kunne konfigureres her.","settings.permissions.title":"Tilladelser","settings.permissions.description":"Styr hvilke værktøjer serveren kan bruge som standard.","settings.permissions.section.tools":"Værktøjer","settings.permissions.toast.updateFailed.title":"Kunne ikke opdatere tilladelser","settings.permissions.action.allow":"Tillad","settings.permissions.action.ask":"Spørg","settings.permissions.action.deny":"Afvis","settings.permissions.tool.read.title":"Læs","settings.permissions.tool.read.description":"Læsning af en fil (matcher filstien)","settings.permissions.tool.edit.title":"Rediger","settings.permissions.tool.edit.description":"Ændre filer, herunder redigeringer, skrivninger, patches og multi-redigeringer","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Match filer ved hjælp af glob-mønstre","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Søg i filindhold ved hjælp af regulære udtryk","settings.permissions.tool.list.title":"Liste","settings.permissions.tool.list.description":"List filer i en mappe","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Kør shell-kommandoer","settings.permissions.tool.task.title":"Opgave","settings.permissions.tool.task.description":"Start underagenter","settings.permissions.tool.skill.title":"Færdighed","settings.permissions.tool.skill.description":"Indlæs en færdighed efter navn","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Kør sprogserverforespørgsler","settings.permissions.tool.todowrite.title":"Skriv To-do","settings.permissions.tool.todowrite.description":"Opdater to-do listen","settings.permissions.tool.webfetch.title":"Webhentning","settings.permissions.tool.webfetch.description":"Hent indhold fra en URL","settings.permissions.tool.websearch.title":"Websøgning","settings.permissions.tool.websearch.description":"Søg på nettet","settings.permissions.tool.external_directory.title":"Ekstern mappe","settings.permissions.tool.external_directory.description":"Få adgang til filer uden for projektmappen","settings.permissions.tool.doom_loop.title":"Doom Loop","settings.permissions.tool.doom_loop.description":"Opdag gentagne værktøjskald med identisk input","session.delete.failed.title":"Kunne ikke slette session","session.delete.title":"Slet session","session.delete.confirm":'Slet session "{{name}}"?',"session.delete.button":"Slet session","workspace.new":"Nyt arbejdsområde","workspace.type.local":"lokal","workspace.type.sandbox":"sandkasse","workspace.create.failed.title":"Kunne ikke oprette arbejdsområde","workspace.delete.failed.title":"Kunne ikke slette arbejdsområde","workspace.resetting.title":"Nulstiller arbejdsområde","workspace.resetting.description":"Dette kan tage et minut.","workspace.reset.failed.title":"Kunne ikke nulstille arbejdsområde","workspace.reset.success.title":"Arbejdsområde nulstillet","workspace.reset.success.description":"Arbejdsområdet matcher nu hovedgrenen.","workspace.error.stillPreparing":"Arbejdsområdet er stadig ved at blive klargjort","workspace.status.checking":"Tjekker for uflettede ændringer...","workspace.status.error":"Kunne ikke bekræfte git-status.","workspace.status.clean":"Ingen uflettede ændringer fundet.","workspace.status.dirty":"Uflettede ændringer fundet i dette arbejdsområde.","workspace.delete.title":"Slet arbejdsområde","workspace.delete.confirm":'Slet arbejdsområde "{{name}}"?',"workspace.delete.button":"Slet arbejdsområde","workspace.reset.title":"Nulstil arbejdsområde","workspace.reset.confirm":'Nulstil arbejdsområde "{{name}}"?',"workspace.reset.button":"Nulstil arbejdsområde","workspace.reset.archived.none":"Ingen aktive sessioner vil blive arkiveret.","workspace.reset.archived.one":"1 session vil blive arkiveret.","workspace.reset.archived.many":"{{count}} sessioner vil blive arkiveret.","workspace.reset.note":"Dette vil nulstille arbejdsområdet til at matche hovedgrenen.","common.open":"Åbn","dialog.releaseNotes.action.getStarted":"Kom i gang","dialog.releaseNotes.action.next":"Næste","dialog.releaseNotes.action.hideFuture":"Vis ikke disse i fremtiden","dialog.releaseNotes.media.alt":"Forhåndsvisning af udgivelse","toast.project.reloadFailed.title":"Kunne ikke genindlæse {{project}}","error.server.invalidConfiguration":"Ugyldig konfiguration","common.moreCountSuffix":" (+{{count}} mere)","common.time.justNow":"Lige nu","common.time.minutesAgo.short":"{{count}}m siden","common.time.hoursAgo.short":"{{count}}t siden","common.time.daysAgo.short":"{{count}}d siden","settings.providers.connected.environmentDescription":"Tilsluttet fra dine miljøvariabler","settings.providers.custom.description":"Tilføj en OpenAI-kompatibel udbyder via basis-URL.","app.server.unreachable":"Kunne ikke nå {{server}}","app.server.retrying":"Prøver igen automatisk...","app.server.otherServers":"Andre servere","dialog.server.add.usernamePlaceholder":"brugernavn","dialog.server.add.passwordPlaceholder":"adgangskode","server.row.noUsername":"intet brugernavn","session.review.noVcs.createGit.title":"Opret et Git-repository","session.review.noVcs.createGit.description":"Spor, gennemgå og fortryd ændringer i dette projekt","session.review.noVcs.createGit.actionLoading":"Opretter Git-repository...","session.review.noVcs.createGit.action":"Opret Git-repository","session.todo.progress":"{{done}} af {{total}} opgaver fuldført","session.question.progress":"{{current}} af {{total}} spørgsmål","session.header.open.finder":"Finder","session.header.open.fileExplorer":"Stifinder","session.header.open.fileManager":"Filhåndtering","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Terminal","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","debugBar.ariaLabel":"Udviklingsydelsesdiagnostik","debugBar.na":"n/a","debugBar.nav.label":"NAV","debugBar.nav.tip":"Sidste gennemførte ruteovergang, der berører en sessionsside, målt fra routerstart til den første optegning efter den falder til ro.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Rullende billeder pr. sekund over de sidste 5 sekunder.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Værste billedtid over de sidste 5 sekunder.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Billeder over 32ms i de sidste 5 sekunder.","debugBar.long.label":"LONG","debugBar.long.tip":"Blokeret tid og antal lange opgaver i de sidste 5 sekunder. Maks opgave: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Værste observerede inputforsinkelse i de sidste 5 sekunder.","debugBar.inp.label":"INP","debugBar.inp.tip":"Omtrentlig interaktionsvarighed over de sidste 5 sekunder. Dette er INP-lignende, ikke den officielle Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Kumulativt layoutskift for den nuværende app-levetid.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Brugt JS-heap vs heap-grænse. Kun Chromium.","debugBar.mem.tip":"Brugt JS-heap vs heap-grænse. {{used}} af {{limit}}.","common.key.ctrl":"Ctrl","common.key.alt":"Alt","common.key.shift":"Shift","common.key.meta":"Meta","common.key.space":"Mellemrum","common.key.backspace":"Backspace","common.key.enter":"Enter","common.key.tab":"Tab","common.key.delete":"Delete","common.key.home":"Home","common.key.end":"End","common.key.pageUp":"Page Up","common.key.pageDown":"Page Down","common.key.insert":"Insert","common.unknown":"ukendt","error.page.circular":"[Cirkulær]","error.globalSDK.noServerAvailable":"Ingen server tilgængelig","error.globalSDK.serverNotAvailable":"Server ikke tilgængelig","error.childStore.persistedCacheCreateFailed":"Kunne ikke oprette vedvarende cache","error.childStore.persistedProjectMetadataCreateFailed":"Kunne ikke oprette vedvarende projektmetadata","error.childStore.persistedProjectIconCreateFailed":"Kunne ikke oprette vedvarende projektikon","error.childStore.storeCreateFailed":"Kunne ikke oprette lager","terminal.connectionLost.abnormalClose":"WebSocket lukkede unormalt: {{code}}"};export{e as dict};
@@ -0,0 +1,3 @@
1
+ const e={"command.category.suggested":"Vorgeschlagen","command.category.view":"Ansicht","command.category.project":"Projekt","command.category.provider":"Anbieter","command.category.server":"Server","command.category.session":"Sitzung","command.category.theme":"Thema","command.category.language":"Sprache","command.category.file":"Datei","command.category.context":"Kontext","command.category.terminal":"Terminal","command.category.model":"Modell","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Berechtigungen","command.category.workspace":"Arbeitsbereich","command.category.settings":"Einstellungen","theme.scheme.system":"System","theme.scheme.light":"Hell","theme.scheme.dark":"Dunkel","command.sidebar.toggle":"Seitenleiste umschalten","command.project.open":"Projekt öffnen","command.provider.connect":"Anbieter verbinden","command.server.switch":"Server wechseln","command.settings.open":"Einstellungen öffnen","command.session.previous":"Vorherige Sitzung","command.session.next":"Nächste Sitzung","command.session.previous.unseen":"Vorherige ungelesene Sitzung","command.session.next.unseen":"Nächste ungelesene Sitzung","command.session.archive":"Sitzung archivieren","command.palette":"Befehlspalette","command.theme.cycle":"Thema wechseln","command.theme.set":"Thema verwenden: {{theme}}","command.theme.scheme.cycle":"Farbschema wechseln","command.theme.scheme.set":"Farbschema verwenden: {{scheme}}","command.language.cycle":"Sprache wechseln","command.language.set":"Sprache verwenden: {{language}}","command.session.new":"Neue Sitzung","command.file.open":"Datei öffnen","command.tab.close":"Tab schließen","command.context.addSelection":"Auswahl zum Kontext hinzufügen","command.context.addSelection.description":"Ausgewählte Zeilen aus der aktuellen Datei hinzufügen","command.input.focus":"Eingabefeld fokussieren","command.terminal.toggle":"Terminal umschalten","command.fileTree.toggle":"Dateibaum umschalten","command.review.toggle":"Überprüfung umschalten","command.terminal.new":"Neues Terminal","command.terminal.new.description":"Neuen Terminal-Tab erstellen","command.steps.toggle":"Schritte umschalten","command.steps.toggle.description":"Schritte für die aktuelle Nachricht anzeigen oder ausblenden","command.message.previous":"Vorherige Nachricht","command.message.previous.description":"Zur vorherigen Benutzernachricht gehen","command.message.next":"Nächste Nachricht","command.message.next.description":"Zur nächsten Benutzernachricht gehen","command.model.choose":"Modell wählen","command.model.choose.description":"Ein anderes Modell auswählen","command.mcp.toggle":"MCPs umschalten","command.mcp.toggle.description":"MCPs umschalten","command.agent.cycle":"Agent wechseln","command.agent.cycle.description":"Zum nächsten Agenten wechseln","command.agent.cycle.reverse":"Agent rückwärts wechseln","command.agent.cycle.reverse.description":"Zum vorherigen Agenten wechseln","command.model.variant.cycle":"Denkaufwand wechseln","command.model.variant.cycle.description":"Zum nächsten Aufwandslevel wechseln","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Berechtigungen automatisch akzeptieren","command.permissions.autoaccept.disable":"Automatische Akzeptanz von Berechtigungen stoppen","command.workspace.toggle":"Arbeitsbereiche umschalten","command.workspace.toggle.description":"Mehrere Arbeitsbereiche in der Seitenleiste aktivieren oder deaktivieren","command.session.undo":"Rückgängig","command.session.undo.description":"Letzte Nachricht rückgängig machen","command.session.redo":"Wiederherstellen","command.session.redo.description":"Letzte rückgängig gemachte Nachricht wiederherstellen","command.session.compact":"Sitzung komprimieren","command.session.compact.description":"Sitzung zusammenfassen, um die Kontextgröße zu reduzieren","command.session.fork":"Von Nachricht abzweigen","command.session.fork.description":"Neue Sitzung aus einer früheren Nachricht erstellen","command.session.share":"Sitzung teilen","command.session.share.description":"Diese Sitzung teilen und URL in die Zwischenablage kopieren","command.session.unshare":"Teilen der Sitzung aufheben","command.session.unshare.description":"Teilen dieser Sitzung beenden","palette.search.placeholder":"Dateien, Befehle und Sitzungen durchsuchen","palette.empty":"Keine Ergebnisse gefunden","palette.group.commands":"Befehle","palette.group.files":"Dateien","dialog.provider.search.placeholder":"Anbieter durchsuchen","dialog.provider.empty":"Keine Anbieter gefunden","dialog.provider.group.popular":"Beliebt","dialog.provider.group.other":"Andere","dialog.provider.tag.recommended":"Empfohlen","dialog.provider.tag.connected":"Verbunden","dialog.provider.opencode.note":"Kuratierte Modelle inklusive Claude, GPT, Gemini und mehr","dialog.provider.opencode.tagline":"Zuverlässige, optimierte Modelle","dialog.provider.opencodeGo.tagline":"Kostengünstiges Abo für alle","dialog.provider.anthropic.note":"Mit Claude Pro/Max oder API-Schlüssel verbinden","dialog.provider.copilot.note":"Mit Copilot oder API-Schlüssel verbinden","dialog.provider.openai.note":"Mit ChatGPT Pro/Plus oder API-Schlüssel verbinden","dialog.provider.google.note":"Gemini-Modelle für schnelle, strukturierte Antworten","dialog.provider.openrouter.note":"Zugriff auf alle unterstützten Modelle über einen Anbieter","dialog.provider.vercel.note":"Einheitlicher Zugriff auf KI-Modelle mit intelligentem Routing","dialog.model.select.title":"Modell auswählen","dialog.model.search.placeholder":"Modelle durchsuchen","dialog.model.empty":"Keine Modellergebnisse","dialog.model.manage":"Modelle verwalten","dialog.model.manage.description":"Anpassen, welche Modelle in der Modellauswahl erscheinen.","dialog.model.manage.provider.toggle":"Alle {{provider}}-Modelle umschalten","dialog.model.unpaid.freeModels.title":"Kostenlose Modelle von OpenCode","dialog.model.unpaid.addMore.title":"Weitere Modelle von beliebten Anbietern hinzufügen","dialog.provider.viewAll":"Mehr Anbieter anzeigen","provider.connect.title":"{{provider}} verbinden","provider.connect.title.anthropicProMax":"Mit Claude Pro/Max anmelden","provider.connect.selectMethod":"Anmeldemethode für {{provider}} auswählen.","provider.connect.method.apiKey":"API-Schlüssel","provider.connect.status.inProgress":"Autorisierung läuft...","provider.connect.status.waiting":"Warten auf Autorisierung...","provider.connect.status.failed":"Autorisierung fehlgeschlagen: {{error}}","provider.connect.apiKey.description":"Geben Sie Ihren {{provider}} API-Schlüssel ein, um Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.apiKey.label":"{{provider}} API-Schlüssel","provider.connect.apiKey.placeholder":"API-Schlüssel","provider.connect.apiKey.required":"API-Schlüssel ist erforderlich","provider.connect.opencodeZen.line1":"OpenCode Zen bietet Ihnen Zugriff auf eine kuratierte Auswahl zuverlässiger, optimierter Modelle für Coding-Agenten.","provider.connect.opencodeZen.line2":"Mit einem einzigen API-Schlüssel erhalten Sie Zugriff auf Modelle wie Claude, GPT, Gemini, GLM und mehr.","provider.connect.opencodeZen.visit.prefix":"Besuchen Sie ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":", um Ihren API-Schlüssel zu erhalten.","provider.connect.oauth.code.visit.prefix":"Besuchen Sie ","provider.connect.oauth.code.visit.link":"diesen Link","provider.connect.oauth.code.visit.suffix":", um Ihren Autorisierungscode zu erhalten, Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.oauth.code.label":"{{method}} Autorisierungscode","provider.connect.oauth.code.placeholder":"Autorisierungscode","provider.connect.oauth.code.required":"Autorisierungscode ist erforderlich","provider.connect.oauth.code.invalid":"Ungültiger Autorisierungscode","provider.connect.oauth.auto.visit.prefix":"Besuchen Sie ","provider.connect.oauth.auto.visit.link":"diesen Link","provider.connect.oauth.auto.visit.suffix":" und geben Sie den untenstehenden Code ein, um Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.oauth.auto.confirmationCode":"Bestätigungscode","provider.connect.toast.connected.title":"{{provider}} verbunden","provider.connect.toast.connected.description":"{{provider}} Modelle sind jetzt verfügbar.","provider.custom.title":"Benutzerdefinierter Anbieter","provider.custom.description.prefix":"Konfigurieren Sie einen OpenAI-kompatiblen Anbieter. Siehe die ","provider.custom.description.link":"Anbieter-Konfigurationsdokumente","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"Anbieter-ID","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"Kleinbuchstaben, Zahlen, Bindestriche oder Unterstriche","provider.custom.field.name.label":"Anzeigename","provider.custom.field.name.placeholder":"Mein KI-Anbieter","provider.custom.field.baseURL.label":"Basis-URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.apiKey.label":"API-Schlüssel","provider.custom.field.apiKey.placeholder":"API-Schlüssel","provider.custom.field.apiKey.description":"Optional. Leer lassen, wenn Sie die Authentifizierung über Header verwalten.","provider.custom.models.label":"Modelle","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Name","provider.custom.models.name.placeholder":"Anzeigename","provider.custom.models.remove":"Modell entfernen","provider.custom.models.add":"Modell hinzufügen","provider.custom.headers.label":"Header (optional)","provider.custom.headers.key.label":"Header","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"Wert","provider.custom.headers.value.placeholder":"wert","provider.custom.headers.remove":"Header entfernen","provider.custom.headers.add":"Header hinzufügen","provider.custom.error.providerID.required":"Anbieter-ID ist erforderlich","provider.custom.error.providerID.format":"Verwenden Sie Kleinbuchstaben, Zahlen, Bindestriche oder Unterstriche","provider.custom.error.providerID.exists":"Diese Anbieter-ID existiert bereits","provider.custom.error.name.required":"Anzeigename ist erforderlich","provider.custom.error.baseURL.required":"Basis-URL ist erforderlich","provider.custom.error.baseURL.format":"Muss mit http:// oder https:// beginnen","provider.custom.error.required":"Erforderlich","provider.custom.error.duplicate":"Duplikat","provider.disconnect.toast.disconnected.title":"{{provider}} getrennt","provider.disconnect.toast.disconnected.description":"Die {{provider}}-Modelle sind nicht mehr verfügbar.","model.tag.free":"Kostenlos","model.tag.latest":"Neueste","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"Text","model.input.image":"Bild","model.input.audio":"Audio","model.input.video":"Video","model.input.pdf":"PDF","model.tooltip.allows":"Erlaubt: {{inputs}}","model.tooltip.reasoning.allowed":"Erlaubt Reasoning","model.tooltip.reasoning.none":"Kein Reasoning","model.tooltip.context":"Kontextlimit {{limit}}","common.search.placeholder":"Suchen","common.goBack":"Zurück","common.goForward":"Vorwärts navigieren","common.loading":"Laden","common.loading.ellipsis":"...","common.cancel":"Abbrechen","common.connect":"Verbinden","common.disconnect":"Trennen","common.continue":"Absenden","common.submit":"Absenden","common.save":"Speichern","common.saving":"Speichert...","common.default":"Standard","common.attachment":"Anhang","prompt.placeholder.shell":"Shell-Befehl eingeben... {{example}}","prompt.placeholder.normal":'Fragen Sie alles... "{{example}}"',"prompt.placeholder.simple":"Fragen Sie alles...","prompt.placeholder.summarizeComments":"Kommentare zusammenfassen…","prompt.placeholder.summarizeComment":"Kommentar zusammenfassen…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc zum Verlassen","prompt.example.1":"Ein TODO in der Codebasis beheben","prompt.example.2":"Was ist der Tech-Stack dieses Projekts?","prompt.example.3":"Fehlerhafte Tests beheben","prompt.example.4":"Erkläre, wie die Authentifizierung funktioniert","prompt.example.5":"Sicherheitslücken finden und beheben","prompt.example.6":"Unit-Tests für den Benutzerdienst hinzufügen","prompt.example.7":"Diese Funktion lesbarer gestalten","prompt.example.8":"Was bedeutet dieser Fehler?","prompt.example.9":"Hilf mir, dieses Problem zu debuggen","prompt.example.10":"API-Dokumentation generieren","prompt.example.11":"Datenbankabfragen optimieren","prompt.example.12":"Eingabevalidierung hinzufügen","prompt.example.13":"Neue Komponente erstellen für...","prompt.example.14":"Wie deploye ich dieses Projekt?","prompt.example.15":"Meinen Code auf Best Practices überprüfen","prompt.example.16":"Fehlerbehandlung zu dieser Funktion hinzufügen","prompt.example.17":"Erkläre dieses Regex-Muster","prompt.example.18":"Dies in TypeScript konvertieren","prompt.example.19":"Logging in der gesamten Codebasis hinzufügen","prompt.example.20":"Welche Abhängigkeiten sind veraltet?","prompt.example.21":"Hilf mir, ein Migrationsskript zu schreiben","prompt.example.22":"Caching für diesen Endpunkt implementieren","prompt.example.23":"Paginierung zu dieser Liste hinzufügen","prompt.example.24":"CLI-Befehl erstellen für...","prompt.example.25":"Wie funktionieren Umgebungsvariablen hier?","prompt.popover.emptyResults":"Keine passenden Ergebnisse","prompt.popover.emptyCommands":"Keine passenden Befehle","prompt.dropzone.label":"Bilder, PDFs oder Textdateien hier ablegen","prompt.dropzone.file.label":"Ablegen zum @Erwähnen der Datei","prompt.slash.badge.custom":"benutzerdefiniert","prompt.slash.badge.skill":"Skill","prompt.slash.badge.mcp":"MCP","prompt.context.active":"aktiv","prompt.context.includeActiveFile":"Aktive Datei einbeziehen","prompt.context.removeActiveFile":"Aktive Datei aus dem Kontext entfernen","prompt.context.removeFile":"Datei aus dem Kontext entfernen","prompt.action.attachFile":"Datei anhängen","prompt.attachment.remove":"Anhang entfernen","prompt.action.send":"Senden","prompt.action.stop":"Stopp","prompt.toast.pasteUnsupported.title":"Nicht unterstützter Anhang","prompt.toast.pasteUnsupported.description":"Hier können nur Bilder, PDFs oder Textdateien angehängt werden.","prompt.toast.modelAgentRequired.title":"Wählen Sie einen Agenten und ein Modell","prompt.toast.modelAgentRequired.description":"Wählen Sie einen Agenten und ein Modell, bevor Sie eine Eingabe senden.","prompt.toast.worktreeCreateFailed.title":"Worktree konnte nicht erstellt werden","prompt.toast.sessionCreateFailed.title":"Sitzung konnte nicht erstellt werden","prompt.toast.shellSendFailed.title":"Shell-Befehl konnte nicht gesendet werden","prompt.toast.commandSendFailed.title":"Befehl konnte nicht gesendet werden","prompt.toast.promptSendFailed.title":"Eingabe konnte nicht gesendet werden","prompt.toast.promptSendFailed.description":"Sitzung konnte nicht abgerufen werden","dialog.mcp.title":"MCPs","dialog.mcp.description":"{{enabled}} von {{total}} aktiviert","dialog.mcp.empty":"Keine MCPs konfiguriert","dialog.lsp.empty":"LSPs automatisch nach Dateityp erkannt","dialog.plugins.empty":"In opencode.json konfigurierte Plugins","mcp.status.connected":"verbunden","mcp.status.failed":"fehlgeschlagen","mcp.status.needs_auth":"benötigt Authentifizierung","mcp.status.disabled":"deaktiviert","dialog.fork.empty":"Keine Nachrichten zum Abzweigen vorhanden","dialog.directory.search.placeholder":"Ordner durchsuchen","dialog.directory.empty":"Keine Ordner gefunden","dialog.server.title":"Server","dialog.server.description":"Wechseln Sie den OneCode-Server, mit dem sich diese App verbindet.","dialog.server.search.placeholder":"Server durchsuchen","dialog.server.empty":"Noch keine Server","dialog.server.add.title":"Server hinzufügen","dialog.server.add.url":"Server-URL","dialog.server.add.placeholder":"http://127.0.0.1:4096","dialog.server.add.error":"Verbindung zum Server fehlgeschlagen","dialog.server.add.checking":"Prüfen...","dialog.server.add.button":"Server hinzufügen","dialog.server.add.name":"Servername (optional)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Benutzername (optional)","dialog.server.add.password":"Passwort (optional)","dialog.server.edit.title":"Server bearbeiten","dialog.server.default.title":"Standardserver","dialog.server.default.description":"Beim App-Start mit diesem Server verbinden, anstatt einen lokalen Server zu starten. Erfordert Neustart.","dialog.server.default.none":"Kein Server ausgewählt","dialog.server.default.set":"Aktuellen Server als Standard setzen","dialog.server.default.clear":"Löschen","dialog.server.action.remove":"Server entfernen","dialog.server.menu.edit":"Bearbeiten","dialog.server.menu.default":"Als Standard festlegen","dialog.server.menu.defaultRemove":"Standard entfernen","dialog.server.menu.delete":"Löschen","dialog.server.current":"Aktueller Server","dialog.server.status.default":"Standard","dialog.project.edit.title":"Projekt bearbeiten","dialog.project.edit.name":"Name","dialog.project.edit.icon":"Icon","dialog.project.edit.icon.alt":"Projekt-Icon","dialog.project.edit.icon.hint":"Klicken oder Bild ziehen","dialog.project.edit.icon.recommended":"Empfohlen: 128x128px","dialog.project.edit.color":"Farbe","dialog.project.edit.color.select":"{{color}}-Farbe auswählen","dialog.project.edit.worktree.startup":"Startup-Skript für Arbeitsbereich","dialog.project.edit.worktree.startup.description":"Wird nach dem Erstellen eines neuen Arbeitsbereichs (Worktree) ausgeführt.","dialog.project.edit.worktree.startup.placeholder":"z. B. bun install","context.breakdown.title":"Kontext-Aufschlüsselung","context.breakdown.note":'Ungefähre Aufschlüsselung der Eingabe-Token. "Andere" beinhaltet Werkzeugdefinitionen und Overhead.',"context.breakdown.system":"System","context.breakdown.user":"Benutzer","context.breakdown.assistant":"Assistent","context.breakdown.tool":"Werkzeugaufrufe","context.breakdown.other":"Andere","context.systemPrompt.title":"System-Prompt","context.rawMessages.title":"Rohdaten der Nachrichten","context.stats.session":"Sitzung","context.stats.messages":"Nachrichten","context.stats.provider":"Anbieter","context.stats.model":"Modell","context.stats.limit":"Kontextlimit","context.stats.totalTokens":"Gesamt-Token","context.stats.usage":"Nutzung","context.stats.inputTokens":"Eingabe-Token","context.stats.outputTokens":"Ausgabe-Token","context.stats.reasoningTokens":"Reasoning-Token","context.stats.cacheTokens":"Cache-Token (lesen/schreiben)","context.stats.userMessages":"Benutzernachrichten","context.stats.assistantMessages":"Assistentennachrichten","context.stats.totalCost":"Gesamtkosten","context.stats.sessionCreated":"Sitzung erstellt","context.stats.lastActivity":"Letzte Aktivität","context.usage.tokens":"Token","context.usage.usage":"Nutzung","context.usage.cost":"Kosten","context.usage.clickToView":"Klicken, um Kontext anzuzeigen","context.usage.view":"Kontextnutzung anzeigen","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":"Sprache","toast.language.description":"Zu {{language}} gewechselt","toast.theme.title":"Thema gewechselt","toast.scheme.title":"Farbschema","toast.workspace.enabled.title":"Arbeitsbereiche aktiviert","toast.workspace.enabled.description":"Mehrere Worktrees werden jetzt in der Seitenleiste angezeigt","toast.workspace.disabled.title":"Arbeitsbereiche deaktiviert","toast.workspace.disabled.description":"Nur der Haupt-Worktree wird in der Seitenleiste angezeigt","toast.permissions.autoaccept.on.title":"Berechtigungen werden automatisch akzeptiert","toast.permissions.autoaccept.on.description":"Berechtigungsanfragen werden automatisch genehmigt","toast.permissions.autoaccept.off.title":"Automatische Akzeptanz von Berechtigungen gestoppt","toast.permissions.autoaccept.off.description":"Berechtigungsanfragen erfordern eine Genehmigung","toast.model.none.title":"Kein Modell ausgewählt","toast.model.none.description":"Verbinden Sie einen Anbieter, um diese Sitzung zusammenzufassen","toast.file.loadFailed.title":"Datei konnte nicht geladen werden","toast.file.listFailed.title":"Dateien konnten nicht aufgelistet werden","toast.context.noLineSelection.title":"Keine Zeilenauswahl","toast.context.noLineSelection.description":"Wählen Sie zuerst einen Zeilenbereich in einem Datei-Tab aus.","toast.session.share.copyFailed.title":"URL konnte nicht in die Zwischenablage kopiert werden","toast.session.share.success.title":"Sitzung geteilt","toast.session.share.success.description":"Teilen-URL in die Zwischenablage kopiert!","toast.session.share.failed.title":"Sitzung konnte nicht geteilt werden","toast.session.share.failed.description":"Beim Teilen der Sitzung ist ein Fehler aufgetreten","toast.session.unshare.success.title":"Teilen der Sitzung aufgehoben","toast.session.unshare.success.description":"Teilen der Sitzung erfolgreich aufgehoben!","toast.session.unshare.failed.title":"Aufheben des Teilens fehlgeschlagen","toast.session.unshare.failed.description":"Beim Aufheben des Teilens ist ein Fehler aufgetreten","toast.session.listFailed.title":"Sitzungen für {{project}} konnten nicht geladen werden","toast.update.title":"Update verfügbar","toast.update.description":"Eine neue Version von OneCode ({{version}}) ist zur Installation verfügbar.","toast.update.action.installRestart":"Installieren und neu starten","toast.update.action.notYet":"Noch nicht","error.page.title":"Etwas ist schiefgelaufen","error.page.description":"Beim Laden der Anwendung ist ein Fehler aufgetreten.","error.page.details.label":"Fehlerdetails","error.page.action.restart":"Neustart","error.page.action.report":"Fehler melden","error.page.action.reported":"Fehler gemeldet","error.page.action.checking":"Prüfen...","error.page.action.checkUpdates":"Nach Updates suchen","error.page.action.updateTo":"Auf {{version}} aktualisieren","error.page.report.prefix":"Bitte melden Sie diesen Fehler dem OpenCode-Team","error.page.report.discord":"auf Discord","error.page.version":"Version: {{version}}","error.dev.rootNotFound":"Wurzelelement nicht gefunden. Haben Sie vergessen, es in Ihre index.html aufzunehmen? Oder wurde das id-Attribut falsch geschrieben?","error.globalSync.connectFailed":"Verbindung zum Server fehlgeschlagen. Läuft ein Server unter `{{url}}`?","directory.error.invalidUrl":"Ungültiges Verzeichnis in der URL.","error.chain.unknown":"Unbekannter Fehler","error.chain.causedBy":"Verursacht durch:","error.chain.apiError":"API-Fehler","error.chain.status":"Status: {{status}}","error.chain.retryable":"Wiederholbar: {{retryable}}","error.chain.responseBody":`Antwort-Body:
2
+ {{body}}`,"error.chain.didYouMean":"Meinten Sie: {{suggestions}}","error.chain.modelNotFound":"Modell nicht gefunden: {{provider}}/{{model}}","error.chain.checkConfig":"Überprüfen Sie Ihre Konfiguration (opencode.json) auf Anbieter-/Modellnamen","error.chain.mcpFailed":'MCP-Server "{{name}}" fehlgeschlagen. Hinweis: OpenCode unterstützt noch keine MCP-Authentifizierung.',"error.chain.providerAuthFailed":"Anbieter-Authentifizierung fehlgeschlagen ({{provider}}): {{message}}","error.chain.providerInitFailed":'Anbieter "{{provider}}" konnte nicht initialisiert werden. Überprüfen Sie Anmeldeinformationen und Konfiguration.',"error.chain.configJsonInvalid":"Konfigurationsdatei unter {{path}} ist kein gültiges JSON(C)","error.chain.configJsonInvalidWithMessage":"Konfigurationsdatei unter {{path}} ist kein gültiges JSON(C): {{message}}","error.chain.configDirectoryTypo":'Verzeichnis "{{dir}}" in {{path}} ist ungültig. Benennen Sie das Verzeichnis in "{{suggestion}}" um oder entfernen Sie es. Dies ist ein häufiger Tippfehler.',"error.chain.configFrontmatterError":`Frontmatter in {{path}} konnte nicht geparst werden:
3
+ {{message}}`,"error.chain.configInvalid":"Konfigurationsdatei unter {{path}} ist ungültig","error.chain.configInvalidWithMessage":"Konfigurationsdatei unter {{path}} ist ungültig: {{message}}","notification.permission.title":"Berechtigung erforderlich","notification.permission.description":"{{sessionTitle}} in {{projectName}} benötigt Berechtigung","notification.question.title":"Frage","notification.question.description":"{{sessionTitle}} in {{projectName}} hat eine Frage","notification.action.goToSession":"Zur Sitzung gehen","notification.session.responseReady.title":"Antwort bereit","notification.session.error.title":"Sitzungsfehler","notification.session.error.fallbackDescription":"Ein Fehler ist aufgetreten","home.recentProjects":"Letzte Projekte","home.empty.title":"Keine letzten Projekte","home.empty.description":"Starten Sie, indem Sie ein lokales Projekt öffnen","session.tab.session":"Sitzung","session.tab.review":"Überprüfung","session.tab.context":"Kontext","session.panel.reviewAndFiles":"Überprüfung und Dateien","session.review.filesChanged":"{{count}} Dateien geändert","session.review.change.one":"Änderung","session.review.change.other":"Änderungen","session.review.loadingChanges":"Lade Änderungen...","session.review.empty":"Noch keine Änderungen in dieser Sitzung","session.review.noVcs":"Kein Git-Versionskontrollsystem erkannt, Änderungen werden nicht angezeigt","session.review.noSnapshot":"Snapshot-Tracking ist in der Konfiguration deaktiviert, daher sind Sitzungsänderungen nicht verfügbar","session.review.noChanges":"Keine Änderungen","session.files.selectToOpen":"Datei zum Öffnen auswählen","session.files.all":"Alle Dateien","session.files.empty":"Keine Dateien","session.files.binaryContent":"Binärdatei (Inhalt kann nicht angezeigt werden)","session.messages.renderEarlier":"Frühere Nachrichten rendern","session.messages.loadingEarlier":"Lade frühere Nachrichten...","session.messages.loadEarlier":"Frühere Nachrichten laden","session.messages.loading":"Lade Nachrichten...","session.messages.jumpToLatest":"Zum neuesten springen","session.context.addToContext":"{{selection}} zum Kontext hinzufügen","session.todo.title":"Aufgaben","session.todo.collapse":"Einklappen","session.todo.expand":"Ausklappen","session.followupDock.summary.one":"{{count}} Nachricht in der Warteschlange","session.followupDock.summary.other":"{{count}} Nachrichten in der Warteschlange","session.followupDock.sendNow":"Jetzt senden","session.followupDock.edit":"Bearbeiten","session.followupDock.collapse":"Warteschlange einklappen","session.followupDock.expand":"Warteschlange ausklappen","session.revertDock.summary.one":"{{count}} zurückgesetzte Nachricht","session.revertDock.summary.other":"{{count}} zurückgesetzte Nachrichten","session.revertDock.collapse":"Zurückgesetzte Nachrichten einklappen","session.revertDock.expand":"Zurückgesetzte Nachrichten ausklappen","session.revertDock.restore":"Nachricht wiederherstellen","session.new.title":"Baue, was du willst","session.new.worktree.main":"Haupt-Branch","session.new.worktree.mainWithBranch":"Haupt-Branch ({{branch}})","session.new.worktree.create":"Neuen Worktree erstellen","session.new.lastModified":"Zuletzt geändert","session.header.search.placeholder":"{{project}} durchsuchen","session.header.searchFiles":"Dateien suchen","session.header.openIn":"Öffnen in","session.header.open.action":"{{app}} öffnen","session.header.open.ariaLabel":"In {{app}} öffnen","session.header.open.menu":"Öffnen-Optionen","session.header.open.copyPath":"Pfad kopieren","status.popover.trigger":"Status","status.popover.ariaLabel":"Serverkonfigurationen","status.popover.tab.servers":"Server","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Plugins","status.popover.action.manageServers":"Server verwalten","session.share.popover.title":"Im Web veröffentlichen","session.share.popover.description.shared":"Diese Sitzung ist öffentlich im Web. Sie ist für jeden mit dem Link zugänglich.","session.share.popover.description.unshared":"Sitzung öffentlich im Web teilen. Sie wird für jeden mit dem Link zugänglich sein.","session.share.action.share":"Teilen","session.share.action.publish":"Veröffentlichen","session.share.action.publishing":"Veröffentliche...","session.share.action.unpublish":"Veröffentlichung aufheben","session.share.action.unpublishing":"Hebe Veröffentlichung auf...","session.share.action.view":"Ansehen","session.share.copy.copied":"Kopiert","session.share.copy.copyLink":"Link kopieren","lsp.tooltip.none":"Keine LSP-Server","lsp.label.connected":"{{count}} LSP","prompt.loading":"Lade Prompt...","terminal.loading":"Lade Terminal...","terminal.title":"Terminal","terminal.title.numbered":"Terminal {{number}}","terminal.close":"Terminal schließen","terminal.connectionLost.title":"Verbindung verloren","terminal.connectionLost.description":"Die Terminalverbindung wurde unterbrochen. Das kann passieren, wenn der Server neu startet.","common.closeTab":"Tab schließen","common.dismiss":"Verwerfen","common.requestFailed":"Anfrage fehlgeschlagen","common.moreOptions":"Weitere Optionen","common.learnMore":"Mehr erfahren","common.rename":"Umbenennen","common.reset":"Zurücksetzen","common.archive":"Archivieren","common.delete":"Löschen","common.close":"Schließen","common.edit":"Bearbeiten","common.loadMore":"Mehr laden","common.key.esc":"ESC","sidebar.menu.toggle":"Menü umschalten","sidebar.nav.projectsAndSessions":"Projekte und Sitzungen","sidebar.settings":"Einstellungen","sidebar.help":"Hilfe","sidebar.workspaces.enable":"Arbeitsbereiche aktivieren","sidebar.workspaces.disable":"Arbeitsbereiche deaktivieren","sidebar.gettingStarted.title":"Erste Schritte","sidebar.gettingStarted.line1":"OpenCode enthält kostenlose Modelle, damit Sie sofort loslegen können.","sidebar.gettingStarted.line2":"Verbinden Sie einen beliebigen Anbieter, um Modelle wie Claude, GPT, Gemini usw. zu nutzen.","sidebar.project.recentSessions":"Letzte Sitzungen","sidebar.project.viewAllSessions":"Alle Sitzungen anzeigen","sidebar.project.clearNotifications":"Benachrichtigungen löschen","app.name.desktop":"OneCode Desktop","settings.section.desktop":"Desktop","settings.section.server":"Server","settings.tab.general":"Allgemein","settings.tab.shortcuts":"Tastenkombinationen","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"WSL-Integration","settings.desktop.wsl.description":"OneCode-Server innerhalb von WSL unter Windows ausführen.","settings.general.section.appearance":"Erscheinungsbild","settings.general.section.notifications":"Systembenachrichtigungen","settings.general.section.updates":"Updates","settings.general.section.sounds":"Soundeffekte","settings.general.section.feed":"Feed","settings.general.section.display":"Anzeige","settings.general.row.language.title":"Sprache","settings.general.row.language.description":"Die Anzeigesprache für OneCode ändern","settings.general.row.appearance.title":"Erscheinungsbild","settings.general.row.appearance.description":"Anpassen, wie OneCode auf Ihrem Gerät aussieht","settings.general.row.colorScheme.title":"Farbschema","settings.general.row.colorScheme.description":"Wählen Sie, ob OneCode dem System-, hellen oder dunklen Thema folgt","settings.general.row.theme.title":"Thema","settings.general.row.theme.description":"Das Thema von OneCode anpassen.","settings.general.row.font.title":"Code-Schriftart","settings.general.row.font.description":"Die in Codeblöcken verwendete Schriftart anpassen","settings.general.row.terminalFont.title":"Terminal Font","settings.general.row.terminalFont.description":"Customise the font used in the terminal","settings.general.row.uiFont.title":"UI-Schriftart","settings.general.row.uiFont.description":"Die im gesamten Interface verwendete Schriftart anpassen","settings.general.row.followup.title":"Verhalten bei Folgefragen","settings.general.row.followup.description":"Wählen Sie, ob Folgefragen sofort steuern oder in einer Warteschlange warten","settings.general.row.followup.option.queue":"Warteschlange","settings.general.row.followup.option.steer":"Steuern","settings.general.row.reasoningSummaries.title":"Reasoning-Zusammenfassungen anzeigen","settings.general.row.reasoningSummaries.description":"Zusammenfassungen des Modell-Reasonings in der Timeline anzeigen","settings.general.row.shellToolPartsExpanded.title":"Shell-Tool-Abschnitte ausklappen","settings.general.row.shellToolPartsExpanded.description":"Shell-Tool-Abschnitte standardmäßig in der Timeline ausgeklappt anzeigen","settings.general.row.editToolPartsExpanded.title":"Edit-Tool-Abschnitte ausklappen","settings.general.row.editToolPartsExpanded.description":"Edit-, Write- und Patch-Tool-Abschnitte standardmäßig in der Timeline ausgeklappt anzeigen","settings.general.row.showSessionProgressBar.title":"Sitzungsfortschrittsleiste anzeigen","settings.general.row.showSessionProgressBar.description":"Die animierte Fortschrittsleiste oben in der Sitzung anzeigen, wenn der Agent arbeitet","settings.general.row.wayland.title":"Natives Wayland verwenden","settings.general.row.wayland.description":"X11-Fallback unter Wayland deaktivieren. Erfordert Neustart.","settings.general.row.wayland.tooltip":"Unter Linux mit Monitoren unterschiedlicher Bildwiederholraten kann natives Wayland stabiler sein.","settings.general.row.releaseNotes.title":"Versionshinweise","settings.general.row.releaseNotes.description":'"Neuigkeiten"-Pop-ups nach Updates anzeigen',"settings.updates.row.startup.title":"Beim Start nach Updates suchen","settings.updates.row.startup.description":"Beim Start von OneCode automatisch nach Updates suchen","settings.updates.row.check.title":"Nach Updates suchen","settings.updates.row.check.description":"Manuell nach Updates suchen und installieren, wenn verfügbar","settings.updates.action.checkNow":"Jetzt prüfen","settings.updates.action.checking":"Wird geprüft...","settings.updates.toast.latest.title":"Du bist auf dem neuesten Stand","settings.updates.toast.latest.description":"Du verwendest die aktuelle Version von OneCode.","sound.option.none":"Keine","sound.option.alert01":"Alarm 01","sound.option.alert02":"Alarm 02","sound.option.alert03":"Alarm 03","sound.option.alert04":"Alarm 04","sound.option.alert05":"Alarm 05","sound.option.alert06":"Alarm 06","sound.option.alert07":"Alarm 07","sound.option.alert08":"Alarm 08","sound.option.alert09":"Alarm 09","sound.option.alert10":"Alarm 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nein 01","sound.option.nope02":"Nein 02","sound.option.nope03":"Nein 03","sound.option.nope04":"Nein 04","sound.option.nope05":"Nein 05","sound.option.nope06":"Nein 06","sound.option.nope07":"Nein 07","sound.option.nope08":"Nein 08","sound.option.nope09":"Nein 09","sound.option.nope10":"Nein 10","sound.option.nope11":"Nein 11","sound.option.nope12":"Nein 12","sound.option.yup01":"Ja 01","sound.option.yup02":"Ja 02","sound.option.yup03":"Ja 03","sound.option.yup04":"Ja 04","sound.option.yup05":"Ja 05","sound.option.yup06":"Ja 06","settings.general.notifications.agent.title":"Agent","settings.general.notifications.agent.description":"Systembenachrichtigung anzeigen, wenn der Agent fertig ist oder Aufmerksamkeit benötigt","settings.general.notifications.permissions.title":"Berechtigungen","settings.general.notifications.permissions.description":"Systembenachrichtigung anzeigen, wenn eine Berechtigung erforderlich ist","settings.general.notifications.errors.title":"Fehler","settings.general.notifications.errors.description":"Systembenachrichtigung anzeigen, wenn ein Fehler auftritt","settings.general.sounds.agent.title":"Agent","settings.general.sounds.agent.description":"Ton abspielen, wenn der Agent fertig ist oder Aufmerksamkeit benötigt","settings.general.sounds.permissions.title":"Berechtigungen","settings.general.sounds.permissions.description":"Ton abspielen, wenn eine Berechtigung erforderlich ist","settings.general.sounds.errors.title":"Fehler","settings.general.sounds.errors.description":"Ton abspielen, wenn ein Fehler auftritt","settings.shortcuts.title":"Tastenkombinationen","settings.shortcuts.reset.button":"Auf Standard zurücksetzen","settings.shortcuts.reset.toast.title":"Tastenkombinationen zurückgesetzt","settings.shortcuts.reset.toast.description":"Die Tastenkombinationen wurden auf die Standardwerte zurückgesetzt.","settings.shortcuts.conflict.title":"Tastenkombination bereits in Verwendung","settings.shortcuts.conflict.description":"{{keybind}} ist bereits {{titles}} zugewiesen.","settings.shortcuts.unassigned":"Nicht zugewiesen","settings.shortcuts.pressKeys":"Tasten drücken","settings.shortcuts.search.placeholder":"Tastenkürzel suchen","settings.shortcuts.search.empty":"Keine Tastenkürzel gefunden","settings.shortcuts.group.general":"Allgemein","settings.shortcuts.group.session":"Sitzung","settings.shortcuts.group.navigation":"Navigation","settings.shortcuts.group.modelAndAgent":"Modell und Agent","settings.shortcuts.group.terminal":"Terminal","settings.shortcuts.group.prompt":"Prompt","settings.providers.title":"Anbieter","settings.providers.description":"Anbietereinstellungen können hier konfiguriert werden.","settings.providers.section.connected":"Verbundene Anbieter","settings.providers.connected.empty":"Keine verbundenen Anbieter","settings.providers.section.popular":"Beliebte Anbieter","settings.providers.tag.environment":"Umgebung","settings.providers.tag.config":"Konfiguration","settings.providers.tag.custom":"Benutzerdefiniert","settings.providers.tag.other":"Andere","settings.models.title":"Modelle","settings.models.description":"Modelleinstellungen können hier konfiguriert werden.","settings.agents.title":"Agenten","settings.agents.description":"Agenteneinstellungen können hier konfiguriert werden.","settings.commands.title":"Befehle","settings.commands.description":"Befehlseinstellungen können hier konfiguriert werden.","settings.mcp.title":"MCP","settings.mcp.description":"MCP-Einstellungen können hier konfiguriert werden.","settings.permissions.title":"Berechtigungen","settings.permissions.description":"Steuern Sie, welche Tools der Server standardmäßig verwenden darf.","settings.permissions.section.tools":"Tools","settings.permissions.toast.updateFailed.title":"Berechtigungen konnten nicht aktualisiert werden","settings.permissions.action.allow":"Erlauben","settings.permissions.action.ask":"Fragen","settings.permissions.action.deny":"Verweigern","settings.permissions.tool.read.title":"Lesen","settings.permissions.tool.read.description":"Lesen einer Datei (stimmt mit dem Dateipfad überein)","settings.permissions.tool.edit.title":"Bearbeiten","settings.permissions.tool.edit.description":"Dateien ändern, einschließlich Bearbeitungen, Schreibvorgängen, Patches und Mehrfachbearbeitungen","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Dateien mithilfe von Glob-Mustern abgleichen","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Dateiinhalte mit regulären Ausdrücken durchsuchen","settings.permissions.tool.list.title":"Auflisten","settings.permissions.tool.list.description":"Dateien in einem Verzeichnis auflisten","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Shell-Befehle ausführen","settings.permissions.tool.task.title":"Aufgabe","settings.permissions.tool.task.description":"Unteragenten starten","settings.permissions.tool.skill.title":"Fähigkeit","settings.permissions.tool.skill.description":"Eine Fähigkeit nach Namen laden","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Language-Server-Abfragen ausführen","settings.permissions.tool.todowrite.title":"Todo schreiben","settings.permissions.tool.todowrite.description":"Die Todo-Liste aktualisieren","settings.permissions.tool.webfetch.title":"Web-Abruf","settings.permissions.tool.webfetch.description":"Inhalt von einer URL abrufen","settings.permissions.tool.websearch.title":"Web-Suche","settings.permissions.tool.websearch.description":"Das Web durchsuchen","settings.permissions.tool.external_directory.title":"Externes Verzeichnis","settings.permissions.tool.external_directory.description":"Zugriff auf Dateien außerhalb des Projektverzeichnisses","settings.permissions.tool.doom_loop.title":"Doom Loop","settings.permissions.tool.doom_loop.description":"Wiederholte Tool-Aufrufe mit identischer Eingabe erkennen","session.delete.failed.title":"Sitzung konnte nicht gelöscht werden","session.delete.title":"Sitzung löschen","session.delete.confirm":'Sitzung "{{name}}" löschen?',"session.delete.button":"Sitzung löschen","workspace.new":"Neuer Arbeitsbereich","workspace.type.local":"lokal","workspace.type.sandbox":"Sandbox","workspace.create.failed.title":"Arbeitsbereich konnte nicht erstellt werden","workspace.delete.failed.title":"Arbeitsbereich konnte nicht gelöscht werden","workspace.resetting.title":"Arbeitsbereich wird zurückgesetzt","workspace.resetting.description":"Dies kann eine Minute dauern.","workspace.reset.failed.title":"Arbeitsbereich konnte nicht zurückgesetzt werden","workspace.reset.success.title":"Arbeitsbereich zurückgesetzt","workspace.reset.success.description":"Der Arbeitsbereich entspricht jetzt dem Standard-Branch.","workspace.error.stillPreparing":"Arbeitsbereich wird noch vorbereitet","workspace.status.checking":"Suche nach nicht zusammengeführten Änderungen...","workspace.status.error":"Git-Status konnte nicht überprüft werden.","workspace.status.clean":"Keine nicht zusammengeführten Änderungen erkannt.","workspace.status.dirty":"Nicht zusammengeführte Änderungen in diesem Arbeitsbereich erkannt.","workspace.delete.title":"Arbeitsbereich löschen","workspace.delete.confirm":'Arbeitsbereich "{{name}}" löschen?',"workspace.delete.button":"Arbeitsbereich löschen","workspace.reset.title":"Arbeitsbereich zurücksetzen","workspace.reset.confirm":'Arbeitsbereich "{{name}}" zurücksetzen?',"workspace.reset.button":"Arbeitsbereich zurücksetzen","workspace.reset.archived.none":"Keine aktiven Sitzungen werden archiviert.","workspace.reset.archived.one":"1 Sitzung wird archiviert.","workspace.reset.archived.many":"{{count}} Sitzungen werden archiviert.","workspace.reset.note":"Dadurch wird der Arbeitsbereich auf den Standard-Branch zurückgesetzt.","common.open":"Öffnen","dialog.releaseNotes.action.getStarted":"Loslegen","dialog.releaseNotes.action.next":"Weiter","dialog.releaseNotes.action.hideFuture":"In Zukunft nicht mehr anzeigen","dialog.releaseNotes.media.alt":"Vorschau auf die Version","toast.project.reloadFailed.title":"Fehler beim Neuladen von {{project}}","error.server.invalidConfiguration":"Ungültige Konfiguration","common.moreCountSuffix":" (+{{count}} weitere)","common.time.justNow":"Gerade eben","common.time.minutesAgo.short":"vor {{count}} Min","common.time.hoursAgo.short":"vor {{count}} Std","common.time.daysAgo.short":"vor {{count}} Tg","settings.providers.connected.environmentDescription":"Verbunden aus Ihren Umgebungsvariablen","settings.providers.custom.description":"Fügen Sie einen OpenAI-kompatiblen Anbieter per Basis-URL hinzu.","app.server.unreachable":"Konnte {{server}} nicht erreichen","app.server.retrying":"Automatische erneute Verbindung...","app.server.otherServers":"Andere Server","dialog.server.add.usernamePlaceholder":"Benutzername","dialog.server.add.passwordPlaceholder":"Passwort","server.row.noUsername":"Kein Benutzername","session.review.noVcs.createGit.title":"Git-Repository erstellen","session.review.noVcs.createGit.description":"Änderungen in diesem Projekt verfolgen, überprüfen und rückgängig machen","session.review.noVcs.createGit.actionLoading":"Git-Repository wird erstellt...","session.review.noVcs.createGit.action":"Git-Repository erstellen","session.todo.progress":"{{done}} von {{total}} Aufgaben erledigt","session.question.progress":"{{current}} von {{total}} Fragen","session.header.open.finder":"Finder","session.header.open.fileExplorer":"Datei-Explorer","session.header.open.fileManager":"Dateimanager","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Terminal","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","debugBar.ariaLabel":"Entwicklungs-Leistungsdiagnose","debugBar.na":"n.v.","debugBar.nav.label":"NAV","debugBar.nav.tip":"Letzter abgeschlossener Routenübergang, der eine Sitzungsseite berührt, gemessen vom Start des Routers bis zum ersten Rendern nach dem Einschwingen.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Gleitende Bilder pro Sekunde in den letzten 5 Sekunden.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Schlechteste Frame-Zeit in den letzten 5 Sekunden.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Frames über 32ms in den letzten 5 Sekunden.","debugBar.long.label":"LONG","debugBar.long.tip":"Blockierte Zeit und Anzahl langer Aufgaben in den letzten 5 Sekunden. Max Aufgabe: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Schlechteste beobachtete Eingabeverzögerung in den letzten 5 Sekunden.","debugBar.inp.label":"INP","debugBar.inp.tip":"Ungefähre Interaktionsdauer in den letzten 5 Sekunden. Dies ist INP-ähnlich, nicht das offizielle Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Kumulative Layoutverschiebung für die aktuelle App-Lebensdauer.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Verwendeter JS-Heap vs Heap-Limit. Nur Chromium.","debugBar.mem.tip":"Verwendeter JS-Heap vs Heap-Limit. {{used}} von {{limit}}.","common.key.ctrl":"Strg","common.key.alt":"Alt","common.key.shift":"Umschalt","common.key.meta":"Meta","common.key.space":"Leertaste","common.key.backspace":"Rücktaste","common.key.enter":"Eingabe","common.key.tab":"Tab","common.key.delete":"Entf","common.key.home":"Pos1","common.key.end":"Ende","common.key.pageUp":"Bild auf","common.key.pageDown":"Bild ab","common.key.insert":"Einfg","common.unknown":"unbekannt","error.page.circular":"[Zirkulär]","error.globalSDK.noServerAvailable":"Kein Server verfügbar","error.globalSDK.serverNotAvailable":"Server nicht verfügbar","error.childStore.persistedCacheCreateFailed":"Dauerhafter Cache konnte nicht erstellt werden","error.childStore.persistedProjectMetadataCreateFailed":"Dauerhafte Projektmetadaten konnten nicht erstellt werden","error.childStore.persistedProjectIconCreateFailed":"Dauerhaftes Projekticon konnte nicht erstellt werden","error.childStore.storeCreateFailed":"Speicher konnte nicht erstellt werden","terminal.connectionLost.abnormalClose":"WebSocket abnormal geschlossen: {{code}}"};export{e as dict};
@@ -0,0 +1 @@
1
+ import{L as S,K as w,H as D,br as $,v as o,cL as k,aW as C,cu as _,b as c,i as l,cx as L,bI as j,m as P,bJ as F,t as K}from"./index-BA1jwG_A.js";var M=K('<form class="os-client-project-create-form flex flex-col gap-5 p-5 pt-4"><div class="flex flex-col gap-3"><p class="os-client-project-create-path text-12-regular text-text-weak"></p></div><div class="flex justify-end gap-2">');function E(e){const i=S(),f=w(),b=D(),a=$(),s=o(()=>k(e.project.worktree)),u=o(()=>e.project.name||s()),x=o(()=>`${e.project.worktree.replace(/\\/g,"/").replace(/\/+$/,"")}/`),[m,h]=C({name:u()}),d=o(()=>{const t=m.name.trim();return t?t!==u():!1}),r=_(()=>({mutationFn:async()=>{const t=m.name.trim(),n=t===s()?"":t;if(e.project.id&&e.project.id!=="global"){await f.client.project.update({projectID:e.project.id,directory:e.project.worktree,name:n,icon:{color:e.project.icon?.color||"",override:e.project.icon?.override||""},commands:{start:e.project.commands?.start??""}}),i.close();return}b.project.meta(e.project.worktree,{name:n,icon:e.project.icon,commands:e.project.commands}),i.close()}}));function v(t){t.preventDefault(),!(r.isPending||!d())&&r.mutate()}return c(F,{get title(){return a.t("dialog.project.rename.title")},class:"os-client-project-create w-full max-w-[480px] mx-auto",get children(){var t=M(),n=t.firstChild,g=n.firstChild,p=n.nextSibling;return t.addEventListener("submit",v),l(n,c(L,{autofocus:!0,type:"text",get label(){return a.t("dialog.project.rename.name")},get placeholder(){return s()},get value(){return m.name},onChange:y=>h("name",y)}),g),l(g,()=>a.t("dialog.project.rename.path",{path:x()})),l(p,c(j,{type:"button",variant:"ghost",size:"large",onClick:()=>i.close(),get children(){return a.t("common.cancel")}}),null),l(p,c(j,{type:"submit",variant:"primary",size:"large",get disabled(){return r.isPending||!d()},get children(){return P(()=>!!r.isPending)()?a.t("common.saving"):a.t("common.confirm")}}),null),t}})}export{E as DialogEditProject};
@@ -0,0 +1 @@
1
+ import{d8 as b,G as D,E as S,d9 as k,bR as P,da as _,L as w,br as F,v as L,b as m,cv as $,i as u,bJ as E,db as I,l as T,b9 as g,d1 as q,t as C}from"./index-BA1jwG_A.js";var K=C('<div class="w-full flex items-center gap-2"><span class="truncate flex-1 min-w-0 text-left font-normal"></span><span class="text-text-weak shrink-0 font-normal">');function M(i){return i.toLocaleTimeString(void 0,{timeStyle:"short"})}const R=()=>{const i=b(),p=D(),f=S(),c=k(),l=P(),h=_(),x=w(),n=F(),y=L(()=>{const t=i.id;if(!t)return[];const a=c.data.message[t]??[],o=[];for(const s of a){if(s.role!=="user")continue;const e=(c.data.part[s.id]??[]).find(r=>r.type==="text"&&!r.synthetic&&!r.ignored);e&&o.push({id:s.id,text:e.text.replace(/\n/g," ").slice(0,200),time:M(new Date(s.time.created))})}return o.reverse()}),v=t=>{if(!t)return;const a=i.id;if(!a)return;const o=c.data.part[t.id]??[],s=I(o,{directory:l.directory,attachmentName:n.t("common.attachment")}),d=T(l.directory);l.client.session.fork({sessionID:a,messageID:t.id}).then(e=>{if(!e.data){g({title:n.t("common.requestFailed")});return}x.close(),h.set(s,void 0,{dir:d,id:e.data.id}),f(q(p.pathname,d,e.data.id))}).catch(e=>{const r=e instanceof Error?e.message:String(e);g({title:n.t("common.requestFailed"),description:r})})};return m(E,{get title(){return n.t("command.session.fork")},get children(){return m($,{class:"flex-1 min-h-0 [&_[data-slot=list-scroll]]:flex-1 [&_[data-slot=list-scroll]]:min-h-0",get search(){return{placeholder:n.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return n.t("dialog.fork.empty")},key:t=>t.id,items:y,filterKeys:["text"],onSelect:v,children:t=>(()=>{var a=K(),o=a.firstChild,s=o.nextSibling;return u(o,()=>t.text),u(s,()=>t.time),a})()})}})};export{R as DialogFork};
@@ -0,0 +1,2 @@
1
+ import{L as oe,br as se,D as ce,H as de,c as g,v as x,cN as ue,cO as ge,cP as pe,a as fe,cQ as he,b as n,i as t,bI as k,w as G,S as p,m as J,cR as L,cS as Q,F as xe,cT as me,bJ as ve,t as f,cU as be,cV as we,b9 as ye}from"./index-BA1jwG_A.js";var _e=f('<p class="text-12-regular text-icon-warning-base">'),U=f('<p class="text-12-regular text-text-weak">'),$e=f('<ul class="max-h-36 overflow-auto text-12-regular text-text-weak font-mono">'),Se=f('<div class="flex flex-col gap-2 rounded-md border border-border-weak-base bg-background-weak px-3 py-3"><p class="text-13-medium text-text-strong">'),ke=f("<p class=text-text-critical-base>"),je=f('<p class="text-12-regular text-text-critical-base whitespace-pre-wrap">'),Ee=f('<div class="flex flex-col gap-5 p-6 pt-0"><div class="flex flex-col gap-2"><p class="text-12-regular text-text-weak"></p><p class="text-13-medium text-text-strong break-all font-mono">/</p><p class="text-12-regular text-text-weak"></p></div><div class="flex flex-wrap gap-2"><input type=file class=hidden multiple><input type=file class=hidden multiple></div><div class="flex flex-col gap-1 text-12-regular text-text-weak"><p></p></div><div class="flex justify-end gap-2">'),Ce=f("<li class=truncate>");function Ue(w){const F=oe(),r=se(),T=ce(),X=de(),[s,q]=g([]),[K,Y]=g(!1),[D,Z]=g(!1),[I,P]=g(),[ee,j]=g(!0),[h,B]=g(!1),[z,R]=g({done:0,total:0,written:0,skipped:0,failed:0}),[A,$]=g("");let H,O;const te=x(()=>{const l=X.data.path.home,a=w.directory;return l&&a.startsWith(l)?`~${a.slice(l.length)}`:a}),E=x(()=>ue(s())),S=x(()=>ge(s())),M=x(()=>{const l=I();return l===void 0?!1:E()>l}),N=x(()=>s().length>0&&!h()&&!M()),C=x(()=>s().slice(0,pe)),re=x(()=>s().length>0&&!S());fe(()=>{const l=w.directory,a=T.current?.http;if(!l||!a){j(!1);return}let i=!1;return j(!0),he(a.url,l).then(c=>{i||P(c.availableBytes)}).catch(()=>{i||P(void 0)}).finally(()=>{i||j(!1)}),()=>{i=!0}});const V=l=>{if(!l?.length)return;$("");const a=be(l);q(a.entries),Y(a.truncated),a.truncated&&$(r.t("dialog.project.upload.tooManyFiles",{max:String(Q),selected:String(a.totalSelected)}))},le=async()=>{const l=T.current?.http;if(!l||!N())return;const a=s();B(!0),$(""),R({done:0,total:a.length,written:0,skipped:0,failed:0});let i=0,c=0,m=0;const y=[];for(let d=0;d<a.length;d+=1){const u=a[d];try{(await we(l.url,w.directory,{path:u.path,file:u.file,overwrite:D()})).status==="written"?i+=1:c+=1}catch(v){m+=1;const b=v instanceof Error?v.message:r.t("dialog.project.upload.failed");y.length<3&&y.push(`${u.path}: ${b}`)}R({done:d+1,total:a.length,written:i,skipped:c,failed:m})}if(B(!1),m===0){ye({title:r.t("toast.project.upload.success",{written:String(i),skipped:String(c)})}),w.onUploaded?.(),F.close();return}$([r.t("dialog.project.upload.partialFailed",{written:String(i),skipped:String(c),failed:String(m)}),...y].join(`
2
+ `)),(i>0||c>0)&&w.onUploaded?.()};return n(ve,{get title(){return r.t("command.project.upload")},class:"w-full max-w-[520px] mx-auto",get children(){var l=Ee(),a=l.firstChild,i=a.firstChild,c=i.nextSibling,m=c.firstChild,y=c.nextSibling,d=a.nextSibling,u=d.firstChild,v=u.nextSibling,b=d.nextSibling,ae=b.firstChild,_=b.nextSibling;return t(i,()=>r.t("dialog.project.upload.destinationLabel")),t(c,te,m),t(y,()=>r.t("dialog.project.upload.destinationHint")),t(d,n(k,{type:"button",variant:"secondary",size:"large",get disabled(){return h()},onClick:()=>H?.click(),get children(){return r.t("dialog.project.upload.pickFiles")}}),u),t(d,n(k,{type:"button",variant:"secondary",size:"large",get disabled(){return h()},onClick:()=>O?.click(),get children(){return r.t("dialog.project.upload.pickFolder")}}),u),u.addEventListener("change",e=>{V(e.currentTarget.files),e.currentTarget.value=""}),G(e=>{H=e},u),v.addEventListener("change",e=>{V(e.currentTarget.files),e.currentTarget.value=""}),G(e=>{O=e,e&&e.setAttribute("webkitdirectory","")},v),t(l,n(p,{get when(){return s().length>0},get children(){var e=Se(),ne=e.firstChild;return t(ne,(()=>{var o=J(()=>!!S());return()=>o()?r.t("dialog.project.upload.folderSummary",{folder:S(),count:String(s().length),size:L(E())}):r.t("dialog.project.upload.summary",{count:String(s().length),size:L(E())})})()),t(e,n(p,{get when(){return K()},get children(){var o=_e();return t(o,()=>r.t("dialog.project.upload.truncatedHint",{max:String(Q)})),o}}),null),t(e,n(p,{get when(){return S()},get children(){var o=U();return t(o,()=>r.t("dialog.project.upload.folderHint")),o}}),null),t(e,n(p,{get when(){return re()},get children(){return[(()=>{var o=$e();return t(o,n(xe,{get each(){return C()},children:ie=>(()=>{var W=Ce();return t(W,()=>ie.path),W})()})),o})(),n(p,{get when(){return s().length>C().length},get children(){var o=U();return t(o,()=>r.t("dialog.project.upload.moreFiles",{count:String(s().length-C().length)})),o}})]}}),null),e}}),b),t(ae,()=>r.t("dialog.project.upload.diskSpace",{space:ee()?r.t("common.loading"):L(I())})),t(b,n(p,{get when(){return M()},get children(){var e=ke();return t(e,()=>r.t("dialog.project.upload.diskInsufficient")),e}}),null),t(l,n(me,{get checked(){return D()},onChange:Z,get disabled(){return h()},get children(){return r.t("dialog.project.upload.overwrite")}}),_),t(l,n(p,{get when(){return h()},get children(){var e=U();return t(e,()=>r.t("dialog.project.upload.progress",{done:String(z().done),total:String(z().total)})),e}}),_),t(l,n(p,{get when(){return A()},get children(){var e=je();return t(e,A),e}}),_),t(_,n(k,{type:"button",variant:"ghost",size:"large",get disabled(){return h()},onClick:()=>F.close(),get children(){return r.t("common.cancel")}}),null),t(_,n(k,{type:"button",variant:"primary",size:"large",get disabled(){return!N()},onClick:()=>void le(),get children(){return J(()=>!!h())()?r.t("dialog.project.upload.uploading"):r.t("dialog.project.upload.confirm")}}),null),l}})}export{Ue as DialogProjectUpload};
@@ -0,0 +1 @@
1
+ import{i as f,f as T,ai as Z,t as $,c0 as U,br as V,J as ee,bQ as te,L as ne,G as se,E as re,K as ae,H as oe,cW as ie,c as ce,v as b,bu as le,q as de,b as w,cv as ue,cX as fe,cY as O,S as C,cZ as ge,I as he,c_ as pe,c$ as me,cL as P,bJ as we,d0 as ye,d1 as ve,l as be}from"./index-BA1jwG_A.js";var xe=$("<span data-component=keybind>");function ke(t){return(()=>{var n=xe();return f(n,()=>t.children),T(a=>Z(n,{...t.classList,[t.class??""]:!!t.class},a)),n})()}function $e(t,n){const a=Math.floor(Math.max(0,t)/1e3),l=Math.floor(a/60),s=Math.floor(l/60),d=Math.floor(s/24);return a<60?n("common.time.justNow"):l<60?n("common.time.minutesAgo.short",{count:l}):s<24?n("common.time.hoursAgo.short",{count:s}):n("common.time.daysAgo.short",{count:d})}function Se(t,n){return $e(Date.now()-new Date(t).getTime(),n)}var q=$('<span class="text-14-regular text-text-weak truncate">'),_e=$('<div class="w-full flex items-center justify-between gap-4"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong whitespace-nowrap">'),De=$('<span class="text-12-regular text-text-weak whitespace-nowrap ml-2">'),Me=$('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong truncate">'),Ce=$('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular"><span class="text-text-weak whitespace-nowrap overflow-hidden overflow-ellipsis truncate min-w-0"></span><span class="text-text-strong whitespace-nowrap">');const L=5,Fe=["session.new","workspace.new","session.previous","session.next","terminal.toggle","review.toggle"],A=t=>{const n=new Set,a=[];for(const l of t)n.has(l.id)||(n.add(l.id),a.push(l));return a},N=(t,n)=>({id:"command:"+t.id,type:"command",title:t.title,description:t.description,keybind:t.keybind,category:n,option:t}),F=(t,n)=>({id:"file:"+t,type:"file",title:t,category:n,path:t}),Ee=(t,n)=>({id:`session:${t.directory}:${t.id}`,type:"session",title:t.title,description:t.description,category:n,directory:t.directory,sessionID:t.id,archived:t.archived,updated:t.updated});function Te(t){const n=b(()=>t.filesOnly()?[]:t.command.options.filter(s=>!s.disabled&&!s.hidden&&!s.id.startsWith("suggested.")&&s.id!=="file.open")),a=b(()=>{const s=t.language.t("palette.group.commands");return n().map(d=>N(d,s))}),l=b(()=>{const s=n(),d=new Map(Fe.map((o,c)=>[o,c])),y=s.filter(o=>d.has(o.id)),i=y.length?y:s.slice(0,L),h=y.length?[...i].sort((o,c)=>(d.get(o.id)??0)-(d.get(c.id)??0)):i,v=t.language.t("palette.group.commands");return h.map(o=>N(o,v))});return{allowed:n,list:a,picks:l}}function Le(t){const n=ye({tabs:t.tabs,pathFromTab:t.file.pathFromTab,normalizeTab:s=>s.startsWith("file://")?t.file.tab(s):s}),a=b(()=>{const s=n.openedTabs(),d=n.activeFileTab(),y=d?[d,...s.filter(o=>o!==d)]:s,i=new Set,h=t.language.t("palette.group.files"),v=[];for(const o of y){const c=t.file.pathFromTab(o);c&&(i.has(c)||(i.add(c),v.push(F(c,h))))}return v.slice(0,L)}),l=b(()=>{const s=t.language.t("palette.group.files");return t.file.tree.children("").filter(i=>i.type==="file").map(i=>i.path).sort((i,h)=>i.localeCompare(h)).slice(0,L).map(i=>F(i,s))});return{recent:a,root:l}}function Ie(t){const n={token:0,inflight:void 0,cached:void 0};return{sessions:l=>{if(!l.trim())return n.token+=1,n.inflight=void 0,n.cached=void 0,[];if(n.cached)return n.cached;if(n.inflight)return n.inflight;const d=n.token,y=t.workspaces();return y.length===0?[]:(n.inflight=Promise.all(y.map(i=>{const h=t.label(i);return t.globalSDK.client.session.list({directory:i,roots:!0}).then(v=>(v.data??[]).filter(o=>!!o?.id).map(o=>({id:o.id,title:o.title??t.language.t("command.session.new"),description:h,directory:i,archived:o.time?.archived,updated:o.time?.updated}))).catch(()=>[])})).then(i=>{if(n.token!==d)return[];const h=new Set,v=t.language.t("command.category.session"),o=i.flat().filter(c=>{const S=`${c.directory}:${c.id}`;return h.has(S)?!1:(h.add(S),!0)}).map(c=>Ee(c,v));return n.cached=o,o}).catch(()=>[]).finally(()=>{n.inflight=void 0}),n.inflight)}}}function Ke(t){const n=U(),a=V(),l=ee(),s=te(),d=ne(),y=se(),i=re(),h=ae(),v=oe(),{params:o,tabs:c,view:S}=ie(),D=()=>t.mode==="files",k={cleanup:void 0,committed:!1},[G,H]=ce(!1),I=Te({filesOnly:D,command:n,language:a}),_=Le({file:s,tabs:c,language:a}),j=b(()=>le(o.dir)??""),K=b(()=>{const e=j();if(e)return l.projects.list().find(r=>r.worktree===e||r.sandboxes?.includes(e))}),R=b(()=>{const e=j(),r=K();if(!r)return e?[e]:[];const u=[r.worktree,...r.sandboxes??[]];return e&&!u.includes(e)?[...u,e]:u}),z=b(()=>v.data.path.home),W=e=>{const r=K(),u=r&&e===r.worktree?a.t("workspace.type.local"):a.t("workspace.type.sandbox"),[p]=v.child(e,{bootstrap:!1}),g=z(),m=g?e.replace(g,"~"):e,x=p.vcs?.branch??P(e);return`${u} : ${x||m}`},{sessions:J}=Ie({workspaces:R,label:W,globalSDK:h,language:a}),Y=async e=>{const r=e.trim();if(H(r.length>0),!r&&D()){const x=s.tree.state("")?.loaded,E=x?Promise.resolve():s.tree.list(""),M=A([..._.recent(),..._.root()]);return x||M.length>0?M:(await E,A([..._.recent(),..._.root()]))}if(!r)return[...I.picks(),..._.recent()];if(D()){const x=await s.searchFiles(r),E=a.t("palette.group.files");return x.map(M=>F(M,E))}const[u,p]=await Promise.all([s.searchFiles(r),Promise.resolve(J(r))]),g=a.t("palette.group.files"),m=u.map(x=>F(x,g));return[...I.list(),...p,...m]},B=e=>{k.cleanup?.(),e&&e.type==="command"&&(k.cleanup=e.option?.onHighlight?.())},Q=e=>{const r=s.tab(e);c().open(r),s.load(e),S().reviewPanel.opened()||S().reviewPanel.open(),l.fileTree.setTab("all"),t.onOpenFile?.(e),c().setActive(r)},X=e=>{if(e){if(k.committed=!0,k.cleanup=void 0,d.close(),e.type==="command"){e.option?.onSelect?.("palette");return}if(e.type==="session"){if(!e.directory||!e.sessionID)return;i(ve(y.pathname,be(e.directory),e.sessionID));return}e.path&&Q(e.path)}};return de(()=>{k.committed||k.cleanup?.()}),w(we,{class:"pt-3 pb-0 !max-h-[480px]",transition:!0,get children(){return w(ue,{get search(){return{placeholder:D()?a.t("session.header.searchFiles"):a.t("palette.search.placeholder"),autofocus:!0,hideIcon:!0}},get emptyMessage(){return a.t("palette.empty")},get loadingMessage(){return a.t("common.loading")},items:Y,key:e=>e.id,filterKeys:["title","description","category"],get groupBy(){return G()?e=>e.category:()=>""},onMove:B,onSelect:X,children:e=>w(fe,{get fallback(){return(()=>{var r=Ce(),u=r.firstChild,p=u.firstChild,g=p.firstChild,m=g.nextSibling;return f(u,w(pe,{get node(){return{path:e.path??"",type:"file"}},class:"shrink-0 size-4"}),p),f(g,()=>me(e.path??"")),f(m,()=>P(e.path??"")),r})()},get children(){return[w(O,{get when(){return e.type==="command"},get children(){var r=_e(),u=r.firstChild,p=u.firstChild;return f(p,()=>e.title),f(u,w(C,{get when(){return e.description},get children(){var g=q();return f(g,()=>e.description),g}}),null),f(r,w(C,{get when(){return e.keybind},get children(){return w(ke,{class:"rounded-[4px]",get children(){return ge(e.keybind??"",a.t)}})}}),null),r}}),w(O,{get when(){return e.type==="session"},get children(){var r=Me(),u=r.firstChild,p=u.firstChild,g=p.firstChild;return f(u,w(he,{name:"bubble-5",size:"small",class:"shrink-0 text-icon-weak"}),p),f(g,()=>e.title),f(p,w(C,{get when(){return e.description},get children(){var m=q();return f(m,()=>e.description),T(()=>m.classList.toggle("opacity-70",!!e.archived)),m}}),null),f(r,w(C,{get when(){return e.updated},get children(){var m=De();return f(m,()=>Se(new Date(e.updated).toISOString(),a.t)),m}}),null),T(()=>g.classList.toggle("opacity-70",!!e.archived)),r}})]}})})}})}export{Ke as DialogSelectFile};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BA1jwG_A.js","assets/index-Bpc6ia3z.css"])))=>i.map(i=>d[i]);
2
+ import{br as x,i as d,b as i,S as h,t as b,L as y,bI as P,bJ as O,aW as T,d2 as v,O as M,d3 as S,d4 as C,d5 as z,v as B,d6 as _,d7 as p,cv as E,ag as L,c6 as I}from"./index-BA1jwG_A.js";var j=b('<div class="flex flex-col gap-1 py-1"><div class=text-13-medium></div><div class="text-12-regular text-text-invert-base"></div><div class="text-12-regular text-text-invert-base">'),A=b('<div class="text-12-regular text-text-invert-base">');const F=o=>{const n=x(),a=e=>{const l=`${e.id} ${e.name}`.toLowerCase();return/claude|anthropic/.test(l)?n.t("model.provider.anthropic"):/gpt|o[1-4]|codex|openai/.test(l)?n.t("model.provider.openai"):/gemini|palm|bard|google/.test(l)?n.t("model.provider.google"):/grok|xai/.test(l)?n.t("model.provider.xai"):/llama|meta/.test(l)?n.t("model.provider.meta"):e.provider.name},c=e=>e==="text"?n.t("model.input.text"):e==="image"?n.t("model.input.image"):e==="audio"?n.t("model.input.audio"):e==="video"?n.t("model.input.video"):e==="pdf"?n.t("model.input.pdf"):e,t=()=>{const e=[];o.latest&&e.push(n.t("model.tag.latest")),o.free&&e.push(n.t("model.tag.free")),o.limited&&e.push(n.t("model.tag.limited"));const l=e.length?` (${e.join(", ")})`:"";return`${a(o.model)} ${o.model.name}${l}`},r=()=>{if(o.model.capabilities){const g=o.model.capabilities.input,f=["text","image","audio","video","pdf"].filter(m=>g[m]).map(m=>c(m));return f.length?f.join(", "):void 0}const e=o.model.modalities?.input;if(!e)return;const l=e.map(g=>c(g));return l.length?l.join(", "):void 0},u=()=>o.model.capabilities?o.model.capabilities.reasoning?n.t("model.tooltip.reasoning.allowed"):n.t("model.tooltip.reasoning.none"):o.model.reasoning?n.t("model.tooltip.reasoning.allowed"):n.t("model.tooltip.reasoning.none"),s=()=>n.t("model.tooltip.context",{limit:o.model.limit.context.toLocaleString()});return(()=>{var e=j(),l=e.firstChild,g=l.nextSibling,D=g.nextSibling;return d(l,t),d(e,i(h,{get when(){return r()},children:f=>(()=>{var m=A();return d(m,()=>n.t("model.tooltip.allows",{inputs:f()})),m})()}),g),d(g,u),d(D,s),e})()};var K=b('<div class="w-full flex items-center gap-x-2 text-13-regular"><span class=truncate>'),R=b('<div class="flex items-center gap-1">');const $=(o,n)=>o==="opencode"&&(!n||n.input===0),w=o=>o==="onescience",k=o=>{const n=o.model??z().model,a=x(),c=B(()=>n.list().filter(r=>o.provider?r.provider.id===o.provider:!0).filter(r=>n.visible({modelID:r.id,providerID:r.provider.id})).map(r=>({...r,search:[r.provider.name,r.provider.id,r.name,r.id,r.family,$(r.provider.id,r.cost)?"free 免费":"",w(r.provider.id)?"limited 限免":"",r.latest?"latest 最新":""].join(" ")})));return i(E,{get class(){return`flex-1 min-h-0 [&_[data-slot=list-scroll]]:flex-1 [&_[data-slot=list-scroll]]:min-h-0 ${o.class??""}`},get search(){return{placeholder:a.t("dialog.model.search.placeholder"),autofocus:!0,action:o.action}},get emptyMessage(){return a.t("dialog.model.empty")},key:t=>`${t.provider.id}:${t.id}`,items:c,get current(){return n.current()},scrollToCurrent:!1,filterKeys:["search"],sortBy:(t,r)=>t.name.localeCompare(r.name),groupBy:t=>t.provider.name,sortGroupsBy:(t,r)=>{const u=t.items[0].provider.id,s=r.items[0].provider.id;return p.includes(u)&&!p.includes(s)?-1:!p.includes(u)&&p.includes(s)?1:p.indexOf(u)-p.indexOf(s)},itemWrapper:(t,r)=>i(S,{class:"w-full",placement:"right-start",gutter:12,get value(){return i(F,{model:t,get latest(){return t.latest},get free(){return $(t.provider.id,t.cost)},get limited(){return w(t.provider.id)}})},children:r}),onSelect:t=>{n.set(t?{modelID:t.id,providerID:t.provider.id}:void 0,{recent:!0}),o.onSelect()},children:t=>(()=>{var r=K(),u=r.firstChild;return d(u,()=>t.name),d(r,i(h,{get when(){return $(t.provider.id,t.cost)},get children(){return i(_,{get children(){return a.t("model.tag.free")}})}}),null),d(r,i(h,{get when(){return w(t.provider.id)},get children(){return i(_,{get children(){return a.t("model.tag.limited")}})}}),null),d(r,i(h,{get when(){return t.latest},get children(){return i(_,{get children(){return a.t("model.tag.latest")}})}}),null),r})()})};function W(o){const[n,a]=T({open:!1,dismiss:null}),c=y(),t=e=>{a("dismiss",e),a("open",!1)},r=()=>{t("manage"),c.show(()=>i(L,{tab:"models"}))},u=()=>{t("provider"),I(()=>import("./index-BA1jwG_A.js").then(e=>e.dk),__vite__mapDeps([0,1])).then(e=>{c.show(()=>i(e.DialogSelectProvider,{}))})},s=x();return i(v,{get open(){return n.open},onOpenChange:e=>{e&&a("dismiss",null),a("open",e)},modal:!1,placement:"top-start",gutter:4,get children(){return[i(v.Trigger,M({get as(){return o.triggerAs??"div"}},()=>o.triggerProps,{get children(){return o.children}})),i(v.Portal,{get children(){return i(v.Content,{class:"w-72 h-80 flex flex-col p-2 rounded-md border border-border-base bg-surface-raised-stronger-non-alpha shadow-md z-50 outline-none overflow-hidden",onEscapeKeyDown:e=>{t("escape"),e.preventDefault(),e.stopPropagation()},onPointerDownOutside:()=>t("outside"),onFocusOutside:()=>t("outside"),onCloseAutoFocus:e=>{const l=n.dismiss;l==="outside"&&e.preventDefault(),(l==="escape"||l==="select")&&(e.preventDefault(),o.onClose?.(l)),a("dismiss",null)},get children(){return[i(v.Title,{class:"sr-only",get children(){return s.t("dialog.model.select.title")}}),i(k,{get provider(){return o.provider},get model(){return o.model},onSelect:()=>t("select"),class:"p-1",get action(){return(()=>{var e=R();return d(e,i(S,{placement:"top",get value(){return s.t("command.provider.connect")},get children(){return i(C,{icon:"plus-small",variant:"ghost",iconSize:"normal",class:"size-6",get"aria-label"(){return s.t("command.provider.connect")},onClick:u})}}),null),d(e,i(S,{placement:"top",get value(){return s.t("settings.models.title")},get children(){return i(C,{icon:"sliders",variant:"ghost",iconSize:"normal",class:"size-6",get"aria-label"(){return s.t("settings.models.title")},onClick:r})}}),null),e})()}})]}})}})]}})}const G=o=>{const n=y(),a=x(),c=()=>{I(()=>import("./index-BA1jwG_A.js").then(r=>r.dk),__vite__mapDeps([0,1])).then(r=>{n.show(()=>i(r.DialogSelectProvider,{}))})},t=()=>{n.show(()=>i(L,{tab:"models"}))};return i(O,{get title(){return a.t("dialog.model.select.title")},get action(){return i(P,{class:"h-7 -my-1 text-14-medium",icon:"plus-small",tabIndex:-1,onClick:c,get children(){return a.t("command.provider.connect")}})},get children(){return[i(k,{get provider(){return o.provider},get model(){return o.model},onSelect:()=>n.close()}),i(P,{variant:"ghost",class:"ml-3 mt-5 mb-6 text-text-base self-start",onClick:t,get children(){return a.t("settings.models.title")}})]}})};export{G as DialogSelectModel,W as ModelSelectorPopover};
@@ -0,0 +1,3 @@
1
+ import{L as I,v as r,a2 as $,cM as A,b as s,i as a,S as m,bI as x,bJ as N,t as b}from"./index-BA1jwG_A.js";var T=b('<pre class="m-0 shrink-0 max-h-28 overflow-y-auto rounded-lg border border-border-weak-base bg-background-weak p-3 text-12-regular text-text-strong leading-5 whitespace-pre-wrap break-all">服务端返回:'),S=b('<pre class="m-0 shrink-0 max-h-24 overflow-y-auto rounded-lg border border-border-weak-base bg-background-weak p-3 text-12-regular text-text-strong leading-5 whitespace-pre-wrap break-all">探测详情:'),D=b('<div class="flex flex-col gap-2 min-w-0 min-h-0"><div class="flex items-center justify-between gap-2 shrink-0"><strong class="text-13-medium text-text-strong">建议在服务器上执行</strong></div><pre class="m-0 max-h-[36vh] overflow-y-auto rounded-lg border border-border-weak-base bg-background-weak p-3 text-12-regular text-text-strong leading-5 whitespace-pre-wrap break-all">'),L=b('<div class="flex flex-col gap-4 px-6 pb-6 pt-0 min-h-0"><p class="text-14-regular text-text-weak m-0 leading-6 shrink-0"></p><p class="text-12-regular text-text-weak m-0 shrink-0">修改环境变量后需重启 OneCode,并在浏览器中重新登录后再打开终端。</p><div class="flex justify-end shrink-0">');function M(f={}){const k=I(),l=r(()=>$()),n=r(()=>l()?.capabilities.terminalUnavailableReason??""),w=r(()=>l()?.capabilities.terminalUnavailableDetail??""),i=r(()=>l()?.capabilities.terminalIsolation??""),h=r(()=>(f.failure??"").trim()),u=r(()=>!!l()&&l()?.capabilities.terminal===!0&&!n()),d=r(()=>!n()&&!u()&&i()==="bubblewrap"),p=r(()=>{if(u())return i()==="docker"?["# 1) 无 GPU:改用 bubblewrap 后重启 OneCode,并重新登录","export ONECODE_TERMINAL_ISOLATION=bubblewrap","# 2) 有 GPU 且必须用 docker:给运行账号加组后重新登录系统再启 OneCode",'sudo usermod -aG docker "$USER"',"docker info"]:i()==="bubblewrap"?["# A. 临时绕过隔离(先验证终端能否打开)","export ONECODE_TERMINAL_ISOLATION=native","# 然后重启 onecode,浏览器重新登录后再开终端","","# B. 继续用 bubblewrap 时,在运行 OneCode 的机器上检查:","which bwrap; bwrap --version","bwrap --unshare-all --die-with-parent --new-session --proc /proc --dev /dev --ro-bind-try /usr /usr --ro-bind-try /bin /bin --tmpfs /tmp -- /usr/bin/true; echo exit:$?","cat /proc/sys/kernel/unprivileged_userns_clone","cat /proc/sys/kernel/apparmor_restrict_unprivileged_userns 2>/dev/null || true","","# C. 若 exit 非 0,可临时放开(需管理员;重启后可能失效)","sudo sysctl -w kernel.unprivileged_userns_clone=1","sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0","","# D. 服务端日志(搜 creating session / exited)",'ls ~/.local/share/opencode/log/ 2>/dev/null || ls "$HOME"/.local/share/opencode/log/']:["# 查看服务端日志(搜 creating session / exited)",'ls ~/.local/share/opencode/log/ 2>/dev/null || ls "$HOME"/.local/share/opencode/log/',"# 临时可改:export ONECODE_TERMINAL_ISOLATION=native 后重启并重新登录"];const e=A(l());return Array.isArray(e)&&e.length>0?e:d()?["export ONECODE_TERMINAL_ISOLATION=native","cat /proc/sys/kernel/unprivileged_userns_clone"]:[]}),v=r(()=>p().length>0),_=r(()=>u()?"无法打开终端":n()==="docker-missing"?"无法打开终端:Docker 不可用":n()==="disabled"?"无法打开终端:服务未启用":n()==="bubblewrap-unusable"?"无法打开终端:bubblewrap 异常":d()?"无法打开终端:隔离环境异常":"无法打开终端:需要 bubblewrap"),O=r(()=>u()?i()==="docker"?"隔离模式为 docker,创建终端失败。常见原因是当前用户无权访问 docker.sock。无 GPU 请改用 bubblewrap;有 GPU 请把运行账号加入 docker 组。":i()==="bubblewrap"?"隔离模式为 bubblewrap,创建终端失败(服务端 POST /pty 返回错误)。可先按下方 A 改用 native 验证;若需继续隔离,再按 B/C 检查 bubblewrap 与内核命名空间。":`隔离模式为 ${i()||"native"},创建终端失败。请按下方命令查看日志或临时调整隔离模式后重试。`:n()==="docker-missing"?"已配置 docker 隔离,但当前用户无法使用 Docker。无 GPU 请改用 bubblewrap;有 GPU 请将运行账号加入 docker 组。":n()==="disabled"?"服务端未启用平台账号终端。":n()==="bubblewrap-unusable"?"已安装 bubblewrap,但无法创建用户命名空间。请按下方命令检查后重启 OneCode 并重新登录。":d()?"bubblewrap 终端启动失败。可临时改用 native,或检查 user namespace 相关 sysctl。":"需要安装 bubblewrap 后重启 OneCode 并重新登录。容器部署可使用 ONECODE_TERMINAL_ISOLATION=native。"),C=async()=>{const e=p().filter(o=>o.trim().length>0&&!o.trim().startsWith("#")).join(`
2
+ `);if(e)try{await navigator.clipboard.writeText(e)}catch{}};return s(N,{get title(){return _()},class:"w-full max-w-[560px] mx-auto",size:"large",get children(){var e=L(),o=e.firstChild,c=o.nextSibling,y=c.nextSibling;return a(o,O),a(e,s(m,{get when(){return h()},get children(){var t=T();return t.firstChild,a(t,h,null),t}}),c),a(e,s(m,{get when(){return w()},get children(){var t=S();return t.firstChild,a(t,w,null),t}}),c),a(e,s(m,{get when(){return v()},get children(){var t=D(),g=t.firstChild;g.firstChild;var E=g.nextSibling;return a(g,s(x,{type:"button",size:"normal",variant:"ghost",onClick:()=>void C(),children:"复制命令"}),null),a(E,()=>p().join(`
3
+ `)),t}}),c),a(y,s(x,{type:"button",variant:"primary",size:"large",onClick:()=>k.close(),children:"知道了"})),e}})}export{M as DialogTerminalUnavailable};
@@ -0,0 +1 @@
1
+ import{G as M,E as N,c as O,a as P,v as R,i as t,b as d,t as n,d as W,a6 as j,A as q,f as x,s as k,F as g,S as z,a8 as B}from"./index-BA1jwG_A.js";import{d as J}from"./onescience-docs-CH5KBTI9.js";var K=n("<div class=os-client-capability-page-grid>"),Q=n('<div class="os-client-capability-page os-client-docs-page"><header class=os-client-docs-head><div class=os-client-docs-head-copy><h2>帮助</h2><p>平台使用说明、插件镜像与版本记录</p></div></header><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-docs-tabs"role=tablist aria-label=文档分类></div></section><div class=os-client-capability-page-body><section class=os-client-capability-resource-panel>'),T=n("<button type=button><strong></strong><small>"),U=n("<p class=os-client-capability-empty>该分类下暂无文档。"),V=n("<article class=os-client-capability-card><div><h4></h4><p></p></div><div class=os-client-capability-meta></div><div class=os-client-capability-actions><a target=_blank rel=noreferrer data-primary=true>"),X=n("<span>");const v=[{id:"manual",label:"用户手册",hint:"平台与 OneSkills 使用说明",match:e=>e.includes("用户手册")},{id:"plugins",label:"插件与镜像",hint:"插件协议与运行镜像",match:e=>e.includes("插件")||e.includes("镜像")},{id:"release",label:"发版记录",hint:"版本变化与重要调整",match:e=>e.includes("发版记录")||e.includes("版本记录")}];function w(e){const c=e.replace(/^#/,"").trim().toLowerCase();return c==="manual"||c==="plugins"||c==="release"?c:"manual"}function ee(){const e=M(),c=N(),[b,f]=O(w(e.hash));P(()=>f(w(e.hash)));const E=l=>{f(l),c(B(l),{replace:!0})},$=()=>v.find(l=>l.id===b())??v[0],_=R(()=>J.filter(l=>$().match(l.tags)));return(()=>{var l=Q(),u=l.firstChild;u.firstChild;var m=u.nextSibling,y=m.firstChild,H=y.firstChild,F=H.nextSibling,L=y.nextSibling,A=m.nextSibling,D=A.firstChild;return t(u,d(q,{get href(){return j()},class:"os-client-docs-close","aria-label":"关闭帮助",children:"×"}),null),t(F,()=>$().label),t(L,d(g,{each:v,children:i=>(()=>{var a=T(),r=a.firstChild,h=r.nextSibling;return a.$$click=()=>E(i.id),t(r,()=>i.label),t(h,()=>i.hint),x(s=>{var p=b()===i.id,o=b()===i.id;return p!==s.e&&a.classList.toggle("is-active",s.e=p),o!==s.t&&k(a,"aria-pressed",s.t=o),s},{e:void 0,t:void 0}),a})()})),t(D,d(z,{get when(){return _().length>0},get fallback(){return U()},get children(){var i=K();return t(i,d(g,{get each(){return _()},children:a=>(()=>{var r=V(),h=r.firstChild,s=h.firstChild,p=s.nextSibling,o=h.nextSibling,G=o.nextSibling,S=G.firstChild;return t(s,()=>a.title),t(p,()=>a.copy),t(o,d(g,{get each(){return a.tags},children:I=>(()=>{var C=X();return t(C,I),C})()})),t(S,()=>a.action),x(()=>k(S,"href",a.href)),r})()})),i}})),l})()}W(["click"]);export{ee as WorkbenchDocsPage};