What problem does it solve? Prompt text scattered across services as concatenated strings drifts silently from the data it consumes, breaks prompt caches with stray whitespace, and produces untyped LLM replies that fail at runtime. This Skill treats a prompt as code: a declared typed payload, external provider-resolved text, deterministic rendering, and build-time drift checks. ## Core Features & Use Cases - Typed template declaration: Define template.prompt and template.output nodes with @payloadRef, @textRef, @format, and @responseRef so payload bloat becomes a visible diff. - Deterministic render and drift gate: Render Mustache templates byte-identically across TypeScript, Java, Kotlin, C#, and Python, and fail the build when a {{field}} reference does not resolve against the payload. - Parser-on-receipt and response-format fragments: Generate typed parsers (Zod, Jackson, kotlinx.serialization, System.Text.Json, Pydantic) plus a "produce your answer like this" fragment for every responding prompt. - Use Case: Declare a WelcomePrompt with a WelcomePayload value object, render it through a filesystem text provider, call any LLM client, and parse the reply into a typed record — with CI failing if the template and payload drift apart. ## Quick Start Declare a template.prompt with a payload value object and text reference in your MetaObjects metadata, then ask the agent to wire the render, parser, and output-prompt generators for your project's language.