composition-patterns — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited composition-patterns (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Composition patterns for building flexible, maintainable React components. Avoid boolean prop proliferation by using compound components, lifting state, and composing internals. These patterns make codebases easier for both humans and AI agents to work with as they scale.
Reference these guidelines when:
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Component Architecture | HIGH | architecture- |
| 2 | State Management | MEDIUM | state- |
| 3 | Implementation Patterns | MEDIUM | patterns- |
| 4 | React 19 APIs | MEDIUM | react19- |
architecture-avoid-boolean-props - Don't add boolean props to customizebehavior; use composition
architecture-compound-components - Structure complex components with sharedcontext
state-decouple-implementation - Provider is the only place that knows howstate is managed
state-context-interface - Define generic interface with state, actions, metafor dependency injection
state-lift-state - Move state into provider components for sibling accesspatterns-explicit-variants - Create explicit variant components instead ofboolean modes
patterns-children-over-render-props - Use children for composition insteadof renderX props
⚠️ React 19+ only. Skip this section if using React 18 or earlier.
react19-no-forwardref - Prefer ref-as-prop for React 19-only components; use() and useContext() are both supportedRead individual rule files for detailed explanations and code examples:
rules/architecture-avoid-boolean-props.md
rules/state-context-interface.mdEach rule file contains:
No compiled AGENTS.md is bundled here; use the individual rule files.
All examples using <Context value>, use(Context) or ref-as-prop assume React 19, including files outside the react19 category. React 18 consumers need Context.Provider, useContext and forwardRef adapters. useContext remains a valid supported API in React 19; migrate only when useful. Null-default contexts require the guarded useComposer helper shown in the compound-component rule, imported wherever used.
Snippets omit application components, imports and some types; TextInput/onChangeText/onPress are React Native-style or custom abstractions, not browser input/button props. Supply meta.inputRef in every provider used by an input, type refs as nullable, forward placeholder/label props and handle submit semantics deliberately. Composer.Frame currently renders a form: wire onSubmit/preventDefault and button types to avoid reloads or duplicate sends. Explicit variants do not prove impossible states or preserve existing behavior automatically. Simple boolean state props such as disabled remain appropriate; composition is a design choice, not a universal ban.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.