opentasks 0.1.2 → 0.2.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 (280) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +218 -49
  3. package/dist/cli.d.ts +20 -0
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +451 -15
  6. package/dist/cli.js.map +1 -1
  7. package/dist/client/client.d.ts +54 -0
  8. package/dist/client/client.d.ts.map +1 -1
  9. package/dist/client/client.js +148 -4
  10. package/dist/client/client.js.map +1 -1
  11. package/dist/client/index.d.ts +1 -1
  12. package/dist/client/index.d.ts.map +1 -1
  13. package/dist/client/index.js +1 -1
  14. package/dist/client/index.js.map +1 -1
  15. package/dist/core/discover.d.ts.map +1 -1
  16. package/dist/core/discover.js +7 -2
  17. package/dist/core/discover.js.map +1 -1
  18. package/dist/core/hash.d.ts.map +1 -1
  19. package/dist/core/hash.js +7 -0
  20. package/dist/core/hash.js.map +1 -1
  21. package/dist/core/id.d.ts +1 -1
  22. package/dist/core/id.d.ts.map +1 -1
  23. package/dist/core/id.js +2 -0
  24. package/dist/core/id.js.map +1 -1
  25. package/dist/core/worktree.js +4 -4
  26. package/dist/core/worktree.js.map +1 -1
  27. package/dist/daemon/events.d.ts +82 -0
  28. package/dist/daemon/events.d.ts.map +1 -0
  29. package/dist/daemon/events.js +71 -0
  30. package/dist/daemon/events.js.map +1 -0
  31. package/dist/daemon/flush.d.ts.map +1 -1
  32. package/dist/daemon/flush.js +12 -2
  33. package/dist/daemon/flush.js.map +1 -1
  34. package/dist/daemon/health-counters.d.ts +38 -0
  35. package/dist/daemon/health-counters.d.ts.map +1 -0
  36. package/dist/daemon/health-counters.js +42 -0
  37. package/dist/daemon/health-counters.js.map +1 -0
  38. package/dist/daemon/idempotency.d.ts +50 -0
  39. package/dist/daemon/idempotency.d.ts.map +1 -0
  40. package/dist/daemon/idempotency.js +104 -0
  41. package/dist/daemon/idempotency.js.map +1 -0
  42. package/dist/daemon/index.d.ts +2 -0
  43. package/dist/daemon/index.d.ts.map +1 -1
  44. package/dist/daemon/index.js +1 -0
  45. package/dist/daemon/index.js.map +1 -1
  46. package/dist/daemon/ipc.d.ts +32 -2
  47. package/dist/daemon/ipc.d.ts.map +1 -1
  48. package/dist/daemon/ipc.js +54 -3
  49. package/dist/daemon/ipc.js.map +1 -1
  50. package/dist/daemon/lifecycle.d.ts.map +1 -1
  51. package/dist/daemon/lifecycle.js +302 -8
  52. package/dist/daemon/lifecycle.js.map +1 -1
  53. package/dist/daemon/location-state.d.ts +60 -1
  54. package/dist/daemon/location-state.d.ts.map +1 -1
  55. package/dist/daemon/location-state.js +136 -31
  56. package/dist/daemon/location-state.js.map +1 -1
  57. package/dist/daemon/methods/context-files.d.ts.map +1 -1
  58. package/dist/daemon/methods/context-files.js +4 -3
  59. package/dist/daemon/methods/context-files.js.map +1 -1
  60. package/dist/daemon/methods/events.d.ts +22 -0
  61. package/dist/daemon/methods/events.d.ts.map +1 -0
  62. package/dist/daemon/methods/events.js +30 -0
  63. package/dist/daemon/methods/events.js.map +1 -0
  64. package/dist/daemon/methods/graph.d.ts +7 -0
  65. package/dist/daemon/methods/graph.d.ts.map +1 -1
  66. package/dist/daemon/methods/graph.js +24 -14
  67. package/dist/daemon/methods/graph.js.map +1 -1
  68. package/dist/daemon/methods/lifecycle.d.ts +16 -0
  69. package/dist/daemon/methods/lifecycle.d.ts.map +1 -1
  70. package/dist/daemon/methods/lifecycle.js +3 -1
  71. package/dist/daemon/methods/lifecycle.js.map +1 -1
  72. package/dist/daemon/methods/location.js.map +1 -1
  73. package/dist/daemon/methods/sync.d.ts +113 -0
  74. package/dist/daemon/methods/sync.d.ts.map +1 -0
  75. package/dist/daemon/methods/sync.js +158 -0
  76. package/dist/daemon/methods/sync.js.map +1 -0
  77. package/dist/daemon/methods/tools.d.ts.map +1 -1
  78. package/dist/daemon/methods/tools.js +42 -8
  79. package/dist/daemon/methods/tools.js.map +1 -1
  80. package/dist/daemon/methods/watch.d.ts +24 -0
  81. package/dist/daemon/methods/watch.d.ts.map +1 -1
  82. package/dist/daemon/methods/watch.js +178 -88
  83. package/dist/daemon/methods/watch.js.map +1 -1
  84. package/dist/daemon/sessionlog-watcher.d.ts.map +1 -1
  85. package/dist/daemon/sessionlog-watcher.js +4 -0
  86. package/dist/daemon/sessionlog-watcher.js.map +1 -1
  87. package/dist/graph/EdgeTypeRegistry.d.ts.map +1 -1
  88. package/dist/graph/EdgeTypeRegistry.js +32 -0
  89. package/dist/graph/EdgeTypeRegistry.js.map +1 -1
  90. package/dist/graph/FederatedGraph.d.ts.map +1 -1
  91. package/dist/graph/GraphologyAdapter.d.ts.map +1 -1
  92. package/dist/graph/GraphologyAdapter.js.map +1 -1
  93. package/dist/graph/HydratingFederatedGraph.d.ts.map +1 -1
  94. package/dist/graph/HydratingFederatedGraph.js +1 -1
  95. package/dist/graph/HydratingFederatedGraph.js.map +1 -1
  96. package/dist/graph/attempts.d.ts +50 -0
  97. package/dist/graph/attempts.d.ts.map +1 -0
  98. package/dist/graph/attempts.js +51 -0
  99. package/dist/graph/attempts.js.map +1 -0
  100. package/dist/graph/coordination.d.ts +4 -2
  101. package/dist/graph/coordination.d.ts.map +1 -1
  102. package/dist/graph/coordination.js +77 -85
  103. package/dist/graph/coordination.js.map +1 -1
  104. package/dist/graph/expansion.d.ts.map +1 -1
  105. package/dist/graph/expansion.js +1 -1
  106. package/dist/graph/expansion.js.map +1 -1
  107. package/dist/graph/git-graph-syncer.d.ts +24 -0
  108. package/dist/graph/git-graph-syncer.d.ts.map +1 -1
  109. package/dist/graph/git-graph-syncer.js +111 -26
  110. package/dist/graph/git-graph-syncer.js.map +1 -1
  111. package/dist/graph/provider-store.d.ts +12 -1
  112. package/dist/graph/provider-store.d.ts.map +1 -1
  113. package/dist/graph/provider-store.js +35 -8
  114. package/dist/graph/provider-store.js.map +1 -1
  115. package/dist/graph/query.d.ts.map +1 -1
  116. package/dist/graph/query.js +18 -2
  117. package/dist/graph/query.js.map +1 -1
  118. package/dist/graph/store.d.ts +18 -2
  119. package/dist/graph/store.d.ts.map +1 -1
  120. package/dist/graph/store.js +43 -0
  121. package/dist/graph/store.js.map +1 -1
  122. package/dist/graph/sync.js +1 -1
  123. package/dist/graph/sync.js.map +1 -1
  124. package/dist/graph/types.d.ts +9 -1
  125. package/dist/graph/types.d.ts.map +1 -1
  126. package/dist/graph/types.js.map +1 -1
  127. package/dist/graph/validation.d.ts.map +1 -1
  128. package/dist/graph/validation.js +20 -2
  129. package/dist/graph/validation.js.map +1 -1
  130. package/dist/index.d.ts +3 -1
  131. package/dist/index.d.ts.map +1 -1
  132. package/dist/index.js +5 -1
  133. package/dist/index.js.map +1 -1
  134. package/dist/materialization/archiver.d.ts.map +1 -1
  135. package/dist/materialization/archiver.js.map +1 -1
  136. package/dist/materialization/snapshot.d.ts.map +1 -1
  137. package/dist/materialization/snapshot.js +1 -1
  138. package/dist/materialization/snapshot.js.map +1 -1
  139. package/dist/materialization/types.d.ts +7 -5
  140. package/dist/materialization/types.d.ts.map +1 -1
  141. package/dist/materialization/types.js.map +1 -1
  142. package/dist/mcp/server.d.ts +2 -1
  143. package/dist/mcp/server.d.ts.map +1 -1
  144. package/dist/mcp/server.js +308 -11
  145. package/dist/mcp/server.js.map +1 -1
  146. package/dist/providers/beads.d.ts.map +1 -1
  147. package/dist/providers/beads.js +2 -0
  148. package/dist/providers/beads.js.map +1 -1
  149. package/dist/providers/claude-tasks.d.ts.map +1 -1
  150. package/dist/providers/claude-tasks.js.map +1 -1
  151. package/dist/providers/global.js +1 -1
  152. package/dist/providers/global.js.map +1 -1
  153. package/dist/providers/location.d.ts.map +1 -1
  154. package/dist/providers/location.js.map +1 -1
  155. package/dist/providers/map-client-factory.d.ts.map +1 -1
  156. package/dist/providers/map-client-factory.js +1 -1
  157. package/dist/providers/map-client-factory.js.map +1 -1
  158. package/dist/providers/map-connector.js +1 -1
  159. package/dist/providers/map-connector.js.map +1 -1
  160. package/dist/providers/map-event-bridge.d.ts.map +1 -1
  161. package/dist/providers/map-event-bridge.js +1 -0
  162. package/dist/providers/map-event-bridge.js.map +1 -1
  163. package/dist/providers/map.d.ts.map +1 -1
  164. package/dist/providers/map.js +5 -2
  165. package/dist/providers/map.js.map +1 -1
  166. package/dist/providers/native.d.ts.map +1 -1
  167. package/dist/providers/native.js +21 -8
  168. package/dist/providers/native.js.map +1 -1
  169. package/dist/providers/registry.js +1 -1
  170. package/dist/providers/registry.js.map +1 -1
  171. package/dist/providers/sudocode.d.ts.map +1 -1
  172. package/dist/providers/sudocode.js +5 -11
  173. package/dist/providers/sudocode.js.map +1 -1
  174. package/dist/providers/traits/Reconcilable.d.ts.map +1 -1
  175. package/dist/providers/traits/TaskManageable.d.ts +15 -1
  176. package/dist/providers/traits/TaskManageable.d.ts.map +1 -1
  177. package/dist/providers/traits/TaskManageable.js +26 -0
  178. package/dist/providers/traits/TaskManageable.js.map +1 -1
  179. package/dist/providers/traits/Watchable.d.ts +6 -0
  180. package/dist/providers/traits/Watchable.d.ts.map +1 -1
  181. package/dist/providers/traits/Watchable.js.map +1 -1
  182. package/dist/providers/types.d.ts +1 -1
  183. package/dist/providers/types.d.ts.map +1 -1
  184. package/dist/schema/edges.d.ts +5 -1
  185. package/dist/schema/edges.d.ts.map +1 -1
  186. package/dist/schema/index.d.ts +2 -2
  187. package/dist/schema/index.d.ts.map +1 -1
  188. package/dist/schema/index.js +1 -1
  189. package/dist/schema/index.js.map +1 -1
  190. package/dist/schema/nodes.d.ts +55 -2
  191. package/dist/schema/nodes.d.ts.map +1 -1
  192. package/dist/schema/storage.d.ts +2 -0
  193. package/dist/schema/storage.d.ts.map +1 -1
  194. package/dist/schema/validation.d.ts +6 -2
  195. package/dist/schema/validation.d.ts.map +1 -1
  196. package/dist/schema/validation.js +18 -1
  197. package/dist/schema/validation.js.map +1 -1
  198. package/dist/sessionlog/agent/registry.js.map +1 -1
  199. package/dist/sessionlog/agent/session-types.d.ts.map +1 -1
  200. package/dist/sessionlog/agent/types.d.ts.map +1 -1
  201. package/dist/sessionlog/commands/clean.js +1 -1
  202. package/dist/sessionlog/commands/clean.js.map +1 -1
  203. package/dist/sessionlog/commands/disable.d.ts.map +1 -1
  204. package/dist/sessionlog/commands/disable.js.map +1 -1
  205. package/dist/sessionlog/commands/doctor.js +1 -1
  206. package/dist/sessionlog/commands/doctor.js.map +1 -1
  207. package/dist/sessionlog/commands/enable.js +1 -1
  208. package/dist/sessionlog/commands/enable.js.map +1 -1
  209. package/dist/sessionlog/commands/resume.js +1 -1
  210. package/dist/sessionlog/commands/resume.js.map +1 -1
  211. package/dist/sessionlog/commands/rewind.d.ts.map +1 -1
  212. package/dist/sessionlog/commands/rewind.js +1 -1
  213. package/dist/sessionlog/commands/rewind.js.map +1 -1
  214. package/dist/sessionlog/commands/status.d.ts.map +1 -1
  215. package/dist/sessionlog/commands/status.js.map +1 -1
  216. package/dist/sessionlog/hooks/lifecycle.d.ts.map +1 -1
  217. package/dist/sessionlog/hooks/lifecycle.js +3 -3
  218. package/dist/sessionlog/hooks/lifecycle.js.map +1 -1
  219. package/dist/sessionlog/security/redaction.js +1 -1
  220. package/dist/sessionlog/security/redaction.js.map +1 -1
  221. package/dist/sessionlog/store/checkpoint-store.d.ts.map +1 -1
  222. package/dist/sessionlog/store/checkpoint-store.js +2 -2
  223. package/dist/sessionlog/store/checkpoint-store.js.map +1 -1
  224. package/dist/sessionlog/store/native-store.d.ts.map +1 -1
  225. package/dist/sessionlog/store/native-store.js.map +1 -1
  226. package/dist/sessionlog/store/session-store.d.ts.map +1 -1
  227. package/dist/sessionlog/store/session-store.js +1 -1
  228. package/dist/sessionlog/store/session-store.js.map +1 -1
  229. package/dist/sessionlog/strategy/attribution.js +2 -2
  230. package/dist/sessionlog/strategy/attribution.js.map +1 -1
  231. package/dist/sessionlog/strategy/common.d.ts +1 -1
  232. package/dist/sessionlog/strategy/common.d.ts.map +1 -1
  233. package/dist/sessionlog/strategy/common.js +3 -3
  234. package/dist/sessionlog/strategy/common.js.map +1 -1
  235. package/dist/sessionlog/strategy/content-overlap.d.ts.map +1 -1
  236. package/dist/sessionlog/strategy/content-overlap.js +1 -1
  237. package/dist/sessionlog/strategy/content-overlap.js.map +1 -1
  238. package/dist/sessionlog/strategy/manual-commit.d.ts.map +1 -1
  239. package/dist/sessionlog/strategy/manual-commit.js +6 -16
  240. package/dist/sessionlog/strategy/manual-commit.js.map +1 -1
  241. package/dist/sessionlog/utils/preview-rewind.d.ts.map +1 -1
  242. package/dist/sessionlog/utils/preview-rewind.js +1 -1
  243. package/dist/sessionlog/utils/preview-rewind.js.map +1 -1
  244. package/dist/sessionlog/utils/trailers.d.ts.map +1 -1
  245. package/dist/sessionlog/utils/trailers.js +0 -1
  246. package/dist/sessionlog/utils/trailers.js.map +1 -1
  247. package/dist/storage/interface.d.ts +64 -0
  248. package/dist/storage/interface.d.ts.map +1 -1
  249. package/dist/storage/interface.js.map +1 -1
  250. package/dist/storage/jsonl.js +2 -2
  251. package/dist/storage/jsonl.js.map +1 -1
  252. package/dist/storage/sqlite-schema.d.ts +8 -2
  253. package/dist/storage/sqlite-schema.d.ts.map +1 -1
  254. package/dist/storage/sqlite-schema.js +10 -1
  255. package/dist/storage/sqlite-schema.js.map +1 -1
  256. package/dist/storage/sqlite.d.ts +16 -1
  257. package/dist/storage/sqlite.d.ts.map +1 -1
  258. package/dist/storage/sqlite.js +134 -2
  259. package/dist/storage/sqlite.js.map +1 -1
  260. package/dist/tools/link.js +1 -1
  261. package/dist/tools/link.js.map +1 -1
  262. package/dist/tools/query.d.ts.map +1 -1
  263. package/dist/tools/query.js +8 -29
  264. package/dist/tools/query.js.map +1 -1
  265. package/dist/tools/task.d.ts.map +1 -1
  266. package/dist/tools/task.js +115 -5
  267. package/dist/tools/task.js.map +1 -1
  268. package/dist/tools/types.d.ts +84 -3
  269. package/dist/tools/types.d.ts.map +1 -1
  270. package/dist/tools/types.js.map +1 -1
  271. package/dist/version.d.ts +14 -0
  272. package/dist/version.d.ts.map +1 -0
  273. package/dist/version.js +44 -0
  274. package/dist/version.js.map +1 -0
  275. package/package.json +32 -7
  276. package/skills/opentasks/SKILL.md +226 -0
  277. package/skills/opentasks/dependency-management.md +119 -0
  278. package/skills/opentasks/feedback-and-review.md +100 -0
  279. package/skills/opentasks/linking-external-data.md +103 -0
  280. package/skills/opentasks/spec-to-implementation.md +171 -0
