@jskit-ai/agent-docs 0.1.149 → 0.1.150

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 (227) hide show
  1. package/guide/agent/app-setup/existing-application-migration.md +8 -6
  2. package/guide/agent/app-setup/initial-scaffolding.md +9 -7
  3. package/guide/agent/app-setup/quickstart.md +9 -6
  4. package/guide/agent/framework/application-operations.md +91 -0
  5. package/guide/agent/framework/crud-operations.md +83 -0
  6. package/guide/agent/framework/material-3.md +112 -0
  7. package/guide/agent/framework/ui-operations.md +78 -0
  8. package/guide/agent/index.md +13 -3
  9. package/package.json +1 -1
  10. package/patterns/feature-package/example/booking-engine/package.json +1 -1
  11. package/patterns/minimal-foundation/example/AGENTS.md +8 -8
  12. package/patterns/minimal-foundation/example/package.json +4 -5
  13. package/patterns/shell-foundation/example/AGENTS.md +8 -8
  14. package/patterns/shell-foundation/example/package.json +5 -6
  15. package/patterns/shell-foundation/example/packages/main/package.json +1 -1
  16. package/reference/autogen/PATTERN_INDEX.md +61 -61
  17. package/skills/jskit/SKILL.md +8 -5
  18. package/skills/jskit/references/app-operations.md +12 -11
  19. package/skills/jskit/references/crud-operations.md +10 -6
  20. package/skills/jskit/references/existing-application-migration.md +9 -12
  21. package/skills/jskit/references/material-3.md +2 -0
  22. package/skills/jskit/references/pattern-index.md +61 -61
  23. package/skills/jskit/references/patterns/app/minimal-foundation/PATTERN.md +105 -0
  24. package/skills/jskit/references/patterns/app/minimal-foundation/example/.nvmrc +1 -0
  25. package/skills/jskit/references/patterns/app/minimal-foundation/example/AGENTS.md +17 -0
  26. package/skills/jskit/references/patterns/app/minimal-foundation/example/Procfile +2 -0
  27. package/skills/jskit/references/patterns/app/minimal-foundation/example/app.json +14 -0
  28. package/skills/jskit/references/patterns/app/minimal-foundation/example/bin/develop.js +71 -0
  29. package/skills/jskit/references/patterns/app/minimal-foundation/example/bin/server.js +8 -0
  30. package/skills/jskit/references/patterns/app/minimal-foundation/example/config/public.js +40 -0
  31. package/skills/jskit/references/patterns/app/minimal-foundation/example/config/server.js +1 -0
  32. package/skills/jskit/references/patterns/app/minimal-foundation/example/config/surfaceAccessPolicies.js +3 -0
  33. package/skills/jskit/references/patterns/app/minimal-foundation/example/eslint.config.mjs +19 -0
  34. package/skills/jskit/references/patterns/app/minimal-foundation/example/favicon.svg +7 -0
  35. package/skills/jskit/references/patterns/app/minimal-foundation/example/gitignore +9 -0
  36. package/skills/jskit/references/patterns/app/minimal-foundation/example/index.html +13 -0
  37. package/skills/jskit/references/patterns/app/minimal-foundation/example/jsconfig.json +8 -0
  38. package/skills/jskit/references/patterns/app/minimal-foundation/example/package.json +62 -0
  39. package/skills/jskit/references/patterns/app/minimal-foundation/example/packages/main/package.json +42 -0
  40. package/skills/jskit/references/patterns/app/minimal-foundation/example/packages/main/src/shared/index.js +10 -0
  41. package/skills/jskit/references/patterns/app/minimal-foundation/example/packages/main/src/shared/schemas/index.js +22 -0
  42. package/skills/jskit/references/patterns/app/minimal-foundation/example/playwright.config.mjs +31 -0
  43. package/skills/jskit/references/patterns/app/minimal-foundation/example/server/lib/runtimeEnv.js +45 -0
  44. package/skills/jskit/references/patterns/app/minimal-foundation/example/server/lib/surfaceRuntime.js +10 -0
  45. package/skills/jskit/references/patterns/app/minimal-foundation/example/server.js +195 -0
  46. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/App.vue +13 -0
  47. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/main.js +85 -0
  48. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/pages/home/index.vue +48 -0
  49. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/pages/home.vue +13 -0
  50. package/skills/jskit/references/patterns/app/minimal-foundation/example/src/views/NotFound.vue +13 -0
  51. package/skills/jskit/references/patterns/app/minimal-foundation/example/tests/client/smoke.vitest.js +7 -0
  52. package/skills/jskit/references/patterns/app/minimal-foundation/example/tests/e2e/base-shell.spec.ts +23 -0
  53. package/skills/jskit/references/patterns/app/minimal-foundation/example/tests/server/smoke.test.js +16 -0
  54. package/skills/jskit/references/patterns/app/minimal-foundation/example/vite.config.mjs +80 -0
  55. package/skills/jskit/references/patterns/app/shell-foundation/PATTERN.md +111 -0
  56. package/skills/jskit/references/patterns/app/shell-foundation/example/.nvmrc +1 -0
  57. package/skills/jskit/references/patterns/app/shell-foundation/example/AGENTS.md +17 -0
  58. package/skills/jskit/references/patterns/app/shell-foundation/example/Procfile +2 -0
  59. package/skills/jskit/references/patterns/app/shell-foundation/example/app.json +14 -0
  60. package/skills/jskit/references/patterns/app/shell-foundation/example/bin/develop.js +71 -0
  61. package/skills/jskit/references/patterns/app/shell-foundation/example/bin/server.js +8 -0
  62. package/skills/jskit/references/patterns/app/shell-foundation/example/config/public.js +40 -0
  63. package/skills/jskit/references/patterns/app/shell-foundation/example/config/server.js +1 -0
  64. package/skills/jskit/references/patterns/app/shell-foundation/example/config/surfaceAccessPolicies.js +3 -0
  65. package/skills/jskit/references/patterns/app/shell-foundation/example/eslint.config.mjs +19 -0
  66. package/skills/jskit/references/patterns/app/shell-foundation/example/favicon.svg +7 -0
  67. package/skills/jskit/references/patterns/app/shell-foundation/example/gitignore +9 -0
  68. package/skills/jskit/references/patterns/app/shell-foundation/example/index.html +13 -0
  69. package/skills/jskit/references/patterns/app/shell-foundation/example/jsconfig.json +8 -0
  70. package/skills/jskit/references/patterns/app/shell-foundation/example/package.json +64 -0
  71. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/package.json +56 -0
  72. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/src/client/index.js +9 -0
  73. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/src/client/providers/MainClientProvider.js +18 -0
  74. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/src/shared/index.js +10 -0
  75. package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/src/shared/schemas/index.js +22 -0
  76. package/skills/jskit/references/patterns/app/shell-foundation/example/playwright.config.mjs +31 -0
  77. package/skills/jskit/references/patterns/app/shell-foundation/example/server/lib/runtimeEnv.js +45 -0
  78. package/skills/jskit/references/patterns/app/shell-foundation/example/server/lib/surfaceRuntime.js +10 -0
  79. package/skills/jskit/references/patterns/app/shell-foundation/example/server.js +195 -0
  80. package/skills/jskit/references/patterns/app/shell-foundation/example/src/App.vue +11 -0
  81. package/skills/jskit/references/patterns/app/shell-foundation/example/src/components/ShellLayout.vue +12 -0
  82. package/skills/jskit/references/patterns/app/shell-foundation/example/src/components/menus/MenuLinkItem.vue +30 -0
  83. package/skills/jskit/references/patterns/app/shell-foundation/example/src/components/menus/SurfaceAwareMenuLinkItem.vue +42 -0
  84. package/skills/jskit/references/patterns/app/shell-foundation/example/src/components/menus/TabLinkItem.vue +42 -0
  85. package/skills/jskit/references/patterns/app/shell-foundation/example/src/error.js +19 -0
  86. package/skills/jskit/references/patterns/app/shell-foundation/example/src/main.js +85 -0
  87. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home/index.vue +116 -0
  88. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home/settings/general/index.vue +40 -0
  89. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home/settings/index.vue +7 -0
  90. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home/settings.vue +109 -0
  91. package/skills/jskit/references/patterns/app/shell-foundation/example/src/pages/home.vue +20 -0
  92. package/skills/jskit/references/patterns/app/shell-foundation/example/src/placement.js +56 -0
  93. package/skills/jskit/references/patterns/app/shell-foundation/example/src/placementTopology.js +149 -0
  94. package/skills/jskit/references/patterns/app/shell-foundation/example/src/views/NotFound.vue +13 -0
  95. package/skills/jskit/references/patterns/app/shell-foundation/example/tests/client/smoke.vitest.js +7 -0
  96. package/skills/jskit/references/patterns/app/shell-foundation/example/tests/e2e/adaptive-shell.spec.ts +10 -0
  97. package/skills/jskit/references/patterns/app/shell-foundation/example/tests/e2e/base-shell.spec.ts +23 -0
  98. package/skills/jskit/references/patterns/app/shell-foundation/example/tests/server/smoke.test.js +16 -0
  99. package/skills/jskit/references/patterns/app/shell-foundation/example/vite.config.mjs +80 -0
  100. package/skills/jskit/references/patterns/assistant/assistant-surface/PATTERN.md +77 -0
  101. package/skills/jskit/references/patterns/assistant/assistant-surface/example/config/public.js +19 -0
  102. package/skills/jskit/references/patterns/assistant/assistant-surface/example/config/server.js +9 -0
  103. package/skills/jskit/references/patterns/assistant/assistant-surface/example/src/pages/admin/assistant/index.vue +7 -0
  104. package/skills/jskit/references/patterns/assistant/assistant-surface/example/src/pages/admin/settings/assistant/index.vue +7 -0
  105. package/skills/jskit/references/patterns/assistant/assistant-surface/example/src/placement.js +38 -0
  106. package/skills/jskit/references/patterns/auth/auth-surface/PATTERN.md +90 -0
  107. package/skills/jskit/references/patterns/auth/auth-surface/example/src/pages/auth/login.vue +17 -0
  108. package/skills/jskit/references/patterns/auth/auth-surface/example/src/pages/auth/reset-password.vue +17 -0
  109. package/skills/jskit/references/patterns/auth/auth-surface/example/src/pages/auth/signout.vue +17 -0
  110. package/skills/jskit/references/patterns/auth/auth-surface/example/src/runtime/authGuardRuntime.js +7 -0
  111. package/skills/jskit/references/patterns/auth/auth-surface/example/src/runtime/authHttpClient.js +1 -0
  112. package/skills/jskit/references/patterns/auth/auth-surface/example/src/runtime/useSignOut.js +1 -0
  113. package/skills/jskit/references/patterns/auth/auth-surface/example/src/views/auth/LoginView.vue +7 -0
  114. package/skills/jskit/references/patterns/auth/auth-surface/example/src/views/auth/ResetPasswordView.vue +7 -0
  115. package/skills/jskit/references/patterns/auth/auth-surface/example/src/views/auth/SignOutView.vue +7 -0
  116. package/skills/jskit/references/patterns/auth/auth-surface/example/tools/preview-identity +5 -0
  117. package/skills/jskit/references/patterns/auth/supabase-auth/PATTERN.md +67 -0
  118. package/skills/jskit/references/patterns/auth/supabase-auth/example/.env.example +4 -0
  119. package/skills/jskit/references/patterns/auth/supabase-auth/example/config/server.js +11 -0
  120. package/skills/jskit/references/patterns/auth/supabase-auth/example/package.json +7 -0
  121. package/skills/jskit/references/patterns/console/console-surface/PATTERN.md +58 -0
  122. package/skills/jskit/references/patterns/console/console-surface/example/src/pages/console/index.vue +62 -0
  123. package/skills/jskit/references/patterns/console/console-surface/example/src/pages/console/settings/index.vue +17 -0
  124. package/skills/jskit/references/patterns/console/console-surface/example/src/pages/console/settings.vue +95 -0
  125. package/skills/jskit/references/patterns/console/console-surface/example/src/pages/console.vue +20 -0
  126. package/skills/jskit/references/patterns/crud/crud-screen-set/PATTERN.md +88 -0
  127. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookEditPage.vue +54 -0
  128. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookFormFields.vue +52 -0
  129. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookListPage.vue +54 -0
  130. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookNewPage.vue +45 -0
  131. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookViewPage.vue +50 -0
  132. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/formFields.js +31 -0
  133. package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/listExtensions.js +9 -0
  134. package/skills/jskit/references/patterns/crud/json-api-resource-package/PATTERN.md +160 -0
  135. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/migrations/20260815000000_books.cjs +22 -0
  136. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/package.json +41 -0
  137. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/server/BooksFeature.js +13 -0
  138. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/shared/bookResource.js +83 -0
  139. package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/shared/index.js +1 -0
  140. package/skills/jskit/references/patterns/crud/resource-contract/PATTERN.md +102 -0
  141. package/skills/jskit/references/patterns/crud/resource-contract/example/bookResource.js +87 -0
  142. package/skills/jskit/references/patterns/database/mysql-application/PATTERN.md +80 -0
  143. package/skills/jskit/references/patterns/database/mysql-application/example/.env.example +5 -0
  144. package/skills/jskit/references/patterns/database/mysql-application/example/.github/workflows/verify.yml +39 -0
  145. package/skills/jskit/references/patterns/database/mysql-application/example/knexfile.js +11 -0
  146. package/skills/jskit/references/patterns/database/mysql-application/example/package.json +13 -0
  147. package/skills/jskit/references/patterns/database/mysql-application/example/scripts/prepare-database.js +3 -0
  148. package/skills/jskit/references/patterns/database/postgres-application/PATTERN.md +80 -0
  149. package/skills/jskit/references/patterns/database/postgres-application/example/.env.example +5 -0
  150. package/skills/jskit/references/patterns/database/postgres-application/example/.github/workflows/verify.yml +38 -0
  151. package/skills/jskit/references/patterns/database/postgres-application/example/knexfile.js +11 -0
  152. package/skills/jskit/references/patterns/database/postgres-application/example/package.json +13 -0
  153. package/skills/jskit/references/patterns/database/postgres-application/example/scripts/prepare-database.js +3 -0
  154. package/skills/jskit/references/patterns/mobile/android-application/PATTERN.md +71 -0
  155. package/skills/jskit/references/patterns/mobile/android-application/example/capacitor.config.json +10 -0
  156. package/skills/jskit/references/patterns/realtime/realtime-application/PATTERN.md +69 -0
  157. package/skills/jskit/references/patterns/realtime/realtime-application/example/.env.example +1 -0
  158. package/skills/jskit/references/patterns/realtime/realtime-application/example/package.json +8 -0
  159. package/skills/jskit/references/patterns/realtime/realtime-application/example/src/placement.js +17 -0
  160. package/skills/jskit/references/patterns/server/feature-package/PATTERN.md +108 -0
  161. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/package.json +48 -0
  162. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/src/server/BookingEngineProvider.js +33 -0
  163. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/src/server/actions.js +26 -0
  164. package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/src/server/inputSchemas.js +19 -0
  165. package/skills/jskit/references/patterns/server/feature-package/example/variations/AvailabilityEngineProvider.js +31 -0
  166. package/skills/jskit/references/patterns/server/feature-package/example/variations/InvoiceRollupProvider.js +36 -0
  167. package/skills/jskit/references/patterns/server/feature-package/example/variations/customKnexRepository.js +34 -0
  168. package/skills/jskit/references/patterns/server/feature-package/example/variations/orchestratorService.js +23 -0
  169. package/skills/jskit/references/patterns/shell/application-shell/PATTERN.md +66 -0
  170. package/skills/jskit/references/patterns/shell/application-shell/example/expected-existing/src/App.vue +13 -0
  171. package/skills/jskit/references/patterns/shell/application-shell/example/expected-existing/src/pages/home/index.vue +48 -0
  172. package/skills/jskit/references/patterns/shell/application-shell/example/expected-existing/src/pages/home.vue +13 -0
  173. package/skills/jskit/references/patterns/shell/application-shell/example/src/App.vue +11 -0
  174. package/skills/jskit/references/patterns/shell/application-shell/example/src/components/ShellLayout.vue +13 -0
  175. package/skills/jskit/references/patterns/shell/application-shell/example/src/components/menus/MenuLinkItem.vue +30 -0
  176. package/skills/jskit/references/patterns/shell/application-shell/example/src/components/menus/SurfaceAwareMenuLinkItem.vue +42 -0
  177. package/skills/jskit/references/patterns/shell/application-shell/example/src/components/menus/TabLinkItem.vue +42 -0
  178. package/skills/jskit/references/patterns/shell/application-shell/example/src/error.js +19 -0
  179. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home/index.vue +106 -0
  180. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home/settings/general/index.vue +40 -0
  181. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home/settings/index.vue +7 -0
  182. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home/settings.vue +109 -0
  183. package/skills/jskit/references/patterns/shell/application-shell/example/src/pages/home.vue +20 -0
  184. package/skills/jskit/references/patterns/shell/application-shell/example/src/placement.js +56 -0
  185. package/skills/jskit/references/patterns/shell/application-shell/example/src/placementTopology.js +149 -0
  186. package/skills/jskit/references/patterns/shell/application-shell/example/tests/e2e/adaptive-shell.spec.ts +10 -0
  187. package/skills/jskit/references/patterns/ui/page-and-placement/PATTERN.md +76 -0
  188. package/skills/jskit/references/patterns/ui/page-and-placement/example/packages/main/src/client/providers/MainClientProvider.js +14 -0
  189. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/components/SyncStatusElement.vue +16 -0
  190. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/pages/home/reports/activity.vue +8 -0
  191. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/pages/home/reports/index.vue +7 -0
  192. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/pages/home/reports/overview.vue +8 -0
  193. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/pages/home/reports.vue +33 -0
  194. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/placement.js +52 -0
  195. package/skills/jskit/references/patterns/ui/page-and-placement/example/src/placementTopology.js +29 -0
  196. package/skills/jskit/references/patterns/users/account-settings/PATTERN.md +61 -0
  197. package/skills/jskit/references/patterns/users/account-settings/example/src/components/account/settings/AccountSettingsNotificationsSection.vue +81 -0
  198. package/skills/jskit/references/patterns/users/account-settings/example/src/components/account/settings/AccountSettingsPreferencesSection.vue +151 -0
  199. package/skills/jskit/references/patterns/users/account-settings/example/src/components/account/settings/AccountSettingsProfileSection.vue +120 -0
  200. package/skills/jskit/references/patterns/users/account-settings/example/src/pages/account/index.vue +17 -0
  201. package/skills/jskit/references/patterns/users/user-administration-server/PATTERN.md +64 -0
  202. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/package.json +42 -0
  203. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/server/UsersFeature.js +13 -0
  204. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/shared/index.js +1 -0
  205. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/shared/userResource.js +69 -0
  206. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/package.json +43 -0
  207. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/server/UsersWorkspaceFeature.js +22 -0
  208. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/shared/index.js +1 -0
  209. package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/shared/userResource.js +56 -0
  210. package/skills/jskit/references/patterns/workspaces/workspace-server/PATTERN.md +60 -0
  211. package/skills/jskit/references/patterns/workspaces/workspace-server/example/config/roles.js +27 -0
  212. package/skills/jskit/references/patterns/workspaces/workspace-server/example/packages/main/src/server/email/workspaceInviteEmail.js +23 -0
  213. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/PATTERN.md +63 -0
  214. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/packages/main/src/client/components/AccountPendingInvitesCue.vue +106 -0
  215. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/packages/main/src/client/components/AccountSettingsInvitesSection.vue +7 -0
  216. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/components/WorkspaceNotFoundCard.vue +53 -0
  217. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/composables/useWorkspaceNotFoundState.js +41 -0
  218. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/pages/admin/members/index.vue +7 -0
  219. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/pages/admin/workspace/settings/index.vue +23 -0
  220. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/pages/admin/workspace/settings.vue +95 -0
  221. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/pages/invite/[token].vue +7 -0
  222. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/surfaces/admin/index.vue +85 -0
  223. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/surfaces/admin/root.vue +20 -0
  224. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/surfaces/app/index.vue +46 -0
  225. package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/surfaces/app/root.vue +20 -0
  226. package/skills/jskit/references/ui-operations.md +5 -3
  227. package/templates/app/AGENTS.md +8 -8
