{"owner":"radix-ui","repo":"primitives","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["AGENTS.md"],"skills":{"AGENTS.md":"# Radix Primitives\n\nRadix Primitives is for building high-quality, accessible design systems and web apps.\n\n## Architecture\n\nThis project is a monorepo managed with [pnpm](https://pnpm.io/). It uses the following tools:\n\n- [vitest](https://vitest.dev/) for unit testing\n- [storybook](https://storybook.js.org/) for component documentation\n- [playwright](https://playwright.dev/) for end-to-end testing\n- [changesets](https://github.com/changesets/changesets) for versioning and publishing\n- [oxlint](https://github.com/oxlint-dev/oxlint) for linting\n- [oxfmt](https://github.com/oxlint-dev/oxfmt) for formatting\n\n## Tech Constraints\n\n- **pnpm** only\n- **TypeScript** only (local scripts can use JavaScript with `// @ts-check` and type annotations)\n\n## Commands\n\n```bash\npnpm lint         # Lint the project\npnpm format       # Format the project\npnpm types:check  # Type check the project\npnpm test         # Run tests\npnpm build        # Build the project\n```\n\n## Adding a new package\n\nMost packages are React-specific and live in a directory that matches the convention `packages/react/{package-id}`. For example, `@radix-ui/react-accordion` lives in `packages/react/accordion`.\n\nNew packages should follow the same general folder structure as existing packages:\n\n```\npackages/react/\n  - {package-id}/\n    - src/\n      - {package-id}.tsx\n      - index.ts\n    - CHANGELOG.md\n    - package.json\n    - README.md\n    - tsconfig.json\n```\n\nReference other packages and copy their `package.json`, `README.md`, and `tsconfig.json` structure for new packages. devDependencies and peerDependencies should use consistent version ranges across the repo.\n\n## Testing\n\n- Prefer repetition over abstraction in tests\n\n## Code conventions\n\n- [ ] Prefer braces for control flow statements (if, for, while, etc.) over the `one-liner` syntax\n- [ ] Prefer braces for switch cases\n- [ ] Explicitly check `never` cases for more exhaustive type checking (eg. `value satisfies never`)\n- [ ] Prefer clear variable/function names over abbreviations (long descriptive names are good if they clarify the intent)\n\n## Pre-commit checklist\n\n- [ ] Run `pnpm lint --fix` to handle auto-fixable linting errors, then fix any remaining linting errors\n- [ ] Run `pnpm format`\n\n## PR checklist\n\n- [ ] `pnpm format:check` passes\n- [ ] `pnpm lint` passes\n- [ ] `pnpm test` passes\n- [ ] `pnpm types:check` passes\n- [ ] Conventional Commit message format used (`feat:`, `fix:`, `feat!:` for breaking)\n"},"files":{"AGENTS.md":"# Radix Primitives\n\nRadix Primitives is for building high-quality, accessible design systems and web apps.\n\n## Architecture\n\nThis project is a monorepo managed with [pnpm](https://pnpm.io/). It uses the following tools:\n\n- [vitest](https://vitest.dev/) for unit testing\n- [storybook](https://storybook.js.org/) for component documentation\n- [playwright](https://playwright.dev/) for end-to-end testing\n- [changesets](https://github.com/changesets/changesets) for versioning and publishing\n- [oxlint](https://github.com/oxlint-dev/oxlint) for linting\n- [oxfmt](https://github.com/oxlint-dev/oxfmt) for formatting\n\n## Tech Constraints\n\n- **pnpm** only\n- **TypeScript** only (local scripts can use JavaScript with `// @ts-check` and type annotations)\n\n## Commands\n\n```bash\npnpm lint         # Lint the project\npnpm format       # Format the project\npnpm types:check  # Type check the project\npnpm test         # Run tests\npnpm build        # Build the project\n```\n\n## Adding a new package\n\nMost packages are React-specific and live in a directory that matches the convention `packages/react/{package-id}`. For example, `@radix-ui/react-accordion` lives in `packages/react/accordion`.\n\nNew packages should follow the same general folder structure as existing packages:\n\n```\npackages/react/\n  - {package-id}/\n    - src/\n      - {package-id}.tsx\n      - index.ts\n    - CHANGELOG.md\n    - package.json\n    - README.md\n    - tsconfig.json\n```\n\nReference other packages and copy their `package.json`, `README.md`, and `tsconfig.json` structure for new packages. devDependencies and peerDependencies should use consistent version ranges across the repo.\n\n## Testing\n\n- Prefer repetition over abstraction in tests\n\n## Code conventions\n\n- [ ] Prefer braces for control flow statements (if, for, while, etc.) over the `one-liner` syntax\n- [ ] Prefer braces for switch cases\n- [ ] Explicitly check `never` cases for more exhaustive type checking (eg. `value satisfies never`)\n- [ ] Prefer clear variable/function names over abbreviations (long descriptive names are good if they clarify the intent)\n\n## Pre-commit checklist\n\n- [ ] Run `pnpm lint --fix` to handle auto-fixable linting errors, then fix any remaining linting errors\n- [ ] Run `pnpm format`\n\n## PR checklist\n\n- [ ] `pnpm format:check` passes\n- [ ] `pnpm lint` passes\n- [ ] `pnpm test` passes\n- [ ] `pnpm types:check` passes\n- [ ] Conventional Commit message format used (`feat:`, `fix:`, `feat!:` for breaking)\n"},"items":[{"name":"AGENTS.md","path":"AGENTS.md","title":"AGENTS.md","content":"# Radix Primitives\n\nRadix Primitives is for building high-quality, accessible design systems and web apps.\n\n## Architecture\n\nThis project is a monorepo managed with [pnpm](https://pnpm.io/). It uses the following tools:\n\n- [vitest](https://vitest.dev/) for unit testing\n- [storybook](https://storybook.js.org/) for component documentation\n- [playwright](https://playwright.dev/) for end-to-end testing\n- [changesets](https://github.com/changesets/changesets) for versioning and publishing\n- [oxlint](https://github.com/oxlint-dev/oxlint) for linting\n- [oxfmt](https://github.com/oxlint-dev/oxfmt) for formatting\n\n## Tech Constraints\n\n- **pnpm** only\n- **TypeScript** only (local scripts can use JavaScript with `// @ts-check` and type annotations)\n\n## Commands\n\n```bash\npnpm lint         # Lint the project\npnpm format       # Format the project\npnpm types:check  # Type check the project\npnpm test         # Run tests\npnpm build        # Build the project\n```\n\n## Adding a new package\n\nMost packages are React-specific and live in a directory that matches the convention `packages/react/{package-id}`. For example, `@radix-ui/react-accordion` lives in `packages/react/accordion`.\n\nNew packages should follow the same general folder structure as existing packages:\n\n```\npackages/react/\n  - {package-id}/\n    - src/\n      - {package-id}.tsx\n      - index.ts\n    - CHANGELOG.md\n    - package.json\n    - README.md\n    - tsconfig.json\n```\n\nReference other packages and copy their `package.json`, `README.md`, and `tsconfig.json` structure for new packages. devDependencies and peerDependencies should use consistent version ranges across the repo.\n\n## Testing\n\n- Prefer repetition over abstraction in tests\n\n## Code conventions\n\n- [ ] Prefer braces for control flow statements (if, for, while, etc.) over the `one-liner` syntax\n- [ ] Prefer braces for switch cases\n- [ ] Explicitly check `never` cases for more exhaustive type checking (eg. `value satisfies never`)\n- [ ] Prefer clear variable/function names over abbreviations (long descriptive names are good if they clarify the intent)\n\n## Pre-commit checklist\n\n- [ ] Run `pnpm lint --fix` to handle auto-fixable linting errors, then fix any remaining linting errors\n- [ ] Run `pnpm format`\n\n## PR checklist\n\n- [ ] `pnpm format:check` passes\n- [ ] `pnpm lint` passes\n- [ ] `pnpm test` passes\n- [ ] `pnpm types:check` passes\n- [ ] Conventional Commit message format used (`feat:`, `fix:`, `feat!:` for breaking)\n","category":"root","tokens":615}]}