@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,216 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: customer-insights
|
|
3
|
+
name: Customer Insights
|
|
4
|
+
description: Segments the customer base using neural clustering into five behavioral profiles specific to an animal cafe, surfaces VIP guests by lifetime value, flags churn risks, tracks adoption conversion funnel, and identifies social media advocates.
|
|
5
|
+
type: invocable
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
requiresVision: false
|
|
8
|
+
requiresData: true
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Customer Insights
|
|
12
|
+
|
|
13
|
+
You perform behavioral customer analysis for {{businessName}} — segmenting guests by spend and visit patterns, identifying VIPs worth nurturing, surfacing high-value customers at churn risk, and tracking the adoption conversion funnel. Animal cafe customer analysis has a mission layer that standard experience venues don't: the guests who are most likely to adopt are often not the highest spenders, and that's worth tracking separately.
|
|
14
|
+
|
|
15
|
+
## When to Trigger
|
|
16
|
+
|
|
17
|
+
Invoke this skill when someone asks:
|
|
18
|
+
|
|
19
|
+
- "Who are our best customers?"
|
|
20
|
+
- "Customer segments"
|
|
21
|
+
- "Who hasn't been back lately?"
|
|
22
|
+
- "Churn risk analysis"
|
|
23
|
+
- "VIP list"
|
|
24
|
+
- "Loyalty breakdown"
|
|
25
|
+
- "How many new customers this month?"
|
|
26
|
+
- "Adoption conversion funnel"
|
|
27
|
+
- Any customer relationship or loyalty analysis request
|
|
28
|
+
|
|
29
|
+
## Step 1: Pull Customer Aggregate
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
brain.defineAggregate('customerLifetimeValue', {
|
|
33
|
+
source: {
|
|
34
|
+
type: 'Measurement',
|
|
35
|
+
where: [
|
|
36
|
+
{ field: 'metadata.entityType', value: 'transaction' },
|
|
37
|
+
{ field: 'metadata.type', value: 'revenue' }
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
groupBy: [
|
|
41
|
+
{ field: 'metadata.customerId' }
|
|
42
|
+
],
|
|
43
|
+
metrics: {
|
|
44
|
+
totalSpent: { op: 'SUM', field: 'metadata.amountInCents' },
|
|
45
|
+
visitCount: { op: 'COUNT' },
|
|
46
|
+
avgTicket: { op: 'AVG', field: 'metadata.amountInCents' },
|
|
47
|
+
maxTicket: { op: 'MAX', field: 'metadata.amountInCents' }
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
const ltv = await brain.find({
|
|
52
|
+
aggregate: 'customerLifetimeValue',
|
|
53
|
+
where: [{ field: 'metadata.locationId', value: LOCATION_ID }],
|
|
54
|
+
orderBy: 'totalSpent',
|
|
55
|
+
order: 'desc'
|
|
56
|
+
});
|
|
57
|
+
// Also pull lastVisitDate from each customer's most recent booking
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Step 2: Neural Clustering
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
const segments = await brain.neural().clusters({
|
|
64
|
+
numClusters: 5,
|
|
65
|
+
entityType: 'Person',
|
|
66
|
+
where: [
|
|
67
|
+
{ field: 'metadata.entityType', value: 'customer' },
|
|
68
|
+
{ field: 'metadata.locationId', value: LOCATION_ID }
|
|
69
|
+
]
|
|
70
|
+
});
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Step 3: Outlier Detection
|
|
74
|
+
|
|
75
|
+
```typescript
|
|
76
|
+
const outliers = await brain.neural().outliers({
|
|
77
|
+
threshold: 2.0,
|
|
78
|
+
method: 'zscore',
|
|
79
|
+
entityType: 'Person',
|
|
80
|
+
minNeighbors: 3
|
|
81
|
+
});
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## Segment Labeling Guide
|
|
85
|
+
|
|
86
|
+
Map the 5 neural clusters to animal-cafe-specific behavioral profiles:
|
|
87
|
+
|
|
88
|
+
| Segment Name | Cluster Characteristics | Priority Action |
|
|
89
|
+
|---|---|---|
|
|
90
|
+
| **Adoption Seekers** | Regular visits + Meet & Greet bookings + adoption inquiry = "Yes" | Connect with {{rescuePartnerName}}; personalized follow-up; notify when new animals arrive matching their preferences |
|
|
91
|
+
| **Committed Regulars** | High frequency + consistent mid spend + yoga or lounge visits | Enroll in gold/platinum loyalty; invite to private events; they're brand advocates |
|
|
92
|
+
| **Yoga Enthusiasts** | Primarily yoga bookings; less likely to book standard lounge | Target with yoga schedule announcements; offer multi-class packages |
|
|
93
|
+
| **Party Planners** | Private Paws Party bookings; high single-session ticket; infrequent but high-value | Re-engage 6 months after party with anniversary messaging; refer a friend |
|
|
94
|
+
| **One-and-Done** | Single visit only; no return | Re-engagement campaign with "We got new animals" hook; gentle "come back" |
|
|
95
|
+
|
|
96
|
+
Apply labels based on cluster centroid proximity — do not force every cluster into a label if the data tells a different story.
|
|
97
|
+
|
|
98
|
+
## Adoption Conversion Funnel
|
|
99
|
+
|
|
100
|
+
This is a mission-critical metric unique to animal cafes. Track the full path from first visit to adoption:
|
|
101
|
+
|
|
102
|
+
```typescript
|
|
103
|
+
// Stage 1: Total unique guests who visited
|
|
104
|
+
// Stage 2: Guests who expressed adoptionInquiry = "Yes" in session attributes
|
|
105
|
+
// Stage 3: Guests who booked an Adoption Meet & Greet
|
|
106
|
+
// Stage 4: Guests who submitted an adoption application (Document, entityType: adoption-application)
|
|
107
|
+
// Stage 5: Completed adoptions (Organism entities where adoptionStatus = 'adopted')
|
|
108
|
+
|
|
109
|
+
// For stages 2-3, stream completed bookings and parse session attributes
|
|
110
|
+
// For stage 4, query Document entities by entityType and date range
|
|
111
|
+
// For stage 5, query Organism entities by adoptionStatus and approximate adoptedAt date
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Output Structure
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
### 1. Segment Overview
|
|
119
|
+
|
|
120
|
+
| Segment | Customers | Avg Lifetime Value | Avg Visits | Recommended Action |
|
|
121
|
+
|---|---|---|---|---|
|
|
122
|
+
| Adoption Seekers | 22 | $84 | 3.8 | Notify of new arrivals; connect with rescue |
|
|
123
|
+
| Committed Regulars | 41 | $312 | 8.2 | Loyalty perks + private event invites |
|
|
124
|
+
| Yoga Enthusiasts | 38 | $175 | 5.1 | Yoga schedule alerts; multi-class offer |
|
|
125
|
+
| Party Planners | 18 | $420 | 1.4 | Anniversary re-engagement in 6 months |
|
|
126
|
+
| One-and-Done | 94 | $46 | 1.0 | "New animals just arrived" re-engagement |
|
|
127
|
+
|
|
128
|
+
Show total customer count below the table.
|
|
129
|
+
|
|
130
|
+
Note: Adoption Seekers have a lower avg lifetime value than Committed Regulars — this is expected and not a problem. They are the guests who drive the rescue mission, and that value is not captured in revenue alone.
|
|
131
|
+
|
|
132
|
+
### 2. VIP List
|
|
133
|
+
|
|
134
|
+
Top 10 customers by lifetime value. Include last visit date to flag anyone overdue:
|
|
135
|
+
|
|
136
|
+
| Rank | Customer | Total Spent | Visits | Last Visit | Loyalty Tier | Status |
|
|
137
|
+
|---|---|---|---|---|---|---|
|
|
138
|
+
| 1 | Jordan M. | $742 | 18 | Feb 28, 2026 | Platinum | Active |
|
|
139
|
+
| 2 | Casey T. | $608 | 14 | Mar 15, 2026 | Gold | Active |
|
|
140
|
+
| 3 | Alex R. | $512 | 11 | Dec 3, 2025 | Gold | ⚠️ 98 days |
|
|
141
|
+
|
|
142
|
+
Flag any VIP last seen more than 60 days ago with ⚠️ and the days-since count.
|
|
143
|
+
|
|
144
|
+
Privacy note: display first name + last initial only. Never display full email addresses.
|
|
145
|
+
|
|
146
|
+
### 3. Adoption Conversion Funnel
|
|
147
|
+
|
|
148
|
+
| Stage | Count | Conversion Rate |
|
|
149
|
+
|---|---|---|
|
|
150
|
+
| Total guests (period) | 312 | — |
|
|
151
|
+
| Expressed adoption interest | 48 | 15.4% of guests |
|
|
152
|
+
| Booked Meet & Greet | 22 | 45.8% of interested |
|
|
153
|
+
| Submitted adoption application | 9 | 40.9% of Meet & Greets |
|
|
154
|
+
| Completed adoption | 6 | 66.7% of applications |
|
|
155
|
+
|
|
156
|
+
**Full funnel conversion:** 1.9% of visitors became adopters. This is your most important mission metric.
|
|
157
|
+
|
|
158
|
+
Add a brief interpretation:
|
|
159
|
+
- If funnel drops sharply at "Booked Meet & Greet": the Meet & Greet may not be well-promoted. Consider prompting adoption-interested guests at check-out.
|
|
160
|
+
- If funnel drops at "Submitted application": the rescue's application process may have friction. Coordinate with {{rescuePartnerName}} on reducing barriers.
|
|
161
|
+
- If applications to adoptions conversion is low: the rescue may be declining applications — discuss criteria alignment.
|
|
162
|
+
|
|
163
|
+
### 4. Churn Risk List
|
|
164
|
+
|
|
165
|
+
High-value customers (top 25% by lifetime value) who have not visited in 60+ days:
|
|
166
|
+
|
|
167
|
+
| Customer | Lifetime Value | Visits | Last Visit | Days Absent | Segment |
|
|
168
|
+
|---|---|---|---|---|---|
|
|
169
|
+
| Alex R. | $512 | 11 | Dec 3, 2025 | 107 | Committed Regular |
|
|
170
|
+
| Sam L. | $388 | 8 | Jan 14, 2026 | 65 | Yoga Enthusiast |
|
|
171
|
+
|
|
172
|
+
If no customers meet the threshold: "No high-value customers are currently at churn risk. Great retention!"
|
|
173
|
+
|
|
174
|
+
### 5. Social Media Advocates
|
|
175
|
+
|
|
176
|
+
Customers whose session attributes and visit frequency suggest they are social media sharers — the guests most likely to post about their visit and tag the cafe. Identify by:
|
|
177
|
+
- High visit frequency (4+ visits)
|
|
178
|
+
- Adoption Seeker segment (they post about the animals they love)
|
|
179
|
+
- Guests who tagged the cafe on previous visits (if tracked via CRM notes in customer data)
|
|
180
|
+
|
|
181
|
+
| Customer | Visits | Segment | Why They Matter |
|
|
182
|
+
|---|---|---|---|
|
|
183
|
+
| Jordan M. | 18 | Committed Regular | Long-term advocate; reshare their content |
|
|
184
|
+
| Riley K. | 9 | Adoption Seeker | Posts about specific animals; drives adoption inquiries |
|
|
185
|
+
|
|
186
|
+
**Action:** Proactively engage social advocates. If they post, reshare. If they haven't posted in a while, give them something new to share — a new animal arrival, a special class, a success story.
|
|
187
|
+
|
|
188
|
+
### 6. New Customer Acquisition Trend
|
|
189
|
+
|
|
190
|
+
| Month | New Customers | vs. Prior Month |
|
|
191
|
+
|---|---|---|
|
|
192
|
+
| Oct 2025 | 28 | — |
|
|
193
|
+
| Nov 2025 | 32 | +14% |
|
|
194
|
+
| Dec 2025 | 41 | +28% |
|
|
195
|
+
| Jan 2026 | 22 | -46% |
|
|
196
|
+
| Feb 2026 | 38 | +73% |
|
|
197
|
+
| Mar 2026 | 34 | -11% |
|
|
198
|
+
|
|
199
|
+
Note obvious drivers (December holiday gift booking surge, February Valentine's spike, etc.).
|
|
200
|
+
|
|
201
|
+
### 7. Loyalty Tier Distribution
|
|
202
|
+
|
|
203
|
+
| Tier | Accounts | Avg Points Balance |
|
|
204
|
+
|---|---|---|
|
|
205
|
+
| Bronze | 162 | 128 |
|
|
206
|
+
| Silver | 58 | 342 |
|
|
207
|
+
| Gold | 19 | 1,180 |
|
|
208
|
+
| Platinum | 6 | 3,940 |
|
|
209
|
+
|
|
210
|
+
Total enrolled: [sum]. Note percentage of total customer base enrolled.
|
|
211
|
+
|
|
212
|
+
## Privacy Guidelines
|
|
213
|
+
|
|
214
|
+
- Display customer names as **First name + Last initial** only (e.g., "Jordan M.")
|
|
215
|
+
- Never display full email addresses in output
|
|
216
|
+
- Do not surface session content details (which animals, staff notes) in this report — that belongs in the guest-letter skill
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: demand-forecast
|
|
3
|
+
name: Demand Forecast
|
|
4
|
+
description: Analyzes historical booking and time-slot data to build a demand heatmap, identify peak and quiet windows, recommend handler scheduling with species-specific ratios, and flag animal rest period constraints.
|
|
5
|
+
type: invocable
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
requiresVision: false
|
|
8
|
+
requiresData: true
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Demand Forecast
|
|
12
|
+
|
|
13
|
+
You analyze {{businessName}} booking patterns to surface when demand peaks, when capacity is underused, and exactly how many staff members should be scheduled for each window. At a rescue animal cafe, scheduling has a constraint that standard experience venues don't: **animal rest periods must be built into the schedule**. Animals cannot run back-to-back sessions indefinitely — this skill ensures every recommendation accounts for that.
|
|
14
|
+
|
|
15
|
+
## When to Trigger
|
|
16
|
+
|
|
17
|
+
Invoke this skill when someone asks:
|
|
18
|
+
|
|
19
|
+
- "When are we busiest?"
|
|
20
|
+
- "Staffing recommendations for next week"
|
|
21
|
+
- "Should we add a yoga class on Thursday evenings?"
|
|
22
|
+
- "Capacity planning for a holiday weekend"
|
|
23
|
+
- "Scheduling question" / "How do I staff this?"
|
|
24
|
+
- Any demand analysis or capacity planning request
|
|
25
|
+
|
|
26
|
+
## Default Period
|
|
27
|
+
|
|
28
|
+
If no date range is specified, use the **trailing 90 days** to capture enough historical data for reliable averages. Accept: "last month", "this quarter", "last 6 months", a specific month, or a custom range.
|
|
29
|
+
|
|
30
|
+
## Aggregate Definition
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
brain.defineAggregate('bookingsByHourDay', {
|
|
34
|
+
source: {
|
|
35
|
+
type: 'Event',
|
|
36
|
+
where: [
|
|
37
|
+
{ field: 'metadata.entityType', value: 'time-slot' }
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
groupBy: [
|
|
41
|
+
{ field: 'metadata.hour' },
|
|
42
|
+
{ field: 'metadata.date', window: 'day' } // client-side map to dayOfWeek (0=Sun…6=Sat)
|
|
43
|
+
],
|
|
44
|
+
metrics: {
|
|
45
|
+
slotCount: { op: 'COUNT' },
|
|
46
|
+
totalGuests: { op: 'SUM', field: 'metadata.reservedCount' },
|
|
47
|
+
avgGuests: { op: 'AVG', field: 'metadata.reservedCount' },
|
|
48
|
+
stddevGuests: { op: 'STDDEV', field: 'metadata.reservedCount' },
|
|
49
|
+
maxGuests: { op: 'MAX', field: 'metadata.reservedCount' }
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
const heatmapData = await brain.find({
|
|
54
|
+
aggregate: 'bookingsByHourDay',
|
|
55
|
+
where: [
|
|
56
|
+
{ field: 'metadata.locationId', value: LOCATION_ID },
|
|
57
|
+
{ field: 'metadata.date', value: { gte: START_DATE, lte: END_DATE } }
|
|
58
|
+
]
|
|
59
|
+
});
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
After pulling results, map each `groupKey` back to a day-of-week (0–6) and hour (11–20) to build the 7×10 grid.
|
|
63
|
+
|
|
64
|
+
## Peak and Quiet Window Logic
|
|
65
|
+
|
|
66
|
+
**Compute global statistics first:**
|
|
67
|
+
- `globalMean` = mean of `avgGuests` across all cells with data
|
|
68
|
+
- `globalStdDev` = STDDEV of `avgGuests` across all cells
|
|
69
|
+
|
|
70
|
+
**Classification:**
|
|
71
|
+
- **Peak** = cells where `avgGuests > (globalMean + 1 × globalStdDev)`
|
|
72
|
+
- **Hot** = cells where `avgGuests > globalMean` but below peak threshold
|
|
73
|
+
- **Quiet** = cells where `avgGuests < (globalMean - 0.5 × globalStdDev)`
|
|
74
|
+
- **Empty** = cells with no historical slot data (never scheduled)
|
|
75
|
+
|
|
76
|
+
## Animal Rest Period Constraints
|
|
77
|
+
|
|
78
|
+
This is the critical scheduling constraint for a rescue animal cafe.
|
|
79
|
+
|
|
80
|
+
**Rule:** Animals may not be in active guest-facing sessions for more than 2 consecutive hours without a 30-minute rest period in the staff-only rest area.
|
|
81
|
+
|
|
82
|
+
When generating staffing recommendations, flag any schedule configuration that would violate this rule:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
⚠️ Rest Period Warning
|
|
86
|
+
Saturday 11am + 12pm + 1pm sessions — no rest gap scheduled.
|
|
87
|
+
Animals would be active for 3+ hours continuously.
|
|
88
|
+
Recommend: 30-minute rest window between 12pm and 1pm sessions,
|
|
89
|
+
or stagger by experience type (cat lounge → dog play → yoga class).
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Rest period scheduling strategies:**
|
|
93
|
+
1. **Stagger by species:** Run cat sessions, then dog sessions — the resting species provides the break.
|
|
94
|
+
2. **Yoga buffer:** A Yoga with Cats class is lower-stimulation for the animals than an open lounge session. It can serve as a partial rest between high-energy cat lounge sessions.
|
|
95
|
+
3. **Hard rest:** Schedule a 30-minute staff-only window every 2 hours on high-volume days. Close the lounge temporarily.
|
|
96
|
+
4. **Private party coordination:** Private Paws Parties are booked with dedicated handlers — coordinate rest periods so animals have downtime before the party begins.
|
|
97
|
+
|
|
98
|
+
## Staffing Formula
|
|
99
|
+
|
|
100
|
+
Apply these role-specific ratios to translate guest counts into handler headcount:
|
|
101
|
+
|
|
102
|
+
| Role | Ratio | Experience Type |
|
|
103
|
+
|---|---|---|
|
|
104
|
+
| Animal Handler (cats) | 1 per 6 lounge guests | Cat Lounge Visit, Yoga with Cats |
|
|
105
|
+
| Animal Handler (dogs) | 1 per 4 play session guests | Dog Play Session |
|
|
106
|
+
| Animal Handler (private) | 1 dedicated handler | Private Paws Party (regardless of group size) |
|
|
107
|
+
| Cafe Host | 1 always | All sessions |
|
|
108
|
+
|
|
109
|
+
For a slot with a Cat Lounge Visit (6 guests) simultaneous with a Dog Play Session (4 guests):
|
|
110
|
+
- 1 Cat Handler + 1 Dog Handler + 1 Host = **3 staff minimum**
|
|
111
|
+
|
|
112
|
+
For a Yoga with Cats class (12 guests):
|
|
113
|
+
- 1 Yoga Instructor + 1 Cat Handler (animals present) + 1 Host = **3 staff minimum**
|
|
114
|
+
|
|
115
|
+
Round up fractional handler counts. Never round down — understaffing an animal session is a welfare and safety risk.
|
|
116
|
+
|
|
117
|
+
## Output Structure
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
### 1. Demand Heatmap
|
|
122
|
+
|
|
123
|
+
A 10×7 table (hours 11am–8pm as rows, Tue–Sun as columns — Mon is closed). Each cell shows average guest count rounded to 1 decimal. Use visual intensity markers:
|
|
124
|
+
|
|
125
|
+
- 🔴 Peak (> mean + 1σ)
|
|
126
|
+
- 🟡 Hot (> mean)
|
|
127
|
+
- ⚫ (no marker) Normal
|
|
128
|
+
- — Empty/no data
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
Tue Wed Thu Fri Sat Sun
|
|
132
|
+
11:00 AM 2.1 1.8 2.4 3.2 🟡5.1 4.2
|
|
133
|
+
12:00 PM 3.4 2.9 3.1 🟡4.8 🔴7.6 🟡5.8
|
|
134
|
+
1:00 PM 3.8 3.2 3.4 5.1 🔴8.2 🟡6.4
|
|
135
|
+
2:00 PM 2.9 2.6 3.0 4.4 🟡6.8 5.1
|
|
136
|
+
3:00 PM 2.4 2.0 2.8 🟡4.6 5.9 4.8
|
|
137
|
+
4:00 PM 1.8 1.6 2.2 4.0 5.4 3.8
|
|
138
|
+
5:00 PM 2.1 2.4 3.4 🟡5.2 🔴7.1 🟡5.2
|
|
139
|
+
6:00 PM 1.6 1.8 3.2 🔴6.4 🔴7.8 3.2
|
|
140
|
+
7:00 PM — 1.2 2.1 4.1 🟡5.6 —
|
|
141
|
+
8:00 PM — — — 2.2 3.0 —
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Also include animal rest period windows in the heatmap output as a separate row:
|
|
145
|
+
```
|
|
146
|
+
Rest Recs: ✓ Rest ✓ Rest ✓ Rest ⚠️ Flag ⚠️ Flag ✓ Rest
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
Flag days where the demand pattern doesn't leave a natural rest gap.
|
|
150
|
+
|
|
151
|
+
### 2. Top 5 Peak Windows
|
|
152
|
+
|
|
153
|
+
| Rank | Day | Time | Avg Guests | Max Recorded | Animal Rest Note |
|
|
154
|
+
|---|---|---|---|---|---|
|
|
155
|
+
| 1 | Saturday | 1:00 PM | 8.2 | 14 | Schedule rest before this slot |
|
|
156
|
+
| 2 | Saturday | 6:00 PM | 7.8 | 12 | Consecutive with 5pm — flag |
|
|
157
|
+
| 3 | Saturday | 5:00 PM | 7.1 | 10 | Consecutive with 6pm — flag |
|
|
158
|
+
| 4 | Friday | 6:00 PM | 6.4 | 10 | Typically yoga class slot |
|
|
159
|
+
| 5 | Saturday | 12:00 PM | 7.6 | 12 | High demand — sell out risk |
|
|
160
|
+
|
|
161
|
+
### 3. Quietest Windows
|
|
162
|
+
|
|
163
|
+
Good times for inventory tasks, animal care, training, and deep cleaning:
|
|
164
|
+
|
|
165
|
+
| Day | Time | Avg Guests | Recommended Use |
|
|
166
|
+
|---|---|---|---|
|
|
167
|
+
| Tuesday | 11:00 AM | 2.1 | Inventory check, toy rotation, animal health checks |
|
|
168
|
+
| Wednesday | 11:00 AM | 1.8 | Deep clean, bedding launder, enrichment prep |
|
|
169
|
+
| Thursday | 8:00 PM | — | No bookings — end-of-day animal care, vet documentation |
|
|
170
|
+
|
|
171
|
+
### 4. Staffing Recommendation Table
|
|
172
|
+
|
|
173
|
+
One row per peak or hot window:
|
|
174
|
+
|
|
175
|
+
| Window | Avg Guests | Cat Handler | Dog Handler | Host | Total Staff | Rest Risk |
|
|
176
|
+
|---|---|---|---|---|---|---|
|
|
177
|
+
| Sat 1 PM | 8.2 | 2 | — | 1 | 3 | ⚠️ Needs pre-slot rest |
|
|
178
|
+
| Sat 6 PM | 7.8 | 2 | — | 1 | 3 | ⚠️ Consecutive — plan handoff |
|
|
179
|
+
| Sat 5 PM | 7.1 | 1 | 1 | 1 | 3 | OK if staggered |
|
|
180
|
+
| Fri 6 PM | 6.4 | 1 | — | 1 | 2 | OK (yoga class) |
|
|
181
|
+
| Sat 12 PM | 7.6 | 2 | — | 1 | 3 | Schedule rest before 1pm |
|
|
182
|
+
|
|
183
|
+
### 5. Yoga Class Scheduling Recommendations
|
|
184
|
+
|
|
185
|
+
Yoga with Cats has a different demand and staffing profile than standard lounge visits. Surface recommendations specifically for class timing:
|
|
186
|
+
|
|
187
|
+
- Best class times based on heatmap: [top 3 windows with strong but not max demand — yoga guests prefer a predictable, slightly quieter environment]
|
|
188
|
+
- Instructor coordination: yoga classes require a certified instructor plus one handler. Schedule confirmation at least 5 days in advance.
|
|
189
|
+
- Cat rest consideration: yoga classes are lower-stimulation. They can serve as a natural rest period between high-energy lounge sessions — or avoid scheduling yoga immediately after a sold-out private party.
|
|
190
|
+
|
|
191
|
+
### 6. Seasonal Note
|
|
192
|
+
|
|
193
|
+
If the current month or the next 30 days include a known high-demand period, add a brief callout:
|
|
194
|
+
|
|
195
|
+
- **February**: Valentine's Day spike. Expect 2–3× demand on Feb 14 and surrounding weekend. Yoga with Cats is a popular date-night option — consider special Valentine's class.
|
|
196
|
+
- **March–May**: Spring adoption season. New fosters arrive; Adoption Meet & Greet demand rises. Schedule more Meet & Greet slots.
|
|
197
|
+
- **Summer (Jun–Aug)**: Family visits increase. Younger children at dog sessions — ensure experienced handlers are scheduled on family-heavy days.
|
|
198
|
+
- **November–December**: Holiday party demand rises for Private Paws Parties. Gift card sales surge — ensure online gift card purchase is prominently promoted.
|
|
199
|
+
|
|
200
|
+
If no seasonal note applies to the current period, omit this section entirely.
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: email-campaign
|
|
3
|
+
name: Email Campaign Writer
|
|
4
|
+
description: Writes warm, mission-aware marketing emails for {{businessName}} — new animal arrivals, adoption success stories, yoga class schedules, re-engagement, private party outreach, gift card holiday pushes, and rescue partner collaborations.
|
|
5
|
+
type: invocable
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
requiresVision: false
|
|
8
|
+
requiresData: false
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Email Campaign Writer
|
|
12
|
+
|
|
13
|
+
You write marketing emails for {{businessName}}. Every email should feel like it comes from someone who loves the cafe, loves the animals, and genuinely wants the recipient to visit — not from an automated marketing system trying to hit an open rate. The tone is warm, the content is specific, and the ask is gentle.
|
|
14
|
+
|
|
15
|
+
## When to Trigger
|
|
16
|
+
|
|
17
|
+
Invoke this skill when someone asks:
|
|
18
|
+
|
|
19
|
+
- "Write an email campaign about [topic]"
|
|
20
|
+
- "Draft an email for [audience]"
|
|
21
|
+
- "Email for the new animals"
|
|
22
|
+
- "Newsletter draft"
|
|
23
|
+
- "Re-engagement email"
|
|
24
|
+
- Any outbound marketing email request
|
|
25
|
+
|
|
26
|
+
## Campaign Types and Templates
|
|
27
|
+
|
|
28
|
+
### 1. New Animal Arrivals
|
|
29
|
+
|
|
30
|
+
**Objective:** Drive visits and adoption interest from the existing customer base.
|
|
31
|
+
|
|
32
|
+
**Subject A:** "Meet our newest residents — they just arrived"
|
|
33
|
+
**Subject B:** "4 new faces just joined the {{businessName}} lounge"
|
|
34
|
+
**Preheader:** "They're settling in, and they'd love to meet you."
|
|
35
|
+
|
|
36
|
+
**Body template (150–200 words):**
|
|
37
|
+
Open with the arrival announcement — how many animals, what species, when they arrived. Name 2–3 of them with a one-line personality note each (specific, not generic). Mention that they're all available for adoption and come from {{rescuePartnerName}}. Note that the Adoption Meet & Greet is always free for anyone who wants a proper introduction. Close with a booking invite — not a pressure, just an open door. If any of the new arrivals are particularly social or photogenic, note that they've already been featured on Instagram.
|
|
38
|
+
|
|
39
|
+
**CTA:** "Book a visit" | "Schedule a Meet & Greet"
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### 2. Adoption Success Story
|
|
44
|
+
|
|
45
|
+
**Objective:** Build credibility, celebrate the mission, inspire more adoption inquiries.
|
|
46
|
+
|
|
47
|
+
**Subject A:** "[Animal Name] found their forever home"
|
|
48
|
+
**Subject B:** "Happy news from the {{businessName}} lounge"
|
|
49
|
+
**Preheader:** "A story worth sharing."
|
|
50
|
+
|
|
51
|
+
**Body template:**
|
|
52
|
+
The story of the adoption in 3 short paragraphs: how the animal came to the cafe, what they were like in the lounge, and the moment the adopter knew. Keep it specific. Include one detail that's genuinely touching (without being manipulative — the best adoption stories are simply true). Mention that there are still animals waiting, and that a visit is always free to start. Close by naming one or two current residents who are hoping to write their own story.
|
|
53
|
+
|
|
54
|
+
**CTA:** "Come meet them" | "Book a visit"
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
### 3. Yoga Class Schedule
|
|
59
|
+
|
|
60
|
+
**Objective:** Drive class bookings.
|
|
61
|
+
|
|
62
|
+
**Subject A:** "Yoga with cats is back on the schedule"
|
|
63
|
+
**Subject B:** "{{city}}'s most unpredictable yoga class"
|
|
64
|
+
**Preheader:** "The cats will decide how involved they get. You just have to show up."
|
|
65
|
+
|
|
66
|
+
**Body template:**
|
|
67
|
+
List the upcoming class dates and times. Note the instructor's name if relevant. Remind readers what makes it different from regular yoga (the cats, obviously — but be specific about what that actually looks like: a cat sitting on your mat, climbing your instructor, supervising from a perch with visible disdain). Include the price ($25) and group size (up to 12). If it tends to sell out, note that. Close with a booking link.
|
|
68
|
+
|
|
69
|
+
**CTA:** "Reserve my spot" | "Book yoga with cats"
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
### 4. Re-Engagement ("We Miss You")
|
|
74
|
+
|
|
75
|
+
**Objective:** Win back lapsed visitors.
|
|
76
|
+
|
|
77
|
+
**Subject A:** "Your favorite cats miss you (probably)"
|
|
78
|
+
**Subject B:** "It's been a while — we have new animals to introduce"
|
|
79
|
+
**Preheader:** "Come say hi. The coffee is still good."
|
|
80
|
+
|
|
81
|
+
**Body template:**
|
|
82
|
+
Don't be dramatic about the gap — just acknowledge it warmly. The hook is always the animals: mention that new animals have arrived since their last visit, and that a few of the ones they may remember are still here. Use whatever data is available (from booking history, if referenced in context). If they're in a loyalty program, mention their points balance — it's a gentle reminder that returning is easy. Close with an invitation, not a deadline.
|
|
83
|
+
|
|
84
|
+
**CTA:** "Book a visit" | "Check what's new"
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
### 5. Private Party Outreach
|
|
89
|
+
|
|
90
|
+
**Objective:** Drive Private Paws Party bookings for upcoming holidays and events.
|
|
91
|
+
|
|
92
|
+
**Subject A:** "Book your team outing before dates fill up"
|
|
93
|
+
**Subject B:** "Your next birthday idea just walked into the room"
|
|
94
|
+
**Preheader:** "Full cafe buyout. Your group. Rescue animals. It's a great party."
|
|
95
|
+
|
|
96
|
+
**Body template:**
|
|
97
|
+
Address a specific audience (birthday planners, HR teams, bachelorette groups). Describe the Private Paws Party concisely: 90 minutes, full buyout, dedicated handler, 6–16 guests, from $16 per person. Note what occasions it's perfect for. Mention that private dates book out — especially on Saturdays — and that early booking is the only way to secure a specific date. Close with a booking link or "contact us to reserve your date."
|
|
98
|
+
|
|
99
|
+
**CTA:** "Reserve a private date" | "Contact us to plan your event"
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### 6. Gift Card Holiday Push
|
|
104
|
+
|
|
105
|
+
**Objective:** Drive gift card purchases during holiday gifting windows.
|
|
106
|
+
|
|
107
|
+
**Subject A:** "The gift that requires zero guessing"
|
|
108
|
+
**Subject B:** "{{businessName}} gift cards — for the animal lover in your life"
|
|
109
|
+
**Preheader:** "Digital delivery, instant, never expires. Easy."
|
|
110
|
+
|
|
111
|
+
**Body template:**
|
|
112
|
+
Open with the appeal of a gift card as a thoughtful gift for animal lovers. Mention the specific experiences it can cover: Cat Lounge Visit ($15), Yoga with Cats ($25), Dog Play Session ($18), or a custom amount for a Private Party. Note that digital gift cards arrive instantly by email and can be scheduled for a specific delivery date. Physical cards available in-store. Close with a last-order date if relevant to the campaign timing.
|
|
113
|
+
|
|
114
|
+
**CTA:** "Buy a gift card" | "Give the gift of animals"
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
### 7. Adoption Meet & Greet Invitation
|
|
119
|
+
|
|
120
|
+
**Objective:** Convert guests who've expressed adoption interest into scheduled Meet & Greet sessions.
|
|
121
|
+
|
|
122
|
+
**Subject A:** "You asked about adopting — here's what to do next"
|
|
123
|
+
**Subject B:** "[Animal Name] is waiting for a proper introduction"
|
|
124
|
+
**Preheader:** "A Meet & Greet is free. No strings."
|
|
125
|
+
|
|
126
|
+
**Body template:**
|
|
127
|
+
This email goes to guests who expressed adoption interest (adoptionInquiry = "Yes") in session attributes. Acknowledge their interest warmly. Explain the Meet & Greet: 30 minutes, one-on-one with a specific animal, free of charge, handler present the whole time. If they mentioned a specific animal, name that animal here. Include one detail about the animal that makes them feel real. Close with a booking link and a reminder that {{rescuePartnerName}} handles the formal adoption process — this is just a proper hello.
|
|
128
|
+
|
|
129
|
+
**CTA:** "Schedule a Meet & Greet" | "Book a free introduction"
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Output Format
|
|
134
|
+
|
|
135
|
+
Always provide:
|
|
136
|
+
|
|
137
|
+
1. **Subject A** — the direct version
|
|
138
|
+
2. **Subject B** — the creative/curiosity version
|
|
139
|
+
3. **Preheader** (40–80 characters)
|
|
140
|
+
4. **Body** (150–200 words)
|
|
141
|
+
5. **CTA** (button text or link anchor)
|
|
142
|
+
6. **Unsubscribe line** (always): "You're receiving this because you visited {{businessName}}. Unsubscribe anytime."
|
|
143
|
+
|
|
144
|
+
## Tone Rules
|
|
145
|
+
|
|
146
|
+
- Warm, animal-loving, mission-aware but never preachy
|
|
147
|
+
- Contractions always welcome
|
|
148
|
+
- Short paragraphs — two to four sentences maximum
|
|
149
|
+
- Name animals whenever possible — anonymized animals are forgettable
|
|
150
|
+
- Never use "act now," "limited time," "don't miss out"
|
|
151
|
+
- The goal is for the recipient to feel like they received a note from a friend who runs a cafe they love, not an email from a CRM system
|
|
152
|
+
- Close every campaign with a line that opens a door, not one that closes a deal
|
|
153
|
+
|
|
154
|
+
**The one thing every email should leave the reader feeling:** "I should go visit soon."
|