tribunal-kit 5.8.3 โ†’ 5.8.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/.agent/ARCHITECTURE.md +5 -5
  2. package/.agent/history/integrity_manifest.json +1026 -0
  3. package/.agent/history/memory/.memory.idx +1217 -1
  4. package/.agent/history/memory/MEMORY.md +81 -1
  5. package/.agent/rules/GEMINI.md +1 -1
  6. package/.agent/scripts/_utils.js +28 -7
  7. package/.agent/scripts/case_law_manager.js +3 -15
  8. package/.agent/scripts/context_broker.js +3 -20
  9. package/.agent/scripts/guardrail_engine.js +643 -0
  10. package/.agent/scripts/integrity_manifest.js +492 -0
  11. package/.agent/scripts/marathon_harness.js +10 -1
  12. package/.agent/scripts/signal_detector.js +1 -1
  13. package/.agent/scripts/skill_evolution.js +39 -36
  14. package/.agent/scripts/skill_integrator.js +2 -12
  15. package/.agent/scripts/swarm_dispatcher.js +54 -5
  16. package/.agent/skills/12-principles-of-animation/SKILL.md +69 -0
  17. package/.agent/skills/60fps-animation/SKILL.md +78 -0
  18. package/.agent/skills/accessible-animation/SKILL.md +86 -0
  19. package/.agent/skills/adapt/SKILL.md +75 -0
  20. package/.agent/skills/animation-on-scroll/SKILL.md +110 -0
  21. package/.agent/skills/animation-systems/SKILL.md +69 -0
  22. package/.agent/skills/antfu-conventions/SKILL.md +74 -0
  23. package/.agent/skills/api-patterns/scripts/__pycache__/api_validator.cpython-311.pyc +0 -0
  24. package/.agent/skills/apple-design/SKILL.md +108 -0
  25. package/.agent/skills/audit-and-fix/SKILL.md +83 -0
  26. package/.agent/skills/baseline-ui/SKILL.md +74 -0
  27. package/.agent/skills/better-colors/SKILL.md +132 -0
  28. package/.agent/skills/better-typography/SKILL.md +111 -0
  29. package/.agent/skills/better-ui/SKILL.md +102 -0
  30. package/.agent/skills/bolder/SKILL.md +68 -0
  31. package/.agent/skills/build-primitive/SKILL.md +70 -0
  32. package/.agent/skills/clarify/SKILL.md +75 -0
  33. package/.agent/skills/cobejs/SKILL.md +96 -0
  34. package/.agent/skills/codebase-design/SKILL.md +84 -0
  35. package/.agent/skills/colorize/SKILL.md +77 -0
  36. package/.agent/skills/compact-landing/SKILL.md +70 -0
  37. package/.agent/skills/company-logos/SKILL.md +73 -0
  38. package/.agent/skills/create-design-md/SKILL.md +104 -0
  39. package/.agent/skills/critique/SKILL.md +95 -0
  40. package/.agent/skills/database-design/scripts/__pycache__/schema_validator.cpython-311.pyc +0 -0
  41. package/.agent/skills/delight/SKILL.md +65 -0
  42. package/.agent/skills/design-lab/SKILL.md +59 -0
  43. package/.agent/skills/diagnosing-bugs/SKILL.md +190 -0
  44. package/.agent/skills/distill/SKILL.md +65 -0
  45. package/.agent/skills/domain-modeling/SKILL.md +78 -0
  46. package/.agent/skills/fixing-accessibility/SKILL.md +100 -0
  47. package/.agent/skills/fixing-metadata/SKILL.md +97 -0
  48. package/.agent/skills/fixing-motion-performance/SKILL.md +96 -0
  49. package/.agent/skills/frontend-design/SKILL.md +80 -81
  50. package/.agent/skills/frontend-design/scripts/__pycache__/accessibility_checker.cpython-311.pyc +0 -0
  51. package/.agent/skills/frontend-design/scripts/__pycache__/ux_audit.cpython-311.pyc +0 -0
  52. package/.agent/skills/geo-fundamentals/scripts/__pycache__/geo_checker.cpython-311.pyc +0 -0
  53. package/.agent/skills/gpt-taste/SKILL.md +68 -0
  54. package/.agent/skills/harden/SKILL.md +74 -0
  55. package/.agent/skills/i18n-localization/scripts/__pycache__/i18n_checker.cpython-311.pyc +0 -0
  56. package/.agent/skills/impeccable/SKILL.md +74 -0
  57. package/.agent/skills/improve-codebase-architecture/SKILL.md +67 -0
  58. package/.agent/skills/improve-ui/SKILL.md +83 -0
  59. package/.agent/skills/landing-page/SKILL.md +88 -0
  60. package/.agent/skills/lint-and-validate/SKILL.md +0 -1
  61. package/.agent/skills/lint-and-validate/scripts/__pycache__/lint_runner.cpython-311.pyc +0 -0
  62. package/.agent/skills/lint-and-validate/scripts/__pycache__/type_coverage.cpython-311.pyc +0 -0
  63. package/.agent/skills/local-first-architecture/SKILL.md +66 -0
  64. package/.agent/skills/lottie-animation/SKILL.md +82 -0
  65. package/.agent/skills/marquee-loop/SKILL.md +96 -0
  66. package/.agent/skills/masked-reveal/SKILL.md +88 -0
  67. package/.agent/skills/micro-interaction/SKILL.md +100 -0
  68. package/.agent/skills/mobile-design/scripts/__pycache__/mobile_audit.cpython-311.pyc +0 -0
  69. package/.agent/skills/morphing-icons/SKILL.md +85 -0
  70. package/.agent/skills/motion-engineering/SKILL.md +66 -164
  71. package/.agent/skills/nextjs-react-expert/scripts/__pycache__/convert_rules.cpython-311.pyc +0 -0
  72. package/.agent/skills/nextjs-react-expert/scripts/__pycache__/react_performance_checker.cpython-311.pyc +0 -0
  73. package/.agent/skills/page-transition-animation/SKILL.md +108 -0
  74. package/.agent/skills/parallel-agents/SKILL.md +5 -5
  75. package/.agent/skills/performance-profiling/scripts/__pycache__/lighthouse_audit.cpython-311.pyc +0 -0
  76. package/.agent/skills/polish/SKILL.md +63 -0
  77. package/.agent/skills/pricing-page/SKILL.md +68 -0
  78. package/.agent/skills/progressive-blur/SKILL.md +100 -0
  79. package/.agent/skills/quieter/SKILL.md +68 -0
  80. package/.agent/skills/react-doctor/SKILL.md +70 -0
  81. package/.agent/skills/redesign-skill/SKILL.md +65 -0
  82. package/.agent/skills/seo-fundamentals/scripts/__pycache__/seo_checker.cpython-311.pyc +0 -0
  83. package/.agent/skills/shape/SKILL.md +73 -0
  84. package/.agent/skills/soft-skill/SKILL.md +72 -0
  85. package/.agent/skills/sounds-on-the-web/SKILL.md +100 -0
  86. package/.agent/skills/svg-animation/SKILL.md +91 -0
  87. package/.agent/skills/swiss-design/SKILL.md +64 -0
  88. package/.agent/skills/taste-skill/SKILL.md +71 -0
  89. package/.agent/skills/tdd-workflow/SKILL.md +36 -165
  90. package/.agent/skills/testing-patterns/scripts/__pycache__/test_runner.cpython-311.pyc +0 -0
  91. package/.agent/skills/thermo-nuclear-code-quality-review/SKILL.md +82 -0
  92. package/.agent/skills/to-spring-or-not-to-spring/SKILL.md +66 -0
  93. package/.agent/skills/transitions-dev/SKILL.md +101 -0
  94. package/.agent/skills/typeset/SKILL.md +76 -0
  95. package/.agent/skills/ui-skills-root/SKILL.md +85 -0
  96. package/.agent/skills/vulnerability-scanner/scripts/__pycache__/security_scan.cpython-311.pyc +0 -0
  97. package/.agent/skills/web-quality-audit/SKILL.md +67 -0
  98. package/.agent/skills/webapp-testing/scripts/__pycache__/playwright_runner.cpython-311.pyc +0 -0
  99. package/.agent/workflows/generate.md +1 -1
  100. package/.agent/workflows/tribunal-full.md +2 -2
  101. package/.agent/workflows/tribunal-speed.md +2 -2
  102. package/CONTRIBUTING.md +1 -1
  103. package/README.md +349 -239
  104. package/bin/mcp-server.js +45 -45
  105. package/bin/tribunal-kit.js +62 -1482
  106. package/bin/wrapper.js +50 -25
  107. package/dist/cli.js +43 -0
  108. package/dist/commands/align.js +1 -1
  109. package/dist/commands/compile.js +1 -1
  110. package/dist/commands/guardrail.js +275 -0
  111. package/dist/commands/init.js +35 -10
  112. package/dist/commands/native.js +228 -0
  113. package/dist/commands/optimize.js +318 -0
  114. package/dist/commands/validate.js +67 -0
  115. package/dist/mcp/server.js +4 -138
  116. package/dist/utils/version.js +1 -1
  117. package/package.json +13 -10
  118. package/scripts/benchmark.js +42 -0
  119. package/scripts/fix-vbc.js +98 -0
  120. package/scripts/fix-vbc.ps1 +119 -0
  121. package/scripts/sync-version.js +129 -76
