@jahia/agentic 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (451) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/antigravity/.agents/rules/jahia.md +51 -0
  3. package/dist/antigravity/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  4. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  5. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  6. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  7. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  8. package/dist/{opencode/.opencode/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
  9. package/dist/{opencode/.opencode/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
  10. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  11. package/dist/antigravity/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  12. package/dist/antigravity/.agents/skills/jahia-dev-accessibility/SKILL.md +11 -0
  13. package/dist/antigravity/.agents/skills/jahia-dev-build-component/SKILL.md +133 -0
  14. package/dist/antigravity/.agents/skills/jahia-dev-create-page-template/SKILL.md +341 -0
  15. package/dist/antigravity/.agents/skills/jahia-dev-create-template-set/SKILL.md +205 -0
  16. package/dist/antigravity/.agents/skills/jahia-dev-create-view/SKILL.md +896 -0
  17. package/dist/antigravity/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
  18. package/dist/antigravity/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
  19. package/dist/antigravity/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
  20. package/dist/antigravity/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
  21. package/dist/antigravity/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
  22. package/dist/antigravity/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
  23. package/dist/antigravity/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
  24. package/dist/antigravity/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
  25. package/dist/antigravity/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
  26. package/dist/antigravity/.agents/skills/jahia-dev-query-content/SKILL.md +204 -0
  27. package/dist/antigravity/.agents/skills/jahia-dev-review/SKILL.md +228 -0
  28. package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/SKILL.md +79 -0
  29. package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/scripts/check-cnd.d.mts +13 -0
  30. package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/scripts/check-cnd.mjs +198 -0
  31. package/dist/antigravity/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
  32. package/dist/antigravity/.agents/skills/jahia-dev-site-review/SKILL.md +70 -0
  33. package/dist/antigravity/.agents/skills/jahia-dev-site-review/scripts/review-pages.mjs +85 -0
  34. package/dist/antigravity/.agents/skills/jahia-dev-start-local/SKILL.md +121 -0
  35. package/dist/antigravity/.agents/skills/jahia-jcr-sql2/SKILL.md +258 -0
  36. package/dist/antigravity/AGENTS.md +62 -0
  37. package/dist/claude/.claude/rules/jahia.md +1 -37
  38. package/dist/claude/.claude/skills/jahia-cnd-author/SKILL.md +94 -0
  39. package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  40. package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  41. package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  42. package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  43. package/dist/claude/.claude/{agents → skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
  44. package/dist/{cursor/.cursor/agents → claude/.claude/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
  45. package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  46. package/dist/claude/.claude/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  47. package/dist/claude/.claude/skills/jahia-dev-accessibility/SKILL.md +5 -265
  48. package/dist/claude/.claude/skills/jahia-dev-build-component/SKILL.md +13 -8
  49. package/dist/claude/.mcp.json +11 -0
  50. package/dist/claude/CLAUDE.md +2 -38
  51. package/dist/codex/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  52. package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  53. package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  54. package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  55. package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  56. package/dist/{cursor/.cursor/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
  57. package/dist/{claude/.claude/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
  58. package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  59. package/dist/codex/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  60. package/dist/codex/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
  61. package/dist/codex/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
  62. package/dist/codex/AGENTS.md +2 -38
  63. package/dist/copilot/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  64. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  65. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  66. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  67. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  68. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  69. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  70. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  71. package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  72. package/dist/copilot/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  73. package/dist/copilot/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
  74. package/dist/copilot/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
  75. package/dist/copilot/AGENTS.md +2 -38
  76. package/dist/cursor/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  77. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  78. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  79. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  80. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  81. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  82. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  83. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  84. package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  85. package/dist/cursor/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  86. package/dist/cursor/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
  87. package/dist/cursor/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
  88. package/dist/cursor/.cursor/mcp.json +11 -0
  89. package/dist/cursor/.cursor/rules/jahia.mdc +1 -37
  90. package/dist/gemini/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  91. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  92. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  93. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  94. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  95. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  96. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  97. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  98. package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  99. package/dist/gemini/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  100. package/dist/gemini/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
  101. package/dist/gemini/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
  102. package/dist/gemini/.gemini/settings.json +10 -0
  103. package/dist/gemini/AGENTS.md +2 -38
  104. package/dist/index.js +12 -0
  105. package/dist/kiro/.kiro/settings/mcp.json +10 -0
  106. package/dist/kiro/.kiro/skills/jahia-cnd-author/SKILL.md +94 -0
  107. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  108. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  109. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  110. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  111. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  112. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  113. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  114. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  115. package/dist/kiro/.kiro/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  116. package/dist/kiro/.kiro/skills/jahia-dev-accessibility/SKILL.md +11 -0
  117. package/dist/kiro/.kiro/skills/jahia-dev-build-component/SKILL.md +133 -0
  118. package/dist/kiro/.kiro/skills/jahia-dev-create-page-template/SKILL.md +341 -0
  119. package/dist/kiro/.kiro/skills/jahia-dev-create-template-set/SKILL.md +205 -0
  120. package/dist/kiro/.kiro/skills/jahia-dev-create-view/SKILL.md +896 -0
  121. package/dist/kiro/.kiro/skills/jahia-dev-debug/SKILL.md +176 -0
  122. package/dist/kiro/.kiro/skills/jahia-dev-import-from/SKILL.md +244 -0
  123. package/dist/kiro/.kiro/skills/jahia-dev-jexperience/SKILL.md +269 -0
  124. package/dist/kiro/.kiro/skills/jahia-dev-ops/SKILL.md +50 -0
  125. package/dist/kiro/.kiro/skills/jahia-dev-ops/references/docker.md +151 -0
  126. package/dist/kiro/.kiro/skills/jahia-dev-ops/references/monitoring.md +195 -0
  127. package/dist/kiro/.kiro/skills/jahia-dev-ops/references/provisioning.md +269 -0
  128. package/dist/kiro/.kiro/skills/jahia-dev-properties/SKILL.md +147 -0
  129. package/dist/kiro/.kiro/skills/jahia-dev-properties/references/all-properties.md +231 -0
  130. package/dist/kiro/.kiro/skills/jahia-dev-query-content/SKILL.md +204 -0
  131. package/dist/kiro/.kiro/skills/jahia-dev-review/SKILL.md +228 -0
  132. package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/SKILL.md +79 -0
  133. package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/scripts/check-cnd.d.mts +13 -0
  134. package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/scripts/check-cnd.mjs +198 -0
  135. package/dist/kiro/.kiro/skills/jahia-dev-screenshot/SKILL.md +177 -0
  136. package/dist/kiro/.kiro/skills/jahia-dev-site-review/SKILL.md +70 -0
  137. package/dist/kiro/.kiro/skills/jahia-dev-site-review/scripts/review-pages.mjs +85 -0
  138. package/dist/kiro/.kiro/skills/jahia-dev-start-local/SKILL.md +121 -0
  139. package/dist/kiro/.kiro/skills/jahia-jcr-sql2/SKILL.md +258 -0
  140. package/dist/kiro/.kiro/steering/jahia.md +55 -0
  141. package/dist/kiro/AGENTS.md +62 -0
  142. package/dist/opencode/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
  143. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  144. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  145. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  146. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  147. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  148. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  149. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  150. package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  151. package/dist/opencode/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  152. package/dist/opencode/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
  153. package/dist/opencode/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
  154. package/dist/opencode/AGENTS.md +2 -38
  155. package/dist/opencode/opencode.json +12 -0
  156. package/dist/windsurf/.windsurf/rules/jahia.md +1 -37
  157. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/SKILL.md +94 -0
  158. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
  159. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
  160. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
  161. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
  162. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
  163. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
  164. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
  165. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
  166. package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
  167. package/dist/windsurf/.windsurf/skills/jahia-dev-accessibility/SKILL.md +5 -265
  168. package/dist/windsurf/.windsurf/skills/jahia-dev-build-component/SKILL.md +13 -8
  169. package/dist/windsurf/AGENTS.md +2 -38
  170. package/package.json +1 -1
  171. package/dist/claude/.claude/agents/cnd-jahia-mixins.md +0 -113
  172. package/dist/claude/.claude/agents/jahia-cnd-author.md +0 -130
  173. package/dist/claude/.claude/agents/jahia-dev-worker.md +0 -264
  174. package/dist/claude/.claude/agents/jahia-reviewer.md +0 -105
  175. package/dist/claude/.claude/skills/jahia/SKILL.md +0 -148
  176. package/dist/claude/.claude/skills/jahia-content/SKILL.md +0 -157
  177. package/dist/claude/.claude/skills/jahia-content-create-content/SKILL.md +0 -359
  178. package/dist/claude/.claude/skills/jahia-content-explore-structure/SKILL.md +0 -255
  179. package/dist/claude/.claude/skills/jahia-content-media-upload/SKILL.md +0 -197
  180. package/dist/claude/.claude/skills/jahia-content-move-content/SKILL.md +0 -231
  181. package/dist/claude/.claude/skills/jahia-content-organize/SKILL.md +0 -209
  182. package/dist/claude/.claude/skills/jahia-content-publish/SKILL.md +0 -181
  183. package/dist/claude/.claude/skills/jahia-content-query-content/SKILL.md +0 -174
  184. package/dist/claude/.claude/skills/jahia-content-translate-content/SKILL.md +0 -226
  185. package/dist/claude/.claude/skills/jahia-dev/SKILL.md +0 -124
  186. package/dist/claude/.claude/skills/jahia-dev-apis/SKILL.md +0 -52
  187. package/dist/claude/.claude/skills/jahia-dev-apis/references/authentication.md +0 -484
  188. package/dist/claude/.claude/skills/jahia-dev-apis/references/graphql.md +0 -657
  189. package/dist/claude/.claude/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  190. package/dist/claude/.claude/skills/jahia-dev-apis/references/security.md +0 -541
  191. package/dist/claude/.claude/skills/jahia-dev-cypress/SKILL.md +0 -265
  192. package/dist/claude/.claude/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  193. package/dist/claude/.claude/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  194. package/dist/claude/.claude/skills/jahia-dev-java/SKILL.md +0 -110
  195. package/dist/claude/.claude/skills/jahia-dev-java/references/backend.md +0 -331
  196. package/dist/claude/.claude/skills/jahia-dev-java/references/content-types.md +0 -273
  197. package/dist/claude/.claude/skills/jahia-dev-java/references/modules.md +0 -218
  198. package/dist/claude/.claude/skills/jahia-dev-java/references/osgi.md +0 -208
  199. package/dist/claude/.claude/skills/jahia-dev-java/references/rendering.md +0 -191
  200. package/dist/claude/.claude/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  201. package/dist/claude/.claude/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  202. package/dist/claude/.claude/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  203. package/dist/claude/.claude/skills/jahia-java-concurrency/SKILL.md +0 -308
  204. package/dist/claude/.claude/skills/jahia-java-jcr/SKILL.md +0 -153
  205. package/dist/claude/.claude/skills/jahia-java-osgi/SKILL.md +0 -134
  206. package/dist/claude/.claude/skills/jahia-java-persistence/SKILL.md +0 -177
  207. package/dist/claude/.claude/skills/jahia-java-security/SKILL.md +0 -84
  208. package/dist/claude/.claude/skills/jahia-orchestrate/SKILL.md +0 -148
  209. package/dist/claude/.claude/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  210. package/dist/claude/.claude/skills/jahia-review-java/SKILL.md +0 -131
  211. package/dist/claude/.claude/skills/jahia-review-java/references/code-review-output.md +0 -121
  212. package/dist/codex/.agents/skills/jahia/SKILL.md +0 -148
  213. package/dist/codex/.agents/skills/jahia-content/SKILL.md +0 -157
  214. package/dist/codex/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
  215. package/dist/codex/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
  216. package/dist/codex/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
  217. package/dist/codex/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
  218. package/dist/codex/.agents/skills/jahia-content-organize/SKILL.md +0 -209
  219. package/dist/codex/.agents/skills/jahia-content-publish/SKILL.md +0 -181
  220. package/dist/codex/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
  221. package/dist/codex/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
  222. package/dist/codex/.agents/skills/jahia-dev/SKILL.md +0 -124
  223. package/dist/codex/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
  224. package/dist/codex/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
  225. package/dist/codex/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
  226. package/dist/codex/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  227. package/dist/codex/.agents/skills/jahia-dev-apis/references/security.md +0 -541
  228. package/dist/codex/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
  229. package/dist/codex/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  230. package/dist/codex/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  231. package/dist/codex/.agents/skills/jahia-dev-java/SKILL.md +0 -110
  232. package/dist/codex/.agents/skills/jahia-dev-java/references/backend.md +0 -331
  233. package/dist/codex/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
  234. package/dist/codex/.agents/skills/jahia-dev-java/references/modules.md +0 -218
  235. package/dist/codex/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
  236. package/dist/codex/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
  237. package/dist/codex/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  238. package/dist/codex/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  239. package/dist/codex/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  240. package/dist/codex/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
  241. package/dist/codex/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
  242. package/dist/codex/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
  243. package/dist/codex/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
  244. package/dist/codex/.agents/skills/jahia-java-security/SKILL.md +0 -84
  245. package/dist/codex/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
  246. package/dist/codex/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  247. package/dist/codex/.agents/skills/jahia-review-java/SKILL.md +0 -131
  248. package/dist/codex/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
  249. package/dist/codex/.codex/agents/cnd-child-nodes.toml +0 -3
  250. package/dist/codex/.codex/agents/cnd-jahia-mixins.toml +0 -3
  251. package/dist/codex/.codex/agents/cnd-numbers-dates.toml +0 -3
  252. package/dist/codex/.codex/agents/cnd-string-selectors.toml +0 -3
  253. package/dist/codex/.codex/agents/jahia-cnd-author.toml +0 -3
  254. package/dist/codex/.codex/agents/jahia-dev-worker.toml +0 -3
  255. package/dist/codex/.codex/agents/jahia-reviewer.toml +0 -3
  256. package/dist/copilot/.agents/skills/jahia/SKILL.md +0 -148
  257. package/dist/copilot/.agents/skills/jahia-content/SKILL.md +0 -157
  258. package/dist/copilot/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
  259. package/dist/copilot/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
  260. package/dist/copilot/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
  261. package/dist/copilot/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
  262. package/dist/copilot/.agents/skills/jahia-content-organize/SKILL.md +0 -209
  263. package/dist/copilot/.agents/skills/jahia-content-publish/SKILL.md +0 -181
  264. package/dist/copilot/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
  265. package/dist/copilot/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
  266. package/dist/copilot/.agents/skills/jahia-dev/SKILL.md +0 -124
  267. package/dist/copilot/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
  268. package/dist/copilot/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
  269. package/dist/copilot/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
  270. package/dist/copilot/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  271. package/dist/copilot/.agents/skills/jahia-dev-apis/references/security.md +0 -541
  272. package/dist/copilot/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
  273. package/dist/copilot/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  274. package/dist/copilot/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  275. package/dist/copilot/.agents/skills/jahia-dev-java/SKILL.md +0 -110
  276. package/dist/copilot/.agents/skills/jahia-dev-java/references/backend.md +0 -331
  277. package/dist/copilot/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
  278. package/dist/copilot/.agents/skills/jahia-dev-java/references/modules.md +0 -218
  279. package/dist/copilot/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
  280. package/dist/copilot/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
  281. package/dist/copilot/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  282. package/dist/copilot/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  283. package/dist/copilot/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  284. package/dist/copilot/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
  285. package/dist/copilot/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
  286. package/dist/copilot/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
  287. package/dist/copilot/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
  288. package/dist/copilot/.agents/skills/jahia-java-security/SKILL.md +0 -84
  289. package/dist/copilot/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
  290. package/dist/copilot/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  291. package/dist/copilot/.agents/skills/jahia-review-java/SKILL.md +0 -131
  292. package/dist/copilot/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
  293. package/dist/cursor/.agents/skills/jahia/SKILL.md +0 -148
  294. package/dist/cursor/.agents/skills/jahia-content/SKILL.md +0 -157
  295. package/dist/cursor/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
  296. package/dist/cursor/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
  297. package/dist/cursor/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
  298. package/dist/cursor/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
  299. package/dist/cursor/.agents/skills/jahia-content-organize/SKILL.md +0 -209
  300. package/dist/cursor/.agents/skills/jahia-content-publish/SKILL.md +0 -181
  301. package/dist/cursor/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
  302. package/dist/cursor/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
  303. package/dist/cursor/.agents/skills/jahia-dev/SKILL.md +0 -124
  304. package/dist/cursor/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
  305. package/dist/cursor/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
  306. package/dist/cursor/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
  307. package/dist/cursor/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  308. package/dist/cursor/.agents/skills/jahia-dev-apis/references/security.md +0 -541
  309. package/dist/cursor/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
  310. package/dist/cursor/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  311. package/dist/cursor/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  312. package/dist/cursor/.agents/skills/jahia-dev-java/SKILL.md +0 -110
  313. package/dist/cursor/.agents/skills/jahia-dev-java/references/backend.md +0 -331
  314. package/dist/cursor/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
  315. package/dist/cursor/.agents/skills/jahia-dev-java/references/modules.md +0 -218
  316. package/dist/cursor/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
  317. package/dist/cursor/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
  318. package/dist/cursor/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  319. package/dist/cursor/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  320. package/dist/cursor/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  321. package/dist/cursor/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
  322. package/dist/cursor/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
  323. package/dist/cursor/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
  324. package/dist/cursor/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
  325. package/dist/cursor/.agents/skills/jahia-java-security/SKILL.md +0 -84
  326. package/dist/cursor/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
  327. package/dist/cursor/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  328. package/dist/cursor/.agents/skills/jahia-review-java/SKILL.md +0 -131
  329. package/dist/cursor/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
  330. package/dist/cursor/.cursor/agents/cnd-jahia-mixins.md +0 -113
  331. package/dist/cursor/.cursor/agents/jahia-cnd-author.md +0 -130
  332. package/dist/cursor/.cursor/agents/jahia-dev-worker.md +0 -264
  333. package/dist/cursor/.cursor/agents/jahia-reviewer.md +0 -105
  334. package/dist/gemini/.agents/skills/jahia/SKILL.md +0 -148
  335. package/dist/gemini/.agents/skills/jahia-content/SKILL.md +0 -157
  336. package/dist/gemini/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
  337. package/dist/gemini/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
  338. package/dist/gemini/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
  339. package/dist/gemini/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
  340. package/dist/gemini/.agents/skills/jahia-content-organize/SKILL.md +0 -209
  341. package/dist/gemini/.agents/skills/jahia-content-publish/SKILL.md +0 -181
  342. package/dist/gemini/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
  343. package/dist/gemini/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
  344. package/dist/gemini/.agents/skills/jahia-dev/SKILL.md +0 -124
  345. package/dist/gemini/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
  346. package/dist/gemini/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
  347. package/dist/gemini/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
  348. package/dist/gemini/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  349. package/dist/gemini/.agents/skills/jahia-dev-apis/references/security.md +0 -541
  350. package/dist/gemini/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
  351. package/dist/gemini/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  352. package/dist/gemini/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  353. package/dist/gemini/.agents/skills/jahia-dev-java/SKILL.md +0 -110
  354. package/dist/gemini/.agents/skills/jahia-dev-java/references/backend.md +0 -331
  355. package/dist/gemini/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
  356. package/dist/gemini/.agents/skills/jahia-dev-java/references/modules.md +0 -218
  357. package/dist/gemini/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
  358. package/dist/gemini/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
  359. package/dist/gemini/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  360. package/dist/gemini/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  361. package/dist/gemini/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  362. package/dist/gemini/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
  363. package/dist/gemini/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
  364. package/dist/gemini/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
  365. package/dist/gemini/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
  366. package/dist/gemini/.agents/skills/jahia-java-security/SKILL.md +0 -84
  367. package/dist/gemini/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
  368. package/dist/gemini/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  369. package/dist/gemini/.agents/skills/jahia-review-java/SKILL.md +0 -131
  370. package/dist/gemini/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
  371. package/dist/opencode/.agents/skills/jahia/SKILL.md +0 -148
  372. package/dist/opencode/.agents/skills/jahia-content/SKILL.md +0 -157
  373. package/dist/opencode/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
  374. package/dist/opencode/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
  375. package/dist/opencode/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
  376. package/dist/opencode/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
  377. package/dist/opencode/.agents/skills/jahia-content-organize/SKILL.md +0 -209
  378. package/dist/opencode/.agents/skills/jahia-content-publish/SKILL.md +0 -181
  379. package/dist/opencode/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
  380. package/dist/opencode/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
  381. package/dist/opencode/.agents/skills/jahia-dev/SKILL.md +0 -124
  382. package/dist/opencode/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
  383. package/dist/opencode/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
  384. package/dist/opencode/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
  385. package/dist/opencode/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  386. package/dist/opencode/.agents/skills/jahia-dev-apis/references/security.md +0 -541
  387. package/dist/opencode/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
  388. package/dist/opencode/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  389. package/dist/opencode/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  390. package/dist/opencode/.agents/skills/jahia-dev-java/SKILL.md +0 -110
  391. package/dist/opencode/.agents/skills/jahia-dev-java/references/backend.md +0 -331
  392. package/dist/opencode/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
  393. package/dist/opencode/.agents/skills/jahia-dev-java/references/modules.md +0 -218
  394. package/dist/opencode/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
  395. package/dist/opencode/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
  396. package/dist/opencode/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  397. package/dist/opencode/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  398. package/dist/opencode/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  399. package/dist/opencode/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
  400. package/dist/opencode/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
  401. package/dist/opencode/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
  402. package/dist/opencode/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
  403. package/dist/opencode/.agents/skills/jahia-java-security/SKILL.md +0 -84
  404. package/dist/opencode/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
  405. package/dist/opencode/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  406. package/dist/opencode/.agents/skills/jahia-review-java/SKILL.md +0 -131
  407. package/dist/opencode/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
  408. package/dist/opencode/.opencode/agents/cnd-jahia-mixins.md +0 -113
  409. package/dist/opencode/.opencode/agents/jahia-cnd-author.md +0 -130
  410. package/dist/opencode/.opencode/agents/jahia-dev-worker.md +0 -264
  411. package/dist/opencode/.opencode/agents/jahia-reviewer.md +0 -105
  412. package/dist/windsurf/.windsurf/skills/jahia/SKILL.md +0 -148
  413. package/dist/windsurf/.windsurf/skills/jahia-content/SKILL.md +0 -157
  414. package/dist/windsurf/.windsurf/skills/jahia-content-create-content/SKILL.md +0 -359
  415. package/dist/windsurf/.windsurf/skills/jahia-content-explore-structure/SKILL.md +0 -255
  416. package/dist/windsurf/.windsurf/skills/jahia-content-media-upload/SKILL.md +0 -197
  417. package/dist/windsurf/.windsurf/skills/jahia-content-move-content/SKILL.md +0 -231
  418. package/dist/windsurf/.windsurf/skills/jahia-content-organize/SKILL.md +0 -209
  419. package/dist/windsurf/.windsurf/skills/jahia-content-publish/SKILL.md +0 -181
  420. package/dist/windsurf/.windsurf/skills/jahia-content-query-content/SKILL.md +0 -174
  421. package/dist/windsurf/.windsurf/skills/jahia-content-translate-content/SKILL.md +0 -226
  422. package/dist/windsurf/.windsurf/skills/jahia-dev/SKILL.md +0 -124
  423. package/dist/windsurf/.windsurf/skills/jahia-dev-apis/SKILL.md +0 -52
  424. package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/authentication.md +0 -484
  425. package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/graphql.md +0 -657
  426. package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/jcr-api.md +0 -465
  427. package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/security.md +0 -541
  428. package/dist/windsurf/.windsurf/skills/jahia-dev-cypress/SKILL.md +0 -265
  429. package/dist/windsurf/.windsurf/skills/jahia-dev-define-content-type/SKILL.md +0 -93
  430. package/dist/windsurf/.windsurf/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
  431. package/dist/windsurf/.windsurf/skills/jahia-dev-java/SKILL.md +0 -110
  432. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/backend.md +0 -331
  433. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/content-types.md +0 -273
  434. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/modules.md +0 -218
  435. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/osgi.md +0 -208
  436. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/rendering.md +0 -191
  437. package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/ui-extensions.md +0 -344
  438. package/dist/windsurf/.windsurf/skills/jahia-dev-osgi-module/SKILL.md +0 -297
  439. package/dist/windsurf/.windsurf/skills/jahia-dev-ui-extension/SKILL.md +0 -559
  440. package/dist/windsurf/.windsurf/skills/jahia-java-concurrency/SKILL.md +0 -308
  441. package/dist/windsurf/.windsurf/skills/jahia-java-jcr/SKILL.md +0 -153
  442. package/dist/windsurf/.windsurf/skills/jahia-java-osgi/SKILL.md +0 -134
  443. package/dist/windsurf/.windsurf/skills/jahia-java-persistence/SKILL.md +0 -177
  444. package/dist/windsurf/.windsurf/skills/jahia-java-security/SKILL.md +0 -84
  445. package/dist/windsurf/.windsurf/skills/jahia-orchestrate/SKILL.md +0 -148
  446. package/dist/windsurf/.windsurf/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
  447. package/dist/windsurf/.windsurf/skills/jahia-review-java/SKILL.md +0 -131
  448. package/dist/windsurf/.windsurf/skills/jahia-review-java/references/code-review-output.md +0 -121
  449. /package/dist/{claude/.claude/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
  450. /package/dist/{cursor/.cursor/agents → claude/.claude/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
  451. /package/dist/{opencode/.opencode/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
@@ -1,331 +0,0 @@
1
- # Jahia Backend Capabilities Reference
2
-
3
- ## Table of Contents
4
- 1. [Drools rule engine](#1-drools-rule-engine)
5
- 2. [JCR event listeners](#2-jcr-event-listeners)
6
- 3. [JCR SQL2 cheat sheet](#3-jcr-sql2-cheat-sheet)
7
- 4. [Queries and search indexing](#4-queries-and-search-indexing)
8
- 5. [External data sources (Provider API)](#5-external-data-sources-provider-api)
9
- 6. [Permissions and roles](#6-permissions-and-roles)
10
-
11
- ---
12
-
13
- ## 1. Drools rule engine
14
-
15
- Jahia uses JBoss Drools 6 for a rules engine that reacts to JCR events.
16
-
17
- ### Rule file locations
18
-
19
- | File | Scope |
20
- |------|-------|
21
- | `META-INF/rules.drl` | All workspaces (default and live) |
22
- | `META-INF/default-rules.drl` | Edit/preview workspace only |
23
- | `META-INF/live-rules.drl` | Live workspace only |
24
- | `META-INF/rules.dsl` | Custom DSL extensions |
25
-
26
- ### Basic rule structure
27
-
28
- ```drools
29
- package org.example.mymodule.rules
30
-
31
- import org.jahia.services.content.rules.*
32
- import org.jahia.services.content.JCRContentUtils
33
- import org.slf4j.Logger
34
-
35
- global User user
36
- global Service service
37
- global Logger logger
38
- global MyService myService
39
-
40
- rule "Log new article creation"
41
- when
42
- A new node is created
43
- - the node has the type jnt:article
44
- then
45
- Log "New article created: " + node.getName() at INFO level
46
- end
47
-
48
- rule "Notify on page publish"
49
- salience 100
50
- when
51
- A node is published
52
- - the node has the type jnt:page
53
- then
54
- myService.notifyPublish(node)
55
- end
56
- ```
57
-
58
- **Critical rules:** Rule titles are globally unique across the platform — never reuse rule names between modules.
59
-
60
- **Package names:** Use a unique package per module — do not share package names across modules.
61
-
62
- ### Built-in DSL conditions (excerpt)
63
-
64
- ```drools
65
- A new node is created # AddedNodeFact
66
- A node is published # PublishedNodeFact
67
- A node is deleted # DeletedNodeFact
68
- A node is modified # ChangedPropertyFact
69
- - the node has the type {type} # Checks primaryType or mixin
70
- ```
71
-
72
- ### Built-in global objects
73
-
74
- | Global | Type | Description |
75
- |--------|------|-------------|
76
- | `user` | `org.jahia.services.content.rules.User` | Current user context |
77
- | `service` | `org.jahia.services.content.rules.Service` | Core JCR service shortcuts |
78
- | `logger` | `org.slf4j.Logger` | SLF4J logger |
79
- | `imageService` | `org.jahia.services.content.rules.ImageService` | Image operations |
80
- | `extractionService` | `org.jahia.services.content.rules.ExtractionService` | Content extraction |
81
-
82
- ### Registering a custom service as a rules global
83
-
84
- Step 1 — Declare the service component:
85
- ```java
86
- @Component(service = MyService.class)
87
- public class MyService {
88
- public void doSomething(AddedNodeFact node) throws RepositoryException { }
89
- }
90
- ```
91
-
92
- Step 2 — Register as a global rules object:
93
- ```java
94
- @Component(service = ModuleGlobalObject.class)
95
- public class MyRulesGlobalObjects extends ModuleGlobalObject {
96
- @Reference
97
- public void setMyService(MyService myService) {
98
- getGlobalRulesObject().put("myService", myService);
99
- }
100
- public void unsetMyService(MyService myService) {
101
- getGlobalRulesObject().remove("myService");
102
- }
103
- }
104
- ```
105
-
106
- Step 3 — Declare global and import in rules.drl:
107
- ```drools
108
- import org.example.mymodule.MyService
109
- global MyService myService
110
- ```
111
-
112
- **Important:** Export the package containing `MyService` so other modules can import it in DRL files.
113
-
114
- ### Custom DSL extensions (rules.dsl)
115
-
116
- ```drools
117
- [condition][]A new article is created=node : AddedNodeFact (types contains "jnt:article")
118
- [consequence][]Notify publish for {node}=myService.notifyPublish({node});
119
- ```
120
-
121
- ---
122
-
123
- ## 2. JCR event listeners
124
-
125
- Extend `DefaultEventListener` to react to JCR node events:
126
-
127
- ```java
128
- public class MyJCREventListener extends DefaultEventListener {
129
-
130
- @Override
131
- public int getEventTypes() {
132
- return Event.NODE_ADDED | Event.NODE_REMOVED | Event.PROPERTY_CHANGED;
133
- }
134
-
135
- @Override
136
- public String getPath() {
137
- return "/sites";
138
- }
139
-
140
- @Override
141
- public void onEvent(EventIterator events) {
142
- while (events.hasNext()) {
143
- Event event = events.nextEvent();
144
- try {
145
- String path = event.getPath();
146
- } catch (RepositoryException e) {
147
- logger.error("Error processing event", e);
148
- }
149
- }
150
- }
151
- }
152
- ```
153
-
154
- **JCR Event types:** `Event.NODE_ADDED`, `Event.NODE_REMOVED`, `Event.PROPERTY_ADDED`, `Event.PROPERTY_CHANGED`, `Event.PROPERTY_REMOVED`, `Event.NODE_MOVED`
155
-
156
- ---
157
-
158
- ## 3. JCR SQL2 cheat sheet
159
-
160
- JCR SQL2 syntax: `SELECT * FROM [nodeType] AS alias WHERE conditions ORDER BY alias.[prop]`
161
-
162
- ### Querying node types
163
-
164
- ```sql
165
- -- Prefer jmix:searchable over nt:base for broad queries
166
- SELECT * FROM [jmix:searchable] AS node
167
-
168
- SELECT * FROM [jnt:page] AS page
169
- SELECT * FROM [jnt:file] AS file
170
- SELECT * FROM [jnt:article] AS article
171
- ```
172
-
173
- ### Path constraints (always include for performance)
174
-
175
- ```sql
176
- SELECT * FROM [jnt:article] AS node
177
- WHERE ISDESCENDANTNODE(node, '/sites/mySite')
178
-
179
- SELECT * FROM [jnt:page] AS child
180
- WHERE ISCHILDNODE(child, '/sites/mySite/home')
181
- ```
182
-
183
- ### String matching
184
-
185
- ```sql
186
- SELECT * FROM [jnt:content] AS node WHERE node.[jcr:title] = 'My Title'
187
- SELECT * FROM [jnt:content] AS node WHERE node.[jcr:title] LIKE '%news%'
188
- SELECT * FROM [jnt:page] AS node WHERE LOWER(node.[jcr:title]) = 'home'
189
- SELECT * FROM [jnt:page] AS page WHERE page.[jcr:title] IS NOT NULL
190
- SELECT * FROM [jnt:content] AS node WHERE CONTAINS(node.*, 'digital')
191
- ```
192
-
193
- ### Property and type queries
194
-
195
- ```sql
196
- SELECT * FROM [jnt:page] AS page WHERE page.[j:published] > CAST('true' AS BOOLEAN)
197
- SELECT * FROM [jnt:page] AS page
198
- WHERE page.[j:published] > CAST('2021-01-01T00:00:01.000Z' AS DATE)
199
- ```
200
-
201
- ### Ordering and templates
202
-
203
- ```sql
204
- SELECT * FROM [jnt:page] AS page ORDER BY page.[j:lastModified] DESC
205
- SELECT * FROM [jnt:page] AS page WHERE page.[j:templateName] = 'home'
206
- ```
207
-
208
- ### Non-query lookups (use instead of queries for performance)
209
-
210
- ```java
211
- // By UUID (preferred over UUID query)
212
- session.getNodeByIdentifier("the-uuid-string");
213
-
214
- // Set result limit (no LIMIT keyword in JCR SQL2)
215
- QueryObjectModelImpl qom = ...;
216
- qom.setLimit(20);
217
- qom.setOffset(0);
218
- ```
219
-
220
- ---
221
-
222
- ## 4. Queries and search indexing
223
-
224
- ### Executing a JCR SQL2 query in Java
225
-
226
- ```java
227
- JCRSessionWrapper session = JCRSessionFactory.getInstance()
228
- .getCurrentUserSession("default", Locale.ENGLISH);
229
-
230
- QueryManager queryManager = session.getWorkspace().getQueryManager();
231
- Query query = queryManager.createQuery(
232
- "SELECT * FROM [jnt:article] WHERE ISDESCENDANTNODE('/sites/mySite')",
233
- Query.JCR_SQL2
234
- );
235
- QueryResult result = query.execute();
236
- NodeIterator nodes = result.getNodes();
237
- while (nodes.hasNext()) {
238
- JCRNodeWrapper node = (JCRNodeWrapper) nodes.nextNode();
239
- }
240
- ```
241
-
242
- ### Index tuning via CND keywords
243
-
244
- ```cnd
245
- - title (string) i18n boost=3.0 # Higher search relevance
246
- - code (string) analyzer=keyword # Index as single token
247
- - internalNotes (string) nofulltext # Indexed but not in full-text search
248
- - binaryData (binary) indexed=no # Not indexed at all
249
- - category (string) facetable # Enables faceted search
250
- ```
251
-
252
- ---
253
-
254
- ## 5. External data sources (Provider API)
255
-
256
- The External Provider API allows exposing non-JCR data as virtual JCR nodes.
257
-
258
- ### Key interfaces
259
-
260
- | Interface | Purpose |
261
- |-----------|---------|
262
- | `ExternalDataSource` | Main interface to implement for external data |
263
- | `ExternalDataSource.Searchable` | Add search support |
264
- | `ExternalDataSource.Writable` | Add write support |
265
- | `ExternalContentStoreProvider` | OSGi service to mount the provider |
266
-
267
- ### Minimal ExternalDataSource implementation
268
-
269
- ```java
270
- @Component(service = ExternalDataSource.class)
271
- public class MyExternalDataSource implements ExternalDataSource {
272
-
273
- @Override
274
- public List<String> getChildren(String path) throws PathNotFoundException {
275
- return Arrays.asList("item1", "item2");
276
- }
277
-
278
- @Override
279
- public ExternalData getItemByPath(String path) throws PathNotFoundException {
280
- ExternalData data = new ExternalData("unique-id", path, "jnt:content",
281
- new HashMap<String, String[]>());
282
- data.getProperties().put("jcr:title", new String[]{"My Title"});
283
- return data;
284
- }
285
-
286
- @Override
287
- public ExternalData getItemByIdentifier(String identifier) throws ItemNotFoundException {
288
- return null;
289
- }
290
-
291
- @Override
292
- public Set<String> getSupportedNodeTypes() {
293
- return Collections.singleton("jnt:content");
294
- }
295
-
296
- @Override public boolean isSupportsUuid() { return false; }
297
- @Override public boolean isSupportsHierarchicalIdentifiers() { return false; }
298
- @Override public boolean itemExists(String path) { return true; }
299
- }
300
- ```
301
-
302
- ---
303
-
304
- ## 6. Permissions and roles
305
-
306
- ### Permission hierarchy
307
-
308
- | Level | Description |
309
- |-------|-------------|
310
- | Server level | Global roles (e.g., Server Administrator) |
311
- | Site level | Site-specific roles (e.g., Site Administrator, Editor) |
312
- | Node level | Per-node ACL inheritance |
313
-
314
- ### Checking permissions in code
315
-
316
- ```java
317
- if (currentNode.hasPermission("jcr:write")) { }
318
-
319
- // In JSP
320
- <c:if test="${jcr:hasPermission(currentNode, 'jcr:write')}">...</c:if>
321
- ```
322
-
323
- ### Standard JCR permissions
324
-
325
- | Permission | Description |
326
- |------------|-------------|
327
- | `jcr:read` | Read node and properties |
328
- | `jcr:write` | Modify properties and children |
329
- | `jcr:addChildNodes` | Add child nodes |
330
- | `jcr:removeNode` | Delete the node |
331
- | `jcr:modifyProperties` | Modify properties |
@@ -1,273 +0,0 @@
1
- # Jahia Content Types (CND) Reference
2
-
3
- ## Table of Contents
4
- 1. [CND file basics](#1-cnd-file-basics)
5
- 2. [Property types and selectors](#2-property-types-and-selectors)
6
- 3. [Property keywords](#3-property-keywords)
7
- 4. [Child node declarations](#4-child-node-declarations)
8
- 5. [Mixins](#5-mixins)
9
- 6. [Key built-in mixins reference](#6-key-built-in-mixins-reference)
10
- 7. [Choicelist initializers](#7-choicelist-initializers)
11
- 8. [Enhancing content types for editors](#8-enhancing-content-types-for-editors)
12
- 9. [Modifying existing definitions](#9-modifying-existing-definitions)
13
- 10. [Module definition checks](#10-module-definition-checks)
14
-
15
- ---
16
-
17
- ## 1. CND file basics
18
-
19
- CND = Compact Namespace and Node Type Definition (Apache Jackrabbit standard).
20
-
21
- File location: `src/main/resources/META-INF/definitions.cnd`
22
-
23
- ### Namespace declaration (required first)
24
- ```cnd
25
- <ns = 'http://www.example.org/ns/1.0'>
26
- ```
27
-
28
- Jahia built-in namespaces:
29
- - `<jnt = 'http://www.jahia.org/jahia/nt/1.0'>` — node types
30
- - `<jmix = 'http://www.jahia.org/jahia/mix/1.0'>` — mixins
31
- - `<j = 'http://www.jahia.org/jahia/1.0'>` — core properties
32
- - `<mix = 'http://www.jcp.org/jcr/mix/1.0'>` — JCR standard mixins
33
-
34
- ### Minimal content type definition
35
- ```cnd
36
- <myns = 'http://www.example.org/myns/1.0'>
37
-
38
- [myns:myContent] > jnt:content, jmix:editorialContent
39
- - title (string) i18n mandatory
40
- - body (string, richtext) i18n
41
- - publishDate (date)
42
- ```
43
-
44
- All user-editable content types MUST inherit from `jnt:content`.
45
- Add `jmix:editorialContent` to make the type visible in jContent.
46
-
47
- ---
48
-
49
- ## 2. Property types and selectors
50
-
51
- ### Base property types
52
-
53
- | CND type | Content Editor renders as |
54
- |----------|--------------------------|
55
- | `string` | Text input |
56
- | `long` | Number field (integer) |
57
- | `double` | Number field (decimal) |
58
- | `boolean` | Checkbox |
59
- | `date` | Date picker |
60
- | `weakreference` | Node picker (UUID reference, not enforced) |
61
-
62
- ### String selectors
63
-
64
- | Selector | Renders as |
65
- |----------|-----------|
66
- | `string` | Plain text input |
67
- | `string, textarea` | Multi-line textarea |
68
- | `string, richtext` | CKEditor WYSIWYG |
69
- | `string, choicelist` | Dropdown list |
70
- | `string, color` | Color picker |
71
-
72
- ### Date selectors
73
-
74
- | Selector | Renders as |
75
- |----------|-----------|
76
- | `date, datetimepicker` | Date + time picker |
77
- | `date, datepicker` | Date-only picker |
78
-
79
- ---
80
-
81
- ## 3. Property keywords
82
-
83
- | Keyword | Effect |
84
- |---------|--------|
85
- | `i18n` / `internationalized` | Property has separate value per language |
86
- | `mandatory` | Field required before saving |
87
- | `multiple` | Allows multiple values |
88
- | `hidden` | Not shown in UI; only set programmatically |
89
- | `protected` | Read-only in UI; only set programmatically |
90
- | `autocreated` | Automatically created with default or blank value |
91
- | `primary` | Used as node label in JCR browser |
92
- | `indexed=no` | Not indexed for search |
93
- | `nofulltext` | Indexed but excluded from full-text search |
94
- | `boost=N` | Search weight multiplier (1.0–5.0) |
95
- | `analyzer=keyword` | Indexed word-by-word |
96
- | `facetable` | Enables faceted search on this property |
97
-
98
- ---
99
-
100
- ## 4. Child node declarations
101
-
102
- ```cnd
103
- [myns:article] > jnt:content, jmix:editorialContent
104
- + * (jmix:droppableContent) = jmix:droppableContent version # Any droppable content
105
- + media (jnt:file) # Single named child
106
- + * (jnt:paragraph) # Multiple children
107
- + section1 (jnt:contentList) # Named child list
108
- ```
109
-
110
- ---
111
-
112
- ## 5. Mixins
113
-
114
- A mixin adds properties/child nodes to a type without inheritance conflicts:
115
-
116
- ```cnd
117
- [myns:myMixin] mixin
118
- - extraProp (string) i18n
119
- ```
120
-
121
- Apply to a content type:
122
- ```cnd
123
- [myns:article] > jnt:content, jmix:editorialContent, myns:myMixin
124
- ```
125
-
126
- Create a custom component category:
127
- ```cnd
128
- <mymix = 'http://example.org/mymix/1.0'>
129
-
130
- [mymix:myComponents] > jmix:droppableContent mixin
131
- ```
132
-
133
- ---
134
-
135
- ## 6. Key built-in mixins reference
136
-
137
- ### Content visibility / organization
138
-
139
- | Mixin | Purpose |
140
- |-------|---------|
141
- | `jmix:editorialContent` | Makes type visible in jContent; enables versioning |
142
- | `jmix:droppableContent` | Base for component category folders |
143
- | `jmix:list` | Declares a list component with built-in mechanisms |
144
- | `mix:title` | Syncs system name with `jcr:title` |
145
- | `jmix:mainResource` | Enables full-page display |
146
- | `jmix:hiddenNode` | Node not visible in Jahia managers |
147
-
148
- ### Content behavior
149
-
150
- | Mixin | Purpose |
151
- |-------|---------|
152
- | `jmix:cache` | Exposes cache expiration controls in the editor UI |
153
- | `jmix:bindedComponent` | Defines a component that binds/links to another component |
154
-
155
- ### Component categories (out-of-the-box)
156
-
157
- | Mixin | Component folder |
158
- |-------|-----------------|
159
- | `jmix:basicContent` | Content > Basic |
160
- | `jmix:multimediaContent` | Content > Multimedia |
161
- | `jmix:structuredContent` | Content > Structured |
162
- | `jmix:listContent` | Lists |
163
- | `jmix:siteComponent` | Site Components |
164
- | `jmix:editorialContent` | All editorial content |
165
-
166
- ---
167
-
168
- ## 7. Choicelist initializers
169
-
170
- ### Built-in initializers
171
-
172
- ```cnd
173
- # Static values from resource bundle
174
- - contract (string, choicelist[resourceBundle]) < contract1, contract2, contract3
175
-
176
- # JCR node tree
177
- - theme (weakreference, choicelist[nodes='$currentSite/files/themes;jnt:folder'])
178
- - category (weakreference, choicelist[nodes='/sites/systemsite/categories;jnt:category'])
179
-
180
- # Chained initializers
181
- - view (string, choicelist[templates,resourceBundle,image])
182
- ```
183
-
184
- **Resource bundle keys format:**
185
- ```properties
186
- jnt_article.contract.contract1 = Fixed-term contract
187
- jnt_article.contract.contract2 = Indefinite duration
188
- ```
189
- Format: `{nodeTypeName_with_colon_as_underscore}.{propertyName}.{value} = Label`
190
-
191
- ### Custom choicelist initializer
192
-
193
- ```java
194
- @Component(service = {ModuleChoiceListInitializer.class})
195
- public class MyChoiceListInitializer implements ModuleChoiceListInitializer {
196
-
197
- @Override
198
- public String getKey() {
199
- return "myCustomList"; // Used in CND as choicelist[myCustomList]
200
- }
201
-
202
- @Override
203
- public List<ChoiceListValue> getChoiceListValues(
204
- ExtendedPropertyDefinition epd, String param,
205
- List<ChoiceListValue> values, Locale locale,
206
- Map<String, Object> context) {
207
- List<ChoiceListValue> result = new ArrayList<>();
208
- result.add(new ChoiceListValue("Display Label", "storedValue"));
209
- return result;
210
- }
211
- }
212
- ```
213
-
214
- ---
215
-
216
- ## 8. Enhancing content types for editors
217
-
218
- ### Labels and i18n
219
-
220
- ```properties
221
- # In src/main/resources/resources/ModuleName.properties
222
- myns_myContent.title = Title
223
- myns_myContent.body = Body text
224
- myns_myContent.publishDate = Publication date
225
- ```
226
-
227
- ### Icons
228
- Place at `src/main/resources/icons/myns_myContent.png` (replace `:` with `_`).
229
-
230
- ### Constraints
231
- ```cnd
232
- - size (string) < 'small', 'medium', 'large'
233
- - rating (long) < '[1,5]'
234
- ```
235
-
236
- ---
237
-
238
- ## 9. Modifying existing definitions
239
-
240
- ### Safe modifications (non-destructive)
241
- - Adding new optional properties to an existing type
242
- - Adding a new mixin to an existing type
243
- - Adding new child node definitions
244
- - Changing property constraints or default values
245
-
246
- ### Dangerous modifications (require migration)
247
- - Renaming a property
248
- - Changing a property type (e.g., string to date)
249
- - Removing a property that has existing content
250
- - Changing the supertype hierarchy
251
-
252
- ### Overriding built-in definitions
253
-
254
- ```cnd
255
- [myns:pageExtension] mixin
256
- extends = jnt:page
257
- - myCustomProp (string) i18n
258
- ```
259
-
260
- ### Migration scripts
261
-
262
- Groovy scripts in `src/main/resources/META-INF/patches/` run once on deployment.
263
- Naming convention: `7.0.0.0-SNAPSHOT-1_myMigration.groovy`
264
-
265
- ---
266
-
267
- ## 10. Module definition checks
268
-
269
- When deploying a module, Jahia checks CND changes. To bypass during development (NOT for production):
270
- ```properties
271
- # In jahia.properties
272
- jahia.jackrabbit.overrideNodeTypes = true
273
- ```