agent-relay-server 0.62.0 → 0.62.1

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 (83) hide show
  1. package/docs/openapi.json +1 -1
  2. package/package.json +2 -2
  3. package/public/assets/{MessageBubble-BP0Ym3xb.js → MessageBubble-DRrxfjyT.js} +2 -2
  4. package/public/assets/{MessageBubble-BP0Ym3xb.js.map → MessageBubble-DRrxfjyT.js.map} +1 -1
  5. package/public/assets/{PlanGraphPanel-DKc3gdou.js → PlanGraphPanel-Dp2eYazz.js} +2 -2
  6. package/public/assets/{PlanGraphPanel-DKc3gdou.js.map → PlanGraphPanel-Dp2eYazz.js.map} +1 -1
  7. package/public/assets/{activity-CRLG6ICe.js → activity--t0U2yzq.js} +2 -2
  8. package/public/assets/{activity-CRLG6ICe.js.map → activity--t0U2yzq.js.map} +1 -1
  9. package/public/assets/{agent-profiles-DItyEkXP.js → agent-profiles-BMtJYzxn.js} +2 -2
  10. package/public/assets/{agent-profiles-DItyEkXP.js.map → agent-profiles-BMtJYzxn.js.map} +1 -1
  11. package/public/assets/{agents-5mKiZ1rz.js → agents-Ck9AePlc.js} +2 -2
  12. package/public/assets/{agents-5mKiZ1rz.js.map → agents-Ck9AePlc.js.map} +1 -1
  13. package/public/assets/{analytics-J5pPcS-v.js → analytics-CzfK387L.js} +2 -2
  14. package/public/assets/{analytics-J5pPcS-v.js.map → analytics-CzfK387L.js.map} +1 -1
  15. package/public/assets/automation-Cgw8vtE8.js +2 -0
  16. package/public/assets/automation-Cgw8vtE8.js.map +1 -0
  17. package/public/assets/{branch-state-badge-BZMoxs65.js → branch-state-badge-DnEEPtOP.js} +2 -2
  18. package/public/assets/{branch-state-badge-BZMoxs65.js.map → branch-state-badge-DnEEPtOP.js.map} +1 -1
  19. package/public/assets/{channels-B2PeqiRT.js → channels-Dc3L2MQs.js} +2 -2
  20. package/public/assets/{channels-B2PeqiRT.js.map → channels-Dc3L2MQs.js.map} +1 -1
  21. package/public/assets/{chat-CLRJVagA.js → chat-Fc6iJ7sa.js} +2 -2
  22. package/public/assets/{chat-CLRJVagA.js.map → chat-Fc6iJ7sa.js.map} +1 -1
  23. package/public/assets/{connectors-Bzvkxsgo.js → connectors-Dc2ttGWs.js} +2 -2
  24. package/public/assets/{connectors-Bzvkxsgo.js.map → connectors-Dc2ttGWs.js.map} +1 -1
  25. package/public/assets/display-DzNvOu1j.js.map +1 -1
  26. package/public/assets/{formatted-body-impl-QqHxdMGP.js → formatted-body-impl-Bg-gx7rG.js} +2 -2
  27. package/public/assets/{formatted-body-impl-QqHxdMGP.js.map → formatted-body-impl-Bg-gx7rG.js.map} +1 -1
  28. package/public/assets/index-BeDncjN4.js +22 -0
  29. package/public/assets/index-BeDncjN4.js.map +1 -0
  30. package/public/assets/{insights-D-EyDfoZ.js → insights-c08aW-7n.js} +2 -2
  31. package/public/assets/{insights-D-EyDfoZ.js.map → insights-c08aW-7n.js.map} +1 -1
  32. package/public/assets/{integrations-D1kc-yNi.js → integrations-BwpgcqnF.js} +2 -2
  33. package/public/assets/{integrations-D1kc-yNi.js.map → integrations-BwpgcqnF.js.map} +1 -1
  34. package/public/assets/{maintenance-COqID7aq.js → maintenance-CTKP0kWB.js} +2 -2
  35. package/public/assets/{maintenance-COqID7aq.js.map → maintenance-CTKP0kWB.js.map} +1 -1
  36. package/public/assets/{managed-agents-b4B8qewQ.js → managed-agents-BofCxo8d.js} +2 -2
  37. package/public/assets/{managed-agents-b4B8qewQ.js.map → managed-agents-BofCxo8d.js.map} +1 -1
  38. package/public/assets/{markdown-preview-impl-D7o8jS07.js → markdown-preview-impl-CQ-6BIb8.js} +2 -2
  39. package/public/assets/{markdown-preview-impl-D7o8jS07.js.map → markdown-preview-impl-CQ-6BIb8.js.map} +1 -1
  40. package/public/assets/{memory-Q0qF7_i3.js → memory-DvfXjMoi.js} +2 -2
  41. package/public/assets/{memory-Q0qF7_i3.js.map → memory-DvfXjMoi.js.map} +1 -1
  42. package/public/assets/{messages-m4EpkK6s.js → messages-C9VsPzZ_.js} +2 -2
  43. package/public/assets/{messages-m4EpkK6s.js.map → messages-C9VsPzZ_.js.map} +1 -1
  44. package/public/assets/orchestrators-MffVueeE.js +2 -0
  45. package/public/assets/{orchestrators-CnAtGfUN.js.map → orchestrators-MffVueeE.js.map} +1 -1
  46. package/public/assets/{overview-D7CF88ik.js → overview-BSVajefM.js} +2 -2
  47. package/public/assets/{overview-D7CF88ik.js.map → overview-BSVajefM.js.map} +1 -1
  48. package/public/assets/{pairs-Q6PlFJtH.js → pairs-B5711-Cs.js} +2 -2
  49. package/public/assets/{pairs-Q6PlFJtH.js.map → pairs-B5711-Cs.js.map} +1 -1
  50. package/public/assets/{security-BeV-6SdA.js → security-DkUwK9Vj.js} +2 -2
  51. package/public/assets/{security-BeV-6SdA.js.map → security-DkUwK9Vj.js.map} +1 -1
  52. package/public/assets/{select-Dchc0_Jg.js → select-DrM2RRiT.js} +2 -2
  53. package/public/assets/{select-Dchc0_Jg.js.map → select-DrM2RRiT.js.map} +1 -1
  54. package/public/assets/{settings-hPwL-31u.js → settings-DdKCb-vy.js} +3 -3
  55. package/public/assets/{settings-hPwL-31u.js.map → settings-DdKCb-vy.js.map} +1 -1
  56. package/public/assets/{store-Buwkqv_7.js → store-iTiheuTD.js} +4 -4
  57. package/public/assets/store-iTiheuTD.js.map +1 -0
  58. package/public/assets/{tasks-DKUMPEgk.js → tasks-e1y1PFfO.js} +2 -2
  59. package/public/assets/{tasks-DKUMPEgk.js.map → tasks-e1y1PFfO.js.map} +1 -1
  60. package/public/assets/{teams-T5fFsdOX.js → teams-BUcxoGC_.js} +2 -2
  61. package/public/assets/{teams-T5fFsdOX.js.map → teams-BUcxoGC_.js.map} +1 -1
  62. package/public/assets/{terminal-viewer-impl-Bk0u_Mav.js → terminal-viewer-impl-CmZjQOB2.js} +2 -2
  63. package/public/assets/{terminal-viewer-impl-Bk0u_Mav.js.map → terminal-viewer-impl-CmZjQOB2.js.map} +1 -1
  64. package/public/assets/{work-queue-D26jok09.js → work-queue-CXBQx43n.js} +2 -2
  65. package/public/assets/{work-queue-D26jok09.js.map → work-queue-CXBQx43n.js.map} +1 -1
  66. package/public/assets/{workspaces-BMj6zx23.js → workspaces-D2EfZh9a.js} +2 -2
  67. package/public/assets/{workspaces-BMj6zx23.js.map → workspaces-D2EfZh9a.js.map} +1 -1
  68. package/public/index.html +2 -2
  69. package/src/bus.ts +3 -1
  70. package/src/db/agents.ts +14 -5
  71. package/src/db/migrations.ts +6 -0
  72. package/src/db/schema.ts +1 -0
  73. package/src/routes/orchestrator-bootstrap.ts +2 -1
  74. package/src/routes/tokens.ts +1 -1
  75. package/src/runtime-tokens.ts +15 -11
  76. package/src/security.ts +43 -3
  77. package/src/token-db.ts +24 -4
  78. package/public/assets/automation-BG2HWK5N.js +0 -2
  79. package/public/assets/automation-BG2HWK5N.js.map +0 -1
  80. package/public/assets/index-CCp1V35c.js +0 -22
  81. package/public/assets/index-CCp1V35c.js.map +0 -1
  82. package/public/assets/orchestrators-CnAtGfUN.js +0 -2
  83. package/public/assets/store-Buwkqv_7.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import{F as e,L as t,Ln as n,Wt as r,an as i,k as a,p as o,w as s}from"./lucide-react-DWYjU-AF.js";import{s as c,t as l}from"./store-Buwkqv_7.js";import{N as u,P as d,U as f}from"./display-DzNvOu1j.js";import{t as p}from"./badge-CZhIdlTJ.js";import{t as m}from"./button-2taQeNHW.js";import{N as h}from"./index-CCp1V35c.js";import{a as g,o as _,r as v,t as y}from"./card-DzIsAI41.js";var b=n();function x({agent:t,orch:n}){let i=l(e=>e.orchestratorAction),o=l(e=>e.openFilesAt);return(0,b.jsxs)(`div`,{className:`flex items-center gap-2 py-1.5`,children:[(0,b.jsx)(r,{className:`w-3.5 h-3.5 text-muted-foreground shrink-0`}),(0,b.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,b.jsx)(`div`,{className:`text-xs font-medium truncate`,children:t.label||t.agentId.slice(-12)}),(0,b.jsxs)(`button`,{type:`button`,className:`max-w-full truncate text-left text-[10px] text-muted-foreground hover:text-foreground`,title:`Open ${t.cwd||n.baseDir} in Files`,onClick:e=>{e.stopPropagation(),o({orchestratorId:n.id,path:t.cwd||n.baseDir})},children:[t.provider,` · `,t.cwd||`~`]})]}),(0,b.jsxs)(`div`,{className:`flex gap-1`,children:[(0,b.jsx)(m,{size:`icon`,variant:`ghost`,className:`h-6 w-6`,title:`Restart agent`,onClick:e=>{e.stopPropagation(),i(n.id,`restart`,t.agentId,`orchestrators`)},children:(0,b.jsx)(a,{className:`w-3 h-3`})}),(0,b.jsx)(m,{size:`icon`,variant:`ghost`,className:`h-6 w-6 text-red-400 hover:text-red-300`,title:`Shutdown agent`,onClick:e=>{e.stopPropagation(),i(n.id,`shutdown`,t.agentId,`orchestrators`)},children:(0,b.jsx)(e,{className:`w-3 h-3`})})]})]})}function S({orch:n}){let r=c(),S=l(e=>e.orchestratorAction),C=l(e=>e.upgradeOrchestrator),w=l(e=>e.stats.version),T=l(e=>e.openOrchestratorSpawnFor),E=l(e=>e.openFilesAt),D=l(e=>e.deleteOrchestrator),O=l(e=>e.refreshOrchestratorProviders),k=d(n),A=u(n),j=n.status===`online`,M=n.package?.version||n.version,N=n.upgrade,P=N?.status===`pending`,F=j&&!!n.version&&!!w&&n.version!==w,I=j&&!P&&(F||N?.status===`failed`),L=Object.entries(n.contracts||{}).filter(([,e])=>typeof e==`number`),R=n.providerStatus||n.providers.map(e=>({name:e,available:!0,checkedAt:Number(n.lastSeen)||Date.now()})),z=n.managedAgents.map(e=>e.workspace?{agent:e,workspace:e.workspace}:null).filter(e=>!!(e?.workspace?.id||e?.workspace?.worktreePath));return(0,b.jsxs)(y,{className:`${j?``:`opacity-60`}`,children:[(0,b.jsx)(g,{className:`pb-2 pt-4 px-4`,children:(0,b.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,b.jsx)(`div`,{className:`p-1.5 rounded-md ${j?`bg-emerald-500/10`:`bg-zinc-800`}`,children:(0,b.jsx)(s,{className:`w-4 h-4 ${j?`text-emerald-400`:`text-zinc-500`}`})}),(0,b.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,b.jsx)(_,{className:`text-sm font-medium truncate`,children:n.hostname}),(0,b.jsxs)(`div`,{className:`text-xs text-muted-foreground mt-0.5`,children:[n.id.slice(0,16),`…`]})]}),(0,b.jsx)(p,{className:`text-[10px] shrink-0 ${A}`,children:k})]})}),(0,b.jsxs)(v,{className:`px-4 pb-4 space-y-3`,children:[(0,b.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1 text-xs text-muted-foreground`,children:[(0,b.jsx)(`span`,{className:j?`text-emerald-400`:`text-zinc-500`,children:n.status}),M&&(0,b.jsxs)(`span`,{children:[n.package?.name||`orchestrator`,` v`,M]}),P&&(0,b.jsxs)(p,{className:`text-[10px] bg-amber-500/10 text-amber-400 border-amber-500/20 gap-1`,children:[(0,b.jsx)(i,{className:`w-3 h-3 animate-pulse`}),`upgrading → v`,N.desiredVersion]}),!P&&N?.status===`failed`&&(0,b.jsxs)(p,{className:`text-[10px] bg-red-500/10 text-red-400 border-red-500/20 gap-1`,title:N.error,children:[(0,b.jsx)(o,{className:`w-3 h-3`}),`upgrade failed`]}),!P&&F&&(0,b.jsxs)(p,{className:`text-[10px] bg-blue-500/10 text-blue-400 border-blue-500/20`,children:[`→ v`,w,` available`]}),(0,b.jsx)(`span`,{className:`ml-auto`,children:f(r,n.lastSeen)})]}),R.length>0&&(0,b.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:R.map(e=>(0,b.jsx)(p,{variant:`secondary`,title:e.available?`version`in e&&e.version?e.version:e.name:`reason`in e&&e.reason?e.reason:`${e.name} unavailable`,className:`text-[10px] ${e.available?`bg-emerald-500/10 text-emerald-400 border-emerald-500/20`:`bg-red-500/10 text-red-400 border-red-500/20`}`,children:e.name},e.name))}),L.length>0&&(0,b.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:L.map(([e,t])=>(0,b.jsxs)(p,{variant:`secondary`,className:`text-[10px]`,children:[e,`=`,t]},e))}),n.managedAgents.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(h,{}),(0,b.jsxs)(`div`,{children:[(0,b.jsxs)(`div`,{className:`text-xs font-medium text-muted-foreground mb-1.5`,children:[`Managed agents (`,n.managedAgents.length,`)`]}),(0,b.jsx)(`div`,{className:`space-y-0`,children:n.managedAgents.map(e=>(0,b.jsx)(x,{agent:e,orch:n},e.agentId))})]})]}),z.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(h,{}),(0,b.jsxs)(`div`,{children:[(0,b.jsxs)(`div`,{className:`text-xs font-medium text-muted-foreground mb-1.5`,children:[`Workspaces (`,z.length,`)`]}),(0,b.jsx)(`div`,{className:`space-y-1`,children:z.map(({agent:e,workspace:t})=>(0,b.jsxs)(`button`,{type:`button`,className:`block w-full min-w-0 rounded border border-border/60 px-2 py-1.5 text-left hover:bg-accent/40`,onClick:()=>t.worktreePath&&void E({orchestratorId:n.id,path:t.worktreePath}),children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,b.jsx)(`span`,{className:`truncate font-medium`,children:t.branch||e.label||e.agentId.slice(-12)}),t.status&&(0,b.jsx)(p,{variant:`outline`,className:`h-4 shrink-0 text-[10px]`,children:t.status})]}),(0,b.jsx)(`div`,{className:`truncate text-[10px] text-muted-foreground`,children:t.worktreePath||t.repoRoot})]},t.id||t.worktreePath))})]})]}),(0,b.jsx)(h,{}),(0,b.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[j&&(0,b.jsxs)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,onClick:()=>T(n.id),children:[(0,b.jsx)(t,{className:`w-3 h-3`}),`Spawn agent`]}),j&&(0,b.jsxs)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,onClick:()=>O(n.id),children:[(0,b.jsx)(a,{className:`w-3 h-3`}),`Refresh providers`]}),(I||P)&&(0,b.jsxs)(m,{size:`sm`,variant:`outline`,disabled:P,className:`h-7 text-xs gap-1 text-blue-400 hover:text-blue-300 border-blue-500/30 disabled:opacity-60`,title:P?`Upgrading to v${N.desiredVersion}…`:`Upgrade to v${w}`,onClick:()=>C(n.id),children:[(0,b.jsx)(i,{className:`w-3 h-3 ${P?`animate-pulse`:``}`}),P?`Upgrading…`:`Upgrade`]}),j&&(0,b.jsxs)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,onClick:()=>S(n.id,`restart`,void 0,`orchestrators`),children:[(0,b.jsx)(a,{className:`w-3 h-3`}),`Restart all`]}),j&&(0,b.jsxs)(m,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1 text-red-400 hover:text-red-300 border-red-500/30`,onClick:()=>S(n.id,`shutdown`,void 0,`orchestrators`),children:[(0,b.jsx)(e,{className:`w-3 h-3`}),`Shutdown all`]}),(0,b.jsx)(m,{size:`sm`,variant:`ghost`,className:`h-7 text-xs text-muted-foreground hover:text-red-400`,onClick:()=>D(n.id),children:`Remove`})]})]})]})}function C(){let e=l(e=>e.orchestrators),n=l(e=>e.openOrchestratorSpawn),r=l(e=>e.openOrchestratorInstall),i=e.filter(e=>e.status===`online`).length;return(0,b.jsxs)(`div`,{className:`space-y-4`,children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,b.jsxs)(`div`,{children:[(0,b.jsx)(`h2`,{className:`text-base font-semibold`,children:`Orchestrators`}),(0,b.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Multi-host agent lifecycle managers`})]}),(0,b.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[(0,b.jsxs)(p,{variant:`outline`,className:`text-xs`,children:[i,` online`]}),(0,b.jsxs)(m,{size:`sm`,variant:`outline`,className:`gap-1`,onClick:r,children:[(0,b.jsx)(s,{className:`w-3.5 h-3.5`}),`Add`]}),(0,b.jsxs)(m,{size:`sm`,className:`gap-1`,onClick:n,children:[(0,b.jsx)(t,{className:`w-3.5 h-3.5`}),`Spawn`]})]})]}),e.length===0?(0,b.jsx)(`div`,{className:`text-center py-16 text-muted-foreground text-sm`,children:`No orchestrators registered.`}):(0,b.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4`,children:e.map(e=>(0,b.jsx)(S,{orch:e},e.id))})]})}export{C as OrchestratorsView};
2
- //# sourceMappingURL=orchestrators-CnAtGfUN.js.map