@openagt/dashboard 0.55.0 → 0.57.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/README.md +19 -1
  2. package/dist/built-in.d.ts +9 -0
  3. package/dist/built-in.d.ts.map +1 -1
  4. package/dist/built-in.js +19 -1
  5. package/dist/built-in.js.map +1 -1
  6. package/dist/cli/skills.d.ts +7 -9
  7. package/dist/cli/skills.d.ts.map +1 -1
  8. package/dist/cli/skills.js +25 -22
  9. package/dist/cli/skills.js.map +1 -1
  10. package/dist/client.d.ts +3 -0
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +3 -0
  13. package/dist/client.js.map +1 -1
  14. package/dist/clone-project.d.ts +10 -8
  15. package/dist/clone-project.d.ts.map +1 -1
  16. package/dist/clone-project.js +36 -47
  17. package/dist/clone-project.js.map +1 -1
  18. package/dist/cloud-scratch-refs.d.ts +9 -1
  19. package/dist/cloud-scratch-refs.d.ts.map +1 -1
  20. package/dist/cloud-scratch-refs.js +9 -2
  21. package/dist/cloud-scratch-refs.js.map +1 -1
  22. package/dist/daemon-runtime.d.ts.map +1 -1
  23. package/dist/daemon-runtime.js +37 -5
  24. package/dist/daemon-runtime.js.map +1 -1
  25. package/dist/daemon-services.d.ts.map +1 -1
  26. package/dist/daemon-services.js +4 -2
  27. package/dist/daemon-services.js.map +1 -1
  28. package/dist/daemon.d.ts.map +1 -1
  29. package/dist/daemon.js +7 -0
  30. package/dist/daemon.js.map +1 -1
  31. package/dist/dashboard/copy-logins.d.ts +1 -1
  32. package/dist/dashboard/copy-logins.d.ts.map +1 -1
  33. package/dist/dashboard/copy-logins.js +9 -6
  34. package/dist/dashboard/copy-logins.js.map +1 -1
  35. package/dist/dashboard/git-hosts.d.ts +1 -3
  36. package/dist/dashboard/git-hosts.d.ts.map +1 -1
  37. package/dist/dashboard/git-hosts.js +2 -2
  38. package/dist/dashboard/git-hosts.js.map +1 -1
  39. package/dist/dashboard/logins-sync.d.ts +25 -1
  40. package/dist/dashboard/logins-sync.d.ts.map +1 -1
  41. package/dist/dashboard/logins-sync.js +78 -15
  42. package/dist/dashboard/logins-sync.js.map +1 -1
  43. package/dist/dashboard/overview.d.ts +4 -2
  44. package/dist/dashboard/overview.d.ts.map +1 -1
  45. package/dist/dashboard/overview.js +7 -3
  46. package/dist/dashboard/overview.js.map +1 -1
  47. package/dist/dashboard/person.d.ts +13 -12
  48. package/dist/dashboard/person.d.ts.map +1 -1
  49. package/dist/dashboard/person.js +7 -21
  50. package/dist/dashboard/person.js.map +1 -1
  51. package/dist/dashboard/projects.d.ts.map +1 -1
  52. package/dist/dashboard/projects.js +5 -1
  53. package/dist/dashboard/projects.js.map +1 -1
  54. package/dist/dashboard/repos.d.ts +63 -0
  55. package/dist/dashboard/repos.d.ts.map +1 -0
  56. package/dist/dashboard/repos.js +131 -0
  57. package/dist/dashboard/repos.js.map +1 -0
  58. package/dist/dashboard/send-skills.d.ts +12 -1
  59. package/dist/dashboard/send-skills.d.ts.map +1 -1
  60. package/dist/dashboard/send-skills.js +11 -3
  61. package/dist/dashboard/send-skills.js.map +1 -1
  62. package/dist/dashboard/start-branch.d.ts.map +1 -1
  63. package/dist/dashboard/start-branch.js +5 -3
  64. package/dist/dashboard/start-branch.js.map +1 -1
  65. package/dist/dashboard/types.d.ts +26 -0
  66. package/dist/dashboard/types.d.ts.map +1 -1
  67. package/dist/dashboard-bundle/assets/host/module--PBDa8mk.js +1 -0
  68. package/dist/dashboard-bundle/assets/main-5Ke2be9l.js +152 -0
  69. package/dist/dashboard-bundle/assets/main-D9WdDo5V.css +2 -0
  70. package/dist/dashboard-bundle/assets/module-XkaUkYn0.js +19 -0
  71. package/dist/dashboard-bundle/index.html +4 -4
  72. package/dist/dashboard-rpc/agents.d.ts +64 -0
  73. package/dist/dashboard-rpc/agents.d.ts.map +1 -0
  74. package/dist/dashboard-rpc/agents.js +137 -0
  75. package/dist/dashboard-rpc/agents.js.map +1 -0
  76. package/dist/dashboard-rpc/copied-logins.d.ts +1 -1
  77. package/dist/dashboard-rpc/copied-logins.d.ts.map +1 -1
  78. package/dist/dashboard-rpc/copied-logins.js +7 -7
  79. package/dist/dashboard-rpc/copied-logins.js.map +1 -1
  80. package/dist/dashboard-rpc/hosted-repos.d.ts +42 -0
  81. package/dist/dashboard-rpc/hosted-repos.d.ts.map +1 -0
  82. package/dist/dashboard-rpc/hosted-repos.js +74 -0
  83. package/dist/dashboard-rpc/hosted-repos.js.map +1 -0
  84. package/dist/dashboard-rpc/index.d.ts +3 -2
  85. package/dist/dashboard-rpc/index.d.ts.map +1 -1
  86. package/dist/dashboard-rpc/index.js +5 -3
  87. package/dist/dashboard-rpc/index.js.map +1 -1
  88. package/dist/dashboard-rpc/logins.d.ts +1 -33
  89. package/dist/dashboard-rpc/logins.d.ts.map +1 -1
  90. package/dist/dashboard-rpc/logins.js +3 -51
  91. package/dist/dashboard-rpc/logins.js.map +1 -1
  92. package/dist/dashboard-rpc/modules.d.ts +4 -3
  93. package/dist/dashboard-rpc/modules.d.ts.map +1 -1
  94. package/dist/dashboard-rpc/modules.js +6 -5
  95. package/dist/dashboard-rpc/modules.js.map +1 -1
  96. package/dist/dashboard-rpc/person.d.ts +32 -1
  97. package/dist/dashboard-rpc/person.d.ts.map +1 -1
  98. package/dist/dashboard-rpc/person.js +49 -8
  99. package/dist/dashboard-rpc/person.js.map +1 -1
  100. package/dist/dashboard-rpc/personal-folder.d.ts +19 -2
  101. package/dist/dashboard-rpc/personal-folder.d.ts.map +1 -1
  102. package/dist/dashboard-rpc/personal-folder.js +24 -6
  103. package/dist/dashboard-rpc/personal-folder.js.map +1 -1
  104. package/dist/dashboard-rpc/project-agent-data.d.ts +12 -0
  105. package/dist/dashboard-rpc/project-agent-data.d.ts.map +1 -1
  106. package/dist/dashboard-rpc/project-agent-data.js +17 -2
  107. package/dist/dashboard-rpc/project-agent-data.js.map +1 -1
  108. package/dist/dashboard-rpc/projects.d.ts +62 -6
  109. package/dist/dashboard-rpc/projects.d.ts.map +1 -1
  110. package/dist/dashboard-rpc/projects.js +104 -15
  111. package/dist/dashboard-rpc/projects.js.map +1 -1
  112. package/dist/dashboard-rpc/reads.d.ts +1 -1
  113. package/dist/dashboard-rpc/reads.d.ts.map +1 -1
  114. package/dist/dashboard-rpc/reads.js +6 -2
  115. package/dist/dashboard-rpc/reads.js.map +1 -1
  116. package/dist/dashboard-rpc/runs-changed.d.ts.map +1 -1
  117. package/dist/dashboard-rpc/runs-changed.js +9 -3
  118. package/dist/dashboard-rpc/runs-changed.js.map +1 -1
  119. package/dist/dashboard-rpc/send-as.d.ts +42 -0
  120. package/dist/dashboard-rpc/send-as.d.ts.map +1 -0
  121. package/dist/dashboard-rpc/send-as.js +78 -0
  122. package/dist/dashboard-rpc/send-as.js.map +1 -0
  123. package/dist/dashboard-rpc/skills.d.ts +2 -1
  124. package/dist/dashboard-rpc/skills.d.ts.map +1 -1
  125. package/dist/dashboard-rpc/skills.js +6 -4
  126. package/dist/dashboard-rpc/skills.js.map +1 -1
  127. package/dist/module-types/dashboard/components/ui/confirm-dialog.d.ts +5 -1
  128. package/dist/module-types/dashboard/components/ui/row-item.d.ts +1 -2
  129. package/dist/module-types/dashboard/lib/route.d.ts +3 -3
  130. package/dist/module-types/dashboard/module/index.d.ts +2 -2
  131. package/dist/module-types/src/built-in.d.ts +9 -0
  132. package/dist/module-types/src/client.d.ts +3 -0
  133. package/dist/module-types/src/clone-project.d.ts +10 -8
  134. package/dist/module-types/src/dashboard/git-hosts.d.ts +1 -3
  135. package/dist/module-types/src/dashboard/logins-sync.d.ts +25 -1
  136. package/dist/module-types/src/dashboard/overview.d.ts +4 -2
  137. package/dist/module-types/src/dashboard/person.d.ts +13 -12
  138. package/dist/module-types/src/dashboard/repos.d.ts +62 -0
  139. package/dist/module-types/src/dashboard/send-skills.d.ts +12 -1
  140. package/dist/module-types/src/dashboard/types.d.ts +26 -0
  141. package/dist/module-types/src/dashboard-rpc/agents.d.ts +63 -0
  142. package/dist/module-types/src/dashboard-rpc/copied-logins.d.ts +1 -1
  143. package/dist/module-types/src/dashboard-rpc/hosted-repos.d.ts +41 -0
  144. package/dist/module-types/src/dashboard-rpc/index.d.ts +3 -2
  145. package/dist/module-types/src/dashboard-rpc/logins.d.ts +1 -33
  146. package/dist/module-types/src/dashboard-rpc/modules.d.ts +4 -3
  147. package/dist/module-types/src/dashboard-rpc/person.d.ts +32 -1
  148. package/dist/module-types/src/dashboard-rpc/personal-folder.d.ts +19 -2
  149. package/dist/module-types/src/dashboard-rpc/project-agent-data.d.ts +12 -0
  150. package/dist/module-types/src/dashboard-rpc/projects.d.ts +62 -6
  151. package/dist/module-types/src/dashboard-rpc/reads.d.ts +1 -1
  152. package/dist/module-types/src/dashboard-rpc/send-as.d.ts +41 -0
  153. package/dist/module-types/src/dashboard-rpc/skills.d.ts +2 -1
  154. package/dist/module-types/src/project-address.d.ts +8 -1
  155. package/dist/module-types/src/project-hooks.d.ts +12 -2
  156. package/dist/module-types/src/project-modules.d.ts +6 -0
  157. package/dist/module-types/src/project-skills/catalogue.d.ts +6 -9
  158. package/dist/module-types/src/registry.d.ts +13 -0
  159. package/dist/module-types/src/store/agent-store.d.ts +14 -0
  160. package/dist/module-types/src/store/branches.d.ts +7 -0
  161. package/dist/module-types/src/store/git-host.d.ts +1 -3
  162. package/dist/module-types/src/typed-repository.d.ts +16 -0
  163. package/dist/project-address.d.ts +8 -1
  164. package/dist/project-address.d.ts.map +1 -1
  165. package/dist/project-address.js +11 -4
  166. package/dist/project-address.js.map +1 -1
  167. package/dist/project-hooks.d.ts +12 -2
  168. package/dist/project-hooks.d.ts.map +1 -1
  169. package/dist/project-hooks.js +9 -2
  170. package/dist/project-hooks.js.map +1 -1
  171. package/dist/project-modules.d.ts +6 -0
  172. package/dist/project-modules.d.ts.map +1 -1
  173. package/dist/project-modules.js +13 -1
  174. package/dist/project-modules.js.map +1 -1
  175. package/dist/project-skills/catalogue.d.ts +6 -9
  176. package/dist/project-skills/catalogue.d.ts.map +1 -1
  177. package/dist/project-skills/catalogue.js +9 -8
  178. package/dist/project-skills/catalogue.js.map +1 -1
  179. package/dist/registry.d.ts +13 -0
  180. package/dist/registry.d.ts.map +1 -1
  181. package/dist/registry.js +43 -2
  182. package/dist/registry.js.map +1 -1
  183. package/dist/sessions-home.d.ts +11 -0
  184. package/dist/sessions-home.d.ts.map +1 -0
  185. package/dist/sessions-home.js +41 -0
  186. package/dist/sessions-home.js.map +1 -0
  187. package/dist/store/agent-store.d.ts +14 -0
  188. package/dist/store/agent-store.d.ts.map +1 -1
  189. package/dist/store/agent-store.js.map +1 -1
  190. package/dist/store/branches.d.ts +7 -0
  191. package/dist/store/branches.d.ts.map +1 -1
  192. package/dist/store/branches.js +37 -2
  193. package/dist/store/branches.js.map +1 -1
  194. package/dist/store/git-host.d.ts +1 -3
  195. package/dist/store/git-host.d.ts.map +1 -1
  196. package/dist/store/git-host.js +0 -14
  197. package/dist/store/git-host.js.map +1 -1
  198. package/dist/typed-repository.d.ts +17 -0
  199. package/dist/typed-repository.d.ts.map +1 -0
  200. package/dist/typed-repository.js +29 -0
  201. package/dist/typed-repository.js.map +1 -0
  202. package/dist/website/assets/chunks/chunk-BPgR-CZq.js +1 -0
  203. package/dist/website/assets/chunks/{chunk-BIhVwAkA.js → chunk-D1NQcEen.js} +1 -1
  204. package/dist/website/assets/entries/{entry-client-routing.CzHJwWDQ.js → entry-client-routing.CvPemUV2.js} +2 -2
  205. package/dist/website/assets/entries/{pages_go-to-dashboard.CxnTPDW0.js → pages_go-to-dashboard.CUCqKDCh.js} +1 -1
  206. package/dist/website/assets/entries/{pages_index.Dcg_ZrR7.js → pages_index.DEALARsw.js} +1 -1
  207. package/dist/website/assets/entries/{pages_press.rRp1mRww.js → pages_press.nvOiFHiQ.js} +1 -1
  208. package/dist/website/assets/static/pages_index_styles-f7bc93a7.KSL83pUG.css +1 -0
  209. package/dist/website/banner/index.html +4 -4
  210. package/dist/website/go-to-dashboard/index.html +7 -7
  211. package/dist/website/index.html +7 -7
  212. package/dist/website/press/index.html +6 -6
  213. package/package.json +19 -19
  214. package/dist/dashboard-bundle/assets/host/module-BMyNrbiB.js +0 -1
  215. package/dist/dashboard-bundle/assets/main-BLY-EDtL.css +0 -2
  216. package/dist/dashboard-bundle/assets/main-DPdJVm4s.js +0 -152
  217. package/dist/dashboard-bundle/assets/module-DY3Aigsz.js +0 -19
  218. package/dist/website/assets/chunks/chunk-CSTMwN0A.js +0 -1
  219. package/dist/website/assets/static/pages_index_styles-f7bc93a7.DHC1qZXc.css +0 -1
  220. /package/dist/website/assets/entries/{pages_banner.6_j-HGsV.js → pages_banner.BaN84ozS.js} +0 -0
