opencode-supertask 0.1.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.
@@ -0,0 +1,470 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "9138ed98-286a-46b2-bcc0-fd905755e789",
5
+ "prevId": "ccf38e5f-3cc0-457e-b7ac-e443e91b9bf8",
6
+ "tables": {
7
+ "task_runs": {
8
+ "name": "task_runs",
9
+ "columns": {
10
+ "id": {
11
+ "name": "id",
12
+ "type": "integer",
13
+ "primaryKey": true,
14
+ "notNull": true,
15
+ "autoincrement": true
16
+ },
17
+ "task_id": {
18
+ "name": "task_id",
19
+ "type": "integer",
20
+ "primaryKey": false,
21
+ "notNull": true,
22
+ "autoincrement": false
23
+ },
24
+ "session_id": {
25
+ "name": "session_id",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": false,
29
+ "autoincrement": false
30
+ },
31
+ "model": {
32
+ "name": "model",
33
+ "type": "text",
34
+ "primaryKey": false,
35
+ "notNull": false,
36
+ "autoincrement": false
37
+ },
38
+ "status": {
39
+ "name": "status",
40
+ "type": "text",
41
+ "primaryKey": false,
42
+ "notNull": false,
43
+ "autoincrement": false,
44
+ "default": "'running'"
45
+ },
46
+ "started_at": {
47
+ "name": "started_at",
48
+ "type": "integer",
49
+ "primaryKey": false,
50
+ "notNull": false,
51
+ "autoincrement": false
52
+ },
53
+ "finished_at": {
54
+ "name": "finished_at",
55
+ "type": "integer",
56
+ "primaryKey": false,
57
+ "notNull": false,
58
+ "autoincrement": false
59
+ },
60
+ "log": {
61
+ "name": "log",
62
+ "type": "text",
63
+ "primaryKey": false,
64
+ "notNull": false,
65
+ "autoincrement": false
66
+ },
67
+ "locked_at": {
68
+ "name": "locked_at",
69
+ "type": "integer",
70
+ "primaryKey": false,
71
+ "notNull": false,
72
+ "autoincrement": false
73
+ },
74
+ "locked_by": {
75
+ "name": "locked_by",
76
+ "type": "text",
77
+ "primaryKey": false,
78
+ "notNull": false,
79
+ "autoincrement": false
80
+ },
81
+ "heartbeat_at": {
82
+ "name": "heartbeat_at",
83
+ "type": "integer",
84
+ "primaryKey": false,
85
+ "notNull": false,
86
+ "autoincrement": false
87
+ },
88
+ "worker_pid": {
89
+ "name": "worker_pid",
90
+ "type": "integer",
91
+ "primaryKey": false,
92
+ "notNull": false,
93
+ "autoincrement": false
94
+ },
95
+ "child_pid": {
96
+ "name": "child_pid",
97
+ "type": "integer",
98
+ "primaryKey": false,
99
+ "notNull": false,
100
+ "autoincrement": false
101
+ }
102
+ },
103
+ "indexes": {},
104
+ "foreignKeys": {
105
+ "task_runs_task_id_tasks_id_fk": {
106
+ "name": "task_runs_task_id_tasks_id_fk",
107
+ "tableFrom": "task_runs",
108
+ "tableTo": "tasks",
109
+ "columnsFrom": [
110
+ "task_id"
111
+ ],
112
+ "columnsTo": [
113
+ "id"
114
+ ],
115
+ "onDelete": "no action",
116
+ "onUpdate": "no action"
117
+ }
118
+ },
119
+ "compositePrimaryKeys": {},
120
+ "uniqueConstraints": {},
121
+ "checkConstraints": {}
122
+ },
123
+ "task_templates": {
124
+ "name": "task_templates",
125
+ "columns": {
126
+ "id": {
127
+ "name": "id",
128
+ "type": "integer",
129
+ "primaryKey": true,
130
+ "notNull": true,
131
+ "autoincrement": true
132
+ },
133
+ "name": {
134
+ "name": "name",
135
+ "type": "text",
136
+ "primaryKey": false,
137
+ "notNull": true,
138
+ "autoincrement": false
139
+ },
140
+ "agent": {
141
+ "name": "agent",
142
+ "type": "text",
143
+ "primaryKey": false,
144
+ "notNull": true,
145
+ "autoincrement": false
146
+ },
147
+ "model": {
148
+ "name": "model",
149
+ "type": "text",
150
+ "primaryKey": false,
151
+ "notNull": false,
152
+ "autoincrement": false,
153
+ "default": "'default'"
154
+ },
155
+ "prompt": {
156
+ "name": "prompt",
157
+ "type": "text",
158
+ "primaryKey": false,
159
+ "notNull": true,
160
+ "autoincrement": false
161
+ },
162
+ "cwd": {
163
+ "name": "cwd",
164
+ "type": "text",
165
+ "primaryKey": false,
166
+ "notNull": false,
167
+ "autoincrement": false
168
+ },
169
+ "category": {
170
+ "name": "category",
171
+ "type": "text",
172
+ "primaryKey": false,
173
+ "notNull": false,
174
+ "autoincrement": false,
175
+ "default": "'general'"
176
+ },
177
+ "importance": {
178
+ "name": "importance",
179
+ "type": "integer",
180
+ "primaryKey": false,
181
+ "notNull": false,
182
+ "autoincrement": false,
183
+ "default": 3
184
+ },
185
+ "urgency": {
186
+ "name": "urgency",
187
+ "type": "integer",
188
+ "primaryKey": false,
189
+ "notNull": false,
190
+ "autoincrement": false,
191
+ "default": 3
192
+ },
193
+ "schedule_type": {
194
+ "name": "schedule_type",
195
+ "type": "text",
196
+ "primaryKey": false,
197
+ "notNull": true,
198
+ "autoincrement": false
199
+ },
200
+ "cron_expr": {
201
+ "name": "cron_expr",
202
+ "type": "text",
203
+ "primaryKey": false,
204
+ "notNull": false,
205
+ "autoincrement": false
206
+ },
207
+ "interval_ms": {
208
+ "name": "interval_ms",
209
+ "type": "integer",
210
+ "primaryKey": false,
211
+ "notNull": false,
212
+ "autoincrement": false
213
+ },
214
+ "run_at": {
215
+ "name": "run_at",
216
+ "type": "integer",
217
+ "primaryKey": false,
218
+ "notNull": false,
219
+ "autoincrement": false
220
+ },
221
+ "max_instances": {
222
+ "name": "max_instances",
223
+ "type": "integer",
224
+ "primaryKey": false,
225
+ "notNull": false,
226
+ "autoincrement": false,
227
+ "default": 1
228
+ },
229
+ "max_retries": {
230
+ "name": "max_retries",
231
+ "type": "integer",
232
+ "primaryKey": false,
233
+ "notNull": false,
234
+ "autoincrement": false,
235
+ "default": 3
236
+ },
237
+ "retry_backoff_ms": {
238
+ "name": "retry_backoff_ms",
239
+ "type": "integer",
240
+ "primaryKey": false,
241
+ "notNull": false,
242
+ "autoincrement": false,
243
+ "default": 30000
244
+ },
245
+ "last_run_at": {
246
+ "name": "last_run_at",
247
+ "type": "integer",
248
+ "primaryKey": false,
249
+ "notNull": false,
250
+ "autoincrement": false
251
+ },
252
+ "next_run_at": {
253
+ "name": "next_run_at",
254
+ "type": "integer",
255
+ "primaryKey": false,
256
+ "notNull": false,
257
+ "autoincrement": false
258
+ },
259
+ "enabled": {
260
+ "name": "enabled",
261
+ "type": "integer",
262
+ "primaryKey": false,
263
+ "notNull": false,
264
+ "autoincrement": false,
265
+ "default": true
266
+ },
267
+ "created_at": {
268
+ "name": "created_at",
269
+ "type": "integer",
270
+ "primaryKey": false,
271
+ "notNull": false,
272
+ "autoincrement": false
273
+ },
274
+ "updated_at": {
275
+ "name": "updated_at",
276
+ "type": "integer",
277
+ "primaryKey": false,
278
+ "notNull": false,
279
+ "autoincrement": false
280
+ }
281
+ },
282
+ "indexes": {},
283
+ "foreignKeys": {},
284
+ "compositePrimaryKeys": {},
285
+ "uniqueConstraints": {},
286
+ "checkConstraints": {}
287
+ },
288
+ "tasks": {
289
+ "name": "tasks",
290
+ "columns": {
291
+ "id": {
292
+ "name": "id",
293
+ "type": "integer",
294
+ "primaryKey": true,
295
+ "notNull": true,
296
+ "autoincrement": true
297
+ },
298
+ "name": {
299
+ "name": "name",
300
+ "type": "text",
301
+ "primaryKey": false,
302
+ "notNull": true,
303
+ "autoincrement": false
304
+ },
305
+ "agent": {
306
+ "name": "agent",
307
+ "type": "text",
308
+ "primaryKey": false,
309
+ "notNull": true,
310
+ "autoincrement": false
311
+ },
312
+ "model": {
313
+ "name": "model",
314
+ "type": "text",
315
+ "primaryKey": false,
316
+ "notNull": false,
317
+ "autoincrement": false,
318
+ "default": "'default'"
319
+ },
320
+ "prompt": {
321
+ "name": "prompt",
322
+ "type": "text",
323
+ "primaryKey": false,
324
+ "notNull": true,
325
+ "autoincrement": false
326
+ },
327
+ "cwd": {
328
+ "name": "cwd",
329
+ "type": "text",
330
+ "primaryKey": false,
331
+ "notNull": false,
332
+ "autoincrement": false
333
+ },
334
+ "category": {
335
+ "name": "category",
336
+ "type": "text",
337
+ "primaryKey": false,
338
+ "notNull": false,
339
+ "autoincrement": false,
340
+ "default": "'general'"
341
+ },
342
+ "importance": {
343
+ "name": "importance",
344
+ "type": "integer",
345
+ "primaryKey": false,
346
+ "notNull": false,
347
+ "autoincrement": false,
348
+ "default": 3
349
+ },
350
+ "urgency": {
351
+ "name": "urgency",
352
+ "type": "integer",
353
+ "primaryKey": false,
354
+ "notNull": false,
355
+ "autoincrement": false,
356
+ "default": 3
357
+ },
358
+ "batch_id": {
359
+ "name": "batch_id",
360
+ "type": "text",
361
+ "primaryKey": false,
362
+ "notNull": false,
363
+ "autoincrement": false
364
+ },
365
+ "depends_on": {
366
+ "name": "depends_on",
367
+ "type": "integer",
368
+ "primaryKey": false,
369
+ "notNull": false,
370
+ "autoincrement": false
371
+ },
372
+ "status": {
373
+ "name": "status",
374
+ "type": "text",
375
+ "primaryKey": false,
376
+ "notNull": false,
377
+ "autoincrement": false,
378
+ "default": "'pending'"
379
+ },
380
+ "created_at": {
381
+ "name": "created_at",
382
+ "type": "integer",
383
+ "primaryKey": false,
384
+ "notNull": false,
385
+ "autoincrement": false
386
+ },
387
+ "started_at": {
388
+ "name": "started_at",
389
+ "type": "integer",
390
+ "primaryKey": false,
391
+ "notNull": false,
392
+ "autoincrement": false
393
+ },
394
+ "finished_at": {
395
+ "name": "finished_at",
396
+ "type": "integer",
397
+ "primaryKey": false,
398
+ "notNull": false,
399
+ "autoincrement": false
400
+ },
401
+ "result_log": {
402
+ "name": "result_log",
403
+ "type": "text",
404
+ "primaryKey": false,
405
+ "notNull": false,
406
+ "autoincrement": false
407
+ },
408
+ "retry_count": {
409
+ "name": "retry_count",
410
+ "type": "integer",
411
+ "primaryKey": false,
412
+ "notNull": false,
413
+ "autoincrement": false,
414
+ "default": 0
415
+ },
416
+ "max_retries": {
417
+ "name": "max_retries",
418
+ "type": "integer",
419
+ "primaryKey": false,
420
+ "notNull": false,
421
+ "autoincrement": false,
422
+ "default": 3
423
+ },
424
+ "retry_after": {
425
+ "name": "retry_after",
426
+ "type": "integer",
427
+ "primaryKey": false,
428
+ "notNull": false,
429
+ "autoincrement": false
430
+ },
431
+ "timeout_ms": {
432
+ "name": "timeout_ms",
433
+ "type": "integer",
434
+ "primaryKey": false,
435
+ "notNull": false,
436
+ "autoincrement": false
437
+ },
438
+ "template_id": {
439
+ "name": "template_id",
440
+ "type": "integer",
441
+ "primaryKey": false,
442
+ "notNull": false,
443
+ "autoincrement": false
444
+ },
445
+ "scheduled_at": {
446
+ "name": "scheduled_at",
447
+ "type": "integer",
448
+ "primaryKey": false,
449
+ "notNull": false,
450
+ "autoincrement": false
451
+ }
452
+ },
453
+ "indexes": {},
454
+ "foreignKeys": {},
455
+ "compositePrimaryKeys": {},
456
+ "uniqueConstraints": {},
457
+ "checkConstraints": {}
458
+ }
459
+ },
460
+ "views": {},
461
+ "enums": {},
462
+ "_meta": {
463
+ "schemas": {},
464
+ "tables": {},
465
+ "columns": {}
466
+ },
467
+ "internal": {
468
+ "indexes": {}
469
+ }
470
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "sqlite",
4
+ "entries": [
5
+ {
6
+ "idx": 0,
7
+ "version": "6",
8
+ "when": 1769715046886,
9
+ "tag": "0000_steep_micromax",
10
+ "breakpoints": true
11
+ },
12
+ {
13
+ "idx": 1,
14
+ "version": "6",
15
+ "when": 1769718256045,
16
+ "tag": "0001_tranquil_baron_strucker",
17
+ "breakpoints": true
18
+ },
19
+ {
20
+ "idx": 2,
21
+ "version": "6",
22
+ "when": 1769887991634,
23
+ "tag": "0002_round_william_stryker",
24
+ "breakpoints": true
25
+ },
26
+ {
27
+ "idx": 3,
28
+ "version": "6",
29
+ "when": 1778052887048,
30
+ "tag": "0003_giant_polaris",
31
+ "breakpoints": true
32
+ }
33
+ ]
34
+ }
package/package.json ADDED
@@ -0,0 +1,82 @@
1
+ {
2
+ "name": "opencode-supertask",
3
+ "version": "0.1.0",
4
+ "description": "AI Agent 任务调度系统 — OpenCode 插件 + CLI + Gateway 常驻进程",
5
+ "type": "module",
6
+ "main": "dist/plugin/supertask.js",
7
+ "types": "dist/plugin/supertask.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/plugin/supertask.js",
11
+ "types": "./dist/plugin/supertask.d.ts"
12
+ },
13
+ "./server": {
14
+ "import": "./dist/plugin/supertask.js",
15
+ "types": "./dist/plugin/supertask.d.ts"
16
+ }
17
+ },
18
+ "files": [
19
+ "dist",
20
+ "drizzle",
21
+ "README.md",
22
+ "LICENSE"
23
+ ],
24
+ "scripts": {
25
+ "dev": "bun run src/cli/index.ts",
26
+ "build": "tsup",
27
+ "db:generate": "drizzle-kit generate",
28
+ "db:migrate": "bun run src/core/db/migrate.ts",
29
+ "ui": "bun run src/web/index.tsx",
30
+ "gateway": "bun run src/gateway/index.ts",
31
+ "test": "bun test",
32
+ "typecheck": "tsc --noEmit"
33
+ },
34
+ "bin": {
35
+ "supertask": "dist/cli/index.js"
36
+ },
37
+ "keywords": [
38
+ "opencode",
39
+ "plugin",
40
+ "task",
41
+ "queue",
42
+ "agent",
43
+ "scheduler",
44
+ "supertask"
45
+ ],
46
+ "author": "javazys",
47
+ "license": "MIT",
48
+ "repository": {
49
+ "type": "git",
50
+ "url": "git+https://github.com/vbgate/opencode-supertask.git"
51
+ },
52
+ "bugs": {
53
+ "url": "https://github.com/vbgate/opencode-supertask/issues"
54
+ },
55
+ "homepage": "https://github.com/vbgate/opencode-supertask#readme",
56
+ "dependencies": {
57
+ "commander": "^13.1.0",
58
+ "cron-parser": "^5.5.0",
59
+ "drizzle-orm": "^0.39.1",
60
+ "glob": "^13.0.0",
61
+ "hono": "^4.7.4"
62
+ },
63
+ "devDependencies": {
64
+ "@opencode-ai/plugin": "^1.1.42",
65
+ "@types/bun": "latest",
66
+ "@types/node": "^25.1.0",
67
+ "drizzle-kit": "^0.30.4",
68
+ "tsup": "^8.5.1",
69
+ "typescript": "^5.9.3"
70
+ },
71
+ "peerDependencies": {
72
+ "@opencode-ai/plugin": "^1.1.0"
73
+ },
74
+ "peerDependenciesMeta": {
75
+ "@opencode-ai/plugin": {
76
+ "optional": false
77
+ }
78
+ },
79
+ "engines": {
80
+ "bun": ">=1.0.0"
81
+ }
82
+ }