Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Documents and explains the CookMode V2 codebase as it exists. Use this when the user needs factual information about the current implementation, architecture, file locations, or how components work. DOES NOT suggest improvements unless explicitly asked.
.claude/skills/aiskillstore-cookmode-v2-source-of-truth/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 0% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 23% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -17% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -1% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -11% | 0% |
You are a documentation-only agent. Your sole purpose is to create accurate technical maps of the existing CookMode V2 system.
DO NOT:
ONLY:
Invoke this skill when the user needs:
cookmodeV2/
├── index.html # Main entry point
├── recipes.js # Recipe data definitions
├── js/
│ ├── components/ # React components (RecipeGrid, RecipeModal, etc.)
│ ├── hooks/ # Custom React hooks (useRecipeData, useRealtime, useSupabase)
│ ├── utils/ # Utility functions (scaling, formatting)
│ └── constants/ # Status constants and styling configs
├── styles/
│ └── main.css # Custom Pico CSS overrides (~330 lines)
└── supabase-schema.sql # Database schemauseSupabase() → Initializes Supabase clientuseRecipeData() → Manages recipe state (ingredients, steps, status)useRealtime() → Syncs changes across clients via Supabase subscriptionsWhen documenting, provide:
markdown## Feature: Recipe Scaling **What**: Allows users to scale ingredient quantities based on order count (1-50x) **Where**: - `/js/components/RecipeModal.js:119-131` - Slider UI and handler - `/js/utils/scaling.js:3-20` - scaleAmount() function - `/js/hooks/useRecipeData.js` - orderCounts state management **How**: - User adjusts slider (1-50 range) - handleOrderChange() validates and updates orderCounts state - scaleAmount() multiplies ingredient quantities by orderCount - Ingredients re-render with scaled amounts **Interactions**: - Updates Supabase `recipe_order_counts` table - Real-time sync via useRealtime() hook
Decision Tree for Styling:
ingredient_checks - Tracks checked ingredientsstep_checks - Tracks checked stepsrecipe_status - Recipe workflow status (gathered, complete, plated, packed)recipe_order_counts - Order quantitiesrecipe_chef_names - Chef assignments with color badgesRemember: You are a technical cartographer, not an architect. Map what exists, don't redesign it.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | fail→pass | 16,035 | 8,675 | -46% | 1 | 1 | 0% | 2,684 | 2,689 | +0% | 0 | 0 | — |
case-05 | fail→pass | 12,920 | 10,049 | -22% | 1 | 1 | 0% | 2,659 | 3,273 | +23% | 0 | 0 | — |
case-06 | fail→pass | 16,919 | 8,684 | -49% | 1 | 1 | 0% | 3,361 | 2,802 | -17% | 0 | 0 | — |
case-12 | fail→fail | 18,830 | 8,174 | -57% | 1 | 1 | 0% | 3,285 | 2,711 | -17% | 0 | 0 | — |
case-01 | fail→fail | 19,257 | 11,346 | -41% | 1 | 1 | 0% | 3,476 | 3,251 | -6% | 0 | 0 | — |
case-02 | fail→pass | 18,147 | 9,293 | -49% | 1 | 1 | 0% | 2,972 | 2,935 | -1% | 0 | 0 | — |
case-03 | fail→pass | 19,141 | 9,855 | -49% | 1 | 1 | 0% | 3,323 | 2,952 | -11% | 0 | 0 | — |
case-07 | fail→pass | 13,312 | 8,259 | -38% | 1 | 1 | 0% | 2,160 | 2,727 | +26% | 0 | 0 | — |
case-08 | fail→pass | 22,154 | 10,361 | -53% | 1 | 1 | 0% | 4,312 | 3,040 | -29% | 0 | 0 | — |
case-09 | fail→pass | 16,326 | 4,966 | -70% | 1 | 1 | 0% | 2,621 | 2,124 | -19% | 0 | 0 | — |
case-10 | fail→pass | 15,890 | 8,429 | -47% | 1 | 1 | 0% | 2,437 | 2,672 | +10% | 0 | 0 | — |
case-11 | fail→pass | 10,424 | 4,571 | -56% | 1 | 1 | 0% | 1,790 | 2,012 | +12% | 0 | 0 | — |
case-13 | fail→pass | 13,205 | 4,931 | -63% | 1 | 1 | 0% | 2,400 | 1,987 | -17% | 0 | 0 | — |
case-14 | fail→pass | 14,087 | 6,474 | -54% | 1 | 1 | 0% | 2,510 | 2,377 | -5% | 0 | 0 | — |
case-15 | fail→fail | 16,327 | 11,825 | -28% | 1 | 1 | 0% | 3,167 | 3,563 | +13% | 0 | 0 | — |
case-16 | fail→fail | 13,942 | 11,232 | -19% | 1 | 1 | 0% | 2,387 | 3,119 | +31% | 0 | 0 | — |
case-17 | fail→fail | 16,322 | 12,774 | -22% | 1 | 1 | 0% | 2,558 | 3,501 | +37% | 0 | 0 | — |
case-18 | fail→pass | 16,883 | 8,712 | -48% | 1 | 1 | 0% | 2,901 | 2,776 | -4% | 0 | 0 | — |
case-19 | fail→pass | 15,248 | 6,428 | -58% | 1 | 1 | 0% | 2,947 | 2,328 | -21% | 0 | 0 | — |
case-20 | pass→fail | 3,736 | 10,046 | +169% | 1 | 1 | 0% | 602 | 2,878 | +378% | 0 | 0 | — |
case-21 | pass→pass | 11,806 | 9,557 | -19% | 1 | 1 | 0% | 2,177 | 2,978 | +37% | 0 | 0 | — |
case-22 | pass→pass | 18,243 | 14,543 | -20% | 1 | 1 | 0% | 3,483 | 3,953 | +13% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +59 percentage points is the difference between those two pass rates over the 22 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.