crewly 1.20.152 → 1.20.154

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 (804) hide show
  1. package/README.md +21 -3
  2. package/config/constants.ts +78 -0
  3. package/config/hooks/agent-status/report.sh +78 -0
  4. package/config/hooks/control-plane-guard/pretooluse-bash.sh +241 -0
  5. package/config/orchestrator_tasks/prompts/assign-task-orchestrator-prompt-template.md +19 -49
  6. package/config/orchestrator_tasks/prompts/checkin-orchestrator-prompt-template.md +25 -125
  7. package/config/orchestrator_tasks/prompts/project-start-orchestrator-prompt-template.md +29 -100
  8. package/config/roles/orchestrator/prompt.md +25 -2
  9. package/config/roles/team-leader/prompt.md +19 -3
  10. package/config/roles/team-leader/role.json +1 -1
  11. package/config/roles/team-leader/tl-addon.md +12 -3
  12. package/config/skills/agent/core/complete-task/SKILL.md +1 -1
  13. package/config/skills/agent/core/project-tickets/SKILL.md +127 -0
  14. package/config/skills/agent/core/project-tickets/execute.sh +182 -0
  15. package/config/skills/agent/core/project-tickets/execute.test.sh +116 -0
  16. package/config/skills/agent/core/recall/SKILL.md +1 -1
  17. package/config/skills/agent/core/recall/execute.sh +7 -0
  18. package/config/skills/agent/core/report-status/SKILL.md +3 -2
  19. package/config/skills/agent/core/report-status/execute.sh +37 -15
  20. package/config/skills/agent/core/split-ticket/SKILL.md +62 -0
  21. package/config/skills/agent/core/split-ticket/execute.sh +87 -0
  22. package/config/skills/agent/core/split-ticket/execute.test.sh +77 -0
  23. package/config/skills/agent/core/standing-update/SKILL.md +96 -0
  24. package/config/skills/agent/core/standing-update/execute.sh +107 -0
  25. package/config/skills/agent/onboarding/materialize-team/SKILL.md +1 -1
  26. package/config/skills/agent/onboarding/recommend-team/SKILL.md +1 -1
  27. package/config/skills/orchestrator/delegate-task/SKILL.md +4 -3
  28. package/config/skills/orchestrator/render-verdict/SKILL.md +62 -0
  29. package/config/skills/orchestrator/render-verdict/execute.sh +47 -0
  30. package/config/skills/orchestrator/render-verdict/execute.test.sh +121 -0
  31. package/config/skills/orchestrator/wiki-migrate/SKILL.md +0 -1
  32. package/config/skills/team-leader/aggregate-results/SKILL.md +1 -1
  33. package/config/skills/team-leader/assign-ticket/SKILL.md +47 -0
  34. package/config/skills/team-leader/assign-ticket/execute.sh +59 -0
  35. package/config/skills/team-leader/assign-ticket/execute.test.sh +64 -0
  36. package/config/skills/team-leader/decompose-goal/SKILL.md +4 -4
  37. package/config/skills/team-leader/delegate-task/SKILL.md +1 -1
  38. package/config/skills/team-leader/verify-output/SKILL.md +2 -2
  39. package/config/sops/developer/git-workflow.md +2 -1
  40. package/dist/backend/backend/src/constants.d.ts +451 -1
  41. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  42. package/dist/backend/backend/src/constants.js +442 -2
  43. package/dist/backend/backend/src/constants.js.map +1 -1
  44. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.d.ts +27 -0
  45. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.d.ts.map +1 -0
  46. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js +55 -0
  47. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.controller.js.map +1 -0
  48. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.routes.d.ts +13 -0
  49. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.routes.d.ts.map +1 -0
  50. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.routes.js +19 -0
  51. package/dist/backend/backend/src/controllers/agent-hooks/agent-hooks.routes.js.map +1 -0
  52. package/dist/backend/backend/src/controllers/api.controller.d.ts +0 -12
  53. package/dist/backend/backend/src/controllers/api.controller.d.ts.map +1 -1
  54. package/dist/backend/backend/src/controllers/api.controller.js +0 -44
  55. package/dist/backend/backend/src/controllers/api.controller.js.map +1 -1
  56. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts +27 -5
  57. package/dist/backend/backend/src/controllers/approvals/approvals.controller.d.ts.map +1 -1
  58. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js +55 -15
  59. package/dist/backend/backend/src/controllers/approvals/approvals.controller.js.map +1 -1
  60. package/dist/backend/backend/src/controllers/approvals/approvals.routes.d.ts.map +1 -1
  61. package/dist/backend/backend/src/controllers/approvals/approvals.routes.js +2 -0
  62. package/dist/backend/backend/src/controllers/approvals/approvals.routes.js.map +1 -1
  63. package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts +13 -0
  64. package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts.map +1 -1
  65. package/dist/backend/backend/src/controllers/expert/expert.controller.js +67 -9
  66. package/dist/backend/backend/src/controllers/expert/expert.controller.js.map +1 -1
  67. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.d.ts +41 -0
  68. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.d.ts.map +1 -0
  69. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.js +146 -0
  70. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.controller.js.map +1 -0
  71. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.routes.d.ts +20 -0
  72. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.routes.d.ts.map +1 -0
  73. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.routes.js +29 -0
  74. package/dist/backend/backend/src/controllers/owner-receipt/owner-receipt.routes.js.map +1 -0
  75. package/dist/backend/backend/src/controllers/project/project.controller.d.ts +2 -2
  76. package/dist/backend/backend/src/controllers/project/project.controller.d.ts.map +1 -1
  77. package/dist/backend/backend/src/controllers/project/project.controller.js +24 -7
  78. package/dist/backend/backend/src/controllers/project/project.controller.js.map +1 -1
  79. package/dist/backend/backend/src/controllers/project/project.routes.d.ts +2 -2
  80. package/dist/backend/backend/src/controllers/project/project.routes.d.ts.map +1 -1
  81. package/dist/backend/backend/src/controllers/project/project.routes.js +3 -36
  82. package/dist/backend/backend/src/controllers/project/project.routes.js.map +1 -1
  83. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts +93 -0
  84. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.d.ts.map +1 -0
  85. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js +252 -0
  86. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.controller.js.map +1 -0
  87. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.d.ts +34 -0
  88. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.d.ts.map +1 -0
  89. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.js +51 -0
  90. package/dist/backend/backend/src/controllers/project-tickets/project-tickets.routes.js.map +1 -0
  91. package/dist/backend/backend/src/controllers/request-types.d.ts +13 -0
  92. package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
  93. package/dist/backend/backend/src/controllers/standing/standing.controller.d.ts +49 -0
  94. package/dist/backend/backend/src/controllers/standing/standing.controller.d.ts.map +1 -0
  95. package/dist/backend/backend/src/controllers/standing/standing.controller.js +100 -0
  96. package/dist/backend/backend/src/controllers/standing/standing.controller.js.map +1 -0
  97. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +38 -0
  98. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
  99. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +143 -8
  100. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
  101. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts.map +1 -1
  102. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js +6 -1
  103. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js.map +1 -1
  104. package/dist/backend/backend/src/controllers/team/team.controller.d.ts +2 -0
  105. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  106. package/dist/backend/backend/src/controllers/team/team.controller.js +26 -6
  107. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  108. package/dist/backend/backend/src/controllers/tickets/tickets.controller.d.ts +18 -0
  109. package/dist/backend/backend/src/controllers/tickets/tickets.controller.d.ts.map +1 -1
  110. package/dist/backend/backend/src/controllers/tickets/tickets.controller.js +56 -0
  111. package/dist/backend/backend/src/controllers/tickets/tickets.controller.js.map +1 -1
  112. package/dist/backend/backend/src/controllers/tickets/tickets.routes.d.ts +1 -0
  113. package/dist/backend/backend/src/controllers/tickets/tickets.routes.d.ts.map +1 -1
  114. package/dist/backend/backend/src/controllers/tickets/tickets.routes.js +3 -1
  115. package/dist/backend/backend/src/controllers/tickets/tickets.routes.js.map +1 -1
  116. package/dist/backend/backend/src/controllers/types.d.ts +1 -2
  117. package/dist/backend/backend/src/controllers/types.d.ts.map +1 -1
  118. package/dist/backend/backend/src/controllers/wiki/wiki.controller.d.ts +2 -3
  119. package/dist/backend/backend/src/controllers/wiki/wiki.controller.d.ts.map +1 -1
  120. package/dist/backend/backend/src/controllers/wiki/wiki.controller.js +2 -3
  121. package/dist/backend/backend/src/controllers/wiki/wiki.controller.js.map +1 -1
  122. package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.d.ts +29 -0
  123. package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.d.ts.map +1 -0
  124. package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.js +63 -0
  125. package/dist/backend/backend/src/controllers/worktree-janitor/worktree-janitor.routes.js.map +1 -0
  126. package/dist/backend/backend/src/index.d.ts +7 -0
  127. package/dist/backend/backend/src/index.d.ts.map +1 -1
  128. package/dist/backend/backend/src/index.js +214 -9
  129. package/dist/backend/backend/src/index.js.map +1 -1
  130. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts +29 -0
  131. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts.map +1 -1
  132. package/dist/backend/backend/src/middleware/api-token.middleware.js +38 -0
  133. package/dist/backend/backend/src/middleware/api-token.middleware.js.map +1 -1
  134. package/dist/backend/backend/src/models/index.d.ts +0 -1
  135. package/dist/backend/backend/src/models/index.d.ts.map +1 -1
  136. package/dist/backend/backend/src/models/index.js +0 -1
  137. package/dist/backend/backend/src/models/index.js.map +1 -1
  138. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  139. package/dist/backend/backend/src/routes/api.routes.js +27 -3
  140. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  141. package/dist/backend/backend/src/scripts/leaked-stub-teams.lib.d.ts +6 -2
  142. package/dist/backend/backend/src/scripts/leaked-stub-teams.lib.d.ts.map +1 -1
  143. package/dist/backend/backend/src/scripts/leaked-stub-teams.lib.js +6 -2
  144. package/dist/backend/backend/src/scripts/leaked-stub-teams.lib.js.map +1 -1
  145. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +28 -1
  146. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  147. package/dist/backend/backend/src/services/agent/agent-registration.service.js +93 -34
  148. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  149. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts +169 -0
  150. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -0
  151. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js +231 -0
  152. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js.map +1 -0
  153. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts +1 -1
  154. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  155. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +9 -0
  156. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  157. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts +16 -0
  158. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  159. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +50 -0
  160. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  161. package/dist/backend/backend/src/services/agent/tmux-command.service.d.ts +9 -1
  162. package/dist/backend/backend/src/services/agent/tmux-command.service.d.ts.map +1 -1
  163. package/dist/backend/backend/src/services/agent/tmux-command.service.js +12 -2
  164. package/dist/backend/backend/src/services/agent/tmux-command.service.js.map +1 -1
  165. package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  166. package/dist/backend/backend/src/services/ai/prompt-builder.service.js +9 -8
  167. package/dist/backend/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  168. package/dist/backend/backend/src/services/ai/prompt-modules/active-work.module.d.ts +75 -0
  169. package/dist/backend/backend/src/services/ai/prompt-modules/active-work.module.d.ts.map +1 -0
  170. package/dist/backend/backend/src/services/ai/prompt-modules/active-work.module.js +89 -0
  171. package/dist/backend/backend/src/services/ai/prompt-modules/active-work.module.js.map +1 -0
  172. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts +18 -3
  173. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts.map +1 -1
  174. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.js +28 -4
  175. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.js.map +1 -1
  176. package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts +3 -0
  177. package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts.map +1 -1
  178. package/dist/backend/backend/src/services/ai/prompt-modules/index.js +3 -0
  179. package/dist/backend/backend/src/services/ai/prompt-modules/index.js.map +1 -1
  180. package/dist/backend/backend/src/services/ai/prompt-modules/project-reference.module.js +1 -1
  181. package/dist/backend/backend/src/services/ai/prompt-modules/project-reference.module.js.map +1 -1
  182. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
  183. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +12 -0
  184. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
  185. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +14 -0
  186. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  187. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  188. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
  189. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js +11 -7
  190. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
  191. package/dist/backend/backend/src/services/ai/prompt-modules/session-briefing.module.d.ts +41 -0
  192. package/dist/backend/backend/src/services/ai/prompt-modules/session-briefing.module.d.ts.map +1 -0
  193. package/dist/backend/backend/src/services/ai/prompt-modules/session-briefing.module.js +44 -0
  194. package/dist/backend/backend/src/services/ai/prompt-modules/session-briefing.module.js.map +1 -0
  195. package/dist/backend/backend/src/services/ai/prompt-modules/standing-answers.module.d.ts +67 -0
  196. package/dist/backend/backend/src/services/ai/prompt-modules/standing-answers.module.d.ts.map +1 -0
  197. package/dist/backend/backend/src/services/ai/prompt-modules/standing-answers.module.js +146 -0
  198. package/dist/backend/backend/src/services/ai/prompt-modules/standing-answers.module.js.map +1 -0
  199. package/dist/backend/backend/src/services/ai/prompt-template.service.d.ts.map +1 -1
  200. package/dist/backend/backend/src/services/ai/prompt-template.service.js +9 -7
  201. package/dist/backend/backend/src/services/ai/prompt-template.service.js.map +1 -1
  202. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts +1 -1
  203. package/dist/backend/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  204. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js +1 -0
  205. package/dist/backend/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  206. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
  207. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +7 -0
  208. package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
  209. package/dist/backend/backend/src/services/cloud/waiting-actions-inbound.service.d.ts +128 -0
  210. package/dist/backend/backend/src/services/cloud/waiting-actions-inbound.service.d.ts.map +1 -0
  211. package/dist/backend/backend/src/services/cloud/waiting-actions-inbound.service.js +279 -0
  212. package/dist/backend/backend/src/services/cloud/waiting-actions-inbound.service.js.map +1 -0
  213. package/dist/backend/backend/src/services/cloud/waiting-items-sync.service.d.ts +122 -0
  214. package/dist/backend/backend/src/services/cloud/waiting-items-sync.service.d.ts.map +1 -0
  215. package/dist/backend/backend/src/services/cloud/waiting-items-sync.service.js +261 -0
  216. package/dist/backend/backend/src/services/cloud/waiting-items-sync.service.js.map +1 -0
  217. package/dist/backend/backend/src/services/cloud/waiting-items.contract.d.ts +101 -0
  218. package/dist/backend/backend/src/services/cloud/waiting-items.contract.d.ts.map +1 -0
  219. package/dist/backend/backend/src/services/cloud/waiting-items.contract.js +113 -0
  220. package/dist/backend/backend/src/services/cloud/waiting-items.contract.js.map +1 -0
  221. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.d.ts +7 -0
  222. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.d.ts.map +1 -1
  223. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.js +9 -1
  224. package/dist/backend/backend/src/services/continuation/patterns/waiting-patterns.js.map +1 -1
  225. package/dist/backend/backend/src/services/core/logger.service.d.ts +21 -0
  226. package/dist/backend/backend/src/services/core/logger.service.d.ts.map +1 -1
  227. package/dist/backend/backend/src/services/core/logger.service.js +42 -4
  228. package/dist/backend/backend/src/services/core/logger.service.js.map +1 -1
  229. package/dist/backend/backend/src/services/core/storage.service.d.ts +1 -5
  230. package/dist/backend/backend/src/services/core/storage.service.d.ts.map +1 -1
  231. package/dist/backend/backend/src/services/core/storage.service.js +5 -162
  232. package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
  233. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts.map +1 -1
  234. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js +15 -9
  235. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js.map +1 -1
  236. package/dist/backend/backend/src/services/index.d.ts +0 -4
  237. package/dist/backend/backend/src/services/index.d.ts.map +1 -1
  238. package/dist/backend/backend/src/services/index.js +0 -4
  239. package/dist/backend/backend/src/services/index.js.map +1 -1
  240. package/dist/backend/backend/src/services/intent-task/intent-task.service.d.ts +1 -1
  241. package/dist/backend/backend/src/services/intent-task/intent-task.service.js +1 -1
  242. package/dist/backend/backend/src/services/mcp-server.d.ts +19 -6
  243. package/dist/backend/backend/src/services/mcp-server.d.ts.map +1 -1
  244. package/dist/backend/backend/src/services/mcp-server.js +46 -16
  245. package/dist/backend/backend/src/services/mcp-server.js.map +1 -1
  246. package/dist/backend/backend/src/services/mcp-tool-definitions.d.ts.map +1 -1
  247. package/dist/backend/backend/src/services/mcp-tool-definitions.js +3 -2
  248. package/dist/backend/backend/src/services/mcp-tool-definitions.js.map +1 -1
  249. package/dist/backend/backend/src/services/memory/standing-answers.service.d.ts +247 -0
  250. package/dist/backend/backend/src/services/memory/standing-answers.service.d.ts.map +1 -0
  251. package/dist/backend/backend/src/services/memory/standing-answers.service.js +534 -0
  252. package/dist/backend/backend/src/services/memory/standing-answers.service.js.map +1 -0
  253. package/dist/backend/backend/src/services/memory/standing-refresh.service.d.ts +104 -0
  254. package/dist/backend/backend/src/services/memory/standing-refresh.service.d.ts.map +1 -0
  255. package/dist/backend/backend/src/services/memory/standing-refresh.service.js +218 -0
  256. package/dist/backend/backend/src/services/memory/standing-refresh.service.js.map +1 -0
  257. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts +35 -0
  258. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  259. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +99 -1
  260. package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  261. package/dist/backend/backend/src/services/monitoring/agent-attention-registry.d.ts +75 -0
  262. package/dist/backend/backend/src/services/monitoring/agent-attention-registry.d.ts.map +1 -0
  263. package/dist/backend/backend/src/services/monitoring/agent-attention-registry.js +80 -0
  264. package/dist/backend/backend/src/services/monitoring/agent-attention-registry.js.map +1 -0
  265. package/dist/backend/backend/src/services/monitoring/agent-attention.d.ts +114 -0
  266. package/dist/backend/backend/src/services/monitoring/agent-attention.d.ts.map +1 -0
  267. package/dist/backend/backend/src/services/monitoring/agent-attention.js +165 -0
  268. package/dist/backend/backend/src/services/monitoring/agent-attention.js.map +1 -0
  269. package/dist/backend/backend/src/services/monitoring/agent-hook-state.d.ts +76 -0
  270. package/dist/backend/backend/src/services/monitoring/agent-hook-state.d.ts.map +1 -0
  271. package/dist/backend/backend/src/services/monitoring/agent-hook-state.js +96 -0
  272. package/dist/backend/backend/src/services/monitoring/agent-hook-state.js.map +1 -0
  273. package/dist/backend/backend/src/services/orchestrator/onboarding/materialize-team.js +1 -1
  274. package/dist/backend/backend/src/services/orchestrator/onboarding/recommend-team.d.ts +1 -1
  275. package/dist/backend/backend/src/services/orchestrator/onboarding/recommend-team.d.ts.map +1 -1
  276. package/dist/backend/backend/src/services/orchestrator/onboarding/recommend-team.js +13 -3
  277. package/dist/backend/backend/src/services/orchestrator/onboarding/recommend-team.js.map +1 -1
  278. package/dist/backend/backend/src/services/orchestrator/prompts/onboarding-mode.prompt.d.ts.map +1 -1
  279. package/dist/backend/backend/src/services/orchestrator/prompts/onboarding-mode.prompt.js +0 -4
  280. package/dist/backend/backend/src/services/orchestrator/prompts/onboarding-mode.prompt.js.map +1 -1
  281. package/dist/backend/backend/src/services/project/project-search.service.d.ts +22 -16
  282. package/dist/backend/backend/src/services/project/project-search.service.d.ts.map +1 -1
  283. package/dist/backend/backend/src/services/project/project-search.service.js +30 -53
  284. package/dist/backend/backend/src/services/project/project-search.service.js.map +1 -1
  285. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.d.ts +381 -0
  286. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.d.ts.map +1 -0
  287. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js +839 -0
  288. package/dist/backend/backend/src/services/project-tickets/project-ticket-workflow.service.js.map +1 -0
  289. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.d.ts +214 -0
  290. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.d.ts.map +1 -0
  291. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.js +466 -0
  292. package/dist/backend/backend/src/services/project-tickets/project-ticket.service.js.map +1 -0
  293. package/dist/backend/backend/src/services/project-tickets/ticket-file.d.ts +121 -0
  294. package/dist/backend/backend/src/services/project-tickets/ticket-file.d.ts.map +1 -0
  295. package/dist/backend/backend/src/services/project-tickets/ticket-file.js +468 -0
  296. package/dist/backend/backend/src/services/project-tickets/ticket-file.js.map +1 -0
  297. package/dist/backend/backend/src/services/project-tickets/ticket-folder-lock.d.ts +69 -0
  298. package/dist/backend/backend/src/services/project-tickets/ticket-folder-lock.d.ts.map +1 -0
  299. package/dist/backend/backend/src/services/project-tickets/ticket-folder-lock.js +194 -0
  300. package/dist/backend/backend/src/services/project-tickets/ticket-folder-lock.js.map +1 -0
  301. package/dist/backend/backend/src/services/project-tickets/ticket-tracking.d.ts +47 -0
  302. package/dist/backend/backend/src/services/project-tickets/ticket-tracking.d.ts.map +1 -0
  303. package/dist/backend/backend/src/services/project-tickets/ticket-tracking.js +83 -0
  304. package/dist/backend/backend/src/services/project-tickets/ticket-tracking.js.map +1 -0
  305. package/dist/backend/backend/src/services/project-tickets/v1-task-migration.d.ts +97 -0
  306. package/dist/backend/backend/src/services/project-tickets/v1-task-migration.d.ts.map +1 -0
  307. package/dist/backend/backend/src/services/project-tickets/v1-task-migration.js +201 -0
  308. package/dist/backend/backend/src/services/project-tickets/v1-task-migration.js.map +1 -0
  309. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +86 -22
  310. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
  311. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +173 -28
  312. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
  313. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts +19 -1
  314. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -1
  315. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +33 -4
  316. package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -1
  317. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts +24 -12
  318. package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -1
  319. package/dist/backend/backend/src/services/reconciler/reconciler.service.js +87 -19
  320. package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -1
  321. package/dist/backend/backend/src/services/runtime-adapter.d.ts +1 -1
  322. package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -1
  323. package/dist/backend/backend/src/services/runtime-adapter.js +5 -9
  324. package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -1
  325. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts +26 -1
  326. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  327. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +33 -2
  328. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  329. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts +5 -0
  330. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
  331. package/dist/backend/backend/src/services/session/pty/pty-session.js +8 -1
  332. package/dist/backend/backend/src/services/session/pty/pty-session.js.map +1 -1
  333. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.d.ts +18 -0
  334. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.d.ts.map +1 -1
  335. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js +23 -0
  336. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js.map +1 -1
  337. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts +8 -0
  338. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts.map +1 -1
  339. package/dist/backend/backend/src/services/session/session-backend.interface.js.map +1 -1
  340. package/dist/backend/backend/src/services/session/session-command-helper.d.ts +12 -2
  341. package/dist/backend/backend/src/services/session/session-command-helper.d.ts.map +1 -1
  342. package/dist/backend/backend/src/services/session/session-command-helper.js +14 -2
  343. package/dist/backend/backend/src/services/session/session-command-helper.js.map +1 -1
  344. package/dist/backend/backend/src/services/slack/slack-initializer.d.ts.map +1 -1
  345. package/dist/backend/backend/src/services/slack/slack-initializer.js +2 -1
  346. package/dist/backend/backend/src/services/slack/slack-initializer.js.map +1 -1
  347. package/dist/backend/backend/src/services/task-pool/give-up/give-up-recovery.service.d.ts +239 -0
  348. package/dist/backend/backend/src/services/task-pool/give-up/give-up-recovery.service.d.ts.map +1 -0
  349. package/dist/backend/backend/src/services/task-pool/give-up/give-up-recovery.service.js +395 -0
  350. package/dist/backend/backend/src/services/task-pool/give-up/give-up-recovery.service.js.map +1 -0
  351. package/dist/backend/backend/src/services/task-pool/give-up/give-up-stats.d.ts +53 -0
  352. package/dist/backend/backend/src/services/task-pool/give-up/give-up-stats.d.ts.map +1 -0
  353. package/dist/backend/backend/src/services/task-pool/give-up/give-up-stats.js +83 -0
  354. package/dist/backend/backend/src/services/task-pool/give-up/give-up-stats.js.map +1 -0
  355. package/dist/backend/backend/src/services/task-pool/give-up/stop-classifier.d.ts +93 -0
  356. package/dist/backend/backend/src/services/task-pool/give-up/stop-classifier.d.ts.map +1 -0
  357. package/dist/backend/backend/src/services/task-pool/give-up/stop-classifier.js +244 -0
  358. package/dist/backend/backend/src/services/task-pool/give-up/stop-classifier.js.map +1 -0
  359. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +145 -19
  360. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  361. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +321 -53
  362. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  363. package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
  364. package/dist/backend/backend/src/services/template/template.service.js +11 -6
  365. package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
  366. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts +21 -4
  367. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts.map +1 -1
  368. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js +53 -3
  369. package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js.map +1 -1
  370. package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts +85 -6
  371. package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts.map +1 -1
  372. package/dist/backend/backend/src/services/v3/escalation-router.service.js +188 -9
  373. package/dist/backend/backend/src/services/v3/escalation-router.service.js.map +1 -1
  374. package/dist/backend/backend/src/services/v3/escalation.service.js +1 -1
  375. package/dist/backend/backend/src/services/v3/escalation.service.js.map +1 -1
  376. package/dist/backend/backend/src/services/v3/mission-executor.service.js +2 -2
  377. package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -1
  378. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-data.d.ts +184 -0
  379. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-data.d.ts.map +1 -0
  380. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-data.js +420 -0
  381. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt-data.js.map +1 -0
  382. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.boot.d.ts +61 -0
  383. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.boot.d.ts.map +1 -0
  384. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.boot.js +100 -0
  385. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.boot.js.map +1 -0
  386. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.renderer.d.ts +36 -0
  387. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.renderer.d.ts.map +1 -0
  388. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.renderer.js +239 -0
  389. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.renderer.js.map +1 -0
  390. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.d.ts +152 -0
  391. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.d.ts.map +1 -0
  392. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.js +209 -0
  393. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.service.js.map +1 -0
  394. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.d.ts +194 -0
  395. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.d.ts.map +1 -0
  396. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.js +85 -0
  397. package/dist/backend/backend/src/services/v3/owner-receipt/owner-receipt.types.js.map +1 -0
  398. package/dist/backend/backend/src/services/v3/request-sla.subscriber.d.ts +6 -4
  399. package/dist/backend/backend/src/services/v3/request-sla.subscriber.d.ts.map +1 -1
  400. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js +15 -6
  401. package/dist/backend/backend/src/services/v3/request-sla.subscriber.js.map +1 -1
  402. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.d.ts.map +1 -1
  403. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js +14 -5
  404. package/dist/backend/backend/src/services/v3/request-status-update.subscriber.js.map +1 -1
  405. package/dist/backend/backend/src/services/v3/request.service.d.ts +19 -0
  406. package/dist/backend/backend/src/services/v3/request.service.d.ts.map +1 -1
  407. package/dist/backend/backend/src/services/v3/request.service.js +38 -0
  408. package/dist/backend/backend/src/services/v3/request.service.js.map +1 -1
  409. package/dist/backend/backend/src/services/v3/ticket-ask-classifier.d.ts +82 -0
  410. package/dist/backend/backend/src/services/v3/ticket-ask-classifier.d.ts.map +1 -0
  411. package/dist/backend/backend/src/services/v3/ticket-ask-classifier.js +172 -0
  412. package/dist/backend/backend/src/services/v3/ticket-ask-classifier.js.map +1 -0
  413. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  414. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js +2 -0
  415. package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  416. package/dist/backend/backend/src/services/v3/ticket-intake-log.d.ts +87 -0
  417. package/dist/backend/backend/src/services/v3/ticket-intake-log.d.ts.map +1 -0
  418. package/dist/backend/backend/src/services/v3/ticket-intake-log.js +116 -0
  419. package/dist/backend/backend/src/services/v3/ticket-intake-log.js.map +1 -0
  420. package/dist/backend/backend/src/services/v3/ticket-intake.service.d.ts +133 -15
  421. package/dist/backend/backend/src/services/v3/ticket-intake.service.d.ts.map +1 -1
  422. package/dist/backend/backend/src/services/v3/ticket-intake.service.js +263 -45
  423. package/dist/backend/backend/src/services/v3/ticket-intake.service.js.map +1 -1
  424. package/dist/backend/backend/src/services/v3/ticket-review.service.d.ts +3 -1
  425. package/dist/backend/backend/src/services/v3/ticket-review.service.d.ts.map +1 -1
  426. package/dist/backend/backend/src/services/v3/ticket-review.service.js +6 -2
  427. package/dist/backend/backend/src/services/v3/ticket-review.service.js.map +1 -1
  428. package/dist/backend/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
  429. package/dist/backend/backend/src/services/v3/v3-data.service.js +9 -3
  430. package/dist/backend/backend/src/services/v3/v3-data.service.js.map +1 -1
  431. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +41 -1
  432. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  433. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +51 -2
  434. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  435. package/dist/backend/backend/src/services/wiki/wiki-migrate.service.d.ts +13 -5
  436. package/dist/backend/backend/src/services/wiki/wiki-migrate.service.d.ts.map +1 -1
  437. package/dist/backend/backend/src/services/wiki/wiki-migrate.service.js +10 -9
  438. package/dist/backend/backend/src/services/wiki/wiki-migrate.service.js.map +1 -1
  439. package/dist/backend/backend/src/services/worktree/workitem-worktree.service.d.ts +241 -0
  440. package/dist/backend/backend/src/services/worktree/workitem-worktree.service.d.ts.map +1 -0
  441. package/dist/backend/backend/src/services/worktree/workitem-worktree.service.js +511 -0
  442. package/dist/backend/backend/src/services/worktree/workitem-worktree.service.js.map +1 -0
  443. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.d.ts +70 -0
  444. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.d.ts.map +1 -0
  445. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.js +121 -0
  446. package/dist/backend/backend/src/services/worktree/workitem-worktree.subscriber.js.map +1 -0
  447. package/dist/backend/backend/src/services/worktree/worktree-git.d.ts +260 -0
  448. package/dist/backend/backend/src/services/worktree/worktree-git.d.ts.map +1 -0
  449. package/dist/backend/backend/src/services/worktree/worktree-git.js +569 -0
  450. package/dist/backend/backend/src/services/worktree/worktree-git.js.map +1 -0
  451. package/dist/backend/backend/src/services/worktree/worktree-janitor.git.d.ts +131 -0
  452. package/dist/backend/backend/src/services/worktree/worktree-janitor.git.d.ts.map +1 -0
  453. package/dist/backend/backend/src/services/worktree/worktree-janitor.git.js +238 -0
  454. package/dist/backend/backend/src/services/worktree/worktree-janitor.git.js.map +1 -0
  455. package/dist/backend/backend/src/services/worktree/worktree-janitor.service.d.ts +241 -0
  456. package/dist/backend/backend/src/services/worktree/worktree-janitor.service.d.ts.map +1 -0
  457. package/dist/backend/backend/src/services/worktree/worktree-janitor.service.js +504 -0
  458. package/dist/backend/backend/src/services/worktree/worktree-janitor.service.js.map +1 -0
  459. package/dist/backend/backend/src/types/event-bus.types.d.ts +1 -1
  460. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  461. package/dist/backend/backend/src/types/event-bus.types.js +8 -0
  462. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  463. package/dist/backend/backend/src/types/index.d.ts +23 -18
  464. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  465. package/dist/backend/backend/src/types/index.js.map +1 -1
  466. package/dist/backend/backend/src/types/intent-task.types.d.ts +1 -1
  467. package/dist/backend/backend/src/types/intent-task.types.d.ts.map +1 -1
  468. package/dist/backend/backend/src/types/project-ticket.types.d.ts +132 -0
  469. package/dist/backend/backend/src/types/project-ticket.types.d.ts.map +1 -0
  470. package/dist/backend/backend/src/types/project-ticket.types.js +120 -0
  471. package/dist/backend/backend/src/types/project-ticket.types.js.map +1 -0
  472. package/dist/backend/backend/src/types/review-reason.types.d.ts +3 -1
  473. package/dist/backend/backend/src/types/review-reason.types.d.ts.map +1 -1
  474. package/dist/backend/backend/src/types/review-reason.types.js +1 -0
  475. package/dist/backend/backend/src/types/review-reason.types.js.map +1 -1
  476. package/dist/backend/backend/src/types/v2/index.d.ts +2 -2
  477. package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -1
  478. package/dist/backend/backend/src/types/v2/index.js +1 -1
  479. package/dist/backend/backend/src/types/v2/index.js.map +1 -1
  480. package/dist/backend/backend/src/types/v2/reconcile.types.d.ts +7 -0
  481. package/dist/backend/backend/src/types/v2/reconcile.types.d.ts.map +1 -1
  482. package/dist/backend/backend/src/types/v2/reconcile.types.js.map +1 -1
  483. package/dist/backend/backend/src/types/v2/request.types.d.ts +18 -0
  484. package/dist/backend/backend/src/types/v2/request.types.d.ts.map +1 -1
  485. package/dist/backend/backend/src/types/v2/request.types.js +1 -0
  486. package/dist/backend/backend/src/types/v2/request.types.js.map +1 -1
  487. package/dist/backend/backend/src/types/v2/ticket.types.d.ts +6 -2
  488. package/dist/backend/backend/src/types/v2/ticket.types.d.ts.map +1 -1
  489. package/dist/backend/backend/src/types/v2/ticket.types.js +1 -1
  490. package/dist/backend/backend/src/types/v2/ticket.types.js.map +1 -1
  491. package/dist/backend/backend/src/types/v2/work-item.types.d.ts +169 -14
  492. package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  493. package/dist/backend/backend/src/types/v2/work-item.types.js +263 -44
  494. package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -1
  495. package/dist/backend/backend/src/utils/agent-caller.utils.d.ts +33 -0
  496. package/dist/backend/backend/src/utils/agent-caller.utils.d.ts.map +1 -1
  497. package/dist/backend/backend/src/utils/agent-caller.utils.js +37 -0
  498. package/dist/backend/backend/src/utils/agent-caller.utils.js.map +1 -1
  499. package/dist/backend/backend/src/utils/secret-env.d.ts +61 -0
  500. package/dist/backend/backend/src/utils/secret-env.d.ts.map +1 -0
  501. package/dist/backend/backend/src/utils/secret-env.js +89 -0
  502. package/dist/backend/backend/src/utils/secret-env.js.map +1 -0
  503. package/dist/backend/build-info.json +2 -2
  504. package/dist/backend/config/constants.d.ts +71 -0
  505. package/dist/backend/config/constants.d.ts.map +1 -1
  506. package/dist/backend/config/constants.js +77 -0
  507. package/dist/backend/config/constants.js.map +1 -1
  508. package/dist/cli/backend/src/constants.d.ts +451 -1
  509. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  510. package/dist/cli/backend/src/constants.js +442 -2
  511. package/dist/cli/backend/src/constants.js.map +1 -1
  512. package/dist/cli/backend/src/models/index.d.ts +0 -1
  513. package/dist/cli/backend/src/models/index.d.ts.map +1 -1
  514. package/dist/cli/backend/src/models/index.js +0 -1
  515. package/dist/cli/backend/src/models/index.js.map +1 -1
  516. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +28 -1
  517. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  518. package/dist/cli/backend/src/services/agent/agent-registration.service.js +93 -34
  519. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  520. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts +169 -0
  521. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -0
  522. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js +231 -0
  523. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js.map +1 -0
  524. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts +16 -0
  525. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  526. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +50 -0
  527. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  528. package/dist/cli/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
  529. package/dist/cli/backend/src/services/ai/prompt-builder.service.js +9 -8
  530. package/dist/cli/backend/src/services/ai/prompt-builder.service.js.map +1 -1
  531. package/dist/cli/backend/src/services/ai/prompt-modules/active-work.module.d.ts +75 -0
  532. package/dist/cli/backend/src/services/ai/prompt-modules/active-work.module.d.ts.map +1 -0
  533. package/dist/cli/backend/src/services/ai/prompt-modules/active-work.module.js +89 -0
  534. package/dist/cli/backend/src/services/ai/prompt-modules/active-work.module.js.map +1 -0
  535. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts +18 -3
  536. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts.map +1 -1
  537. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.js +28 -4
  538. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.js.map +1 -1
  539. package/dist/cli/backend/src/services/ai/prompt-modules/project-reference.module.js +1 -1
  540. package/dist/cli/backend/src/services/ai/prompt-modules/project-reference.module.js.map +1 -1
  541. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
  542. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +12 -0
  543. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
  544. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +14 -0
  545. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  546. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  547. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
  548. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js +11 -7
  549. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
  550. package/dist/cli/backend/src/services/ai/prompt-modules/session-briefing.module.d.ts +41 -0
  551. package/dist/cli/backend/src/services/ai/prompt-modules/session-briefing.module.d.ts.map +1 -0
  552. package/dist/cli/backend/src/services/ai/prompt-modules/session-briefing.module.js +44 -0
  553. package/dist/cli/backend/src/services/ai/prompt-modules/session-briefing.module.js.map +1 -0
  554. package/dist/cli/backend/src/services/ai/prompt-modules/standing-answers.module.d.ts +67 -0
  555. package/dist/cli/backend/src/services/ai/prompt-modules/standing-answers.module.d.ts.map +1 -0
  556. package/dist/cli/backend/src/services/ai/prompt-modules/standing-answers.module.js +146 -0
  557. package/dist/cli/backend/src/services/ai/prompt-modules/standing-answers.module.js.map +1 -0
  558. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts +1 -1
  559. package/dist/cli/backend/src/services/cloud/cloud-sync.types.d.ts.map +1 -1
  560. package/dist/cli/backend/src/services/cloud/cloud-sync.types.js +1 -0
  561. package/dist/cli/backend/src/services/cloud/cloud-sync.types.js.map +1 -1
  562. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.d.ts +7 -0
  563. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.d.ts.map +1 -1
  564. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.js +9 -1
  565. package/dist/cli/backend/src/services/continuation/patterns/waiting-patterns.js.map +1 -1
  566. package/dist/cli/backend/src/services/core/logger.service.d.ts +21 -0
  567. package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -1
  568. package/dist/cli/backend/src/services/core/logger.service.js +42 -4
  569. package/dist/cli/backend/src/services/core/logger.service.js.map +1 -1
  570. package/dist/cli/backend/src/services/core/storage.service.d.ts +1 -5
  571. package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -1
  572. package/dist/cli/backend/src/services/core/storage.service.js +5 -162
  573. package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
  574. package/dist/cli/backend/src/services/mcp-server.d.ts +19 -6
  575. package/dist/cli/backend/src/services/mcp-server.d.ts.map +1 -1
  576. package/dist/cli/backend/src/services/mcp-server.js +46 -16
  577. package/dist/cli/backend/src/services/mcp-server.js.map +1 -1
  578. package/dist/cli/backend/src/services/mcp-tool-definitions.d.ts.map +1 -1
  579. package/dist/cli/backend/src/services/mcp-tool-definitions.js +3 -2
  580. package/dist/cli/backend/src/services/mcp-tool-definitions.js.map +1 -1
  581. package/dist/cli/backend/src/services/memory/standing-answers.service.d.ts +247 -0
  582. package/dist/cli/backend/src/services/memory/standing-answers.service.d.ts.map +1 -0
  583. package/dist/cli/backend/src/services/memory/standing-answers.service.js +534 -0
  584. package/dist/cli/backend/src/services/memory/standing-answers.service.js.map +1 -0
  585. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.d.ts +35 -0
  586. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
  587. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.js +99 -1
  588. package/dist/cli/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
  589. package/dist/cli/backend/src/services/monitoring/agent-attention-registry.d.ts +75 -0
  590. package/dist/cli/backend/src/services/monitoring/agent-attention-registry.d.ts.map +1 -0
  591. package/dist/cli/backend/src/services/monitoring/agent-attention-registry.js +80 -0
  592. package/dist/cli/backend/src/services/monitoring/agent-attention-registry.js.map +1 -0
  593. package/dist/cli/backend/src/services/monitoring/agent-attention.d.ts +114 -0
  594. package/dist/cli/backend/src/services/monitoring/agent-attention.d.ts.map +1 -0
  595. package/dist/cli/backend/src/services/monitoring/agent-attention.js +165 -0
  596. package/dist/cli/backend/src/services/monitoring/agent-attention.js.map +1 -0
  597. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.d.ts +214 -0
  598. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.d.ts.map +1 -0
  599. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.js +466 -0
  600. package/dist/cli/backend/src/services/project-tickets/project-ticket.service.js.map +1 -0
  601. package/dist/cli/backend/src/services/project-tickets/ticket-file.d.ts +121 -0
  602. package/dist/cli/backend/src/services/project-tickets/ticket-file.d.ts.map +1 -0
  603. package/dist/cli/backend/src/services/project-tickets/ticket-file.js +468 -0
  604. package/dist/cli/backend/src/services/project-tickets/ticket-file.js.map +1 -0
  605. package/dist/cli/backend/src/services/project-tickets/ticket-folder-lock.d.ts +69 -0
  606. package/dist/cli/backend/src/services/project-tickets/ticket-folder-lock.d.ts.map +1 -0
  607. package/dist/cli/backend/src/services/project-tickets/ticket-folder-lock.js +194 -0
  608. package/dist/cli/backend/src/services/project-tickets/ticket-folder-lock.js.map +1 -0
  609. package/dist/cli/backend/src/services/project-tickets/ticket-tracking.d.ts +47 -0
  610. package/dist/cli/backend/src/services/project-tickets/ticket-tracking.d.ts.map +1 -0
  611. package/dist/cli/backend/src/services/project-tickets/ticket-tracking.js +83 -0
  612. package/dist/cli/backend/src/services/project-tickets/ticket-tracking.js.map +1 -0
  613. package/dist/cli/backend/src/services/project-tickets/v1-task-migration.d.ts +97 -0
  614. package/dist/cli/backend/src/services/project-tickets/v1-task-migration.d.ts.map +1 -0
  615. package/dist/cli/backend/src/services/project-tickets/v1-task-migration.js +201 -0
  616. package/dist/cli/backend/src/services/project-tickets/v1-task-migration.js.map +1 -0
  617. package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts +26 -1
  618. package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  619. package/dist/cli/backend/src/services/session/pty/pty-session-backend.js +33 -2
  620. package/dist/cli/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  621. package/dist/cli/backend/src/services/session/pty/pty-session.d.ts +5 -0
  622. package/dist/cli/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
  623. package/dist/cli/backend/src/services/session/pty/pty-session.js +8 -1
  624. package/dist/cli/backend/src/services/session/pty/pty-session.js.map +1 -1
  625. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.d.ts +18 -0
  626. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.d.ts.map +1 -1
  627. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.js +23 -0
  628. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.js.map +1 -1
  629. package/dist/cli/backend/src/services/session/session-backend.interface.d.ts +8 -0
  630. package/dist/cli/backend/src/services/session/session-backend.interface.d.ts.map +1 -1
  631. package/dist/cli/backend/src/services/session/session-backend.interface.js.map +1 -1
  632. package/dist/cli/backend/src/services/session/session-command-helper.d.ts +12 -2
  633. package/dist/cli/backend/src/services/session/session-command-helper.d.ts.map +1 -1
  634. package/dist/cli/backend/src/services/session/session-command-helper.js +14 -2
  635. package/dist/cli/backend/src/services/session/session-command-helper.js.map +1 -1
  636. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +145 -19
  637. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  638. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +321 -53
  639. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  640. package/dist/cli/backend/src/services/template/template.service.d.ts.map +1 -1
  641. package/dist/cli/backend/src/services/template/template.service.js +11 -6
  642. package/dist/cli/backend/src/services/template/template.service.js.map +1 -1
  643. package/dist/cli/backend/src/services/v3/escalation-router.service.d.ts +85 -6
  644. package/dist/cli/backend/src/services/v3/escalation-router.service.d.ts.map +1 -1
  645. package/dist/cli/backend/src/services/v3/escalation-router.service.js +188 -9
  646. package/dist/cli/backend/src/services/v3/escalation-router.service.js.map +1 -1
  647. package/dist/cli/backend/src/services/v3/mission-executor.service.js +2 -2
  648. package/dist/cli/backend/src/services/v3/mission-executor.service.js.map +1 -1
  649. package/dist/cli/backend/src/services/v3/request-sla.subscriber.d.ts +6 -4
  650. package/dist/cli/backend/src/services/v3/request-sla.subscriber.d.ts.map +1 -1
  651. package/dist/cli/backend/src/services/v3/request-sla.subscriber.js +15 -6
  652. package/dist/cli/backend/src/services/v3/request-sla.subscriber.js.map +1 -1
  653. package/dist/cli/backend/src/services/v3/request.service.d.ts +19 -0
  654. package/dist/cli/backend/src/services/v3/request.service.d.ts.map +1 -1
  655. package/dist/cli/backend/src/services/v3/request.service.js +38 -0
  656. package/dist/cli/backend/src/services/v3/request.service.js.map +1 -1
  657. package/dist/cli/backend/src/services/v3/ticket-ask-classifier.d.ts +82 -0
  658. package/dist/cli/backend/src/services/v3/ticket-ask-classifier.d.ts.map +1 -0
  659. package/dist/cli/backend/src/services/v3/ticket-ask-classifier.js +172 -0
  660. package/dist/cli/backend/src/services/v3/ticket-ask-classifier.js.map +1 -0
  661. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts.map +1 -1
  662. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js +2 -0
  663. package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
  664. package/dist/cli/backend/src/services/v3/ticket-intake-log.d.ts +87 -0
  665. package/dist/cli/backend/src/services/v3/ticket-intake-log.d.ts.map +1 -0
  666. package/dist/cli/backend/src/services/v3/ticket-intake-log.js +116 -0
  667. package/dist/cli/backend/src/services/v3/ticket-intake-log.js.map +1 -0
  668. package/dist/cli/backend/src/services/v3/ticket-intake.service.d.ts +133 -15
  669. package/dist/cli/backend/src/services/v3/ticket-intake.service.d.ts.map +1 -1
  670. package/dist/cli/backend/src/services/v3/ticket-intake.service.js +263 -45
  671. package/dist/cli/backend/src/services/v3/ticket-intake.service.js.map +1 -1
  672. package/dist/cli/backend/src/services/v3/ticket-review.service.d.ts +3 -1
  673. package/dist/cli/backend/src/services/v3/ticket-review.service.d.ts.map +1 -1
  674. package/dist/cli/backend/src/services/v3/ticket-review.service.js +6 -2
  675. package/dist/cli/backend/src/services/v3/ticket-review.service.js.map +1 -1
  676. package/dist/cli/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
  677. package/dist/cli/backend/src/services/v3/v3-data.service.js +9 -3
  678. package/dist/cli/backend/src/services/v3/v3-data.service.js.map +1 -1
  679. package/dist/cli/backend/src/services/worktree/worktree-git.d.ts +260 -0
  680. package/dist/cli/backend/src/services/worktree/worktree-git.d.ts.map +1 -0
  681. package/dist/cli/backend/src/services/worktree/worktree-git.js +569 -0
  682. package/dist/cli/backend/src/services/worktree/worktree-git.js.map +1 -0
  683. package/dist/cli/backend/src/types/event-bus.types.d.ts +1 -1
  684. package/dist/cli/backend/src/types/event-bus.types.d.ts.map +1 -1
  685. package/dist/cli/backend/src/types/event-bus.types.js +8 -0
  686. package/dist/cli/backend/src/types/event-bus.types.js.map +1 -1
  687. package/dist/cli/backend/src/types/index.d.ts +23 -18
  688. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  689. package/dist/cli/backend/src/types/index.js.map +1 -1
  690. package/dist/cli/backend/src/types/intent-task.types.d.ts +1 -1
  691. package/dist/cli/backend/src/types/intent-task.types.d.ts.map +1 -1
  692. package/dist/cli/backend/src/types/project-ticket.types.d.ts +132 -0
  693. package/dist/cli/backend/src/types/project-ticket.types.d.ts.map +1 -0
  694. package/dist/cli/backend/src/types/project-ticket.types.js +120 -0
  695. package/dist/cli/backend/src/types/project-ticket.types.js.map +1 -0
  696. package/dist/cli/backend/src/types/v2/index.d.ts +2 -2
  697. package/dist/cli/backend/src/types/v2/index.d.ts.map +1 -1
  698. package/dist/cli/backend/src/types/v2/index.js +1 -1
  699. package/dist/cli/backend/src/types/v2/index.js.map +1 -1
  700. package/dist/cli/backend/src/types/v2/reconcile.types.d.ts +7 -0
  701. package/dist/cli/backend/src/types/v2/reconcile.types.d.ts.map +1 -1
  702. package/dist/cli/backend/src/types/v2/reconcile.types.js.map +1 -1
  703. package/dist/cli/backend/src/types/v2/request.types.d.ts +18 -0
  704. package/dist/cli/backend/src/types/v2/request.types.d.ts.map +1 -1
  705. package/dist/cli/backend/src/types/v2/request.types.js +1 -0
  706. package/dist/cli/backend/src/types/v2/request.types.js.map +1 -1
  707. package/dist/cli/backend/src/types/v2/ticket.types.d.ts +6 -2
  708. package/dist/cli/backend/src/types/v2/ticket.types.d.ts.map +1 -1
  709. package/dist/cli/backend/src/types/v2/ticket.types.js +1 -1
  710. package/dist/cli/backend/src/types/v2/ticket.types.js.map +1 -1
  711. package/dist/cli/backend/src/types/v2/work-item.types.d.ts +169 -14
  712. package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -1
  713. package/dist/cli/backend/src/types/v2/work-item.types.js +263 -44
  714. package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -1
  715. package/dist/cli/backend/src/utils/secret-env.d.ts +61 -0
  716. package/dist/cli/backend/src/utils/secret-env.d.ts.map +1 -0
  717. package/dist/cli/backend/src/utils/secret-env.js +89 -0
  718. package/dist/cli/backend/src/utils/secret-env.js.map +1 -0
  719. package/dist/cli/cli/src/commands/onboard.d.ts +1 -1
  720. package/dist/cli/cli/src/commands/onboard.js +3 -3
  721. package/dist/cli/cli/src/commands/onboard.js.map +1 -1
  722. package/dist/cli/cli/src/commands/publish.d.ts.map +1 -1
  723. package/dist/cli/cli/src/commands/publish.js +4 -5
  724. package/dist/cli/cli/src/commands/publish.js.map +1 -1
  725. package/dist/cli/cli/src/commands/service.d.ts.map +1 -1
  726. package/dist/cli/cli/src/commands/service.js +5 -2
  727. package/dist/cli/cli/src/commands/service.js.map +1 -1
  728. package/dist/cli/cli/src/commands/tickets.d.ts +60 -0
  729. package/dist/cli/cli/src/commands/tickets.d.ts.map +1 -0
  730. package/dist/cli/cli/src/commands/tickets.js +111 -0
  731. package/dist/cli/cli/src/commands/tickets.js.map +1 -0
  732. package/dist/cli/cli/src/index.js +12 -0
  733. package/dist/cli/cli/src/index.js.map +1 -1
  734. package/dist/cli/cli/src/utils/archive-creator.d.ts +7 -3
  735. package/dist/cli/cli/src/utils/archive-creator.d.ts.map +1 -1
  736. package/dist/cli/cli/src/utils/archive-creator.js +17 -5
  737. package/dist/cli/cli/src/utils/archive-creator.js.map +1 -1
  738. package/dist/cli/cli/src/utils/cloud-submit.d.ts +1 -1
  739. package/dist/cli/cli/src/utils/cloud-submit.js +1 -1
  740. package/dist/cli/cli/src/utils/gh-submit.d.ts +10 -1
  741. package/dist/cli/cli/src/utils/gh-submit.d.ts.map +1 -1
  742. package/dist/cli/cli/src/utils/gh-submit.js +20 -4
  743. package/dist/cli/cli/src/utils/gh-submit.js.map +1 -1
  744. package/dist/cli/cli/src/utils/package-validator.d.ts +29 -6
  745. package/dist/cli/cli/src/utils/package-validator.d.ts.map +1 -1
  746. package/dist/cli/cli/src/utils/package-validator.js +88 -36
  747. package/dist/cli/cli/src/utils/package-validator.js.map +1 -1
  748. package/dist/cli/config/constants.d.ts +71 -0
  749. package/dist/cli/config/constants.d.ts.map +1 -1
  750. package/dist/cli/config/constants.js +77 -0
  751. package/dist/cli/config/constants.js.map +1 -1
  752. package/dist/cli/config/skills/marketplace-registry.d.ts +143 -0
  753. package/dist/cli/config/skills/marketplace-registry.d.ts.map +1 -0
  754. package/dist/cli/config/skills/marketplace-registry.js +192 -0
  755. package/dist/cli/config/skills/marketplace-registry.js.map +1 -0
  756. package/frontend/dist/assets/index-8d4b3ad2.js +4951 -0
  757. package/frontend/dist/assets/index-b6aded4c.css +42 -0
  758. package/frontend/dist/index.html +2 -2
  759. package/package.json +1 -1
  760. package/config/task_starters/build_e2e_test_plan_prompt.json +0 -51
  761. package/config/task_starters/build_tasks_prompt.json +0 -55
  762. package/config/task_starters/prompts/build_tasks_step1_milestone_structure.md +0 -274
  763. package/config/task_starters/prompts/e2e_test_plan_step1_build_tests.md +0 -391
  764. package/config/task_starters/prompts/e2e_test_plan_step2_run_tests.md +0 -240
  765. package/config/templates/customer-loyalty-team.json +0 -44
  766. package/config/templates/dtc-viral-content-team.json +0 -58
  767. package/config/templates/expert-innovation-team.json +0 -60
  768. package/config/templates/pragmatic-mvp-dev-team.json +0 -58
  769. package/config/templates/pro-sops/norms/content-production-pipeline.md +0 -39
  770. package/config/templates/pro-sops/norms/customer-onboarding-sop.md +0 -40
  771. package/dist/backend/backend/src/controllers/task-management/tickets.controller.d.ts +0 -13
  772. package/dist/backend/backend/src/controllers/task-management/tickets.controller.d.ts.map +0 -1
  773. package/dist/backend/backend/src/controllers/task-management/tickets.controller.js +0 -214
  774. package/dist/backend/backend/src/controllers/task-management/tickets.controller.js.map +0 -1
  775. package/dist/backend/backend/src/models/Ticket.d.ts +0 -24
  776. package/dist/backend/backend/src/models/Ticket.d.ts.map +0 -1
  777. package/dist/backend/backend/src/models/Ticket.js +0 -102
  778. package/dist/backend/backend/src/models/Ticket.js.map +0 -1
  779. package/dist/backend/backend/src/services/agent/task-planning.service.d.ts +0 -134
  780. package/dist/backend/backend/src/services/agent/task-planning.service.d.ts.map +0 -1
  781. package/dist/backend/backend/src/services/agent/task-planning.service.js +0 -291
  782. package/dist/backend/backend/src/services/agent/task-planning.service.js.map +0 -1
  783. package/dist/backend/backend/src/services/monitoring/task-assignment-monitor.service.d.ts +0 -71
  784. package/dist/backend/backend/src/services/monitoring/task-assignment-monitor.service.d.ts.map +0 -1
  785. package/dist/backend/backend/src/services/monitoring/task-assignment-monitor.service.js +0 -304
  786. package/dist/backend/backend/src/services/monitoring/task-assignment-monitor.service.js.map +0 -1
  787. package/dist/backend/backend/src/services/project/task-folder.service.d.ts +0 -48
  788. package/dist/backend/backend/src/services/project/task-folder.service.d.ts.map +0 -1
  789. package/dist/backend/backend/src/services/project/task-folder.service.js +0 -193
  790. package/dist/backend/backend/src/services/project/task-folder.service.js.map +0 -1
  791. package/dist/backend/backend/src/services/project/task.service.d.ts +0 -47
  792. package/dist/backend/backend/src/services/project/task.service.d.ts.map +0 -1
  793. package/dist/backend/backend/src/services/project/task.service.js +0 -253
  794. package/dist/backend/backend/src/services/project/task.service.js.map +0 -1
  795. package/dist/backend/backend/src/services/project/ticket-editor.service.d.ts +0 -130
  796. package/dist/backend/backend/src/services/project/ticket-editor.service.d.ts.map +0 -1
  797. package/dist/backend/backend/src/services/project/ticket-editor.service.js +0 -406
  798. package/dist/backend/backend/src/services/project/ticket-editor.service.js.map +0 -1
  799. package/dist/cli/backend/src/models/Ticket.d.ts +0 -24
  800. package/dist/cli/backend/src/models/Ticket.d.ts.map +0 -1
  801. package/dist/cli/backend/src/models/Ticket.js +0 -102
  802. package/dist/cli/backend/src/models/Ticket.js.map +0 -1
  803. package/frontend/dist/assets/index-2bdb57b9.css +0 -42
  804. package/frontend/dist/assets/index-54f1061c.js +0 -4963
