mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-01-05 05:14:14 -05:00
## 🧢 Overview This PR migrates the AutoGPT Platform frontend from [yarn 1](https://classic.yarnpkg.com/lang/en/) to [pnpm](https://pnpm.io/) using **corepack** for automatic package manager management. **yarn1** is not longer maintained and a bit old, moving to **pnpm** we get: - ⚡ Significantly faster install times, - 💾 Better disk space efficiency, - 🛠️ Better community support and maintenance, - 💆🏽♂️ Config swap very easy ## 🏗️ Changes ### Package Management Migration - updated [corepack](https://github.com/nodejs/corepack) to use [pnpm](https://pnpm.io/) - Deleted `yarn.lock` and generated new `pnpm-lock.yaml` - Updated `.gitignore` ### Documentation Updates - `frontend/README.md`: - added comprehensive tech stack overview with links - updated all commands to use pnpm - added corepack setup instructions - and included migration disclaimer for yarn users - `backend/README.md`: - Updated installation instructions to use pnpm with corepack - `AGENTS.md`: - Updated testing commands from yarn to pnpm ### CI/CD & Infrastructure - **GitHub Workflows** : - updated all jobs to use pnpm with corepack enable - cleaned FE Playwright test workflow to avoid Sentry noise - **Dockerfile**: - updated to use pnpm with corepack, changed lock file reference, and updated cache mount path ### 📋 Checklist #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: **Test Plan:** > assuming you are on the `frontend` folder - [x] Clean installation works: `rm -rf node_modules && corepack enable && pnpm install` - [x] Development server starts correctly: `pnpm dev` - [x] Build process works: `pnpm build` - [x] Linting and formatting work: `pnpm lint` and `pnpm format` - [x] Type checking works: `pnpm type-check` - [x] Tests run successfully: `pnpm test` - [x] Storybook starts correctly: `pnpm storybook` - [x] Docker build succeeds with new pnpm configuration - [x] GitHub Actions workflow passes with pnpm commands #### For configuration changes: - [x] `.env.example` is updated or already compatible with my changes - [x] `docker-compose.yml` is updated or already compatible with my changes - [x] I have included a list of my configuration changes in the PR description (under **Changes**)
1.8 KiB
1.8 KiB
AutoGPT Platform Contribution Guide
This guide provides context for Codex when updating the autogpt_platform folder.
Directory overview
autogpt_platform/backend– FastAPI based backend service.autogpt_platform/autogpt_libs– Shared Python libraries.autogpt_platform/frontend– Next.js + Typescript frontend.autogpt_platform/docker-compose.yml– development stack.
See docs/content/platform/getting-started.md for setup instructions.
Code style
- Format Python code with
poetry run format. - Format frontend code using
pnpm format.
Testing
- Backend:
poetry run test(runs pytest with a docker based postgres + prisma). - Frontend:
pnpm testorpnpm test-uifor Playwright tests. Seedocs/content/platform/contributing/tests.mdfor tips.
Always run the relevant linters and tests before committing.
Use conventional commit messages for all commits (e.g. feat(backend): add API).
Types:
- feat
- fix
- refactor
- ci
- dx (developer experience)
Scopes:
- platform
- platform/library
- platform/marketplace
- backend
- backend/executor
- frontend
- frontend/library
- frontend/marketplace
- blocks
Pull requests
- Use the template in
.github/PULL_REQUEST_TEMPLATE.md. - Rely on the pre-commit checks for linting and formatting
- Fill out the Changes section and the checklist.
- Use conventional commit titles with a scope (e.g.
feat(frontend): add feature). - Keep out-of-scope changes under 20% of the PR.
- Ensure PR descriptions are complete.
- For changes touching
data/*.py, validate user ID checks or explain why not needed. - If adding protected frontend routes, update
frontend/lib/supabase/middleware.ts. - Use the linear ticket branch structure if given codex/open-1668-resume-dropped-runs