@cratis/pi 0.0.1 → 2.0.1

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 (234) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +18 -37
  3. package/package/corpus/agents/backend-developer.md +125 -0
  4. package/package/corpus/agents/code-reviewer.md +165 -0
  5. package/package/corpus/agents/coordinator.md +163 -0
  6. package/package/corpus/agents/frontend-developer.md +246 -0
  7. package/package/corpus/agents/orchestrator.md +196 -0
  8. package/package/corpus/agents/performance-reviewer.md +109 -0
  9. package/package/corpus/agents/planner.md +145 -0
  10. package/package/corpus/agents/repository-investigation-reviewer.md +45 -0
  11. package/package/corpus/agents/repository-investigator.md +50 -0
  12. package/package/corpus/agents/security-reviewer.md +118 -0
  13. package/package/corpus/agents/slice-implementer.md +59 -0
  14. package/package/corpus/agents/spec-writer.md +149 -0
  15. package/package/corpus/harnesses/pi/extensions/cratis-hooks/index.ts +213 -0
  16. package/package/corpus/harnesses/pi/extensions/cratis-rules/index.ts +27 -0
  17. package/package/corpus/harnesses/pi/extensions/package.json +4 -0
  18. package/package/corpus/harnesses/pi/extensions/subagent/agents.ts +167 -0
  19. package/package/corpus/harnesses/pi/extensions/subagent/index.ts +352 -0
  20. package/package/corpus/hooks/README.md +434 -0
  21. package/package/corpus/hooks/agent-stop.md +49 -0
  22. package/package/corpus/hooks/pre-commit.md +47 -0
  23. package/package/corpus/hooks/scripts/cratis-guard-writes.sh +87 -0
  24. package/package/corpus/hooks/scripts/cratis-nuget-pins.txt +11 -0
  25. package/package/corpus/hooks/scripts/cratis-pattern-scan.sh +197 -0
  26. package/package/corpus/hooks/scripts/cratis-patterns.json +84 -0
  27. package/package/corpus/hooks/scripts/cratis-quality-gate.sh +219 -0
  28. package/package/corpus/hooks/scripts/hook-lib.sh +152 -0
  29. package/package/corpus/hooks/scripts/quality-gates.json +261 -0
  30. package/package/corpus/hooks/scripts/type-references-allowlist.txt +71 -0
  31. package/package/corpus/hooks/scripts/validate-package-imports.sh +166 -0
  32. package/package/corpus/hooks/scripts/validate-package-subpaths.sh +120 -0
  33. package/package/corpus/hooks/scripts/validate-type-references.sh +308 -0
  34. package/package/corpus/hooks/settings.template.json +40 -0
  35. package/package/corpus/prompts/add-business-rule.prompt.md +22 -0
  36. package/package/corpus/prompts/add-concept.prompt.md +17 -0
  37. package/package/corpus/prompts/add-ef-migration.prompt.md +24 -0
  38. package/package/corpus/prompts/add-projection.prompt.md +20 -0
  39. package/package/corpus/prompts/add-reactor.prompt.md +22 -0
  40. package/package/corpus/prompts/add-reducer.prompt.md +20 -0
  41. package/package/corpus/prompts/audit-hooks.prompt.md +15 -0
  42. package/package/corpus/prompts/check-doc-drift.prompt.md +21 -0
  43. package/package/corpus/prompts/code-review.prompt.md +9 -0
  44. package/package/corpus/prompts/new-feature.prompt.md +9 -0
  45. package/package/corpus/prompts/new-vertical-slice.prompt.md +18 -0
  46. package/package/corpus/prompts/review-pr.prompt.md +35 -0
  47. package/package/corpus/prompts/review-skill.prompt.md +16 -0
  48. package/package/corpus/prompts/scaffold-feature.prompt.md +16 -0
  49. package/package/corpus/prompts/ship-changes.prompt.md +20 -0
  50. package/package/corpus/prompts/verify-ai-setup.prompt.md +19 -0
  51. package/package/corpus/prompts/write-documentation.prompt.md +21 -0
  52. package/package/corpus/prompts/write-specs.prompt.md +22 -0
  53. package/package/corpus/rules/capability-is-not-authority.md +31 -0
  54. package/package/corpus/rules/code-quality.csharp.md +91 -0
  55. package/package/corpus/rules/code-quality.md +82 -0
  56. package/package/corpus/rules/code-quality.typescript.md +89 -0
  57. package/package/corpus/rules/components.md +207 -0
  58. package/package/corpus/rules/concepts.md +115 -0
  59. package/package/corpus/rules/csharp.md +269 -0
  60. package/package/corpus/rules/dialogs.md +264 -0
  61. package/package/corpus/rules/documentation-structure-and-formatting.md +148 -0
  62. package/package/corpus/rules/documentation.md +90 -0
  63. package/package/corpus/rules/editing-cratis-docs.md +69 -0
  64. package/package/corpus/rules/efcore.md +235 -0
  65. package/package/corpus/rules/efcore.specs.md +44 -0
  66. package/package/corpus/rules/exit-codes-and-wrappers.md +33 -0
  67. package/package/corpus/rules/framework.md +52 -0
  68. package/package/corpus/rules/frontend-quality.md +59 -0
  69. package/package/corpus/rules/frontend-testing.md +126 -0
  70. package/package/corpus/rules/general.md +305 -0
  71. package/package/corpus/rules/git-commits.md +138 -0
  72. package/package/corpus/rules/github-actions.md +92 -0
  73. package/package/corpus/rules/glossary.md +61 -0
  74. package/package/corpus/rules/guards-and-fuses.md +45 -0
  75. package/package/corpus/rules/local-work-artifacts.md +33 -0
  76. package/package/corpus/rules/managing-ai-rules.md +40 -0
  77. package/package/corpus/rules/orleans.md +50 -0
  78. package/package/corpus/rules/pull-requests.md +78 -0
  79. package/package/corpus/rules/react.md +195 -0
  80. package/package/corpus/rules/reactors.md +238 -0
  81. package/package/corpus/rules/rtk.md +37 -0
  82. package/package/corpus/rules/specs.csharp.md +139 -0
  83. package/package/corpus/rules/specs.md +132 -0
  84. package/package/corpus/rules/specs.scenarios.csharp.md +172 -0
  85. package/package/corpus/rules/specs.typescript.md +139 -0
  86. package/package/corpus/rules/storybook.md +84 -0
  87. package/package/corpus/rules/terminal-commands.md +19 -0
  88. package/package/corpus/rules/typescript.md +149 -0
  89. package/package/corpus/rules/verification-discipline.md +21 -0
  90. package/package/corpus/rules/vertical-slices.md +338 -0
  91. package/package/corpus/rules/web-fetching.md +11 -0
  92. package/package/corpus/rules/writing-correct-examples.md +35 -0
  93. package/package/corpus/rules/writing-cratis-docs.md +70 -0
  94. package/package/corpus/skills/cratis-engineering-csharp-conventions/LICENSE +2 -0
  95. package/package/corpus/skills/cratis-engineering-csharp-conventions/SKILL.md +131 -0
  96. package/package/corpus/skills/cratis-engineering-csharp-conventions/references/code-style.md +187 -0
  97. package/package/corpus/skills/cratis-engineering-csharp-conventions/references/domain-philosophy.md +91 -0
  98. package/package/corpus/skills/cratis-engineering-csharp-conventions/references/exceptions-logging-and-di.md +223 -0
  99. package/package/corpus/skills/cratis-engineering-decision-record/LICENSE +2 -0
  100. package/package/corpus/skills/cratis-engineering-decision-record/SKILL.md +133 -0
  101. package/package/corpus/skills/cratis-engineering-decision-record/references/record-format.md +107 -0
  102. package/package/corpus/skills/cratis-engineering-docs-authoring/LICENSE +2 -0
  103. package/package/corpus/skills/cratis-engineering-docs-authoring/SKILL.md +86 -0
  104. package/package/corpus/skills/cratis-engineering-docs-authoring/references/site-format.md +46 -0
  105. package/package/corpus/skills/cratis-engineering-effect-boundaries/LICENSE +2 -0
  106. package/package/corpus/skills/cratis-engineering-effect-boundaries/SKILL.md +130 -0
  107. package/package/corpus/skills/cratis-engineering-effect-boundaries/references/failure-archetypes.md +133 -0
  108. package/package/corpus/skills/cratis-fundamentals-concept/verification.json +8 -0
  109. package/package/profile-catalog.json +821 -0
  110. package/package.json +35 -13
  111. package/src/index.ts +80 -0
  112. /package/{skills → package/corpus/skills}/cratis-application-react-specifications/LICENSE +0 -0
  113. /package/{skills → package/corpus/skills}/cratis-application-react-specifications/SKILL.md +0 -0
  114. /package/{skills → package/corpus/skills}/cratis-application-slice-specifications/LICENSE +0 -0
  115. /package/{skills → package/corpus/skills}/cratis-application-slice-specifications/SKILL.md +0 -0
  116. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/LICENSE +0 -0
  117. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/SKILL.md +0 -0
  118. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/references/authentication.md +0 -0
  119. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/references/authorization.md +0 -0
  120. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/references/frontend.md +0 -0
  121. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/references/local-development.md +0 -0
  122. /package/{skills → package/corpus/skills}/cratis-arc-authentication-authorization-and-identity/references/tenancy.md +0 -0
  123. /package/{skills → package/corpus/skills}/cratis-arc-command/LICENSE +0 -0
  124. /package/{skills → package/corpus/skills}/cratis-arc-command/SKILL.md +0 -0
  125. /package/{skills → package/corpus/skills}/cratis-arc-command/references/command-result.md +0 -0
  126. /package/{skills → package/corpus/skills}/cratis-arc-command/references/handler-shapes.md +0 -0
  127. /package/{skills → package/corpus/skills}/cratis-arc-command/references/proxy-generation.md +0 -0
  128. /package/{skills → package/corpus/skills}/cratis-arc-command/references/read-model-injection.md +0 -0
  129. /package/{skills → package/corpus/skills}/cratis-arc-command-execution/LICENSE +0 -0
  130. /package/{skills → package/corpus/skills}/cratis-arc-command-execution/SKILL.md +0 -0
  131. /package/{skills → package/corpus/skills}/cratis-arc-command-validation/LICENSE +0 -0
  132. /package/{skills → package/corpus/skills}/cratis-arc-command-validation/SKILL.md +0 -0
  133. /package/{skills → package/corpus/skills}/cratis-arc-ef-core-migration/LICENSE +0 -0
  134. /package/{skills → package/corpus/skills}/cratis-arc-ef-core-migration/SKILL.md +0 -0
  135. /package/{skills → package/corpus/skills}/cratis-arc-observable-query-http/LICENSE +0 -0
  136. /package/{skills → package/corpus/skills}/cratis-arc-observable-query-http/SKILL.md +0 -0
  137. /package/{skills → package/corpus/skills}/cratis-arc-query-paging/LICENSE +0 -0
  138. /package/{skills → package/corpus/skills}/cratis-arc-query-paging/SKILL.md +0 -0
  139. /package/{skills → package/corpus/skills}/cratis-arc-react-page/LICENSE +0 -0
  140. /package/{skills → package/corpus/skills}/cratis-arc-react-page/SKILL.md +0 -0
  141. /package/{skills → package/corpus/skills}/cratis-arc-react-page/references/data-page.md +0 -0
  142. /package/{skills → package/corpus/skills}/cratis-arc-react-page/references/data-tables.md +0 -0
  143. /package/{skills → package/corpus/skills}/cratis-arc-react-page/references/dialogs.md +0 -0
  144. /package/{skills → package/corpus/skills}/cratis-arc-react-page/references/mvvm.md +0 -0
  145. /package/{skills → package/corpus/skills}/cratis-arc-react-page/references/queries-and-commands.md +0 -0
  146. /package/{skills → package/corpus/skills}/cratis-chronicle-cli-operations/LICENSE +0 -0
  147. /package/{skills → package/corpus/skills}/cratis-chronicle-cli-operations/SKILL.md +0 -0
  148. /package/{skills → package/corpus/skills}/cratis-chronicle-client-dotnet/LICENSE +0 -0
  149. /package/{skills → package/corpus/skills}/cratis-chronicle-client-dotnet/SKILL.md +0 -0
  150. /package/{skills → package/corpus/skills}/cratis-chronicle-client-elixir/LICENSE +0 -0
  151. /package/{skills → package/corpus/skills}/cratis-chronicle-client-elixir/SKILL.md +0 -0
  152. /package/{skills → package/corpus/skills}/cratis-chronicle-client-kotlin/LICENSE +0 -0
  153. /package/{skills → package/corpus/skills}/cratis-chronicle-client-kotlin/SKILL.md +0 -0
  154. /package/{skills → package/corpus/skills}/cratis-chronicle-client-typescript/LICENSE +0 -0
  155. /package/{skills → package/corpus/skills}/cratis-chronicle-client-typescript/SKILL.md +0 -0
  156. /package/{skills → package/corpus/skills}/cratis-chronicle-compliance/LICENSE +0 -0
  157. /package/{skills → package/corpus/skills}/cratis-chronicle-compliance/SKILL.md +0 -0
  158. /package/{skills → package/corpus/skills}/cratis-chronicle-event-constraints/LICENSE +0 -0
  159. /package/{skills → package/corpus/skills}/cratis-chronicle-event-constraints/SKILL.md +0 -0
  160. /package/{skills → package/corpus/skills}/cratis-chronicle-event-modeling/LICENSE +0 -0
  161. /package/{skills → package/corpus/skills}/cratis-chronicle-event-modeling/SKILL.md +0 -0
  162. /package/{skills → package/corpus/skills}/cratis-chronicle-event-specifications/LICENSE +0 -0
  163. /package/{skills → package/corpus/skills}/cratis-chronicle-event-specifications/SKILL.md +0 -0
  164. /package/{skills → package/corpus/skills}/cratis-chronicle-event-type-migration/LICENSE +0 -0
  165. /package/{skills → package/corpus/skills}/cratis-chronicle-event-type-migration/SKILL.md +0 -0
  166. /package/{skills → package/corpus/skills}/cratis-chronicle-mcp-inspection/LICENSE +0 -0
  167. /package/{skills → package/corpus/skills}/cratis-chronicle-mcp-inspection/SKILL.md +0 -0
  168. /package/{skills → package/corpus/skills}/cratis-chronicle-mcp-inspection/references/blocked-tools.md +0 -0
  169. /package/{skills → package/corpus/skills}/cratis-chronicle-mcp-inspection/references/observational-tools.md +0 -0
  170. /package/{skills → package/corpus/skills}/cratis-chronicle-multi-tenancy/LICENSE +0 -0
  171. /package/{skills → package/corpus/skills}/cratis-chronicle-multi-tenancy/SKILL.md +0 -0
  172. /package/{skills → package/corpus/skills}/cratis-chronicle-projection/LICENSE +0 -0
  173. /package/{skills → package/corpus/skills}/cratis-chronicle-projection/SKILL.md +0 -0
  174. /package/{skills → package/corpus/skills}/cratis-chronicle-projection/references/fluent-builder.md +0 -0
  175. /package/{skills → package/corpus/skills}/cratis-chronicle-projection/references/model-bound-attributes.md +0 -0
  176. /package/{skills → package/corpus/skills}/cratis-chronicle-reactor/LICENSE +0 -0
  177. /package/{skills → package/corpus/skills}/cratis-chronicle-reactor/SKILL.md +0 -0
  178. /package/{skills → package/corpus/skills}/cratis-chronicle-read-model/LICENSE +0 -0
  179. /package/{skills → package/corpus/skills}/cratis-chronicle-read-model/SKILL.md +0 -0
  180. /package/{skills → package/corpus/skills}/cratis-chronicle-read-model/references/queries.md +0 -0
  181. /package/{skills → package/corpus/skills}/cratis-chronicle-read-model-specifications/LICENSE +0 -0
  182. /package/{skills → package/corpus/skills}/cratis-chronicle-read-model-specifications/SKILL.md +0 -0
  183. /package/{skills → package/corpus/skills}/cratis-chronicle-reducer/LICENSE +0 -0
  184. /package/{skills → package/corpus/skills}/cratis-chronicle-reducer/SKILL.md +0 -0
  185. /package/{skills → package/corpus/skills}/cratis-chronicle-web-workbench/LICENSE +0 -0
  186. /package/{skills → package/corpus/skills}/cratis-chronicle-web-workbench/SKILL.md +0 -0
  187. /package/{skills → package/corpus/skills}/cratis-cli-terminal-workbench/LICENSE +0 -0
  188. /package/{skills → package/corpus/skills}/cratis-cli-terminal-workbench/SKILL.md +0 -0
  189. /package/{skills → package/corpus/skills}/cratis-code-review/LICENSE +0 -0
  190. /package/{skills → package/corpus/skills}/cratis-code-review/SKILL.md +0 -0
  191. /package/{skills → package/corpus/skills}/cratis-components-accessibility/LICENSE +0 -0
  192. /package/{skills → package/corpus/skills}/cratis-components-accessibility/SKILL.md +0 -0
  193. /package/{skills → package/corpus/skills}/cratis-components-schema-editor/LICENSE +0 -0
  194. /package/{skills → package/corpus/skills}/cratis-components-schema-editor/SKILL.md +0 -0
  195. /package/{skills → package/corpus/skills}/cratis-components-stepper-command-dialog/LICENSE +0 -0
  196. /package/{skills → package/corpus/skills}/cratis-components-stepper-command-dialog/SKILL.md +0 -0
  197. /package/{skills → package/corpus/skills}/cratis-components-styling/LICENSE +0 -0
  198. /package/{skills → package/corpus/skills}/cratis-components-styling/SKILL.md +0 -0
  199. /package/{skills → package/corpus/skills}/cratis-components-toolbar/LICENSE +0 -0
  200. /package/{skills → package/corpus/skills}/cratis-components-toolbar/SKILL.md +0 -0
  201. /package/{skills → package/corpus/skills}/cratis-documentation-writing/LICENSE +0 -0
  202. /package/{skills → package/corpus/skills}/cratis-documentation-writing/SKILL.md +0 -0
  203. /package/{skills → package/corpus/skills}/cratis-event-model-diagram/LICENSE +0 -0
  204. /package/{skills → package/corpus/skills}/cratis-event-model-diagram/SKILL.md +0 -0
  205. /package/{skills → package/corpus/skills}/cratis-fundamentals-concept/LICENSE +0 -0
  206. /package/{skills → package/corpus/skills}/cratis-fundamentals-concept/SKILL.md +0 -0
  207. /package/{skills → package/corpus/skills}/cratis-fundamentals-type-discovery/LICENSE +0 -0
  208. /package/{skills → package/corpus/skills}/cratis-fundamentals-type-discovery/SKILL.md +0 -0
  209. /package/{skills → package/corpus/skills}/cratis-governed-release-methodology/LICENSE +0 -0
  210. /package/{skills → package/corpus/skills}/cratis-governed-release-methodology/SKILL.md +0 -0
  211. /package/{skills → package/corpus/skills}/cratis-lens-browser-extension/LICENSE +0 -0
  212. /package/{skills → package/corpus/skills}/cratis-lens-browser-extension/SKILL.md +0 -0
  213. /package/{skills → package/corpus/skills}/cratis-performance-review/LICENSE +0 -0
  214. /package/{skills → package/corpus/skills}/cratis-performance-review/SKILL.md +0 -0
  215. /package/{skills → package/corpus/skills}/cratis-screenplay-model-authoring/LICENSE +0 -0
  216. /package/{skills → package/corpus/skills}/cratis-screenplay-model-authoring/SKILL.md +0 -0
  217. /package/{skills → package/corpus/skills}/cratis-security-review/LICENSE +0 -0
  218. /package/{skills → package/corpus/skills}/cratis-security-review/SKILL.md +0 -0
  219. /package/{skills → package/corpus/skills}/cratis-specification-by-example/LICENSE +0 -0
  220. /package/{skills → package/corpus/skills}/cratis-specification-by-example/SKILL.md +0 -0
  221. /package/{skills → package/corpus/skills}/cratis-specifications-csharp/LICENSE +0 -0
  222. /package/{skills → package/corpus/skills}/cratis-specifications-csharp/SKILL.md +0 -0
  223. /package/{skills → package/corpus/skills}/cratis-specifications-csharp/references/application-scenarios.md +0 -0
  224. /package/{skills → package/corpus/skills}/cratis-specifications-csharp/references/csharp-patterns.md +0 -0
  225. /package/{skills → package/corpus/skills}/cratis-specifications-csharp/references/integration-specs.md +0 -0
  226. /package/{skills → package/corpus/skills}/cratis-specifications-typescript/LICENSE +0 -0
  227. /package/{skills → package/corpus/skills}/cratis-specifications-typescript/SKILL.md +0 -0
  228. /package/{skills → package/corpus/skills}/cratis-specifications-typescript/references/typescript-patterns.md +0 -0
  229. /package/{skills → package/corpus/skills}/cratis-stage-rendering-and-sandbox/LICENSE +0 -0
  230. /package/{skills → package/corpus/skills}/cratis-stage-rendering-and-sandbox/SKILL.md +0 -0
  231. /package/{skills → package/corpus/skills}/cratis-studio-mcp-safety-guidance/LICENSE +0 -0
  232. /package/{skills → package/corpus/skills}/cratis-studio-mcp-safety-guidance/SKILL.md +0 -0
  233. /package/{skills → package/corpus/skills}/cratis-studio-mcp-safety-guidance/references/blocked-tools.md +0 -0
  234. /package/{skills → package/corpus/skills}/cratis-studio-mcp-safety-guidance/references/observational-tools.md +0 -0