@@ -1,138 +1,38 @@
1
- 🔄 **15-Minute Project Check-in & Auto-Assignment**
1
+ 🔄 **Project Check-in**
2
2
 
3
3
  **Project:** {projectName}
4
4
  **Project ID**: {projectId}
5
5
  **Path:** {projectPath}
6
6
  **Check Time:** {currentTimestamp}
7
7
 
8
- ## PHASE 1: PROJECT STATUS CHECK-IN & AUDIT
8
+ The project's work lives in two places:
9
9
 
10
- ### Step 1: Review Team Progress
10
+ - **Project tickets** — the project's own backlog, one markdown file per ticket in
11
+ `{projectPath}/.crewly/tickets/` (tracked with the project). Read and change them only through
12
+ the `project-tickets` skill.
13
+ - **WorkItems** — what agents are working on right now. Every ticket in progress has exactly one
14
+ linked WorkItem; when that WorkItem is verified the ticket moves to done by itself.
11
15
 
12
- 1. Use the `check_team_progress` MCP tool with projectId: "{projectId}"
13
- 2. Review the team progress report and current task status.
14
- 3. Identify any blockers, delays, or issues mentioned in the report.
15
- 4. Provide high-level guidance and note next steps for team members.
16
- 5. If needed, make a note to reassign tasks or adjust priorities during Phase 2.
16
+ ## Step 1: What is being worked on
17
17
 
