vtex-io-session-apps

Build and debug VTEX IO vtex.session transform apps with deterministic dependency-aware propagation.

Updated Mar 27, 2026
One-click install
npx skills add https://github.com/exilonX/ap2 --skill vtex-io-session-apps-exilonx
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vtex-io-session-apps
Source: https://github.com/exilonX/ap2/tree/main/.agents/skills/vtex-io-session-apps
Command: npx skills add https://github.com/exilonX/ap2 --skill vtex-io-session-apps-exilonx

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill prevents brittle, inconsistent storefront behavior by guiding you to correctly design VTEX IO session transform apps that derive, propagate, and expose session-derived state safely and deterministically.

Core Features & Use Cases

  • Namespace ownership & source-of-truth rules: Ensures your session app owns only its output fields and never duplicates VTEX-owned facts (e.g., cost center, organization, postal/country).
  • Correct input/output modeling: Uses public.* strictly as an input surface for propagation, while treating private namespaces as the computed read model for frontend consumption.
  • Transform DAG & propagation correctness: Helps you declare dependencies so transforms run in the right order and changes re-trigger downstream outputs, including caching strategies to keep transforms fast.
  • Debugging session collisions and staleness: Addresses common failure modes like stale fields, namespace collisions, and incorrect frontend reads or writes.

Quick Start

Use the vtex-io-session-apps skill to design a VTEX session transform that reads storefront-permissions inputs and outputs only your app’s derived private namespace fields, while updating public.* inputs only when you need native transforms to recompute.

Frequently Asked Questions about vtex-io-session-apps

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I derive reliable storefront state from VTEX session transforms?

You derive reliable storefront state by building VTEX IO session transform apps that declare configuration.json input/output fields, manage public propagation, and treat private namespaces as the computed read model for frontend consumption.

What is the correct way to model public and private namespaces in VTEX session apps?

Modeling public and private namespaces in VTEX session apps requires using public strictly as an input surface for propagation, while treating private namespaces as the computed read model for frontend consumption to avoid namespace duplication.

How do I declare DAG dependencies for VTEX session transforms?

Declare DAG dependencies for VTEX session transforms to ensure transforms run in the correct order and changes re-trigger downstream outputs, applying safe caching practices to keep transforms fast and deterministic.

Why does my VTEX session transform have stale fields or namespace collisions?

Stale fields and namespace collisions in VTEX session transforms occur when dependencies are incorrectly declared or apps duplicate VTEX-owned facts, requiring debugging of DAG propagation and strict namespace ownership.

Can I use public.* as canonical truth for frontend reads in VTEX IO?

You cannot use public.* as canonical truth for frontend reads in VTEX IO; you must consume private namespaces as the computed read model and update public inputs only to trigger native transform recomputations.

When do I need to update public.* inputs in a VTEX session transform app?

Update public.* inputs in a VTEX session transform app only when you need native transforms to recompute, ensuring your app owns only its derived private namespace fields and never duplicates VTEX-owned facts.