I know this sounds strange. Every time I say it, people stare at me. "You read your prompts as JSON? Why? JSON is for machines, not people."
I get it. JSON is a machine format. It has quotes everywhere. It is not plain prose. But here is the thing: once you know the sinc format, you can scan a structured prompt in about 3 seconds. In 3 seconds you know who the model is, what it is working on, what it cannot do, what format to use, and what the task is. Prose mixes all of that together. You have to dig through it to find each piece.
I am not talking about quick one-line requests that the hook formats on its own. I am talking about complex agent prompts. I am talking about debugging a bad response or writing instructions for a sub-agent. In those cases I read the full sinc JSON before it goes anywhere.
Here's the same instruction in prose vs. sinc JSON:
Same information. But the sinc version lets me check fast: is each band there? Is CONSTRAINTS filled in? Does FORMAT match what I want? I can check the whole spec in 3 seconds. With prose I have to re-read everything and piece together the answers in my head.
Prose runs in a line. Information is spread across sentences, mixed in, and often just implied. To find the constraints, you read the whole thing and gather pieces from many places.
Sinc JSON is indexed. CONSTRAINTS is always at n=3. FORMAT is always at n=4. TASK is always at n=5. When I want the constraints, I go to n=3. One keystroke in a JSON viewer. No scanning needed.
For multi-agent systems this matters even more. When I build a prompt to send to a sub-agent, I fill in 6 fields. I can see right away if I missed CONSTRAINTS. You cannot forget a band in sinc JSON because the gap is easy to see. In prose, a missing constraint is invisible. It just looks like a short paragraph.
When I started this, it felt unnatural. My instinct was to write in plain English. But I built the auto-scatter hook that converts plain English to sinc JSON anyway. So I started reading the converted versions and realized: this is actually easier to check.
Now when I write complex agent instructions by hand (when I need exact control over each band), I write directly in sinc JSON. It is faster than prose for me now. I do not have to ask myself "did I cover the format? did I cover the constraints?" I just fill in the 6 fields and every part is covered.
CONSTRAINTS carries 42.7% of quality weight. When you write in prose, it is easy to write a one-sentence constraint section and not realize it should be the longest part of your prompt. In sinc JSON, the size of each band is plain to see. I can see when CONSTRAINTS is two words and PERSONA is a paragraph and know I have it backwards.
I know it sounds strange. But it works. Leave a comment. I am curious whether this clicks for you or if I am just wired differently.
// Production AI Engineering
sinc-LLM designs, audits, and stabilises production AI infrastructure: from vendor evaluation and cost accountability to incident controls and MCP architecture.
See what we do →