@agimon-ai/doompi-author 0.0.1-alpha.2 → 0.0.1-alpha.21

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 (318) hide show
  1. package/README.md +5 -1
  2. package/dist/apiContracts.cjs +316 -0
  3. package/dist/apiContracts.cjs.map +1 -0
  4. package/dist/apiContracts.d.mts +53 -0
  5. package/dist/apiContracts.d.mts.map +1 -0
  6. package/dist/apiContracts.mjs +311 -0
  7. package/dist/apiContracts.mjs.map +1 -0
  8. package/dist/authorCommand-B90ghX5J.mjs +226 -0
  9. package/dist/authorCommand-B90ghX5J.mjs.map +1 -0
  10. package/dist/authorCommand-Cd5dnLF7.cjs +315 -0
  11. package/dist/authorCommand-Cd5dnLF7.cjs.map +1 -0
  12. package/dist/authorFacade-B9-Re3Ga.mjs +75 -0
  13. package/dist/authorFacade-B9-Re3Ga.mjs.map +1 -0
  14. package/dist/authorFacade-BvCSzZ5K.cjs +104 -0
  15. package/dist/authorFacade-BvCSzZ5K.cjs.map +1 -0
  16. package/dist/authorFacade-RZ6EXlR5.d.mts +113 -0
  17. package/dist/authorFacade-RZ6EXlR5.d.mts.map +1 -0
  18. package/dist/authorFacade.cjs +26 -0
  19. package/dist/authorFacade.d.mts +3 -0
  20. package/dist/authorFacade.mjs +3 -0
  21. package/dist/extensions/pi.cjs +172 -1
  22. package/dist/extensions/pi.cjs.map +1 -0
  23. package/dist/extensions/pi.d.mts +6 -2
  24. package/dist/extensions/pi.d.mts.map +1 -0
  25. package/dist/extensions/pi.mjs +167 -1
  26. package/dist/extensions/pi.mjs.map +1 -0
  27. package/dist/extensions/server.cjs +659 -0
  28. package/dist/extensions/server.cjs.map +1 -0
  29. package/dist/extensions/server.d.mts +5 -0
  30. package/dist/extensions/server.d.mts.map +1 -0
  31. package/dist/extensions/server.mjs +652 -0
  32. package/dist/extensions/server.mjs.map +1 -0
  33. package/dist/extensions/web.mjs +4231 -0
  34. package/dist/extensions/web.mjs.map +1 -0
  35. package/dist/index-Btm_xNOb.d.mts +386 -0
  36. package/dist/index-Btm_xNOb.d.mts.map +1 -0
  37. package/dist/index.cjs +35 -1
  38. package/dist/index.d.mts +2 -21
  39. package/dist/index.mjs +4 -1
  40. package/dist/monitor-7T5YF6px.mjs +70 -0
  41. package/dist/monitor-7T5YF6px.mjs.map +1 -0
  42. package/dist/monitor-BxY8s_AX.cjs +81 -0
  43. package/dist/monitor-BxY8s_AX.cjs.map +1 -0
  44. package/dist/structuredDocuments-Bg6DIqu5.cjs +960 -0
  45. package/dist/structuredDocuments-Bg6DIqu5.cjs.map +1 -0
  46. package/dist/structuredDocuments-CzMYD0Bq.mjs +810 -0
  47. package/dist/structuredDocuments-CzMYD0Bq.mjs.map +1 -0
  48. package/package.json +48 -38
  49. package/src/types/authorPreview.ts +76 -0
  50. package/src/types/webAuthor.ts +1 -1
  51. package/dist/_virtual/_rolldown/runtime.cjs +0 -1
  52. package/dist/adapters/authorApi.cjs +0 -2
  53. package/dist/adapters/authorApi.cjs.map +0 -1
  54. package/dist/adapters/authorBridgeApi.cjs +0 -2
  55. package/dist/adapters/authorBridgeApi.cjs.map +0 -1
  56. package/dist/adapters/authorDocumentApi.cjs +0 -2
  57. package/dist/adapters/authorDocumentApi.cjs.map +0 -1
  58. package/dist/adapters/pi/authorBridgeClient.cjs +0 -2
  59. package/dist/adapters/pi/authorBridgeClient.cjs.map +0 -1
  60. package/dist/adapters/pi/authorTools.cjs +0 -2
  61. package/dist/adapters/pi/authorTools.cjs.map +0 -1
  62. package/dist/adapters/pi/extension.cjs +0 -2
  63. package/dist/adapters/pi/extension.cjs.map +0 -1
  64. package/dist/adapters/structuredDocuments/common.cjs +0 -2
  65. package/dist/adapters/structuredDocuments/common.cjs.map +0 -1
  66. package/dist/adapters/structuredDocuments/csv.cjs +0 -7
  67. package/dist/adapters/structuredDocuments/csv.cjs.map +0 -1
  68. package/dist/adapters/structuredDocuments/index.cjs +0 -2
  69. package/dist/adapters/structuredDocuments/index.cjs.map +0 -1
  70. package/dist/adapters/structuredDocuments/markdownSlides.cjs +0 -6
  71. package/dist/adapters/structuredDocuments/markdownSlides.cjs.map +0 -1
  72. package/dist/adapters/structuredDocuments/ooxmlArchive.cjs +0 -2
  73. package/dist/adapters/structuredDocuments/ooxmlArchive.cjs.map +0 -1
  74. package/dist/adapters/structuredDocuments/pptx.cjs +0 -2
  75. package/dist/adapters/structuredDocuments/pptx.cjs.map +0 -1
  76. package/dist/adapters/structuredDocuments/xlsx.cjs +0 -2
  77. package/dist/adapters/structuredDocuments/xlsx.cjs.map +0 -1
  78. package/dist/adapters/structuredDocuments/xmlText.cjs +0 -2
  79. package/dist/adapters/structuredDocuments/xmlText.cjs.map +0 -1
  80. package/dist/adapters/webAuthorChannel.cjs +0 -2
  81. package/dist/adapters/webAuthorChannel.cjs.map +0 -1
  82. package/dist/commands/doomAuthorCommand.cjs +0 -2
  83. package/dist/commands/doomAuthorCommand.cjs.map +0 -1
  84. package/dist/container/index.cjs +0 -2
  85. package/dist/container/index.cjs.map +0 -1
  86. package/dist/extensions/pi.d.cts +0 -2
  87. package/dist/index.d.cts +0 -21
  88. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/engine/helpers/union.d.cts +0 -6
  89. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/engine/helpers/union.d.cts.map +0 -1
  90. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/engine/helpers/union.d.mts +0 -6
  91. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/engine/helpers/union.d.mts.map +0 -1
  92. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/_optional.d.cts +0 -7
  93. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/_optional.d.cts.map +0 -1
  94. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/_optional.d.mts +0 -7
  95. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/_optional.d.mts.map +0 -1
  96. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/object.d.cts +0 -12
  97. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/object.d.cts.map +0 -1
  98. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/object.d.mts +0 -12
  99. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/object.d.mts.map +0 -1
  100. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/properties.d.cts +0 -12
  101. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/properties.d.cts.map +0 -1
  102. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/properties.d.mts +0 -12
  103. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/properties.d.mts.map +0 -1
  104. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/record.d.cts +0 -9
  105. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/record.d.cts.map +0 -1
  106. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/record.d.mts +0 -9
  107. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/record.d.mts.map +0 -1
  108. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/schema.d.cts +0 -4
  109. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/schema.d.cts.map +0 -1
  110. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/schema.d.mts +0 -4
  111. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/schema.d.mts.map +0 -1
  112. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/string.d.cts +0 -9
  113. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/string.d.cts.map +0 -1
  114. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/string.d.mts +0 -9
  115. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/string.d.mts.map +0 -1
  116. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/unknown.d.cts +0 -8
  117. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/unknown.d.cts.map +0 -1
  118. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/unknown.d.mts +0 -8
  119. package/dist/node_modules/.pnpm/typebox@1.3.25/node_modules/typebox/build/type/types/unknown.d.mts.map +0 -1
  120. package/dist/packages/minor/doompi-author/src/adapters/authorApi.d.cts +0 -15
  121. package/dist/packages/minor/doompi-author/src/adapters/authorApi.d.cts.map +0 -1
  122. package/dist/packages/minor/doompi-author/src/adapters/authorApi.d.mts +0 -15
  123. package/dist/packages/minor/doompi-author/src/adapters/authorApi.d.mts.map +0 -1
  124. package/dist/packages/minor/doompi-author/src/adapters/authorApi.mjs +0 -2
  125. package/dist/packages/minor/doompi-author/src/adapters/authorApi.mjs.map +0 -1
  126. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.d.cts +0 -6
  127. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.d.cts.map +0 -1
  128. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.d.mts +0 -6
  129. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.d.mts.map +0 -1
  130. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.mjs +0 -2
  131. package/dist/packages/minor/doompi-author/src/adapters/authorBridgeApi.mjs.map +0 -1
  132. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.d.cts +0 -11
  133. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.d.cts.map +0 -1
  134. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.d.mts +0 -11
  135. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.d.mts.map +0 -1
  136. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.mjs +0 -2
  137. package/dist/packages/minor/doompi-author/src/adapters/authorDocumentApi.mjs.map +0 -1
  138. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.d.cts +0 -18
  139. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.d.cts.map +0 -1
  140. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.d.mts +0 -18
  141. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.d.mts.map +0 -1
  142. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.mjs +0 -2
  143. package/dist/packages/minor/doompi-author/src/adapters/pi/authorBridgeClient.mjs.map +0 -1
  144. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.d.cts +0 -9
  145. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.d.cts.map +0 -1
  146. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.d.mts +0 -9
  147. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.d.mts.map +0 -1
  148. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.mjs +0 -2
  149. package/dist/packages/minor/doompi-author/src/adapters/pi/authorTools.mjs.map +0 -1
  150. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.d.cts +0 -19
  151. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.d.cts.map +0 -1
  152. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.d.mts +0 -19
  153. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.d.mts.map +0 -1
  154. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.mjs +0 -2
  155. package/dist/packages/minor/doompi-author/src/adapters/pi/extension.mjs.map +0 -1
  156. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/common.mjs +0 -2
  157. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/common.mjs.map +0 -1
  158. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.d.cts +0 -7
  159. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.d.cts.map +0 -1
  160. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.d.mts +0 -7
  161. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.d.mts.map +0 -1
  162. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.mjs +0 -7
  163. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/csv.mjs.map +0 -1
  164. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.d.cts +0 -13
  165. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.d.cts.map +0 -1
  166. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.d.mts +0 -13
  167. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.d.mts.map +0 -1
  168. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.mjs +0 -2
  169. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/index.mjs.map +0 -1
  170. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.d.cts +0 -7
  171. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.d.cts.map +0 -1
  172. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.d.mts +0 -7
  173. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.d.mts.map +0 -1
  174. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.mjs +0 -6
  175. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/markdownSlides.mjs.map +0 -1
  176. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.d.cts +0 -13
  177. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.d.cts.map +0 -1
  178. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.d.mts +0 -13
  179. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.d.mts.map +0 -1
  180. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.mjs +0 -2
  181. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/ooxmlArchive.mjs.map +0 -1
  182. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.d.cts +0 -7
  183. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.d.cts.map +0 -1
  184. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.d.mts +0 -7
  185. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.d.mts.map +0 -1
  186. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.mjs +0 -2
  187. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/pptx.mjs.map +0 -1
  188. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.d.cts +0 -7
  189. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.d.cts.map +0 -1
  190. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.d.mts +0 -7
  191. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.d.mts.map +0 -1
  192. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.mjs +0 -2
  193. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xlsx.mjs.map +0 -1
  194. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xmlText.mjs +0 -2
  195. package/dist/packages/minor/doompi-author/src/adapters/structuredDocuments/xmlText.mjs.map +0 -1
  196. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.d.cts +0 -6
  197. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.d.cts.map +0 -1
  198. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.d.mts +0 -6
  199. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.d.mts.map +0 -1
  200. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.mjs +0 -2
  201. package/dist/packages/minor/doompi-author/src/adapters/webAuthorChannel.mjs.map +0 -1
  202. package/dist/packages/minor/doompi-author/src/commands/doomAuthorCommand.mjs +0 -2
  203. package/dist/packages/minor/doompi-author/src/commands/doomAuthorCommand.mjs.map +0 -1
  204. package/dist/packages/minor/doompi-author/src/container/index.d.cts +0 -5
  205. package/dist/packages/minor/doompi-author/src/container/index.d.cts.map +0 -1
  206. package/dist/packages/minor/doompi-author/src/container/index.d.mts +0 -5
  207. package/dist/packages/minor/doompi-author/src/container/index.d.mts.map +0 -1
  208. package/dist/packages/minor/doompi-author/src/container/index.mjs +0 -2
  209. package/dist/packages/minor/doompi-author/src/container/index.mjs.map +0 -1
  210. package/dist/packages/minor/doompi-author/src/schemas/authorTools.d.cts +0 -16
  211. package/dist/packages/minor/doompi-author/src/schemas/authorTools.d.cts.map +0 -1
  212. package/dist/packages/minor/doompi-author/src/schemas/authorTools.d.mts +0 -16
  213. package/dist/packages/minor/doompi-author/src/schemas/authorTools.d.mts.map +0 -1
  214. package/dist/packages/minor/doompi-author/src/schemas/authorTools.mjs +0 -2
  215. package/dist/packages/minor/doompi-author/src/schemas/authorTools.mjs.map +0 -1
  216. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.d.cts +0 -31
  217. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.d.cts.map +0 -1
  218. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.d.mts +0 -31
  219. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.d.mts.map +0 -1
  220. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.mjs +0 -2
  221. package/dist/packages/minor/doompi-author/src/services/authorBridgeState.mjs.map +0 -1
  222. package/dist/packages/minor/doompi-author/src/services/authorCatalog.d.cts +0 -10
  223. package/dist/packages/minor/doompi-author/src/services/authorCatalog.d.cts.map +0 -1
  224. package/dist/packages/minor/doompi-author/src/services/authorCatalog.d.mts +0 -10
  225. package/dist/packages/minor/doompi-author/src/services/authorCatalog.d.mts.map +0 -1
  226. package/dist/packages/minor/doompi-author/src/services/authorMode.d.cts +0 -19
  227. package/dist/packages/minor/doompi-author/src/services/authorMode.d.cts.map +0 -1
  228. package/dist/packages/minor/doompi-author/src/services/authorMode.d.mts +0 -19
  229. package/dist/packages/minor/doompi-author/src/services/authorMode.d.mts.map +0 -1
  230. package/dist/packages/minor/doompi-author/src/services/authorMode.mjs +0 -3
  231. package/dist/packages/minor/doompi-author/src/services/authorMode.mjs.map +0 -1
  232. package/dist/packages/minor/doompi-author/src/services/extensionService.d.cts +0 -7
  233. package/dist/packages/minor/doompi-author/src/services/extensionService.d.cts.map +0 -1
  234. package/dist/packages/minor/doompi-author/src/services/extensionService.d.mts +0 -7
  235. package/dist/packages/minor/doompi-author/src/services/extensionService.d.mts.map +0 -1
  236. package/dist/packages/minor/doompi-author/src/services/extensionService.mjs +0 -2
  237. package/dist/packages/minor/doompi-author/src/services/extensionService.mjs.map +0 -1
  238. package/dist/packages/minor/doompi-author/src/types/author.d.cts +0 -39
  239. package/dist/packages/minor/doompi-author/src/types/author.d.cts.map +0 -1
  240. package/dist/packages/minor/doompi-author/src/types/author.d.mts +0 -39
  241. package/dist/packages/minor/doompi-author/src/types/author.d.mts.map +0 -1
  242. package/dist/packages/minor/doompi-author/src/types/author.mjs +0 -2
  243. package/dist/packages/minor/doompi-author/src/types/author.mjs.map +0 -1
  244. package/dist/packages/minor/doompi-author/src/types/authorApi.d.cts +0 -23
  245. package/dist/packages/minor/doompi-author/src/types/authorApi.d.cts.map +0 -1
  246. package/dist/packages/minor/doompi-author/src/types/authorApi.d.mts +0 -23
  247. package/dist/packages/minor/doompi-author/src/types/authorApi.d.mts.map +0 -1
  248. package/dist/packages/minor/doompi-author/src/types/authorApi.mjs +0 -2
  249. package/dist/packages/minor/doompi-author/src/types/authorApi.mjs.map +0 -1
  250. package/dist/packages/minor/doompi-author/src/types/extension.d.cts +0 -16
  251. package/dist/packages/minor/doompi-author/src/types/extension.d.cts.map +0 -1
  252. package/dist/packages/minor/doompi-author/src/types/extension.d.mts +0 -16
  253. package/dist/packages/minor/doompi-author/src/types/extension.d.mts.map +0 -1
  254. package/dist/packages/minor/doompi-author/src/types/structuredDocuments.d.cts +0 -60
  255. package/dist/packages/minor/doompi-author/src/types/structuredDocuments.d.cts.map +0 -1
  256. package/dist/packages/minor/doompi-author/src/types/structuredDocuments.d.mts +0 -60
  257. package/dist/packages/minor/doompi-author/src/types/structuredDocuments.d.mts.map +0 -1
  258. package/dist/packages/minor/doompi-author/src/types/webAuthor.d.cts +0 -67
  259. package/dist/packages/minor/doompi-author/src/types/webAuthor.d.cts.map +0 -1
  260. package/dist/packages/minor/doompi-author/src/types/webAuthor.d.mts +0 -67
  261. package/dist/packages/minor/doompi-author/src/types/webAuthor.d.mts.map +0 -1
  262. package/dist/packages/minor/doompi-author/src/types/webAuthor.mjs +0 -2
  263. package/dist/packages/minor/doompi-author/src/types/webAuthor.mjs.map +0 -1
  264. package/dist/schemas/authorTools.cjs +0 -2
  265. package/dist/schemas/authorTools.cjs.map +0 -1
  266. package/dist/services/authorBridgeState.cjs +0 -2
  267. package/dist/services/authorBridgeState.cjs.map +0 -1
  268. package/dist/services/authorMode.cjs +0 -3
  269. package/dist/services/authorMode.cjs.map +0 -1
  270. package/dist/services/extensionService.cjs +0 -2
  271. package/dist/services/extensionService.cjs.map +0 -1
  272. package/dist/sessionApi.cjs +0 -1
  273. package/dist/sessionApi.d.cts +0 -7
  274. package/dist/sessionApi.d.mts +0 -7
  275. package/dist/sessionApi.mjs +0 -1
  276. package/dist/types/author.cjs +0 -2
  277. package/dist/types/author.cjs.map +0 -1
  278. package/dist/types/authorApi.cjs +0 -2
  279. package/dist/types/authorApi.cjs.map +0 -1
  280. package/dist/types/webAuthor.cjs +0 -2
  281. package/dist/types/webAuthor.cjs.map +0 -1
  282. package/dist/webHub.cjs +0 -1
  283. package/dist/webHub.d.cts +0 -2
  284. package/dist/webHub.d.mts +0 -2
  285. package/dist/webHub.mjs +0 -1
  286. package/src/exports/webClient.ts +0 -76
  287. package/src/web/api/authorBroker.ts +0 -14
  288. package/src/web/api/authorBrowserBridge.ts +0 -225
  289. package/src/web/api/authorFiles.ts +0 -219
  290. package/src/web/api/authorMedia.ts +0 -19
  291. package/src/web/api/authorRuntime.ts +0 -164
  292. package/src/web/components/AuthorDocumentPanel.tsx +0 -232
  293. package/src/web/components/AuthorGridOverlay.tsx +0 -81
  294. package/src/web/components/AuthorMediaPreview.tsx +0 -41
  295. package/src/web/components/AuthorMediaView.tsx +0 -356
  296. package/src/web/components/AuthorPanel.tsx +0 -105
  297. package/src/web/components/AuthorRegionDrafts.tsx +0 -102
  298. package/src/web/components/AuthorRequestLog.tsx +0 -179
  299. package/src/web/components/AuthorStructuredView.tsx +0 -121
  300. package/src/web/components/AuthorTextView.tsx +0 -97
  301. package/src/web/components/AuthorToolPalette.tsx +0 -103
  302. package/src/web/components/AuthorVideoControls.tsx +0 -111
  303. package/src/web/components/DescribeAuthorToolsToolCard.tsx +0 -50
  304. package/src/web/components/OpenAuthoringFileToolCard.tsx +0 -66
  305. package/src/web/components/UseAuthorToolsToolCard.tsx +0 -50
  306. package/src/web/index.ts +0 -68
  307. package/src/web/lib/authorGrid.ts +0 -124
  308. package/src/web/lib/authorRegions.ts +0 -30
  309. package/src/web/lib/authorViewportTypes.ts +0 -202
  310. package/src/web/lib/describeAuthorToolsToolRender.ts +0 -20
  311. package/src/web/lib/useAuthorToolsToolRender.ts +0 -20
  312. package/src/web/stores/authorCapture.ts +0 -322
  313. package/src/web/stores/authorGridTools.ts +0 -316
  314. package/src/web/stores/authorProfiles.ts +0 -130
  315. package/src/web/stores/authorRequestLifecycle.ts +0 -82
  316. package/src/web/stores/authorStore.ts +0 -60
  317. package/src/web/stores/authorWorkspaceStore.ts +0 -525
  318. package/src/web/tsconfig.json +0 -22