@@ -25,17 +25,17 @@
25
25
  "react/jsx-runtime": "/assets/host/react-jsx-runtime-Dxx08tyw.js",
26
26
  "react-dom": "/assets/host/react-dom-oeGwGKD7.js",
27
27
  "react-dom/client": "/assets/host/react-dom-client-owmMVl4T.js",
28
- "@openagt/dashboard/module": "/assets/host/module-BMyNrbiB.js"
28
+ "@openagt/dashboard/module": "/assets/host/module--PBDa8mk.js"
29
29
  }
30
30
  }</script>
31
- <script blocking="render" type="module" crossorigin src="/assets/main-DPdJVm4s.js"></script>
31
+ <script blocking="render" type="module" crossorigin src="/assets/main-5Ke2be9l.js"></script>
32
32
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-QTnfLwEv.js">
33
33
  <link rel="modulepreload" crossorigin href="/assets/react-CZI7_Jkm.js">
34
34
  <link rel="modulepreload" crossorigin href="/assets/react-dom-cJyBB_A4.js">
35
35
  <link rel="modulepreload" crossorigin href="/assets/client-CbBRB9m4.js">
36
36
  <link rel="modulepreload" crossorigin href="/assets/jsx-runtime-By8HlURe.js">
37
- <link rel="modulepreload" crossorigin href="/assets/module-DY3Aigsz.js">
38
- <link rel="stylesheet" crossorigin href="/assets/main-BLY-EDtL.css">
37
+ <link rel="modulepreload" crossorigin href="/assets/module-XkaUkYn0.js">
38
+ <link rel="stylesheet" crossorigin href="/assets/main-D9WdDo5V.css">
39
39
  </head>
