# Sanity Dual Studio

> >-

- **Type:** Skill
- **Install:** `agentstack add skill-aiengkenn-agent-skills-sanity-dual-studio`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [AIEngKenn](https://agentstack.voostack.com/s/aiengkenn)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [AIEngKenn](https://github.com/AIEngKenn)
- **Source:** https://github.com/AIEngKenn/agent-skills/tree/main/skills/sanity-dual-studio

## Install

```sh
agentstack add skill-aiengkenn-agent-skills-sanity-dual-studio
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Sanity Dual Studio Config

Many repos have **two** entrypoints:

| Entry | Config file | Used by |
|-------|-------------|---------|
| Embedded | root `sanity.config.ts` | Next `/studio` |
| Standalone | `sanity/sanity.config.ts` | `sanity dev` historically |

They **must stay aligned** — same desk, schema, locale, badges.

## Symptoms this skill fixes

- `/studio` has default desk; `studio:dev` has custom structure  
- TS: `StructureResolver` from `sanity/node_modules` ≠ root `node_modules`  
- Locale plugin works in one entry only  

## Recommended end state

1. **One** Sanity install at repo root  
2. Root `sanity.config.ts` is canonical  
3. `npm run studio:dev` → `sanity dev` from **root** (not `cd sanity && npm run dev`)  
4. `sanity/schemas` (or `src/sanity`) shared by import  
5. Nested `sanity/package.json` uses peerDependencies / echo scripts — **do not** reinstall full `sanity` under `sanity/node_modules`  
6. Root `sanity.cli.ts` for CLI projectId/dataset  

## tsconfig tips

Force resolution to root if needed:

```json
"paths": {
  "sanity": ["./node_modules/sanity"],
  "sanity/*": ["./node_modules/sanity/*"]
}
```

Exclude `sanity/node_modules`, starter examples.

## Anti-patterns

- Two divergent desk structures  
- `npm install` inside `sanity/` recreating nested copies  
- Different projectIds between configs  

## Deliverable

Canonical config path · scripts updated · dual-desk eliminated · tsc clean for studio files.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [AIEngKenn](https://github.com/AIEngKenn)
- **Source:** [AIEngKenn/agent-skills](https://github.com/AIEngKenn/agent-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-aiengkenn-agent-skills-sanity-dual-studio
- Seller: https://agentstack.voostack.com/s/aiengkenn
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
