A language
for prompts.
Variables, conditionals, roles, tools, schemas, and meta templates. Write prompts that adapt at runtime — render to messages, define function-calling tools, and control model config with DSL logic.
Readable. Powerful. Portable.
Write logic in your prompts, not in your code. Echo PDK renders only what matters.
[#ROLE system]
You are a {{role}} for {{company}}.
[END ROLE]
[#IF {{tier}} #equals(premium)]
[#TOOL search_docs]
description: Search the knowledge base
parameters:
query:
type: string
required: true
[END TOOL]
[END IF]
[#SCHEMA]
answer:
type: string
required: true
confidence:
type: number
[END SCHEMA]
[#ROLE user]
{{question}}
[END ROLE]Roles & Messages
NewStructure prompts as multi-turn conversations with [#ROLE system], [#ROLE user], [#ROLE assistant] blocks.
Tool Definitions
NewDefine function-calling tools inline with [#TOOL] blocks. Parameters, types, enums — all in the prompt.
Schema
NewDefine JSON Schema for structured output with [#SCHEMA]. Force the LLM to respond in a specific format.
Meta Templates
NewDynamic model config with conditions. Choose provider, model, temperature based on input variables.
Conditional Logic
If/else branching with 11 operators including #exists, #not_exists, #one_of, #ai_gate.
VS Code Extension
Syntax highlighting, autocomplete, validation, and hover docs for .echo files.
Try It Live
Edit the template and variables, then click "Render Prompt" to see Echo PDK in action.
Note: AI Gate is disabled in this sandbox. See the documentation for usage details.
Write prompts that adapt at runtime.
Install the package, build with the visual editor, and test with built-in evals.
npm install@goreal-ai/echo-pdk