@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,465 +0,0 @@
1
- # Jahia JCR API Reference
2
-
3
- ## Table of contents
4
- 1. [JCR Java API — sessions](#jcr-java-api--sessions)
5
- 2. [CRUD operations](#crud-operations)
6
- 3. [Auto-splitting nodes](#auto-splitting-nodes)
7
- 4. [Property interceptors](#property-interceptors)
8
- 5. [RESTful JCR access](#restful-jcr-access)
9
- 6. [JAX-RS custom endpoints](#jax-rs-custom-endpoints)
10
- 7. [Actions (legacy)](#actions-legacy)
11
-
12
- ---
13
-
14
- ## JCR Java API — sessions
15
-
16
- Everything in the JCR happens within a session, opened for **one user**, **one workspace** (`default`/`EDIT` or `live`/`LIVE`), and **one language**. Non-internationalized properties are readable without a language; i18n properties require the session language.
17
-
18
- ### Getting a session
19
-
20
- **Inside an Action** — the session is passed as a parameter:
21
-
22
- ```java
23
- public ActionResult doExecute(HttpServletRequest req, RenderContext renderContext,
24
- Resource resource, JCRSessionWrapper session,
25
- Map<String, List<String>> parameters, URLResolver urlResolver) throws Exception {
26
- // use session directly
27
- }
28
- ```
29
-
30
- **From a service** — use `JCRTemplate`:
31
-
32
- ```java
33
- JCRTemplate.getInstance().doExecuteWithSystemSession(
34
- null, // user (null = system)
35
- Constants.EDIT_WORKSPACE, // "default"
36
- Locale.ENGLISH,
37
- new JCRCallback<Object>() {
38
- public Object doInJCR(JCRSessionWrapper session) throws RepositoryException {
39
- // ... your code here
40
- return null;
41
- }
42
- }
43
- );
44
- ```
45
-
46
- Use `Constants.LIVE_WORKSPACE` (`"live"`) to operate on published content.
47
-
48
- ---
49
-
50
- ## CRUD operations
51
-
52
- ### Create a node
53
-
54
- ```java
55
- JCRTemplate.getInstance().doExecuteWithSystemSession(null, Constants.EDIT_WORKSPACE, Locale.ENGLISH,
56
- new JCRCallback<Object>() {
57
- public Object doInJCR(JCRSessionWrapper session) throws RepositoryException {
58
- JCRNodeWrapper parent = session.getNode("/sites/mySite/contents/news");
59
- String nodeTitle = "My node";
60
- JCRNodeWrapper newNode = parent.addNode(nodeTitle, "jnt:news");
61
- newNode.setProperty("jcr:title", nodeTitle);
62
- newNode.setProperty("desc", "my node content");
63
- session.save(); // MUST save — changes are local until then
64
- return null;
65
- }
66
- }
67
- );
68
- ```
69
-
70
- Steps: open session → get parent → `parent.addNode(name, nodeType)` → set properties → `session.save()`.
71
-
72
- ### Read a node
73
-
74
- ```java
75
- JCRNodeWrapper node = session.getNode("/sites/mySite/contents/news");
76
- String title = node.getPropertyAsString("jcr:title");
77
- ```
78
-
79
- ### Update a property
80
-
81
- ```java
82
- JCRNodeWrapper node = session.getNode("/sites/mySite/contents/news/my-article");
83
- node.setProperty("jcr:title", "Updated title");
84
- session.save();
85
- ```
86
-
87
- ### Delete a node
88
-
89
- ```java
90
- JCRNodeWrapper node = session.getNode("/sites/mySite/contents/news/my-article");
91
- node.remove();
92
- session.save();
93
- ```
94
-
95
- ### Common pitfall
96
-
97
- **Always call `session.save()`** before your callback returns. Unsaved changes exist only in the local session context and are lost when the session closes.
98
-
99
- ---
100
-
101
- ## Auto-splitting nodes
102
-
103
- Auto-splitting avoids flat node collections becoming too large. Enable it by adding the `jmix:autoSplitFolders` mixin and specifying a split configuration.
104
-
105
- ### Split configuration syntax
106
-
107
- Semicolon-separated levels; each level is comma-separated tokens:
108
-
109
- ```
110
- <level1>;<level2>;<level3>
111
- ```
112
-
113
- Token types:
114
- - `constant,<name>` — fixed folder name
115
- - `property,<propertyName>` — value of the given property (`jcr:creator`, `jcr:nodename`, etc.)
116
- - `firstChars,<propertyName>,<count>` — first N characters of property value
117
- - `substring,<propertyName>,<start>-<end>` — zero-based substring
118
- - `date,<datePropertyName>,<SimpleDateFormat pattern>` — e.g. `date,jcr:created,yyyy`
119
-
120
- ### Example: split by author → year → month
121
-
122
- ```java
123
- import org.jahia.services.content.JCRAutoSplitUtils;
124
-
125
- JCRNodeWrapper filesNode = session.getNode("/shared/files");
126
- JCRAutoSplitUtils.enableAutoSplitting(
127
- filesNode,
128
- "property,jcr:creator;date,jcr:created,yyyy;date,jcr:created,MM",
129
- "jnt:contentList" // node type for split folders
130
- );
131
- ```
132
-
133
- Result: `/shared/files/sergiy/2020/07/report.pdf`
134
-
135
- ### Enable from business rules
136
-
137
- ```
138
- rule "Auto-split user activities node on creation"
139
- salience 101
140
- when
141
- A new node "activities" is created
142
- The node has a parent
143
- - the parent has the type jnt:user
144
- then
145
- Enable auto-splitting for subnodes of the node into folders of type jnt:contentList
146
- using configuration "date,jcr:created,yyyy;date,jcr:created,MM"
147
- end
148
- ```
149
-
150
- ---
151
-
152
- ## Property interceptors
153
-
154
- Interceptors catch all `get` and `set` operations on JCR properties. They can transform or reject values. Use cases: text filtering/moderation, auto-tagging, URL rewriting.
155
-
156
- ### Implementation pattern
157
-
158
- ```java
159
- @Component(immediate = true)
160
- public class PostFilteringInterceptor extends BaseInterceptor {
161
-
162
- private JCRStoreService jcrStoreService;
163
-
164
- @Activate
165
- public void start() {
166
- setRequiredTypes(Collections.singleton("String")); // only String properties
167
- setNodeTypes(Collections.singleton("jnt:post")); // only on jnt:post nodes
168
- jcrStoreService.addInterceptor(this);
169
- }
170
-
171
- @Deactivate
172
- public void stop() {
173
- jcrStoreService.removeInterceptor(this);
174
- }
175
-
176
- @Reference
177
- public void setJcrStoreService(JCRStoreService jcrStoreService) {
178
- this.jcrStoreService = jcrStoreService;
179
- }
180
-
181
- @Override
182
- public Value beforeSetValue(JCRNodeWrapper node, String name,
183
- ExtendedPropertyDefinition definition, Value originalValue)
184
- throws RepositoryException {
185
- String content = originalValue.getString();
186
- if (content == null || content.isEmpty()) return originalValue;
187
- String filtered = filter(content);
188
- return !filtered.equals(content)
189
- ? node.getSession().getValueFactory().createValue(filtered)
190
- : originalValue;
191
- }
192
-
193
- @Override
194
- public Value[] beforeSetValues(JCRNodeWrapper node, String name,
195
- ExtendedPropertyDefinition definition, Value[] originalValues)
196
- throws RepositoryException {
197
- Value[] result = new Value[originalValues.length];
198
- for (int i = 0; i < originalValues.length; i++) {
199
- result[i] = beforeSetValue(node, name, definition, originalValues[i]);
200
- }
201
- return result;
202
- }
203
-
204
- private String filter(String content) {
205
- // implement filtering logic
206
- return content;
207
- }
208
- }
209
- ```
210
-
211
- **Important**: Interceptors are disabled for unlocalized sessions. Declare as an OSGi `@Component(immediate=true)` and register/unregister via `JCRStoreService`.
212
-
213
- ---
214
-
215
- ## RESTful JCR access
216
-
217
- > **Deprecated** — the REST API is deprecated and will be removed in a future version. Use the GraphQL API instead.
218
-
219
- ### Base context
220
-
221
- ```
222
- /modules/api/jcr/v1/{workspace}/{language}/
223
- ```
224
-
225
- All URIs use `<basecontext>` = `/modules/api/jcr/v1`.
226
-
227
- ### URI encoding rules
228
-
229
- - `:` in property/node names → `__` (e.g., `jcr:uuid` → `jcr__uuid`)
230
- - Same-name siblings index → `--N` suffix (e.g., second `bar` child → `bar--2`)
231
-
232
- ### Entry points
233
-
234
- | Pattern | Description |
235
- |---------|-------------|
236
- | `/{workspace}/{lang}/nodes/{uuid}[/children\|mixins\|properties\|versions][/{name}]` | Access node by UUID |
237
- | `/{workspace}/{lang}/paths{/absolute/path}` | Access node by path |
238
- | `/{workspace}/{lang}/types/{type}` | List nodes by type (disabled by default) |
239
- | `/{workspace}/{lang}/query` | JCR-SQL2 query endpoint (disabled by default) |
240
- | `/{workspace}/{lang}/version` | API version info |
241
-
242
- ### Authentication
243
-
244
- - Browser session: log in to Jahia, session is inherited
245
- - Non-browser: `POST /cms/login?doLogin=true&restMode=true&username=X&password=Y&redirectActive=false` (cookie-based)
246
- - HTTP Basic auth: `Authorization: Basic <base64(user:pass)>`
247
- - Personal API token: `Authorization: APIToken <token>`
248
-
249
- ### HTTP operations
250
-
251
- ```
252
- GET <basecontext>/default/en/nodes/<uuid> → read node
253
- GET <basecontext>/default/en/nodes/<uuid>/children → list children
254
- GET <basecontext>/default/en/nodes/<uuid>/properties → list properties
255
- PUT <basecontext>/default/en/nodes/<uuid>/children/foo → create/update child node
256
- PUT <basecontext>/default/en/nodes/<uuid>/properties/jcr__title → create/update property
257
- DELETE <basecontext>/default/en/nodes/<uuid> → delete node
258
- POST <basecontext>/default/en/nodes/<uuid>/moveto/newName → rename node
259
- POST <basecontext>/default/en/paths/users/root/files → upload file (multipart)
260
- ```
261
-
262
- ### Example: create a child node
263
-
264
- ```
265
- PUT /modules/api/jcr/v1/default/en/nodes/27d671f6.../children/foo
266
- Content-Type: application/hal+json
267
-
268
- {
269
- "type": "jnt:bigText",
270
- "properties": { "text": { "value": "FOO!" } }
271
- }
272
- ```
273
-
274
- ### Example: add a mixin with properties
275
-
276
- ```
277
- PUT /modules/api/jcr/v1/default/en/nodes/eae598a3.../mixins/jmix__rating
278
- Content-Type: application/hal+json
279
-
280
- {
281
- "properties": {
282
- "j__lastVote": {"value": "-1"},
283
- "j__nbOfVotes": {"value": "100"},
284
- "j__sumOfVotes": {"value": "1000"}
285
- }
286
- }
287
- ```
288
-
289
- ### Batch delete properties
290
-
291
- ```
292
- DELETE /modules/api/jcr/v1/default/en/nodes/eae598a3.../properties
293
- Body: ["j__sumOfVotes", "j__nbOfVotes"]
294
- ```
295
-
296
- ### Security filter configuration for REST
297
-
298
- ```properties
299
- # karaf/etc/org.jahia.bundles.api.authorization-myapi.yml
300
- permission.myApiAccess.api=jcrestapi
301
- permission.myApiAccess.nodeType=nt:myNodeType1,nt:myNodeType2
302
- permission.myApiAccess.pathPattern=/sites/mysite/nodes/.*
303
- # Optional: require a specific permission
304
- permission.myApiAccess.requiredPermission=jcr:write
305
- # Or require a token scope
306
- permission.myApiAccess.scope=myApp
307
- ```
308
-
309
- ### Query endpoint (disabled by default)
310
-
311
- Enable via `jahia.find.disabled=false` in `jahia.properties`. Supports prepared queries registered as Spring `PreparedQuery` beans.
312
-
313
- ```
314
- POST /modules/api/jcr/v1/default/en/query
315
- {
316
- "query": "SELECT * FROM [nt:base]",
317
- "limit": 10,
318
- "offset": 1
319
- }
320
- ```
321
-
322
- Or using a named prepared query:
323
-
324
- ```
325
- POST /modules/api/jcr/v1/default/en/query
326
- {
327
- "queryName": "foo",
328
- "namedParameters": { "nodeType": "nt:%" }
329
- }
330
- ```
331
-
332
- ---
333
-
334
- ## JAX-RS custom endpoints
335
-
336
- Jahia bundles Jersey (JAX-RS 2) with an OSGi extender pattern. Register your endpoint via `pom.xml` bundle directives:
337
-
338
- ```xml
339
- <plugin>
340
- <groupId>org.apache.felix</groupId>
341
- <artifactId>maven-bundle-plugin</artifactId>
342
- <extensions>true</extensions>
343
- <configuration>
344
- <instructions>
345
- <Jahia-Depends>default,...</Jahia-Depends>
346
- <JAX-RS-Alias>/myendpoint</JAX-RS-Alias>
347
- <JAX-RS-Application>com.example.MyApplication</JAX-RS-Application>
348
- </instructions>
349
- </configuration>
350
- </plugin>
351
- ```
352
-
353
- Your endpoint will be accessible at `/modules/myendpoint/...`. Jahia authentication propagates automatically — the session credentials are available in the endpoint.
354
-
355
- Your `Application` class should extend Jersey's `ResourceConfig`:
356
-
357
- ```java
358
- @ApplicationPath("/")
359
- public class MyApplication extends ResourceConfig {
360
- public MyApplication() {
361
- packages("com.example.resources");
362
- }
363
- }
364
- ```
365
-
366
- ---
367
-
368
- ## Actions (legacy)
369
-
370
- > **Deprecated** — Jahia recommends using GraphQL for new development. Actions are still usable for simple isolated operations.
371
-
372
- Actions are triggered via `POST` to `/{nodePath}.{actionName}.do`.
373
-
374
- ### Minimal action implementation
375
-
376
- ```java
377
- @Component(service = RateContent.class)
378
- public class RateContent extends Action {
379
-
380
- @Activate
381
- public void activate() {
382
- setName("rate");
383
- // setRequireAuthenticatedUser(false); // allow unauthenticated
384
- // setRequiredPermission("addBlogEntry");
385
- // setRequiredWorkspace("default");
386
- }
387
-
388
- @Override
389
- public ActionResult doExecute(HttpServletRequest req, RenderContext renderContext,
390
- Resource resource, JCRSessionWrapper session,
391
- Map<String, List<String>> parameters, URLResolver urlResolver) throws Exception {
392
- // ... business logic
393
- return new ActionResult(HttpServletResponse.SC_OK, null, responseJson);
394
- }
395
- }
396
- ```
397
-
398
- ### URL pattern
399
-
400
- ```
401
- POST /cms/render/{workspace}/{lang}/{node/path}.{actionName}.do
402
- ```
403
-
404
- ### Key action parameters (hidden form fields)
405
-
406
- | Parameter | Purpose |
407
- |-----------|---------|
408
- | `jcrNodeType` | Type of node to create |
409
- | `jcrRedirectTo` | Redirect URL after action |
410
- | `jcrNewNodeOutputFormat` | Output format (default: `html`) |
411
- | `jcrMethodToCall` | `post` (required for tokenized forms) |
412
- | `jcrCaptcha` | Captcha response value |
413
-
414
- ### CSRF guard (Jahia 8.0.1+)
415
-
416
- All actions from Jahia pages have CSRF protection automatically. Actions called from outside a Jahia context (external systems) will fail unless excluded. See the knowledge-base article on CSRF errors for how to exclude an action.
417
-
418
- GET-based actions are blocked by default since 8.0.1. Allow explicitly:
419
-
420
- ```java
421
- // In Spring XML: requiredMethods="GET,POST"
422
- ```
423
-
424
- ### Tokenized forms for live-workspace content creation
425
-
426
- Wrap forms in `<template:tokenizedForm>` to allow guest users to submit content:
427
-
428
- ```jsp
429
- <template:tokenizedForm>
430
- <form action="${url.base}${boundComponent.path}.addComment.do" method="post">
431
- <input type="hidden" name="jcrNodeType" value="jnt:post"/>
432
- <input type="hidden" name="jcrRedirectTo" value="${url.base}${renderContext.mainResource.node.path}"/>
433
- <!-- ... fields ... -->
434
- </form>
435
- </template:tokenizedForm>
436
- ```
437
-
438
- **Warning**: Tokenized forms execute with system user — they bypass all permission checks. Validate inputs inside the action itself.
439
-
440
- ### Chaining actions
441
-
442
- ```html
443
- <form action="mynode.chain.do" method="post">
444
- <input type="hidden" name="chainOfAction" value="mail,redirect"/>
445
- </form>
446
- ```
447
-
448
- ### File upload in actions
449
-
450
- ```java
451
- final FileUpload fu = (FileUpload) req.getAttribute(FileUpload.FILEUPLOAD_ATTRIBUTE);
452
- DiskFileItem inputFile = fu.getFileItems().get("fileField");
453
- ```
454
-
455
- ### BackgroundAction interface
456
-
457
- Implement `BackgroundAction` to allow the action to be called from rules or GWT UI:
458
-
459
- ```java
460
- public class SendAsNewsletterAction extends Action implements BackgroundAction {
461
- public void executeBackgroundAction(JCRNodeWrapper node) {
462
- // typically does a local POST to the action URL using a token
463
- }
464
- }
465
- ```