← All skills
sanity-best-practices
82 / 100 · Low risk
Fine to try.
By CognitionAI/devin-marketplace (GitHub) · design · 27 stars · scanned at commit 9836d94
Sanity development best practices for schema design, GROQ queries, TypeGen, Visual Editing, images, Portable Text, Studio structure, localization, migrations, Sanity Functions, webhooks, Blueprints, and framework integrations such as Next.js, Nuxt, Astro, Remix, SvelteKit, Angular, Hydrogen, and the App SDK. Use this skill whenever working with Sanity schemas, defineType or defineField, GROQ or defineQuery, content modeling, Presentation or preview setups, Sanity-powered frontend integrations, …
Works with any agent that supports SKILL.md skills.
Partially scanned — some files couldn't be read; we'll retry on the next scan
What this skill can do
Sends data to these websites: ${context.clientoptions.projectid}.api.sanity.io
This is disclosed by the author in the skill's SKILL.md or README.
Found in 18 places.
Show 15 more
- plugins/sanity/skills/sanity-best-practices/references/angular.md, line 210
posts = toSignal(from(this.sanity.fetch(POSTS_QUERY)), { initialValue: [] }) - plugins/sanity/skills/sanity-best-practices/references/angular.md, line 473
const result = await this.client.fetch(query, params) - plugins/sanity/skills/sanity-best-practices/references/angular.md, line 542
return client.fetch(query, params) - plugins/sanity/skills/sanity-best-practices/references/astro.md, line 81
const posts = await sanityClient.fetch(POSTS_QUERY); - plugins/sanity/skills/sanity-best-practices/references/astro.md, line 98
return await sanityClient.fetch(POSTS_QUERY); - plugins/sanity/skills/sanity-best-practices/references/astro.md, line 120
return await sanityClient.fetch(SLUGS_QUERY); - plugins/sanity/skills/sanity-best-practices/references/astro.md, line 124
const post = await sanityClient.fetch(POST_QUERY, { slug }); - plugins/sanity/skills/sanity-best-practices/references/functions.md, line 400
await fetch(URL) - plugins/sanity/skills/sanity-best-practices/references/functions.md, line 497
await fetch(WEBHOOK_URL, { - plugins/sanity/skills/sanity-best-practices/references/functions.md, line 582
await fetch(`https://${context.clientOptions.projectId}.api.sanity.io/v2025-05-08/data/mutate/${context.clientOptions.dataset}`, { - plugins/sanity/skills/sanity-best-practices/references/hydrogen.md, line 148
| `sanity.fetch()` | No preview needed, lightweight | - plugins/sanity/skills/sanity-best-practices/references/localization.md, line 96
client.fetch(`*[_type == "locale"]{ "id": tag, "title": name }`), - plugins/sanity/skills/sanity-best-practices/references/localization.md, line 343
client.fetch(`*[_type == "locale"]{ "id": tag, "title": name }`), - plugins/sanity/skills/sanity-best-practices/references/localization.md, line 425
client.fetch(`*[_type == "locale"]{ "id": tag, "title": name }`), - plugins/sanity/skills/sanity-best-practices/references/migration-html-import.md, line 114
const response = await fetch(imageUrl)
Downloads and installs other software
The author does not mention this.
Found in 51 places.
Show 17 more
- plugins/sanity/skills/sanity-best-practices/references/app-sdk.md, line 482
| Auth errors | `npx sanity@latest logout && npx sanity@latest login` | - plugins/sanity/skills/sanity-best-practices/references/astro.md, line 24
npx astro add @sanity/astro - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 10
The CLI is built for unattended use: every command accepts `--json`, all IDs can be supplied via flags or environment variables, and `--help` on any command is - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 159
npx sanity@latest blueprints <command> - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 176
Running `npx sanity@latest blueprints --help` will show the latest available commands. - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 177
Use `npx sanity@latest blueprints <command> --help` to see options and examples for a specific command. - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 179
Function scaffolding, local testing, secrets, and function logs live under `npx sanity@latest functions <command>` (`add`, `dev`, `test`, `env add|list|remove`, - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 184
npx sanity@latest blueprints init . # once: create file + Stack - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 186
npx sanity@latest blueprints plan # preview the diff, catch validation errors safely - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 187
npx sanity@latest blueprints deploy # apply - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 188
npx sanity@latest blueprints info # verify deployed state - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 199
npx sanity@latest blueprints deploy || status=$? - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 201
npx sanity@latest blueprints info --json # confirm actual Stack state - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 248
npx sanity@latest blueprints mint-deploy-token --label "ci-deploy" --print - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 257
npx sanity@latest blueprints deploy --json --message "CI deploy" - plugins/sanity/skills/sanity-best-practices/references/blueprints.md, line 262
npx sanity@latest functions env add my-function API_KEY sk-... - plugins/sanity/skills/sanity-best-practices/references/functions.md, line 10
> Always use `npx sanity@latest` so CLI and runtime versions stay current.
and 31 more places
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'sanity-best-practices' ] || [ -L ~/.agents/skills/'sanity-best-practices' ]; then echo 'A skill folder named sanity-best-practices already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/CognitionAI/devin-marketplace' "$d" && git -C "$d" checkout --quiet '9836d94e88404aabb682086405c2aa9cba7657ac' -- 'plugins/sanity/skills/sanity-best-practices' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/sanity/skills/sanity-best-practices' ~/.agents/skills/'sanity-best-practices' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'sanity-best-practices' ~/.claude/skills/'sanity-best-practices' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for CognitionAI/devin-marketplace shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/CognitionAI/devin-marketplace/)
Score history
| Date | Version | Score |
|---|
| 2026-11-13 | 9836d94 | 82 |
| 2026-11-07 | f7458ca | 82 |