agent-office 0.5.0 → 0.6.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 (189) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +259 -228
  3. package/dist/commands/cron-requests.d.ts +7 -0
  4. package/dist/commands/cron-requests.d.ts.map +1 -0
  5. package/dist/commands/cron-requests.js +31 -0
  6. package/dist/commands/cron-requests.js.map +1 -0
  7. package/dist/commands/crons.d.ts +10 -0
  8. package/dist/commands/crons.d.ts.map +1 -0
  9. package/dist/commands/crons.js +45 -0
  10. package/dist/commands/crons.js.map +1 -0
  11. package/dist/commands/hello.d.ts +5 -0
  12. package/dist/commands/hello.d.ts.map +1 -0
  13. package/dist/commands/hello.js +4 -0
  14. package/dist/commands/hello.js.map +1 -0
  15. package/dist/commands/messages.d.ts +5 -0
  16. package/dist/commands/messages.d.ts.map +1 -0
  17. package/dist/commands/messages.js +18 -0
  18. package/dist/commands/messages.js.map +1 -0
  19. package/dist/commands/sessions.d.ts +13 -0
  20. package/dist/commands/sessions.d.ts.map +1 -0
  21. package/dist/commands/sessions.js +58 -0
  22. package/dist/commands/sessions.js.map +1 -0
  23. package/dist/commands/task-columns.d.ts +2 -0
  24. package/dist/commands/task-columns.d.ts.map +1 -0
  25. package/dist/commands/task-columns.js +13 -0
  26. package/dist/commands/task-columns.js.map +1 -0
  27. package/dist/commands/tasks.d.ts +11 -0
  28. package/dist/commands/tasks.d.ts.map +1 -0
  29. package/dist/commands/tasks.js +75 -0
  30. package/dist/commands/tasks.js.map +1 -0
  31. package/dist/config.test.d.ts +2 -0
  32. package/dist/config.test.d.ts.map +1 -0
  33. package/dist/config.test.js +50 -0
  34. package/dist/config.test.js.map +1 -0
  35. package/dist/db/index.d.ts +6 -70
  36. package/dist/db/index.d.ts.map +1 -0
  37. package/dist/db/index.js +4 -11
  38. package/dist/db/index.js.map +1 -0
  39. package/dist/db/mock-storage.d.ts +79 -0
  40. package/dist/db/mock-storage.d.ts.map +1 -0
  41. package/dist/db/mock-storage.js +381 -0
  42. package/dist/db/mock-storage.js.map +1 -0
  43. package/dist/db/mock-storage.test.d.ts +2 -0
  44. package/dist/db/mock-storage.test.d.ts.map +1 -0
  45. package/dist/db/mock-storage.test.js +234 -0
  46. package/dist/db/mock-storage.test.js.map +1 -0
  47. package/dist/db/postgresql-storage.d.ts +10 -8
  48. package/dist/db/postgresql-storage.d.ts.map +1 -0
  49. package/dist/db/postgresql-storage.js +76 -42
  50. package/dist/db/postgresql-storage.js.map +1 -0
  51. package/dist/db/sqlite-storage.d.ts +9 -8
  52. package/dist/db/sqlite-storage.d.ts.map +1 -0
  53. package/dist/db/sqlite-storage.js +75 -41
  54. package/dist/db/sqlite-storage.js.map +1 -0
  55. package/dist/db/storage-base.d.ts +7 -8
  56. package/dist/db/storage-base.d.ts.map +1 -0
  57. package/dist/db/storage-base.js +3 -2
  58. package/dist/db/storage-base.js.map +1 -0
  59. package/dist/db/storage.d.ts +12 -12
  60. package/dist/db/storage.d.ts.map +1 -0
  61. package/dist/db/storage.js +1 -0
  62. package/dist/db/storage.js.map +1 -0
  63. package/dist/db/types.d.ts +67 -0
  64. package/dist/db/types.d.ts.map +1 -0
  65. package/dist/db/types.js +2 -0
  66. package/dist/db/types.js.map +1 -0
  67. package/dist/index.d.ts +2 -0
  68. package/dist/index.d.ts.map +1 -0
  69. package/dist/index.js +397 -0
  70. package/dist/index.js.map +1 -0
  71. package/dist/index.test.d.ts +2 -0
  72. package/dist/index.test.d.ts.map +1 -0
  73. package/dist/index.test.js +49 -0
  74. package/dist/index.test.js.map +1 -0
  75. package/dist/lib/output.d.ts +2 -0
  76. package/dist/lib/output.d.ts.map +1 -0
  77. package/dist/lib/output.js +8 -0
  78. package/dist/lib/output.js.map +1 -0
  79. package/dist/services/cron-service.constraints.test.d.ts +2 -0
  80. package/dist/services/cron-service.constraints.test.d.ts.map +1 -0
  81. package/dist/services/cron-service.constraints.test.js +90 -0
  82. package/dist/services/cron-service.constraints.test.js.map +1 -0
  83. package/dist/services/cron-service.d.ts +45 -0
  84. package/dist/services/cron-service.d.ts.map +1 -0
  85. package/dist/services/cron-service.js +157 -0
  86. package/dist/services/cron-service.js.map +1 -0
  87. package/dist/services/cron-service.test.d.ts +2 -0
  88. package/dist/services/cron-service.test.d.ts.map +1 -0
  89. package/dist/services/cron-service.test.js +280 -0
  90. package/dist/services/cron-service.test.js.map +1 -0
  91. package/dist/services/index.d.ts +5 -0
  92. package/dist/services/index.d.ts.map +1 -0
  93. package/dist/services/index.js +5 -0
  94. package/dist/services/index.js.map +1 -0
  95. package/dist/services/message-service.d.ts +16 -0
  96. package/dist/services/message-service.d.ts.map +1 -0
  97. package/dist/services/message-service.js +39 -0
  98. package/dist/services/message-service.js.map +1 -0
  99. package/dist/services/message-service.test.d.ts +2 -0
  100. package/dist/services/message-service.test.d.ts.map +1 -0
  101. package/dist/services/message-service.test.js +145 -0
  102. package/dist/services/message-service.test.js.map +1 -0
  103. package/dist/services/session-service.constraints.test.d.ts +2 -0
  104. package/dist/services/session-service.constraints.test.d.ts.map +1 -0
  105. package/dist/services/session-service.constraints.test.js +34 -0
  106. package/dist/services/session-service.constraints.test.js.map +1 -0
  107. package/dist/services/session-service.d.ts +27 -0
  108. package/dist/services/session-service.d.ts.map +1 -0
  109. package/dist/services/session-service.js +55 -0
  110. package/dist/services/session-service.js.map +1 -0
  111. package/dist/services/session-service.test.d.ts +2 -0
  112. package/dist/services/session-service.test.d.ts.map +1 -0
  113. package/dist/services/session-service.test.js +87 -0
  114. package/dist/services/session-service.test.js.map +1 -0
  115. package/dist/services/task-service.d.ts +25 -0
  116. package/dist/services/task-service.d.ts.map +1 -0
  117. package/dist/services/task-service.js +87 -0
  118. package/dist/services/task-service.js.map +1 -0
  119. package/dist/services/task-service.test.d.ts +2 -0
  120. package/dist/services/task-service.test.d.ts.map +1 -0
  121. package/dist/services/task-service.test.js +180 -0
  122. package/dist/services/task-service.test.js.map +1 -0
  123. package/package.json +41 -42
  124. package/dist/cli.d.ts +0 -2
  125. package/dist/cli.js +0 -317
  126. package/dist/commands/communicator.d.ts +0 -9
  127. package/dist/commands/communicator.js +0 -2232
  128. package/dist/commands/manage.d.ts +0 -5
  129. package/dist/commands/manage.js +0 -20
  130. package/dist/commands/notifier.d.ts +0 -11
  131. package/dist/commands/notifier.js +0 -100
  132. package/dist/commands/screensaver.d.ts +0 -8
  133. package/dist/commands/screensaver.js +0 -1280
  134. package/dist/commands/serve.d.ts +0 -13
  135. package/dist/commands/serve.js +0 -95
  136. package/dist/commands/task-board.d.ts +0 -29
  137. package/dist/commands/task-board.js +0 -251
  138. package/dist/commands/worker.d.ts +0 -16
  139. package/dist/commands/worker.js +0 -145
  140. package/dist/db/migrate.d.ts +0 -2
  141. package/dist/db/migrate.js +0 -3
  142. package/dist/lib/agentic-coding-server.d.ts +0 -66
  143. package/dist/lib/agentic-coding-server.js +0 -7
  144. package/dist/lib/notifier.d.ts +0 -18
  145. package/dist/lib/notifier.js +0 -15
  146. package/dist/lib/opencode-coding-server.d.ts +0 -11
  147. package/dist/lib/opencode-coding-server.js +0 -66
  148. package/dist/lib/pi-coding-server.d.ts +0 -20
  149. package/dist/lib/pi-coding-server.js +0 -162
  150. package/dist/manage/app.d.ts +0 -6
  151. package/dist/manage/app.js +0 -128
  152. package/dist/manage/components/AgentCode.d.ts +0 -8
  153. package/dist/manage/components/AgentCode.js +0 -73
  154. package/dist/manage/components/CreateSession.d.ts +0 -8
  155. package/dist/manage/components/CreateSession.js +0 -37
  156. package/dist/manage/components/CronList.d.ts +0 -9
  157. package/dist/manage/components/CronList.js +0 -321
  158. package/dist/manage/components/CronRequests.d.ts +0 -8
  159. package/dist/manage/components/CronRequests.js +0 -181
  160. package/dist/manage/components/DeleteSession.d.ts +0 -7
  161. package/dist/manage/components/DeleteSession.js +0 -55
  162. package/dist/manage/components/InjectText.d.ts +0 -8
  163. package/dist/manage/components/InjectText.js +0 -51
  164. package/dist/manage/components/ItemSelector.d.ts +0 -7
  165. package/dist/manage/components/ItemSelector.js +0 -20
  166. package/dist/manage/components/MenuSelect.d.ts +0 -13
  167. package/dist/manage/components/MenuSelect.js +0 -22
  168. package/dist/manage/components/MyMail.d.ts +0 -9
  169. package/dist/manage/components/MyMail.js +0 -143
  170. package/dist/manage/components/Profile.d.ts +0 -8
  171. package/dist/manage/components/Profile.js +0 -60
  172. package/dist/manage/components/ReadMail.d.ts +0 -8
  173. package/dist/manage/components/ReadMail.js +0 -110
  174. package/dist/manage/components/SendMessage.d.ts +0 -9
  175. package/dist/manage/components/SendMessage.js +0 -79
  176. package/dist/manage/components/SessionList.d.ts +0 -9
  177. package/dist/manage/components/SessionList.js +0 -608
  178. package/dist/manage/components/SessionSidebar.d.ts +0 -6
  179. package/dist/manage/components/SessionSidebar.js +0 -24
  180. package/dist/manage/components/TailMessages.d.ts +0 -8
  181. package/dist/manage/components/TailMessages.js +0 -126
  182. package/dist/manage/hooks/useApi.d.ts +0 -147
  183. package/dist/manage/hooks/useApi.js +0 -181
  184. package/dist/server/cron.d.ts +0 -25
  185. package/dist/server/cron.js +0 -107
  186. package/dist/server/index.d.ts +0 -4
  187. package/dist/server/index.js +0 -22
  188. package/dist/server/routes.d.ts +0 -13
  189. package/dist/server/routes.js +0 -1396