@@ -50,12 +50,14 @@ generic CRUD merely to make the structure look uniform.
50
50
 
51
51
  ## 2. Plan one coordinated dependency and capability graph
52
52
 
53
- Use the installed JSKIT pattern index and package metadata to select the
54
- smallest complete package set. Plan the top-level dependencies and their
55
- ordinary npm closure before changing the lockfile, then install that planned
56
- closure once. Review `package.json` and the lockfile as source changes. Adopt
57
- the supported package-graph scripts and run `npm run jskit:update` before
58
- changing application source; see the **Upgrade JSKIT** guide in the agent docs.
53
+ Use the [JSKIT source pattern library](/patterns/) and installed package
54
+ metadata to select the smallest complete package set. Do not install an
55
+ unrelated runtime package only to read its pattern. Plan the top-level
56
+ dependencies and their ordinary npm closure before changing the lockfile, then
57
+ install that planned closure once. Review `package.json` and the lockfile as
58
+ source changes. Adopt the supported package-graph scripts and run `npm run
59
+ jskit:update` before changing application source; see the **Upgrade JSKIT**
60
+ guide in the agent docs.
59
61
  The updater aligns root and workspace declarations to one published release
60
62
  cohort, installs once at the project root, and verifies the resulting lockfile.
61
63
  It does not regenerate or synchronize application source.