@@ -0,0 +1,26 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_authorFacade = require("./authorFacade-BvCSzZ5K.cjs");
3
+ let _agimon_ai_doompi_core_authorTools = require("@agimon-ai/doompi-core/authorTools");
4
+ Object.defineProperty(exports, "AUTHOR_DESCRIBE_TOOL_NAME", {
5
+ enumerable: true,
6
+ get: function() {
7
+ return _agimon_ai_doompi_core_authorTools.AUTHOR_DESCRIBE_TOOL_NAME;
8
+ }
9
+ });
10
+ Object.defineProperty(exports, "AUTHOR_FACADE_TOOL_NAMES", {
11
+ enumerable: true,
12
+ get: function() {
13
+ return _agimon_ai_doompi_core_authorTools.AUTHOR_FACADE_TOOL_NAMES;
14
+ }
15
+ });
16
+ Object.defineProperty(exports, "AUTHOR_USE_TOOL_NAME", {
17
+ enumerable: true,
18
+ get: function() {
19
+ return _agimon_ai_doompi_core_authorTools.AUTHOR_USE_TOOL_NAME;
20
+ }
21
+ });
22
+ exports.AuthorBridgeInputSchema = require_authorFacade.AuthorBridgeInputSchema;
23
+ exports.AuthorBridgeMessageSchema = require_authorFacade.AuthorBridgeMessageSchema;
24
+ exports.AuthorDescribeToolsInputSchema = require_authorFacade.AuthorDescribeToolsInputSchema;
25
+ exports.AuthorUseToolsInputSchema = require_authorFacade.AuthorUseToolsInputSchema;
26
+ exports.authorBridgeMethod = require_authorFacade.authorBridgeMethod;
@@ -0,0 +1,3 @@
1
+ import { a as AuthorUseToolsInput, i as AuthorDescribeToolsInputSchema, n as AuthorBridgeMessageSchema, o as AuthorUseToolsInputSchema, r as AuthorDescribeToolsInput, s as authorBridgeMethod, t as AuthorBridgeInputSchema } from "./authorFacade-RZ6EXlR5.mjs";
2
+ import { AUTHOR_DESCRIBE_TOOL_NAME, AUTHOR_FACADE_TOOL_NAMES, AUTHOR_USE_TOOL_NAME } from "@agimon-ai/doompi-core/authorTools";
3
+ export { AUTHOR_DESCRIBE_TOOL_NAME, AUTHOR_FACADE_TOOL_NAMES, AUTHOR_USE_TOOL_NAME, AuthorBridgeInputSchema, AuthorBridgeMessageSchema, type AuthorDescribeToolsInput, AuthorDescribeToolsInputSchema, type AuthorUseToolsInput, AuthorUseToolsInputSchema, authorBridgeMethod };
@@ -0,0 +1,3 @@
1
+ import { a as authorBridgeMethod, i as AuthorUseToolsInputSchema, n as AuthorBridgeMessageSchema, r as AuthorDescribeToolsInputSchema, t as AuthorBridgeInputSchema } from "./authorFacade-B9-Re3Ga.mjs";
2
+ import { AUTHOR_DESCRIBE_TOOL_NAME, AUTHOR_FACADE_TOOL_NAMES, AUTHOR_USE_TOOL_NAME } from "@agimon-ai/doompi-core/authorTools";
3
+ export { AUTHOR_DESCRIBE_TOOL_NAME, AUTHOR_FACADE_TOOL_NAMES, AUTHOR_USE_TOOL_NAME, AuthorBridgeInputSchema, AuthorBridgeMessageSchema, AuthorDescribeToolsInputSchema, AuthorUseToolsInputSchema, authorBridgeMethod };
@@ -1 +1,172 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("../adapters/pi/extension.cjs");exports.activateAuthorExtension=e.activateAuthorExtension,exports.default=e.activateAuthorExtension;
1
+ Object.defineProperties(exports, {
2
+ __esModule: { value: true },
3
+ [Symbol.toStringTag]: { value: "Module" }
4
+ });
5
+ const require_authorCommand = require("../authorCommand-Cd5dnLF7.cjs");
6
+ const require_monitor = require("../monitor-BxY8s_AX.cjs");
7
+ let _agimon_ai_doompi_core_piExtension = require("@agimon-ai/doompi-core/piExtension");
8
+ let _agimon_ai_doompi_minor_mode = require("@agimon-ai/doompi-minor-mode");
9
+ let _agimon_ai_doompi_core_extensionFile = require("@agimon-ai/doompi-core/extensionFile");
10
+ let _agimon_ai_doompi_core_help = require("@agimon-ai/doompi-core/help");
11
+ let _agimon_ai_doompi_core_toolSurface = require("@agimon-ai/doompi-core/toolSurface");
12
+ //#region src/extensions/workspaces/sessions/(backend)/_lib/authorPiMode.ts
13
+ /** Own Author's viewport polling independently from host registration. */
14
+ function createAuthorPiMode(catalog, signal) {
15
+ const monitor = require_monitor.createAuthorCatalogMonitor(catalog, { schedule(callback, delayMs) {
16
+ const timer = setTimeout(callback, delayMs);
17
+ timer.unref?.();
18
+ return () => clearTimeout(timer);
19
+ } });
20
+ let active = false;
21
+ let started = false;
22
+ let unsubscribe;
23
+ const listeners = /* @__PURE__ */ new Set();
24
+ const publish = () => {
25
+ mode.publish();
26
+ listeners.forEach((listener) => listener());
27
+ };
28
+ const mode = require_authorCommand.authorMinorMode.createOwner({
29
+ isActive: () => active,
30
+ detail: () => monitor.snapshot() ? "document viewport focused" : "waiting for a focused document",
31
+ setActive(enabled) {
32
+ signal.throwIfAborted();
33
+ if (active === enabled) return;
34
+ active = enabled;
35
+ if (active && started) monitor.start();
36
+ else monitor.stop();
37
+ publish();
38
+ }
39
+ });
40
+ return {
41
+ mode,
42
+ restriction: {
43
+ source: require_authorCommand.AUTHOR_PACKAGE_SOURCE,
44
+ restrict: (incoming, context) => require_monitor.authorToolRestriction(active, !!monitor.snapshot())(incoming, context),
45
+ subscribe(listener) {
46
+ listeners.add(listener);
47
+ return () => {
48
+ listeners.delete(listener);
49
+ };
50
+ }
51
+ },
52
+ isActive: () => active,
53
+ assertAvailable() {
54
+ if (signal.aborted) throw new Error("The Author runtime is disposed.");
55
+ if (!active) throw new Error("Author mode is not active.");
56
+ },
57
+ onStart() {
58
+ started = true;
59
+ unsubscribe = monitor.subscribe(publish);
60
+ if (active) monitor.start();
61
+ },
62
+ onStop() {
63
+ started = false;
64
+ active = false;
65
+ unsubscribe?.();
66
+ unsubscribe = void 0;
67
+ monitor.stop();
68
+ },
69
+ onDispose() {
70
+ monitor.dispose();
71
+ listeners.clear();
72
+ }
73
+ };
74
+ }
75
+ //#endregion
76
+ //#region src/extensions/workspaces/sessions/(backend)/root.cli.ts
77
+ var root_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineRoot)((context) => {
78
+ const catalog = context.options?.catalog ?? require_authorCommand.createAuthorCatalog();
79
+ const mode = createAuthorPiMode(catalog, context.signal);
80
+ const registrations = (cordis) => {
81
+ cordis.inject([_agimon_ai_doompi_core_help.DOOM_HELP_SERVICE], (child) => {
82
+ const handle = (0, _agimon_ai_doompi_core_help.requireDoomHelpService)(child).register({
83
+ source: require_authorCommand.AUTHOR_PACKAGE_SOURCE,
84
+ moduleUrl: require("url").pathToFileURL(__filename).href,
85
+ skills: [{
86
+ name: "doompi-use-author",
87
+ description: "Use @agimon-ai/doompi-author: Visual steering workspace for focused document review and bounded authoring"
88
+ }]
89
+ });
90
+ child.effect(() => () => handle.dispose());
91
+ });
92
+ cordis.inject([_agimon_ai_doompi_core_toolSurface.DOOM_TOOL_SURFACE_SERVICE], (child) => {
93
+ const handle = (0, _agimon_ai_doompi_core_toolSurface.requireDoomToolSurface)(child).register(mode.restriction);
94
+ child.effect(() => () => handle.dispose());
95
+ child.effect(() => mode.restriction.subscribe ? mode.restriction.subscribe(() => handle.update(mode.restriction.restrict)) : () => void 0);
96
+ });
97
+ };
98
+ return {
99
+ value: {
100
+ catalog,
101
+ assertAvailable: mode.assertAvailable,
102
+ mode,
103
+ service: context.options?.service
104
+ },
105
+ services: [(0, _agimon_ai_doompi_minor_mode.piMinorModes)([mode.mode]), registrations],
106
+ onStart: mode.onStart,
107
+ onStop: mode.onStop,
108
+ onDispose: mode.onDispose
109
+ };
110
+ });
111
+ //#endregion
112
+ //#region src/extensions/workspaces/sessions/(backend)/command/author.cli.ts
113
+ var author_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineCliCommand)((context) => require_authorCommand.createAuthorCommand(context.root.service));
114
+ //#endregion
115
+ //#region src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli.ts
116
+ var before_agent_start_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineCliHook)((context) => (event) => context.root.mode.isActive() ? { systemPrompt: `${event.systemPrompt}\n\n${require_authorCommand.AUTHOR_PI_GUIDANCE}` } : void 0);
117
+ //#endregion
118
+ //#region src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.ts
119
+ var session_start_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineCliHook)((context) => () => context.root.mode.mode.publish());
120
+ //#endregion
121
+ //#region src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli.ts
122
+ var describe_author_tools_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineTool)((context) => ({
123
+ ...require_authorCommand.createAuthorTools(context.root.catalog, context.root.assertAvailable)[1],
124
+ when: require_authorCommand.AUTHOR_TOOL_WHEN
125
+ }));
126
+ //#endregion
127
+ //#region src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli.ts
128
+ var open_authoring_file_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineTool)((context) => ({
129
+ ...require_authorCommand.createAuthorTools(context.root.catalog, context.root.assertAvailable)[0],
130
+ when: require_authorCommand.AUTHOR_TOOL_WHEN
131
+ }));
132
+ //#endregion
133
+ //#region src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli.ts
134
+ var use_author_tools_cli_default = (0, _agimon_ai_doompi_core_extensionFile.defineTool)((context) => ({
135
+ ...require_authorCommand.createAuthorTools(context.root.catalog, context.root.assertAvailable)[2],
136
+ when: require_authorCommand.AUTHOR_TOOL_WHEN
137
+ }));
138
+ //#endregion
139
+ //#region generated/pi.ts
140
+ const at = (value, context) => typeof value === "function" ? value(context) : value;
141
+ const via = (identity, value) => ({
142
+ ...identity,
143
+ ...value
144
+ });
145
+ const extension = (0, _agimon_ai_doompi_core_piExtension.definePiExtension)("@agimon-ai/doompi-author", async (context) => {
146
+ const scopeSession = await root_cli_default(context);
147
+ const contextSession = {
148
+ ...context,
149
+ root: scopeSession.value
150
+ };
151
+ return {
152
+ ...(0, _agimon_ai_doompi_core_extensionFile.composeRootHooks)(scopeSession),
153
+ get commands() {
154
+ return [at(author_cli_default, contextSession)];
155
+ },
156
+ events: {
157
+ before_agent_start: at(before_agent_start_cli_default, contextSession),
158
+ session_start: at(session_start_cli_default, contextSession)
159
+ },
160
+ ...(0, _agimon_ai_doompi_core_piExtension.piToolContributions)("@agimon-ai/doompi-author", [
161
+ via({ name: "describe_author_tools" }, at(describe_author_tools_cli_default, contextSession)),
162
+ via({ name: "open_authoring_file" }, at(open_authoring_file_cli_default, contextSession)),
163
+ via({ name: "use_author_tools" }, at(use_author_tools_cli_default, contextSession))
164
+ ]),
165
+ services: [...scopeSession.services ?? []]
166
+ };
167
+ });
168
+ //#endregion
169
+ exports.default = extension;
170
+ exports.extension = extension;
171
+
172
+ //# sourceMappingURL=pi.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi.cjs","names":["createAuthorCatalogMonitor","authorMinorMode","AUTHOR_PACKAGE_SOURCE","authorToolRestriction","defineRoot","createAuthorCatalog","DOOM_HELP_SERVICE","requireDoomHelpService","AUTHOR_PACKAGE_SOURCE","DOOM_TOOL_SURFACE_SERVICE","requireDoomToolSurface","piMinorModes","defineCliCommand","createAuthorCommand","defineCliHook","AUTHOR_PI_GUIDANCE","defineCliHook","defineTool","createAuthorTools","AUTHOR_TOOL_WHEN","defineTool","createAuthorTools","AUTHOR_TOOL_WHEN","defineTool","createAuthorTools","AUTHOR_TOOL_WHEN","definePiExtension","rootSession","composeRootHooks","commandAuthor","hookBeforeAgentStart","hookSessionStart","piToolContributions","toolDescribeAuthorTools","toolOpenAuthoringFile","toolUseAuthorTools"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/authorPiMode.ts","../../src/extensions/workspaces/sessions/(backend)/root.cli.ts","../../src/extensions/workspaces/sessions/(backend)/command/author.cli.ts","../../src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli.ts","../../src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli.ts","../../generated/pi.ts"],"sourcesContent":["import type { PiToolRestriction } from '@agimon-ai/doompi-core/piExtension';\n\nimport { AUTHOR_PACKAGE_SOURCE } from '../../../../../constants/author';\nimport { authorMinorMode } from '../../../../../models/authorMode';\nimport { authorToolRestriction, createAuthorCatalogMonitor } from '../../../../../services/authorCatalog/monitor';\nimport type { AuthorCatalog } from '../../../../../services/authorCatalog/type';\n\nexport interface AuthorPiMode {\n readonly mode: ReturnType<typeof authorMinorMode.createOwner>;\n readonly restriction: PiToolRestriction;\n isActive(): boolean;\n assertAvailable(this: void): void;\n onStart(this: void): void;\n onStop(this: void): void;\n onDispose(this: void): void;\n}\n\n/** Own Author's viewport polling independently from host registration. */\nexport function createAuthorPiMode(catalog: AuthorCatalog, signal: AbortSignal): AuthorPiMode {\n const monitor = createAuthorCatalogMonitor(catalog, {\n schedule(callback, delayMs) {\n const timer = setTimeout(callback, delayMs);\n timer.unref?.();\n return () => clearTimeout(timer);\n },\n });\n let active = false;\n let started = false;\n let unsubscribe: (() => void) | undefined;\n const listeners = new Set<() => void>();\n const publish = () => {\n mode.publish();\n listeners.forEach((listener) => listener());\n };\n const mode = authorMinorMode.createOwner({\n isActive: () => active,\n detail: () => (monitor.snapshot() ? 'document viewport focused' : 'waiting for a focused document'),\n setActive(enabled) {\n signal.throwIfAborted();\n if (active === enabled) return;\n active = enabled;\n if (active && started) monitor.start();\n else monitor.stop();\n publish();\n },\n });\n const restriction: PiToolRestriction = {\n source: AUTHOR_PACKAGE_SOURCE,\n restrict: (incoming, context) => authorToolRestriction(active, !!monitor.snapshot())(incoming, context),\n subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n },\n };\n return {\n mode,\n restriction,\n isActive: () => active,\n assertAvailable() {\n if (signal.aborted) throw new Error('The Author runtime is disposed.');\n if (!active) throw new Error('Author mode is not active.');\n },\n onStart() {\n started = true;\n unsubscribe = monitor.subscribe(publish);\n if (active) monitor.start();\n },\n onStop() {\n started = false;\n active = false;\n unsubscribe?.();\n unsubscribe = undefined;\n monitor.stop();\n },\n onDispose() {\n monitor.dispose();\n listeners.clear();\n },\n };\n}\n","import { defineRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport { DOOM_HELP_SERVICE, requireDoomHelpService } from '@agimon-ai/doompi-core/help';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\nimport { DOOM_TOOL_SURFACE_SERVICE, requireDoomToolSurface } from '@agimon-ai/doompi-core/toolSurface';\nimport { piMinorModes } from '@agimon-ai/doompi-minor-mode';\nimport type { Context } from '@deepseek-ai/cordis';\n\nimport { AUTHOR_PACKAGE_SOURCE } from '../../../../constants/author';\nimport { createAuthorCatalog } from '../../../../services/authorCatalog';\nimport type { AuthorExtensionDependencies } from '../../../../types/extension';\nimport { createAuthorPiMode } from './_lib/authorPiMode';\n\nexport default defineRoot((context: PiPluginContext<Partial<AuthorExtensionDependencies>>) => {\n const catalog = context.options?.catalog ?? createAuthorCatalog();\n const mode = createAuthorPiMode(catalog, context.signal);\n const registrations = (cordis: Context): void => {\n cordis.inject([DOOM_HELP_SERVICE], (child) => {\n const handle = requireDoomHelpService(child).register({\n source: AUTHOR_PACKAGE_SOURCE,\n moduleUrl: import.meta.url,\n skills: [\n {\n name: 'doompi-use-author',\n description:\n 'Use @agimon-ai/doompi-author: Visual steering workspace for focused document review and bounded authoring',\n },\n ],\n });\n child.effect(() => () => handle.dispose());\n });\n cordis.inject([DOOM_TOOL_SURFACE_SERVICE], (child) => {\n const surface = requireDoomToolSurface(child);\n const handle = surface.register(mode.restriction);\n child.effect(() => () => handle.dispose());\n child.effect(() =>\n mode.restriction.subscribe\n ? mode.restriction.subscribe(() => handle.update(mode.restriction.restrict))\n : () => undefined,\n );\n });\n };\n\n return {\n value: {\n catalog,\n assertAvailable: mode.assertAvailable,\n mode,\n service: context.options?.service,\n },\n services: [piMinorModes([mode.mode]), registrations],\n onStart: mode.onStart,\n onStop: mode.onStop,\n onDispose: mode.onDispose,\n };\n});\n","import { defineCliCommand, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { createAuthorCommand } from '../../../../../services/authorCommand';\nimport type { AuthorExtensionService } from '../../../../../types/extension';\n\n// The terminal takes the command as a native Pi declaration, so this half names\n// itself through createAuthorCommand rather than through the generated entry.\nexport default defineCliCommand((context: WithRoot<unknown, { readonly service?: AuthorExtensionService }>) =>\n createAuthorCommand(context.root.service),\n);\n","import { defineCliHook, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\n\nimport { AUTHOR_PI_GUIDANCE } from '../../../../../constants/author';\nimport type { AuthorExtensionDependencies } from '../../../../../types/extension';\ntype AuthorPiScope = Awaited<ReturnType<typeof import('../root.cli').default>>['value'];\n\nexport default defineCliHook(\n (context: WithRoot<PiPluginContext<Partial<AuthorExtensionDependencies>>, AuthorPiScope>) =>\n (event: { systemPrompt: string }) =>\n context.root.mode.isActive() ? { systemPrompt: `${event.systemPrompt}\\n\\n${AUTHOR_PI_GUIDANCE}` } : undefined,\n);\n","import { defineCliHook, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\n\nimport type { AuthorExtensionDependencies } from '../../../../../types/extension';\ntype AuthorPiScope = Awaited<ReturnType<typeof import('../root.cli').default>>['value'];\n\nexport default defineCliHook(\n (context: WithRoot<PiPluginContext<Partial<AuthorExtensionDependencies>>, AuthorPiScope>) => () =>\n context.root.mode.mode.publish(),\n);\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[1]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[0]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[2]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","// Generated by @agimon-ai/doompi-build. Do not edit by hand.\nimport { definePiExtension, piToolContributions, type PiPluginContext, type PiPluginContributions } from '@agimon-ai/doompi-core/piExtension';\nimport { composeRootHooks } from '@agimon-ai/doompi-core/extensionFile';\n\nimport rootSession from '../src/extensions/workspaces/sessions/(backend)/root.cli';\nimport commandAuthor from '../src/extensions/workspaces/sessions/(backend)/command/author.cli';\nimport hookBeforeAgentStart from '../src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli';\nimport hookSessionStart from '../src/extensions/workspaces/sessions/(backend)/hook/session-start.cli';\nimport toolDescribeAuthorTools from '../src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli';\nimport toolOpenAuthoringFile from '../src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli';\nimport toolUseAuthorTools from '../src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli';\n\ntype OptionsOf<T> = T extends (context: PiPluginContext<infer Options>) => unknown ? Options : never;\ntype InferredOptions = Exclude<OptionsOf<typeof rootSession> | OptionsOf<typeof commandAuthor> | OptionsOf<typeof hookBeforeAgentStart> | OptionsOf<typeof hookSessionStart> | OptionsOf<typeof toolDescribeAuthorTools> | OptionsOf<typeof toolOpenAuthoringFile> | OptionsOf<typeof toolUseAuthorTools>, undefined>;\ntype Intersect<Union> =\n (Union extends unknown ? (value: Union) => void : never) extends (value: infer Value) => void ? Value : never;\ntype ExtensionOptions = [InferredOptions] extends [never] ? undefined : Intersect<InferredOptions>;\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\nconst via = <T>(identity: Record<string, unknown>, value: unknown): T => ({ ...identity, ...(value as object) }) as T;\n\nexport const extension = definePiExtension<ExtensionOptions>('@agimon-ai/doompi-author', async (context) => {\n const scopeSession = await rootSession(context);\n const contextSession = { ...context, root: scopeSession.value };\n return {\n ...composeRootHooks(scopeSession),\n get commands(): PiPluginContributions['commands'] { return [at(commandAuthor, contextSession)]; },\n events: {\n before_agent_start: at(hookBeforeAgentStart, contextSession) as NonNullable<PiPluginContributions['events']>['before_agent_start'],\n session_start: at(hookSessionStart, contextSession) as NonNullable<PiPluginContributions['events']>['session_start'],\n },\n ...piToolContributions('@agimon-ai/doompi-author', [via({ name: 'describe_author_tools' }, at(toolDescribeAuthorTools, contextSession)), via({ name: 'open_authoring_file' }, at(toolOpenAuthoringFile, contextSession)), via({ name: 'use_author_tools' }, at(toolUseAuthorTools, contextSession))]),\n services: [...(scopeSession.services ?? [])],\n };\n});\n\nexport default extension;\n"],"mappings":";;;;;;;;;;;;;AAkBA,SAAgB,mBAAmB,SAAwB,QAAmC;CAC5F,MAAM,UAAUA,gBAAAA,2BAA2B,SAAS,EAClD,SAAS,UAAU,SAAS;EAC1B,MAAM,QAAQ,WAAW,UAAU,OAAO;EAC1C,MAAM,QAAQ;EACd,aAAa,aAAa,KAAK;CACjC,EACF,CAAC;CACD,IAAI,SAAS;CACb,IAAI,UAAU;CACd,IAAI;CACJ,MAAM,4BAAY,IAAI,IAAgB;CACtC,MAAM,gBAAgB;EACpB,KAAK,QAAQ;EACb,UAAU,SAAS,aAAa,SAAS,CAAC;CAC5C;CACA,MAAM,OAAOC,sBAAAA,gBAAgB,YAAY;EACvC,gBAAgB;EAChB,cAAe,QAAQ,SAAS,IAAI,8BAA8B;EAClE,UAAU,SAAS;GACjB,OAAO,eAAe;GACtB,IAAI,WAAW,SAAS;GACxB,SAAS;GACT,IAAI,UAAU,SAAS,QAAQ,MAAM;QAChC,QAAQ,KAAK;GAClB,QAAQ;EACV;CACF,CAAC;CAWD,OAAO;EACL;EACA,aAAA;GAXA,QAAQC,sBAAAA;GACR,WAAW,UAAU,YAAYC,gBAAAA,sBAAsB,QAAQ,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,CAAC,UAAU,OAAO;GACtG,UAAU,UAAU;IAClB,UAAU,IAAI,QAAQ;IACtB,aAAa;KACX,UAAU,OAAO,QAAQ;IAC3B;GACF;EAIU;EACV,gBAAgB;EAChB,kBAAkB;GAChB,IAAI,OAAO,SAAS,MAAM,IAAI,MAAM,iCAAiC;GACrE,IAAI,CAAC,QAAQ,MAAM,IAAI,MAAM,4BAA4B;EAC3D;EACA,UAAU;GACR,UAAU;GACV,cAAc,QAAQ,UAAU,OAAO;GACvC,IAAI,QAAQ,QAAQ,MAAM;EAC5B;EACA,SAAS;GACP,UAAU;GACV,SAAS;GACT,cAAc;GACd,cAAc,KAAA;GACd,QAAQ,KAAK;EACf;EACA,YAAY;GACV,QAAQ,QAAQ;GAChB,UAAU,MAAM;EAClB;CACF;AACF;;;ACrEA,IAAA,oBAAA,GAAeC,qCAAAA,WAAAA,EAAY,YAAmE;CAC5F,MAAM,UAAU,QAAQ,SAAS,WAAWC,sBAAAA,oBAAoB;CAChE,MAAM,OAAO,mBAAmB,SAAS,QAAQ,MAAM;CACvD,MAAM,iBAAiB,WAA0B;EAC/C,OAAO,OAAO,CAACC,4BAAAA,iBAAiB,IAAI,UAAU;GAC5C,MAAM,UAAA,GAASC,4BAAAA,uBAAAA,CAAuB,KAAK,CAAC,CAAC,SAAS;IACpD,QAAQC,sBAAAA;IACR,WAAA,QAAA,KAAA,CAAA,CAAA,cAAA,UAAA,CAAA,CAAA;IACA,QAAQ,CACN;KACE,MAAM;KACN,aACE;IACJ,CACF;GACF,CAAC;GACD,MAAM,mBAAmB,OAAO,QAAQ,CAAC;EAC3C,CAAC;EACD,OAAO,OAAO,CAACC,mCAAAA,yBAAyB,IAAI,UAAU;GAEpD,MAAM,UAAA,GADUC,mCAAAA,uBAAAA,CAAuB,KAClB,CAAC,CAAC,SAAS,KAAK,WAAW;GAChD,MAAM,mBAAmB,OAAO,QAAQ,CAAC;GACzC,MAAM,aACJ,KAAK,YAAY,YACb,KAAK,YAAY,gBAAgB,OAAO,OAAO,KAAK,YAAY,QAAQ,CAAC,UACnE,KAAA,CACZ;EACF,CAAC;CACH;CAEA,OAAO;EACL,OAAO;GACL;GACA,iBAAiB,KAAK;GACtB;GACA,SAAS,QAAQ,SAAS;EAC5B;EACA,UAAU,EAAA,GAACC,6BAAAA,aAAAA,CAAa,CAAC,KAAK,IAAI,CAAC,GAAG,aAAa;EACnD,SAAS,KAAK;EACd,QAAQ,KAAK;EACb,WAAW,KAAK;CAClB;AACF,CAAC;;;AC/CD,IAAA,sBAAA,GAAeC,qCAAAA,iBAAAA,EAAkB,YAC/BC,sBAAAA,oBAAoB,QAAQ,KAAK,OAAO,CAC1C;;;ACFA,IAAA,kCAAA,GAAeC,qCAAAA,cAAAA,EACZ,aACE,UACC,QAAQ,KAAK,KAAK,SAAS,IAAI,EAAE,cAAc,GAAG,MAAM,aAAa,MAAMC,sBAAAA,qBAAqB,IAAI,KAAA,CAC1G;;;ACLA,IAAA,6BAAA,GAAeC,qCAAAA,cAAAA,EACZ,kBACC,QAAQ,KAAK,KAAK,KAAK,QAAQ,CACnC;;;ACLA,IAAA,qCAAA,GAAeC,qCAAAA,WAAAA,EAAY,aAAgD;CACzE,GAAGC,sBAAAA,kBAAkB,QAAQ,KAAK,SAAS,QAAQ,KAAK,eAAe,CAAC,CAAC;CACzE,MAAMC,sBAAAA;AACR,EAAE;;;ACHF,IAAA,mCAAA,GAAeC,qCAAAA,WAAAA,EAAY,aAAgD;CACzE,GAAGC,sBAAAA,kBAAkB,QAAQ,KAAK,SAAS,QAAQ,KAAK,eAAe,CAAC,CAAC;CACzE,MAAMC,sBAAAA;AACR,EAAE;;;ACHF,IAAA,gCAAA,GAAeC,qCAAAA,WAAAA,EAAY,aAAgD;CACzE,GAAGC,sBAAAA,kBAAkB,QAAQ,KAAK,SAAS,QAAQ,KAAK,eAAe,CAAC,CAAC;CACzE,MAAMC,sBAAAA;AACR,EAAE;;;ACYF,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;AACpE,MAAM,OAAU,UAAmC,WAAuB;CAAE,GAAG;CAAU,GAAI;AAAiB;AAE9G,MAAa,aAAA,GAAYC,mCAAAA,kBAAAA,CAAoC,4BAA4B,OAAO,YAAY;CAC1G,MAAM,eAAe,MAAMC,iBAAY,OAAO;CAC9C,MAAM,iBAAiB;EAAE,GAAG;EAAS,MAAM,aAAa;CAAM;CAC9D,OAAO;EACL,IAAA,GAAGC,qCAAAA,iBAAAA,CAAiB,YAAY;EAChC,IAAI,WAA8C;GAAE,OAAO,CAAC,GAAGC,oBAAe,cAAc,CAAC;EAAG;EAChG,QAAQ;GACN,oBAAoB,GAAGC,gCAAsB,cAAc;GAC3D,eAAe,GAAGC,2BAAkB,cAAc;EACpD;EACA,IAAA,GAAGC,mCAAAA,oBAAAA,CAAoB,4BAA4B;GAAC,IAAI,EAAE,MAAM,wBAAwB,GAAG,GAAGC,mCAAyB,cAAc,CAAC;GAAG,IAAI,EAAE,MAAM,sBAAsB,GAAG,GAAGC,iCAAuB,cAAc,CAAC;GAAG,IAAI,EAAE,MAAM,mBAAmB,GAAG,GAAGC,8BAAoB,cAAc,CAAC;EAAC,CAAC;EACpS,UAAU,CAAC,GAAI,aAAa,YAAY,CAAC,CAAE;CAC7C;AACF,CAAC"}
@@ -1,2 +1,6 @@
1
- import { activateAuthorExtension } from "../packages/minor/doompi-author/src/adapters/pi/extension.mjs";
2
- export { activateAuthorExtension, activateAuthorExtension as default };
1
+ import { H as AuthorExtensionDependencies } from "../index-Btm_xNOb.mjs";
2
+ //#region generated/pi.d.ts
3
+ export declare const extension: import("@agimon-ai/doompi-core/runtimePiExtension").DefinedPiExtension<Partial<AuthorExtensionDependencies>>;
4
+ //#endregion
5
+ export { extension as default };
6
+ //# sourceMappingURL=pi.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi.d.mts","names":[],"sources":["../../generated/pi.ts"],"mappings":";;qBAuBa,+DAAS,mBAAA,QAAT"}
@@ -1 +1,167 @@
1
- import{activateAuthorExtension as e}from"../packages/minor/doompi-author/src/adapters/pi/extension.mjs";export{e as activateAuthorExtension,e as default};
1
+ import { a as createAuthorTools, h as AUTHOR_PI_GUIDANCE, i as AUTHOR_TOOL_WHEN, m as AUTHOR_PACKAGE_SOURCE, n as authorMinorMode, r as createAuthorCatalog, t as createAuthorCommand } from "../authorCommand-B90ghX5J.mjs";
2
+ import { n as createAuthorCatalogMonitor, t as authorToolRestriction } from "../monitor-7T5YF6px.mjs";
3
+ import { definePiExtension, piToolContributions } from "@agimon-ai/doompi-core/piExtension";
4
+ import { piMinorModes } from "@agimon-ai/doompi-minor-mode";
5
+ import { composeRootHooks, defineCliCommand, defineCliHook, defineRoot, defineTool as defineTool$1 } from "@agimon-ai/doompi-core/extensionFile";
6
+ import { DOOM_HELP_SERVICE, requireDoomHelpService } from "@agimon-ai/doompi-core/help";
7
+ import { DOOM_TOOL_SURFACE_SERVICE, requireDoomToolSurface } from "@agimon-ai/doompi-core/toolSurface";
8
+ //#region src/extensions/workspaces/sessions/(backend)/_lib/authorPiMode.ts
9
+ /** Own Author's viewport polling independently from host registration. */
10
+ function createAuthorPiMode(catalog, signal) {
11
+ const monitor = createAuthorCatalogMonitor(catalog, { schedule(callback, delayMs) {
12
+ const timer = setTimeout(callback, delayMs);
13
+ timer.unref?.();
14
+ return () => clearTimeout(timer);
15
+ } });
16
+ let active = false;
17
+ let started = false;
18
+ let unsubscribe;
19
+ const listeners = /* @__PURE__ */ new Set();
20
+ const publish = () => {
21
+ mode.publish();
22
+ listeners.forEach((listener) => listener());
23
+ };
24
+ const mode = authorMinorMode.createOwner({
25
+ isActive: () => active,
26
+ detail: () => monitor.snapshot() ? "document viewport focused" : "waiting for a focused document",
27
+ setActive(enabled) {
28
+ signal.throwIfAborted();
29
+ if (active === enabled) return;
30
+ active = enabled;
31
+ if (active && started) monitor.start();
32
+ else monitor.stop();
33
+ publish();
34
+ }
35
+ });
36
+ return {
37
+ mode,
38
+ restriction: {
39
+ source: AUTHOR_PACKAGE_SOURCE,
40
+ restrict: (incoming, context) => authorToolRestriction(active, !!monitor.snapshot())(incoming, context),
41
+ subscribe(listener) {
42
+ listeners.add(listener);
43
+ return () => {
44
+ listeners.delete(listener);
45
+ };
46
+ }
47
+ },
48
+ isActive: () => active,
49
+ assertAvailable() {
50
+ if (signal.aborted) throw new Error("The Author runtime is disposed.");
51
+ if (!active) throw new Error("Author mode is not active.");
52
+ },
53
+ onStart() {
54
+ started = true;
55
+ unsubscribe = monitor.subscribe(publish);
56
+ if (active) monitor.start();
57
+ },
58
+ onStop() {
59
+ started = false;
60
+ active = false;
61
+ unsubscribe?.();
62
+ unsubscribe = void 0;
63
+ monitor.stop();
64
+ },
65
+ onDispose() {
66
+ monitor.dispose();
67
+ listeners.clear();
68
+ }
69
+ };
70
+ }
71
+ //#endregion
72
+ //#region src/extensions/workspaces/sessions/(backend)/root.cli.ts
73
+ var root_cli_default = defineRoot((context) => {
74
+ const catalog = context.options?.catalog ?? createAuthorCatalog();
75
+ const mode = createAuthorPiMode(catalog, context.signal);
76
+ const registrations = (cordis) => {
77
+ cordis.inject([DOOM_HELP_SERVICE], (child) => {
78
+ const handle = requireDoomHelpService(child).register({
79
+ source: AUTHOR_PACKAGE_SOURCE,
80
+ moduleUrl: import.meta.url,
81
+ skills: [{
82
+ name: "doompi-use-author",
83
+ description: "Use @agimon-ai/doompi-author: Visual steering workspace for focused document review and bounded authoring"
84
+ }]
85
+ });
86
+ child.effect(() => () => handle.dispose());
87
+ });
88
+ cordis.inject([DOOM_TOOL_SURFACE_SERVICE], (child) => {
89
+ const handle = requireDoomToolSurface(child).register(mode.restriction);
90
+ child.effect(() => () => handle.dispose());
91
+ child.effect(() => mode.restriction.subscribe ? mode.restriction.subscribe(() => handle.update(mode.restriction.restrict)) : () => void 0);
92
+ });
93
+ };
94
+ return {
95
+ value: {
96
+ catalog,
97
+ assertAvailable: mode.assertAvailable,
98
+ mode,
99
+ service: context.options?.service
100
+ },
101
+ services: [piMinorModes([mode.mode]), registrations],
102
+ onStart: mode.onStart,
103
+ onStop: mode.onStop,
104
+ onDispose: mode.onDispose
105
+ };
106
+ });
107
+ //#endregion
108
+ //#region src/extensions/workspaces/sessions/(backend)/command/author.cli.ts
109
+ var author_cli_default = defineCliCommand((context) => createAuthorCommand(context.root.service));
110
+ //#endregion
111
+ //#region src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli.ts
112
+ var before_agent_start_cli_default = defineCliHook((context) => (event) => context.root.mode.isActive() ? { systemPrompt: `${event.systemPrompt}\n\n${AUTHOR_PI_GUIDANCE}` } : void 0);
113
+ //#endregion
114
+ //#region src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.ts
115
+ var session_start_cli_default = defineCliHook((context) => () => context.root.mode.mode.publish());
116
+ //#endregion
117
+ //#region src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli.ts
118
+ var describe_author_tools_cli_default = defineTool$1((context) => ({
119
+ ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[1],
120
+ when: AUTHOR_TOOL_WHEN
121
+ }));
122
+ //#endregion
123
+ //#region src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli.ts
124
+ var open_authoring_file_cli_default = defineTool$1((context) => ({
125
+ ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[0],
126
+ when: AUTHOR_TOOL_WHEN
127
+ }));
128
+ //#endregion
129
+ //#region src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli.ts
130
+ var use_author_tools_cli_default = defineTool$1((context) => ({
131
+ ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[2],
132
+ when: AUTHOR_TOOL_WHEN
133
+ }));
134
+ //#endregion
135
+ //#region generated/pi.ts
136
+ const at = (value, context) => typeof value === "function" ? value(context) : value;
137
+ const via = (identity, value) => ({
138
+ ...identity,
139
+ ...value
140
+ });
141
+ const extension = definePiExtension("@agimon-ai/doompi-author", async (context) => {
142
+ const scopeSession = await root_cli_default(context);
143
+ const contextSession = {
144
+ ...context,
145
+ root: scopeSession.value
146
+ };
147
+ return {
148
+ ...composeRootHooks(scopeSession),
149
+ get commands() {
150
+ return [at(author_cli_default, contextSession)];
151
+ },
152
+ events: {
153
+ before_agent_start: at(before_agent_start_cli_default, contextSession),
154
+ session_start: at(session_start_cli_default, contextSession)
155
+ },
156
+ ...piToolContributions("@agimon-ai/doompi-author", [
157
+ via({ name: "describe_author_tools" }, at(describe_author_tools_cli_default, contextSession)),
158
+ via({ name: "open_authoring_file" }, at(open_authoring_file_cli_default, contextSession)),
159
+ via({ name: "use_author_tools" }, at(use_author_tools_cli_default, contextSession))
160
+ ]),
161
+ services: [...scopeSession.services ?? []]
162
+ };
163
+ });
164
+ //#endregion
165
+ export { extension as default, extension };
166
+
167
+ //# sourceMappingURL=pi.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pi.mjs","names":["defineTool","defineTool","defineTool","rootSession","commandAuthor","hookBeforeAgentStart","hookSessionStart","toolDescribeAuthorTools","toolOpenAuthoringFile","toolUseAuthorTools"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/authorPiMode.ts","../../src/extensions/workspaces/sessions/(backend)/root.cli.ts","../../src/extensions/workspaces/sessions/(backend)/command/author.cli.ts","../../src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli.ts","../../src/extensions/workspaces/sessions/(backend)/hook/session-start.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli.ts","../../src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli.ts","../../generated/pi.ts"],"sourcesContent":["import type { PiToolRestriction } from '@agimon-ai/doompi-core/piExtension';\n\nimport { AUTHOR_PACKAGE_SOURCE } from '../../../../../constants/author';\nimport { authorMinorMode } from '../../../../../models/authorMode';\nimport { authorToolRestriction, createAuthorCatalogMonitor } from '../../../../../services/authorCatalog/monitor';\nimport type { AuthorCatalog } from '../../../../../services/authorCatalog/type';\n\nexport interface AuthorPiMode {\n readonly mode: ReturnType<typeof authorMinorMode.createOwner>;\n readonly restriction: PiToolRestriction;\n isActive(): boolean;\n assertAvailable(this: void): void;\n onStart(this: void): void;\n onStop(this: void): void;\n onDispose(this: void): void;\n}\n\n/** Own Author's viewport polling independently from host registration. */\nexport function createAuthorPiMode(catalog: AuthorCatalog, signal: AbortSignal): AuthorPiMode {\n const monitor = createAuthorCatalogMonitor(catalog, {\n schedule(callback, delayMs) {\n const timer = setTimeout(callback, delayMs);\n timer.unref?.();\n return () => clearTimeout(timer);\n },\n });\n let active = false;\n let started = false;\n let unsubscribe: (() => void) | undefined;\n const listeners = new Set<() => void>();\n const publish = () => {\n mode.publish();\n listeners.forEach((listener) => listener());\n };\n const mode = authorMinorMode.createOwner({\n isActive: () => active,\n detail: () => (monitor.snapshot() ? 'document viewport focused' : 'waiting for a focused document'),\n setActive(enabled) {\n signal.throwIfAborted();\n if (active === enabled) return;\n active = enabled;\n if (active && started) monitor.start();\n else monitor.stop();\n publish();\n },\n });\n const restriction: PiToolRestriction = {\n source: AUTHOR_PACKAGE_SOURCE,\n restrict: (incoming, context) => authorToolRestriction(active, !!monitor.snapshot())(incoming, context),\n subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n },\n };\n return {\n mode,\n restriction,\n isActive: () => active,\n assertAvailable() {\n if (signal.aborted) throw new Error('The Author runtime is disposed.');\n if (!active) throw new Error('Author mode is not active.');\n },\n onStart() {\n started = true;\n unsubscribe = monitor.subscribe(publish);\n if (active) monitor.start();\n },\n onStop() {\n started = false;\n active = false;\n unsubscribe?.();\n unsubscribe = undefined;\n monitor.stop();\n },\n onDispose() {\n monitor.dispose();\n listeners.clear();\n },\n };\n}\n","import { defineRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport { DOOM_HELP_SERVICE, requireDoomHelpService } from '@agimon-ai/doompi-core/help';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\nimport { DOOM_TOOL_SURFACE_SERVICE, requireDoomToolSurface } from '@agimon-ai/doompi-core/toolSurface';\nimport { piMinorModes } from '@agimon-ai/doompi-minor-mode';\nimport type { Context } from '@deepseek-ai/cordis';\n\nimport { AUTHOR_PACKAGE_SOURCE } from '../../../../constants/author';\nimport { createAuthorCatalog } from '../../../../services/authorCatalog';\nimport type { AuthorExtensionDependencies } from '../../../../types/extension';\nimport { createAuthorPiMode } from './_lib/authorPiMode';\n\nexport default defineRoot((context: PiPluginContext<Partial<AuthorExtensionDependencies>>) => {\n const catalog = context.options?.catalog ?? createAuthorCatalog();\n const mode = createAuthorPiMode(catalog, context.signal);\n const registrations = (cordis: Context): void => {\n cordis.inject([DOOM_HELP_SERVICE], (child) => {\n const handle = requireDoomHelpService(child).register({\n source: AUTHOR_PACKAGE_SOURCE,\n moduleUrl: import.meta.url,\n skills: [\n {\n name: 'doompi-use-author',\n description:\n 'Use @agimon-ai/doompi-author: Visual steering workspace for focused document review and bounded authoring',\n },\n ],\n });\n child.effect(() => () => handle.dispose());\n });\n cordis.inject([DOOM_TOOL_SURFACE_SERVICE], (child) => {\n const surface = requireDoomToolSurface(child);\n const handle = surface.register(mode.restriction);\n child.effect(() => () => handle.dispose());\n child.effect(() =>\n mode.restriction.subscribe\n ? mode.restriction.subscribe(() => handle.update(mode.restriction.restrict))\n : () => undefined,\n );\n });\n };\n\n return {\n value: {\n catalog,\n assertAvailable: mode.assertAvailable,\n mode,\n service: context.options?.service,\n },\n services: [piMinorModes([mode.mode]), registrations],\n onStart: mode.onStart,\n onStop: mode.onStop,\n onDispose: mode.onDispose,\n };\n});\n","import { defineCliCommand, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { createAuthorCommand } from '../../../../../services/authorCommand';\nimport type { AuthorExtensionService } from '../../../../../types/extension';\n\n// The terminal takes the command as a native Pi declaration, so this half names\n// itself through createAuthorCommand rather than through the generated entry.\nexport default defineCliCommand((context: WithRoot<unknown, { readonly service?: AuthorExtensionService }>) =>\n createAuthorCommand(context.root.service),\n);\n","import { defineCliHook, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\n\nimport { AUTHOR_PI_GUIDANCE } from '../../../../../constants/author';\nimport type { AuthorExtensionDependencies } from '../../../../../types/extension';\ntype AuthorPiScope = Awaited<ReturnType<typeof import('../root.cli').default>>['value'];\n\nexport default defineCliHook(\n (context: WithRoot<PiPluginContext<Partial<AuthorExtensionDependencies>>, AuthorPiScope>) =>\n (event: { systemPrompt: string }) =>\n context.root.mode.isActive() ? { systemPrompt: `${event.systemPrompt}\\n\\n${AUTHOR_PI_GUIDANCE}` } : undefined,\n);\n","import { defineCliHook, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\nimport type { PiPluginContext } from '@agimon-ai/doompi-core/piExtension';\n\nimport type { AuthorExtensionDependencies } from '../../../../../types/extension';\ntype AuthorPiScope = Awaited<ReturnType<typeof import('../root.cli').default>>['value'];\n\nexport default defineCliHook(\n (context: WithRoot<PiPluginContext<Partial<AuthorExtensionDependencies>>, AuthorPiScope>) => () =>\n context.root.mode.mode.publish(),\n);\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[1]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[0]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","import { defineTool, type WithRoot } from '@agimon-ai/doompi-core/extensionFile';\n\nimport { AUTHOR_TOOL_WHEN, createAuthorTools, type AuthorToolRoot } from '../../../../../services/authorTools';\n\nexport default defineTool((context: WithRoot<unknown, AuthorToolRoot>) => ({\n ...createAuthorTools(context.root.catalog, context.root.assertAvailable)[2]!,\n when: AUTHOR_TOOL_WHEN,\n}));\n","// Generated by @agimon-ai/doompi-build. Do not edit by hand.\nimport { definePiExtension, piToolContributions, type PiPluginContext, type PiPluginContributions } from '@agimon-ai/doompi-core/piExtension';\nimport { composeRootHooks } from '@agimon-ai/doompi-core/extensionFile';\n\nimport rootSession from '../src/extensions/workspaces/sessions/(backend)/root.cli';\nimport commandAuthor from '../src/extensions/workspaces/sessions/(backend)/command/author.cli';\nimport hookBeforeAgentStart from '../src/extensions/workspaces/sessions/(backend)/hook/before-agent-start.cli';\nimport hookSessionStart from '../src/extensions/workspaces/sessions/(backend)/hook/session-start.cli';\nimport toolDescribeAuthorTools from '../src/extensions/workspaces/sessions/(backend)/tool/describe-author-tools.cli';\nimport toolOpenAuthoringFile from '../src/extensions/workspaces/sessions/(backend)/tool/open-authoring-file.cli';\nimport toolUseAuthorTools from '../src/extensions/workspaces/sessions/(backend)/tool/use-author-tools.cli';\n\ntype OptionsOf<T> = T extends (context: PiPluginContext<infer Options>) => unknown ? Options : never;\ntype InferredOptions = Exclude<OptionsOf<typeof rootSession> | OptionsOf<typeof commandAuthor> | OptionsOf<typeof hookBeforeAgentStart> | OptionsOf<typeof hookSessionStart> | OptionsOf<typeof toolDescribeAuthorTools> | OptionsOf<typeof toolOpenAuthoringFile> | OptionsOf<typeof toolUseAuthorTools>, undefined>;\ntype Intersect<Union> =\n (Union extends unknown ? (value: Union) => void : never) extends (value: infer Value) => void ? Value : never;\ntype ExtensionOptions = [InferredOptions] extends [never] ? undefined : Intersect<InferredOptions>;\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\nconst via = <T>(identity: Record<string, unknown>, value: unknown): T => ({ ...identity, ...(value as object) }) as T;\n\nexport const extension = definePiExtension<ExtensionOptions>('@agimon-ai/doompi-author', async (context) => {\n const scopeSession = await rootSession(context);\n const contextSession = { ...context, root: scopeSession.value };\n return {\n ...composeRootHooks(scopeSession),\n get commands(): PiPluginContributions['commands'] { return [at(commandAuthor, contextSession)]; },\n events: {\n before_agent_start: at(hookBeforeAgentStart, contextSession) as NonNullable<PiPluginContributions['events']>['before_agent_start'],\n session_start: at(hookSessionStart, contextSession) as NonNullable<PiPluginContributions['events']>['session_start'],\n },\n ...piToolContributions('@agimon-ai/doompi-author', [via({ name: 'describe_author_tools' }, at(toolDescribeAuthorTools, contextSession)), via({ name: 'open_authoring_file' }, at(toolOpenAuthoringFile, contextSession)), via({ name: 'use_author_tools' }, at(toolUseAuthorTools, contextSession))]),\n services: [...(scopeSession.services ?? [])],\n };\n});\n\nexport default extension;\n"],"mappings":"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"}