agent-tower 0.3.9 → 0.3.11

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 (117) hide show
  1. package/dist/app.d.ts.map +1 -1
  2. package/dist/app.js +2 -0
  3. package/dist/app.js.map +1 -1
  4. package/dist/executors/base.executor.d.ts +1 -1
  5. package/dist/executors/base.executor.d.ts.map +1 -1
  6. package/dist/executors/base.executor.js +1 -1
  7. package/dist/executors/base.executor.js.map +1 -1
  8. package/dist/middleware/__tests__/tunnel-auth.test.d.ts +2 -0
  9. package/dist/middleware/__tests__/tunnel-auth.test.d.ts.map +1 -0
  10. package/dist/middleware/__tests__/tunnel-auth.test.js +87 -0
  11. package/dist/middleware/__tests__/tunnel-auth.test.js.map +1 -0
  12. package/dist/middleware/tunnel-auth.d.ts.map +1 -1
  13. package/dist/middleware/tunnel-auth.js +32 -9
  14. package/dist/middleware/tunnel-auth.js.map +1 -1
  15. package/dist/pipeline/agent-pipeline.d.ts +1 -1
  16. package/dist/pipeline/agent-pipeline.d.ts.map +1 -1
  17. package/dist/routes/app-settings.d.ts +3 -0
  18. package/dist/routes/app-settings.d.ts.map +1 -0
  19. package/dist/routes/app-settings.js +39 -0
  20. package/dist/routes/app-settings.js.map +1 -0
  21. package/dist/routes/index.d.ts.map +1 -1
  22. package/dist/routes/index.js +3 -0
  23. package/dist/routes/index.js.map +1 -1
  24. package/dist/routes/notifications.d.ts.map +1 -1
  25. package/dist/routes/notifications.js +6 -1
  26. package/dist/routes/notifications.js.map +1 -1
  27. package/dist/routes/system.d.ts.map +1 -1
  28. package/dist/routes/system.js +9 -0
  29. package/dist/routes/system.js.map +1 -1
  30. package/dist/routes/tunnel.d.ts.map +1 -1
  31. package/dist/routes/tunnel.js +2 -0
  32. package/dist/routes/tunnel.js.map +1 -1
  33. package/dist/services/notifications/defaults.d.ts +3 -0
  34. package/dist/services/notifications/defaults.d.ts.map +1 -0
  35. package/dist/services/notifications/defaults.js +23 -0
  36. package/dist/services/notifications/defaults.js.map +1 -0
  37. package/dist/services/notifications/notification.service.d.ts.map +1 -1
  38. package/dist/services/notifications/notification.service.js +5 -9
  39. package/dist/services/notifications/notification.service.js.map +1 -1
  40. package/dist/services/slash-command-catalog.service.d.ts +4 -0
  41. package/dist/services/slash-command-catalog.service.d.ts.map +1 -0
  42. package/dist/services/slash-command-catalog.service.js +265 -0
  43. package/dist/services/slash-command-catalog.service.js.map +1 -0
  44. package/dist/services/terminal-manager.js +1 -1
  45. package/dist/services/terminal-manager.js.map +1 -1
  46. package/dist/socket/middleware/__tests__/auth.test.d.ts +2 -0
  47. package/dist/socket/middleware/__tests__/auth.test.d.ts.map +1 -0
  48. package/dist/socket/middleware/__tests__/auth.test.js +50 -0
  49. package/dist/socket/middleware/__tests__/auth.test.js.map +1 -0
  50. package/dist/socket/middleware/auth.d.ts.map +1 -1
  51. package/dist/socket/middleware/auth.js +7 -8
  52. package/dist/socket/middleware/auth.js.map +1 -1
  53. package/dist/utils/__tests__/tunnel-cookie.test.d.ts +2 -0
  54. package/dist/utils/__tests__/tunnel-cookie.test.d.ts.map +1 -0
  55. package/dist/utils/__tests__/tunnel-cookie.test.js +11 -0
  56. package/dist/utils/__tests__/tunnel-cookie.test.js.map +1 -0
  57. package/dist/utils/tunnel-cookie.d.ts +9 -0
  58. package/dist/utils/tunnel-cookie.d.ts.map +1 -0
  59. package/dist/utils/tunnel-cookie.js +19 -0
  60. package/dist/utils/tunnel-cookie.js.map +1 -0
  61. package/dist/web/assets/AgentDemoPage-CTlnJyU5.js +1 -0
  62. package/dist/web/assets/DemoPage-CJ38nIO8.js +4 -0
  63. package/dist/web/assets/GeneralSettingsPage-B7VYEpgr.js +1 -0
  64. package/dist/web/assets/NotificationSettingsPage-CHD4DBUP.js +1 -0
  65. package/dist/web/assets/ProfileSettingsPage-qmtWRC95.js +3 -0
  66. package/dist/web/assets/ProjectKanbanPage-BlLvUJHU.js +85 -0
  67. package/dist/web/assets/ProjectSettingsPage-jenb_WWg.js +2 -0
  68. package/dist/web/assets/ProviderSettingsPage-BHH0jqW4.js +54 -0
  69. package/dist/web/assets/button-CljdSOa6.js +1 -0
  70. package/dist/web/assets/{chevron-down-DrP9EgY9.js → chevron-down-BYofhuN2.js} +1 -1
  71. package/dist/web/assets/circle-alert-mZUTomft.js +1 -0
  72. package/dist/web/assets/circle-check-CE93UcTb.js +1 -0
  73. package/dist/web/assets/code-block-OCS4YCEC-BFgaKpDI.js +2 -0
  74. package/dist/web/assets/confirm-dialog-nNRI_61i.js +1 -0
  75. package/dist/web/assets/folder-picker-DBgAK0Ax.js +1 -0
  76. package/dist/web/assets/index-8kxJ66vL.js +13 -0
  77. package/dist/web/assets/index-HqeZJR3B.css +1 -0
  78. package/dist/web/assets/loader-circle-C9xqhRQy.js +1 -0
  79. package/dist/web/assets/{mermaid-NOHMQCX5-BvevrkjG.js → mermaid-NOHMQCX5-DCP6uuN7.js} +42 -42
  80. package/dist/web/assets/modal-BoAiDPtT.js +1 -0
  81. package/dist/web/assets/pencil-Ch8xuc6u.js +1 -0
  82. package/dist/web/assets/select-BzwBaSER.js +1 -0
  83. package/dist/web/assets/use-profiles-B5A7JdZj.js +1 -0
  84. package/dist/web/assets/use-projects-CEI8i-dO.js +1 -0
  85. package/dist/web/assets/utils-CkSf8FUe.js +1 -0
  86. package/dist/web/assets/x-nkgvEsnZ.js +1 -0
  87. package/dist/web/index.html +2 -2
  88. package/node_modules/@agent-tower/shared/dist/types.d.ts +19 -0
  89. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  90. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  91. package/package.json +3 -2
  92. package/prisma/migrations/20260331000000_add_app_settings/migration.sql +5 -0
  93. package/prisma/schema.prisma +6 -0
  94. package/scripts/postinstall.js +16 -14
  95. package/dist/web/assets/AgentDemoPage-CzND8Y0f.js +0 -1
  96. package/dist/web/assets/DemoPage-CmUJ0dvS.js +0 -4
  97. package/dist/web/assets/NotificationSettingsPage-B1SDsL68.js +0 -1
  98. package/dist/web/assets/ProfileSettingsPage-Z42bsJop.js +0 -3
  99. package/dist/web/assets/ProjectKanbanPage-BsRLM_To.js +0 -85
  100. package/dist/web/assets/ProjectSettingsPage-DizbsdCH.js +0 -2
  101. package/dist/web/assets/ProviderSettingsPage-BnLCrZgD.js +0 -54
  102. package/dist/web/assets/api-client-CgvcCTaj.js +0 -1
  103. package/dist/web/assets/circle-alert-wdB5gDUz.js +0 -1
  104. package/dist/web/assets/circle-check-DilG10OC.js +0 -1
  105. package/dist/web/assets/code-block-OCS4YCEC-BQpzSGnw.js +0 -2
  106. package/dist/web/assets/confirm-dialog-zLKSUa6j.js +0 -1
  107. package/dist/web/assets/folder-picker-CmgJx3lM.js +0 -1
  108. package/dist/web/assets/index-B-QFtMnj.js +0 -13
  109. package/dist/web/assets/index-DX47RnmN.css +0 -1
  110. package/dist/web/assets/loader-circle-B8Hk0gt3.js +0 -1
  111. package/dist/web/assets/modal-CCInxYr_.js +0 -1
  112. package/dist/web/assets/pencil-u5vhUMho.js +0 -1
  113. package/dist/web/assets/query-keys-BGgDKleg.js +0 -1
  114. package/dist/web/assets/select-CinUO48b.js +0 -1
  115. package/dist/web/assets/use-profiles-DJwSheDq.js +0 -1
  116. package/dist/web/assets/use-projects-OFs5uSW6.js +0 -1
  117. package/dist/web/assets/x-Bz9Stptu.js +0 -1