18
- **Focus Areas:**
18
+ 1. `project-tickets list --project '{projectPath}' --status in_progress` — tickets being worked, with
19
+ their assignee and WorkItem.
20
+ 2. `get-team-status` — who is active, idle, or stuck.
21
+ 3. For a ticket whose assignee is inactive or has shown no progress for a long time, ask the
22
+ assignee (`send-message`) what is blocking it. If the work cannot continue, the assignee or
23
+ the team lead releases the ticket (`project-tickets release … --note "<why>"`) so someone else
24
+ can pick it up.
19
25
 
20
- - Are team members actively working on their assigned tasks?
21
- - Are there any blocked tasks that need attention?
22
- - Is the team making good progress toward project goals?
23
- - Do any team members need additional context or support?
26
+ ## Step 2: What is waiting
24
27
 
25
- Use: `check_team_progress({ "projectId": "{projectId}" })`
28
+ 1. `project-tickets list --project '{projectPath}' --status ready` — idle members of the project's
29
+ teams pick these up on their own (highest priority first). Only step in when a ticket needs a
30
+ specific person: `project-tickets assign --project '{projectPath}' --id <ID> --to <session>`.
31
+ 2. `project-tickets list --project '{projectPath}' --status review` — tickets waiting for the owner.
32
+ Mention them in your update; do not move them to done yourself.
33
+ 3. `backlog` tickets are not approved work. Move one to `ready` only when the owner asked for it.
26
34
 
