# Repository Guidelines ## Project Structure This is a Vite React single-page WebGIS Agent workbench. Runtime TypeScript lives under `src/`. - `src/app/`: application shell and providers. - `src/features/agent/`: controlled Agent UI protocol, schemas, renderer, and views. - `src/features/map/`: WebGIS map shell and future MapLibre/deck.gl integrations. - `src/shared/`: reusable UI, config, styles, and utilities. - `src/mocks/`: MSW handlers and fixtures for backend-independent development. - `src/test/`: Vitest setup. ## Commands Use `pnpm`. ```bash pnpm dev pnpm build pnpm typecheck pnpm lint pnpm test pnpm test:browser ``` ## Coding Notes Use TypeScript and React function components. Prefer explicit exported types at module boundaries. Keep Agent dynamic UI rendering schema-driven: Agent output must be validated before it reaches React components. Do not add Next.js APIs or server routes to this frontend. Backend/BFF behavior belongs in the Agent service or a separate service.