@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.
- package/kits/ai-content-studio/kit.json +358 -0
- package/kits/api-documentation/kit.json +358 -0
- package/kits/api-documentation/skills/api-examples/SKILL.md +176 -0
- package/kits/api-documentation/skills/api-review/SKILL.md +35 -0
- package/kits/api-documentation/skills/api-versioning/SKILL.md +156 -0
- package/kits/api-documentation/skills/create-code-examples/SKILL.md +42 -0
- package/kits/api-documentation/skills/define-resource/SKILL.md +39 -0
- package/kits/api-documentation/skills/document-auth/SKILL.md +39 -0
- package/kits/api-documentation/skills/document-endpoint/SKILL.md +40 -0
- package/kits/api-documentation/skills/kit-expertise/SKILL.md +78 -0
- package/kits/api-documentation/skills/openapi-spec/SKILL.md +174 -0
- package/kits/axe-house/kit.json +931 -0
- package/kits/axe-house/skills/axe-expertise/SKILL.md +259 -0
- package/kits/axe-house/skills/blog-draft/SKILL.md +147 -0
- package/kits/axe-house/skills/booking-digest/SKILL.md +188 -0
- package/kits/axe-house/skills/customer-insights/SKILL.md +215 -0
- package/kits/axe-house/skills/demand-forecast/SKILL.md +183 -0
- package/kits/axe-house/skills/email-campaign/SKILL.md +135 -0
- package/kits/axe-house/skills/experience-copy/SKILL.md +142 -0
- package/kits/axe-house/skills/guest-letter/SKILL.md +171 -0
- package/kits/axe-house/skills/inventory-health/SKILL.md +234 -0
- package/kits/axe-house/skills/league-manager/SKILL.md +264 -0
- package/kits/axe-house/skills/revenue-report/SKILL.md +240 -0
- package/kits/axe-house/skills/safety-briefing/SKILL.md +248 -0
- package/kits/axe-house/skills/social-calendar/SKILL.md +203 -0
- package/kits/axe-house/skills/staff-briefing/SKILL.md +231 -0
- package/kits/axe-house/skills/venue-data-model/SKILL.md +225 -0
- package/kits/blog-series/kit.json +363 -0
- package/kits/blog-series/skills/content-hooks/SKILL.md +158 -0
- package/kits/blog-series/skills/headline-brainstorm/SKILL.md +40 -0
- package/kits/blog-series/skills/kit-expertise/SKILL.md +78 -0
- package/kits/blog-series/skills/repurpose-content/SKILL.md +40 -0
- package/kits/blog-series/skills/seo-review/SKILL.md +41 -0
- package/kits/blog-series/skills/seo-writing/SKILL.md +135 -0
- package/kits/blog-series/skills/series-audit/SKILL.md +36 -0
- package/kits/blog-series/skills/write-post-outline/SKILL.md +42 -0
- package/kits/business-plan/kit.json +437 -0
- package/kits/business-plan/skills/competitor-analysis/SKILL.md +34 -0
- package/kits/business-plan/skills/financial-modeling/SKILL.md +180 -0
- package/kits/business-plan/skills/financial-projections/SKILL.md +42 -0
- package/kits/business-plan/skills/kit-expertise/SKILL.md +101 -0
- package/kits/business-plan/skills/market-analysis/SKILL.md +155 -0
- package/kits/business-plan/skills/market-research/SKILL.md +35 -0
- package/kits/business-plan/skills/sba-compliance/SKILL.md +163 -0
- package/kits/business-plan/skills/swot-analysis/SKILL.md +36 -0
- package/kits/canvas-and-corks/kit.json +910 -0
- package/kits/canvas-and-corks/skills/blog-draft/SKILL.md +160 -0
- package/kits/canvas-and-corks/skills/booking-digest/SKILL.md +147 -0
- package/kits/canvas-and-corks/skills/class-description/SKILL.md +53 -0
- package/kits/canvas-and-corks/skills/class-roster/SKILL.md +163 -0
- package/kits/canvas-and-corks/skills/customer-insights/SKILL.md +174 -0
- package/kits/canvas-and-corks/skills/demand-forecast/SKILL.md +191 -0
- package/kits/canvas-and-corks/skills/email-campaign/SKILL.md +154 -0
- package/kits/canvas-and-corks/skills/experience-copy/SKILL.md +152 -0
- package/kits/canvas-and-corks/skills/guest-letter/SKILL.md +127 -0
- package/kits/canvas-and-corks/skills/inventory-health/SKILL.md +204 -0
- package/kits/canvas-and-corks/skills/painting-memory/SKILL.md +76 -0
- package/kits/canvas-and-corks/skills/revenue-report/SKILL.md +196 -0
- package/kits/canvas-and-corks/skills/social-calendar/SKILL.md +146 -0
- package/kits/canvas-and-corks/skills/staff-briefing/SKILL.md +134 -0
- package/kits/canvas-and-corks/skills/studio-expertise/SKILL.md +181 -0
- package/kits/canvas-and-corks/skills/venue-data-model/SKILL.md +325 -0
- package/kits/character-relationship-map/kit.json +367 -0
- package/kits/character-relationship-map/skills/ensemble-balance/SKILL.md +189 -0
- package/kits/character-relationship-map/skills/kit-expertise/SKILL.md +83 -0
- package/kits/character-relationship-map/skills/relationship-dynamics/SKILL.md +158 -0
- package/kits/clay-and-co/kit.json +938 -0
- package/kits/clay-and-co/skills/blog-draft/SKILL.md +135 -0
- package/kits/clay-and-co/skills/booking-digest/SKILL.md +163 -0
- package/kits/clay-and-co/skills/customer-insights/SKILL.md +207 -0
- package/kits/clay-and-co/skills/demand-forecast/SKILL.md +166 -0
- package/kits/clay-and-co/skills/email-campaign/SKILL.md +125 -0
- package/kits/clay-and-co/skills/experience-copy/SKILL.md +132 -0
- package/kits/clay-and-co/skills/guest-letter/SKILL.md +104 -0
- package/kits/clay-and-co/skills/inventory-health/SKILL.md +211 -0
- package/kits/clay-and-co/skills/kiln-scheduler/SKILL.md +206 -0
- package/kits/clay-and-co/skills/piece-tracker/SKILL.md +165 -0
- package/kits/clay-and-co/skills/pottery-expertise/SKILL.md +165 -0
- package/kits/clay-and-co/skills/pottery-memory/SKILL.md +119 -0
- package/kits/clay-and-co/skills/revenue-report/SKILL.md +205 -0
- package/kits/clay-and-co/skills/social-calendar/SKILL.md +130 -0
- package/kits/clay-and-co/skills/staff-briefing/SKILL.md +213 -0
- package/kits/clay-and-co/skills/venue-data-model/SKILL.md +230 -0
- package/kits/concept-map/kit.json +353 -0
- package/kits/concept-map/skills/add-concept/SKILL.md +41 -0
- package/kits/concept-map/skills/assess-understanding/SKILL.md +36 -0
- package/kits/concept-map/skills/concept-hierarchy/SKILL.md +148 -0
- package/kits/concept-map/skills/create-learning-map/SKILL.md +42 -0
- package/kits/concept-map/skills/find-cross-links/SKILL.md +34 -0
- package/kits/concept-map/skills/identify-prerequisites/SKILL.md +40 -0
- package/kits/concept-map/skills/kit-expertise/SKILL.md +78 -0
- package/kits/concept-map/skills/relationship-types/SKILL.md +160 -0
- package/kits/content-calendar/kit.json +420 -0
- package/kits/content-calendar/skills/content-strategy/SKILL.md +174 -0
- package/kits/content-calendar/skills/create-brief/SKILL.md +40 -0
- package/kits/content-calendar/skills/generate-ideas/SKILL.md +40 -0
- package/kits/content-calendar/skills/kit-expertise/SKILL.md +100 -0
- package/kits/content-calendar/skills/plan-series/SKILL.md +40 -0
- package/kits/content-calendar/skills/repurpose-content/SKILL.md +38 -0
- package/kits/content-calendar/skills/repurposing/SKILL.md +179 -0
- package/kits/content-calendar/skills/weekly-review/SKILL.md +34 -0
- package/kits/coworking-space/kit.json +1068 -0
- package/kits/escape-vault/kit.json +1028 -0
- package/kits/escape-vault/skills/blog-draft/SKILL.md +157 -0
- package/kits/escape-vault/skills/booking-digest/SKILL.md +151 -0
- package/kits/escape-vault/skills/customer-insights/SKILL.md +185 -0
- package/kits/escape-vault/skills/demand-forecast/SKILL.md +188 -0
- package/kits/escape-vault/skills/email-campaign/SKILL.md +157 -0
- package/kits/escape-vault/skills/escape-expertise/SKILL.md +200 -0
- package/kits/escape-vault/skills/escape-memory/SKILL.md +99 -0
- package/kits/escape-vault/skills/experience-copy/SKILL.md +159 -0
- package/kits/escape-vault/skills/guest-letter/SKILL.md +143 -0
- package/kits/escape-vault/skills/inventory-health/SKILL.md +222 -0
- package/kits/escape-vault/skills/leaderboard-report/SKILL.md +204 -0
- package/kits/escape-vault/skills/revenue-report/SKILL.md +202 -0
- package/kits/escape-vault/skills/room-designer/SKILL.md +182 -0
- package/kits/escape-vault/skills/social-calendar/SKILL.md +148 -0
- package/kits/escape-vault/skills/staff-briefing/SKILL.md +159 -0
- package/kits/escape-vault/skills/venue-data-model/SKILL.md +335 -0
- package/kits/family-tree/kit.json +380 -0
- package/kits/family-tree/skills/add-family-member/SKILL.md +42 -0
- package/kits/family-tree/skills/analyze-relationship/SKILL.md +41 -0
- package/kits/family-tree/skills/export-gedcom/SKILL.md +34 -0
- package/kits/family-tree/skills/genealogy-research/SKILL.md +188 -0
- package/kits/family-tree/skills/kit-expertise/SKILL.md +107 -0
- package/kits/family-tree/skills/record-oral-history/SKILL.md +43 -0
- package/kits/family-tree/skills/relationship-mapping/SKILL.md +171 -0
- package/kits/family-tree/skills/research-ancestor/SKILL.md +43 -0
- package/kits/farkle-dice-game/kit.json +316 -0
- package/kits/farkle-dice-game/skills/kit-expertise/SKILL.md +137 -0
- package/kits/franchise-ops/kit.json +326 -0
- package/kits/freelance-portfolio/kit.json +435 -0
- package/kits/game-design-doc/kit.json +353 -0
- package/kits/game-design-doc/skills/balance-system/SKILL.md +40 -0
- package/kits/game-design-doc/skills/create-character/SKILL.md +40 -0
- package/kits/game-design-doc/skills/design-mechanic/SKILL.md +40 -0
- package/kits/game-design-doc/skills/economy-design/SKILL.md +152 -0
- package/kits/game-design-doc/skills/game-mechanics/SKILL.md +141 -0
- package/kits/game-design-doc/skills/ideate-features/SKILL.md +36 -0
- package/kits/game-design-doc/skills/kit-expertise/SKILL.md +78 -0
- package/kits/game-design-doc/skills/playtest-feedback/SKILL.md +142 -0
- package/kits/game-design-doc/skills/review-gdd/SKILL.md +33 -0
- package/kits/gather-and-grill/kit.json +966 -0
- package/kits/gather-and-grill/skills/blog-draft/SKILL.md +120 -0
- package/kits/gather-and-grill/skills/booking-digest/SKILL.md +171 -0
- package/kits/gather-and-grill/skills/cooking-memory/SKILL.md +100 -0
- package/kits/gather-and-grill/skills/culinary-expertise/SKILL.md +180 -0
- package/kits/gather-and-grill/skills/customer-insights/SKILL.md +184 -0
- package/kits/gather-and-grill/skills/demand-forecast/SKILL.md +200 -0
- package/kits/gather-and-grill/skills/email-campaign/SKILL.md +97 -0
- package/kits/gather-and-grill/skills/experience-copy/SKILL.md +92 -0
- package/kits/gather-and-grill/skills/guest-letter/SKILL.md +98 -0
- package/kits/gather-and-grill/skills/inventory-health/SKILL.md +193 -0
- package/kits/gather-and-grill/skills/menu-planner/SKILL.md +175 -0
- package/kits/gather-and-grill/skills/recipe-card/SKILL.md +194 -0
- package/kits/gather-and-grill/skills/revenue-report/SKILL.md +245 -0
- package/kits/gather-and-grill/skills/social-calendar/SKILL.md +139 -0
- package/kits/gather-and-grill/skills/staff-briefing/SKILL.md +167 -0
- package/kits/gather-and-grill/skills/venue-data-model/SKILL.md +336 -0
- package/kits/gtd-productivity-system/kit.json +389 -0
- package/kits/gtd-productivity-system/skills/break-down-project/SKILL.md +41 -0
- package/kits/gtd-productivity-system/skills/clarify-task/SKILL.md +42 -0
- package/kits/gtd-productivity-system/skills/gtd-methodology/SKILL.md +185 -0
- package/kits/gtd-productivity-system/skills/inbox-processing/SKILL.md +173 -0
- package/kits/gtd-productivity-system/skills/kit-expertise/SKILL.md +111 -0
- package/kits/gtd-productivity-system/skills/mind-sweep/SKILL.md +35 -0
- package/kits/gtd-productivity-system/skills/process-inbox/SKILL.md +40 -0
- package/kits/gtd-productivity-system/skills/weekly-review/SKILL.md +197 -0
- package/kits/gym-fitness/kit.json +1037 -0
- package/kits/interactive-fiction/kit.json +471 -0
- package/kits/invoice-generator/kit.json +466 -0
- package/kits/loyalty-program/kit.json +323 -0
- package/kits/marketing-plan/kit.json +417 -0
- package/kits/marketing-plan/skills/allocate-budget/SKILL.md +34 -0
- package/kits/marketing-plan/skills/campaign-metrics/SKILL.md +184 -0
- package/kits/marketing-plan/skills/channel-strategy/SKILL.md +156 -0
- package/kits/marketing-plan/skills/content-calendar/SKILL.md +34 -0
- package/kits/marketing-plan/skills/create-persona/SKILL.md +40 -0
- package/kits/marketing-plan/skills/kit-expertise/SKILL.md +109 -0
- package/kits/marketing-plan/skills/measure-performance/SKILL.md +34 -0
- package/kits/marketing-plan/skills/plan-campaign/SKILL.md +41 -0
- package/kits/marketing-site/kit.json +230 -0
- package/kits/marketing-site/skills/add-page/SKILL.md +28 -0
- package/kits/marketing-site/skills/add-section/SKILL.md +29 -0
- package/kits/marketing-site/skills/change-colors/SKILL.md +24 -0
- package/kits/marketing-site/skills/conversion-copy/SKILL.md +152 -0
- package/kits/marketing-site/skills/export-deploy/SKILL.md +24 -0
- package/kits/marketing-site/skills/kit-expertise/SKILL.md +77 -0
- package/kits/marketing-site/skills/landing-page/SKILL.md +156 -0
- package/kits/match-3-puzzle/kit.json +245 -0
- package/kits/match-3-puzzle/skills/kit-expertise/SKILL.md +96 -0
- package/kits/mind-map/kit.json +355 -0
- package/kits/mind-map/skills/add-branch/SKILL.md +40 -0
- package/kits/mind-map/skills/brainstorm-topic/SKILL.md +41 -0
- package/kits/mind-map/skills/branch-expansion/SKILL.md +181 -0
- package/kits/mind-map/skills/find-connections/SKILL.md +34 -0
- package/kits/mind-map/skills/kit-expertise/SKILL.md +78 -0
- package/kits/mind-map/skills/organize-map/SKILL.md +35 -0
- package/kits/mind-map/skills/radiant-thinking/SKILL.md +184 -0
- package/kits/mind-map/skills/summarize-map/SKILL.md +34 -0
- package/kits/music-collection/kit.json +403 -0
- package/kits/music-collection/skills/add-album/SKILL.md +44 -0
- package/kits/music-collection/skills/create-playlist/SKILL.md +37 -0
- package/kits/music-collection/skills/explore-artist/SKILL.md +37 -0
- package/kits/music-collection/skills/journal-session/SKILL.md +40 -0
- package/kits/music-collection/skills/kit-expertise/SKILL.md +98 -0
- package/kits/music-collection/skills/music-metadata/SKILL.md +209 -0
- package/kits/music-collection/skills/playlist-curator/SKILL.md +182 -0
- package/kits/music-collection/skills/recommend-similar/SKILL.md +36 -0
- package/kits/music-venue/kit.json +986 -0
- package/kits/novel-writing-system/kit.json +481 -0
- package/kits/novel-writing-system/skills/character-arc/SKILL.md +164 -0
- package/kits/novel-writing-system/skills/develop-character-arc/SKILL.md +42 -0
- package/kits/novel-writing-system/skills/kit-expertise/SKILL.md +84 -0
- package/kits/novel-writing-system/skills/outline-review/SKILL.md +34 -0
- package/kits/novel-writing-system/skills/plot-doctor/SKILL.md +221 -0
- package/kits/novel-writing-system/skills/plot-hole-check/SKILL.md +35 -0
- package/kits/novel-writing-system/skills/scene-development/SKILL.md +38 -0
- package/kits/novel-writing-system/skills/scene-sequel/SKILL.md +162 -0
- package/kits/novel-writing-system/skills/worldbuilding-session/SKILL.md +40 -0
- package/kits/organization-chart/kit.json +349 -0
- package/kits/organization-chart/skills/add-role/SKILL.md +41 -0
- package/kits/organization-chart/skills/analyze-span/SKILL.md +34 -0
- package/kits/organization-chart/skills/create-raci/SKILL.md +42 -0
- package/kits/organization-chart/skills/kit-expertise/SKILL.md +78 -0
- package/kits/organization-chart/skills/org-design/SKILL.md +188 -0
- package/kits/organization-chart/skills/org-health-check/SKILL.md +35 -0
- package/kits/organization-chart/skills/plan-reorg/SKILL.md +42 -0
- package/kits/organization-chart/skills/role-definition/SKILL.md +180 -0
- package/kits/paws-and-pour/kit.json +969 -0
- package/kits/paws-and-pour/skills/adoption-report/SKILL.md +273 -0
- package/kits/paws-and-pour/skills/animal-profile/SKILL.md +206 -0
- package/kits/paws-and-pour/skills/blog-draft/SKILL.md +137 -0
- package/kits/paws-and-pour/skills/booking-digest/SKILL.md +251 -0
- package/kits/paws-and-pour/skills/cafe-expertise/SKILL.md +218 -0
- package/kits/paws-and-pour/skills/cafe-memory/SKILL.md +114 -0
- package/kits/paws-and-pour/skills/customer-insights/SKILL.md +216 -0
- package/kits/paws-and-pour/skills/demand-forecast/SKILL.md +200 -0
- package/kits/paws-and-pour/skills/email-campaign/SKILL.md +154 -0
- package/kits/paws-and-pour/skills/experience-copy/SKILL.md +139 -0
- package/kits/paws-and-pour/skills/guest-letter/SKILL.md +183 -0
- package/kits/paws-and-pour/skills/inventory-health/SKILL.md +213 -0
- package/kits/paws-and-pour/skills/revenue-report/SKILL.md +273 -0
- package/kits/paws-and-pour/skills/social-calendar/SKILL.md +183 -0
- package/kits/paws-and-pour/skills/staff-briefing/SKILL.md +223 -0
- package/kits/paws-and-pour/skills/venue-data-model/SKILL.md +260 -0
- package/kits/persona-driven-strategy/kit.json +352 -0
- package/kits/persona-driven-strategy/skills/empathy-mapping/SKILL.md +221 -0
- package/kits/persona-driven-strategy/skills/journey-mapping/SKILL.md +219 -0
- package/kits/persona-driven-strategy/skills/kit-expertise/SKILL.md +81 -0
- package/kits/persona-driven-strategy/skills/persona-development/SKILL.md +189 -0
- package/kits/personal-crm/kit.json +373 -0
- package/kits/personal-crm/skills/add-contact/SKILL.md +42 -0
- package/kits/personal-crm/skills/connect-contacts/SKILL.md +41 -0
- package/kits/personal-crm/skills/find-dormant/SKILL.md +35 -0
- package/kits/personal-crm/skills/kit-expertise/SKILL.md +82 -0
- package/kits/personal-crm/skills/log-interaction/SKILL.md +43 -0
- package/kits/personal-crm/skills/network-analysis/SKILL.md +161 -0
- package/kits/personal-crm/skills/relationship-insights/SKILL.md +153 -0
- package/kits/personal-wiki/kit.json +322 -0
- package/kits/personal-wiki/skills/kit-expertise/SKILL.md +81 -0
- package/kits/personal-wiki/skills/orphan-finder/SKILL.md +155 -0
- package/kits/personal-wiki/skills/wiki-structure/SKILL.md +179 -0
- package/kits/petal-press/kit.json +996 -0
- package/kits/petal-press/skills/arrangement-memory/SKILL.md +143 -0
- package/kits/petal-press/skills/blog-draft/SKILL.md +167 -0
- package/kits/petal-press/skills/booking-digest/SKILL.md +196 -0
- package/kits/petal-press/skills/care-card/SKILL.md +173 -0
- package/kits/petal-press/skills/customer-insights/SKILL.md +213 -0
- package/kits/petal-press/skills/demand-forecast/SKILL.md +203 -0
- package/kits/petal-press/skills/email-campaign/SKILL.md +204 -0
- package/kits/petal-press/skills/experience-copy/SKILL.md +184 -0
- package/kits/petal-press/skills/floral-expertise/SKILL.md +244 -0
- package/kits/petal-press/skills/guest-letter/SKILL.md +153 -0
- package/kits/petal-press/skills/inventory-health/SKILL.md +201 -0
- package/kits/petal-press/skills/revenue-report/SKILL.md +219 -0
- package/kits/petal-press/skills/seasonal-guide/SKILL.md +238 -0
- package/kits/petal-press/skills/social-calendar/SKILL.md +217 -0
- package/kits/petal-press/skills/staff-briefing/SKILL.md +217 -0
- package/kits/petal-press/skills/venue-data-model/SKILL.md +226 -0
- package/kits/pitch-deck/kit.json +416 -0
- package/kits/pitch-deck/skills/calculate-market-size/SKILL.md +41 -0
- package/kits/pitch-deck/skills/develop-problem-slide/SKILL.md +39 -0
- package/kits/pitch-deck/skills/investor-qa/SKILL.md +182 -0
- package/kits/pitch-deck/skills/investor-qa-prep/SKILL.md +36 -0
- package/kits/pitch-deck/skills/kit-expertise/SKILL.md +112 -0
- package/kits/pitch-deck/skills/pitch-structure/SKILL.md +186 -0
- package/kits/pitch-deck/skills/practice-pitch/SKILL.md +36 -0
- package/kits/podcast-series/kit.json +324 -0
- package/kits/podcast-series/skills/audience-growth/SKILL.md +38 -0
- package/kits/podcast-series/skills/create-guest-profile/SKILL.md +42 -0
- package/kits/podcast-series/skills/episode-structure/SKILL.md +189 -0
- package/kits/podcast-series/skills/guest-research/SKILL.md +167 -0
- package/kits/podcast-series/skills/kit-expertise/SKILL.md +81 -0
- package/kits/podcast-series/skills/plan-episode/SKILL.md +44 -0
- package/kits/podcast-series/skills/prepare-guest/SKILL.md +45 -0
- package/kits/podcast-series/skills/show-notes/SKILL.md +182 -0
- package/kits/podcast-series/skills/write-show-notes/SKILL.md +43 -0
- package/kits/pour-house/kit.json +912 -0
- package/kits/pour-house/skills/blog-draft/SKILL.md +138 -0
- package/kits/pour-house/skills/booking-digest/SKILL.md +151 -0
- package/kits/pour-house/skills/cellar-report/SKILL.md +251 -0
- package/kits/pour-house/skills/customer-insights/SKILL.md +184 -0
- package/kits/pour-house/skills/demand-forecast/SKILL.md +156 -0
- package/kits/pour-house/skills/email-campaign/SKILL.md +130 -0
- package/kits/pour-house/skills/experience-copy/SKILL.md +125 -0
- package/kits/pour-house/skills/guest-letter/SKILL.md +136 -0
- package/kits/pour-house/skills/inventory-health/SKILL.md +159 -0
- package/kits/pour-house/skills/pour-memory/SKILL.md +89 -0
- package/kits/pour-house/skills/revenue-report/SKILL.md +232 -0
- package/kits/pour-house/skills/social-calendar/SKILL.md +140 -0
- package/kits/pour-house/skills/sommelier-expertise/SKILL.md +324 -0
- package/kits/pour-house/skills/staff-briefing/SKILL.md +176 -0
- package/kits/pour-house/skills/tasting-notes/SKILL.md +179 -0
- package/kits/pour-house/skills/venue-data-model/SKILL.md +323 -0
- package/kits/presentation/kit.json +296 -0
- package/kits/product-requirements-doc/kit.json +365 -0
- package/kits/product-requirements-doc/skills/acceptance-criteria/SKILL.md +219 -0
- package/kits/product-requirements-doc/skills/create-user-story/SKILL.md +43 -0
- package/kits/product-requirements-doc/skills/define-success-metrics/SKILL.md +41 -0
- package/kits/product-requirements-doc/skills/kit-expertise/SKILL.md +81 -0
- package/kits/product-requirements-doc/skills/prd-review/SKILL.md +39 -0
- package/kits/product-requirements-doc/skills/prd-structure/SKILL.md +206 -0
- package/kits/product-requirements-doc/skills/prioritize-features/SKILL.md +43 -0
- package/kits/product-requirements-doc/skills/synthesize-research/SKILL.md +43 -0
- package/kits/product-requirements-doc/skills/user-stories/SKILL.md +198 -0
- package/kits/project-timeline/kit.json +367 -0
- package/kits/project-timeline/skills/add-milestone/SKILL.md +44 -0
- package/kits/project-timeline/skills/add-task/SKILL.md +43 -0
- package/kits/project-timeline/skills/assess-risks/SKILL.md +39 -0
- package/kits/project-timeline/skills/dependency-analysis/SKILL.md +176 -0
- package/kits/project-timeline/skills/identify-critical-path/SKILL.md +37 -0
- package/kits/project-timeline/skills/kit-expertise/SKILL.md +81 -0
- package/kits/project-timeline/skills/milestone-planning/SKILL.md +169 -0
- package/kits/project-timeline/skills/status-update/SKILL.md +39 -0
- package/kits/reading-tracker/kit.json +368 -0
- package/kits/reading-tracker/skills/add-book/SKILL.md +32 -0
- package/kits/reading-tracker/skills/book-connections/SKILL.md +161 -0
- package/kits/reading-tracker/skills/kit-expertise/SKILL.md +72 -0
- package/kits/reading-tracker/skills/log-progress/SKILL.md +29 -0
- package/kits/reading-tracker/skills/reading-insights/SKILL.md +179 -0
- package/kits/reading-tracker/skills/save-quote/SKILL.md +30 -0
- package/kits/recipe-manager/kit.json +376 -0
- package/kits/recipe-manager/skills/add-recipe/SKILL.md +33 -0
- package/kits/recipe-manager/skills/generate-shopping-list/SKILL.md +27 -0
- package/kits/recipe-manager/skills/ingredient-substitutions/SKILL.md +157 -0
- package/kits/recipe-manager/skills/kit-expertise/SKILL.md +72 -0
- package/kits/recipe-manager/skills/meal-planning/SKILL.md +184 -0
- package/kits/recipe-manager/skills/plan-meal/SKILL.md +31 -0
- package/kits/recipe-manager/skills/scaling-recipes/SKILL.md +183 -0
- package/kits/saas-app/kit.json +405 -0
- package/kits/saas-app/skills/churn-analysis/SKILL.md +219 -0
- package/kits/saas-app/skills/onboarding-flow/SKILL.md +217 -0
- package/kits/saas-app/skills/pricing-model/SKILL.md +192 -0
- package/kits/saas-app/skills/saas-expertise/SKILL.md +95 -0
- package/kits/salon-barbershop/kit.json +1021 -0
- package/kits/screenplay-writing/kit.json +412 -0
- package/kits/screenplay-writing/skills/analyze-scene/SKILL.md +42 -0
- package/kits/screenplay-writing/skills/beat-sheet/SKILL.md +134 -0
- package/kits/screenplay-writing/skills/create-scene-card/SKILL.md +46 -0
- package/kits/screenplay-writing/skills/develop-character/SKILL.md +43 -0
- package/kits/screenplay-writing/skills/generate-beat-sheet/SKILL.md +49 -0
- package/kits/screenplay-writing/skills/kit-expertise/SKILL.md +90 -0
- package/kits/screenplay-writing/skills/scene-analysis/SKILL.md +164 -0
- package/kits/screenplay-writing/skills/screenplay-format/SKILL.md +108 -0
- package/kits/social-media-manager/kit.json +476 -0
- package/kits/teacher-lesson-plan/kit.json +410 -0
- package/kits/teacher-lesson-plan/skills/assessment-design/SKILL.md +162 -0
- package/kits/teacher-lesson-plan/skills/blooms-taxonomy/SKILL.md +139 -0
- package/kits/teacher-lesson-plan/skills/create-lesson/SKILL.md +34 -0
- package/kits/teacher-lesson-plan/skills/design-unit/SKILL.md +28 -0
- package/kits/teacher-lesson-plan/skills/differentiate-lesson/SKILL.md +28 -0
- package/kits/teacher-lesson-plan/skills/differentiation/SKILL.md +180 -0
- package/kits/teacher-lesson-plan/skills/kit-expertise/SKILL.md +96 -0
- package/kits/teacher-lesson-plan/skills/schedule-lesson/SKILL.md +31 -0
- package/kits/technical-specification/kit.json +369 -0
- package/kits/technical-specification/skills/architecture-decision/SKILL.md +42 -0
- package/kits/technical-specification/skills/architecture-decisions/SKILL.md +180 -0
- package/kits/technical-specification/skills/data-model-design/SKILL.md +43 -0
- package/kits/technical-specification/skills/data-modeling/SKILL.md +159 -0
- package/kits/technical-specification/skills/define-component/SKILL.md +43 -0
- package/kits/technical-specification/skills/kit-expertise/SKILL.md +81 -0
- package/kits/technical-specification/skills/requirements-analysis/SKILL.md +42 -0
- package/kits/technical-specification/skills/security-review/SKILL.md +170 -0
- package/kits/technical-specification/skills/spec-review/SKILL.md +39 -0
- package/kits/wanderlands/kit.json +399 -0
- package/kits/wanderlands/skills/kit-expertise/SKILL.md +376 -0
- package/kits/web-application/kit.json +257 -0
- package/kits/web-application/skills/kit-expertise/SKILL.md +211 -0
- package/kits/wicks-and-whiskers/kit.json +1267 -0
- package/kits/wicks-and-whiskers/skills/blog-draft/SKILL.md +145 -0
- package/kits/wicks-and-whiskers/skills/booking-digest/SKILL.md +142 -0
- package/kits/wicks-and-whiskers/skills/candle-expertise/SKILL.md +69 -0
- package/kits/wicks-and-whiskers/skills/customer-insights/SKILL.md +176 -0
- package/kits/wicks-and-whiskers/skills/demand-forecast/SKILL.md +159 -0
- package/kits/wicks-and-whiskers/skills/email-campaign/SKILL.md +131 -0
- package/kits/wicks-and-whiskers/skills/experience-copy/SKILL.md +135 -0
- package/kits/wicks-and-whiskers/skills/guest-letter/SKILL.md +154 -0
- package/kits/wicks-and-whiskers/skills/inventory-health/SKILL.md +185 -0
- package/kits/wicks-and-whiskers/skills/kitten-profile/SKILL.md +159 -0
- package/kits/wicks-and-whiskers/skills/memory-narrative/SKILL.md +71 -0
- package/kits/wicks-and-whiskers/skills/revenue-report/SKILL.md +197 -0
- package/kits/wicks-and-whiskers/skills/social-calendar/SKILL.md +161 -0
- package/kits/wicks-and-whiskers/skills/staff-briefing/SKILL.md +174 -0
- package/kits/wicks-and-whiskers/skills/venue-data-model/SKILL.md +228 -0
- package/kits/world-building/kit.json +497 -0
- package/kits/world-building/skills/consistency-check/SKILL.md +179 -0
- package/kits/world-building/skills/create-character/SKILL.md +44 -0
- package/kits/world-building/skills/create-faction/SKILL.md +44 -0
- package/kits/world-building/skills/create-location/SKILL.md +44 -0
- package/kits/world-building/skills/create-timeline/SKILL.md +39 -0
- package/kits/world-building/skills/culture-builder/SKILL.md +171 -0
- package/kits/world-building/skills/design-magic-system/SKILL.md +38 -0
- package/kits/world-building/skills/kit-expertise/SKILL.md +110 -0
- package/kits/world-building/skills/magic-systems/SKILL.md +161 -0
- package/kits/youtube-content-plan/kit.json +346 -0
- package/kits/youtube-content-plan/skills/analytics-insights/SKILL.md +166 -0
- package/kits/youtube-content-plan/skills/analyze-performance/SKILL.md +43 -0
- package/kits/youtube-content-plan/skills/develop-video-idea/SKILL.md +45 -0
- package/kits/youtube-content-plan/skills/generate-ideas/SKILL.md +42 -0
- package/kits/youtube-content-plan/skills/kit-expertise/SKILL.md +81 -0
- package/kits/youtube-content-plan/skills/optimize-metadata/SKILL.md +43 -0
- package/kits/youtube-content-plan/skills/script-writing/SKILL.md +180 -0
- package/kits/youtube-content-plan/skills/write-script/SKILL.md +44 -0
- package/kits/youtube-content-plan/skills/youtube-seo/SKILL.md +172 -0
- package/package.json +43 -0
- package/src/index.ts +35 -0
- package/src/kits/ai-content-studio.ts +377 -0
- package/src/kits/api-documentation.ts +352 -0
- package/src/kits/axe-house.ts +949 -0
- package/src/kits/blog-series.ts +357 -0
- package/src/kits/business-plan.ts +406 -0
- package/src/kits/canvas-and-corks.ts +928 -0
- package/src/kits/character-relationship-map.ts +368 -0
- package/src/kits/clay-and-co.ts +956 -0
- package/src/kits/concept-map.ts +354 -0
- package/src/kits/content-calendar.ts +399 -0
- package/src/kits/coworking-space.ts +1084 -0
- package/src/kits/escape-vault.ts +1046 -0
- package/src/kits/family-tree.ts +381 -0
- package/src/kits/farkle-dice-game.ts +318 -0
- package/src/kits/franchise-ops.ts +345 -0
- package/src/kits/freelance-portfolio.ts +453 -0
- package/src/kits/game-design-doc.ts +353 -0
- package/src/kits/gather-and-grill.ts +984 -0
- package/src/kits/gtd-productivity-system.ts +389 -0
- package/src/kits/gym-fitness.ts +1053 -0
- package/src/kits/index.ts +76 -0
- package/src/kits/interactive-fiction.ts +489 -0
- package/src/kits/invoice-generator.ts +484 -0
- package/src/kits/loyalty-program.ts +342 -0
- package/src/kits/marketing-plan.ts +398 -0
- package/src/kits/marketing-site.ts +248 -0
- package/src/kits/match-3-puzzle.ts +248 -0
- package/src/kits/mind-map.ts +356 -0
- package/src/kits/music-collection.ts +404 -0
- package/src/kits/music-venue.ts +1002 -0
- package/src/kits/novel-writing-system.ts +461 -0
- package/src/kits/organization-chart.ts +350 -0
- package/src/kits/paws-and-pour.ts +987 -0
- package/src/kits/persona-driven-strategy.ts +345 -0
- package/src/kits/personal-crm.ts +391 -0
- package/src/kits/personal-wiki.ts +323 -0
- package/src/kits/petal-press.ts +1014 -0
- package/src/kits/pitch-deck.ts +395 -0
- package/src/kits/podcast-series.ts +324 -0
- package/src/kits/pour-house.ts +930 -0
- package/src/kits/presentation.ts +276 -0
- package/src/kits/product-requirements-doc.ts +359 -0
- package/src/kits/project-timeline.ts +368 -0
- package/src/kits/reading-tracker.ts +368 -0
- package/src/kits/recipe-manager.ts +376 -0
- package/src/kits/saas-app.ts +423 -0
- package/src/kits/salon-barbershop.ts +1037 -0
- package/src/kits/screenplay-writing.ts +412 -0
- package/src/kits/social-media-manager.ts +494 -0
- package/src/kits/teacher-lesson-plan.ts +410 -0
- package/src/kits/technical-specification.ts +363 -0
- package/src/kits/wanderlands.ts +401 -0
- package/src/kits/web-application.ts +275 -0
- package/src/kits/wicks-and-whiskers.ts +1285 -0
- package/src/kits/world-building.ts +476 -0
- package/src/kits/youtube-content-plan.ts +339 -0
- package/src/registry.ts +60 -0
- package/src/skills/api-documentation/index.ts +47 -0
- package/src/skills/axe-house/index.ts +71 -0
- package/src/skills/blog-series/index.ts +43 -0
- package/src/skills/business-plan/index.ts +43 -0
- package/src/skills/canvas-and-corks/index.ts +75 -0
- package/src/skills/character-relationship-map/index.ts +23 -0
- package/src/skills/clay-and-co/index.ts +75 -0
- package/src/skills/concept-map/index.ts +43 -0
- package/src/skills/content-calendar/index.ts +43 -0
- package/src/skills/escape-vault/index.ts +75 -0
- package/src/skills/family-tree/index.ts +43 -0
- package/src/skills/farkle-dice-game/index.ts +15 -0
- package/src/skills/game-design-doc/index.ts +47 -0
- package/src/skills/gather-and-grill/index.ts +75 -0
- package/src/skills/gtd-productivity-system/index.ts +43 -0
- package/src/skills/index.ts +109 -0
- package/src/skills/marketing-plan/index.ts +43 -0
- package/src/skills/marketing-site/index.ts +39 -0
- package/src/skills/match-3-puzzle/index.ts +15 -0
- package/src/skills/mind-map/index.ts +43 -0
- package/src/skills/music-collection/index.ts +43 -0
- package/src/skills/novel-writing-system/index.ts +47 -0
- package/src/skills/organization-chart/index.ts +43 -0
- package/src/skills/paws-and-pour/index.ts +75 -0
- package/src/skills/persona-driven-strategy/index.ts +27 -0
- package/src/skills/personal-crm/index.ts +39 -0
- package/src/skills/personal-wiki/index.ts +23 -0
- package/src/skills/petal-press/index.ts +75 -0
- package/src/skills/pitch-deck/index.ts +39 -0
- package/src/skills/podcast-series/index.ts +47 -0
- package/src/skills/pour-house/index.ts +75 -0
- package/src/skills/product-requirements-doc/index.ts +47 -0
- package/src/skills/project-timeline/index.ts +43 -0
- package/src/skills/reading-tracker/index.ts +35 -0
- package/src/skills/recipe-manager/index.ts +39 -0
- package/src/skills/saas-app/index.ts +27 -0
- package/src/skills/screenplay-writing/index.ts +43 -0
- package/src/skills/teacher-lesson-plan/index.ts +43 -0
- package/src/skills/technical-specification/index.ts +47 -0
- package/src/skills/wanderlands/index.ts +15 -0
- package/src/skills/web-application/index.ts +15 -0
- package/src/skills/wicks-and-whiskers/index.ts +71 -0
- package/src/skills/world-building/index.ts +47 -0
- package/src/skills/youtube-content-plan/index.ts +47 -0
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: staff-briefing
|
|
3
|
+
name: Staff Operations Briefing
|
|
4
|
+
description: Generates a structured shift briefing for the opening or afternoon team covering today's lane schedule, waiver status, equipment and maintenance alerts, beverage inventory flags, and tonight's league status if applicable.
|
|
5
|
+
type: invocable
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
requiresVision: false
|
|
8
|
+
requiresData: true
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Staff Operations Briefing
|
|
12
|
+
|
|
13
|
+
You generate the daily shift briefing for {{businessName}} staff. When triggered, pull live data from Brainy and produce a structured, scannable briefing that gives the opening or afternoon team everything they need before the first session begins.
|
|
14
|
+
|
|
15
|
+
## When to Trigger
|
|
16
|
+
|
|
17
|
+
Invoke this skill when staff ask:
|
|
18
|
+
|
|
19
|
+
- "What's on today?"
|
|
20
|
+
- "Give me the morning briefing"
|
|
21
|
+
- "Daily briefing"
|
|
22
|
+
- "What do we have this shift?"
|
|
23
|
+
- "How many bookings today?"
|
|
24
|
+
- Any shift check-in request at shift start
|
|
25
|
+
|
|
26
|
+
## Data to Pull
|
|
27
|
+
|
|
28
|
+
Run these queries before generating the briefing. All queries must filter by `metadata.locationId`.
|
|
29
|
+
|
|
30
|
+
### 1. Today's Bookings by Session Type
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
brain.defineAggregate('todayBookingsByExperience', {
|
|
34
|
+
source: {
|
|
35
|
+
type: 'Event',
|
|
36
|
+
where: [
|
|
37
|
+
{ field: 'metadata.entityType', value: 'booking' },
|
|
38
|
+
{ field: 'metadata.date', value: TODAY },
|
|
39
|
+
{ field: 'metadata.status', value: 'confirmed' }
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
groupBy: [{ field: 'metadata.experienceSlug' }],
|
|
43
|
+
metrics: {
|
|
44
|
+
bookingCount: { op: 'COUNT' },
|
|
45
|
+
totalGuests: { op: 'SUM', field: 'metadata.guestCount' },
|
|
46
|
+
totalRevenue: { op: 'SUM', field: 'metadata.totalInCents' }
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
const byExperience = await brain.find({
|
|
51
|
+
aggregate: 'todayBookingsByExperience',
|
|
52
|
+
where: [{ field: 'metadata.locationId', value: LOCATION_ID }]
|
|
53
|
+
});
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### 2. Time-Slot Schedule (Lane by Lane)
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
const slots = await brain.find({
|
|
60
|
+
type: 'Event',
|
|
61
|
+
where: [
|
|
62
|
+
{ field: 'metadata.entityType', value: 'time-slot' },
|
|
63
|
+
{ field: 'metadata.date', value: TODAY },
|
|
64
|
+
{ field: 'metadata.locationId', value: LOCATION_ID }
|
|
65
|
+
],
|
|
66
|
+
orderBy: 'metadata.hour',
|
|
67
|
+
order: 'asc'
|
|
68
|
+
});
|
|
69
|
+
// Each slot: { hour, experienceSlug, capacity, reservedCount }
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Also pull the full booking list for today to show waivers:
|
|
73
|
+
|
|
74
|
+
```typescript
|
|
75
|
+
const todayBookings = await brain.find({
|
|
76
|
+
type: 'Event',
|
|
77
|
+
where: [
|
|
78
|
+
{ field: 'metadata.entityType', value: 'booking' },
|
|
79
|
+
{ field: 'metadata.date', value: TODAY },
|
|
80
|
+
{ field: 'metadata.status', value: 'confirmed' },
|
|
81
|
+
{ field: 'metadata.locationId', value: LOCATION_ID }
|
|
82
|
+
],
|
|
83
|
+
orderBy: 'metadata.hour',
|
|
84
|
+
order: 'asc'
|
|
85
|
+
});
|
|
86
|
+
// Check .data.waiversSigned for each booking
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 3. Inventory Alerts (Safety & Equipment Priority)
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
const inventoryItems = await brain.find({
|
|
93
|
+
type: 'Thing',
|
|
94
|
+
where: [
|
|
95
|
+
{ field: 'metadata.entityType', value: 'inventory-item' },
|
|
96
|
+
{ field: 'metadata.locationId', value: LOCATION_ID }
|
|
97
|
+
]
|
|
98
|
+
});
|
|
99
|
+
// Filter client-side: items.filter(i => i.metadata.quantity < i.metadata.reorderThreshold)
|
|
100
|
+
// CRITICAL: flag safety and hatchet/big-axe category items first
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Briefing Structure
|
|
104
|
+
|
|
105
|
+
Output the briefing in this exact order. Use markdown formatting so it renders cleanly in the assistant UI.
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
### 1. Greeting
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
Welcome to {{locationName}}!
|
|
113
|
+
[Day of week], [Full date]
|
|
114
|
+
Coach on duty: [staff name if available from schedule data]
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### 2. Today's Sessions
|
|
118
|
+
|
|
119
|
+
Present every time slot in chronological order. For each block:
|
|
120
|
+
|
|
121
|
+
- **Time** (e.g., 4:00 PM)
|
|
122
|
+
- **Session type** (Open Throw, League Night, Private Party, Corporate Event, Axe 101 Lesson)
|
|
123
|
+
- **Lanes assigned** (laneNumber from session attributes if already set, otherwise "TBD")
|
|
124
|
+
- **Guests** (reservedCount / capacity — show percentage)
|
|
125
|
+
- **Party name** (for private parties and corporate events — pull from booking data or session attributes)
|
|
126
|
+
- **Waiver status** — flag any bookings where not all guests have signed
|
|
127
|
+
|
|
128
|
+
Flag slots at 100% capacity as **SOLD OUT**. Flag slots at 80%+ as **NEARLY FULL**.
|
|
129
|
+
|
|
130
|
+
Example:
|
|
131
|
+
```
|
|
132
|
+
4:00 PM — Open Throw Session
|
|
133
|
+
Lane 3 · 4/6 guests (67%)
|
|
134
|
+
Booking AX-0219-A · All waivers signed ✓
|
|
135
|
+
|
|
136
|
+
6:00 PM — Private Party
|
|
137
|
+
Lanes 1–3 · 12/12 guests (SOLD OUT)
|
|
138
|
+
Party: "Rodriguez Bachelorette" · ⚠️ 3 waivers not yet signed
|
|
139
|
+
Competition format: tournament
|
|
140
|
+
|
|
141
|
+
8:00 PM — League Night
|
|
142
|
+
Lanes 4–8 · Week 3 of Season 2 · 8 teams registered
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### 3. Equipment Check
|
|
146
|
+
|
|
147
|
+
Pull from inventory items with category `hatchet` or `big-axe`:
|
|
148
|
+
|
|
149
|
+
- List any axes currently flagged in maintenance notes (check `metadata.maintenanceStatus` if available)
|
|
150
|
+
- Show count of available hatchets and big axes
|
|
151
|
+
- If any axes are past their sharpening threshold (based on session count in item notes), flag them
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
Equipment Status:
|
|
155
|
+
Hatchets: 14 available (2 flagged for sharpening — remove before first session)
|
|
156
|
+
Big Axes: 6 available (all OK)
|
|
157
|
+
|
|
158
|
+
⚠️ Maintenance Queue: Hatchet #7 and #12 — due for edge sharpening based on session count.
|
|
159
|
+
Pull from rotation before opening.
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
If all equipment is clear: "All axes inspected and in rotation. No maintenance flags."
|
|
163
|
+
|
|
164
|
+
### 4. Target Board Status
|
|
165
|
+
|
|
166
|
+
Check inventory items in category `targets` for rotation notes:
|
|
167
|
+
|
|
168
|
+
- Flag any boards approaching the flip threshold
|
|
169
|
+
- If a board was recently noted for replacement, surface it here
|
|
170
|
+
|
|
171
|
+
If no flags: "All target boards are in good condition."
|
|
172
|
+
|
|
173
|
+
### 5. Bar & Beverage Status
|
|
174
|
+
|
|
175
|
+
Pull inventory items with category `beverages`:
|
|
176
|
+
|
|
177
|
+
```typescript
|
|
178
|
+
const beverages = inventoryItems.filter(i => i.metadata.category === 'beverages');
|
|
179
|
+
const low = beverages.filter(i => i.metadata.quantity < i.metadata.reorderThreshold);
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
If low items exist: show a table (item | in stock | reorder point | status).
|
|
183
|
+
If all OK: "Bar inventory is fully stocked."
|
|
184
|
+
|
|
185
|
+
### 6. League Night Note
|
|
186
|
+
|
|
187
|
+
If today is a league night (check if any time-slot has `experienceSlug === 'league-night'`):
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
Tonight: League Night — Season [N], Week [N]
|
|
191
|
+
Teams scheduled: [team names from booking session attributes]
|
|
192
|
+
Standings reminder: See league-manager skill for current standings
|
|
193
|
+
Action: Set up scoreboard on all league lanes before 7:00 PM
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### 7. Opening Action Items
|
|
197
|
+
|
|
198
|
+
Always end with this checklist. Check inventory and waiver status to add conditional items:
|
|
199
|
+
|
|
200
|
+
```
|
|
201
|
+
Pre-Shift Checklist
|
|
202
|
+
[ ] Inspect all hatchets and big axes — remove any flagged for maintenance
|
|
203
|
+
[ ] Confirm target boards are set and boards not flagged for rotation
|
|
204
|
+
[ ] Waiver station powered on — tablet charged, link tested, backup paper forms available
|
|
205
|
+
[ ] POS confirmed — opening float counted, card reader online
|
|
206
|
+
[ ] Lane scoreboard systems powered up and tested
|
|
207
|
+
[ ] Bar stocked and opening prep complete
|
|
208
|
+
[ ] House rules posted visibly at each lane
|
|
209
|
+
[ ] Parking and entrance signage in place
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
If waivers are missing for today's bookings, add:
|
|
213
|
+
```
|
|
214
|
+
[ ] ⚠️ [N] guests have not signed waivers — text reminder link before session start
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
If axes are flagged for maintenance, add:
|
|
218
|
+
```
|
|
219
|
+
[ ] ⚠️ Pull Hatchet #7 and #12 from rotation — sharpen before returning to floor
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
If any beverage items are low, add:
|
|
223
|
+
```
|
|
224
|
+
[ ] ⚠️ Reorder [item] — below par level
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
## Tone
|
|
228
|
+
|
|
229
|
+
Direct, practical, and confident. The briefing should read like it was written by a senior coach who has already done the hard work of pulling the data and just needs to hand it off. No fluff. Staff should be able to scan it in 60 seconds and know exactly what needs attention.
|
|
230
|
+
|
|
231
|
+
Use tables and bullet points. Keep prose to a minimum. If everything is clear, say so in one line — don't pad.
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: venue-data-model
|
|
3
|
+
name: Venue Data Model
|
|
4
|
+
description: Background skill teaching the AI assistant the complete Venue platform data architecture — entity types, relationships, and the full Brainy API including aggregates, neural clustering, streaming, and counts.
|
|
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 on the Venue platform, built on **@soulcraft/brainy** — a graph database with vector search, neural clustering, and aggregate query capabilities. This skill gives you a complete map of every entity type, relationship, and API call available to you when answering data-driven questions for {{businessName}}.
|
|
14
|
+
|
|
15
|
+
## Entity Types
|
|
16
|
+
|
|
17
|
+
Every entity has a `type` (NounType) and a `metadata.entityType` string that further classifies it within that type. Always filter by both when querying.
|
|
18
|
+
|
|
19
|
+
| NounType | `metadata.entityType` | Purpose | Key Metadata Fields |
|
|
20
|
+
|---|---|---|---|
|
|
21
|
+
| Location | `location` | Franchise location record | `address`, `hours`, `timezone`, `stripeAccountId`, `locationId` |
|
|
22
|
+
| Product | `experience` | Bookable experience / ticket type | `slug`, `name`, `priceInCents`, `durationMinutes`, `minGuests`, `maxGuests`, `locationId` |
|
|
23
|
+
| Event | `booking` | Guest reservation | `status` (pending/confirmed/completed/cancelled), `experienceSlug`, `guestCount`, `totalInCents`, `locationId`, `date`, `bookingNumber`, `checkedIn` |
|
|
24
|
+
| Event | `time-slot` | Capacity block on the schedule | `date`, `hour`, `experienceSlug`, `capacity`, `reservedCount`, `locationId` |
|
|
25
|
+
| Event | `audit-event` | Append-only action log | `action`, `actorId`, `actorName`, `entityId`, `entityType`, `locationId` |
|
|
26
|
+
| Person | `customer` | Guest profile | `email`, `displayName`, `totalBookings`, `totalSpentInCents`, `loyaltyTier`, `locationId` |
|
|
27
|
+
| Person | `staff` | Employee record | `email`, `role`, `permissions`, `locationId` |
|
|
28
|
+
| Person | `loyalty-account` | Points balance and tier | `customerId`, `pointsBalance`, `tier` (bronze/silver/gold/platinum), `locationId` |
|
|
29
|
+
| Document | `waiver` | Signed digital waiver | `bookingId`, `signerName`, `signedAt`, `locationId` |
|
|
30
|
+
| Document | `content-page` | CMS-managed website section | `pageSlug`, `section`, `locationId` |
|
|
31
|
+
| Document | `blog-post` | Blog article | `slug`, `title`, `status` (draft/published), `tags`, `authorId`, `locationId` |
|
|
32
|
+
| Thing | `inventory-item` | Stock item with quantity tracking | `name`, `category`, `quantity`, `reorderThreshold`, `costInCents`, `locationId` |
|
|
33
|
+
| Thing | `gift-card` | Digital or physical gift card | `code`, `balanceInCents`, `originalAmountInCents`, `redeemedAt`, `locationId` |
|
|
34
|
+
| Measurement | `transaction` | Revenue, expense, or refund record | `type` (revenue/expense/refund), `amountInCents`, `experienceSlug`, `category`, `date`, `stripeId`, `locationId` |
|
|
35
|
+
| Measurement | `loyalty-transaction` | Points earned, redeemed, or expired | `customerId`, `points`, `reason` (earned/redeemed/expired), `locationId` |
|
|
36
|
+
|
|
37
|
+
## Relationships
|
|
38
|
+
|
|
39
|
+
Graph edges connect entities using typed verbs. Use relationships to traverse the graph without duplicating data.
|
|
40
|
+
|
|
41
|
+
| Relationship | Meaning |
|
|
42
|
+
|---|---|
|
|
43
|
+
| Location **Contains** Experience, TimeSlot, InventoryItem | What exists at a given location |
|
|
44
|
+
| Booking **ParticipatesIn** TimeSlot | Which slot a reservation occupies |
|
|
45
|
+
| Customer **Creates** Booking, Waiver | Ownership of guest-initiated records |
|
|
46
|
+
| Booking **Contains** Experience | Line items on a reservation |
|
|
47
|
+
| Transaction **References** Booking | Revenue record linked back to a booking |
|
|
48
|
+
| Staff **MemberOf** Location | Employee location assignment |
|
|
49
|
+
| LoyaltyAccount **BelongsTo** Customer | One loyalty account per customer |
|
|
50
|
+
|
|
51
|
+
## Brainy Aggregate API
|
|
52
|
+
|
|
53
|
+
Aggregates are the primary tool for financial summaries, trend analysis, and operational reporting. Define them once, then query them with filters.
|
|
54
|
+
|
|
55
|
+
### Defining and Running an Aggregate
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
// Step 1: Define a named aggregate (do this once at startup or on demand)
|
|
59
|
+
brain.defineAggregate('revenueByExperienceMonth', {
|
|
60
|
+
source: {
|
|
61
|
+
type: 'Measurement',
|
|
62
|
+
where: [
|
|
63
|
+
{ field: 'metadata.entityType', value: 'transaction' },
|
|
64
|
+
{ field: 'metadata.type', value: 'revenue' }
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
groupBy: [
|
|
68
|
+
{ field: 'metadata.experienceSlug' },
|
|
69
|
+
{ field: 'metadata.date', window: 'month' }
|
|
70
|
+
],
|
|
71
|
+
metrics: {
|
|
72
|
+
totalRevenue: { op: 'SUM', field: 'metadata.amountInCents' },
|
|
73
|
+
bookingCount: { op: 'COUNT' },
|
|
74
|
+
avgTicket: { op: 'AVG', field: 'metadata.amountInCents' },
|
|
75
|
+
maxTicket: { op: 'MAX', field: 'metadata.amountInCents' },
|
|
76
|
+
minTicket: { op: 'MIN', field: 'metadata.amountInCents' },
|
|
77
|
+
revenueStdDev: { op: 'STDDEV', field: 'metadata.amountInCents' },
|
|
78
|
+
revenueVariance: { op: 'VARIANCE', field: 'metadata.amountInCents' }
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
// Step 2: Execute with runtime filters, ordering, and limits
|
|
83
|
+
const results = await brain.find({
|
|
84
|
+
aggregate: 'revenueByExperienceMonth',
|
|
85
|
+
where: [{ field: 'metadata.locationId', value: 'loc-abc123' }],
|
|
86
|
+
orderBy: 'totalRevenue',
|
|
87
|
+
order: 'desc',
|
|
88
|
+
limit: 100
|
|
89
|
+
});
|
|
90
|
+
// Returns: Array<{ groupKey: string, metrics: Record<string, number>, count: number }>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Supported Aggregation Operations
|
|
94
|
+
|
|
95
|
+
| `op` value | Meaning |
|
|
96
|
+
|---|---|
|
|
97
|
+
| `SUM` | Sum all values in the group |
|
|
98
|
+
| `COUNT` | Count records in the group |
|
|
99
|
+
| `AVG` | Arithmetic mean of values |
|
|
100
|
+
| `MIN` | Minimum value in the group |
|
|
101
|
+
| `MAX` | Maximum value in the group |
|
|
102
|
+
| `STDDEV` | Population standard deviation |
|
|
103
|
+
| `VARIANCE` | Population variance |
|
|
104
|
+
|
|
105
|
+
### Supported Time Windows (for `groupBy` with `window`)
|
|
106
|
+
|
|
107
|
+
`hour` | `day` | `week` | `month` | `quarter` | `year`
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Counts API
|
|
112
|
+
|
|
113
|
+
O(1) fast counts without loading entities into memory. Use for dashboards and health checks.
|
|
114
|
+
|
|
115
|
+
```typescript
|
|
116
|
+
// Count by NounType — always O(1)
|
|
117
|
+
const totals = await brain.counts.byType();
|
|
118
|
+
// → { Event: 820, Person: 340, Measurement: 1240, Thing: 180, Document: 95, Location: 2 }
|
|
119
|
+
|
|
120
|
+
// Count with filter criteria
|
|
121
|
+
const todayBookings = await brain.counts.byCriteria({
|
|
122
|
+
type: 'Event',
|
|
123
|
+
criteria: [
|
|
124
|
+
{ field: 'metadata.entityType', value: 'booking' },
|
|
125
|
+
{ field: 'metadata.date', value: '2026-02-19' },
|
|
126
|
+
{ field: 'metadata.status', value: 'confirmed' }
|
|
127
|
+
]
|
|
128
|
+
});
|
|
129
|
+
// → { total: 18 }
|
|
130
|
+
|
|
131
|
+
// Full graph statistics
|
|
132
|
+
const stats = await brain.getStats();
|
|
133
|
+
// → { entities: 2675, relationships: 4800, density: 0.38, byType: { ... } }
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Neural API
|
|
139
|
+
|
|
140
|
+
Machine-learning operations on the graph. Use for segmentation, anomaly detection, and similarity search.
|
|
141
|
+
|
|
142
|
+
```typescript
|
|
143
|
+
// Cluster customers into behavioral segments
|
|
144
|
+
const segments = await brain.neural().clusters({
|
|
145
|
+
numClusters: 5,
|
|
146
|
+
entityType: 'Person',
|
|
147
|
+
where: [{ field: 'metadata.entityType', value: 'customer' }]
|
|
148
|
+
});
|
|
149
|
+
// → Array<{ label: string, members: Entity[], centroid: number[] }>
|
|
150
|
+
|
|
151
|
+
// Detect anomalous entities (outliers and VIPs)
|
|
152
|
+
const outliers = await brain.neural().outliers({
|
|
153
|
+
threshold: 2.5, // z-score cutoff — higher = fewer results
|
|
154
|
+
method: 'zscore', // 'zscore' | 'iqr' | 'isolation'
|
|
155
|
+
entityType: 'Measurement',
|
|
156
|
+
minNeighbors: 3
|
|
157
|
+
});
|
|
158
|
+
// → Array<{ entity: Entity, reason: string, score: number }>
|
|
159
|
+
|
|
160
|
+
// Find semantically similar entities via vector embedding
|
|
161
|
+
const similar = await brain.neural().similar('entity-id-123', { limit: 10 });
|
|
162
|
+
// → Array<{ entity: Entity, similarity: number }>
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Streaming API
|
|
168
|
+
|
|
169
|
+
Process large result sets without loading everything into memory. Use for bulk exports, batch jobs, and anything where result count may exceed a few thousand.
|
|
170
|
+
|
|
171
|
+
```typescript
|
|
172
|
+
// Stream entities by type with optional filter
|
|
173
|
+
for await (const booking of brain.streaming.entities({
|
|
174
|
+
type: 'Event',
|
|
175
|
+
where: [{ field: 'metadata.entityType', value: 'booking' }]
|
|
176
|
+
})) {
|
|
177
|
+
// process one booking at a time — no memory accumulation
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
// Stream vector search results
|
|
181
|
+
for await (const result of brain.streaming.search('private party axe throwing corporate', {
|
|
182
|
+
type: 'Event',
|
|
183
|
+
limit: 200
|
|
184
|
+
})) {
|
|
185
|
+
// result.entity, result.score
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Export API
|
|
192
|
+
|
|
193
|
+
Generate tabular exports from any entity type for spreadsheets, finance tools, or OData consumers.
|
|
194
|
+
|
|
195
|
+
```typescript
|
|
196
|
+
import { TabularExporter } from '@soulcraft/brainy';
|
|
197
|
+
|
|
198
|
+
const exporter = new TabularExporter(brain);
|
|
199
|
+
|
|
200
|
+
// CSV export
|
|
201
|
+
const { data, rowCount } = await exporter.exportCsv({ type: 'Measurement' });
|
|
202
|
+
|
|
203
|
+
// OData export (for Power BI, Excel, etc.)
|
|
204
|
+
const odata = await exporter.exportOData({ type: 'Measurement' });
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Critical Rules
|
|
210
|
+
|
|
211
|
+
These rules govern every query you run on this platform. Violating them produces wrong or corrupt data.
|
|
212
|
+
|
|
213
|
+
1. **All monetary amounts are stored as integers in cents.** Always divide by 100 for display. `$25.00 = 2500`. Never store or compute floats.
|
|
214
|
+
|
|
215
|
+
2. **Always filter by `metadata.locationId`** when producing per-location reports. The database is shared across all franchise locations.
|
|
216
|
+
|
|
217
|
+
3. **Always include `metadata.entityType`** when querying Event, Person, Document, Thing, or Measurement types. Without it, you will mix bookings with time-slots and transactions with loyalty records.
|
|
218
|
+
|
|
219
|
+
4. **Audit events are append-only.** Never update or delete a record with `metadata.entityType === 'audit-event'`.
|
|
220
|
+
|
|
221
|
+
5. **Stripe is the source of truth for payments.** `metadata.stripeId` links to Stripe; Brainy stores reference IDs only. Do not compute refunds or charges from Brainy data alone.
|
|
222
|
+
|
|
223
|
+
6. **Do not write files directly to `brainy-data/`.** All mutations must go through the Brainy API (`brain.add()`, `brain.update()`, `brain.relate()`). Direct filesystem writes bypass indexes and cause corruption.
|
|
224
|
+
|
|
225
|
+
7. **Session attributes for axe throwing bookings** are stored in `booking.data.sessionAttributes` as an array of per-guest or per-session objects. Key fields include `laneNumber`, `throwStyle` (hatchet/big-axe), `bestScore`, `teamName`, `leagueSeason`, `competitionFormat`, and `coachNotes`. Always check session attribute scope (per-guest vs per-session) when aggregating.
|