@overdeck/desktop 0.45.22 → 0.45.23

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 (375) hide show
  1. package/package.json +1 -1
  2. package/server/{acceptance-criteria-BH7ac_1G.js → acceptance-criteria-DOA0KgXx.js} +5 -5
  3. package/server/{advancing-selfheal-cSvXNZLZ.js → advancing-selfheal-BBu6DSNm.js} +6 -6
  4. package/server/{agent-gc-Dj2gncak.js → agent-gc-BV1q_2EV.js} +4 -4
  5. package/server/agent-state-Bg0lhqwj.js +3 -0
  6. package/server/{agent-state-service-CsQ07Pxe.js → agent-state-service-CnzFKSAQ.js} +1 -1
  7. package/server/{agent-state-service-DistflNn.js → agent-state-service-HoK8U4jW.js} +5 -5
  8. package/server/{agents-DXdHmRTC.js → agents-B4Bjbkfv.js} +4 -4
  9. package/server/agents-FlIgQ3ql.js +3 -0
  10. package/server/{archive-planning-BvDuWNMo.js → archive-planning-DYrYojxl.js} +30 -6
  11. package/server/{archive-planning-Cp_DC1j-.js → archive-planning-zkJb3BeM.js} +1 -1
  12. package/server/{artifact-index-jobs-CDBFL4OU.js → artifact-index-jobs-C-xy7Z5v.js} +2 -2
  13. package/server/{backlog-auto-trigger-DmA1IbYf.js → backlog-auto-trigger-GtG71X8H.js} +3 -3
  14. package/server/{behavior-CGj16clS.js → behavior-B_-4EKF3.js} +2 -2
  15. package/server/{briefing-freshness-C12WgkaB.js → briefing-freshness-DWdW7vUm.js} +2 -2
  16. package/server/{build-info-NU3KbXYw.js → build-info-BT096lEl.js} +3 -3
  17. package/server/{build-info-BRpqQvNd.js → build-info-DgTqZkL5.js} +1 -1
  18. package/server/{checkpoint-manager-rOgT98WY.js → checkpoint-manager-B7Bt29J0.js} +1 -1
  19. package/server/{checkpoint-manager-CTPjAmtH.js → checkpoint-manager-DDqcGyu8.js} +2 -2
  20. package/server/checkpoint-worker.js +1 -1
  21. package/server/{checkpoints-BJum14fs.js → checkpoints-C-AXLfYT.js} +2 -2
  22. package/server/{checkpoints-B5jFNi2G.js → checkpoints-CpgCjAlN.js} +1 -1
  23. package/server/{claude-hooks-provision-BhwWK-TQ.js → claude-hooks-provision-C8wdRnN1.js} +1 -1
  24. package/server/{claude-hooks-provision-D7p5WcKZ.js → claude-hooks-provision-but-_qGY.js} +2 -2
  25. package/server/{claude-permissions-nSFKH78M.js → claude-permissions-H_5wHQZQ.js} +2 -2
  26. package/server/{claude-settings-overlay-DHBwjS1X.js → claude-settings-overlay-BTENVmYf.js} +1 -1
  27. package/server/{claude-settings-overlay-BI_UIke0.js → claude-settings-overlay-CbSz0Dvb.js} +2 -2
  28. package/server/cli-BsVIHwzC.js +3 -0
  29. package/server/{cli-CbKNkFE5.js → cli-vBeXbPrq.js} +9 -9
  30. package/server/{cliproxy-Brf_5MuG.js → cliproxy-Bgb2XCqi.js} +2 -2
  31. package/server/{cliproxy-bONZDBbC.js → cliproxy-DW0V86F8.js} +1 -1
  32. package/server/{close-issue-CxReRxIc.js → close-issue-Dn_4c4G8.js} +5 -5
  33. package/server/{closed-issue-reaper-DXP2Xyv3.js → closed-issue-reaper-CWpY2uBw.js} +1 -1
  34. package/server/{closed-issue-reaper-CQ3kqha7.js → closed-issue-reaper-hANY_ehE.js} +9 -9
  35. package/server/codex-Dg7Is5yb.js +3 -0
  36. package/server/{codex-CbmztVcc.js → codex-TmSi-yTv.js} +27 -8
  37. package/server/{codex-parser-jl8AeAmB.js → codex-parser-C4gSH-IR.js} +2 -2
  38. package/server/{config-q4Gvd8dq.js → config-CCvjQf27.js} +2 -2
  39. package/server/{config-BJKocXKd.js → config-DUIhMN_T.js} +1 -1
  40. package/server/{config-DeTsoZdR.js → config-DjLOdbgT.js} +2 -2
  41. package/server/{config-yaml-ig8Nwtiw.js → config-yaml-DvyMuOle.js} +55 -186
  42. package/server/{conflict-gate-CHU9K1vU.js → conflict-gate-BSJkNTdp.js} +1 -1
  43. package/server/{conflict-gate-CFqPVxEg.js → conflict-gate-CmrYpa47.js} +3 -3
  44. package/server/{context-layers-DlQKkHH2.js → context-layers-B3Nt58jl.js} +2 -2
  45. package/server/{context-layers-15gDOk20.js → context-layers-ZYFcWiyc.js} +3 -3
  46. package/server/{control-settings-D_odMIaC.js → control-settings-aP1ANIlI.js} +4 -4
  47. package/server/{conversation-compaction-B6YSRLda.js → conversation-compaction-CNbTLB86.js} +8 -8
  48. package/server/{conversation-compaction-CN4-5YYt.js → conversation-compaction-DiG5zWQq.js} +1 -1
  49. package/server/{conversation-service-C3avRVEr.js → conversation-service-Du-MTNpJ.js} +6 -6
  50. package/server/{conversation-service-Dq33SYEj.js → conversation-service-Up7FEzIC.js} +1 -1
  51. package/server/{conversations-H9if0bCQ.js → conversations-6mPANqvL.js} +1 -1
  52. package/server/{conversations-bYpM9-kZ.js → conversations-DbOs1e9Q.js} +4 -4
  53. package/server/{cost-wH46-WsJ.js → cost-CW4WSe72.js} +3 -3
  54. package/server/{cost-Codk1pc2.js → cost-Ca0YTWDw.js} +18 -2
  55. package/server/{cost-sync-D_cre6WM.js → cost-sync-C0VdGme1.js} +3 -3
  56. package/server/{dag-CJpgf9A3.js → dag-CdOjJVDT.js} +9 -9
  57. package/server/{dangerous-git-ops-D6AF-Hg_.js → dangerous-git-ops-CT-IypG3.js} +1 -1
  58. package/server/dashboard-db-worker.js +7 -7
  59. package/server/{deacon-B8HbQdqU.js → deacon-DYSEJb48.js} +3 -3
  60. package/server/{deacon-nudge-log-D6K9K-rE.js → deacon-nudge-log-Bjg8U4Y9.js} +3 -3
  61. package/server/{deacon-CkT_kznS.js → deacon-pRnyD5w9.js} +266 -577
  62. package/server/deacon-swarm-9jRLS5Ke.js +2 -0
  63. package/server/{deacon-swarm-BryRr6AO.js → deacon-swarm-DftYRDo8.js} +17 -17
  64. package/server/deacon.js +8 -8
  65. package/server/{deploy-patrol-1IrZxicY.js → deploy-patrol-Bjsho_ha.js} +136 -19
  66. package/server/{deploy-window-7ZYHh7Zp.js → deploy-window-CM6W1-c6.js} +1 -1
  67. package/server/{deploy-window-wDf4UgHt.js → deploy-window-DeP_OIRk.js} +77 -10
  68. package/server/{dev-supervisor-C7p9kEpc.js → dev-supervisor-BpMoHlkR.js} +2 -2
  69. package/server/{devcontainer-renderer-CNmQy0pL.js → devcontainer-renderer-CtUgrVKW.js} +3 -3
  70. package/server/dist-Bd3vn0Hw.js +3 -0
  71. package/server/{dist-D-Ed5yVw.js → dist-DyRx4cI7.js} +1 -1
  72. package/server/{docker-BCZ89M9X.js → docker-BK7HIcBj.js} +2 -2
  73. package/server/{dod-DbJLYcHv.js → dod-BrSfUHm0.js} +1 -1
  74. package/server/{ensure-devcontainer-Cs6W9Yzj.js → ensure-devcontainer-DRqaAkBR.js} +1 -1
  75. package/server/{ensure-devcontainer-V5JWaAva.js → ensure-devcontainer-DseivYEy.js} +4 -4
  76. package/server/{esm-shims-dTeNdq7X.js → esm-shims-CbI3BVkl.js} +1 -1
  77. package/server/{event-store-CpBGsO6_.js → event-store-Cr5PQwFC.js} +1 -1
  78. package/server/{event-store-TnWdydfB.js → event-store-tdiY5eDZ.js} +3 -3
  79. package/server/{events-DSUdR-04.js → events-CC1dgUpx.js} +3 -3
  80. package/server/{events-Dsuv6qyB.js → events-CvvGK6LT.js} +1 -1
  81. package/server/{factory-BMrK4TrE.js → factory-CynerjXO.js} +50 -13
  82. package/server/{feature-registry-population-B-CI9hgE.js → feature-registry-population-B0pmAz0a.js} +4 -4
  83. package/server/{feature-registry-storage-B972ph_A.js → feature-registry-storage-_wUBRD3J.js} +2 -2
  84. package/server/{features-Bc-Bmiye.js → features-Dhxz-wLc.js} +2 -2
  85. package/server/{feedback-target-DZ-iAnAa.js → feedback-target-CPS15Vte.js} +7 -7
  86. package/server/{feedback-target-DS6NUuSs.js → feedback-target-iygZwmMc.js} +1 -1
  87. package/server/{feedback-writer-BXP6g75N.js → feedback-writer-C9b6ccN1.js} +6 -5
  88. package/server/{feedback-writer-Bx5z11mF.js → feedback-writer-qmiMbqTZ.js} +1 -1
  89. package/server/{flywheel-Ctr5uuvo.js → flywheel-DMCUzDWg.js} +1 -1
  90. package/server/{flywheel-COR0mbRI.js → flywheel-DSSpWmqF.js} +13 -13
  91. package/server/{flywheel-6WHU4O7A.js → flywheel-DcBkQvgE.js} +14 -14
  92. package/server/{flywheel-merge-order-CNKAY489.js → flywheel-merge-order-C-6zRLvM.js} +1 -1
  93. package/server/{flywheel-merge-order-CTgHeg-W.js → flywheel-merge-order-DxbQKE1d.js} +8 -8
  94. package/server/forge-B-ZWyTRm.js +2 -0
  95. package/server/{forge-B1S_KZv4.js → forge-Ch9gCFod.js} +2 -2
  96. package/server/{from-DpwQ-sc3.js → from-CJ_aH5jD.js} +1 -1
  97. package/server/{fts-db-DmAcuCkV.js → fts-db-CKgg0VKg.js} +2 -2
  98. package/server/{fts-operations-7d_RkmWp.js → fts-operations-BrL_VTRr.js} +2 -2
  99. package/server/{git-utils-Cc3FHDKd.js → git-utils-BVa07a4a.js} +2 -2
  100. package/server/{git-utils-CsKGnzFA.js → git-utils-Dry_Ka_D.js} +1 -1
  101. package/server/{github-app-CDPtGF7J.js → github-app-CMBdIFBQ.js} +11 -3
  102. package/server/{github-app-CU14oYzP.js → github-app-CPfoFAdV.js} +1 -1
  103. package/server/{github-client-XjTJbBm7.js → github-client--XVlDpwM.js} +2 -2
  104. package/server/{github-client-CwBZZ3t7.js → github-client-B4QsdE-X.js} +1 -1
  105. package/server/{github-pr-lookup-CFGeVhqv.js → github-pr-lookup-BRbDW-qk.js} +2 -2
  106. package/server/{harness-binary-B2CTcD84.js → harness-binary-CVio2m-u.js} +1 -1
  107. package/server/{harness-resolve-D5FVQTmy.js → harness-resolve-qHJBhy3Z.js} +4 -4
  108. package/server/{health-events-DREeevle.js → health-events-C9B8y1Hm.js} +2 -2
  109. package/server/{health-events-C1whmd58.js → health-events-CpfvuVmm.js} +1 -1
  110. package/server/{hooks-yxRsjk-z.js → hooks-DUXw8A0-.js} +2 -2
  111. package/server/{hooks-B-HItBiS.js → hooks-ltecuFqZ.js} +1 -1
  112. package/server/{hume-Dz_OymXE.js → hume-BEq0bUDg.js} +2 -2
  113. package/server/hume-B_DbflNM.js +3 -0
  114. package/server/{idle-stack-reaper-DrCv0OAG.js → idle-stack-reaper-D7w9t3fE.js} +1 -1
  115. package/server/{idle-stack-reaper-Yf34xXxY.js → idle-stack-reaper-w1ISSlhs.js} +2 -2
  116. package/server/{in-flight-guard-BoWm66Kh.js → in-flight-guard-aQ1IxeI3.js} +2 -2
  117. package/server/{infra-D4iNWMA5.js → infra-CzaSOgul.js} +4 -4
  118. package/server/{injection-D7T75Pye.js → injection-DZ0PfYa4.js} +7 -7
  119. package/server/{injection-BVNa4MQW.js → injection-oNZeoDhL.js} +1 -1
  120. package/server/{inspect-agent-BXCgNeZ4.js → inspect-agent-DJKLWcVT.js} +12 -12
  121. package/server/inspect-agent-ch-F-5Ci.js +2 -0
  122. package/server/{internal-token-CXsfxslp.js → internal-token-Bb4XeV2x.js} +2 -2
  123. package/server/{internal-token-C9DdEOKY.js → internal-token-DXdfprGr.js} +1 -1
  124. package/server/{io-DQR9PMgS.js → io-B3_AHDfr.js} +160 -184
  125. package/server/{issue-closed-DtmJM0D0.js → issue-closed-zhdvQicO.js} +7 -7
  126. package/server/{issue-lifecycle-CeyW_HoD.js → issue-lifecycle-CreaCkjW.js} +22 -22
  127. package/server/{issue-lifecycle-8PSS9Anq.js → issue-lifecycle-Dy4vd0Oa.js} +1 -1
  128. package/server/{issue-service-singleton-D_RVYBuL.js → issue-service-singleton-B5ushCvE.js} +8 -8
  129. package/server/{issue-service-singleton-DBZabEl7.js → issue-service-singleton-DabvBWUp.js} +1 -1
  130. package/server/{issues-pDW9VUNz.js → issues-B6ToV6x1.js} +2 -2
  131. package/server/{jsonl-parser-C3HVNR5d.js → jsonl-parser-Dhflo1SH.js} +3 -3
  132. package/server/{label-cleanup-DPwiZlWo.js → label-cleanup-BKPJm4Hv.js} +3 -3
  133. package/server/{label-reconciler-Df1ZduPH.js → label-reconciler-DdWbHEBu.js} +4 -4
  134. package/server/{launcher-generator-COgR2By1.js → launcher-generator-CHVm7bGT.js} +10 -9
  135. package/server/{layers-Cp1To4L8.js → layers-DzxSTGNA.js} +2 -2
  136. package/server/lifecycle-DfeyBDwA.js +121 -0
  137. package/server/lifecycle-io-Bsnr2K4F.js +3 -0
  138. package/server/{lifecycle-io-taIb0PoH.js → lifecycle-io-D8iNBcux.js} +37 -37
  139. package/server/{lifecycle-CtPDcZ9u.js → lifecycle-sycO16hj.js} +6 -6
  140. package/server/{linear-client-DsFkIxee.js → linear-client-D4zqMnX7.js} +2 -2
  141. package/server/{linear-client-YwZMDIwQ.js → linear-client-DqhDQO9k.js} +1 -1
  142. package/server/memory-fts-worker.js +1 -1
  143. package/server/{merge-C1t-bspg.js → merge-C_ZEhbqI.js} +3 -3
  144. package/server/{merge-BwsyNRJV.js → merge-DK23JEdS.js} +1 -1
  145. package/server/{merge-agent-B-SnXOoc.js → merge-agent-BQM3a8z5.js} +1 -1
  146. package/server/{merge-agent-DDiIjzk-.js → merge-agent-XrB80vfT.js} +28 -28
  147. package/server/{merge-batch-Byt-QnEl.js → merge-batch-Bwoyr8Je.js} +1 -1
  148. package/server/{merge-blockers-BYjeXrVN.js → merge-blockers-BsFjGrQ8.js} +2 -2
  149. package/server/merge-ops-DlB1IM0Y.js +2 -0
  150. package/server/{merge-rebase-Cm6fXaZN.js → merge-rebase-C1KIVr0s.js} +2 -2
  151. package/server/{merge-set-DiISXcC-.js → merge-set-DLz0MkGT.js} +3 -3
  152. package/server/{merge-set-6LEglm6o.js → merge-set-DnSYdBEp.js} +1 -1
  153. package/server/{merge-sync-Do8_q32h.js → merge-sync-DZ9dojJn.js} +2 -2
  154. package/server/{merge-sync-B95_4in_.js → merge-sync-SSv3E-pl.js} +1 -1
  155. package/server/{merge-train-CKana8EH.js → merge-train-DxDfBTjr.js} +3 -3
  156. package/server/{merge-train-deps-BgmqwIfA.js → merge-train-deps-CyYQUksx.js} +4 -4
  157. package/server/{merge-verification-CqnUzGEK.js → merge-verification-CSizH3HY.js} +4 -4
  158. package/server/{multipart-parser-tdOQDJ3o.js → multipart-parser-Dt8YPN5S.js} +2 -2
  159. package/server/{no-resume-mode-BWOSZjWd.js → no-resume-mode-Cx3K0hHi.js} +11 -8
  160. package/server/node_modules/.package-lock.json +1 -1
  161. package/server/{orphan-proposed-reconciler-DSvsJ5M7.js → orphan-proposed-reconciler-BTkDrl4R.js} +1 -1
  162. package/server/{orphan-proposed-reconciler-xklgvNA7.js → orphan-proposed-reconciler-neK8dHQk.js} +15 -13
  163. package/server/package-lock.json +2 -2
  164. package/server/package.json +1 -1
  165. package/server/{pan-dir-DOcf6ug3.js → pan-dir-DeVUgwA7.js} +78 -58
  166. package/server/{paths-DooHpt9p.js → paths-_zEts6wc.js} +2 -2
  167. package/server/{pickup-CaskQ7j6.js → pickup-Dd0Znxxy.js} +1 -1
  168. package/server/{pipeline-membership-1LGRjo-k.js → pipeline-membership-0HaEGDlH.js} +186 -67
  169. package/server/{pipeline-notifier-CZsrU_nj.js → pipeline-notifier-6iCJplFZ.js} +1 -1
  170. package/server/{pipeline-notifier-B6FVsYF9.js → pipeline-notifier-D0ykk59O.js} +2 -2
  171. package/server/{project-pipelines-CtNG_rvs.js → project-pipelines-2sK1apsO.js} +2 -2
  172. package/server/projects-9SkRpES9.js +3 -0
  173. package/server/{prompts-EvhMeeHG.js → prompts-Dp4Tpk39.js} +2 -2
  174. package/server/{providers-DNSQqy2V.js → providers-DKkBXhxU.js} +1 -1
  175. package/server/{providers-BDDPULlp.js → providers-DV7ec8l7.js} +7 -7
  176. package/server/public/assets/{chunk-BO2N2NFS-sym_ufXe.js → chunk-BO2N2NFS-CltymLRg.js} +4 -4
  177. package/server/public/assets/{diagram-OG6HWLK6-CQJPBNBu.js → diagram-OG6HWLK6-D2f6pjgA.js} +1 -1
  178. package/server/public/assets/{dist-Bio7THQU.js → dist-BWR4qFiV.js} +1 -1
  179. package/server/public/assets/{dist-DukGS2YZ.js → dist-DEmlBBNQ.js} +3 -3
  180. package/server/public/assets/{ganttDiagram-6RSMTGT7-D4lWwte3.js → ganttDiagram-6RSMTGT7-DnfiViPK.js} +1 -1
  181. package/server/public/assets/{highlighted-body-OFNGDK62-CaLboCt5.js → highlighted-body-OFNGDK62-B8Wrmj9H.js} +1 -1
  182. package/server/public/assets/index-CUr1xv8w.css +1 -0
  183. package/server/public/assets/{index-Bwejq-5s.js → index-CsSuZQBI.js} +145 -144
  184. package/server/public/assets/{linear-qUWmMZ-c.js → linear-C9zFQpkX.js} +1 -1
  185. package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +1 -0
  186. package/server/public/assets/{pieDiagram-4H26LBE5-C4zYulEm.js → pieDiagram-4H26LBE5-lR8H7Yjd.js} +1 -1
  187. package/server/public/assets/{prod-C8VtLuWC.js → prod-B1jCQihw.js} +4 -4
  188. package/server/public/assets/{quadrantDiagram-W4KKPZXB-qP04zyZC.js → quadrantDiagram-W4KKPZXB-CVQ2guem.js} +1 -1
  189. package/server/public/assets/{sankeyDiagram-5OEKKPKP-eMPTX_cG.js → sankeyDiagram-5OEKKPKP-eD1RB4gm.js} +1 -1
  190. package/server/public/assets/{xychartDiagram-2RQKCTM6-Dme1PIt6.js → xychartDiagram-2RQKCTM6-ChEC6dQn.js} +1 -1
  191. package/server/public/index.html +2 -2
  192. package/server/{pull-requests-By_BteaL.js → pull-requests--Ib2jTgy.js} +1 -1
  193. package/server/{pull-requests-8z2N1UOV.js → pull-requests-CXIhdCYD.js} +13 -11
  194. package/server/{queries-ZABd5aXP.js → queries-6d7Cdtm7.js} +693 -104
  195. package/server/{rally-i_goYmiA.js → rally-B708-nZn.js} +3 -3
  196. package/server/{rally-api-DqKqIMNR.js → rally-api-nY0ZANw3.js} +2 -2
  197. package/server/{rally-api-xHazRk0d.js → rally-api-yjQ0TfHd.js} +1 -1
  198. package/server/{rally-client-COYz1vYR.js → rally-client-B1EJhfV0.js} +4 -4
  199. package/server/{rally-client-CGWEHaPd.js → rally-client-CULK2XAY.js} +1 -1
  200. package/server/rally-njs_mJrt.js +3 -0
  201. package/server/{reap-terminal-sessions-CaMkFOIH.js → reap-terminal-sessions-MWnqdLCJ.js} +1 -1
  202. package/server/{reap-terminal-sessions-DG9eiMVz.js → reap-terminal-sessions-N3BTkmX_.js} +1 -1
  203. package/server/{rebuild-stack-JUm0jqYP.js → rebuild-stack-Dp4eLkt4.js} +6 -6
  204. package/server/{rebuild-stack-CKjJAI8L.js → rebuild-stack-kA7XngID.js} +1 -1
  205. package/server/{reconstruct-cache-wU79aCee.js → reconstruct-cache-uWbZfjms.js} +6 -6
  206. package/server/record-t6V-3Dcj.js +3 -0
  207. package/server/{record-update-D3N6WMFR.js → record-update-DACtKh6_.js} +1 -1
  208. package/server/record-update-Dq0t2uBG.js +310 -0
  209. package/server/{recovery-trip-DkzJSej9.js → recovery-trip-BJtIQuag.js} +2 -2
  210. package/server/{release-engine-DMINVN8S.js → release-engine-DZpmGGzb.js} +5 -5
  211. package/server/{release-set-DeUSOEHy.js → release-set-hnXd_kga.js} +3 -3
  212. package/server/{remote-Dr5kGYSZ.js → remote-4tiENDaI.js} +3 -3
  213. package/server/{remote-b-c5bOce.js → remote-Br-ZWVIP.js} +3 -3
  214. package/server/{remote-agents-D6O_zETW.js → remote-agents-CRCg1L4H.js} +1 -1
  215. package/server/{remote-agents-Ct_WOyke.js → remote-agents-nmty1mLu.js} +6 -6
  216. package/server/{remote-completion-Dca3hAaa.js → remote-completion-BbWNd10K.js} +12 -12
  217. package/server/resume-CcKqnTvE.js +3 -0
  218. package/server/{review-agent-CCum8sGe.js → review-agent-DJRO8EG8.js} +1 -1
  219. package/server/{review-agent-CThvgK2r.js → review-agent-sKkE1FEL.js} +22 -22
  220. package/server/{review-artifacts-CXywD0F2.js → review-artifacts-BLbSC4ke.js} +5 -5
  221. package/server/{review-context-OYfKUprb.js → review-context-BgX3lcCx.js} +8 -8
  222. package/server/{review-status-DFRjDFef.js → review-status-A7quS5KJ.js} +54 -21
  223. package/server/review-status-C6n6-9f_.js +3 -0
  224. package/server/{review-status-enrichment-crNAtIpL.js → review-status-enrichment-tbOn_A_u.js} +3 -3
  225. package/server/{review-status-sync-DpAMD_WO.js → review-status-sync-BhSQ0d0l.js} +2 -2
  226. package/server/{review-status-sync-D60PJWNL.js → review-status-sync-To3-iS-N.js} +1 -1
  227. package/server/{review-verdict-feedback-JImjut0z.js → review-verdict-feedback-C1Kg8n7t.js} +1 -1
  228. package/server/{review-verdict-feedback-CpUZl5aE.js → review-verdict-feedback-CTRNtzXO.js} +6 -6
  229. package/server/{rollup-CZ02qgxk.js → rollup-B53Y81xK.js} +1 -1
  230. package/server/{rollup-SyuF09e4.js → rollup-WA0VD-Rr.js} +8 -8
  231. package/server/{scanner-Br0Z5S6R.js → scanner-D2743cp8.js} +11 -7
  232. package/server/{sequence-io-fxU0DlwW.js → sequence-io-Cg0zYj_E.js} +4 -4
  233. package/server/{sequencer-agent-B5YC5XVP.js → sequencer-agent-BGY8gjg-.js} +5 -5
  234. package/server/server.js +941 -752
  235. package/server/{service-Bagb90KZ.js → service-DCpB_SGd.js} +53 -53
  236. package/server/{session-fork-BqQxd-V6.js → session-fork-BQ8_6H32.js} +2 -2
  237. package/server/{session-history-XdS0JKp3.js → session-history-CVZDpS3c.js} +4 -4
  238. package/server/{settings-BNbocWOg.js → settings-BZ5m1UCl.js} +3 -3
  239. package/server/settings-D0OSwos5.js +2 -0
  240. package/server/{settings-uLc6DEYI.js → settings-ylxwqwQG.js} +2 -2
  241. package/server/{shadow-engineering-D4X_s3fA.js → shadow-engineering-BlxG6Xye.js} +2 -2
  242. package/server/{shadow-state-CbvsN3qG.js → shadow-state-C2_epgx2.js} +1 -1
  243. package/server/{shadow-state-C_NkP-sa.js → shadow-state-Dh-HzF2J.js} +2 -2
  244. package/server/{shadow-utils-CYMRPeRT.js → shadow-utils-4bvjn9b3.js} +2 -2
  245. package/server/{ship-log-__QtAFXG.js → ship-log-ClSMIzZX.js} +1 -1
  246. package/server/{smart-compaction-jdMkG1vo.js → smart-compaction-CHIxLr_d.js} +1 -1
  247. package/server/{smart-compaction-CLZOWin1.js → smart-compaction-r4pHQBIr.js} +7 -7
  248. package/server/{spawn-planning-session-D5OXo8pT.js → spawn-planning-session-DWAorh2B.js} +22 -21
  249. package/server/{spawn-planning-session-8D6mE033.js → spawn-planning-session-KC_UduxD.js} +1 -1
  250. package/server/{specialist-completion-CqmduO92.js → specialist-completion-BXhav38U.js} +1 -1
  251. package/server/{specialist-context-CJ-QjFR-.js → specialist-context-DtrYvGJ-.js} +5 -5
  252. package/server/{specialist-handoff-logger-Dnjlwt7g.js → specialist-handoff-logger-C45ouoZ6.js} +2 -2
  253. package/server/{specialist-logs-CQnKzuZs.js → specialist-logs-DJ3RzKxW.js} +3 -3
  254. package/server/{specialists-D0gGXMZx.js → specialists-D5fRZXmN.js} +1 -1
  255. package/server/specialists-DVj0hvaL.js +3 -0
  256. package/server/{specialists-CwZHb5cb.js → specialists-DyFeedjn.js} +66 -76
  257. package/server/{specialists-Bg9v4z3F.js → specialists-JVO00bs7.js} +340 -214
  258. package/server/specs-nN45DG2X.js +3 -0
  259. package/server/{src-BMMoA_ba.js → src-CG9mCkP6.js} +6 -6
  260. package/server/{src-Bqdtd6po.js → src-CMTQGyCK.js} +3 -3
  261. package/server/{src-k039WVYY.js → src-U7_kTPEE.js} +2 -1
  262. package/server/{stack-health-Bd06frFn.js → stack-health-Df0YEZKa.js} +1 -1
  263. package/server/{stack-health-C-ifC7b0.js → stack-health-puygdaMd.js} +2 -2
  264. package/server/{stale-task-claims-L7pJkQFL.js → stale-task-claims-BbFwCTb0.js} +4 -4
  265. package/server/{staleness-BID1BKdr.js → staleness-Bpy41ngS.js} +15 -3
  266. package/server/{staleness-_Tr-GwdA.js → staleness-Cbl_w4Bw.js} +1 -1
  267. package/server/{state-home-CONQvZR0.js → state-home-CIGjwNfJ.js} +96 -44
  268. package/server/{state-migrate-BeBW0KXA.js → state-migrate-Dkzaxvny.js} +12 -3
  269. package/server/{stuck-remediation-CKnIryGT.js → stuck-remediation-CzEov_fq.js} +26 -22
  270. package/server/{stuck-remediation-CsGD5Ksb.js → stuck-remediation-sY_MHHgQ.js} +1 -1
  271. package/server/{substrate-bug-weights-service-CpIZILj9.js → substrate-bug-weights-service-BH66lhm7.js} +3 -3
  272. package/server/{summary-fork-agEMsPSo.js → summary-fork-D8bXjCr7.js} +2 -2
  273. package/server/{summary-fork-bX6ax6X7.js → summary-fork-DHhJIsAL.js} +8 -8
  274. package/server/{supervisor-Ctt4eRYz.js → supervisor-BO-Zk_h-.js} +3 -3
  275. package/server/supervisor-BPy-o1A8.js +2 -0
  276. package/server/{swarm-readiness-DdmJVX7y.js → swarm-readiness-CQ_fwUWF.js} +4 -4
  277. package/server/{system-prerequisites-DSXBvffY.js → system-prerequisites-Bza0ffAh.js} +2 -2
  278. package/server/{teardown-workspace-DDCf5n-a.js → teardown-workspace-CEgauF4U.js} +15 -15
  279. package/server/{test-agent-queue-BJZ9Nfcc.js → test-agent-queue-DXDt0Xa-.js} +7 -7
  280. package/server/{test-verdict-Cp5tljlJ.js → test-verdict-CmUBK5cT.js} +1 -1
  281. package/server/{test-verdict-D_-sXIz_.js → test-verdict-DFjjIHR5.js} +1 -1
  282. package/server/{tldr-daemon-BQFmmFp0.js → tldr-daemon-BDtLOIlO.js} +2 -2
  283. package/server/{tldr-daemon-B8_oT5gx.js → tldr-daemon-DL566HbH.js} +1 -1
  284. package/server/tmux-DoThH6aj.js +3 -0
  285. package/server/{tmux-L5LgvGLp.js → tmux-ftABRAmc.js} +76 -44
  286. package/server/{token-BkQLy4yS.js → token-CsOhvw42.js} +2 -2
  287. package/server/{token-util-DI8sGlmF.js → token-util-CTmczIfW.js} +1 -1
  288. package/server/token-util-DrHg8abn.js +3 -0
  289. package/server/{tracker-config-DdT-nUAM.js → tracker-config-B4itFzDo.js} +2 -2
  290. package/server/{tracker-utils-DV3h1FYG.js → tracker-utils-BePq_oj-.js} +1 -1
  291. package/server/{tracker-utils-CawsPSS2.js → tracker-utils-tnxxqROg.js} +2 -2
  292. package/server/{traefik-connect-C6mJckNs.js → traefik-connect-m73vGebA.js} +1 -1
  293. package/server/{tunnel-IdK1iTHx.js → tunnel-B2vxjx_b.js} +3 -3
  294. package/server/{tunnel-BIFl98rc.js → tunnel-Cgj-IGIl.js} +1 -1
  295. package/server/{types-7-GnJn0t.js → types-BBNjPcqU.js} +1 -1
  296. package/server/{uat-train-j0cPeMSj.js → uat-train-CuEn0t9M.js} +28 -28
  297. package/server/{uat-train-0Ujk8GCv.js → uat-train-cKfM-_WW.js} +1 -1
  298. package/server/{validation-CabEISJT.js → validation-B5JxoPUS.js} +259 -9
  299. package/server/{validation-DcAgXTQp.js → validation-CIi6pnI2.js} +1 -1
  300. package/server/{verification-artifact-BuTA1QbL.js → verification-artifact-BcnIbigL.js} +1 -1
  301. package/server/{verification-artifact-Ck1tefmz.js → verification-artifact-C-lIHfUa.js} +1 -1
  302. package/server/{verification-runner-FiuAZ-H2.js → verification-runner-Br0S_Ous.js} +102 -37
  303. package/server/{verification-runner-DlJezzef.js → verification-runner-CDj4lD4t.js} +1 -1
  304. package/server/{vtt-parser-BnRsYzcz.js → vtt-parser-DKpNNW5i.js} +1 -1
  305. package/server/{work-agent-prompt-DLthEPAq.js → work-agent-prompt-Yb2bd3Fq.js} +13 -13
  306. package/server/{workflows-BZNNYkGC.js → workflows-C9WmILql.js} +39 -77
  307. package/server/workflows-D90rMOya.js +2 -0
  308. package/server/{workspace-D9ppycdg.js → workspace-BVl4rihN.js} +3 -3
  309. package/server/{workspace-3IC-UkAi.js → workspace-DuUdndHe.js} +1 -1
  310. package/server/{workspace-config-Bigl_-Lk.js → workspace-config-cEGcO6UT.js} +1 -1
  311. package/server/{workspace-manager-B1WOfKvB.js → workspace-manager-ZTdJAy9M.js} +1 -1
  312. package/server/{workspace-manager-ClkCIWTe.js → workspace-manager-hLUv3ADC.js} +22 -15
  313. package/server/{workspace-metadata-tiSRIWJP.js → workspace-metadata-CskwzzhL.js} +2 -2
  314. package/server/{workspace-metadata-BE0efUv_.js → workspace-metadata-DNpMixRq.js} +1 -1
  315. package/server/{workspaces-CFPcL0vl.js → workspaces-hWvy9eKs.js} +275 -109
  316. package/sync-sources/agents/pan-inspect-agent.md +1 -1
  317. package/sync-sources/agents/pan-merge-agent.md +1 -1
  318. package/sync-sources/agents/pan-planning-agent.md +4 -4
  319. package/sync-sources/agents/pan-work-agent.md +1 -1
  320. package/sync-sources/dev-skills/pan-commit/SKILL.md +1 -1
  321. package/sync-sources/dev-skills/test-specialist-workflow/SKILL.md +1 -1
  322. package/sync-sources/hooks/record-cost-event.js +363 -71
  323. package/sync-sources/hooks/session-start-hook +7 -0
  324. package/sync-sources/hooks/work-agent-stop-hook +1 -1
  325. package/sync-sources/rules/per-bead-durability.md +1 -1
  326. package/sync-sources/rules/prd-authoring.md +1 -1
  327. package/sync-sources/skills/feature-work/SKILL.md +1 -1
  328. package/sync-sources/skills/pan/SKILL.md +2 -2
  329. package/sync-sources/skills/pan-admin-config/SKILL.md +1 -0
  330. package/sync-sources/skills/pan-approve/SKILL.md +1 -1
  331. package/sync-sources/skills/pan-close/SKILL.md +1 -1
  332. package/sync-sources/skills/pan-doctor/SKILL.md +1 -1
  333. package/sync-sources/skills/pan-new-project/SKILL.md +9 -11
  334. package/sync-sources/skills/pan-oversee/SKILL.md +5 -5
  335. package/sync-sources/skills/pan-plan/SKILL.md +6 -6
  336. package/sync-sources/skills/pan-quickstart/SKILL.md +1 -1
  337. package/sync-sources/skills/pan-recap/SKILL.md +2 -2
  338. package/sync-sources/skills/pan-review/SKILL.md +1 -1
  339. package/sync-sources/skills/pan-start/SKILL.md +3 -3
  340. package/sync-sources/skills/pan-swarm/SKILL.md +1 -1
  341. package/sync-sources/skills/pan-sync/SKILL.md +1 -1
  342. package/sync-sources/skills/pan-task/SKILL.md +2 -2
  343. package/sync-sources/skills/pan-wipe/SKILL.md +2 -2
  344. package/sync-sources/skills/pipeline-list/SKILL.md +1 -1
  345. package/sync-sources/skills/pipeline-status/SKILL.md +2 -2
  346. package/sync-sources/skills/plan/SKILL.md +11 -11
  347. package/sync-sources/skills/write-vbrief/SKILL.md +7 -282
  348. package/sync-sources/skills/write-xbrief/SKILL.md +295 -0
  349. package/sync-sources/templates/claude-md/sections/warnings.md +1 -1
  350. package/server/agent-state-Co5Sy2Fw.js +0 -3
  351. package/server/agents-DyHKlq1I.js +0 -3
  352. package/server/cli-BRORS9qY.js +0 -3
  353. package/server/codex-DNyiQDKW.js +0 -3
  354. package/server/deacon-swarm-CV54eNmU.js +0 -2
  355. package/server/dist-j64RzSrQ.js +0 -3
  356. package/server/forge-B0_opi-V.js +0 -2
  357. package/server/hume-BmhvfVbV.js +0 -3
  358. package/server/inspect-agent-Dq0z1k3H.js +0 -2
  359. package/server/lifecycle-io-DmY2qwCn.js +0 -3
  360. package/server/merge-ops-DwWCkSgo.js +0 -2
  361. package/server/projects-BKkwpH6q.js +0 -3
  362. package/server/public/assets/index-Bdc4V9ba.css +0 -1
  363. package/server/public/assets/mermaid-GHXKKRXX-B5v_r7cI.js +0 -1
  364. package/server/rally-OSJXdiHK.js +0 -3
  365. package/server/record-rwK-nKv_.js +0 -3
  366. package/server/record-update-Crz74r-6.js +0 -168
  367. package/server/resume-wZZsWtzz.js +0 -3
  368. package/server/review-status-Bnh-rdkY.js +0 -3
  369. package/server/settings-BlUsVaUc.js +0 -2
  370. package/server/specialists-Dqe6_HE5.js +0 -3
  371. package/server/specs-BhOKBzqk.js +0 -3
  372. package/server/supervisor-COVHrBTg.js +0 -2
  373. package/server/tmux-BAvtac_u.js +0 -3
  374. package/server/token-util-BArZLN6w.js +0 -3
  375. package/server/workflows-C4mR0Reb.js +0 -2
