@soulcraft/kits 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. package/kits/ai-content-studio/kit.json +358 -0
  2. package/kits/api-documentation/kit.json +358 -0
  3. package/kits/api-documentation/skills/api-examples/SKILL.md +176 -0
  4. package/kits/api-documentation/skills/api-review/SKILL.md +35 -0
  5. package/kits/api-documentation/skills/api-versioning/SKILL.md +156 -0
  6. package/kits/api-documentation/skills/create-code-examples/SKILL.md +42 -0
  7. package/kits/api-documentation/skills/define-resource/SKILL.md +39 -0
  8. package/kits/api-documentation/skills/document-auth/SKILL.md +39 -0
  9. package/kits/api-documentation/skills/document-endpoint/SKILL.md +40 -0
  10. package/kits/api-documentation/skills/kit-expertise/SKILL.md +78 -0
  11. package/kits/api-documentation/skills/openapi-spec/SKILL.md +174 -0
  12. package/kits/axe-house/kit.json +931 -0
  13. package/kits/axe-house/skills/axe-expertise/SKILL.md +259 -0
  14. package/kits/axe-house/skills/blog-draft/SKILL.md +147 -0
  15. package/kits/axe-house/skills/booking-digest/SKILL.md +188 -0
  16. package/kits/axe-house/skills/customer-insights/SKILL.md +215 -0
  17. package/kits/axe-house/skills/demand-forecast/SKILL.md +183 -0
  18. package/kits/axe-house/skills/email-campaign/SKILL.md +135 -0
  19. package/kits/axe-house/skills/experience-copy/SKILL.md +142 -0
  20. package/kits/axe-house/skills/guest-letter/SKILL.md +171 -0
  21. package/kits/axe-house/skills/inventory-health/SKILL.md +234 -0
  22. package/kits/axe-house/skills/league-manager/SKILL.md +264 -0
  23. package/kits/axe-house/skills/revenue-report/SKILL.md +240 -0
  24. package/kits/axe-house/skills/safety-briefing/SKILL.md +248 -0
  25. package/kits/axe-house/skills/social-calendar/SKILL.md +203 -0
  26. package/kits/axe-house/skills/staff-briefing/SKILL.md +231 -0
  27. package/kits/axe-house/skills/venue-data-model/SKILL.md +225 -0
  28. package/kits/blog-series/kit.json +363 -0
  29. package/kits/blog-series/skills/content-hooks/SKILL.md +158 -0
  30. package/kits/blog-series/skills/headline-brainstorm/SKILL.md +40 -0
  31. package/kits/blog-series/skills/kit-expertise/SKILL.md +78 -0
  32. package/kits/blog-series/skills/repurpose-content/SKILL.md +40 -0
  33. package/kits/blog-series/skills/seo-review/SKILL.md +41 -0
  34. package/kits/blog-series/skills/seo-writing/SKILL.md +135 -0
  35. package/kits/blog-series/skills/series-audit/SKILL.md +36 -0
  36. package/kits/blog-series/skills/write-post-outline/SKILL.md +42 -0
  37. package/kits/business-plan/kit.json +437 -0
  38. package/kits/business-plan/skills/competitor-analysis/SKILL.md +34 -0
  39. package/kits/business-plan/skills/financial-modeling/SKILL.md +180 -0
  40. package/kits/business-plan/skills/financial-projections/SKILL.md +42 -0
  41. package/kits/business-plan/skills/kit-expertise/SKILL.md +101 -0
  42. package/kits/business-plan/skills/market-analysis/SKILL.md +155 -0
  43. package/kits/business-plan/skills/market-research/SKILL.md +35 -0
  44. package/kits/business-plan/skills/sba-compliance/SKILL.md +163 -0
  45. package/kits/business-plan/skills/swot-analysis/SKILL.md +36 -0
  46. package/kits/canvas-and-corks/kit.json +910 -0
  47. package/kits/canvas-and-corks/skills/blog-draft/SKILL.md +160 -0
  48. package/kits/canvas-and-corks/skills/booking-digest/SKILL.md +147 -0
  49. package/kits/canvas-and-corks/skills/class-description/SKILL.md +53 -0
  50. package/kits/canvas-and-corks/skills/class-roster/SKILL.md +163 -0
  51. package/kits/canvas-and-corks/skills/customer-insights/SKILL.md +174 -0
  52. package/kits/canvas-and-corks/skills/demand-forecast/SKILL.md +191 -0
  53. package/kits/canvas-and-corks/skills/email-campaign/SKILL.md +154 -0
  54. package/kits/canvas-and-corks/skills/experience-copy/SKILL.md +152 -0
  55. package/kits/canvas-and-corks/skills/guest-letter/SKILL.md +127 -0
  56. package/kits/canvas-and-corks/skills/inventory-health/SKILL.md +204 -0
  57. package/kits/canvas-and-corks/skills/painting-memory/SKILL.md +76 -0
  58. package/kits/canvas-and-corks/skills/revenue-report/SKILL.md +196 -0
  59. package/kits/canvas-and-corks/skills/social-calendar/SKILL.md +146 -0
  60. package/kits/canvas-and-corks/skills/staff-briefing/SKILL.md +134 -0
  61. package/kits/canvas-and-corks/skills/studio-expertise/SKILL.md +181 -0
  62. package/kits/canvas-and-corks/skills/venue-data-model/SKILL.md +325 -0
  63. package/kits/character-relationship-map/kit.json +367 -0
  64. package/kits/character-relationship-map/skills/ensemble-balance/SKILL.md +189 -0
  65. package/kits/character-relationship-map/skills/kit-expertise/SKILL.md +83 -0
  66. package/kits/character-relationship-map/skills/relationship-dynamics/SKILL.md +158 -0
  67. package/kits/clay-and-co/kit.json +938 -0
  68. package/kits/clay-and-co/skills/blog-draft/SKILL.md +135 -0
  69. package/kits/clay-and-co/skills/booking-digest/SKILL.md +163 -0
  70. package/kits/clay-and-co/skills/customer-insights/SKILL.md +207 -0
  71. package/kits/clay-and-co/skills/demand-forecast/SKILL.md +166 -0
  72. package/kits/clay-and-co/skills/email-campaign/SKILL.md +125 -0
  73. package/kits/clay-and-co/skills/experience-copy/SKILL.md +132 -0
  74. package/kits/clay-and-co/skills/guest-letter/SKILL.md +104 -0
  75. package/kits/clay-and-co/skills/inventory-health/SKILL.md +211 -0
  76. package/kits/clay-and-co/skills/kiln-scheduler/SKILL.md +206 -0
  77. package/kits/clay-and-co/skills/piece-tracker/SKILL.md +165 -0
  78. package/kits/clay-and-co/skills/pottery-expertise/SKILL.md +165 -0
  79. package/kits/clay-and-co/skills/pottery-memory/SKILL.md +119 -0
  80. package/kits/clay-and-co/skills/revenue-report/SKILL.md +205 -0
  81. package/kits/clay-and-co/skills/social-calendar/SKILL.md +130 -0
  82. package/kits/clay-and-co/skills/staff-briefing/SKILL.md +213 -0
  83. package/kits/clay-and-co/skills/venue-data-model/SKILL.md +230 -0
  84. package/kits/concept-map/kit.json +353 -0
  85. package/kits/concept-map/skills/add-concept/SKILL.md +41 -0
  86. package/kits/concept-map/skills/assess-understanding/SKILL.md +36 -0
  87. package/kits/concept-map/skills/concept-hierarchy/SKILL.md +148 -0
  88. package/kits/concept-map/skills/create-learning-map/SKILL.md +42 -0
  89. package/kits/concept-map/skills/find-cross-links/SKILL.md +34 -0
  90. package/kits/concept-map/skills/identify-prerequisites/SKILL.md +40 -0
  91. package/kits/concept-map/skills/kit-expertise/SKILL.md +78 -0
  92. package/kits/concept-map/skills/relationship-types/SKILL.md +160 -0
  93. package/kits/content-calendar/kit.json +420 -0
  94. package/kits/content-calendar/skills/content-strategy/SKILL.md +174 -0
  95. package/kits/content-calendar/skills/create-brief/SKILL.md +40 -0
  96. package/kits/content-calendar/skills/generate-ideas/SKILL.md +40 -0
  97. package/kits/content-calendar/skills/kit-expertise/SKILL.md +100 -0
  98. package/kits/content-calendar/skills/plan-series/SKILL.md +40 -0
  99. package/kits/content-calendar/skills/repurpose-content/SKILL.md +38 -0
  100. package/kits/content-calendar/skills/repurposing/SKILL.md +179 -0
  101. package/kits/content-calendar/skills/weekly-review/SKILL.md +34 -0
  102. package/kits/coworking-space/kit.json +1068 -0
  103. package/kits/escape-vault/kit.json +1028 -0
  104. package/kits/escape-vault/skills/blog-draft/SKILL.md +157 -0
  105. package/kits/escape-vault/skills/booking-digest/SKILL.md +151 -0
  106. package/kits/escape-vault/skills/customer-insights/SKILL.md +185 -0
  107. package/kits/escape-vault/skills/demand-forecast/SKILL.md +188 -0
  108. package/kits/escape-vault/skills/email-campaign/SKILL.md +157 -0
  109. package/kits/escape-vault/skills/escape-expertise/SKILL.md +200 -0
  110. package/kits/escape-vault/skills/escape-memory/SKILL.md +99 -0
  111. package/kits/escape-vault/skills/experience-copy/SKILL.md +159 -0
  112. package/kits/escape-vault/skills/guest-letter/SKILL.md +143 -0
  113. package/kits/escape-vault/skills/inventory-health/SKILL.md +222 -0
  114. package/kits/escape-vault/skills/leaderboard-report/SKILL.md +204 -0
  115. package/kits/escape-vault/skills/revenue-report/SKILL.md +202 -0
  116. package/kits/escape-vault/skills/room-designer/SKILL.md +182 -0
  117. package/kits/escape-vault/skills/social-calendar/SKILL.md +148 -0
  118. package/kits/escape-vault/skills/staff-briefing/SKILL.md +159 -0
  119. package/kits/escape-vault/skills/venue-data-model/SKILL.md +335 -0
  120. package/kits/family-tree/kit.json +380 -0
  121. package/kits/family-tree/skills/add-family-member/SKILL.md +42 -0
  122. package/kits/family-tree/skills/analyze-relationship/SKILL.md +41 -0
  123. package/kits/family-tree/skills/export-gedcom/SKILL.md +34 -0
  124. package/kits/family-tree/skills/genealogy-research/SKILL.md +188 -0
  125. package/kits/family-tree/skills/kit-expertise/SKILL.md +107 -0
  126. package/kits/family-tree/skills/record-oral-history/SKILL.md +43 -0
  127. package/kits/family-tree/skills/relationship-mapping/SKILL.md +171 -0
  128. package/kits/family-tree/skills/research-ancestor/SKILL.md +43 -0
  129. package/kits/farkle-dice-game/kit.json +316 -0
  130. package/kits/farkle-dice-game/skills/kit-expertise/SKILL.md +137 -0
  131. package/kits/franchise-ops/kit.json +326 -0
  132. package/kits/freelance-portfolio/kit.json +435 -0
  133. package/kits/game-design-doc/kit.json +353 -0
  134. package/kits/game-design-doc/skills/balance-system/SKILL.md +40 -0
  135. package/kits/game-design-doc/skills/create-character/SKILL.md +40 -0
  136. package/kits/game-design-doc/skills/design-mechanic/SKILL.md +40 -0
  137. package/kits/game-design-doc/skills/economy-design/SKILL.md +152 -0
  138. package/kits/game-design-doc/skills/game-mechanics/SKILL.md +141 -0
  139. package/kits/game-design-doc/skills/ideate-features/SKILL.md +36 -0
  140. package/kits/game-design-doc/skills/kit-expertise/SKILL.md +78 -0
  141. package/kits/game-design-doc/skills/playtest-feedback/SKILL.md +142 -0
  142. package/kits/game-design-doc/skills/review-gdd/SKILL.md +33 -0
  143. package/kits/gather-and-grill/kit.json +966 -0
  144. package/kits/gather-and-grill/skills/blog-draft/SKILL.md +120 -0
  145. package/kits/gather-and-grill/skills/booking-digest/SKILL.md +171 -0
  146. package/kits/gather-and-grill/skills/cooking-memory/SKILL.md +100 -0
  147. package/kits/gather-and-grill/skills/culinary-expertise/SKILL.md +180 -0
  148. package/kits/gather-and-grill/skills/customer-insights/SKILL.md +184 -0
  149. package/kits/gather-and-grill/skills/demand-forecast/SKILL.md +200 -0
  150. package/kits/gather-and-grill/skills/email-campaign/SKILL.md +97 -0
  151. package/kits/gather-and-grill/skills/experience-copy/SKILL.md +92 -0
  152. package/kits/gather-and-grill/skills/guest-letter/SKILL.md +98 -0
  153. package/kits/gather-and-grill/skills/inventory-health/SKILL.md +193 -0
  154. package/kits/gather-and-grill/skills/menu-planner/SKILL.md +175 -0
  155. package/kits/gather-and-grill/skills/recipe-card/SKILL.md +194 -0
  156. package/kits/gather-and-grill/skills/revenue-report/SKILL.md +245 -0
  157. package/kits/gather-and-grill/skills/social-calendar/SKILL.md +139 -0
  158. package/kits/gather-and-grill/skills/staff-briefing/SKILL.md +167 -0
  159. package/kits/gather-and-grill/skills/venue-data-model/SKILL.md +336 -0
  160. package/kits/gtd-productivity-system/kit.json +389 -0
  161. package/kits/gtd-productivity-system/skills/break-down-project/SKILL.md +41 -0
  162. package/kits/gtd-productivity-system/skills/clarify-task/SKILL.md +42 -0
  163. package/kits/gtd-productivity-system/skills/gtd-methodology/SKILL.md +185 -0
  164. package/kits/gtd-productivity-system/skills/inbox-processing/SKILL.md +173 -0
  165. package/kits/gtd-productivity-system/skills/kit-expertise/SKILL.md +111 -0
  166. package/kits/gtd-productivity-system/skills/mind-sweep/SKILL.md +35 -0
  167. package/kits/gtd-productivity-system/skills/process-inbox/SKILL.md +40 -0
  168. package/kits/gtd-productivity-system/skills/weekly-review/SKILL.md +197 -0
  169. package/kits/gym-fitness/kit.json +1037 -0
  170. package/kits/interactive-fiction/kit.json +471 -0
  171. package/kits/invoice-generator/kit.json +466 -0
  172. package/kits/loyalty-program/kit.json +323 -0
  173. package/kits/marketing-plan/kit.json +417 -0
  174. package/kits/marketing-plan/skills/allocate-budget/SKILL.md +34 -0
  175. package/kits/marketing-plan/skills/campaign-metrics/SKILL.md +184 -0
  176. package/kits/marketing-plan/skills/channel-strategy/SKILL.md +156 -0
  177. package/kits/marketing-plan/skills/content-calendar/SKILL.md +34 -0
  178. package/kits/marketing-plan/skills/create-persona/SKILL.md +40 -0
  179. package/kits/marketing-plan/skills/kit-expertise/SKILL.md +109 -0
  180. package/kits/marketing-plan/skills/measure-performance/SKILL.md +34 -0
  181. package/kits/marketing-plan/skills/plan-campaign/SKILL.md +41 -0
  182. package/kits/marketing-site/kit.json +230 -0
  183. package/kits/marketing-site/skills/add-page/SKILL.md +28 -0
  184. package/kits/marketing-site/skills/add-section/SKILL.md +29 -0
  185. package/kits/marketing-site/skills/change-colors/SKILL.md +24 -0
  186. package/kits/marketing-site/skills/conversion-copy/SKILL.md +152 -0
  187. package/kits/marketing-site/skills/export-deploy/SKILL.md +24 -0
  188. package/kits/marketing-site/skills/kit-expertise/SKILL.md +77 -0
  189. package/kits/marketing-site/skills/landing-page/SKILL.md +156 -0
  190. package/kits/match-3-puzzle/kit.json +245 -0
  191. package/kits/match-3-puzzle/skills/kit-expertise/SKILL.md +96 -0
  192. package/kits/mind-map/kit.json +355 -0
  193. package/kits/mind-map/skills/add-branch/SKILL.md +40 -0
  194. package/kits/mind-map/skills/brainstorm-topic/SKILL.md +41 -0
  195. package/kits/mind-map/skills/branch-expansion/SKILL.md +181 -0
  196. package/kits/mind-map/skills/find-connections/SKILL.md +34 -0
  197. package/kits/mind-map/skills/kit-expertise/SKILL.md +78 -0
  198. package/kits/mind-map/skills/organize-map/SKILL.md +35 -0
  199. package/kits/mind-map/skills/radiant-thinking/SKILL.md +184 -0
  200. package/kits/mind-map/skills/summarize-map/SKILL.md +34 -0
  201. package/kits/music-collection/kit.json +403 -0
  202. package/kits/music-collection/skills/add-album/SKILL.md +44 -0
  203. package/kits/music-collection/skills/create-playlist/SKILL.md +37 -0
  204. package/kits/music-collection/skills/explore-artist/SKILL.md +37 -0
  205. package/kits/music-collection/skills/journal-session/SKILL.md +40 -0
  206. package/kits/music-collection/skills/kit-expertise/SKILL.md +98 -0
  207. package/kits/music-collection/skills/music-metadata/SKILL.md +209 -0
  208. package/kits/music-collection/skills/playlist-curator/SKILL.md +182 -0
  209. package/kits/music-collection/skills/recommend-similar/SKILL.md +36 -0
  210. package/kits/music-venue/kit.json +986 -0
  211. package/kits/novel-writing-system/kit.json +481 -0
  212. package/kits/novel-writing-system/skills/character-arc/SKILL.md +164 -0
  213. package/kits/novel-writing-system/skills/develop-character-arc/SKILL.md +42 -0
  214. package/kits/novel-writing-system/skills/kit-expertise/SKILL.md +84 -0
  215. package/kits/novel-writing-system/skills/outline-review/SKILL.md +34 -0
  216. package/kits/novel-writing-system/skills/plot-doctor/SKILL.md +221 -0
  217. package/kits/novel-writing-system/skills/plot-hole-check/SKILL.md +35 -0
  218. package/kits/novel-writing-system/skills/scene-development/SKILL.md +38 -0
  219. package/kits/novel-writing-system/skills/scene-sequel/SKILL.md +162 -0
  220. package/kits/novel-writing-system/skills/worldbuilding-session/SKILL.md +40 -0
  221. package/kits/organization-chart/kit.json +349 -0
  222. package/kits/organization-chart/skills/add-role/SKILL.md +41 -0
  223. package/kits/organization-chart/skills/analyze-span/SKILL.md +34 -0
  224. package/kits/organization-chart/skills/create-raci/SKILL.md +42 -0
  225. package/kits/organization-chart/skills/kit-expertise/SKILL.md +78 -0
  226. package/kits/organization-chart/skills/org-design/SKILL.md +188 -0
  227. package/kits/organization-chart/skills/org-health-check/SKILL.md +35 -0
  228. package/kits/organization-chart/skills/plan-reorg/SKILL.md +42 -0
  229. package/kits/organization-chart/skills/role-definition/SKILL.md +180 -0
  230. package/kits/paws-and-pour/kit.json +969 -0
  231. package/kits/paws-and-pour/skills/adoption-report/SKILL.md +273 -0
  232. package/kits/paws-and-pour/skills/animal-profile/SKILL.md +206 -0
  233. package/kits/paws-and-pour/skills/blog-draft/SKILL.md +137 -0
  234. package/kits/paws-and-pour/skills/booking-digest/SKILL.md +251 -0
  235. package/kits/paws-and-pour/skills/cafe-expertise/SKILL.md +218 -0
  236. package/kits/paws-and-pour/skills/cafe-memory/SKILL.md +114 -0
  237. package/kits/paws-and-pour/skills/customer-insights/SKILL.md +216 -0
  238. package/kits/paws-and-pour/skills/demand-forecast/SKILL.md +200 -0
  239. package/kits/paws-and-pour/skills/email-campaign/SKILL.md +154 -0
  240. package/kits/paws-and-pour/skills/experience-copy/SKILL.md +139 -0
  241. package/kits/paws-and-pour/skills/guest-letter/SKILL.md +183 -0
  242. package/kits/paws-and-pour/skills/inventory-health/SKILL.md +213 -0
  243. package/kits/paws-and-pour/skills/revenue-report/SKILL.md +273 -0
  244. package/kits/paws-and-pour/skills/social-calendar/SKILL.md +183 -0
  245. package/kits/paws-and-pour/skills/staff-briefing/SKILL.md +223 -0
  246. package/kits/paws-and-pour/skills/venue-data-model/SKILL.md +260 -0
  247. package/kits/persona-driven-strategy/kit.json +352 -0
  248. package/kits/persona-driven-strategy/skills/empathy-mapping/SKILL.md +221 -0
  249. package/kits/persona-driven-strategy/skills/journey-mapping/SKILL.md +219 -0
  250. package/kits/persona-driven-strategy/skills/kit-expertise/SKILL.md +81 -0
  251. package/kits/persona-driven-strategy/skills/persona-development/SKILL.md +189 -0
  252. package/kits/personal-crm/kit.json +373 -0
  253. package/kits/personal-crm/skills/add-contact/SKILL.md +42 -0
  254. package/kits/personal-crm/skills/connect-contacts/SKILL.md +41 -0
  255. package/kits/personal-crm/skills/find-dormant/SKILL.md +35 -0
  256. package/kits/personal-crm/skills/kit-expertise/SKILL.md +82 -0
  257. package/kits/personal-crm/skills/log-interaction/SKILL.md +43 -0
  258. package/kits/personal-crm/skills/network-analysis/SKILL.md +161 -0
  259. package/kits/personal-crm/skills/relationship-insights/SKILL.md +153 -0
  260. package/kits/personal-wiki/kit.json +322 -0
  261. package/kits/personal-wiki/skills/kit-expertise/SKILL.md +81 -0
  262. package/kits/personal-wiki/skills/orphan-finder/SKILL.md +155 -0
  263. package/kits/personal-wiki/skills/wiki-structure/SKILL.md +179 -0
  264. package/kits/petal-press/kit.json +996 -0
  265. package/kits/petal-press/skills/arrangement-memory/SKILL.md +143 -0
  266. package/kits/petal-press/skills/blog-draft/SKILL.md +167 -0
  267. package/kits/petal-press/skills/booking-digest/SKILL.md +196 -0
  268. package/kits/petal-press/skills/care-card/SKILL.md +173 -0
  269. package/kits/petal-press/skills/customer-insights/SKILL.md +213 -0
  270. package/kits/petal-press/skills/demand-forecast/SKILL.md +203 -0
  271. package/kits/petal-press/skills/email-campaign/SKILL.md +204 -0
  272. package/kits/petal-press/skills/experience-copy/SKILL.md +184 -0
  273. package/kits/petal-press/skills/floral-expertise/SKILL.md +244 -0
  274. package/kits/petal-press/skills/guest-letter/SKILL.md +153 -0
  275. package/kits/petal-press/skills/inventory-health/SKILL.md +201 -0
  276. package/kits/petal-press/skills/revenue-report/SKILL.md +219 -0
  277. package/kits/petal-press/skills/seasonal-guide/SKILL.md +238 -0
  278. package/kits/petal-press/skills/social-calendar/SKILL.md +217 -0
  279. package/kits/petal-press/skills/staff-briefing/SKILL.md +217 -0
  280. package/kits/petal-press/skills/venue-data-model/SKILL.md +226 -0
  281. package/kits/pitch-deck/kit.json +416 -0
  282. package/kits/pitch-deck/skills/calculate-market-size/SKILL.md +41 -0
  283. package/kits/pitch-deck/skills/develop-problem-slide/SKILL.md +39 -0
  284. package/kits/pitch-deck/skills/investor-qa/SKILL.md +182 -0
  285. package/kits/pitch-deck/skills/investor-qa-prep/SKILL.md +36 -0
  286. package/kits/pitch-deck/skills/kit-expertise/SKILL.md +112 -0
  287. package/kits/pitch-deck/skills/pitch-structure/SKILL.md +186 -0
  288. package/kits/pitch-deck/skills/practice-pitch/SKILL.md +36 -0
  289. package/kits/podcast-series/kit.json +324 -0
  290. package/kits/podcast-series/skills/audience-growth/SKILL.md +38 -0
  291. package/kits/podcast-series/skills/create-guest-profile/SKILL.md +42 -0
  292. package/kits/podcast-series/skills/episode-structure/SKILL.md +189 -0
  293. package/kits/podcast-series/skills/guest-research/SKILL.md +167 -0
  294. package/kits/podcast-series/skills/kit-expertise/SKILL.md +81 -0
  295. package/kits/podcast-series/skills/plan-episode/SKILL.md +44 -0
  296. package/kits/podcast-series/skills/prepare-guest/SKILL.md +45 -0
  297. package/kits/podcast-series/skills/show-notes/SKILL.md +182 -0
  298. package/kits/podcast-series/skills/write-show-notes/SKILL.md +43 -0
  299. package/kits/pour-house/kit.json +912 -0
  300. package/kits/pour-house/skills/blog-draft/SKILL.md +138 -0
  301. package/kits/pour-house/skills/booking-digest/SKILL.md +151 -0
  302. package/kits/pour-house/skills/cellar-report/SKILL.md +251 -0
  303. package/kits/pour-house/skills/customer-insights/SKILL.md +184 -0
  304. package/kits/pour-house/skills/demand-forecast/SKILL.md +156 -0
  305. package/kits/pour-house/skills/email-campaign/SKILL.md +130 -0
  306. package/kits/pour-house/skills/experience-copy/SKILL.md +125 -0
  307. package/kits/pour-house/skills/guest-letter/SKILL.md +136 -0
  308. package/kits/pour-house/skills/inventory-health/SKILL.md +159 -0
  309. package/kits/pour-house/skills/pour-memory/SKILL.md +89 -0
  310. package/kits/pour-house/skills/revenue-report/SKILL.md +232 -0
  311. package/kits/pour-house/skills/social-calendar/SKILL.md +140 -0
  312. package/kits/pour-house/skills/sommelier-expertise/SKILL.md +324 -0
  313. package/kits/pour-house/skills/staff-briefing/SKILL.md +176 -0
  314. package/kits/pour-house/skills/tasting-notes/SKILL.md +179 -0
  315. package/kits/pour-house/skills/venue-data-model/SKILL.md +323 -0
  316. package/kits/presentation/kit.json +296 -0
  317. package/kits/product-requirements-doc/kit.json +365 -0
  318. package/kits/product-requirements-doc/skills/acceptance-criteria/SKILL.md +219 -0
  319. package/kits/product-requirements-doc/skills/create-user-story/SKILL.md +43 -0
  320. package/kits/product-requirements-doc/skills/define-success-metrics/SKILL.md +41 -0
  321. package/kits/product-requirements-doc/skills/kit-expertise/SKILL.md +81 -0
  322. package/kits/product-requirements-doc/skills/prd-review/SKILL.md +39 -0
  323. package/kits/product-requirements-doc/skills/prd-structure/SKILL.md +206 -0
  324. package/kits/product-requirements-doc/skills/prioritize-features/SKILL.md +43 -0
  325. package/kits/product-requirements-doc/skills/synthesize-research/SKILL.md +43 -0
  326. package/kits/product-requirements-doc/skills/user-stories/SKILL.md +198 -0
  327. package/kits/project-timeline/kit.json +367 -0
  328. package/kits/project-timeline/skills/add-milestone/SKILL.md +44 -0
  329. package/kits/project-timeline/skills/add-task/SKILL.md +43 -0
  330. package/kits/project-timeline/skills/assess-risks/SKILL.md +39 -0
  331. package/kits/project-timeline/skills/dependency-analysis/SKILL.md +176 -0
  332. package/kits/project-timeline/skills/identify-critical-path/SKILL.md +37 -0
  333. package/kits/project-timeline/skills/kit-expertise/SKILL.md +81 -0
  334. package/kits/project-timeline/skills/milestone-planning/SKILL.md +169 -0
  335. package/kits/project-timeline/skills/status-update/SKILL.md +39 -0
  336. package/kits/reading-tracker/kit.json +368 -0
  337. package/kits/reading-tracker/skills/add-book/SKILL.md +32 -0
  338. package/kits/reading-tracker/skills/book-connections/SKILL.md +161 -0
  339. package/kits/reading-tracker/skills/kit-expertise/SKILL.md +72 -0
  340. package/kits/reading-tracker/skills/log-progress/SKILL.md +29 -0
  341. package/kits/reading-tracker/skills/reading-insights/SKILL.md +179 -0
  342. package/kits/reading-tracker/skills/save-quote/SKILL.md +30 -0
  343. package/kits/recipe-manager/kit.json +376 -0
  344. package/kits/recipe-manager/skills/add-recipe/SKILL.md +33 -0
  345. package/kits/recipe-manager/skills/generate-shopping-list/SKILL.md +27 -0
  346. package/kits/recipe-manager/skills/ingredient-substitutions/SKILL.md +157 -0
  347. package/kits/recipe-manager/skills/kit-expertise/SKILL.md +72 -0
  348. package/kits/recipe-manager/skills/meal-planning/SKILL.md +184 -0
  349. package/kits/recipe-manager/skills/plan-meal/SKILL.md +31 -0
  350. package/kits/recipe-manager/skills/scaling-recipes/SKILL.md +183 -0
  351. package/kits/saas-app/kit.json +405 -0
  352. package/kits/saas-app/skills/churn-analysis/SKILL.md +219 -0
  353. package/kits/saas-app/skills/onboarding-flow/SKILL.md +217 -0
  354. package/kits/saas-app/skills/pricing-model/SKILL.md +192 -0
  355. package/kits/saas-app/skills/saas-expertise/SKILL.md +95 -0
  356. package/kits/salon-barbershop/kit.json +1021 -0
  357. package/kits/screenplay-writing/kit.json +412 -0
  358. package/kits/screenplay-writing/skills/analyze-scene/SKILL.md +42 -0
  359. package/kits/screenplay-writing/skills/beat-sheet/SKILL.md +134 -0
  360. package/kits/screenplay-writing/skills/create-scene-card/SKILL.md +46 -0
  361. package/kits/screenplay-writing/skills/develop-character/SKILL.md +43 -0
  362. package/kits/screenplay-writing/skills/generate-beat-sheet/SKILL.md +49 -0
  363. package/kits/screenplay-writing/skills/kit-expertise/SKILL.md +90 -0
  364. package/kits/screenplay-writing/skills/scene-analysis/SKILL.md +164 -0
  365. package/kits/screenplay-writing/skills/screenplay-format/SKILL.md +108 -0
  366. package/kits/social-media-manager/kit.json +476 -0
  367. package/kits/teacher-lesson-plan/kit.json +410 -0
  368. package/kits/teacher-lesson-plan/skills/assessment-design/SKILL.md +162 -0
  369. package/kits/teacher-lesson-plan/skills/blooms-taxonomy/SKILL.md +139 -0
  370. package/kits/teacher-lesson-plan/skills/create-lesson/SKILL.md +34 -0
  371. package/kits/teacher-lesson-plan/skills/design-unit/SKILL.md +28 -0
  372. package/kits/teacher-lesson-plan/skills/differentiate-lesson/SKILL.md +28 -0
  373. package/kits/teacher-lesson-plan/skills/differentiation/SKILL.md +180 -0
  374. package/kits/teacher-lesson-plan/skills/kit-expertise/SKILL.md +96 -0
  375. package/kits/teacher-lesson-plan/skills/schedule-lesson/SKILL.md +31 -0
  376. package/kits/technical-specification/kit.json +369 -0
  377. package/kits/technical-specification/skills/architecture-decision/SKILL.md +42 -0
  378. package/kits/technical-specification/skills/architecture-decisions/SKILL.md +180 -0
  379. package/kits/technical-specification/skills/data-model-design/SKILL.md +43 -0
  380. package/kits/technical-specification/skills/data-modeling/SKILL.md +159 -0
  381. package/kits/technical-specification/skills/define-component/SKILL.md +43 -0
  382. package/kits/technical-specification/skills/kit-expertise/SKILL.md +81 -0
  383. package/kits/technical-specification/skills/requirements-analysis/SKILL.md +42 -0
  384. package/kits/technical-specification/skills/security-review/SKILL.md +170 -0
  385. package/kits/technical-specification/skills/spec-review/SKILL.md +39 -0
  386. package/kits/wanderlands/kit.json +399 -0
  387. package/kits/wanderlands/skills/kit-expertise/SKILL.md +376 -0
  388. package/kits/web-application/kit.json +257 -0
  389. package/kits/web-application/skills/kit-expertise/SKILL.md +211 -0
  390. package/kits/wicks-and-whiskers/kit.json +1267 -0
  391. package/kits/wicks-and-whiskers/skills/blog-draft/SKILL.md +145 -0
  392. package/kits/wicks-and-whiskers/skills/booking-digest/SKILL.md +142 -0
  393. package/kits/wicks-and-whiskers/skills/candle-expertise/SKILL.md +69 -0
  394. package/kits/wicks-and-whiskers/skills/customer-insights/SKILL.md +176 -0
  395. package/kits/wicks-and-whiskers/skills/demand-forecast/SKILL.md +159 -0
  396. package/kits/wicks-and-whiskers/skills/email-campaign/SKILL.md +131 -0
  397. package/kits/wicks-and-whiskers/skills/experience-copy/SKILL.md +135 -0
  398. package/kits/wicks-and-whiskers/skills/guest-letter/SKILL.md +154 -0
  399. package/kits/wicks-and-whiskers/skills/inventory-health/SKILL.md +185 -0
  400. package/kits/wicks-and-whiskers/skills/kitten-profile/SKILL.md +159 -0
  401. package/kits/wicks-and-whiskers/skills/memory-narrative/SKILL.md +71 -0
  402. package/kits/wicks-and-whiskers/skills/revenue-report/SKILL.md +197 -0
  403. package/kits/wicks-and-whiskers/skills/social-calendar/SKILL.md +161 -0
  404. package/kits/wicks-and-whiskers/skills/staff-briefing/SKILL.md +174 -0
  405. package/kits/wicks-and-whiskers/skills/venue-data-model/SKILL.md +228 -0
  406. package/kits/world-building/kit.json +497 -0
  407. package/kits/world-building/skills/consistency-check/SKILL.md +179 -0
  408. package/kits/world-building/skills/create-character/SKILL.md +44 -0
  409. package/kits/world-building/skills/create-faction/SKILL.md +44 -0
  410. package/kits/world-building/skills/create-location/SKILL.md +44 -0
  411. package/kits/world-building/skills/create-timeline/SKILL.md +39 -0
  412. package/kits/world-building/skills/culture-builder/SKILL.md +171 -0
  413. package/kits/world-building/skills/design-magic-system/SKILL.md +38 -0
  414. package/kits/world-building/skills/kit-expertise/SKILL.md +110 -0
  415. package/kits/world-building/skills/magic-systems/SKILL.md +161 -0
  416. package/kits/youtube-content-plan/kit.json +346 -0
  417. package/kits/youtube-content-plan/skills/analytics-insights/SKILL.md +166 -0
  418. package/kits/youtube-content-plan/skills/analyze-performance/SKILL.md +43 -0
  419. package/kits/youtube-content-plan/skills/develop-video-idea/SKILL.md +45 -0
  420. package/kits/youtube-content-plan/skills/generate-ideas/SKILL.md +42 -0
  421. package/kits/youtube-content-plan/skills/kit-expertise/SKILL.md +81 -0
  422. package/kits/youtube-content-plan/skills/optimize-metadata/SKILL.md +43 -0
  423. package/kits/youtube-content-plan/skills/script-writing/SKILL.md +180 -0
  424. package/kits/youtube-content-plan/skills/write-script/SKILL.md +44 -0
  425. package/kits/youtube-content-plan/skills/youtube-seo/SKILL.md +172 -0
  426. package/package.json +43 -0
  427. package/src/index.ts +35 -0
  428. package/src/kits/ai-content-studio.ts +377 -0
  429. package/src/kits/api-documentation.ts +352 -0
  430. package/src/kits/axe-house.ts +949 -0
  431. package/src/kits/blog-series.ts +357 -0
  432. package/src/kits/business-plan.ts +406 -0
  433. package/src/kits/canvas-and-corks.ts +928 -0
  434. package/src/kits/character-relationship-map.ts +368 -0
  435. package/src/kits/clay-and-co.ts +956 -0
  436. package/src/kits/concept-map.ts +354 -0
  437. package/src/kits/content-calendar.ts +399 -0
  438. package/src/kits/coworking-space.ts +1084 -0
  439. package/src/kits/escape-vault.ts +1046 -0
  440. package/src/kits/family-tree.ts +381 -0
  441. package/src/kits/farkle-dice-game.ts +318 -0
  442. package/src/kits/franchise-ops.ts +345 -0
  443. package/src/kits/freelance-portfolio.ts +453 -0
  444. package/src/kits/game-design-doc.ts +353 -0
  445. package/src/kits/gather-and-grill.ts +984 -0
  446. package/src/kits/gtd-productivity-system.ts +389 -0
  447. package/src/kits/gym-fitness.ts +1053 -0
  448. package/src/kits/index.ts +76 -0
  449. package/src/kits/interactive-fiction.ts +489 -0
  450. package/src/kits/invoice-generator.ts +484 -0
  451. package/src/kits/loyalty-program.ts +342 -0
  452. package/src/kits/marketing-plan.ts +398 -0
  453. package/src/kits/marketing-site.ts +248 -0
  454. package/src/kits/match-3-puzzle.ts +248 -0
  455. package/src/kits/mind-map.ts +356 -0
  456. package/src/kits/music-collection.ts +404 -0
  457. package/src/kits/music-venue.ts +1002 -0
  458. package/src/kits/novel-writing-system.ts +461 -0
  459. package/src/kits/organization-chart.ts +350 -0
  460. package/src/kits/paws-and-pour.ts +987 -0
  461. package/src/kits/persona-driven-strategy.ts +345 -0
  462. package/src/kits/personal-crm.ts +391 -0
  463. package/src/kits/personal-wiki.ts +323 -0
  464. package/src/kits/petal-press.ts +1014 -0
  465. package/src/kits/pitch-deck.ts +395 -0
  466. package/src/kits/podcast-series.ts +324 -0
  467. package/src/kits/pour-house.ts +930 -0
  468. package/src/kits/presentation.ts +276 -0
  469. package/src/kits/product-requirements-doc.ts +359 -0
  470. package/src/kits/project-timeline.ts +368 -0
  471. package/src/kits/reading-tracker.ts +368 -0
  472. package/src/kits/recipe-manager.ts +376 -0
  473. package/src/kits/saas-app.ts +423 -0
  474. package/src/kits/salon-barbershop.ts +1037 -0
  475. package/src/kits/screenplay-writing.ts +412 -0
  476. package/src/kits/social-media-manager.ts +494 -0
  477. package/src/kits/teacher-lesson-plan.ts +410 -0
  478. package/src/kits/technical-specification.ts +363 -0
  479. package/src/kits/wanderlands.ts +401 -0
  480. package/src/kits/web-application.ts +275 -0
  481. package/src/kits/wicks-and-whiskers.ts +1285 -0
  482. package/src/kits/world-building.ts +476 -0
  483. package/src/kits/youtube-content-plan.ts +339 -0
  484. package/src/registry.ts +60 -0
  485. package/src/skills/api-documentation/index.ts +47 -0
  486. package/src/skills/axe-house/index.ts +71 -0
  487. package/src/skills/blog-series/index.ts +43 -0
  488. package/src/skills/business-plan/index.ts +43 -0
  489. package/src/skills/canvas-and-corks/index.ts +75 -0
  490. package/src/skills/character-relationship-map/index.ts +23 -0
  491. package/src/skills/clay-and-co/index.ts +75 -0
  492. package/src/skills/concept-map/index.ts +43 -0
  493. package/src/skills/content-calendar/index.ts +43 -0
  494. package/src/skills/escape-vault/index.ts +75 -0
  495. package/src/skills/family-tree/index.ts +43 -0
  496. package/src/skills/farkle-dice-game/index.ts +15 -0
  497. package/src/skills/game-design-doc/index.ts +47 -0
  498. package/src/skills/gather-and-grill/index.ts +75 -0
  499. package/src/skills/gtd-productivity-system/index.ts +43 -0
  500. package/src/skills/index.ts +109 -0
  501. package/src/skills/marketing-plan/index.ts +43 -0
  502. package/src/skills/marketing-site/index.ts +39 -0
  503. package/src/skills/match-3-puzzle/index.ts +15 -0
  504. package/src/skills/mind-map/index.ts +43 -0
  505. package/src/skills/music-collection/index.ts +43 -0
  506. package/src/skills/novel-writing-system/index.ts +47 -0
  507. package/src/skills/organization-chart/index.ts +43 -0
  508. package/src/skills/paws-and-pour/index.ts +75 -0
  509. package/src/skills/persona-driven-strategy/index.ts +27 -0
  510. package/src/skills/personal-crm/index.ts +39 -0
  511. package/src/skills/personal-wiki/index.ts +23 -0
  512. package/src/skills/petal-press/index.ts +75 -0
  513. package/src/skills/pitch-deck/index.ts +39 -0
  514. package/src/skills/podcast-series/index.ts +47 -0
  515. package/src/skills/pour-house/index.ts +75 -0
  516. package/src/skills/product-requirements-doc/index.ts +47 -0
  517. package/src/skills/project-timeline/index.ts +43 -0
  518. package/src/skills/reading-tracker/index.ts +35 -0
  519. package/src/skills/recipe-manager/index.ts +39 -0
  520. package/src/skills/saas-app/index.ts +27 -0
  521. package/src/skills/screenplay-writing/index.ts +43 -0
  522. package/src/skills/teacher-lesson-plan/index.ts +43 -0
  523. package/src/skills/technical-specification/index.ts +47 -0
  524. package/src/skills/wanderlands/index.ts +15 -0
  525. package/src/skills/web-application/index.ts +15 -0
  526. package/src/skills/wicks-and-whiskers/index.ts +71 -0
  527. package/src/skills/world-building/index.ts +47 -0
  528. package/src/skills/youtube-content-plan/index.ts +47 -0
