vtex-io-service-runtime — Claude Code skill for VTEX IO runtime
Guides the runtime layout of a VTEX IO backend app: the Service entrypoint, typed context, and service.json execution settings.
npx skills add vtex/skills --skill vtex-io-service-runtime -a claude-codeWhat vtex-io-service-runtime does
Reach for this skill when the question is how a backend app runs inside the node builder. It treats node/index.ts as the composition root: route, event, and GraphQL handler registration belongs there, business logic does not. Large handler bodies, outbound API calls, or data mapping in that file are a signal to split things out before the service grows further.
Execution knobs sit in service.json rather than in handler code — timeout, memory, workers, minReplicas, maxReplicas, ttl, and rateLimitPerReplica. Routes stay private unless you set public: true on them. smartcache: true is meant for idempotent routes only; put it on an authenticated or write endpoint and repeated requests can get a response that was never theirs. Note that ttl counts minutes and is not a per-request timeout.
Context, State, and param types are shaped so middlewares and handlers share one contract, which keeps ctx.state, ctx.vtex, and params out of any. Authorization fields such as routes.access and routes.policies fall to auth-focused skills, and GraphQL schema or resolver design stays separate — this skill only wires handlers into the runtime.
What it helps with
- set up
node/index.tsas the service composition root - define shared
Context,State, and param types for handlers - move timeout, memory, and replica settings into
service.json - expose an HTTP route with
public: true - separate runtime registration from business logic
Example prompts for the agent
- Scaffold the runtime for a new VTEX IO backend app in
node/index.ts - Set
timeout,memory, andminReplicasinservice.jsonfor this service - Check whether
smartcache: trueis safe on this route
How to install vtex-io-service-runtime
1Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-service-runtime -a claude-code2Manually: put the files in place
~/.claude/skills/vtex-io-service-runtime/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/vtex-io-service-runtime/
1Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-service-runtime -a codex2Manually: put the files in place
.agents/skills/vtex-io-service-runtime/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-service-runtime -a cursor2Manually: put the files in place
.cursor/skills/vtex-io-service-runtime/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install vtex/skills vtex-io-service-runtime2Manually: put the files in place
.github/skills/vtex-io-service-runtime/SKILL.md1Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-service-runtime -a gemini-cli2Platform CLI
gemini skills install https://github.com/vtex/skills --path skills/vtex-io-service-runtimeManually: put the files in place
.devin/skills/vtex-io-service-runtime/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add vtex/skills --skill vtex-io-service-runtime -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about vtex-io-service-runtime
How do I install vtex-io-service-runtime in Claude Code?
Run npx skills add vtex/skills --skill vtex-io-service-runtime -a claude-code. The skill lands in ~/.claude/skills/vtex-io-service-runtime/SKILL.md.
What does vtex-io-service-runtime do?
It covers the runtime of a VTEX IO backend app: the Service entrypoint, typed context and state, service.json parameters, and how routes, events, and GraphQL handlers get registered.
Does it help with GraphQL schema design?
No. It handles runtime-level handler registration only; schema and resolver modeling belong to a separate skill, as do authorization fields in service.json.