@loom-framework/core 0.1.0-alpha.19 → 0.1.0-alpha.190

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 (815) hide show
  1. package/builtin-skills/antd/SKILL.md +266 -0
  2. package/builtin-skills/antv-g2-chart/SKILL.md +1067 -0
  3. package/builtin-skills/antv-g2-chart/references/animations/g2-animation-intro.md +176 -0
  4. package/builtin-skills/antv-g2-chart/references/animations/g2-animation-keyframe.md +149 -0
  5. package/builtin-skills/antv-g2-chart/references/animations/g2-animation-types.md +253 -0
  6. package/builtin-skills/antv-g2-chart/references/components/g2-comp-annotation.md +237 -0
  7. package/builtin-skills/antv-g2-chart/references/components/g2-comp-axis-config.md +648 -0
  8. package/builtin-skills/antv-g2-chart/references/components/g2-comp-axis-radar.md +219 -0
  9. package/builtin-skills/antv-g2-chart/references/components/g2-comp-label-config.md +174 -0
  10. package/builtin-skills/antv-g2-chart/references/components/g2-comp-legend-category.md +278 -0
  11. package/builtin-skills/antv-g2-chart/references/components/g2-comp-legend-config.md +363 -0
  12. package/builtin-skills/antv-g2-chart/references/components/g2-comp-legend-continuous.md +264 -0
  13. package/builtin-skills/antv-g2-chart/references/components/g2-comp-scrollbar.md +276 -0
  14. package/builtin-skills/antv-g2-chart/references/components/g2-comp-slider.md +333 -0
  15. package/builtin-skills/antv-g2-chart/references/components/g2-comp-title.md +149 -0
  16. package/builtin-skills/antv-g2-chart/references/components/g2-comp-tooltip-config.md +358 -0
  17. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-facet-circle.md +97 -0
  18. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-facet-rect.md +241 -0
  19. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-geo-map.md +210 -0
  20. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-geoview.md +143 -0
  21. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-repeat-matrix.md +171 -0
  22. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-space-flex.md +142 -0
  23. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-space-layer.md +149 -0
  24. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-timing-keyframe.md +91 -0
  25. package/builtin-skills/antv-g2-chart/references/compositions/g2-comp-view.md +309 -0
  26. package/builtin-skills/antv-g2-chart/references/concepts/g2-concept-chart-selection.md +235 -0
  27. package/builtin-skills/antv-g2-chart/references/concepts/g2-concept-color-theory.md +287 -0
  28. package/builtin-skills/antv-g2-chart/references/concepts/g2-concept-visual-channels.md +180 -0
  29. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-cartesian.md +131 -0
  30. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-fisheye.md +131 -0
  31. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-helix.md +141 -0
  32. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-parallel.md +129 -0
  33. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-polar.md +143 -0
  34. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-radial.md +214 -0
  35. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-theta.md +171 -0
  36. package/builtin-skills/antv-g2-chart/references/coordinates/g2-coord-transpose.md +195 -0
  37. package/builtin-skills/antv-g2-chart/references/core/g2-core-chart-init.md +266 -0
  38. package/builtin-skills/antv-g2-chart/references/core/g2-core-encode-channel.md +197 -0
  39. package/builtin-skills/antv-g2-chart/references/core/g2-core-view-composition.md +224 -0
  40. package/builtin-skills/antv-g2-chart/references/data/g2-data-ema.md +190 -0
  41. package/builtin-skills/antv-g2-chart/references/data/g2-data-fetch.md +167 -0
  42. package/builtin-skills/antv-g2-chart/references/data/g2-data-filter.md +212 -0
  43. package/builtin-skills/antv-g2-chart/references/data/g2-data-fold.md +260 -0
  44. package/builtin-skills/antv-g2-chart/references/data/g2-data-format-tabular.md +280 -0
  45. package/builtin-skills/antv-g2-chart/references/data/g2-data-kde.md +426 -0
  46. package/builtin-skills/antv-g2-chart/references/data/g2-data-log.md +140 -0
  47. package/builtin-skills/antv-g2-chart/references/data/g2-data-slice.md +147 -0
  48. package/builtin-skills/antv-g2-chart/references/data/g2-data-sort.md +251 -0
  49. package/builtin-skills/antv-g2-chart/references/data/g2-data-sortby.md +183 -0
  50. package/builtin-skills/antv-g2-chart/references/data/g2-data-transform-patterns.md +394 -0
  51. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-adaptive-filter.md +118 -0
  52. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brush-axis.md +112 -0
  53. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brush-filter.md +122 -0
  54. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brush-x-y-highlight.md +127 -0
  55. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brush-xy.md +118 -0
  56. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brush.md +184 -0
  57. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brushx-filter.md +170 -0
  58. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brushx-highlight.md +186 -0
  59. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brushy-filter.md +170 -0
  60. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-brushy-highlight.md +185 -0
  61. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-chart-index.md +127 -0
  62. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-drilldown.md +149 -0
  63. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-highlight-by.md +125 -0
  64. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-highlight.md +235 -0
  65. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-hover-scale.md +109 -0
  66. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-point-move.md +152 -0
  67. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-select-by.md +133 -0
  68. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-element-select.md +249 -0
  69. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-fisheye.md +117 -0
  70. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-legend-filter.md +130 -0
  71. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-legend-highlight.md +130 -0
  72. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-poptip.md +105 -0
  73. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-scrollbar-filter.md +144 -0
  74. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-slider-filter.md +231 -0
  75. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-slider-wheel.md +138 -0
  76. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-tooltip.md +192 -0
  77. package/builtin-skills/antv-g2-chart/references/interactions/g2-interaction-treemap-drilldown.md +152 -0
  78. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-contrast-reverse.md +170 -0
  79. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-exceed-adjust.md +146 -0
  80. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-overflow-hide.md +185 -0
  81. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-overflow-stroke.md +147 -0
  82. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-overlap-dodge-y.md +225 -0
  83. package/builtin-skills/antv-g2-chart/references/label-transform/g2-label-transform-overlap-hide.md +213 -0
  84. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-arc-diagram.md +196 -0
  85. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-arc-donut.md +148 -0
  86. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-arc-pie.md +212 -0
  87. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-area-basic.md +168 -0
  88. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-area-stacked.md +150 -0
  89. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-beeswarm.md +134 -0
  90. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-bi-directional-bar.md +297 -0
  91. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-box-boxplot.md +163 -0
  92. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-boxplot.md +340 -0
  93. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-bullet.md +203 -0
  94. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-cell-heatmap.md +370 -0
  95. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-chord.md +341 -0
  96. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-connector.md +126 -0
  97. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-contourline.md +243 -0
  98. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-density.md +457 -0
  99. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-distribution-curve.md +298 -0
  100. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-funnel.md +329 -0
  101. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-gantt.md +208 -0
  102. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-gauge.md +247 -0
  103. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-heatmap.md +130 -0
  104. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-histogram.md +186 -0
  105. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-image.md +129 -0
  106. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-interval-basic.md +528 -0
  107. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-interval-grouped.md +161 -0
  108. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-interval-normalized.md +147 -0
  109. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-interval-stacked.md +183 -0
  110. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-k-chart.md +237 -0
  111. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-line-basic.md +353 -0
  112. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-line-multi.md +156 -0
  113. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-linex-liney.md +176 -0
  114. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-link.md +134 -0
  115. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-liquid.md +125 -0
  116. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-mosaic.md +257 -0
  117. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-pack.md +424 -0
  118. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-parallel.md +195 -0
  119. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-partition.md +275 -0
  120. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-path.md +135 -0
  121. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-point-bubble.md +138 -0
  122. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-point-scatter.md +177 -0
  123. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-polygon.md +130 -0
  124. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-radar.md +231 -0
  125. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-radial-bar.md +226 -0
  126. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-range-rangey.md +253 -0
  127. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-rangex.md +293 -0
  128. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-rect.md +115 -0
  129. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-regression-curve.md +276 -0
  130. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-rose.md +182 -0
  131. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-sankey.md +217 -0
  132. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-shape.md +160 -0
  133. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-spiral.md +257 -0
  134. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-sunburst.md +327 -0
  135. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-text.md +309 -0
  136. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-tree.md +235 -0
  137. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-treemap.md +426 -0
  138. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-vector.md +108 -0
  139. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-venn.md +204 -0
  140. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-violin.md +307 -0
  141. package/builtin-skills/antv-g2-chart/references/marks/g2-mark-wordcloud.md +155 -0
  142. package/builtin-skills/antv-g2-chart/references/palette/g2-palette-category10.md +196 -0
  143. package/builtin-skills/antv-g2-chart/references/palette/g2-palette-category20.md +238 -0
  144. package/builtin-skills/antv-g2-chart/references/patterns/g2-pattern-performance.md +181 -0
  145. package/builtin-skills/antv-g2-chart/references/patterns/g2-pattern-responsive.md +232 -0
  146. package/builtin-skills/antv-g2-chart/references/patterns/g2-pattern-v4-to-v5.md +223 -0
  147. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-band.md +127 -0
  148. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-linear.md +259 -0
  149. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-log.md +226 -0
  150. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-ordinal.md +135 -0
  151. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-point.md +242 -0
  152. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-pow-sqrt.md +124 -0
  153. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-quantile-quantize.md +119 -0
  154. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-sequential.md +267 -0
  155. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-threshold.md +133 -0
  156. package/builtin-skills/antv-g2-chart/references/scales/g2-scale-time.md +159 -0
  157. package/builtin-skills/antv-g2-chart/references/themes/g2-theme-builtin.md +192 -0
  158. package/builtin-skills/antv-g2-chart/references/themes/g2-theme-custom.md +183 -0
  159. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-bin.md +153 -0
  160. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-binx.md +133 -0
  161. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-diffy.md +130 -0
  162. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-dodgex.md +90 -0
  163. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-flexx.md +115 -0
  164. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-group.md +233 -0
  165. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-groupcolor.md +182 -0
  166. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-groupx.md +265 -0
  167. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-groupy.md +167 -0
  168. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-jitter.md +149 -0
  169. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-jitterx.md +177 -0
  170. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-jittery.md +177 -0
  171. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-normalizey.md +83 -0
  172. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-pack.md +164 -0
  173. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-sample.md +143 -0
  174. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-select.md +147 -0
  175. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-selectx.md +179 -0
  176. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-selecty.md +179 -0
  177. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-sort-color.md +115 -0
  178. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-sortx.md +285 -0
  179. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-sorty.md +117 -0
  180. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-stack-enter.md +158 -0
  181. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-stacky.md +218 -0
  182. package/builtin-skills/antv-g2-chart/references/transforms/g2-transform-symmetryy.md +122 -0
  183. package/builtin-skills/app-skill/SKILL.md +47 -0
  184. package/builtin-skills/app-skill/references/auth.md +180 -0
  185. package/builtin-skills/app-skill/references/data-semantics.md +44 -0
  186. package/builtin-skills/app-skill/references/events.md +365 -0
  187. package/builtin-skills/app-skill/references/evolution.md +90 -0
  188. package/builtin-skills/app-skill/references/feeder.md +184 -0
  189. package/builtin-skills/app-skill/references/model.md +124 -0
  190. package/builtin-skills/app-skill/references/models.md +59 -0
  191. package/builtin-skills/app-skill/references/notification.md +123 -0
  192. package/builtin-skills/app-skill/references/process-builder.md +420 -0
  193. package/builtin-skills/app-skill/references/process.md +458 -0
  194. package/builtin-skills/chart-visualization/SKILL.md +101 -0
  195. package/builtin-skills/loom/SKILL.md +308 -0
  196. package/builtin-skills/loom/references/README.md +285 -0
  197. package/builtin-skills/loom/references/dashboard.md +259 -0
  198. package/builtin-skills/loom/references/data-model.md +306 -0
  199. package/builtin-skills/loom/references/eject.md +111 -0
  200. package/builtin-skills/yuque-reader/SKILL.md +43 -0
  201. package/builtin-skills/yuque-reader/references/config.md +52 -0
  202. package/builtin-skills/yuque-reader/scripts/fetch_doc.py +121 -0
  203. package/dist/adapter-base.d.ts +31 -0
  204. package/dist/adapter-base.d.ts.map +1 -0
  205. package/dist/adapter-base.js +69 -0
  206. package/dist/adapter-base.js.map +1 -0
  207. package/dist/adapter-factory.d.ts +8 -0
  208. package/dist/adapter-factory.d.ts.map +1 -0
  209. package/dist/adapter-factory.js +25 -0
  210. package/dist/adapter-factory.js.map +1 -0
  211. package/dist/adapter-filesystem.d.ts +25 -11
  212. package/dist/adapter-filesystem.d.ts.map +1 -1
  213. package/dist/adapter-filesystem.js +230 -52
  214. package/dist/adapter-filesystem.js.map +1 -1
  215. package/dist/adapter-sqlite.d.ts +9 -23
  216. package/dist/adapter-sqlite.d.ts.map +1 -1
  217. package/dist/adapter-sqlite.js +94 -55
  218. package/dist/adapter-sqlite.js.map +1 -1
  219. package/dist/adapters/base.d.ts +31 -0
  220. package/dist/adapters/base.d.ts.map +1 -0
  221. package/dist/adapters/base.js +69 -0
  222. package/dist/adapters/base.js.map +1 -0
  223. package/dist/adapters/factory.d.ts +8 -0
  224. package/dist/adapters/factory.d.ts.map +1 -0
  225. package/dist/adapters/factory.js +25 -0
  226. package/dist/adapters/factory.js.map +1 -0
  227. package/dist/adapters/filesystem.d.ts +46 -0
  228. package/dist/adapters/filesystem.d.ts.map +1 -0
  229. package/dist/adapters/filesystem.js +321 -0
  230. package/dist/adapters/filesystem.js.map +1 -0
  231. package/dist/adapters/index.d.ts +10 -0
  232. package/dist/adapters/index.d.ts.map +1 -0
  233. package/dist/adapters/index.js +8 -0
  234. package/dist/adapters/index.js.map +1 -0
  235. package/dist/adapters/sqlite.d.ts +37 -0
  236. package/dist/adapters/sqlite.d.ts.map +1 -0
  237. package/dist/adapters/sqlite.js +264 -0
  238. package/dist/adapters/sqlite.js.map +1 -0
  239. package/dist/backend/ai/button-resolver.d.ts +18 -0
  240. package/dist/backend/ai/button-resolver.d.ts.map +1 -0
  241. package/dist/backend/ai/button-resolver.js +58 -0
  242. package/dist/backend/ai/button-resolver.js.map +1 -0
  243. package/dist/backend/ai/content-blocks.d.ts +18 -0
  244. package/dist/backend/ai/content-blocks.d.ts.map +1 -0
  245. package/dist/backend/ai/content-blocks.js +66 -0
  246. package/dist/backend/ai/content-blocks.js.map +1 -0
  247. package/dist/backend/ai/engine.d.ts +65 -0
  248. package/dist/backend/ai/engine.d.ts.map +1 -0
  249. package/dist/backend/ai/engine.js +238 -0
  250. package/dist/backend/ai/engine.js.map +1 -0
  251. package/dist/backend/ai/index.d.ts +11 -0
  252. package/dist/backend/ai/index.d.ts.map +1 -0
  253. package/dist/backend/ai/index.js +8 -0
  254. package/dist/backend/ai/index.js.map +1 -0
  255. package/dist/backend/ai/output-parser.d.ts +36 -0
  256. package/dist/backend/ai/output-parser.d.ts.map +1 -0
  257. package/dist/backend/ai/output-parser.js +264 -0
  258. package/dist/backend/ai/output-parser.js.map +1 -0
  259. package/dist/backend/ai/session-manager.d.ts +106 -0
  260. package/dist/backend/ai/session-manager.d.ts.map +1 -0
  261. package/dist/backend/ai/session-manager.js +304 -0
  262. package/dist/backend/ai/session-manager.js.map +1 -0
  263. package/dist/backend/auth/jwt.d.ts +16 -0
  264. package/dist/backend/auth/jwt.d.ts.map +1 -0
  265. package/dist/backend/auth/jwt.js +57 -0
  266. package/dist/backend/auth/jwt.js.map +1 -0
  267. package/dist/backend/auth/password.d.ts +10 -0
  268. package/dist/backend/auth/password.d.ts.map +1 -0
  269. package/dist/backend/auth/password.js +19 -0
  270. package/dist/backend/auth/password.js.map +1 -0
  271. package/dist/backend/auth/rbac.d.ts +36 -0
  272. package/dist/backend/auth/rbac.d.ts.map +1 -0
  273. package/dist/backend/auth/rbac.js +130 -0
  274. package/dist/backend/auth/rbac.js.map +1 -0
  275. package/dist/backend/auth/request-context.d.ts +15 -0
  276. package/dist/backend/auth/request-context.d.ts.map +1 -0
  277. package/dist/backend/auth/request-context.js +17 -0
  278. package/dist/backend/auth/request-context.js.map +1 -0
  279. package/dist/backend/auth/service-token.d.ts +11 -0
  280. package/dist/backend/auth/service-token.d.ts.map +1 -0
  281. package/dist/backend/auth/service-token.js +13 -0
  282. package/dist/backend/auth/service-token.js.map +1 -0
  283. package/dist/backend/auth/token-store.d.ts +28 -0
  284. package/dist/backend/auth/token-store.d.ts.map +1 -0
  285. package/dist/backend/auth/token-store.js +84 -0
  286. package/dist/backend/auth/token-store.js.map +1 -0
  287. package/dist/backend/auth/user-store.d.ts +42 -0
  288. package/dist/backend/auth/user-store.d.ts.map +1 -0
  289. package/dist/backend/auth/user-store.js +112 -0
  290. package/dist/backend/auth/user-store.js.map +1 -0
  291. package/dist/backend/events/event-bus.d.ts +39 -0
  292. package/dist/backend/events/event-bus.d.ts.map +1 -0
  293. package/dist/backend/events/event-bus.js +182 -0
  294. package/dist/backend/events/event-bus.js.map +1 -0
  295. package/dist/backend/events/event-emitting-adapter.d.ts +31 -0
  296. package/dist/backend/events/event-emitting-adapter.d.ts.map +1 -0
  297. package/dist/backend/events/event-emitting-adapter.js +70 -0
  298. package/dist/backend/events/event-emitting-adapter.js.map +1 -0
  299. package/dist/backend/events/event-registry.d.ts +22 -0
  300. package/dist/backend/events/event-registry.d.ts.map +1 -0
  301. package/dist/backend/events/event-registry.js +35 -0
  302. package/dist/backend/events/event-registry.js.map +1 -0
  303. package/dist/backend/events/index.d.ts +7 -0
  304. package/dist/backend/events/index.d.ts.map +1 -0
  305. package/dist/backend/events/index.js +7 -0
  306. package/dist/backend/events/index.js.map +1 -0
  307. package/dist/backend/events/subscription-service.d.ts +46 -0
  308. package/dist/backend/events/subscription-service.d.ts.map +1 -0
  309. package/dist/backend/events/subscription-service.js +220 -0
  310. package/dist/backend/events/subscription-service.js.map +1 -0
  311. package/dist/backend/index.d.ts +93 -0
  312. package/dist/backend/index.d.ts.map +1 -0
  313. package/dist/backend/index.js +481 -0
  314. package/dist/backend/index.js.map +1 -0
  315. package/dist/backend/lifecycle/index.d.ts +2 -0
  316. package/dist/backend/lifecycle/index.d.ts.map +1 -0
  317. package/dist/backend/lifecycle/index.js +2 -0
  318. package/dist/backend/lifecycle/index.js.map +1 -0
  319. package/dist/backend/lifecycle/manager.d.ts +73 -0
  320. package/dist/backend/lifecycle/manager.d.ts.map +1 -0
  321. package/dist/backend/lifecycle/manager.js +684 -0
  322. package/dist/backend/lifecycle/manager.js.map +1 -0
  323. package/dist/backend/loom-paths.d.ts +30 -0
  324. package/dist/backend/loom-paths.d.ts.map +1 -0
  325. package/dist/backend/loom-paths.js +49 -0
  326. package/dist/backend/loom-paths.js.map +1 -0
  327. package/dist/backend/notifications/interpolate.d.ts +6 -0
  328. package/dist/backend/notifications/interpolate.d.ts.map +1 -0
  329. package/dist/backend/notifications/interpolate.js +11 -0
  330. package/dist/backend/notifications/interpolate.js.map +1 -0
  331. package/dist/backend/notifications/notification-storage.d.ts +27 -0
  332. package/dist/backend/notifications/notification-storage.d.ts.map +1 -0
  333. package/dist/backend/notifications/notification-storage.js +160 -0
  334. package/dist/backend/notifications/notification-storage.js.map +1 -0
  335. package/dist/backend/observe/index.d.ts +6 -0
  336. package/dist/backend/observe/index.d.ts.map +1 -0
  337. package/dist/backend/observe/index.js +5 -0
  338. package/dist/backend/observe/index.js.map +1 -0
  339. package/dist/backend/observe/logger.d.ts +26 -0
  340. package/dist/backend/observe/logger.d.ts.map +1 -0
  341. package/dist/backend/observe/logger.js +68 -0
  342. package/dist/backend/observe/logger.js.map +1 -0
  343. package/dist/backend/observe/types.d.ts +26 -0
  344. package/dist/backend/observe/types.d.ts.map +1 -0
  345. package/dist/backend/observe/types.js +7 -0
  346. package/dist/backend/observe/types.js.map +1 -0
  347. package/dist/backend/process/engine.d.ts +127 -0
  348. package/dist/backend/process/engine.d.ts.map +1 -0
  349. package/dist/backend/process/engine.js +668 -0
  350. package/dist/backend/process/engine.js.map +1 -0
  351. package/dist/backend/process/index.d.ts +8 -0
  352. package/dist/backend/process/index.d.ts.map +1 -0
  353. package/dist/backend/process/index.js +7 -0
  354. package/dist/backend/process/index.js.map +1 -0
  355. package/dist/backend/process/logger.d.ts +38 -0
  356. package/dist/backend/process/logger.d.ts.map +1 -0
  357. package/dist/backend/process/logger.js +198 -0
  358. package/dist/backend/process/logger.js.map +1 -0
  359. package/dist/backend/process/metrics-store.d.ts +32 -0
  360. package/dist/backend/process/metrics-store.d.ts.map +1 -0
  361. package/dist/backend/process/metrics-store.js +108 -0
  362. package/dist/backend/process/metrics-store.js.map +1 -0
  363. package/dist/backend/process/migrate.d.ts +12 -0
  364. package/dist/backend/process/migrate.d.ts.map +1 -0
  365. package/dist/backend/process/migrate.js +145 -0
  366. package/dist/backend/process/migrate.js.map +1 -0
  367. package/dist/backend/process/process-helpers.d.ts +13 -0
  368. package/dist/backend/process/process-helpers.d.ts.map +1 -0
  369. package/dist/backend/process/process-helpers.js +23 -0
  370. package/dist/backend/process/process-helpers.js.map +1 -0
  371. package/dist/backend/process/queue.d.ts +33 -0
  372. package/dist/backend/process/queue.d.ts.map +1 -0
  373. package/dist/backend/process/queue.js +94 -0
  374. package/dist/backend/process/queue.js.map +1 -0
  375. package/dist/backend/process/registry.d.ts +64 -0
  376. package/dist/backend/process/registry.d.ts.map +1 -0
  377. package/dist/backend/process/registry.js +277 -0
  378. package/dist/backend/process/registry.js.map +1 -0
  379. package/dist/backend/process/trigger.d.ts +39 -0
  380. package/dist/backend/process/trigger.d.ts.map +1 -0
  381. package/dist/backend/process/trigger.js +162 -0
  382. package/dist/backend/process/trigger.js.map +1 -0
  383. package/dist/backend/routes/ai-config.d.ts +18 -0
  384. package/dist/backend/routes/ai-config.d.ts.map +1 -0
  385. package/dist/backend/routes/ai-config.js +227 -0
  386. package/dist/backend/routes/ai-config.js.map +1 -0
  387. package/dist/backend/routes/auth-routes.d.ts +33 -0
  388. package/dist/backend/routes/auth-routes.d.ts.map +1 -0
  389. package/dist/backend/routes/auth-routes.js +528 -0
  390. package/dist/backend/routes/auth-routes.js.map +1 -0
  391. package/dist/backend/routes/chat-sse.d.ts +17 -0
  392. package/dist/backend/routes/chat-sse.d.ts.map +1 -0
  393. package/dist/backend/routes/chat-sse.js +60 -0
  394. package/dist/backend/routes/chat-sse.js.map +1 -0
  395. package/dist/backend/routes/chat.d.ts +30 -0
  396. package/dist/backend/routes/chat.d.ts.map +1 -0
  397. package/dist/backend/routes/chat.js +258 -0
  398. package/dist/backend/routes/chat.js.map +1 -0
  399. package/dist/backend/routes/config-writer.d.ts +94 -0
  400. package/dist/backend/routes/config-writer.d.ts.map +1 -0
  401. package/dist/backend/routes/config-writer.js +538 -0
  402. package/dist/backend/routes/config-writer.js.map +1 -0
  403. package/dist/backend/routes/data.d.ts +16 -0
  404. package/dist/backend/routes/data.d.ts.map +1 -0
  405. package/dist/backend/routes/data.js +371 -0
  406. package/dist/backend/routes/data.js.map +1 -0
  407. package/dist/backend/routes/event-routes.d.ts +22 -0
  408. package/dist/backend/routes/event-routes.d.ts.map +1 -0
  409. package/dist/backend/routes/event-routes.js +153 -0
  410. package/dist/backend/routes/event-routes.js.map +1 -0
  411. package/dist/backend/routes/health.d.ts +7 -0
  412. package/dist/backend/routes/health.d.ts.map +1 -0
  413. package/dist/backend/routes/health.js +15 -0
  414. package/dist/backend/routes/health.js.map +1 -0
  415. package/dist/backend/routes/index.d.ts +24 -0
  416. package/dist/backend/routes/index.d.ts.map +1 -0
  417. package/dist/backend/routes/index.js +16 -0
  418. package/dist/backend/routes/index.js.map +1 -0
  419. package/dist/backend/routes/lifecycle-routes.d.ts +10 -0
  420. package/dist/backend/routes/lifecycle-routes.d.ts.map +1 -0
  421. package/dist/backend/routes/lifecycle-routes.js +54 -0
  422. package/dist/backend/routes/lifecycle-routes.js.map +1 -0
  423. package/dist/backend/routes/notification-routes.d.ts +22 -0
  424. package/dist/backend/routes/notification-routes.d.ts.map +1 -0
  425. package/dist/backend/routes/notification-routes.js +129 -0
  426. package/dist/backend/routes/notification-routes.js.map +1 -0
  427. package/dist/backend/routes/process-routes.d.ts +22 -0
  428. package/dist/backend/routes/process-routes.d.ts.map +1 -0
  429. package/dist/backend/routes/process-routes.js +542 -0
  430. package/dist/backend/routes/process-routes.js.map +1 -0
  431. package/dist/backend/routes/session-routes.d.ts +22 -0
  432. package/dist/backend/routes/session-routes.d.ts.map +1 -0
  433. package/dist/backend/routes/session-routes.js +97 -0
  434. package/dist/backend/routes/session-routes.js.map +1 -0
  435. package/dist/backend/routes/skill-archive.d.ts +13 -0
  436. package/dist/backend/routes/skill-archive.d.ts.map +1 -0
  437. package/dist/backend/routes/skill-archive.js +84 -0
  438. package/dist/backend/routes/skill-archive.js.map +1 -0
  439. package/dist/backend/routes/skill-parser.d.ts +41 -0
  440. package/dist/backend/routes/skill-parser.d.ts.map +1 -0
  441. package/dist/backend/routes/skill-parser.js +184 -0
  442. package/dist/backend/routes/skill-parser.js.map +1 -0
  443. package/dist/backend/routes/skill-service.d.ts +113 -0
  444. package/dist/backend/routes/skill-service.d.ts.map +1 -0
  445. package/dist/backend/routes/skill-service.js +265 -0
  446. package/dist/backend/routes/skill-service.js.map +1 -0
  447. package/dist/backend/routes/skills.d.ts +18 -0
  448. package/dist/backend/routes/skills.d.ts.map +1 -0
  449. package/dist/backend/routes/skills.js +168 -0
  450. package/dist/backend/routes/skills.js.map +1 -0
  451. package/dist/backend/routes/upload.d.ts +25 -0
  452. package/dist/backend/routes/upload.d.ts.map +1 -0
  453. package/dist/backend/routes/upload.js +100 -0
  454. package/dist/backend/routes/upload.js.map +1 -0
  455. package/dist/backend/services/skill-archive.d.ts +13 -0
  456. package/dist/backend/services/skill-archive.d.ts.map +1 -0
  457. package/dist/backend/services/skill-archive.js +84 -0
  458. package/dist/backend/services/skill-archive.js.map +1 -0
  459. package/dist/backend/services/skill-parser.d.ts +41 -0
  460. package/dist/backend/services/skill-parser.d.ts.map +1 -0
  461. package/dist/backend/services/skill-parser.js +184 -0
  462. package/dist/backend/services/skill-parser.js.map +1 -0
  463. package/dist/backend/services/skill-service.d.ts +113 -0
  464. package/dist/backend/services/skill-service.d.ts.map +1 -0
  465. package/dist/backend/services/skill-service.js +265 -0
  466. package/dist/backend/services/skill-service.js.map +1 -0
  467. package/dist/bin.d.ts +8 -0
  468. package/dist/bin.d.ts.map +1 -0
  469. package/dist/bin.js +12 -0
  470. package/dist/bin.js.map +1 -0
  471. package/dist/capability-generator.d.ts +21 -6
  472. package/dist/capability-generator.d.ts.map +1 -1
  473. package/dist/capability-generator.js +88 -261
  474. package/dist/capability-generator.js.map +1 -1
  475. package/dist/cli/commands/auth.d.ts +11 -0
  476. package/dist/cli/commands/auth.d.ts.map +1 -0
  477. package/dist/cli/commands/auth.js +211 -0
  478. package/dist/cli/commands/auth.js.map +1 -0
  479. package/dist/cli/commands/build.d.ts +11 -0
  480. package/dist/cli/commands/build.d.ts.map +1 -0
  481. package/dist/cli/commands/build.js +170 -0
  482. package/dist/cli/commands/build.js.map +1 -0
  483. package/dist/cli/commands/data.d.ts +15 -0
  484. package/dist/cli/commands/data.d.ts.map +1 -0
  485. package/dist/cli/commands/data.js +220 -0
  486. package/dist/cli/commands/data.js.map +1 -0
  487. package/dist/cli/commands/dev.d.ts +8 -0
  488. package/dist/cli/commands/dev.d.ts.map +1 -0
  489. package/dist/cli/commands/dev.js +114 -0
  490. package/dist/cli/commands/dev.js.map +1 -0
  491. package/dist/cli/commands/eject.d.ts +12 -0
  492. package/dist/cli/commands/eject.d.ts.map +1 -0
  493. package/dist/cli/commands/eject.js +280 -0
  494. package/dist/cli/commands/eject.js.map +1 -0
  495. package/dist/cli/commands/event.d.ts +13 -0
  496. package/dist/cli/commands/event.d.ts.map +1 -0
  497. package/dist/cli/commands/event.js +379 -0
  498. package/dist/cli/commands/event.js.map +1 -0
  499. package/dist/cli/commands/generate-capabilities.d.ts +8 -0
  500. package/dist/cli/commands/generate-capabilities.d.ts.map +1 -0
  501. package/dist/cli/commands/generate-capabilities.js +41 -0
  502. package/dist/cli/commands/generate-capabilities.js.map +1 -0
  503. package/dist/cli/commands/generate-cli-command.d.ts +8 -0
  504. package/dist/cli/commands/generate-cli-command.d.ts.map +1 -0
  505. package/dist/cli/commands/generate-cli-command.js +64 -0
  506. package/dist/cli/commands/generate-cli-command.js.map +1 -0
  507. package/dist/cli/commands/generate-dashboard.d.ts +9 -0
  508. package/dist/cli/commands/generate-dashboard.d.ts.map +1 -0
  509. package/dist/cli/commands/generate-dashboard.js +113 -0
  510. package/dist/cli/commands/generate-dashboard.js.map +1 -0
  511. package/dist/cli/commands/generate-notification.d.ts +9 -0
  512. package/dist/cli/commands/generate-notification.d.ts.map +1 -0
  513. package/dist/cli/commands/generate-notification.js +24 -0
  514. package/dist/cli/commands/generate-notification.js.map +1 -0
  515. package/dist/cli/commands/generate-page.d.ts +9 -0
  516. package/dist/cli/commands/generate-page.d.ts.map +1 -0
  517. package/dist/cli/commands/generate-page.js +105 -0
  518. package/dist/cli/commands/generate-page.js.map +1 -0
  519. package/dist/cli/commands/generate-skill.d.ts +8 -0
  520. package/dist/cli/commands/generate-skill.d.ts.map +1 -0
  521. package/dist/cli/commands/generate-skill.js +75 -0
  522. package/dist/cli/commands/generate-skill.js.map +1 -0
  523. package/dist/cli/commands/generate-system-settings.d.ts +10 -0
  524. package/dist/cli/commands/generate-system-settings.d.ts.map +1 -0
  525. package/dist/cli/commands/generate-system-settings.js +56 -0
  526. package/dist/cli/commands/generate-system-settings.js.map +1 -0
  527. package/dist/cli/commands/generate.d.ts +6 -0
  528. package/dist/cli/commands/generate.d.ts.map +1 -0
  529. package/dist/cli/commands/generate.js +21 -0
  530. package/dist/cli/commands/generate.js.map +1 -0
  531. package/dist/cli/commands/init.d.ts +8 -0
  532. package/dist/cli/commands/init.d.ts.map +1 -0
  533. package/dist/cli/commands/init.js +384 -0
  534. package/dist/cli/commands/init.js.map +1 -0
  535. package/dist/cli/commands/lifecycle.d.ts +8 -0
  536. package/dist/cli/commands/lifecycle.d.ts.map +1 -0
  537. package/dist/cli/commands/lifecycle.js +166 -0
  538. package/dist/cli/commands/lifecycle.js.map +1 -0
  539. package/dist/cli/commands/model.d.ts +9 -0
  540. package/dist/cli/commands/model.d.ts.map +1 -0
  541. package/dist/cli/commands/model.js +218 -0
  542. package/dist/cli/commands/model.js.map +1 -0
  543. package/dist/cli/commands/notification.d.ts +8 -0
  544. package/dist/cli/commands/notification.d.ts.map +1 -0
  545. package/dist/cli/commands/notification.js +179 -0
  546. package/dist/cli/commands/notification.js.map +1 -0
  547. package/dist/cli/commands/observe.d.ts +9 -0
  548. package/dist/cli/commands/observe.d.ts.map +1 -0
  549. package/dist/cli/commands/observe.js +142 -0
  550. package/dist/cli/commands/observe.js.map +1 -0
  551. package/dist/cli/commands/process.d.ts +8 -0
  552. package/dist/cli/commands/process.d.ts.map +1 -0
  553. package/dist/cli/commands/process.js +630 -0
  554. package/dist/cli/commands/process.js.map +1 -0
  555. package/dist/cli/commands/role.d.ts +12 -0
  556. package/dist/cli/commands/role.d.ts.map +1 -0
  557. package/dist/cli/commands/role.js +208 -0
  558. package/dist/cli/commands/role.js.map +1 -0
  559. package/dist/cli/commands/serve.d.ts +12 -0
  560. package/dist/cli/commands/serve.d.ts.map +1 -0
  561. package/dist/cli/commands/serve.js +43 -0
  562. package/dist/cli/commands/serve.js.map +1 -0
  563. package/dist/cli/commands/skill.d.ts +9 -0
  564. package/dist/cli/commands/skill.d.ts.map +1 -0
  565. package/dist/cli/commands/skill.js +186 -0
  566. package/dist/cli/commands/skill.js.map +1 -0
  567. package/dist/cli/commands/user-cmd.d.ts +9 -0
  568. package/dist/cli/commands/user-cmd.d.ts.map +1 -0
  569. package/dist/cli/commands/user-cmd.js +195 -0
  570. package/dist/cli/commands/user-cmd.js.map +1 -0
  571. package/dist/cli/framework.d.ts +28 -0
  572. package/dist/cli/framework.d.ts.map +1 -0
  573. package/dist/cli/framework.js +29 -0
  574. package/dist/cli/framework.js.map +1 -0
  575. package/dist/cli/generators/capability-generator.d.ts +35 -0
  576. package/dist/cli/generators/capability-generator.d.ts.map +1 -0
  577. package/dist/cli/generators/capability-generator.js +371 -0
  578. package/dist/cli/generators/capability-generator.js.map +1 -0
  579. package/dist/cli/helpers/app-tsx-utils.d.ts +12 -0
  580. package/dist/cli/helpers/app-tsx-utils.d.ts.map +1 -0
  581. package/dist/cli/helpers/app-tsx-utils.js +22 -0
  582. package/dist/cli/helpers/app-tsx-utils.js.map +1 -0
  583. package/dist/cli/helpers/app-tsx-wiring-engine.d.ts +70 -0
  584. package/dist/cli/helpers/app-tsx-wiring-engine.d.ts.map +1 -0
  585. package/dist/cli/helpers/app-tsx-wiring-engine.js +535 -0
  586. package/dist/cli/helpers/app-tsx-wiring-engine.js.map +1 -0
  587. package/dist/cli/helpers/app-tsx-wiring.d.ts +19 -0
  588. package/dist/cli/helpers/app-tsx-wiring.d.ts.map +1 -0
  589. package/dist/cli/helpers/app-tsx-wiring.js +145 -0
  590. package/dist/cli/helpers/app-tsx-wiring.js.map +1 -0
  591. package/dist/cli/helpers/auth-client.d.ts +19 -0
  592. package/dist/cli/helpers/auth-client.d.ts.map +1 -0
  593. package/dist/cli/helpers/auth-client.js +42 -0
  594. package/dist/cli/helpers/auth-client.js.map +1 -0
  595. package/dist/cli/helpers/backup.d.ts +16 -0
  596. package/dist/cli/helpers/backup.d.ts.map +1 -0
  597. package/dist/cli/helpers/backup.js +34 -0
  598. package/dist/cli/helpers/backup.js.map +1 -0
  599. package/dist/cli/helpers/column-template.d.ts +20 -0
  600. package/dist/cli/helpers/column-template.d.ts.map +1 -0
  601. package/dist/cli/helpers/column-template.js +165 -0
  602. package/dist/cli/helpers/column-template.js.map +1 -0
  603. package/dist/cli/helpers/duration.d.ts +5 -0
  604. package/dist/cli/helpers/duration.d.ts.map +1 -0
  605. package/dist/cli/helpers/duration.js +5 -0
  606. package/dist/cli/helpers/duration.js.map +1 -0
  607. package/dist/cli/helpers/field-template.d.ts +14 -0
  608. package/dist/cli/helpers/field-template.d.ts.map +1 -0
  609. package/dist/cli/helpers/field-template.js +117 -0
  610. package/dist/cli/helpers/field-template.js.map +1 -0
  611. package/dist/cli/helpers/i18n-template.d.ts +21 -0
  612. package/dist/cli/helpers/i18n-template.d.ts.map +1 -0
  613. package/dist/cli/helpers/i18n-template.js +69 -0
  614. package/dist/cli/helpers/i18n-template.js.map +1 -0
  615. package/dist/cli/helpers/naming.d.ts +11 -0
  616. package/dist/cli/helpers/naming.d.ts.map +1 -0
  617. package/dist/cli/helpers/naming.js +21 -0
  618. package/dist/cli/helpers/naming.js.map +1 -0
  619. package/dist/cli/helpers/system-page-config.d.ts +27 -0
  620. package/dist/cli/helpers/system-page-config.d.ts.map +1 -0
  621. package/dist/cli/helpers/system-page-config.js +82 -0
  622. package/dist/cli/helpers/system-page-config.js.map +1 -0
  623. package/dist/cli/index.d.ts +9 -0
  624. package/dist/cli/index.d.ts.map +1 -0
  625. package/dist/cli/index.js +51 -0
  626. package/dist/cli/index.js.map +1 -0
  627. package/dist/cli/lib/credentials.d.ts +27 -0
  628. package/dist/cli/lib/credentials.d.ts.map +1 -0
  629. package/dist/cli/lib/credentials.js +112 -0
  630. package/dist/cli/lib/credentials.js.map +1 -0
  631. package/dist/cli/templates/auth-wiring.d.ts +17 -0
  632. package/dist/cli/templates/auth-wiring.d.ts.map +1 -0
  633. package/dist/cli/templates/auth-wiring.js +31 -0
  634. package/dist/cli/templates/auth-wiring.js.map +1 -0
  635. package/dist/cli/templates/backend-entry.d.ts +5 -0
  636. package/dist/cli/templates/backend-entry.d.ts.map +1 -0
  637. package/dist/cli/templates/backend-entry.js +17 -0
  638. package/dist/cli/templates/backend-entry.js.map +1 -0
  639. package/dist/cli/templates/claude-md.d.ts +20 -0
  640. package/dist/cli/templates/claude-md.d.ts.map +1 -0
  641. package/dist/cli/templates/claude-md.js +123 -0
  642. package/dist/cli/templates/claude-md.js.map +1 -0
  643. package/dist/cli/templates/crud-page.d.ts +14 -0
  644. package/dist/cli/templates/crud-page.d.ts.map +1 -0
  645. package/dist/cli/templates/crud-page.js +436 -0
  646. package/dist/cli/templates/crud-page.js.map +1 -0
  647. package/dist/cli/templates/dashboard-page.d.ts +11 -0
  648. package/dist/cli/templates/dashboard-page.d.ts.map +1 -0
  649. package/dist/cli/templates/dashboard-page.js +613 -0
  650. package/dist/cli/templates/dashboard-page.js.map +1 -0
  651. package/dist/cli/templates/event-management-page.d.ts +8 -0
  652. package/dist/cli/templates/event-management-page.d.ts.map +1 -0
  653. package/dist/cli/templates/event-management-page.js +724 -0
  654. package/dist/cli/templates/event-management-page.js.map +1 -0
  655. package/dist/cli/templates/frontend-entry.d.ts +11 -0
  656. package/dist/cli/templates/frontend-entry.d.ts.map +1 -0
  657. package/dist/cli/templates/frontend-entry.js +94 -0
  658. package/dist/cli/templates/frontend-entry.js.map +1 -0
  659. package/dist/cli/templates/gitignore.d.ts +5 -0
  660. package/dist/cli/templates/gitignore.d.ts.map +1 -0
  661. package/dist/cli/templates/gitignore.js +13 -0
  662. package/dist/cli/templates/gitignore.js.map +1 -0
  663. package/dist/cli/templates/index.d.ts +21 -0
  664. package/dist/cli/templates/index.d.ts.map +1 -0
  665. package/dist/cli/templates/index.js +21 -0
  666. package/dist/cli/templates/index.js.map +1 -0
  667. package/dist/cli/templates/login-page.d.ts +8 -0
  668. package/dist/cli/templates/login-page.d.ts.map +1 -0
  669. package/dist/cli/templates/login-page.js +67 -0
  670. package/dist/cli/templates/login-page.js.map +1 -0
  671. package/dist/cli/templates/loom-config.d.ts +15 -0
  672. package/dist/cli/templates/loom-config.d.ts.map +1 -0
  673. package/dist/cli/templates/loom-config.js +91 -0
  674. package/dist/cli/templates/loom-config.js.map +1 -0
  675. package/dist/cli/templates/model-management-page.d.ts +8 -0
  676. package/dist/cli/templates/model-management-page.d.ts.map +1 -0
  677. package/dist/cli/templates/model-management-page.js +373 -0
  678. package/dist/cli/templates/model-management-page.js.map +1 -0
  679. package/dist/cli/templates/notification-center-page.d.ts +8 -0
  680. package/dist/cli/templates/notification-center-page.d.ts.map +1 -0
  681. package/dist/cli/templates/notification-center-page.js +240 -0
  682. package/dist/cli/templates/notification-center-page.js.map +1 -0
  683. package/dist/cli/templates/notification-detail-page.d.ts +8 -0
  684. package/dist/cli/templates/notification-detail-page.d.ts.map +1 -0
  685. package/dist/cli/templates/notification-detail-page.js +87 -0
  686. package/dist/cli/templates/notification-detail-page.js.map +1 -0
  687. package/dist/cli/templates/package-json.d.ts +9 -0
  688. package/dist/cli/templates/package-json.d.ts.map +1 -0
  689. package/dist/cli/templates/package-json.js +41 -0
  690. package/dist/cli/templates/package-json.js.map +1 -0
  691. package/dist/cli/templates/process-management-page.d.ts +8 -0
  692. package/dist/cli/templates/process-management-page.d.ts.map +1 -0
  693. package/dist/cli/templates/process-management-page.js +542 -0
  694. package/dist/cli/templates/process-management-page.js.map +1 -0
  695. package/dist/cli/templates/readme.d.ts +9 -0
  696. package/dist/cli/templates/readme.d.ts.map +1 -0
  697. package/dist/cli/templates/readme.js +47 -0
  698. package/dist/cli/templates/readme.js.map +1 -0
  699. package/dist/cli/templates/skill-management-page.d.ts +8 -0
  700. package/dist/cli/templates/skill-management-page.d.ts.map +1 -0
  701. package/dist/cli/templates/skill-management-page.js +476 -0
  702. package/dist/cli/templates/skill-management-page.js.map +1 -0
  703. package/dist/cli/templates/system-settings-page.d.ts +10 -0
  704. package/dist/cli/templates/system-settings-page.d.ts.map +1 -0
  705. package/dist/cli/templates/system-settings-page.js +768 -0
  706. package/dist/cli/templates/system-settings-page.js.map +1 -0
  707. package/dist/cli/templates/tsconfig.d.ts +6 -0
  708. package/dist/cli/templates/tsconfig.d.ts.map +1 -0
  709. package/dist/cli/templates/tsconfig.js +41 -0
  710. package/dist/cli/templates/tsconfig.js.map +1 -0
  711. package/dist/cli/templates/user-management-page.d.ts +8 -0
  712. package/dist/cli/templates/user-management-page.d.ts.map +1 -0
  713. package/dist/cli/templates/user-management-page.js +497 -0
  714. package/dist/cli/templates/user-management-page.js.map +1 -0
  715. package/dist/cli/templates/vite-config.d.ts +9 -0
  716. package/dist/cli/templates/vite-config.d.ts.map +1 -0
  717. package/dist/cli/templates/vite-config.js +26 -0
  718. package/dist/cli/templates/vite-config.js.map +1 -0
  719. package/dist/cli/utils.d.ts +10 -0
  720. package/dist/cli/utils.d.ts.map +1 -0
  721. package/dist/cli/utils.js +31 -0
  722. package/dist/cli/utils.js.map +1 -0
  723. package/dist/commands.d.ts +1 -5
  724. package/dist/commands.d.ts.map +1 -1
  725. package/dist/commands.js +0 -11
  726. package/dist/commands.js.map +1 -1
  727. package/dist/config.d.ts +2010 -95
  728. package/dist/config.d.ts.map +1 -1
  729. package/dist/config.js +195 -16
  730. package/dist/config.js.map +1 -1
  731. package/dist/dashboard-config.d.ts +149 -0
  732. package/dist/dashboard-config.d.ts.map +1 -0
  733. package/dist/dashboard-config.js +40 -0
  734. package/dist/dashboard-config.js.map +1 -0
  735. package/dist/index.d.ts +24 -9
  736. package/dist/index.d.ts.map +1 -1
  737. package/dist/index.js +20 -5
  738. package/dist/index.js.map +1 -1
  739. package/dist/server-bin.d.ts +12 -0
  740. package/dist/server-bin.d.ts.map +1 -0
  741. package/dist/server-bin.js +43 -0
  742. package/dist/server-bin.js.map +1 -0
  743. package/dist/system-prompt.d.ts +20 -0
  744. package/dist/system-prompt.d.ts.map +1 -0
  745. package/dist/system-prompt.js +140 -0
  746. package/dist/system-prompt.js.map +1 -0
  747. package/dist/types/adapter.d.ts +30 -0
  748. package/dist/types/adapter.d.ts.map +1 -0
  749. package/dist/types/adapter.js +5 -0
  750. package/dist/types/adapter.js.map +1 -0
  751. package/dist/types/ai.d.ts +78 -0
  752. package/dist/types/ai.d.ts.map +1 -0
  753. package/dist/types/ai.js +5 -0
  754. package/dist/types/ai.js.map +1 -0
  755. package/dist/types/auth.d.ts +62 -0
  756. package/dist/types/auth.d.ts.map +1 -0
  757. package/dist/types/auth.js +5 -0
  758. package/dist/types/auth.js.map +1 -0
  759. package/dist/types/chat.d.ts +47 -0
  760. package/dist/types/chat.d.ts.map +1 -0
  761. package/dist/types/chat.js +8 -0
  762. package/dist/types/chat.js.map +1 -0
  763. package/dist/types/command.d.ts +25 -0
  764. package/dist/types/command.d.ts.map +1 -0
  765. package/dist/types/command.js +5 -0
  766. package/dist/types/command.js.map +1 -0
  767. package/dist/types/config.d.ts +69 -0
  768. package/dist/types/config.d.ts.map +1 -0
  769. package/dist/types/config.js +5 -0
  770. package/dist/types/config.js.map +1 -0
  771. package/dist/types/dashboard.d.ts +59 -0
  772. package/dist/types/dashboard.d.ts.map +1 -0
  773. package/dist/types/dashboard.js +5 -0
  774. package/dist/types/dashboard.js.map +1 -0
  775. package/dist/types/event.d.ts +109 -0
  776. package/dist/types/event.d.ts.map +1 -0
  777. package/dist/types/event.js +38 -0
  778. package/dist/types/event.js.map +1 -0
  779. package/dist/types/index.d.ts +22 -0
  780. package/dist/types/index.d.ts.map +1 -0
  781. package/dist/types/index.js +9 -0
  782. package/dist/types/index.js.map +1 -0
  783. package/dist/types/lifecycle.d.ts +71 -0
  784. package/dist/types/lifecycle.d.ts.map +1 -0
  785. package/dist/types/lifecycle.js +10 -0
  786. package/dist/types/lifecycle.js.map +1 -0
  787. package/dist/types/locale.d.ts +21 -0
  788. package/dist/types/locale.d.ts.map +1 -0
  789. package/dist/types/locale.js +36 -0
  790. package/dist/types/locale.js.map +1 -0
  791. package/dist/types/model.d.ts +71 -0
  792. package/dist/types/model.d.ts.map +1 -0
  793. package/dist/types/model.js +5 -0
  794. package/dist/types/model.js.map +1 -0
  795. package/dist/types/notification.d.ts +33 -0
  796. package/dist/types/notification.d.ts.map +1 -0
  797. package/dist/types/notification.js +5 -0
  798. package/dist/types/notification.js.map +1 -0
  799. package/dist/types/process.d.ts +233 -0
  800. package/dist/types/process.d.ts.map +1 -0
  801. package/dist/types/process.js +5 -0
  802. package/dist/types/process.js.map +1 -0
  803. package/dist/types.d.ts +4 -199
  804. package/dist/types.d.ts.map +1 -1
  805. package/dist/types.js +4 -3
  806. package/dist/types.js.map +1 -1
  807. package/dist/utils/duration.d.ts +8 -0
  808. package/dist/utils/duration.d.ts.map +1 -0
  809. package/dist/utils/duration.js +22 -0
  810. package/dist/utils/duration.js.map +1 -0
  811. package/dist/utils/id.d.ts +7 -0
  812. package/dist/utils/id.d.ts.map +1 -0
  813. package/dist/utils/id.js +9 -0
  814. package/dist/utils/id.js.map +1 -0
  815. package/package.json +30 -5