40
40
  <body>
41
41
  <div id="root"></div>
@@ -0,0 +1,64 @@
1
+ import { type AgentAccounts, type AgentRecord } from '@openagt/agent-data';
2
+ import { type AccountResult } from './accounts.js';
3
+ import { type AgentLoginsOn } from '../dashboard/logins-sync.js';
4
+ export type { AgentAccounts, AgentRecord } from '@openagt/agent-data';
5
+ export type { AgentLoginsOn } from '../dashboard/logins-sync.js';
6
+ /** One skill an agent can be given. */
7
+ export interface AgentSkillChoice {
8
+ name: string;
9
+ /** The one line the skill's text says of itself. */
10
+ description: string;
11
+ }
12
+ export interface AgentsView {
13
+ /** Every agent, the default first. */
14
+ agents: AgentRecord[];
15
+ /** The skills to pick from, in groups: the default agent's first, then the catalogue's. */
16
+ skills: {
17
+ title: string;
18
+ skills: AgentSkillChoice[];
19
+ }[];
20
+ /** OpenAgent's GitHub accounts on this computer. */
21
+ github?: {
22
+ accounts: string[];
23
+ };
24
+ /** The Claude accounts of the Permissions page, by id and name. */
25
+ claude: {
26
+ id: string;
27
+ name: string;
28
+ }[];
29
+ /** The Codex accounts, the same way. */
30
+ codex: {
31
+ id: string;
32
+ name: string;
33
+ }[];
34
+ }
35
+ /** Every agent, and what one can be given. (`onAgents` names the runs' list already.) */
36
+ export declare function onAgentsList(): Promise<AgentsView>;
37
+ /** What the page sends to save an agent: a new one has no id yet. */
38
+ export interface AgentChange {
39
+ id?: string;
40
+ name: string;
41
+ skills: string[];
42
+ accounts: AgentAccounts;
43
+ /** Whether its sessions get the project's own skills. */
44
+ projectSkills: boolean;
45
+ }
46
+ /**
47
+ * Save an agent: a new one under the id its name gives, an existing one under its own. The name
48
+ * must give an id, every skill must be one this computer carries, and every account one it knows;
49
+ * else nothing is written and the reason is said.
50
+ */
51
+ export declare function sendSaveAgent(change: AgentChange): Promise<({
52
+ ok: true;
53
+ id: string;
54
+ } | {
55
+ ok: false;
56
+ error: string;
57
+ }) & Partial<AccountResult>>;
58
+ /** How the agents' GitHub accounts stand on each device of the person's. A server copies to no device: none. */
59
+ export declare function onAgentLogins(): Promise<AgentLoginsOn[]>;
60
+ /** Copy the agents' GitHub accounts to every device again, now: the press for one that failed. */
61
+ export declare function sendCopyAgentLogins(): Promise<AccountResult>;
62
+ /** Remove an agent; the default agent stays. */
63
+ export declare function sendRemoveAgent(id: string): Promise<AccountResult>;
64
+ //# sourceMappingURL=agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/agents.ts"],"names":[],"mappings":"AAGA,OAAO,EAA0H,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAElM,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAEnE,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE3F,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAYhE,uCAAuC;AACvC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,sCAAsC;IACtC,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,2FAA2F;IAC3F,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,EAAE,CAAA;KAAE,EAAE,CAAA;IACvD,oDAAoD;IACpD,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC/B,mEAAmE;IACnE,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACtC,wCAAwC;IACxC,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACtC;AAmCD,yFAAyF;AACzF,wBAAsB,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC,CAUxD;AAED,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,aAAa,CAAA;IACvB,yDAAyD;IACzD,aAAa,EAAE,OAAO,CAAA;CACvB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CA+BpJ;AAED,gHAAgH;AAChH,wBAAsB,aAAa,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAG9D;AAED,kGAAkG;AAClG,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,aAAa,CAAC,CAIlE;AAED,gDAAgD;AAChD,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CASxE"}
@@ -0,0 +1,137 @@
1
+ import { readFile, realpath } from 'node:fs/promises';
2
+ import { createRequire } from 'node:module';
3
+ import { dirname, join } from 'node:path';
4
+ import { agentIdOf, DEFAULT_AGENT, DEFAULT_AGENT_SKILLS, isAgentId, isAgentName, listAgents, readAgent, removeAgent, writeAgent } from '@openagt/agent-data';
5
+ import { carriedSkills, GROUPS } from '../project-skills/catalogue.js';
6
+ import { onAgentAccounts } from './accounts.js';
7
+ import { onGitHosts } from './logins.js';
8
+ import { agentLoginsOn, syncLogins } from '../dashboard/logins-sync.js';
9
+ // The Agents page (Rom's design): an agent is a name, a set of skills and a set of accounts, kept
10
+ // as one file each in the personal folder, so every computer that syncs it has the same agents.
11
+ // The page lists them, edits them in place, makes new ones and removes them; the default agent is
12
+ // edited like the others and never removed. What an agent can be given is what this computer
13
+ // knows: the skills the dashboard carries, OpenAgent's own GitHub accounts here, and the Claude
14
+ // and Codex accounts of the Permissions page.
15
+ /** The host the GitHub skill answers for, whose accounts an agent names. */
16
+ const GITHUB = 'github.com';
17
+ /** The group the default agent's skills are shown in. */
18
+ const DEFAULTS_GROUP = 'Every agent starts with';
19
+ let defaults;
20
+ /** The default skills' names and lines, read once from their packages. */
21
+ function defaultSkillChoices() {
22
+ return (defaults ??= (async () => {
23
+ const require = createRequire(import.meta.url);
24
+ const choices = [];
25
+ for (const name of DEFAULT_AGENT_SKILLS) {
26
+ try {
27
+ const dir = await realpath(dirname(require.resolve(`@openagt/skill-${name}/package.json`)));
28
+ const text = await readFile(join(dir, 'SKILL.md'), 'utf8');
29
+ const description = /^description:[ \t]*(.*)$/m.exec(text)?.[1]?.trim().replace(/^"(.*)"$/, '$1') ?? '';
30
+ choices.push({ name, description });
31
+ }
32
+ catch {
33
+ choices.push({ name, description: '' });
34
+ }
35
+ }
36
+ return choices;
37
+ })());
38
+ }
39
+ /** The skills an agent can be given, in groups. */
40
+ async function skillChoices() {
41
+ const carried = await carriedSkills();
42
+ return [
43
+ { title: DEFAULTS_GROUP, skills: await defaultSkillChoices() },
44
+ ...GROUPS.map(group => ({ title: group.title, skills: group.skills.flatMap(name => (carried.has(name) ? [{ name, description: carried.get(name).description }] : [])) })),
45
+ ];
46
+ }
47
+ /** Every agent, and what one can be given. (`onAgents` names the runs' list already.) */
48
+ export async function onAgentsList() {
49
+ const [agents, skills, hosts, claude, codex] = await Promise.all([listAgents(), skillChoices(), onGitHosts(), onAgentAccounts('claude'), onAgentAccounts('codex')]);
50
+ const provider = hosts.hosts.find(row => row.host === GITHUB)?.provider;
51
+ return {
52
+ agents,
53
+ skills,
54
+ ...(provider ? { github: { accounts: provider.accounts.filter(account => account.ok).map(account => account.login) } } : {}),
55
+ claude: claude.accounts.map(account => ({ id: account.id, name: account.name })),
56
+ codex: codex.accounts.map(account => ({ id: account.id, name: account.name })),
57
+ };
58
+ }
59
+ /**
60
+ * Save an agent: a new one under the id its name gives, an existing one under its own. The name
61
+ * must give an id, every skill must be one this computer carries, and every account one it knows;
62
+ * else nothing is written and the reason is said.
63
+ */
64
+ export async function sendSaveAgent(change) {
65
+ if (typeof change !== 'object' || change === null)
66
+ return { ok: false, error: 'That is no agent.' };
67
+ if (!isAgentName(change.name))
68
+ return { ok: false, error: 'An agent needs a name of a few words: letters and digits, at most 40 characters.' };
69
+ const name = change.name.trim();
70
+ const id = change.id === undefined ? agentIdOf(name) : change.id;
71
+ if (!isAgentId(id))
72
+ return { ok: false, error: 'That is no agent id.' };
73
+ if (change.id === undefined && (await readAgent(id)) !== undefined)
74
+ return { ok: false, error: `There is an agent ${name} already.` };
75
+ if (change.id !== undefined && change.id !== DEFAULT_AGENT && (await readAgent(change.id)) === undefined)
76
+ return { ok: false, error: 'That agent is gone: make it again.' };
77
+ if (id === DEFAULT_AGENT && name !== 'Default')
78
+ return { ok: false, error: 'The default agent keeps its name.' };
79
+ const known = new Set((await skillChoices()).flatMap(group => group.skills.map(skill => skill.name)));
80
+ const skills = Array.isArray(change.skills) ? change.skills : undefined;
81
+ if (!skills || skills.some(skill => typeof skill !== 'string' || !known.has(skill)))
82
+ return { ok: false, error: 'An agent is given skills from the list.' };
83
+ if (typeof change.projectSkills !== 'boolean')
84
+ return { ok: false, error: 'Whether an agent gets project skills is yes or no.' };
85
+ const view = await onAgentsList();
86
+ const given = typeof change.accounts === 'object' && change.accounts !== null ? change.accounts : {};
87
+ const accounts = {};
88
+ if (given.github !== undefined) {
89
+ if (typeof given.github !== 'string' || !view.github?.accounts.includes(given.github))
90
+ return { ok: false, error: `OpenAgent has no GitHub account ${String(given.github)} on this computer.` };
91
+ accounts.github = given.github;
92
+ }
93
+ for (const kind of ['claude', 'codex']) {
94
+ const picked = given[kind];
95
+ if (picked === undefined)
96
+ continue;
97
+ if (!Array.isArray(picked) || picked.some(one => typeof one !== 'string' || !view[kind].some(account => account.id === one)))
98
+ return { ok: false, error: `That ${kind === 'claude' ? 'Claude' : 'Codex'} account is not on this computer.` };
99
+ if (picked.length > 0)
100
+ accounts[kind] = picked;
101
+ }
102
+ const written = await writeAgent({ id, name, skills: [...new Set(skills)], accounts, projectSkills: change.projectSkills });
103
+ if (!written.ok && !written.committed)
104
+ return { ok: false, error: written.error };
105
+ // Its GitHub account goes to every device of the person's now, not a minute from now; the page follows it.
106
+ if (accounts.github !== undefined && process.env['OPENAGENT_SERVER'] !== '1')
107
+ void syncLogins().catch(() => []);
108
+ return { ok: true, id };
109
+ }
110
+ /** How the agents' GitHub accounts stand on each device of the person's. A server copies to no device: none. */
111
+ export async function onAgentLogins() {
112
+ if (process.env['OPENAGENT_SERVER'] === '1')
113
+ return [];
114
+ return agentLoginsOn();
115
+ }
116
+ /** Copy the agents' GitHub accounts to every device again, now: the press for one that failed. */
117
+ export async function sendCopyAgentLogins() {
118
+ if (process.env['OPENAGENT_SERVER'] === '1')
119
+ return { ok: false, error: 'A server copies logins to no device.' };
120
+ await syncLogins();
121
+ return { ok: true };
122
+ }
123
+ /** Remove an agent; the default agent stays. */
124
+ export async function sendRemoveAgent(id) {
125
+ if (!isAgentId(id))
126
+ return { ok: false, error: 'That is no agent id.' };
127
+ if (id === DEFAULT_AGENT)
128
+ return { ok: false, error: 'The default agent stays.' };
129
+ try {
130
+ const removed = await removeAgent(id);
131
+ return removed.ok || removed.committed ? { ok: true } : { ok: false, error: removed.error };
132
+ }
133
+ catch (err) {
134
+ return { ok: false, error: err instanceof Error ? err.message : String(err) };
135
+ }
136
+ }
137
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/dashboard-rpc/agents.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export type CopiedView = {
23
23
  ok: false;
24
24
  error: string;
25
25
  };