@@ -1,292 +1,17 @@
1
1
  ---
2
2
  name: write-vbrief
3
- description: >
4
- Write a vBRIEF spec (.pan/spec.vbrief.json) and continue.json directly — without
5
- launching the interactive planning agent. Use when the work is well-understood
6
- and the agent can author the plan from the issue body and codebase alone.
7
- Also use when you ARE the work agent and need to self-plan before implementing.
8
- Covers the full xBRIEF v0.8 schema, continue.json format, task sizing rules,
9
- inspection gates, and the `pan plan finalize` handoff command.
3
+ description: "Compatibility redirect: /write-vbrief has been renamed to /write-xbrief"
10
4
  triggers:
5
+ - /write-vbrief
11
6
  - write vbrief
12
7
  - create vbrief
13
- - write spec.vbrief.json
14
- - skip planning agent
15
- - self-plan
16
- - author plan
17
- - create plan manually
18
- - write plan without planning agent
19
- allowed-tools:
20
- - Bash
21
- - Read
22
- - Write
23
- - Grep
24
- - Glob
8
+ allowed-tools: []
25
9
  ---
26
10
 
27
- # Write vBRIEF — Direct Plan Authoring
11
+ # /write-vbrief renamed to /write-xbrief
28
12
 
29
- Use this skill when you want to author a vBRIEF plan directly, bypassing the interactive planning agent. This is appropriate when:
13
+ This compatibility stub preserves the former skill name. Use `/write-xbrief` for direct xBRIEF plan authoring.
30
14
 