@@ -13,7 +13,8 @@ agent can copy, adapt, compose, or use as evidence.
13
13
 
14
14
  ## The adaptive-shell foundation
15
15
 
16
- `app/shell-foundation` is the normal browser-product baseline. It includes:
16
+ [`app/shell-foundation`](/patterns/app/shell-foundation) is the normal
17
+ browser-product baseline. It includes:
17
18
 
18
19
  - Fastify server and health endpoint
19
20
  - Vue/Vite client bootstrap
@@ -29,15 +30,16 @@ when it is wrong for the product.
29
30
 
30
31
  ## The minimal foundation
31
32
 
32
- `app/minimal-foundation` keeps the same server/client/package boundaries but
33
- does not install the full adaptive shell. Use it for deliberately small or
34
- unusual products, not as a temporary hurdle before installing what was already
35
- known to be required.
33
+ [`app/minimal-foundation`](/patterns/app/minimal-foundation) keeps the same
34
+ server/client/package boundaries but does not install the full adaptive shell.
35
+ Use it for deliberately small or unusual products, not as a temporary hurdle
36
+ before installing what was already known to be required.
36
37
 
37
38
  ## Safe realization inside an existing repository
38
39
 
39
- Read the entire selected `PATTERN.md` first. Copy or author files directly in
40
- the initialized project. Always preserve `.git`; when present, also preserve
40
+ Read the entire selected `PATTERN.md` first. Each public pattern page links its
41
+ complete example source tree. Copy or author files directly in the initialized
42
+ project. Always preserve `.git`; when present, also preserve
41
43
  existing project and agent context, including roots such as:
42
44
 
43
45
  ```text
@@ -17,19 +17,22 @@ cd exampleapp
17
17
  git init -b main
18
18
  ```
19
19
 
20
- Ask your agent to read the installed JSKIT skill, then describe the product in
21
- normal language. The opening conversation should make the product direction
20
+ Give your agent the [JSKIT framework guide](/guide/) and describe the product
21
+ in normal language. The opening conversation should make the product direction
22
22
  and any material technology choice clear. Explicitly choose JSKIT and any
23
23
  database integration you actually need. JSKIT does not ask the same questions
24
- again through a framework questionnaire.
24
+ again through a framework questionnaire. An agent host may offer its own
25
+ optional skills, but JSKIT does not require one.
25
26
 
26
27
  ## Select an application foundation
27
28
 
28
- The installed JSKIT skill and generated pattern index expose two initial
29
+ The [public source pattern library](/patterns/) exposes two initial
29
30
  foundations:
30
31
 
31
- - `app/shell-foundation` for the normal responsive application shell
32
- - `app/minimal-foundation` for an intentionally smaller foundation
32
+ - [`app/shell-foundation`](/patterns/app/shell-foundation) for the normal
33
+ responsive application shell
34
+ - [`app/minimal-foundation`](/patterns/app/minimal-foundation) for an
35
+ intentionally smaller foundation
33
36
 
34
37
  The agent reads `PATTERN.md` and its complete `example/` tree. It copies or
35
38
  adapts the pattern into this existing repository, preserving `.git` and any
