- Always start by reading files in the .cursor/rules folder and use them as your rules
- Never add coverage-suppression comments to source. Test the branch or refactor the code.
- Do not modify or delete any of the files in the
inputfolder. They are the data that is exclusively meant as input. They are the source of truth. - This repository is generic and public. Never commit specifics of any project being migrated — no
project names, domain names, studio paths, dataset names, project IDs, author names, or other
personal/identifying details. Keep all migration-target specifics out of source, docs, comments,
commit messages and tests. If you need examples, use placeholders such as
example.com.
- The
sanityCLI is available globally. Usesanity --helpto discover commands. Common ones:sanity schemas list/extract— inspect deployed schemas (must run from a studio root).sanity manifest extract— dump the studio manifest as JSON.sanity documents query/sanity documents get— inspect content in a dataset.sanity typegen generate— regenerateinput/sanity.types.tsfrom a studio schema.
input/sanity.types.tsis generated bysanity typegen generateand reflects the schema of the target studio. Schema-aware CLI commands must be run from that studio's repository, not from this one.- Project credentials live in
.env.local:NEXT_PUBLIC_SANITY_PROJECT_ID,NEXT_PUBLIC_SANITY_DATASET,SANITY_API_WRITE_TOKEN,SANITY_API_VERSION.