Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/zoxknez/ai-coding-rules/90-ui-componentsgit clone --depth 1 https://github.com/zoxknez/ai-coding-rulesWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.00521 |
| Opus 5 | $0.00000 | $0.00260 |
| Sonnet 5 | $0.00000 | $0.00104 |
| Haiku 4.5 | $0.00000 | $0.00052 |
Grade A, and why
90-ui-components scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
Copies of this mod
1 near-identical copy found in the catalogue:
- 90-ui-components — 100% identical, 0 lines differ
What it actually says
🎨 UI Components Rules
Auto-activated for component files in
/components/directories.
Component Structure
ComponentName/
├── ComponentName.tsx # Main component
├── ComponentName.test.tsx # Tests (required)
├── ComponentName.stories.tsx # Storybook (optional)
└── index.ts # Re-export
Rules
1. Single Responsibility
- One component = one purpose
- Max 200 lines per component file
- Extract hooks to separate files when >50 lines
2. Props Pattern
// ✅ GOOD: Typed, documented, with defaults
interface ButtonProps {
/** Button label */
label: string;
/** Click handler */
onClick: () => void;
/** Visual variant */
variant?: 'primary' | 'secondary';
/** Disabled state */
disabled?: boolean;
}
export const Button = ({
label,
onClick,
variant = 'primary',
disabled = false
}: ButtonProps) => { ... }
3. Accessibility (STRICT)
- All interactive elements must have
aria-labelor visible text - Form inputs must have associated
<label>elements - Color contrast must meet WCAG 2.1 AA
- Keyboard navigation must work
4. Performance
- Use
React.memo()for expensive renders - Avoid inline functions in JSX when used as deps
- Lazy load heavy components with
React.lazy()
5. Styling
- Tailwind utility classes preferred
- No inline styles except dynamic values
- CSS-in-JS only when necessary
Forbidden Patterns
// ❌ NEVER: Untyped props
const Button = (props: any) => ...
// ❌ NEVER: Business logic in components
const Button = () => {
const data = await fetch('/api/...') // Move to hook
}
// ❌ NEVER: Direct DOM manipulation
document.getElementById('x').style.color = 'red'
Testing Requirements
- Render test (component mounts without errors)
- Props test (variants behave correctly)
- Interaction test (click/hover handlers fire)
- Accessibility test (using @testing-library/jest-dom)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 87 lines · 0 tokens per session scan A 0ed2595b02a0
90-ui-components is a cursor rule published in the GitHub repository zoxknez/ai-coding-rules (27 stars, last pushed 4mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 521 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
frontend-dev
Frontend development workflow with Vue/React/TypeScript - 前端开发完整工作流.
frontend-dev
Frontend development workflow with Vue/React/TypeScript - 前端开发完整工作流.
frontend
Frontend engineering baseline (前端工程规范骨架).
frontend-dev
Frontend Developer - Component, Layout, State Management (React/Vue/Tailwind).
project-overview
这是一个基于 uniapp + Vue3 + TypeScript + Vite5 + UnoCSS 的跨平台开发框架。.
react-vite-web
Cursor rule "react-vite-web" from WellApp-ai/Well, covering web rules (react + vite), routing, component structure, state management and api integration.