@@ -0,0 +1,91 @@
1
+ <!-- Generated by `npm run agent-docs:build` from `packages/agent-docs/site/guide/framework/application-operations.md`. Do not edit manually. -->
2
+
3
+ ---
4
+ title: Application operations
5
+ description: Establish a JSKIT application, select capabilities, and realize product features from source patterns.
6
+ ---
7
+
8
+ # Application operations
9
+
10
+ Use this for establishing an application foundation, selecting package
11
+ capabilities, and realizing product features from JSKIT patterns.
12
+
13
+ ## Establish a new application
14
+
15
+ Start with an initialized Git repository and a clear product request. Use the
16
+ request, current source, and ordinary project documentation. Ask the user for
17
+ any material missing product decision before writing application source. Do
18
+ not run a JSKIT questionnaire and do not create a temporary scaffold app.
19
+
20
+ Read the [source pattern library](/patterns/). When the optional standalone
21
+ JSKIT Agent Skill is installed, its pattern index contains the same
22
+ version-matched pattern documents and examples. Do not install a runtime
23
+ package only to read its documentation.
24
+
25
+ For a browser product, inspect one foundation:
26
+
27
+ - `app/shell-foundation` for the normal adaptive application shell
28
+ - `app/minimal-foundation` when the product deliberately does not need that
29
+ shell yet
30
+
31
+ Inspect the complete pattern before copying. Copy or author the useful files
32
+ directly into the existing project. Preserve `.git` plus all unrelated project
33
+ and agent context. Resolve every real destination collision explicitly.
34
+ Rename the concrete example application in ordinary source and metadata.
35
+ Retain the foundation's npm workspace declaration. App-local packages use
36
+ their own exact versions in dependency declarations; do not replace them with
37
+ `file:` links.
38
+
39
+ The copied files immediately belong to the application. Do not add pattern
40
+ receipts, generator provenance, completion ledgers, or hidden operation state.
41
+
42
+ ## Install and compose capabilities
43
+
44
+ Plan the complete capability set before changing dependencies. Use the package
45
+ catalogue and package-owned patterns to identify the required runtime packages,
46
+ configuration, resources, and public APIs. Add one coherent package closure,
47
+ then run `npm install` once for that planned change.
48
+
49
+ Install the explicitly selected top-level packages through npm. Use one
50
+ installation for the planned closure so npm can resolve their ordinary package
51
+ dependencies together:
52
+
53
+ ```bash
54
+ npm install --save-exact @jskit-ai/<selected-package>@latest [...]
55
+ ```
56
+
57
+ Review the resulting `package.json` and lockfile as ordinary source changes.
58
+ The installed package graph supplies runtime providers, migrations, patterns,
59
+ and public APIs directly; no JSKIT synchronization or mutation command follows
60
+ the npm installation.
61
+
62
+ Do not add auth, users, workspaces, console, sample data, databases, or AI
63
+ capabilities unless the product choice requires them.
64
+
65
+ ## Author database-backed CRUD
66
+
67
+ Use a chosen database pattern plus a package-owned CRUD resource pattern. The
68
+ normal order is:
69
+
70
+ 1. confirm the product resource, ownership, operations, and fields
71
+ 2. author a migration as normal application source
72
+ 3. author the shared resource contract through `resource-crud-core`
73
+ 4. use framework APIs for standard repository/service/action/route mechanics
74
+ 5. author product-specific screens from the relevant UI pattern
75
+ 6. run migrations and direct verification
76
+
77
+ The database connection and schema are runtime evidence, not a questionnaire
78
+ that owns source generation. Never patch fields into generated ASTs and never
79
+ mark a resource valid because a generator once wrote it.
80
+
81
+ ## Verify current state
82
+
83
+ Run verification against source, package graph, migrations, and runtime
84
+ behavior. Runtime startup owns the capability/provider graph, loadability,
85
+ ids, environment, and configuration. Builds own client imports; migration
86
+ status and disposable rebuilds own schema state. App lint, tests, audit,
87
+ browser checks, and CI own security, runtimes, and behavior.
88
+
89
+ There is no supported `jskit doctor` command. Old CLI authoring-history
90
+ warnings do not describe AI-first apps. Diagnose current contracts; never add
91
+ metadata to satisfy an old tool.
@@ -0,0 +1,83 @@
1
+ <!-- Generated by `npm run agent-docs:build` from `packages/agent-docs/site/guide/framework/crud-operations.md`. Do not edit manually. -->
2
+
3
+ ---
4
+ title: CRUD operations
5
+ description: Implement JSKIT database resources, repositories, services, actions, and CRUD screens through public framework seams.
6
+ ---
7
+
8
+ # CRUD operations
9
+
10
+ Read this before database, schema, CRUD, repository, or persistence work.
11
+
12
+ ## Establish the product contract
13
+
14
+ Take database, surface, access, ownership, operations, and fields from product
15
+ intent and current source. Ask when a material choice is missing. Do not
16
+ translate the work into generator options.
17
+
18
+ Read the narrow package-owned pattern in the [source pattern
19
+ library](/patterns/): `crud/resource-contract` for the resource,
20
+ `crud/json-api-resource-package` for the server, and `crud/crud-screen-set`
21
+ for routed UI. Child-resource and row-policy patterns own those variations.
22
+
23
+ Normal CRUD tables use one non-null integer primary key. Foreign keys are
24
+ single-column; composite unique indexes are business constraints, not
25
+ identities. Only direct `workspace_id` and `user_id` columns imply ownership.
26
+ Match visibility to real ownership and test allowed plus cross-owner cases.
27
+
28
+ ## Author the resource normally
29
+
30
+ For a conventional resource:
31
+
32
+ 1. Write an immutable app-owned migration.
33
+ 2. Define the shared resource contract through `defineCrudResource()`.
34
+ 3. Use `defineCrudJsonApiFeature()` for standard repository, service, action,
35
+ permission, resource-host, and route mechanics.
36
+ 4. Customize through `decorateRepository`, `decorateService`,
37
+ `operationLifecycle`, and named `actions`; do not copy the standard CRUD
38
+ repository/action/route stack.
39
+ 5. Build routed screens from the matching `http-web`/CRUD UI pattern.
40
+
41
+ The resource is canonical for fields, operations, validation, transport,
42
+ messages, and route parameters. Do not duplicate its schema or serializers.
43
+ Prefer `useCrudListScreen()`, `useCrudViewScreen()`, and
44
+ `useCrudAddEditScreen()`; use `useCommand()` or `useEndpointResource()` for
45
+ non-standard operations.
46
+
47
+ Additional resource service methods are normal. Add them with
48
+ `decorateService`; expose commands such as `confirm`, `publish`, or `cancel`
49
+ through named `actions`. With `operationLifecycle`, mutation `before`,
50
+ `execute`, and `after` share one repository transaction, `execute` receives
51
+ `standard(nextInput)`, and `afterCommit` follows commit. Repositories persist;
52
+ services and hooks orchestrate them. Durable external work uses a transactional
53
+ outbox.
54
+
55
+ ## Record deletion
56
+
57
+ Deletion requires an explicit shared `DELETE` operation and confirmation
58
+ decision. Use `CrudDeleteAction` and `useCrudDeleteAction()` through the view
59
+ actions slot; do not rebuild their confirmation, request, invalidation, and
60
+ navigation flow.
61
+
62
+ ## Strict temporal values
63
+
64
+ With `json-rest-schema` 1.0.17, temporal resource values are strings:
65
+
66
+ - `date`: `YYYY-MM-DD`
67
+ - `time`: offset-free `HH:MM[:SS[.fraction]]`
68
+ - `dateTime`: RFC 3339 with seconds and `Z` or a numeric offset
69
+
70
+ Convert JavaScript `Date` objects at the boundary, normally with
71
+ `toISOString()`. Numeric epochs use `epochMilliseconds` or `epochSeconds`.
72
+ Honor `temporalPrecision`; repositories return strict strings.
73
+
74
+ ## Migration ownership
75
+
76
+ Migrations are immutable application source owned with their resource. Never
77
+ make a live table or a generator the sole source of truth. Schema inspection
78
+ is for adoption and diagnosis, not compulsory authoring.
79
+
80
+ Before sign-off, rebuild from zero in a fresh disposable database, compare the
81
+ schema, test ownership boundaries and failure cases, and run current-state
82
+ verification. Do not create a workboard entry, ownership receipt, generation
83
+ record, or historical proof that tooling ran.
@@ -0,0 +1,112 @@
1
+ <!-- Generated by `npm run agent-docs:build` from `packages/agent-docs/site/guide/framework/material-3.md`. Do not edit manually. -->
2
+
3
+ ---
4
+ title: Material 3
5
+ description: JSKIT's Vue and Vuetify Material 3 implementation and review contract.
6
+ ---
7
+
8
+ # Material 3
9
+
10
+ Read completely before any JSKIT Vue/Vuetify UI task.
11
+
12
+ ## Authority
13
+
14
+ JSKIT uses Vue and the installed Vuetify 4 release. Material 3 is the UI
15
+ contract; packages, shared screens, placements, shell components, and
16
+ app-owned Vuetify configuration are its implementation seams.
17
+ Use the installed public APIs rather than adding `@material/web`, another UI
18
+ framework, or a parallel theme/component system.
19
+
20
+ The request and Blueprint own brand, content, routes, and behavior. Material 3
21
+ does not authorize a redesign.
22
+ An established JSKIT prop or component wins over generic Material advice.
23
+
24
+ ## Implement through owned seams
25
+
26
+ Use this order:
27
+
28
+ 1. Reuse the JSKIT package, source pattern, shared screen, shell, placement, or
29
+ high-level composable that owns the behavior.
30
+ 2. Use the matching Vuetify component and its public props, variants, slots,
31
+ density, responsive, theme, and accessibility behavior.
32
+ 3. Adapt app-owned wrappers or the central `createVuetify(...)` configuration.
33
+ 4. Add scoped CSS only for product layout or a documented gap. Never style
34
+ Vuetify internals or duplicate a component system in CSS.
35
+
36
+ Do not replace a shared screen to restyle it. Use its public seams.
37
+
38
+ ## Theme and visual hierarchy
39
+
40
+ - Define palettes and theme selection once through the established Vuetify
41
+ bootstrap. Preserve promised light, dark, or system behavior.
42
+ - Prefer semantic roles such as primary, secondary, surface, surface variant,
43
+ on-surface, outline, success, warning, and error. Use Vuetify theme props,
44
+ classes, and `--v-theme-*` variables instead of repeated visual literals.
45
+ - Keep contrast and meaning in every supported theme. Never communicate
46
+ status, selection, validation, or permission through color alone.
47
+ - Use Vuetify 4 Material 3 display, headline, title, body, and label roles. Do
48
+ not recreate the old Material 2 type scale or a page-local typography system.
49
+ - Use Vuetify spacing utilities and established JSKIT dimensions before raw
50
+ values. Preserve JSKIT shell widths, target sizes, and spacing props.
51
+ - Use elevation `0` through `5`, shape props, and component variants instead of
52
+ arbitrary shadows and radii. Prefer a page header and direct `v-sheet` work
53
+ region; add cards or dialogs only for genuinely grouped or elevated objects.
54
+
55
+ ## Components, state, and feedback
56
+
57
+ - Choose components by purpose. Prefer standard buttons, fields, lists,
58
+ tables, sheets, dialogs, menus, navigation, progress, alerts, snackbars, and
59
+ tooltips over custom imitations.
60
+ - Give one primary action emphasis. Distinguish destructive, secondary, and
61
+ icon-only actions without relying on color; give icon controls accessible
62
+ names and fields meaningful labels, errors, and autocomplete behavior.
63
+ - Preserve visible focus, logical tab order, keyboard operation, and at least
64
+ 48 CSS-pixel interactive targets unless a tested dense operator surface owns
65
+ another contract.
66
+ - Represent loading, empty, error, retry, disabled, selected, hover, focus,
67
+ pressed, and success states through shared JSKIT behavior. All user-visible
68
+ loading uses Material skeletons that reserve the final content geometry;
69
+ never use a generic spinner or circular progress indicator, and never let
70
+ content jump when data arrives. An action without a loading content region
71
+ uses a stable disabled/pending label and shared feedback, not a spinner.
72
+ - Keep failures at their semantic owner. A resource that cannot render uses a
73
+ stable in-page error and retry state; field validation stays beside the
74
+ field. A user-triggered command uses JSKIT's shared action
75
+ feedback/snackbar path. Never insert a transient command-error alert above
76
+ page content where it shifts the working layout.
77
+ - Use established transitions and honor reduced motion. Do not claim
78
+ unsupported Material 3 Expressive parity.
79
+
80
+ ## Adaptive layout
81
+
82
+ Start compact, then verify medium and expanded layouts. Use Vuetify display
83
+ APIs and the JSKIT adaptive shell rather than copying breakpoint numbers.
84
+ Keep primary tasks reachable without incidental chrome. Let navigation,
85
+ tables, filters, supporting content, and action groups change presentation;
86
+ do not merely shrink an expanded screen. Prevent overflow, clipped labels,
87
+ overlapping actions, duplicate navigation, and unreachable dialogs. Persist
88
+ screen context in the route when it must survive navigation.
89
+
90
+ ## Material 3 audit
91
+
92
+ Run this behavior-preserving audit over every affected screen:
93
+
94
+ 1. Identify the owning JSKIT surface, shared screen, shell, placement, theme,
95
+ and Vuetify components before judging local markup.
96
+ 2. Find parallel components, duplicated state chrome, page-local themes,
97
+ transient command errors that shift page content, content loaders using
98
+ generic spinners instead of geometry-preserving skeletons, raw visual
99
+ constants, CSS against Vuetify internals, nested generic cards, legacy
100
+ typography, elevation outside `0`-`5`, and desktop-only layout.
101
+ 3. Check hierarchy, token use, component purpose, responsive presentation,
102
+ interaction states, keyboard/focus behavior, labels, targets, contrast, and
103
+ reduced motion.
104
+ 4. Correct issues at the narrowest established owner. Consolidate only truly
105
+ repeated policy; avoid pass-through wrappers and speculative abstractions.
106
+ 5. Run focused tests and Playwright at compact, medium, and expanded widths.
107
+ Navigate away and back with warm query data when the screen persists state.
108
+
109
+ Do not declare Material 3 compliance from visual resemblance alone. Report any
110
+ unverified responsive, theme, accessibility, interaction, or browser behavior.
111
+ For a missing or version-sensitive API, verify the installed Vuetify major and
112
+ official docs; implement Material intent through supported JSKIT/Vuetify seams.
@@ -0,0 +1,78 @@
1
+ <!-- Generated by `npm run agent-docs:build` from `packages/agent-docs/site/guide/framework/ui-operations.md`. Do not edit manually. -->
2
+
3
+ ---
4
+ title: UI operations
5
+ description: Build JSKIT routes, surfaces, placements, responsive UI, and browser verification through framework-owned seams.
6
+ ---
7
+
8
+ # UI operations
9
+
10
+ Read this for routes, pages, surfaces, placements, responsive UI, and browser
11
+ verification. Also read the complete [Material 3 contract](./material-3).
12
+
13
+ ## Pages, surfaces, and placements
14
+
15
+ Take the surface and navigation role from the request, product context, and
16
+ current app. They control routes, access, placement visibility, and often
17
+ ownership. Inspect `app/shell-foundation` plus the narrow matching entry in
18
+ the [source pattern library](/patterns/) before authoring source.
19
+
20
+ Create route files and placement declarations as normal application code.
21
+ Use semantic placement ids and shell public helpers; use concrete outlet ids
22
+ only when defining or diagnosing topology. Resolve current dynamic parameters
23
+ to an absolute URL or route object for sibling/child links—never bind a route
24
+ template or relative string raw to Vue Router `to`.
25
+
26
+ ## Application-owned files
27
+
28
+ Pattern source is ordinary customizable application source. When replacing a
29
+ starter route, adapt its smoke test to the new canonical route instead of
30
+ discarding browser coverage. Do not retain a generated-file marker, template
31
+ hash, pattern receipt, or tool-owned source declaration.
32
+
33
+ ## Screen behavior
34
+
35
+ - Keep screens phone/task-first with drawer-independent primary actions and
36
+ at least 48 CSS-pixel targets.
37
+ - Use a page header and direct surfaces instead of needless nested cards.
38
+ - Render all meaningful loading, empty, error, permission, and retry states.
39
+ - Use structure-matching Material skeletons for visible loading; never use a
40
+ generic spinner or circular progress indicator.
41
+ - Keep read failures local when the screen cannot render. Present transient
42
+ command success/failure through shared toast/snackbar feedback so the page
43
+ does not jump.
44
+ - Extend shared CRUD screens through public slots and composables.
45
+ - Keep row actions and filters near the screen unless the framework owns them.
46
+ - Import neutral request and CRUD UI APIs from `@jskit-ai/http-web`. Install
47
+ `users-web` only for actual account/profile/user UI.
48
+
49
+ ## Adaptive shell drawer
50
+
51
+ Use Vuetify Material navigation. Compact close dismisses the temporary drawer;
52
+ wide layouts default to `desktopDrawerClosedMode="rail"`. Use `hidden` only
53
+ when another navigation affordance remains.
54
+
55
+ The drawer omits the app bar's surface label. Open and rail icons share a
56
+ centreline. It uses a 12px outer item inset; `navigationItemSpacing` controls
57
+ icon/label and label/end gaps. The normal 80px rail centres 48px targets;
58
+ `railWidth` and `drawerWidth` are public density/width controls. Do not override
59
+ the shell's private implementation CSS.
60
+
61
+ ## Browser verification
62
+
63
+ Exercise user-facing changes with Playwright at compact, medium, and expanded
64
+ widths. Check overflow, clipped text, duplicate navigation, route placement,
65
+ actions, skeleton replacement, error feedback, and target sizes. Use relative
66
+ URLs. When `PLAYWRIGHT_BASE_URL` is provided, start no duplicate server.
67
+
68
+ Vibe64 owns its managed browser and may provide
69
+ `VIBE64_PLAYWRIGHT_STORAGE_STATE`; never print or commit that value, bypass it,
70
+ or install another browser. For explicitly enabled direct-local auth, use
71
+ `loginAsExistingUser()` from `@jskit-ai/auth-web/test/playwright`; never expose
72
+ the exchange secret to browser code, URLs, or client environment.
73
+
74
+ Run the narrow test directly:
75
+
76
+ ```bash
77
+ npx playwright test <test-file> -g "<changed behavior>"
78
+ ```
@@ -19,6 +19,14 @@ apply or adapt. It does not prescribe an agent host or project orchestrator.
19
19
  - [Multi-homing](/guide/app-setup/multi-homing)