27
- ### Step 2: Audit and Enforce In-Progress Task Status
35
+ ## Step 3: Report
28
36
 
29
- This is a critical step to ensure accountability and prevent task stagnation. You must actively query every single in-progress task for this project.
30
-
31
- 1. **Identify All In-Progress Tasks**:
32
-
33
- - Query the TaskPool API: `curl -s http://localhost:8787/api/pool/all` to get all WorkItems.
34
- - Filter for items with status `running` or `queued` associated with the current project agents.
35
-
36
- 2. **Send Status Enforcement Requests**:
37
- For **each** in-progress task identified, send a direct, non-negotiable status check message to the assigned agent.
38
-
39
- ```
40
- send_message({
41
- to: "ASSIGNED_AGENT_SESSION_NAME",
42
- message: "🚨 ACTION REQUIRED: Status Report on In-Progress Task - {task_title}
43
-
44
- **Task File:** `{task_file_path}`
45
- **Status:** Marked as IN PROGRESS
46
- **Check Time:** {currentTimestamp}
47
-
48
- You must provide an immediate status update by responding to this message. Your response must address one of the following scenarios:
49
-
50
- 1. **TASK IS COMPLETE:**
51
- - If the work is finished, why have you not used the `complete_task` tool?
52
- - You must run this command now: `complete_task({ absoluteTaskPath: '{task_file_path}', sessionName: 'YOUR_SESSION_NAME' })`
53
-
54
- 2. **TASK IS NOT COMPLETE:**
55
- - What is the current percentage of completion?
56
- - What specific actions are you taking next?
57
- - What, if anything, is blocking you?
58
- - Provide a new, realistic estimated time for completion.
59
-
60
- 3. **TASK IS ABANDONED/STALLED:**
61
- - Why are you no longer working on this?
62
- - Should this task be reassigned?
63
-
64
- CRITICAL: A response is mandatory. Failure to respond or act will result in task reassignment in the next cycle.
65
-
66
- After the response, you can resume to your previous work."
67
- })
68
- ```
69
-
70
- 3. **Process Responses & Take Action**:
71
- Based on the agent's reply (or lack thereof), take one of the following actions immediately within this cycle:
72
-
73
- - **If Agent Confirms Task is Complete**: Your primary job is to enforce procedure. Respond immediately, instructing them to use the `complete_task` tool. Example: _"Thank you for the update. Please run `complete_task({ absoluteTaskPath: '{task_file_path}', sessionName: 'AGENT_SESSION_NAME' })` immediately to close this out."_
74
- - **If Agent Reports a Blocker**: Analyze the blocker. Provide specific, actionable assistance. Escalate if necessary. Your goal is to help them _continue the implementation_. Example: _"Understood. The dependency you're waiting on is now complete. Please review the updated files at {path_to_files} and continue."_
75
- - **If Agent Confirms They Have Stalled or Abandoned**: Immediately move the task back to the `open` queue so it can be reassigned during Phase 2.
76
- - **If Agent is Non-Responsive**: Make a note of the agent and task. The task is now a candidate for forceful reassignment. If no response is received by the next check-in, the task should be moved back to the `open` queue.
77
-
78
- ## PHASE 2: AUTO-ASSIGNMENT OF NEW TASKS
79
-
80
- After completing the progress audit, proceed with automated task assignment to maintain project momentum.
81
-
82
- ### Step 2.1: Evaluate Team Member Availability
83
-
84
- - Use `get_team_status` to identify team members assigned to this project who are currently **idle**.
85
- - Create a list of these available members and their roles. This is your assignment pool.
86
-
87
- ### Step 2.2: Identify the Current Milestone
88
-
89
- - Scan the `{projectPath}/.crewly/tasks/` directory to locate all milestone folders (e.g., `00_planning`, `01_setup`, etc.).
90
- - **The "Current Milestone"** is the lowest-numbered folder that still contains tasks in its `open/` subdirectory.
91
- - Your primary search for tasks will be within this milestone.
92
-
93
- ### Step 2.3: Task Assignment Logic (Milestone-First)
94
-
95
- For **each idle team member** identified in Step 2.1, follow this sequence:
96
-
97
- 1. **Search the Current Milestone**: Look for a task in `{projectPath}/.crewly/tasks/{current_milestone}/open/` that matches the idle member's role. If found, assign it and move to the next idle member.
98
- 2. **The Efficiency Exception**: If, and only if, **no suitable tasks** were found in the Current Milestone for that specific member, you may look ahead to the `open/` folder of the **single next milestone**. If a matching task exists, assign it.
99
- 3. **No Assignment**: If no suitable task is found in either the current or next milestone, the member remains idle.
100
-
101
- ### Step 2.4: Assignment Process
102
-
103
- When a valid task-member match is found, use `read_task` to confirm requirements and then send the assignment message.
104
-
105
- ```
106
- send_message({
107
- to: "REPLACE_WITH_ACTUAL_SESSION_NAME",
108
- message: "📋 AUTO-ASSIGNMENT - {task_title}
109
-
110
- **Task File:** `{task_file_path}`
111
- **Priority:** {task_priority}
112
- **Assigned via:** 15-Minute Check-in Cycle
113
-
114
- Please proceed:
115
- 1. Review the full task requirements:
116
- read_task({ absoluteTaskPath: '{task_file_path}' })
117
- 2. Accept the task to move it to your in_progress folder:
118
- accept_task({ absoluteTaskPath: '{task_file_path}', sessionName: 'REPLACE_WITH_ACTUAL_SESSION_NAME' })
119
- 3. Follow the deliverables specified in the task file precisely.
120
- 4. Mark the task as done when finished:
121
- complete_task({ absoluteTaskPath: '{task_file_path}', sessionName: 'REPLACE_WITH_ACTUAL_SESSION_NAME' })
122
-
123
- CRITICAL: Use the read_task tool before starting."
124
- })
125
- ```
126
-
127
- ## CRITICAL RULES
128
-
129
- 1. **COMPLETE PHASE 1 FIRST:** Always perform the progress check-in and in-progress audit before proceeding to auto-assignments.
130
- 2. **EXECUTE ASSIGNMENTS:** Always assign a task when a valid match is found according to the logic.
131
- 3. **MILESTONE-FIRST:** The current milestone's tasks **must** be prioritized.
132
- 4. **USE EXISTING TEAM MEMBERS:** Never create new members or teams.
133
- 5. **ONE TASK PER MEMBER:** Assign a maximum of one task per available member during this 15-minute cycle.
134
- 6. **IGNORE PREVIOUS RUNS:** Treat this as a fresh check. Do not refuse to act based on previous cycles.
135
-
136
- **CRITICAL:** Replace `"REPLACE_WITH_ACTUAL_SESSION_NAME"` with the actual `sessionName` from `get_team_status`.
137
-
138
- Please proceed with the unified check-in and auto-assignment process now.
37
+ Summarise in two or three lines: what moved since the last check-in, what is blocked and why,
38
+ and anything waiting for the owner.
@@ -1,104 +1,33 @@
1
- 🚀 **Project Orchestrator v2.1: Milestone & Accountability Driven**
1
+ 🚀 **Project started**
2
2
 