@@ -0,0 +1,179 @@
1
+ ---
2
+ id: tasting-notes
3
+ name: Tasting Note Generator
4
+ description: Generates elegant, complete tasting note cards for each wine or beer in a flight, formatted for printing or digital display at 3×5 landscape table cards. Covers appearance, aroma (primary/secondary/tertiary categories), palate structure, food pairings, serving temperature, glassware, and a one-line memorable hook per wine.
5
+ type: invocable
6
+ version: 1.0.0
7
+ requiresVision: false
8
+ requiresData: true
9
+ ---
10
+
11
+ # Tasting Note Generator
12
+
13
+ You generate complete, print-ready tasting note cards for each wine or beer in a flight at **{{businessName}}**. Tasting notes are placed at guest seats before each session and serve as guided reference cards during the tasting. They should be authoritative without being intimidating, and specific enough to give guests real vocabulary for what they're tasting.
14
+
15
+ ## When to Trigger
16
+
17
+ Invoke this skill when staff ask:
18
+ - "Generate tasting notes for tonight's flight"
19
+ - "Tasting cards for the Old World Red flight"
20
+ - "Write notes for the Guided Pairing wines"
21
+ - "Tasting note cards before the Winemaker Dinner"
22
+ - "Notes for the beer flight"
23
+ - Any request for tasting cards, printed notes, or pre-session wine/beer descriptions
24
+
25
+ ---
26
+
27
+ ## Input Format
28
+
29
+ You will receive a flight description with wine or beer details:
30
+
31
+ ```json
32
+ {
33
+ "flightName": "Old World Red Flight",
34
+ "experienceSlug": "wine-flight",
35
+ "locationName": "The Pour House Midtown",
36
+ "date": "2026-10-15",
37
+ "wines": [
38
+ {
39
+ "position": 1,
40
+ "producer": "Château Léoville-Barton",
41
+ "varietal": "Cabernet Sauvignon / Merlot / Cabernet Franc",
42
+ "region": "Saint-Julien, Bordeaux",
43
+ "vintage": "2018",
44
+ "abv": "13.5%",
45
+ "staffDescription": "Classic Left Bank Bordeaux, structured but approachable for a 2018. Cassis, cedar, some tobacco."
46
+ },
47
+ {
48
+ "position": 2,
49
+ "producer": "Domaine Faiveley",
50
+ "varietal": "Pinot Noir",
51
+ "region": "Gevrey-Chambertin, Burgundy",
52
+ "vintage": "2019",
53
+ "abv": "13.0%",
54
+ "staffDescription": "Village-level Gevrey. Cherry, forest floor, silky tannin. Great intro to the Côte de Nuits."
55
+ },
56
+ {
57
+ "position": 3,
58
+ "producer": "Château Rayas",
59
+ "varietal": "Grenache",
60
+ "region": "Châteauneuf-du-Pape, Southern Rhône",
61
+ "vintage": "2017",
62
+ "abv": "14.5%",
63
+ "staffDescription": "Legendary estate. Old-vine Grenache — wild herbs, garrigue, ripe cherry, terrific length."
64
+ },
65
+ {
66
+ "position": 4,
67
+ "producer": "Mastroberardino",
68
+ "varietal": "Aglianico",
69
+ "region": "Taurasi, Campania, Italy",
70
+ "vintage": "2016",
71
+ "abv": "14.0%",
72
+ "staffDescription": "The Barolo of the South. Tar, dark cherry, iron, massive structure. Needs food."
73
+ }
74
+ ]
75
+ }
76
+ ```
77
+
78
+ For beer flights, the input will use `style`, `brewery`, `abv`, and `ibu` instead of `varietal`, `vintage`.
79
+
80
+ ---
81
+
82
+ ## Tasting Note Format (Per Wine)
83
+
84
+ Generate each note in this exact structure. This is the layout for a 3" × 5" landscape table card:
85
+
86
+ ---
87
+
88
+ **[Position number]. [Producer] — [Varietal] — [Region] — [Vintage]**
89
+ ABV: [abv]%
90
+
91
+ **Appearance**
92
+ [Color and clarity description. Use precise color language: pale straw, medium lemon, deep ruby, opaque purple, translucent brick-red, etc. Note clarity: clear, slightly hazy, or note if sediment is expected in an aged wine.]
93
+
94
+ **On the Nose**
95
+ [3–5 aromatic descriptors drawn from primary, secondary, and tertiary categories as appropriate. Write as a natural sentence, not a bullet list.]
96
+
97
+ Example: "On the nose: cassis and dark cherry (primary fruit), giving way to cedar and cigar box (oak aging), with a faint pencil shaving lift that signals the wine's structure."
98
+
99
+ **On the Palate**
100
+ [Body description + tannin or carbonation character + acidity + dominant flavor + finish length and character. Write as 2–3 connected sentences.]
101
+
102
+ Example: "Full-bodied with firm, well-integrated tannins and fresh acid that keeps the wine from feeling heavy. Blackcurrant and plum dominate the mid-palate with a hint of graphite on the finish. Long — flavors linger for 20+ seconds."
103
+
104
+ **Pairs With**
105
+ [2–3 specific food pairings. Be concrete. Not "red meat" — "grilled ribeye, lamb shoulder braised with rosemary, or aged manchego."]
106
+
107
+ **Serve At**
108
+ [Temperature in °F and °C] in a [glass type] glass. [Decant if relevant: "Decant 30 minutes before serving to soften young tannins." or "Ready to pour from the bottle."]
109
+
110
+ **The Hook**
111
+ [One memorable sentence that captures this wine's personality without being purple prose. The hook is a gift to guests — something to repeat when describing the wine to someone else.]
112
+
113
+ Examples of good hooks:
114
+ - "The wine that makes Bordeaux skeptics reconsider." (for an approachable, elegant Bordeaux)
115
+ - "If Burgundy is the quiet one at dinner, Gevrey-Chambertin is the one who has everything to say and takes their time saying it."
116
+ - "Châteauneuf at its most wild — a wine that smells like a Provençal hillside in August."
117
+ - "Taurasi earns its nickname: the Barolo of the South, which means patience is the price of admission."
118
+
119
+ **Avoid**: "liquid sunshine," "a symphony in a glass," "a perfect marriage of fruit and earth," "notes of oak" (oak is not a primary note — name the tertiary descriptor specifically: vanilla, cedar, toast, coconut), "complex" without explaining the complexity.
120
+
121
+ ---
122
+
123
+ ## Beer Tasting Note Format (Per Beer)
124
+
125
+ For beer flights, use this adapted structure:
126
+
127
+ ---
128
+
129
+ **[Position]. [Brewery] — [Beer Name] — [Style]**
130
+ ABV: [abv]% | IBU: [ibu]
131
+
132
+ **Appearance**
133
+ [Color (pale straw, golden, amber, brown, black, hazy), clarity (clear, hazy, opaque), head (white, off-white, tan; persistent, moderate, minimal).]
134
+
135
+ **On the Nose**
136
+ [Aroma descriptors using cicerone vocabulary: grain, hops (herbal, citrus, tropical, pine, resinous), esters (fruit from yeast), phenols (spice, clove from Belgian yeasts). 3–4 descriptors.]
137
+
138
+ **On the Palate**
139
+ [Bitterness (low/medium/high, relative to style), carbonation (gentle/moderate/high), body (light/medium/full), dominant flavors, finish (dry/sweet, length).]
140
+
141
+ **Pairs With**
142
+ [2–3 specific food pairings appropriate to the style.]
143
+
144
+ **Serve At**
145
+ [Temperature] in a [glass type] glass.
146
+
147
+ **The Hook**
148
+ [One memorable line that captures the beer's character.]
149
+
150
+ ---
151
+
152
+ ## Flight Card Format
153
+
154
+ When producing notes for a complete flight, output all notes in sequence with consistent formatting. The complete set of notes for a flight should be presented as:
155
+
156
+ ---
157
+
158
+ **[flightName] — {{locationName}}**
159
+ *[Date] | [experienceName]*
160
+
161
+ ---
162
+ [Note 1 through Note N in sequence]
163
+
164
+ ---
165
+
166
+ At the bottom of the flight card set, add:
167
+
168
+ **About This Flight**
169
+ [2–3 sentences describing what makes this particular sequence meaningful — why these wines or beers were chosen together, what story they tell in order, what contrast or theme runs through the flight. This is what the sommelier will say when introducing the flight to the table.]
170
+
171
+ ---
172
+
173
+ ## Tone Rules
174
+
175
+ - **Authoritative but accessible** — Write for a curious adult who is tasting attentively, not for a Masters of Wine exam
176
+ - **Vivid, concrete descriptors** — "Ripe black cherry and cassis" is specific; "fruity" is not
177
+ - **No filler adjectives**: "elegant," "sophisticated," "extraordinary" add nothing. Describe what's actually there.
178
+ - **Consistent vocabulary** — Use the same structural terms (body, tannin, acidity, finish) across all notes so guests can compare wines using the same framework
179
+ - **The hook must be memorable** — If a guest quotes the hook to a friend later, it worked. If it sounds like every other wine description they've ever read, it failed.
@@ -0,0 +1,323 @@
1
+ ---
2
+ id: venue-data-model
3
+ name: Venue Data Model
4
+ description: Teaches the AI assistant the complete Venue platform data architecture, Brainy entity types, relationship model, and all available query APIs for building analytics and data-driven responses.
5
+ type: background
6
+ version: 1.0.0
7
+ requiresVision: false
8
+ requiresData: false
9
+ ---
10
+
11
+ # Venue Data Model
12
+
13
+ You are operating within the **Venue platform**, powered by **@soulcraft/brainy** — a graph-based entity store with vector search, aggregate analytics, neural clustering, and streaming APIs. This document is your complete reference for data architecture and query patterns.
14
+
15
+ ## Core Concepts
16
+
17
+ Every piece of data is a **Brainy entity** with:
18
+ - A `type` (the NounType — the broad category)
19
+ - A `metadata` object (filterable, indexed fields — queryable via `where`)
20
+ - A `data` object (full-text/vector searchable content)
21
+ - An `id` (UUID string)
22
+ - Relationships to other entities (directed, typed edges)
23
+
24
+ **Key invariant**: Amounts are always stored in cents (integer). $55.00 = `5500`. Divide by 100 for display.
25
+
26
+ **Key invariant**: Every entity scoped to a franchise location carries `metadata.locationId`. Always include this filter when querying per-location data.
27
+
28
+ **Key invariant**: `Event`, `Person`, `Document`, `Measurement`, and `Thing` are the five NounTypes. Sub-entity kinds are distinguished by `metadata.entityType`. Always include the `metadata.entityType` filter when querying a specific sub-kind within a NounType.
29
+
30
+ ---
31
+
32
+ ## Entity Types Reference
33
+
34
+ | NounType | `metadata.entityType` | Purpose | Key Metadata Fields |
35
+ |---|---|---|---|
36
+ | `Location` | `location` | Franchise tasting room location | `address`, `hours`, `timezone`, `stripeAccountId`, `locationId` |
37
+ | `Product` | `experience` | Experience type / ticket offering | `slug`, `name`, `priceInCents`, `durationMinutes`, `minGuests`, `maxGuests`, `locationId` |
38
+ | `Event` | `booking` | Guest reservation | `status`, `experienceSlug`, `guestCount`, `totalInCents`, `locationId`, `date`, `bookingNumber`, `checkedIn` |
39
+ | `Event` | `time-slot` | Capacity block on the schedule | `date`, `hour`, `experienceSlug`, `capacity`, `reservedCount`, `locationId` |
40
+ | `Event` | `audit-event` | Append-only operation log | `action`, `actorId`, `actorName`, `entityId`, `entityType`, `locationId` |
41
+ | `Event` | `experience-memory` | Shareable post-visit storybook | `bookingId`, `token`, `published`, `locationId` |
42
+ | `Person` | `customer` | Guest profile | `email`, `displayName`, `totalBookings`, `totalSpentInCents`, `loyaltyTier`, `locationId` |
43
+ | `Person` | `staff` | Employee record | `email`, `role`, `permissions`, `locationId` |
44
+ | `Person` | `loyalty-account` | Points and tier balance | `customerId`, `pointsBalance`, `tier`, `locationId` |
45
+ | `Document` | `content-page` | CMS-managed website section | `pageSlug`, `section`, `locationId` |
46
+ | `Document` | `blog-post` | Blog article | `slug`, `title`, `status`, `tags`, `authorId`, `locationId` |
47
+ | `Thing` | `inventory-item` | Beverage, glassware, or food stock | `name`, `category`, `quantity`, `reorderThreshold`, `costInCents`, `locationId` |
48
+ | `Thing` | `gift-card` | Digital or physical gift card | `code`, `balanceInCents`, `originalAmountInCents`, `locationId` |
49
+ | `Measurement` | `transaction` | Revenue, expense, or refund record | `type`, `amountInCents`, `experienceSlug`, `category`, `date`, `locationId` |
50
+ | `Measurement` | `loyalty-transaction` | Points earned, redeemed, or expired | `customerId`, `points`, `reason`, `locationId` |
51
+
52
+ ### Booking `status` values
53
+ `pending` | `confirmed` | `completed` | `cancelled`
54
+
55
+ ### Transaction `type` values
56
+ `revenue` | `expense` | `refund`
57
+
58
+ ---
59
+
60
+ ## Relationships Reference
61
+
62
+ Brainy relationships are directed edges with a typed verb. Query via `brain.related()` or use `brain.find()` with relationship traversal.
63
+
64
+ | From Entity | Verb | To Entity | Purpose |
65
+ |---|---|---|---|
66
+ | `Location` | Contains | `Experience`, `TimeSlot` | What a location offers |
67
+ | `Experience` | OccursAt | `TimeSlot` | Schedule mapping |
68
+ | `Booking` | ParticipatesIn | `TimeSlot` | Seat reservation |
69
+ | `Customer` | Creates | `Booking` | Ownership |
70
+ | `Booking` | Contains | `Experience` | Line items |
71
+ | `Transaction` | References | `Booking` | Revenue attribution |
72
+ | `Experience` | Consumes | `InventoryItem` | COGS / supply tracking |
73
+ | `Location` | Owns | `Transaction` | Multi-location P&L |
74
+ | `Staff` | MemberOf | `Location` | Staff assignment |
75
+ | `Memory` | References | `Booking` | Visit → memory link |
76
+
77
+ ---
78
+
79
+ ## Aggregate API
80
+
81
+ Use `brain.defineAggregate()` to register a named aggregate, then `brain.find()` with the `aggregate` key to query it. Results are materialized and cached.
82
+
83
+ ### Full example — revenue by experience and month
84
+
85
+ ```typescript
86
+ brain.defineAggregate('revenueByExperienceMonth', {
87
+ source: {
88
+ type: 'Measurement',
89
+ where: [
90
+ { field: 'metadata.entityType', value: 'transaction' },
91
+ { field: 'metadata.type', value: 'revenue' }
92
+ ]
93
+ },
94
+ groupBy: [
95
+ { field: 'metadata.experienceSlug' },
96
+ { field: 'metadata.date', window: 'month' }
97
+ ],
98
+ metrics: {
99
+ totalRevenue: { op: 'SUM', field: 'metadata.amountInCents' },
100
+ bookingCount: { op: 'COUNT' },
101
+ avgTicket: { op: 'AVG', field: 'metadata.amountInCents' },
102
+ maxTicket: { op: 'MAX', field: 'metadata.amountInCents' },
103
+ minTicket: { op: 'MIN', field: 'metadata.amountInCents' },
104
+ revenueStdDev: { op: 'STDDEV', field: 'metadata.amountInCents' },
105
+ revenueVariance: { op: 'VARIANCE', field: 'metadata.amountInCents' }
106
+ }
107
+ });
108
+
109
+ const results = await brain.find({
110
+ aggregate: 'revenueByExperienceMonth',
111
+ where: [{ field: 'metadata.locationId', value: 'loc-abc' }],
112
+ orderBy: 'totalRevenue',
113
+ order: 'desc',
114
+ limit: 100
115
+ });
116
+ ```
117
+
118
+ ### Available aggregation operators
119
+
120
+ | Operator | Description |
121
+ |---|---|
122
+ | `SUM` | Total of all values in the group |
123
+ | `COUNT` | Number of entities in the group |
124
+ | `AVG` | Arithmetic mean |
125
+ | `MIN` | Minimum value |
126
+ | `MAX` | Maximum value |
127
+ | `STDDEV` | Population standard deviation |
128
+ | `VARIANCE` | Population variance |
129
+
130
+ ### Available time windows for `groupBy`
131
+
132
+ `hour` | `day` | `week` | `month` | `quarter` | `year`
133
+
134
+ ### Example — expenses by category and month
135
+
136
+ ```typescript
137
+ brain.defineAggregate('expensesByCategory', {
138
+ source: {
139
+ type: 'Measurement',
140
+ where: [
141
+ { field: 'metadata.entityType', value: 'transaction' },
142
+ { field: 'metadata.type', value: 'expense' }
143
+ ]
144
+ },
145
+ groupBy: [
146
+ { field: 'metadata.category' },
147
+ { field: 'metadata.date', window: 'month' }
148
+ ],
149
+ metrics: {
150
+ totalExpense: { op: 'SUM', field: 'metadata.amountInCents' },
151
+ entryCount: { op: 'COUNT' },
152
+ avgExpense: { op: 'AVG', field: 'metadata.amountInCents' }
153
+ }
154
+ });
155
+ ```
156
+
157
+ ### Example — bookings by experience and day
158
+
159
+ ```typescript
160
+ brain.defineAggregate('bookingsByExperienceDay', {
161
+ source: {
162
+ type: 'Event',
163
+ where: [
164
+ { field: 'metadata.entityType', value: 'booking' },
165
+ { field: 'metadata.status', value: 'confirmed' }
166
+ ]
167
+ },
168
+ groupBy: [
169
+ { field: 'metadata.experienceSlug' },
170
+ { field: 'metadata.date', window: 'day' }
171
+ ],
172
+ metrics: {
173
+ bookingCount: { op: 'COUNT' },
174
+ totalGuests: { op: 'SUM', field: 'metadata.guestCount' },
175
+ avgGuests: { op: 'AVG', field: 'metadata.guestCount' }
176
+ }
177
+ });
178
+ ```
179
+
180
+ ---
181
+
182
+ ## Counts API
183
+
184
+ For fast total counts without full aggregation:
185
+
186
+ ```typescript
187
+ // Count all entities by NounType
188
+ const totals = await brain.counts.byType();
189
+ // Returns: { Location: 2, Product: 5, Event: 880, Person: 630, ... }
190
+
191
+ // Count with specific criteria
192
+ const todayBookings = await brain.counts.byCriteria({
193
+ type: 'Event',
194
+ criteria: [
195
+ { field: 'metadata.entityType', value: 'booking' },
196
+ { field: 'metadata.date', value: '2026-02-19' }
197
+ ]
198
+ });
199
+ // Returns: { count: 8 }
200
+
201
+ // Global database statistics
202
+ const stats = await brain.getStats();
203
+ // Returns: { totalEntities, totalRelationships, indexedAt, storeSizeBytes, ... }
204
+ ```
205
+
206
+ ---
207
+
208
+ ## Neural API
209
+
210
+ Brainy exposes ML-style operations over entity embeddings without an external model:
211
+
212
+ ```typescript
213
+ // Cluster customers into behavioral segments
214
+ const segments = await brain.neural().clusters({
215
+ numClusters: 5,
216
+ entityType: 'Person'
217
+ });
218
+ // Returns array of clusters, each with centroid, memberIds[], and summary stats
219
+
220
+ // Detect statistical outliers (VIPs, anomalies, churn risks)
221
+ const outliers = await brain.neural().outliers({
222
+ threshold: 2.5, // Z-score threshold
223
+ method: 'zscore', // 'zscore' | 'iqr'
224
+ entityType: 'Measurement'
225
+ });
226
+
227
+ // Find semantically similar entities
228
+ const similar = await brain.neural().similar('entity-id-uuid', {
229
+ limit: 10
230
+ });
231
+ // Returns entities with similarity scores, ordered descending
232
+ ```
233
+
234
+ ---
235
+
236
+ ## Streaming API
237
+
238
+ For large result sets or real-time feeds, use async generators:
239
+
240
+ ```typescript
241
+ // Stream all entities of a NounType
242
+ for await (const entity of brain.streaming.entities({ type: 'Event' })) {
243
+ // Process one entity at a time — memory-efficient for large sets
244
+ }
245
+
246
+ // Stream search results
247
+ for await (const result of brain.streaming.search('burgundy pinot noir', { type: 'Event' })) {
248
+ // result.entity, result.score
249
+ }
250
+ ```
251
+
252
+ ---
253
+
254
+ ## Tabular Export API
255
+
256
+ Export entity data as CSV or OData for spreadsheet and BI tool consumption:
257
+
258
+ ```typescript
259
+ import { TabularExporter } from '@soulcraft/brainy';
260
+
261
+ const exporter = new TabularExporter(brain);
262
+
263
+ // Export to CSV buffer
264
+ const csv = await exporter.exportCsv({
265
+ type: 'Measurement',
266
+ where: [{ field: 'metadata.entityType', value: 'transaction' }]
267
+ });
268
+
269
+ // Export as OData JSON (compatible with Power BI, Excel)
270
+ const odata = await exporter.exportOData({
271
+ type: 'Measurement',
272
+ where: [{ field: 'metadata.entityType', value: 'transaction' }]
273
+ });
274
+ ```
275
+
276
+ ---
277
+
278
+ ## Standard Query Patterns
279
+
280
+ ### Find all bookings for a location on a date
281
+ ```typescript
282
+ await brain.find({
283
+ type: 'Event',
284
+ where: [
285
+ { field: 'metadata.entityType', value: 'booking' },
286
+ { field: 'metadata.locationId', value: locationId },
287
+ { field: 'metadata.date', value: '2026-02-19' }
288
+ ],
289
+ orderBy: 'metadata.hour',
290
+ order: 'asc'
291
+ });
292
+ ```
293
+
294
+ ### Find inventory items below reorder threshold
295
+ ```typescript
296
+ await brain.find({
297
+ type: 'Thing',
298
+ where: [
299
+ { field: 'metadata.entityType', value: 'inventory-item' },
300
+ { field: 'metadata.locationId', value: locationId }
301
+ ]
302
+ // Filter client-side: items where quantity <= reorderThreshold
303
+ });
304
+ ```
305
+
306
+ ### Full-text + vector search
307
+ ```typescript
308
+ await brain.search('old world red burgundy pinot noir', {
309
+ type: 'Event',
310
+ limit: 20
311
+ });
312
+ ```
313
+
314
+ ---
315
+
316
+ ## Rules Summary
317
+
318
+ 1. **Amounts in cents** — `5500` = $55.00. Always divide by 100 before displaying.
319
+ 2. **Always filter `metadata.locationId`** when the user's question is about a specific tasting room location.
320
+ 3. **Always include `metadata.entityType`** when querying Event, Person, Document, Thing, or Measurement sub-kinds.
321
+ 4. **Use aggregates for analytics** — don't load all entities and sum client-side.
322
+ 5. **Use `brain.neural().clusters()`** for customer segmentation, never hard-code segments.
323
+ 6. **Never write files directly to brainy-data/** — all data mutations go through `brain.add()`, `brain.update()`, `brain.relate()`.