agent-office 0.6.23 → 0.7.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 (58) hide show
  1. package/AGENTS.md +0 -0
  2. package/CONTEXT.md +77 -0
  3. package/README.md +87 -6
  4. package/dist/commands/cron-requests.d.ts +5 -5
  5. package/dist/commands/cron-requests.d.ts.map +1 -1
  6. package/dist/commands/cron-requests.js +9 -14
  7. package/dist/commands/cron-requests.js.map +1 -1
  8. package/dist/commands/crons.d.ts +9 -9
  9. package/dist/commands/crons.d.ts.map +1 -1
  10. package/dist/commands/crons.js +17 -27
  11. package/dist/commands/crons.js.map +1 -1
  12. package/dist/commands/messages.d.ts +6 -6
  13. package/dist/commands/messages.d.ts.map +1 -1
  14. package/dist/commands/messages.js +11 -18
  15. package/dist/commands/messages.js.map +1 -1
  16. package/dist/commands/sessions.d.ts +5 -5
  17. package/dist/commands/sessions.d.ts.map +1 -1
  18. package/dist/commands/sessions.js +10 -16
  19. package/dist/commands/sessions.js.map +1 -1
  20. package/dist/commands/task-columns.d.ts +1 -1
  21. package/dist/commands/task-columns.d.ts.map +1 -1
  22. package/dist/commands/task-columns.js +2 -4
  23. package/dist/commands/task-columns.js.map +1 -1
  24. package/dist/commands/tasks.d.ts +10 -10
  25. package/dist/commands/tasks.d.ts.map +1 -1
  26. package/dist/commands/tasks.js +20 -31
  27. package/dist/commands/tasks.js.map +1 -1
  28. package/dist/contracts/commands.d.ts +38 -0
  29. package/dist/contracts/commands.d.ts.map +1 -0
  30. package/dist/contracts/commands.js +469 -0
  31. package/dist/contracts/commands.js.map +1 -0
  32. package/dist/index.js +1062 -160
  33. package/dist/index.js.map +1 -1
  34. package/dist/lib/input.d.ts +7 -0
  35. package/dist/lib/input.d.ts.map +1 -0
  36. package/dist/lib/input.js +94 -0
  37. package/dist/lib/input.js.map +1 -0
  38. package/dist/lib/mcp.d.ts +36 -0
  39. package/dist/lib/mcp.d.ts.map +1 -0
  40. package/dist/lib/mcp.js +150 -0
  41. package/dist/lib/mcp.js.map +1 -0
  42. package/dist/lib/output.d.ts +9 -1
  43. package/dist/lib/output.d.ts.map +1 -1
  44. package/dist/lib/output.js +59 -4
  45. package/dist/lib/output.js.map +1 -1
  46. package/dist/lib/schema.d.ts +35 -0
  47. package/dist/lib/schema.d.ts.map +1 -0
  48. package/dist/lib/schema.js +441 -0
  49. package/dist/lib/schema.js.map +1 -0
  50. package/dist/lib/validation.d.ts +15 -0
  51. package/dist/lib/validation.d.ts.map +1 -0
  52. package/dist/lib/validation.js +140 -0
  53. package/dist/lib/validation.js.map +1 -0
  54. package/package.json +5 -2
  55. package/skills/SKILL-create-coworker.md +51 -0
  56. package/skills/SKILL-cron-jobs.md +106 -0
  57. package/skills/SKILL-send-message.md +56 -0
  58. package/skills/SKILL-task-management.md +86 -0