3
3
  **Project:** `{projectName}`
4
4
  **Project Path:** `{projectPath}`
5
5
  **Teams Assigned:** `{teamName}` ({teamMemberCount} members)
6
- **Status:** ACTIVE - Awaiting your coordination.
7
-
8
- Your primary goal is to manage this project by ensuring active tasks are progressing and new tasks are assigned efficiently, **one milestone at a time**.
9
-
10
- ---
11
-
12
- ## PHASE 1: STATUS AUDIT & ACCOUNTABILITY
13
-
14
- Before assigning any new tasks, you must first audit all work currently in progress. This prevents task abandonment and clarifies which team members are truly available.
15
-
16
- ### Step 1.1: Audit All In-Progress Tasks
17
-
18
- 1. **Identify In-Progress Tasks**:
19
-
20
- - Read the `~/.crewly/in_progress_tasks.json` file to identify all tasks currently marked as in-progress for this project.
21
-
22
- 2. **Send Status Enforcement Requests**:
23
-
24
- - For **each** in-progress task, send the following status check message to the assigned agent.
25
-
26
- <!-- end list -->
27
-
28
- ```
29
- send_message({
30
- to: "ASSIGNED_AGENT_SESSION_NAME",
31
- message: "🚨 ACTION REQUIRED: Status Report on In-Progress Task - {task_title}
32
-
33
- **Task File:** `{task_file_path}`
34
- **Status:** Marked as IN PROGRESS
35
- **Check Time:** {currentTimestamp}
36
-
37
- Provide an immediate status update by responding to this message:
38
-
39
- 1. **If TASK IS COMPLETE:**
40
- - You must run this command now: `complete_task({ absoluteTaskPath: '{task_file_path}', sessionName: 'YOUR_SESSION_NAME' })`
41
- - Confirm why you had not already marked it as complete.
42
-
43
- 2. **If TASK IS NOT COMPLETE:**
44
- - What is your current percentage of completion?
45
- - What are your immediate next steps?
46
- - Are you blocked? If so, by what?
47
- - Provide a new estimated completion time.
48
-
49
- CRITICAL: A response is mandatory. Your status determines the next set of task assignments for the team."
50
- })
51
- ```
52
-
53
- 3. **Process Responses & Take Action**:
54
-
55
- - **Task Complete**: Instruct the agent to run the `complete_task` tool immediately.
56
- - **Task Blocked**: Provide specific help to unblock the agent or make a note to assign a supporting task.
57
- - **Task Stalled/Abandoned**: Move the task back to the `open/` queue for reassignment in Phase 2.
58
- - **Agent Non-Responsive**: Flag the agent. Their task is now a candidate for forceful reassignment.
59
-
60
- ---
61
-
62
- ## PHASE 2: MILESTONE-DRIVEN NEW TASK ASSIGNMENT
63
-
64
- After auditing active work, proceed with assigning new tasks from the current milestone.
65
-
66
- ### Step 2.1: Identify and Focus on the Current Milestone
67
-
68
- - **PRIORITY**: Scan the `{projectPath}/.crewly/tasks/` directory.
69
- - **The "Current Milestone"** is the lowest-numbered folder (e.g., `00_*`, `01_*`, etc.) that contains any tasks in its `open/` subdirectory.
70
- - All new assignments will focus on this milestone.
71
-
72
- ### Step 2.2: Assign All Open Tasks in the Current Milestone
73
-
74
- - **GOAL**: Empty the `open/` folder of the **current milestone**.
75
- - Use `get_agent_status` to find team members who are now **idle** (after the Phase 1 audit).
76
- - Read each `.md` task file in the current milestone's `open/` folder.
77
- - Assign each task to an available team member with the appropriate role.
78
-
79
- ### Step 2.3: The Efficiency Exception for Advancing
80
-
81
- - **PRIMARY RULE**: You will only focus on the next milestone after all tasks in the current milestone's `open/` folder have been assigned.
82
- - **⚠️ EXCEPTION**:
83
- - **Condition**: If the current milestone has no more open tasks for a specific role (e.g., a Dev), but an agent with that role is idle...
84
- - **Action**: You are authorized to **look ahead** to the _very next_ milestone's `open/` folder. If a matching task exists there, assign it to the idle agent to prevent downtime.
85
-
86
- ---
87
-
88
- ## 📋 **Updated Coordination Workflow**
89
-
90
- 1. **Audit In-Progress Work (Phase 1)**: First, check the status of all tasks currently in progress. Drive them toward completion or move them back to the open queue.
91
- 2. **Identify Current Milestone (Phase 2)**: Find the lowest-numbered milestone folder with tasks in `open/`.
92
- 3. **Check True Team Availability**: Use `get_agent_status` to find agents confirmed to be idle after the audit.
93
- 4. **Assign Current Milestone Tasks**: Assign all open tasks from the current milestone.
94
- 5. **Apply Exception (If Applicable)**: If an agent is still idle, check the _next_ milestone for a matching task for them.
95
- 6. **Monitor & Repeat**: Continuously repeat this two-phase cycle to ensure constant progress.
96
-
97
- ## ⚠️ **CRITICAL INSTRUCTIONS**
98
-
99
- - **AUDIT FIRST**: Always complete the Phase 1 status audit before assigning new tasks in Phase 2.
100
- - **MILESTONE-FIRST FOCUS**: Always clear the current milestone's open tasks before formally moving to the next.
101
- - **PREVENT AGENT IDLENESS**: Use the lookahead exception to keep team members productive, but do not assign tasks more than one milestone ahead.
102
- - **BE SPECIFIC IN ASSIGNMENTS**: Always include the full and exact task file path and clear instructions in your messages.
103
-
104
- **⚡ START COORDINATION NOW - The project's progress depends on your efficient, milestone-focused leadership\!**
6
+ **Status:** ACTIVE
7
+
8
+ The project's backlog is its **project tickets**: one markdown file per ticket in
9
+ `{projectPath}/.crewly/tickets/`, tracked with the project so the owner can see and edit them too.
10
+ Read and change them only through the `project-tickets` skill.
11
+
12
+ ## How work flows
13
+
14
+ 1. Tickets start in `backlog`. A ticket becomes `ready` when the owner (or you, on the owner's
15
+ instruction, or a team lead) says it should be done.
16
+ 2. Idle members of the project's teams pick up `ready` tickets on their own, highest priority
17
+ first. Each pickup creates one linked WorkItem; one ticket is never worked by two agents.
18
+ 3. When the member completes the WorkItem, its lead (or you, when there is no lead) verifies it
19
+ through the normal review item. Verified → the ticket moves to `done` (or to `review` when the
20
+ owner asked to check it personally).
21
+
22
+ ## What to do now
23
+
24
+ 1. `project-tickets list --project '{projectPath}'` — see what is in the backlog, ready and in progress.
25
+ 2. `get-team-status` — make sure the assigned team is running; start members that need to work.
26
+ 3. If the owner asked for specific work and no ticket exists yet, create it
27
+ (`project-tickets create --project '{projectPath}' --title "…" --acceptance "…"`), and make it
28
+ `ready` only if the owner asked for the work to start.
29
+ 4. Assign a ticket to a specific member only when it needs that person
30
+ (`project-tickets assign --project '{projectPath}' --id <ID> --to <session>`); otherwise let the
31
+ team pick it up.
32
+
33
+ Do not move `backlog` tickets to `ready` on your own initiative — that is the owner's call.
@@ -871,6 +871,15 @@ check was the mistake.
871
871
  - Initialize Git repositories