@@ -0,0 +1,31 @@
1
+ import { CronService } from '../services/index.js';
2
+ import { formatOutput } from '../lib/output.js';
3
+ export async function listCronRequests(storage, useJson) {
4
+ const service = new CronService(storage);
5
+ const requests = await service.listCronRequests();
6
+ console.log(formatOutput(requests, useJson));
7
+ }
8
+ export async function getCronRequest(storage, id, useJson) {
9
+ const service = new CronService(storage);
10
+ const request = await service.getCronRequestById(id);
11
+ if (!request) {
12
+ throw new Error(`Cron request ${id} not found`);
13
+ }
14
+ console.log(formatOutput(request, useJson));
15
+ }
16
+ export async function approveCronRequest(storage, id, reviewedBy, reviewerNotes, useJson) {
17
+ const service = new CronService(storage);
18
+ const request = await service.approveCronRequest(id, reviewedBy, reviewerNotes);
19
+ console.log(formatOutput(request, useJson));
20
+ }
21
+ export async function rejectCronRequest(storage, id, reviewedBy, reviewerNotes, useJson) {
22
+ const service = new CronService(storage);
23
+ const request = await service.rejectCronRequest(id, reviewedBy, reviewerNotes);
24
+ console.log(formatOutput(request, useJson));
25
+ }
26
+ export async function deleteCronRequest(storage, id, useJson) {
27
+ const service = new CronService(storage);
28
+ await service.deleteCronRequest(id);
29
+ console.log(formatOutput({ success: true, deleted: id }, useJson));
30
+ }
31
+ //# sourceMappingURL=cron-requests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron-requests.js","sourceRoot":"","sources":["../../src/commands/cron-requests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAA2B,EAAE,OAAgB;IAClF,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAA;IACjD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA2B,EAAE,EAAU,EAAE,OAAgB;IAC5F,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;IACpD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAA2B,EAC3B,EAAU,EACV,UAAkB,EAClB,aAAiC,EACjC,OAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;IAC/E,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA2B,EAC3B,EAAU,EACV,UAAkB,EAClB,aAAiC,EACjC,OAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAA;IAC9E,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA2B,EAAE,EAAU,EAAE,OAAgB;IAC/F,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;AACpE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { AgentOfficeStorage } from '../db/index.js';
2
+ export declare function listCrons(storage: AgentOfficeStorage, useJson: boolean): Promise<void>;
3
+ export declare function deleteCron(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
4
+ export declare function enableCron(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
5
+ export declare function disableCron(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
6
+ export declare function cronHistory(storage: AgentOfficeStorage, id: number, limit: number, useJson: boolean): Promise<void>;
7
+ export declare function requestCron(storage: AgentOfficeStorage, name: string, coworkerName: string, schedule: string, message: string, timezone: string | undefined, useJson: boolean): Promise<void>;
8
+ export declare function createCron(storage: AgentOfficeStorage, name: string, coworkerName: string, schedule: string, message: string, timezone: string | undefined, useJson: boolean): Promise<void>;
9
+ export declare function checkCronJob(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
10
+ //# sourceMappingURL=crons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crons.d.ts","sourceRoot":"","sources":["../../src/commands/crons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAInD,wBAAsB,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5F;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAIzG;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzG;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1G;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,EAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAI3G"}
@@ -0,0 +1,45 @@
1
+ import { CronService } from '../services/index.js';
2
+ import { formatOutput } from '../lib/output.js';
3
+ export async function listCrons(storage, useJson) {
4
+ const service = new CronService(storage);
5
+ const crons = await service.listCronJobs();
6
+ console.log(formatOutput(crons, useJson));
7
+ }
8
+ export async function deleteCron(storage, id, useJson) {
9
+ const service = new CronService(storage);
10
+ await service.deleteCronJob(id);
11
+ console.log(formatOutput({ success: true, deleted: id }, useJson));
12
+ }
13
+ export async function enableCron(storage, id, useJson) {
14
+ const service = new CronService(storage);
15
+ await service.enableCronJob(id);
16
+ const job = await service.getCronJobById(id);
17
+ console.log(formatOutput(job, useJson));
18
+ }
19
+ export async function disableCron(storage, id, useJson) {
20
+ const service = new CronService(storage);
21
+ await service.disableCronJob(id);
22
+ const job = await service.getCronJobById(id);
23
+ console.log(formatOutput(job, useJson));
24
+ }
25
+ export async function cronHistory(storage, id, limit, useJson) {
26
+ const service = new CronService(storage);
27
+ const history = await service.getCronHistory(id, limit);
28
+ console.log(formatOutput(history, useJson));
29
+ }
30
+ export async function requestCron(storage, name, coworkerName, schedule, message, timezone, useJson) {
31
+ const service = new CronService(storage);
32
+ const request = await service.createCronRequest(name, coworkerName, schedule, timezone ?? null, message);
33
+ console.log(formatOutput(request, useJson));
34
+ }
35
+ export async function createCron(storage, name, coworkerName, schedule, message, timezone, useJson) {
36
+ const service = new CronService(storage);
37
+ const job = await service.createCronJob(name, coworkerName, schedule, timezone ?? null, message);
38
+ console.log(formatOutput(job, useJson));
39
+ }
40
+ export async function checkCronJob(storage, id, useJson) {
41
+ const service = new CronService(storage);
42
+ const shouldRun = await service.checkCronJob(id);
43
+ console.log(formatOutput({ shouldRun }, useJson));
44
+ }
45
+ //# sourceMappingURL=crons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crons.js","sourceRoot":"","sources":["../../src/commands/crons.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export interface HelloOptions {
2
+ name: string;
3
+ }
4
+ export declare function hello(options: HelloOptions): void;
5
+ //# sourceMappingURL=hello.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hello.d.ts","sourceRoot":"","sources":["../../src/commands/hello.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAEjD"}
@@ -0,0 +1,4 @@
1
+ export function hello(options) {
2
+ console.log(`Hello, ${options.name}!`);
3
+ }
4
+ //# sourceMappingURL=hello.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hello.js","sourceRoot":"","sources":["../../src/commands/hello.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,KAAK,CAAC,OAAqB;IACzC,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;AACzC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { AgentOfficeStorage } from '../db/index.js';
2
+ export declare function sendMessage(storage: AgentOfficeStorage, from: string, recipients: string[], body: string, useJson: boolean): Promise<void>;
3
+ export declare function checkUnreadMail(storage: AgentOfficeStorage, coworkerName: string, useJson: boolean): Promise<void>;
4
+ export declare function getUnreadMail(storage: AgentOfficeStorage, coworkerName: string, useJson: boolean): Promise<void>;
5
+ //# sourceMappingURL=messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/commands/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAInD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAAE,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,kBAAkB,EAC3B,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,kBAAkB,EAC3B,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf"}
@@ -0,0 +1,18 @@
1
+ import { MessageService } from '../services/index.js';
2
+ import { formatOutput } from '../lib/output.js';
3
+ export async function sendMessage(storage, from, recipients, body, useJson) {
4
+ const service = new MessageService(storage);
5
+ const messages = await service.sendMessage(from, recipients, body);
6
+ console.log(formatOutput(messages, useJson));
7
+ }
8
+ export async function checkUnreadMail(storage, coworkerName, useJson) {
9
+ const service = new MessageService(storage);
10
+ const hasUnread = await service.checkUnreadMail(coworkerName);
11
+ console.log(formatOutput({ hasUnread }, useJson));
12
+ }
13
+ export async function getUnreadMail(storage, coworkerName, useJson) {
14
+ const service = new MessageService(storage);
15
+ const messages = await service.getUnreadMail(coworkerName);
16
+ console.log(formatOutput(messages, useJson));
17
+ }
18
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/commands/messages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAA2B,EAC3B,IAAY,EACZ,UAAoB,EACpB,IAAY,EACZ,OAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;IAClE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAA2B,EAC3B,YAAoB,EACpB,OAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;IAC7D,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAA2B,EAC3B,YAAoB,EACpB,OAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAA;IAC1D,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AAC9C,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { AgentOfficeStorage } from '../db/index.js';
2
+ export declare function listCoworkers(storage: AgentOfficeStorage, useJson: boolean): Promise<void>;
3
+ export declare function getCoworkerInfo(storage: AgentOfficeStorage, name: string, useJson: boolean): Promise<void>;
4
+ export declare function updateCoworker(storage: AgentOfficeStorage, name: string, updates: {
5
+ agent?: string | null;
6
+ status?: string | null;
7
+ description?: string | null;
8
+ philosophy?: string | null;
9
+ visualDescription?: string | null;
10
+ }, useJson: boolean): Promise<void>;
11
+ export declare function createSession(storage: AgentOfficeStorage, name: string, sessionId: string, agent: string, useJson: boolean): Promise<void>;
12
+ export declare function deleteCoworker(storage: AgentOfficeStorage, name: string, useJson: boolean): Promise<void>;
13
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAInD,wBAAsB,aAAa,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAIhG;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAIhH;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACP,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAClC,EACD,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkC/G"}
@@ -0,0 +1,58 @@
1
+ import { SessionService } from '../services/index.js';
2
+ import { formatOutput } from '../lib/output.js';
3
+ export async function listCoworkers(storage, useJson) {
4
+ const service = new SessionService(storage);
5
+ const coworkers = await service.listCoworkers();
6
+ console.log(formatOutput(coworkers, useJson));
7
+ }
8
+ export async function getCoworkerInfo(storage, name, useJson) {
9
+ const service = new SessionService(storage);
10
+ const coworker = await service.getCoworkerInfo(name);
11
+ console.log(formatOutput(coworker, useJson));
12
+ }
13
+ export async function updateCoworker(storage, name, updates, useJson) {
14
+ const service = new SessionService(storage);
15
+ const session = await service.updateCoworker(name, {
16
+ ...(updates.agent !== undefined && updates.agent !== null ? { agent: updates.agent } : {}),
17
+ status: updates.status,
18
+ description: updates.description,
19
+ philosophy: updates.philosophy,
20
+ visual_description: updates.visualDescription,
21
+ });
22
+ console.log(formatOutput(session, useJson));
23
+ }
24
+ export async function createSession(storage, name, sessionId, agent, useJson) {
25
+ const service = new SessionService(storage);
26
+ const session = await service.createSession(name, sessionId, agent);
27
+ console.log(formatOutput(session, useJson));
28
+ }
29
+ export async function deleteCoworker(storage, name, useJson) {
30
+ const service = new SessionService(storage);
31
+ const session = await service.getSessionByName(name);
32
+ if (!session) {
33
+ throw new Error(`Coworker ${name} not found`);
34
+ }
35
+ await storage.begin(async (tx) => {
36
+ // Delete all messages to/from this coworker
37
+ await tx.deleteMessagesForCoworker(name);
38
+ // Delete all cron jobs for this coworker
39
+ const cronJobs = await tx.listCronJobsForSession(name);
40
+ for (const job of cronJobs) {
41
+ await tx.deleteCronJob(job.id);
42
+ }
43
+ // Delete all cron requests for this coworker
44
+ const cronRequests = await tx.listCronRequests({ sessionName: name });
45
+ for (const request of cronRequests) {
46
+ await tx.deleteCronRequest(request.id);
47
+ }
48
+ // Unassign all tasks assigned to this coworker
49
+ const tasks = await tx.searchTasks('', { assignee: name });
50
+ for (const task of tasks) {
51
+ await tx.updateTask(task.id, { assignee: null });
52
+ }
53
+ // Finally, delete the coworker session
54
+ await tx.deleteSession(session.id);
55
+ });
56
+ console.log(formatOutput({ success: true, message: `Coworker ${name} deleted` }, useJson));
57
+ }
58
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function listTaskColumns(useJson: boolean): Promise<void>;
2
+ //# sourceMappingURL=task-columns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-columns.d.ts","sourceRoot":"","sources":["../../src/commands/task-columns.ts"],"names":[],"mappings":"AAEA,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAUrE"}
@@ -0,0 +1,13 @@
1
+ import { formatOutput } from '../lib/output.js';
2
+ export async function listTaskColumns(useJson) {
3
+ const columns = [
4
+ { name: 'idea', description: 'New ideas and proposals' },
5
+ { name: 'approved idea', description: 'Ideas that have been approved' },
6
+ { name: 'working on', description: 'Tasks currently in progress' },
7
+ { name: 'blocked', description: 'Tasks that are blocked' },
8
+ { name: 'ready for review', description: 'Tasks ready for review' },
9
+ { name: 'done', description: 'Completed tasks' },
10
+ ];
11
+ console.log(formatOutput(columns, useJson));
12
+ }
13
+ //# sourceMappingURL=task-columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-columns.js","sourceRoot":"","sources":["../../src/commands/task-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAgB;IACpD,MAAM,OAAO,GAAG;QACd,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE;QACxD,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,+BAA+B,EAAE;QACvE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,6BAA6B,EAAE;QAClE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wBAAwB,EAAE;QAC1D,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,wBAAwB,EAAE;QACnE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE;KACjD,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAC7C,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { AgentOfficeStorage } from '../db/index.js';
2
+ export declare function addTask(storage: AgentOfficeStorage, title: string, description: string, assignee: string | null, column: string, dependencies: number[], useJson: boolean): Promise<void>;
3
+ export declare function listTasks(storage: AgentOfficeStorage, assignee: string | undefined, column: string | undefined, search: string | undefined, useJson: boolean): Promise<void>;
4
+ export declare function getTask(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
5
+ export declare function updateTask(storage: AgentOfficeStorage, id: number, title: string | undefined, description: string | undefined, assignee: string | undefined, column: string | undefined, dependencies: number[] | undefined, useJson: boolean): Promise<void>;
6
+ export declare function deleteTask(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
7
+ export declare function assignTask(storage: AgentOfficeStorage, id: number, assignee: string, useJson: boolean): Promise<void>;
8
+ export declare function unassignTask(storage: AgentOfficeStorage, id: number, useJson: boolean): Promise<void>;
9
+ export declare function moveTask(storage: AgentOfficeStorage, id: number, column: string, useJson: boolean): Promise<void>;
10
+ export declare function taskStats(storage: AgentOfficeStorage, useJson: boolean): Promise<void>;
11
+ //# sourceMappingURL=tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAInD,wBAAsB,OAAO,CAC3B,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAOtG;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,YAAY,EAAE,MAAM,EAAE,GAAG,SAAS,EAClC,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAWf;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAIzG;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAI3G;AAED,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,kBAAkB,EAC3B,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5F"}
@@ -0,0 +1,75 @@
1
+ import { TaskService } from '../services/index.js';
2
+ import { formatOutput } from '../lib/output.js';
3
+ export async function addTask(storage, title, description, assignee, column, dependencies, useJson) {
4
+ const service = new TaskService(storage);
5
+ const task = await service.createTask(title, description, assignee, column, dependencies);
6
+ console.log(formatOutput(task, useJson));
7
+ }
8
+ export async function listTasks(storage, assignee, column, search, useJson) {
9
+ const service = new TaskService(storage);
10
+ // If any filters are provided, use searchTasks with filters
11
+ if (assignee || column || (search && search.length > 0)) {
12
+ const filters = {};
13
+ if (assignee)
14
+ filters.assignee = assignee;
15
+ if (column)
16
+ filters.column = column;
17
+ const tasks = await service.searchTasks(search || '', filters);
18
+ console.log(formatOutput(tasks, useJson));
19
+ }
20
+ else {
21
+ // No filters, list all tasks
22
+ const tasks = await service.listTasks();
23
+ console.log(formatOutput(tasks, useJson));
24
+ }
25
+ }
26
+ export async function getTask(storage, id, useJson) {
27
+ const service = new TaskService(storage);
28
+ const task = await service.getTaskById(id);
29
+ if (!task) {
30
+ throw new Error(`Task ${id} not found`);
31
+ }
32
+ console.log(formatOutput(task, useJson));
33
+ }
34
+ export async function updateTask(storage, id, title, description, assignee, column, dependencies, useJson) {
35
+ const service = new TaskService(storage);
36
+ const updates = {};
37
+ if (title !== undefined)
38
+ updates.title = title;
39
+ if (description !== undefined)
40
+ updates.description = description;
41
+ if (assignee !== undefined)
42
+ updates.assignee = assignee;
43
+ if (column !== undefined)
44
+ updates.column = column;
45
+ if (dependencies !== undefined)
46
+ updates.dependencies = dependencies;
47
+ const task = await service.updateTask(id, updates);
48
+ console.log(formatOutput(task, useJson));
49
+ }
50
+ export async function deleteTask(storage, id, useJson) {
51
+ const service = new TaskService(storage);
52
+ await service.deleteTask(id);
53
+ console.log(formatOutput({ success: true, deleted: id }, useJson));
54
+ }
55
+ export async function assignTask(storage, id, assignee, useJson) {
56
+ const service = new TaskService(storage);
57
+ const task = await service.assignTask(id, assignee);
58
+ console.log(formatOutput(task, useJson));
59
+ }
60
+ export async function unassignTask(storage, id, useJson) {
61
+ const service = new TaskService(storage);
62
+ const task = await service.unassignTask(id);
63
+ console.log(formatOutput(task, useJson));
64
+ }
65
+ export async function moveTask(storage, id, column, useJson) {
66
+ const service = new TaskService(storage);
67
+ const task = await service.moveTask(id, column);
68
+ console.log(formatOutput(task, useJson));
69
+ }
70
+ export async function taskStats(storage, useJson) {
71
+ const service = new TaskService(storage);
72
+ const stats = await service.getColumnStats();
73
+ console.log(formatOutput(stats, useJson));
74
+ }
75
+ //# sourceMappingURL=tasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../src/commands/tasks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.test.d.ts","sourceRoot":"","sources":["../src/config.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,50 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { fileURLToPath } from 'url';
3
+ import { dirname, join } from 'path';
4
+ import { readFileSync, existsSync } from 'fs';
5
+ const __filename = fileURLToPath(import.meta.url);
6
+ const __dirname = dirname(__filename);
7
+ describe('Package.json validation', () => {
8
+ const packagePath = join(__dirname, '../package.json');
9
+ it('should have a valid package.json', () => {
10
+ expect(existsSync(packagePath)).toBe(true);
11
+ });
12
+ it('should have required fields', () => {
13
+ const pkg = JSON.parse(readFileSync(packagePath, 'utf-8'));
14
+ expect(pkg.name).toBe('agent-office');
15
+ expect(pkg.version).toMatch(/^\d+\.\d+\.\d+/);
16
+ expect(pkg.type).toBe('module');
17
+ expect(pkg.bin).toHaveProperty('agent-office');
18
+ });
19
+ it('should have commander dependency', () => {
20
+ const pkg = JSON.parse(readFileSync(packagePath, 'utf-8'));
21
+ expect(pkg.dependencies).toHaveProperty('commander');
22
+ });
23
+ it('should have test scripts', () => {
24
+ const pkg = JSON.parse(readFileSync(packagePath, 'utf-8'));
25
+ expect(pkg.scripts).toHaveProperty('test');
26
+ expect(pkg.scripts).toHaveProperty('test:watch');
27
+ expect(pkg.scripts).toHaveProperty('test:coverage');
28
+ });
29
+ });
30
+ describe('TypeScript configuration', () => {
31
+ const tsconfigPath = join(__dirname, '../tsconfig.json');
32
+ it('should have tsconfig.json', () => {
33
+ expect(existsSync(tsconfigPath)).toBe(true);
34
+ });
35
+ it('should have strict mode enabled', () => {
36
+ const config = JSON.parse(readFileSync(tsconfigPath, 'utf-8'));
37
+ expect(config.compilerOptions.strict).toBe(true);
38
+ });
39
+ it('should use ESM modules', () => {
40
+ const config = JSON.parse(readFileSync(tsconfigPath, 'utf-8'));
41
+ expect(config.compilerOptions.module).toBe('ESNext');
42
+ });
43
+ });
44
+ describe('Vitest configuration', () => {
45
+ const vitestConfigPath = join(__dirname, '../vitest.config.ts');
46
+ it('should have vitest.config.ts', () => {
47
+ expect(existsSync(vitestConfigPath)).toBe(true);
48
+ });
49
+ });
50
+ //# sourceMappingURL=config.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.test.js","sourceRoot":"","sources":["../src/config.test.ts"],"names":[],"mappings":"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"}
@@ -1,70 +1,6 @@
1
- import postgres from "postgres";
2
- export type Sql = ReturnType<typeof postgres>;
3
- export declare function createDb(databaseUrl: string): Sql;
4
- export type { AgentOfficeStorage, WatchListener, WatchState, SenderInfo } from "./storage.js";
5
- export { AgentOfficePostgresqlStorage, createPostgresqlStorage } from "./postgresql-storage.js";
6
- export { AgentOfficeSqliteStorage, createSqliteStorage } from "./sqlite-storage.js";
7
- export interface SessionRow {
8
- id: number;
9
- name: string;
10
- session_id: string;
11
- agent_code: string;
12
- agent: string;
13
- status: string | null;
14
- created_at: Date;
15
- }
16
- export interface ConfigRow {
17
- key: string;
18
- value: string;
19
- }
20
- export interface MessageRow {
21
- id: number;
22
- from_name: string;
23
- to_name: string;
24
- body: string;
25
- read: boolean;
26
- injected: boolean;
27
- notified?: boolean;
28
- created_at: Date;
29
- }
30
- export interface CronJobRow {
31
- id: number;
32
- name: string;
33
- session_name: string;
34
- schedule: string;
35
- timezone: string | null;
36
- message: string;
37
- enabled: boolean;
38
- created_at: Date;
39
- last_run: Date | null;
40
- }
41
- export interface CronHistoryRow {
42
- id: number;
43
- cron_job_id: number;
44
- executed_at: Date;
45
- success: boolean;
46
- error_message: string | null;
47
- }
48
- export interface CronRequestRow {
49
- id: number;
50
- name: string;
51
- session_name: string;
52
- schedule: string;
53
- timezone: string | null;
54
- message: string;
55
- status: "pending" | "approved" | "rejected";
56
- requested_at: Date;
57
- reviewed_at: Date | null;
58
- reviewed_by: string | null;
59
- reviewer_notes: string | null;
60
- }
61
- export interface TaskRow {
62
- id: number;
63
- title: string;
64
- description: string;
65
- assignee: string | null;
66
- column: string;
67
- dependencies: number[];
68
- created_at: Date;
69
- updated_at: Date;
70
- }
1
+ export type { SessionRow, ConfigRow, MessageRow, CronJobRow, CronHistoryRow, CronRequestRow, TaskRow } from './types.js';
2
+ export type { AgentOfficeStorage, WatchListener, WatchState, SenderInfo } from './storage.js';
3
+ export { AgentOfficePostgresqlStorage, createPostgresqlStorage } from './postgresql-storage.js';
4
+ export { AgentOfficeSqliteStorage, createSqliteStorage } from './sqlite-storage.js';
5
+ export { MockAgentOfficeStorage, createMockStorage } from './mock-storage.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAGxH,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC7F,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAC/F,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA"}
package/dist/db/index.js CHANGED
@@ -1,11 +1,4 @@
1
- import postgres from "postgres";
2
- export function createDb(databaseUrl) {
3
- return postgres(databaseUrl, {
4
- max: 10,
5
- idle_timeout: 30,
6
- connect_timeout: 10,
7
- onnotice: () => { },
8
- });
9
- }
10
- export { AgentOfficePostgresqlStorage, createPostgresqlStorage } from "./postgresql-storage.js";
11
- export { AgentOfficeSqliteStorage, createSqliteStorage } from "./sqlite-storage.js";
1
+ export { AgentOfficePostgresqlStorage, createPostgresqlStorage } from './postgresql-storage.js';
2
+ export { AgentOfficeSqliteStorage, createSqliteStorage } from './sqlite-storage.js';
3
+ export { MockAgentOfficeStorage, createMockStorage } from './mock-storage.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAC/F,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA"}