31
- - The work is well-scoped and doesn't need a Q&A discovery session
32
- - You are a work agent that received an issue without a pre-existing plan
33
- - The issue is small enough that a full planning session would cost more than the work itself
34
- - You need to rewrite or patch a broken vBRIEF before continuing work
15
+ If this skill is invoked, stop reading this file and invoke `/write-xbrief` so the current xBRIEF v0.8 schema, task rules, and finalization guidance load.
35
16
 
36
- After writing the plan, run `pan plan finalize` to materialize vBRIEF tasks and promote the spec to main.
37
-
38
- ---
39
-
40
- ## Step 1 — Explore First
41
-
42
- Before writing a single line of JSON, read the issue and explore the relevant code. A plan written without codebase context will have wrong file paths, wrong difficulty estimates, and spurious edges.
43
-
44
- Minimum exploration:
45
- - Read the issue body and any linked PRDs in `<projectRoot>/.pan/drafts/<ISSUE-ID>.md`
46
- - Grep for the primary symbols, commands, or files the issue mentions
47
- - Identify which subsystems are affected and how many files will change
48
- - Check for existing specs: `find <projectRoot>/.pan/specs -name "*<issue-id>*"`
49
-
50
- ---
51
-
52
- ## Step 2 — Write `.pan/spec.vbrief.json`
53
-
54
- The file goes at `.pan/spec.vbrief.json` in the workspace root. It MUST conform to xBRIEF v0.8.
55
-
56
- ### Full schema
57
-
58
- ```json
59
- {
60
- "xBRIEFInfo": {
61
- "version": "0.8",
62
- "created": "<ISO 8601 timestamp>",
63
- "author": "overdeck/<VERSION>",
64
- "description": "Plan for <ISSUE-ID>: <issue title>"
65
- },
66
- "plan": {
67
- "id": "<issue-id-lowercase>",
68
- "title": "<issue title>",
69
- "status": "approved",
70
- "uid": "<UUID v4>",
71
- "author": "agent:<model-slug>",
72
- "sequence": 1,
73
- "created": "<ISO 8601 timestamp>",
74
- "updated": "<ISO 8601 timestamp>",
75
- "references": [
76
- { "uri": "<issue URL>", "label": "<ISSUE-ID>", "type": "issue" }
77
- ],
78
- "tags": ["<relevant tags>"],
79
- "narratives": {
80
- "Problem": "<what problem this solves>",
81
- "Proposal": "<the approach chosen>",
82
- "NonGoals": "<explicitly out of scope; behaviors this issue must NOT introduce — one per line, prefixed '- '>"
83
- },
84
- "autoDecisions": [],
85
- "items": [
86
- {
87
- "id": "<short-kebab-id>",
88
- "title": "<task title>",
89
- "status": "pending",
90
- "priority": "medium",
91
- "created": "<ISO 8601 timestamp>",
92
- "metadata": {
93
- "difficulty": "trivial|simple|medium|complex|expert",
94
- "issueLabel": "<issue-id-lowercase>",
95
- "requiresInspection": false,
96
- "inspectionDepth": "fast",
97
- "files_scope": ["src/path/to/file.ts"],
98
- "files_scope_confidence": "high",
99
- "verify_commands": ["npm run typecheck"],
100
- "expected_outputs": ["typecheck completes without errors"],
101
- "readiness": "ready",
102
- "traces": ["FR-1", "NFR-2"]
103
- },
104
- "narrative": { "Action": "<what needs to be done>" },
105
- "items": [
106
- {
107
- "id": "<parent-id>.ac1",
108
- "title": "<specific testable acceptance criterion>",
109
- "status": "pending",
110
- "metadata": { "kind": "acceptance_criterion" }
111
- }
112
- ]
113
- }
114
- ],
115
- "edges": [
116
- { "from": "<source-item-id>", "to": "<target-item-id>", "type": "blocks" }
117
- ]
118
- }
119
- }
120
- ```
121
-
122
- ### Field rules
123
-
124
- | Field | Rule |
125
- |-------|------|
126
- | `plan.id` | Issue ID in **lowercase** — e.g. `"pan-1234"`. Never `issueId`, never `issue_id`. |
127
- | `plan.uid` | Fresh UUID v4. Generate with `node -e "console.log(crypto.randomUUID())"`. |
128
- | `plan.status` | Must be `"approved"` when written by a self-planning agent (skip `draft`/`proposed`). |
129
- | `items[].status` | One of: `draft`, `proposed`, `approved`, `pending`, `running`, `completed`, `blocked`, `cancelled`, `failed`. Use `"pending"` for new items. |
130
- | `plan.narratives.NonGoals` | Required narrative. List everything discovery established as out of scope (`"none"` if genuinely nothing); review enforces these as must-not constraints. |
131
- | `items[].metadata.requiresInspection` | **Required on every item.** See inspection rules below. |
132
- | `items[].metadata.inspectionDepth` | `"fast"` (default) or `"deep"`. Only matters when `requiresInspection: true`. |
133
- | `items[].metadata.files_scope` | Required `string[]` of files/globs this item is expected to touch. Use concrete paths or narrow globs, not broad repo-wide patterns. |
134
- | `items[].metadata.files_scope_confidence` | Required confidence in `files_scope`: `"high"`, `"medium"`, or `"low"`. |
135
- | `items[].metadata.verify_commands` | Required for slot-eligible items. List commands that verify this item before slot merge, e.g. `["npm run typecheck", "npx vitest run tests/unit/foo.test.ts"]`. |
136
- | `items[].metadata.expected_outputs` | Required for slot-eligible items. List the observable evidence expected from `verify_commands`, e.g. `["foo.test.ts passes"]`. |
137
- | `items[].metadata.readiness` | Required tri-state swarm readiness: `"ready"` for parallel-safe work, `"sequential"` for intentionally serialized work, `"needs_refinement"` when the item is not ready to dispatch. |
138
- | `items[].metadata.traces` | Optional `string[]` of PRD requirement IDs (`FR-1`, `NFR-2`) this item satisfies. |
139
- | nested `items` with `metadata.kind: "acceptance_criterion"` | Each item must have at least one acceptance-criterion child item. |
140
-
141
- ---
142
-
143
- ## Step 3 — Write `.pan/continue.json`
144
-
145
- The continue file records decisions and hazards so the work agent (and review/test agents) have context that isn't in the vBRIEF narrative.
146
-
147
- ```json
148
- {
149
- "version": "1",
150
- "issueId": "<ISSUE-ID-UPPERCASE>",
151
- "created": "<ISO 8601 timestamp>",
152
- "updated": "<ISO 8601 timestamp>",
153
- "gitState": { "branch": "<current branch>", "sha": "<short sha>", "dirty": false },
154
- "decisions": [
155
- { "id": "D1", "summary": "<decision text>", "recordedAt": "<ISO 8601 timestamp>" }
156
- ],
157
- "hazards": [
158
- { "id": "H1", "summary": "<risk or edge case>", "mitigation": "<how to handle it>" }
159
- ],
160
- "resumePoint": null,
161
- "vBRIEF tasksMapping": {},
162
- "agentModel": "agent:<model-slug>",
163
- "sessionHistory": [
164
- {
165
- "timestamp": "<ISO 8601 timestamp>",
166
- "reason": "planning",
167
- "note": "Self-authored plan (no planning agent)",
168
- "agentModel": "agent:<model-slug>"
169
- }
170
- ]
171
- }
172
- ```
173
-
174
- Rules:
175
- - `version` must be `"1"`
176
- - `issueId` must be uppercase (e.g. `"PAN-1234"`)
177
- - `resumePoint` stays `null` — the work agent populates it when it begins
178
- - `vBRIEF tasksMapping` stays `{}` — `pan plan finalize` populates it
179
-
180
- ---
181
-
182
- ## Step 4 — Finalize
183
-
184
- From the workspace root, run:
185
-
186
- ```bash
187
- pan plan finalize
188
- ```
189
-
190
- This atomically:
191
- 1. Reads `.pan/spec.vbrief.json`
192
- 2. Creates vBRIEF tasks through the canonical writer (one per `items[]` entry, edges respected)
193
- 3. Sets `plan.status` to `"proposed"`
194
- 4. Promotes the canonical spec into `<projectRoot>/.pan/specs/<YYYY-MM-DD>-<ISSUE>-<slug>.vbrief.json`
195
- 5. Commits on main, pushes, transitions the tracker issue to Planned
196
-
197
-
198
- ---
199
-
200
- ## Task sizing rules
201
-
202
- Default to **many small vBRIEF tasks** over a few large ones. A well-sized task:
203
-
204
- - Has one focused change (if you need "and" in the title, it's two vBRIEF tasks)
205
- - Is independently reviewable from its diff alone
206
- - Leaves the tree in a working state if merged alone
207
- - Has a testable acceptance criterion
208
-
209
- **Heuristics:**
210
- - One renamed command = one task
211
- - One moved file = one task (unless mechanically identical batch → sub-items under one task)
212
- - One new API endpoint = one task
213
- - One schema migration = one task
214
- - One doc update = one task (or one per logical cluster, not "update all docs")
215
-
216
- When in doubt, split. Too-small vBRIEF tasks: mild overhead. Too-large vBRIEF tasks: reviewers can't reason about them, agents deliver partial results, and the inspection gate can't verify mid-implementation.
217
-
218
- ---
219
-
220
- ## Edge semantics
221
-
222
- Add an edge only when there is a **real** dependency:
223
-
224
- | When to add `blocks` edge | When NOT to add |
225
- |---------------------------|-----------------|
226
- | B consumes a file/type/value A produces | Narrative flow ("feels like it should come second") |
227
- | Both items modify the same file | Readability preference |
228
- | B can't start until A reaches a specific state | Defensive sequencing "just in case" |
229
-
230
- Absent edges = permission for the work agent to run items in parallel. A spurious edge silently forces serialization that was never intended.
231
-
232
- Edge types: `blocks` (hard), `informs` (soft/advisory), `invalidates`, `suggests`
233
-
234
- ---
235
-
236
- ## Inspection gate (`requiresInspection`)
237
-
238
- Set `requiresInspection: true` **only** when a wrong implementation would cascade into downstream vBRIEF tasks before the verification gate catches it:
239
-
240
- - **Foundation for downstream vBRIEF tasks** — subsequent vBRIEF tasks depend on this task's interfaces, types, or module boundaries
241
- - **Architectural decision crystallizing in code** — naming a public API, choosing a library boundary, picking an event shape
242
- - **Spec ambiguity risk** — the description is broad enough that two very different diffs could both look "done"
243
- - **Security/auth surface** — defects here propagate into later vBRIEF tasks assuming the security posture
244
- - **Cross-cutting protocol or schema** — wire format, DB migration, RPC contract, event payload
245
-
246
- Set `requiresInspection: false` for:
247
- - Mechanical changes (flag flip, rename, single-file tweak)
248
- - Leaf vBRIEF tasks (no downstream task depends on their internals)
249
- - Tests, docs, comment-only updates
250
- - Wrongs that surface immediately at typecheck/lint
251
-
252
- When `requiresInspection: true`, you **must** also set `metadata.foundationFor: ["<task-id>", ...]` listing the downstream vBRIEF tasks that would need to be redone if this one were wrong. An empty `foundationFor` on an inspection task is a planning error — flip it back to `false`.
253
-
254
- Most plans have 0–2 inspection vBRIEF tasks. More than 3 suggests the vBRIEF tasks are too large.
255
-
256
- ---
257
-
258
- ## Difficulty rubric
259
-
260
- | Level | When | Typical model |
261
- |-------|------|---------------|
262
- | `trivial` | Typo, comment, formatting only | haiku |
263
- | `simple` | Bug fix, single file, obvious change | haiku |
264
- | `medium` | New feature, 3–5 files, standard patterns | sonnet |
265
- | `complex` | Refactor, migration, 6+ files, some risk | sonnet |
266
- | `expert` | Architecture, security, performance, high risk | opus |
267
-
268
- ---
269
-
270
- ## Quick checklist
271
-
272
- Before running `pan plan finalize`:
273
-
274
- - [ ] `.pan/spec.vbrief.json` has exactly two top-level keys: `xBRIEFInfo` and `plan`
275
- - [ ] `plan.id` is lowercase issue ID
276
- - [ ] `plan.uid` is a fresh UUID v4
277
- - [ ] `plan.status` is `"approved"`
278
- - [ ] Every item has `metadata.requiresInspection` (boolean)
279
- - [ ] Every item has `metadata.files_scope`, `metadata.files_scope_confidence`, and `metadata.readiness`
280
- - [ ] Every slot-eligible item has `metadata.verify_commands` and `metadata.expected_outputs`
281
- - [ ] Every item has at least one nested `items` AC entry
282
- - [ ] `foundationFor` populated on every `requiresInspection: true` item
283
- - [ ] No spurious edges
284
- - [ ] `.pan/continue.json` written with at least one `decisions[]` entry
285
-
286
- ---
287
-
288
- ## See also
289
-
290
- - `docs/VBRIEF.md` — full schema reference and lifecycle states
291
- - `/pan-plan` — start the interactive planning agent instead
292
- - `pan plan finalize --help` — finalization flags
17
+ Do not author a plan from this stub. The canonical instructions live in `sync-sources/skills/write-xbrief/SKILL.md`.
@@ -0,0 +1,295 @@
1
+ ---
2
+ name: write-xbrief
3
+ description: >
4
+ Write an xBRIEF spec and continue.json directly — without launching the interactive
5
+ planning agent. The workspace working copy deliberately remains .pan/spec.vbrief.json
6
+ for legacy compatibility. Use when the work is well-understood
7
+ and the agent can author the plan from the issue body and codebase alone.
8
+ Also use when you ARE the work agent and need to self-plan before implementing.
9
+ Covers the full xBRIEF v0.8 schema, continue.json format, task sizing rules,
10
+ inspection gates, and the `pan plan finalize` handoff command.
11
+ triggers:
12
+ - write xbrief
13
+ - create xbrief
14
+ - write spec.vbrief.json
15
+ - skip planning agent
16
+ - self-plan
17
+ - author plan
18
+ - create plan manually
19
+ - write plan without planning agent
20
+ allowed-tools:
21
+ - Bash
22
+ - Read
23
+ - Write
24
+ - Grep
25
+ - Glob
26
+ ---
27
+
28
+ # Write xBRIEF — Direct Plan Authoring
29
+
30
+ Use this skill when you want to author an xBRIEF plan directly, bypassing the interactive planning agent. This is appropriate when:
31
+
32
+ - The work is well-scoped and doesn't need a Q&A discovery session
33
+ - You are a work agent that received an issue without a pre-existing plan
34
+ - The issue is small enough that a full planning session would cost more than the work itself
35
+ - You need to rewrite or patch a broken xBRIEF before continuing work
36
+
37
+ After writing the plan, run `pan plan finalize` to materialize xBRIEF tasks and promote the spec to the canonical state worktree.
38
+
39
+ ---
40
+
41
+ ## Step 1 — Explore First
42
+
43
+ Before writing a single line of JSON, read the issue and explore the relevant code. A plan written without codebase context will have wrong file paths, wrong difficulty estimates, and spurious edges.
44
+
45
+ Minimum exploration:
46
+ - Read the issue body and the canonical PRD at `${OVERDECK_HOME}/state/<project>/drafts/<issue-id-lowercase>.md`
47
+ - Grep for the primary symbols, commands, or files the issue mentions
48
+ - Identify which subsystems are affected and how many files will change
49
+ - Check `${OVERDECK_HOME}/state/<project>/specs/` for an existing issue spec
50
+
51
+ ---
52
+
53
+ ## Step 2 — Write `.pan/spec.vbrief.json`
54
+
55
+ The file goes at `.pan/spec.vbrief.json` in the workspace root and MUST conform to xBRIEF v0.8. This workspace-only filename is a deliberate legacy-compatibility path; finalized canonical specs use the `.xbrief.json` extension.
56
+
57
+ ### Full schema
58
+
59
+ ```json
60
+ {
61
+ "xBRIEFInfo": {
62
+ "version": "0.8",
63
+ "created": "<ISO 8601 timestamp>",
64
+ "author": "overdeck/<VERSION>",
65
+ "description": "Plan for <ISSUE-ID>: <issue title>"
66
+ },
67
+ "plan": {
68
+ "id": "<issue-id-lowercase>",
69
+ "title": "<issue title>",
70
+ "status": "approved",
71
+ "uid": "<UUID v4>",
72
+ "author": "agent:<model-slug>",
73
+ "sequence": 1,
74
+ "created": "<ISO 8601 timestamp>",
75
+ "updated": "<ISO 8601 timestamp>",
76
+ "references": [
77
+ { "uri": "<issue URL>", "label": "<ISSUE-ID>", "type": "issue" }
78
+ ],
79
+ "tags": ["<relevant tags>"],
80
+ "narratives": {
81
+ "Problem": "<what problem this solves>",
82
+ "Proposal": "<the approach chosen>",
83
+ "NonGoals": "<explicitly out of scope; behaviors this issue must NOT introduce — one per line, prefixed '- '>"
84
+ },
85
+ "autoDecisions": [],
86
+ "items": [
87
+ {
88
+ "id": "<short-kebab-id>",
89
+ "title": "<task title>",
90
+ "status": "pending",
91
+ "priority": "medium",
92
+ "created": "<ISO 8601 timestamp>",
93
+ "metadata": {
94
+ "difficulty": "trivial|simple|medium|complex|expert",
95
+ "kind": "docs|api|backend|frontend|infra|test|refactor|design|spike",
96
+ "issueLabel": "<issue-id-lowercase>",
97
+ "requiresInspection": false,
98
+ "inspectionDepth": "fast",
99
+ "files_scope": ["src/path/to/file.ts"],
100
+ "files_scope_confidence": "high",
101
+ "verify_commands": ["npm run typecheck"],
102
+ "expected_outputs": ["typecheck completes without errors"],
103
+ "readiness": "ready",
104
+ "traces": ["FR-1", "NFR-2"]
105
+ },
106
+ "narrative": { "Action": "<what needs to be done>" },
107
+ "items": [
108
+ {
109
+ "id": "<parent-id>.ac1",
110
+ "title": "<specific testable acceptance criterion>",
111
+ "status": "pending",
112
+ "metadata": { "kind": "acceptance_criterion" }
113
+ }
114
+ ]
115
+ }
116
+ ],
117
+ "edges": [
118
+ { "from": "<source-item-id>", "to": "<target-item-id>", "type": "blocks" }
119
+ ]
120
+ }
121
+ }
122
+ ```
123
+
124
+ ### Field rules
125
+
126
+ | Field | Rule |
127
+ |-------|------|
128
+ | `plan.id` | Issue ID in **lowercase** — e.g. `"pan-1234"`. Never `issueId`, never `issue_id`. |
129
+ | `plan.uid` | Fresh UUID v4. Generate with `node -e "console.log(crypto.randomUUID())"`. |
130
+ | `plan.status` | Must be `"approved"` when written by a self-planning agent (skip `draft`/`proposed`). |
131
+ | `items[].status` | One of: `draft`, `proposed`, `approved`, `pending`, `running`, `completed`, `blocked`, `cancelled`, `failed`. Use `"pending"` for new items. |
132
+ | `items[].metadata.kind` | Required routing category: `docs`, `api`, `backend`, `frontend`, `infra`, `test`, `refactor`, `design`, or `spike`. |
133
+ | `plan.narratives.NonGoals` | Required narrative. List everything discovery established as out of scope (`"none"` if genuinely nothing); review enforces these as must-not constraints. |
134
+ | `items[].metadata.requiresInspection` | **Required on every item.** See inspection rules below. |
135
+ | `items[].metadata.inspectionDepth` | `"fast"` (default) or `"deep"`. Only matters when `requiresInspection: true`. |
136
+ | `items[].metadata.files_scope` | Required `string[]` of files/globs this item is expected to touch. Use concrete paths or narrow globs, not broad repo-wide patterns. |
137
+ | `items[].metadata.files_scope_confidence` | Required confidence in `files_scope`: `"high"`, `"medium"`, or `"low"`. |
138
+ | `items[].metadata.verify_commands` | Required for slot-eligible items. List commands that verify this item before slot merge, e.g. `["npm run typecheck", "npx vitest run tests/unit/foo.test.ts"]`. |
139
+ | `items[].metadata.expected_outputs` | Required for slot-eligible items. List the observable evidence expected from `verify_commands`, e.g. `["foo.test.ts passes"]`. |
140
+ | `items[].metadata.readiness` | Required tri-state swarm readiness: `"ready"` for parallel-safe work, `"sequential"` for intentionally serialized work, `"needs_refinement"` when the item is not ready to dispatch. |
141
+ | `items[].metadata.traces` | Optional `string[]` of PRD requirement IDs (`FR-1`, `NFR-2`) this item satisfies. |
142
+ | nested `items` with `metadata.kind: "acceptance_criterion"` | Each item must have at least one acceptance-criterion child item. |
143
+
144
+ ---
145
+
146
+ ## Step 3 — Write `.pan/continue.json`
147
+
148
+ The continue file records decisions and hazards so the work agent (and review/test agents) have context that isn't in the xBRIEF narrative.
149
+
150
+ ```json
151
+ {
152
+ "version": "1",
153
+ "issueId": "<ISSUE-ID-UPPERCASE>",
154
+ "created": "<ISO 8601 timestamp>",
155
+ "updated": "<ISO 8601 timestamp>",
156
+ "gitState": { "branch": "<current branch>", "sha": "<short sha>", "dirty": false },
157
+ "decisions": [
158
+ { "id": "D1", "summary": "<decision text>", "recordedAt": "<ISO 8601 timestamp>" }
159
+ ],
160
+ "hazards": [
161
+ { "id": "H1", "summary": "<risk or edge case>", "mitigation": "<how to handle it>" }
162
+ ],
163
+ "resumePoint": null,
164
+ "tasksMapping": {},
165
+ "agentModel": "agent:<model-slug>",
166
+ "sessionHistory": [
167
+ {
168
+ "timestamp": "<ISO 8601 timestamp>",
169
+ "reason": "planning",
170
+ "note": "Self-authored plan (no planning agent)",
171
+ "agentModel": "agent:<model-slug>"
172
+ }
173
+ ]
174
+ }
175
+ ```
176
+
177
+ Rules:
178
+ - `version` must be `"1"`
179
+ - `issueId` must be uppercase (e.g. `"PAN-1234"`)
180
+ - `resumePoint` stays `null` — the work agent populates it when it begins
181
+ - `tasksMapping` stays `{}` — `pan plan finalize` populates it
182
+
183
+ ---
184
+
185
+ ## Step 4 — Finalize
186
+
187
+ From the workspace root, run:
188
+
189
+ ```bash
190
+ pan plan finalize
191
+ ```
192
+
193
+ This atomically:
194
+ 1. Reads the legacy-compatible workspace path `.pan/spec.vbrief.json`
195
+ 2. Creates xBRIEF tasks through the canonical writer (one per `items[]` entry, edges respected)
196
+ 3. Sets `plan.status` to `"proposed"`
197
+ 4. Promotes the canonical spec to `${OVERDECK_HOME}/state/<project>/specs/<YYYY-MM-DD>-<ISSUE>-<slug>.xbrief.json`
198
+ 5. Commits and pushes `overdeck-state`, then transitions the tracker issue to Planned
199
+
200
+
201
+ ---
202
+
203
+ ## Task sizing rules
204
+
205
+ Default to **many small xBRIEF tasks** over a few large ones. A well-sized task:
206
+
207
+ - Has one focused change (if you need "and" in the title, it's two xBRIEF tasks)
208
+ - Is independently reviewable from its diff alone
209
+ - Leaves the tree in a working state if merged alone
210
+ - Has a testable acceptance criterion
211
+
212
+ **Heuristics:**
213
+ - One renamed command = one task
214
+ - One moved file = one task (unless mechanically identical batch → sub-items under one task)
215
+ - One new API endpoint = one task
216
+ - One schema migration = one task
217
+ - One doc update = one task (or one per logical cluster, not "update all docs")
218
+
219
+ When in doubt, split. Too-small xBRIEF tasks: mild overhead. Too-large xBRIEF tasks: reviewers can't reason about them, agents deliver partial results, and the inspection gate can't verify mid-implementation.
220
+
221
+ ---
222
+
223
+ ## Edge semantics
224
+
225
+ Add an edge only when there is a **real** dependency:
226
+
227
+ | When to add `blocks` edge | When NOT to add |
228
+ |---------------------------|-----------------|
229
+ | B consumes a file/type/value A produces | Narrative flow ("feels like it should come second") |
230
+ | Both items modify the same file | Readability preference |
231
+ | B can't start until A reaches a specific state | Defensive sequencing "just in case" |
232
+
233
+ Absent edges = permission for the work agent to run items in parallel. A spurious edge silently forces serialization that was never intended.
234
+
235
+ Edge types: `blocks` (hard), `informs` (soft/advisory), `invalidates`, `suggests`
236
+
237
+ ---
238
+
239
+ ## Inspection gate (`requiresInspection`)
240
+
241
+ Set `requiresInspection: true` **only** when a wrong implementation would cascade into downstream xBRIEF tasks before the verification gate catches it:
242
+
243
+ - **Foundation for downstream xBRIEF tasks** — subsequent xBRIEF tasks depend on this task's interfaces, types, or module boundaries
244
+ - **Architectural decision crystallizing in code** — naming a public API, choosing a library boundary, picking an event shape
245
+ - **Spec ambiguity risk** — the description is broad enough that two very different diffs could both look "done"
246
+ - **Security/auth surface** — defects here propagate into later xBRIEF tasks assuming the security posture
247
+ - **Cross-cutting protocol or schema** — wire format, DB migration, RPC contract, event payload
248
+
249
+ Set `requiresInspection: false` for:
250
+ - Mechanical changes (flag flip, rename, single-file tweak)
251
+ - Leaf xBRIEF tasks (no downstream task depends on their internals)
252
+ - Tests, docs, comment-only updates
253
+ - Wrongs that surface immediately at typecheck/lint
254
+
255
+ When `requiresInspection: true`, you **must** also set `metadata.foundationFor: ["<task-id>", ...]` listing the downstream xBRIEF tasks that would need to be redone if this one were wrong. An empty `foundationFor` on an inspection task is a planning error — flip it back to `false`.
256
+
257
+ Most plans have 0–2 inspection xBRIEF tasks. More than 3 suggests the xBRIEF tasks are too large.
258
+
259
+ ---
260
+
261
+ ## Difficulty rubric
262
+
263
+ | Level | When | Typical model |
264
+ |-------|------|---------------|
265
+ | `trivial` | Typo, comment, formatting only | haiku |
266
+ | `simple` | Bug fix, single file, obvious change | haiku |
267
+ | `medium` | New feature, 3–5 files, standard patterns | sonnet |
268
+ | `complex` | Refactor, migration, 6+ files, some risk | sonnet |
269
+ | `expert` | Architecture, security, performance, high risk | opus |
270
+
271
+ ---
272
+
273
+ ## Quick checklist
274
+
275
+ Before running `pan plan finalize`:
276
+
277
+ - [ ] `.pan/spec.vbrief.json` has exactly two top-level keys: `xBRIEFInfo` and `plan`
278
+ - [ ] `plan.id` is lowercase issue ID
279
+ - [ ] `plan.uid` is a fresh UUID v4
280
+ - [ ] `plan.status` is `"approved"`
281
+ - [ ] Every item has `metadata.kind` and `metadata.requiresInspection`
282
+ - [ ] Every item has `metadata.files_scope`, `metadata.files_scope_confidence`, and `metadata.readiness`
283
+ - [ ] Every slot-eligible item has `metadata.verify_commands` and `metadata.expected_outputs`
284
+ - [ ] Every item has at least one nested `items` AC entry
285
+ - [ ] `foundationFor` populated on every `requiresInspection: true` item
286
+ - [ ] No spurious edges
287
+ - [ ] `.pan/continue.json` written with at least one `decisions[]` entry
288
+
289
+ ---
290
+
291
+ ## See also
292
+
293
+ - `docs/XBRIEF.md` — full schema reference and lifecycle states
294
+ - `/pan-plan` — start the interactive planning agent instead
295
+ - `pan plan finalize --help` — finalization flags
@@ -94,7 +94,7 @@ git push -u origin $(git branch --show-current)
94
94
  # 4. Verify clean state
95
95
  git status # Must show "nothing to commit"
96
96
 
97
- # 5. Update vBRIEF tasks
97
+ # 5. Update xBRIEF item state
98
98
  ```
99
99
 
100
100
  **If ANY step fails, fix it before declaring work complete.**
@@ -1,3 +0,0 @@
1
- import { Mn as init_agent_state, Sn as clearAgentPausedSync, jn as getAgentStateSync, qn as setAgentPausedSync, wn as clearAgentTroubledSync } from "./queries-ZABd5aXP.js";
2
- init_agent_state();
3
- export { clearAgentPausedSync, clearAgentTroubledSync, getAgentStateSync, setAgentPausedSync };
@@ -1,3 +0,0 @@
1
- import { $ as stopAgent, A as buildCompactRecoverySeed, An as getAgentStateFilePath, B as appendActivity, Bn as recordAgentFailure, Bt as OHMYPI_AGENT_READY_TIMEOUT_SECONDS, Cn as clearAgentTroubled, D as detectCrashedAgents, Dn as getAgentDir, Dt as assertWorkspaceStackHealthyForSpawn, E as autoRecoverAgents, Fn as isRole, Gn as saveAgentStateSync, Gt as getProviderAuthMode, H as getLatestSessionId, Ht as getAgentRuntimeBaseCommand, Jn as setAgentYieldedSync, Jt as injectPiConversationMemory, K as saveSessionId, Kn as setAgentPaused, Kt as getRoleRuntimeBaseCommand, L as messageAgent, Ln as markAgentRunningState, M as resumeAgent, Mt as transitionIssueToInProgress, Nn as isAgentPaused, Nt as transitionIssueToInReview, O as recoverAgent, Ot as buildAgentLaunchConfig, Pn as isAgentTroubled, Rn as markAgentStoppedState, Sn as clearAgentPausedSync, Tn as clearYieldForResumeSync, U as getLatestSessionIdSync, Un as resetAgentFailureCount, V as getActivity, Vn as recordAgentFailureSync, Vt as describeOhmypiSpawnFailure, W as getSessionId, Wn as saveAgentState, X as spawnAgent, Xn as writeAgentStateJsonSync, Xt as waitForPromptReady, Yn as wipeAgentStateDirs, Yt as roleAgentDefinitionPath, Z as spawnRun, _n as writeChannelsBridgeMcpConfig, _t as deliverAgentPermissionDecision, a as listRunningAgentsSync, an as determineModel, ar as normalizeAgentId, bn as __testInternals, bt as setAgentDeliveryMethod, c as compactAtTierRunBoundary, cn as getProviderTmuxFlags, cr as waitForReadySignal, d as replayStandingAgent, et as stopAgentSync, f as shouldReplayCompactAtTierRunBoundary, fr as saveAgentRuntimeState, gn as dismissDevChannelsDialog, gt as deliverAgentMessage, hn as decideSupervisorForWorkAgent, i as listRunningAgents, in as buildSpawnEnvForModel, ir as isQualifiedAgentId, jn as getAgentStateSync, jt as retrieveSpawnTimeMemoryContext, k as restartAgent, kn as getAgentState, l as contextWindowForModel, lr as getAgentRuntimeState, mn as decideChannelsForWorkAgent, o as warnOnBareNumericIssueIds, on as getProviderEnvForModel, or as resolveAgentTargetSync, pn as buildDefaultResumeContinueMessage, qn as setAgentPausedSync, r as listAgentStates, rn as buildCavemanExports, rr as clearReadySignal, s as init_agents, sn as getProviderExportsForModel, sr as waitForAgentIdle, t as dropLegacyAgentStatesMissingRoleAsync, u as replayCrashedStandingAgent, ur as getAgentRuntimeStateSync, vn as GOVERNOR_SLOT_PAUSE_REASON_PREFIX, vt as deliverInitialPromptWithRetry, wn as clearAgentTroubledSync, xn as clearAgentPaused, yn as SESSION_EXITED_BEFORE_KICKOFF, yt as deliverResumeMessageWithTranscriptConfirmation, zn as markAgentTroubled } from "./queries-ZABd5aXP.js";
2
- init_agents();
3
- export { GOVERNOR_SLOT_PAUSE_REASON_PREFIX, OHMYPI_AGENT_READY_TIMEOUT_SECONDS, SESSION_EXITED_BEFORE_KICKOFF, __testInternals, appendActivity, assertWorkspaceStackHealthyForSpawn, autoRecoverAgents, buildAgentLaunchConfig, buildCavemanExports, buildCompactRecoverySeed, buildDefaultResumeContinueMessage, buildSpawnEnvForModel, clearAgentPaused, clearAgentPausedSync, clearAgentTroubled, clearAgentTroubledSync, clearReadySignal, clearYieldForResumeSync, compactAtTierRunBoundary, contextWindowForModel, decideChannelsForWorkAgent, decideSupervisorForWorkAgent, deliverAgentMessage, deliverAgentPermissionDecision, deliverInitialPromptWithRetry, deliverResumeMessageWithTranscriptConfirmation, describeOhmypiSpawnFailure, detectCrashedAgents, determineModel, dismissDevChannelsDialog, dropLegacyAgentStatesMissingRoleAsync, getActivity, getAgentDir, getAgentRuntimeBaseCommand, getAgentRuntimeState, getAgentRuntimeStateSync, getAgentState, getAgentStateFilePath, getAgentStateSync, getLatestSessionId, getLatestSessionIdSync, getProviderAuthMode, getProviderEnvForModel, getProviderExportsForModel, getProviderTmuxFlags, getRoleRuntimeBaseCommand, getSessionId, injectPiConversationMemory, isAgentPaused, isAgentTroubled, isQualifiedAgentId, isRole, listAgentStates, listRunningAgents, listRunningAgentsSync, markAgentRunningState, markAgentStoppedState, markAgentTroubled, messageAgent, normalizeAgentId, recordAgentFailure, recordAgentFailureSync, recoverAgent, replayCrashedStandingAgent, replayStandingAgent, resetAgentFailureCount, resolveAgentTargetSync, restartAgent, resumeAgent, retrieveSpawnTimeMemoryContext, roleAgentDefinitionPath, saveAgentRuntimeState, saveAgentState, saveAgentStateSync, saveSessionId, setAgentDeliveryMethod, setAgentPaused, setAgentPausedSync, setAgentYieldedSync, shouldReplayCompactAtTierRunBoundary, spawnAgent, spawnRun, stopAgent, stopAgentSync, transitionIssueToInProgress, transitionIssueToInReview, waitForAgentIdle, waitForPromptReady, waitForReadySignal, warnOnBareNumericIssueIds, wipeAgentStateDirs, writeAgentStateJsonSync, writeChannelsBridgeMcpConfig };
@@ -1,3 +0,0 @@
1
- import { r as init_cli, t as createResetMarker } from "./cli-CbKNkFE5.js";
2
- init_cli();
3
- export { createResetMarker };
@@ -1,3 +0,0 @@
1
- import { a as extractThreadIdFromRollout, c as initCodexHome, f as waitForCodexRollout, l as init_codex, o as findLatestRollout, p as writeThreadId, s as findRolloutPath } from "./codex-CbmztVcc.js";
2
- init_codex();
3
- export { extractThreadIdFromRollout, findLatestRollout, findRolloutPath, initCodexHome, waitForCodexRollout, writeThreadId };
@@ -1,2 +0,0 @@
1
- import { r as coordinateSwarmSlots } from "./deacon-swarm-BryRr6AO.js";
2
- export { coordinateSwarmSlots };
@@ -1,3 +0,0 @@
1
- import { t as require_dist } from "./dist-D-Ed5yVw.js";
2
- export default require_dist();
3
- export {};
@@ -1,2 +0,0 @@
1
- import { n as getForgeAdapter } from "./forge-B1S_KZv4.js";
2
- export { getForgeAdapter };
@@ -1,3 +0,0 @@
1
- import { i as init_hume, r as deleteHumeConfig } from "./hume-Dz_OymXE.js";
2
- init_hume();
3
- export { deleteHumeConfig };
@@ -1,2 +0,0 @@
1
- import { n as onInspectComplete } from "./inspect-agent-BXCgNeZ4.js";
2
- export { onInspectComplete };
@@ -1,3 +0,0 @@
1
- import { a as init_lifecycle_io, s as transitionVBriefOnMain } from "./lifecycle-io-taIb0PoH.js";
2
- init_lifecycle_io();
3
- export { transitionVBriefOnMain };
@@ -1,2 +0,0 @@
1
- import { c as triggerMerge } from "./workspaces-CFPcL0vl.js";
2
- export { triggerMerge };