Prompt Development Kit100% Open Source

A languagefor 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.

customer-support.echo
[#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

New

Structure prompts as multi-turn conversations with [#ROLE system], [#ROLE user], [#ROLE assistant] blocks.

Tool Definitions

New

Define function-calling tools inline with [#TOOL] blocks. Parameters, types, enums — all in the prompt.

Schema

New

Define JSON Schema for structured output with [#SCHEMA]. Force the LLM to respond in a specific format.

Meta Templates

New

Dynamic 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.

Echo PDK Sandbox
Template
Variables (JSON)
Rendered Output
Click "Render Prompt" to see the output...

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.

Terminal
npm install @goreal-ai/echo-pdk