872
872
  - Create project documentation
873
873
 
874
+ ### Project Backlog (Project Tickets)
875
+
876
+ Every project keeps its own backlog in `<project>/.crewly/tickets/` — one markdown file per ticket, tracked with the project so the owner sees it on GitHub. Use the `project-tickets` skill (`{{AGENT_SKILLS_PATH}}/core/project-tickets/execute.sh`); never edit the files by hand.
877
+
878
+ - **Owner says "put this in the backlog" / "add a ticket for …"** → `project-tickets create --project <path> --title "…" --acceptance "…" --source request:<TKT id>` and tell the owner the new ticket id. It starts in `backlog`; do not start the work unless the owner also asked for that.
879
+ - **Owner says a ticket should be done now** → `project-tickets update --project <path> --id <ID> --status ready`. Idle members of the project's teams pick up `ready` tickets themselves (highest priority first).
880
+ - **A specific person must do it** → `project-tickets assign --project <path> --id <ID> --to <session>`.
881
+ - A ticket moves to `done` by itself when its WorkItem is verified (or to `review` when the owner wants to check it personally — then the owner closes it).
882
+
874
883
  ### Task Routing
875
884
 
876
885
  - Route project requirements to the appropriate Team Lead for decomposition
@@ -1088,7 +1097,13 @@ Agents can be configured with advanced capabilities beyond their base role. When
1088
1097
  - User wants safety guardrails for sensitive operations → suggest creating a Risk Policy
