Complete AI Training

Prompt framework course · 6 chapters · 17 min · certificate

ICIO and CIDI: Reusable Prompt Templates

Instruction, Context, Input, Output: separate what stays the same from what changes, and reuse prompts at scale.

What you'll learn

  • Build a reusable ICIO or CIDI template for a repeated task
  • Separate fixed instructions and context from changing input and output
  • Mark input clearly with tags or delimiters to avoid confusion
  • Define a strict output shape for spreadsheets and automations
  • Test templates on twenty real inputs including messy data
  • Move a working template into a spreadsheet, automation, or AI agent

Chapters

6 chapters · 17:24
  1. 3:09 01Start here Members The template idea This lesson explains what a prompt framework is and introduces ICIO as a fill-in-the-slots structure where Instruction and Context stay fixed while Input and Output change each run.
  2. 2:24 02Fixed Members Instruction and Context: the fixed part This lesson shows how to write the fixed half of a reusable prompt, the Instruction that names the job and the Context that holds the stable rules, so it can be tested once and reused.
  3. 2:49 03Variable Members Input and Output: the changing part This lesson teaches you to mark the input data clearly with tags or delimiters, and to define a strict output shape so the result is usable in a spreadsheet or an automation.
  4. 2:57 04Variant Members CIDI: Context, Instructions, Details, Input CIDI orders a prompt as Context, Instructions, Details, Input, holds formatting and constraints in Details, and is a twin of ICIO that teams should choose once and use consistently.
  5. 2:47 05Scale it Members From prompt to automation This lesson shows how to move a working ICIO or CIDI template into a spreadsheet add-on, a no-code automation or an AI agent, after testing it on twenty real inputs and anchoring it with labelled examples.
  6. 3:18 06Apply it Members ICIO in your job This lesson shows how to turn one repeated task from your own job into a reusable ICIO template, keeping the Input clearly marked and adding tone and audience when people read the output.

Study guide

ICIO and CIDI: Reusable Prompt Templates

If you find yourself rewriting the same prompt every time you need to classify an email, extract data from an invoice, or summarise meeting notes, you are wasting time. This course teaches you two simple frameworks, ICIO and CIDI, that turn one-off prompts into reusable templates. You will learn how to separate the parts that stay the same, like instructions and context, from the parts that change, like the input data and the output format. By the end, you will have a template you can test once and then run again and again with different inputs.

The course is built for busy professionals who use AI tools like ChatGPT, Claude, or Gemini in their daily work. No technical background is needed. We will walk through each part of the template with concrete examples from real jobs, such as sorting customer support tickets, pulling key details from contracts, or drafting routine replies. You will see how to mark your input clearly, define a strict output shape, and avoid common mistakes like pasting raw data without boundaries. You will also learn how to move your template into a spreadsheet add-on, a no-code automation, or an AI agent after testing it on real inputs.

What is a prompt framework?

A prompt is the request you type into an AI tool such as ChatGPT, Claude or Gemini. A prompt framework is a reusable structure for that request: a short checklist of the parts a good prompt contains, usually named with an acronym so it is easy to remember. Why it helps: the AI fills in whatever you leave out with generic guesses. A framework makes sure you include the parts that change the answer, such as who it is for, what you want to achieve and the format you need.

Frameworks make prompts repeatable: you fill the same parts each time, save the prompt as a template and share it with colleagues. They are not magic words: the value comes from the detail you put in each part. They help most when a request is complex or open to interpretation; a quick, simple question can stay short. There are well over sixty named frameworks, and most of them remix the same ingredients: role, task, context, audience, format, constraints and examples.

In this course you learn ICIO, which is a fill-in-the-slots framework: an acronym where each letter stands for one part of your prompt. It is best for: repeatable prompts and automations: classification, extraction and templates you run again and again.

The template idea: fixed versus changing parts

ICIO stands for Instruction, Context, Input, Output. It is a four-part prompt template where the Instruction and Context stay fixed, while the Input and Output change every run. This structure is close to how an API call works: a fixed structure with a variable payload. The idea comes from DAIR.AI's Prompt Engineering Guide, published in February 2023. The acronym spread later, and sources still disagree on the letters, so focus on the four jobs rather than the spelling.

The point of the template is reusability. The Instruction says what you want done, such as classify each incoming email into one category. Keep it short and stable. The Context gives background the AI needs, like the category list and the team's role. It rarely changes between runs. The Input is the only part that changes often, because it carries today's material, for example the email text you paste in. The Output defines the shape you want back, such as a single label or a JSON object.

By separating these four parts, you write the prompt once and swap the Input each time. This saves time and ensures consistency. For example, a support team can create one template to classify tickets into five categories. The Instruction and Context stay the same, while the Input changes with each new ticket. The Output remains a single category label, making it easy to sort and route.

Instruction and Context: the fixed half

The Instruction is the single sentence that names the job, such as classify each email into one of these five categories. It tells the AI what kind of work it is doing before any task text arrives. The Context is the stable background: category definitions, rules, and edge cases. It explains how to decide, so the AI applies the same logic on every run. Anything that changes between runs, such as ticket text, customer names, or dates, belongs in the changing half, not the fixed part.

Write the fixed part once, test it on real examples, then reuse it. If the rules are clear, the outputs will be consistent and you will not need to rewrite the prompt. Edge cases are part of Context. A rule like if two categories fit, choose the one that blocks the customer removes guesswork and keeps results stable across runs. For instance, in a customer support template, the Context might list five categories: billing, technical, account, shipping, and other. It might also include a rule: if the issue involves a refund, classify as billing.

Keeping the fixed part clean is what makes it reusable. If you edit the Instruction for one case and save it, the next run is wrong. Make a second template instead when the job is genuinely different. Test your fixed half on at least a few real inputs to ensure it handles edge cases. Once it works, you can trust it for many runs.