20
20
  - [Console](/guide/app-setup/console)
21
21
 
22
+ ## Framework reference
23
+
24
+ - [Application operations](/guide/framework/application-operations)
25
+ - [CRUD operations](/guide/framework/crud-operations)
26
+ - [UI operations](/guide/framework/ui-operations)
27
+ - [Material 3](/guide/framework/material-3)
28
+ - [Complete source pattern library](/patterns/)
29
+
22
30
  ## Optional capabilities
23
31
 
24
32
  - [Mobile Capacitor](/guide/app-extras/mobile-capacitor)
@@ -28,9 +36,11 @@ apply or adapt. It does not prescribe an agent host or project orchestrator.
28
36
  ## How to use the guide
29
37
 
30
38
  Begin with the Quickstart and one application-foundation pattern. Add only the
31
- capabilities selected by the product. For implementation, the installed JSKIT
32
- skill routes the agent to package-owned `PATTERN.md` files and the smallest
33
- relevant public API reference.
39
+ capabilities selected by the product. The public pattern library contains every
40
+ published `PATTERN.md` and links its complete example tree. If a runtime package
41
+ is installed, its package-owned copy is the version-matched implementation
42
+ reference. The optional standalone JSKIT Agent Skill bundles the same pattern
43
+ documents and examples, but no agent host is required to install it.
34
44
 