@@ -7,6 +7,7 @@
7
7
  * Operates on the ProviderAwareStore's task methods, which delegate
8
8
  * to TaskManageable providers.
9
9
  */
10
+ import { TASK_ACTIONS } from '../providers/traits/TaskManageable.js';
10
11
  // ============================================================================
11
12
  // Summary Converter
12
13
  // ============================================================================
@@ -39,8 +40,17 @@ function countOperations(params) {
39
40
  count++;
40
41
  if (params.validActions !== undefined)
41
42
  count++;
43
+ if (params.claim !== undefined)
44
+ count++;
45
+ if (params.claimNext !== undefined)
46
+ count++;
47
+ if (params.release !== undefined)
48
+ count++;
49
+ if (params.renew !== undefined)
50
+ count++;
42
51
  return count;
43
52
  }
53
+ const OPERATION_LIST = 'transition, ready, assign, validActions, claim, claimNext, release, renew';
44
54
  // ============================================================================
45
55
  // Task Tool Implementation
46
56
  // ============================================================================
@@ -57,13 +67,13 @@ export async function task(store, params) {
57
67
  if (opCount === 0) {
58
68
  return {
59
69
  success: false,
60
- error: 'No operation specified. Provide one of: transition, ready, assign, validActions',
70
+ error: `No operation specified. Provide one of: ${OPERATION_LIST}`,
61
71
  };
62
72
  }
63
73
  if (opCount > 1) {
64
74
  return {
65
75
  success: false,
66
- error: 'Multiple operations specified. Provide exactly one of: transition, ready, assign, validActions',
76
+ error: `Multiple operations specified. Provide exactly one of: ${OPERATION_LIST}`,
67
77
  };
68
78
  }
69
79
  try {
@@ -79,6 +89,18 @@ export async function task(store, params) {
79
89
  if (params.validActions) {
80
90
  return await handleValidActions(store, params.validActions);
81
91
  }
92
+ if (params.claim) {
93
+ return await handleClaim(store, params.claim);
94
+ }
95
+ if (params.claimNext) {
96
+ return await handleClaimNext(store, params.claimNext);
97
+ }
98
+ if (params.release) {
99
+ return await handleRelease(store, params.release);
100
+ }
101
+ if (params.renew) {
102
+ return await handleRenew(store, params.renew);
103
+ }
82
104
  return { success: false, error: 'Unknown operation' };
83
105
  }
84
106
  catch (error) {
@@ -99,11 +121,10 @@ async function handleTransition(store, params) {
99
121
  if (!action) {
100
122
  return { success: false, error: 'Missing required parameter: action' };
101
123
  }
102
- const validActions = ['start', 'complete', 'block', 'reopen', 'close'];
103
- if (!validActions.includes(action)) {
124
+ if (!TASK_ACTIONS.includes(action)) {
104
125
  return {
105
126
  success: false,
106
- error: `Invalid action: ${action}. Must be one of: ${validActions.join(', ')}`,
127
+ error: `Invalid action: ${action}. Must be one of: ${TASK_ACTIONS.join(', ')}`,
107
128
  };
108
129
  }
109
130
  const result = await store.taskTransition(id, action);
@@ -122,6 +143,7 @@ async function handleReady(store, params) {
122
143
  tags: params.tags,
123
144
  priority: params.priority,
124
145
  assignee: params.assignee,
146
+ excludeClaimed: params.excludeClaimed,
125
147
  });
126
148
  const data = {
127
149
  type: 'ready',
@@ -158,4 +180,92 @@ async function handleValidActions(store, params) {
158
180
  };
159
181
  return { success: true, data };
160
182
  }
183
+ async function handleClaim(store, params) {
184
+ const { id, agentId, durationMs, force } = params;
185
+ if (!id)
186
+ return { success: false, error: 'Missing required parameter: id' };
187
+ if (!agentId)
188
+ return { success: false, error: 'Missing required parameter: agentId' };
189
+ const result = await store.taskClaim(id, agentId, { durationMs, force });
190
+ // A claim blocked by another holder is a normal outcome (claimed=false), not
191
+ // a tool error. A genuine failure (e.g. node not found) has neither a claim
192
+ // nor an existing holder.
193
+ if (!result.success && !result.existingClaim) {
194
+ return { success: false, error: result.error ?? `Cannot claim ${id}` };
195
+ }
196
+ const data = result.success && result.claim
197
+ ? {
198
+ type: 'claim',
199
+ claimed: true,
200
+ nodeId: id,
201
+ agentId,
202
+ fence: result.claim.fence,
203
+ lockUntil: result.claim.lockUntil,
204
+ }
205
+ : {
206
+ type: 'claim',
207
+ claimed: false,
208
+ nodeId: id,
209
+ agentId,
210
+ reason: result.error,
211
+ existingClaim: result.existingClaim
212
+ ? { agentId: result.existingClaim.agentId, lockUntil: result.existingClaim.lockUntil }
213
+ : undefined,
214
+ };
215
+ return { success: true, data };
216
+ }
217
+ async function handleClaimNext(store, params) {
218
+ const { agentId, durationMs } = params;
219
+ if (!agentId)
220
+ return { success: false, error: 'Missing required parameter: agentId' };
221
+ const result = await store.taskClaimNext(agentId, { durationMs });
222
+ if (!result || !result.claim) {
223
+ const data = { type: 'claimNext', claimed: false, agentId };
224
+ return { success: true, data };
225
+ }
226
+ const data = {
227
+ type: 'claimNext',
228
+ claimed: true,
229
+ nodeId: result.claim.nodeId,
230
+ agentId,
231
+ fence: result.claim.fence,
232
+ lockUntil: result.claim.lockUntil,
233
+ };
234
+ return { success: true, data };
235
+ }
236
+ async function handleRelease(store, params) {
237
+ const { id, agentId, fence } = params;
238
+ if (!id)
239
+ return { success: false, error: 'Missing required parameter: id' };
240
+ if (!agentId)
241
+ return { success: false, error: 'Missing required parameter: agentId' };
242
+ const released = await store.taskRelease(id, agentId, fence);
243
+ const data = { type: 'release', released, nodeId: id };
244
+ return { success: true, data };
245
+ }
246
+ async function handleRenew(store, params) {
247
+ const { id, agentId, durationMs, fence } = params;
248
+ if (!id)
249
+ return { success: false, error: 'Missing required parameter: id' };
250
+ if (!agentId)
251
+ return { success: false, error: 'Missing required parameter: agentId' };
252
+ const result = await store.taskRenew(id, agentId, durationMs, fence);
253
+ const data = result.success && result.claim
254
+ ? {
255
+ type: 'renew',
256
+ claimed: true,
257
+ nodeId: id,
258
+ agentId,
259
+ fence: result.claim.fence,
260
+ lockUntil: result.claim.lockUntil,
261
+ }
262
+ : {
263
+ type: 'renew',
264
+ claimed: false,
265
+ nodeId: id,
266
+ agentId,
267
+ reason: result.error,
268
+ };
269
+ return { success: true, data };
270
+ }
161
271
  //# sourceMappingURL=task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/tools/task.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  import type { Node, Edge, EdgeType, NodeType } from '../schema/index.js';
7
7
  import type { NodeFilter, EdgeFilter, ReadyOptions, BlockerOptions, FeedbackOptions } from '../graph/types.js';
8
8
  import type { OperationContext } from '../graph/coordination.js';
9
+ import type { TaskAction } from '../providers/traits/TaskManageable.js';
9
10
  export type { EdgeType, NodeType, Node, Edge };
10
11
  export type { NodeFilter, EdgeFilter, ReadyOptions, BlockerOptions, FeedbackOptions };
11
12
  export type { OperationContext };
@@ -241,8 +242,8 @@ export interface TaskParams {
241
242
  transition?: {
242
243
  /** Task ID or provider URI */
243
244
  id: string;
244
- /** Semantic action: 'start' | 'complete' | 'block' | 'reopen' | 'close' */
245
- action: 'start' | 'complete' | 'block' | 'reopen' | 'close';
245
+ /** Semantic action. `fail`/`abandon` are terminal outcomes distinct from `close`/`complete`. */
246
+ action: TaskAction;
246
247
  };
247
248
  /** Get tasks that are ready to work on (no active blockers) */
248
249
  ready?: {
@@ -256,6 +257,12 @@ export interface TaskParams {
256
257
  priority?: number;
257
258
  /** Filter by assignee */
258
259
  assignee?: string;
260
+ /**
261
+ * Exclude tasks under a live claim (a non-expired lease). Off by default —
262
+ * a claim is a lease, not a status change. Set this when dispatching tasks
263
+ * directly off `ready` without going through claim/claimNext.
264
+ */
265
+ excludeClaimed?: boolean;
259
266
  };
260
267
  /** Assign a task to an owner */
261
268
  assign?: {
@@ -269,6 +276,44 @@ export interface TaskParams {
269
276
  /** Task ID or provider URI */
270
277
  id: string;
271
278
  };
279
+ /** Atomically claim a task for an agent (lease-based, race-free) */
280
+ claim?: {
281
+ /** Task ID or provider URI (native tasks only) */
282
+ id: string;
283
+ /** Agent acquiring the claim */
284
+ agentId: string;
285
+ /** Lease duration in ms (default: 30 min) */
286
+ durationMs?: number;
287
+ /** Claim even if held by another, unexpired agent */
288
+ force?: boolean;
289
+ };
290
+ /** Atomically claim the next ready, unclaimed task for an agent */
291
+ claimNext?: {
292
+ /** Agent acquiring the claim */
293
+ agentId: string;
294
+ /** Lease duration in ms (default: 30 min) */
295
+ durationMs?: number;
296
+ };
297
+ /** Release a claim (fenced) */
298
+ release?: {
299
+ /** Task ID or provider URI (native tasks only) */
300
+ id: string;
301
+ /** Agent that holds the claim */
302
+ agentId: string;
303
+ /** Fence token from the claim — rejects a stale/superseded release */
304
+ fence?: number;
305
+ };
306
+ /** Renew/extend a claim's lease (fenced) */
307
+ renew?: {
308
+ /** Task ID or provider URI (native tasks only) */
309
+ id: string;
310
+ /** Agent that holds the claim */
311
+ agentId: string;
312
+ /** New lease duration in ms (default: 30 min) */
313
+ durationMs?: number;
314
+ /** Fence token from the claim — rejects a stale/superseded renew */
315
+ fence?: number;
316
+ };
272
317
  /** Return full objects instead of summaries (default: false) */
273
318
  verbose?: boolean;
274
319
  }
@@ -279,7 +324,7 @@ export interface TaskResult {
279
324
  /** Whether the operation succeeded */
280
325
  success: boolean;
281
326
  /** Result data (shape depends on operation) */
282
- data?: TaskTransitionData | TaskReadyData | TaskAssignData | TaskValidActionsData;
327
+ data?: TaskTransitionData | TaskReadyData | TaskAssignData | TaskValidActionsData | TaskClaimData | TaskReleaseData;
283
328
  /** Error message if operation failed */
284
329
  error?: string;
285
330
  }
@@ -323,6 +368,42 @@ export interface TaskValidActionsData {
323
368
  /** Valid actions for the task's current state */
324
369
  actions: string[];
325
370
  }
371
+ /**
372
+ * Result data for a claim / renew / claimNext operation.
373
+ *
374
+ * `claimed` distinguishes "acquired" from "blocked by another holder" — both
375
+ * are successful tool results (a blocked claim is a normal outcome, not an error).
376
+ */
377
+ export interface TaskClaimData {
378
+ type: 'claim' | 'renew' | 'claimNext';
379
+ /** Whether the claim was acquired/renewed */
380
+ claimed: boolean;
381
+ /** The claimed task ID (omitted when claimNext found nothing to claim) */
382
+ nodeId?: string;
383
+ /** Agent that requested the claim */
384
+ agentId: string;
385
+ /** Fence token for the claim — pass to release/renew (present when claimed) */
386
+ fence?: number;
387
+ /** When the lease expires (ISO 8601, present when claimed) */
388
+ lockUntil?: string;
389
+ /** Reason the claim was not acquired (when claimed=false) */
390
+ reason?: string;
391
+ /** Existing holder that blocked the claim (when claimed=false) */
392
+ existingClaim?: {
393
+ agentId: string;
394
+ lockUntil?: string;
395
+ };
396
+ }
397
+ /**
398
+ * Result data for a release operation.
399
+ */
400
+ export interface TaskReleaseData {
401
+ type: 'release';
402
+ /** Whether the claim was released */
403
+ released: boolean;
404
+ /** The task ID */
405
+ nodeId: string;
406
+ }
326
407
  /**
327
408
  * Parameters for querying context summaries (breadcrumbs for future sessions)
328
409
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAogBH;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IAEhB;IAEA;IAHlB,YACkB,IAAmB,EACnC,OAAe,EACC,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,SAAI,GAAJ,IAAI,CAAe;QAEnB,YAAO,GAAP,OAAO,CAA0B;QAGjD,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8lBH;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IAEhB;IAEA;IAHlB,YACkB,IAAmB,EACnC,OAAe,EACC,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,SAAI,GAAJ,IAAI,CAAe;QAEnB,YAAO,GAAP,OAAO,CAA0B;QAGjD,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Single source of truth for the package version.
3
+ *
4
+ * Reads `version` from the nearest `opentasks` package.json by walking up from
5
+ * this module's location. Works in both the compiled layout (`dist/version.js`
6
+ * → `../package.json`) and when running from source under vitest
7
+ * (`src/version.ts` → `../package.json`), as well as when installed under
8
+ * `node_modules/opentasks/`.
9
+ *
10
+ * Do NOT hardcode version strings anywhere else — import `VERSION` from here.
11
+ */
12
+ /** The current opentasks package version (e.g. "0.1.3"). */
13
+ export declare const VERSION: string;
14
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAiCH,4DAA4D;AAC5D,eAAO,MAAM,OAAO,QAAmB,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Single source of truth for the package version.
3
+ *
4
+ * Reads `version` from the nearest `opentasks` package.json by walking up from
5
+ * this module's location. Works in both the compiled layout (`dist/version.js`
6
+ * → `../package.json`) and when running from source under vitest
7
+ * (`src/version.ts` → `../package.json`), as well as when installed under
8
+ * `node_modules/opentasks/`.
9
+ *
10
+ * Do NOT hardcode version strings anywhere else — import `VERSION` from here.
11
+ */
12
+ import { readFileSync } from 'node:fs';
13
+ import { fileURLToPath } from 'node:url';
14
+ import { dirname, join } from 'node:path';
15
+ function resolveVersion() {
16
+ let dir;
17
+ try {
18
+ dir = dirname(fileURLToPath(import.meta.url));
19
+ }
20
+ catch {
21
+ return '0.0.0';
22
+ }
23
+ // Walk up looking for our own package.json. The name guard prevents picking
24
+ // up a dependency's manifest if the directory layout is unexpected.
25
+ for (let i = 0; i < 6; i++) {
26
+ try {
27
+ const pkg = JSON.parse(readFileSync(join(dir, 'package.json'), 'utf-8'));
28
+ if (pkg?.name === 'opentasks' && typeof pkg.version === 'string') {
29
+ return pkg.version;
30
+ }
31
+ }
32
+ catch {
33
+ // No package.json here (or unreadable) — keep walking up.
34
+ }
35
+ const parent = dirname(dir);
36
+ if (parent === dir)
37
+ break;
38
+ dir = parent;
39
+ }
40
+ return '0.0.0';
41
+ }
42
+ /** The current opentasks package version (e.g. "0.1.3"). */
43
+ export const VERSION = resolveVersion();
44
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,SAAS,cAAc;IACrB,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,4EAA4E;IAC5E,oEAAoE;IACpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACzE,IAAI,GAAG,EAAE,IAAI,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjE,OAAO,GAAG,CAAC,OAAO,CAAC;YACrB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,4DAA4D;AAC5D,MAAM,CAAC,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "opentasks",
3
- "version": "0.1.2",
4
- "description": "Universal task graph data structure",
3
+ "version": "0.2.0",
4
+ "description": "Cross-system task graph that links Claude Tasks, Beads, and other task systems via a shared edge layer — with a CLI, a local daemon, and an MCP server.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
@@ -13,20 +13,31 @@
13
13
  ".": {
14
14
  "types": "./dist/index.d.ts",
15
15
  "import": "./dist/index.js"
16
+ },
17
+ "./client": {
18
+ "types": "./dist/client/index.d.ts",
19
+ "import": "./dist/client/index.js"
16
20
  }
17
21
  },
18
22
  "files": [
19
- "dist"
23
+ "dist",
24
+ "skills"
20
25
  ],
21
26
  "scripts": {
22
- "build": "tsc",
27
+ "clean": "rm -rf dist",
28
+ "build": "npm run clean && tsc",
23
29
  "test": "vitest run",
24
30
  "test:watch": "vitest",
25
31
  "test:slow": "RUN_SLOW_TESTS=1 vitest run",
26
32
  "test:slow:watch": "RUN_SLOW_TESTS=1 vitest",
27
33
  "test:e2e": "RUN_FULL_AGENT_TESTS=1 vitest run --config vitest.e2e.config.ts",
34
+ "eval:tac": "npx tsx evals/tac/run.ts",
35
+ "eval:tac:pool": "npx tsx evals/tac/run-pool.ts",
36
+ "eval:tac:pool:summarize": "npx tsx evals/tac/scripts/summarize-pool-runs.ts",
37
+ "eval:tac:pool:bake-ami": "evals/tac/scripts/bake-ec2-ami.sh",
38
+ "eval:tac:pool:bake-docker-snapshot": "evals/tac/scripts/bake-docker-volume-snapshot.sh",
28
39
  "test:all": "npm run test && npm run test:slow && npm run test:e2e",
29
- "prepublishOnly": "npm run build",
40
+ "prepublishOnly": "npm run build && publint",
30
41
  "version:patch": "npm version patch && git push && git push --tags",
31
42
  "version:minor": "npm version minor && git push && git push --tags",
32
43
  "version:major": "npm version major && git push && git push --tags",
@@ -40,7 +51,16 @@
40
51
  "keywords": [
41
52
  "tasks",
42
53
  "todo",
43
- "task-management"
54
+ "task-management",
55
+ "task-graph",
56
+ "graph",
57
+ "dependencies",
58
+ "cross-system",
59
+ "mcp",
60
+ "agents",
61
+ "agent-tools",
62
+ "claude",
63
+ "beads"
44
64
  ],
45
65
  "author": "Alex Ngai",
46
66
  "license": "MIT",
@@ -51,11 +71,14 @@
51
71
  "@types/node": "^25.0.10",
52
72
  "@types/proper-lockfile": "^4.1.4",
53
73
  "acp-factory": "^0.1.12",
74
+ "e2b": "^2.30.2",
54
75
  "eslint": "^9.39.2",
55
76
  "eslint-config-prettier": "^10.1.8",
56
77
  "husky": "^9.1.7",
57
78
  "lint-staged": "^15.5.2",
58
79
  "prettier": "^3.8.1",
80
+ "publint": "^0.3.21",
81
+ "swarmkit-eval": "^0.0.7",
59
82
  "typescript": "^5.3.0",
60
83
  "typescript-eslint": "^8.55.0",
61
84
  "vitest": "^4.0.18"
@@ -67,9 +90,11 @@
67
90
  "type": "git",
68
91
  "url": "git+https://github.com/alexngai/opentasks.git"
69
92
  },
93
+ "optionalDependencies": {
94
+ "@multi-agent-protocol/sdk": "^0.1.9"
95
+ },
70
96
  "dependencies": {
71
97
  "@modelcontextprotocol/sdk": "^1.27.1",
72
- "@multi-agent-protocol/sdk": "^0.1.9",
73
98
  "agent-session-parser": "^0.1.0",
74
99
  "better-sqlite3": "^12.6.2",
75
100
  "chokidar": "^5.0.0",