@@ -0,0 +1,308 @@
1
+ ---
2
+ name: Loom
3
+ description: |
4
+ This skill should be used when the user asks to "create a new loom project", "用loom开发一个系统",
5
+ "开发一个AI平台应用", "为系统添加页面", "为项目配置 AI 按钮功能",
6
+ "添加功能", "新增功能", "添加管理", "新增管理", "添加页面", "新增页面",
7
+ "生成页面", "添加数据模型", "新增数据模型", or any Loom framework task.
8
+ Loom is an AI-Native full-stack framework.
9
+ version: 0.1.0
10
+ ---
11
+
12
+ # Loom - AI 平台开发框架
13
+
14
+ ## 概览
15
+
16
+ Loom 是**配置驱动的 AI 平台开发框架**——你描述需求,AI 通过本 Skill 执行 loom 命令来构建应用。
17
+
18
+ 典型使用方式:
19
+
20
+ 1. **用自然语言描述需求** — 告诉 Claude Code(或其它支持Skill的 Agent) 你要做什么(如"用 loom 开发一个告警管理平台"),Claude Code 会先加载本Skill,理解Loom的构建方式,然后交互式地向你确认完整项目功能需求,接着创建项目、启动服务
21
+ 2. **对话迭代** — 通过Claude Code 或 创建的项目 AI 对话面板改需求、加字段、调样式,AI 理解 loom 的工作方式,知道何时改配置、何时跑命令、何时直接改代码
22
+ 3. **日常运营** — 通过 AI 对话面板或 `loom data` CLI 查看、创建、更新数据
23
+
24
+ 核心能力:`loom generate page` 生成 CRUD 页面,`loom generate capabilities` 生成应用 Skill(让 AI 理解项目业务),`loom generate dashboard` 生成数据概览。后端 API 由 `loom dev` 根据配置动态注册,无需手动编写。生成的页面自带 AI 助手,支持流式对话和多会话。
25
+
26
+ > **运行时操作**:项目创建后,日常运营(数据 CRUD、过程管理、事件订阅、通知操作)由 **App-Skill** 提供指引。App-Skill 在 `loom generate capabilities` 后自动生成于 `.claude/skills/<projectName>/`,与本 Skill 互补。
27
+
28
+ 完整使用手册见 `references/README.md`。
29
+
30
+ ## 开发流程
31
+
32
+ **重要:** 始终在项目目录下运行命令(不是 loom monorepo 根目录)。
33
+
34
+ ### 1. 创建项目
35
+
36
+ ```bash
37
+ npx -p @loom-framework/core loom init <name> --description <desc> --adapter <filesystem|sqlite> --backend-port <backend-port> --frontend-port <frontend-port>
38
+ ```
39
+
40
+ **多实例并行**:每个 Loom 实例同时占用**后端端口**(Fastify)和**前端端口**(Vite dev server)。建议后端从 :3000 起自增,前端从 :5173 起自增,相邻实例使用连续端口方便管理:
41
+
42
+ | 实例 | 后端端口 | 前端端口 |
43
+ |------|---------|---------|
44
+ | my-app | 3000 | 5173 |
45
+ | my-app-2 | 3001 | 5174 |
46
+ | my-app-3 | 3002 | 5175 |
47
+
48
+ `loom init` 时**必须显式指定两个端口**。如果启动时报 `EADDRINUSE`,说明端口被占用,请换端口重新 `init`。
49
+
50
+ 项目初始化时自动生成系统管理页面(模型管理、技能管理、用户管理、过程管理、事件管理、通知中心),并以子菜单形式接入导航。同时自动安装以下内置 Skill:
51
+
52
+ | Skill | 触发场景 | 说明 |
53
+ |-------|---------|------|
54
+ | **antd** | 开发前端页面、丰富 UI 功能 | 通过 `@ant-design/cli` 查询组件 API、语义化样式、示例;编写前端代码前先用此 Skill 确认用法 |
55
+ | **antv-g2-chart** | 添加自定义可视化图表 | 生成 G2 v5 Spec 代码;配合 `useChartData` / `DashboardChart`,详见 `references/dashboard.md` |
56
+ | **chart-visualization** | 对话中快速生成图表 | 通过 API 生成图表图片返回 Markdown 链接,适合快速展示数据分析结果 |
57
+
58
+ ### 2. 编辑配置
59
+
60
+ 编辑 `loom.config.ts` 配置文件,定义数据模型(`data.models`)和 AI 按钮(`aiButtons`),Schema 见下方 `loom.config.ts Schema` 。高级选项见 `references/data-model.md`。
61
+
62
+ > **Dashboard 配置前置要求:** 编写配置文件中 `dashboards` 字段之前,**必须**先加载并阅读 `references/dashboard.md`。Dashboard 的 layout、widget 类型、filterDimensions等有严格的 Schema 约束,未读文档直接凭直觉编写会导致生成失败。
63
+
64
+ ### 3. 生成页面与 Dashboard
65
+
66
+ #### 3.1 生成 CRUD 页面
67
+
68
+ ```bash
69
+ loom generate page <Name> --model <model-name>
70
+ ```
71
+
72
+ 此命令自动生成:CRUD 页面(含 AI 按钮)、App.tsx 路由接线。后端 API 由 `loom dev` 启动时动态注册。模型立即可通过 `loom data` CLI 和 AI 对话使用。
73
+
74
+ #### 3.2 生成 Dashboard(可选)
75
+
76
+ 如果 `loom.config.ts` 中配置了 `dashboards` 字段,执行:
77
+
78
+ ```bash
79
+ loom generate dashboard <name>
80
+ ```
81
+
82
+ 此命令从 `dashboards` 字段读取配置,自动生成 Dashboard 页面并接线 App.tsx。
83
+
84
+ ### 4. 生成并完善应用 Skill
85
+
86
+ ```bash
87
+ loom generate capabilities
88
+ ```
89
+
90
+ 此命令读取 `loom.config.ts`,在 `.claude/skills/<项目名>/` 下生成以下文件:
91
+
92
+ | 文件 | 说明 | 覆盖策略 |
93
+ |------|------|---------|
94
+ | `SKILL.md` | Skill 主文档模版 | 仅首次创建,命令重复执行不覆盖文件。若需重建:删除整个 skill 目录后重新执行 |
95
+ | `references/*.md` | 多个指导项目SKILL如何使用的引用文件 |
96
+
97
+ 首次生成项目SKILL后,需要补充其 `SKILL.md` 主文档中的 TODO 内容,AI 对话时才能正确理解项目业务语义:
98
+
99
+ 1. **frontmatter `description`**:系统操作触发短语已自动生成,只需补全数据模型相关的 `[TODO]` 占位部分(如 `'查看告警'`, `'添加任务'`)。格式参考:
100
+ ```
101
+ This skill should be used when the user asks to "[TODO: 补全数据模型相关短语]", '用户管理', '事件订阅', ...,
102
+ or any request about managing data, processes, events, or notifications in the <项目名> project.
103
+ ```
104
+ 2. **Overview 部分**:用 2-3 句话描述项目做什么、有哪些数据、用户如何与数据交互
105
+ 3. **Usage Scenarios 部分**:列出 5-10 个典型用户请求,格式为 `- "用户说的话" → 对应的 CLI 命令`
106
+
107
+ 如需添加自定义 Skill:
108
+ - `loom generate skill <name>` — 创建脚手架,然后编辑 `.claude/skills/<name>/SKILL.md`
109
+ - 或直接复制一个已有的 Skill 目录到 `.claude/skills/` 下
110
+
111
+ ### 5. 启用认证鉴权(可选)
112
+
113
+ 当用户需要多用户支持、权限控制时,帮助用户在 `loom.config.ts` 中添加 `auth` 配置:
114
+
115
+ 1. **询问需求**:是否需要登录功能?有哪些角色?每个角色能做什么?
116
+ 2. **编辑配置**:在 `loom.config.ts` 中添加 `auth` 字段(Schema 见上方)。至少定义一个 `admin` 角色
117
+ 3. **设置密钥**:`secret` 推荐 `env:LOOM_JWT_SECRET`,不要硬编码。提醒用户设置环境变量 `export LOOM_JWT_SECRET=your-secret`
118
+ 4. **生成认证页面**:`loom generate system-settings user` — 自动接入用户管理页和登录页的 npm import,并接入 AuthProvider 路由守卫
119
+ 5. **重启后端**:auth 配置需要重启后端生效(**必须先询问用户**)
120
+ 6. **首次登录**:默认创建 admin 用户(密码 `admin123`),**提醒用户立即修改密码**
121
+ 7. **生成 app-skill**:`loom generate capabilities` 更新 Skill 中的 auth.md
122
+
123
+ 启用后获得:登录页 + 路由守卫 + RBAC 权限控制 + 用户管理页 + CLI `--token`/`LOOM_TOKEN` 鉴权。
124
+
125
+ > 如果 `loom init` 时配置中已包含 `auth` 字段,上述页面会在初始化时自动生成。后续添加 auth 配置时,手动执行 `loom generate system-settings user` 即可补全。
126
+
127
+ ### 6. 启动项目
128
+
129
+ ```bash
130
+ loom dev # 启动前后端
131
+ loom dev --backend-only # 只启动后端
132
+ loom dev --frontend-only # 只启动前端
133
+ loom dev --frontend-port 8080 # 临时覆盖前端端口
134
+ ```
135
+
136
+ - **前端端口**:由 `loom.config.ts` 的 `server.frontendPort` 决定。`loom init` 时自动根据 `--frontend-port` 写入,`loom dev` 无需再传端口
137
+ - **后端端口**:由 `loom.config.ts` 的 `server.backendPort` 决定。后端启动时自动读取
138
+ - `--frontend-port`:作为 Vite CLI `--port` 参数传入,**临时覆盖**配置文件中的值
139
+
140
+ ### 7. 功能迭代
141
+
142
+ 不同类型的变更,处理方式不同:
143
+
144
+ | 变更类型 | 需要改页面吗 | 怎么做 |
145
+ |---------|------------|--------|
146
+ | 增删 AI 按钮 | 不需要 | 改配置 → `loom generate capabilities` 更新 Skill → 重启后端,按钮自动出现/消失 |
147
+ | 修改 enum 值 | 不需要 | 改配置 → `loom generate capabilities` 更新 Skill → 重启后端,筛选和下拉自动更新 |
148
+ | 新增数据模型 | 需要生成新页面 | 改配置 → `loom generate capabilities` + `loom generate page <Name> --model <model>` → 重启后端 |
149
+ | 新增/删除字段 | 需要 | 改配置 → `--force` 重建(默认,最快)或 AI 增量更新代码(有定制时保留修改)→ `loom generate capabilities` 更新 Skill → 更新CLAUDE.md |
150
+
151
+ **`--force` 重建(默认)**:字段变更时直接 `--force` 重建页面,是最快最干净的方式,页面与配置立即同步。`--force` 会自动将旧页面备份到 `.loom/backup/<时间戳>/` 目录。
152
+ **恢复备份**:`--force` 覆盖的文件自动备份到项目 `.loom/backup/<时间戳>/` 目录(每次 --force 生成独立时间戳目录,同一天多次执行互不影响),如需恢复:`cp .loom/backup/<时间戳>/XXX.tsx frontend/src/components/pages/XXX.tsx`
153
+ 修改 `loom.config.ts` 后如果需要重启后端服务(如增删 AI 按钮、修改 enum 值、新增模型等场景),**必须先询问用户是否可以重启**,得到确认后再执行 `loom dev` 或停止/重启服务。不要自动重启,因为用户可能正在使用页面或调试中。
154
+
155
+ **AI 增量更新(有定制时)**:如果用户说"保留我的定制"或明确表示页面有手动修改过,才让 AI 增量更新。告诉 AI 你改了什么(如"我在配置里加了一个严重等级字段"),AI 会精确添加新字段的列和表单项,保留定制代码。如果AI进行了定制化开发,务必将定制化开发内容更新到CLAUDE.md,使得后续新启动会话时Claude Code可掌握项目定制化情况。
156
+
157
+ ### 8. 系统管理页面定制(Eject)
158
+
159
+ 系统管理页面默认以 npm 组件接入,无法直接修改。需要定制时 eject 为本地文件,恢复时 uneject。详见 `references/eject.md`。
160
+
161
+ ### 9. 内置 Skill 使用原则
162
+
163
+ - 涉及前端页面开发 → 先用 `/antd` 查询组件 API,不要凭记忆写代码
164
+ - 需要在 Dashboard 追加图表 → 参考 `references/dashboard.md` + `/antv-g2-chart` 生成代码
165
+ - 对话中需展示数据可视化 → 用 `/chart-visualization` 生成图片
166
+
167
+ ### 10. CLI 命令速查
168
+
169
+ | 命令 | 说明 |
170
+ |------|------|
171
+ | `loom dev` | 启动开发环境(`--backend-only` `--frontend-only` `--frontend-port`) |
172
+ | `loom build` | 生产构建 |
173
+ | `loom generate page <name> --model <model>` | 生成 CRUD 页面(含 aiButtons 则自动集成 AI 按钮) |
174
+ | `loom generate page <name> --model <model> --force` | 重建页面(默认方式,自动备份旧文件到 `.loom/backup/`) |
175
+ | `loom generate capabilities` | 生成应用 Skill(`references/models.md` + `references/data-semantics.md`,`SKILL.md` 仅首次创建不覆盖) |
176
+ | `loom generate dashboard <name>` | 从 loom.config.ts dashboards 生成 Dashboard 页面 |
177
+ | `loom generate dashboard <name> --force` | 重建 Dashboard 页面(自动备份旧文件到 `.loom/backup/`) |
178
+ | `loom generate system-settings <type>` | 将系统页面接入 App.tsx(npm import 接线),type: `model`/`skill`/`user`/`login`/`process`/`notification`/`event`;`user` 同时接入 AuthProvider 路由守卫,`notification` 同时接入 NotificationCenterProvider |
179
+ | `loom generate skill <name>` | 生成自定义 Skill 脚架 |
180
+ | `loom eject system-settings <type>` | 将系统页面从 npm 组件切换为本地文件(可自由编辑),type: `model`/`skill`/`user`/`login`/`process`/`notification`/`event`。详见 `references/eject.md` |
181
+ | `loom uneject system-settings <type>` | 删除本地文件,恢复为 npm 组件(修改过的需 `--force`,操作前自动备份)。详见 `references/eject.md` |
182
+ | `loom data read <model>` | 查询数据(`--filter` 筛选、`--sort <field>` 排序字段、`--sortOrder asc\|desc` 排序方向、`--limit` 限制条数、`--id` 单条查询) |
183
+ | `loom data write <model> --data '<json>'` | 创建记录 |
184
+ | `loom data update <model> --id <id> --data '<json>'` | 更新记录 |
185
+ | `loom data delete <model> --id <id>` | 删除记录 |
186
+ | `loom data schema <model>` | 查看模型字段结构 |
187
+ | `loom auth login --username <u> --password <p>` | 登录获取 token |
188
+ | `loom auth register --username <u> --password <p> --token <jwt>` | 注册新用户(需 admin token) |
189
+ | `loom auth whoami --token <jwt>` | 查看当前身份 |
190
+ | `loom user add --username <u> -p <pw> -r <role> --token <jwt>` | 添加用户 |
191
+ | `loom user list --token <jwt>` | 列出所有用户 |
192
+ | `loom user role <userId> <role> --token <jwt>` | 修改用户角色 |
193
+ | `loom role list` | 列出所有角色及权限 |
194
+
195
+ ## loom.config.ts Schema(核心)
196
+ 以下仅展示支持平台运行的最小业务配置参数,完整业务配置及系统配置说明见 references/data-model.md。
197
+
198
+ ```typescript
199
+ import { defineConfig } from '@loom-framework/core';
200
+
201
+ export default defineConfig({
202
+ project: {
203
+ name: 'my-app', // 必填
204
+ description: { 'zh-CN': '我的应用', 'en-US': 'My App' }, // 可选,支持多语言
205
+ },
206
+ data: {
207
+ defaultAdapter: 'filesystem', // 'filesystem' | 'sqlite'
208
+ models: [{
209
+ name: 'items', // 将作为 React 组件名生成页面,字母开头,字母/数字/下划线
210
+ description: { 'zh-CN': '数据项', 'en-US': 'Items' }, // 可选:支持多语言
211
+ fields: [
212
+ {
213
+ name: 'createdAt', // 推荐字段:创建/录入时间,Dashboard 趋势图和日期范围筛选依赖此字段
214
+ type: 'date',
215
+ required: true,
216
+ description: { 'zh-CN': '创建时间', 'en-US': 'Created At' },
217
+ },
218
+ {
219
+ name: 'status',
220
+ type: 'string', // 'string' | 'number' | 'boolean' | 'date' | 'string[]' | 'number[]' | 'json'
221
+ required: true, // 可选,默认 false
222
+ description: { 'zh-CN': '状态', 'en-US': 'Status' }, // 可选:支持多语言
223
+ default: 'active', // 可选:写入时自动填充
224
+ enum: ['active', 'inactive'], // 可选:限制可选值(存储值,不随语言变化)
225
+ enumLabels: { // 可选:enum 值的多语言显示标签
226
+ active: { 'zh-CN': '激活', 'en-US': 'Active' },
227
+ inactive: { 'zh-CN': '停用', 'en-US': 'Inactive' },
228
+ },
229
+ },
230
+ ],
231
+ }],
232
+ },
233
+ relations: [{ /* 详见 references/data-model.md > RelationConfig */ }],
234
+ aiButtons: [{ // 可选
235
+ id: 'summarize', // 必填:唯一标识
236
+ label: { 'zh-CN': '总结', 'en-US': 'Summarize' }, // 必填:支持多语言
237
+ prompt: '请总结以下内容', // 必填:支持 {{var}} 引用当前行字段值
238
+ },
239
+ {
240
+ id: 'analyze', // 带变量的示例
241
+ label: { 'zh-CN': '分析', 'en-US': 'Analyze' },
242
+ prompt: '分析告警原因:{{description}},当前状态:{{status}}',
243
+ placement: 'alerts', // 可选:限制按钮只出现在指定模型页面,逗号分隔多个模型名;省略则出现在所有页面
244
+ }],
245
+ dashboards: [{ // 可选:数据概览,widget/图表类型/筛选配置详见 references/dashboard.md
246
+ name: 'overview', // 必填:唯一标识
247
+ models: ['items'], // 必填:关联的数据模型
248
+ defaultDateField: 'createdAt', // 可选:日期范围筛选字段
249
+ filterDimensions: [], // 可选:select 下拉筛选维度
250
+ layout: [], // 必填:布局定义(行→组件)
251
+ }],
252
+ auth: { // 可选:认证与鉴权,启用后生成登录页、用户管理、RBAC 权限控制
253
+ provider: 'builtin', // 'builtin' — 内置认证
254
+ secret: 'env:JWT_SECRET', // JWT 签名密钥,推荐用 env: 引用环境变量,不要硬编码
255
+ accessTokenTtl: 3600, // 可选,access token 有效期(秒),默认 3600(1h)
256
+ refreshTokenTtl: 604800, // 可选,refresh token 有效期(秒),默认 604800(7d)
257
+ roles: [ // 角色定义,至少一个 admin 角色
258
+ { role: 'admin', permissions: [{ model: '*', level: 'admin' }] },
259
+ { role: 'viewer', permissions: [{ model: '*', level: 'read' }] },
260
+ ],
261
+ permissions: { // 可选:默认权限和行为配置
262
+ defaults: {
263
+ read: 'read', // 未显式配置的模型默认读权限
264
+ write: 'write', // 未显式配置的模型默认写权限
265
+ writeExcludesDelete: false, // write 权限是否排除删除操作
266
+ },
267
+ },
268
+ },
269
+ events: { // 可选:事件系统
270
+ enabled: true, // 可选,是否启用(默认 true),设为 false 可禁用
271
+ subscriptions: [ // 可选:声明式事件订阅(服务启动时自动注册,修改后需重启生效)
272
+ { pattern: 'data:create:modelName', handler: 'process', config: { process: 'my-process', debounceMs: 1000 } }, // 触发 Process
273
+ { pattern: 'data:create:modelName', handler: 'log' }, // 记日志
274
+ { pattern: 'data:update:modelName', handler: 'webhook', config: { url: 'https://...', method?: 'POST', headers?: {} } }, // 推送外部
275
+ { pattern: 'data:create:modelName', handler: 'notify', config: { type: 'info', title: '标题' } }, // 创建站内通知
276
+ ],
277
+ // 声明式(config)与命令式(CLI)两种方式均可绑定事件:
278
+ // - 声明式:写在 subscriptions 中,重启后自动注册,适合固定不变的订阅
279
+ // - 命令式:`loom process add --subscribe` 或 `loom event subscribe`,即时生效,适合运行时动态管理
280
+ // 避免对同一 pattern + process 同时使用两种方式,否则会双重触发
281
+ },
282
+ });
283
+ ```
284
+
285
+ **多语言(i18n)**:所有面向用户的展示字段均支持 `LocaleString` 格式:`string | Record<string, string>`。
286
+
287
+ - **简单写法**:`description: '级别'` — 所有语言显示相同文本
288
+ - **多语言写法**:`description: { 'zh-CN': '级别', 'en-US': 'Level' }` — 切换语言时自动翻译
289
+ - **enum 值**:`enum` 始终是存储值(不分语言),显示文本通过 `enumLabels` 翻译
290
+ - **回退规则**:请求的 locale → `'zh-CN'` → 第一个可用值
291
+
292
+ 支持的 LocaleString 字段:`project.description`、`ModelSchema.description`、`FieldDefinition.description`、`AIButtonConfig.label`、`DashboardConfig.description`、`DashboardWidget.title`、`RelationConfig.label`
293
+
294
+ 生成页面会自动通过 `registerMessages()` 注册 i18n key,并使用 `t()` 调用引用,无需手动处理。
295
+
296
+ 高级配置(`ai.claudeCode`、`server`、按模型 `adapters`、`indexes`)见 `references/data-model.md`。
297
+
298
+ ## API 路由格式
299
+
300
+ 用Loom创建的项目,后端 REST API 路径为 `/api/v1/data/<model-name>`,支持:`GET`(列表)、`GET /:id`(单条)、`POST`(创建)、`PUT /:id`(更新)、`DELETE /:id`(删除)、`GET /schema`(模型 Schema + AI 按钮)。
301
+ AI 相关:`POST /api/v1/chat`(SSE 流式对话)、`GET /api/v1/sessions`(会话列表)。
302
+ 前端通过 `useData('<model-name>')` 自动访问,无需手动拼接。`useSchema('<model-name>')` 获取模型字段和 AI 按钮定义,自动根据当前 locale 请求服务端 resolved 数据。`filterOptions(schema, fieldName)` 和 `selectOptions(schema, fieldName)` 将 enum 值转为 antd 组件格式(使用 resolved 的 enumLabels)。`enumLabel(schema, fieldName, value)` 获取单个 enum 值的显示标签。
303
+
304
+ ## 常见问题
305
+
306
+ - **better-sqlite3 加载失败**:Node.js 版本缺少预编译包。修复:(1) `cd node_modules/better-sqlite3 && npx node-gyp rebuild`,或 (2) 将 `defaultAdapter` 改为 `'filesystem'`
307
+ - **端口冲突(EADDRINUSE)**:启动 `loom dev` 时如果端口已被占用,Node.js 会抛出 `EADDRINUSE` 错误。解决方式:换端口重新执行 `loom init <name> --backend-port <new-port> --frontend-port <new-frontend-port>`。
308
+ - **`loom` 命令报错 "No loom.config.ts found"**:在项目目录下运行命令
@@ -0,0 +1,285 @@
1
+ # 用 Loom 开发 AI 平台
2
+
3
+ ## 30 秒理解 Loom
4
+
5
+ 你写一个配置文件描述你的数据模型和 AI 按钮,Loom 生成一个可运行的平台。然后你和 AI 一起迭代它。
6
+
7
+ ```
8
+ 你写的 Loom 生成的 你和 AI 继续做的
9
+ loom.config.ts → 页面 + API + AI 对话 → 改布局、加功能、调样式
10
+ ```
11
+
12
+ ## 开发方式
13
+
14
+ Loom 项目的主要交互方式是**和 AI 对话**。你告诉 AI 想要什么,AI 通过 Loom Skill 知道怎么用 Loom 实现它。
15
+
16
+ 两个入口,同一个 AI:
17
+
18
+ - **终端 Claude Code** — 适合搭建阶段、大范围代码修改
19
+ - **页面右侧 AI 面板** — 适合日常操作数据、小范围页面调整
20
+
21
+ 两个入口背后是同一个 Claude Code 引擎、同一套项目上下文。在哪边改都行。
22
+
23
+ ## 第一个项目
24
+
25
+ 假设你要做一个**告警管理平台**。
26
+
27
+ ### 第 1 步:告诉 AI 你的想法
28
+
29
+ 在 Claude Code 中说:
30
+
31
+ > 用 loom 创建一个告警管理平台,项目名 alert-manager,filesystem 适配器。
32
+ > 需要两个模型:告警记录(级别、描述、来源、严重度、状态)和处理记录(告警ID、处理人、处理时间、状态)。
33
+ > AI 按钮要能分析告警根因和生成处置建议。
34
+
35
+ AI 会读取 Loom Skill,自动执行:
36
+
37
+ 1. `loom init wrong-questions --adapter filesystem` — 创建项目(自动生成系统管理页面)
38
+ 2. 编写 `loom.config.ts` — 把你的需求转成配置
39
+ 3. `loom generate page` — 生成页面
40
+ 4. `loom generate capabilities` — 生成应用 Skill
41
+ 5. `loom generate dashboard` — 生成数据概览
42
+ 6. 补充项目级 AI Skill — 让 AI 理解你的业务语义
43
+
44
+ 你也可以自己跑命令,但通过 Loom Skill 让 AI 来做更省事 — 它知道每一步该做什么。
45
+
46
+ ### 第 2 步:看看效果
47
+
48
+ ```bash
49
+ cd wrong-questions
50
+ loom dev
51
+ ```
52
+
53
+ 打开 http://localhost:5173 ,你的平台已经能用了:
54
+ - 顶部导航有「告警记录」和「处理记录」页面
55
+ - 每个页面有新增、编辑、删除、筛选
56
+ - 告警记录每行有 AI 按钮:分析根因、生成处置建议
57
+ - 右侧 AI 面板可以自然语言操作数据
58
+
59
+ ### 第 3 步:继续和 AI 聊
60
+
61
+ 平台跑起来后,你主要的工作方式是对 AI 说需求:
62
+
63
+ | 你说的 | AI 做的 |
64
+ |-------|--------|
65
+ | "帮我记一条告警,服务器CPU过载,当前状态未处理" | 用 `loom data write` 创建记录 |
66
+ | "看看哪些告警还没处理" | 查数据并展示 |
67
+ | "把这个页面改成卡片布局" | 修改页面 TSX |
68
+ | "加一个严重等级字段" | 改 loom.config.ts + 改页面 + 更新 Skill references |
69
+ | "加一个级别分布的饼图" | 修改 Dashboard 页面 |
70
+
71
+ 这些操作在终端 Claude Code 和页面对话框里都能做。
72
+
73
+ ## 配置变更与迭代
74
+
75
+ 改了 `loom.config.ts` 后,不同类型的变更需要不同的处理方式:
76
+
77
+ | 变更类型 | 页面需要改吗 | 怎么做 |
78
+ |---------|------------|--------|
79
+ | 增删 AI 按钮 | 不需要 | 改配置 → `loom generate capabilities` 更新 Skill → 重启后端,按钮自动出现在页面 |
80
+ | 修改 enum 值 | 不需要 | 改配置 → `loom generate capabilities` 更新 Skill → 重启后端,筛选和下拉自动更新 |
81
+ | 新增数据模型 | 需要生成新页面 | 改配置 → `loom generate capabilities` + `loom generate page <Name> --model <model>` → 重启后端 |
82
+ | 新增/删除字段 | 需要 | 改配置 → AI 更新页面(推荐)或 `--force` 重建 → `loom generate capabilities` 更新 Skill |
83
+
84
+ **推荐:AI 辅助迭代**。告诉 AI 你改了什么(比如"我在配置里加了一个严重等级字段"),AI 会在页面中精确添加新字段的列和表单项,**保留你之前做的视觉定制代码**。
85
+
86
+ **谨慎使用 `--force`**。它会用最新配置全量覆盖页面,之前对页面做的任何定制修改都会丢失。
87
+
88
+ ```bash
89
+ # 只改了 AI 按钮或 enum → 重启后端即可,不用碰页面
90
+ # 加了新字段 → 让 AI 更新页面
91
+ # 想重来一个干净页面 → --force
92
+ loom generate page Alerts --model alerts --force
93
+ ```
94
+
95
+ 页面不存在时直接 `loom generate page` 即可,不需要 `--force`。
96
+
97
+ ## 配置写法
98
+
99
+ `loom.config.ts` 是唯一配置源,包含数据模型、AI 按钮和 Dashboard 定义。完整的字段类型和高级选项见 `references/data-model.md`。
100
+
101
+ ```typescript
102
+ import { defineConfig } from '@loom-framework/core';
103
+
104
+ export default defineConfig({
105
+ project: { name: 'my-app', description: { 'zh-CN': '我的应用', 'en-US': 'My App' } },
106
+ data: {
107
+ defaultAdapter: 'filesystem',
108
+ models: [{
109
+ name: 'tasks',
110
+ description: { 'zh-CN': '任务管理', 'en-US': 'Tasks' },
111
+ fields: [
112
+ { name: 'title', type: 'string', required: true, description: { 'zh-CN': '任务标题', 'en-US': 'Title' } },
113
+ { name: 'status', type: 'string', enum: ['待办', '进行中', '已完成'], enumLabels: {
114
+ '待办': { 'zh-CN': '待办', 'en-US': 'Todo' },
115
+ '进行中': { 'zh-CN': '进行中', 'en-US': 'In Progress' },
116
+ '已完成': { 'zh-CN': '已完成', 'en-US': 'Done' },
117
+ }, default: '待办' },
118
+ { name: 'priority', type: 'string', enum: ['低', '中', '高'] },
119
+ ],
120
+ }],
121
+ },
122
+ aiButtons: [{
123
+ id: 'breakdown',
124
+ label: { 'zh-CN': '拆解任务', 'en-US': 'Break Down Task' },
125
+ prompt: '请将这个任务拆解为可执行的子步骤:{{title}}',
126
+ placement: 'tasks',
127
+ }],
128
+ dashboards: [{
129
+ name: 'overview',
130
+ description: { 'zh-CN': '数据概览', 'en-US': 'Overview' },
131
+ models: ['tasks'],
132
+ layout: [
133
+ { row: [
134
+ { type: 'stat', title: { 'zh-CN': '任务总数', 'en-US': 'Total Tasks' }, model: 'tasks', aggregate: 'count', span: 6 },
135
+ { type: 'pie', title: { 'zh-CN': '状态分布', 'en-US': 'Status Distribution' }, model: 'tasks', groupBy: 'status', span: 8 },
136
+ { type: 'bar', title: { 'zh-CN': '优先级分布', 'en-US': 'Priority Distribution' }, model: 'tasks', groupBy: 'priority', span: 8 },
137
+ ]}
138
+ ],
139
+ }],
140
+ });
141
+ ```
142
+
143
+ - 所有展示文本(description、label、title)支持多语言:纯字符串 `'任务管理'` 或 `{ 'zh-CN': '任务管理', 'en-US': 'Tasks' }`
144
+ - `enum` 是存储值(所有语言一致),`enumLabels` 为每个值提供多语言显示文本
145
+ - AI 按钮的 `prompt` 支持 `{{fieldName}}` 插值,运行时替换为当前行的字段值
146
+ - `placement` 限制按钮只出现在指定模型页面,省略则全局显示
147
+ - Dashboard 的 15 种图表类型和配置 Schema 见 `references/dashboard.md`
148
+
149
+ ## 项目级 AI Skill
150
+
151
+ 每个项目的 `.claude/skills/<项目名>/SKILL.md` 是 AI 理解你业务的入口。`loom generate capabilities` 生成骨架(`references/` 下的内容自动维护),但 SKILL.md 主文档需要你补充三个地方:
152
+
153
+ 1. **description**:写用户会说的话,如 `"记录告警", "查看告警", "分析根因"`
154
+ 2. **Overview**:2-3 句话描述平台做什么
155
+ 3. **Usage Scenarios**:5-10 个典型用户请求及对应的 `loom data` 命令
156
+
157
+ 补充后,AI 在终端和对话框里都能理解"帮我查未处理告警"这类业务请求。
158
+
159
+ ## 数据操作
160
+
161
+ 不打开页面也能操作数据。你可以自己跑命令,也可以让 AI 跑:
162
+
163
+ ```bash
164
+ loom data read alerts --filter '{"level":"critical"}' --limit 10
165
+ loom data write alerts --data '{"level":"critical","description":"CPU使用率超过95%","source":"monitor","status":"open"}'
166
+ loom data update alerts --id rec_xxx --data '{"status":"resolved"}'
167
+ loom data delete alerts --id rec_xxx
168
+ loom data schema alerts # 查看字段结构
169
+ ```
170
+
171
+ ## 后端扩展
172
+
173
+ 需要自定义 API 路由时,编辑 `backend/src/index.ts`:
174
+
175
+ ```typescript
176
+ import { LoomServer } from '@loom-framework/core';
177
+
178
+ const server = new LoomServer({
179
+ projectRoot,
180
+ hooks: {
181
+ afterInit({ app, adapter }) {
182
+ app.get('/api/v1/stats/trend', async (req, reply) => { ... });
183
+ },
184
+ },
185
+ });
186
+ await server.initialize();
187
+ await server.start();
188
+ ```
189
+
190
+ 不需要时就是原来的 3 行。
191
+
192
+ ## AI 模型配置
193
+
194
+ 在**系统配置 > 模型管理**页面中配置 AI 模型。也可以直接编辑 `loom.config.ts`:
195
+
196
+ ```typescript
197
+ export default defineConfig({
198
+ ai: {
199
+ claudeCode: {
200
+ models: [
201
+ { name: 'claude-sonnet-4-20250514', isDefault: true },
202
+ { name: 'GLM-5.1', authToken: 'your-token', baseUrl: 'https://api.example.com' },
203
+ ],
204
+ },
205
+ },
206
+ });
207
+ ```
208
+
209
+ - `isDefault`:对话时默认使用的模型
210
+ - `authToken`:API 认证令牌,页面中显示脱敏,编辑时留空保持不变
211
+ - `baseUrl`:自定义 API 地址(适用于第三方模型)
212
+ - 页面和配置文件双向同步:在页面修改模型后会自动写入 `loom.config.ts`
213
+
214
+ 在 AI 面板顶部的模型选择器中切换当前对话使用的模型。
215
+
216
+ ## 文件上传
217
+
218
+ AI 对话支持上传文件,两种方式:
219
+
220
+ - **附件按钮** — 点击输入框左侧的回形针图标选择文件
221
+ - **粘贴上传** — 直接粘贴截图或复制的文件
222
+
223
+ 上传的文件会随对话发送给 AI 分析。图片在气泡中显示缩略图,其他文件显示为可下载的标签。文件大小上限约 30MB。
224
+
225
+ ## 页面功能控制
226
+
227
+ 通过 `crud` 配置字段控制生成页面的功能:
228
+
229
+ ```typescript
230
+ models: [{
231
+ name: 'tasks',
232
+ fields: [...],
233
+ crud: {
234
+ export: false, // 隐藏导出按钮
235
+ import: false, // 隐藏导入按钮
236
+ deleteWithUndo: false, // 删除改为确认对话框(而非撤销模式)
237
+ },
238
+ }],
239
+ ```
240
+
241
+ 省略 `crud` 字段时默认全部启用。
242
+
243
+ ## 日期分区
244
+
245
+ 数据可按日期字段自动分区存储,适合日志类数据:
246
+
247
+ ```typescript
248
+ models: [{
249
+ name: 'logs',
250
+ fields: [
251
+ { name: 'content', type: 'string' },
252
+ { name: 'createdAt', type: 'string' },
253
+ ],
254
+ datePattern: {
255
+ dateField: 'createdAt',
256
+ pattern: 'yyyy/MM', // 按月分区:data/logs/2026/04/*.json
257
+ },
258
+ }],
259
+ ```
260
+
261
+ ## 常见问题
262
+
263
+ **loom 命令报错 "No loom.config.ts found"**
264
+ 在项目根目录下运行。
265
+
266
+ **better-sqlite3 加载失败**
267
+ `defaultAdapter` 改为 `'filesystem'`,或者 `cd node_modules/better-sqlite3 && npx node-gyp rebuild`。
268
+
269
+ **改了 loom.config.ts 页面没变**
270
+ 取决于改了什么:AI 按钮和 enum 值变更是自动生效的(重启后端即可);字段增删需要让 AI 更新页面或 `--force` 重建。详见上方「配置变更与迭代」。
271
+
272
+ **改了配置后 AI 按钮没出现**
273
+ 需要重启后端(`loom dev` 会自动重载,如果没生效就停掉重新 `loom dev`)。
274
+
275
+ **删除了配置中的字段,旧数据怎么办**
276
+ 数据文件中的旧字段值不会删除,只是页面不再展示。如果之后加回同名字段,旧数据会自动恢复显示。
277
+
278
+ **--force 会丢掉我的页面定制吗**
279
+ 会。`--force` 全量覆盖页面文件。如果你对页面做过视觉或交互定制,建议让 AI 辅助迭代而不是用 `--force`。
280
+
281
+ **AI 面板里的 AI 能改代码吗**
282
+ 能。和终端 Claude Code 是同一个引擎,在哪边改都行。
283
+
284
+ **如何部署到生产环境**
285
+ `loom build` 构建前端和后端,然后 `node dist/backend/src/index.js` 启动后端。