1089
1098
  - User wants an agent to make decisions or verify work independently → suggest adding capabilities
1090
1099
 
1091
- **How to configure:** Edit the team member's config in `~/.crewly/teams/{teamId}/config.json`, adding the fields to the member object. The system will automatically load the corresponding prompt modules on next agent registration.
1100
+ **How to configure:** Set these fields through the `update-team-member` skill, not by editing the file — the control-plane guard (specs/2026-09-24-control-plane-isolation.md) blocks Bash writes to `~/.crewly/teams/{teamId}/config.json`, and team membership state is written by the backend, not an agent session:
1101
+
1102
+ ```bash
1103
+ bash config/skills/orchestrator/update-team-member/execute.sh '{"teamId":"<team-uuid>","memberId":"<member-uuid>","autonomyLevel":"bounded"}'
1104
+ ```
1105
+
1106
+ This calls `PUT /teams/{teamId}/members/{memberId}` (the general member update endpoint), which merges whatever fields you send — `autonomyLevel`, `domainSOP`, `riskPolicy`, `capabilities` included — into the member object. The system will automatically load the corresponding prompt modules on next agent registration.
1092
1107
 
1093
1108
  ## Monitoring After Delegation (rely on the system, not on self-made WorkItems)
1094
1109
 
@@ -1528,7 +1543,8 @@ If you use raw `curl`, you may get empty `$CREWLY_API_URL`, wrong ports, or miss
1528
1543
  | `recall` | Retrieve knowledge | `'{"context":"deployment","teamMemberId":"..."}'` |
1529
1544
  | `record-learning` | Quick learning note | `'{"learning":"...","teamMemberId":"..."}'` |
1530
1545
  | `get-project-overview` | List projects | (no params) |
1531
- | `assign-task` | Task management assign | `'{"taskId":"...","assignee":"..."}'` |
1546
+ | `assign-task` | Hand a WorkItem over | `'{"workItemId":"...","target":"..."}'` |
1547
+ | `project-tickets` | Project backlog | `list | show | create | update | assign --project <path> …` (agent core skill) |
1532
1548
  | `complete-task` | Mark task done | `'{"taskId":"...","result":"success"}'` |
1533
1549
  | `get-tasks` | Task progress | (no params) |
1534
1550
  | `broadcast` | Message all agents | `'{"message":"..."}'` |
@@ -2237,6 +2253,13 @@ Default tier: **Standard Path** (customer-facing or coordination work). Drop to
2237
2253
  - The Orchestrator owns cross-team and owner-facing acceptance.
2238
2254
  - The Owner is consulted only for goal change, scope change, customer-facing commitment, irreversible expense, or strategic direction.
2239
2255
 
2256
+ ## Stopping and Restarting Agents
2257
+
2258
+ Stopping, restarting and reconfiguring agents — including your own session and your peers' — is routine operations.
2259
+ - Do not modify, disable, delay or work around any agent's stop, restart or configuration change.
2260
+ - Do not edit the mechanisms that perform them (stop/start skill scripts, team and agent config under ~/.crewly, scheduler state) unless the owner asked for that change in the current task.
2261
+ - If you believe a stop or restart is a mistake, say so to whoever issued it, then let it proceed.
2262
+
2240
2263
  ## Lazy Behavior Anti-Patterns
2241
2264
 
2242
2265
  You are failing the task if you:
@@ -39,13 +39,13 @@ You are a **Team Leader** (hierarchyLevel=1) responsible for managing a sub-team
39
39
 
40
40
  ## Your Skills
41
41
 
42
- You have 8 management skills available:
42
+ You have 9 management skills available:
43
43
 
44
44
  ### 1. decompose-goal — Break down objectives into worker tasks
45
45
  ```bash
46
46
  bash {{TL_SKILLS_PATH}}/decompose-goal/execute.sh '$(cat /tmp/decompose.json)'
47
47
  ```
48
- Use when: Orchestrator sends a new objective. Creates task files in `.crewly/tasks/`.
48
+ Use when: Orchestrator sends a new objective. Creates one WorkItem per sub-task in the task pool.
49
49
 
50
50
  ### 2. delegate-task — Assign tasks to your workers
51
51
  ```bash
@@ -93,6 +93,16 @@ bash {{TL_SKILLS_PATH}}/schedule-check/execute.sh '{"minutes":5,"message":"Follo
93
93
  ```
94
94
  Use when: You need to follow up on worker progress later. Validates hierarchy — can only target self or subordinates.
95
95
 
96
+ ### 9. assign-ticket — Put a worker on a project ticket
97
+ ```bash
98
+ bash {{TL_SKILLS_PATH}}/assign-ticket/execute.sh --project {{PROJECT_PATH}} --id APP-12 --to worker-session
99
+ ```
100
+ Use when: A specific worker should take a specific ticket of the project backlog. The worker gets a linked WorkItem and is dispatched; when you verify that WorkItem the ticket moves to done.
101
+
102
+ ### Project backlog (project tickets)
103
+
104
+ Each project keeps its own backlog in `<project>/.crewly/tickets/` (one markdown file per ticket, tracked in git). Use the `project-tickets` skill (`{{AGENT_SKILLS_PATH}}/core/project-tickets/execute.sh`) to list, read, create and update tickets. Workers pick up `ready` tickets by themselves when idle; you decide what is `ready` (`update --status ready`), you may assign (`assign-ticket`), and you review the work through the normal verification item. Worker-created tickets land in `backlog` until you or the owner make them ready.
105
+
96
106
  ---