@@ -0,0 +1,469 @@
1
+ export const COMMAND_CONTRACTS = [
2
+ {
3
+ name: 'list-coworkers',
4
+ description: 'List all coworkers (sessions).',
5
+ mutates: false,
6
+ input: { type: 'object', properties: {} },
7
+ output: { type: 'array', description: 'List of coworkers.' },
8
+ },
9
+ {
10
+ name: 'create-coworker',
11
+ description: 'Create a coworker session.',
12
+ mutates: true,
13
+ input: {
14
+ type: 'object',
15
+ required: ['name', 'coworkerType'],
16
+ properties: {
17
+ name: { type: 'string', description: 'Coworker name', required: true },
18
+ coworkerType: { type: 'string', description: 'Coworker type', required: true },
19
+ },
20
+ },
21
+ output: { type: 'object', description: 'Created coworker row.' },
22
+ },
23
+ {
24
+ name: 'update-coworker',
25
+ description: 'Update one or more coworker fields.',
26
+ mutates: true,
27
+ input: {
28
+ type: 'object',
29
+ required: ['name'],
30
+ properties: {
31
+ name: { type: 'string', description: 'Coworker name', required: true },
32
+ coworkerType: { type: 'string', description: 'Coworker type' },
33
+ status: { type: 'string', description: 'Coworker status' },
34
+ description: { type: 'string', description: 'Coworker description' },
35
+ philosophy: { type: 'string', description: 'Coworker philosophy' },
36
+ visualDescription: { type: 'string', description: 'Visual description' },
37
+ },
38
+ },
39
+ output: { type: 'object', description: 'Updated coworker info.' },
40
+ },
41
+ {
42
+ name: 'get-coworker-info',
43
+ description: 'Get coworker details.',
44
+ mutates: false,
45
+ input: {
46
+ type: 'object',
47
+ required: ['name'],
48
+ properties: { name: { type: 'string', description: 'Coworker name', required: true } },
49
+ },
50
+ output: { type: 'object', description: 'Coworker record.' },
51
+ },
52
+ {
53
+ name: 'delete-coworker',
54
+ description: 'Delete a coworker and all associated state.',
55
+ mutates: true,
56
+ input: {
57
+ type: 'object',
58
+ required: ['name'],
59
+ properties: { name: { type: 'string', description: 'Coworker name', required: true } },
60
+ },
61
+ output: { type: 'object', description: 'Deletion summary.' },
62
+ },
63
+ {
64
+ name: 'send-message',
65
+ description: 'Send a message to one or more coworkers.',
66
+ mutates: true,
67
+ input: {
68
+ type: 'object',
69
+ required: ['from', 'to', 'body'],
70
+ properties: {
71
+ from: { type: 'string', description: 'Sender name', required: true },
72
+ to: { type: 'array', description: 'Recipient names', required: true, items: { type: 'string' } },
73
+ body: { type: 'string', description: 'Message content', required: true },
74
+ },
75
+ },
76
+ output: { type: 'array', description: 'Created message rows.' },
77
+ },
78
+ {
79
+ name: 'check-unread-messages',
80
+ description: 'Check unread message count for a coworker.',
81
+ mutates: false,
82
+ input: {
83
+ type: 'object',
84
+ required: ['coworker'],
85
+ properties: { coworker: { type: 'string', description: 'Coworker name', required: true } },
86
+ },
87
+ output: { type: 'object', description: 'Unread summary.' },
88
+ },
89
+ {
90
+ name: 'get-unread-messages',
91
+ description: 'Get unread messages and mark them as read.',
92
+ mutates: true,
93
+ input: {
94
+ type: 'object',
95
+ required: ['coworker'],
96
+ properties: { coworker: { type: 'string', description: 'Coworker name', required: true } },
97
+ },
98
+ output: { type: 'array', description: 'Unread messages.' },
99
+ },
100
+ {
101
+ name: 'list-messages-between',
102
+ description: 'List messages between two coworkers with optional time window.',
103
+ mutates: false,
104
+ input: {
105
+ type: 'object',
106
+ required: ['coworker1', 'coworker2'],
107
+ properties: {
108
+ coworker1: { type: 'string', description: 'First coworker name', required: true },
109
+ coworker2: { type: 'string', description: 'Second coworker name', required: true },
110
+ start: { type: 'string', description: 'Start time ISO8601' },
111
+ end: { type: 'string', description: 'End time ISO8601' },
112
+ },
113
+ },
114
+ output: { type: 'array', description: 'Messages in date range.' },
115
+ },
116
+ {
117
+ name: 'list-messages-to-notify',
118
+ description: 'List old unread non-notified messages for reminder handling.',
119
+ mutates: false,
120
+ input: {
121
+ type: 'object',
122
+ required: ['coworker', 'hours'],
123
+ properties: {
124
+ coworker: { type: 'string', description: 'Coworker name', required: true },
125
+ hours: { type: 'number', description: 'Age threshold in hours', required: true },
126
+ },
127
+ },
128
+ output: { type: 'array', description: 'Queued messages.' },
129
+ },
130
+ {
131
+ name: 'mark-messages-as-notified',
132
+ description: 'Mark messages as notified.',
133
+ mutates: true,
134
+ input: {
135
+ type: 'object',
136
+ required: ['ids'],
137
+ properties: {
138
+ ids: { type: 'array', description: 'Message IDs', required: true, items: { type: 'integer' } },
139
+ },
140
+ },
141
+ output: { type: 'object', description: 'Notification summary.' },
142
+ },
143
+ {
144
+ name: 'list-crons',
145
+ description: 'List cron jobs for a coworker.',
146
+ mutates: false,
147
+ input: {
148
+ type: 'object',
149
+ required: ['coworker'],
150
+ properties: { coworker: { type: 'string', description: 'Coworker name', required: true } },
151
+ },
152
+ output: { type: 'array', description: 'Cron job list.' },
153
+ },
154
+ {
155
+ name: 'create-cron',
156
+ description: 'Create cron job directly.',
157
+ mutates: true,
158
+ input: {
159
+ type: 'object',
160
+ required: ['name', 'coworker', 'schedule', 'task', 'notify', 'timezone'],
161
+ properties: {
162
+ name: { type: 'string', description: 'Cron name', required: true },
163
+ coworker: { type: 'string', description: 'Coworker name', required: true },
164
+ schedule: { type: 'string', description: 'Cron schedule', required: true },
165
+ task: { type: 'string', description: 'Task to execute', required: true },
166
+ notify: { type: 'string', description: 'Notification instructions', required: true },
167
+ timezone: { type: 'string', description: 'Timezone', required: true },
168
+ },
169
+ },
170
+ output: { type: 'object', description: 'Created cron job.' },
171
+ },
172
+ {
173
+ name: 'delete-cron',
174
+ description: 'Delete a cron job.',
175
+ mutates: true,
176
+ input: {
177
+ type: 'object',
178
+ required: ['id'],
179
+ properties: { id: { type: 'integer', description: 'Cron ID', required: true } },
180
+ },
181
+ output: { type: 'object', description: 'Deletion summary.' },
182
+ },
183
+ {
184
+ name: 'enable-cron',
185
+ description: 'Enable a cron job.',
186
+ mutates: true,
187
+ input: {
188
+ type: 'object',
189
+ required: ['id'],
190
+ properties: { id: { type: 'integer', description: 'Cron ID', required: true } },
191
+ },
192
+ output: { type: 'object', description: 'Cron job with enabled state.' },
193
+ },
194
+ {
195
+ name: 'disable-cron',
196
+ description: 'Disable a cron job.',
197
+ mutates: true,
198
+ input: {
199
+ type: 'object',
200
+ required: ['id'],
201
+ properties: { id: { type: 'integer', description: 'Cron ID', required: true } },
202
+ },
203
+ output: { type: 'object', description: 'Cron job with disabled state.' },
204
+ },
205
+ {
206
+ name: 'cron-history',
207
+ description: 'Fetch cron execution history.',
208
+ mutates: false,
209
+ input: {
210
+ type: 'object',
211
+ required: ['id'],
212
+ properties: {
213
+ id: { type: 'integer', description: 'Cron ID', required: true },
214
+ limit: { type: 'integer', description: 'Maximum rows' },
215
+ },
216
+ },
217
+ output: { type: 'array', description: 'Cron execution history entries.' },
218
+ },
219
+ {
220
+ name: 'check-cron-jobs',
221
+ description: 'Check active cron jobs for a coworker at current minute.',
222
+ mutates: false,
223
+ input: {
224
+ type: 'object',
225
+ required: ['coworker'],
226
+ properties: { coworker: { type: 'string', description: 'Coworker name', required: true } },
227
+ },
228
+ output: { type: 'object', description: 'Active count summary.' },
229
+ },
230
+ {
231
+ name: 'list-active-cron-actions',
232
+ description: 'List cron actions that should run now.',
233
+ mutates: false,
234
+ input: {
235
+ type: 'object',
236
+ required: ['coworker'],
237
+ properties: { coworker: { type: 'string', description: 'Coworker name', required: true } },
238
+ },
239
+ output: { type: 'array', description: 'Cron actions.' },
240
+ },
241
+ {
242
+ name: 'list-cron-requests',
243
+ description: 'List cron requests.',
244
+ mutates: false,
245
+ input: { type: 'object', properties: {} },
246
+ output: { type: 'array', description: 'Cron request list.' },
247
+ },
248
+ {
249
+ name: 'request-cron',
250
+ description: 'Create a cron request requiring approval.',
251
+ mutates: true,
252
+ input: {
253
+ type: 'object',
254
+ required: ['name', 'coworker', 'schedule', 'task', 'notify', 'timezone'],
255
+ properties: {
256
+ name: { type: 'string', description: 'Cron name', required: true },
257
+ coworker: { type: 'string', description: 'Coworker name', required: true },
258
+ schedule: { type: 'string', description: 'Cron schedule', required: true },
259
+ task: { type: 'string', description: 'Task text', required: true },
260
+ notify: { type: 'string', description: 'Notification instructions', required: true },
261
+ timezone: { type: 'string', description: 'Timezone', required: true },
262
+ },
263
+ },
264
+ output: { type: 'object', description: 'Cron request row.' },
265
+ },
266
+ {
267
+ name: 'get-cron-request',
268
+ description: 'Get cron request details.',
269
+ mutates: false,
270
+ input: {
271
+ type: 'object',
272
+ required: ['id'],
273
+ properties: { id: { type: 'integer', description: 'Request ID', required: true } },
274
+ },
275
+ output: { type: 'object', description: 'Cron request row.' },
276
+ },
277
+ {
278
+ name: 'approve-cron-request',
279
+ description: 'Approve a cron request.',
280
+ mutates: true,
281
+ input: {
282
+ type: 'object',
283
+ required: ['id', 'reviewer'],
284
+ properties: {
285
+ id: { type: 'integer', description: 'Request ID', required: true },
286
+ reviewer: { type: 'string', description: 'Reviewer name', required: true },
287
+ notes: { type: 'string', description: 'Reviewer notes' },
288
+ },
289
+ },
290
+ output: { type: 'object', description: 'Updated cron request row.' },
291
+ },
292
+ {
293
+ name: 'reject-cron-request',
294
+ description: 'Reject a cron request.',
295
+ mutates: true,
296
+ input: {
297
+ type: 'object',
298
+ required: ['id', 'reviewer'],
299
+ properties: {
300
+ id: { type: 'integer', description: 'Request ID', required: true },
301
+ reviewer: { type: 'string', description: 'Reviewer name', required: true },
302
+ notes: { type: 'string', description: 'Reviewer notes' },
303
+ },
304
+ },
305
+ output: { type: 'object', description: 'Updated cron request row.' },
306
+ },
307
+ {
308
+ name: 'delete-cron-request',
309
+ description: 'Delete a cron request.',
310
+ mutates: true,
311
+ input: {
312
+ type: 'object',
313
+ required: ['id'],
314
+ properties: { id: { type: 'integer', description: 'Request ID', required: true } },
315
+ },
316
+ output: { type: 'object', description: 'Deletion summary.' },
317
+ },
318
+ {
319
+ name: 'add-task',
320
+ description: 'Create a task.',
321
+ mutates: true,
322
+ input: {
323
+ type: 'object',
324
+ required: ['title', 'column'],
325
+ properties: {
326
+ title: { type: 'string', description: 'Task title', required: true },
327
+ description: { type: 'string', description: 'Task description' },
328
+ assignee: { type: 'string', description: 'Assignee name' },
329
+ column: { type: 'string', description: 'Initial column', required: true },
330
+ dependencies: { type: 'array', description: 'Task dependency IDs', items: { type: 'integer' } },
331
+ },
332
+ },
333
+ output: { type: 'object', description: 'Created task row.' },
334
+ },
335
+ {
336
+ name: 'list-tasks',
337
+ description: 'List tasks with optional filtering.',
338
+ mutates: false,
339
+ input: {
340
+ type: 'object',
341
+ properties: {
342
+ assignee: { type: 'string', description: 'Filter by assignee' },
343
+ column: { type: 'string', description: 'Filter by column' },
344
+ search: { type: 'string', description: 'Search by title and description' },
345
+ },
346
+ },
347
+ output: { type: 'array', description: 'Task list.' },
348
+ },
349
+ {
350
+ name: 'get-task',
351
+ description: 'Get a task by ID.',
352
+ mutates: false,
353
+ input: {
354
+ type: 'object',
355
+ required: ['id'],
356
+ properties: { id: { type: 'integer', description: 'Task ID', required: true } },
357
+ },
358
+ output: { type: 'object', description: 'Task row.' },
359
+ },
360
+ {
361
+ name: 'update-task',
362
+ description: 'Update task attributes.',
363
+ mutates: true,
364
+ input: {
365
+ type: 'object',
366
+ required: ['id'],
367
+ properties: {
368
+ id: { type: 'integer', description: 'Task ID', required: true },
369
+ title: { type: 'string', description: 'Task title' },
370
+ description: { type: 'string', description: 'Task description' },
371
+ assignee: { type: 'string', description: 'Task assignee' },
372
+ column: { type: 'string', description: 'Task column' },
373
+ dependencies: { type: 'array', description: 'Task dependency IDs', items: { type: 'integer' } },
374
+ },
375
+ },
376
+ output: { type: 'object', description: 'Updated task row.' },
377
+ },
378
+ {
379
+ name: 'delete-task',
380
+ description: 'Delete task by ID.',
381
+ mutates: true,
382
+ input: {
383
+ type: 'object',
384
+ required: ['id'],
385
+ properties: { id: { type: 'integer', description: 'Task ID', required: true } },
386
+ },
387
+ output: { type: 'object', description: 'Deletion summary.' },
388
+ },
389
+ {
390
+ name: 'assign-task',
391
+ description: 'Assign task to coworker.',
392
+ mutates: true,
393
+ input: {
394
+ type: 'object',
395
+ required: ['id', 'assignee'],
396
+ properties: {
397
+ id: { type: 'integer', description: 'Task ID', required: true },
398
+ assignee: { type: 'string', description: 'New assignee name', required: true },
399
+ },
400
+ },
401
+ output: { type: 'object', description: 'Updated task row.' },
402
+ },
403
+ {
404
+ name: 'unassign-task',
405
+ description: 'Remove assignment from task.',
406
+ mutates: true,
407
+ input: {
408
+ type: 'object',
409
+ required: ['id'],
410
+ properties: { id: { type: 'integer', description: 'Task ID', required: true } },
411
+ },
412
+ output: { type: 'object', description: 'Updated task row.' },
413
+ },
414
+ {
415
+ name: 'move-task',
416
+ description: 'Move task to a different column.',
417
+ mutates: true,
418
+ input: {
419
+ type: 'object',
420
+ required: ['id', 'column'],
421
+ properties: {
422
+ id: { type: 'integer', description: 'Task ID', required: true },
423
+ column: { type: 'string', description: 'Destination column', required: true },
424
+ },
425
+ },
426
+ output: { type: 'object', description: 'Updated task row.' },
427
+ },
428
+ {
429
+ name: 'task-stats',
430
+ description: 'Get task statistics by column.',
431
+ mutates: false,
432
+ input: { type: 'object', properties: {} },
433
+ output: { type: 'array', description: 'Column counts.' },
434
+ },
435
+ {
436
+ name: 'task-history',
437
+ description: 'Get task column transition history.',
438
+ mutates: false,
439
+ input: {
440
+ type: 'object',
441
+ required: ['id'],
442
+ properties: { id: { type: 'integer', description: 'Task ID', required: true } },
443
+ },
444
+ output: { type: 'array', description: 'Task history entries.' },
445
+ },
446
+ {
447
+ name: 'list-task-columns',
448
+ description: 'List valid task columns.',
449
+ mutates: false,
450
+ input: { type: 'object', properties: {} },
451
+ output: { type: 'array', description: 'Column definitions.' },
452
+ },
453
+ ];
454
+ const commandIndex = new Map(COMMAND_CONTRACTS.map(contract => [contract.name, contract]));
455
+ export function getAllContracts() {
456
+ return COMMAND_CONTRACTS;
457
+ }
458
+ export function getCommandContract(name) {
459
+ return commandIndex.get(name);
460
+ }
461
+ export function getMcpTools() {
462
+ return COMMAND_CONTRACTS.filter(contract => contract.name !== 'schema' && contract.name !== 'mcp').map(contract => ({
463
+ name: contract.name,
464
+ description: contract.description,
465
+ inputSchema: contract.input,
466
+ outputSchema: contract.output,
467
+ }));
468
+ }
469
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/contracts/commands.ts"],"names":[],"mappings":"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"}