@@ -0,0 +1,821 @@
1
+ {
2
+ "schemaVersion": "1.0",
3
+ "publicProfiles": [
4
+ {
5
+ "id": "cratis",
6
+ "composes": [
7
+ "cratis/application",
8
+ "cratis/application/arc-chronicle",
9
+ "cratis/application/arc-only",
10
+ "cratis/application/chronicle-dotnet",
11
+ "cratis/application/csharp",
12
+ "cratis/application/elixir",
13
+ "cratis/application/kotlin",
14
+ "cratis/application/react",
15
+ "cratis/application/typescript",
16
+ "cratis/arc",
17
+ "cratis/arc/client-kotlin",
18
+ "cratis/arc/core",
19
+ "cratis/arc/csharp",
20
+ "cratis/arc/ef-core",
21
+ "cratis/arc/identity",
22
+ "cratis/arc/kotlin",
23
+ "cratis/arc/react",
24
+ "cratis/chronicle",
25
+ "cratis/chronicle/client-dotnet",
26
+ "cratis/chronicle/client-elixir",
27
+ "cratis/chronicle/client-java",
28
+ "cratis/chronicle/client-kotlin",
29
+ "cratis/chronicle/client-python",
30
+ "cratis/chronicle/client-typescript",
31
+ "cratis/chronicle/compliance",
32
+ "cratis/chronicle/core",
33
+ "cratis/chronicle/csharp",
34
+ "cratis/chronicle/elixir",
35
+ "cratis/chronicle/kotlin",
36
+ "cratis/chronicle/mcp",
37
+ "cratis/chronicle/multi-tenancy",
38
+ "cratis/chronicle/typescript",
39
+ "cratis/chronicle/web-workbench",
40
+ "cratis/cli",
41
+ "cratis/cli/terminal-workbench",
42
+ "cratis/components",
43
+ "cratis/documentation",
44
+ "cratis/full",
45
+ "cratis/full/csharp",
46
+ "cratis/full/elixir",
47
+ "cratis/full/kotlin",
48
+ "cratis/full/typescript",
49
+ "cratis/fundamentals",
50
+ "cratis/fundamentals/type-discovery",
51
+ "cratis/language/csharp",
52
+ "cratis/language/elixir",
53
+ "cratis/language/kotlin",
54
+ "cratis/language/typescript",
55
+ "cratis/lens",
56
+ "cratis/methodology/governed-releases",
57
+ "cratis/modeling/screenplay-stage",
58
+ "cratis/review",
59
+ "cratis/screenplay",
60
+ "cratis/specifications",
61
+ "cratis/specifications/dotnet",
62
+ "cratis/specifications/typescript",
63
+ "cratis/stage",
64
+ "cratis/studio"
65
+ ],
66
+ "languages": [
67
+ "csharp",
68
+ "elixir",
69
+ "java",
70
+ "kotlin",
71
+ "language-agnostic",
72
+ "python",
73
+ "react",
74
+ "shell",
75
+ "typescript"
76
+ ]
77
+ },
78
+ {
79
+ "id": "cratis/application",
80
+ "composes": [
81
+ "cratis/application/csharp",
82
+ "cratis/application/elixir",
83
+ "cratis/application/kotlin",
84
+ "cratis/application/typescript",
85
+ "cratis/arc/core",
86
+ "cratis/arc/react",
87
+ "cratis/chronicle/core",
88
+ "cratis/components",
89
+ "cratis/fundamentals",
90
+ "cratis/specifications/dotnet",
91
+ "cratis/specifications/typescript"
92
+ ],
93
+ "languages": [
94
+ "csharp",
95
+ "elixir",
96
+ "kotlin",
97
+ "react",
98
+ "typescript"
99
+ ]
100
+ },
101
+ {
102
+ "id": "cratis/application/arc-chronicle",
103
+ "composes": [
104
+ "cratis/arc/core",
105
+ "cratis/chronicle/core",
106
+ "cratis/fundamentals",
107
+ "cratis/specifications/dotnet"
108
+ ],
109
+ "languages": [
110
+ "csharp"
111
+ ]
112
+ },
113
+ {
114
+ "id": "cratis/application/arc-only",
115
+ "composes": [
116
+ "cratis/arc/core",
117
+ "cratis/fundamentals",
118
+ "cratis/specifications/dotnet"
119
+ ],
120
+ "languages": [
121
+ "csharp"
122
+ ]
123
+ },
124
+ {
125
+ "id": "cratis/application/chronicle-dotnet",
126
+ "composes": [
127
+ "cratis/chronicle/client-dotnet",
128
+ "cratis/chronicle/core",
129
+ "cratis/fundamentals",
130
+ "cratis/specifications/dotnet"
131
+ ],
132
+ "languages": [
133
+ "csharp"
134
+ ]
135
+ },
136
+ {
137
+ "id": "cratis/application/csharp",
138
+ "composes": [
139
+ "cratis/arc",
140
+ "cratis/arc/react",
141
+ "cratis/chronicle",
142
+ "cratis/components",
143
+ "cratis/fundamentals",
144
+ "cratis/language/csharp",
145
+ "cratis/specifications/dotnet",
146
+ "cratis/specifications/typescript"
147
+ ],
148
+ "languages": [
149
+ "csharp",
150
+ "react",
151
+ "typescript"
152
+ ]
153
+ },
154
+ {
155
+ "id": "cratis/application/elixir",
156
+ "composes": [
157
+ "cratis/chronicle/client-elixir",
158
+ "cratis/language/elixir"
159
+ ],
160
+ "languages": [
161
+ "elixir"
162
+ ]
163
+ },
164
+ {
165
+ "id": "cratis/application/kotlin",
166
+ "composes": [
167
+ "cratis/arc/client-kotlin",
168
+ "cratis/chronicle/client-kotlin",
169
+ "cratis/language/kotlin"
170
+ ],
171
+ "languages": [
172
+ "kotlin"
173
+ ]
174
+ },
175
+ {
176
+ "id": "cratis/application/react",
177
+ "composes": [
178
+ "cratis/arc/core",
179
+ "cratis/arc/react",
180
+ "cratis/components",
181
+ "cratis/fundamentals",
182
+ "cratis/specifications/dotnet",
183
+ "cratis/specifications/typescript"
184
+ ],
185
+ "languages": [
186
+ "csharp",
187
+ "react",
188
+ "typescript"
189
+ ]
190
+ },
191
+ {
192
+ "id": "cratis/application/typescript",
193
+ "composes": [
194
+ "cratis/chronicle/client-typescript",
195
+ "cratis/language/typescript",
196
+ "cratis/specifications/typescript"
197
+ ],
198
+ "languages": [
199
+ "typescript",
200
+ "react"
201
+ ]
202
+ },
203
+ {
204
+ "id": "cratis/arc",
205
+ "composes": [
206
+ "cratis/arc/csharp",
207
+ "cratis/arc/kotlin"
208
+ ],
209
+ "languages": [
210
+ "csharp",
211
+ "react",
212
+ "typescript",
213
+ "kotlin"
214
+ ]
215
+ },
216
+ {
217
+ "id": "cratis/arc/client-kotlin",
218
+ "languages": [
219
+ "kotlin"
220
+ ]
221
+ },
222
+ {
223
+ "id": "cratis/arc/core",
224
+ "availableTargets": [
225
+ "cratis-arc-command",
226
+ "cratis-arc-command-execution",
227
+ "cratis-arc-command-validation",
228
+ "cratis-arc-observable-query-http",
229
+ "cratis-arc-query-paging"
230
+ ],
231
+ "languages": [
232
+ "csharp",
233
+ "typescript",
234
+ "shell"
235
+ ]
236
+ },
237
+ {
238
+ "id": "cratis/arc/csharp",
239
+ "composes": [
240
+ "cratis/application/arc-only",
241
+ "cratis/arc/ef-core",
242
+ "cratis/arc/identity",
243
+ "cratis/language/csharp"
244
+ ],
245
+ "languages": [
246
+ "csharp",
247
+ "react",
248
+ "typescript"
249
+ ]
250
+ },
251
+ {
252
+ "id": "cratis/arc/ef-core",
253
+ "composes": [
254
+ "cratis/arc/core"
255
+ ],
256
+ "availableTargets": [
257
+ "cratis-arc-ef-core-migration"
258
+ ],
259
+ "languages": [
260
+ "csharp"
261
+ ]
262
+ },
263
+ {
264
+ "id": "cratis/arc/identity",
265
+ "composes": [
266
+ "cratis/arc/core"
267
+ ],
268
+ "availableTargets": [
269
+ "cratis-arc-authentication-authorization-and-identity"
270
+ ],
271
+ "languages": [
272
+ "csharp",
273
+ "react",
274
+ "typescript"
275
+ ]
276
+ },
277
+ {
278
+ "id": "cratis/arc/kotlin",
279
+ "composes": [
280
+ "cratis/arc/client-kotlin",
281
+ "cratis/language/kotlin"
282
+ ],
283
+ "languages": [
284
+ "kotlin"
285
+ ]
286
+ },
287
+ {
288
+ "id": "cratis/arc/react",
289
+ "composes": [
290
+ "cratis/arc/core"
291
+ ],
292
+ "availableTargets": [
293
+ "cratis-application-react-specifications",
294
+ "cratis-arc-react-page"
295
+ ],
296
+ "languages": [
297
+ "react",
298
+ "typescript"
299
+ ]
300
+ },
301
+ {
302
+ "id": "cratis/chronicle",
303
+ "composes": [
304
+ "cratis/chronicle/compliance",
305
+ "cratis/chronicle/csharp",
306
+ "cratis/chronicle/elixir",
307
+ "cratis/chronicle/kotlin",
308
+ "cratis/chronicle/multi-tenancy",
309
+ "cratis/chronicle/typescript",
310
+ "cratis/chronicle/web-workbench"
311
+ ],
312
+ "languages": [
313
+ "csharp",
314
+ "kotlin",
315
+ "elixir",
316
+ "typescript",
317
+ "language-agnostic"
318
+ ]
319
+ },
320
+ {
321
+ "id": "cratis/chronicle/client-dotnet",
322
+ "availableTargets": [
323
+ "cratis-chronicle-client-dotnet"
324
+ ],
325
+ "languages": [
326
+ "csharp"
327
+ ]
328
+ },
329
+ {
330
+ "id": "cratis/chronicle/client-elixir",
331
+ "availableTargets": [
332
+ "cratis-chronicle-client-elixir"
333
+ ],
334
+ "languages": [
335
+ "elixir"
336
+ ]
337
+ },
338
+ {
339
+ "id": "cratis/chronicle/client-java",
340
+ "languages": [
341
+ "java"
342
+ ]
343
+ },
344
+ {
345
+ "id": "cratis/chronicle/client-kotlin",
346
+ "availableTargets": [
347
+ "cratis-chronicle-client-kotlin"
348
+ ],
349
+ "languages": [
350
+ "kotlin"
351
+ ]
352
+ },
353
+ {
354
+ "id": "cratis/chronicle/client-python",
355
+ "languages": [
356
+ "python"
357
+ ]
358
+ },
359
+ {
360
+ "id": "cratis/chronicle/client-typescript",
361
+ "availableTargets": [
362
+ "cratis-chronicle-client-typescript"
363
+ ],
364
+ "languages": [
365
+ "typescript"
366
+ ]
367
+ },
368
+ {
369
+ "id": "cratis/chronicle/compliance",
370
+ "composes": [
371
+ "cratis/chronicle/core"
372
+ ],
373
+ "availableTargets": [
374
+ "cratis-chronicle-compliance"
375
+ ],
376
+ "languages": [
377
+ "csharp",
378
+ "language-agnostic"
379
+ ]
380
+ },
381
+ {
382
+ "id": "cratis/chronicle/core",
383
+ "availableTargets": [
384
+ "cratis-chronicle-event-constraints",
385
+ "cratis-chronicle-event-modeling",
386
+ "cratis-chronicle-event-type-migration",
387
+ "cratis-chronicle-projection",
388
+ "cratis-chronicle-reactor",
389
+ "cratis-chronicle-read-model",
390
+ "cratis-chronicle-reducer",
391
+ "cratis-event-model-diagram"
392
+ ],
393
+ "languages": [
394
+ "csharp",
395
+ "language-agnostic"
396
+ ]
397
+ },
398
+ {
399
+ "id": "cratis/chronicle/csharp",
400
+ "composes": [
401
+ "cratis/application/chronicle-dotnet",
402
+ "cratis/chronicle/compliance",
403
+ "cratis/chronicle/multi-tenancy",
404
+ "cratis/language/csharp"
405
+ ],
406
+ "languages": [
407
+ "csharp",
408
+ "language-agnostic"
409
+ ]
410
+ },
411
+ {
412
+ "id": "cratis/chronicle/elixir",
413
+ "composes": [
414
+ "cratis/chronicle/client-elixir",
415
+ "cratis/language/elixir"
416
+ ],
417
+ "languages": [
418
+ "elixir"
419
+ ]
420
+ },
421
+ {
422
+ "id": "cratis/chronicle/kotlin",
423
+ "composes": [
424
+ "cratis/chronicle/client-kotlin",
425
+ "cratis/language/kotlin"
426
+ ],
427
+ "languages": [
428
+ "kotlin"
429
+ ]
430
+ },
431
+ {
432
+ "id": "cratis/chronicle/mcp",
433
+ "availableTargets": [
434
+ "cratis-chronicle-mcp-inspection"
435
+ ],
436
+ "languages": [
437
+ "language-agnostic"
438
+ ]
439
+ },
440
+ {
441
+ "id": "cratis/chronicle/multi-tenancy",
442
+ "composes": [
443
+ "cratis/chronicle/core"
444
+ ],
445
+ "availableTargets": [
446
+ "cratis-chronicle-multi-tenancy"
447
+ ],
448
+ "languages": [
449
+ "csharp",
450
+ "language-agnostic"
451
+ ]
452
+ },
453
+ {
454
+ "id": "cratis/chronicle/typescript",
455
+ "composes": [
456
+ "cratis/chronicle/client-typescript",
457
+ "cratis/language/typescript"
458
+ ],
459
+ "languages": [
460
+ "typescript"
461
+ ]
462
+ },
463
+ {
464
+ "id": "cratis/chronicle/web-workbench",
465
+ "composes": [
466
+ "cratis/chronicle/core"
467
+ ],
468
+ "availableTargets": [
469
+ "cratis-chronicle-web-workbench"
470
+ ],
471
+ "languages": [
472
+ "language-agnostic"
473
+ ]
474
+ },
475
+ {
476
+ "id": "cratis/cli",
477
+ "availableTargets": [
478
+ "cratis-chronicle-cli-operations"
479
+ ],
480
+ "languages": [
481
+ "shell"
482
+ ]
483
+ },
484
+ {
485
+ "id": "cratis/cli/terminal-workbench",
486
+ "composes": [
487
+ "cratis/cli"
488
+ ],
489
+ "availableTargets": [
490
+ "cratis-cli-terminal-workbench"
491
+ ],
492
+ "languages": [
493
+ "shell"
494
+ ]
495
+ },
496
+ {
497
+ "id": "cratis/components",
498
+ "availableTargets": [
499
+ "cratis-components-accessibility",
500
+ "cratis-components-schema-editor",
501
+ "cratis-components-stepper-command-dialog",
502
+ "cratis-components-styling",
503
+ "cratis-components-toolbar"
504
+ ],
505
+ "languages": [
506
+ "react",
507
+ "typescript"
508
+ ]
509
+ },
510
+ {
511
+ "id": "cratis/documentation",
512
+ "availableTargets": [
513
+ "cratis-documentation-writing"
514
+ ],
515
+ "languages": [
516
+ "markdown",
517
+ "language-agnostic"
518
+ ]
519
+ },
520
+ {
521
+ "id": "cratis/full",
522
+ "composes": [
523
+ "cratis/full/csharp",
524
+ "cratis/full/elixir",
525
+ "cratis/full/kotlin",
526
+ "cratis/full/typescript"
527
+ ],
528
+ "languages": [
529
+ "csharp",
530
+ "kotlin",
531
+ "elixir",
532
+ "typescript",
533
+ "react",
534
+ "language-agnostic"
535
+ ]
536
+ },
537
+ {
538
+ "id": "cratis/full/csharp",
539
+ "composes": [
540
+ "cratis/application/csharp",
541
+ "cratis/arc/csharp",
542
+ "cratis/chronicle/csharp",
543
+ "cratis/modeling/screenplay-stage"
544
+ ],
545
+ "languages": [
546
+ "csharp",
547
+ "react",
548
+ "typescript",
549
+ "language-agnostic"
550
+ ]
551
+ },
552
+ {
553
+ "id": "cratis/full/elixir",
554
+ "composes": [
555
+ "cratis/application/elixir",
556
+ "cratis/chronicle/elixir",
557
+ "cratis/modeling/screenplay-stage"
558
+ ],
559
+ "languages": [
560
+ "elixir",
561
+ "language-agnostic"
562
+ ]
563
+ },
564
+ {
565
+ "id": "cratis/full/kotlin",
566
+ "composes": [
567
+ "cratis/application/kotlin",
568
+ "cratis/arc/kotlin",
569
+ "cratis/chronicle/kotlin",
570
+ "cratis/modeling/screenplay-stage"
571
+ ],
572
+ "languages": [
573
+ "kotlin",
574
+ "language-agnostic"
575
+ ]
576
+ },
577
+ {
578
+ "id": "cratis/full/typescript",
579
+ "composes": [
580
+ "cratis/application/typescript",
581
+ "cratis/chronicle/typescript",
582
+ "cratis/modeling/screenplay-stage"
583
+ ],
584
+ "languages": [
585
+ "typescript",
586
+ "react",
587
+ "language-agnostic"
588
+ ]
589
+ },
590
+ {
591
+ "id": "cratis/fundamentals",
592
+ "availableTargets": [
593
+ "cratis-fundamentals-concept"
594
+ ],
595
+ "languages": [
596
+ "csharp"
597
+ ]
598
+ },
599
+ {
600
+ "id": "cratis/fundamentals/type-discovery",
601
+ "composes": [
602
+ "cratis/fundamentals"
603
+ ],
604
+ "availableTargets": [
605
+ "cratis-fundamentals-type-discovery"
606
+ ],
607
+ "languages": [
608
+ "csharp"
609
+ ]
610
+ },
611
+ {
612
+ "id": "cratis/language/csharp",
613
+ "languages": [
614
+ "csharp"
615
+ ]
616
+ },
617
+ {
618
+ "id": "cratis/language/elixir",
619
+ "languages": [
620
+ "elixir"
621
+ ]
622
+ },
623
+ {
624
+ "id": "cratis/language/kotlin",
625
+ "languages": [
626
+ "kotlin"
627
+ ]
628
+ },
629
+ {
630
+ "id": "cratis/language/typescript",
631
+ "languages": [
632
+ "typescript"
633
+ ]
634
+ },
635
+ {
636
+ "id": "cratis/lens",
637
+ "availableTargets": [
638
+ "cratis-lens-browser-extension"
639
+ ],
640
+ "languages": [
641
+ "csharp",
642
+ "typescript",
643
+ "language-agnostic"
644
+ ]
645
+ },
646
+ {
647
+ "id": "cratis/methodology/governed-releases",
648
+ "availableTargets": [
649
+ "cratis-governed-release-methodology"
650
+ ],
651
+ "languages": []
652
+ },
653
+ {
654
+ "id": "cratis/modeling/screenplay-stage",
655
+ "composes": [
656
+ "cratis/screenplay",
657
+ "cratis/stage"
658
+ ],
659
+ "languages": [
660
+ "language-agnostic"
661
+ ]
662
+ },
663
+ {
664
+ "id": "cratis/review",
665
+ "availableTargets": [
666
+ "cratis-code-review",
667
+ "cratis-performance-review",
668
+ "cratis-security-review"
669
+ ],
670
+ "languages": [
671
+ "csharp",
672
+ "typescript",
673
+ "react"
674
+ ]
675
+ },
676
+ {
677
+ "id": "cratis/screenplay",
678
+ "availableTargets": [
679
+ "cratis-screenplay-model-authoring"
680
+ ],
681
+ "languages": [
682
+ "language-agnostic"
683
+ ]
684
+ },
685
+ {
686
+ "id": "cratis/specifications",
687
+ "availableTargets": [
688
+ "cratis-specification-by-example"
689
+ ],
690
+ "languages": [
691
+ "language-agnostic"
692
+ ]
693
+ },
694
+ {
695
+ "id": "cratis/specifications/dotnet",
696
+ "composes": [
697
+ "cratis/specifications"
698
+ ],
699
+ "availableTargets": [
700
+ "cratis-application-slice-specifications",
701
+ "cratis-chronicle-event-specifications",
702
+ "cratis-chronicle-read-model-specifications",
703
+ "cratis-specifications-csharp"
704
+ ],
705
+ "languages": [
706
+ "csharp"
707
+ ]
708
+ },
709
+ {
710
+ "id": "cratis/specifications/typescript",
711
+ "composes": [
712
+ "cratis/specifications"
713
+ ],
714
+ "availableTargets": [
715
+ "cratis-specifications-typescript"
716
+ ],
717
+ "languages": [
718
+ "typescript",
719
+ "react"
720
+ ]
721
+ },
722
+ {
723
+ "id": "cratis/stage",
724
+ "availableTargets": [
725
+ "cratis-stage-rendering-and-sandbox"
726
+ ],
727
+ "languages": [
728
+ "language-agnostic"
729
+ ]
730
+ },
731
+ {
732
+ "id": "cratis/studio",
733
+ "availableTargets": [
734
+ "cratis-studio-mcp-safety-guidance"
735
+ ],
736
+ "languages": [
737
+ "language-agnostic"
738
+ ]
739
+ }
740
+ ],
741
+ "engineeringProfiles": [
742
+ {
743
+ "id": "cratis/engineering",
744
+ "composes": [
745
+ "cratis/engineering/core",
746
+ "cratis/engineering/csharp",
747
+ "cratis/engineering/elixir",
748
+ "cratis/engineering/kotlin",
749
+ "cratis/engineering/react",
750
+ "cratis/engineering/typescript"
751
+ ],
752
+ "languages": [
753
+ "csharp",
754
+ "typescript",
755
+ "kotlin",
756
+ "elixir",
757
+ "react",
758
+ "language-agnostic"
759
+ ]
760
+ },
761
+ {
762
+ "id": "cratis/engineering/core",
763
+ "availableTargets": [
764
+ "cratis-engineering-decision-record",
765
+ "cratis-engineering-docs-authoring",
766
+ "cratis-engineering-effect-boundaries"
767
+ ],
768
+ "languages": [
769
+ "language-agnostic"
770
+ ]
771
+ },
772
+ {
773
+ "id": "cratis/engineering/csharp",
774
+ "composes": [
775
+ "cratis/engineering/core"
776
+ ],
777
+ "availableTargets": [
778
+ "cratis-engineering-csharp-conventions"
779
+ ],
780
+ "languages": [
781
+ "csharp"
782
+ ]
783
+ },
784
+ {
785
+ "id": "cratis/engineering/elixir",
786
+ "composes": [
787
+ "cratis/engineering/core"
788
+ ],
789
+ "languages": [
790
+ "elixir"
791
+ ]
792
+ },
793
+ {
794
+ "id": "cratis/engineering/kotlin",
795
+ "composes": [
796
+ "cratis/engineering/core"
797
+ ],
798
+ "languages": [
799
+ "kotlin"
800
+ ]
801
+ },
802
+ {
803
+ "id": "cratis/engineering/react",
804
+ "composes": [
805
+ "cratis/engineering/core"
806
+ ],
807
+ "languages": [
808
+ "react"
809
+ ]
810
+ },
811
+ {
812
+ "id": "cratis/engineering/typescript",
813
+ "composes": [
814
+ "cratis/engineering/core"
815
+ ],
816
+ "languages": [
817
+ "typescript"
818
+ ]
819
+ }
820
+ ]
821
+ }