@@ -0,0 +1,100 @@
1
+ ---
2
+ name: progressive-blur
3
+ description: Smooth progressive backdrop blurs, depth overlays, and modern glassmorphism using CSS mask-image and multi-layered backdrop filters without GPU performance drops.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Glassmorphism & Depth Engineering
9
+ tier: pro
10
+ co-requires: [frontend-design, 60fps-animation]
11
+ trigger-signals:
12
+ strong: [progressive-blur, backdrop blur, glassmorphism, depth overlay, progressive backdrop, frosted glass]
13
+ weak: [blur effect, blur background]
14
+ ---
15
+
16
+ # Progressive Blur โ€” Multi-Layered Glassmorphism & Depth
17
+
18
+ Architect high-performance, progressive backdrop blurs and frosted glass interfaces that feel tactile and fluid.
19
+
20
+ ---
21
+
22
+ ## 3 Progressive Blur Techniques
23
+
24
+ ### 1. Multi-Step Masked Progressive Blur
25
+ To prevent harsh edge cutoffs in blurred headers or footers, blend 4 progressive blur layers using linear gradient masks:
26
+
27
+ ```css
28
+ .progressive-blur-header {
29
+ position: sticky;
30
+ top: 0;
31
+ z-index: 40;
32
+ pointer-events: none;
33
+ }
34
+
35
+ .blur-layer-1 {
36
+ backdrop-filter: blur(2px);
37
+ mask: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 25%);
38
+ }
39
+
40
+ .blur-layer-2 {
41
+ backdrop-filter: blur(8px);
42
+ mask: linear-gradient(to bottom, rgba(0,0,0,1) 25%, rgba(0,0,0,0) 65%);
43
+ }
44
+
45
+ .blur-layer-3 {
46
+ backdrop-filter: blur(16px);
47
+ mask: linear-gradient(to bottom, rgba(0,0,0,1) 65%, rgba(0,0,0,1) 100%);
48
+ }
49
+ ```
50
+
51
+ ### 2. Glass Card Depth Recipe
52
+ ```css
53
+ .glass-card {
54
+ background: rgba(255, 255, 255, 0.65);
55
+ backdrop-filter: blur(16px) saturate(180%);
56
+ -webkit-backdrop-filter: blur(16px) saturate(180%);
57
+ border: 1px solid rgba(255, 255, 255, 0.3);
58
+ box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.08);
59
+ }
60
+
61
+ @media (prefers-color-scheme: dark) {
62
+ .glass-card {
63
+ background: rgba(18, 18, 20, 0.70);
64
+ border: 1px solid rgba(255, 255, 255, 0.08);
65
+ box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
66
+ }
67
+ }
68
+ ```
69
+
70
+ ### 3. GPU Hardware Acceleration Protection
71
+ Backdrop blurs can cause frame drops if animated directly.
72
+ - **Rule**: Never animate `backdrop-filter: blur()` properties during scroll or transitions. Animate `opacity` of a static blurred pseudo-element instead!
73
+
74
+ ---
75
+
76
+ ## ๐Ÿค– LLM-Specific Traps
77
+
78
+ 1. **Animating `backdrop-filter` radius**: Animating `blur(0px)` to `blur(20px)` on every frame, which tanks GPU performance to under 20fps.
79
+ 2. **Missing vendor prefixes**: Forgetting `-webkit-backdrop-filter` for Safari compatibility.
80
+
81
+ ---
82
+
83
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
84
+
85
+ **Active reviewers: `frontend-reviewer` ยท `performance-optimizer`**
86
+
87
+ ### โœ… Pre-Flight Self-Audit
88
+
89
+ ```
90
+ โœ… Are `-webkit-backdrop-filter` vendor prefixes present?
91
+ โœ… Is `opacity` animated instead of directly interpolating `backdrop-filter` radius?
92
+ โœ… Is dark mode contrast preserved over frosted glass surfaces?
93
+ ```
94
+
95
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
96
+
97
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
98
+
99
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
100
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: quieter
3
+ description: Tone down overly loud, noisy, visually aggressive, or distracting designs while maintaining high visual quality. Use when a UI feels cluttered, overwhelming, tacky, or visually hyperactive.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Visual Design & Restraint
9
+ tier: pro
10
+ co-requires: [distill, swiss-design, compact-landing]
11
+ trigger-signals:
12
+ strong: [quieter, tone down, too loud, visual noise, too aggressive, tacky, calm ui, simplify visual]
13
+ weak: [subdue, tone down colors, lessen contrast]
14
+ ---
15
+
16
+ # Quieter โ€” Visual Restraint & Calm Interface Design
17
+
18
+ Reduce visual noise, eliminate unnecessary color competition, and restore calm focus to chaotic interfaces.
19
+
20
+ ---
21
+
22
+ ## 5 Restraint Tactics
23
+
24
+ ### 1. Palette Subjugation
25
+ - **Reduce Primary Colors**: Limit saturated colors to a single primary action. Turn secondary accent colors into subtle monochrome tones (`oklch(0.92 0.01 240)`).
26
+ - **Mute Background Surfaces**: Replace multi-colored cards or high-saturation gradient backgrounds with quiet, neutral monochrome surfaces.
27
+
28
+ ### 2. De-emphasize Borders & Outlines
29
+ - **Subtle Surface Elevation**: Replace harsh 100% black/white borders with subtle surface background differences ($L \pm 3\%$) or ultra-light 5% opacity borders.
30
+
31
+ ### 3. Subdue Typography Scaling
32
+ - **Reduce Font Weight Spikes**: Replace heavy 900 bold display headings with refined semibold (`600`) or medium (`500`) typography.
33
+ - **Normalize Font Sizes**: Reduce font size jumps between section headers and subheaders to create smooth visual harmony.
34
+
35
+ ### 4. Calm Motion & Animations
36
+ - **Eliminate Continuous Animations**: Remove spinning gradient borders, pulsing badges, and bouncing icons. Restrict motion exclusively to user-initiated actions.
37
+ - **Shorten Transitions**: Keep hover state transitions subtle and fast ($\le 150\text{ms}$).
38
+
39
+ ### 5. Expand Negative Space
40
+ - **Increase Padding**: Give content room to breathe by increasing section paddings by 25%-50%, reducing cognitive overload.
41
+
42
+ ---
43
+
44
+ ## ๐Ÿค– LLM-Specific Traps
45
+
46
+ 1. **Making Text Unreadable**: Reducing color saturation so much that text fails WCAG AA contrast (below 4.5:1).
47
+ 2. **Stripping Functional Indicators**: Removing error/warning colors when reducing palette noise. Keep functional colors crisp.
48
+
49
+ ---
50
+
51
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
52
+
53
+ **Active reviewers: `frontend-reviewer` ยท `ui-ux-auditor`**
54
+
55
+ ### โœ… Pre-Flight Self-Audit
56
+
57
+ ```
58
+ โœ… Are saturated colors restricted to primary actions?
59
+ โœ… Did I retain minimum 4.5:1 text contrast for all body and label copy?
60
+ โœ… Has unnecessary layout animation or pulsing been eliminated?
61
+ ```
62
+
63
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
64
+
65
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
66
+
67
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
68
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,70 @@
1
+ ---
2
+ name: react-doctor
3
+ description: Scan React and Next.js applications for security, performance, re-render inefficiencies, memory leaks, and correctness issues.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: React Optimization & Code Health
9
+ tier: pro
10
+ co-requires: [react-specialist, nextjs-react-expert, performance-profiling]
11
+ trigger-signals:
12
+ strong: [react-doctor, React performance scan, fix React re-renders, React memory leak, Million.js audit]
13
+ weak: [React audit, fix React bugs]
14
+ ---
15
+
16
+ # React Doctor โ€” React Performance & Health Audit
17
+
18
+ Diagnose and resolve unnecessary re-renders, state synchronization bugs, memory leaks, and hook dependency issues in React applications.
19
+
20
+ ---
21
+
22
+ ## 4 React Health Checks
23
+
24
+ ### 1. Unnecessary Re-render Prevention
25
+ - **Inline Object/Array Props**: Passing inline objects `<Child config={{ color: 'blue' }} />` creates new references every render. Wrap with `useMemo` or declare outside component scope.
26
+ - **Inline Callback Props**: Passing inline functions `<Child onClick={() => doSomething()} />` breaks `React.memo`. Wrap callbacks with `useCallback`.
27
+
28
+ ### 2. State Colocation
29
+ - Don't lift state higher than necessary. Keep state local to the component consuming it to isolate re-render subtrees.
30
+
31
+ ### 3. Cleanup in `useEffect`
32
+ - Every event listener, interval, or subscription created in `useEffect` MUST return a cleanup function to prevent memory leaks:
33
+ ```tsx
34
+ useEffect(() => {
35
+ const handleResize = () => setWidth(window.innerWidth);
36
+ window.addEventListener('resize', handleResize);
37
+ return () => window.removeEventListener('resize', handleResize);
38
+ }, []);
39
+ ```
40
+
41
+ ### 4. Derived State Anti-Pattern
42
+ - Never duplicate props into state (`const [name, setName] = useState(props.name)`). Calculate derived values during rendering directly.
43
+
44
+ ---
45
+
46
+ ## ๐Ÿค– LLM-Specific Traps
47
+
48
+ 1. **Over-using `useCallback` everywhere**: Wrapping trivial primitives or 1-line functions that aren't passed to memoized children.
49
+ 2. **Missing `useEffect` Dependencies**: Omitting referenced variables from effect dependency arrays without proper `useCallback` or ref wrapping.
50
+
51
+ ---
52
+
53
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
54
+
55
+ **Active reviewers: `react-specialist` ยท `type-safety`**
56
+
57
+ ### โœ… Pre-Flight Self-Audit
58
+
59
+ ```
60
+ โœ… Are event listeners and timers properly cleaned up in `useEffect` returns?
61
+ โœ… Are expensive calculations wrapped in `useMemo`?
62
+ โœ… Is state colocated to minimize re-render scope?
63
+ ```
64
+
65
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
66
+
67
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
68
+
69
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
70
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,65 @@
1
+ ---
2
+ name: redesign-skill
3
+ description: Audit and upgrade existing interfaces to premium visual quality while preserving product functionality and business logic.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Interface Redesign & UI Upgrade
9
+ tier: pro
10
+ co-requires: [taste-skill, better-ui, baseline-ui]
11
+ trigger-signals:
12
+ strong: [redesign-skill, redesign existing project, UI upgrade, overhaul interface, modernize UI, upgrade visual quality]
13
+ weak: [redesign UI, revamp site]
14
+ ---
15
+
16
+ # Redesign Skill โ€” UI Upgrade Methodology
17
+
18
+ Audit legacy or unstyled user interfaces and transform them into modern, production-grade products without breaking underlying business logic.
19
+
20
+ ---
21
+
22
+ ## 4 Redesign Upgrade Steps
23
+
24
+ ### Step 1: Logic & State Isolation
25
+ Before touching CSS or HTML layout:
26
+ - Extract all state hooks (`useState`), event handlers (`onClick`), and API props. **Zero business logic may be deleted or altered.**
27
+
28
+ ### Step 2: Spatial & Typographic Grid Overhaul
29
+ - Replace arbitrary pixel margins with an 8px spatial system (`gap-4`, `p-6`).
30
+ - Apply modular font scaling (`text-sm`, `text-base`, `text-2xl`, `text-4xl`) with `text-wrap: balance` on headings.
31
+
32
+ ### Step 3: Color & Surface Elevation Upgrade
33
+ - Replace raw `#fff` / `#000` colors with an OKLCH surface hierarchy (`--bg-base`, `--bg-surface`, `--bg-elevated`).
34
+ - Replace hard black borders with subtle 8% opacity surface borders and multi-layered ambient shadows.
35
+
36
+ ### Step 4: Micro-Interaction & Polish Pass
37
+ - Add `:active` scale press feedback (`scale(0.97)`), smooth hover state transitions, and keyboard focus rings (`:focus-visible`).
38
+
39
+ ---
40
+
41
+ ## ๐Ÿค– LLM-Specific Traps
42
+
43
+ 1. **Breaking Functionality During Redesign**: Deleting event handlers, state hooks, or form field inputs while redesigning the layout.
44
+ 2. **Generic Template Replacement**: Replacing a unique custom feature with a stock generic card grid.
45
+
46
+ ---
47
+
48
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
49
+
50
+ **Active reviewers: `frontend-reviewer` ยท `ui-ux-auditor`**
51
+
52
+ ### โœ… Pre-Flight Self-Audit
53
+
54
+ ```
55
+ โœ… Are all original props, event handlers, and state variables 100% preserved?
56
+ โœ… Is the visual hierarchy upgraded using OKLCH surface levels and multi-layer shadows?
57
+ โœ… Have interactive controls received tactile `:active` press feedback?
58
+ ```
59
+
60
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
61
+
62
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
63
+
64
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
65
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: shape
3
+ description: Plan feature UX before writing code via structured Socratic design interviews. Use when a user asks to plan a new screen, onboarding flow, feature UX, or user interaction before implementation.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Pre-Code UX Shaping
9
+ tier: pro
10
+ co-requires: [appflow-wireframe, brainstorming, plan-writing]
11
+ trigger-signals:
12
+ strong: [shape, UX shaping, feature design, pre-code planning, user flow interview, shape workflow]
13
+ weak: [plan UI, spec out feature]
14
+ ---
15
+
16
+ # Shape โ€” Pre-Code UX & Feature Shaping
17
+
18
+ Uncover core requirements, define interaction boundaries, and lock down screen flows BEFORE writing frontend code.
19
+
20
+ ---
21
+
22
+ ## The 3-Step Shaping Workflow
23
+
24
+ ### Step 1: High-Ambiguity Socratic Interview
25
+ Before designing components, ask 2 targeted questions about high-ambiguity choices:
26
+ 1. **Primary User Goal**: *What is the single most important action the user must accomplish on this screen?*
27
+ 2. **Context & Entry Point**: *Where does the user arrive from, and where do they expect to go after completing this step?*
28
+
29
+ ### Step 2: Screen Boundaries & State Inventory
30
+ Define the component states before implementation:
31
+ - **Default State**: Primary layout with standard populated data.
32
+ - **Empty State**: Zero-data view with creation prompt.
33
+ - **Loading State**: Skeleton placeholders.
34
+ - **Error State**: Graceful fallback UI with retry action.
35
+ - **Success State**: Instant feedback toast or confirmation view.
36
+
37
+ ### Step 3: Architecture Contract
38
+ Summarize the screen contract in a concise visual outline before coding:
39
+ ```
40
+ [Screen Title]
41
+ โ”œโ”€โ”€ Entry Point: (e.g. Dashboard -> "New Project" button)
42
+ โ”œโ”€โ”€ Primary Action: (e.g. Create Project Form)
43
+ โ”œโ”€โ”€ Secondary Actions: (e.g. Import from GitHub)
44
+ โ””โ”€โ”€ Exit Point: (e.g. Redirect to /project/[id])
45
+ ```
46
+
47
+ ---
48
+
49
+ ## ๐Ÿค– LLM-Specific Traps
50
+
51
+ 1. **Jumping straight to code**: Writing CSS/React components without clarifying user goals or entry/exit points.
52
+ 2. **Over-asking questions**: Asking more than 2-3 questions. Prioritize only blocking architectural ambiguities.
53
+
54
+ ---
55
+
56
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
57
+
58
+ **Active reviewers: `ui-ux-auditor`**
59
+
60
+ ### โœ… Pre-Flight Self-Audit
61
+
62
+ ```
63
+ โœ… Are the entry and exit points of the screen explicitly defined?
64
+ โœ… Are all 5 screen states (default, empty, loading, error, success) planned?
65
+ โœ… Has the user confirmed the core interaction boundary before code generation?
66
+ ```
67
+
68
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
69
+
70
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
71
+
72
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
73
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: soft-skill
3
+ description: High-end visual design guidance for premium typography, spacing, depth, and animation systems.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Luxury Visual Design & Soft Depth
9
+ tier: pro
10
+ co-requires: [taste-skill, progressive-blur, impeccable]
11
+ trigger-signals:
12
+ strong: [soft-skill, high end visual design, luxury depth, soft UI, elegant spacing system, soft shadow UI]
13
+ weak: [elegant UI, soft style]
14
+ ---
15
+
16
+ # Soft Skill โ€” High-End Luxury Visual Design & Depth
17
+
18
+ Craft high-end, luxury interfaces featuring soft depth, gentle surface transitions, quiet typography, and tactile spatial rhythm.
19
+
20
+ ---
21
+
22
+ ## 4 Soft Design Rules
23
+
24
+ ### 1. Multi-Layer Soft Ambient Depth
25
+ - Avoid harsh drop-shadows. Use low-opacity multi-layered ambient lighting shadows:
26
+ ```css
27
+ .soft-depth-card {
28
+ background: var(--surface);
29
+ box-shadow:
30
+ 0 2px 4px rgba(0, 0, 0, 0.02),
31
+ 0 8px 16px rgba(0, 0, 0, 0.04),
32
+ 0 24px 48px rgba(0, 0, 0, 0.06);
33
+ border: 1px solid rgba(0, 0, 0, 0.06);
34
+ }
35
+ ```
36
+
37
+ ### 2. Generous Negative Space Cadence
38
+ - Increase component padding by 1.5x (e.g. `24px` -> `36px`, `32px` -> `48px`). Generous negative space is the ultimate indicator of luxury software.
39
+
40
+ ### 3. Subdued Monochrome Color Harmonies
41
+ - Use quiet, low-chroma monochromatic palettes (`oklch(0.97 0.005 240)` background with `oklch(0.22 0.01 240)` primary text).
42
+
43
+ ### 4. Fluid, Low-Velocity Transitions
44
+ - Transition speeds should be gentle ($\approx 250\text{ms}$) with strong ease-out curves (`cubic-bezier(0.16, 1, 0.3, 1)`).
45
+
46
+ ---
47
+
48
+ ## ๐Ÿค– LLM-Specific Traps
49
+
50
+ 1. **Muddy Dark Shadows**: Using heavy `rgba(0,0,0,0.5)` drop shadows on light surfaces.
51
+ 2. **Cramped Containers**: Packing text elements tightly inside small containers with minimal padding.
52
+
53
+ ---
54
+
55
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
56
+
57
+ **Active reviewers: `frontend-reviewer` ยท `ui-ux-auditor`**
58
+
59
+ ### โœ… Pre-Flight Self-Audit
60
+
61
+ ```
62
+ โœ… Are drop shadows multi-layered with opacity under 6% per layer?
63
+ โœ… Is container padding generous ($\ge 24\text{px}$)?
64
+ โœ… Is color palette subdued and monochromatic?
65
+ ```
66
+
67
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
68
+
69
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
70
+
71
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
72
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,100 @@
1
+ ---
2
+ name: sounds-on-the-web
3
+ description: Web Audio API procedural sound synthesis for tactile micro-interaction feedback (clicks, pops, success chimes) with mute toggles and accessibility awareness.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Audio Feedback & Tactile Sound Synthesis
9
+ tier: pro
10
+ co-requires: [delight, micro-interaction]
11
+ trigger-signals:
12
+ strong: [sounds-on-the-web, Web Audio API sound, UI sound feedback, procedural audio click, audio feedback toggle]
13
+ weak: [ui sound, audio click]
14
+ ---
15
+
16
+ # Sounds on the Web โ€” Web Audio API Sound Feedback
17
+
18
+ Synthesize lightweight, zero-dependency tactile sound effects for web micro-interactions.
19
+
20
+ ---
21
+
22
+ ## Zero-Asset Web Audio API Click Synthesizer
23
+
24
+ Never load external MP3 audio files for simple UI clicks. Synthesize clean sine/triangle pops procedurally in under 10 lines of code:
25
+
26
+ ```typescript
27
+ // Lightweight procedural Web Audio pop synthesizer
28
+ class SoundFeedback {
29
+ private ctx: AudioContext | null = null;
30
+ private isMuted: boolean = false;
31
+
32
+ private init() {
33
+ if (!this.ctx && typeof window !== 'undefined') {
34
+ const AudioCtx = window.AudioContext || (window as any).webkitAudioContext;
35
+ if (AudioCtx) this.ctx = new AudioCtx();
36
+ }
37
+ }
38
+
39
+ public playPop(frequency = 600, duration = 0.04) {
40
+ if (this.isMuted) return;
41
+ this.init();
42
+ if (!this.ctx) return;
43
+
44
+ if (this.ctx.state === 'suspended') {
45
+ this.ctx.resume();
46
+ }
47
+
48
+ const osc = this.ctx.createOscillator();
49
+ const gain = this.ctx.createGain();
50
+
51
+ osc.type = 'sine';
52
+ osc.frequency.setValueAtTime(frequency, this.ctx.currentTime);
53
+ // Frequency pitch drop for tactile "pop"
54
+ osc.frequency.exponentialRampToValueAtTime(120, this.ctx.currentTime + duration);
55
+
56
+ gain.gain.setValueAtTime(0.12, this.ctx.currentTime); // Low volume
57
+ gain.gain.exponentialRampToValueAtTime(0.001, this.ctx.currentTime + duration);
58
+
59
+ osc.connect(gain);
60
+ gain.connect(this.ctx.destination);
61
+
62
+ osc.start();
63
+ osc.stop(this.ctx.currentTime + duration);
64
+ }
65
+
66
+ public setMute(muted: boolean) {
67
+ this.isMuted = muted;
68
+ }
69
+ }
70
+
71
+ export const soundFX = new SoundFeedback();
72
+ ```
73
+
74
+ ---
75
+
76
+ ## ๐Ÿค– LLM-Specific Traps
77
+
78
+ 1. **Autoplay Audio Errors**: Triggering Web Audio API before user gesture interaction (violating browser autoplay policies).
79
+ 2. **Missing Mute Toggle**: Failing to provide a persistent sound toggle switch in application settings.
80
+
81
+ ---
82
+
83
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
84
+
85
+ **Active reviewers: `frontend-reviewer`**
86
+
87
+ ### โœ… Pre-Flight Self-Audit
88
+
89
+ ```
90
+ โœ… Is AudioContext initialized strictly inside/after user gesture handlers?
91
+ โœ… Is volume gain kept subtle ($\le 0.15$ max volume)?
92
+ โœ… Is a persistent sound mute option provided?
93
+ ```
94
+
95
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
96
+
97
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
98
+
99
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
100
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: svg-animation
3
+ description: SVG stroke draw-on effects, path morphing, animated icons, motion paths, and interactive vector graphics.
4
+ version: 1.0.0
5
+ last-updated: 2026-07-22
6
+ applies-to-model: gemini-3-6-flash, claude-3-7-sonnet
7
+ routing:
8
+ domain: Vector SVG Motion & Path Animation
9
+ tier: pro
10
+ co-requires: [morphing-icons, 60fps-animation]
11
+ trigger-signals:
12
+ strong: [svg-animation, stroke draw-on, path morphing, animated SVG, SVG stroke-dasharray, motion path]
13
+ weak: [svg motion, animated icon]
14
+ ---
15
+
16
+ # SVG Animation โ€” Stroke Draw-On & Path Morphing
17
+
18
+ Craft crisp, resolution-independent vector animations using CSS, Framer Motion, or GSAP.
19
+
20
+ ---
21
+
22
+ ## 3 SVG Motion Techniques
23
+
24
+ ### 1. Pure CSS Stroke Draw-On Effect
25
+ ```css
26
+ @keyframes draw-path {
27
+ from { stroke-dashoffset: 1000; }
28
+ to { stroke-dashoffset: 0; }
29
+ }
30
+
31
+ .draw-signature-path {
32
+ stroke-dasharray: 1000;
33
+ stroke-dashoffset: 1000;
34
+ animation: draw-path 1.8s cubic-bezier(0.65, 0, 0.35, 1) forwards;
35
+ }
36
+ ```
37
+
38
+ ### 2. Framer Motion SVG Path Length Animation
39
+ ```tsx
40
+ import { motion } from "framer-motion";
41
+
42
+ export function DrawCheckmark() {
43
+ return (
44
+ <svg className="w-8 h-8 stroke-emerald-500 stroke-2 fill-none" viewBox="0 0 24 24">
45
+ <motion.path
46
+ d="M5 13l4 4L19 7"
47
+ initial={{ pathLength: 0 }}
48
+ animate={{ pathLength: 1 }}
49
+ transition={{ duration: 0.4, ease: "easeOut" }}
50
+ />
51
+ </svg>
52
+ );
53
+ }
54
+ ```
55
+
56
+ ### 3. SVG Path Morphing (GSAP MorphSVGPlugin)
57
+ - Morph between 2 vector paths with identical point counts or using GSAP MorphSVG:
58
+ ```javascript
59
+ gsap.to("#start-shape", {
60
+ morphSVG: "#end-shape",
61
+ duration: 0.6,
62
+ ease: "power2.inOut"
63
+ });
64
+ ```
65
+
66
+ ---
67
+
68
+ ## ๐Ÿค– LLM-Specific Traps
69
+
70
+ 1. **Incorrect `stroke-dasharray` Length**: Guessing path lengths without measuring `path.getTotalLength()`, resulting in clipped or incomplete draw-on animations.
71
+ 2. **Missing `fill="none"`**: Forgetting `fill="none"` on draw-on stroke paths, causing black fill shapes during path animation.
72
+
73
+ ---
74
+
75
+ ## ๐Ÿ›๏ธ Tribunal Integration (Anti-Hallucination)
76
+
77
+ **Active reviewers: `frontend-reviewer` ยท `motion-reviewer`**
78
+
79
+ ### โœ… Pre-Flight Self-Audit
80
+
81
+ ```
82
+ โœ… Is `stroke-dasharray` calibrated to match the true SVG path length?
83
+ โœ… Is `vector-effect="non-scaling-stroke"` applied if SVG elements scale responsively?
84
+ ```
85
+
86
+ ### ๐Ÿ›‘ Verification-Before-Completion (VBC) Protocol
87
+
88
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
89
+
90
+ - โŒ **Forbidden:** Declaring a task complete because the output "looks correct."
91
+ - โœ… **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.