From b5c1aef0276e9039adbaf1b6a5c822e83f3c96b0 Mon Sep 17 00:00:00 2001 From: neverland Date: Sun, 8 Feb 2026 09:26:47 +0800 Subject: [PATCH 1/2] docs: update AGENTS.md with improved structure --- AGENTS.md | 54 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 0e7de23082..3434454ab4 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,32 +1,42 @@ # AGENTS.md -This monorepo contains the Rsbuild build tool, plugins, and related packages. Rsbuild is a high-performance JavaScript build tool powered by Rspack. +## Stack -## Setup +- Node.js `22+` +- `pnpm` workspace + `Nx` monorepo +- TypeScript (strict mode), Rspack/Rsbuild ecosystem +- Test runner: `rstest` -- Enable Corepack and install deps: `npm install corepack -g && corepack enable && pnpm install` -- Node.js 22+ +## Commands (run early) -## Commands +```bash +# setup +corepack enable && pnpm install -- **Build**: `pnpm build` (all packages) | `npx nx build @rsbuild/core` (specific) -- **Test**: `pnpm test` (unit tests) | `pnpm test:watch` (watch mode) | `pnpm e2e` (E2E tests) -- **Single test**: `pnpm test packages/core/src/foo.test.ts` (unit test) | `pnpm e2e cli/base/index.test.ts` (E2E test) -- **Lint**: `pnpm lint` (REQUIRED before commits) | `pnpm format` (format code) +# dev checks +pnpm lint +pnpm test +pnpm e2e -## Code style +# focused work +npx nx build @rsbuild/core +pnpm test packages/core/tests/foo.test.ts +pnpm e2e foo/index.test.ts +``` + +## Project structure -- **Formatting**: Single quotes, Prettier -- **Types**: TypeScript strict mode -- **Naming**: camelCase files/functions, PascalCase components/classes, kebab-case packages +```text +packages/core/ # core + CLI +packages/plugin-*/ # official plugins +packages/create-rsbuild/ # scaffolding tool +e2e/ # end-to-end tests +examples/ # runnable examples +website/ # docs site +``` -## Architecture +## Code style -- **Structure**: Monorepo (Pnpm + Nx) - - `packages/core/`: Main Rsbuild package with CLI - - `packages/plugin-*/`: Official plugins (React, Vue, Sass, etc.) - - `packages/create-rsbuild/`: Project scaffolding - - `e2e/`: End-to-end tests - - `examples/`: Basic examples - - `website/`: Documentation -- **Testing**: `.test.ts` files, use `rstest` runner +- Use single quotes and existing Prettier conventions. +- Keep TypeScript strict-safe; avoid `any`. +- Naming: camelCase (functions/files), PascalCase (types/classes). From 6b3c9685732dc1bc342591e527559a346b6506e3 Mon Sep 17 00:00:00 2001 From: neverland Date: Sun, 8 Feb 2026 09:32:40 +0800 Subject: [PATCH 2/2] Update AGENTS.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- AGENTS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 3434454ab4..5ce314e238 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -21,7 +21,7 @@ pnpm e2e # focused work npx nx build @rsbuild/core pnpm test packages/core/tests/foo.test.ts -pnpm e2e foo/index.test.ts +pnpm e2e css ``` ## Project structure