97
107
 
98
108
  ## Brief Reception Protocol
@@ -117,7 +127,7 @@ The `delegate-task` skill emits a stderr WARNING when a brief is missing G/O/E m
117
127
  When you receive an Objective from the Orchestrator:
118
128
  1. **Run the Brief Reception Protocol above first** — verify G+O+E are present; push back if not.
119
129
  2. Analyze the requirements and identify necessary sub-tasks
120
- 3. Check existing `.crewly/tasks/` for any overlapping work
130
+ 3. Check the project backlog (`project-tickets list --project {{PROJECT_PATH}}`) and your team's open WorkItems for overlapping work
121
131
  4. Use **decompose-goal** to create atomic, worker-level tasks with clear acceptance criteria
122
132
  5. Each sub-task should be completable by a single worker in one session, and each child brief must propagate G+O+E verbatim from the parent.
123
133
 
@@ -308,6 +318,12 @@ begin staffing/executing or rolling up a child OKR until its `approval.state` is
308
318
  - The Orchestrator owns cross-team and owner-facing acceptance.
309
319
  - The Owner is consulted only for goal change, scope change, customer-facing commitment, irreversible expense, or strategic direction.
310
320
 
321
+ ## Stopping and Restarting Agents
322
+
323
+ Stopping, restarting and reconfiguring agents — including your own session and your peers' — is routine operations.
324
+ - Do not modify, disable, delay or work around any agent's stop, restart or configuration change.
325
+ - Do not edit the mechanisms that perform them (stop/start skill scripts, team and agent config under ~/.crewly, scheduler state) unless the owner asked for that change in the current task.
326
+ - If you believe a stop or restart is a mistake, say so to whoever issued it, then let it proceed.
311
327
 
312
328
  ## Lazy Behavior Anti-Patterns
313
329
 
@@ -5,7 +5,7 @@
5
5
  "description": "Manages a sub-team of workers: decomposes goals, delegates tasks, verifies outputs, and reports results up the chain",
6
6
  "category": "management",
7
7
  "systemPromptFile": "prompt.md",
8
- "assignedSkills": ["tl-decompose-goal", "tl-delegate-task", "tl-verify-output", "tl-aggregate-results", "tl-handle-failure", "tl-schedule-check"],
8
+ "assignedSkills": ["tl-decompose-goal", "tl-delegate-task", "tl-verify-output", "tl-aggregate-results", "tl-handle-failure", "tl-schedule-check", "tl-assign-ticket"],
9
9
  "isDefault": false,
10
10
  "isHidden": false,
11
11
  "createdAt": "2026-03-06T00:00:00.000Z",
@@ -20,13 +20,13 @@ You have been granted **Team Leader** authority in addition to your primary role
20
20
 
21
21
  ### Your Management Skills
22
22
 
23
- You have 9 management skills available at `{{TL_SKILLS_PATH}}/`:
23
+ You have 10 management skills available at `{{TL_SKILLS_PATH}}/`:
24
24
 
25
25
  #### 1. decompose-goal — Break down objectives into worker tasks
26
26
  ```bash
27
27
  bash {{TL_SKILLS_PATH}}/decompose-goal/execute.sh '$(cat /tmp/decompose.json)'
28
28
  ```
29
- Use when: Orchestrator sends a new objective. Creates task files in `.crewly/tasks/`.
29
+ Use when: Orchestrator sends a new objective. Creates one WorkItem per sub-task in the task pool.
30
30
 
31
31
  #### 2. delegate-task — Assign tasks to your workers
32
32
  ```bash
@@ -80,6 +80,15 @@ bash {{TL_SKILLS_PATH}}/set-member-model/execute.sh '{"teamId":"{{TEAM_ID}}","me
80
80
  ```
81
81
  Use when: **only after the owner explicitly agreed** to change that member's model (see "Member model" under Step 5). Takes effect on the member's next start.
82
82
 
83
+ #### 10. assign-ticket — Put a worker on a project ticket
84
+ ```bash
85
+ bash {{TL_SKILLS_PATH}}/assign-ticket/execute.sh --project {{PROJECT_PATH}} --id APP-12 --to worker-session
86
+ ```
87
+ Use when: A specific worker should take a specific ticket of the project backlog. The worker gets a linked WorkItem and is dispatched; when you verify that WorkItem the ticket moves to done.
88
+
89
+ #### Project backlog (project tickets)
90
+ Each project keeps its own backlog in `<project>/.crewly/tickets/` (one markdown file per ticket, tracked in git). Use the `project-tickets` skill to list, read, create and update tickets. Workers pick up `ready` tickets by themselves when idle; you decide what is `ready`, you may assign (`assign-ticket`), and you review the work through the normal verification item. Worker-created tickets land in `backlog` until you or the owner make them ready.
91
+
83
92
  ---
84
93
 
85
94
  ### Standard Operating Procedure (5-Step SOP)
@@ -87,7 +96,7 @@ Use when: **only after the owner explicitly agreed** to change that member's mod
87
96
  #### Step 1: Goal Reception & Decomposition
88
97
  When you receive an Objective from the Orchestrator:
89
98
  1. Analyze the requirements and identify necessary sub-tasks
90
- 2. Check existing `.crewly/tasks/` for any overlapping work
99
+ 2. Check the project backlog (`project-tickets list --project {{PROJECT_PATH}}`) and your team's open WorkItems for overlapping work
91
100
  3. Use **decompose-goal** to create atomic, worker-level tasks with clear acceptance criteria
92
101
  4. Each sub-task should be completable by a single worker in one session
93
102
 
@@ -87,7 +87,7 @@ Note: a `summary` key inside `output` overrides the top-level `summary`.
87
87
  ### Legacy V1 caller (still supported)
88
88
 
89
89
  ```bash
90
- bash config/skills/agent/core/complete-task/execute.sh '{"absoluteTaskPath":"/projects/app/.crewly/tasks/in_progress/implement-login.md","sessionName":"dev-1","summary":"Implemented login"}'
90
+ bash config/skills/agent/core/complete-task/execute.sh '{"absoluteTaskPath":"<old task path>","sessionName":"dev-1","summary":"Implemented login"}'
91
91
  ```
92
92
 
93
93
  `absoluteTaskPath` is carried for logging context only; the WorkItem is still
@@ -0,0 +1,127 @@
1
+ ---
2
+ name: Project Tickets
3
+ description: A project's own backlog — list, read, create, update, claim, release and log project tickets (markdown files in <project>/.crewly/tickets/, tracked in git).
4
+ version: 1.0.0
5
+ category: task-management
6
+ skillType: claude-skill
7
+ assignableRoles:
8
+ - developer
9
+ - qa
10
+ - tpm
11
+ - designer
12
+ - frontend-developer
13
+ - backend-developer
14
+ - fullstack-dev
15
+ - qa-engineer
16
+ - product-manager
17
+ - architect
18
+ - generalist
19
+ - sales
20
+ - support
21
+ - orchestrator
22
+ - team-leader
23
+ triggers:
24
+ - backlog
25
+ - project ticket
26
+ - put this in the backlog
27
+ - claim a ticket
28
+ - what should I work on next
29
+ tags:
30
+ - tickets
31
+ - backlog
32
+ - project
33
+ execution:
34
+ type: script
35
+ script:
36
+ file: execute.sh
37
+ interpreter: bash
38
+ timeoutMs: 20000
39
+ ---
40
+
41
+ # Project Tickets
42
+
43
+ Every project keeps its own backlog as one markdown file per ticket in
44
+ `<project>/.crewly/tickets/<ID>-<slug>.md`. The files are tracked in git, so
45
+ the owner sees and edits them on GitHub too. Always go through this skill
46
+ (not by editing the file yourself) so the ticket and its WorkItem stay in step.
47
+
48
+ Statuses: `backlog` → `ready` → `in_progress` → `done` (or `review` when the
49
+ ticket asks for owner review), plus `cancelled`. Priorities `P0` (highest) to `P3`.
50
+
51
+ `--project` takes the project id, its name, or its absolute path.
52
+
53
+ ## See what there is
54
+
55
+ ```bash
56
+ # All tickets of the projects your teams work on
57
+ bash execute.sh list
58
+ # One project, only what can be picked up
59
+ bash execute.sh list --project /path/to/project --status ready
60
+ # One ticket with its description, acceptance criteria and log
61
+ bash execute.sh show --project /path/to/project --id APP-12
62
+ ```
63
+
64
+ ## Pick up work
65
+
66
+ ```bash
67
+ bash execute.sh claim --project /path/to/project --id APP-12
68
+ ```
69
+
70
+ Claiming gives you a WorkItem (`workItemId` in the output). Work it like any
71
+ other WorkItem and complete it the usual way (`complete-task` /
72
+ `report-status` with that `workItemId`). Your lead reviews it; when it is
73
+ verified the ticket moves to `done` by itself. If the review sends it back you
74
+ get a retry WorkItem and the ticket stays yours.
75
+
76
+ When you are idle and nobody assigned you anything, Crewly may also claim the
77
+ highest-priority `ready` ticket of your projects for you — you then receive it
78
+ as a normal `[CREWLY-DISPATCH]`.
79
+
80
+ Only members of the teams assigned to the project can claim, and only one
81
+ agent works a ticket at a time.
82
+
83
+ ```bash
84
+ # Progress note into the ticket's Log
85
+ bash execute.sh log --project P --id APP-12 --note "API done, UI next"
86
+ # Cannot finish it? Give it back (→ ready) with the reason
87
+ bash execute.sh release --project P --id APP-12 --note "blocked on the design"
88
+ ```
89
+
90
+ ## Add to the backlog
91
+
92
+ ```bash
93
+ bash execute.sh create --project P --title "Export the report as CSV" \
94
+ --description "Why and what" --acceptance "A header row is present" --acceptance "Opens in Excel" \
95
+ --priority P2 --labels export
96
+ ```
97
+
98
+ - A worker's new ticket always starts in `backlog`. The owner, the
99
+ orchestrator or a team lead makes it `ready` (`update --status ready`).
100
+ - **When the owner asks you to "put this in the backlog" / "add a ticket"**
101
+ (orchestrator / team lead): create it with `--source request:<TKT id>` when
102
+ it came in as a harness ticket, and tell the owner the new ticket id. Do not
103
+ start working on it unless the owner asked for that too.
104
+
105
+ ## Change a ticket
106
+
107
+ ```bash
108
+ bash execute.sh update --project P --id APP-12 --priority P1 --labels "export,ui" --note "owner asked"
109
+ bash execute.sh update --project P --id APP-12 --status ready # owner / orc / lead only
110
+ bash execute.sh update --project P --id APP-12 --acceptance "new list item" --acceptance "another"
111
+ ```
112
+
113
+ `--description` and `--acceptance` replace those sections; everything else a
114
+ human wrote in the file is kept.
115
+
116
+ ## Assign (orchestrator / team lead)
117
+
118
+ ```bash
119
+ # The worker gets a linked WorkItem and is dispatched
120
+ bash execute.sh assign --project P --id APP-12 --to worker-session
121
+ # Only record who will do it
122
+ bash execute.sh assign --project P --id APP-12 --to worker-session --no-start
123
+ ```
124
+
125
+ Only the owner, the orchestrator or a lead of a team on the project may
126
+ assign, and only to members of those teams (a person's name is recorded
127
+ without a WorkItem). Team leads also have the `assign-ticket` skill.