arboris-cli 1.0.0 → 1.1.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/dist/cli.mjs +382 -0
- package/manifest.json +323 -0
- package/package.json +22 -10
- package/prisma/skills/accessibility/SKILL.md +147 -0
- package/prisma/skills/agent-architecture-audit/SKILL.md +257 -0
- package/prisma/skills/agent-eval/SKILL.md +146 -0
- package/prisma/skills/agent-harness-construction/SKILL.md +74 -0
- package/prisma/skills/agent-introspection-debugging/SKILL.md +154 -0
- package/prisma/skills/agent-payment-x402/SKILL.md +225 -0
- package/prisma/skills/agent-self-evaluation/SKILL.md +182 -0
- package/prisma/skills/agent-self-evaluation/examples/high-score-example.md +87 -0
- package/prisma/skills/agent-self-evaluation/examples/low-score-example.md +86 -0
- package/prisma/skills/agent-self-evaluation/references/evaluation-criteria.md +71 -0
- package/prisma/skills/agent-self-evaluation/references/hook-integration.md +64 -0
- package/prisma/skills/agent-self-evaluation/scripts/evaluate.py +408 -0
- package/prisma/skills/agent-self-evaluation/templates/evaluation-report.md +86 -0
- package/prisma/skills/agent-sort/SKILL.md +216 -0
- package/prisma/skills/agentic-engineering/SKILL.md +64 -0
- package/prisma/skills/agentic-os/SKILL.md +388 -0
- package/prisma/skills/ai-first-engineering/SKILL.md +52 -0
- package/prisma/skills/ai-regression-testing/SKILL.md +386 -0
- package/prisma/skills/android-clean-architecture/SKILL.md +340 -0
- package/prisma/skills/angular-developer/SKILL.md +155 -0
- package/prisma/skills/angular-developer/references/angular-animations.md +160 -0
- package/prisma/skills/angular-developer/references/angular-aria.md +410 -0
- package/prisma/skills/angular-developer/references/cli.md +86 -0
- package/prisma/skills/angular-developer/references/component-harnesses.md +59 -0
- package/prisma/skills/angular-developer/references/component-styling.md +91 -0
- package/prisma/skills/angular-developer/references/components.md +117 -0
- package/prisma/skills/angular-developer/references/creating-services.md +97 -0
- package/prisma/skills/angular-developer/references/data-resolvers.md +69 -0
- package/prisma/skills/angular-developer/references/define-routes.md +67 -0
- package/prisma/skills/angular-developer/references/defining-providers.md +72 -0
- package/prisma/skills/angular-developer/references/di-fundamentals.md +120 -0
- package/prisma/skills/angular-developer/references/e2e-testing.md +56 -0
- package/prisma/skills/angular-developer/references/effects.md +83 -0
- package/prisma/skills/angular-developer/references/hierarchical-injectors.md +43 -0
- package/prisma/skills/angular-developer/references/host-elements.md +80 -0
- package/prisma/skills/angular-developer/references/injection-context.md +63 -0
- package/prisma/skills/angular-developer/references/inputs.md +101 -0
- package/prisma/skills/angular-developer/references/linked-signal.md +59 -0
- package/prisma/skills/angular-developer/references/loading-strategies.md +61 -0
- package/prisma/skills/angular-developer/references/mcp.md +108 -0
- package/prisma/skills/angular-developer/references/navigate-to-routes.md +69 -0
- package/prisma/skills/angular-developer/references/outputs.md +86 -0
- package/prisma/skills/angular-developer/references/reactive-forms.md +122 -0
- package/prisma/skills/angular-developer/references/rendering-strategies.md +44 -0
- package/prisma/skills/angular-developer/references/resource.md +77 -0
- package/prisma/skills/angular-developer/references/route-animations.md +56 -0
- package/prisma/skills/angular-developer/references/route-guards.md +52 -0
- package/prisma/skills/angular-developer/references/router-lifecycle.md +45 -0
- package/prisma/skills/angular-developer/references/router-testing.md +87 -0
- package/prisma/skills/angular-developer/references/show-routes-with-outlets.md +68 -0
- package/prisma/skills/angular-developer/references/signal-forms.md +795 -0
- package/prisma/skills/angular-developer/references/signals-overview.md +94 -0
- package/prisma/skills/angular-developer/references/tailwind-css.md +69 -0
- package/prisma/skills/angular-developer/references/template-driven-forms.md +114 -0
- package/prisma/skills/angular-developer/references/testing-fundamentals.md +65 -0
- package/prisma/skills/api-connector-builder/SKILL.md +121 -0
- package/prisma/skills/api-design/SKILL.md +524 -0
- package/prisma/skills/architecture-decision-records/SKILL.md +180 -0
- package/prisma/skills/article-writing/SKILL.md +80 -0
- package/prisma/skills/automation-audit-ops/SKILL.md +143 -0
- package/prisma/skills/autonomous-agent-harness/SKILL.md +274 -0
- package/prisma/skills/autonomous-loops/SKILL.md +611 -0
- package/prisma/skills/backend-patterns/SKILL.md +562 -0
- package/prisma/skills/benchmark/SKILL.md +94 -0
- package/prisma/skills/benchmark-methodology/SKILL.md +190 -0
- package/prisma/skills/benchmark-optimization-loop/SKILL.md +70 -0
- package/prisma/skills/blender-motion-state-inspection/SKILL.md +165 -0
- package/prisma/skills/blueprint/SKILL.md +106 -0
- package/prisma/skills/brand-discovery/SKILL.md +145 -0
- package/prisma/skills/brand-discovery/references/10_purpose-why.md +40 -0
- package/prisma/skills/brand-discovery/references/20_positioning.md +44 -0
- package/prisma/skills/brand-discovery/references/30_audience-niche.md +52 -0
- package/prisma/skills/brand-discovery/references/40_personality-archetype.md +57 -0
- package/prisma/skills/brand-discovery/references/50_voice-tone.md +59 -0
- package/prisma/skills/brand-discovery/references/60_narrative-story.md +50 -0
- package/prisma/skills/brand-discovery/references/70_founder-tension.md +49 -0
- package/prisma/skills/brand-discovery/references/90_SYNTHESIS.md +133 -0
- package/prisma/skills/brand-voice/SKILL.md +98 -0
- package/prisma/skills/brand-voice/references/voice-profile-schema.md +55 -0
- package/prisma/skills/browser-qa/SKILL.md +105 -0
- package/prisma/skills/bun-runtime/SKILL.md +85 -0
- package/prisma/skills/canary-watch/SKILL.md +108 -0
- package/prisma/skills/carrier-relationship-management/SKILL.md +212 -0
- package/prisma/skills/cisco-ios-patterns/SKILL.md +164 -0
- package/prisma/skills/ck/SKILL.md +148 -0
- package/prisma/skills/ck/commands/forget.mjs +44 -0
- package/prisma/skills/ck/commands/info.mjs +24 -0
- package/prisma/skills/ck/commands/init.mjs +143 -0
- package/prisma/skills/ck/commands/list.mjs +40 -0
- package/prisma/skills/ck/commands/migrate.mjs +202 -0
- package/prisma/skills/ck/commands/resume.mjs +36 -0
- package/prisma/skills/ck/commands/save.mjs +210 -0
- package/prisma/skills/ck/commands/shared.mjs +387 -0
- package/prisma/skills/ck/hooks/session-start.mjs +224 -0
- package/prisma/skills/claude-devfleet/SKILL.md +112 -0
- package/prisma/skills/click-path-audit/SKILL.md +245 -0
- package/prisma/skills/clickhouse-io/SKILL.md +440 -0
- package/prisma/skills/code-tour/SKILL.md +254 -0
- package/prisma/skills/codebase-onboarding/SKILL.md +234 -0
- package/prisma/skills/codehealth-mcp/SKILL.md +167 -0
- package/prisma/skills/coding-standards/SKILL.md +551 -0
- package/prisma/skills/competitive-platform-analysis/SKILL.md +214 -0
- package/prisma/skills/competitive-report-structure/SKILL.md +162 -0
- package/prisma/skills/compose-multiplatform-patterns/SKILL.md +300 -0
- package/prisma/skills/config-gc/SKILL.md +120 -0
- package/prisma/skills/configure-ecc/SKILL.md +385 -0
- package/prisma/skills/connections-optimizer/SKILL.md +190 -0
- package/prisma/skills/content-engine/SKILL.md +132 -0
- package/prisma/skills/content-hash-cache-pattern/SKILL.md +162 -0
- package/prisma/skills/context-budget/SKILL.md +136 -0
- package/prisma/skills/continuous-agent-loop/SKILL.md +46 -0
- package/prisma/skills/continuous-learning/SKILL.md +132 -0
- package/prisma/skills/continuous-learning/config.json +18 -0
- package/prisma/skills/continuous-learning/evaluate-session.sh +69 -0
- package/prisma/skills/continuous-learning-v2/SKILL.md +361 -0
- package/prisma/skills/continuous-learning-v2/agents/observer-loop.sh +359 -0
- package/prisma/skills/continuous-learning-v2/agents/observer.md +189 -0
- package/prisma/skills/continuous-learning-v2/agents/session-guardian.sh +150 -0
- package/prisma/skills/continuous-learning-v2/agents/start-observer.sh +248 -0
- package/prisma/skills/continuous-learning-v2/config.json +8 -0
- package/prisma/skills/continuous-learning-v2/hooks/observe.sh +585 -0
- package/prisma/skills/continuous-learning-v2/scripts/detect-project.sh +322 -0
- package/prisma/skills/continuous-learning-v2/scripts/instinct-cli.py +1956 -0
- package/prisma/skills/continuous-learning-v2/scripts/lib/homunculus-dir.sh +31 -0
- package/prisma/skills/continuous-learning-v2/scripts/migrate-homunculus.sh +68 -0
- package/prisma/skills/continuous-learning-v2/scripts/test_parse_instinct.py +1421 -0
- package/prisma/skills/cost-aware-llm-pipeline/SKILL.md +184 -0
- package/prisma/skills/cost-tracking/SKILL.md +97 -0
- package/prisma/skills/council/SKILL.md +204 -0
- package/prisma/skills/cpp-coding-standards/SKILL.md +724 -0
- package/prisma/skills/cpp-testing/SKILL.md +325 -0
- package/prisma/skills/crosspost/SKILL.md +112 -0
- package/prisma/skills/csharp-testing/SKILL.md +322 -0
- package/prisma/skills/customer-billing-ops/SKILL.md +141 -0
- package/prisma/skills/customs-trade-compliance/SKILL.md +263 -0
- package/prisma/skills/dart-flutter-patterns/SKILL.md +564 -0
- package/prisma/skills/dashboard-builder/SKILL.md +109 -0
- package/prisma/skills/data-scraper-agent/SKILL.md +765 -0
- package/prisma/skills/data-throughput-accelerator/SKILL.md +73 -0
- package/prisma/skills/database-migrations/SKILL.md +430 -0
- package/prisma/skills/deep-research/SKILL.md +160 -0
- package/prisma/skills/defi-amm-security/SKILL.md +167 -0
- package/prisma/skills/delivery-gate/SKILL.md +126 -0
- package/prisma/skills/delivery-gate/hooks/quality-gate.py +220 -0
- package/prisma/skills/deployment-patterns/SKILL.md +428 -0
- package/prisma/skills/design-system/SKILL.md +83 -0
- package/prisma/skills/django-celery/SKILL.md +458 -0
- package/prisma/skills/django-patterns/SKILL.md +735 -0
- package/prisma/skills/django-security/SKILL.md +644 -0
- package/prisma/skills/django-tdd/SKILL.md +730 -0
- package/prisma/skills/django-verification/SKILL.md +470 -0
- package/prisma/skills/dmux-workflows/SKILL.md +192 -0
- package/prisma/skills/docker-patterns/SKILL.md +365 -0
- package/prisma/skills/documentation-lookup/SKILL.md +91 -0
- package/prisma/skills/dotnet-patterns/SKILL.md +322 -0
- package/prisma/skills/dynamic-workflow-mode/SKILL.md +124 -0
- package/prisma/skills/e2e-testing/SKILL.md +327 -0
- package/prisma/skills/ecc-guide/SKILL.md +190 -0
- package/prisma/skills/ecc-recipes/SKILL.md +149 -0
- package/prisma/skills/ecc-tools-cost-audit/SKILL.md +161 -0
- package/prisma/skills/email-ops/SKILL.md +122 -0
- package/prisma/skills/energy-procurement/SKILL.md +228 -0
- package/prisma/skills/enterprise-agent-ops/SKILL.md +51 -0
- package/prisma/skills/error-handling/SKILL.md +377 -0
- package/prisma/skills/eval-harness/SKILL.md +271 -0
- package/prisma/skills/evm-token-decimals/SKILL.md +131 -0
- package/prisma/skills/exa-search/SKILL.md +108 -0
- package/prisma/skills/fal-ai-media/SKILL.md +289 -0
- package/prisma/skills/fastapi-patterns/SKILL.md +514 -0
- package/prisma/skills/finance-billing-ops/SKILL.md +128 -0
- package/prisma/skills/flox-environments/SKILL.md +497 -0
- package/prisma/skills/flutter-dart-code-review/SKILL.md +436 -0
- package/prisma/skills/foundation-models-on-device/SKILL.md +243 -0
- package/prisma/skills/frontend-a11y/SKILL.md +446 -0
- package/prisma/skills/frontend-design-direction/SKILL.md +93 -0
- package/prisma/skills/frontend-patterns/SKILL.md +657 -0
- package/prisma/skills/frontend-slides/SKILL.md +185 -0
- package/prisma/skills/frontend-slides/STYLE_PRESETS.md +330 -0
- package/prisma/skills/frontend-slides/animation-patterns.md +122 -0
- package/prisma/skills/frontend-slides/html-template.md +419 -0
- package/prisma/skills/frontend-slides/scripts/export-pdf.sh +418 -0
- package/prisma/skills/frontend-slides/scripts/extract-pptx.py +96 -0
- package/prisma/skills/frontend-slides/viewport-base.css +153 -0
- package/prisma/skills/fsharp-testing/SKILL.md +281 -0
- package/prisma/skills/gan-style-harness/SKILL.md +279 -0
- package/prisma/skills/gateguard/SKILL.md +133 -0
- package/prisma/skills/generating-python-installer/SKILL.md +820 -0
- package/prisma/skills/git-workflow/SKILL.md +716 -0
- package/prisma/skills/github-ops/SKILL.md +145 -0
- package/prisma/skills/golang-patterns/SKILL.md +675 -0
- package/prisma/skills/golang-testing/SKILL.md +721 -0
- package/prisma/skills/google-workspace-ops/SKILL.md +96 -0
- package/prisma/skills/growth-log/SKILL.md +128 -0
- package/prisma/skills/healthcare-cdss-patterns/SKILL.md +246 -0
- package/prisma/skills/healthcare-emr-patterns/SKILL.md +160 -0
- package/prisma/skills/healthcare-eval-harness/SKILL.md +208 -0
- package/prisma/skills/healthcare-phi-compliance/SKILL.md +146 -0
- package/prisma/skills/hermes-imports/SKILL.md +89 -0
- package/prisma/skills/hexagonal-architecture/SKILL.md +277 -0
- package/prisma/skills/hipaa-compliance/SKILL.md +79 -0
- package/prisma/skills/homelab-network-readiness/SKILL.md +170 -0
- package/prisma/skills/homelab-network-setup/SKILL.md +130 -0
- package/prisma/skills/homelab-pihole-dns/SKILL.md +275 -0
- package/prisma/skills/homelab-vlan-segmentation/SKILL.md +312 -0
- package/prisma/skills/homelab-wireguard-vpn/SKILL.md +306 -0
- package/prisma/skills/hookify-rules/SKILL.md +128 -0
- package/prisma/skills/inherit-legacy-style/SKILL.md +157 -0
- package/prisma/skills/intent-driven-development/SKILL.md +360 -0
- package/prisma/skills/inventory-demand-planning/SKILL.md +247 -0
- package/prisma/skills/investor-materials/SKILL.md +97 -0
- package/prisma/skills/investor-outreach/SKILL.md +92 -0
- package/prisma/skills/ios-icon-gen/SKILL.md +158 -0
- package/prisma/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
- package/prisma/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
- package/prisma/skills/iterative-retrieval/SKILL.md +212 -0
- package/prisma/skills/ito-basket-compare/SKILL.md +64 -0
- package/prisma/skills/ito-data-atlas-agent/SKILL.md +64 -0
- package/prisma/skills/ito-market-intelligence/SKILL.md +61 -0
- package/prisma/skills/ito-trade-planner/SKILL.md +68 -0
- package/prisma/skills/java-coding-standards/SKILL.md +384 -0
- package/prisma/skills/jira-integration/SKILL.md +303 -0
- package/prisma/skills/jpa-patterns/SKILL.md +152 -0
- package/prisma/skills/knowledge-ops/SKILL.md +155 -0
- package/prisma/skills/kotlin-coroutines-flows/SKILL.md +285 -0
- package/prisma/skills/kotlin-exposed-patterns/SKILL.md +720 -0
- package/prisma/skills/kotlin-ktor-patterns/SKILL.md +690 -0
- package/prisma/skills/kotlin-patterns/SKILL.md +712 -0
- package/prisma/skills/kotlin-testing/SKILL.md +825 -0
- package/prisma/skills/kubernetes-patterns/SKILL.md +756 -0
- package/prisma/skills/laravel-patterns/SKILL.md +416 -0
- package/prisma/skills/laravel-plugin-discovery/SKILL.md +230 -0
- package/prisma/skills/laravel-security/SKILL.md +948 -0
- package/prisma/skills/laravel-tdd/SKILL.md +675 -0
- package/prisma/skills/laravel-verification/SKILL.md +180 -0
- package/prisma/skills/latency-critical-systems/SKILL.md +74 -0
- package/prisma/skills/lead-intelligence/SKILL.md +322 -0
- package/prisma/skills/lead-intelligence/agents/enrichment-agent.md +85 -0
- package/prisma/skills/lead-intelligence/agents/mutual-mapper.md +75 -0
- package/prisma/skills/lead-intelligence/agents/outreach-drafter.md +98 -0
- package/prisma/skills/lead-intelligence/agents/signal-scorer.md +60 -0
- package/prisma/skills/liquid-glass-design/SKILL.md +279 -0
- package/prisma/skills/llm-trading-agent-security/SKILL.md +147 -0
- package/prisma/skills/logistics-exception-management/SKILL.md +222 -0
- package/prisma/skills/loop-design-check/SKILL.md +143 -0
- package/prisma/skills/mailtrap-email-integration/SKILL.md +77 -0
- package/prisma/skills/make-interfaces-feel-better/SKILL.md +152 -0
- package/prisma/skills/manim-video/SKILL.md +90 -0
- package/prisma/skills/manim-video/assets/network_graph_scene.py +52 -0
- package/prisma/skills/market-research/SKILL.md +76 -0
- package/prisma/skills/marketing-campaign/SKILL.md +114 -0
- package/prisma/skills/mcp-server-patterns/SKILL.md +70 -0
- package/prisma/skills/messages-ops/SKILL.md +105 -0
- package/prisma/skills/ml-adoption-playbook/SKILL.md +57 -0
- package/prisma/skills/mle-workflow/SKILL.md +347 -0
- package/prisma/skills/motion-advanced/SKILL.md +596 -0
- package/prisma/skills/motion-foundations/SKILL.md +299 -0
- package/prisma/skills/motion-patterns/SKILL.md +434 -0
- package/prisma/skills/motion-ui/SKILL.md +576 -0
- package/prisma/skills/mysql-patterns/SKILL.md +413 -0
- package/prisma/skills/nanoclaw-repl/SKILL.md +34 -0
- package/prisma/skills/nestjs-patterns/SKILL.md +231 -0
- package/prisma/skills/netmiko-ssh-automation/SKILL.md +174 -0
- package/prisma/skills/network-bgp-diagnostics/SKILL.md +168 -0
- package/prisma/skills/network-config-validation/SKILL.md +211 -0
- package/prisma/skills/network-interface-health/SKILL.md +153 -0
- package/prisma/skills/nextjs-turbopack/SKILL.md +58 -0
- package/prisma/skills/nodejs-keccak256/SKILL.md +103 -0
- package/prisma/skills/nutrient-document-processing/SKILL.md +168 -0
- package/prisma/skills/nuxt4-patterns/SKILL.md +101 -0
- package/prisma/skills/openclaw-persona-forge/SKILL.md +289 -0
- package/prisma/skills/openclaw-persona-forge/gacha.py +224 -0
- package/prisma/skills/openclaw-persona-forge/gacha.sh +5 -0
- package/prisma/skills/openclaw-persona-forge/references/avatar-style.md +124 -0
- package/prisma/skills/openclaw-persona-forge/references/boundary-rules.md +53 -0
- package/prisma/skills/openclaw-persona-forge/references/error-handling.md +53 -0
- package/prisma/skills/openclaw-persona-forge/references/identity-tension.md +48 -0
- package/prisma/skills/openclaw-persona-forge/references/naming-system.md +39 -0
- package/prisma/skills/openclaw-persona-forge/references/output-template.md +166 -0
- package/prisma/skills/opensource-pipeline/SKILL.md +256 -0
- package/prisma/skills/orch-add-feature/SKILL.md +45 -0
- package/prisma/skills/orch-build-mvp/SKILL.md +49 -0
- package/prisma/skills/orch-change-feature/SKILL.md +43 -0
- package/prisma/skills/orch-fix-defect/SKILL.md +43 -0
- package/prisma/skills/orch-pipeline/SKILL.md +121 -0
- package/prisma/skills/orch-refine-code/SKILL.md +44 -0
- package/prisma/skills/parallel-execution-optimizer/SKILL.md +73 -0
- package/prisma/skills/perl-patterns/SKILL.md +505 -0
- package/prisma/skills/perl-security/SKILL.md +504 -0
- package/prisma/skills/perl-testing/SKILL.md +476 -0
- package/prisma/skills/plan-orchestrate/SKILL.md +263 -0
- package/prisma/skills/plankton-code-quality/SKILL.md +237 -0
- package/prisma/skills/postgres-patterns/SKILL.md +148 -0
- package/prisma/skills/prediction-market-oracle-research/SKILL.md +64 -0
- package/prisma/skills/prediction-market-risk-review/SKILL.md +61 -0
- package/prisma/skills/prisma-patterns/SKILL.md +401 -0
- package/prisma/skills/product-capability/SKILL.md +142 -0
- package/prisma/skills/product-lens/SKILL.md +93 -0
- package/prisma/skills/production-audit/SKILL.md +207 -0
- package/prisma/skills/production-scheduling/SKILL.md +238 -0
- package/prisma/skills/project-flow-ops/SKILL.md +112 -0
- package/prisma/skills/prompt-optimizer/SKILL.md +398 -0
- package/prisma/skills/python-patterns/SKILL.md +751 -0
- package/prisma/skills/python-testing/SKILL.md +817 -0
- package/prisma/skills/pytorch-patterns/SKILL.md +397 -0
- package/prisma/skills/quality-nonconformance/SKILL.md +260 -0
- package/prisma/skills/quarkus-patterns/SKILL.md +723 -0
- package/prisma/skills/quarkus-security/SKILL.md +468 -0
- package/prisma/skills/quarkus-tdd/SKILL.md +812 -0
- package/prisma/skills/quarkus-verification/SKILL.md +480 -0
- package/prisma/skills/ralphinho-rfc-pipeline/SKILL.md +68 -0
- package/prisma/skills/react-native-patterns/SKILL.md +326 -0
- package/prisma/skills/react-patterns/SKILL.md +342 -0
- package/prisma/skills/react-performance/SKILL.md +575 -0
- package/prisma/skills/react-testing/SKILL.md +424 -0
- package/prisma/skills/recsys-pipeline-architect/SKILL.md +115 -0
- package/prisma/skills/recursive-decision-ledger/SKILL.md +80 -0
- package/prisma/skills/redis-patterns/SKILL.md +404 -0
- package/prisma/skills/regex-vs-llm-structured-text/SKILL.md +221 -0
- package/prisma/skills/remotion-video-creation/SKILL.md +43 -0
- package/prisma/skills/remotion-video-creation/rules/3d.md +86 -0
- package/prisma/skills/remotion-video-creation/rules/animations.md +29 -0
- package/prisma/skills/remotion-video-creation/rules/assets/charts-bar-chart.tsx +173 -0
- package/prisma/skills/remotion-video-creation/rules/assets/text-animations-typewriter.tsx +100 -0
- package/prisma/skills/remotion-video-creation/rules/assets/text-animations-word-highlight.tsx +108 -0
- package/prisma/skills/remotion-video-creation/rules/assets.md +78 -0
- package/prisma/skills/remotion-video-creation/rules/audio.md +172 -0
- package/prisma/skills/remotion-video-creation/rules/calculate-metadata.md +104 -0
- package/prisma/skills/remotion-video-creation/rules/can-decode.md +75 -0
- package/prisma/skills/remotion-video-creation/rules/charts.md +58 -0
- package/prisma/skills/remotion-video-creation/rules/compositions.md +146 -0
- package/prisma/skills/remotion-video-creation/rules/display-captions.md +126 -0
- package/prisma/skills/remotion-video-creation/rules/extract-frames.md +229 -0
- package/prisma/skills/remotion-video-creation/rules/fonts.md +152 -0
- package/prisma/skills/remotion-video-creation/rules/get-audio-duration.md +58 -0
- package/prisma/skills/remotion-video-creation/rules/get-video-dimensions.md +68 -0
- package/prisma/skills/remotion-video-creation/rules/get-video-duration.md +58 -0
- package/prisma/skills/remotion-video-creation/rules/gifs.md +138 -0
- package/prisma/skills/remotion-video-creation/rules/images.md +130 -0
- package/prisma/skills/remotion-video-creation/rules/import-srt-captions.md +67 -0
- package/prisma/skills/remotion-video-creation/rules/lottie.md +67 -0
- package/prisma/skills/remotion-video-creation/rules/measuring-dom-nodes.md +34 -0
- package/prisma/skills/remotion-video-creation/rules/measuring-text.md +143 -0
- package/prisma/skills/remotion-video-creation/rules/sequencing.md +106 -0
- package/prisma/skills/remotion-video-creation/rules/tailwind.md +11 -0
- package/prisma/skills/remotion-video-creation/rules/text-animations.md +20 -0
- package/prisma/skills/remotion-video-creation/rules/timing.md +179 -0
- package/prisma/skills/remotion-video-creation/rules/transcribe-captions.md +19 -0
- package/prisma/skills/remotion-video-creation/rules/transitions.md +122 -0
- package/prisma/skills/remotion-video-creation/rules/trimming.md +52 -0
- package/prisma/skills/remotion-video-creation/rules/videos.md +171 -0
- package/prisma/skills/repo-scan/SKILL.md +79 -0
- package/prisma/skills/research-ops/SKILL.md +113 -0
- package/prisma/skills/returns-reverse-logistics/SKILL.md +240 -0
- package/prisma/skills/rules-distill/SKILL.md +265 -0
- package/prisma/skills/rules-distill/scripts/scan-rules.sh +58 -0
- package/prisma/skills/rules-distill/scripts/scan-skills.sh +129 -0
- package/prisma/skills/rust-patterns/SKILL.md +500 -0
- package/prisma/skills/rust-testing/SKILL.md +501 -0
- package/prisma/skills/safety-guard/SKILL.md +76 -0
- package/prisma/skills/santa-method/SKILL.md +307 -0
- package/prisma/skills/scientific-db-pubmed-database/SKILL.md +176 -0
- package/prisma/skills/scientific-db-uspto-database/SKILL.md +178 -0
- package/prisma/skills/scientific-pkg-gget/SKILL.md +167 -0
- package/prisma/skills/scientific-thinking-literature-review/SKILL.md +193 -0
- package/prisma/skills/scientific-thinking-scholar-evaluation/SKILL.md +161 -0
- package/prisma/skills/search-first/SKILL.md +183 -0
- package/prisma/skills/security-bounty-hunter/SKILL.md +100 -0
- package/prisma/skills/security-review/SKILL.md +504 -0
- package/prisma/skills/security-review/cloud-infrastructure-security.md +361 -0
- package/prisma/skills/security-scan/SKILL.md +166 -0
- package/prisma/skills/seo/SKILL.md +155 -0
- package/prisma/skills/skill-comply/SKILL.md +59 -0
- package/prisma/skills/skill-comply/fixtures/compliant_trace.jsonl +5 -0
- package/prisma/skills/skill-comply/fixtures/noncompliant_trace.jsonl +3 -0
- package/prisma/skills/skill-comply/fixtures/tdd_spec.yaml +44 -0
- package/prisma/skills/skill-comply/prompts/classifier.md +24 -0
- package/prisma/skills/skill-comply/prompts/scenario_generator.md +62 -0
- package/prisma/skills/skill-comply/prompts/spec_generator.md +42 -0
- package/prisma/skills/skill-comply/pyproject.toml +15 -0
- package/prisma/skills/skill-comply/scripts/__init__.py +0 -0
- package/prisma/skills/skill-comply/scripts/classifier.py +85 -0
- package/prisma/skills/skill-comply/scripts/grader.py +124 -0
- package/prisma/skills/skill-comply/scripts/parser.py +107 -0
- package/prisma/skills/skill-comply/scripts/report.py +170 -0
- package/prisma/skills/skill-comply/scripts/run.py +127 -0
- package/prisma/skills/skill-comply/scripts/runner.py +194 -0
- package/prisma/skills/skill-comply/scripts/scenario_generator.py +70 -0
- package/prisma/skills/skill-comply/scripts/spec_generator.py +72 -0
- package/prisma/skills/skill-comply/scripts/utils.py +13 -0
- package/prisma/skills/skill-comply/tests/test_grader.py +197 -0
- package/prisma/skills/skill-comply/tests/test_parser.py +90 -0
- package/prisma/skills/skill-comply/tests/test_runner.py +172 -0
- package/prisma/skills/skill-scout/SKILL.md +141 -0
- package/prisma/skills/skill-stocktake/SKILL.md +195 -0
- package/prisma/skills/skill-stocktake/scripts/quick-diff.sh +87 -0
- package/prisma/skills/skill-stocktake/scripts/save-results.sh +56 -0
- package/prisma/skills/skill-stocktake/scripts/scan.sh +170 -0
- package/prisma/skills/social-graph-ranker/SKILL.md +155 -0
- package/prisma/skills/social-publisher/SKILL.md +130 -0
- package/prisma/skills/springboot-patterns/SKILL.md +315 -0
- package/prisma/skills/springboot-security/SKILL.md +273 -0
- package/prisma/skills/springboot-tdd/SKILL.md +159 -0
- package/prisma/skills/springboot-verification/SKILL.md +232 -0
- package/prisma/skills/strategic-compact/SKILL.md +136 -0
- package/prisma/skills/swift-actor-persistence/SKILL.md +144 -0
- package/prisma/skills/swift-concurrency-6-2/SKILL.md +216 -0
- package/prisma/skills/swift-protocol-di-testing/SKILL.md +191 -0
- package/prisma/skills/swiftui-patterns/SKILL.md +259 -0
- package/prisma/skills/taste/SKILL.md +264 -0
- package/prisma/skills/taste/references/genre-taxonomy.md +87 -0
- package/prisma/skills/tdd-workflow/SKILL.md +583 -0
- package/prisma/skills/team-agent-orchestration/SKILL.md +111 -0
- package/prisma/skills/team-builder/SKILL.md +169 -0
- package/prisma/skills/terminal-ops/SKILL.md +110 -0
- package/prisma/skills/tinystruct-patterns/SKILL.md +279 -0
- package/prisma/skills/tinystruct-patterns/references/architecture.md +90 -0
- package/prisma/skills/tinystruct-patterns/references/data-handling.md +60 -0
- package/prisma/skills/tinystruct-patterns/references/database.md +99 -0
- package/prisma/skills/tinystruct-patterns/references/routing.md +64 -0
- package/prisma/skills/tinystruct-patterns/references/system-usage.md +97 -0
- package/prisma/skills/tinystruct-patterns/references/testing.md +72 -0
- package/prisma/skills/token-budget-advisor/SKILL.md +134 -0
- package/prisma/skills/ui-demo/SKILL.md +466 -0
- package/prisma/skills/ui-to-vue/SKILL.md +135 -0
- package/prisma/skills/uncloud/SKILL.md +344 -0
- package/prisma/skills/unified-notifications-ops/SKILL.md +188 -0
- package/prisma/skills/verification-loop/SKILL.md +127 -0
- package/prisma/skills/video-editing/SKILL.md +311 -0
- package/prisma/skills/videodb/SKILL.md +375 -0
- package/prisma/skills/videodb/reference/api-reference.md +550 -0
- package/prisma/skills/videodb/reference/capture-reference.md +407 -0
- package/prisma/skills/videodb/reference/capture.md +101 -0
- package/prisma/skills/videodb/reference/editor.md +443 -0
- package/prisma/skills/videodb/reference/generative.md +331 -0
- package/prisma/skills/videodb/reference/rtstream-reference.md +564 -0
- package/prisma/skills/videodb/reference/rtstream.md +65 -0
- package/prisma/skills/videodb/reference/search.md +230 -0
- package/prisma/skills/videodb/reference/streaming.md +406 -0
- package/prisma/skills/videodb/reference/use-cases.md +118 -0
- package/prisma/skills/videodb/scripts/ws_listener.py +282 -0
- package/prisma/skills/visa-doc-translate/README.md +86 -0
- package/prisma/skills/visa-doc-translate/SKILL.md +117 -0
- package/prisma/skills/vite-patterns/SKILL.md +450 -0
- package/prisma/skills/vue-patterns/SKILL.md +471 -0
- package/prisma/skills/windows-desktop-e2e/SKILL.md +888 -0
- package/prisma/skills/workspace-surface-audit/SKILL.md +126 -0
- package/prisma/skills/x-api/SKILL.md +235 -0
- package/run.mjs +0 -10
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: intent-driven-development
|
|
3
|
+
description: Turn ambiguous or high-impact product and engineering changes into scoped, verifiable acceptance criteria before or alongside implementation. Use when a user asks to clarify a feature, define acceptance criteria, de-risk a security/data/migration/integration change, prepare implementation requirements for another agent, or make a complex request testable. Do not trigger for trivial edits, straightforward fixes, active debugging, code review, or implementation requests whose acceptance conditions are already clear unless the user explicitly invokes this skill.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Intent-Driven Development
|
|
7
|
+
|
|
8
|
+
Produce useful acceptance criteria without turning specification into ceremony. Inspect
|
|
9
|
+
available context first, expose genuine ambiguity, and choose verification methods that fit
|
|
10
|
+
the work and its risk.
|
|
11
|
+
|
|
12
|
+
## When to Activate
|
|
13
|
+
|
|
14
|
+
- User asks to clarify a feature, define acceptance criteria, or de-risk a change before implementation
|
|
15
|
+
- Request touches security, authentication, persistent data, migrations, external APIs, or compliance
|
|
16
|
+
- User wants to prepare a handoff artifact for another agent or team
|
|
17
|
+
- Request is ambiguous enough that the expected outcome is not yet observable or testable
|
|
18
|
+
- User explicitly invokes this skill with `/intent-driven-development`
|
|
19
|
+
|
|
20
|
+
Do not activate for trivial edits, straightforward one-line fixes, active debugging sessions,
|
|
21
|
+
code review requests, or implementation requests whose acceptance conditions are already clear.
|
|
22
|
+
|
|
23
|
+
## How It Works
|
|
24
|
+
|
|
25
|
+
1. **Inspect context first** — reads the repository, docs, schemas, and test infrastructure for technical facts before asking any question, while treating product/business constraints as something only the user or a product artifact can supply
|
|
26
|
+
2. **Choose depth** — selects Quick Capture (3-7 criteria, low/moderate risk) or Full Acceptance Brief (security, data, migration, cross-system changes) based on the risk profile
|
|
27
|
+
3. **Ask minimally** — only asks questions whose answers cannot be inferred and that materially change scope or behavior
|
|
28
|
+
4. **Write observable criteria** — each AC-NNN describes a starting condition, trigger, expected outcome, prohibited side effect, verification method, and priority; no vague words like "correctly" or "securely" without evidence
|
|
29
|
+
5. **Proceed or hand off** — for clear requests with no blocking risks, records criteria and continues; for risky changes, presents blockers and waits for confirmation
|
|
30
|
+
6. **Handle revision** — if an AC fails mid-implementation due to architectural constraints, marks it `[revised]`, updates scope or verification method, increments the revision number, and re-presents only the changed criteria
|
|
31
|
+
|
|
32
|
+
## Examples
|
|
33
|
+
|
|
34
|
+
**Quick Capture — "Add CSV export to the dashboard"**
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
Goal: Authenticated users can download dashboard data as a CSV file.
|
|
38
|
+
In scope: Export of currently filtered rows; filename includes date.
|
|
39
|
+
Out of scope: Scheduled exports, email delivery, Excel format.
|
|
40
|
+
Assumptions: Max row count is under 10k; no PII in exported fields.
|
|
41
|
+
|
|
42
|
+
AC-001: Export generates file with correct headers
|
|
43
|
+
- Scenario: authenticated user, at least one data row visible
|
|
44
|
+
- Action: click "Export CSV"
|
|
45
|
+
- Expected: browser downloads file with columns [id, name, created_at]
|
|
46
|
+
- Must not: expose internal fields or rows belonging to other users
|
|
47
|
+
- Verification: automated integration test + manual schema spot-check
|
|
48
|
+
- Priority: Required
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Full Acceptance Brief trigger — "Migrate user auth to OAuth"**
|
|
52
|
+
|
|
53
|
+
Auth change + external dependency + existing session data → Full Brief with Risk Review table,
|
|
54
|
+
blocking decisions on session invalidation strategy, and explicit rollback AC.
|
|
55
|
+
|
|
56
|
+
**Existing spec review — user pastes a PRD**
|
|
57
|
+
|
|
58
|
+
Skill reviews it for missing scope boundaries, unverifiable requirements ("the system shall be fast"),
|
|
59
|
+
and silent assumptions, then returns corrected or supplemental criteria without restarting discovery.
|
|
60
|
+
|
|
61
|
+
## Operating Rules
|
|
62
|
+
|
|
63
|
+
1. Inspect the available repository, documentation, issue, design, and test context before
|
|
64
|
+
asking for technical facts that can be discovered locally.
|
|
65
|
+
2. Do not infer product or business constraints from code. Business rules, compliance and
|
|
66
|
+
regulatory obligations, contractual SLAs, pricing, data-retention policy, prioritization,
|
|
67
|
+
and target users cannot be read from a repository. Treat them as unknown until the user
|
|
68
|
+
supplies them or an authoritative product artifact (PRD, contract, policy document) states
|
|
69
|
+
them. Record them as assumptions flagged for confirmation, never as discovered facts. The
|
|
70
|
+
repository tells you how the system behaves today, not what the business requires it to do.
|
|
71
|
+
3. Ask only questions whose answers are required and cannot be safely inferred. Group short,
|
|
72
|
+
related questions when that saves unnecessary turns.
|
|
73
|
+
4. Do not block implementation by default. When the user has asked to implement a sufficiently
|
|
74
|
+
clear change, record key assumptions and acceptance criteria briefly, then proceed or hand
|
|
75
|
+
them to the implementation workflow.
|
|
76
|
+
5. Require explicit user confirmation before proceeding only when an unresolved decision could
|
|
77
|
+
create material security exposure, data loss, irreversible migration, contractual/API
|
|
78
|
+
breakage, meaningful cost, or destructive external action.
|
|
79
|
+
6. Do not write an acceptance document into a repository, alter project files, create a branch,
|
|
80
|
+
commit, or invoke another skill unless the user requests it or the active repository
|
|
81
|
+
workflow explicitly requires it.
|
|
82
|
+
7. Treat automated tests as evidence, not truth. Prefer automation when reliable and
|
|
83
|
+
proportionate; allow manual UX, accessibility, security, legal, or operational verification
|
|
84
|
+
where automation cannot establish the outcome.
|
|
85
|
+
8. Never include real secrets, credentials, tokens, private keys, personal data, or sensitive
|
|
86
|
+
production payloads in acceptance criteria, fixtures, examples, or saved artifacts. Use
|
|
87
|
+
redacted or synthetic values.
|
|
88
|
+
9. Do not run destructive tests, migrations, security probes, load tests, paid external calls,
|
|
89
|
+
or operations against production/live data without explicit authorization and an identified
|
|
90
|
+
safe environment.
|
|
91
|
+
10. When an acceptance criterion cannot be satisfied due to an architectural, platform, or
|
|
92
|
+
external constraint discovered during implementation, do not silently drop or workaround it.
|
|
93
|
+
Update the affected criterion (mark it `[revised]`, state the constraint, and adjust scope or
|
|
94
|
+
verification method), increment the revision number, and re-present only the changed criteria
|
|
95
|
+
to the user before continuing. Require explicit confirmation only if the revision changes a
|
|
96
|
+
blocking decision or materially reduces safety or correctness guarantees.
|
|
97
|
+
|
|
98
|
+
## Choose The Depth
|
|
99
|
+
|
|
100
|
+
Use the smallest useful output.
|
|
101
|
+
|
|
102
|
+
### Quick Capture
|
|
103
|
+
|
|
104
|
+
Use for a clear but non-trivial change with low or moderate risk. Produce:
|
|
105
|
+
|
|
106
|
+
- Goal
|
|
107
|
+
- In scope / out of scope
|
|
108
|
+
- Assumptions
|
|
109
|
+
- 3-7 acceptance criteria with verification methods
|
|
110
|
+
- Blocking questions, if any
|
|
111
|
+
|
|
112
|
+
Do not delay implementation for approval unless a blocking risk from the operating rules
|
|
113
|
+
exists or the user specifically asked for a specification first.
|
|
114
|
+
|
|
115
|
+
### Full Acceptance Brief
|
|
116
|
+
|
|
117
|
+
Use for ambiguous, cross-system, security-sensitive, data-changing, migration, compliance,
|
|
118
|
+
or high-cost changes, or when the user requests a handoff artifact. Produce the full template
|
|
119
|
+
below and request confirmation for unresolved blocking decisions before risky implementation.
|
|
120
|
+
|
|
121
|
+
### Existing Specification Review
|
|
122
|
+
|
|
123
|
+
When the user already supplied a PRD, issue, plan, or acceptance criteria:
|
|
124
|
+
|
|
125
|
+
1. Review it instead of restarting discovery.
|
|
126
|
+
2. Identify missing scope boundaries, unsafe assumptions, contradictions, and unverifiable
|
|
127
|
+
requirements.
|
|
128
|
+
3. Return corrected or supplemental criteria.
|
|
129
|
+
|
|
130
|
+
## Workflow
|
|
131
|
+
|
|
132
|
+
### 1. Establish Goal And Risk
|
|
133
|
+
|
|
134
|
+
Extract or ask for:
|
|
135
|
+
|
|
136
|
+
- The observable outcome for the user or system.
|
|
137
|
+
- The actors affected.
|
|
138
|
+
- The main failure consequence.
|
|
139
|
+
- Risk dimensions that actually apply: security/privacy, persistent data, compatibility/API,
|
|
140
|
+
migration, external dependencies, cost, concurrency, performance, usability/accessibility.
|
|
141
|
+
|
|
142
|
+
Avoid asking generic questions about irrelevant risks.
|
|
143
|
+
|
|
144
|
+
### 2. Discover Context
|
|
145
|
+
|
|
146
|
+
When local or connected artifacts are available, inspect only what is needed:
|
|
147
|
+
|
|
148
|
+
- Existing behavior and directly related files or interfaces.
|
|
149
|
+
- Repository conventions, product docs, API contracts, data schemas, or migration history.
|
|
150
|
+
- Existing verification infrastructure and realistic commands.
|
|
151
|
+
- External dependencies and whether they are testable in isolation.
|
|
152
|
+
|
|
153
|
+
Record discovered facts separately from user-provided assumptions. If context cannot be
|
|
154
|
+
inspected, say what is unknown and ask focused questions.
|
|
155
|
+
|
|
156
|
+
The repository reveals technical facts — how the system behaves today, its conventions, and
|
|
157
|
+
its contracts. It does not reveal product or business constraints: business rules, compliance
|
|
158
|
+
and regulatory obligations, contractual SLAs, pricing, data-retention policy, prioritization,
|
|
159
|
+
and target users. Never reconstruct these from code or naming. Capture them only from the user
|
|
160
|
+
or an authoritative product artifact, and list them as assumptions to confirm until then.
|
|
161
|
+
|
|
162
|
+
### 3. Define Scope
|
|
163
|
+
|
|
164
|
+
State:
|
|
165
|
+
|
|
166
|
+
- Goal: one sentence describing the intended outcome.
|
|
167
|
+
- In scope: behavior this change must deliver.
|
|
168
|
+
- Out of scope: tempting adjacent work explicitly excluded.
|
|
169
|
+
- Assumptions: claims not yet proven.
|
|
170
|
+
- Blocking decisions: unresolved choices that materially affect safety or behavior.
|
|
171
|
+
|
|
172
|
+
### 4. Write Acceptance Criteria
|
|
173
|
+
|
|
174
|
+
Use `AC-001`, `AC-002`, and so on. Each criterion must describe observable behavior and an
|
|
175
|
+
appropriate verification method; criteria and tests are not required to map one-to-one.
|
|
176
|
+
|
|
177
|
+
For each applicable criterion include:
|
|
178
|
+
|
|
179
|
+
- Scenario or starting condition.
|
|
180
|
+
- Action or trigger.
|
|
181
|
+
- Expected observable behavior.
|
|
182
|
+
- Prohibited side effect when meaningful.
|
|
183
|
+
- Verification method: automated test, integration check, manual UX review, accessibility
|
|
184
|
+
check, security review, operational check, or stakeholder acceptance.
|
|
185
|
+
- Environment/safety constraint when verification could affect data, services, cost, or secrets.
|
|
186
|
+
- Priority: required, important, or optional.
|
|
187
|
+
|
|
188
|
+
Do not use words such as "correctly", "securely", "fast", "intuitive", or "robust" without
|
|
189
|
+
defining observable evidence or recording them as a human-review judgment.
|
|
190
|
+
|
|
191
|
+
### 5. Cover Only Relevant Boundaries
|
|
192
|
+
|
|
193
|
+
Consider these categories, but include only categories that apply:
|
|
194
|
+
|
|
195
|
+
| Category | Include when | Typical evidence |
|
|
196
|
+
| --- | --- | --- |
|
|
197
|
+
| Happy path | New or changed user-visible behavior | Successful workflow or state transition |
|
|
198
|
+
| Validation | The change accepts input | Rejected malformed or boundary value without mutation |
|
|
199
|
+
| Authorization/privacy | Data or actions have access boundaries | Denied access and no sensitive disclosure |
|
|
200
|
+
| Persistence/migration | Stored data or schemas change | Backward read, migration, rollback or backup behavior |
|
|
201
|
+
| Compatibility | Public APIs, files, events, or clients may break | Existing contract or fixture remains valid |
|
|
202
|
+
| Failure recovery | Network, service, or asynchronous failure exists | No partial state or clear retry/degraded behavior |
|
|
203
|
+
| Idempotency/concurrency | Repeats or simultaneous writes are plausible | No duplicate side effect or invalid final state |
|
|
204
|
+
| Performance | A user or service threshold matters | Defined measurement conditions and threshold |
|
|
205
|
+
| UX/accessibility | A person interacts with the result | Keyboard, feedback, error recovery, visual/manual review |
|
|
206
|
+
|
|
207
|
+
### 6. Present And Continue
|
|
208
|
+
|
|
209
|
+
- For a clarification/specification request, present the brief and ask for decisions only on
|
|
210
|
+
listed blockers.
|
|
211
|
+
- For an implementation request with no blocker, present a compact criteria summary as part of
|
|
212
|
+
the work and continue with implementation.
|
|
213
|
+
- For handoff to another agent or team, include enough context and verification detail for them
|
|
214
|
+
to act without inventing requirements.
|
|
215
|
+
- Save the brief to a file only when requested. Use a repository-approved path when one exists;
|
|
216
|
+
otherwise ask for or state the chosen destination before writing.
|
|
217
|
+
|
|
218
|
+
## Output Template
|
|
219
|
+
|
|
220
|
+
Use this template for a Full Acceptance Brief. Omit irrelevant sections for Quick Capture.
|
|
221
|
+
|
|
222
|
+
```markdown
|
|
223
|
+
# Acceptance Brief: <Change Name>
|
|
224
|
+
|
|
225
|
+
**Status:** Draft | Approved | Implemented | Verified
|
|
226
|
+
**Revision:** <number>
|
|
227
|
+
**Prepared for:** <user/team/agent, when known>
|
|
228
|
+
**Approval required before risky work:** Yes | No - <reason>
|
|
229
|
+
|
|
230
|
+
## Revision Log
|
|
231
|
+
|
|
232
|
+
| Rev | Date | Changed criteria | Reason |
|
|
233
|
+
| --- | --- | --- | --- |
|
|
234
|
+
| 1 | <date> | — | Initial draft |
|
|
235
|
+
|
|
236
|
+
## Goal
|
|
237
|
+
|
|
238
|
+
<One observable outcome sentence.>
|
|
239
|
+
|
|
240
|
+
## Scope
|
|
241
|
+
|
|
242
|
+
**In scope**
|
|
243
|
+
- <behavior included>
|
|
244
|
+
|
|
245
|
+
**Out of scope**
|
|
246
|
+
- <adjacent work excluded>
|
|
247
|
+
|
|
248
|
+
## Context
|
|
249
|
+
|
|
250
|
+
**Discovered facts** (technical, verified from repository or artifact)
|
|
251
|
+
- <how the system behaves today, conventions, contracts>
|
|
252
|
+
|
|
253
|
+
**Product/business constraints** (supplied by user or product artifact, never inferred from code)
|
|
254
|
+
- <business rule, compliance/SLA obligation, retention policy, priority, target user — or "none supplied yet">
|
|
255
|
+
|
|
256
|
+
**Assumptions**
|
|
257
|
+
- <unverified claim to confirm or validate>
|
|
258
|
+
|
|
259
|
+
**Dependencies and constraints**
|
|
260
|
+
- <external service, local convention, compatibility obligation, environment limit>
|
|
261
|
+
|
|
262
|
+
## Risk Review
|
|
263
|
+
|
|
264
|
+
| Risk area | Applies? | Required handling |
|
|
265
|
+
| --- | --- | --- |
|
|
266
|
+
| Security/privacy | Yes/No | <redaction, authorization, review, etc.> |
|
|
267
|
+
| Persistent data/migration | Yes/No | <compatibility, backup, rollback, etc.> |
|
|
268
|
+
| External effects/cost | Yes/No | <sandbox/test environment/authorization> |
|
|
269
|
+
| Compatibility/API | Yes/No | <contract to preserve or version> |
|
|
270
|
+
| UX/accessibility | Yes/No | <manual or automated evidence> |
|
|
271
|
+
|
|
272
|
+
## Acceptance Criteria
|
|
273
|
+
|
|
274
|
+
### AC-001: <observable behavior>
|
|
275
|
+
- **Scenario:** <starting condition>
|
|
276
|
+
- **Action:** <single trigger>
|
|
277
|
+
- **Expected:** <observable result>
|
|
278
|
+
- **Must not:** <prohibited side effect, if applicable>
|
|
279
|
+
- **Verification:** <method and intended evidence>
|
|
280
|
+
- **Environment/safety:** <constraints, if applicable>
|
|
281
|
+
- **Priority:** Required | Important | Optional
|
|
282
|
+
|
|
283
|
+
## Blocking Decisions
|
|
284
|
+
|
|
285
|
+
- [ ] <only decisions that prevent safe or correct progress>
|
|
286
|
+
|
|
287
|
+
## Verification Plan
|
|
288
|
+
|
|
289
|
+
| Criterion | Verification evidence | Status |
|
|
290
|
+
| --- | --- | --- |
|
|
291
|
+
| AC-001 | <test/check/review command or evidence type> | Pending |
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
## Pass/Fail Examples
|
|
295
|
+
|
|
296
|
+
Use these to judge whether the skill actually produced a verifiable brief, not planning prose.
|
|
297
|
+
|
|
298
|
+
**A failing acceptance criterion**
|
|
299
|
+
|
|
300
|
+
```
|
|
301
|
+
AC-001: The export works correctly and is secure.
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
Fails — "works correctly" and "secure" are not observable, there is no scenario, trigger,
|
|
305
|
+
expected result, or verification method, and nothing states what must not happen. A reader
|
|
306
|
+
cannot tell whether the implementation satisfied it.
|
|
307
|
+
|
|
308
|
+
**A passing acceptance criterion**
|
|
309
|
+
|
|
310
|
+
```
|
|
311
|
+
AC-001: Export generates file with correct headers
|
|
312
|
+
- Scenario: authenticated user, at least one data row visible
|
|
313
|
+
- Action: click "Export CSV"
|
|
314
|
+
- Expected: browser downloads file with columns [id, name, created_at]
|
|
315
|
+
- Must not: expose internal fields or rows belonging to other users
|
|
316
|
+
- Verification: automated integration test + manual schema spot-check
|
|
317
|
+
- Priority: Required
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
Passes — a concrete observable outcome, a prohibited side effect, and a named verification
|
|
321
|
+
method. Two people would agree on whether it was met.
|
|
322
|
+
|
|
323
|
+
**A failing context entry**
|
|
324
|
+
|
|
325
|
+
```
|
|
326
|
+
Discovered facts: Users on the free tier are limited to 100 exports per month.
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
Fails — a per-tier limit is a business rule. It must not appear under discovered facts inferred
|
|
330
|
+
from code; it belongs under Product/business constraints, supplied by the user, or be listed as
|
|
331
|
+
an assumption to confirm.
|
|
332
|
+
|
|
333
|
+
### Pass/Fail Rubric
|
|
334
|
+
|
|
335
|
+
A brief passes only if every answer is "yes". Any "no" means revise before returning it.
|
|
336
|
+
|
|
337
|
+
- [ ] Does every required criterion have a scenario, an observable expected result, and a named verification method?
|
|
338
|
+
- [ ] Are all vague terms ("correctly", "secure", "fast", "robust") either replaced with observable evidence or marked as human judgment?
|
|
339
|
+
- [ ] Are product/business constraints listed as supplied/assumed, with none silently inferred from code?
|
|
340
|
+
- [ ] Is scope explicit, with out-of-scope items named?
|
|
341
|
+
- [ ] Are blocking decisions limited to choices that actually affect safety or correctness, not preferences?
|
|
342
|
+
|
|
343
|
+
## Quality Check
|
|
344
|
+
|
|
345
|
+
Before returning the brief, check:
|
|
346
|
+
|
|
347
|
+
- The goal describes an outcome rather than an implementation choice.
|
|
348
|
+
- Scope boundaries and assumptions are explicit.
|
|
349
|
+
- Every required criterion is observable or clearly marked for human judgment.
|
|
350
|
+
- Security, privacy, data, compatibility, external-effect, and UX risks were considered only
|
|
351
|
+
where relevant and not silently ignored.
|
|
352
|
+
- Verification methods identify safe environments for risky operations.
|
|
353
|
+
- No secret or production-sensitive information was copied into the output.
|
|
354
|
+
- No repository mutation or implementation block is imposed without justification or request.
|
|
355
|
+
|
|
356
|
+
## Handoff
|
|
357
|
+
|
|
358
|
+
When another planning or implementation workflow is available, pass the acceptance brief or
|
|
359
|
+
criterion IDs to it. When no dedicated workflow exists, provide the brief directly as the
|
|
360
|
+
implementation reference. Do not assume any named skill or tool is installed.
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: inventory-demand-planning
|
|
3
|
+
description: >
|
|
4
|
+
Codified expertise for demand forecasting, safety stock optimization,
|
|
5
|
+
replenishment planning, and promotional lift estimation at multi-location
|
|
6
|
+
retailers. Informed by demand planners with 15+ years experience managing
|
|
7
|
+
hundreds of SKUs. Includes forecasting method selection, ABC/XYZ analysis,
|
|
8
|
+
seasonal transition management, and vendor negotiation frameworks.
|
|
9
|
+
Use when forecasting demand, setting safety stock, planning replenishment,
|
|
10
|
+
managing promotions, or optimizing inventory levels.
|
|
11
|
+
license: Apache-2.0
|
|
12
|
+
version: 1.0.0
|
|
13
|
+
homepage: https://github.com/affaan-m/everything-claude-code
|
|
14
|
+
metadata:
|
|
15
|
+
origin: ECC
|
|
16
|
+
author: evos
|
|
17
|
+
clawdbot:
|
|
18
|
+
emoji: ""
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# Inventory Demand Planning
|
|
22
|
+
|
|
23
|
+
## Role and Context
|
|
24
|
+
|
|
25
|
+
You are a senior demand planner at a multi-location retailer operating 40–200 stores with regional distribution centers. You manage 300–800 active SKUs across categories including grocery, general merchandise, seasonal, and promotional assortments. Your systems include a demand planning suite (Blue Yonder, Oracle Demantra, or Kinaxis), an ERP (SAP, Oracle), a WMS for DC-level inventory, POS data feeds at the store level, and vendor portals for purchase order management. You sit between merchandising (which decides what to sell and at what price), supply chain (which manages warehouse capacity and transportation), and finance (which sets inventory investment budgets and GMROI targets). Your job is to translate commercial intent into executable purchase orders while minimizing both stockouts and excess inventory.
|
|
26
|
+
|
|
27
|
+
## When to Use
|
|
28
|
+
|
|
29
|
+
- Generating or reviewing demand forecasts for existing or new SKUs
|
|
30
|
+
- Setting safety stock levels based on demand variability and service level targets
|
|
31
|
+
- Planning replenishment for seasonal transitions, promotions, or new product launches
|
|
32
|
+
- Evaluating forecast accuracy and adjusting models or overrides
|
|
33
|
+
- Making buy decisions under supplier MOQ constraints or lead time changes
|
|
34
|
+
|
|
35
|
+
## How It Works
|
|
36
|
+
|
|
37
|
+
1. Collect demand signals (POS sell-through, orders, shipments) and cleanse outliers
|
|
38
|
+
2. Select forecasting method per SKU based on ABC/XYZ classification and demand pattern
|
|
39
|
+
3. Apply promotional lifts, cannibalization offsets, and external causal factors
|
|
40
|
+
4. Calculate safety stock using demand variability, lead time variability, and target fill rate
|
|
41
|
+
5. Generate suggested purchase orders, apply MOQ/EOQ rounding, and route for planner review
|
|
42
|
+
6. Monitor forecast accuracy (MAPE, bias) and adjust models in the next planning cycle
|
|
43
|
+
|
|
44
|
+
## Examples
|
|
45
|
+
|
|
46
|
+
- **Seasonal promotion planning**: Merchandising plans a 3-week BOGO promotion on a top-20 SKU. Estimate promotional lift using historical promo elasticity, calculate the forward buy quantity, coordinate with the vendor on advance PO and logistics capacity, and plan the post-promo demand dip.
|
|
47
|
+
- **New SKU launch**: No demand history available. Use analog SKU mapping (similar category, price point, brand) to generate an initial forecast, set conservative safety stock at 2 weeks of projected sales, and define the review cadence for the first 8 weeks.
|
|
48
|
+
- **DC replenishment under lead time change**: Key vendor extends lead time from 14 to 21 days due to port congestion. Recalculate safety stock across all affected SKUs, identify which are at risk of stockout before the new POs arrive, and recommend bridge orders or substitute sourcing.
|
|
49
|
+
|
|
50
|
+
## Core Knowledge
|
|
51
|
+
|
|
52
|
+
### Forecasting Methods and When to Use Each
|
|
53
|
+
|
|
54
|
+
**Moving Averages (simple, weighted, trailing):** Use for stable-demand, low-variability items where recent history is a reliable predictor. A 4-week simple moving average works for commodity staples. Weighted moving averages (heavier on recent weeks) work better when demand is stable but shows slight drift. Never use moving averages on seasonal items — they lag trend changes by half the window length.
|
|
55
|
+
|
|
56
|
+
**Exponential Smoothing (single, double, triple):** Single exponential smoothing (SES, alpha 0.1–0.3) suits stationary demand with noise. Double exponential smoothing (Holt's) adds trend tracking — use for items with consistent growth or decline. Triple exponential smoothing (Holt-Winters) adds seasonal indices — this is the workhorse for seasonal items with 52-week or 12-month cycles. The alpha/beta/gamma parameters are critical: high alpha (>0.3) chases noise in volatile items; low alpha (<0.1) responds too slowly to regime changes. Optimize on holdout data, never on the same data used for fitting.
|
|
57
|
+
|
|
58
|
+
**Seasonal Decomposition (STL, classical, X-13ARIMA-SEATS):** When you need to isolate trend, seasonal, and residual components separately. STL (Seasonal and Trend decomposition using Loess) is robust to outliers. Use seasonal decomposition when seasonal patterns are shifting year over year, when you need to remove seasonality before applying a different model to the de-seasonalized data, or when building promotional lift estimates on top of a clean baseline.
|
|
59
|
+
|
|
60
|
+
**Causal/Regression Models:** When external factors drive demand beyond the item's own history — price elasticity, promotional flags, weather, competitor actions, local events. The practical challenge is feature engineering: promotional flags should encode depth (% off), display type, circular feature, and cross-category promo presence. Overfitting on sparse promo history is the single biggest pitfall. Regularize aggressively (Lasso/Ridge) and validate on out-of-time, not out-of-sample.
|
|
61
|
+
|
|
62
|
+
**Machine Learning (gradient boosting, neural nets):** Justified when you have large data (1,000+ SKUs × 2+ years of weekly history), multiple external regressors, and an ML engineering team. LightGBM/XGBoost with proper feature engineering outperforms simpler methods by 10–20% WAPE on promotional and intermittent items. But they require continuous monitoring — model drift in retail is real and quarterly retraining is the minimum.
|
|
63
|
+
|
|
64
|
+
### Forecast Accuracy Metrics
|
|
65
|
+
|
|
66
|
+
- **MAPE (Mean Absolute Percentage Error):** Standard metric but breaks on low-volume items (division by near-zero actuals produces inflated percentages). Use only for items averaging 50+ units/week.
|
|
67
|
+
- **Weighted MAPE (WMAPE):** Sum of absolute errors divided by sum of actuals. Prevents low-volume items from dominating the metric. This is the metric finance cares about because it reflects dollars.
|
|
68
|
+
- **Bias:** Average signed error. Positive bias = forecast systematically too high (overstock risk). Negative bias = systematically too low (stockout risk). Bias < ±5% is healthy. Bias > 10% in either direction means a structural problem in the model, not noise.
|
|
69
|
+
- **Tracking Signal:** Cumulative error divided by MAD (mean absolute deviation). When tracking signal exceeds ±4, the model has drifted and needs intervention — either re-parameterize or switch methods.
|
|
70
|
+
|
|
71
|
+
### Safety Stock Calculation
|
|
72
|
+
|
|
73
|
+
The textbook formula is `SS = Z × σ_d × √(LT + RP)` where Z is the service level z-score, σ_d is the standard deviation of demand per period, LT is lead time in periods, and RP is review period in periods. In practice, this formula works only for normally distributed, stationary demand.
|
|
74
|
+
|
|
75
|
+
**Service Level Targets:** 95% service level (Z=1.65) is standard for A-items. 99% (Z=2.33) for critical/A+ items where stockout cost dwarfs holding cost. 90% (Z=1.28) is acceptable for C-items. Moving from 95% to 99% nearly doubles safety stock — always quantify the inventory investment cost of the incremental service level before committing.
|
|
76
|
+
|
|
77
|
+
**Lead Time Variability:** When vendor lead times are uncertain, use `SS = Z × √(LT_avg × σ_d² + d_avg² × σ_LT²)` — this captures both demand variability and lead time variability. Vendors with coefficient of variation (CV) on lead time > 0.3 need safety stock adjustments that can be 40–60% higher than demand-only formulas suggest.
|
|
78
|
+
|
|
79
|
+
**Lumpy/Intermittent Demand:** Normal-distribution safety stock fails for items with many zero-demand periods. Use Croston's method for forecasting intermittent demand (separate forecasts for demand interval and demand size), and compute safety stock using a bootstrapped demand distribution rather than analytical formulas.
|
|
80
|
+
|
|
81
|
+
**New Products:** No demand history means no σ_d. Use analogous item profiling — find the 3–5 most similar items at the same lifecycle stage and use their demand variability as a proxy. Add a 20–30% buffer for the first 8 weeks, then taper as own history accumulates.
|
|
82
|
+
|
|
83
|
+
### Reorder Logic
|
|
84
|
+
|
|
85
|
+
**Inventory Position:** `IP = On-Hand + On-Order − Backorders − Committed (allocated to open customer orders)`. Never reorder based on on-hand alone — you will double-order when POs are in transit.
|
|
86
|
+
|
|
87
|
+
**Min/Max:** Simple, suitable for stable-demand items with consistent lead times. Min = average demand during lead time + safety stock. Max = Min + EOQ. When IP drops to Min, order up to Max. The weakness: it doesn't adapt to changing demand patterns without manual adjustment.
|
|
88
|
+
|
|
89
|
+
**Reorder Point / EOQ:** ROP = average demand during lead time + safety stock. EOQ = √(2DS/H) where D = annual demand, S = ordering cost, H = holding cost per unit per year. EOQ is theoretically optimal for constant demand, but in practice you round to vendor case packs, layer quantities, or pallet tiers. A "perfect" EOQ of 847 units means nothing if the vendor ships in cases of 24.
|
|
90
|
+
|
|
91
|
+
**Periodic Review (R,S):** Review inventory every R periods, order up to target level S. Better when you consolidate orders to a vendor on fixed days (e.g., Tuesday orders for Thursday pickup). R is set by vendor delivery schedule; S = average demand during (R + LT) + safety stock for that combined period.
|
|
92
|
+
|
|
93
|
+
**Vendor Tier-Based Frequencies:** A-vendors (top 10 by spend) get weekly review cycles. B-vendors (next 20) get bi-weekly. C-vendors (remaining) get monthly. This aligns review effort with financial impact and allows consolidation discounts.
|
|
94
|
+
|
|
95
|
+
### Promotional Planning
|
|
96
|
+
|
|
97
|
+
**Demand Signal Distortion:** Promotions create artificial demand peaks that contaminate baseline forecasting. Strip promotional volume from history before fitting baseline models. Keep a separate "promotional lift" layer that applies multiplicatively on top of the baseline during promo weeks.
|
|
98
|
+
|
|
99
|
+
**Lift Estimation Methods:** (1) Year-over-year comparison of promoted vs. non-promoted periods for the same item. (2) Cross-elasticity model using historical promo depth, display type, and media support as inputs. (3) Analogous item lift — new items borrow lift profiles from similar items in the same category that have been promoted before. Typical lifts: 15–40% for TPR (temporary price reduction) only, 80–200% for TPR + display + circular feature, 300–500%+ for doorbuster/loss-leader events.
|
|
100
|
+
|
|
101
|
+
**Cannibalization:** When SKU A is promoted, SKU B (same category, similar price point) loses volume. Estimate cannibalization at 10–30% of lifted volume for close substitutes. Ignore cannibalization across categories unless the promo is a traffic driver that shifts basket composition.
|
|
102
|
+
|
|
103
|
+
**Forward-Buy Calculation:** Customers stock up during deep promotions, creating a post-promo dip. The dip duration correlates with product shelf life and promotional depth. A 30% off promotion on a pantry item with 12-month shelf life creates a 2–4 week dip as households consume stockpiled units. A 15% off promotion on a perishable produces almost no dip.
|
|
104
|
+
|
|
105
|
+
**Post-Promo Dip:** Expect 1–3 weeks of below-baseline demand after a major promotion. The dip magnitude is typically 30–50% of the incremental lift, concentrated in the first week post-promo. Failing to forecast the dip leads to excess inventory and markdowns.
|
|
106
|
+
|
|
107
|
+
### ABC/XYZ Classification
|
|
108
|
+
|
|
109
|
+
**ABC (Value):** A = top 20% of SKUs driving 80% of revenue/margin. B = next 30% driving 15%. C = bottom 50% driving 5%. Classify on margin contribution, not revenue, to avoid overinvesting in high-revenue low-margin items.
|
|
110
|
+
|
|
111
|
+
**XYZ (Predictability):** X = CV of demand < 0.5 (highly predictable). Y = CV 0.5–1.0 (moderately predictable). Z = CV > 1.0 (erratic/lumpy). Compute on de-seasonalized, de-promoted demand to avoid penalizing seasonal items that are actually predictable within their pattern.
|
|
112
|
+
|
|
113
|
+
**Policy Matrix:** AX items get automated replenishment with tight safety stock. AZ items need human review every cycle — they're high-value but erratic. CX items get automated replenishment with generous review periods. CZ items are candidates for discontinuation or make-to-order conversion.
|
|
114
|
+
|
|
115
|
+
### Seasonal Transition Management
|
|
116
|
+
|
|
117
|
+
**Buy Timing:** Seasonal buys (e.g., holiday, summer, back-to-school) are committed 12–20 weeks before selling season. Allocate 60–70% of expected season demand in the initial buy, reserving 30–40% for reorder based on early-season sell-through. This "open-to-buy" reserve is your hedge against forecast error.
|
|
118
|
+
|
|
119
|
+
**Markdown Timing:** Begin markdowns when sell-through pace drops below 60% of plan at the season midpoint. Early shallow markdowns (20–30% off) recover more margin than late deep markdowns (50–70% off). The rule of thumb: every week of delay in markdown initiation costs 3–5 percentage points of margin on the remaining inventory.
|
|
120
|
+
|
|
121
|
+
**Season-End Liquidation:** Set a hard cutoff date (typically 2–3 weeks before the next season's product arrives). Everything remaining at cutoff goes to outlet, liquidator, or donation. Holding seasonal product into the next year rarely works — style items date, and warehousing cost erodes any margin recovery from selling next season.
|
|
122
|
+
|
|
123
|
+
## Decision Frameworks
|
|
124
|
+
|
|
125
|
+
### Forecast Method Selection by Demand Pattern
|
|
126
|
+
|
|
127
|
+
| Demand Pattern | Primary Method | Fallback Method | Review Trigger |
|
|
128
|
+
|---|---|---|---|
|
|
129
|
+
| Stable, high-volume, no seasonality | Weighted moving average (4–8 weeks) | Single exponential smoothing | WMAPE > 25% for 4 consecutive weeks |
|
|
130
|
+
| Trending (growth or decline) | Holt's double exponential smoothing | Linear regression on recent 26 weeks | Tracking signal exceeds ±4 |
|
|
131
|
+
| Seasonal, repeating pattern | Holt-Winters (multiplicative for growing seasonal, additive for stable) | STL decomposition + SES on residual | Season-over-season pattern correlation < 0.7 |
|
|
132
|
+
| Intermittent / lumpy (>30% zero-demand periods) | Croston's method or SBA (Syntetos-Boylan Approximation) | Bootstrap simulation on demand intervals | Mean inter-demand interval shifts by >30% |
|
|
133
|
+
| Promotion-driven | Causal regression (baseline + promo lift layer) | Analogous item lift + baseline | Post-promo actuals deviate >40% from forecast |
|
|
134
|
+
| New product (0–12 weeks history) | Analogous item profile with lifecycle curve | Category average with decay toward actual | Own-data WMAPE stabilizes below analogous-based WMAPE |
|
|
135
|
+
| Event-driven (weather, local events) | Regression with external regressors | Manual override with documented rationale | Re-evaluate when regressor-to-demand correlation falls below 0.6 or event-period forecast error rises >30% for 2 comparable events |
|
|
136
|
+
|
|
137
|
+
### Safety Stock Service Level Selection
|
|
138
|
+
|
|
139
|
+
| Segment | Target Service Level | Z-Score | Rationale |
|
|
140
|
+
|---|---|---|---|
|
|
141
|
+
| AX (high-value, predictable) | 97.5% | 1.96 | High value justifies investment; low variability keeps SS moderate |
|
|
142
|
+
| AY (high-value, moderate variability) | 95% | 1.65 | Standard target; variability makes higher SL prohibitively expensive |
|
|
143
|
+
| AZ (high-value, erratic) | 92–95% | 1.41–1.65 | Erratic demand makes high SL astronomically expensive; supplement with expediting capability |
|
|
144
|
+
| BX/BY | 95% | 1.65 | Standard target |
|
|
145
|
+
| BZ | 90% | 1.28 | Accept some stockout risk on mid-tier erratic items |
|
|
146
|
+
| CX/CY | 90–92% | 1.28–1.41 | Low value doesn't justify high SS investment |
|
|
147
|
+
| CZ | 85% | 1.04 | Candidate for discontinuation; minimal investment |
|
|
148
|
+
|
|
149
|
+
### Promotional Lift Decision Framework
|
|
150
|
+
|
|
151
|
+
1. **Is there historical lift data for this SKU-promo type combination?** → Use own-item lift with recency weighting (most recent 3 promos weighted 50/30/20).
|
|
152
|
+
2. **No own-item data but same category has been promoted?** → Use analogous item lift adjusted for price point and brand tier.
|
|
153
|
+
3. **Brand-new category or promo type?** → Use conservative category-average lift discounted 20%. Build in a wider safety stock buffer for the promo period.
|
|
154
|
+
4. **Cross-promoted with another category?** → Model the traffic driver separately from the cross-promo beneficiary. Apply cross-elasticity coefficient if available; default 0.15 lift for cross-category halo.
|
|
155
|
+
5. **Always model the post-promo dip.** Default to 40% of incremental lift, concentrated 60/30/10 across the three post-promo weeks.
|
|
156
|
+
|
|
157
|
+
### Markdown Timing Decision
|
|
158
|
+
|
|
159
|
+
| Sell-Through at Season Midpoint | Action | Expected Margin Recovery |
|
|
160
|
+
|---|---|---|
|
|
161
|
+
| ≥ 80% of plan | Hold price. Reorder cautiously if weeks of supply < 3. | Full margin |
|
|
162
|
+
| 60–79% of plan | Take 20–25% markdown. No reorder. | 70–80% of original margin |
|
|
163
|
+
| 40–59% of plan | Take 30–40% markdown immediately. Cancel any open POs. | 50–65% of original margin |
|
|
164
|
+
| < 40% of plan | Take 50%+ markdown. Explore liquidation channels. Flag buying error for post-mortem. | 30–45% of original margin |
|
|
165
|
+
|
|
166
|
+
### Slow-Mover Kill Decision
|
|
167
|
+
|
|
168
|
+
Evaluate quarterly. Flag for discontinuation when ALL of the following are true:
|
|
169
|
+
- Weeks of supply > 26 at current sell-through rate
|
|
170
|
+
- Last 13-week sales velocity < 50% of the item's first 13 weeks (lifecycle declining)
|
|
171
|
+
- No promotional activity planned in the next 8 weeks
|
|
172
|
+
- Item is not contractually obligated (planogram commitment, vendor agreement)
|
|
173
|
+
- Replacement or substitution SKU exists or category can absorb the gap
|
|
174
|
+
|
|
175
|
+
If flagged, initiate markdown at 30% off for 4 weeks. If still not moving, escalate to 50% off or liquidation. Set a hard exit date 8 weeks from first markdown. Do not allow slow movers to linger indefinitely in the assortment — they consume shelf space, warehouse slots, and working capital.
|
|
176
|
+
|
|
177
|
+
## Key Edge Cases
|
|
178
|
+
|
|
179
|
+
Brief summaries are included here so you can expand them into project-specific playbooks if needed.
|
|
180
|
+
|
|
181
|
+
1. **New product launch with zero history:** Analogous item profiling is your only tool. Select analogs carefully — match on price point, category, brand tier, and target demographic, not just product type. Commit a conservative initial buy (60% of analog-based forecast) and build in weekly auto-replenishment triggers.
|
|
182
|
+
|
|
183
|
+
2. **Viral social media spike:** Demand jumps 500–2,000% with no warning. Do not chase — by the time your supply chain responds (4–8 week lead times), the spike is over. Capture what you can from existing inventory, issue allocation rules to prevent a single location from hoarding, and let the wave pass. Revise the baseline only if sustained demand persists 4+ weeks post-spike.
|
|
184
|
+
|
|
185
|
+
3. **Supplier lead time doubling overnight:** Recalculate safety stock immediately using the new lead time. If SS doubles, you likely cannot fill the gap from current inventory. Place an emergency order for the delta, negotiate partial shipments, and identify secondary suppliers. Communicate to merchandising that service levels will temporarily drop.
|
|
186
|
+
|
|
187
|
+
4. **Cannibalization from an unplanned promotion:** A competitor or another department runs an unplanned promo that steals volume from your category. Your forecast will over-project. Detect early by monitoring daily POS for a pattern break, then manually override the forecast downward. Defer incoming orders if possible.
|
|
188
|
+
|
|
189
|
+
5. **Demand pattern regime change:** An item that was stable-seasonal suddenly shifts to trending or erratic. Common after a reformulation, packaging change, or competitor entry/exit. The old model will fail silently. Monitor tracking signal weekly — when it exceeds ±4 for two consecutive periods, trigger a model re-selection.
|
|
190
|
+
|
|
191
|
+
6. **Phantom inventory:** WMS says you have 200 units; physical count reveals 40. Every forecast and replenishment decision based on that phantom inventory is wrong. Suspect phantom inventory when service level drops despite "adequate" on-hand. Conduct cycle counts on any item with stockouts that the system says shouldn't have occurred.
|
|
192
|
+
|
|
193
|
+
7. **Vendor MOQ conflicts:** Your EOQ says order 150 units; the vendor's minimum order quantity is 500. You either over-order (accepting weeks of excess inventory) or negotiate. Options: consolidate with other items from the same vendor to meet dollar minimums, negotiate a lower MOQ for this SKU, or accept the overage if holding cost is lower than ordering from an alternative supplier.
|
|
194
|
+
|
|
195
|
+
8. **Holiday calendar shift effects:** When key selling holidays shift position in the calendar (e.g., Easter moves between March and April), week-over-week comparisons break. Align forecasts to "weeks relative to holiday" rather than calendar weeks. A failure to account for Easter shifting from Week 13 to Week 16 will create significant forecast error in both years.
|
|
196
|
+
|
|
197
|
+
## Communication Patterns
|
|
198
|
+
|
|
199
|
+
### Tone Calibration
|
|
200
|
+
|
|
201
|
+
- **Vendor routine reorder:** Transactional, brief, PO-reference-driven. "PO #XXXX for delivery week of MM/DD per our agreed schedule."
|
|
202
|
+
- **Vendor lead time escalation:** Firm, fact-based, quantifies business impact. "Our analysis shows your lead time has increased from 14 to 22 days over the past 8 weeks. This has resulted in X stockout events. We need a corrective plan by [date]."
|
|
203
|
+
- **Internal stockout alert:** Urgent, actionable, includes estimated revenue at risk. Lead with the customer impact, not the inventory metric. "SKU X will stock out at 12 locations by Thursday. Estimated lost sales: $XX,000. Recommended action: [expedite/reallocate/substitute]."
|
|
204
|
+
- **Markdown recommendation to merchandising:** Data-driven, includes margin impact analysis. Never frame it as "we bought too much" — frame as "sell-through pace requires price action to meet margin targets."
|
|
205
|
+
- **Promotional forecast submission:** Structured, with baseline, lift, and post-promo dip called out separately. Include assumptions and confidence range. "Baseline: 500 units/week. Promotional lift estimate: 180% (900 incremental). Post-promo dip: −35% for 2 weeks. Confidence: ±25%."
|
|
206
|
+
- **New product forecast assumptions:** Document every assumption explicitly so it can be audited at post-mortem. "Based on analogs [list], we project 200 units/week in weeks 1–4, declining to 120 units/week by week 8. Assumptions: price point $X, distribution to 80 doors, no competitive launch in window."
|
|
207
|
+
|
|
208
|
+
Brief templates appear above. Adapt them to your supplier, sales, and operations planning workflows before using them in production.
|
|
209
|
+
|
|
210
|
+
## Escalation Protocols
|
|
211
|
+
|
|
212
|
+
### Automatic Escalation Triggers
|
|
213
|
+
|
|
214
|
+
| Trigger | Action | Timeline |
|
|
215
|
+
|---|---|---|
|
|
216
|
+
| Projected stockout on A-item within 7 days | Alert demand planning manager + category merchant | Within 4 hours |
|
|
217
|
+
| Vendor confirms lead time increase > 25% | Notify supply chain director; recalculate all open POs | Within 1 business day |
|
|
218
|
+
| Promotional forecast miss > 40% (over or under) | Post-promo debrief with merchandising and vendor | Within 1 week of promo end |
|
|
219
|
+
| Excess inventory > 26 weeks of supply on any A/B item | Markdown recommendation to merchandising VP | Within 1 week of detection |
|
|
220
|
+
| Forecast bias exceeds ±10% for 4 consecutive weeks | Model review and re-parameterization | Within 2 weeks |
|
|
221
|
+
| New product sell-through < 40% of plan after 4 weeks | Assortment review with merchandising | Within 1 week |
|
|
222
|
+
| Service level drops below 90% for any category | Root cause analysis and corrective plan | Within 48 hours |
|
|
223
|
+
|
|
224
|
+
### Escalation Chain
|
|
225
|
+
|
|
226
|
+
Level 1 (Demand Planner) → Level 2 (Planning Manager, 24 hours) → Level 3 (Director of Supply Chain Planning, 48 hours) → Level 4 (VP Supply Chain, 72+ hours or any A-item stockout at enterprise customer)
|
|
227
|
+
|
|
228
|
+
## Performance Indicators
|
|
229
|
+
|
|
230
|
+
Track weekly and trend monthly:
|
|
231
|
+
|
|
232
|
+
| Metric | Target | Red Flag |
|
|
233
|
+
|---|---|---|
|
|
234
|
+
| WMAPE (weighted mean absolute percentage error) | < 25% | > 35% |
|
|
235
|
+
| Forecast bias | ±5% | > ±10% for 4+ weeks |
|
|
236
|
+
| In-stock rate (A-items) | > 97% | < 94% |
|
|
237
|
+
| In-stock rate (all items) | > 95% | < 92% |
|
|
238
|
+
| Weeks of supply (aggregate) | 4–8 weeks | > 12 or < 3 |
|
|
239
|
+
| Excess inventory (>26 weeks supply) | < 5% of SKUs | > 10% of SKUs |
|
|
240
|
+
| Dead stock (zero sales, 13+ weeks) | < 2% of SKUs | > 5% of SKUs |
|
|
241
|
+
| Purchase order fill rate from vendors | > 95% | < 90% |
|
|
242
|
+
| Promotional forecast accuracy (WMAPE) | < 35% | > 50% |
|
|
243
|
+
|
|
244
|
+
## Additional Resources
|
|
245
|
+
|
|
246
|
+
- Pair this skill with your SKU segmentation model, service-level policy, and planner override audit log.
|
|
247
|
+
- Store post-mortems for promotion misses, vendor delays, and forecast overrides next to the planning workflow so the edge cases stay actionable.
|