9631e077a2
Three skill directories ship a long-form upstream AGENTS.md alongside their loadable SKILL.md: .agents/skills/flux-best-practices/AGENTS.md .agents/skills/vercel-composition-patterns/AGENTS.md .agents/skills/vercel-react-best-practices/AGENTS.md None were referenced by their parent SKILL.md, skills/INDEX.md, AGENT_GUIDE.md, or any pipeline manifest, leaving their authority scope undefined relative to the repository-root AGENTS.md (override / extend / ignore?). Reference each from its SKILL.md with explicit scope: the AGENTS.md is supplementary upstream reference material for that skill only, SKILL.md is the loadable entry point and the authority, and it does not override or extend the root AGENTS.md / AGENT_GUIDE.md. Preserves the vendored content while removing the ambiguity. Refs #61
React Composition Patterns
A structured repository for React composition patterns that scale. These patterns help avoid boolean prop proliferation by using compound components, lifting state, and composing internals.
Structure
rules/- Individual rule files (one per rule)_sections.md- Section metadata (titles, impacts, descriptions)_template.md- Template for creating new rulesarea-description.md- Individual rule files
metadata.json- Document metadata (version, organization, abstract)AGENTS.md- Compiled output (generated)
Rules
Component Architecture (CRITICAL)
architecture-avoid-boolean-props.md- Don't add boolean props to customize behaviorarchitecture-compound-components.md- Structure as compound components with shared context
State Management (HIGH)
state-lift-state.md- Lift state into provider componentsstate-context-interface.md- Define clear context interfaces (state/actions/meta)state-decouple-implementation.md- Decouple state management from UI
Implementation Patterns (MEDIUM)
patterns-children-over-render-props.md- Prefer children over renderX propspatterns-explicit-variants.md- Create explicit component variants
Core Principles
- Composition over configuration — Instead of adding props, let consumers compose
- Lift your state — State in providers, not trapped in components
- Compose your internals — Subcomponents access context, not props
- Explicit variants — Create ThreadComposer, EditComposer, not Composer with isThread
Creating a New Rule
- Copy
rules/_template.mdtorules/area-description.md - Choose the appropriate area prefix:
architecture-for Component Architecturestate-for State Managementpatterns-for Implementation Patterns
- Fill in the frontmatter and content
- Ensure you have clear examples with explanations
Impact Levels
CRITICAL- Foundational patterns, prevents unmaintainable codeHIGH- Significant maintainability improvementsMEDIUM- Good practices for cleaner code