Input and Output: the changing half

The Input is the data for this single run, such as an invoice, an email, or a set of meeting notes. It changes every time you use the template, so it must be clearly separated from the fixed instruction and context above it. Wrap the input in tags like open invoice and close invoice, or place it between delimiters. This tells the model where your data starts and ends, so it does not treat a line of your data as a new instruction. A common failure is pasting raw data with no markers. The model then cannot tell data from instruction, and may act on a sentence inside the invoice as if you had written it as a command.

The Output is the exact shape you want back. You can ask for one label, a JSON object with named fields, or a table row with columns in a fixed order. Name the fields yourself rather than letting the model choose. A strict output is what makes the result usable. Spreadsheets can split JSON into columns, and automations can read a field by name. A loose paragraph has to be read and retyped by a person, which removes the time saving.

The template only works if the fixed half truly stays fixed. Keep the instruction, context, and output rules identical between runs, and change only the text inside the input tags. For example, an invoice extraction template might ask for a JSON object with fields: invoice_number, date, total_amount, and vendor. Each run, you paste a new invoice inside the input tags, and the output comes back in the same JSON shape, ready for your spreadsheet.

CIDI: Context, Instructions, Details, Input

CIDI stands for Context, Instructions, Details, Input. It is a twin of ICIO with the same four building blocks in a different order, so the AI reads the situation and the job before it sees the raw material. Details is the slot that holds formatting and constraints. This is where you say the output must be a table, that original wording must be kept, that answers must not be invented, and how many rows to return.

Putting Input last means the AI has already read your rules by the time the data arrives. That reduces drift and makes the output easier to check against your constraints. CIDI and ICIO are both weak on tone and audience. They are built for processing, not persuasion. If the output has to land with a person, add a tone line or use a different framework. For example, if you are summarising customer feedback for a senior manager, you might add: write in a calm, factual tone for senior managers.

Pick one template, CIDI or ICIO, and use it consistently across your team. A shared template only stays reusable if everyone writes it the same way. The order matters because the AI reads top to bottom. Context sets the scene, Instructions state the job, Details set the guardrails, and Input supplies the material to work on. For longer, more complex tasks, CIDI's order often works better because the AI has full context before seeing the data.

From prompt to automation

A template becomes reusable when the fixed half, Instruction and Context, is separated from the changing half, Input and Output. Automation simply feeds new Input into the same fixed half and expects the same Output shape back. Three common homes for a template are a spreadsheet add-on, a no-code automation, and an AI agent. Choose the simplest home that fits your workflow, because each added layer brings its own failure points.

Test on twenty real inputs before you trust the template. Include messy inputs such as missing fields, odd formatting, and half-finished descriptions, because these surface the failures a clean test hides. Keep a few labelled examples in the Context, showing the exact input and the exact output you expect. The model copies the pattern rather than inventing its own format. For instance, if you are extracting dates from invoices, include an example where the date is written as '3/4/24' and show that it should be output as '2024-03-04'.

After automation, keep monitoring. A template that worked in testing can drift when real data changes shape, so spot-check outputs and update the Context when you see a new pattern. For example, if a new invoice format appears, add a rule or example to handle it. Automation saves time, but it still needs occasional maintenance to stay reliable.

ICIO in your job

The best task for a template is one you repeat with different data. The steps stay the same and only the details change, so you write the prompt once and swap the Input each time. Always mark the Input clearly, for example with square brackets and a label. Without a boundary, the model can read a line inside your pasted data as a new instruction. When people, not machines, read the output, borrow tone and audience from CO-STAR. A line such as, write in a calm, factual tone for senior managers, makes the result fit the reader.

Keep the fixed slots fixed. If you edit the Instruction for one case and save it, the next run is wrong. Make a second template instead when the job is genuinely different. ICIO and CIDI work together. ICIO gives you the four slots: Instruction, Context, Input, and Output. CIDI reorders them for longer work where context and details come first. A template is only as good as its Output slot. State the format, the length, and the shape you want, so every run comes back in the same usable form.

To apply this in your job, pick one repeated task, such as writing weekly status updates from bullet points. Create an ICIO template: Instruction: write a status update from the following bullet points. Context: include a summary, key achievements, and next steps. Input: [paste bullet points]. Output: a three-paragraph update with headings. Test it on a few examples, then reuse it every week. If you need a different tone for executives, create a second template with a tone line added.

Frequently asked questions

What is the difference between ICIO and CIDI?

ICIO stands for Instruction, Context, Input, Output. CIDI stands for Context, Instructions, Details, Input. They use the same building blocks but in a different order. CIDI puts context and details before the input, which can work better for longer tasks where the AI needs to understand the situation before seeing the data.

How do I mark the input in my prompt?

Wrap the input in tags or delimiters, such as open invoice and close invoice, or use square brackets with a label like [INPUT]. This tells the model where your data starts and ends, so it does not treat a line of your data as a new instruction.

Why is a strict output format important?

A strict output format, like a JSON object with named fields or a table row with fixed columns, makes the result usable in spreadsheets and automations. A loose paragraph has to be read and retyped by a person, which removes the time saving.

How many times should I test my template before using it regularly?

Test on at least twenty real inputs, including messy ones with missing fields or odd formatting. This surfaces failures that clean tests hide. After testing, you can trust the template for regular use, but keep monitoring for drift.

Can I use ICIO for tasks that need a specific tone?

ICIO and CIDI are built for processing, not persuasion, so they are weak on tone and audience. If the output has to land with a person, add a tone line, such as write in a calm, factual tone for senior managers, or use a different framework like CO-STAR.