26
- /** What the server keeps from the person's computers, without how full each is: what a computer compares its own with. */
26
+ /** What this device keeps from the person's computers, without how full each is: what a computer compares its own with. A device that is no server keeps git hosts' accounts alone. */
27
27
  export declare function onCopiedLogins(): Promise<CopiedView>;
28
28
  /**
29
29
  * Take a login a computer of the person's handed over: it goes where its tool reads it, in place
@@ -1 +1 @@
1
- {"version":3,"file":"copied-logins.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/copied-logins.ts"],"names":[],"mappings":"AAMA,OAAO,EAA4D,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAC9K,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAUlE,iDAAiD;AACjD,eAAO,MAAM,YAAY,EAAE;IACzB,wEAAwE;IACxE,MAAM,EAAE,MAAM,OAAO,CAAA;IACrB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,MAAM,CAAA;IACtB,uFAAuF;IACvF,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAKjI,CAAA;AAED,gEAAgE;AAChE,MAAM,MAAM,UAAU,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAM1G,0HAA0H;AAC1H,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAG1D;AAsDD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAqC/F;AAYD,wHAAwH;AACxH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAQxH;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAOtH;AAED,8IAA8I;AAC9I,wBAAsB,eAAe,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAcjK"}
1
+ {"version":3,"file":"copied-logins.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/copied-logins.ts"],"names":[],"mappings":"AAMA,OAAO,EAA4D,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAC9K,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAYlE,iDAAiD;AACjD,eAAO,MAAM,YAAY,EAAE;IACzB,wEAAwE;IACxE,MAAM,EAAE,MAAM,OAAO,CAAA;IACrB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,MAAM,CAAA;IACtB,uFAAuF;IACvF,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAKjI,CAAA;AAED,gEAAgE;AAChE,MAAM,MAAM,UAAU,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAM1G,uLAAuL;AACvL,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAE1D;AAsDD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAqC/F;AAYD,wHAAwH;AACxH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAQxH;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAOtH;AAED,8IAA8I;AAC9I,wBAAsB,eAAe,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAcjK"}
@@ -9,7 +9,9 @@ import { gitHostPackages } from './logins.js';
9
9
  import { addAccount, changeAccounts, readAccounts, removeAccount } from '@openagt/skill-account-rotation';
10
10
  // What a server answers the person's own computers about their logins here (the logins, and what
11
11
  // is kept of them: `dashboard/copied-logins.ts`): what it keeps, a login handed over, one taken
12
- // off or kept, how full each is. Only a server's OpenAgent takes logins.
12
+ // off or kept, how full each is. Only a server's OpenAgent takes a coding agent's login; a git
13
+ // host's account that an agent names (Rom's design: an agent is skills and accounts, the same
14
+ // on every device) is taken on any device of the person's, a laptop too.
13
15
  //
14
16
  // Taking one off deletes it here and ends nothing: the computer goes on logged in.
15
17
  /** What the RPCs reach for, swapped in tests. */
