Prompt Library Exporter
Move a prompt collection between JSON, JSONL, Markdown, CSV and front-matter files, with the output parsed back and compared field by field.
The output below was parsed back and compared with the input, field by field, and came back identical.
- Prompts
- 2
- Placeholders used across all bodies
- 3
- Declared / used mismatches
- 0
- Output characters
- 620
- Round-trip differences
- 0
Prompt libraries end up in whatever format the first tool used, and then the tool changes. The awkward part of moving them is never the metadata — it is the bodies, because a prompt body contains newlines, quotes, braces and very often a fenced code block, which is exactly the set of characters every one of these formats handles differently. A converter that gets the tags right and mangles one body in forty is worse than useless, because you will not notice for a month.
Which is why the output is read back
Every conversion above is parsed again by this page's own parser for the target format and compared with what you pasted, field by field. The differences are printed rather than assumed absent. If a body containing three backticks comes back short, you see it here — on this page, with the offending prompt named — rather than in production when a template renders half a prompt.
The placeholder check is the useful accident
Having both the declared variables and the body in one place makes one more comparison free: which placeholders the body actually uses. A prompt declaring customer_name whose body says {{name}} renders with a literal brace pair in it and nobody finds out until a customer reads it. That mismatch has nothing to do with the file format, and moving a library between formats is the one moment somebody is looking.