@@ -0,0 +1,3 @@
1
+ import{u as V,r as o,j as e}from"./index-8kxJ66vL.js";import{u as I,a as L,b as A,c as D}from"./use-profiles-B5A7JdZj.js";import{B as N}from"./button-CljdSOa6.js";import{T as M,M as T}from"./modal-BoAiDPtT.js";import{P as U}from"./x-nkgvEsnZ.js";import{P as z}from"./pencil-Ch8xuc6u.js";import"./utils-CkSf8FUe.js";function B(s){return Object.entries(s).map(([c,u])=>`${c}: ${JSON.stringify(u)}`).join(", ")}const g={CLAUDE_CODE:"Claude Code",GEMINI_CLI:"Gemini CLI",CURSOR_AGENT:"Cursor Agent"};function K(){const{t:s}=V(),{data:c,isLoading:u}=I(),{data:v}=L(),d=A(),C=D(),[a,l]=o.useState(null),[f,x]=o.useState(""),[m,p]=o.useState(""),[h,i]=o.useState(""),S=(t,n,r)=>{l({agentType:t,variant:n,config:r,isNew:!1}),p(n),x(JSON.stringify(r,null,2)),i("")},y=t=>{l({agentType:t,variant:"",config:{},isNew:!0}),p(""),x(`{
2
+
3
+ }`),i("")},E=()=>{if(!(!a||!m.trim()))try{const t=JSON.parse(f);i(""),d.mutate({agentType:a.agentType,variant:m.trim().toUpperCase(),config:t},{onSuccess:()=>l(null)})}catch{i(s("JSON 格式错误"))}},w=(t,n)=>{confirm(s("确定删除 {agentType} / {variant}?",{agentType:t,variant:n}))&&C.mutate({agentType:t,variant:n})},O=(t,n)=>!!v?.executors[t]?.[n];if(u)return e.jsx("div",{className:"p-6 text-sm text-neutral-400",children:s("加载中...")});const P=c?.executors??{};return e.jsxs("div",{className:"px-10 py-6 mx-auto w-full max-w-3xl",children:[Object.entries(P).map(([t,n])=>e.jsxs("div",{className:"mb-6",children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("h3",{className:"text-[13px] font-semibold text-neutral-900",children:g[t]??t}),e.jsxs("button",{onClick:()=>y(t),className:"flex items-center gap-1 text-xs text-neutral-400 hover:text-neutral-900 transition-colors",children:[e.jsx(U,{size:12}),e.jsx("span",{children:s("新增")})]})]}),e.jsx("div",{className:"border border-neutral-100 rounded-lg overflow-hidden",children:Object.entries(n).map(([r,b],k,J)=>{const j=O(t,r);return e.jsxs("div",{className:`flex items-center gap-3 px-4 py-2.5 hover:bg-neutral-50 transition-colors group ${k<J.length-1?"border-b border-neutral-100":""}`,children:[e.jsx("span",{className:`inline-flex items-center px-2 py-0.5 rounded text-[11px] font-semibold tracking-wide ${r==="DEFAULT"?"bg-blue-50 text-blue-600":"bg-neutral-50 text-neutral-600"}`,children:r}),e.jsx("span",{className:"flex-1 text-[12px] text-neutral-400 font-mono truncate",children:B(b)}),j&&e.jsx("span",{className:"text-[11px] text-neutral-300 font-medium",children:s("内置")}),e.jsxs("div",{className:"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[e.jsx("button",{onClick:()=>S(t,r,b),className:"p-1 text-neutral-300 hover:text-neutral-700 rounded transition-colors",children:e.jsx(z,{size:13})}),!j&&e.jsx("button",{onClick:()=>w(t,r),className:"p-1 text-neutral-300 hover:text-red-500 rounded transition-colors",children:e.jsx(M,{size:13})})]})]},r)})})]},t)),e.jsx(T,{isOpen:!!a,onClose:()=>l(null),title:a?.isNew?s("新增 Variant — {agentType}",{agentType:g[a.agentType]??a.agentType}):s("编辑 {variant}",{variant:a?.variant??""}),action:e.jsxs(e.Fragment,{children:[e.jsx(N,{variant:"outline",onClick:()=>l(null),children:s("取消")}),e.jsx(N,{onClick:E,disabled:d.isPending,children:d.isPending?s("保存中..."):s("保存")})]}),children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-[13px] font-medium text-neutral-700 mb-1",children:s("Variant 名称")}),e.jsx("input",{type:"text",value:m,onChange:t=>p(t.target.value),disabled:!a?.isNew,placeholder:s("例如: CUSTOM"),className:"w-full px-3 py-2 border border-neutral-200 rounded-lg text-sm focus:outline-none focus:ring-1 focus:ring-neutral-300 disabled:bg-neutral-50 disabled:text-neutral-500 font-mono"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[13px] font-medium text-neutral-700 mb-1",children:s("配置 (JSON)")}),e.jsx("textarea",{value:f,onChange:t=>{x(t.target.value),i("")},rows:6,className:"w-full px-3 py-2 border border-neutral-200 rounded-lg text-sm font-mono focus:outline-none focus:ring-1 focus:ring-neutral-300 resize-none"}),h&&e.jsx("p",{className:"mt-1 text-xs text-red-500",children:h})]})]})})]})}export{K as ProfileSettingsPage};