@@ -21,10 +23,8 @@ export const copiedWiring = {
21
23
  function refused() {
22
24
  return { ok: false, error: 'This OpenAgent takes no logins from another computer: it is no server.' };
23
25
  }
24
- /** What the server keeps from the person's computers, without how full each is: what a computer compares its own with. */
26
+ /** What this device keeps from the person's computers, without how full each is: what a computer compares its own with. A device that is no server keeps git hosts' accounts alone. */
25
27
  export async function onCopiedLogins() {
26
- if (!copiedWiring.server())
27
- return refused();
28
28
  return { ok: true, logins: readCopied().map(({ usage: _usage, ...rest }) => rest) };
29
29
  }
30
30
  /** A name for the row that no other account here has: the computer's name beside it when one has it already. */
@@ -85,9 +85,9 @@ async function codexFolder(auth) {
85
85
  * Claude login, a Codex sign-in as Codex keeps it, a git host's token.
86
86
  */
87
87
  export async function sendCopiedLogin(given, secret) {
88
- if (!copiedWiring.server())
89
- return refused();
90
88
  const { kind, host, source, name, who, from } = (given ?? {});
89
+ if (kind !== 'git' && !copiedWiring.server())
90
+ return refused();
91
91
  if (!isKind(kind) || !isWord(source) || !isWord(name) || !isWord(who) || !isServerName(from) || (kind === 'git' && !isWord(host)) || typeof secret !== 'string' || !secret.trim() || secret.length > 64 * 1024) {
92
92
  return { ok: false, error: 'That is no login.' };
93
93
  }
@@ -140,7 +140,7 @@ function claudeAccountId(who) {
140
140
  }
141
141
  /** Take a login a computer handed over off this server: it is deleted here, and goes on working wherever else it is. */
142
142
  export async function sendForgetCopiedLogin(which) {
143
- if (!copiedWiring.server())
143
+ if (which?.kind !== 'git' && !copiedWiring.server())
144
144
  return refused();
145
145
  const login = readCopied().find(other => isKind(which?.kind) && same(other, which));
146
146
  if (!login)
@@ -1 +1 @@
1
- {"version":3,"file":"copied-logins.js","sourceRoot":"","sources":["../../src/dashboard-rpc/copied-logins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copied-logins.js","sourceRoot":"","sources":["../../src/dashboard-rpc/copied-logins.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /** A repository at a git host, not looked for on this computer. */
2
+ export interface HostedRepo {
3
+ /** `<host>/<owner>/<name>`: what a clone is asked for. */
4
+ address: string;
5
+ url: string;
6
+ private: boolean;
7
+ description?: string;
8
+ /** Why it is listed: the account it is one of, or the owner the person named. */
9
+ from: string;
10
+ }
11
+ /** How old the kept lists may be before a read asks the hosts again, behind the answer. */
12
+ export declare const HOSTED_MAX_AGE_MS: number;
13
+ /** How long a first read waits for the hosts before it answers with nothing yet. */
14
+ export declare const HOSTED_FIRST_WAIT_MS = 1500;
15
+ /** What a read answers: the lists as kept, and whether the hosts are being asked now. */
16
+ export interface HostedRead {
17
+ repos: HostedRepo[];
18
+ loading: boolean;
19
+ }
20
+ /** What a listing is asked through: the host's package, and OpenAgent's accounts and the person's owners. */
21
+ export declare const hostedWiring: {
22
+ run: (host: string, args: string[]) => Promise<{
23
+ ok: true;
24
+ output: unknown;
25
+ } | {
26
+ ok: false;
27
+ error: string;
28
+ }>;
29
+ hosts: () => Promise<import("./send-as.js").SendAsHost[]>;
30
+ owners: () => Promise<string[]>;
31
+ now: () => number;
32
+ };
33
+ /**
34
+ * The hosts' repositories as kept. The first read waits {@link HOSTED_FIRST_WAIT_MS} at most, and
35
+ * then says they are still being read; a read of old lists answers them and asks again behind.
36
+ */
37
+ export declare function readHosted(): Promise<HostedRead>;
38
+ /** Ask the hosts again now, and answer what they listed: after the person named another owner. */
39
+ export declare function refreshHosted(): Promise<HostedRepo[]>;
40
+ /** Forget the kept lists: for a test. */
41
+ export declare function forgetHosted(): void;
42
+ //# sourceMappingURL=hosted-repos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-repos.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/hosted-repos.ts"],"names":[],"mappings":"AAUA,mEAAmE;AACnE,MAAM,WAAW,UAAU;IACzB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAA;CACb;AAED,2FAA2F;AAC3F,eAAO,MAAM,iBAAiB,QAAc,CAAA;AAE5C,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAExC,yFAAyF;AACzF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,6GAA6G;AAC7G,eAAO,MAAM,YAAY;IACvB,GAAG,SAAS,MAAM,QAAQ,MAAM,EAAE;;;;;;;IAClC,KAAK;IACL,MAAM;IACN,GAAG;CACJ,CAAA;AAwCD;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,CAQtD;AAED,kGAAkG;AAClG,wBAAgB,aAAa,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAErD;AAED,yCAAyC;AACzC,wBAAgB,YAAY,IAAI,IAAI,CAGnC"}
@@ -0,0 +1,74 @@
1
+ import { readRepoOwners } from '@openagt/agent-data';
2
+ import { gitHostPackages } from './logins.js';
3
+ import { accountsByHost } from './send-as.js';
4
+ /** How old the kept lists may be before a read asks the hosts again, behind the answer. */
5
+ export const HOSTED_MAX_AGE_MS = 10 * 60_000;
6
+ /** How long a first read waits for the hosts before it answers with nothing yet. */
7
+ export const HOSTED_FIRST_WAIT_MS = 1500;
8
+ /** What a listing is asked through: the host's package, and OpenAgent's accounts and the person's owners. */
9
+ export const hostedWiring = {
10
+ run: (host, args) => gitHostPackages.run(host, args),
11
+ hosts: () => accountsByHost(),
12
+ owners: () => readRepoOwners(),
13
+ now: () => Date.now(),
14
+ };
15
+ /** Every repository the hosts list now: each account's own, then each named owner's; one address listed once. */
16
+ async function listHosted() {
17
+ const [hosts, owners] = await Promise.all([hostedWiring.hosts(), hostedWiring.owners().catch(() => [])]);
18
+ const asks = [];
19
+ for (const row of hosts) {
20
+ for (const login of row.logins)
21
+ asks.push({ host: row.host, args: ['repos', '--user', login], from: `@${login}` });
22
+ for (const owner of owners) {
23
+ const [host, name] = owner.split('/');
24
+ if (host === row.host)
25
+ asks.push({ host, args: ['repos', '--owner', name], from: name });
26
+ }
27
+ }
28
+ const lists = await Promise.all(asks.map(async (ask) => ({ ask, said: await hostedWiring.run(ask.host, ask.args).catch(() => undefined) })));
29
+ const repos = new Map();
30
+ for (const { ask, said } of lists) {
31
+ if (!said?.ok)
32
+ continue;
33
+ const listed = (said.output ?? {}).repos;
34
+ for (const row of Array.isArray(listed) ? listed : []) {
35
+ const { address, url, private: hidden, description } = (row ?? {});
36
+ if (typeof address !== 'string' || typeof url !== 'string' || repos.has(address.toLowerCase()))
37
+ continue;
38
+ repos.set(address.toLowerCase(), { address, url, private: hidden === true, ...(typeof description === 'string' && description ? { description } : {}), from: ask.from });
39
+ }
40
+ }
41
+ return [...repos.values()];
42
+ }
43
+ let kept;
44
+ let running;
45
+ function listOnce() {
46
+ running ??= listHosted()
47
+ .then(repos => ((kept = { repos, at: hostedWiring.now() }), repos), () => kept?.repos ?? [])
48
+ .finally(() => (running = undefined));
49
+ return running;
50
+ }
51
+ /**
52
+ * The hosts' repositories as kept. The first read waits {@link HOSTED_FIRST_WAIT_MS} at most, and
53
+ * then says they are still being read; a read of old lists answers them and asks again behind.
54
+ */
55
+ export async function readHosted() {
56
+ if (!kept) {
57
+ const listing = listOnce();
58
+ const first = await Promise.race([listing, new Promise(done => setTimeout(() => done(undefined), HOSTED_FIRST_WAIT_MS))]);
59
+ return first ? { repos: first, loading: false } : { repos: [], loading: true };
60
+ }
61
+ if (hostedWiring.now() - kept.at > HOSTED_MAX_AGE_MS)
62
+ void listOnce();
63
+ return { repos: kept.repos, loading: running !== undefined };
64
+ }
65
+ /** Ask the hosts again now, and answer what they listed: after the person named another owner. */
66
+ export function refreshHosted() {
67
+ return (running ?? Promise.resolve()).then(listOnce);
68
+ }
69
+ /** Forget the kept lists: for a test. */
70
+ export function forgetHosted() {
71
+ kept = undefined;
72
+ running = undefined;
73
+ }
74
+ //# sourceMappingURL=hosted-repos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-repos.js","sourceRoot":"","sources":["../../src/dashboard-rpc/hosted-repos.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  export { onAgents, onStartedName, onModuleAgents, onAgent, onAgentsDoing, onDocs, onQueue, onOverview, onRecentAgents, onInterventions, onActivity, onDashboard, onGitHostHome, onRepositoryOffer, onGitStatus, onProjectFiles, onRetainedWorktrees, onAgentWorktree, onAgentMainBranch, onAgentHandoff, onBridgeQuestion, onBridgeStatus, onBridgeToken, onBridgeEvents, onBridgeAnswer, onBridgeBrowser } from './reads.js';
2
2
  export { sendStop, sendChoice, sendBridgeAnswer, sendBridgeAnswerCancel, sendBridgeBrowser, sendMessage, sendStart, sendOpenInApp, sendRemoveWorktree, sendDeleteAgent, sendOpenPullRequest, sendPush, sendMergeBranch, sendMerge, sendCreateRepository } from './control.js';
3
3
  export { streamAgentEvents, type LiveFeedEvent, type PartialMessage, type StreamSync } from './events.js';
4
- export { onProjects, sendAddProject, sendStartedAgain, onCloneTarget, sendAddProjectFromAddress, sendRemoveProject, sendShareRecords, sendPickProjectDirectory, onOnboarding, onCommands, onStartBranches, onStartCheck, onCloneCheck, type ProjectLauncher } from './projects.js';
4
+ export { onProjects, sendAddProject, sendStartedAgain, onCloneTarget, sendAddProjectFromAddress, sendRemoveProject, sendShareRecords, sendPickProjectDirectory, onRepos, sendAddRepoFolder, onOnboarding, onCommands, onStartBranches, onStartCheck, onCloneCheck, type ProjectLauncher } from './projects.js';
5
5
  export { onPreferences, savePreferences, patchPreferences, onProjectPresets, saveProjectPresets, onEditors, type SavePreferencesResult, type PatchPreferencesResult, } from './preferences.js';
6
6
  export { type EditorInfo } from '../dashboard/open-in-app.js';
7
7
  export { onQuota } from './quota.js';
@@ -11,7 +11,8 @@ export { onModules, runModuleCommand, runComputerCommand, runComputerCommandOn,
11
11
  export { onProjectSkills, sendChangeSkills, sendProjectSkills, type ProjectSkills, type ProjectSkill, type ChangeSkillsResult } from './skills.js';
12
12
  export { onPerson, type Person } from './person.js';
13
13
  export { onGitHostPeople, type HostPerson } from './people.js';
14
- export { onGitHosts, sendUseGitHostAccount, sendForgetGitHostAccount, sendGitHostLogin, sendGitHostInstall, onAgentState, sendAgentFix, onProjectAccounts, sendProjectAccounts, type GitHostsView, type GitHostRow, type GitHostAccount, type GitHostProvider, type AgentState, type ProjectAccountsView, type ProjectAgentAccounts } from './logins.js';
14
+ export { onAgentsList, sendSaveAgent, sendRemoveAgent, onAgentLogins, sendCopyAgentLogins, type AgentsView, type AgentChange, type AgentSkillChoice, type AgentLoginsOn } from './agents.js';
15
+ export { onGitHosts, sendUseGitHostAccount, sendForgetGitHostAccount, sendGitHostLogin, sendGitHostInstall, onAgentState, sendAgentFix, type GitHostsView, type GitHostRow, type GitHostAccount, type GitHostProvider, type AgentState } from './logins.js';
15
16
  export { onPersonalFolder, sendSyncPersonalFolder, sendStopSyncingPersonalFolder, type PersonalFolderView } from './personal-folder.js';
16
17
  export { onProjectAgentData, type ProjectAgentData, type KeptData } from './project-agent-data.js';
17
18
  export { onServerLogins, sendUseLoginsOn, sendAllowLogins, sendSettleLogin, type ServerLoginsView, type ServerLogins, type LoginThere } from './server-logins.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC7Z,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAC7Q,OAAO,EAAE,iBAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AACzG,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAA;AAClR,OAAO,EACL,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,eAAe,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAClmB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACvL,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAClJ,OAAO,EAAE,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACxV,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACvI,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACjK,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAClJ,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAmBjM,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,oGAAoG;AACpG,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAA;AAEtD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAOnD,CAAA;AAED,8FAA8F;AAC9F,eAAO,MAAM,gBAAgB,0BAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/index.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  export { onAgents, onStartedName, onModuleAgents, onAgent, onAgentsDoing, onDocs, onQueue, onOverview, onRecentAgents, onInterventions, onActivity, onDashboard, onGitHostHome, onRepositoryOffer, onGitStatus, onProjectFiles, onRetainedWorktrees, onAgentWorktree, onAgentMainBranch, onAgentHandoff, onBridgeQuestion, onBridgeStatus, onBridgeToken, onBridgeEvents, onBridgeAnswer, onBridgeBrowser } from './reads.js';
6
6
  export { sendStop, sendChoice, sendBridgeAnswer, sendBridgeAnswerCancel, sendBridgeBrowser, sendMessage, sendStart, sendOpenInApp, sendRemoveWorktree, sendDeleteAgent, sendOpenPullRequest, sendPush, sendMergeBranch, sendMerge, sendCreateRepository } from './control.js';
7
7
  export { streamAgentEvents } from './events.js';
8
- export { onProjects, sendAddProject, sendStartedAgain, onCloneTarget, sendAddProjectFromAddress, sendRemoveProject, sendShareRecords, sendPickProjectDirectory, onOnboarding, onCommands, onStartBranches, onStartCheck, onCloneCheck } from './projects.js';
8
+ export { onProjects, sendAddProject, sendStartedAgain, onCloneTarget, sendAddProjectFromAddress, sendRemoveProject, sendShareRecords, sendPickProjectDirectory, onRepos, sendAddRepoFolder, onOnboarding, onCommands, onStartBranches, onStartCheck, onCloneCheck } from './projects.js';
9
9
  export { onPreferences, savePreferences, patchPreferences, onProjectPresets, saveProjectPresets, onEditors, } from './preferences.js';
10
10
  export { onQuota } from './quota.js';
11
11
  export { onModels } from './models.js';
@@ -14,7 +14,8 @@ export { onModules, runModuleCommand, runComputerCommand, runComputerCommandOn,
14
14
  export { onProjectSkills, sendChangeSkills, sendProjectSkills } from './skills.js';
15
15
  export { onPerson } from './person.js';
16
16
  export { onGitHostPeople } from './people.js';
17
- export { onGitHosts, sendUseGitHostAccount, sendForgetGitHostAccount, sendGitHostLogin, sendGitHostInstall, onAgentState, sendAgentFix, onProjectAccounts, sendProjectAccounts } from './logins.js';
17
+ export { onAgentsList, sendSaveAgent, sendRemoveAgent, onAgentLogins, sendCopyAgentLogins } from './agents.js';
18
+ export { onGitHosts, sendUseGitHostAccount, sendForgetGitHostAccount, sendGitHostLogin, sendGitHostInstall, onAgentState, sendAgentFix } from './logins.js';
18
19
  export { onPersonalFolder, sendSyncPersonalFolder, sendStopSyncingPersonalFolder } from './personal-folder.js';
19
20
  export { onProjectAgentData } from './project-agent-data.js';
20
21
  export { onServerLogins, sendUseLoginsOn, sendAllowLogins, sendSettleLogin } from './server-logins.js';
@@ -37,6 +38,7 @@ import * as copiedLogins from './copied-logins.js';
37
38
  import * as serverLogins from './server-logins.js';
38
39
  import * as personalFolder from './personal-folder.js';
39
40
  import * as projectAgentData from './project-agent-data.js';
41
+ import * as agents from './agents.js';
40
42
  import { streamAgentEvents } from './events.js';
41
43
  /**
42
44
  * Every RPC the mount will answer, by name.
@@ -50,7 +52,7 @@ import { streamAgentEvents } from './events.js';
50
52
  * `Object` and answered 200 with whatever it was handed, and `__proto__` / `toString` / `valueOf`
51
53
  * were reachable too — 500s rather than the 404 a name that is not an RPC has to get.
52
54
  */
53
- export const RPC_HANDLERS = Object.assign(Object.create(null), Object.fromEntries([reads, control, projects, preferences, quota, models, machines, modules, skills, person, people, accounts, logins, copiedLogins, serverLogins, personalFolder, projectAgentData]
55
+ export const RPC_HANDLERS = Object.assign(Object.create(null), Object.fromEntries([reads, control, projects, preferences, quota, models, machines, modules, skills, person, people, accounts, logins, copiedLogins, serverLogins, personalFolder, projectAgentData, agents]
54
56
  .flatMap(module => Object.entries(module))
55
57
  .filter((entry) => typeof entry[1] === 'function')));
56
58
  /** The live event stream, which is a subscription rather than a call — see `rpc-serve.ts`. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dashboard-rpc/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dashboard-rpc/index.ts"],"names":[],"mappings":"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"}