35
45
  There are no source-generator chapters. Package-owned patterns replace their
36
46
  useful source examples; questionnaire, mutation, and provenance machinery is
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jskit-ai/agent-docs",
3
- "version": "0.1.149",
3
+ "version": "0.1.150",
4
4
  "description": "Distributed JSKIT agent references, prompts, guides, and generated reference maps.",
5
5
  "type": "module",
6
6
  "files": [
@@ -5,7 +5,7 @@
5
5
  "private": true,
6
6
  "type": "module",
7
7
  "dependencies": {
8
- "@jskit-ai/kernel": "0.1.177",
8
+ "@jskit-ai/kernel": "0.1.178",
9
9
  "json-rest-schema": "^1.0.17"
10
10
  },
11
11
  "exports": {
@@ -1,16 +1,16 @@
1
1
  # App Agent Instructions
2
2
 
3
- Use current project context, JSKIT public APIs, and the installed JSKIT pattern
4
- index as the source of truth for application work.
3
+ Use current project context, JSKIT public APIs, and the official framework
4
+ documentation as the source of truth for application work.
5
5
 
6
- Recommended references:
6
+ Framework references:
7
7
 
8
- - `node_modules/@jskit-ai/agent-docs/guide/agent/index.md`
9
- - `node_modules/@jskit-ai/agent-docs/patterns/INDEX.md`
8
+ - `https://mobily-enterprises.github.io/jskit-ai/guide/`
9
+ - `https://mobily-enterprises.github.io/jskit-ai/patterns/`
10
10
 
11
- Before database, schema, CRUD, repository, or persistence work, inspect the
12
- relevant package-owned pattern from
13
- `node_modules/@jskit-ai/agent-docs/reference/autogen/PATTERN_INDEX.md`.
11
+ Before implementation, read the narrow relevant source pattern completely. If
12
+ its owner package is installed, prefer that version-matched package-owned copy.
13
+ Do not install an unrelated runtime package only to read documentation.
14
14
 
15
15
  Copied pattern source is ordinary application source. Do not add generator
16
16
  provenance, receipts, completion ledgers, or tooling-operation history. Keep
@@ -34,7 +34,7 @@
34
34
  "dependencies": {
35
35
  "@local/main": "0.1.0",
36
36
  "@fastify/static": "^10.1.3",
37
- "@jskit-ai/kernel": "0.1.177",
37
+ "@jskit-ai/kernel": "0.1.178",
38
38
  "@tanstack/vue-query": "^5.101.0",
39
39
  "fastify": "^5.8.5",
40
40
  "json-rest-schema": "^1.0.17",
@@ -42,12 +42,11 @@
42
42
  "vue": "^3.5.38",
43
43
  "vue-router": "^5.1.0",
44
44
  "vuetify": "^4.1.2",
45
- "@jskit-ai/http-runtime": "0.1.175"
45
+ "@jskit-ai/http-runtime": "0.1.176"
46
46
  },
47
47
  "devDependencies": {
48
- "@jskit-ai/agent-docs": "0.1.149",
49
- "@jskit-ai/config-eslint": "0.1.174",
50
- "@jskit-ai/jskit-catalog": "0.1.202",
48
+ "@jskit-ai/config-eslint": "0.1.175",
49
+ "@jskit-ai/jskit-catalog": "0.1.203",
51
50
  "@playwright/test": "1.61.1",
52
51
  "@vitejs/plugin-vue": "^6.0.7",
53
52
  "eslint": "^10.8.0",
@@ -1,16 +1,16 @@
1
1
  # App Agent Instructions
2
2
 
3
- Use current project context, JSKIT public APIs, and the installed JSKIT pattern
4
- index as the source of truth for application work.
3
+ Use current project context, JSKIT public APIs, and the official framework
4
+ documentation as the source of truth for application work.
5
5
 
6
- Recommended references:
6
+ Framework references:
7
7
 
8
- - `node_modules/@jskit-ai/agent-docs/guide/agent/index.md`
9
- - `node_modules/@jskit-ai/agent-docs/patterns/INDEX.md`
8
+ - `https://mobily-enterprises.github.io/jskit-ai/guide/`
9
+ - `https://mobily-enterprises.github.io/jskit-ai/patterns/`
10
10
 
11
- Before database, schema, CRUD, repository, or persistence work, inspect the
12
- relevant package-owned pattern from
13
- `node_modules/@jskit-ai/agent-docs/reference/autogen/PATTERN_INDEX.md`.
11
+ Before implementation, read the narrow relevant source pattern completely. If
12
+ its owner package is installed, prefer that version-matched package-owned copy.
13
+ Do not install an unrelated runtime package only to read documentation.
14
14
 
15
15
  Copied pattern source is ordinary application source. Do not add generator
16
16
  provenance, receipts, completion ledgers, or tooling-operation history. Keep
@@ -34,7 +34,7 @@
34
34
  "dependencies": {
35
35
  "@local/main": "0.1.0",
36
36
  "@fastify/static": "^10.1.3",
37
- "@jskit-ai/kernel": "0.1.177",
37
+ "@jskit-ai/kernel": "0.1.178",
38
38
  "@tanstack/vue-query": "^5.101.0",
39
39
  "fastify": "^5.8.5",
40
40
  "json-rest-schema": "^1.0.17",
@@ -42,14 +42,13 @@
42
42
  "vue": "^3.5.38",
43
43
  "vue-router": "^5.1.0",
44
44
  "vuetify": "^4.1.2",
45
- "@jskit-ai/http-runtime": "0.1.175",
45
+ "@jskit-ai/http-runtime": "0.1.176",
46
46
  "@mdi/js": "^7.4.47",
47
- "@jskit-ai/shell-web": "0.1.181"
47
+ "@jskit-ai/shell-web": "0.1.182"
48
48
  },
49
49
  "devDependencies": {
50
- "@jskit-ai/agent-docs": "0.1.149",
51
- "@jskit-ai/config-eslint": "0.1.174",
52
- "@jskit-ai/jskit-catalog": "0.1.202",
50
+ "@jskit-ai/config-eslint": "0.1.175",
51
+ "@jskit-ai/jskit-catalog": "0.1.203",
53
52
  "@playwright/test": "1.61.1",
54
53
  "@vitejs/plugin-vue": "^6.0.7",
55
54
  "eslint": "^10.8.0",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  "description": "App-local runtime composition and lightweight glue.",
11
11
  "dependencies": {
12
- "@jskit-ai/kernel": "0.1.177"
12
+ "@jskit-ai/kernel": "0.1.178"
13
13
  },
14
14
  "jskit": {
15
15
  "kind": "runtime",